📄 gui_w32.cnx
字号:
*gui_w32.txt* For Vim version 6.1. 原文最后更新: 2002年2月3日 VIM 参考手册 作者:Bram Moolenaar 翻译:Dasn<dasn@users.sf.net> VCD主页:http://vimcdoc.sf.netVim 的图形用户界面 *gui-w32* *win32-gui*1.启动图形界面 |gui-w32-start|2.设置 Vim 为默认的编辑器 |vim-default-editor|3.使用剪贴板 |gui-clipboard|4.命令行指令 |gui-shell-win32|5.特殊颜色 |win32-colors|6.Windows 对话框和浏览器 |gui-w32-dialogs|7.杂项 |gui-w32-various|其他相关文章:|gui.txt| 所有的 GUI 版本的通用功能|os_win32.txt| WIN32 版本特有的功能{Vi 没有 Windows 图形界面}=============================================================================1.启动图形界面 *gui-w32-start*Vim 的 Win32 GUI 版本(gvim)呈现给你的是一个真正 Windows 图形界面程序。无论你用什么方式启动它,也不管你是否修改了它的文件名,gvim 总是启动一个图形界面。图形界面程序一直在 Windows 子系统里运行。大多数 shell 会在启动 gvim 之后立即返回提示符(假设你从命令行启动它 ——译者)。如果没有返回,那你应该使用“start”命令: > start gvim [option] file ..Note: 所有的字体(无论粗体还是斜体)必须大小同相!!!如果不是,那你可能什么字都看不到或者只能看到一些杂乱无章的文字。Vim 不会检查文字的大小。需要强调一点,这里的字体大小是以“像素”为单位计算的。有些字体的大小以“磅”为单位计算,这时即便你选的两种字体的“磅”数相同,但它们的像素数却可能不同。另外,与字体位置相关的属性(比如:ascent 和 descent)也必须相同。(ascent 和 descent 是用来说明字体高度的两种属性,具体可以参考相关资料 ——译者)gvim 的 Win32 版本里有一个额外的菜单选项“编辑/选择字体”(注意:不同的版本选项的位置不太一样,6.0 以前的版本此选项位于“窗口/选择字体” ——译者),它能调用标准的 Windows 字体选择程序。设定菜单的高度对 gvim 不起作用。 *gui-win32-maximized*如果你想让 Vim 在启动时最大化窗口,可以把下面的命令加到你的 vimrc 或 gvimrc 文件中: > au GUIEnter * simalt ~x< *gui-w32s*gvim.exe 还有一个特别的版本——Win32s,可以在 Windows 3.1 或 3.11 里运行。参见|win32s| 。==============================================================================2. 设定 Vim 为默认的文本编辑器 *vim-default-editor*设定 Vim 为某一类文件的默认编辑器:1、打开 Windows 资源管理器2、选择 查看/选项 -> 文件类型。3、选定想让 gvim 处理的文件类型,然后选择 gvim 的路径。(在文件类型选项卡中, 你也可以用3个空格给没有扩展名的文件指定关联程序)。在“操作”列表框的 open 一栏中输入: > gvim "%1"< 这里加上引号可以让程序处理带空格的文件名。 你也可以这样用: > gvim "%L"< 这样可以在某些场合避免处理短文件名(8.3格式),但我不敢保证在每个地方都好用。现在你已经做好了gvim 与文件的关联了,当你双击鼠标打开文件时,gvim 会切换到文件所在目录。(可以用 :lcd 查看 gvim 的当前目录 ——译者)如果你想让Vim 打开文件时最大化,可以在 open 一栏中输入: > gvim -c "simalt ~x" "%1"如果你移动了 Vim 位置,或者你把它放到别的目录里了(比如,你刚刚在别的目录里安装了一个新版本的 Vim,并且想马上用它),用下面的办法可以完成和上面相似的任务:1、选定想用 Vim 打开的文件2、<Shift-F10>3、选“打开方式……”4、点击“其它……”5、找到 Vim 的新位置,点击“打开”6、在“始终使用该程序打开这些文件”划勾7、OK *send-to-menu* *sendto*你也可以把 Vim 放到“发送到”菜单里去:1、打开资源管理器2、找到你的 sendto 目录: Windows 95: %windir%\sendto (例如:"c:\windows\sendto") Windows NT: %windir%\profiles\%user%\sendto (例如:"c:\winnt\profiles\mattha\sendto")。3、点右键,选“新建->快捷方式”4、在快捷方式向导程序里点击“浏览”,找到 Vim/gvim,程序会得到其完整路径。当你使用“发送到 Vim”时,Vim 会切换到那个文件的目录。注意,任何长的目录名都会以短的(MS-DOS)的形式出现。这是 Windows “发送到”功能的一个限制。 *notepad*你可以用 gvim.exe 来代替 notepad.exe,但是这样会带来许多副作用。有些程序依赖于notepad 参数。比如,有的程序调用“notepad –p”来打印文件,但是这些参数放到gvim 上就不好用了(“gvim -p”,-p 为无效参数 ——译者)所以最好还是别改动notepad,用别的方法启动 gvim 。 *win32-popup-menu*有一种更直接的方法,就是把”用 vim 编辑”选项加到右键弹出菜单里,这样你就可以用 vim 编辑任何文件了。这种方法可以和上面提到的默认打开方式(文件关联)共存。不同之处在于如果把 Vim设定为默认打开方式,当你用鼠标双击该类型文件时,系统会自动调用 Vim 打开该文件;而如果你把”用 vim 编辑” 加到弹出菜单里,就可以保留原来的文件关联,当你想用Vim 处理该文件时,只要在文件上单击鼠标右键,选择”用 vim 编辑”即可。例如:你可以把“*.mak”(在老版本的 VC++ 里,Makefile 文件的扩展名是“mak”——译者)文件与 make 程序关联,这样你就可以通过双击文件来调用 make 程序执行它,通过右键 —>“用 vim 编辑”对 Makefile 进行编辑。你可以用 右键 —>“用 vim 编辑”打开你选择的文件。如果你选择了多个文件,你会发现弹出菜单里多出两个相关选项:“用 multiple vim 编辑” ——为所选的每一个文件打开一个 gvim“用 single vim 编辑” ——用一个 gvim 打开所选的全部文件。如果已经有一个 gvim 正在运行,弹出菜单里还会多一个选项:“用当前的 vim 编辑” ——用正在运行的 gvim 编辑所选文件。 *install-registry*你可以通过安装程序“install.exe”十分容易地把“用 vim 编辑”加到右键菜单中,安装程序会帮你在注册表中添加几个键值。当然,你也可以自己修改注册表。这比较麻烦!尽量用 install.exe 程序。1、打开注册表编辑器“regedit.exe”2、加入这些键值: key value name value ~ HKEY_CLASSES_ROOT\CLSID\{51EEE242-AD87-11d3-9C1E-0090278BBD99} {default} Vim Shell ExtensionHKEY_CLASSES_ROOT\CLSID\{51EEE242-AD87-11d3-9C1E-0090278BBD99}\InProcServer32 {default} {path}\gvimext.dll ThreadingModel Apartment HKEY_CLASSES_ROOT\*\shellex\ContextMenuHandlers\gvim {default} {51EEE242-AD87-11d3-9C1E-0090278BBD99} HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Shell Extensions\Approved {51EEE242-AD87-11d3-9C1E-0090278BBD99} Vim Shell Extension HKEY_LOCAL_MACHINE\Software\Vim\Gvim path {path}\gvim.exe HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Uninstall\vim 5.6 DisplayName Vim 5.6: Edit with Vim popup menu entry UninstallString {path}\uninstal.exe用实际地路径替换 {path}不要输入 {default}(默认),这是每个项里自带的键。要从弹出菜单里删除“用 vim 编辑”,只要在注册表里删除上面提到的各项即可。缷载程序“uninstall.exe”可以帮你完成这项工作。你也可在“控制面板”—>“添加/删除程序”里进行删除。如果你发现用“添加/删除程序”缷载 gvim 之后,其它类型文件的关联出错了,你可以自己动手修改过来(用“资源管理器”,前面已经提过)。这种情况好像只出现在 NT 系列的 Windows 中(Windows 的 Bug ?)。解决办法:1、找到文件的类型名(也就是文件扩展名 ——译者)。打开注册表编辑器在\\HKEY_CLASSES_ROOT 下搜索就能找到。2、在资源管理器里,“查看”—>“选项”—>“文件类型”。找到该类型文件,单击“编辑”。在“操作”列表中选择应该被设置为默认的选项(正常情况下是 open ),单击“设置为默认值”。==============================================================================3. 使用剪贴板 *gui-clipboard*Windows 有一个剪贴板,你可以把文本从别的程序“剪”下来,放到剪贴板里,也可以把剪贴板里的文本“粘贴”到别的程序里。在 Vim 里有多种办法完成这些操作。对于其他操作系统请参阅 |gui-selections|寄存器 "* 反应出剪贴板里的内容。|quotestar|当你把 clipboard 选项设定为 unnamed 时,在 gvim 中进行的剪贴操作就是针对剪贴板的,而不用在命令前指定 "* 寄存器了。(比如没设定 clipboard 时,用 "*yy 命令从gvim 中剪一行到剪贴板,:set clipboard=unnamed 之后,直接用 yy 即可 ——译者)默认情况下,标志‘a’不包含在 'guioptions' 选项里。这意味着如果你对选定的文本不进行操作,那么它们不会被复制到剪贴板。当 'guioptions' 包含‘a’时,在你选定文本地同时,这些被选定地文本已经被复制到剪贴板上。(这样,选定文本之后,不用按CTRL-C,直接用 CTRL-V 在别的程序里“粘贴”就可以了。——译者)若想用 CTRL-X, CTRL-C 和 CTRL-V, 这些标准的 MS-Windows 操作方式怎么办?有办法!用 $VIMRUNTIME\mswin.vim 这个脚本解决。你可以把下面这条命令放到你的 _vimrc 文件里: > source $VIMRUNTIME/mswin.vim这样一来 CTRL-C 就变成“复制”命令了,但是原先的 CTRL-C 是中止操作的命令呀,没
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -