# Figlet Text Converter - Usage Guide ## Overview The Figlet Text Converter skill converts marked text in files to ASCII art. It uses a universal `` tag syntax that works across all file types and intelligently preserves comment formatting. ## Getting Started ### Installation The skill automatically manages Node.js dependencies on first use. When invoked: 1. Verifies Node.js v14+ is installed 2. Installs the figlet package via npm if needed 3. Processes your file ### Basic Usage Insert `` tags in any file to mark text for conversion: ``` Text to Convert ``` Then ask Claude to process the file: ``` "Convert all figlet tags in this markdown file to ASCII art" ``` ## Tag Syntax ### Simple Tag (Uses Default Font) ``` Welcome ``` Uses 'standard' font (default). ### Tag with Custom Font ``` Welcome ``` Uses the specified font. Font names are case-sensitive and must exactly match figlet's font list. ## Usage Examples ### Markdown Document **Input:** ```markdown # My Documentation Getting Started Follow these steps... Important Note This is critical... ``` **Output:** ```markdown # My Documentation ____ _ _ _ _____ _ _ _ _ / ___| ___| |_| |_(_)_ __ __ _ / ____| | |_ __ _ _ _| |_| |___ __| | | | _/ -_| _| _| | '_ \ / _` | / __| _ | __| / _` | | | | _| / _ \/ _` | | |_| \__ \ _| _| | | | | (_| |/ /____| | |_| (_| | | | | | |_| __/ (_| | \____|___/\__|\__|_|_| |_|\__, |\_______| \__|\_\__,_\_/_|_|\__|\___|\_\__, |___/ Follow these steps... ___ _ |_ _|_ __ ___ _ __ ___| |_ __ _ _ _ | |_ | | '_ ` _ \| '_ \ / _ \| _| / _` || | | | _| | | | | | | | |_) | __/ | |_| (_| || | | | | | |___|_| |_| |_| .__/ \___|_|\__|\_\__|\__,_|_| | |_| This is critical... ``` ### Python Script **Input:** ```python # Configuration DEBUG = True LOG_LEVEL = "INFO" ``` **Output:** ```python # ____ ___ _ # / ___|__ _ _ / __| ___ _ _ ___ ___ _ _ __ _ __ __| | __ # | |__/ _ \ | | | / /__ / _ \ | | | / _ \ / _ \| | | / _` | \ \/ /| |/ / # | __| | | || | | ___| | | || |_|| (_) || __/ (_| |( _ | > < | __\ # |_| |_| |_| \_\ \___|_| |_| \__,_|\___/ \___|\__,_| \_/ |_/_/\_\ |_| DEBUG = True LOG_LEVEL = "INFO" ``` ### Shell Script **Input:** ```bash #!/bin/bash echo 'Starting Deployment' # Deploy code... ``` **Output:** ```bash #!/bin/bash echo ' ___ _ _ _ _ ___ _ _ / __|_| |_ __ _ | |_| | ___ _ | | __ _ / ___| |___ _ __ | | \__ \_ _/ _` || __| |/ _ \| | |/ _` | / / | | _ \| '_ \ | |_ |___/ |_| \__,_| \__|_| \___/|_|_|\__, | \_\__| | |_) | |_) ||___| |___/ |_.__/ | .__/|___| |_|' # Deploy code... ``` ### PHP Code **Input:** ```php Database Connection $conn = new PDO($dsn); ``` **Output:** ```php Database Settings host=localhost port=5432 ``` **Output:** ```ini [database] ___ __ _ _ ___ __ _ _ _ | \ / \| |_ __ _ | |__ __ _ ___ / __| |_ _| | | | | |_ __ __ _ ___ | | || ()| / _` || _ \ / _` | -_) \__ \| _| |_| |_| _| / _` | / _ \ |__/ \_/\_|\__,_||_|_|_|\__,_|\___| |___/ |_| \___/ |_| \__, | \___/ |___/ host=localhost port=5432 ``` ## Comment Style Detection The skill automatically detects and preserves comment styles: | Language | Comment Style | Example | |----------|---------------|---------| | C/C++/Java/PHP/JavaScript | `//` | `// Section` | | Python/Bash | `#` | `# Section` | | SQL | `--` | `-- Section` | | C/Java (Block) | `/*` | `/* Section` | | Plain text | None | `Section` | When a tag is on a line with a comment marker, output is formatted with that comment style: ``` // Header ``` Becomes: ``` // ___ _ _ // | | | |___ ___ __| |__ _ ___ __ // | |_| // -_)/ _ \/ _` / _` / -_) / _ \ // \___/ \___|\___/\__,_\__,_|\___| __/ // |_| ``` ## Finding Fonts To see all available fonts, ask Claude to list them: ``` "List all available figlet fonts" ``` This will show: - Previews of popular fonts - Complete alphabetical listing of 400+ available fonts - Font names to use in tags ### Popular Fonts - **standard** - Default, traditional figlet style - **3-D** - 3D effect with shading - **Block** - Large, blocky characters - **Big** - Large and simple - **Shadow** - Shadowed appearance - **Slant** - Slanted characters - **Graffiti** - Artistic style - **Doom** - Heavy, bold style - **Isometric1/2** - Isometric projection ## Troubleshooting ### Invalid Font Error ``` ❌ Error: Invalid font "MyFont" in tag: Text Run 'node list-fonts.js' to see available fonts. ``` **Solution:** Use a valid font name from the list. Font names are case-sensitive. ### File Not Found ``` ❌ Error: File not found: /path/to/file.txt ``` **Solution:** Verify the file path is correct. ### Node.js Not Installed ``` ❌ Dependencies not installed. Please run: npm install ``` **Solution:** Install Node.js v14+ from https://nodejs.org/ ## Advanced Usage ### Multiple Tags in One File You can use multiple figlet tags in a single file: ```markdown Section One Content here... Section Two More content... ``` Each tag is processed independently with its own font and style. ### Mixing Comment Styles Different parts of a file can have different comment styles: ``` // JavaScript Section const x = 10; # Python Section x = 10 ``` Each is formatted appropriately for its comment context. ### Large Text Conversion ASCII art can be quite large. For long text strings: ``` A A ``` Use shorter fonts for longer text to keep output manageable. ## Tips & Tricks 1. **Preview Before Converting**: Ask Claude to show you the ASCII art for your text before inserting it 2. **Consistent Styling**: Use the same font throughout a file for visual consistency 3. **Comment the Conversion**: Leave a comment explaining what the ASCII art represents 4. **Test Display**: Verify the output displays correctly in your target environment (editor, terminal, web) 5. **Reserve for Impact**: Use ASCII art sparingly for section headers, not inline text ## Limitations - Font names must match figlet's font list exactly (case-sensitive) - Each tag is processed independently; multi-line ASCII art expands proportionally - Comment detection is line-based (tag must be on same line as comment marker) - Very long text may produce large ASCII art output