Merge branch 'main' into linux ed1fc54d
Steve Simkins · 2026-06-15 17:51 21 file(s) · +567 −42
README.md +1 −1
1 1
# Dotfiles
2 2
3 -
A collection of MacOS dotfiles I use in my developement environment
3 +
A collection of MacOS dotfiles I use in my development environment
4 4
5 5
![screenshot](assets/screenshot.png)
6 6
gemlog/config.sh (added) +23 −0
1 +
export global_title="gem.stevedylan.dev"
2 +
export global_description="Floating out into space, looking back on the pale blue dot"
3 +
export global_url="gemini://gem.stevedylan.dev/" # link to base url of gemlog
4 +
export global_author="Steve"
5 +
export global_author_email="contact@stevedylan.dev"
6 +
export global_author_url="gemini://gem.stevedylan.dev/" # homepage of author
7 +
export global_license=""
8 +
9 +
export gemlog_feed="atom.xml" # filename of the atom feed
10 +
export number_of_feed_articles="50" # maximum number of posts added to atom feed
11 +
export feed_base_url="gemini://gem.stevedylan.dev/" # base url that the feed is hosted at
12 +
export feed_web_url="" # base url that the feed is hosted at on the web
13 +
14 +
export index="gemlog/index.gmi" # main page of gemlog, not recommended to change
15 +
16 +
export use_year_divider=true # separate posts from different years with a heading?
17 +
18 +
# these 2 are exclusive, and use_month_divider_nl takes priority if both are set
19 +
export use_month_divider_nl=true # separate posts from different months with a newline?
20 +
export use_month_divider_hd=false # separate posts from different months with a heading?
21 +
22 +
23 +
export gemlog_sh_link="https://git.sr.ht/~nytpu/gemlog.sh" # link to the utility, you should change this if you've made substantial non-configuration changes
gemlog/footer.gmi (added) +4 −0
1 +
2 +
──────────────────
3 +
4 +
=> gemini://gem.stevedylan.dev Go Back
gemlog/header.gmi (added) +4 −0
1 +
# Steve's Capsule
2 +
3 +
Floating out into space, looking back on the pale blue dot
4 +
git/gitconfig → git/.gitconfig +9 −1
6 6
[alias]
7 7
	ac = "!f() { git add . && git commit -m \"$1\"; }; f"
8 8
	wip = "!f() { git add . && git commit -m \"wip\" && git push; }; f"
9 +
	d = difftool -y --tool=oy
10 +
11 +
[difftool "oy"]
12 +
	cmd = oy "$LOCAL" "$REMOTE"
13 +
14 +
[difftool]
15 +
	prompt = false
9 16
10 17
[column]
11 18
  ui = auto
12 19
13 20
[branch]
14 -
  sort = -comitterdate
21 +
  sort = -committerdate
15 22
16 23
[init]
17 24
  defaultBranch = main
18 25
19 26
[diff]
27 +
  tool = oy
20 28
  algorithm = histogram
21 29
  colorMoved = plain
22 30
  mnemonicPrefix = true
git/gitignore → git/.gitignore +0 −0
git/template → git/.template +0 −0
nushell/config.nu +5 −1
966 966
  echo "Repository initialized with .gitignore template!"
