与其他编辑器不同,vim商店将文本复制到自己的剪贴板中.因此,我很难从网页复制一些文本并将其粘贴到当前的工作文件中.碰巧我必须打开gedit或手动输入它.
我可以在系统的剪贴板上进行vim粘贴吗?
在没有就为什么一个比另一个更好的宗教争论中,Emacs和Vim之间的实际差异是什么?我正在学习其中一个,但我意识到每个人的学习曲线很高,我无法决定.我从来没有使用过这种类型的编辑器(我总是使用IDE),所以任何有助于新手的东西都是有利的.
在火焰战争开始之前:我不是在问哪个更好,我问的是两者之间的差异.我想客观比较一下.
我已经看过在Vim中使用制表符的能力(用:tabe,:tabnew等)作为我当前在隐藏缓冲区中在同一窗口中打开许多文件的做法的替代.
我希望我打开的每个不同文件始终位于其自己的选项卡中.但是,有些事情会妨碍这一点.我该如何解决这些问题:
当命令喜欢gf并^]跳转到另一个文件中的某个位置时,该文件将在当前选项卡的新缓冲区中打开.有没有办法让所有这些命令在新选项卡中打开文件,或者如果文件已经打开则切换到现有选项卡?
当我可以使用切换缓冲区时
:b <part of filename><tab>
,它将完成现有缓冲区中文件的名称.<part of filename>甚至可以是文件名的中间而不是开头.是否有相应的切换标签?
我总是同时处理多个项目.我拥有的文件数量细分如下
Project | Files
--------------------------
Thesis 20
Simulator 50
Plots 30
Graphs 30
Website 500+
Run Code Online (Sandbox Code Playgroud)
将所有这些文件放在一个窗口中是很麻烦的.有几种选择,我会讨论他们的画布,或者我敢说他们的阿喀琉斯之踵.
拆分Windows我可以将vim分成5个窗口,每个项目一个,但我不妨通过针孔编码.我实际上从来不是分裂窗口的粉丝,除了你经常比较和编辑两个相关文件的情况.此外,我发现两个维度的导航无法像水平方向那样无缝导航.
选项卡选项卡,或者更确切地说是视图,愚蠢地称为选项卡,似乎完全适用于此类问题,但它们不提供对缓冲区的限制.例如,如果我在我的Thesis标签中,我只想导航那20个缓冲区,而不是所有500个网站相关的缓冲区.当我将这些保存为会话时,如果我不小心切换到website我的Thesis选项卡中的缓冲区,退出,然后在进入时我可能会导致问题,我有两个website选项卡.这还有问题,因为我:lcd为每个选项卡设置了本地目录().
终端选项卡使用终端选项卡可确保每个选项卡中的缓冲区保持独立.但是,每个vim会话都不能再共享信息.我不能把文字从一个终端拉到另一个终端(我想我可以进入+寄存器).我也不能再使用:buffdo所有的缓冲区了.此外,我喜欢这样一个事实,即我可以将所有vim选项卡保存到单个会话中.
我知道,这样的诅咒公众讨论,所以我会代替问是否有存在的方式来实现我追求的功能.
编辑总结我需要的一个好方法是说我想要"子缓冲区".
编辑我想从vim的标签中获取的是能够更有效地使用它们的功能:视口.我希望能够为我的论文部分专门设置一个标签.在本节中,我将更改本地目录以反映它.此外,我想过滤掉该表中的缓冲区,使其只是所有缓冲区的子集.类似地,在模拟器选项卡中,我想将它专门用于我的模拟器文件.
基本上就是我要的是能力,通过标签,运行VIM的多个独立的会话,但仍然有一些附加津贴(即共享寄存器能够抽出)
我正在努力弄清楚为什么vim没有复制到系统缓冲区.
这是我的工作流程:
vim asd
y1y
:q
vim qwe
p
Run Code Online (Sandbox Code Playgroud)
在computerA和computerB上,这可以按照我的要求工作:从文件asd中拉出的行放入文件qwe.
在computerC上,这不起作用.
所有系统都运行Ubuntu 8.04.computerA安装了vim-full软件包,computerB和computerC安装了vim软件包.computerA安装了xorg,正在使用fluxbox窗口管理器,并在本地访问.computerB和computerC没有X,我正在抨击它们.
我已经做了很多阅读,并认为这是因为computerC是用-clipboard编译的,但是我在所有三台计算机上都运行了vim --version,只有computerA是用+ clipboard编译的.
我错过了一些明显的东西吗 我相信用户的.vimrc和全局vimrc文件是相同的.我可以发布vim --version的输出和vimrc文件的内容,如果这会有所帮助.