Linux下配置属于自己的vim编辑器
2015-09-17 21:04
507 查看
vim的配置:
为了解决每次打开vim都需要进行一些set操作,接下来需要进行vim的配置。
配置的文件一个是/etc/vim/vimrc,由于这是系统级别的,修改之后会影响其他用户的操作,所以一般是修改~/.vimrc文件,只对自己当前的用户产生作用,不会影响到其他用户。
下面图片是配好的vim窗口,如果有需要可以下载。
下载网址:
https://github.com/hearbeat/share.git
将下载的.vim文件夹与.vimrc文件同时放到home目录(家目录)下即可使用,有问题请留言。
下面是一些常用的vim脚本,如果需要更详细的可以百度一大把,不过我想这已经足够了。
"启动的时候不显示那个援助乌干达儿童的提示 set shortmess=atI
"映射全选+复制 ctrl+a map <C-A> ggVGY
map! <C-A> <Esc>ggVGY
map <F12> gg=G
"选中状态下 Ctrl+c 复制 vmap <C-c> "+y
"去空行 nnoremap <F2> :g/^\s*$/d<CR>
"比较文件 nnoremap <C-F2> :vert diffsplit
"新建标签 map <M-F2> :tabnew<CR>
"列出当前目录文件 map <F3> :tabnew .<CR>
"打开树状文件目录 map <C-F3> \be
"C,C++ 按F5编译运行 map <F5> :call CompileRunGcc()<CR>
func! CompileRunGcc()
exec "w"
if &filetype == 'c'
exec "!g++ % -o %<"
exec "! ./%<"
elseif &filetype == 'cpp'
exec "!g++ % -o %<"
exec "! ./%<"
elseif &filetype == 'java'
exec "!javac %"
exec "!java %<"
elseif &filetype == 'sh'
endif
endfunc
"允许插件 filetype plugin on
"共享剪贴板 set clipboard+=unnamed
"语法高亮 set syntax=on
"去掉输入错误的提示声音 set noeb
"在处理未保存或只读文件的时候,弹出确认 set confirm
"自动缩进 set autoindent
set cindent
"Tab键的宽度 set tabstop=4
"统一缩进为4 set softtabstop=4
set shiftwidth=4
"显示行号 set number
"历史记录数 set history=1000
"搜索忽略大小写 set ignorecase
"高亮显示匹配的括号 set showmatch
"光标移动到buffer的顶部和底部时保持3行距离 set scrolloff=3
"为C程序提供自动缩进 set smartindent
"高亮显示普通txt文件(需要txt.vim脚本) au BufRead,BufNewFile * setfiletype txt
"""""""""""""""""""""""""""""CTags的设定""""""""""""""""""""""""""""
"按照名称排序 let Tlist_Sort_Type = "name"
"在右侧显示窗口 let Tlist_Use_Right_Window = 1
"不要关闭其他文件的tags let Tlist_File_Fold_Auto_Close = 0
"设置tags set tags=tags
为了解决每次打开vim都需要进行一些set操作,接下来需要进行vim的配置。
配置的文件一个是/etc/vim/vimrc,由于这是系统级别的,修改之后会影响其他用户的操作,所以一般是修改~/.vimrc文件,只对自己当前的用户产生作用,不会影响到其他用户。
下面图片是配好的vim窗口,如果有需要可以下载。
下载网址:
https://github.com/hearbeat/share.git
将下载的.vim文件夹与.vimrc文件同时放到home目录(家目录)下即可使用,有问题请留言。
下面是一些常用的vim脚本,如果需要更详细的可以百度一大把,不过我想这已经足够了。
"启动的时候不显示那个援助乌干达儿童的提示 set shortmess=atI
"映射全选+复制 ctrl+a map <C-A> ggVGY
map! <C-A> <Esc>ggVGY
map <F12> gg=G
"选中状态下 Ctrl+c 复制 vmap <C-c> "+y
"去空行 nnoremap <F2> :g/^\s*$/d<CR>
"比较文件 nnoremap <C-F2> :vert diffsplit
"新建标签 map <M-F2> :tabnew<CR>
"列出当前目录文件 map <F3> :tabnew .<CR>
"打开树状文件目录 map <C-F3> \be
"C,C++ 按F5编译运行 map <F5> :call CompileRunGcc()<CR>
func! CompileRunGcc()
exec "w"
if &filetype == 'c'
exec "!g++ % -o %<"
exec "! ./%<"
elseif &filetype == 'cpp'
exec "!g++ % -o %<"
exec "! ./%<"
elseif &filetype == 'java'
exec "!javac %"
exec "!java %<"
elseif &filetype == 'sh'
endif
endfunc
"允许插件 filetype plugin on
"共享剪贴板 set clipboard+=unnamed
"语法高亮 set syntax=on
"去掉输入错误的提示声音 set noeb
"在处理未保存或只读文件的时候,弹出确认 set confirm
"自动缩进 set autoindent
set cindent
"Tab键的宽度 set tabstop=4
"统一缩进为4 set softtabstop=4
set shiftwidth=4
"显示行号 set number
"历史记录数 set history=1000
"搜索忽略大小写 set ignorecase
"高亮显示匹配的括号 set showmatch
"光标移动到buffer的顶部和底部时保持3行距离 set scrolloff=3
"为C程序提供自动缩进 set smartindent
"高亮显示普通txt文件(需要txt.vim脚本) au BufRead,BufNewFile * setfiletype txt
"""""""""""""""""""""""""""""CTags的设定""""""""""""""""""""""""""""
"按照名称排序 let Tlist_Sort_Type = "name"
"在右侧显示窗口 let Tlist_Use_Right_Window = 1
"不要关闭其他文件的tags let Tlist_File_Fold_Auto_Close = 0
"设置tags set tags=tags
相关文章推荐
- Linux 3.2中回写机制的变革
- Linux 查看端口占用并杀掉
- linux找不到动态链接库 .so文件的解决方法
- Linux 内核的测试和调试
- Linux用户态定时器用法以及犯错总结
- 通过inotify监控linux文件系统变化
- linux FTP 搭建
- Linux下的串口编程
- Linux命令行与图形界面切换方法
- Linux中select poll和epoll的区别
- Linux/UNIX先进I/O
- linux find命令
- Linux的常用部分指令
- 换成linux mint了
- Linux常用命令
- linux中文件描述符fd和文件指针flip的理解
- 读书笔记--鸟哥的linux_1
- crontab命令 :Linux下定时执行脚本
- CentOS 7 U盘安装解决找不到U盘问题
- 解析Linux内核获取当前进程指针的方法