vim自定义设置

       可以选择需要的功能添加至 ~/.vimrc 打开注释使之生效。

  1. " 让 vim 关闭所有扩展的功能,尽量模拟 vi 的行为。
  2. set nocompatible
  3. " 默认是8色的,开启256色支持
  4. set t_Co=256
  5. " 突出显示当前行,即横线
  6. set cursorline
  7. " 隐藏工具栏
  8. set guioptions-=T
  9. " 隐藏菜单栏
  10. set guioptions-=m
  11. " 设置在状态行显示的信息
  12. set foldcolumn=0
  13. " 不要使用vi的键盘模式,而是vim自己的
  14. set nocompatible
  15. " 语法高亮
  16. set syntax=on
  17. " 去掉输入错误的提示声音
  18. set noeb
  19. " Tab键的宽度
  20. set tabstop=4
  21. " 统一缩进为4
  22. set softtabstop=4
  23. " 历史记录数
  24. set history=1000
  25. " 禁止生成临时文件
  26. set nobackup
  27. " 禁止生成临时文件
  28. set noswapfile
  29. " 搜索忽略大小写
  30. set ignorecase
  31. " 搜索逐字符高亮
  32. set hlsearch
  33. " 输入搜索内容时就显示搜索结果
  34. set incsearch
  35. " 高亮显示匹配的括号
  36. set showmatch
  37. " 匹配括号高亮的时间(单位是十分之一秒)
  38. set matchtime=1
  39. " 光标移动到buffer的顶部和底部时保持3行距离
  40. set scrolloff=3
  41. " 输入的命令显示出来,看的清楚些
  42. set showcmd
  43. " 打开状态栏标尺
  44. set ruler
  45. " filetype on
  46. " 开始折叠
  47. " set foldenable
  48. " 显示行号
  49. " set number
  50. " 通过使用: commands命令,告诉我们文件的哪一行被改变过
  51. " set report=0
  52. " 设置魔术
  53. " set magic
  54. " 设置当文件被改动时自动载入
  55. " set autoread
  56. " 代码补全
  57. " set completeopt=preview,menu
  58. " 允许插件
  59. " filetype plugin on
  60. " 共享剪贴板
  61. " set clipboard=unnamed
  62. " 从不备份
  63. " set nobackup
  64. " make 运行
  65. " set makeprg=g++\ -Wall\ \ %
  66. " 自动保存
  67. " set autowrite
  68. " set foldmethod=indent
  69. " set foldlevel=3
  70. " 在处理未保存或只读文件的时候,弹出确认
  71. " set confirm
  72. " 自动缩进
  73. " set autoindent
  74. " set cindent
  75. " 把tabs转换成空格
  76. " set shiftwidth=4
  77. " 不要用空格代替制表符
  78. " set noexpandtab
  79. " 在行和段开始处使用制表符
  80. " set smarttab
  81. " 行内替换
  82. " set gdefault
  83. " 为C程序提供自动缩进
  84. " set smartindent
  85. " 可以在buffer的任何地方使用鼠标(类似office中在工作区双击鼠标定位,鼠标选择)
  86. " set mouse=a
  87. " 为了使代码风格尽量保持一致,一般不允许在代码使用TAB符,而以4个空格代之。如下只在编辑c和cpp文件时实行这种设置了
  88. " autocmd FileType c,cpp set shiftwidth=4 | set expandtab
  89. " 在被分割的窗口间显示空白,便于阅读
  90. " set fillchars=vert:\ ,stl:\ ,stlnc:\
  91. " 允许backspace和光标键跨越行边界,方向键自动换行
  92. " set whichwrap+=<,>,h,l
  93. " 我的状态行显示的内容(包括文件类型和解码)
  94. " set statusline=%F%m%r%h%w\ [FORMAT=%{&ff}]\ [TYPE=%Y]\ [POS=%l,%v][%p%%]\ %{strftime(\"%d/%m/%y\ -\ %H:%M\")}
  95. " set statusline=[%F]%y%r%m%*%=[Line:%l/%L,Column:%c][%p%%]
  96. " 总是显示状态行
  97. " set laststatus=2
  98. " 命令行(在状态行下)的高度,默认为1,这里是2
  99. " set cmdheight=2
  100. " 状态栏定义
  101. " set statusline=\ %<%F[%1*%M%*%n%R%H]%=\ %y\ %0(%{&fileformat}\ %{&encoding}\ %c:%l/%L%)\
  102. " 映射全选+复制 ctrl+a
  103. map <C-A> ggVGY
  104. " 选中状态下 Ctrl+c 复制
  105. vmap <C-c> "+y
  106. "新建.c,.h,.sh,.java文件,自动插入文件头
  107. autocmd BufNewFile *.cpp,*.[ch],*.sh,*.java exec ":call SetTitle()"
  108. func SetTitle()
  109. if &filetype == 'sh'
  110. call setline(1, "#!/bin/bash")
  111. call append(line("."), "# File Name: ".expand("%"))
  112. call append(line(".")+1, "# Intro: *****")
  113. call append(line(".")+2, "# mail: *****@163.com")
  114. call append(line(".")+3, "# Created Time: ".strftime("%c"))
  115. call append(line(".")+4, "#-------------------------------")
  116. call append(line(".")+5, "")
  117. else
  118. call setline(1, "/*************************************************************************")
  119. call append(line("."), " > File Name: ".expand("%"))
  120. call append(line(".")+1, " > Intro: *****")
  121. call append(line(".")+2, " > Mail: *****@163.com")
  122. call append(line(".")+3, " > Created Time: ".strftime("%c"))
  123. call append(line(".")+4, " ************************************************************************/")
  124. call append(line(".")+5, "")
  125. endif
  126. if &filetype == 'cpp'
  127. call append(line(".")+6, "#include<iostream>")
  128. call append(line(".")+7, "using namespace std;")
  129. call append(line(".")+8, "")
  130. endif
  131. if &filetype == 'c'
  132. call append(line(".")+6, "#include<stdio.h>")
  133. call append(line(".")+7, "")
  134. endif
  135. endfunc
  136. " 新建文件后,自动定位到文件末尾
  137. autocmd BufNewFile * normal G