967 967
}
968 968
969 +
def blogdate [] {
970 +
  date now | date to-timezone UTC | format date "%Y-%m-%dT%H:%M:%SZ"
971 +
}
972 +
969 973
alias ll = ls -l
970 974
alias la = ls -a
971 975
alias lg = lazygit
983 987
984 988
mkdir ($nu.data-dir | path join "vendor/autoload")
985 989
starship init nu | save -f ($nu.data-dir | path join "vendor/autoload/starship.nu")
986 -
source ~/.zoxide.nu
990 +
source ~/.config/nushell/zoxide.nu
987 991
source ~/.cargo/env.nu
nushell/env.nu +3 −2
100 100
$env.PATH = ($env.PATH | split row (char esep) | prepend $env.PNPM_HOME )
101 101
102 102
$env.GPG_TTY = (tty)
103 -
# source ~/.config/nushell/darkmatter.nu
103 +
source ~/.config/nushell/darkmatter.nu
104 104
source ~/.config/nushell/git-completions.nu
105 105
source ~/.cargo/env.nu
106 106
107 107
$env.EDITOR = "nvim"
108 108
109 -
zoxide init nushell | save -f ~/.zoxide.nu
109 +
$env.BULLETS_FEEDS = "feeds.stevedylan.dev/feed.xml"
110 +
110 111
mkdir ~/.cache/starship
111 112
starship init nu | save -f ~/.cache/starship/init.nu
112 113
nushell/zoxide.nu (added) +70 −0
1 +
# Code generated by zoxide. DO NOT EDIT.
2 +
3 +
# =============================================================================
4 +
#
5 +
# Hook configuration for zoxide.
6 +
#
7 +
8 +
# Initialize hook to add new entries to the database.
9 +
export-env {
10 +
  $env.config = (
11 +
    $env.config?
12 +
    | default {}
13 +
    | upsert hooks { default {} }
14 +
    | upsert hooks.env_change { default {} }
15 +
    | upsert hooks.env_change.PWD { default [] }
16 +
  )
17 +
  let __zoxide_hooked = (
18 +
    $env.config.hooks.env_change.PWD | any { try { get __zoxide_hook } catch { false } }
19 +
  )
20 +
  if not $__zoxide_hooked {
21 +
    $env.config.hooks.env_change.PWD = ($env.config.hooks.env_change.PWD | append {
22 +
      __zoxide_hook: true,
23 +
      code: {|_, dir| ^zoxide add -- $dir}
24 +
    })
25 +
  }
26 +
}
27 +
28 +
# =============================================================================
29 +
#
30 +
# When using zoxide with --no-cmd, alias these internal functions as desired.
31 +
#
32 +
33 +
# Jump to a directory using only keywords.
34 +
def --env --wrapped __zoxide_z [...rest: string] {
35 +
  let path = match $rest {
36 +
    [] => {'~'},
37 +
    [ '-' ] => {'-'},
38 +
    [ $arg ] if ($arg | path expand | path type) == 'dir' => {$arg}
39 +
    _ => {
40 +
      ^zoxide query --exclude $env.PWD -- ...$rest | str trim -r -c "\n"
41 +
    }
42 +
  }
43 +
  cd $path
44 +
}
45 +
46 +
# Jump to a directory using interactive search.
47 +
def --env --wrapped __zoxide_zi [...rest:string] {
48 +
  cd $'(^zoxide query --interactive -- ...$rest | str trim -r -c "\n")'
49 +
}
50 +
51 +
# =============================================================================
52 +
#
53 +
# Commands for zoxide. Disable these using --no-cmd.
54 +
#
55 +
56 +
alias z = __zoxide_z
57 +
alias zi = __zoxide_zi
58 +
59 +
# =============================================================================
60 +
#
61 +
# Add this to your env file (find it by running `$nu.env-path` in Nushell):
62 +
#
63 +
#   zoxide init nushell | save -f ~/.zoxide.nu
64 +
#
65 +
# Now, add this to the end of your config file (find it by running
66 +
# `$nu.config-path` in Nushell):
67 +
#
68 +
#   source ~/.zoxide.nu
69 +
#
70 +
# Note: zoxide only supports Nushell v0.89.0+.
nvim/init.lua +6 −6
1 -
require("config.options")
2 -
require("core.plugins")
3 -
require("core.lsp")
4 -
require("core.treesitter")
5 -
require("config.keymaps")
6 -
require("config.autocmds")
1 +
require("options")
2 +
require("keymaps")
3 +
require("autocmds")
4 +
require("plugins")
5 +
require("lsp")
6 +
require("treesitter")
nvim/lsp/asm-lsp.lua (deleted) +0 −12
1 -
return {
2 -
	cmd = {
3 -
		"asm-lsp",
4 -
	},
5 -
	filetypes = {
6 -
		"s",
7 -
		"S",
8 -
		"asm"
9 -
	},
10 -
	single_file_support = true,
11 -
	log_level = vim.lsp.protocol.MessageType.Warning,
12 -
}
nvim/lua/config/autocmds.lua → nvim/lua/autocmds.lua +0 −0
nvim/lua/config/keymaps.lua → nvim/lua/keymaps.lua +0 −1
38 38
39 39
-- Diagnostics
40 40
map("n", "<leader>d", "<cmd>Pick diagnostic<CR>", opts)
41 -
map("n", "<leader>dd", "<cmd>lua vim.diagnostic.open_float({ border = 'rounded' })<CR>", opts)
42 41
43 42
-- Git
44 43
map("n", "<leader>gg", "<cmd>lua MiniDiff.toggle_overlay()<CR>", opts)
nvim/lua/config/options.lua → nvim/lua/options.lua +1 −4
56 56
  eob = " ",
