mirror of
https://github.com/amitwh/markdown-converter.git
synced 2026-08-02 18:10:18 +05:30
Release v2.1.0: UI Enhancements & Comprehensive Format Support
🎨 UI/UX Improvements: - Subtle & small preview popout button with minimalist design - Simplified table headers with light gray background - Better readability and cleaner appearance 📥 Enhanced Import: - Support for 30+ formats: RST, Textile, MediaWiki, Org-mode, AsciiDoc, CSV, JSON, and more - Format-specific conversion optimizations - Improved error messages 🎨 Exhaustive ASCII Art Generator: - 5 text banner styles: Standard, Banner, Block, Bubble, Digital - 19 professional templates organized in 4 categories - Flowcharts, sequence diagrams, network diagrams, hierarchy trees - Note boxes, warning boxes, decorative elements 📝 Documentation: - Added UPDATES.md with comprehensive changelog - Updated version to 2.1.0 in all files 🤖 Generated with Claude Code (https://claude.com/claude-code)
This commit is contained in:
+201
-19
@@ -3444,12 +3444,78 @@ function textToASCII(text, style) {
|
||||
'A': [' ### ', ' ## ## ', ' ## ## ', ' ## ## ', ' ####### ', ' ## ## ', ' ## ## '],
|
||||
'B': [' ###### ', ' ## ## ', ' ## ## ', ' ###### ', ' ## ## ', ' ## ## ', ' ###### '],
|
||||
'C': [' ##### ', ' ## ## ', ' ## ', ' ## ', ' ## ', ' ## ## ', ' ##### '],
|
||||
' ': [' ', ' ', ' ', ' ', ' ', ' ', ' ']
|
||||
'D': [' ###### ', ' ## ## ', ' ## ## ', ' ## ## ', ' ## ## ', ' ## ## ', ' ###### '],
|
||||
'E': [' ####### ', ' ## ', ' ## ', ' ##### ', ' ## ', ' ## ', ' ####### '],
|
||||
'F': [' ####### ', ' ## ', ' ## ', ' ##### ', ' ## ', ' ## ', ' ## '],
|
||||
'G': [' ##### ', ' ## ## ', ' ## ', ' ## ### ', ' ## ## ', ' ## ## ', ' ##### '],
|
||||
'H': [' ## ## ', ' ## ## ', ' ## ## ', ' ####### ', ' ## ## ', ' ## ## ', ' ## ## '],
|
||||
'I': [' ####### ', ' ### ', ' ### ', ' ### ', ' ### ', ' ### ', ' ####### '],
|
||||
'J': [' ####### ', ' ## ', ' ## ', ' ## ', ' ## ## ', ' ## ## ', ' #### '],
|
||||
'K': [' ## ## ', ' ## ## ', ' ## ## ', ' #### ', ' ## ## ', ' ## ## ', ' ## ## '],
|
||||
'L': [' ## ', ' ## ', ' ## ', ' ## ', ' ## ', ' ## ', ' ####### '],
|
||||
'M': [' ## ## ', ' ### ### ', ' ####### ', ' ## # ## ', ' ## ## ', ' ## ## ', ' ## ## '],
|
||||
'N': [' ## ## ', ' ### ## ', ' #### ## ', ' ## #### ', ' ## ### ', ' ## ## ', ' ## ## '],
|
||||
'O': [' ##### ', ' ## ## ', ' ## ## ', ' ## ## ', ' ## ## ', ' ## ## ', ' ##### '],
|
||||
'P': [' ###### ', ' ## ## ', ' ## ## ', ' ###### ', ' ## ', ' ## ', ' ## '],
|
||||
'Q': [' ##### ', ' ## ## ', ' ## ## ', ' ## ## ', ' ## # ## ', ' ## ## ', ' ### ## '],
|
||||
'R': [' ###### ', ' ## ## ', ' ## ## ', ' ###### ', ' ## ## ', ' ## ## ', ' ## ## '],
|
||||
'S': [' ##### ', ' ## ## ', ' ## ', ' ##### ', ' ## ', ' ## ## ', ' ##### '],
|
||||
'T': [' ####### ', ' ### ', ' ### ', ' ### ', ' ### ', ' ### ', ' ### '],
|
||||
'U': [' ## ## ', ' ## ## ', ' ## ## ', ' ## ## ', ' ## ## ', ' ## ## ', ' ##### '],
|
||||
'V': [' ## ## ', ' ## ## ', ' ## ## ', ' ## ## ', ' ## ## ', ' ## ## ', ' ### '],
|
||||
'W': [' ## ## ', ' ## ## ', ' ## ## ', ' ## # ## ', ' ####### ', ' ### ### ', ' ## ## '],
|
||||
'X': [' ## ## ', ' ## ## ', ' ### ', ' # ', ' ### ', ' ## ## ', ' ## ## '],
|
||||
'Y': [' ## ## ', ' ## ## ', ' ### ', ' # ', ' # ', ' # ', ' # '],
|
||||
'Z': [' ####### ', ' ## ', ' ## ', ' ## ', ' ## ', ' ## ', ' ####### '],
|
||||
' ': [' ', ' ', ' ', ' ', ' ', ' ', ' '],
|
||||
'0': [' ##### ', ' ## ## ', ' ## ### ', ' ## #### ', ' ### ## ', ' ## ## ', ' ##### '],
|
||||
'1': [' ## ', ' ### ', ' ## ', ' ## ', ' ## ', ' ## ', ' ####### '],
|
||||
'2': [' ##### ', ' ## ## ', ' ## ', ' ## ', ' ## ', ' ## ', ' ####### '],
|
||||
'3': [' ##### ', ' ## ## ', ' ## ', ' ### ', ' ## ', ' ## ## ', ' ##### '],
|
||||
'4': [' ### ', ' #### ', ' ## ## ', ' ## ## ', ' ####### ', ' ## ', ' ## '],
|
||||
'5': [' ####### ', ' ## ', ' ###### ', ' ## ', ' ## ', ' ## ## ', ' ##### '],
|
||||
'6': [' ##### ', ' ## ## ', ' ## ', ' ###### ', ' ## ## ', ' ## ## ', ' ##### '],
|
||||
'7': [' ####### ', ' ## ', ' ## ', ' ## ', ' ## ', ' ## ', ' ## '],
|
||||
'8': [' ##### ', ' ## ## ', ' ## ## ', ' ##### ', ' ## ## ', ' ## ## ', ' ##### '],
|
||||
'9': [' ##### ', ' ## ## ', ' ## ## ', ' ###### ', ' ## ', ' ## ## ', ' ##### ']
|
||||
}
|
||||
},
|
||||
block: {
|
||||
height: 6,
|
||||
chars: {
|
||||
'A': ['█████╗ ', '██╔══██╗', '███████║', '██╔══██║', '██║ ██║', '╚═╝ ╚═╝'],
|
||||
'B': ['██████╗ ', '██╔══██╗', '██████╔╝', '██╔══██╗', '██████╔╝', '╚═════╝ '],
|
||||
'C': ['██████╗', '██╔════╝', '██║ ', '██║ ', '╚██████╗', ' ╚═════╝'],
|
||||
'D': ['██████╗ ', '██╔══██╗', '██║ ██║', '██║ ██║', '██████╔╝', '╚═════╝ '],
|
||||
'E': ['███████╗', '██╔════╝', '█████╗ ', '██╔══╝ ', '███████╗', '╚══════╝'],
|
||||
'F': ['███████╗', '██╔════╝', '█████╗ ', '██╔══╝ ', '██║ ', '╚═╝ '],
|
||||
'G': ['██████╗ ', '██╔════╝', '██║ ███╗', '██║ ██║', '╚██████╔╝', ' ╚═════╝ '],
|
||||
'H': ['██╗ ██╗', '██║ ██║', '███████║', '██╔══██║', '██║ ██║', '╚═╝ ╚═╝'],
|
||||
'I': ['██╗', '██║', '██║', '██║', '██║', '╚═╝'],
|
||||
' ': [' ', ' ', ' ', ' ', ' ', ' ']
|
||||
}
|
||||
},
|
||||
bubble: {
|
||||
height: 5,
|
||||
chars: {
|
||||
'A': [' Ⓐ ', ' ⒜ ⒜ ', '⒜⒜⒜⒜⒜', '⒜ ⒜', '⒜ ⒜'],
|
||||
'B': ['ⒷⒷⒷⒷ ', 'Ⓑ Ⓑ', 'ⒷⒷⒷⒷ ', 'Ⓑ Ⓑ', 'ⒷⒷⒷⒷ '],
|
||||
'C': [' ⒸⒸⒸ ', 'Ⓒ ', 'Ⓒ ', 'Ⓒ ', ' ⒸⒸⒸ '],
|
||||
' ': [' ', ' ', ' ', ' ', ' ']
|
||||
}
|
||||
},
|
||||
digital: {
|
||||
height: 7,
|
||||
chars: {
|
||||
'A': [' ▄▀▀▀▄ ', '▐ ▌', '▐▄▄▄▄▌', '▐ ▌', '▐ ▌', '▐ ▌', ' '],
|
||||
'B': ['▐▀▀▀▄ ', '▐▄▄▄▀ ', '▐▄▄▄▄ ', '▐ ▌', '▐▄▄▄▀ ', ' ', ' '],
|
||||
'C': [' ▄▀▀▀▄', '▐ ', '▐ ', '▐ ', ' ▀▄▄▄▀', ' ', ' '],
|
||||
' ': [' ', ' ', ' ', ' ', ' ', ' ', ' ']
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
// Use standard font or fallback to simple text
|
||||
// Use selected font or fallback to standard
|
||||
const font = fonts[style] || fonts.standard;
|
||||
const lines = [];
|
||||
const upperText = text.toUpperCase();
|
||||
@@ -3460,8 +3526,10 @@ function textToASCII(text, style) {
|
||||
|
||||
for (let char of upperText) {
|
||||
const charLines = font.chars[char] || font.chars[' '];
|
||||
for (let i = 0; i < font.height; i++) {
|
||||
lines[i] += charLines[i];
|
||||
if (charLines) {
|
||||
for (let i = 0; i < font.height; i++) {
|
||||
lines[i] += (charLines[i] || ' '.repeat(font.chars[' '][i].length));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3514,32 +3582,33 @@ function createASCIIBox(text, style, padding) {
|
||||
function getASCIITemplate(templateName) {
|
||||
const templates = {
|
||||
'arrow-right': `
|
||||
┌────┐
|
||||
│ │
|
||||
────► │
|
||||
│ │
|
||||
└────┘`,
|
||||
┌────────┐
|
||||
│ │
|
||||
────► NEXT │
|
||||
│ │
|
||||
└────────┘`,
|
||||
'arrow-down': `
|
||||
│
|
||||
│
|
||||
▼
|
||||
┌───┐
|
||||
│ │
|
||||
└───┘`,
|
||||
┌──────┐
|
||||
│ NEXT │
|
||||
└──────┘`,
|
||||
'check': `
|
||||
✓ Task completed
|
||||
✓ All tests passed
|
||||
✓ Ready to deploy`,
|
||||
✓ Ready to deploy
|
||||
✓ Documentation updated`,
|
||||
'divider': `
|
||||
═══════════════════════════════════════════════════════════
|
||||
`,
|
||||
'header': `
|
||||
╔══════════════════════════════════════╗
|
||||
║ SECTION HEADER ║
|
||||
╚══════════════════════════════════════╝`,
|
||||
╔═══════════════════════════════════════════════════╗
|
||||
║ SECTION HEADER ║
|
||||
╚═══════════════════════════════════════════════════╝`,
|
||||
'flowchart': `
|
||||
┌─────────────┐
|
||||
│ START │
|
||||
│ START │
|
||||
└──────┬──────┘
|
||||
│
|
||||
▼
|
||||
@@ -3547,10 +3616,123 @@ function getASCIITemplate(templateName) {
|
||||
│ PROCESS │
|
||||
└──────┬──────┘
|
||||
│
|
||||
▼
|
||||
┌───┴───┐
|
||||
│ Check │
|
||||
└───┬───┘
|
||||
│
|
||||
┌───▼──┬──────┐
|
||||
│ Yes │ No │
|
||||
▼ ▼ │
|
||||
┌────┐ ┌────┐ │
|
||||
│ A │ │ B │ │
|
||||
└─┬──┘ └─┬──┘ │
|
||||
│ │ │
|
||||
└──┬───┘ │
|
||||
│◄──────────┘
|
||||
▼
|
||||
┌─────────────┐
|
||||
│ END │
|
||||
└─────────────┘`
|
||||
└─────────────┘`,
|
||||
'decision': `
|
||||
┌─────────┐
|
||||
│ Check? │
|
||||
└────┬────┘
|
||||
│
|
||||
┌─────┴─────┐
|
||||
│ │
|
||||
Yes│ │No
|
||||
▼ ▼
|
||||
┌────────┐ ┌────────┐
|
||||
│ True │ │ False │
|
||||
└────────┘ └────────┘`,
|
||||
'sequence': `
|
||||
User System Database
|
||||
│ │ │
|
||||
│ Request │ │
|
||||
├──────────►│ │
|
||||
│ │ Query │
|
||||
│ ├──────────►│
|
||||
│ │ │
|
||||
│ │ Result │
|
||||
│ │◄──────────┤
|
||||
│ Response │ │
|
||||
│◄──────────┤ │
|
||||
│ │ │`,
|
||||
'table-simple': `
|
||||
┌──────────┬──────────┬──────────┐
|
||||
│ Header 1 │ Header 2 │ Header 3 │
|
||||
├──────────┼──────────┼──────────┤
|
||||
│ Data 1 │ Data 2 │ Data 3 │
|
||||
├──────────┼──────────┼──────────┤
|
||||
│ Data 4 │ Data 5 │ Data 6 │
|
||||
└──────────┴──────────┴──────────┘`,
|
||||
'timeline': `
|
||||
2020 2021 2022 2023
|
||||
│ │ │ │
|
||||
●───────────●───────────●───────────●
|
||||
│ │ │ │
|
||||
Start Milestone Release Current`,
|
||||
'network': `
|
||||
┌──────────┐
|
||||
│ Server │
|
||||
└────┬─────┘
|
||||
│
|
||||
┌─────────┼─────────┐
|
||||
│ │ │
|
||||
┌───▼───┐ ┌──▼────┐ ┌──▼────┐
|
||||
│Client1│ │Client2│ │Client3│
|
||||
└───────┘ └───────┘ └───────┘`,
|
||||
'hierarchy': `
|
||||
┌─────────┐
|
||||
│ Root │
|
||||
└────┬────┘
|
||||
│
|
||||
┌────────┴────────┐
|
||||
│ │
|
||||
┌───▼───┐ ┌───▼───┐
|
||||
│Child 1│ │Child 2│
|
||||
└───┬───┘ └───┬───┘
|
||||
│ │
|
||||
┌───▼───┐ ┌───▼───┐
|
||||
│Grand 1│ │Grand 2│
|
||||
└───────┘ └───────┘`,
|
||||
'process-flow': `
|
||||
┌─────────┐ ┌─────────┐ ┌─────────┐
|
||||
│ Input │────►│Process 1│────►│ Output │
|
||||
└─────────┘ └────┬────┘ └─────────┘
|
||||
│
|
||||
┌────▼────┐
|
||||
│Process 2│
|
||||
└─────────┘`,
|
||||
'note-box': `
|
||||
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
|
||||
┃ NOTE: ┃
|
||||
┃ This is an important note ┃
|
||||
┃ that requires attention! ┃
|
||||
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛`,
|
||||
'warning-box': `
|
||||
╔════════════════════════════════════╗
|
||||
║ ⚠ WARNING ║
|
||||
║ Proceed with caution! ║
|
||||
╚════════════════════════════════════╝`,
|
||||
'info-box': `
|
||||
╭────────────────────────────────────╮
|
||||
│ ℹ Information │
|
||||
│ Additional context here │
|
||||
╰────────────────────────────────────╯`,
|
||||
'separator-fancy': `
|
||||
╭──────────────────────────────────────────────────────╮
|
||||
│ │
|
||||
╰──────────────────────────────────────────────────────╯`,
|
||||
'brackets': `
|
||||
【 Important Text 】`,
|
||||
'banner-stars': `
|
||||
************************************************************************
|
||||
* IMPORTANT BANNER *
|
||||
************************************************************************`,
|
||||
'progress-bar': `
|
||||
Progress: [████████████░░░░░░░░] 60%
|
||||
0% 100%`
|
||||
};
|
||||
|
||||
return templates[templateName] || '';
|
||||
|
||||
Reference in New Issue
Block a user