我想要gVim打开拖入其中的文件以在新选项卡中打开,而不是替换当前文件。 This question在正确的轨道上,但我想能够运行gVim的多个实例,只需将文件拖动到我想要的窗口即可。我可以强制gVim在新选项卡中打开拖拽文件吗?
我在Windows 7
我想要gVim打开拖入其中的文件以在新选项卡中打开,而不是替换当前文件。 This question在正确的轨道上,但我想能够运行gVim的多个实例,只需将文件拖动到我想要的窗口即可。我可以强制gVim在新选项卡中打开拖拽文件吗?
我在Windows 7
不,你不能,拖拽的默认动作是在实施Windows应用程序(OLE DoDragDrop)中指定。它尚未实现在新选项卡中打开删除的文件,因此不会。但gVim是开源的...所以你可以提交补丁,如果你真的想这样:)
可以开始运行键入:tabe
然后拖放文件。我不能完全确认这一点(我只有一个mac),但我认为这将最终显示3210。然后你可以打开进入和离开你去...
在gvim中打开一个新文件并不能代替当前打开的文件。新文件在新缓冲区中打开并显示缓冲区。您可以使用:b
命令在缓冲区之间切换。在你的情况下,你可以简单地删除文件,然后用:tabedit
创建一个新选项卡,然后使用:b <filename>
将选项卡缓冲区切换到所需的选项卡。当然,这不是你正在寻找的东西,但它对我来说已经足够了。
你可以把下面的选项放到vimrc中。 VIM将用新标签打开文件。您也可以拖放到gVim,它将在新选项卡中打开。这对我的作品,我还使用在Windows 7
:AU BufAdd,BufNewFile *嵌套的标签sball
更多信息[here](http://vim.wikia.com/wiki/Open_every_buffer_in_its_own_tabpage)不幸的是,它弄乱了其他的东西。例如,如果我加载保存的会话,它会加载文件两次。或者,如果缓冲区已加载但当前不在标签中,则在拖动新文件后,该缓冲区也会显示一个标签。 – 2012-11-13 14:35:18
由于文件不能拖动和丢弃的正确使用gvim,我使用批处理文件来完成这一点。拖动的文件可以放到批处理文件或其快捷方式中。它也可以用于发送到Windows资源管理器的菜单。
这里是批处理文件的内容(更改路径和GVIM服务器的名称):
@ECHO OFF
:TOP
IF (%1) ==() GOTO END
I:\apps\vim\vim73\gvim.exe --servername GVIM --remote-tab "%1"
SHIFT
GOTO TOP
:END
ECHO End
这些Windows友好的映射,可以使这个问题更惬意。不过要记住,虽然拖动文件之前按Ctrl-T ...
" CTRL-T opens a new tab, CTRL-W closes tab, CTRL-Left/Right switches tabs
noremap <C-T> :tabnew<return>
noremap <C-W> :tabclose<return>
noremap <C-Left> :tabprevious<return>
noremap <C-Right> :tabNext<return>
您可以添加在你.vimrc
autocmd BufReadPost * tab ball
这将打开的选项卡在所有缓冲区下,包括新丢弃的文件。请注意,全部为缓冲区,所以也在gvim
中打开。
CTRL
将文件拖动到Vim将在Vim中的新窗口中打开新文件。<C-W>T
as I found here.
这一工程,但我宁愿没有“准备”的编辑器来获得一个新的文件。有没有办法让这个'drop'的默认动作? – wes 2009-12-11 23:33:16
好吧,试试我的其他答案的大小:) – Peter 2009-12-11 23:42:06
这实际上并没有比通过打开新选项卡(':tabnew')准备好然后将文件放入新选项卡更好。 – 2014-03-01 00:09:44