(2024/02/09 追記) 最新版を作成しました。
私のWSLの設定方法のまとめ。要するに再設定するときのためのメモ。
開発環境としてはLinuxが使い慣れているので、Linuxがほぼそのまま使えるWSLを設定して使っています。
WSLのざっくりとしたイメージは、Windows上の仮想マシン上でLinuxを動作させる感じです。
WSL の設定
インストールされているパッケージを最新版にする。
$ sudo apt update $ sudo apt upgrade
wsltty
WSL用のターミナルです。デフォルトのターミナルは、コピーアンドペーストが(Linuxの)通常と違うのが気になるのでこちらを使っています。
https://github.com/mintty/wsltty/releases からwsltty-****.x86_64-install.exeをダウンロードして、インストールします。セキュリティー警告が出ますが、無視します。以下の設定を行います。
- フォントをMSゴシック、10ptにする
- マウスの右クリックをpasteにする
- Windowサイズを120 x 44にする
claunchからwslttyを起動した場合、アイコンが無い状態で起動されることがあります。この場合claunchに登録する際に、「ショートカットをリンク先に変換」のチェックを外して、claunchの右クリックメニューで「アイテム登録」を選んで登録します。
Ubuntuをアップデートしたりすると、アイコンが表示されなくなることがありますが、wslttyを上書きインストールすると直ります。
.bashrcの設定
.bashrcはプロンプトの設定と、CTRL+Sによるstopの無効化を設定します。
(追記) 2022/10/6 stty stop undefを追加しました。
PS1="\w\$ " stty stop undef
(2023/1/30 追記) WSLのロケールの設定
(2023/1/30 追記) Windows11+WSL2+Ubuntu-18.04の組み合わせで設定をしたところ、sshで別のlinuxサーバにログインすると日本語が文字化けするという現象がでました。
現象としては、catでは文字化けしない、LESSCHARSETを設定すると文字化けしない、コンソールやviでは文字化けするといった感じでした。
Web検索して色々と試したところ、以下のブログ記事の対処をWSL側で実施すると文字化けしなくなりました。
一応内容をここにも残しておきます。
.bashrcに以下を追加する。
export LANG=ja_JP.UTF-8 export LANGUAGE=ja_JP.UTF-8 export LC_ALL=ja_JP.UTF-8
以下を実施して、CUIでja_JP.UTF-8を選択した後、ターミナルを再起動する。
$ sudo locale-gen ja_JP.UTF-8 $ sudo dpkg-reconfigure locales
.inputrc の設定
.inputrcでbellをoffにしておきます
set bell-style none
.vimrc
bellをオフにして、PHPはタブでなくスペースを使うので、expandtabを設定します。
(2022/10/6 追記) syntax enable 時の動作の高速化のため、set regexpengine=1を追加しました。
set noerrorbells set vb t_vb= set encoding=utf-8 set background=dark colorscheme hybrid set t_Co=256 " need for colorscheme hybrid set expandtab set tabstop=4 set shiftwidth=4 set cursorline set ambiwidth=double set redrawtime=10000 set regexpengine=1
こんなものかな。しかし、Linux環境を作るのは簡単になりました。以前はcygwinとかcoLinuxとかでだましだまし使っていましたが、今は普通のディストリビューションのLinux環境が数ステップで作れてしまいます。