Vim的独特功能超过“更多”;“现代”;像Sublime这样的文本编辑器?

Vim的独特功能超过“更多”;“现代”;像Sublime这样的文本编辑器?,vim,sublimetext2,vi,Vim,Sublimetext2,Vi,我正在做一个关于vi/Vim的演示。我想重点介绍一下它们在较新的编辑器上所具有的一些特性,尤其是崇高的文本。许多差异可以通过添加插件来平衡,但下面是我目前列出的一些现成功能,它们似乎是vi/Vim所独有的: vi在绝大多数Unix机器上都可用,包括服务器 端口可用于几乎所有操作系统,包括移动设备 编辑 diff查看器内置 内置拼写检查 多个寄存器(也称为“剪贴板”) Vim是自由软件、开源、慈善软件 还有其他我忽略的独特的内置功能吗?这是一个固执己见的问题,我希望这个问题能够解决。然而,关于

我正在做一个关于vi/Vim的演示。我想重点介绍一下它们在较新的编辑器上所具有的一些特性,尤其是崇高的文本。许多差异可以通过添加插件来平衡,但下面是我目前列出的一些现成功能,它们似乎是vi/Vim所独有的:

  • vi在绝大多数Unix机器上都可用,包括服务器
  • 端口可用于几乎所有操作系统,包括移动设备
  • 编辑
  • diff查看器内置
  • 内置拼写检查
  • 多个寄存器(也称为“剪贴板”)
  • Vim是自由软件、开源、慈善软件

还有其他我忽略的独特的内置功能吗?

这是一个固执己见的问题,我希望这个问题能够解决。然而,关于编辑拥有和没有的特性,有很多事实。我不会关注其他编辑没有的东西,而是关注Vim有什么。以下是我认为重要的功能列表

与Vim相对独特:

  • 模态编辑
  • 内置帮助请参见
    :h
  • 终端用户界面
  • 广泛的操作系统支持
  • 开源
  • 撤消分支(:h撤消分支)
  • 持久撤消
  • 用于简单重做
  • 与ex和sed共享许多常用命令
  • 使用缓冲区(尝试打开100个带选项卡的文件,看看效果如何)
  • 内置文件浏览和远程编辑(
    :h netrw
  • 内置差分支持
  • 窗口拆分和选项卡支持(同一缓冲区可以是多个位置)
  • 在多个缓冲区/窗口/选项卡上运行命令:
    argdo
    bufdo
    tabdo
    windo
  • 命令行编辑(
    :h cmdline窗口
许多其他编辑器共享的功能:

  • 高级宏重复
  • 插件和脚本
  • 快速修复列表-保留较旧的列表(:h
    :colder
  • 位置列表-特定窗口的快速修复
  • 视觉块模式-许多其他编辑器都有这种模式,但是
    $
    仍然非常特殊(
    :hv\u$
  • 内置grepping(
    :h:vimgrep
  • 零宽度正则表达式原子,例如
    :h/\zs
  • 许多完成模式:单词、行、标记、拼写、语法和全向。此外,您还可以创建自己的
  • 易于创建备用密钥映射
  • 注册-你的剪贴板
  • 跳转/标记:请参见
    :h ctrl-o
    :h g
    :h ctrl-t
    :h标记动作
  • 使用foldtext自定义折叠

好的,每个编辑器/IDE都有拼写检查,您提到的许多“现代”编辑器也有块选择,有些甚至有Vim没有的非连续选择

一些事实,从我的头脑中:

  • 在shell中以GUI的形式运行
  • 模态编辑
  • 一种直观的编辑语言
  • 用于超精密高速运动的文本对象和运动
  • 陡峭的学习曲线,保证了多年的许多aha时刻

没有人可以讨论的唯一优势是,当您连接到没有GUI的远程机器上时,vi将始终可用。还有其他shell编辑器,但没有一个像vi那样通用

就在4天前,我不得不在一个不运行GUI的远程虚拟机上安装一个软件,设置配置文件的最快方法就是启动vi,进行更改并保存


如果我不知道如何使用vi,我将不得不在本地获取该文件的副本,在“现代”编辑器中编辑它,然后重新上传。

不幸的是,这主要是基于观点的,很可能会被关闭。我已将措辞从“卖点”改为“功能”,以删除观点方面。优势相当模糊,但你改写文本的方式似乎更为中立,所以我投票重新打开它。好的,谢谢你的澄清。我也更新了标题。这是了解基本vi命令的一个很好的理由,但不一定要使用vi/vim作为所有内容的主编辑器。最后一点是+1:D