skills/laurigates/claude-plugins/google-chat-formatting

google-chat-formatting

Installation
SKILL.md

Google Chat Formatting

Expert knowledge for converting Markdown and plain text to Google Chat's limited formatting syntax. Google Chat supports a subset of formatting that differs from standard Markdown.

When to Use

Scenario Use this skill Alternative
Converting Markdown to Google Chat format Yes --
Formatting messages for Google Chat Yes --
Converting text for Slack or Discord No Use platform-specific formatting guides
Writing raw Markdown for GitHub or docs No Use standard Markdown syntax
Drafting structured tickets or issues No Use ticket-drafting-guidelines

Core Expertise

Format Conversion

  • Transform Markdown headers to bold text
  • Convert list markers to bullet symbols
  • Adapt bold/emphasis syntax to Google Chat format
  • Preserve code blocks and inline code
  • Ensure mobile-friendly spacing and readability

Google Chat Limitations

  • No native header support (use bold instead)
  • Limited text formatting (bold, italic, strikethrough, code)
  • Bullet symbols (U+2022) instead of hyphen lists
  • No nested formatting (bold inside italic, etc.)
  • No tables, images, or advanced Markdown features

Conversion Rules

Headers to Bold Text

Google Chat has no header support. Convert all headers to bold text:

# Header           → *Header*
## Subheader       → *Subheader*
### Section        → *Section*

Pattern: Remove all # symbols and wrap text in single asterisks.

Text Formatting

Google Chat uses single asterisks for bold (not double):

**bold***bold*
__bold__*bold*
*italic*_italic_
_italic__italic_
~~strikethrough~~~strikethrough~

Key differences:

  • Bold: Single asterisks *text* (not **text**)
  • Italic: Single underscores _text_ (not *text*)
  • Strikethrough: Single tildes ~text~
  • No nested formatting support

Code Formatting

Preserve code blocks and inline code unchanged:

`inline code``inline code` (unchanged)
```code block```  → ```code block``` (unchanged)

Lists

Replace Markdown list markers with bullet symbols:

- item            → • item
* item            → • item
+ item            → • item
1. numbered       → 1. numbered (keep numbered lists)

Pattern: Replace -, *, + at line start with bullet symbol.

Special Patterns

Label formatting (common in structured messages):

**Label:***Label:*
**Status:** text  → *Status:* text

Whitespace

Normalize spacing for readability:

  • Collapse multiple blank lines to single blank line
  • Strip trailing whitespace

Essential Commands

Convert Markdown File

# Read file, convert, write output
cat input.md | sed -E 's/^#{1,6} (.+)$/*\1*/g' | \
  sed -E 's/\*\*([^*]+)\*\*/\*\1\*/g' | \
  sed -E 's/^[*+-] /• /g' > output.txt

Convert Inline Text

# Quick conversion of text string
echo "## Header\n**bold** text\n- item" | \
  sed -E 's/^#{1,6} (.+)$/*\1*/g' | \
  sed -E 's/\*\*([^*]+)\*\*/\*\1\*/g' | \
  sed -E 's/^[*+-] /• /g'

Process Clipboard (macOS)

# Convert clipboard content
pbpaste | sed -E 's/^#{1,6} (.+)$/*\1*/g' | \
  sed -E 's/\*\*([^*]+)\*\*/\*\1\*/g' | \
  sed -E 's/^[*+-] /• /g' | pbcopy

Batch Processing

# Convert all .md files in directory
for file in *.md; do
  sed -E 's/^#{1,6} (.+)$/*\1*/g' "$file" | \
    sed -E 's/\*\*([^*]+)\*\*/\*\1\*/g' | \
    sed -E 's/^[*+-] /• /g' > "${file%.md}.gchat.txt"
done

For common conversion patterns (meeting notes, status updates, release notes), best practices, troubleshooting, integration examples, limitations, and advanced patterns, see REFERENCE.md.

Quick Reference

Conversion Patterns

Markdown Google Chat Notes
# Header *Header* All header levels
**bold** *bold* Single asterisks
__bold__ *bold* Underscores to asterisks
*italic* _italic_ Single underscores
- item • item Bullet symbol
`code` `code` Unchanged

Sed Commands

# Headers
sed -E 's/^#{1,6} (.+)$/*\1*/g'

# Bold (asterisks)
sed -E 's/\*\*([^*]+)\*\*/\*\1\*/g'

# Bold (underscores)
sed -E 's/__([^_]+)__/\*\1\*/g'

# Lists
sed -E 's/^[*+-] /• /g'

# Collapse blank lines
sed -E '/^$/N;/^\n$/D'

# Strip trailing whitespace
sed -E 's/[ \t]+$//'

Agentic Optimizations

Context Command
Quick convert file sed -E 's/^#{1,6} (.+)$/*\1*/g' file.md | sed -E 's/\*\*([^*]+)\*\*/\*\1\*/g'
Check for unconverted grep -E '^\#|^\*\*' output.txt
Clipboard convert pbpaste | sed -E 's/^#{1,6} (.+)$/*\1*/g' | pbcopy

Resources

Weekly Installs
11
GitHub Stars
29
First Seen
Jan 30, 2026