【问题标题】:How to get command line arguments from VimL?如何从 VimL 获取命令行参数?
【发布时间】:2013-08-23 09:22:09
【问题描述】:

如何在 Windows 下访问在命令行中提供给 Vim 的参数?

我正在 C 中寻找与 argv[] 等效的内容。

在linux下你可以阅读/proc/self/cmdline。 示例:

vim -c ":echo split( readfile( \"/proc/self/cmdline\", 1 )[0], \"\n\" )"

print

[
  'vim',
  '-c',
  ':echo split( readfile( "/proc/self/cmdline", 1 )[0], "\n" )'
]

argc()argv() 不起作用。他们只返回文件数。 示例:

vim -c ':echo "argc:" . argc() . ", argv:" . string( argv() )' file1 file2

print

argc:2, argv:['file1', 'file2']

【问题讨论】:

  • 哦,我明白了。这个例子使问题更清楚。不幸的是,没有办法通过 Vim 获取这些参数。您必须使用依赖于操作系统的解决方案,就像您已经使用的那样。

标签: vim argv argc


【解决方案1】:
:help argc()
:help argv()
:help argidx()

也许还有:help argument-list,只是为了确定。

简单例子:

for arg in argv()
  echo arg
endfor

【讨论】:

    【解决方案2】:

    在需要 argv[0] 的特定情况下(即调用 vim 的名称),您可以使用v:progname

    【讨论】:

      猜你喜欢
      • 2014-01-03
      • 1970-01-01
      • 2014-06-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多