Update vimrc

This commit is contained in:
Nirmal Kumar R
2024-07-26 12:09:24 +05:30
parent df06c303d6
commit 00a87122c7

51
vimrc
View File

@@ -1,23 +1,40 @@
syntax on
set background=dark
set laststatus=2
set t_Co=256
set encoding=utf-8
set shiftwidth=4
set tabstop=4
set expandtab
set smarttab
set autoindent
filetype on
set number
set ruler
set mouse=a
set noswapfile
autocmd FileType c setlocal shiftwidth=4 softtabstop=4 expandtab
" enable filetype detection:
filetype on
filetype plugin on
filetype indent on " file type based indentation
" copy-paste
noremap <Leader>y "*y
noremap <Leader>p "*p
noremap <Leader>Y "+y
noremap <Leader>P "+p
" for C-like programming where comments have explicit end
" characters, if starting a new line in the middle of a comment automatically
" insert the comment leader characters:
autocmd FileType c,cpp set formatoptions+=ro
autocmd FileType c set omnifunc=ccomplete#Complete
" fixed indentation should be OK for XML and CSS. People have fast internet
" anyway. Indentation set to 2.
autocmd FileType html,xhtml,css,xml,xslt set shiftwidth=2 softtabstop=2
" two space indentation for some files
autocmd FileType vim,lua,nginx set shiftwidth=2 softtabstop=2
" for CSS, also have things in braces indented:
autocmd FileType css set omnifunc=csscomplete#CompleteCSS
" add completion for xHTML
autocmd FileType xhtml,html set omnifunc=htmlcomplete#CompleteTags
" add completion for XML
autocmd FileType xml set omnifunc=xmlcomplete#CompleteTags
" in makefiles, don't expand tabs to spaces, since actual tab characters are
" needed, and have indentation at 8 chars to be sure that all indents are tabs
" (despite the mappings later):
autocmd FileType make set noexpandtab shiftwidth=8 softtabstop=0
" ensure normal tabs in assembly files
" and set to NASM syntax highlighting
autocmd FileType asm set noexpandtab shiftwidth=8 softtabstop=0 syntax=nasm