Vim 高级替代
我曾经做过很多复杂的编辑,过去也经常使用sed,但这是我不太明白该怎么做的。我知道如何使用行首和行尾(Vim 高级替代,vim,editing,Vim,Editing,我曾经做过很多复杂的编辑,过去也经常使用sed,但这是我不太明白该怎么做的。我知道如何使用行首和行尾(^$),以及通配符(*$),甚至还知道如何使用CRs,但这是一篇专栏文章。我有以下几行: !******************************************************************************** !
^$
),以及通配符(*$
),甚至还知道如何使用CRs
,但这是一篇专栏文章。我有以下几行:
!********************************************************************************
! *
! Processing Overview: *
! *
! begin-setup *
! begin-heading *
! begin-footing *
! begin-report *
! Strd-begin-Program *
! STRD-Print-Lis *
! Prompt-Parameters *
! Feedback-Value-Update *
我需要将所有行中的星号移到第81列,以确保一致性和可读性。有人知道怎么做吗?
蒂亚,
David一个选项是
%norm $x80|p
崩溃
% operate on the entire buffer
norm following normal command
$ go to end of the line
x delete the character
80| goto column 80
p paste
请注意,需要设置虚拟编辑。我的\u vimrc
set ve=all
使用视觉块模式。请参阅此处的过程:。您必须根据您的具体用例对其进行调整,但这是一个很有用的学习技巧。好东西。到目前为止,我从未研究过视觉块模式(我是老派,哈哈哈),但我会将其添加到工具箱中,谢谢!哇!我以前在连续命令中使用过sed,但我不知道norm和80 |。我曾经告诉人们我是维京六世之王,但我把我的王冠传给了列文。谢谢好的,还有一个问题。因为我所有的行都不是这样的评论,所以我想在行的末尾搜索*。这是我的尝试:%norm/*$x80 | p没关系,我找到了。:-%norm/*$x80 | pfwiw-我会回答
g/*$/norm$x80 | p
,但你已经找到了解决方案,做得好!