v2.30.0-pre 7341e0e

icons.go RawHistoryFolder

1package styles
2
3// Nerd Font icons for terminal UI.
4// These icons require a Nerd Font compatible terminal font.
5// All icons are defined using Unicode escape sequences for portability.
6// Fallback ASCII alternatives are provided where practical.
7const (
8	// Status indicators
9	IconSuccess = "\uf00c" // nf-fa-check
10	IconError   = "\uf00d" // nf-fa-times
11	IconWarning = "\uf071" // nf-fa-exclamation_triangle
12	IconInfo    = "\uf05a" // nf-fa-info_circle
13	IconPending = "\uf017" // nf-fa-clock
14
15	// Container status icons
16	IconRunning    = "\uf00c" // nf-fa-check (green)
17	IconStopped    = "\uf04d" // nf-fa-stop
18	IconExited     = "\uf00d" // nf-fa-times
19	IconPaused     = "\uf04c" // nf-fa-pause
20	IconRestarting = "\uf021" // nf-fa-refresh
21	IconUnknown    = "\uf071" // nf-fa-exclamation_triangle
22
23	// Objects
24	IconRoute     = "\uf0e8"     // nf-fa-sitemap
25	IconSecret    = "\uf023"     // nf-fa-lock
26	IconToken     = "\uf084"     // nf-fa-key
27	IconContainer = "\uf489"     // nf-oct-container (U+F489)
28	IconServer    = "\uf233"     // nf-fa-server
29	IconNetwork   = "\U000f06f3" // nf-md-lan (U+F06F3)
30	IconVolume    = "\uf1c0"     // nf-fa-database
31	IconImage     = "\uf187"     // nf-fa-archive
32	IconDocker    = "\ue7b0"     // nf-dev-docker
33
34	// Actions
35	IconAdd     = "\uf067" // nf-fa-plus
36	IconRemove  = "\uf068" // nf-fa-minus
37	IconEdit    = "\uf040" // nf-fa-pencil
38	IconRefresh = "\uf021" // nf-fa-refresh
39	IconUpload  = "\uf0ee" // nf-fa-cloud_upload
40	IconDelete  = "\uf1f8" // nf-fa-trash
41
42	// Navigation
43	IconArrowRight = "\uf061" // nf-fa-arrow_right
44	IconArrowLeft  = "\uf060" // nf-fa-arrow_left
45	IconArrowUp    = "\uf062" // nf-fa-arrow_up
46	IconArrowDown  = "\uf063" // nf-fa-arrow_down
47	IconChevron    = "\uf054" // nf-fa-chevron_right
48
49	// UI elements
50	IconBullet     = "\u25b8" // ▸ Simple triangle bullet
51	IconDot        = "\u25cf" // ● Filled circle
52	IconDotEmpty   = "\u25cb" // ○ Empty circle
53	IconCheckbox   = "\uf096" // nf-fa-square_o
54	IconChecked    = "\uf046" // nf-fa-check_square_o
55	IconRadio      = "\uf10c" // nf-fa-circle_o
56	IconRadioCheck = "\uf192" // nf-fa-dot_circle_o
57	IconPlay       = "\uf04b" // nf-fa-play
58	IconStop       = "\uf04d" // nf-fa-stop
59	IconPause      = "\uf04c" // nf-fa-pause
60
61	// Tree structure
62	IconTreeBranch = "\u251c" // ├
63	IconTreeLast   = "\u2514" // └
64	IconTreeLine   = "\u2500" // ─
65	IconTreeVert   = "\u2502" // │
66
67	// Spinners (individual frames)
68	SpinnerDot    = "\u28fe\u28fd\u28fb\u28bf\u287f\u28df\u28ef\u28f7"
69	SpinnerLine   = "|/-\\"
70	SpinnerCircle = "\u25d0\u25d3\u25d1\u25d2"
71	SpinnerBrail  = "\u280b\u2819\u2839\u2838\u283c\u2834\u2826\u2827\u2807\u280f"
72
73	// Borders and decorations
74	BorderHorizontal = "\u2500" // ─
75	BorderVertical   = "\u2502" // │
76	BorderCornerTL   = "\u250c" // ┌
77	BorderCornerTR   = "\u2510" // ┐
78	BorderCornerBL   = "\u2514" // └
79	BorderCornerBR   = "\u2518" // ┘
80	BorderT          = "\u252c" // ┬
81	BorderB          = "\u2534" // ┴
82	BorderL          = "\u251c" // ├
83	BorderR          = "\u2524" // ┤
84	BorderCross      = "\u253c" // ┼
85
86	// Gordon branding
87	IconGordon = "\uf1b2" // nf-fa-cube
88)
89
90// ASCII fallback alternatives for terminals without Nerd Fonts.
91const (
92	AsciiSuccess    = "[OK]"
93	AsciiError      = "[X]"
94	AsciiWarning    = "[!]"
95	AsciiInfo       = "[i]"
96	AsciiBullet     = ">"
97	AsciiDot        = "*"
98	AsciiRunning    = "[R]"
99	AsciiStopped    = "[S]"
100	AsciiTreeBranch = "|-"
101	AsciiTreeLast   = "`-"
102)

Keyboard shortcuts

Single-key shortcuts are on. ctrl k and esc work whatever this says.

ctrl k :
go to a section, branch, tag, file or repository
?
this list
j k
move the row cursor down / up
enter
open the row under the cursor; on Files, a directory opens or closes in place
↑ ↓ ← → home end
in the file tree (focus on a row): previous / next row, close / open a directory or go to its parent / first entry, first / last row. They never open a file
l h
on Files: open a directory or a file / close a directory or go up to its parent, then to the parent page. Elsewhere: into the side panel (on a merge request, its files) / back to the content; there j k move between its controls
g g G
first / last row
/
filter the list; on Files, find a file anywhere in the repository (esc clears, enter opens the best match)
b
switch branch or tag
g s g f g c g b g m g i g r g a
tabs: summary, files, commits, branches & tags, merge requests, issues, releases, actions (when available)
g h
home
w
wide mode: use the whole width of the screen, or not (remembered)
y
copy a permalink pinned to the commit
d u x
diff: split / unified / collapse or expand all
e E
diff: the whole file in view / every file, with the lines the hunks hide
n
merge request: next note in the diff
esc
close a dialog, leave a field

Branches 7

Tags 106

↑↓ moveenter openesc close