WSL
/icons/hr.icon
saitotetsuya.iconEmacs(とSKK)がないと生きて行けないのでWSLでEmacsを動かしたい。
VcXservについては「Emacs-26系で発生するダブルバッファの問題を回避するため、1.20.1.2 以降をインストールしてください。」とのこと
Emacs26の起動時にウインドウサイズが小さくなる問題はGTK3のバグらしい
https://gyazo.com/d74a28948c3dcf24cbb9a848d5d08670
こちらの方はウインドウの問題は出てない?
今までと違うのはlxdeをインストールしているのとDISPLAYの渡し方が環境変数ではなく引数なことくらい
DISPLAYの渡し方は関係ない
普通にインストールしてスタートアップに入れて起動時に起動するようにしておく。
saitotetsuya.iconUbuntu 18.04を入れた
saitotetsuya.iconホームディレクトリはどこにある?
%AppDataLocal%\Packages\CanonicalGroupLimited.Ubuntu18.4onWindows_(ランダムな文字列)\LocalState\rootfs\home\(ユーザ名)
saitotetsuya.iconなんかEmacsが4行くらいに縮んだりいろいろNVIDIAのGPUが認識されなかったりしたので16.04にする
saitotetsuya.iconUbuntu 16.04を入れた
apt install nvidia-384でNVIDIA binary driver - version 384.130が入るのでMX150はサポートされてそう
code:console
$ sudo apt update
$ sudo apt upgrade -y
$ sudo add-apt-repository ppa:kelleyk/emacs
$ sudo apt update
$ sudo apt install -y language-pack-ja
$ sudo update-locale LANG=ja_JP.UTF-8
$ sudo dpkg-reconfigure tzdata # タイムゾーンの変更をする
$ sudo at install fontconfig
$ mkdir -p ~/.local/share/fonts
$ ln -s /mnt/c/Windows/Fonts ~/.local/share/fonts/windows
$ sudo fc-cache -vf
$ sudo apt install -y nvidia-384 nvidia-384-dev
$ sudo apt install -y x11-apps x11-utils x11-xserver-utils
$ sudo nvidia-xconfig
$ DISPLAY=:0 emacs26 # 無事起動
~/.emacs.d/init.elに以下を入れておかないとリサイズしても再描画されない問題があった
(add-to-list 'default-frame-alist '(inhibit-double-buffering . t))
~/.emacs.d/init.elに以下を入れておく
code:~/.emacs.d/init.el
;; VcXsrv環境(WSL)でEmacs26を動かすときはダブルバッファリングをオフにする
(when (and (file-exists-p "/proc/sys/fs/binfmt_misc/WSLInterop")
(>= emacs-major-version 26))
(add-to-list 'default-frame-alist '(inhibit-double-buffering . t)))
WSL環境にいるかを判別する方法は?
saitotetsuya.icon/proc/sys/fs/binfmt_misc/WSLInteropが存在すればWSLが一番楽そう
コンソールを経由せずにGUI版のEmacsを起動する
code:emacs.bat
@echo off
bash -c "DISPLAY=:0 nohup emacs > /dev/null 2>&1 & disown"
このバッチファイルをタスクバーに入れたくても入らない
ショートカットを作って,リンク先をcmd.exeにしてしまえいばいい。
リンク先:C:\Windows\System32\cmd.exe\cmd.exe /c emacs.bat
これだとショートカットを押すとアイコンが2つになる
saitotetsuya.iconWSLのコマンドにAppIDが振られていなくて,ショートカットには振られているので2つになるようだ
saitotetsuya.icon特に実害はないので放置
saitotetsuya.iconEmacsを一度起動するとそれ以降は大丈夫になる。原因を探してるところ
参考にしたページ