Skip to content

Conversation

@cmpadden
Copy link

@cmpadden cmpadden commented Jul 8, 2025

Closes #1

image

Add comprehensive help menu similar to lazygit's ? menu system:

  • Toggle help menu with ? key (press ? again or Esc to close)
  • Two-column layout showing key bindings organized by context
  • Sections: Global, Navigation, Menu Bar, Main Pane, Detail Pane, Create/Edit Modal
  • Proper overlay system integrated with existing modal architecture
  • Updated existing help text to mention ? for help

Key bindings documented:

  • Global: q/Ctrl+C (quit), c (create), e (edit), r (refresh), Ctrl+D (toggle detail)
  • Navigation: Tab/Shift+Tab (pane focus), ↑↓/k/j (navigate), Enter (select)
  • Context-specific bindings for each pane and modal

Add comprehensive help menu similar to lazygit's ? menu system:
- Toggle help menu with ? key (press ? again or Esc to close)
- Two-column layout showing key bindings organized by context
- Sections: Global, Navigation, Menu Bar, Main Pane, Detail Pane,
Create/Edit Modal
- Proper overlay system integrated with existing modal architecture
- Updated existing help text to mention ? for help

Key bindings documented:
- Global: q/Ctrl+C (quit), c (create), e (edit), r (refresh), Ctrl+D
(toggle detail)
- Navigation: Tab/Shift+Tab (pane focus), ↑↓/k/j (navigate), Enter
(select)
- Context-specific bindings for each pane and modal
@cmpadden
Copy link
Author

cmpadden commented Jul 8, 2025

@PedramNavid feel free to ignore / close this, was just seeing how Claude handled it!

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

A new help menu is introduced to display key bindings in a two-column layout and can be toggled with the ? key.

  • Added ? for help indicator to existing menu and main pane footers
  • Integrated a HelpMenu component into the application layout (struct, Update, View)
  • Created help_menu.go for building and rendering the full help overlay

Reviewed Changes

Copilot reviewed 4 out of 5 changed files in this pull request and generated no comments.

File Description
internal/ui/components/menubar.go Appended • ? for help to the menu bar help text
internal/ui/components/mainpane.go Added • ? for help in the main pane footer
internal/ui/components/layout.go Integrated HelpMenu into Layout (struct, Update, View)
internal/ui/components/help_menu.go New component for rendering the help menu overlay
Comments suppressed due to low confidence (3)

internal/ui/components/help_menu.go:1

  • The new HelpMenu component and its behaviors (Toggle, Update, View) lack unit tests. Consider adding tests for visibility toggling, input handling, and rendering output to ensure reliability.
package components

internal/ui/components/help_menu.go:6

  • The 'bubbletea' package is imported without an alias but the code references 'tea.Msg' and 'tea.KeyMsg'. Add an import alias: tea "github.com/charmbracelet/bubbletea" to match usage.
	"github.com/charmbracelet/bubbletea"

internal/ui/components/help_menu.go:278

  • The helper function max is defined but never used in this file. Consider removing it or leveraging it to eliminate dead code.
func max(a, b int) int {

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add ability to view key bindings

1 participant