Questions tagged «command-line»

有关前命令或冒号命令的问题。对于用于启动编辑器的命令行选项的问题,请使用[invocation]标记。

2
在不退出Vim的情况下关闭和卸载缓冲区
通常,我会将一些信息加载到临时缓冲区中,然后使用来关闭它:clo!。但这隐藏了缓冲区,而不是完全卸载它,即使我已经nohidden设置了。我觉得这很烦,因为我退出Vim时会得到关于我已经(认为我)已经丢弃的内容的额外确认。 我可以:q!改用它,但这是个坏习惯,因为如果只剩下一个缓冲区,它将完全退出Vim,这也很烦人。更糟糕的是,如果输入错误:qa!,我可能会失去很多工作。 有中间立场吗?我真的很想命令杀死当前缓冲区,但不退出Vim。我不反对用Vimscript编写它,但是如果命令已经存在,我宁愿避免使用它。




2
如何保存我没有写权限的文件?
有时,我会以自己的用户身份打开文件并进行一些修改,而没有注意到或“忘记” [read-only]状态行中的警告(/etc例如,一些随机配置文件/etc/resolv.conf)。 :w!显然在这种情况下会失败,因为我的用户仍然没有写权限。所以我必须:w /home/filename离开,而且sudo mv ...非常不舒服。 有没有一种方法可以让我临时升级为root以便能够保存当前打开的文件?(假设我在sudoers或/并且我可以su直接进入)?

1
如何非交互地编辑文件(例如在管道中)?
我想以非交互方式使用vim编辑在管道输入中传递的文件,或就地编辑文件(类似于sed)。 很少使用sed以下示例: $ sed -i'.bak' s/foo/test/g file # Edit file in-place. $ cat file | sed s/foo/test/g # Parse file in pipeline. 但是我可以在这里读到: sed是S tream ED管理员,不是文件编辑器。但是,各地的人们都倾向于滥用它来尝试编辑文件。它不编辑文件。 其次,一些选项,例如就地编辑(-i)是可移植的。 在vim中如何实现相同的功能?

5
切换git分支的最简单方法
现在,我正在使用逃犯来管理几乎所有与git相关的事情,但是我找不到能快速可视化并在可用分支之间进行切换的良好工作流程。 我可以做:Git checkout <branch-name>,问题是它会自动完成文件名和分支,并且我希望分支列表。

2
从vim执行bash脚本
我使用vim进行bash脚本编写。有时候我不想创建一个新文件,使其可执行,执行然后删除。我的意思是仅将使用一次的脚本。 例如,我打开vim并输入以下内容: #!/bin/bash ll | while read line do echo $line done 我没有保存该文件,只是使用vim来简化bash脚本编写。我知道我可以通过!vim 执行bash命令。但是如何执行缓冲区中的所有内容呢?





3
如何在命令行模式下使用相对行号?
最近,我从实用Vim中学习了一种无需将光标从当前位置移动即可复制或移动行块的方法。这是在命令行模式下完成的。例如 :123,133m. # moves lines from 123 to 133 below the cursor position. 虽然我喜欢它,但是键入长行号很麻烦,尤其是当文件有太多行时。 有时,要移动的线相对靠近光标(但是我不想移动光标,拉动,回到我原来的位置,粘贴!)。如果我可以使用相对数字,那将很棒,类似于我们在正常模式下的操作。就像在说 将当前行上方10行的5行移动到此处 简而言之,如何在命令行模式(类似于普通模式)中使用相对数字?

1
Vim中文件名的Bash式部分制表符完整
在Bash中,当有几个文件具有相同的前缀,并且我键入了一部分前缀和hit时Tab,它会完成通用前缀,并允许我继续键入以区分可能的结果。 在Vim中,当有几个文件具有相同的前缀并且我键入部分前缀并点击时Tab,它将完成整个第一个匹配项,然后让我在所有匹配项中进行选择。为了减少集合,我必须退格,直到到达公共部分的末尾,然后再键入一些然后Tab再次击中。 我经常有很多文件,这些文件的公共前缀很长,而我想要的文件不在第一个文件中(例如,项目文件的目录除其他外,还包含各种名称为的makefile Makefile.{whatever})。 我可以使Vim更像Bash一样来保存很多按键吗? 如果这也可以应用于其他补全(例如,所有具有相同前缀的枚举值),则将获得奖励

2
如何在vim命令行中使用Readline快捷方式?
当我编辑Vim命令时,我想使用与 Bash和所有其他REPL中相同的快捷方式:M-b返回一个单词,M-Backspace删除前一个单词,M-u将该单词转换为大写字母,C-k剪切至我已经能够使用来配置一些命令:cmap,但不是全部。 是否有提供此功能的插件或设置? 我知道cedit,但是当我需要输入快速命令时,我会觉得很麻烦。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.