:terminal
何かと話題のvimの:terminal。
ここ一月くらいでvimのmasterへどんどんpushされていっています。
きっと今vimの:terminalに特に興味があるのは、
windows環境でvimを使っている人ではないでしょうか。
私も職場がwindows環境で、日頃はKaoriyaさんのバイナリにお世話になっています。
というわけで、執筆時点で最新のリポジトリからbuildして:terminalを使ってみました。
きっと、:terminalをいち早く試してみたいという方は沢山おられると思いますので、
簡単に手順をまとめておきました。
environment
- windows10 64bit
- msys2 20161025
- vim 8.0.0862
step
まず、今回実施した手順は以下の通り。
- msys2のインストール
- MinGwのインストール
- vimのソースコードの入手
- build
- packageの作成
1. msys2のインストール
これはofficialからインストーラが公開されているので、インストーラからインストールして下さい。
特に今回注意した点はありません。
インストール後にpacman -Su
を実施して必要なpackageをインストールしておけばOK。
インストール後に立ち上がるプロセスでは警告が出たりしますが、もう一度起動してやればできます。
2. MinGWのインストール
次にmsys2のシェルからMingGWをインストールします。
pacman -S mingw-w64-x86_64-toolchain
※ 32bit環境の場合はx86_64
をi686
にします。
どれをインストールするかを聞かれますが、確認が面倒なので私はdefault:All
のまま全てインストールしました。
3. vimのソースコードの入手
buildに向けてソースコードの用意をします。
githubのvim/vimからgit clone
するか、
ダウンロードするなりしてローカルにリポジトリの内容一式を持ってきます。
4. build
それではいよいよ用意したソースコードをbuildします。
buildはvim/src
ディレクトリで行って下さい。
$ cd path/to/vim/src
$mingw32-make -f Make_ming.mak GUI=yes ARCH=x86-64 TERMINAL=yes clean
$mingw32-make -f Make_ming.mak GUI=yes ARCH=x86-64 TERMINAL=yes
※ 今回buildしたverはdefaultでTERMINAL=no
となっているので上記の様にしてenableにして下さい。
※ これも32bit環境の場合はx86-64
をi686
にします。(実際は内部で自動検出されるので、ARCH=自体が省略可能です)
※ CUI版も必要な場合は別途GUI=no
にてbuildします。
これでエラーなくbuildされると、カレントにgvim.exe(vim.exe)
が作成されます。
あとは次のstepで必要なファイルとpackagingすれば使えるようになります。
5. packageの作成
最後に、依存ライブラリや必要なファイルと一緒にpackageにします。
結果的に以下のような構成となりました。
iconv関連の依存ライブラリは:terminalとは直接関係ありません。
2017/08/05 17:17 <DIR> .
2017/08/05 17:17 <DIR> ..
2017/08/05 13:57 3,151,872 gvim.exe # buildしてできた実行体
2017/08/05 15:46 44 gvimrc # gui向けの設定ファイル
2017/03/06 14:30 1,056,753 libiconv-2.dll # 以下3ファイルはmsys2のbinから(iconvオプション向け)
2017/02/21 17:26 133,779 libintl-8.dll
2017/07/13 16:35 57,379 libwinpthread-1.dll
2017/08/05 13:45 <DIR> vim80 # ここへはvim/runtimeの内容を全てコピーする
2017/08/05 15:46 101 vimrc # gui/gui共通の設定ファイル
2017/06/01 11:08 901,632 winpty-agent.exe # 以下2ファイルはGit/usr/binから
2017/06/01 11:08 830,976 winpty.dll
それぞれコメントに従って必要なファイルを持ってきてもらえればよいです。
winpty関連のファイルは今回はGitに同梱されているCygwin環境から持ってきました。
vimが端末になったぞ!!
というわけで:terminalが使えるようになりました。
実用はKaoriya-vimへの依存が強い今はまだ無理かなーという感じですが、
早くいろんなシチュエーションで使ってみたいですね!!
reference
vimのbuildについて以下のページを参考にさせて頂きました。