vim config

This commit is contained in:
k0rrluna 2025-01-30 05:06:00 +03:00
parent b4512af1b1
commit 7c41f7d99c

115
vimrc Normal file
View File

@ -0,0 +1,115 @@
" ~/.vimrc - Vim Configuration File
" Enable syntax highlighting
syntax on
" Set line numbers
set number
" Enable relative line numbers
set relativenumber
" Enable auto-indentation
set autoindent
set smartindent
" Use spaces instead of tabs
set expandtab
set tabstop=4
set shiftwidth=4
set softtabstop=4
" Highlight search results
set hlsearch
" Enable incremental search
set incsearch
" Ignore case when searching (unless uppercase is used)
set ignorecase
set smartcase
" Enable mouse support
set mouse=a
" Enable clipboard support (system clipboard)
set clipboard=unnamedplus
" Show matching parentheses
set showmatch
" Show command in bottom bar
set showcmd
" Status line always visible
set laststatus=2
" Faster screen redraw
set lazyredraw
" Enable persistent undo
set undofile
set undodir=~/.vim/undo
" Set 24-bit color support
set termguicolors
" Set background to dark (adjust for light themes)
set background=dark
" Set timeout for key sequences (useful for mappings)
set timeoutlen=500
" Enable auto-completion in command mode
set wildmenu
" Don't show intro message
set shortmess+=I
" Map leader key to space
let mapleader=" "
" Quickly save file
nnoremap <leader>w :w<CR>
" Quickly quit file
nnoremap <leader>q :q<CR>
" Split navigation shortcuts
nnoremap <C-h> <C-w>h
nnoremap <C-l> <C-w>l
nnoremap <C-j> <C-w>j
nnoremap <C-k> <C-w>k
" Automatically reload file when changed externally
set autoread
autocmd FocusGained,BufEnter * checktime
" Enable file type plugins
filetype plugin indent on
" Set colorscheme (change as needed)
colorscheme desert
" Disable annoying swap files
set noswapfile
" Highlight trailing whitespace (optional)
autocmd BufRead,BufNewFile * match ErrorMsg '\s\+$'
" Open Netrw (file explorer) with leader + e
nnoremap <leader>e :Ex<CR>
" Auto-close brackets
inoremap { {}<Left>
inoremap ( ()<Left>
inoremap [ []<Left>
inoremap " ""<Left>
" Show tabs and trailing spaces visually (optional)
set list
set listchars=tab:▸\ ,trail
" Remember cursor position in files
autocmd BufReadPost * if line("'\"") > 0 && line("'\"") <= line("$") | execute "normal! g`\"" | endif