欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

关于IC工程师的VIM实际工作技巧

发布时间:2025/4/5 编程问答 29 豆豆
生活随笔 收集整理的这篇文章主要介绍了 关于IC工程师的VIM实际工作技巧 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

文章目录

  • 如何解决在中间插入序列的问题(寄存器+宏处理)
  • 如何快速跳转到开头和末尾
  • 快速高亮匹配相同单词
  • 想要选中几万行实现复制
  • PT timing path如何换行更好看
  • 采用折叠功能,更方便阅读
  • 如何在gvim里面直接打开path的文件

本篇博客记录了VIM在实际工作中积累的一些使用技巧,这些问题的积累以及解决办法,能够更好的提高工作效率,并更具有专业性。大多数vim的使用者都各行各业,目前来说,真正对于IC的人,如何更好的使用vim只有放到实际case中才会深有体会。
版权所有,请勿抄袭 CSDN:ciscomonkey。
转载请务必联系本人。

如何解决在中间插入序列的问题(寄存器+宏处理)

本问题的来源于某一天师姐询问的一个问题:
思考,如何让下面的每一行自动插入序号?

在vim里面,宏处理的意思就是采用宏录制和宏播放
宏录制可以记录当前的操作
宏录制将会对录制的操作进行重复执行. n@a代表对存储在a寄存器下宏录制播放n次

1、首先准备寄存器,让i等于0.

:let i =0

好,下面开始宏录制,注意,下面的每一次操作,一定要具备全局观,你的每一次操作,都意味着你的每次播放都会重复这样的操作。

2、开始宏录制
普通模式下,q+任意字母键,假设q+m
我们按下home键,让光标定位到句首(这样做,是为了在宏播放的时候更具有通用性)
按下e两次,代表跳转单词2个,然后按下a,代表在光标后插入。

然后输出ctrl+shift+r代表插入寄存器i,然后我们回车



3、现在ESC,回到普通模式,按下j跳到下一行。此时,我们让i+1

:let i=i+1

退出宏录制q

4、宏播放上面我们的操作即可
简单来说就是,每跳到下一行,就执行i+1的操作。

10@a

如何快速跳转到开头和末尾

gg 跳转到开头 shift+g或者G跳转到末尾

快速高亮匹配相同单词

需求:我有时候想快速的高亮一个单词,看看有没有在别的地方定义到这个变量,往往我之前是去用搜索,但是搜索很多时候会跳行,文件大了后,不仅慢,而且跳来跳去很不方便。
1、第一种解决方式选中单词双击后,按键盘shift+* 或者是小键盘的 *
2、第二种解决方式是按住键盘shift键,然后去双击鼠标左键。(这个方法很快)
但上面都是完全匹配的高亮,也就是搜索chain,并不会把chainnet搜索出来。

想要选中几万行实现复制

有时候,我们想要选中指定的行,但是想要选中的行,实在太多,比如几万行。我不可能说用鼠标一直滚滚滚。
比如,我要选中10852~267937,然后复制,我粘贴到一个新的文件当中。

10852GV267937Gy

y是复制到剪切板的意思。
如下图所示,G是是goto in的意思,输入行号,然后goto in,然后进入V可视化行模式,接着输入末尾指定行,再次进入goto in模式,此时已经选中了想要的行了。然后输入y,或者点击gvim上面的复制板即可。

PT timing path如何换行更好看

我们知道当我们用PT的时候,如果使用timing path的报告一个fanout的时候,PT全部给你显示在一行里面,你简直没法看。
注意,按end,你还会看到 ... 也就是不会显示全面。
因为all_fanout返回的是一个collection,默认display只会显示100条,我们可以用下面的cmd开启。

set collection_result_display_limit -1

但是写到rpt里面的也杂乱无章,因为会全部给你写到一行里面去。

我们可以插入换行符号,然后更好看。

set list 开启换行符等 set nolist 关闭换行符等

因为我们注意到collection是以,逗号分隔开的,所以我们把逗号换成换行符即可。

:%s/, /^M/g

上面的^M并不是手敲的,需要用ctrl+v,ctrl+m 按出来。
实现效果如下,就非常整齐了。

采用折叠功能,更方便阅读

如下图所示,有时候因为文本内容太长了,我们需要折叠起来看,如下图所示,我折叠了175-180行,以及折叠了185-190行

175180fo :185190fo


如果我要取消折叠,可以采用下面的按键,但是需要鼠标选中折叠的位置
zd即可删除当前光标所在位置的的折叠

如何在gvim里面直接打开path的文件

很多时候,我们可以看到GVIM里面有路径
比如 /project/DFT/scan_setting.tcl
我们可以选中这个path,然后用小写的gf即可
但是按了gf之后,会直接覆盖掉当前的文件。
如果想要返回之前的文件,可以用命令 :bp 或者 :bn
:bp代表back previous
:bn代表back next

如果想要更快方式的可以使用快捷方式返回:
ctrl+o

总结

以上是生活随笔为你收集整理的关于IC工程师的VIM实际工作技巧的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。