Back to skills
Figlet Text Converter
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.
8 stars
0 votes
0 copies
0 views
Added 12/19/2025
data-aijavascriptpythongojavaphpshellbashsqlnodegit
Install via CLI
$
openskills install rawveg/skillsforge-marketplaceFiles
SKILL.md
---
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
```markdown
# Section Title
<figlet font="Standard">Important Notice</figlet>
Content goes here...
```
#### Shell Scripts
```bash
#!/bin/bash
echo '<figlet>Deployment Started</figlet>'
# Script logic...
```
#### Python Code
```python
# <figlet>Configuration</figlet>
config = {
'setting': 'value'
}
```
#### PHP/JavaScript
```php
// <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:
1. Read the file containing `<figlet>` tags
2. Validate all font names (error immediately if invalid)
3. 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
4. Replace tags with formatted ASCII art
5. Write changes back to the file
### Handling Comments
The skill automatically detects comment context:
**Single-line comments:**
```bash
// <figlet>Section Break</figlet>
```
Outputs each line with `// ` prefix:
```bash
// ___ _ _ ____ _
// / __| ___ | | | | ___ _ _ | __ ) _ _ __| | |
// \__ \/ -_) | |_| |/ _ \| ' \ | _ \| '_|/ _` | |
// |___/\___| \___/ \___/|_|_|_| |_| \_\_| \__,_|_|
```
**Hash comments (Python, Shell):**
```python
# <figlet>Configuration</figlet>
```
Outputs with `# ` prefix.
**SQL/SQL comments:**
```sql
-- <figlet>Query Section</figlet>
```
Outputs with `-- ` prefix.
**Block comments:**
```java
/* <figlet>Module Start</figlet>
```
Outputs with ` * ` prefix:
```java
* ___ _ _ _ ___ _ _
* | \/ | ___ __| | _ | | ___ / __| | |_ __ _ _ | |_
* | |\/| |/ _ \ / _` ||_|| |/ -_) \__ \ | _|/ _` || || _|
* |_| |_|\___/ \__,_| \__/ \___| |___/ |_| \__,_|\__|\__|
```
**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
Attribution
Comments (0)
No comments yet. Be the first to comment!
