我有多个vifm
的已启动实例。是否可以将文件从一个实例复制到另一个实例(使用yy
)?
谢谢!
答案 0 :(得分:0)
不,你不能轻易做到这一点。实例不共享它们的运行时状态(在这种情况下是寄存器的内容),所以当你在其中一个中 yy 文件时,其他实例都不知道它。
作为您真正想要的案例的解决方法:
:write
将当前状态保存到vifminfo
文件中。:write
,合并两个实例的状态。:restart
重新加载状态(这可以带来的不仅仅是寄存器)并执行 p 。这不是我推荐的东西,但它应该有用,在某些情况下可能是可以接受的。
答案 1 :(得分:0)
定义地图以保存当前文件:
nmap Wf :!ls -1 %f | while read f ; do printf ":!cp %%s/%%s %%s\n" %d $f '%%d' ; done > ~/.vifm_tmp <cr>
第二个映射将获取临时文件:
nmap Pf :source ~/.vifm_tmp<cr>
要复制文件:在第一个vifm实例中为Wf
,然后在第二个实例中为Pf
。这适用于多个选定的(带标签的)文件,但不适用于可视模式。
您还可以同步源目录:
nmap Yd :!printf ":cd %%s\n" %d > ~/.vifm_tmp<cr>
nmap Pd :source ~/.vifm_tmp <cr>
然后在同一实例的面板之间复制/粘贴。