-
Notifications
You must be signed in to change notification settings - Fork 6
User Interface
LLMDog features a Terminal User Interface (TUI) based on the [Bubble Tea](https://github.com/charmbracelet/bubbletea) framework. This guide will help you understand how to navigate and use the interface effectively.
The LLMDog interface consists of several key components:
- Header: Shows the application name and basic info
- File List: Displays the navigable file and directory structure
- Preview Pane: Shows a preview of the selected file's content
- Status Bar: Displays information about your selection, search mode, and keyboard shortcuts
- ↑/↓ (Up/Down Arrow Keys): Navigate through the file list
- Tab: Select or unselect the currently highlighted item
- Space: Expand or collapse a directory
- Enter: Confirm your selection and generate the Markdown output
- q: Quit the application
- Esc: Clear filter/errors, exit dialogs
- Tab: Toggle selection of the currently highlighted item
- Ctrl+A: Select all visible items
- Ctrl+D: Deselect all items
- Space (on a directory): Expand/collapse the directory
When a directory is selected:
- All non-ignored files within it will be selected recursively
- Gitignored files will be skipped even if the parent directory is selected
- Ctrl+/: Toggle the preview pane on/off
- / (Forward Slash): Activate search/filter mode
- Ctrl+S: Toggle between filename search and content search modes
- Ctrl+B: Open the bookmarks menu
- Ctrl+Shift+B: Save current selection as a bookmark
LLMDog uses several visual indicators to help you understand the state of files:
- 📁: Directory
- 📄: Regular file
- File-specific icons based on file extension (e.g., 🔹 for Go files, 🐍 for Python)
- [ ]: Unselected item
- [✓]: Selected item
- ▶: Collapsed directory
- ▼: Expanded directory
- 🔍: Content match indicator (when an item matches content search)
- Faded text: Gitignored files
- Colorful highlighting: Current cursor position
The search functionality lets you quickly find files:
- Press
/to activate search mode - Type your search query
- Press Enter to confirm
Search modes:
- Filename Search (default): Searches only in filenames
-
Content Search: Searches within file contents as well
- Toggle with
Ctrl+S - Content matches show a 🔍 indicator
- Toggle with
When in search mode:
- The status bar indicates which search mode is active
- Up/Down arrows navigate through search history
- Escape clears the current search
The status bar at the bottom provides important information:
-
Left Section: Shows stats about your selection
- Number of selected files
- Total size of selected files
- Estimated token count
- Number of bookmarks
-
Middle Section: Shows current search mode
- "Filename Search" or "Content Search"
-
Right Section: Shows contextual keyboard shortcuts
When you press Ctrl+B, the bookmarks menu appears:
- Navigate with the Up/Down arrow keys
- Enter: Apply the selected bookmark
- n: Create a new bookmark
- d: Delete the selected bookmark
- r: Rename the selected bookmark
- i: Edit bookmark description
- Esc: Close the bookmarks menu
If something goes wrong, an error message will appear at the bottom of the screen. Press Esc to dismiss error messages.
Temporary status messages appear in the status bar to provide feedback on your actions, such as:
- Confirming a bookmark was saved
- Showing search results count
- Indicating when content search mode is toggled
The preview pane (toggle with Ctrl+/) shows:
- For files: Content preview with basic syntax highlighting
- For directories: Summary of directory contents
Preview information includes:
- File/directory path
- Size information
- For files: Content preview
- For directories: List of items and file type summary
LLMDog shows dialog boxes for interactions like:
- Creating a new bookmark
- Renaming a bookmark
- Adding a bookmark description
Navigate dialogs with:
- Type to enter text
- Enter: Confirm/Save
- Esc: Cancel/Close
