从Vim递归打印所有文件
我目前正在使用MacVim,我想打印出工作树中的所有文件.有没有办法简单地这样做,也许使用硬拷贝命令?
为一组文件执行命令的便捷方法是收集
他们的名字列表,将其定义为新的参数列表(参见:help arglist), 然后在参数列表中的那些文件上迭代命令. >要执行第一步,请使用带有通配符的:args命令 :args ./**/* 将参数列表设置为当前所有文件的名称 :args /tmp/**/*.{c,h} 选择/ tmp及其子目录中的所有.c和.h文件.对于 如果包含要打印的文件的子树根的路径未知 :exe 'args' join(map(split(glob(p . '/**/*'),'n'),'fnameescape(v:val)')) 其中变量p应包含其路径名 :argdo hardcopy! 的!说明符禁止选择打印的模态对话框 可以使用更复杂的命令将每个文件打印到 :argdo hardcopy! >%:p.ps 这里打印文件的名称与.ps后缀连接在一起 为了加速:argdo-argument命令,Vim忽略了 :argdo set ei-=Syntax | do Syntax 要在与打印相同的运行中执行此操作,请连接命令: :argdo set ei-=Syntax | do Syntax | hardcopy! >%:p.ps (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |