配置 Vim 使其和 PowerShell 一起工作

从 Linux 转到 Windows 上开发已经过去半个月,在工具上的习惯还没改过来,总会觉得开个大而全的 IDE 显得特别麻烦和低效。(我还特地为了能尽早用上 Bash on Windows 把我的 Windows 10 一口气拉到 Insider Preview Fast Ring。)但是在跑着 Windows 7
的工作机器上,没有了这个选项。所以现在在一些能通过 PowerShell + Script 完成的事情上都会选择用这种方式来完成,例如 PowerShell 默认支持 ls/cd/mkdir/cat 等等我们熟悉的命令,可以完成一些简单的文件操作。

但是有一个很别扭的地方是,PowerShell 缺少可用的文本编辑器入口,因为 Windows 默认的文本编辑器 notepad 是不支持 command-line 模式的。每次要修改一个文件还需要用 notepad 打开修改,保存关闭后再回到 PowerShell 总觉得有点人格分离。幸好,Vim 是有 Win32 版本的,所以我要做的第一件事就是让 Vim 和 PowerShell 能协同工作。

1.安装 Vim for MS-Windows

Vim 的官方地址是 http://www.vim.org/,可以下载到各个平台各个版本的 binary。同时也支持从 git repo 上把 source code 拉下来自己编译。
我下载的是最新的7.4版本,默认安装到 C:\Program Files (x86)\Vim 。

2.创建 PowerShell profile

当你在当前的 PowerShell session 添加别名、函数和变量时,它们仅仅作用在当前的 session,一旦你关闭了这次 session 这些都会丢失。如果你想保留这些更改,最好的方式是添加到 PowerShell 的 profile 里。PowerShell 在启动是会去读取相应的 profile 获得用户配置。
关于 PowerShell profile 的细节这里不展开,详情可以查看:Windows PowerShell Profiles
PowerShell 会在多个用户目录以及系统目录有多个 profile,分别保存相应的用户的配置,避免了不同用户配置的冲突。

这个 profile 仅作用于当前用户和PowerShell,不会对其他用户或者其他 shell 造成影响。
显示 PowerShell profile 文件路径:

确定系统中是否存在 PowerShell profile,存在返回 True,不存在返回 False:

创建 PowerShell profile:

3.修改 PowerShell profile

将 Vim 的路径添加到 profile 中,并且设置别名 vi/vim:

这样,你就能通过在 PowerShell 中输入 vi/vim 来使用 vim 了。

4.修改 vimrc

vimrc 是 vim 的配置文件,保存在 vim 的安装目录下:

这样,你就能通过在 vim 中输入 :shell 指令来让 PowerShell 执行相应的指令。

Programming with Vim

任何一个用过Linux系统或者其他类UNIX系统的人必然会接触一个Geek味浓浓的文本编辑器——Vim。这是在Linux系统中标配的一个文本编辑器,地位相当于Windows中的记事本。类似的还有Emacs。

在Linux的GUI还很弱的今天,我们经常需要在Linux的终端(Terminal),或者是控制台模式(Console Mode)下编辑某些文件,强大的Vim几乎是最佳的选择。

由于不支持鼠标功能,也没有图形界面,相关的操作都要通过键盘指令来完成,需要记忆大量命令,所以Vim的学习曲线相当的陡峭,也因此很多人不喜欢它。

这是不是击中你这伪Geek的G点了?:)

其实只要把这些命令记住了,用起来就得心应手了。

Let`s begin!
Continue Reading…