My vimrc
来源:互联网 发布:剑三琴娘捏脸数据 编辑:程序博客网 时间:2024/05/22 04:24
My vimrc
这里是vimrc文件的更新记录,因为已经设置了根据不同文件类型使用不同配置文件的选项,具体语言的配置文件被放到了其他文章上。CPP : http://blog.csdn.net/sinat_29278271/article/details/51308245
寒假更新了一下自己的vimrc,暂且挂在博客上,避免因系统重装等不可抗力造成的意外
It is far from perfect, but more than enough !!
##目前支持
>1.F2一键设置开头,包括编辑文件时间,文件名,创建者
>2.ctrl+e退出编辑模式
>3.ctrl+a全选
>4.shift+c复制入系统剪贴板
>5.ctrl+h一键编译运行并调用codeblocks的运行窗口,CB是开源的,可以独立开发
>6.ctrl+o编译
>8.nn 打开输出窗口,即图中的out.txt
>7.ctrl+i运行,一般与8配合使用
##打算添加的功能
>1.当使用多种语言后,设置开头能分开使用
>2.注释添加快捷键
>3.CF使用时通过指令添加特定的类,如计算几何中point类,line类。
>4. 。。。。。。
##更新记录
*****************************************************************************************************************************************
今天做了一点小改动,功能没有添加多少,但是结构好看了很多,主要是为了以后方便对Java,Python等提供支持,还有就是Cpp文件SetTitle后,利用cursor()直接跳转至书写行,真的说起来还是有点意义的,没有这个功能,用键盘跳到这一行还是要摁几下的。
然后分享一个悲伤的故事,今天我刚写完SetCppTitle()的时候,我新建了一个文件测试这个功能,但是死活运行不起来,后来嫌重新打开文件麻烦,我就直接用vimrc文件进行测试,但依旧不行,还差点毁了我的配置文件。折腾了一两个小时后找到了原因,我新建的文件全名是new,vimrc全名是.vimrc,然而我的代码里有一行
if &filetype==cpp
呵呵,难怪运行不起来
2016.2.16
*****************************************************************************************************************************************
一直想添加的一键注释功能做好了,ctrl+l,在当前行已经添加注释时,该快捷键会消除注释;在当前行没有注释时,该快捷键会消除注释。这里我指的是//的注释方式,/**/的注释我想应该设计成vmap会比较合适,留待以后实现。这个注释功能配合VIM的ctrl+v列操作方式效果非常惊艳,可以根据当前行情况同时给多行添加注释或是消去多行注释。为了保证快捷键使用的正确性,我添加的注释为//#,具体理由可以看我的脚本自己思考,在我更加熟悉vim脚本语言之后也许可以做改进。
2016.2.17
*****************************************************************************************************************************************
貌似经历了挺多改动,最大的改动是讲原先在程序下方的out.txt输出窗口转移到了右侧,这很容易理解,一是写程序从从左往右写的,所以右侧往往是比较空旷的,二是平时程序的输出往往要一行一行输出,下方的窗口高度看不了多少。然后我修改了编译与运行的快捷键,原先编译是<C-o>,运行是<C-i>,后来发现这两个设置占用了VIM原先的快捷键,再后来为了高效使用离自己手近的区域,设置<C-j>运行,<C-k>编译,换了以后舒服多了。
现在vimrc应该算是比较完善了,以后可能要记录一些VIM使用的小技巧留待练习,感觉自己还是不太会使用。
处于对提供者的尊重我在iobuf后注释了来自编程菜菜,群里的一位学长。
*****************************************************************************************************************************************
新增了一个功能。
平时代码经常要用到循环语句,循环语句如果不加花括号直接使用下面对应的第一个语句。因此如果循环语句后面只有一个语句的话,通常是不写花括号的。
但是往往自己刚写下来的时候是觉得 不用写的,写到后来发现一条语句不够用,要重新添加语句并且添加花括号。
这个新增的功能就是为这种场景设定的。
快捷键是Visual mode 下的{, 在选中了一段语句后使用{键,可以给这一部分添加括号。
示意图
点击“{”
2016.3.21
*****************************************************************************************************************************************
从前看《C primer plus》的时候看到文件重定向那里就看不懂了,因为那个时候不知道linux,今天突然想起来这个功能。
然后我一般习惯在vim的一键设置头文件中加上一个
# ifndef ONLINE_JUDGE struct DesktopIO{DesktopIO(){freopen("//home//unclesugar//in.txt","r",stdin);freopen("//home//unclesugar//out.txt","w",stdout);}}DIO;# endif
这个样子就可一比较方便地控制输入输出。
不过并不是所有的OJ都会定义ONLINE_JUDGE,比如清华MOOC的OJ定义的_OJ_。
也是因此,每次提交到清华的OJ时我都要修改一下提交文件。
现在这个问题解决掉啦。
使用编译时的输入输出重定向,我可以将运行指令写成这样
< 的意思是从in.txt文件读入
> 的意思是从out.txt文件输出
剩下的工作就简单了,修改vim配置文件中的命令就可以了。
这样做还有另一个好处,我的设置一直是
<C-H>调用codeblocks的执行窗口,但每次都要注释掉重定向内容
现在
<C-H>是调用codeblocks的执行窗口,数据由自己输入。
<C-J>是文件读取输出
感觉充分利用了两个快捷键
用Vim真是一件开心的事。
2016.3.22
*****************************************************************************************************************************************
终于我的vim要承担起多种编辑语言的责任的,原来的C++,后来的Python,接下来的Latex
虽然Latex貌似比较健全的IE会比较好,不过我最近写CSDN的博客的时候都巴不得使用vim
SO,
还是在vimrc上留下了他们的位置
说一下主要的改动吧
因为要支持多个语言,所以设置了根据不同头文件载入不同配置文件的功能,这样一来整个文件就清爽多了,也方便我以后添加其他的编程语言。
同时添加了一个根据不同语言建立输入的in文件和输出的out文件的自动命令。
本来已经设置好了在退出in文件,及out文件时自动删除的功能,但是后来发现会出现一些不太好的提示,所以将这些注释掉了,有空再研究。
以后这篇博客继续写我的更新记录,
不同语言的头文件会分开写记录。
2016.5.3
*****************************************************************************************************************************************
##.vimrc正文
- my vimrc
- my .vimrc
- my vimrc
- my vimrc
- my vimrc
- my .vimrc
- my vimrc
- my vimrc
- My vimrc
- My vimrc...
- my vimrc
- my vimrc
- My vimrc
- my vimrc
- my vimrc 配置
- My customization .vimrc
- My vimrc file
- My Vimrc Archive
- 自动改变字体以适应label宽度
- Java calendar的使用
- eclipse中的汉字横着显示,或显示不正确,字体大小颜色设置
- AndroidAsync :基于nio的异步通信库
- Hadoop上路_05-HDFS中的文件操作
- My vimrc
- c# list 用法
- 通讯录右侧的字母条及其点击事件
- CountDownLatch
- Linux常用命令之二
- Android 系统上一款开源的图表库
- 字符串、向量和数组
- IOS-关于IAP:苹果的审核规则发生了一点变化--没有“Restore”将会被拒
- Android HAL实例解析