分子描画ソフトウェアのPyMOLには公式のバイナリ(Incentive ver.)を利用してインストールしたものと、Schrödinger, Inc.のGitHubに置かれているオープンソース版を使ってインストールしたものの2種類があります。
機能は95%くらい同一になるよう設定されているようですが、公式のバイナリ版の方が少し機能が拡張されている代わりに、その機能を使うためには有料またはEducationalのライセンスを取得するよう促してくる形になっています。
普段使いする分にはオープンソース版を使う(Windows版: https://qiita.com/Ag_smith/items/a9670bfd79fb3bf39975; macOS/Linux版: https://qiita.com/Ag_smith/items/58e917710c4eddab46ee) と良いのですが、少々気になるのが見た目の問題です。
macOS版の場合、公式バイナリ版(Educational licenseを使用)はこんな感じ
上1/3のExternal GUI部分の見た目がこのように違っています。
この外観は、実は簡単に変更することができます。macOSでバイナリ版の場合は/Applications/PyMOL.app/Contents/share/pymol/data/pmg_qt/styles/pymol.sty
に、オープンソース版の場合は$(brew --prefix)/opt/pymol/libexec/lib/python3.13/site-packages/pymol/pymol_path/data/pmg_qt/styles/pymol.sty
というファイルで規定されています。
オープンソース版のpymol.sty
ファイルを開いてみると
#builder QPushButton
{
padding: 1px 3px;
}
QPushButton[quickbutton=true]
{
padding: 1px 5px;
}
QMainWindow::separator
{
width: 5px;
height: 5px;
border: none;
}
/* vi:ft=css:expandtab:sw=4
*/
という内容になっていますが、バイナリ版のそれは結構色々書き込まれています(ここでは内容を紹介しません)。
ということで、オープンソース版のpymol.sty
の中身をバイナリ版のpymol.sty
ファイルの中身で上書きすることで、バイナリ版の外観に近付けることができます。以下はmacOSでのコマンドの例です。($(brew --prefix)
を使うことでHomebrewのインストール場所を自動検知しています)
cp /Applications/PyMOL.app/Contents/share/pymol/data/pmg_qt/styles/pymol.sty $(brew --prefix)/opt/pymol/libexec/lib/python3.13/site-packages/pymol/pymol_path/data/pmg_qt/styles/
このコマンドを実行し、pymolを再起動してみた結果がこちら。
External GUIの外観がバイナリ版のそれにかなり近づきました。macOSのダークモードを適用していない状態でExternal GUIのメッセージログが黒背景に白文字になっているところがポイントです。
Windows, Linux版でも同様に該当するpymol.sty
ファイルを探し出して編集すれば同様の効果が期待されます。
pymol.sty
ファイル自体はcssの文法に従っているところが大きいみたいなので(正確にはQt5のスタイルシート)、これを読めばさらに外観を変更することができます。