mirror of
https://oauth2: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@github.com/m1ngsama/chopsticks.git
synced 2026-05-10 19:10:59 +08:00
Remove: Goyo, Limelight, previm, vim-obsession, indentLine (5 plugins). Remove: cheat sheet function (90 lines), tutorial system (269 lines), ASCII art banner, tab management (8 keybindings), dead code (HasPaste, CleanExtraSpaces, ToggleNumber), spell nav bindings, scratch buffer, syntax stack debug, TTY startup message. Fold: writing.vim → languages.vim (vim-markdown settings only). Keep: everything that edits code — LSP, FZF, Git, ALE, netrw sidebar. Result: 24 plugins, 949 lines, 19ms startup. No decorations, just tools.
53 lines
2.8 KiB
VimL
53 lines
2.8 KiB
VimL
" plugins.vim — vim-plug declarations
|
|
|
|
let data_dir = has('nvim') ? stdpath('data') . '/site' : '~/.vim'
|
|
if empty(glob(data_dir . '/autoload/plug.vim'))
|
|
silent execute '!curl -fLo '.data_dir.'/autoload/plug.vim --create-dirs '
|
|
\ . 'https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim'
|
|
augroup PlugBootstrap
|
|
autocmd!
|
|
autocmd VimEnter * PlugInstall --sync | source $MYVIMRC
|
|
augroup END
|
|
endif
|
|
|
|
call plug#begin('~/.vim/plugged')
|
|
|
|
" ── Navigation & Search ──────────────────────────────────────────────────────
|
|
Plug 'junegunn/fzf', { 'do': { -> fzf#install() } }
|
|
Plug 'junegunn/fzf.vim'
|
|
|
|
" ── Git ──────────────────────────────────────────────────────────────────────
|
|
Plug 'tpope/vim-fugitive'
|
|
Plug 'airblade/vim-gitgutter'
|
|
|
|
" ── Editing ──────────────────────────────────────────────────────────────────
|
|
Plug 'tpope/vim-surround'
|
|
Plug 'tpope/vim-commentary'
|
|
Plug 'tpope/vim-repeat'
|
|
Plug 'tpope/vim-sleuth'
|
|
Plug 'wellle/targets.vim'
|
|
Plug 'jiangmiao/auto-pairs'
|
|
Plug 'easymotion/vim-easymotion', { 'on': '<Plug>(easymotion' }
|
|
|
|
" ── Linting & Formatting ────────────────────────────────────────────────────
|
|
Plug 'dense-analysis/ale'
|
|
|
|
" ── LSP + Completion ─────────────────────────────────────────────────────────
|
|
Plug 'prabirshrestha/vim-lsp'
|
|
Plug 'mattn/vim-lsp-settings'
|
|
Plug 'prabirshrestha/asyncomplete.vim'
|
|
Plug 'prabirshrestha/asyncomplete-lsp.vim'
|
|
|
|
" ── Language Syntax ──────────────────────────────────────────────────────────
|
|
Plug 'pangloss/vim-javascript', { 'for': ['javascript', 'javascript.jsx'] }
|
|
Plug 'HerringtonDarkholme/yats.vim', { 'for': ['typescript', 'typescript.tsx'] }
|
|
Plug 'preservim/vim-markdown', { 'for': 'markdown' }
|
|
Plug 'fatih/vim-go', { 'for': 'go' }
|
|
|
|
" ── UI ───────────────────────────────────────────────────────────────────────
|
|
Plug 'mbbill/undotree', { 'on': 'UndotreeToggle' }
|
|
Plug 'mhinz/vim-startify'
|
|
Plug 'lifepillar/vim-solarized8'
|
|
Plug 'christoomey/vim-tmux-navigator'
|
|
|
|
call plug#end()
|