文档章节

[VimPlugin]代码修正Tag

f4f
 f4f
发布于 2015/02/19 20:20
字数 550
阅读 120
收藏 2
Vim

修正代码时,一般需要对修正的部分做个标示,即修正Tag。

修正Tag还有什么用呢?因为有固定的格式,所以也可以用来统计变更代码的行数。当然,统计代码行数就不是简单的插入一个Snippet了。

标示修正部分 标示修正部分

统计代码行数 统计代码行数

使用说明

  • \ta:在光标所在行插入一个追加代码区域。
  • \tc:变更选中区域。
  • \td:删除选中区域。
  • \tm:统计选中区域的代码行数。
  • \tu:更新当前文件中各个追加代码区域、变更代码区域、删除代码区域的行数。只对关键字符合设定的区域进行更新。
  • \tt:生成用于抽出所有变更区域的bash命令和vi脚本。
  • \ts:运行\tt生成的bash命令后会生成一个结果文件,打开结果文件后用这个命令可以对所有文件的变更代码进行统计求和。
  • \to:同意选中区域的变更代码。选中整个文件再用这个命令可以去掉修正Tag。
  • \tn:否决选中区域的变更代码。选中整个文件再用这个命令可以还原成原始代码。

设定说明

  • 项目关键字s:tag_key1,s:tag_key2,s:tag_key3

    如果关键字不足3个,s:tag_key2和s:tag_key3可以设置为空字符串

  • 修正原因s:tag_allowr,s:tag_reason

    如果s:tag_allowr设为1,会要求用户输入修正原因,修正原因的默认值为s:tag_reason,修正原因会出现在关键字的下一行

  • 编译选项s:tag_mode,s:tag_co

    如果s:tag_mode设为1,则追加部分也会包在#if...#endif之间。

    s:tag_co不为空,且s:tag_mode为1时,不会采用#if 0和#if 1,而会采用#ifdef s:tag_co和#ifndef s:tag_co

  • 姓名s:tag_user

  • 日期格式s:tag_timef

  • 分隔符号s:tag_sep

    关键字左右的字符

  • 修正Tag开始/结束标示s:tag_start,s:tag_end

  • 注释开始/结束标示s:cmt_start,s:cmt_end

    如果要采用//形式的注释,可以把s:cmt_start设成//,把s:cmt_end设成空

插件的代码ModifyTag.vim

© 著作权归作者所有

共有 人打赏支持
f4f

f4f

粉丝 1
博文 10
码字总数 8952
作品 0
武汉
项目经理
OpenBLAS 0.2.10 版本发布

OpenBLAS 0.2.10版本发布,争取做到每月更新一个版本。 主要变动如下: 增加若干BLAS扩展函数 增加NO_AVX2选项,可以支持旧的binutils 修正在最新的x86处理器上的若干优化代码bug 提高了ARM...

xianyi
2014/07/17
1K
1
Walle 0.8.5 发布,上线部署系统瓦力

Walle - 瓦力 是一个支持svn、git、多用户、多项目、多环境同时部署的上线部署系统。 相比jenkins其项目配置更简单、回滚快速、权限分级、用户分组功能更完善;UI界面更优雅,用户体验更人性...

wushuiyong
2015/11/14
2.9K
11
Cocos2d-x开发实例:使用Lambda 表达式

在Cocos2d-x 3.0之后提供了对C++11标准[1]的支持,其中的Lambda[2]表达式使用起来非常简洁。我们可以使用Lambda表达式重构上一节的实例。 我们可以将下面的代码: [html] view plaincopy li...

智捷课堂
2014/07/26
0
0
OpenBLAS 0.2.7 版本发布

2013年7月20日 发布OpenBLAS 0.2.7版本。 具体请参考发布页 https://github.com/xianyi/OpenBLAS/releases/tag/v0.2.7 主要更新如下 优化AMD Bulldozer的BLAS3级和部分1,2级函数 (未优化)...

xianyi
2013/07/23
1K
6
Walle 1.1.0正式版发布,上线部署系统

Walle 1.1.0正式版发布。 Walle - 瓦力 是一个支持svn、git、多用户、多项目、多环境同时部署的上线部署系统。 相比jenkins其项目配置更简单、回滚快速、权限分级、用户分组功能更完善;UI界...

wushuiyong
2016/03/24
5.6K
12

没有更多内容

加载失败,请刷新页面

加载更多

linux使用ntfs-3g操作ntfs格式硬盘

Linux内核目前只支持对微软NTFS文件系统的读取。 NTFS-3G 是微软 NTFS 文件系统的一个开源实现,同时支持读和写。NTFS-3G 开发者使用 FUSE 文件系统来辅助开发,同时对可移植性有益。 安装 ...

linuxprobe16
今天
1
0
kubeadm部署kubernetes集群

一、环境要求 这里使用RHEL7.5 master、etcd:192.168.10.101,主机名:master node1:192.168.10.103,主机名:node1 node2:192.168.10.104,主机名:node2 所有机子能基于主机名通信,编辑...

人在艹木中
今天
10
0
Shell特殊符号总结以及cut,sort,wc,uniq,tee,tr,split命令

特殊符号总结一 * 任意个任意字符 ? 任意一个字符 # 注释字符 \ 脱义字符 | 管道符 # #号后的备注被忽略[root@centos01 ~]# ls a.txt # 备注 a.txt[root@centos01 ~]# a=1[root@centos01...

野雪球
今天
3
0
OSChina 周二乱弹 —— 程序员圣衣

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @达尔文:分享Skeeter Davis的单曲《The End of the World》 《The End of the World》- Skeeter Davis 手机党少年们想听歌,请使劲儿戳(这里...

小小编辑
今天
20
2
[ python import module ] 导入模块

import moudle_name ----> import module_name.py ---> import module_name.py文件路径 -----> sys.path (这里进行查找文件) # from app.web import Personimport app.web.Person as Pe......

_______-
昨天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部