mirror of
https://oauth2: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@github.com/m1ngsama/chopsticks.git
synced 2026-05-10 19:10:59 +08:00
Replace the monolithic 1268-line .vimrc with a thin loader that sources 12 modules under modules/ (env, plugins, core, ui, editing, navigation, lsp, lint, git, writing, languages, tools). Each module is independently readable and can be toggled by commenting one line. Add interactive tutorial (tutor/chopsticks.tutor) with 10 lessons covering all features. Users can run :ChopsticksLearn to start.
37 lines
1.5 KiB
VimL
37 lines
1.5 KiB
VimL
" ============================================================================
|
|
" chopsticks — vim configuration
|
|
" Philosophy: flowing writing on any machine. No Node.js. Solarized palette.
|
|
" ============================================================================
|
|
"
|
|
" Modular layout — each file in modules/ is self-contained:
|
|
" env.vim Environment detection (TTY, truecolor)
|
|
" plugins.vim vim-plug bootstrap + all 30 plugin declarations
|
|
" core.vim General settings, keymaps, performance, indentation
|
|
" ui.vim Colorscheme, statusline, startify, indentline
|
|
" editing.vim EasyMotion, yank highlight, search auto-clear
|
|
" navigation.vim FZF, netrw, window management, terminal
|
|
" lsp.vim vim-lsp + asyncomplete configuration
|
|
" lint.vim ALE linting and format-on-save
|
|
" git.vim Fugitive, GitGutter, conflict navigation
|
|
" writing.vim Markdown, previm, goyo + limelight zen mode
|
|
" languages.vim vim-go config, per-filetype settings
|
|
" tools.vim Cheat sheet, run file, sudo save, helpers
|
|
|
|
let g:chopsticks_dir = fnamemodify(resolve(expand('<sfile>')), ':h')
|
|
|
|
function! s:load(mod) abort
|
|
execute 'source ' . g:chopsticks_dir . '/modules/' . a:mod . '.vim'
|
|
endfunction
|
|
|
|
call s:load('env')
|
|
call s:load('plugins')
|
|
call s:load('core')
|
|
call s:load('ui')
|
|
call s:load('editing')
|
|
call s:load('navigation')
|
|
call s:load('lsp')
|
|
call s:load('lint')
|
|
call s:load('git')
|
|
call s:load('writing')
|
|
call s:load('languages')
|
|
call s:load('tools')
|