Compare commits

18 Commits
master ... wip

Author SHA1 Message Date
9064a389e9 dwm: reformat config.h 2025-08-01 00:10:33 +02:00
e507e258e3 nvim: add lazyjj 2025-07-22 23:09:32 +02:00
d138f4c1da nvim, alacritty: switch to kanagawa-paper 2025-07-21 23:59:21 +02:00
fa085ae00c nvim: add snipe 2025-06-25 23:59:37 +02:00
d8a21e78c4 nvim: switch to sweetie colorscheme, also update alacritty themes 2025-06-25 22:05:48 +02:00
213a93acd9 nvim: remove telescope persisted key and grep_string 2025-06-24 22:51:01 +02:00
bdde8238c9 nvim: use snacks, remove lisp related and replaced packages 2025-06-12 09:38:21 +02:00
d21fdc925c nvim: add key for session change and change keys for namu 2025-06-07 21:51:54 +02:00
dba234077e nvim: add commands FormatDisable and FormatEnable 2025-06-07 11:08:57 +02:00
867e3d6991 nvim: move arrow, add namu and odin 2025-06-04 22:55:37 +02:00
ecb466f230 nvim: lazy update 2025-06-03 23:36:38 +02:00
f5302fc646 nvim/zsh: remove jj key mapping, add two aliases, nvim: back to arrow 2025-06-03 23:16:50 +02:00
3eaba86825 nvim: remove hardtime 2025-05-14 00:02:42 +02:00
1b0d0597b0 zsh: change escape bind key 2025-05-13 23:35:24 +02:00
63860cd661 nvim: color scheme nightfox 2025-05-13 23:35:24 +02:00
d122f56ab6 nvim: handle lisp file type, change local leader 2025-05-13 23:35:11 +02:00
a5c491d1ce awesome: use dmenu 2025-05-13 23:00:18 +02:00
d6ba2a78b9 tmux: bind tmux-session-menu 2025-05-13 23:00:18 +02:00
29 changed files with 446 additions and 327 deletions

View File

@ -1,71 +1,45 @@
# Nightfox Alacritty Colors
## name: nightfox
## upstream: https://github.com/edeneast/nightfox.nvim/raw/main/extra/nightfox/alacritty.toml
# -----------------------------------------------------------------------------
# Kanagawa Paper Ink
# Upstream: https://github.com/thesimonho/kanagawa-paper.nvim/master/extras/alacritty/kanagawa-paper-ink.toml
# URL: https://github.com/alacritty/alacritty
# -----------------------------------------------------------------------------
[colors.primary]
background = "#2e3440" # changed
foreground = "#eceff4" # changed
dim_foreground = "#aeafb0"
bright_foreground = "#d6d6d7"
background = '#1F1F28'
foreground = '#DCD7BA'
[colors.cursor]
text = "#cdcecf"
cursor = "#aeafb0"
[colors.vi_mode_cursor]
text = "#cdcecf"
cursor = "#63cdcf"
[colors.search.matches]
foreground = "#cdcecf"
background = "#3c5372"
[colors.search.focused_match]
foreground = "#cdcecf"
background = "#81b29a"
[colors.footer_bar]
foreground = "#cdcecf"
background = "#29394f"
[colors.hints.start]
foreground = "#cdcecf"
background = "#f4a261"
[colors.hints.end]
foreground = "#cdcecf"
background = "#29394f"
cursor = '#c4b28a'
text = '#1F1F28'
[colors.selection]
text = "#cdcecf"
background = "#2b3b51"
background = '#363646'
foreground = '#9e9b93'
[colors.normal]
black = "#393b44"
red = "#c94f6d"
green = "#81b29a"
yellow = "#dbc074"
blue = "#719cd6"
magenta = "#9d79d6"
cyan = "#63cdcf"
white = "#dfdfe0"
black = '#393836'
red = '#c4746e'
green = '#699469'
yellow = '#c4b28a'
blue = '#435965'
magenta = '#a292a3'
cyan = '#8ea49e'
white = '#C8C093'
[colors.bright]
black = "#575860"
red = "#d16983"
green = "#8ebaa4"
yellow = "#e0c989"
blue = "#86abdc"
magenta = "#baa1e2"
cyan = "#7ad5d6"
white = "#e4e4e5"
black = '#aca9a4'
red = '#cc928e'
green = '#72a072'
yellow = '#d4c196'
blue = '#698a9b'
magenta = '#b4a7b5'
cyan = '#96ada7'
white = '#d5cd9d'
[colors.dim]
black = "#30323a"
red = "#ab435d"
green = "#6e9783"
yellow = "#baa363"
blue = "#6085b6"
magenta = "#8567b6"
cyan = "#54aeb0"
white = "#bebebe"
[[colors.indexed_colors]]
index = 16
color = '#b6927b'
[[colors.indexed_colors]]
index = 17
color = '#c4746e'

View File

@ -1,30 +1,45 @@
# Colors (Alabaster)
# author tonsky
# -----------------------------------------------------------------------------
# Kanagawa Paper Canvas
# Upstream: https://github.com/thesimonho/kanagawa-paper.nvim/master/extras/alacritty/kanagawa-paper-canvas.toml
# URL: https://github.com/alacritty/alacritty
# -----------------------------------------------------------------------------
[colors.primary]
background = '#FFFFFF' # changed
foreground = '#434343'
background = '#e1e1de'
foreground = '#595b62'
[colors.cursor]
text = '#F7F7F7'
cursor = '#434343'
cursor = '#618bb6'
text = '#e1e1de'
[colors.selection]
background = '#c4cbdc'
foreground = '#858479'
[colors.normal]
black = '#000000'
red = '#AA3731'
green = '#448C27'
yellow = '#CB9000'
blue = '#325CC0'
magenta = '#7A3E9D'
cyan = '#0083B2'
white = '#BBBBBB'
black = '#4c4c65'
red = '#b35560'
green = '#57786c'
yellow = '#a67337'
blue = '#719ac2'
magenta = '#ac7085'
cyan = '#526c79'
white = '#858479'
[colors.bright]
black = '#777777'
red = '#F05050'
green = '#60CB00'
yellow = '#FFBC5D'
blue = '#007ACC'
magenta = '#E64CE6'
cyan = '#00AACB'
white = '#FFFFFF'
black = '#5c5c75'
red = '#c75f6b'
green = '#618679'
yellow = '#b67e3d'
blue = '#86aed7'
magenta = '#b57e91'
cyan = '#5d7a89'
white = '#919084'
[[colors.indexed_colors]]
index = 16
color = '#b8805e'
[[colors.indexed_colors]]
index = 17
color = '#b35560'

View File

