【随笔】分享个人vim的配置 <.vimrc>

个人vim配置

由于插件配置复杂,这里就被我删减了,只留下一些操作上的配置,直接复制到 ~/.vimrc(没有就自己新建)
JetBrains家很多IDE都支持vim插件而且很完美,一般在Windows中ideavim插件的配置文件是 C:\Users\Administrator.ideavimrc, 配置内容跟Linux上.vimrc一样就可以了

"""""""""""""""""""""""通用配置""""""""""""""""""""""""""""""""

" 取消高亮
noremap fnl :nohl<CR>

" 转换大小写
noremap ss ~
noremap sx guw
noremap sd gUw

" 自增
noremap sa <C-a>

" 光标移动
noremap j h
noremap i k
noremap k j
noremap I 4k
noremap K 4j
noremap L $
noremap J 0

" 文件处理
noremap S :w<CR>
noremap Q :q<CR>
noremap R :source ~/.vimrc<CR>
noremap zz :q<CR>

" 搜索结果的浏览
noremap = nzz
noremap - Nzz

" 分屏相关操作 
map si :set splitbelow<CR>:split<CR>
map sk :set nosplitbelow<CR>:split<CR>
map sj :set splitright<CR>:vsplit<CR>
map sl :set nosplitright<CR>:vsplit<CR>

"    分屏光标 
noremap qj <C-w>h
noremap ql <C-w>l
noremap qi <C-w>k
noremap qk <C-w>j

"   分屏大小
map <C-up> :res +5<CR>
map <C-down> :res -5<CR>
map <C-right> :vertical resize+5<CR>
map <C-left> :vertical resize-5<CR>

" 标签页
map tu :tabe<CR>
map tj :tabp<CR>
map tl :tabn<CR>
noremap <C-l> $
map fk :bn<CR>
map fi :bp<CR>

" 插入
inoremap fd <Esc>
vnoremap fd <Esc>
noremap h i
noremap H I
map gk o<Esc>iq        
map gi O<Esc>k
map gl a <Esc>j
map gj h <Esc>l
map go o<Esc>o

inoremap {} <Esc>A{}<Esc>i<CR>
inoremap }} <Esc>A{};<Esc>hi<CR><ESC>ko
inoremap {{ {}<Esc>i
inoremap () ()<Esc>i
inoremap (( ()
inoremap '' ''<Esc>i
inoremap "" ""<Esc>i
inoremap [] []<Esc>i
inoremap <> <><Esc>i

" 快速删除包围内的内容
noremap f" di"
noremap f( di(
noremap f{ di{


" 插入模式的光标移动
inoremap kk <Esc>o
inoremap KK <Esc>jA
inoremap jk <Esc>A;<CR>
inoremap jl <Esc>A;<Esc>
inoremap KL <Esc>A
inoremap kl <Esc>la
inoremap KJ <Esc>I
inoremap kj <Esc>i

" 光标不触底
set scrolloff=7

" 删除
noremap cl d$
noremap cj d0

" 插入注释
noremap fs A//

" 重复
noremap ff .

" 删除单词并插入
noremap cw caw

" 复制
noremap yl y$
noremap yj y0

" 返回撤销  
noremap fh <C-r>

" 缩进与反缩进
noremap fl >l
noremap fj <h

" 粘贴模式
noremap fv :set paste<cr>
noremap fnv :set nopaste<cr>

" cpp**************************************************************
" 插入开头
noremap fcpp i#include<iostream><Cr>using namespace std;<Cr><Cr>int main(){}<Esc>i<CR><CR><Esc>ki<Tab>return 0;<Esc>kkko<Esc>o
inoremap fcl class{};<Esc>hi<CR><Esc>kwi 
inoremap fcst struct{};<Esc>hi<CR><Esc>kwi 
inoremap zx ->

" 插入常用文本
inoremap fcd std::
inoremap fco std::cout << 
inoremap fci std::cin >> 
imap fcc #include <><Esc>Lh
" cpp**************************************************************

" bash script*******************************************************
	" Head
	noremap fbs i#!/bin/bash<Cr># <Cr># Progam:<Cr># <Cr># Creator:<cr>#		hsby<Cr># Hisroty:<Cr># <Esc>
	inoremap fll ${}<Esc>i
	inoremap fkl $()<Esc>i
	inoremap fzz []<Esc>i
	inoremap fkk ()<Esc>i
	inoremap skk <Esc>xxa

" bash script*******************************************************


""""""""""""""""""""""""""""""""""""""""""通用配置"""""""""""""""""""""""""""""""""""""""""""""""""""""""

posted @ 2021-04-21 00:26  汉森伯逸  阅读(255)  评论(0编辑  收藏  举报