分享

IC 脚本之VIM 记录-CSDN博客

 jacklopy 2024-11-14

许嵩66 已于 2024-11-13 14:07:49 修改
阅读量140 收藏
点赞数 2
文章标签: vim 编辑器 linux
于 2024-11-13 10:22:55 首次发布
版权声明:本文为博主原创文章,遵循 CC 4.0 BY 版权协议,转载请附上原文出处链接和本声明。

1. 对于代码中空格与tab相互转换的可通过如下实现:

  1. set tabstop = 4
  2. set expandtab
  3. %retab ! 以上三行命令即可实现将代码中每四个空格用一个tab来缩进。
  4. set tabstop =4
  5. set noexpandtab
  6. %retab ! 以上三行命令即可实现将代码中的每个tab用四个空格来实现
  7. tab相关参数
  8. set shiftwidth=4 #换行自动变成空格
  9. set autoindent #设置自动缩进,当你在第一行敲击 tab + conten, 当回车第二行开始编辑器默认增加一个tab

2 使用vim 批处理文本 

  1. setp1 : 创建一个包含所需执行vim 命令 集合的文本 test.scr
  2. step2 : vim -es -S test.scr file1 file2 ; 这样便可以对test.scr中的命令对file1 file2 分别执行。
  3. note: test.scr最后一行添加 :wq 保证运行结束后自动保持退出。

3.vim 的autocmd命令

  1. autocmd FileType makefile,tck,python set noexpandtab # 对特定文件不展开tab
  2. autocmd BufWritePre makefile :%s/\s*$//g<CR> # 默认去除makefile最后空格。

4. 自定义快捷键

  1. nmap jj <Esc>
  2. inmap jj <Esc>
  3. map <C-s> <Esc>:w<CR> # ctrl-s save
  4. imap <C-s> <Esc>:w<CR> # ctrl-s save
  5. imap <C-S> <Esc>:w<CR> # ctrl-s save
  6. map <C-q> <Esc>:wq<CR> # 退出
  7. map <S-Tab> <Esc>:<<CR> # 绘图tab
  8. mpa <Tab> <Esc>:s/^/\t/g<CR> # 增加tab
  9. map <C-n> <Esc>:tabnew ./ <CR> # 新建
  10. map <C-a> <Esc>ggvG # 全选
  11. map <C-m> <Esc>:et mouse=c<CR>
  12. map <C-f> <Esc>/
  13. map <C-y> <Esc>:tabf ./<CR>
  14. map <C-f> <Esc>/ # 寻找
  15. map <C-r> <Esc>:%s/ #全局替换
  16. vmap <C-r> :s/ #部分替换

5. vim 正则

  1. vim 元字符
  2. \ 元字符转义
  3. ^ 字符串开始位置
  4. $ 字符串结束位置
  5. * 0~∞ 次
  6. . 任意一个字符
  7. \{m,n} 次数匹配
  8. \( \) 分组
  9. \| 或
  10. \? 0~1
  11. \+ 1~∞
  12. 高阶用法:
  13. \< \>单词左边界以及有边界
  14. \{-1,} 非贪婪匹配

6. 命令

  1. 获取匹配字段的个数:
  2. %s/pattern//gn
文章知识点与官方知识档案匹配,可进一步学习相关知识
CS入门技能树Linux入门初识Linux43586 人正在系统学习中

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约