在Emacs中处理文件时,我可以在Emacs中运行vim的窗口中打开同一文件吗?
我可以在Vim中做同样的事情吗? (在Vim中使用相同文件打开emacs)
答案 0 :(得分:1)
您可以在Vim中使用当前编辑的缓冲区启动另一个编辑器:
:execute '! emacs' shellescape(expand('%:p'), 1)
这将使文件在Vim中保持打开状态。一些编辑器(我已经对nano进行了测试;作为Vim用户,我当然没有安装Emacs:-)检测到此情况并发出警告。为了避免这种情况,您可以先从Vim中删除当前正在编辑的文件:
:execute 'bdelete | ! emacs' shellescape(expand('%:p'), 1)
我敢肯定,其他方向也可以做类似的事情。
答案 1 :(得分:1)
此Emacs Lisp函数在Vim当前缓冲区中的同一行处打开文件:
(defun my-open-current-file-in-vim ()
(interactive)
(async-shell-command
(format "gvim +%d %s"
(+ (if (bolp) 1 0) (count-lines 1 (point)))
(shell-quote-argument buffer-file-name))))