Add setup script
This commit is contained in:
112
.vimrc
112
.vimrc
@@ -1,53 +1,93 @@
|
||||
" ========================================
|
||||
" Basic Vim configuration for Debian/Ubuntu
|
||||
" Maintainer: Your Name
|
||||
" Date: 2025-09-23
|
||||
" ========================================
|
||||
|
||||
" An example for a vimrc file.
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last change: 2019 Dec 17
|
||||
"
|
||||
" To use it, copy it to
|
||||
" for Unix: ~/.vimrc
|
||||
" for Amiga: s:.vimrc
|
||||
" for MS-Windows: $VIM\_vimrc
|
||||
" for Haiku: ~/config/settings/vim/vimrc
|
||||
" for OpenVMS: sys$login:.vimrc
|
||||
|
||||
" When started as "evim", evim.vim will already have done these settings, bail
|
||||
" out.
|
||||
" Bail out if running as evim
|
||||
if v:progname =~? "evim"
|
||||
finish
|
||||
endif
|
||||
|
||||
" Get the defaults that most users want.
|
||||
" Load Vim defaults
|
||||
source $VIMRUNTIME/defaults.vim
|
||||
|
||||
if has("vms")
|
||||
set nobackup " do not keep a backup file, use versions instead
|
||||
else
|
||||
set backup " keep a backup file (restore to previous version)
|
||||
if has('persistent_undo')
|
||||
set undofile " keep an undo file (undo changes after closing)
|
||||
endif
|
||||
" ----------------------------
|
||||
" Swap, backup, and undo setup
|
||||
" ----------------------------
|
||||
" Directories for swap, backup, and undo files
|
||||
let s:vim_dir = $HOME . '/.vim'
|
||||
let &directory = s:vim_dir . '/swap//'
|
||||
let &backupdir = s:vim_dir . '/backup//'
|
||||
let &undodir = s:vim_dir . '/undo//'
|
||||
|
||||
" Create directories if they don't exist
|
||||
if !isdirectory(s:vim_dir . '/swap')
|
||||
call mkdir(s:vim_dir . '/swap', 'p')
|
||||
endif
|
||||
if !isdirectory(s:vim_dir . '/backup')
|
||||
call mkdir(s:vim_dir . '/backup', 'p')
|
||||
endif
|
||||
if !isdirectory(s:vim_dir . '/undo')
|
||||
call mkdir(s:vim_dir . '/undo', 'p')
|
||||
endif
|
||||
|
||||
if &t_Co > 2 || has("gui_running")
|
||||
" Switch on highlighting the last used search pattern.
|
||||
set hlsearch
|
||||
endif
|
||||
" Enable swap, backup, and persistent undo
|
||||
set swapfile
|
||||
set backup
|
||||
set undofile
|
||||
|
||||
" Put these in an autocmd group, so that we can delete them easily.
|
||||
" ----------------------------
|
||||
" Visual & editing enhancements
|
||||
" ----------------------------
|
||||
" Line numbers and cursor line
|
||||
set number
|
||||
set cursorline
|
||||
|
||||
" Highlight search matches
|
||||
set hlsearch
|
||||
set incsearch
|
||||
|
||||
" Matching brackets/parentheses
|
||||
set showmatch
|
||||
|
||||
" Tabs and indentation
|
||||
set tabstop=4
|
||||
set shiftwidth=4
|
||||
set expandtab
|
||||
|
||||
" Syntax highlighting and colors
|
||||
syntax on
|
||||
set termguicolors
|
||||
set background=dark
|
||||
|
||||
" Command history
|
||||
set history=1000
|
||||
set viminfo='1000,<1000,s100
|
||||
|
||||
" Search case handling
|
||||
set ignorecase
|
||||
set smartcase
|
||||
|
||||
" Enable mouse support
|
||||
set mouse=a
|
||||
|
||||
" ----------------------------
|
||||
" Filetype-specific settings
|
||||
" ----------------------------
|
||||
augroup vimrcEx
|
||||
au!
|
||||
|
||||
" For all text files set 'textwidth' to 78 characters.
|
||||
autocmd!
|
||||
" Text files: wrap at 78 characters
|
||||
autocmd FileType text setlocal textwidth=78
|
||||
augroup END
|
||||
|
||||
" Add optional packages.
|
||||
"
|
||||
" The matchit plugin makes the % command work better, but it is not backwards
|
||||
" compatible.
|
||||
" The ! means the package won't be loaded right away but when plugins are
|
||||
" loaded during initialization.
|
||||
" ----------------------------
|
||||
" Optional plugins
|
||||
" ----------------------------
|
||||
" matchit: improves % for matching tags/brackets
|
||||
if has('syntax') && has('eval')
|
||||
packadd! matchit
|
||||
endif
|
||||
|
||||
" Done
|
||||
|
||||
|
||||
Reference in New Issue
Block a user