config RawHistoryFolder

1# neferwl config: one `key = value` per line, # starts a comment.
2# Every value below is the default; a missing file means defaults.
3# Changes apply live. An invalid line logs a warning and keeps the default.
4
5# Keyboard (xkb names, e.g. layout = fr, options = caps:escape).
6keyboard.layout =
7keyboard.variant =
8keyboard.options =
9keyboard.repeat-rate = 25
10keyboard.repeat-delay = 600
11# Which modifier `cmd` means in binds: super, alt or ctrl.
12keyboard.cmd = super
13
14# Command for spawn-terminal: terminal, then $TERMINAL, then foot.
15# Automatically open once on the initial numbered workspace (first), on every
16# visible empty workspace (all), or never (off). --no-terminal overrides this.
17# terminal = foot
18terminal.auto-open = first
19
20# Commands run once when the session starts, one line each. Like spawn, a
21# command runs without a shell: see "Running commands" in the README.
22# Programs get WAYLAND_DISPLAY and NEFERWL_STATE.
23# startup = waybar
24# startup = wl-paste --watch cliphist store
25
26background = #111111
27
28# Separator lines between tiled windows (tmux style), in logical pixels.
29# The lines along the focused window use active; width 0 disables them,
30# empty inactive draws only the focused lines. Floats get a full border.
31border.width = 2
32border.active = #808080
33border.inactive = #111111
34
35# Black veil over tiles and lower layers when a float is visible (0 to 1).
36floating.dim = 0.3
37
38layout.gaps = 0
39# Columns sharing the screen equally before new ones scroll off to the right.
40# A lone column fills the screen without separators.
41layout.max-columns = 2
42# Past max-columns: scroll opens columns to the right; fixed keeps everything
43# on screen, each new window splitting the newest one (spiral).
44layout.overflow = scroll
45# cycle-column-width steps through these, then back to the equal share.
46layout.presets = 1/3, 1/2, 2/3, 1
47
48# Touchpad. A three-finger swipe up or down slides between workspaces, left
49# or right scrolls the columns. natural-scroll = on moves the content with
50# the fingers, for scroll and swipes. tap = on clicks on a tap: one finger
51# left, two right, three middle.
52touchpad.natural-scroll = off
53touchpad.tap = on
54# Pointer speed from -1 to 1; adaptive speeds up quick moves, flat does not.
55touchpad.accel-speed = 0
56touchpad.accel-profile = adaptive
57# Two-finger scroll distance multiplier.
58touchpad.scroll-factor = 1
59
60# Hide the pointer cursor after this long without motion (100ms to 1h, or
61# off); the next motion shows it.
62cursor.hide-after = 5s
63
64# on: moving a column or window to another workspace shows that workspace.
65focus.follow-move = off
66# Focus indicator on the newly focused window: an animation (pulse or off)
67# of an effect (screen: a slight brightening), peaking at strength
68# (0.01 to 0.2; 0.04: black reaches about 10/255).
69focus.animation = pulse
70focus.effect = screen
71focus.strength = 0.04
72
73# Named workspaces are outside the numbered list and require a bind. The bind
74# shows one; pressing it again returns to the previous workspace.
75# max-columns and overflow override the layout.* values.
76# workspace.web.max-columns = 3
77# workspace.web.overflow = fixed
78#
79# Slots: column.N = <width>, <command>. neferwl starts each command in the
80# background and puts its first window in column N, without taking focus.
81# A closed slot stays empty until the workspace is shown again. Apps that
82# reuse a running instance need a new-instance flag. Widths need
83# overflow = scroll.
84# workspace.dev.monitor = DP-2
85# workspace.dev.column.1 = 67%, code --new-window
86# workspace.dev.column.2 = 33%, foot
87# bind.cmd+d = workspace dev
88
89# Displays (drm backend): WxH, WxH@Hz, preferred or off.
90# The first listed display that is connected and not off is used.
91# output.DP-2 = 5120x2160@165.058
92# output.HDMI-A-1 = off
93# Scale (HiDPI), 1 to 4, like 1.5 or 4/3. Default 1. scale-up and scale-down
94# step through the scales where the display divides into whole pixels and
95# save the result here.
96# output.DP-2.scale = 4/3
97
98render.direct-scanout = on
99# Games asking for tearing flip without waiting for vblank, and variable
100# refresh runs; both only while a fullscreen window is scanned out directly.
101render.tearing = on
102render.vrr = on
103
104# Run output and input threads with SCHED_RR when permitted.
105performance.realtime = on
106
107# log.level: debug, info, warn or error. log.debug: components or all.
108log.level = info
109log.debug =
110
111# Binds: bind.<keys> = <action>. Modifiers: cmd, shift, ctrl, alt, super.
112# code:N is a physical key (evdev code), the same key on every layout:
113# code:2 to code:10 are the digit row 1 to 9, code:12 and code:13 the two
114# keys right of 0 (- and = on US).
115# Keys are what your layout prints (cmd+é on AZERTY). Write = # and space
116# by name: cmd+equal, cmd+numbersign, cmd+space. `none` removes a default.
117# `spawn <command>` runs a program; arguments split on spaces, no shell
118# (pipes and variables go in a script: see "Running commands" in the README).
119bind.cmd+return = spawn-terminal
120bind.cmd+left = focus-column-left
121bind.cmd+right = focus-column-right
122bind.cmd+up = focus-window-up
123bind.cmd+down = focus-window-down
124bind.cmd+shift+left = move-column-left
125bind.cmd+shift+right = move-column-right
126# Vim keys: every arrow bind also works with h j k l.
127bind.cmd+h = focus-column-left
128bind.cmd+l = focus-column-right
129bind.cmd+k = focus-window-up
130bind.cmd+j = focus-window-down
131bind.cmd+shift+h = move-column-left
132bind.cmd+shift+l = move-column-right
133# A window alone in its column joins the neighbor column; a stacked one
134# leaves for a new column. A full fixed workspace stacks it into the
135# neighbor column instead, past the edge on the neighbor monitor.
136bind.cmd+bracketleft = consume-or-expel-window-left
137bind.cmd+bracketright = consume-or-expel-window-right
138# Reorder the focused window inside its column.
139bind.cmd+shift+up = move-window-up
140bind.cmd+shift+down = move-window-down
141bind.cmd+shift+k = move-window-up
142bind.cmd+shift+j = move-window-down
143# Resize by a step of the usable width or height: +N% or -N% (1-100).
144bind.cmd+alt+left = set-column-width -10%
145bind.cmd+alt+right = set-column-width +10%
146bind.cmd+alt+up = set-window-height -10%
147bind.cmd+alt+down = set-window-height +10%
148bind.cmd+alt+h = set-column-width -10%
149bind.cmd+alt+l = set-column-width +10%
150bind.cmd+alt+k = set-window-height -10%
151bind.cmd+alt+j = set-window-height +10%
152# A tile becomes a free floating window, or returns to its column.
153bind.cmd+shift+space = toggle-floating
154bind.cmd+r = cycle-column-width
155bind.cmd+f = maximize-column
156bind.cmd+shift+f = toggle-fullscreen
157bind.cmd+s = toggle-stash-visible
158bind.cmd+shift+s = toggle-window-stash
159bind.cmd+o = toggle-overview
160bind.cmd+q = close-window
161bind.ctrl+alt+backspace = quit
162bind.ctrl+cmd+space = spawn fuzzel
163
164# Workspaces stack vertically; numbers follow their order. An empty one always
165# waits below the last. cmd+up/down past the column edge also switch workspace.
166bind.cmd+pageup = focus-workspace-up
167bind.cmd+pagedown = focus-workspace-down
168# move-column-to-workspace moves the whole column; move-window-to-workspace
169# (N, -up, -down) moves only the focused window and has no default bind.
170bind.cmd+shift+pageup = move-column-to-workspace-up
171bind.cmd+shift+pagedown = move-column-to-workspace-down
172# Reorder workspaces: swap the current one with its neighbor.
173bind.cmd+ctrl+shift+up = move-workspace-up
174bind.cmd+ctrl+shift+down = move-workspace-down
175bind.cmd+ctrl+shift+k = move-workspace-up
176bind.cmd+ctrl+shift+j = move-workspace-down
177bind.cmd+code:2 = focus-workspace 1
178bind.cmd+code:3 = focus-workspace 2
179bind.cmd+code:4 = focus-workspace 3
180bind.cmd+code:5 = focus-workspace 4
181bind.cmd+code:6 = focus-workspace 5
182bind.cmd+code:7 = focus-workspace 6
183bind.cmd+code:8 = focus-workspace 7
184bind.cmd+code:9 = focus-workspace 8
185bind.cmd+code:10 = focus-workspace 9
186bind.cmd+shift+code:2 = move-column-to-workspace 1
187bind.cmd+shift+code:3 = move-column-to-workspace 2
188bind.cmd+shift+code:4 = move-column-to-workspace 3
189bind.cmd+shift+code:5 = move-column-to-workspace 4
190bind.cmd+shift+code:6 = move-column-to-workspace 5
191bind.cmd+shift+code:7 = move-column-to-workspace 6
192bind.cmd+shift+code:8 = move-column-to-workspace 7
193bind.cmd+shift+code:9 = move-column-to-workspace 8
194bind.cmd+shift+code:10 = move-column-to-workspace 9
195
196# Monitors, left to right: focus the neighbor, or move the workspace there.
197bind.cmd+ctrl+left = focus-monitor-left
198bind.cmd+ctrl+right = focus-monitor-right
199bind.cmd+ctrl+h = focus-monitor-left
200bind.cmd+ctrl+l = focus-monitor-right
201bind.cmd+ctrl+shift+left = move-workspace-to-monitor-left
202bind.cmd+ctrl+shift+right = move-workspace-to-monitor-right
203bind.cmd+ctrl+shift+h = move-workspace-to-monitor-left
204bind.cmd+ctrl+shift+l = move-workspace-to-monitor-right
205
206# Zoom: the whole display, live.
207bind.cmd+code:13 = scale-up
208bind.cmd+code:12 = scale-down
209
210# Media keys have no default. Bind them by their exact xkb keysym name
211# (case-sensitive; `wev` shows it) to your own tools:
212# bind.XF86AudioRaiseVolume = spawn wpctl set-volume -l 1.0 @DEFAULT_AUDIO_SINK@ 5%+
213# bind.XF86AudioLowerVolume = spawn wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
214# bind.XF86AudioMute = spawn wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
215# bind.XF86AudioMicMute = spawn wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle
216# bind.XF86MonBrightnessUp = spawn brightnessctl set +5%
217# bind.XF86MonBrightnessDown = spawn brightnessctl set 5%-
218# bind.XF86AudioPlay = spawn playerctl play-pause

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 25

Tags 10

↑↓ moveenter openesc close