VIM学习笔记 工具箱-Windows命令行环境(Toolkit-CLI-Win)

通过命令行环境(Command-Line Interface, CLI),可以更快速地执行操作,并且能够自动化一系列繁琐的任务。比如在多个文件中,批量替换指定的字符串等。下文将介绍在Windows下,搭建运行Linux命令的虚拟终端,并将Vim配置至此Shell环境。

本文并不会详细介绍每个工具的安装步骤和使用细节,而是聚焦于各个工具与Vim相互配合。文中推荐的工具,完全基于个人主观的偏好,您可以在AlternativeTo网站中寻找功能类似的软件。

Cygwin,是 Windows下的Linux命令行环境。它包括一个提供GNU功能性基本子集的DLL以及在这之上的一组工具。

在安装过程中,您可以选择需要的软件包,比如grep、sed、curl等等。你也可以搜索“vim”关键字,找到vim以及相关的工具。

请选择安装“zsh”。之后您可以随时再次运行Cygwin安装程序,以安装和更新软件包。

ConEmu,是一个美观易用的虚拟终端,可以在多个标签中,同时打开Windows命令提示符(Command Prompt),powershell,Cygwin和Git bash等等。

在“Settings...”窗口中,选择“Startup > Tasks”,然后在“Predefined Tasks”列表中新建打开Zsh的任务:

请在以上屏幕截图的黄色高亮区域内,输入以下命令:

set CHERE_INVOKING=1 & set "PATH=D:\cygwin64\bin;%PATH%" & %ConEmuBaseDirShort%\conemu-cyg-64.exe -new_console:p D:\cygwin64\bin\zsh.exe --login -i -new_console:C:"D:\cygwin64\Cygwin.ico"

请注意,本文假设Cygwin安装在“D:\cygwin64”目录;请根据您的实际安装位置,相应调整命令。

使用“Create new console”按钮,可以打开{Zsh::CygWin zsh}:

在终端中使用

uname -a

命令,可以查看当前Cygwin的版本:

使用

cygcheck --check-setup

命令,可以列示当前已安装的软件包:

 

使用

echo $SHELL

命令,可以查看当前使用的shell:

通过

/cygdrive

路径,可以访问本地磁盘:

Oh My Zsh,是由Robby Russell开发的zsh管理框架,使用其预配置的选项,可以大大提高使用zsh的便捷性。

使用以下命令,安装Oh My Zsh:

git clone git://github.com/robbyrussell/oh-my-zsh.git C:\Users\username\.oh-my-zsh

使用以下命令,生成默认的配置文件:

cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc

配置Vim使用Cygwin Shell
Vim在Windows下,默认使用命令提示符 "Command Prompt":

:set shell=$COMSPEC

shell=C:\WINDOWS\system32\cmd.exe

在vimrc配置文件中增加以下命令,将配置Vim使用Cygwin的Shell环境:

" 在当前目录打开bashlet $CHERE_INVOKING=1" 使用Cygwin bashset shell=D:\cygwin64\bin\bash.exe" 缺少--login参数将无法挂载/usr/bin/等目录set shellcmdflag=--login\ -c" 缺省值为(, 需要为bash设置成"set shellxquote=\"" 在路径中使用/以替代\set shellslash" 在PATH变量中增加cygwin目录let $PATH .= ';D:\cygwin64\bin'
在Vim中使用:terminal命令,即可打开Cygwin bash终端窗口:

你也可以使用:!或:shell命令,来执行bash命令。

配置Vim打开Windows命令行
在vimrc配置文件中增加以下命令,将配置leader快捷键以打开Windows命令提示符:

nnoremap <leader>cc :!start cmd /k cd %:p:h:8<cr>

 

参与评论