@kitlangton/ghui 0.7.1 → 0.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +73 -1
- package/package.json +5 -5
package/README.md
CHANGED
|
@@ -60,6 +60,7 @@ bun run dev
|
|
|
60
60
|
## Configuration
|
|
61
61
|
|
|
62
62
|
- `GHUI_PR_FETCH_LIMIT`: max PRs fetched, defaults to `200`
|
|
63
|
+
- `GHUI_RUN_FETCH_LIMIT`: max workflow runs fetched per PR, defaults to `20`
|
|
63
64
|
|
|
64
65
|
Example:
|
|
65
66
|
|
|
@@ -78,7 +79,8 @@ Example:
|
|
|
78
79
|
```json
|
|
79
80
|
{
|
|
80
81
|
"theme": "system",
|
|
81
|
-
"systemThemeAutoReload": true
|
|
82
|
+
"systemThemeAutoReload": true,
|
|
83
|
+
"showScrollbars": false
|
|
82
84
|
}
|
|
83
85
|
```
|
|
84
86
|
|
|
@@ -86,6 +88,70 @@ Example:
|
|
|
86
88
|
theme reload signals update the active system theme palette while ghui is
|
|
87
89
|
running.
|
|
88
90
|
|
|
91
|
+
Scrollable panes hide their scrollbar rails by default. Set `showScrollbars`
|
|
92
|
+
to `true` to display them while retaining the same keyboard and mouse scrolling
|
|
93
|
+
behavior.
|
|
94
|
+
|
|
95
|
+
### Open in editor
|
|
96
|
+
|
|
97
|
+
Press `e` on a pull request (in the list, detail, or diff view) to hand it off
|
|
98
|
+
to your editor. ghui suspends the TUI, runs your command attached to the
|
|
99
|
+
terminal, and resumes when it exits.
|
|
100
|
+
|
|
101
|
+
Configure this in `config.json`:
|
|
102
|
+
|
|
103
|
+
```json
|
|
104
|
+
{
|
|
105
|
+
"editorCommand": "tmux new-window -c {{repoPath}} 'gh pr checkout {{number}} && nvim -c \":DiffviewOpen {{baseRef}}...{{headRef}}\"'",
|
|
106
|
+
"repoPaths": {
|
|
107
|
+
"kitlangton/ghui": "~/code/ghui",
|
|
108
|
+
"kitlangton/*": "~/code/repos/kitlangton/*",
|
|
109
|
+
":owner/:repo": "~/src/github.com/:owner/:repo"
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
`repoPaths` maps a repository to a local clone, matched in order: an exact
|
|
115
|
+
`owner/repo` key, then an owner wildcard (`owner/*`, where `*` becomes the repo
|
|
116
|
+
name), then the generic `:owner/:repo` template. `~` expands to your home
|
|
117
|
+
directory.
|
|
118
|
+
|
|
119
|
+
`editorCommand` is a shell command template with these substitutions:
|
|
120
|
+
|
|
121
|
+
- `{{repo}}` — full `owner/repo`
|
|
122
|
+
- `{{owner}}`, `{{name}}`
|
|
123
|
+
- `{{number}}` — PR number
|
|
124
|
+
- `{{headRef}}` — PR head branch
|
|
125
|
+
- `{{baseRef}}` — base branch
|
|
126
|
+
- `{{author}}`
|
|
127
|
+
- `{{url}}`
|
|
128
|
+
- `{{repoPath}}` — resolved local path (requires a matching `repoPaths` entry)
|
|
129
|
+
|
|
130
|
+
If `editorCommand` is omitted, ghui falls back to `$VISUAL`/`$EDITOR` opening
|
|
131
|
+
the resolved `repoPath`. Some common recipes:
|
|
132
|
+
|
|
133
|
+
```jsonc
|
|
134
|
+
// diffview.nvim: checkout the branch and diff against base
|
|
135
|
+
"editorCommand": "tmux new-window -c {{repoPath}} 'gh pr checkout {{number}} && nvim -c \":DiffviewOpen {{baseRef}}...{{headRef}}\"'"
|
|
136
|
+
|
|
137
|
+
// octo.nvim: review via the GitHub API (no checkout)
|
|
138
|
+
"editorCommand": "tmux new-window -c {{repoPath}} 'nvim -c \":silent Octo pr edit {{number}}\"'"
|
|
139
|
+
|
|
140
|
+
// VS Code
|
|
141
|
+
"editorCommand": "code {{repoPath}}"
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
### Workflow runs
|
|
145
|
+
|
|
146
|
+
Press `a` on a pull request to open its **GitHub Actions runs** full-screen,
|
|
147
|
+
scoped to the PR's head commit:
|
|
148
|
+
|
|
149
|
+
- The runs list shows each workflow run with status, conclusion, duration, and age.
|
|
150
|
+
- `enter` drills into a run to see its jobs and steps; failing steps are easy to spot.
|
|
151
|
+
- `n` / `p` jump between failures, `enter` expands a step, `o` opens the run in your browser, `r` refreshes, and `esc` walks back out.
|
|
152
|
+
|
|
153
|
+
Requires the GitHub CLI (`gh`) the same as the rest of ghui; nothing extra to configure.
|
|
154
|
+
|
|
89
155
|
## Keybindings
|
|
90
156
|
|
|
91
157
|
- `up` / `down`: move selection
|
|
@@ -99,6 +165,7 @@ running.
|
|
|
99
165
|
- `esc`: return from expanded details, leave diff/comment mode, or close modal
|
|
100
166
|
- `r`: refresh
|
|
101
167
|
- `d`: view stacked diff for all changed files
|
|
168
|
+
- `a`: view this PR's GitHub Actions runs (jobs, steps, and failing logs)
|
|
102
169
|
- `shift-r`: review or approve the selected pull request
|
|
103
170
|
- `up` / `down` / `pageup` / `pagedown`: move comment target while viewing a diff
|
|
104
171
|
- `enter`: open a commented diff line, or start a comment on an uncommented line
|
|
@@ -113,9 +180,14 @@ running.
|
|
|
113
180
|
- `t`: choose a fixed theme, including `System` to match your terminal colors; press `m` in the theme picker to follow the OS light/dark appearance with separate theme choices
|
|
114
181
|
- `l`: manage labels
|
|
115
182
|
- `o`: open PR in browser
|
|
183
|
+
- `e`: open PR in your editor (configurable; see `editorCommand` / `repoPaths`)
|
|
116
184
|
- `y`: copy PR metadata
|
|
117
185
|
- `q`: quit
|
|
118
186
|
|
|
187
|
+
Authored-only pull request views render compact one-line rows because the
|
|
188
|
+
author identity is implied by the active view. Mixed-author views continue to
|
|
189
|
+
show the author and branch metadata row.
|
|
190
|
+
|
|
119
191
|
Review submission:
|
|
120
192
|
|
|
121
193
|
- Press `shift-r` to open the review modal.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kitlangton/ghui",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.9.0",
|
|
4
4
|
"description": "Terminal UI for GitHub pull requests",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -27,10 +27,10 @@
|
|
|
27
27
|
"LICENSE"
|
|
28
28
|
],
|
|
29
29
|
"optionalDependencies": {
|
|
30
|
-
"@kitlangton/ghui-darwin-arm64": "0.
|
|
31
|
-
"@kitlangton/ghui-darwin-x64": "0.
|
|
32
|
-
"@kitlangton/ghui-linux-arm64": "0.
|
|
33
|
-
"@kitlangton/ghui-linux-x64": "0.
|
|
30
|
+
"@kitlangton/ghui-darwin-arm64": "0.9.0",
|
|
31
|
+
"@kitlangton/ghui-darwin-x64": "0.9.0",
|
|
32
|
+
"@kitlangton/ghui-linux-arm64": "0.9.0",
|
|
33
|
+
"@kitlangton/ghui-linux-x64": "0.9.0"
|
|
34
34
|
},
|
|
35
35
|
"publishConfig": {
|
|
36
36
|
"access": "public",
|