藻ログ

都会でOLをしています

WSLでneovim

TL;DR

  • 普段 vim 以外使わないので,ひょっとしてOSは別になんでも良いのではないかと思い始めた
  • WSL環境でneovimがちゃんと動くのか気になった
  • 結論→動いて快適

WSL (Windows Subsystem for Linux) の導入

1. Super + x > コントロール パネル > Windowsの機能の有効化または無効化 > Windows Subsystem for Linux (Beta) > reboot
2. 設定 > 開発者向け機能を使う > 開発者モードにチェック

これで super > bash を入力すると bash on ubuntu on windows が立ち上がる.
Windowsローカルのファイルは/mnt/c/にマウントされてる.

Terminal なんとかしたい

Bash on Ubuntu on ... の端末が(特に日本語周りが)辛いので,wslttyを使う*1
wslbridge と mintty については以下を.
Big Sky :: Bash on Ubuntu on Windows の最高の端末環境を教えてやるからちょっと来い。
現在はビルド済のものが配布されているので,インストーラから入れると楽.
github.com

全然関係ないけどminttyの作者がminttyであるの知らなくて,issueで端末が喋ってて動揺した.
f:id:nisimur:20171109231946p:plain

起動時のシェルを zsh にしたい

wsltty はデフォルトで /bin/bash をwslbridge に渡すようになっている*2
github.com
wsltty 起動時の引数変更でうまくいくかと思ったが無理だったので,雑だが ~/.bashrc に以下を記述して対応することにした.

if [ -t 1 ]; then
    exec zsh
fi
11/10 追記

起動時の引数*3/bin/wslbridge -C~ -t /bin/zshとしたらできました.

neovim

普通に入れる. :terminal も快適に動作する.

$ sudo add-apt-repository ppa:neovim-ppa/stable
$ sudo apt-get update
$ sudo apt-get install neovim

細かい設定については以下. 何か困ったら:CheckHealth したら大体解決できる.
wakame.hatenablog.jp

その他

X Forwarding

linuxマシンにつないでX転送したいのでXmingを入れる.
sourceforge.net

キーボード

(USキーボード)英かな変換を左Alt-右Altで行う
github.com

Caps と Ctrl を入れ替える
technet.microsoft.com

起動時に立ち上げるアプリケーションに設定

Super + R > shell:startup を開く
Xming,alt-ime-ahk のショートカットを入れておく

まとめ

  • linuxサーバでもWin10ローカルでも快適に作業できるようになって満足した.

*1:ConEmu や Cmder がありますが,どっちも日本語には難がある & 余計なキーバインドが設定されていてvimと衝突する.

*2:ログインシェルをchshするのでは対応できない

*3:wsltty の ショートカット > プロパティ