detached 7e592a5

fix(ci): satisfy lint for navigation changes

commit
7e592a5acccc7af0cc775c920f1e674a257398ed
author
brice · · 2026-08-15 13:07 UTC
parent
c1deb9b
signature
GPG VerifiedCD88F9E564E0102646FB6077A1A07C7C7C3E349D · arch-gpg Verified for the committer email
2 files · +10 -5
M internal/bootstrap/development_environment.go +7 -4
@@ -6,7 +6,10 @@ import (
66 "path/filepath"
77 )
88
9-const developmentEnvironmentName = "dev"
9+const (
10+ developmentEnvironmentName = "dev"
11+ developmentPrivateMode os.FileMode = 0o700
12+)
1013
1114 // ApplyDevelopmentEnvironment isolates the process from the user's XDG and
1215 // home directories when ENV=dev. It must run before GTK, CEF, or any adapter
@@ -82,7 +85,7 @@ func developmentPrivateDirectories(root string, paths map[string]string) []strin
8285 }
8386
8487 func ensureDevelopmentDirectory(path string, private bool) error {
85- if err := os.MkdirAll(path, 0o700); err != nil {
88+ if err := os.MkdirAll(path, developmentPrivateMode); err != nil {
8689 return fmt.Errorf("create development environment directory %q: %w", path, err)
8790 }
8891
@@ -96,14 +99,14 @@ func ensureDevelopmentDirectory(path string, private bool) error {
9699 if !private {
97100 return nil
98101 }
99- if err := os.Chmod(path, 0o700); err != nil {
102+ if err = os.Chmod(path, developmentPrivateMode); err != nil {
100103 return fmt.Errorf("restrict development environment directory %q: %w", path, err)
101104 }
102105 info, err = os.Stat(path)
103106 if err != nil {
104107 return fmt.Errorf("verify development environment directory %q: %w", path, err)
105108 }
106- if info.Mode().Perm() != 0o700 {
109+ if info.Mode().Perm() != developmentPrivateMode.Perm() {
107110 return fmt.Errorf("development environment directory %q permissions are %04o, want 0700", path, info.Mode().Perm())
108111 }
109112 return nil
@@ -6,7 +6,10 @@ import (
6 "path/filepath"6 "path/filepath"
7 )7 )
8 8
9-const developmentEnvironmentName = "dev"9+const (
10+ developmentEnvironmentName = "dev"
11+ developmentPrivateMode os.FileMode = 0o700
12+)
10 13
11 // ApplyDevelopmentEnvironment isolates the process from the user's XDG and14 // ApplyDevelopmentEnvironment isolates the process from the user's XDG and
12 // home directories when ENV=dev. It must run before GTK, CEF, or any adapter15 // home directories when ENV=dev. It must run before GTK, CEF, or any adapter
@@ -82,7 +85,7 @@ func developmentPrivateDirectories(root string, paths map[string]string) []strin
82 }85 }
83 86
84 func ensureDevelopmentDirectory(path string, private bool) error {87 func ensureDevelopmentDirectory(path string, private bool) error {
85- if err := os.MkdirAll(path, 0o700); err != nil {88+ if err := os.MkdirAll(path, developmentPrivateMode); err != nil {
86 return fmt.Errorf("create development environment directory %q: %w", path, err)89 return fmt.Errorf("create development environment directory %q: %w", path, err)
87 }90 }
88 91
@@ -96,14 +99,14 @@ func ensureDevelopmentDirectory(path string, private bool) error {
96 if !private {99 if !private {
97 return nil100 return nil
98 }101 }
99- if err := os.Chmod(path, 0o700); err != nil {102+ if err = os.Chmod(path, developmentPrivateMode); err != nil {
100 return fmt.Errorf("restrict development environment directory %q: %w", path, err)103 return fmt.Errorf("restrict development environment directory %q: %w", path, err)
101 }104 }
102 info, err = os.Stat(path)105 info, err = os.Stat(path)
103 if err != nil {106 if err != nil {
104 return fmt.Errorf("verify development environment directory %q: %w", path, err)107 return fmt.Errorf("verify development environment directory %q: %w", path, err)
105 }108 }
106- if info.Mode().Perm() != 0o700 {109+ if info.Mode().Perm() != developmentPrivateMode.Perm() {
107 return fmt.Errorf("development environment directory %q permissions are %04o, want 0700", path, info.Mode().Perm())110 return fmt.Errorf("development environment directory %q permissions are %04o, want 0700", path, info.Mode().Perm())
108 }111 }
109 return nil112 return nil
M internal/infrastructure/cef/semantic_navigation.go +3 -1
@@ -76,7 +76,9 @@ func headingNavigationScript(direction, count int, highlightColor string) string
7676 }
7777 // Refresh the outline on every navigation so an in-session accent change is
7878 // reflected even when the target style element already exists.
79- style.textContent = "." + className + " { outline: 3px solid " + highlightColor + " !important; outline-offset: 5px !important; border-radius: 3px !important; }";
79+ style.textContent = "." + className +
80+ " { outline: 3px solid " + highlightColor +
81+ " !important; outline-offset: 5px !important; border-radius: 3px !important; }";
8082 window[stateKey] = target;
8183 target.classList.add(className);
8284 target.scrollIntoView({ block: "center", inline: "nearest", behavior: "smooth" });
@@ -76,7 +76,9 @@ func headingNavigationScript(direction, count int, highlightColor string) string
76 }76 }
77 // Refresh the outline on every navigation so an in-session accent change is77 // Refresh the outline on every navigation so an in-session accent change is
78 // reflected even when the target style element already exists.78 // reflected even when the target style element already exists.
79- style.textContent = "." + className + " { outline: 3px solid " + highlightColor + " !important; outline-offset: 5px !important; border-radius: 3px !important; }";79+ style.textContent = "." + className +
80+ " { outline: 3px solid " + highlightColor +
81+ " !important; outline-offset: 5px !important; border-radius: 3px !important; }";
80 window[stateKey] = target;82 window[stateKey] = target;
81 target.classList.add(className);83 target.classList.add(className);
82 target.scrollIntoView({ block: "center", inline: "nearest", behavior: "smooth" });84 target.scrollIntoView({ block: "center", inline: "nearest", behavior: "smooth" });

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 8

Tags 42

↑↓ moveenter openesc close