Emacs,Vim操作技巧记录

【Emacs】

GNU Emacs - GNU Projecticon-default.png?t=N7T8https://www.gnu.org/software/emacs/注:C=ctrl,M=alt;

把tab自动替换成空格

执行步骤:

  1. ctrl+x,等一下再按+h
  2. M-x untabify

全选;

然后,调untabify命令,就把tab全换成空格了。当然,emacs还有一个逆操作命令tabify, 能全部换回去。


【Vim】【gvim】

welcome home : vim onlineicon-default.png?t=N7T8https://www.vim.org/

gvim 找到或者删除重复行

gvim 是一个非常流行的文本编辑器,你可以使用它来查找重复行。下面是一些步骤:

  1. 打开要编辑的文件。

  2. 进入命令模式,输入以下命令:

    :sort u

    这个命令将排序并删除所有重复的行。

  3. 如果你想查看哪些行已经被删除,可以输入以下命令:

    :sort

    这将对文件进行排序,但不会删除重复的行。

  4. 如果你只想查找重复的行而不删除它们,可以输入以下命令:

    :g/^.$/matchadd(‘Search’, '<(\w+)>_s\1’)

    这个命令将高亮显示所有的重复行。

在 Vim 中将多行合并为一行

最直观的方法是使用 Vim 可视模式,Shift + v。您只需选择要合并到一行的内容,然后按Shift + j。

每行行首或行尾插入

  •  行首添加一个字符串
    • :%s/^/xxxx
    • xxxx代表要插入的内容
    • 例如::%s/^/hello
  • 行尾添加一个字符串
    • :%s/$/xxxx
  • 解释:
    • %代表被编辑文件的每一行
    • $ 代表一行的结尾处
    • ^ 代表一行的开头处

删除每行行尾的空格

  • %s/\s+$//g
  • %s#\s\+$##g
  • 【%s】表示全文替换,【%】表示全文的意思,【#】是分隔符,等同于【/】

快捷键

  • gf——跳转到光标所在文件 go to file
  • :bf——回退至原文件 back to file
  • :bd——delete关闭当前内容并且把这个文件从buffer列表中删除
  • ctrl+o——回退至光标上一个位置,也可以回退到上一个文件
  • ctrl+i ——再次打开之前跳转的文件
  • ctrl+w+k——光标移动至分屏上方窗口
  • ctrl+w+j——光标移动至分屏下方窗口
  • v模式下移动光标,按y进行复制,按p进行粘贴。
  • :sp ./{AAA} ——分屏打开当前目录下的AAA文件

删除查找到的整行【:sort u】

总结格式就是: 范围 /匹配/ 操作 
:g/create_via/d

查找替换
:%s/ME8/ME7/g

把空格替换为换行
:%s//\r/g

把换行替换为空格
:%s/\r//g

多个内容匹配并替换
:%s#\(.*\)icc2\(.*\)_.*#\1silicon_ensemble\2.lef#g
\(.*\) —— .*表示匹配任意字符,\( 和 \) 表示转义符()
\(.*\)icc2\(.*\)_.* —— 表示匹配一行中的 icc2 和 _结尾的内容
\1silicon_ensemble\2.lef —— 表示把查找到的icc2替换成silicon_ensemble,查找到的【_和后面内容】替换成.lef
————————————————
:%s/,(\w)/, /\1/gc
注意括号前后和1前的转译符号“ \“
\w表示匹配一个任意文本。\1表示括号内匹配到的内容,还可以有2和3.
这个\1 \2… 都要和正则表达式集合()一起使用,简单的说就是:
\1表示重复正则第一个圆括号内匹配到的内容
\2表示重复正则第二个圆括号内匹配到的内容(跟上面示例一个意思)
————————————————
:346,372s/ =/[i] =/g

每行行首添加#号
:%normal I#(大写的i)

每行行尾添加;分号
:%normal A;

删除每行指定符号后面的内容
:%normal f*d$ —— 删除以 f 开始到行尾的内容,d 代表删除,$ 代表行尾

%表示当前文件的所有行,也可以指定某些行执行命令
:1,10 normal A# ——在1-10行的行尾加入#符号

删除选定内容的整行
:g//d
删除指定多行【间隔的 / 可以用 # 代替】
:35,$g/.*/d

————————————————
1、EDA工具产生的log文件具有换行符
EDA工具在一些情况下产生的log文件中,每行行尾都会有^M字样,此字样可能会造成一些脚本无法使用,如perl,python。因此我们需要将每行句尾的^M删除。^M代表着换行符。
2、Gvim:替换换行符
使用命令:%s/\r//g,在此处位置,\r表示换行符。采用替换的方式删除文件中的^M字符,而不是使用错误命令:%s/\^M//g
在%s/a/b/g命令中,表示a被b替换。g代表替换一行中的所有a字符
————————————————
 

  • 20
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值