refactor: trim configuration and drop unused plugins
check / validate (push) Canceled after 0s

- Merge sunbather dark/light into one background-aware color scheme
- Fold uninstall.sh into install.sh as a subcommand; drop clone logic
- Inline bash_tools/ helpers; remove fct and odict
- Remove TPM, tmux-sensible, and tmux-fuzzback; tmux has no plugins now
- Remove vim-repeat, vim-fugitive, vim-gitgutter, vim-tmux-navigator,
  and moonfly; everforest is the default dark theme
- Fetch vim-plug via git instead of curl; require git, not curl
- Guard termguicolors on Windows consoles without VT support and set
  nomore before the vimrc loads so headless installs cannot hang
- Fall back to sunbather when a color scheme fails to load, without
  overwriting the saved preference
- Append config/vim to runtimepath so netrw stops writing into the repo
- Fix .editorconfig Python indent; trim .gitignore; update CI and README

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01NBfsAH6iJg9inkNLKq11YC
This commit is contained in:
2026-09-14 01:06:39 +00:00
co-authored by Claude Fable 5.1
parent 2928ef3bc0
commit 215c5cea44
15 changed files with 108 additions and 456 deletions
+4 -30
View File
@@ -7,13 +7,9 @@ endif
let g:dotfiledir = fnamemodify(resolve(expand('<sfile>:p')), ':h') . '/'
let g:dotvimdir = g:dotfiledir . 'config/vim'
let g:vim_dir = has('win32') || has('win64') ? expand('~/vimfiles') : expand('~/.vim')
execute 'set runtimepath^=' . fnameescape(g:dotvimdir)
execute 'set runtimepath+=' . fnameescape(g:dotvimdir)
let g:os = has('win32') || has('win64') ? 'Windows'
\ : has('macunix') ? 'Darwin'
\ : substitute(system('uname'), '\n', '', '')
if g:os ==# 'Windows'
if has('win32') || has('win64')
if executable('pwsh')
set shell=pwsh
elseif executable('powershell')
@@ -56,7 +52,6 @@ set tabstop=4
set softtabstop=4
set autoindent
set nojoinspaces
set nospell
set list
set listchars=tab:•\ ,trail:•,extends:»,precedes:«
let &fillchars = 'eob: ,vert:│,stl: ,stlnc: '
@@ -66,7 +61,7 @@ set undofile
set undolevels=1000
set undoreload=10000
set viewoptions=folds
if has('termguicolors')
if has('termguicolors') && (!has('win32') || has('vcon') || has('gui_running'))
set termguicolors
endif
@@ -82,7 +77,7 @@ execute 'set undodir=' . fnameescape(g:vim_dir . '/undo//')
execute 'set viewdir=' . fnameescape(g:vim_dir . '/view//')
if has('clipboard')
if g:os ==# 'Darwin' || g:os ==# 'Windows'
if has('macunix') || has('win32') || has('win64')
set clipboard=unnamed
else
set clipboard=unnamedplus
@@ -97,7 +92,6 @@ augroup DotfilesCore
autocmd FileType help setlocal colorcolumn=
autocmd FileType * setlocal formatoptions-=o
autocmd BufNewFile,BufRead *.html.twig setfiletype html.twig
autocmd BufNewFile,BufRead *.ts setfiletype typescript
autocmd BufReadPost * if line("'\"") > 1 && line("'\"") <= line('$') | execute 'normal! g`"' | endif
autocmd BufWinLeave ?* if &buftype ==# '' && !empty(expand('%:p')) | silent! mkview | endif
autocmd BufWinEnter ?* if &buftype ==# '' && !empty(expand('%:p')) | silent! loadview | endif
@@ -131,20 +125,14 @@ if filereadable(s:plug_vim)
Plug 'preservim/nerdtree', { 'on': ['NERDTreeToggle', 'NERDTreeFind'] }
Plug 'ryanoasis/vim-devicons'
Plug 'tpope/vim-repeat'
Plug 'tpope/vim-surround'
Plug 'tpope/vim-commentary'
Plug 'tpope/vim-fugitive'
Plug 'airblade/vim-gitgutter'
Plug 'mhinz/vim-startify'
Plug 'Donaldttt/vim-bufferline'
Plug 'Donaldttt/vim-global-statusline', { 'branch': 'vim9' }
Plug 'christoomey/vim-tmux-navigator'
Plug 'sainnhe/everforest'
Plug 'bluz71/vim-moonfly-colors', { 'as': 'moonfly' }
Plug 'NLKNguyen/papercolor-theme'
call plug#end()
else
@@ -153,7 +141,6 @@ else
echohl None
endif
" Fuzzbox replaces the former Fuzzyy plugin and keeps its familiar mappings.
let g:fuzzbox_dropdown = 1
let g:fuzzbox_window_defaults = {'maxwidth': 0.8, 'maxheight': 0.8}
let g:fuzzbox_window_options = {
@@ -186,15 +173,6 @@ function! s:ToggleTree() abort
endfunction
nnoremap <silent> <leader>e :call <SID>ToggleTree()<CR>
let g:gitgutter_map_keys = 0
nnoremap <silent> <leader>gt :GitGutterBufferToggle<CR>
let g:tmux_navigator_no_mappings = 1
nnoremap <silent> <C-h> :TmuxNavigateLeft<CR>
nnoremap <silent> <C-j> :TmuxNavigateDown<CR>
nnoremap <silent> <C-k> :TmuxNavigateUp<CR>
nnoremap <silent> <C-l> :TmuxNavigateRight<CR>
let g:bufferline_echo = 0
let g:bufferline_modified = '+'
let g:bufferline_active_buffer_left = '['
@@ -247,7 +225,3 @@ augroup END
nnoremap <silent> <leader>cbg :call theme#toggleBg()<CR>
nnoremap <silent> <leader>ctb :call theme#toggleTransparent()<CR>
if has('gui_running')
set guifont=Hack\ Nerd\ Font:h13
endif