@ -338,8 +338,8 @@ local globalkeys = gears.table.join(
end,
{ description = "lua execute prompt", group = "awesome" }),
-- Menubar
awful.key({ modkey, }, "p", function() menubar.show() end,
{ description = "show the menubar", group = "launcher" })
awful.key({ modkey }, "p", function() awful.spawn("dmenu_run -fn 'FiraCode Nerd Font Ret:size=10'") end,
{ description = "run command", group = "launcher" })
)
local clientkeys = gears.table.join(

View File

@ -7,7 +7,7 @@ local theme = {}
theme.font = "Fira Code Nerd Font 10"
theme.tasklist_disable_icon = true
theme.wibar_height = 40
theme.wibar_height = 30
theme.bg_normal = "#293d38" -- hsl(165deg 20% 20%)
theme.bg_focus = "#478575" -- hsl(165deg 30% 40%)

View File

@ -7,7 +7,7 @@ local theme = {}
theme.font = "Fira Code Nerd Font 10"
theme.tasklist_disable_icon = true
theme.wibar_height = 40
theme.wibar_height = 30
theme.bg_normal = "#293d38" -- hsl(165deg 20% 20%)
theme.bg_focus = "#a9d6ca" -- hsl(165deg 35% 75%)

View File

@ -1,80 +1,75 @@
{
"Comment.nvim": { "branch": "master", "commit": "e30b7f2008e52442154b66f7c519bfd2f1e32acb" },
"LuaSnip": { "branch": "master", "commit": "c9b9a22904c97d0eb69ccb9bab76037838326817" },
"better-escape.nvim": { "branch": "master", "commit": "199dcc2643dec5d8dbdab4ec672cf405224dcb3b" },
"blame.nvim": { "branch": "main", "commit": "39bb4cda9e658d053a43919b10ca52c0a4d738e1" },
"ccc.nvim": { "branch": "main", "commit": "b57cbaf8db3ac43c56c9e2c7f3812944638260ed" },
"cmp-nvim-lsp": { "branch": "main", "commit": "99290b3ec1322070bcfb9e846450a46f6efa50f0" },
"cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" },
"LuaSnip": { "branch": "master", "commit": "faf3c94a44508cec1b961406d36cc65113ff3b98" },
"arrow.nvim": { "branch": "master", "commit": "6e0f726f55f99332dd726a53effd6813786b6d49" },
"blame.nvim": { "branch": "main", "commit": "b87b8c820e4cec06fbbd2f946b7b35c45906ee0c" },
"ccc.nvim": { "branch": "main", "commit": "9d1a256e006decc574789dfc7d628ca11644d4c2" },
"cmp-nvim-lsp": { "branch": "main", "commit": "a8912b88ce488f411177fc8aed358b04dc246d7b" },
"cmp-path": { "branch": "main", "commit": "c6635aae33a50d6010bf1aa756ac2398a2d54c32" },
"cmp_luasnip": { "branch": "master", "commit": "98d9cb5c2c38532bd9bdb481067b20fea8f32e90" },
"conform.nvim": { "branch": "master", "commit": "f643d1b51d1d3d14c8641a46ce44f6bce73c2697" },
"diffview.nvim": { "branch": "main", "commit": "4516612fe98ff56ae0415a259ff6361a89419b0a" },
"fidget.nvim": { "branch": "main", "commit": "d9ba6b7bfe29b3119a610892af67602641da778e" },
"friendly-snippets": { "branch": "main", "commit": "efff286dd74c22f731cdec26a70b46e5b203c619" },
"gitsigns.nvim": { "branch": "main", "commit": "7010000889bfb6c26065e0b0f7f1e6aa9163edd9" },
"friendly-snippets": { "branch": "main", "commit": "572f5660cf05f8cd8834e096d7b4c921ba18e175" },
"gitsigns.nvim": { "branch": "main", "commit": "d0f90ef51d4be86b824b012ec52ed715b5622e51" },
"global-note.nvim": { "branch": "main", "commit": "1e0d4bba425d971ed3ce40d182c574a25507115c" },
"go.nvim": { "branch": "master", "commit": "0d426e87227dd14584881ecc595c173121456111" },
"go.nvim": { "branch": "master", "commit": "a3455f48cff718a86275115523dcc735535a13aa" },
"godoc.nvim": { "branch": "main", "commit": "356f79853dbb3b3e200064367603751895153c29" },
"guihua.lua": { "branch": "master", "commit": "d783191eaa75215beae0c80319fcce5e6b3beeda" },
"hardtime.nvim": { "branch": "main", "commit": "f87c86d1aa1e05dcf3c6ecd97fbfd237e2de0bf5" },
"hererocks": { "branch": "master", "commit": "c9c5444dea1e07e005484014a8231aa667be30b6" },
"guihua.lua": { "branch": "master", "commit": "87bea7b98429405caf2a0ce4d029b027bb017c70" },
"hererocks": { "branch": "master", "commit": "344c46ed54df9a4dbc2d2bf510dcd9a9d90497bf" },
"hlsearch.nvim": { "branch": "main", "commit": "fdeb60b890d15d9194e8600042e5232ef8c29b0e" },
"incline.nvim": { "branch": "main", "commit": "27040695b3bbfcd3257669037bd008d1a892831d" },
"indent-blankline.nvim": { "branch": "master", "commit": "005b56001b2cb30bfa61b7986bc50657816ba4ba" },
"iswap.nvim": { "branch": "master", "commit": "e02cc91f2a8feb5c5a595767d208c54b6e3258ec" },
"kanagawa-paper.nvim": { "branch": "master", "commit": "b0df20cca3b7087c06f241983b488190cc8e23af" },
"lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" },
"leap.nvim": { "branch": "main", "commit": "346a16ef942635a8ca5ff92e603d07e7e8be6cbe" },
"lsp_signature.nvim": { "branch": "master", "commit": "b58cca003d1d3311213d6db0352f58d8e57bfff0" },
"lspsaga.nvim": { "branch": "main", "commit": "778d56ff9b387dacd14ae648ed5604394b486f51" },
"marks.nvim": { "branch": "master", "commit": "bb25ae3f65f504379e3d08c8a02560b76eaf91e8" },
"mason-lspconfig.nvim": { "branch": "main", "commit": "1a31f824b9cd5bc6f342fc29e9a53b60d74af245" },
"mason-tool-installer.nvim": { "branch": "main", "commit": "98767d37f8e5255a5111fc1e3163232d4dc07bda" },
"mason.nvim": { "branch": "main", "commit": "fc98833b6da5de5a9c5b1446ac541577059555be" },
"melange-nvim": { "branch": "master", "commit": "2db5407f2f6d6d6286f50f2f7365728d66f6f3ae" },
"mellifluous.nvim": { "branch": "v1", "commit": "1637e46585435ebda7963248e0e65422effad8d9" },
"mini.nvim": { "branch": "main", "commit": "0420076298c4457f200c2de468f65d080597a347" },
"nano-theme.nvim": { "branch": "main", "commit": "0b1158c4911f4bd9d5a1e2e7669ebff893435b64" },
"lazyjj.nvim": { "branch": "main", "commit": "bba66a1351ff1f1bd078c8a1b00b8d12b3ed0017" },
"leap.nvim": { "branch": "main", "commit": "08ca7ec9e859856251d56c22ea107f82f563ff3c" },
"lsp_signature.nvim": { "branch": "master", "commit": "d50e40b3bf9324128e71b0b7e589765ce89466d2" },
"lspsaga.nvim": { "branch": "main", "commit": "920b1253e1a26732e53fac78412f6da7f674671d" },
"marks.nvim": { "branch": "master", "commit": "f353e8c08c50f39e99a9ed474172df7eddd89b72" },
"mason-lspconfig.nvim": { "branch": "main", "commit": "c2682b0d9732bf52cbc34862056f143e71dc4a6d" },
"mason-tool-installer.nvim": { "branch": "main", "commit": "93a9ff9b34c91c0cb0f7de8d5f7e4abce51d8903" },
"mason.nvim": { "branch": "main", "commit": "8024d64e1330b86044fed4c8494ef3dcd483a67c" },
"namu.nvim": { "branch": "main", "commit": "a3a3d81d12b61a38f131253bcd3ce5e2c6599850" },
"neodev.nvim": { "branch": "main", "commit": "46aa467dca16cf3dfe27098042402066d2ae242d" },
"neogit": { "branch": "master", "commit": "6d1bd94f7fca92a50a892f494920696b5defa8c8" },
"nordic.nvim": { "branch": "main", "commit": "8627750ece357e9670f9e69853091f7fbb8d6523" },
"nui.nvim": { "branch": "main", "commit": "8d3bce9764e627b62b07424e0df77f680d47ffdb" },
"nvim-cmp": { "branch": "main", "commit": "1e1900b0769324a9675ef85b38f99cca29e203b3" },
"nvim-lspconfig": { "branch": "master", "commit": "0a1ac55d7d4ec2b2ed9616dfc5406791234d1d2b" },
"nvim-surround": { "branch": "main", "commit": "caf6f633d4d77a29b6e265b560c5a035d171a913" },
"nvim-treesitter": { "branch": "master", "commit": "aece1062335a9e856636f5da12d8a06c7615ce8a" },
"nvim-treesitter-textobjects": { "branch": "master", "commit": "9937e5e356e5b227ec56d83d0a9d0a0f6bc9cad4" },
"nvim-web-devicons": { "branch": "master", "commit": "4c3a5848ee0b09ecdea73adcd2a689190aeb728c" },
"oil.nvim": { "branch": "master", "commit": "ab887d926c2665a708fbe9e6c4654042cc5f4c60" },
"onenord.nvim": { "branch": "main", "commit": "babdcc3da92f0c90703bb612a13a58e5f7669287" },
"orgmode": { "branch": "master", "commit": "145dce4d2f1bbaed5ff9e353822981b783627b32" },
"persisted.nvim": { "branch": "main", "commit": "b4b7a281307f8b52d47b0fd5b6798a453681d44e" },
"neogit": { "branch": "master", "commit": "7fe60f9aa6eacf2eb730c4e9b83d06a36d028161" },
"nvim-cmp": { "branch": "main", "commit": "b5311ab3ed9c846b585c0c15b7559be131ec4be9" },
"nvim-lspconfig": { "branch": "master", "commit": "3ea99227e316c5028f57a4d86a1a7fd01dd876d0" },
"nvim-surround": { "branch": "main", "commit": "8dd9150ca7eae5683660ea20cec86edcd5ca4046" },
"nvim-treesitter": { "branch": "master", "commit": "42fc28ba918343ebfd5565147a42a26580579482" },
"nvim-treesitter-textobjects": { "branch": "master", "commit": "0f051e9813a36481f48ca1f833897210dbcfffde" },
"nvim-web-devicons": { "branch": "master", "commit": "1fb58cca9aebbc4fd32b086cb413548ce132c127" },
"oil.nvim": { "branch": "master", "commit": "5b6068aad7d2057dd399fac73b7fb2cdf23ccd6e" },
"orgmode": { "branch": "master", "commit": "32ef9e95f43a6e951fb931b438372546a4f0c524" },
"persisted.nvim": { "branch": "main", "commit": "d35a3ed973e17defd8800acd46a0c893498a2671" },
"plenary.nvim": { "branch": "master", "commit": "857c5ac632080dba10aae49dba902ce3abf91b35" },
"quicker.nvim": { "branch": "master", "commit": "1798be71cdcb15fb84fa8054148a56e17fd391dc" },
"rabbit.nvim": { "branch": "master", "commit": "3a4ce048b8ecc48811d061220d0e86111adda20d" },
"quicker.nvim": { "branch": "master", "commit": "51d3926f183c2d98fbc237cc237ae0926839af3a" },
"rest.nvim": { "branch": "main", "commit": "2ded89dbda1fd3c1430685ffadf2df8beb28336d" },
"slimline.nvim": { "branch": "main", "commit": "326514876f6e5c051a7a2bf1e926659a74500016" },
"slimline.nvim": { "branch": "main", "commit": "10dd807685997d1b72b950dfb4ec1a01cb259101" },
"snacks.nvim": { "branch": "main", "commit": "bc0630e43be5699bb94dadc302c0d21615421d93" },
"snipe.nvim": { "branch": "main", "commit": "2a1b738dfae8502e6162eddfc774da65ed404142" },
"sqlite.lua": { "branch": "master", "commit": "50092d60feb242602d7578398c6eb53b4a8ffe7b" },
"tardis.nvim": { "branch": "main", "commit": "a6ee00a217529490e79d349b1f1a9cf5831180d3" },
"telescope-fzf-native.nvim": { "branch": "main", "commit": "1f08ed60cafc8f6168b72b80be2b2ea149813e55" },
"telescope-git-grep.nvim": { "branch": "main", "commit": "cdd8215f15843a420b5c8e792395c403136626b6" },
"telescope-tabs": { "branch": "master", "commit": "0a678eefcb71ebe5cb0876aa71dd2e2583d27fd3" },
"telescope-git-grep.nvim": { "branch": "main", "commit": "d2e1322934e334ee9eb8e838c30f3afb3e7a730e" },
"telescope-tabs": { "branch": "master", "commit": "9ca0800d4e9c2610d5cac4d121cde0d9fbd89a64" },
"telescope-ui-select.nvim": { "branch": "master", "commit": "6e51d7da30bd139a6950adf2a47fda6df9fa06d2" },
"telescope.nvim": { "branch": "0.1.x", "commit": "a0bbec21143c7bc5f8bb02e0005fa0b982edc026" },
"tmux.nvim": { "branch": "main", "commit": "2c1c3be0ef287073cef963f2aefa31a15c8b9cd8" },
"toggleterm.nvim": { "branch": "main", "commit": "50ea089fc548917cc3cc16b46a8211833b9e3c7c" },
"tree-sitter-nu": { "branch": "main", "commit": "d5c71a10b4d1b02e38967b05f8de70e847448dd1" },
"tree-sitter-templ": { "branch": "master", "commit": "7f7f06b3931ca00e8ddfbeab3fc08ad00d297fad" },
"treesj": { "branch": "main", "commit": "6c616638e3aa0087f2c267bb5990115b67105976" },
"treewalker.nvim": { "branch": "main", "commit": "43d3250007d2c5a2ed693c1edebf66d66af33407" },
"tree-sitter-nu": { "branch": "main", "commit": "100d06e29d13a8ebfc3f29173c07a5c4f2050586" },
"tree-sitter-templ": { "branch": "master", "commit": "de35706f89beed5087670a9c4421b7794ef02411" },
"treesj": { "branch": "main", "commit": "3b4a2bc42738a63de17e7485d4cc5e49970ddbcc" },
"treewalker.nvim": { "branch": "main", "commit": "86ae3cf9896b43f3cfa35b962428f32fed8b5ee8" },
"trouble.nvim": { "branch": "main", "commit": "85bedb7eb7fa331a2ccbecb9202d8abba64d37b3" },
"undotree": { "branch": "master", "commit": "b951b87b46c34356d44aa71886aecf9dd7f5788a" },
"vim-ReplaceWithRegister": { "branch": "master", "commit": "b82bf59e5387b57d0125afb94fd7984061031136" },
"vim-dadbod": { "branch": "master", "commit": "9f0ca8bcef704659820a95c3bbd2c262583a66a1" },
"vim-ReplaceWithRegister": { "branch": "master", "commit": "a487af6efd1be3fc6fac8da47d00efc9d1f6f724" },
"vim-dadbod": { "branch": "master", "commit": "e95afed23712f969f83b4857a24cf9d59114c2e6" },
"vim-dadbod-completion": { "branch": "master", "commit": "a8dac0b3cf6132c80dc9b18bef36d4cf7a9e1fe6" },
"vim-dadbod-ui": { "branch": "master", "commit": "685e75b34ee0e12f92ec4507ea8bb7f1aaa936e5" },
"vim-dadbod-ui": { "branch": "master", "commit": "2900a1617b3df1a48683d872eadbe1101146a49a" },
"vim-repeat": { "branch": "master", "commit": "65846025c15494983dafe5e3b46c8f88ab2e9635" },
"vim-sleuth": { "branch": "master", "commit": "be69bff86754b1aa5adcbb527d7fcd1635a84080" },
"whaler": { "branch": "main", "commit": "9e0b67e36250cb80e679563adcd4b7451eae26b2" },
"whaler": { "branch": "main", "commit": "b3a4257f6225a9a6c42f33b56ca316325e395f22" },
"which-key.nvim": { "branch": "main", "commit": "370ec46f710e058c9c1646273e6b225acf47cbed" },
"yankbank-nvim": { "branch": "main", "commit": "ded8f01bd6a7887310e14d463c8aa55eb79ec281" },
"zen-mode.nvim": { "branch": "main", "commit": "863f150ca321b3dd8aa1a2b69b5f411a220e144f" }
"yankbank-nvim": { "branch": "main", "commit": "ded8f01bd6a7887310e14d463c8aa55eb79ec281" }
}

