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

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

fzfでコマンド履歴を選択

fzfとかpeco、便利ですよね。

私のzsh設定では、Ctrl-rの履歴検索を、fzfを用いたものに変更しています。 よく書いてある設定を利用すると重複している履歴も表示されてしまうのですが、これを除きたいと思い、改良してみました。 以下でできます。

function fzf-history-widget() {
    local tac=${commands[tac]:-"tail -r"}
    BUFFER=$( ([ -n "$ZSH_NAME" ] && fc -l 1 || history) | sed 's/ *[0-9]* *//' | eval $tac | awk '!a[$0]++' | fzf +s)
    CURSOR=$#BUFFER
    zle clear-screen
}
zle     -N   fzf-history-widget
bindkey '^R' fzf-history-widget

ポイントはawk '!a[$0]++'で、これで重複を除いています。sort | uniqだとソートされてしまいますが、これなら順番を維持したまま重複を除けます。

こういうのを調べていると、シェル芸にも興味が出てきたりしますね。

Wineのフォントを綺麗にする

いろいろなところにやり方が書いてあるが、情報が古かったりする。

mattintosh.hatenablog.com が一番参考になるが、情報が多すぎて混乱するので必要最小限のことだけまとめておく。

$ wine regedit

レジストリエディタを起動して、 HKEY_LOCAL_MACHINE -> Software -> Microsoft -> Windows NT -> CurrentVersion -> FontSubstitutes の中の"MS Shell Dlg"を編集、好きなフォントにする。 IPAMonaUIGothicなら問題ないことを確認している(あらかじめMac側にインストールしておくこと)。

フォントを~/.wine/drive_c/windows/Fontsに入れるという記事もあるが、これは不要。

あとは

$ winetricks settings fontsmooth=rgb

が多分必要。 (参考:How do I enable font anti-aliasing in Wine? - Ask Ubuntu

これで再起動させれば、綺麗になってるはず。

Wine上のアプリケーションからBluetoothスピーカーへ音を出す

Wineで動かしたものだけ、Bluetoothスピーカーから出てくれなかったのでメモ。

winecfgのAudioタブで、Outputを変更する。それだけ。

PDFに目次を追加するソフトウェア

Mac上でPDFの目次(しおり、bookmark)を追加・編集するソフトが意外に見つからなかったのでメモ。

一つはJPdfBookmarksGUIでもCUIでも使える。

あとはcpdf、 GhostScriptでもできるらしい。