4.2 KiB
LyricFlow Advanced Features
This document provides a deep dive into the specialized features that make LyricFlow a unique tool for lyricists.
LyricDown Syntax Guide
LyricFlow introduces LyricDown, a Markdown-like syntax for lyricists, natively saved as .lmd files. This custom syntax helps you structure your creative process without interfering with phonetic analysis.
| Element | Syntax | Usage |
|---|---|---|
| Header | # Text |
Titles, large section breaks. |
| Metadata | @Key: Value |
Track BPM, Key, Artist, or mood info. |
| Comment | > Text |
Personal notes, alternative line ideas. |
| Tag | [Tag] |
Structural markers (Verse, Chorus, Bridge). |
The .lmd Format
LyricFlow uses the .lmd (Lyric Markdown) extension as its native format. While standard .txt files are supported, using .lmd ensures that your projects are clearly identified as LyricDown documents.
Strict Analysis Filtering
The Rhyme Engine is context-aware. It ignores Headers, Metadata, and Comments entirely. When you click a word inside a comment or header, the sidebar suggestions will not trigger(may not function properly.), keeping your workspace clutter-free.
2. IDE Workspace & Layout
LyricFlow implements a professional "three-pane" architecture:
- Project Explorer (Left): A full-featured file system explorer. Supporting right-click operations (New File/Folder, Rename, Delete) and
.lyricprojectsession loading. - Tabbed Editor (Center): Supports unlimited open files. Each tab maintains its own highlight state and undo/redo history.
- Creative Sidebar (Right):
- Phonetics: Displays the IPA-style breakdown of the selected word.
- Perfect Rhymes: Words with identical terminal sounds.
- Slant Rhymes: Words with closely matching vowel patterns (powered by CMUDict).
- Thematic Suggestions: Synonyms and "Vibe" associates.
3. The Rhyme Engine
Mosaic (Multi-word) Rhymes
Unlike simple end-rhyme detectors, LyricFlow identify "mosaic" rhymes where a single word rhymes with a combination of words (e.g., "Orange" matching "Door Hinge").
Internal Rhyme Detection
The engine scans the entire line, not just the last word. This helps identify complex internal structures that add rhythmic complexity to your writing.
4. Related Concepts ("Vibe")
One of LyricFlow's most powerful features is the Vibe Suggestion system. Standard thesauruses give you synonyms; LyricFlow searches for Conceptual Neighbors:
- It looks up the word's "Synsets" in WordNet.
- It traverses Hypernyms (general categories) and Hyponyms (specific types).
- It filters out direct synonyms to find words that fit the "atmosphere" without sharing the exact meaning.
5. Performance & Debouncing
To maintain a responsive feel, we implemented a Debounced Analysis system.
Heavy calculations (scanning entire verses for rhymes) only happen when you pause (set to 1500ms). This prevents the UI from stuttering while you are mid-flow, ensuring the "Dracula" theme remains smooth and elegant.
6. Project Session Persistence
LyricFlow creates a .lyricproject JSON file in your project folders. This file stores:
- Lists of files you currently have open in tabs.
- The last active file you were editing.
- Cursor positions for open files.
When you re-open a folder, LyricFlow restores your exact workspace state instantly.
7. Recovered Unsaved Sessions
LyricFlow also keeps an app-level recovered session cache in user app data:
- Untitled drafts with content.
- Dirty saved files (unsaved edits).
Snapshots are written every 30 seconds and on app close. On startup, LyricFlow can restore recovered tabs automatically. If a recovered snapshot conflicts with a file changed on disk, LyricFlow prompts you to choose:
- Use recovered snapshot.
- Use disk version.
- Skip that tab.
8. Settings Menu
A top-level Settings -> Preferences... dialog allows users to configure:
- Reopen last project on startup.
- Restore unsaved tabs.
- Word wrap default.
- Left/right sidebar default visibility.
- Clearing recovered session cache for the current workspace or all workspaces.