Compare commits

...

6 Commits

5 changed files with 44 additions and 9 deletions

View File

@@ -19,6 +19,7 @@ assign [class="app-ws12"] $ws12
assign [class="vesktop"] $ws9
# autostart applications on a specific workspace
exec --no-startup-id i3-msg 'workspace $ws3; exec thunderbird'
exec --no-startup-id i3-msg 'workspace $ws2; exec firefox --new-window'
exec --no-startup-id i3-msg 'workspace $ws1; exec kitty --single-instance'

View File

@@ -13,7 +13,12 @@ git:
pagers:
- colorArg: always
pager: diff-so-fancy
useConfig: false
overrideGpg: true
update:
method: never
customCommands:
- key: 'P'
command: "git push {{.SelectedRemote.Name}} {{.SelectedLocalCommit.Sha}}:{{.SelectedLocalBranch.Name}}"
context: "commits"
loadingText: "Pushing commit..."
description: "Push a specific commit (and any preceding)"

View File

@@ -9,6 +9,7 @@ Map('n', '<c-t>', '<cmd>enew<cr>', { desc = 'create a new buffer' })
Map('n', '<tab>', '<cmd>bnext<cr>', { desc = 'move to next buffer' })
Map('n', '<s-tab>', '<cmd>bprevious<cr>', { desc = 'move to previous buffer' })
Map('n', '<c-w>', '<cmd>bd<cr>', { desc = 'close buffer' })
Map('n', '<c-f4>', '<cmd>bd<cr>', { desc = 'close buffer' })
-- for help exiting certain modes
Map({ 'n', 'i' }, '<esc>', '<cmd>nohlsearch<cr><esc>', { desc = 'cancel search highlighting and escape' })

View File

@@ -83,17 +83,45 @@ require('mini.indentscope').setup({
MiniDeps.later(function()
vim.api.nvim_set_hl(0, 'MiniIndentscopeSymbol', { link = 'Whitespace' })
end)
-- TODO: show history
require('mini.notify').setup() -- has more noticeable / utilitarian / aesthetically pleasing notifications
-- Custom `^V` and `^S` symbols to make this file appropriate for copy-paste
-- (otherwise those symbols are not displayed).
local CTRL_S = vim.api.nvim_replace_termcodes('<C-S>', true, true, true)
local CTRL_V = vim.api.nvim_replace_termcodes('<C-V>', true, true, true)
local modes = setmetatable({
['n'] = { long = 'NORMAL', short = 'N', hl = 'MiniStatuslineModeNormal' },
['v'] = { long = 'VISUAL', short = 'V', hl = 'MiniStatuslineModeVisual' },
['V'] = { long = 'V-LINE', short = 'V-L', hl = 'MiniStatuslineModeVisual' },
[CTRL_V] = { long = 'V-BLOCK', short = 'V-B', hl = 'MiniStatuslineModeVisual' },
['s'] = { long = 'SELECT', short = 'S', hl = 'MiniStatuslineModeVisual' },
['S'] = { long = 'S-LINE', short = 'S-L', hl = 'MiniStatuslineModeVisual' },
[CTRL_S] = { long = 'S-BLOCK', short = 'S-B', hl = 'MiniStatuslineModeVisual' },
['i'] = { long = 'INSERT', short = 'I', hl = 'MiniStatuslineModeInsert' },
['R'] = { long = 'REPLACE', short = 'R', hl = 'MiniStatuslineModeReplace' },
['c'] = { long = 'COMMAND', short = 'C', hl = 'MiniStatuslineModeCommand' },
['r'] = { long = 'PROMPT', short = 'P', hl = 'MiniStatuslineModeOther' },
['!'] = { long = 'SHELL', short = 'Sh', hl = 'MiniStatuslineModeOther' },
['t'] = { long = 'TERMINAL', short = 'T', hl = 'MiniStatuslineModeOther' },
}, {
-- By default return 'Unknown' but this shouldn't be needed
__index = function()
return { long = 'Unknown', short = 'U', hl = '%#MiniStatuslineModeOther#' }
end,
})
require('mini.statusline').setup({
content = {
active = function()
local mode, mode_hl = MiniStatusline.section_mode({ trunc_width = 120 })
local git = MiniStatusline.section_git({ trunc_width = 40 })
local diff = MiniStatusline.section_diff({ trunc_width = 75 })
local diagnostics = MiniStatusline.section_diagnostics({ trunc_width = 75 })
local lsp = MiniStatusline.section_lsp({ trunc_width = 75 })
local filename = MiniStatusline.section_filename({ trunc_width = 140 })
local fileinfo = MiniStatusline.section_fileinfo({ trunc_width = 120 })
local mode_info = modes[vim.fn.mode()]
local mode = MiniStatusline.is_truncated(120) and mode_info.short or mode_info.long
local mode_hl = mode_info.hl
local git = MiniStatusline.section_git({ trunc_width = 40 })
local diff = MiniStatusline.section_diff({ trunc_width = 75 })
local diagnostics = MiniStatusline.section_diagnostics({ trunc_width = 75 })
local lsp = MiniStatusline.section_lsp({ trunc_width = 75 })
local filename = MiniStatusline.section_filename({ trunc_width = 140 })
local fileinfo = MiniStatusline.section_fileinfo({ trunc_width = 120 })
return MiniStatusline.combine_groups({
{ hl = mode_hl, strings = { mode } },
@@ -114,7 +142,7 @@ require('mini.statusline').setup({
use_icons = true,
set_vim_settings = true,
})
require('mini.tabline').setup()
require('mini.tabline').setup() -- shows buffers that are open
require('mini.trailspace').setup() -- trailing space indication and removal.
---@module 'lazy'

BIN
.local/bin/ovo Executable file

Binary file not shown.