27 Commits

Author SHA1 Message Date
Michael Chalupiak
66391c3e4d Merge branch 'master' into arch-desktop 2026-05-03 18:11:54 -04:00
Michael Chalupiak
7cd118b1a1 Merge branch 'master' of github.com:mchalupiak/Dotfiles 2026-05-03 18:11:35 -04:00
Michael Chalupiak
6b6ec87c90 small overhaul of nvim 2026-05-03 18:11:21 -04:00
Michael Chalupiak
3ffd41b042 Merge remote-tracking branch 'origin' 2026-04-22 14:55:47 -04:00
Michael Chalupiak
450950ffb5 wezterm 2026-04-22 14:54:12 -04:00
Michael Chalupiak
d9c2fc0dd5 Merge branch 'master' into arch-desktop 2026-04-21 15:14:36 -04:00
Michael Chalupiak
f3817cf484 wezterm (yipee) 2026-04-21 15:14:21 -04:00
Michael Chalupiak
0c4779db6c Merge branch 'master' into arch-desktop 2026-04-20 21:30:53 -04:00
Michael Chalupiak
facda5d25c Merge branch 'master' into arch-desktop 2026-04-10 10:50:15 -04:00
Michael Chalupiak
6dc71d4ae9 Merge branch 'master' into arch-desktop 2026-02-03 23:21:15 -05:00
Michael Chalupiak
6d26754462 Aerc mail client and chawan browser 2026-02-03 23:21:15 -05:00
Michael Chalupiak
b6fe1d9f38 Merge branch 'master' into arch-desktop 2026-01-30 19:24:57 -05:00
Michael Chalupiak
6650ab1d5c Merge branch 'master' into arch-desktop 2026-01-26 01:05:47 -05:00
Michael Chalupiak
cb21d62153 Merge branch 'master' into arch-desktop 2026-01-24 21:32:43 -05:00
Michael Chalupiak
e104c9b8ce Merge branch 'master' into arch-desktop 2026-01-18 00:55:07 -05:00
Michael Chalupiak
e99901146d Merge branch 'master' into arch-desktop 2026-01-17 02:11:18 -05:00
Michael Chalupiak
dc51e2b8d8 Merge branch 'master' into arch-desktop 2026-01-10 01:51:19 -05:00
Michael Chalupiak
9fd41c75ef Merge branch 'master' into arch-desktop 2026-01-09 00:48:07 -05:00
Michael Chalupiak
adcecd9d62 Merge branch 'master' into arch-desktop 2026-01-07 23:07:20 -05:00
Michael Chalupiak
ade4c9f47c Merge branch 'master' into arch-desktop 2025-11-14 12:58:25 -05:00
Michael Chalupiak
82c55b55c7 Merge branch 'master' into arch-desktop 2025-11-14 00:17:26 -05:00
Michael Chalupiak
8ba5349c5d merge master 2025-09-24 18:36:00 -04:00
Michael Chalupiak
c16dc3b450 Added tinymist (typst) lsp settings 2025-09-14 14:25:33 -04:00
Michael Chalupiak
924c01282d Merge branch 'master' into arch-desktop 2025-08-30 18:32:52 -04:00
Michael Chalupiak
7a7b0e3f1c Merge branch 'master' into arch-desktop 2025-08-23 15:28:19 -04:00
Michael Chalupiak
cfb88473fc Merge branch 'master' into arch-desktop 2025-08-23 14:41:11 -04:00
Michael Chalupiak
32760db44f bp 2025-08-23 14:25:58 -04:00
17 changed files with 364 additions and 252 deletions

1
.gitignore vendored
View File

