| name | figlet-text-converter |
| description | This skill processes files containing figlet tags and replaces them with ASCII art representations. It detects and preserves comment styles (forward slash forward slash, hash, double-dash, forward slash asterisk), automatically manages Node.js dependencies, and supports 400+ fonts (defaulting to the standard font). The skill should be used when a user requests converting marked text in a file to ASCII art using figlet tag syntax, or when they want to list available fonts. |
Figlet Text Converter
Overview
This skill converts marked text in files to ASCII art using the figlet library. It uses a simple, universal tag syntax that works across all file types and intelligently preserves comment formatting when tags are placed in commented sections. The skill handles dependency management automatically and supports 400+ fonts with sensible defaults.
When to Use This Skill
Use this skill when:
- User asks to convert text in a file to ASCII art
- User provides a file containing
<figlet>tags - User requests to list available figlet fonts
- User wants to add visual ASCII art headers or banners to code, documentation, or configuration files
Tag Syntax
Universal Markup
Insert <figlet> tags anywhere in a file to mark text for ASCII art conversion:
With font specification:
<figlet font="3-D">Text to Convert</figlet>
Using default font (standard):
<figlet>Text to Convert</figlet>
Usage in Different Contexts
Markdown Documents
# Section Title
<figlet font="Standard">Important Notice</figlet>
Content goes here...
Shell Scripts
#!/bin/bash
echo '<figlet>Deployment Started</figlet>'
# Script logic...
Python Code
# <figlet>Configuration</figlet>
config = {
'setting': 'value'
}
PHP/JavaScript
// <figlet font="Block">Database Connection</figlet>
function connectDB() {
// ...
}
Plain Text/Config Files
<figlet>System Status Report</figlet>
This report contains...
Workflow
Processing a File
When a user requests ASCII art conversion:
- Read the file containing
<figlet>tags - Validate all font names (error immediately if invalid)
- For each tag:
- Extract the font name (or use 'standard' if omitted)
- Generate ASCII art for the text
- Detect comment style from the surrounding line (// # -- /*)
- Format output with appropriate comment prefixes
- Replace tags with formatted ASCII art
- Write changes back to the file
Handling Comments
The skill automatically detects comment context:
Single-line comments:
// <figlet>Section Break</figlet>
Outputs each line with // prefix:
// ___ _ _ ____ _
// / __| ___ | | | | ___ _ _ | __ ) _ _ __| | |
// \__ \/ -_) | |_| |/ _ \| ' \ | _ \| '_|/ _` | |
// |___/\___| \___/ \___/|_|_|_| |_| \_\_| \__,_|_|
Hash comments (Python, Shell):
# <figlet>Configuration</figlet>
Outputs with # prefix.
SQL/SQL comments:
-- <figlet>Query Section</figlet>
Outputs with -- prefix.
Block comments:
/* <figlet>Module Start</figlet>
Outputs with * prefix:
* ___ _ _ _ ___ _ _
* | \/ | ___ __| | _ | | ___ / __| | |_ __ _ _ | |_
* | |\/| |/ _ \ / _` ||_|| |/ -_) \__ \ | _|/ _` || || _|
* |_| |_|\___/ \__,_| \__/ \___| |___/ |_| \__,_|\__|\__|
Plain text (no comment prefix):
<figlet>Plain ASCII Art</figlet>
Outputs raw ASCII art without formatting.
Font Selection
Default Font
If no font is specified, 'standard' is used:
<figlet>Default Font Example</figlet>
Custom Fonts
Specify any of 400+ available fonts:
<figlet font="Block">Bold Text</figlet>
<figlet font="3-D">3D Effect</figlet>
<figlet font="Shadow">Shadowed</figlet>
Finding Fonts
When user requests to list available fonts, run the font discovery script to show:
- Previews of the first 10 fonts with examples
- Complete alphabetical listing of all 400+ fonts
- Font names for use in tags
Popular fonts:
- standard (default)
- 3-D
- Block
- Big
- Shadow
- Slant
- Graffiti
- Doom
Error Handling
The skill validates fonts before processing:
- Invalid font specified: Error immediately with font name and suggestion to list available fonts
- File not found: Error with file path
- Node.js/npm issues: Error with installation instructions
Bundled Resources
scripts/
process-file.js
- Main processing script that reads files, finds all
<figlet>tags, validates fonts, generates ASCII art, detects comment styles, and writes results - Handles automatic Node.js verification and npm dependency installation on first run
- Usage:
node process-file.js <file-path>
list-fonts.js
- Displays all available figlet fonts with previews and complete listing
- Helps users find the exact font names to use in tags
- Usage:
node list-fonts.js
package.json
- Node.js project file with figlet v1.7.0+ dependency
.gitignore
- Excludes node_modules from version control
references/
usage-guide.md - Comprehensive reference documentation for all features and edge cases
Technical Details
- Node.js Requirement: v14 or higher
- Figlet Package: v1.7.0 or higher (auto-installed on first use)
- Tag Format:
<figlet font="font-name">text</figlet>or<figlet>text</figlet> - Comment Styles Supported: //, #, --, /*, or none
- Default Font: standard
- File Processing: In-place modification