<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>浏忙大爆炸 &#187; Vim</title>
	<atom:link href="http://blog.waterlin.org/articles/tag/vim/feed" rel="self" type="application/rss+xml" />
	<link>http://blog.waterlin.org</link>
	<description>源于理工科男的烂笔头情结</description>
	<lastBuildDate>Fri, 03 Feb 2012 08:35:37 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.3</generator>
		<item>
		<title>修改Vimacs默认的复制、粘贴键绑定设置</title>
		<link>http://blog.waterlin.org/articles/%e4%bf%ae%e6%94%b9vimacs%e9%bb%98%e8%ae%a4%e7%9a%84%e5%a4%8d%e5%88%b6%e3%80%81%e7%b2%98%e8%b4%b4%e9%94%ae%e7%bb%91%e5%ae%9a%e8%ae%be%e7%bd%ae.html</link>
		<comments>http://blog.waterlin.org/articles/%e4%bf%ae%e6%94%b9vimacs%e9%bb%98%e8%ae%a4%e7%9a%84%e5%a4%8d%e5%88%b6%e3%80%81%e7%b2%98%e8%b4%b4%e9%94%ae%e7%bb%91%e5%ae%9a%e8%ae%be%e7%bd%ae.html#comments</comments>
		<pubDate>Fri, 09 Jan 2009 10:05:30 +0000</pubDate>
		<dc:creator>waterlin</dc:creator>
				<category><![CDATA[技术]]></category>
		<category><![CDATA[Vim]]></category>

		<guid isPermaLink="false">http://blog.waterlin.org/articles/%e4%bf%ae%e6%94%b9vimacs%e9%bb%98%e8%ae%a4%e7%9a%84%e5%a4%8d%e5%88%b6%e3%80%81%e7%b2%98%e8%b4%b4%e9%94%ae%e7%bb%91%e5%ae%9a%e8%ae%be%e7%bd%ae.html</guid>
		<description><![CDATA[我的gvim用上了vimacs插件，但是C-y却只能粘贴在gvim里复制的东西，没有办法粘贴gvim以外的程序拷贝到Windows剪贴板的内容。 我仔细地看了一下vimacs-0.95.vim里的代码，要粘贴其它程序复制到Windows剪切板的内容，需要用键Shift + Insert来实现；而粘贴gvim里复制到剪切板的内容，则需要用C-y键。 同样，在gvim里，M-w只能拷贝选中的内容到gvim的剪切板；要在gvim里把选中的内容复制到Windows的剪切板，则需要用键Control + Insert来实现。 这样的设置多少有些烦人！大部分情况下，我都是拷贝好内容后，就去粘贴，这个粘贴的地方并一定就是gvim里的某个文档，我需要一复制，即可以到处使用。像vimacs这样过细的键功能划分，实在是有点让我手足无措。 为了让M-w能把内容同时拷贝到gvim和windows的剪切板，把 vnoremap &#60;C-Ins&#62; &#8220;*y 改为 vnoremap &#60;M-w&#62; &#8220;*y 即可。 为了让C-y能粘贴gvim或Windows剪切板中最新拷进来的内容，把 inoremap &#60;S-Ins&#62; &#60;C-r&#62;&#60;C-o&#62;* 改为 inoremap &#60;C-y&#62; &#60;C-r&#62;&#60;C-o&#62;* 即可。 现在这样的设置就和我Emacs里的设置一模一样了，用起来舒服多了。这个方法只在Windows下测试过了，其它平台有机会再测试一下。]]></description>
			<content:encoded><![CDATA[<p><a target="_blank" href="http://blog.waterlin.org/articles/gvim%E9%87%8C%E8%AE%BE%E7%BD%AE%E9%85%8D%E8%89%B2%E6%96%B9%E6%A1%88%E3%80%81%E5%AD%97%E4%BD%93%E3%80%81%E4%BD%BF%E7%94%A8tabs%E4%BB%A5%E5%8F%8A%E6%A8%A1%E6%8B%9Femacs%E7%9A%84%E9%94%AE%E7%BB%91.html">我的gvim用上了vimacs插件</a>，但是<b>C-y</b>却只能粘贴在gvim里复制的东西，没有办法粘贴gvim以外的程序拷贝到Windows剪贴板的内容。</p>
<p>我仔细地看了一下vimacs-0.95.vim里的代码，要粘贴其它程序复制到Windows剪切板的内容，需要用键<b>Shift + Inser</b>t来实现；而粘贴gvim里复制到剪切板的内容，则需要用<b>C-y</b>键。</p>
<p>同样，在gvim里，<b>M-w</b>只能拷贝选中的内容到gvim的剪切板；要在gvim里把选中的内容复制到Windows的剪切板，则需要用键<b>Control + Insert</b>来实现。</p>
<p>这样的设置多少有些烦人！大部分情况下，我都是拷贝好内容后，就去粘贴，这个粘贴的地方并一定就是gvim里的某个文档，我需要一复制，即可以到处使用。像vimacs这样过细的键功能划分，实在是有点让我手足无措。</p>
<p>为了让<b>M-w</b>能把内容同时拷贝到gvim和windows的剪切板，把<br />
<blockquote>vnoremap &lt;C-Ins&gt; &#8220;*y</p></blockquote>
<p>改为<br />
<blockquote>vnoremap &lt;M-w&gt; &#8220;*y</p></blockquote>
<p>即可。</p>
<p>为了让<b>C-y</b>能粘贴gvim或Windows剪切板中最新拷进来的内容，把<br />
<blockquote>inoremap &lt;S-Ins&gt; &lt;C-r&gt;&lt;C-o&gt;*</p></blockquote>
<p>改为<br />
<blockquote>inoremap &lt;C-y&gt; &lt;C-r&gt;&lt;C-o&gt;*</p></blockquote>
<p>即可。</p>
<p>现在这样的设置就和我Emacs里的设置一模一样了，用起来舒服多了。这个方法只在Windows下测试过了，其它平台有机会再测试一下。</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.waterlin.org/articles/%e4%bf%ae%e6%94%b9vimacs%e9%bb%98%e8%ae%a4%e7%9a%84%e5%a4%8d%e5%88%b6%e3%80%81%e7%b2%98%e8%b4%b4%e9%94%ae%e7%bb%91%e5%ae%9a%e8%ae%be%e7%bd%ae.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>gvim里设置配色方案、字体、使用tabs以及模拟Emacs的键绑定</title>
		<link>http://blog.waterlin.org/articles/gvim%e9%87%8c%e8%ae%be%e7%bd%ae%e9%85%8d%e8%89%b2%e6%96%b9%e6%a1%88%e3%80%81%e5%ad%97%e4%bd%93%e3%80%81%e4%bd%bf%e7%94%a8tabs%e4%bb%a5%e5%8f%8a%e6%a8%a1%e6%8b%9femacs%e7%9a%84%e9%94%ae%e7%bb%91.html</link>
		<comments>http://blog.waterlin.org/articles/gvim%e9%87%8c%e8%ae%be%e7%bd%ae%e9%85%8d%e8%89%b2%e6%96%b9%e6%a1%88%e3%80%81%e5%ad%97%e4%bd%93%e3%80%81%e4%bd%bf%e7%94%a8tabs%e4%bb%a5%e5%8f%8a%e6%a8%a1%e6%8b%9femacs%e7%9a%84%e9%94%ae%e7%bb%91.html#comments</comments>
		<pubDate>Thu, 25 Dec 2008 09:10:23 +0000</pubDate>
		<dc:creator>waterlin</dc:creator>
				<category><![CDATA[软件]]></category>
		<category><![CDATA[Vim]]></category>

		<guid isPermaLink="false">http://blog.waterlin.org/articles/gvim%e9%87%8c%e8%ae%be%e7%bd%ae%e9%85%8d%e8%89%b2%e6%96%b9%e6%a1%88%e3%80%81%e5%ad%97%e4%bd%93%e3%80%81%e4%bd%bf%e7%94%a8tabs%e4%bb%a5%e5%8f%8a%e6%a8%a1%e6%8b%9femacs%e7%9a%84%e9%94%ae%e7%bb%91.html</guid>
		<description><![CDATA[公司默认的文档插件是基于Vim的，天天要用gvim来写文档，如果不对gvim进行一些设定，实在是很不舒服。 1) 配色方案和字体设定 首先，gvim无法自动保存当前的设置，比如字体、配色方案等等。所以我们要修改一下gVim的配置文件，使得每次都可以载入我们所希望的设置。 修改vim安装目录下的_vimrc文件，把配色方案设置成我喜欢的koehler，设置字体大小为14，这样看得不会太辛苦： colo koehlerset guifont=Courier_New:h14:cANSI 设置图形界面下的字体，你可以采用下面的方法来获得你喜欢的字体的名称与大小。你可以点“编辑”&#8211;&#62;“选择字体”，然后在对话框中选出你喜欢的字体与字号，选择完毕后，先按几下ESC确认处在Normal模式下，然后输入这条命令：“:set guifont?”。回车后gvim屏幕最下方会显示出你当前所用的字体的名称与大小。将获得的结果根据上面的语句写到配置文件里面就可以了。需要注意一点，如果字体名称里面含有空格的话，在抄的时候需要在所有空格前面加一个反斜杠“\”进行转义。 如果你用了自己的插件，比如我这里用了我们公司的插件，里面就有设置了字体的种类与大小，你则需要先在自己的插件里把这行给注释掉。 2) 文档的一行最好不要超过80个字符，这样方便在所有的阅读器里阅读。但是对于一些邮件或是引用的东西，这个规则就不用严格要求。于是我用下面这行把80个字符后的字都高亮显示出来： :match DiffAdd &#8216;\%&#62;80v.*&#8217; 这样，哪些行超过了80个字，一目了然。 3) 设置并开启拼写检查，设置语言为en。 setlocal spell spelllang=en 4) 多tab应用 vim自从7.0开始，就支持tab应用了，有了tab之后，就可以省下开很多编辑视窗的烦恼。但是默认的gvim并不使用tab来打开文件。当然，你可以用:tabnew filename命令来打开，但是相信大家更喜欢用双击来打开。这个时候，可以用如下方法设置（摘自水木社区vim版）： 在linux下可以这样打开$gvim &#8211;remote-tab-silent filename 而在windows下,DOS下也可以象上面那样打开；而若是“双击”打开方式，则可以修改注册表HKEY_CLASSES_ROOT\Applications\gvim.exe\shell\edit\command将其键值修改为： &#8220;C:\Program Files\Vim\vim70\gvim.exe&#8221; -p &#8211;remote-tab-silent&#160; &#8220;%1&#8243; 而若是用鼠标右键中的“用vim编辑”，先删掉注册表中的HKEY_CLASSES_ROOT\*\shellex\ContextMenuHandlers\gvim，然后手工添加鼠标右键菜单， 两种方式： a. 直接进入注册表,在HKEY_CLASSES_ROOT\*\shell下添加项“用 vim 编辑”，&#160;&#160; 再在项“用vim编辑”下添加子项“command”，在其右边窗口把其键值设定为&#160;&#160; &#8220;c:\Program Files\Vim\vim70\gvim.exe&#8221; -p &#8211;remote-tab-silent &#8220;%1&#8243; b. 把下面的内容保存为文件gvim.reg，并将之导入注册表 &#160;Windows Registry Editor Version 5.00&#160;[HKEY_CLASSES_ROOT\*\shell\Edit with [...]]]></description>
			<content:encoded><![CDATA[<p>公司默认的文档插件是基于Vim的，天天要用gvim来写文档，如果不对gvim进行一些设定，实在是很不舒服。</p>
<p><b>1) 配色方案和字体设定</b></p>
<p>首先，gvim无法自动保存当前的设置，比如字体、配色方案等等。所以我们要修改一下gVim的配置文件，使得每次都可以载入我们所希望的设置。</p>
<p>修改vim安装目录下的<b>_vimrc</b>文件，把配色方案设置成我喜欢的koehler，设置字体大小为14，这样看得不会太辛苦：<br />
<blockquote>colo koehler<br />set guifont=Courier_New:h14:cANSI</p></blockquote>
<p>设置图形界面下的字体，你可以采用下面的方法来获得你喜欢的字体的名称与大小。你可以点“编辑”&#8211;&gt;“选择字体”，然后在对话框中选出你喜欢的字体与字号，选择完毕后，先按几下ESC确认处在Normal模式下，然后输入这条命令：“:set guifont?”。回车后gvim屏幕最下方会显示出你当前所用的字体的名称与大小。将获得的结果根据上面的语句写到配置文件里面就可以了。需要注意一点，如果字体名称里面含有空格的话，在抄的时候需要在所有空格前面加一个反斜杠“\”进行转义。</p>
<p>如果你用了自己的插件，比如我这里用了我们公司的插件，里面就有设置了字体的种类与大小，你则需要先在自己的插件里把这行给注释掉。</p>
<p><b>2) 文档的一行最好不要超过80个字符，这样方便在所有的阅读器里阅读。</b>但是对于一些邮件或是引用的东西，这个规则就不用严格要求。于是我用下面这行把80个字符后的字都高亮显示出来：<br />
<blockquote>:match DiffAdd &#8216;\%&gt;80v.*&#8217;</p></blockquote>
<p>这样，哪些行超过了80个字，一目了然。</p>
<p><b>3) 设置并开启拼写检查，设置语言为en。</b><br />
<blockquote>setlocal spell spelllang=en</p></blockquote>
<p><b>4) 多tab应用</b></p>
<p>vim自从7.0开始，就支持tab应用了，有了tab之后，就可以省下开很多编辑视窗的烦恼。但是默认的gvim并不使用tab来打开文件。当然，你可以用<b>:tabnew filename</b>命令来打开，但是相信大家更喜欢用双击来打开。这个时候，可以用如下方法设置（<a target="_blank" href="http://www.newsmth.net/bbscon.php?bid=731&amp;id=2579&amp;ftype=11">摘自水木社区vim版</a>）：<br />
<blockquote>在linux下可以这样打开<br /><b>$gvim &#8211;remote-tab-silent filename</b></p>
<p>而在windows下,DOS下也可以象上面那样打开；而若是“双击”打开方式，则可以修改注册表<br />HKEY_CLASSES_ROOT\Applications\gvim.exe\shell\edit\command将其键值修改为：</p>
<p>&#8220;C:\Program Files\Vim\vim70\gvim.exe&#8221; -p &#8211;remote-tab-silent&nbsp; &#8220;%1&#8243;</p>
<p>而若是用鼠标右键中的“用vim编辑”，先删掉注册表中的<br />HKEY_CLASSES_ROOT\*\shellex\ContextMenuHandlers\gvim，然后手工添加鼠标右键菜单，</p>
<p>两种方式：</p>
<p>a. 直接进入注册表,在HKEY_CLASSES_ROOT\*\shell下添加项“用 vim 编辑”，<br />&nbsp;&nbsp; 再在项“用vim编辑”下添加子项“command”，在其右边窗口把其键值设定为<br />&nbsp;&nbsp; &#8220;c:\Program Files\Vim\vim70\gvim.exe&#8221; -p &#8211;remote-tab-silent &#8220;%1&#8243;</p>
<p>b. 把下面的内容保存为文件gvim.reg，并将之导入注册表<br />
<blockquote><font color="#000000">&nbsp;Windows Registry Editor Version 5.00<br /></font><font color="#000000">&nbsp;[HKEY_CLASSES_ROOT\*\shell\Edit with &amp;Vim]<br /></font><font color="#000000">&nbsp;[HKEY_CLASSES_ROOT\*\shell\Edit with &amp;Vim\command]<br /></font><font color="#000000">&nbsp;@=&#8221;\&#8221;c:\\Program Files\\Vim\\vim70\\gvim.exe\&#8221; -p &#8211;remote-tab-silent \&#8221;%1\&#8221;"<br /></font></p></blockquote>
<p>另外，也可以添加到鼠标右键中的“发送到”，方法：<br />进入到目录c:\Documents and Settings\用户名\SendTo下，“鼠标右键”-“新建”-“快捷方式”，然后通过对话框的“浏览”找到gvim安转位置，这样就建立gvim的一个快捷方式，右键单击这个快捷文件-属性-快捷方式，在“目标(T)”的地址栏写入：<br />&#8220;C:\Program Files\Vim\vim70\gvim.exe&#8221; -p &#8211;remote-tab-silent &#8220;%*&#8221;</p>
<p>注意：上面都是默认安装gvim的地址，若不是默认地址，请自行修改。</p></blockquote>
<p><b>5) Emacs模式</b></p>
<p>本人比较喜欢用Emacs来写东西，但是没有时间把公司的Vim插件移植到Emacs里来，只好用<a target="_blank" href="http://www.algorithm.com.au/code/vimacs/">Vimacs</a>插件在Vim里模拟一个Emacs用着先了。</p>
<p><a target="_blank" href="http://www.algorithm.com.au/code/vimacs/">Vimacs</a>插件，只在vim的插入状态下有用。模拟的是基本的Emacs键绑定，例如C-f，C-e等。安装非常的简单，把<a target="_blank" href="http://www.algorithm.com.au/code/vimacs/">Vimacs</a>的包下下来，然后拷贝.txt到你的Vim文档目录，一般来讲是&#8221;C:\Program Files\vim\vimfiles\doc&#8221;，再把后缀为.vim的文件拷贝到Vim的插件目录（默认为&#8221;C:\Program Files\vim\vimfiles\plugin&#8221;)。</p>
<p>如果你在使用的时候，碰到有一些按键有错误提示，则需要检查一下你已有的plugin在keymapping上是否和这个<a target="_blank" href="http://www.algorithm.com.au/code/vimacs/">vimacs</a>有冲突。</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.waterlin.org/articles/gvim%e9%87%8c%e8%ae%be%e7%bd%ae%e9%85%8d%e8%89%b2%e6%96%b9%e6%a1%88%e3%80%81%e5%ad%97%e4%bd%93%e3%80%81%e4%bd%bf%e7%94%a8tabs%e4%bb%a5%e5%8f%8a%e6%a8%a1%e6%8b%9femacs%e7%9a%84%e9%94%ae%e7%bb%91.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