57 57
}
58 58
vim.opt.shell = "sh"
59 -
60 -
if vim.fn.has("nvim-0.10") == 1 then
61 -
  vim.opt.smoothscroll = true
62 -
end
59 +
vim.opt.smoothscroll = true
63 60
64 61
-- Treesitter folding
65 62
vim.o.foldenable = true
nvim/lua/core/lsp.lua → nvim/lua/lsp.lua +1 −5
4 4
  "lua_ls",
5 5
  "tsserver",
6 6
  "rust-analyzer",
7 -
  "asm-lsp",
8 7
  "solc",
9 8
  "html",
10 9
  "json"
16 15
    local map = function(keys, func, desc)
17 16
      vim.keymap.set("n", keys, func, { buffer = event.buf, desc = "LSP: " .. desc })
18 17
    end
19 -
20 -
    -- defaults:
21 -
    -- https://neovim.io/doc/user/news-0.11.html#_defaults
22 18
23 19
    map("gl", vim.diagnostic.open_float, "Open Diagnostic Float")
24 20
    map("K", vim.lsp.buf.hover, "Hover Documentation")
42 38
      local highlight_augroup = vim.api.nvim_create_augroup('lsp-highlight', { clear = false })
43 39
44 40
      -- When cursor stops moving: Highlights all instances of the symbol under the cursor
45 -
      -- When cursor moves: Clears the highlighting
46 41
      vim.api.nvim_create_autocmd({ 'CursorHold', 'CursorHoldI' }, {
47 42
        buffer = event.buf,
48 43
        group = highlight_augroup,
49 44
        callback = vim.lsp.buf.document_highlight,
50 45
      })
46 +
      -- When cursor moves: Clears the highlighting