View File

@ -1,5 +1,5 @@
vim.g.mapleader = ' '
vim.g.maplocalleader = ' '
vim.g.maplocalleader = ' \\'
local key = vim.keymap.set
local opts = { silent = true, noremap = true }
@ -51,7 +51,7 @@ key('n', '<leader>P', '<cmd>bp<CR>', { desc = '[P]revious buffer' })
key('n', '<leader>tc', '<cmd>tabnew<CR>', { desc = '[T]ab [c]reate' })
key('n', '<leader>tx', '<cmd>tabclose<CR>', { desc = '[T]ab close' })
key('n', '<leader>ts', '<cmd>tab split<CR>', { desc = '[T]ab [s]plit' })
key('n', '<leader>tS', '<cmd>tab split<CR>', { desc = '[T]ab [s]plit' })
key('n', '<leader>tn', '<cmd>tabnext<CR>', { desc = '[T]ab [n]ext' })
key('n', '<leader>tp', '<cmd>tabprevious<CR>', { desc = '[T]ab [p]revious' })
key('n', '<leader>tf', '<cmd>tabfirst<CR>', { desc = '[T]ab [f]irst' })
@ -83,7 +83,8 @@ key('n', '<leader>j', '<cmd>cn<CR>', { desc = "Quickfix next" })
key('n', '<leader>k', '<cmd>cp<CR>', { desc = "Quickfix previous" })
key('n', '<leader>co', '<cmd>copen<CR>', { desc = "Quickfix [O]pen" })
key('n', '<leader>cc', '<cmd>cclose<CR>', { desc = "Quickfix [C]lose" })
key('n', '<leader>ct', '<cmd>TroubleToggle<CR>', { desc = "Toggle [T]rouble" })
key('n', '<leader>s;', '<cmd>SessionSelect<CR>', { desc = '[S]ession Select' })
-- luasnip

