终端星期五:思考Vim [一些技巧]

很抱歉我写的Gif拼写错误

这篇文章是在几个月前在论坛上发布的,我认为是时候该到我了博客上,进行疑问,评论,一切都可以在评论中完成,请 不要燃烧 如果您不喜欢Vim,请退出帖子🙂

我将跳过基本部分,因为如果您想要学习或对其感兴趣,它将变得非常广泛,我建议您从终端运行

$ vimtutor

现在是的,没有更多,我们开始😀

VIM中的宏

它可能不是vim的伟大奥秘之一,但很高兴知道vim具有宏支持,可以从中存储宏。 az ; 要开始录制,您只需按 q+ 要停止录制,请按 q 并调用宏,就像 NUMERO+@+.

其中:
:这是关键 az.
NUMERO:这是我们重复操作的次数。

这将促进许多重复性任务。 例如; 假设我们有以下几行:

一示例一二示例二三示例三四示例四五示例五

我们想给它这种格式:

'one':'example''one'; 'two':'example''two'; 'three':'example''three'; 'four':'example''four'; 'five':'example''XNUMX';

这是宏使我们更轻松的地方everything

VIM

 

使用的顺序:

qa I'[Esc] ea':[Esc] wi'[Esc] ea'[Esc] wi'[Esc] A'; [Esc] 0j q

然后将光标放在行上以进行更改和使用 NUMERO+@+ 在这种情况下,我使用了 4+@+a

更换

在Vim中一个非常重要的工具是替换它,我们可以通过按 ESC 稍后我们按 : 然后我们写命令 我说命令是因为它不仅限于替代。 非常类似于 正则表达式
ejemplos:

在整个文档中更改字符串的最常见方法是:

第2航站楼

命令:

:%s / vim / Vim / g

用Vim替换所有vim行 注意: 如果我没有标志 % 我只会搜索您所在的行

在第3,5行之间的某个范围内替换:

第3航站楼

命令:

:3,5秒/ Vim / VIM / g

从第3行到第5行,将Vim替换为VIM

这里注意没有 g 最后,它仅编辑匹配的第一个单词

第4航站楼

命令:

:3,5秒/ Vim / VIM

通过此行,我们消除了包含 #

第5航站楼

命令:

:。,$ g /#/ d

当前行的 . 直到文件结尾 $ 寻找数字 # 并删除它们 d

这是一个命令对文件部分进行排序

第6航站楼

命令:

:3,$排序

从第3行到文档末尾对其进行排序

其他命令

这里的诀窍在命令中 :r 就像哈哈哈说的那样,这可以做什么,您可以添加另一个文档的文本,但是在此示例中,我们添加了指示符 ! 要单独执行,可以从同一个vim执行脚本进行调试,或者您可以在此处想到的示例:

第7航站楼
命令按出现顺序:

#日期:: r!日期#日期格式:: r!日期+ \%D#列表目录:: r!Ls文档

我使用的是常用命令,但vim接受任何命令的输出,并将其作为文本插入文档中。

而且这只是一小部分,还有更多……而我所不知道的事情哈哈哈哈。

选择

最后但并非最不重要的是视觉状态,在这里我们可以选择线条来轻松地操作它们。 有三种类型的视觉选择。

v 视觉形象
V 视线
控制+v 可视块

选择括号内的内容:
v% 如果您位于括号的开头/结尾
vib 如果您在括号内

第8航站楼

选择双引号或单引号内的内容:
vi' 选择单引号
vi" 选择双引号

第9航站楼

viB 选择键内的所有内容

第10航站楼

按行选择

ggVG 选择整个文件

第11航站楼

基本上从这里开始gg; 输入视觉选择器V; 并结束G。

按块选择

控制+v

第12航站楼

[控制] v e5j C [写文本] [esc] [esc]

然后通过块输入可视选择器 控制v,我前进到单词的末尾,然后向下5行5j,我用C删除了单词,并写上了要替换的文字,然后按 ESC ESC.

另一个是相同的,但不是 c 这就像删除并进入插入模式 我用 i 进入指针所在的插入模式I。