@@ -12,6 +12,7 @@ config/.config/kak/plugins/*
config/.config/mutt/chalupmc@rose-hulman
config/.config/mutt/mikecchalupiak@outlook
config/.config/mutt/spamreciver1@outlook
config/.config/nvim/lazy-lock.json
config/.config/qt5ct/colors/*
config/.config/qutebrowser/autoconfig.yml
config/.config/qutebrowser/rosepine/*

View File

@@ -18,11 +18,5 @@ test -r '/home/mikec/.opam/opam-init/init.sh' && . '/home/mikec/.opam/opam-init/
if [ -z "$DISPLAY" ] && [ "$(tty)" = "/dev/tty1" ]; then
exec river
fi
HOMEBREW_PREFIX=/opt/homebrew
export PATH="/opt/homebrew/opt/llvm/bin:$PATH"
export CPATH="$HOMEBREW_PREFIX/include:$CPATH"
export LIBRARY_PATH="$HOMEBREW_PREFIX/lib:$LIBRARY_PATH"
. "/Users/mikec/.local/share/bob/env/env.sh"
test -e "${HOME}/.iterm2_shell_integration.bash" && source "${HOME}/.iterm2_shell_integration.bash"
. "/home/mikec/.local/share/bob/env/env.sh"

View File

@@ -26,5 +26,5 @@ dataSourceCommonSettings\activeState=true
dataSourceCommonSettings\activeState=true
[UserFeedback]
ApplicationStartCount=137
ApplicationTime=622
ApplicationStartCount=141
ApplicationTime=705

View File

@@ -26,5 +26,5 @@ dataSourceCommonSettings\activeState=true
dataSourceCommonSettings\activeState=true
[UserFeedback]
ApplicationStartCount=3
ApplicationTime=35142
ApplicationStartCount=72
ApplicationTime=68724

View File

@@ -23,5 +23,5 @@ dataSourceCommonSettings\activeState=true
dataSourceCommonSettings\activeState=true
[UserFeedback]
ApplicationStartCount=1
ApplicationTime=14
ApplicationStartCount=18
ApplicationTime=16794

View File

@@ -1,2 +1,2 @@
[UserFeedback]
ApplicationStartCount=1
ApplicationStartCount=18

View File

@@ -26,6 +26,6 @@ dataSourceCommonSettings\activeState=true
dataSourceCommonSettings\activeState=true
[UserFeedback]
ApplicationStartCount=210
ApplicationTime=2008695
ApplicationStartCount=260
ApplicationTime=2430104
LastEncouragement=@DateTime(\0\0\0\x10\0\0\0\0\0\0%\x87}\x4\n\x84\xab\0)

File diff suppressed because one or more lines are too long

View File

@@ -4,12 +4,44 @@ local setnx = function(key, command, desc)
end
setnx('<leader>ff', Snacks.picker.files, 'Find files')
setnx('<leader>fF', function() Snacks.picker.files({ dirs = { '.' }}) end, 'Find files in current dir')
setnx('<leader>f/', Snacks.picker.grep_word, 'Search current word')
setnx('<leader>fg', Snacks.picker.grep, 'Search in files')
setnx('<leader>fr', Snacks.picker.recent, 'Find recent files')
setnx('<leader>b', Snacks.picker.buffers, 'List buffers')
setnx('<leader>h', Snacks.picker.help, 'Search help')
setnx('<leader>X', require'hex'.toggle, 'Toggle hex editor')
setnx('<leader>P', '<CMD>Markview splitToggle<CR>', 'Open markview preview')
setnx('<leader>z', Snacks.zen.zen, 'Toggle snacks zen mode')
local setto = function(key, command, desc)
set({ 'x', 'o' }, key, command, { desc = desc })
end
local setton = function(key, command, desc)
set({ 'n', 'x', 'o' }, key, command, { desc = desc })
end
local select_to = function(query)
return function ()
require'nvim-treesitter-textobjects.select'.select_textobject(query, "textobjects")
end
end
local move_next_start = function(query)
return function ()
require'nvim-treesitter-textobjects.move'.goto_next_start(query, "textobjects")
end
end
local move_prev_start = function(query)
return function ()
require'nvim-treesitter-textobjects.move'.goto_previous_start(query, "textobjects")
end
end
setto('if', select_to("@function.inner"), 'Select inside function')
setto('af', select_to("@function.outer"), 'Select around function')
setto('ia', select_to("@parameter.inner"), 'Select inside parameter')
setto('aa', select_to("@parameter.outer"), 'Select around parameter')
setton(']p', move_next_start("@parameter.inner"), 'Goto next parameter')
setton('[p', move_prev_start("@parameter.inner"), 'Goto previous parameter')
setnx('<leader>m', Snacks.picker.marks, 'Search marks')
setnx('<leader>q', Snacks.picker.qflist, 'Search quickfix list')
setnx('<leader>l', Snacks.picker.loclist, 'Search location list')
@@ -48,8 +80,8 @@ setnx('`', '\'', 'Goto mark without column')
setnx('<leader>x', '<CMD>bd!<CR>', 'Close Current Buffer')
setnx('grr', Snacks.picker.lsp_references, 'Search lsp references')
-- setnx('grI', tele.lsp_incoming_calls, 'Find incoming function calls')
-- setnx('grO', tele.lsp_outgoing_calls, 'Find outgoing function calls')
setnx('grI', Snacks.picker.lsp_incoming_calls, 'Find incoming function calls')
setnx('grO', Snacks.picker.lsp_outgoing_calls, 'Find outgoing function calls')
setnx('grd', Snacks.picker.diagnostics, 'Show LSP diagnostics')
setnx('grD', (function()
local diag = true

View File

@@ -8,41 +8,22 @@ vim.api.nvim_create_autocmd('LspAttach', {
end
})
-- vim.lsp.config('rust-analyzer', {
-- settings = {
-- ["rust-analyzer"] = {
-- inlayHints = {
-- bindingModeHints = {
-- enable = false,
-- },
-- chainingHints = {
-- enable = true,
-- },
-- closingBraceHints = {
-- enable = true,
-- minLines = 25,
-- },
-- closureReturnTypeHints = {
-- enable = "never",
-- },
-- lifetimeElisionHints = {
-- enable = "never",
-- useParameterNames = false,
-- },
-- maxLength = 25,
-- parameterHints = {
-- enable = true,
-- },
-- reborrowHints = {
-- enable = "never",
-- },
-- renderColons = true,
-- typeHints = {
-- enable = true,
-- hideClosureInitialization = false,
-- hideNamedConstructor = false,
-- },
-- },
-- }
-- }
-- })
vim.lsp.config('lua_ls', {
settings = {
Lua = {
workspace = {
library = vim.api.nvim_get_runtime_file("", true),
maxPreload = 100000,
preloadFileSize = 100000,
}
}
}
})
vim.lsp.config('tinymist', {
settings = {
exportPdf = "onType",
},
})
vim.diagnostic.config({ update_in_insert = true, float = true, virtual_lines = true})

View File

@@ -14,6 +14,7 @@ vim.opt.winborder = 'none'
vim.opt.smartindent = true
vim.opt.foldlevel = 9999
-- vim.opt.spell = true
vim.opt.spelllang = 'en_us'
@@ -82,6 +83,6 @@ vim.lsp.config('lua_ls', {
vim.lsp.config('tinymist', {
settings = {
exportPdf = "onType",
}
},
})
vim.diagnostic.config({ update_in_insert = true, float = true, virtual_lines = true})

View File

@@ -21,15 +21,6 @@ return {
},
},
-- {
-- "MysticalDevil/inlay-hints.nvim",
-- event = "LspAttach",
-- dependencies = { "neovim/nvim-lspconfig" },
-- config = function()
-- require("inlay-hints").setup()
-- end
-- },
--
{
'saghen/blink.cmp',
-- optional: provides snippets for the snippet source

View File

@@ -1,66 +1,39 @@
return {
{
'nvim-treesitter/nvim-treesitter',
-- branch = 'main',
'neovim-treesitter/nvim-treesitter',
dependencies = { 'neovim-treesitter/treesitter-parser-registry' },
branch = 'main',
version = false,
lazy = false,
build = ':TSUpdate',
config = function()
require'nvim-treesitter.configs'.setup {
textobjects = {
select = {
enable = true,
lookahead = true,
keymaps = {
["af"] = "@function.outer",
["if"] = "@function.inner",
}
},
move = {
enable = true,
set_jumps = false,
goto_next_start = {
[']a'] = '@parameter.inner',
},
goto_previous_start = {
['[a'] = '@parameter.inner',
}
},
},
auto_install = true,
highlight = {
enable = true,
},
}
local langs = require'nvim-treesitter'.get_installed('parsers')
vim.api.nvim_create_autocmd('FileType', {
pattern = langs,
callback = function()
vim.treesitter.start() -- highlighting
vim.wo.foldexpr = 'v:lua.vim.treesitter.foldexpr()' -- folds
vim.wo.foldmethod = 'expr'
vim.bo.indentexpr = "v:lua.require'nvim-treesitter'.indentexpr()" -- indentation
end,
})
end
},
{
'nvim-treesitter/nvim-treesitter-textobjects',
branch = 'main',
opts = {
select = {
lookahead = true,
}
}
},
-- {
-- 'folke/twilight.nvim',
-- dependencies = {
-- 'nvim-treesitter/nvim-treesitter',
-- },
-- cmd = {
-- 'Twilight',
-- 'TwilightEnable',
-- 'TwilightDisable',
-- },
-- },
-- {
-- 'RRethy/vim-illuminate',
-- event = 'VeryLazy',
-- lazy = false,
-- },
{
'0oAstro/dim.lua',
dependencies = {
'nvim-treesitter/nvim-treesitter',
'neovim-treesitter/nvim-treesitter',
'neovim/nvim-lspconfig'
},
event = 'LspAttach',

View File

@@ -5,30 +5,12 @@ return {
event = 'VeryLazy',
},
-- {
-- 'lukas-reineke/indent-blankline.nvim',
-- event = 'VeryLazy',
-- config = function()
-- require'ibl'.setup{ scope = { enabled = false } }
-- end
-- },
{
'nvim-tree/nvim-web-devicons',
-- event = 'VeryLazy',
lazy = true,
},
-- {
-- 'goolord/alpha-nvim',
-- dependencies = {
-- 'nvim-tree/nvim-web-devicons',
-- },
-- config = function()
-- require('alpha').setup(require'alpha.themes.startify'.config)
-- end
-- },
{
'lewis6991/gitsigns.nvim',
event = 'VeryLazy',
@@ -37,9 +19,9 @@ return {
}
},
{
'Bekaboo/dropbar.nvim',
},
-- {
-- 'Bekaboo/dropbar.nvim',
-- },
{
'nvim-lualine/lualine.nvim',
@@ -52,8 +34,8 @@ return {
for i, server in pairs(vim.lsp.get_clients({ bufnr = 0 })) do
table.insert(names, server.name)
end
return " [" .. table.concat(names, " ") .. "]"
-- return "[" .. table.concat(names, " ") .. "]"
-- return " [" .. table.concat(names, " ") .. "]"
return "[" .. table.concat(names, " ") .. "]"
end
require('lualine').setup {
options = {

View File

@@ -1,21 +1,4 @@
return {
{
'nvim-lua/plenary.nvim',
-- event = 'VeryLazy',
lazy = true,
},
{
'RaafatTurki/hex.nvim',
config = true,
cmd = {
'HexDump',
'HexAssemble',
'HexToggle',
},
},
{
"sindrets/diffview.nvim",
event = 'VeryLazy',
@@ -33,7 +16,6 @@ return {
"NeogitOrg/neogit",
lazy = true,
dependencies = {
"nvim-lua/plenary.nvim", -- required
"sindrets/diffview.nvim", -- optional - Diff integration
-- Only one of these is needed.
@@ -44,6 +26,14 @@ return {
},
},
{
"OXY2DEV/markview.nvim",
lazy = false,
-- Completion for `blink.cmp`
dependencies = { "saghen/blink.cmp" },
},
{
'vieitesss/command.nvim',
lazy = false,
@@ -51,12 +41,6 @@ return {
opts = {},
},
{
'glacambre/firenvim',
build = ":call firenvim#install(0)"
},
{
'brenoprata10/nvim-highlight-colors',
event = 'VeryLazy',
@@ -92,7 +76,29 @@ return {
-- or leave it empty to use the default settings
-- refer to the configuration section below
bigfile = { enabled = true },
-- dashboard = { enabled = true },
dashboard = {
enabled = true,
presets = {
},
formats = {
key = function(item)
return { { "[", hl = "special" }, { item.key, hl = "key" }, { "]", hl = "special" } }
end,
},
sections = {
-- { section = "terminal", cmd = "fortune -s | cowsay", hl = "header", padding = 1, indent = 8 },
{ section = "header" },
{ section = "startup" },
{ title = "MRU", padding = 1 },
{ section = "recent_files", limit = 8, padding = 1 },
{ title = "MRU ", file = vim.fn.fnamemodify(".", ":~"), padding = 1 },
{ section = "recent_files", cwd = true, limit = 8, padding = 1 },
{ title = "Sessions", padding = 1 },
{ section = "projects", padding = 1 },
{ title = "Bookmarks", padding = 1 },
{ section = "keys" },
},
},
dim = { enabled = true },
-- explorer = { enabled = true },
-- git = { enabled = false },
@@ -113,92 +119,57 @@ return {
},
notifier = { enabled = true },
-- quickfile = { enabled = true },
-- scope = { enabled = true },
scope = { enabled = true },
-- scroll = { enabled = true },
terminal = { enabled = false },
-- statuscolumn = { enabled = true },
-- words = { enabled = true },
words = { enabled = true },
zen = {
enabled = true,
-- toggles = {
-- git_signs = true,
-- },
win = {
backdrop = {
transparent = false,
blend = 99,
},
},
},
},
},
{
'echasnovski/mini.nvim',
config = function()
require('mini.starter').setup()
-- require('mini.cursorword').setup()
local miniclue = require'mini.clue'
miniclue.setup{
window = {
delay = 0,
config = {
width = 'auto',
},
},
triggers = {
-- Leader triggers
{ mode = 'n', keys = '<Leader>' },
{ mode = 'x', keys = '<Leader>' },
-- Built-in completion
{ mode = 'i', keys = '<C-x>' },
-- `g` key
{ mode = 'n', keys = 'g' },
{ mode = 'x', keys = 'g' },
-- Next
{ mode = 'n', keys = '['},
{ mode = 'n', keys = ']'},
{ mode = 'x', keys = '['},
{ mode = 'x', keys = ']'},
-- Marks
{ mode = 'n', keys = "'" },
{ mode = 'n', keys = '`' },
{ mode = 'x', keys = "'" },
{ mode = 'x', keys = '`' },
-- Registers
{ mode = 'n', keys = '"' },
{ mode = 'x', keys = '"' },
{ mode = 'i', keys = '<C-r>' },
{ mode = 'c', keys = '<C-r>' },
-- Window commands
{ mode = 'n', keys = '<C-w>' },
-- `z` key
{ mode = 'n', keys = 'z' },
{ mode = 'x', keys = 'z' },
-- Localleader
{ mode = 'n', keys = '<Localleader>'},
{ mode = 'x', keys = '<Localleader>'},
},
clues = {
-- Enhance this by adding descriptions for <Leader> mapping groups
miniclue.gen_clues.builtin_completion(),
miniclue.gen_clues.g(),
miniclue.gen_clues.marks(),
miniclue.gen_clues.registers(),
miniclue.gen_clues.windows(),
miniclue.gen_clues.z(),
{ mode = 'n', keys = '<leader>f', desc = '+Find' },
{ mode = 'x', keys = '<leader>f', desc = '+Find' },
{ mode = 'n', keys = '<leader>o', desc = '+Open' },
{ mode = 'x', keys = '<leader>o', desc = '+Open' },
{ mode = 'n', keys = '<leader>g', desc = '+Git' },
{ mode = 'x', keys = '<leader>g', desc = '+Git' },
{ mode = 'n', keys = '<leader>c', desc = '+Compile' },
{ mode = 'x', keys = '<leader>c', desc = '+Compile' },
},
}
end
"folke/which-key.nvim",
event = "VeryLazy",
opts = {
-- your configuration comes here
-- or leave it empty to use the default settings
-- refer to the configuration section below
preset = 'helix',
sort = { "order", "alphanum", "local", "mod" },
win = {
border = 'none',
},
icons = {
rules = false,
},
spec = {
{ '<leader>f', group = 'Find' },
{ '<leader>o', group = 'Open' },
{ '<leader>g', group = 'Git' },
{ '<leader>c', group = 'Compile' },
},
},
keys = {
{
"<leader>?",
function()
require("which-key").show({ global = false })
end,
desc = "Buffer Local Keymaps (which-key)",
},
},
},
{
@@ -302,19 +273,19 @@ return {
-- Add cursor at next argument treesitter
set({'n', 'x'}, ']A', function()
if vim.v.count < 1 then
mc.addCursor(']a')
mc.addCursor(']p')
else
for _=1, vim.v.count - 1 do
mc.addCursor(']a')
mc.addCursor(']p')
end
end
end, { desc = 'Create multicursor on next argument'})
set({'n', 'x'}, '[A', function()
if vim.v.count < 1 then
mc.addCursor('[a')
mc.addCursor('[p')
else
for _=1, vim.v.count - 1 do
mc.addCursor('[a')
mc.addCursor('[p')
end
end
end, { desc = 'Create multicursor on previous argument'})

View File

@@ -1,5 +1 @@
# This file is written by nwg-look. Do not edit.
[Icon Theme]
Name=Default
Comment=Default Cursor Theme
Inherits=BreezeX-RosePineDawn-Linux

187
config/.wezterm.lua Normal file
View File

@@ -0,0 +1,187 @@
local wezterm = require 'wezterm'
local config = {}
config.font = wezterm.font_with_fallback {
'Iosevka Term SS12',
'Cascadia Code'
}
local appearance_themes = {
Light = 'dawnfox',
Dark = 'carbonfox',
}
local appearance = wezterm.gui.get_appearance()
config.color_scheme = appearance_themes[appearance] or 'carbonfox'
config.font_size = 14
config.enable_tab_bar = true
config.use_fancy_tab_bar = false
-- config.front_end = "WebGpu"
-- config.integrated_title_button_style = "Gnome"
function basename(s)
return string.gsub(s, '(.*[/\\])(.*)', '%2')
end
wezterm.on(
'format-tab-title',
function(tab, tabs, panes, config, hover, maxwidth)
local tab_name
local title = tab.tab_title
if title and #title > 0 then
tab_name = tab.tab_id .. ':' .. title
end
local pane = tab.active_pane
local name = pane.foreground_process_name
if name then
tab_name = tab.tab_id .. ':' .. basename(name)
end
if tab.is_active then
return {
'ResetAttributes',
{ Text = ' ' .. tab_name .. '* '},
}
-- elseif tab.is_last_active then
-- return {
-- { Text = ' ' .. tab_name .. '- ' },
-- }
else
return {
'ResetAttributes',
{ Text = ' ' .. tab_name .. ' ' }
}
end
end
)
-- keys
local act = wezterm.action
config.leader = { key = 'a', mods = 'CTRL', timeout_milliseconds = 1000 }
config.keys = {
{
key = 'a',
mods = 'LEADER|CTRL',
action = wezterm.action.SendKey { key = 'a', mods = 'CTRL' },
},
{
key = "c",
mods = "LEADER",
action = act.SpawnTab 'CurrentPaneDomain'
},
{
key = "e",
mods = "LEADER",
action = act.CharSelect {
copy_on_select = true,
copy_to = 'ClipboardAndPrimarySelection',
},
},
{
key = "C",
mods = "LEADER",
action = act.SpawnTab 'CurrentPaneDomain'
},
{
key = "x",
mods = "LEADER",
action = act.CloseCurrentPane { confirm = true }
},
{
key = "p",
mods = "LEADER",
action = act.ActivateTabRelative(-1)
},
{
key = "n",
mods = "LEADER",
action = act.ActivateTabRelative(1)
},
{
key = "%",
mods = "LEADER|SHIFT",
action = act.SplitPane {
direction = "Right"
}
},
{
key = "\"",
mods = "LEADER|SHIFT",
action = act.SplitPane {
direction = "Down"
}
},
{
key = "o",
mods = "LEADER",
action = act.ActivatePaneDirection 'Next'
},
{
key = "h",
mods = "LEADER",
action = act.ActivatePaneDirection 'Left'
},
{
key = "l",
mods = "LEADER",
action = act.ActivatePaneDirection 'Right'
},
{
key = "j",
mods = "LEADER",
action = act.ActivatePaneDirection 'Down'
},
{
key = "k",
mods = "LEADER",
action = act.ActivatePaneDirection 'Up'
},
{
key = "P",
mods = "LEADER",
action = act.PasteFrom 'Clipboard'
},
{
key = "s",
mods = "LEADER",
action = act.QuickSelect
},
{
key = "Y",
mods = "LEADER",
action = act.CopyTo 'Clipboard'
},
{
key = "v",
mods = "LEADER",
action = act.ActivateCopyMode
},
{
key = "f",
mods = "LEADER",
action = act.Search("CurrentSelectionOrEmptyString")
},
{
key = ',',
mods = 'LEADER',
action = act.PromptInputLine {
description = 'Enter new name for tab',
action = wezterm.action_callback(function(window, pane, line)
-- line will be `nil` if they hit escape without entering anything
-- An empty string if they just hit enter
-- Or the actual line of text they wrote
if line then
window:active_tab():set_title(line)
end
end),
},
},
}
for i = 1, 8 do
-- CTRL+ALT + number to activate that tab
table.insert(config.keys, {
key = tostring(i),
mods = 'LEADER',
action = act.ActivateTab(i - 1),
})
end
return config