View File

@ -1,42 +1,10 @@
return {
{
"ramojus/mellifluous.nvim",
branch = "v1",
},
{
'rmehri01/onenord.nvim',
},
{
'AlexvZyl/nordic.nvim',
},
{
"savq/melange-nvim",
},
{
'ronisbr/nano-theme.nvim',
'thesimonho/kanagawa-paper.nvim',
config = function()
local nano = require('nano-theme.colors')
local nano_get = nano.get
function nano.get()
local t = nano_get()
local light = vim.o.background == 'light'
if not light then
t.nano_strong.fg = '#ECEFF4'
end
return t
end
require('lupan.utils').set_color_schemes('nano-theme', 'nano-theme')
require('lupan.utils').update_color_scheme()
vim.cmd.colorscheme('kanagawa-paper')
end
},
{
-- Indentation guides (see `:help indent_blankline.txt`)
'lukas-reineke/indent-blankline.nvim',
main = "ibl",
opts = {},
},
{
--- Create Color Code
'uga-rosa/ccc.nvim',

View File

@ -74,5 +74,8 @@ return {
{ name = 'buffer' },
},
})
cmp.setup.filetype('lisp', {
sources = cmp.config.sources({ { name = 'nvlime' } })
})
end,
}

View File

@ -1,4 +1,24 @@
return {
{
"otavioschwanck/arrow.nvim",
dependencies = {
{ "nvim-tree/nvim-web-devicons" },
},
opts = {
show_icons = true,
leader_key = '-', -- Recommended to be a single key
buffer_leader_key = '+', -- Per Buffer Mappings
}
},
{
"leath-dub/snipe.nvim",
keys = {
{ "_", function() require("snipe").open_buffer_menu() end, desc = "Open Snipe buffer menu" }
},
opts = {}
},
{
"chentoast/marks.nvim",
event = "VeryLazy",
@ -9,4 +29,28 @@ return {
{ '<leader>mg', '<cmd>MarksListGlobal<CR>' },
},
},
{
"bassamsdata/namu.nvim",
config = function()
require("namu").setup({
-- Enable the modules you want
namu_symbols = {
enable = true,
options = {}, -- here you can configure namu
},
-- Optional: Enable other modules if needed
ui_select = { enable = false }, -- vim.ui.select() wrapper
})
-- === Suggested Keymaps: ===
vim.keymap.set("n", "<leader>;", ":Namu symbols<cr>", {
desc = "Jump to LSP symbol",
silent = true,
})
vim.keymap.set("n", "<leader>.", ":Namu workspace<cr>", {
desc = "LSP Symbols - Workspace",
silent = true,
})
end,
}
}

View File