VIM编辑器进阶配置的更多相关文章

  1. vim编辑器常规配置

    为了很舒服的编写程序,请把vim配置好 # apt install vim    安装vim编辑器 #sudo vim /etc/vim/vimrc   ///必须加上权限sudo 在这个文件中,会有 ...

  2. Linux学习Day5:Vim编辑器、配置网卡、配置Yum软件仓库

    今天首先学习Vim编辑器的使用,通过它可以对Linux系统的文件进行编写和修改.在Linux系统中一切都是文件,所以熟练掌握Vim编辑器的使用十分重要.最后通过配置主机网卡的实验,来加深Vim编辑器中 ...

  3. Centos下Vim编辑器基本配置

    设置 Vim编辑环境 配置 有两种方式: 1,是在/etc/vimrc 进行设置,这种设置方法会作用与所有登录到Linux环境下的用户.不建议使用. 2,在用户登录的 ~ 目录下创建一个 .vimrc ...

  4. vim编辑器编程配置

    打开/etc/vim/vimrc 添加命令: set cindent  "使用C样式的缩进 syntax on   "语法高亮 set tabstop=4 set softtabs ...

  5. 四、vim 编辑器

    vim编辑器 -rw-r--r--. 1 root root 1982 8月 2 2017 /etc/virc vi 配置文件 -rw-r--r--. 1 root root 1982 8月 2 20 ...

  6. Linux就该这么学——初识vim编辑器

    在Linux系统中一切都是文件,而配置一个服务就是在修改其配置文件的参数 初识Vim编辑器 Vim编辑器顾名思义就是用来编写脚本程序的”记事本” Vim编辑器模式 : 命令模式 : 控制光标移动,可对 ...

  7. 定制你自己的vim编辑器

    今天定制了一下自己的vim编辑器,效果嘛,谁用谁知道!话不多说,直奔主题.vim编辑器的配置都在/etc/vimrc文件中. #vim /etc/vimrc 打开配置文件,在尾部添加如下的,不是全都必 ...

  8. 【Linux 操作系统】vim编辑器配置及常用命令

    最近工作不安分, 没有了刚入行时候的锐气, 不知道什么时候开始懈怠起来, 周末在电脑旁边看新闻, 搞笑图片, 追美剧, 一坐就是一天, 很是空虚. 我需要摆脱这种状态, 正好想学习一下安卓底层, An ...

  9. 第6天【egrep、bash环境配置及脚本、vim编辑器】

    bash环境配置及脚本(02)_recv bash环境配置及脚本(02)_recv bash环境配置文件: 按生效范围划分,存在两类: 全局配置: /etc/profile /etc/bashrc 个 ...

随机推荐

  1. bat 笔记

    cmd删除非空文件夹 rd+空格+/s/q+空格+d:\filedir for语句的基本用法 在批处理文件中: FOR %%variable IN (command1) DO command2 [co ...

  2. winserver 2008 找不到回收站的解决办法

    桌面新建文件夹,命名为 “回收站.{645ff040-5081-101b-9f08-00aa002f954e}”,就可以了.

  3. Cocos2d-x在Windows平台环境的搭建

    |   版权声明:本文为博主原创文章,未经博主允许不得转载. windows平台下配置Cocos2d-X引擎所需的压缩文件和可执行文件,如下: 下载链接: adt:    http://tools.a ...

  4. 洛谷 P2023 维护序列——线段树

    先上一波题目 https://www.luogu.org/problem/P2023 复习了一波线段树 题目涉及的操作有区间加 区间乘以及区间求和 tips:线段树在传标记的时候 优先传乘法标记再传加 ...

  5. CSS3 新特性(box-sizing盒模型,背景线性渐变,filter滤镜,calc函数,transition过渡)

    1.盒子模型(box-sizing) CSS3 中可以通过 box-sizing 来指定盒模型,有两个值:即可指定为 content-box.border-box,这样我们计算盒子大小的方式就发生了改 ...

  6. AMS5601的ardunio和STM32驱动开发

    AMS5601的ardunio和STM32驱动开发 本文有麦粒电子撰写,并提供相应产品服务. 前言 目前ams关于磁编码芯片用的比较多的可能是ams5600,能够输出pwm信号,电压信号以及I2C通信 ...

  7. Android jniLibs下目录详解(.so文件)

    http://www.jianshu.com/p/b758e36ae9b5 最近又研究了一下,参考了一下:三星/联发科等处理器规格表 更新时间:2017年5月手机CPU架构体系分类及各大厂商 PS:我 ...

  8. 一篇不一样的Android屏幕适配具体做法(原创)

    转载请注明出处(http://www.cnblogs.com/weizhxa/p/7568090.html ) 有不正确,还请大家留言修正! 1.何谓屏幕适配:在任何设备上看起来布局都是近似的,细分也 ...

  9. java如何生成一个0-100的随机整数?

    public class Test {public static void main(String[] args) {int num=(int)(Math.random()*101);System.o ...

  10. js关闭当前窗口的几种方法

    第一种:不带任何提示关闭窗口的js代码 <a href="javascript:window.opener=null;window.open('','_self');window.cl ...