From 80dc4c043549c21777d98bf7b76472c478bce3be Mon Sep 17 00:00:00 2001 From: nsfisis Date: Thu, 24 Apr 2025 23:22:53 +0900 Subject: nvim: set laststatus=3 --- .config/nvim/lua/init/01-options.lua | 5 +++ .config/nvim/lua/init/04-mappings.lua | 32 ++++++++------- .config/nvim/lua/init/05-appearance.lua | 69 ++++++++++++++++----------------- 3 files changed, 55 insertions(+), 51 deletions(-) diff --git a/.config/nvim/lua/init/01-options.lua b/.config/nvim/lua/init/01-options.lua index 3eb813a..14255ea 100644 --- a/.config/nvim/lua/init/01-options.lua +++ b/.config/nvim/lua/init/01-options.lua @@ -45,6 +45,11 @@ O.colorcolumn = '+1' OPT.spelloptions:append('camel') +-- Statusline {{{1 + +O.laststatus = 3 + + -- Multiple windows {{{1 O.winminheight = 0 diff --git a/.config/nvim/lua/init/04-mappings.lua b/.config/nvim/lua/init/04-mappings.lua index e9db72e..747cf93 100644 --- a/.config/nvim/lua/init/04-mappings.lua +++ b/.config/nvim/lua/init/04-mappings.lua @@ -331,27 +331,29 @@ K.set('n', 'tg', choose_window_interactively) K.set('n', 'T', '') K.set('n', 'Ta', 'AutosaveToggle') -K.set('n', 'Tb', ':if &background == "dark" set background=light else set background=dark endif', { silent=true }) -K.set('n', 'Tc', ':set cursorcolumn! set cursorline!', { silent=true }) -K.set('n', 'Td', ':if &diff diffoff else diffthis endif', { silent=true }) +K.set('n', 'Tb', 'if &background == "dark" set background=light else set background=dark endif') +K.set('n', 'Tc', 'set cursorcolumn! set cursorline!') +K.set('n', 'Td', 'if &diff diffoff else diffthis endif') K.set('n', 'Te', 'set expandtab!') K.set('n', 'Th', 'set hlsearch!') +K.set('n', 'Tl', 'if &laststatus ==# 3 set laststatus=2 else set laststatus=3 endif') K.set('n', 'Tn', 'set number!') K.set('n', 'Ts', 'set spell!') -K.set('n', 'T8', ':if &textwidth ==# 80 set textwidth=0 else set textwidth=80 endif', { silent=true }) -K.set('n', 'T0', ':if &textwidth ==# 100 set textwidth=0 else set textwidth=100 endif', { silent=true }) -K.set('n', 'T2', ':if &textwidth ==# 120 set textwidth=0 else set textwidth=120 endif', { silent=true }) +K.set('n', 'T8', 'if &textwidth ==# 80 set textwidth=0 else set textwidth=80 endif') +K.set('n', 'T0', 'if &textwidth ==# 100 set textwidth=0 else set textwidth=100 endif') +K.set('n', 'T2', 'if &textwidth ==# 120 set textwidth=0 else set textwidth=120 endif') K.set('n', 'Tw', 'set wrap!') -K.set('n', 'TA', 'Ta', { remap=true }) -K.set('n', 'TB', 'Tb', { remap=true }) -K.set('n', 'TC', 'Tc', { remap=true }) -K.set('n', 'TD', 'Td', { remap=true }) -K.set('n', 'TE', 'Te', { remap=true }) -K.set('n', 'TH', 'Th', { remap=true }) -K.set('n', 'TN', 'Tn', { remap=true }) -K.set('n', 'TS', 'Ts', { remap=true }) -K.set('n', 'TW', 'Tw', { remap=true }) +K.set('n', 'TA', 'Ta', { remap = true }) +K.set('n', 'TB', 'Tb', { remap = true }) +K.set('n', 'TC', 'Tc', { remap = true }) +K.set('n', 'TD', 'Td', { remap = true }) +K.set('n', 'TE', 'Te', { remap = true }) +K.set('n', 'TH', 'Th', { remap = true }) +K.set('n', 'TL', 'Tl', { remap = true }) +K.set('n', 'TN', 'Tn', { remap = true }) +K.set('n', 'TS', 'Ts', { remap = true }) +K.set('n', 'TW', 'Tw', { remap = true }) diff --git a/.config/nvim/lua/init/05-appearance.lua b/.config/nvim/lua/init/05-appearance.lua index 1c9c396..14968c5 100644 --- a/.config/nvim/lua/init/05-appearance.lua +++ b/.config/nvim/lua/init/05-appearance.lua @@ -19,7 +19,7 @@ function vimrc.statusline.build() if not is_active then return ' ' .. fname end - local mode, mode_hl = vimrc.statusline.mode() + local mode = vimrc.statusline.mode() local ro = vimrc.statusline.readonly(bufnr) local mod = vimrc.statusline.modified(bufnr) local extra_info = vimrc.statusline.extra_info(bufnr, winid) @@ -29,8 +29,7 @@ function vimrc.statusline.build() local ff = vimrc.statusline.ff(bufnr) local ft = vimrc.statusline.filetype(bufnr) return string.format( - '%%#statusLineMode%s# %s %%#statusLine# %s%s%s %%= %s%s %s%s%s %s ', - mode_hl, + ' %s %s%s%s %%= %s%s %s%s%s %s ', mode, ro and ro .. ' ' or '', fname, @@ -45,39 +44,37 @@ end function vimrc.statusline.mode() local mode_map = { - n = { 'N', 'Normal' }, - no = { 'O', 'Operator' }, - nov = { 'Oc', 'Operator' }, - noV = { 'Ol', 'Operator' }, - [vimrc.term('no')] = { 'Ob', 'Operator' }, - niI = { 'In', 'Insert' }, - niR = { 'Rn', 'Replace' }, - niV = { 'Rn', 'Replace' }, - v = { 'V', 'Visual' }, - V = { 'Vl', 'Visual' }, - [vimrc.term('')] = { 'Vb', 'Visual' }, - s = { 'S', 'Visual' }, - S = { 'Sl', 'Visual' }, - [vimrc.term('')] = { 'Sb', 'Visual' }, - i = { 'I', 'Insert' }, - ic = { 'I?', 'Insert' }, - ix = { 'I?', 'Insert' }, - R = { 'R', 'Replace' }, - Rc = { 'R?', 'Replace' }, - Rv = { 'R', 'Replace' }, - Rx = { 'R?', 'Replace' }, - c = { 'C', 'Command' }, - cv = { 'C', 'Command' }, - ce = { 'C', 'Command' }, - r = { '-', 'Other' }, - rm = { '-', 'Other' }, - ['r?'] = { '-', 'Other' }, - ['!'] = { '-', 'Other' }, - t = { 'T', 'Terminal' }, + n = 'N', + no = 'O', + nov = 'Oc', + noV = 'Ol', + [vimrc.term('no')] = 'Ob', + niI = 'In', + niR = 'Rn', + niV = 'Rn', + v = 'V', + V = 'Vl', + [vimrc.term('')] = 'Vb', + s = 'S', + S = 'Sl', + [vimrc.term('')] = 'Sb', + i = 'I', + ic = 'I?', + ix = 'I?', + R = 'R', + Rc = 'R?', + Rv = 'R', + Rx = 'R?', + c = 'C', + cv = 'C', + ce = 'C', + r = '-', + rm = '-', + ['r?'] = '-', + ['!'] = '-', + t = 'T', } - local vim_mode_and_hl = mode_map[F.mode(true)] or { '-', 'Other' } - local vim_mode = vim_mode_and_hl[1] - local hl = vim_mode_and_hl[2] + local vim_mode = mode_map[F.mode(true)] or '-' local skk_mode if F.exists('*skkeleton#mode') == 1 then @@ -92,7 +89,7 @@ function vimrc.statusline.mode() skk_mode = '' end - return vim_mode .. skk_mode, hl + return vim_mode .. skk_mode end function vimrc.statusline.readonly(bufnr) -- cgit v1.2.3-70-g09d2