@ -20,32 +20,4 @@ return {
}
end,
},
{
"max397574/better-escape.nvim",
config = function(_, opts)
require("better_escape").setup(opts)
end,
},
{
"folke/zen-mode.nvim",
opts = {
window = { width = 180 },
plugins = {
tmux = { enabled = true },
},
on_open = function()
vim.opt.laststatus = 1
require('incline').disable()
vim.system({ 'hyprctl', 'dispatch', 'fullscreen' })
vim.system({ 'awesome-client', 'client.focus.fullscreen = true' })
end,
on_close = function()
vim.opt.laststatus = 3
require('incline').enable()
vim.system({ 'hyprctl', 'dispatch', 'fullscreen' })
vim.system({ 'awesome-client', 'client.focus.fullscreen = false' })
end
},
keys = { { "<leader>z", "<cmd>ZenMode<CR>" } },
},
}

View File

@ -21,9 +21,9 @@ return {
{
'inkarkat/vim-ReplaceWithRegister',
keys = {
{ 'gp', '<Plug>ReplaceWithRegisterOperator' },
{ 'gpp', '<Plug>ReplaceWithRegisterLine' },
{ 'gp', '<Plug>ReplaceWithRegisterVisual', mode = 'x' },
{ '<leader>rp', '<Plug>ReplaceWithRegisterOperator' },
{ '<leader>rpp', '<Plug>ReplaceWithRegisterLine' },
{ '<leader>rp', '<Plug>ReplaceWithRegisterVisual', mode = 'x' },
},
},
@ -84,11 +84,4 @@ return {
},
},
{
'echasnovski/mini.nvim',
version = '*',
config = function()
require('mini.ai').setup()
end
},
}

View File

@ -64,8 +64,8 @@ return {
{ buffer = bufnr, desc = '[G]o to [N]ext Hunk' })
vim.keymap.set('n', '<leader>ph', gs.preview_hunk,
{ buffer = bufnr, desc = '[P]review [H]unk' })
vim.keymap.set('n', '<leader>sh', gs.stage_hunk,
{ buffer = bufnr, desc = '[S]tage [H]unk' })
vim.keymap.set('n', '<leader>sA', gs.stage_hunk,
{ buffer = bufnr, desc = '[S]tage Hunk' })
vim.keymap.set('n', '<leader>HD', function() gs.diffthis('~') end,
{ buffer = bufnr, desc = '[H]unk [D]iff' })
end,

View File

@ -2,11 +2,11 @@ return {
'backdround/global-note.nvim',
keys = {
{
"<leader>n",
"<leader>tn",
function()
require('global-note').toggle_note()
end,
desc = 'Toggle global [N]ote',
desc = '[T]oggle global [N]ote',
},
},
}

View File

@ -1,7 +0,0 @@
return {
{
"m4xshen/hardtime.nvim",
dependencies = { "MunifTanjim/nui.nvim" },
opts = {}
},
}

View File

@ -0,0 +1,9 @@
return {
{
'swaits/lazyjj.nvim',
dependencies = 'nvim-lua/plenary.nvim',
opts = {
mapping = '<leader>gj'
}
},
}

View File

