Arch LinuxでMacの3本指ドラッグを再現する

github.com

で実現できる。Arch LinuxではAURの AUR (en) - xf86-input-mtrack-git をインストールする。 あとはREADMEの最後にあるとおりに設定すれば、3本指ドラッグが実現できる。

しかしそれだけやって再起動すると、トラックパッドが反応しなくなってしまう。 (このような自体に陥った場合はCtrl-Alt-F1(~F7)で端末に入れるので、そこで設定すればいい。) 原因は

github.com

で、あらかじめ自分のユーザをinputグループに追加しておけば良い。 具体的には、

# gpasswd -a [Username] input

で良い。 これでタッチパッドが動くようになった。

ちなみに参考までに、私の設定は

github.com

に公開してある。

Arch Linux (GNOME)でBluetoothスピーカーの音質が悪くなる問題の解決

私は部屋では

で音楽を再生している。Arch Linux (GNOME)上でこれを使おうとしたところ、ペアリングと再生自体はできるのだが、音質が極端に悪くなってしまって困った。具体的には酷いノイズが乗る。

解決策を調べたのだが、再生ができないという報告はあっても音質が悪いという報告は見つからず、少し手間取った。 備忘録的に試したことと結論を記しておく。 解決策だけ知りたい人は、最後の結論だけ読めば大丈夫。

今までの操作

GNOMEの設定からBluetoothを有効化、GUI上でペアリング。同じく「サウンド」の「出力」でデバイスを選択すると、一応音は出る。 プロファイルがHSP/HFPA2DPの2種類選択できるが、どちらを選んでも酷いノイズが乗る。

試したこと

Bluetoothスピーカーやイヤホンについては、

Bluetooth ヘッドセット - ArchWiki

にArch Wikiの記事がある。

読んでみると、プロファイルにA2DPを選択すればいいらしい。しかしGNOME上から選択しても効果はない。 bluetoothctlで設定してみるが、結果は同じ。

pavucontrolというのをインストールしてみる。これはGUIでpulseaudioの設定ができるツールらしい。 開いてこちらでA2DPを選ぼうとすると、こちらでは無効(だったか?詳細は忘れた)と表示されている。 つまりA2DPに設定できていなかったのが原因らしい!

Bluetooth ヘッドセット - ArchWiki

の箇所にそれらしきことが書いてあるので、pacmdコマンドを試してみるが、エラーが出て失敗する。

そこで、「GDM ユーザーで pulseaudio ソケットをマスク」というのを試してみたところ、無事A2DPが選べるようになり、ノイズを消すことができた。

結論

「GDM ユーザーで pulseaudio ソケットをマスク」すればよい。 具体的には、

# mkdir -p ~gdm/.config/systemd/user
# ln -s /dev/null ~gdm/.config/systemd/user/pulseaudio.socket

を実行する。sudoでやらないと権限が足りないはず。 その後再起動してA2DPを選べば、問題は解決するはず。

残る問題

これをやっても何かの拍子に音声が遅延して乱れたりすることが非常に多い。 接続直後は問題ないのだが、音声が途切れたりすると起こるようだ。 結局相性が悪いのかもしれない。

Evinceで日本語を表示する

EvinceはGNOMEの標準PDFビューアーである。 LaTeXで作成したファイルを開こうとしたのだが、日本語部分だけ表示されない。 fontconfigを変更すれば良いという解決方法も出てくるが、このためだけに変更するのは何か違う気がする。 次のサイトに解決法があった。

archlinux-blogger.blogspot.jp

poppler-dataをインストールすればいいらしい。 無事手元でも日本語が表示されるのが確認できた。

Arch Linuxにmikutterをインストールする

詰まったのでメモしておく。 yaourtでインストールしても実行するとgtk2でコケる、自分でインストールしようとしてもbundle installでやっぱりgtk2のところでコケる、という状況になった。 bundle installではgdkkeysyms.hが見つからないと言われるのだが、一応存在はしているし、対処法がわからなかった。

結局この記事のおかげで助かった。

row-thermit.blogspot.jp

この人と同じように、

sudo ln -s /usr/include/gtk-2.0/gdk /usr/include/gdk

とすることでbundle installが通るようになり、mikutterを起動することができた。

一応直ったのだが、どうにも仕組みがよくわかっていない。

Vimでairlineからlightlineに乗り換えた

ステータスバープラグインとして有名な両者だが、今までGitHubのスター数が多いからという理由だけでairlineを使ってきた。 だがairlineの挙動が把握しづらいので、lightlineに乗り換えてみた。

結果は上々。 設定方法がわかりやすく、自分の好きなようにカスタマイズしやすい。 vimscriptに慣れていないと設定方法に戸惑うかもしれないが、作者の解説を読んだり、 他の人の設定をコピーして動かしているうちにわかってくると思う。 慣れていない人はvimscriptの辞書型と配列の文法を復習しておくと良い。 itchyny.hatenablog.com

早く乗り換えれば良かった。

MacVimで指定した日本語フォントが使用されない

MacVim(GUIの方)で、guifontwideを正しく設定しているのに正しい日本語フォントが使用されないことが頻繁にある。 プログラミングなど日本語がコメントくらいにしか出てこないときはいいのだが、TeXを書いているときなどは気になって仕方がない。

対処法としては、MacVimの環境設定→Advancedから「Use Core Text Renderer」を無効化すればいい。 ウィンドウを立ち上げ直せば設定が反映されるはず。 ただこれをすると描画がとても遅くなる。 面倒だが日本語文書を扱うときにだけオフにするのがいいかもしれない。

VirtualBox上でCtrlとCapsキーが入れ替えられない件

ゲストはArch LinuxXorgでのキーボード設定や、GNOME上での設定など色々試したのだがどれもダメだった。

前はできた気がするのだが、どうやらいつからかできないようになったらしい…? #13404 (Swap Ctrl/Caps Lock not working in VirtualBox 4.3.16 -> intentional change) – Oracle VM VirtualBox

残念だがホスト上で設定するしかなさそうだ。