51 47
      vim.api.nvim_create_autocmd({ 'CursorMoved', 'CursorMovedI' }, {
52 48
        buffer = event.buf,
53 49
        group = highlight_augroup,
nvim/lua/core/plugins.lua → nvim/lua/plugins.lua +1 −9
1 -
-- ============================================================================
2 -
-- Colorscheme (must load at startup)
3 -
-- ============================================================================
1 +
-- Colorscheme
4 2
vim.pack.add({
5 3
	"https://github.com/stevedylandev/darkmatter-nvim",
6 4
  'https://github.com/echasnovski/mini.nvim',
7 5
})
8 6
vim.cmd.colorscheme('darkmatter')
9 7
10 -
-- ============================================================================
11 8
-- Mini.nvim — startup modules
12 -
-- ============================================================================
13 9
local win_config = function()
14 10
  local height = math.floor(0.618 * vim.o.lines)
15 11
  local width = math.floor(0.618 * vim.o.columns)
63 59
require('mini.statusline').setup()
64 60
require('mini.extra').setup()
65 61
66 -
-- ============================================================================
67 62
-- Deferred — loads right after startup via vim.schedule()
68 -
-- ============================================================================
69 63
vim.schedule(function()
70 64
  vim.pack.add({
71 65
    "https://github.com/christoomey/vim-tmux-navigator",
94 88
  })
95 89
end)
96 90
97 -
-- ============================================================================
98 91
-- Lazy — loads on InsertEnter
99 -
-- ============================================================================
100 92
vim.api.nvim_create_autocmd('InsertEnter', { once = true, callback = function()
101 93
  require("mini.completion").setup({
102 94
    mappings = {
nvim/lua/core/treesitter.lua → nvim/lua/treesitter.lua +0 −0
oyo/config.toml (added) +3 −0
1 +
2 +
[ui.syntax]
3 +
theme = "Darkmatter"
oyo/themes/Darkmatter.tmTheme (added) +301 −0
1 +
<?xml version="1.0" encoding="UTF-8"?>
2 +
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3 +
<!-- Generated by: GitHub Copilot                 -->
4 +
<!-- ============================================ -->
5 +
<plist version="1.0">
6 +
<dict>
7 +
	<key>name</key>
8 +
	<string>Base16 Black Metal Bathory</string>
9 +
	<key>settings</key>
10 +
	<array>
11 +
		<dict>
12 +
			<key>settings</key>
13 +
			<dict>
14 +
				<key>background</key>
15 +
				<string>#121113</string>
16 +
				<key>caret</key>
17 +
				<string>#C1C1C1</string>
18 +
				<key>foreground</key>
19 +
				<string>#C1C1C1</string>
20 +
				<key>invisibles</key>
21 +
				<string>#333333</string>
22 +
				<key>lineHighlight</key>
23 +
				<string>#121212</string>
24 +
				<key>selection</key>
25 +
				<string>#222222</string>
26 +
			</dict>
27 +
		</dict>
28 +
		<dict>
29 +
			<key>name</key>
30 +
			<string>Comment</string>
31 +
			<key>scope</key>
32 +
			<string>comment</string>
33 +
			<key>settings</key>
34 +
			<dict>
35 +
				<key>foreground</key>
36 +
				<string>#888888</string>
37 +
			</dict>
38 +
		</dict>
39 +
		<dict>
40 +
			<key>name</key>
41 +
			<string>String</string>
42 +
			<key>scope</key>
43 +
			<string>string</string>
44 +
			<key>settings</key>
45 +
			<dict>
46 +
				<key>foreground</key>
47 +
				<string>#FBCB97</string>
48 +
			</dict>
49 +
		</dict>
50 +
		<dict>
51 +
			<key>name</key>
52 +
			<string>Number</string>
53 +
			<key>scope</key>
54 +
			<string>constant.numeric</string>
55 +
			<key>settings</key>
56 +
			<dict>
57 +
				<key>foreground</key>
58 +
				<string>#E78A53</string>
59 +
			</dict>
60 +
		</dict>
61 +
		<dict>
62 +
			<key>name</key>
63 +
			<string>Built-in constant</string>
64 +
			<key>scope</key>
65 +
			<string>constant.language</string>
66 +
			<key>settings</key>
67 +
			<dict>
68 +
				<key>foreground</key>
69 +
				<string>#E78A53</string>
70 +
			</dict>
71 +
		</dict>
72 +
		<dict>
73 +
			<key>name</key>
74 +
			<string>User-defined constant</string>
75 +
			<key>scope</key>
76 +
			<string>constant.character, constant.other</string>
77 +
			<key>settings</key>
78 +
			<dict>
79 +
				<key>foreground</key>
80 +
				<string>#AAAAAA</string>
81 +
			</dict>
82 +
		</dict>
83 +
		<dict>
84 +
			<key>name</key>
85 +
			<string>Variable</string>
86 +
			<key>scope</key>
87 +
			<string>variable</string>
88 +
			<key>settings</key>
89 +
			<dict>
90 +
				<key>fontStyle</key>
91 +
				<string></string>
92 +
				<key>foreground</key>
93 +
				<string>#5F8787</string>
94 +
			</dict>
95 +
		</dict>
96 +
		<dict>
97 +
			<key>name</key>
98 +
			<string>Keyword</string>
99 +
			<key>scope</key>
100 +
			<string>keyword</string>
101 +
			<key>settings</key>
102 +
			<dict>
103 +
				<key>foreground</key>
104 +
				<string>#E78A53</string>
105 +
			</dict>
106 +
		</dict>
107 +
		<dict>
108 +
			<key>name</key>
109 +
			<string>Storage</string>
110 +
			<key>scope</key>
111 +
			<string>storage</string>
112 +
			<key>settings</key>
113 +
			<dict>
114 +
				<key>fontStyle</key>
115 +
				<string></string>
116 +
				<key>foreground</key>
117 +
				<string>#FBCB97</string>
118 +
			</dict>
119 +
		</dict>
120 +
		<dict>
121 +
			<key>name</key>
122 +
			<string>Storage type</string>
123 +
			<key>scope</key>
124 +
			<string>storage.type</string>
125 +
			<key>settings</key>
126 +
			<dict>
127 +
				<key>fontStyle</key>
128 +
				<string>italic</string>
129 +
				<key>foreground</key>
130 +
				<string>#5F8787</string>
131 +
			</dict>
132 +
		</dict>
133 +
		<dict>
134 +
			<key>name</key>
135 +
			<string>Class name</string>
136 +
			<key>scope</key>
137 +
			<string>entity.name.class</string>
138 +
			<key>settings</key>
139 +
			<dict>
140 +
				<key>fontStyle</key>
141 +
				<string>underline</string>
142 +
				<key>foreground</key>
143 +
				<string>#E78A53</string>
144 +
			</dict>
145 +
		</dict>
146 +
		<dict>
147 +
			<key>name</key>
148 +
			<string>Inherited class</string>
149 +
			<key>scope</key>
150 +
			<string>entity.other.inherited-class</string>
151 +
			<key>settings</key>
152 +
			<dict>
153 +
				<key>fontStyle</key>
154 +
				<string>italic underline</string>
155 +
				<key>foreground</key>
156 +
				<string>#FBCB97</string>
157 +
			</dict>
158 +
		</dict>
159 +
		<dict>
160 +
			<key>name</key>
161 +
			<string>Function name</string>
162 +
			<key>scope</key>
163 +
			<string>entity.name.function</string>
164 +
			<key>settings</key>
165 +
			<dict>
166 +
				<key>fontStyle</key>
167 +
				<string></string>
168 +
				<key>foreground</key>
169 +
				<string>#FBCB97</string>
170 +
			</dict>
171 +
		</dict>
172 +
		<dict>
173 +
			<key>name</key>
174 +
			<string>Function argument</string>
175 +
			<key>scope</key>
176 +
			<string>variable.parameter</string>
177 +
			<key>settings</key>
178 +
			<dict>
179 +
				<key>fontStyle</key>
180 +
				<string>italic</string>
181 +
				<key>foreground</key>
182 +
				<string>#5F8787</string>
183 +
			</dict>
184 +
		</dict>
185 +
		<dict>
186 +
			<key>name</key>
187 +
			<string>Tag name</string>
188 +
			<key>scope</key>
189 +
			<string>entity.name.tag</string>
190 +
			<key>settings</key>
191 +
			<dict>
192 +
				<key>fontStyle</key>
193 +
				<string></string>
194 +
				<key>foreground</key>
195 +
				<string>#5F8787</string>
196 +
			</dict>
197 +
		</dict>
198 +
		<dict>
199 +
			<key>name</key>
200 +
			<string>Tag attribute</string>
201 +
			<key>scope</key>
202 +
			<string>entity.other.attribute-name</string>
203 +
			<key>settings</key>
204 +
			<dict>
205 +
				<key>fontStyle</key>
206 +
				<string></string>
207 +
				<key>foreground</key>
208 +
				<string>#E78A53</string>
209 +
			</dict>
210 +
		</dict>
211 +
		<dict>
212 +
			<key>name</key>
213 +
			<string>Library function</string>
214 +
			<key>scope</key>
215 +
			<string>support.function</string>
216 +
			<key>settings</key>
217 +
			<dict>
218 +
				<key>fontStyle</key>
219 +
				<string></string>
220 +
				<key>foreground</key>
221 +
				<string>#FBCB97</string>
222 +
			</dict>
223 +
		</dict>
224 +
		<dict>
225 +
			<key>name</key>
226 +
			<string>Library constant</string>
227 +
			<key>scope</key>
228 +
			<string>support.constant</string>
229 +
			<key>settings</key>
230 +
			<dict>
231 +
				<key>fontStyle</key>
232 +
				<string></string>
233 +
				<key>foreground</key>
234 +
				<string>#E78A53</string>
235 +
			</dict>
236 +
		</dict>
237 +
		<dict>
238 +
			<key>name</key>
239 +
			<string>Library class&#x2f;type</string>
240 +
			<key>scope</key>
241 +
			<string>support.type, support.class</string>
242 +
			<key>settings</key>
243 +
			<dict>
244 +
				<key>fontStyle</key>
245 +
				<string>italic</string>
246 +
				<key>foreground</key>
247 +
				<string>#5F8787</string>
248 +
			</dict>
249 +
		</dict>
250 +
		<dict>
251 +
			<key>name</key>
252 +
			<string>Library variable</string>
253 +
			<key>scope</key>
254 +
			<string>support.other.variable</string>
255 +
			<key>settings</key>
256 +
			<dict>
257 +
				<key>fontStyle</key>
258 +
				<string></string>
259 +
				<key>foreground</key>
260 +
				<string>#5F8787</string>
261 +
			</dict>
262 +
		</dict>
263 +
		<dict>
264 +
			<key>name</key>
265 +
			<string>Invalid</string>
266 +
			<key>scope</key>
267 +
			<string>invalid</string>
268 +
			<key>settings</key>
269 +
			<dict>
270 +
				<key>background</key>
271 +
				<string>#5F8787</string>
272 +
				<key>foreground</key>
273 +
				<string>#121113</string>
274 +
			</dict>
275 +
		</dict>
276 +
		<dict>
277 +
			<key>name</key>
278 +
			<string>Invalid deprecated</string>
279 +
			<key>scope</key>
280 +
			<string>invalid.deprecated</string>
281 +
			<key>settings</key>
282 +
			<dict>
283 +
				<key>background</key>
284 +
				<string>#E78A53</string>
285 +
				<key>foreground</key>
286 +
				<string>#121113</string>
287 +
			</dict>
288 +
		</dict>
289 +
	</array>
290 +
	<key>uuid</key>
291 +
	<string>D8D5E82E-3D5B-46B5-B38E-8C841C21347D</string>
292 +
	<key>colorSpaceName</key>
293 +
	<string>sRGB</string>
294 +
	<key>semanticClass</key>
295 +
	<string>theme.dark.base16_black_metal_bathory</string>
296 +
	<key>comment</key>
297 +
	<string>https://github.com/metalelf0/base16-black-metal-scheme</string>
298 +
	<key>author</key>
299 +
	<string>metalelf0</string>
300 +
</dict>
301 +
</plist>
yazi/theme.toml (added) +135 −0
1 +
[mgr]
2 +
cwd = { fg = "yellow" }
3 +
4 +
find_keyword  = { fg = "yellow", italic = true }
5 +
find_position = { fg = "magenta", bg = "reset", italic = true }
6 +
7 +
marker_copied   = { fg = "green",  bg = "green" }
8 +
marker_cut      = { fg = "red",    bg = "red" }
9 +
marker_marked   = { fg = "cyan",   bg = "cyan" }
10 +
marker_selected = { fg = "yellow", bg = "yellow" }
11 +
12 +
count_copied   = { fg = "black", bg = "green" }
13 +
count_cut      = { fg = "black", bg = "red" }
14 +
count_selected = { fg = "black", bg = "yellow" }
15 +
16 +
border_symbol = "│"
17 +
border_style  = { fg = "white" }
18 +
19 +
syntect_theme = ""
20 +
21 +
[tabs]
22 +
active   = { fg = "black", bg = "white" }
23 +
inactive = { fg = "white", bg = "black" }
24 +
25 +
[mode]
26 +
normal_main = { fg = "black", bg = "yellow", bold = true }
27 +
normal_alt  = { fg = "yellow", bg = "black" }
28 +
29 +
select_main = { fg = "black", bg = "green", bold = true }
30 +
select_alt  = { fg = "green", bg = "black" }
31 +
32 +
unset_main  = { fg = "black", bg = "magenta", bold = true }
33 +
unset_alt   = { fg = "magenta", bg = "black" }
34 +
35 +
[status]
36 +
sep_left  = { open = "", close = "" }
37 +
sep_right = { open = "", close = "" }
38 +
39 +
progress_label  = { bold = true }
40 +
progress_normal = { fg = "blue",   bg = "black" }
41 +
progress_error  = { fg = "red",    bg = "black" }
42 +
43 +
perm_type  = { fg = "cyan" }
44 +
perm_read  = { fg = "yellow" }
45 +
perm_write = { fg = "red" }
46 +
perm_exec  = { fg = "green" }
47 +
perm_sep   = { fg = "white" }
48 +
49 +
[pick]
50 +
border   = { fg = "yellow" }
51 +
active   = { fg = "magenta" }
52 +
inactive = {}
53 +
54 +
[input]
55 +
border   = { fg = "yellow" }
56 +
title    = {}
57 +
value    = {}
58 +
selected = { reversed = true }
59 +
60 +
[cmp]
61 +
border   = { fg = "yellow" }
62 +
active   = { bg = "black" }
63 +
inactive = {}
64 +
65 +
icon_file    = ""
66 +
icon_folder  = ""
67 +
icon_command = ""
68 +
69 +
[tasks]
70 +
border  = { fg = "yellow" }
71 +
title   = {}
72 +
hovered = { underline = true }
73 +
74 +
[which]
75 +
mask            = { bg = "black" }
76 +
cand            = { fg = "cyan" }
77 +
rest            = { fg = "white" }
78 +
desc            = { fg = "magenta" }
79 +
separator       = "  "
80 +
separator_style = { fg = "black" }
81 +
82 +
[help]
83 +
on      = { fg = "cyan" }
84 +
run     = { fg = "magenta" }
85 +
hovered = { reversed = true, bold = true }
86 +
footer  = { fg = "white", bg = "black" }
87 +
88 +
[notify]
89 +
title_info  = { fg = "green" }
90 +
title_warn  = { fg = "yellow" }
91 +
title_error = { fg = "red" }
92 +
93 +
icon_info  = ""
94 +
icon_warn  = ""
95 +
icon_error = ""
96 +
97 +
[icon]
98 +
prepend_dirs = [
99 +
	{ name = "Desktop", text = "", fg = "blue" },
100 +
	{ name = "Downloads", text = "", fg = "blue" },
101 +
	{ name = "Developer", text = "󱌣", fg = "blue" },
102 +
	{ name = "Pictures", text = "", fg = "blue" },
103 +
	{ name = "Documents", text = "", fg = "blue" },
104 +
	{ name = "Movies", text = "", fg = "blue" },
105 +
	{ name = "Library", text = "", fg = "blue" },
106 +
	{ name = "Music", text = "", fg = "blue" },
107 +
	{ name = "Public", text = "󰛳", fg = "blue" },
108 +
]
109 +
prepend_conds = [
110 +
  { if = "dir",          text = "󰉋", fg = "blue" },
111 +
  { if = "hidden & dir", text = "󰉋", fg = "blue" },
112 +
  { if = "link",         text = "󰌹", fg = "cyan" },
113 +
  { if = "orphan",       text = "", fg = "red" },
114 +
  { if = "exec",         text = "", fg = "green" },
115 +
  { if = "hidden",       text = "", fg = "yellow" },
116 +
]
117 +
118 +
prepend_exts = [
119 +
  { name = "png",        text = "", fg = "red" },
120 +
  { name = "jpg",        text = "", fg = "red" },
121 +
  { name = "jpeg",        text = "", fg = "red" },
122 +
  { name = "webp",        text = "", fg = "red" },
123 +
  { name = "gif",        text = "", fg = "red" },
124 +
  { name = "csv",        text = "", fg = "red" },
125 +
]
126 +
127 +
[filetype]
128 +
rules = [
129 +
  { mime = "image/*", fg = "cyan" },
130 +
  { mime = "{audio,video}/*", fg = "yellow" },
131 +
  { mime = "application/{zip,rar,7z*,tar,gzip,xz,zstd,bzip*,lzma,compress,archive,cpio,arj,xar,ms-cab*}", fg = "magenta" },
132 +
  { mime = "application/{pdf,doc*,rtf}", fg = "green" },
133 +
  { url = "*/", fg = "blue" },
134 +
  { url = "*",  fg = "white" },
135 +
]