@ -1,6 +1,7 @@
return {
{
'neovim/nvim-lspconfig',
version = '*',
dependencies = {
-- Automatically install LSPs and related tools to stdpath for neovim
'williamboman/mason.nvim',
@ -19,17 +20,10 @@ return {
vim.keymap.set('n', keys, func, { buffer = event.buf, desc = 'LSP: ' .. desc })
end
map('gd', require('telescope.builtin').lsp_definitions, '[G]oto [D]efinition')
map('gr', require('telescope.builtin').lsp_references, '[G]oto [R]eferences')
map('gI', require('telescope.builtin').lsp_implementations, '[G]oto [I]mplementation')
map('<leader>D', require('telescope.builtin').lsp_type_definitions, 'Type [D]efinition')
map('<leader>ds', require('telescope.builtin').lsp_document_symbols, '[D]ocument [S]ymbols')
map('<leader>ws', require('telescope.builtin').lsp_dynamic_workspace_symbols, '[W]orkspace [S]ymbols')
map('<leader>rn', '<cmd>Lspsaga rename<CR>', '[R]e[n]ame')
map('<leader>ca', vim.lsp.buf.code_action, '[C]ode [A]ction')
map('K', '<cmd>Lspsaga hover_doc<CR>', 'Hover Documentation')
map('<leader>K', vim.lsp.buf.signature_help, 'Signature Documentation')
map('gD', vim.lsp.buf.declaration, '[G]oto [D]eclaration')
-- Highlight references under cursor (clear highlight when cursor moves).
local client = vim.lsp.get_client_by_id(event.data.client_id)

View File

@ -0,0 +1,49 @@
require 'lspconfig'.ols.setup {}
vim.api.nvim_create_user_command("FormatDisable", function(args)
if args.bang then
-- FormatDisable! will disable formatting just for this buffer
vim.b.disable_autoformat = true
else
vim.g.disable_autoformat = true
end
end, {
desc = "Disable autoformat-on-save",
bang = true,
})
vim.api.nvim_create_user_command("FormatEnable", function()
vim.b.disable_autoformat = false
vim.g.disable_autoformat = false
end, {
desc = "Re-enable autoformat-on-save",
})
return {
{
"stevearc/conform.nvim",
opts = {
-- notify_on_error = false,
-- Odinfmt gets its configuration from odinfmt.json. It defaults
-- writing to stdout but needs to be told to read from stdin.
formatters = {
odinfmt = {
-- Change where to find the command if it isn't in your path.
command = "odinfmt",
args = { "-stdin" },
stdin = true,
},
},
-- and instruct conform to use odinfmt.
formatters_by_ft = {
odin = { "odinfmt" },
},
format_on_save = function(bufnr)
-- Disable with a global or buffer-local variable
if vim.g.disable_autoformat or vim.b[bufnr].disable_autoformat then
return
end
return { timeout_ms = 500, lsp_format = "fallback" }
end,
},
}
}

View File

@ -11,7 +11,4 @@ return {
{ "/", exact = true },
},
},
keys = {
{ "<leader>sp", "<cmd>:Telescope persisted<cr>", desc = "Search [P]ersisted" },
},
}

View File

@ -1,36 +0,0 @@
local function rabbit_select(n)
require('rabbit').Switch('harpoon').func.select(n)
end
return {
'VoxelPrismatic/rabbit.nvim',
event = 'VeryLazy',
opts = {
window = {
float = 'center',
plugin_name_position = 'title',
},
default_keys = {
open = { '-', '<leader>;' },
},
plugin_opts = {
history = { switch = ';' },
harpoon = { switch = 'f' },
},
colors = {
file = '#EBCB8B',
},
},
keys = {
{ '<leader>1', function() rabbit_select(1) end },
{ '<leader>2', function() rabbit_select(2) end },
{ '<leader>3', function() rabbit_select(3) end },
{ '<leader>4', function() rabbit_select(4) end },
{ '<leader>5', function() rabbit_select(5) end },
{ '<leader>6', function() rabbit_select(6) end },
{ '<leader>7', function() rabbit_select(7) end },
{ '<leader>8', function() rabbit_select(8) end },
{ '<leader>9', function() rabbit_select(9) end },
{ '<leader>0', function() rabbit_select(10) end },
},
}

View File

@ -0,0 +1,171 @@
return {
{
"folke/snacks.nvim",
priority = 1000,
lazy = false,
---@type snacks.Config
opts = {
bigfile = { enabled = true },
dashboard = { enabled = false },
explorer = { enabled = true },
indent = { enabled = true },
input = { enabled = true },
notifier = {
enabled = true,
timeout = 3000,
},
picker = { enabled = true },
quickfile = { enabled = true },
scope = { enabled = true },
scroll = { enabled = false },
statuscolumn = { enabled = true },
words = { enabled = true },
styles = {
notification = {
-- wo = { wrap = true } -- Wrap notifications
}
},
zen = {
win = { width = 180, backdrop = { transparent = false } },
on_open = function()
vim.opt.laststatus = 1
require('incline').disable()
vim.system({ 'hyprctl', 'dispatch', 'fullscreen' })
vim.system({ 'awesome-client', 'client.focus.fullscreen = true' })
end,
on_close = function()
vim.opt.laststatus = 3
require('incline').enable()
vim.system({ 'hyprctl', 'dispatch', 'fullscreen' })
vim.system({ 'awesome-client', 'client.focus.fullscreen = false' })
end
}
},
keys = {
-- Top Pickr & Explorer
{ "<leader><space>", function() Snacks.picker.smart() end, desc = "Smart Find Files" },
{ "<leader>,", function() Snacks.picker.buffers() end, desc = "Buffers" },
{ "<leader>/", function() Snacks.picker.grep() end, desc = "Grep" },
{ "<leader>:", function() Snacks.picker.command_history() end, desc = "Command History" },
{ "<leader>n", function() Snacks.picker.notifications() end, desc = "Notification History" },
{ "<leader>e", function() Snacks.explorer() end, desc = "File Explorer" },
-- find
{ "<leader>fb", function() Snacks.picker.buffers() end, desc = "Buffers" },
{ "<leader>fc", function() Snacks.picker.files({ cwd = vim.fn.stdpath("config") }) end, desc = "Find Config File" },
{ "<leader>ff", function() Snacks.picker.files() end, desc = "Find Files" },
{ "<leader>fg", function() Snacks.picker.git_files() end, desc = "Find Git Files" },
{ "<leader>fp", function() Snacks.picker.projects() end, desc = "Projects" },
{ "<leader>fr", function() Snacks.picker.recent() end, desc = "Recent" },
-- git
{ "<leader>gb", function() Snacks.picker.git_branches() end, desc = "Git Branches" },
{ "<leader>gl", function() Snacks.picker.git_log() end, desc = "Git Log" },
{ "<leader>gL", function() Snacks.picker.git_log_line() end, desc = "Git Log Line" },
{ "<leader>gs", function() Snacks.picker.git_status() end, desc = "Git Status" },
{ "<leader>gS", function() Snacks.picker.git_stash() end, desc = "Git Stash" },
{ "<leader>gd", function() Snacks.picker.git_diff() end, desc = "Git Diff (Hunks)" },
{ "<leader>gf", function() Snacks.picker.git_log_file() end, desc = "Git Log File" },
{ "<leader>gg", function() Snacks.picker.git_grep() end, desc = "Git Grep" },
-- Grep
{ "<leader>sb", function() Snacks.picker.lines() end, desc = "Buffer Lines" },
{ "<leader>sB", function() Snacks.picker.grep_buffers() end, desc = "Grep Open Buffers" },
{ "<leader>sg", function() Snacks.picker.grep() end, desc = "Grep" },
{ "<leader>sw", function() Snacks.picker.grep_word() end, desc = "Visual selection or word", mode = { "n", "x" } },
{ "<leader>so", function() Snacks.picker.grep({ cwd = "/usr/lib/odin" }) end, desc = "Grep" },
{ "<leader>sO", function() Snacks.picker.files({ cwd = "/usr/lib/odin" }) end, desc = "Grep" },
{ "<leader>sX", function() Snacks.picker.grep({ cwd = "/usr/include/xcb" }) end, desc = "Grep" },
-- search
{ '<leader>s"', function() Snacks.picker.registers() end, desc = "Registers" },
{ '<leader>s/', function() Snacks.picker.search_history() end, desc = "Search History" },
{ "<leader>sa", function() Snacks.picker.autocmds() end, desc = "Autocmds" },
{ "<leader>sb", function() Snacks.picker.lines() end, desc = "Buffer Lines" },
{ "<leader>sc", function() Snacks.picker.command_history() end, desc = "Command History" },
{ "<leader>sC", function() Snacks.picker.commands() end, desc = "Commands" },
{ "<leader>sd", function() Snacks.picker.diagnostics() end, desc = "Diagnostics" },
{ "<leader>sD", function() Snacks.picker.diagnostics_buffer() end, desc = "Buffer Diagnostics" },
{ "<leader>sh", function() Snacks.picker.help() end, desc = "Help Pages" },
{ "<leader>sH", function() Snacks.picker.highlights() end, desc = "Highlights" },
{ "<leader>si", function() Snacks.picker.icons() end, desc = "Icons" },
{ "<leader>sj", function() Snacks.picker.jumps() end, desc = "Jumps" },
{ "<leader>sk", function() Snacks.picker.keymaps() end, desc = "Keymaps" },
{ "<leader>sl", function() Snacks.picker.loclist() end, desc = "Location List" },
{ "<leader>sm", function() Snacks.picker.marks() end, desc = "Marks" },
{ "<leader>sM", function() Snacks.picker.man() end, desc = "Man Pages" },
{ "<leader>sp", function() Snacks.picker.lazy() end, desc = "Search for Plugin Spec" },
{ "<leader>sq", function() Snacks.picker.qflist() end, desc = "Quickfix List" },
{ "<leader>sR", function() Snacks.picker.resume() end, desc = "Resume" },
{ "<leader>su", function() Snacks.picker.undo() end, desc = "Undo History" },
{ "<leader>uC", function() Snacks.picker.colorschemes() end, desc = "Colorschemes" },
-- LSP
{ "gd", function() Snacks.picker.lsp_definitions() end, desc = "Goto Definition" },
{ "gD", function() Snacks.picker.lsp_declarations() end, desc = "Goto Declaration" },
{ "gr", function() Snacks.picker.lsp_references() end, nowait = true, desc = "References" },
{ "gI", function() Snacks.picker.lsp_implementations() end, desc = "Goto Implementation" },
{ "gy", function() Snacks.picker.lsp_type_definitions() end, desc = "Goto T[y]pe Definition" },
{ "<leader>ss", function() Snacks.picker.lsp_symbols() end, desc = "LSP Symbols" },
{ "<leader>sS", function() Snacks.picker.lsp_workspace_symbols() end, desc = "LSP Workspace Symbols" },
-- Other
{ "<leader>z", function() Snacks.zen() end, desc = "Toggle Zen Mode" },
{ "<leader>Z", function() Snacks.zen.zoom() end, desc = "Toggle Zoom" },
{ "<leader>'", function() Snacks.scratch() end, desc = "Toggle Scratch Buffer" },
{ "<leader>S", function() Snacks.scratch.select() end, desc = "Select Scratch Buffer" },
{ "<leader>n", function() Snacks.notifier.show_history() end, desc = "Notification History" },
{ "<leader>bd", function() Snacks.bufdelete() end, desc = "Delete Buffer" },
{ "<leader>cR", function() Snacks.rename.rename_file() end, desc = "Rename File" },
{ "<leader>gB", function() Snacks.gitbrowse() end, desc = "Git Browse", mode = { "n", "v" } },
{ "<leader>gG", function() Snacks.lazygit() end, desc = "Lazygit" },
{ "<leader>un", function() Snacks.notifier.hide() end, desc = "Dismiss All Notifications" },
{ "<leader>bl", function() Snacks.git.blame_line() end, desc = "Git Blame Line" },
{ "<c-/>", function() Snacks.terminal() end, desc = "Toggle Terminal" },
{ "<c-_>", function() Snacks.terminal() end, desc = "which_key_ignore" },
{ "]]", function() Snacks.words.jump(vim.v.count1) end, desc = "Next Reference", mode = { "n", "t" } },
{ "[[", function() Snacks.words.jump(-vim.v.count1) end, desc = "Prev Reference", mode = { "n", "t" } },
{
"<leader>N",
desc = "Neovim News",
function()
Snacks.win({
file = vim.api.nvim_get_runtime_file("doc/news.txt", false)[1],
width = 0.6,
height = 0.6,
wo = {
spell = false,
wrap = false,
signcolumn = "yes",
statuscolumn = " ",
conceallevel = 3,
},
})
end,
}
},
init = function()
vim.api.nvim_create_autocmd("User", {
pattern = "VeryLazy",
callback = function()
-- Setup some globals for debugging (lazy-loaded)
_G.dd = function(...)
Snacks.debug.inspect(...)
end
_G.bt = function()
Snacks.debug.backtrace()
end
vim.print = _G.dd -- Override print to use snacks for `:=` command
-- Create some toggle mappings
Snacks.toggle.option("spell", { name = "Spelling" }):map("<leader>us")
Snacks.toggle.option("wrap", { name = "Wrap" }):map("<leader>uw")
Snacks.toggle.option("relativenumber", { name = "Relative Number" }):map("<leader>uL")
Snacks.toggle.diagnostics():map("<leader>ud")
Snacks.toggle.line_number():map("<leader>ul")
Snacks.toggle.option("conceallevel", { off = 0, on = vim.o.conceallevel > 0 and vim.o.conceallevel or 2 }):map(
"<leader>uc")
Snacks.toggle.treesitter():map("<leader>uT")
Snacks.toggle.option("background", { off = "light", on = "dark", name = "Dark Background" }):map("<leader>ub")
Snacks.toggle.inlay_hints():map("<leader>uh")
Snacks.toggle.indent():map("<leader>ug")
Snacks.toggle.dim():map("<leader>uD")
end,
})
end,
}
}

View File

@ -54,48 +54,17 @@ return {
pcall(telescope.load_extension, 'ui-select')
pcall(telescope.load_extension, 'whaler')
pcall(telescope.load_extension, 'git_grep')
pcall(telescope.load_extension, 'persisted')
-- See `:help telescope.builtin`
local builtin = require 'telescope.builtin'
vim.keymap.set('n', '<leader>sh', builtin.help_tags, { desc = '[S]earch [H]elp' })
vim.keymap.set('n', '<leader>sk', builtin.keymaps, { desc = '[S]earch [K]eymaps' })
vim.keymap.set('n', '<leader>sf', builtin.find_files, { desc = '[S]earch [F]iles' })
vim.keymap.set('n', '<leader>ss', builtin.builtin, { desc = '[S]earch [S]elect Telescope' })
vim.keymap.set('n', '<leader>sw', builtin.grep_string, { desc = '[S]earch current [W]ord' })
vim.keymap.set('n', '<leader>sg', builtin.live_grep, { desc = '[S]earch by [G]rep' })
vim.keymap.set('n', '<leader>sd', builtin.diagnostics, { desc = '[S]earch [D]iagnostics' })
vim.keymap.set('n', '<leader>sT', builtin.builtin, { desc = '[S]earch [S]elect Telescope' })
vim.keymap.set('n', '<leader>sr', builtin.resume, { desc = '[S]earch [R]esume' })
vim.keymap.set('n', '<leader>s.', builtin.oldfiles, { desc = '[S]earch Recent Files ("." for repeat)' })
vim.keymap.set('n', '<leader><leader>', builtin.buffers, { desc = '[ ] Find existing buffers' })
vim.keymap.set('n', '<leader>sF', function() builtin.find_files { hidden = true } end,
{ desc = '[S]earch [F]iles (with hidden)' })
vim.keymap.set('n', '<leader>sl', function() telescope.extensions.whaler.whaler() end,
vim.keymap.set('n', '<leader>sL', function() telescope.extensions.whaler.whaler() end,
{ desc = '[S]earch with wha[L]er' })
vim.keymap.set('n', '<leader>gf', builtin.git_files, { desc = '[G]it [F]iles' })
vim.keymap.set('n', '<leader>gs', builtin.git_status, { desc = '[G]it [S]tatus' })
vim.keymap.set('n', '<leader>gg', function() telescope.extensions.git_grep.live_grep() end,
{ desc = '[G]it [g]rep' })
vim.keymap.set('n', '<leader>gw', function() telescope.extensions.git_grep.grep() end,
{ desc = '[G]it grep current [W]ord' })
vim.keymap.set('n', '<leader>/', function()
builtin.current_buffer_fuzzy_find(require('telescope.themes').get_dropdown {
winblend = 10,
previewer = false,
})
end, { desc = '[/] Fuzzily search in current buffer' })
vim.keymap.set('n', '<leader>s/', function()
builtin.live_grep {
grep_open_files = true,
prompt_title = 'Live Grep in Open Files',
}
end, { desc = '[S]earch [/] in Open Files' })
vim.keymap.set('n', '<leader>sn', function()
builtin.find_files { cwd = vim.fn.stdpath 'config' }
end, { desc = '[S]earch [N]eovim files' })
end,
}

View File

@ -15,7 +15,7 @@ return {
---@diagnostic disable-next-line: missing-fields
require('nvim-treesitter.configs').setup {
ensure_installed = { 'c', 'cpp', 'go', 'haskell', 'lua', 'python', 'rust', 'tsx', 'templ', 'typescript', 'vimdoc', 'vim' },
ensure_installed = { 'c', 'commonlisp', 'cpp', 'go', 'haskell', 'lua', 'python', 'rust', 'tsx', 'templ', 'typescript', 'vimdoc', 'vim' },
auto_install = false,
highlight = {
enable = true,

View File

@ -7,6 +7,6 @@ return {
})
end,
keys = {
{ "<leader>b", "<cmd>YankBank<CR>", desc = "Yank[B]ank" },
{ "<leader>yb", "<cmd>YankBank<CR>", desc = "Yank[B]ank" },
},
}

View File

@ -6,7 +6,7 @@ static const unsigned int snap = 32; /* snap pixel */
static const int showbar = 1; /* 0 means no bar */
static const int topbar = 1; /* 0 means bottom bar */
static const char *fonts[] = { "FiraCode Nerd Font Ret:size=10" };
static const char dmenufont[] = "FiraCode Nerd Font Ret:size=10";
static const char dmenufont[] = "FiraCode Nerd Font Ret:size=10";
static const char col_gray1[] = "#222222";
static const char col_gray2[] = "#444444";
static const char col_gray3[] = "#bbbbbb";
@ -16,7 +16,7 @@ static const char col_cyan[] = "#7dcfff";
static const char *colors[][3] = {
/* fg bg border */
[SchemeNorm] = { col_gray3, col_gray1, col_gray2 },
[SchemeSel] = { col_gray4, col_blue, col_cyan },
[SchemeSel] = { col_gray4, col_blue, col_cyan },
};
/* tagging */
@ -46,7 +46,7 @@ static const Layout layouts[] = {
};
/* key definitions */
#define MODKEY Mod1Mask
#define MODKEY Mod4Mask
#define TAGKEYS(KEY,TAG) \
{ MODKEY, KEY, view, {.ui = 1 << TAG} }, \
{ MODKEY|ControlMask, KEY, toggleview, {.ui = 1 << TAG} }, \
@ -58,32 +58,32 @@ static const Layout layouts[] = {
/* commands */
static char dmenumon[2] = "0"; /* component of dmenucmd, manipulated in spawn() */
static const char *dmenucmd[] = { "dmenu_run", "-m", dmenumon, "-fn", dmenufont, "-nb", col_gray1, "-nf", col_gray3, "-sb", col_blue, "-sf", col_gray4, NULL };
static const char *termcmd[] = { "st", NULL };
static const char *lockcmd[] = { "slock", NULL };
static const char *dmenucmd[] = { "dmenu_run", "-m", dmenumon, "-fn", dmenufont, "-nb", col_gray1, "-nf", col_gray3, "-sb", col_blue, "-sf", col_gray4, NULL };
static const char *termcmd[] = { "st", NULL };
static const char *lockcmd[] = { "slock", NULL };
static const char *suspendcmd[] = { "systemctl", "suspend", NULL };
static const char *toggletheme[] = { "lupan-set-theme", "toggle", NULL };
static const Key keys[] = {
/* modifier key function argument */
{ MODKEY|ControlMask, XK_p, spawn, {.v = dmenucmd } },
{ MODKEY, XK_p, spawn, {.v = dmenucmd } },
{ MODKEY|ShiftMask, XK_Return, spawn, {.v = termcmd } },
{ MODKEY|ControlMask|ShiftMask, XK_l, spawn, {.v = lockcmd } },
{ MODKEY|ControlMask|ShiftMask, XK_s, spawn, {.v = suspendcmd } },
{ MODKEY|ShiftMask, XK_F6, spawn, {.v = toggletheme } },
{ MODKEY|ControlMask, XK_b, togglebar, {0} },
{ MODKEY|ControlMask, XK_j, focusstack, {.i = +1 } },
{ MODKEY|ControlMask, XK_k, focusstack, {.i = -1 } },
{ MODKEY|ControlMask, XK_i, incnmaster, {.i = +1 } },
{ MODKEY|ControlMask, XK_d, incnmaster, {.i = -1 } },
{ MODKEY|ControlMask, XK_h, setmfact, {.f = -0.05} },
{ MODKEY|ControlMask, XK_l, setmfact, {.f = +0.05} },
{ MODKEY, XK_b, togglebar, {0} },
{ MODKEY, XK_j, focusstack, {.i = +1 } },
{ MODKEY, XK_k, focusstack, {.i = -1 } },
{ MODKEY, XK_i, incnmaster, {.i = +1 } },
{ MODKEY, XK_d, incnmaster, {.i = -1 } },
{ MODKEY, XK_h, setmfact, {.f = -0.05} },
{ MODKEY, XK_l, setmfact, {.f = +0.05} },
{ MODKEY, XK_Return, zoom, {0} },
{ MODKEY, XK_Tab, view, {0} },
{ MODKEY|ControlMask|ShiftMask, XK_c, killclient, {0} },
{ MODKEY|ControlMask, XK_t, setlayout, {.v = &layouts[0]} },
{ MODKEY|ControlMask, XK_f, setlayout, {.v = &layouts[1]} },
{ MODKEY|ControlMask, XK_m, setlayout, {.v = &layouts[2]} },
{ MODKEY|ShiftMask, XK_c, killclient, {0} },
{ MODKEY, XK_t, setlayout, {.v = &layouts[0]} },
{ MODKEY, XK_f, setlayout, {.v = &layouts[1]} },
{ MODKEY, XK_m, setlayout, {.v = &layouts[2]} },
{ MODKEY, XK_space, setlayout, {0} },
{ MODKEY|ShiftMask, XK_space, togglefloating, {0} },
{ MODKEY, XK_0, view, {.ui = ~0 } },
@ -101,7 +101,7 @@ static const Key keys[] = {
TAGKEYS( XK_7, 6)
TAGKEYS( XK_8, 7)
TAGKEYS( XK_9, 8)
{ MODKEY|ControlMask|ShiftMask, XK_q, quit, {0} },
{ MODKEY|ShiftMask, XK_q, quit, {0} },
};
/* button definitions */

View File

@ -4,6 +4,8 @@ alias ta='tmux attach -t'
alias tl='tmux list-sessions'
alias tn='tmux new -s'
alias fv='fzf --preview="bat --color=always --theme=Nord {}" --bind="enter:become(nvim {})"'
alias rgh='rg -.'
alias fdh='fd -H'
if which exa > /dev/null; then
alias ls='exa --icons'

View File

@ -28,7 +28,6 @@ else
setopt autocd
fi
ZVM_VI_INSERT_ESCAPE_BINDKEY=jj
ZSH_HIGHLIGHT_STYLES[comment]=fg=blue
HISTORY_SUBSTRING_SEARCH_HIGHLIGHT_FOUND=bg=magenta,fg=black,bold
HISTORY_SUBSTRING_SEARCH_HIGHLIGHT_NOT_FOUND=bg=red,fg=black,bold

View File

@ -12,7 +12,7 @@ bind-key -n M-6 select-window -t 6
bind-key -n M-7 select-window -t 7
bind-key -n M-8 select-window -t 8
bind-key -n M-9 select-window -t 9
bind-key -n M-0 select-window -t 10
#bind-key -n M-0 select-window -t 10
bind-key -n M-! swap-window -t 1
bind-key -n M-@ swap-window -t 2
@ -83,3 +83,5 @@ bind-key -T copy-mode-vi C-M-h swap-pane -s "{left-of}"
bind-key -T copy-mode-vi C-M-j swap-pane -s "{down-of}"
bind-key -T copy-mode-vi C-M-k swap-pane -s "{up-of}"
bind-key -T copy-mode-vi C-M-l swap-pane -s "{right-of}"
bind-key -n M-0 run-shell tmux-session-menu

5
tmux/bin/tmux-session-menu Executable file
View File

@ -0,0 +1,5 @@
#!/bin/sh
tmux list-sessions -F '#S' \
| awk 'BEGIN {ORS=" "; print "toggle t \"switch-client -l\""} {print $1, NR, "\"switch-client -t", $1 "\""}' \
| xargs tmux display-menu -T "Switch session"