我解释的所有这些可能看起来很神秘,或者像vim ninja haha​​ha之类的东西,但这并不是Vim手册中没有的内容 Vim是我所知道的最好的文档之一 要输入文档,只需输入

:救命

如果您需要特定的东西

:帮助:w

这将直接带您到讨论以下内容的部分:w 和保存.

现在,如果...快乐Vim的人。 😀


本文内容遵循我们的原则 编辑伦理。 要报告错误,请单击 信息.

18条评论,留下您的评论

发表您的评论

您的电子邮件地址将不会被发表。

*

*

  1. 负责数据:MiguelÁngelGatón
  2. 数据用途:控制垃圾邮件,注释管理。
  3. 合法性:您的同意
  4. 数据通讯:除非有法律义务,否则不会将数据传达给第三方。
  5. 数据存储:Occentus Networks(EU)托管的数据库
  6. 权利:您可以随时限制,恢复和删除您的信息。

  1.   诺蒂诺

    我想我将开始使用Vim🙂

  2.   罗德里戈·布拉沃(Rodrigo Bravo)

    优秀的文章,感谢您的分享。 我不知道按块选择。 干杯!

  3.   蓝头骨

    Emacs ...,我想有人不得不说,所以为什么还要再等:D,不,这不是Flame的开始,在Emacs和Vim之间无法进行讨论:D,很明显哪个更好,并且没有,没有e Vim;)。

    1.    bla bla bla

      是的,这是火焰的开始。 请注意这些类型的评论,因为它们不是客观的。 此外,它对本文的内容没有任何帮助。 问候。

    2.    氧化锆

      埃马克斯! 埃马克斯! 埃马克斯! 😀

    3.    马丁

      群众的埃马克斯!
      «[…]我想有人不得不说[…]»哈哈哈,+ 1!

      像这样打扮,有人来扮演异国情调的人说:“带箭头的光标? WASD? 不,不,我会告诉你的方式,这是hjkl»,后面有很多亮着的>:D

      @Blablabla:在那儿,您的昵称符合您的闲聊!

    4.    吉卡德

      进行调查以了解哪个读者更喜欢它不会受到伤害。

  4.   阿赫兹兹

    大! Vim是迄今为止最好的文本编辑器。 希望在该站点上发布有关所说发布者的更多信息。 问候。

  5.   若尔基乔

    我总是在理解Vim中的宏时遇到问题,在空闲时间里,我会旋转一下😛

    注意:对于KDE用户,请使用Vim-QT😀

    谢谢😀

  6.   eliotime3000

    终于,我的Galaxy Mini有了另一个生存的理由:我没有EMACS,但是我有VIM。

    我会考虑您的提示。

  7.   uk

    好信息谢谢🙂

  8.   利托

    分享您的vimrc在视觉上非常容易理解:) !!! 希望您与我分享:)!

    1.    和田

      我当然会😀让我准备一个帖子

  9.   ramg91m

    哇,看起来真好:)! 哈哈,我将开始练习更多,而您的vimrc看起来也很好! 希望您能分享;)!

    1.    和田

      实际上,它并不是vimrc,但我会解释说我已经做了哈哈哈

      1.    ramg91m

        哈哈好多了:)! 所以我们都学哈哈谢谢:)! 😉

  10.   特斯拉

    和田很好的建议。 事实是,我的编程需求是非常基本的,也许这就是为什么我从未见过Vim的潜力。 但是,您的发言对我来说似乎很有趣。 当我必须做某事时,我将尝试将其付诸实践。

    非常感谢您!

  11.   乔纳森·莱昂内尔·加斯帕里尼

    优秀的帖子! 虽然我已经知道这些技巧,但对于那些不了解这些技巧的人却可以很好地解释它们!
    对于新用户来说,《 vimtutor》有一点帮助,英语,对于那些想要用西班牙语学习教程的人,只需输入《 vimtutor es»。

    我爱vim,没有他,我的生活将完全不同!
    我已经使用了2年,每天我都感到更惊讶=)

    问候

    P / D:任何想查看.vimrc配置示例的人,我邀请您来看看我的! =) https://github.com/jlgasparrini/dotvimrc

布尔值(true)