Questions tagged «command-line»

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

1
调用Shell时编码错误
我正在尝试DOT图,并尝试执行以下操作: :! dot -Tpng -oFab.png % 我收到一个错误,因为我的文件名有一个特殊字符(ó“Fabricación”中的“”): C:\windows\system32\cmd.exe /c ( dot -Tpng -oFab.png Fabricaci├│n.gv) Error: dot: can't open Fabricaci├│n.gv shell returned 2 Hit any key to close this window... 如您所见,特殊字符已更改为“ ├│”。这是Win7和NTFS下的vim和gVim 7.4,因此我假设文件名位于UTF16中。我还假设调用shell / cmd时,文件名被解释为其他某种编码(感谢Carpetsmoker指出它默认为代码页850)。 我怎样才能解决这个问题? 当然,我可以简单地重命名该文件,但是我想知道为什么会发生这种情况以及如何更正它。 更新:我刚刚在superuser.SE中发现了这个问题(感谢@ ChristianBrabandt的反馈),但似乎也无济于事。

4
我可以使用“ gf”(或类似名称)打开文件并跳到搜索词吗?
有没有办法让vim的gf命令(或类似的东西)识别+{cmd}文件路径的参数? 您可以执行以下操作来启动vim并直接转到搜索词: $ vim +/coding_effort ~/project/file 同样,在命令模式下,您可以执行以下操作: :e +/coding_effort ~/project/file 我经常记笔记并参考其他文件,例如: For more info see +/coding_effort ~/project/file where there's a detailed discussion. 我希望能够选择+/coding_effort ~/project/file,输入类似内容gf,并且让vim做正确的事情。

3
如何将突出显示的源代码输出到文件中以在vim外使用
在我的工作场所中,我想介绍我为解决我们遇到的一些问题而开发的自定义语言。为了简化开发,我为此特定语言创建了自己的vim语法文件。 现在,我需要将其呈现在另一台没有该语法文件的计算机上。就我所知,它甚至可能没有安装vim(但我对此表示怀疑)。 如果我能使less -r一个文件获得与我自己的计算机上相同的语法突出显示,那将是完美的。 但是,我不知道如何在保留颜色的同时复制和粘贴(在Debian上的gnome终端中),或者如何从vim中以语法高亮显示文件作为原始控制字符。我对从vim中找到解决方案更有信心,但是我不知道该怎么做。 您是否知道以其他方式将打开的文件的语法突出显示为ANSI raw-control-chars的方式输出到另一个文件中?



1
通过:g / ^ / norm和:%norm了解行参考差异
假设我有以下非常简单的文件 a b c d e 并且我决定要在每行之后添加空行。我立即想到了几种不同的方法。我们可能会这样做(从而接受失败)。我们可能会录制一个类似的宏,qqo<ESC>jq并重复几次。 在我看来,另外两种方法似乎更明显。 首先,我想我会在每行上发出:norm命令o。所以我跑了:%norm o。但是实际发生的是,我们得到5条空行,然后是上面未分隔的行。我的解释是%norm,vim实际上在这五行文件的前五行中接收了以下普通命令发出的消息。该o命令创建新行,并且vim是“哑”的,因为它是通过行号而不是实际上通过其他标识符来引用的。 好吧,我很尴尬。当然。我尝试了其他一些方法,看看是否可以使上述方法起作用,但是,我不能。出于好奇,我尝试了另一种我最喜欢的大规模应用方法。这导致我尝试:g/^/norm o。令我惊讶的是,这很好!因此,在我看来,这里的vim似乎并不像上面那样“愚蠢”,并且引用行的不仅仅是行号。 到底是怎么回事?
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.