2021/03/30

カラースキーム選び難しすぎ問題

前置き

初めてMonokaiのビビットなシンタックスハイライトを見た時の衝撃ははかりしれなかったな。それ以前はいくつかのIDEを試していて、各々のデフォルト設定をそういうもんだと思って使っていたから、カラースキームにこだわるなんて発想はなかった。

しかしVimについてあれこれ見聞きして知ってしまったんだな。色付け(カラースキーム)を自分で決められるのか! って。当時は2009年で僕は高校生になりたてだった。その頃にちょうど流行りはじめていたSublime TextがMonokaiをデフォルトテーマに採用したんだっけ、確か。Sublime自体オシャレで憧れたけど一番ビビったのはMonokaiの方だな。まるでデザインアートみたいだと思った。

だからそもそもはSublimeを使いたかったんだよ。簡単そうだったし。でもシェアウェアだからな。Sublimeの野郎は。5000円じゃきかないくらいはした。中学生の頃にMacbookを買ってもらって、高校の入学祝いとして自作マシンの費用まで出してもらったのに、エディタも買ってくれなんて言えないよ。まあ、結局、後でiPhone4のためにアルバイトをする羽目になったから、買おうと思えば買えたんだけど。

でも、当時入り浸っていたPCゲームのクランの人がIRCで教えてくれたんだ。IRCって知ってるか? 離席する時はユーザネームのケツに手動で _Away とかって付けるんだぞ。2015年頃まではみんな大真面目にやってた。ともかく、その人が言ってくれたんだ。Sublimeが買えないならVimかEmacsにしたら? って。

実を言うとimprovedじゃない方はいつの間にか触ってたんだ。Linuxサーバの設定に嫌でも使うからな。検索窓に適当なキーワードを放り込むと、まあ色々出てきた。エディタ戦争とか、両者の違いとか、コンフィグの例とか。ここから細かく経緯を書くと長くなるからさすがに割愛するよ。

それで僕は継ぎ接ぎだらけの.vimrcにMonokaiを適用するところまでこぎつけた。いやあ、感動したな。カラースキーム目当てで気持ちが先行していたから、結局Vimをずっとメインで使うほどには至らなくて今はVSCodeを主に使っているんだけど。

ここまでで1000文字ちょいか。要するに、それくらい僕はMonokaiに深い思い入れがあって、たとえエディタが代わってもMonokaiとは長く付き合い続けていた。今までは。 よし、ようやく本題だ。

目が痛すぎ問題

10代の頃は目の痛みや腰痛がまるで気にならなかった。徹夜なんてカジュアルに当たり前だったし、だからかカラースキームもMonokai以外はなんだか地味に見えて試す気にもならなかった。

これがMonokaiだ。この原色感(実際にはまったく原色ではないが)バリバリのビビットでコントラストのきいた色彩に惚れたんだ。ヤングな10代の頃は考えもしなかったよ。目が痛すぎてその鮮やかさに耐えられなくなるなんて。

そうなんだよ。僕はもうアラサーなんだよ。あと2年とちょっともしたら30歳になっちまうんだよ。徹夜なんて絶対無理になったし、目が滔々と疲労を訴えてくるのが解る。あんまり無理をさせすぎると眼球が早期退職して僕の眼窩から出ていってしまいそうだ。老後もコンピュータをいじって遊ぶつもりなのに。

なので一刻も早く違うカラースキームを探さなければいけなかった。だが、目に優しければなんでもいいわけじゃない。もちろんこだわりはある。それに、低コントラストのテーマにはこういう問題もある。従って、おのずと基本方針は以下の形になった。

基本方針
・目に優しいこと(ライトテーマは自動的に候補から外れる)
・寒色系ではないこと(僕は青色があまり好きではない)
・ジジ臭くないこと(後述)
・VSCode、Alacritty、Vimに同じカラースキームが用意されていること

では、丸一日を費やして検討したカラースキームを紹介していく。vscodethemes.comをひたすら眺め続けるのはだいぶ辛かった。

検討したテーマ一覧

Remedy

「すげー、むっちゃ目に優しいじゃん」と最初はすごく感心したんだよ。だがいくらなんでもジジ臭すぎないか? ジジ臭いっていうのを具体的に言語化するのは難しいが、たぶん暖色系で低コントラストだとジジ臭度が増大すると思うんだよな。色味が茶色がかっているとまるで爺さんが着ている上着みたいに見える。

僕がGruvboxを好きになれないのもきっとそのせいだな。(好きな人がいたらごめん)良いと感じたのは最初の15分間までだった。基本方針も1、2番しか満たしていないし。なによりRemedyと聞くとホメオパシーのあれを連想してしまう。

Base16-Eighties

このテーマはシンタックスハイライトだけに適用されてVSCodeの外観には手を出さない。おかげで低コントラストでもジジ臭度があまり高くない。その上、Base16 Projectはとても盛んに活動しているので、大抵のアプリケーションには同様のカラースキームが提供されている。そういった点では基本方針をすべて満たしていると言える。

だがジジ臭くないのは外観をいじっていないVSCodeテーマだけの話であって、AlacrirttyやVimだとそうじゃないんだ。途端に老け込んじまう。目に優しいのを、とか言っておいて我ながらひどい言い草だが、ハイライトの色味も薄すぎてちょっと物足りない。逆に言えばそれが良いって人には理想的な選択肢の一つなんじゃないかな。

Bear

これは良い。すごく良いよ。 暖色系なのにうまくエレガントにまとまっているし、それでいて彩度の強弱もしっかり意識されている。実際、ほぼ決定寸前のところまでいった。しかしこのテーマは真新しく知名度もそう高くないからか、他のアプリケーションに同じカラースキームが存在しないんだ。Alacrittyのテーマくらいならカラーコードをベタ移植するだけでわりあい簡単に作れたけど、Vimの方は僕の技能じゃお手上げだ。

不満もないわけじゃない。暖色系のカラースキームはえてしてそうだがforegroundが全然白くないんだよ。ギラギラした純白が問題なのであって、茶色とかカーキ色とかにまで発色を落とす必要があるか? 疲れない代わりにテンションも下がりそうになる。

いや、とはいえこれは本当に良いカラースキームだよ。一応キープしておいて、目がむっちゃ疲れた時に使うことは十分考えられる。あんまり文句ばっかり言ってちゃいけないな。

Horizon

え、これって寒色系だろ? 僕もそう思ってたよ。だから当初はスルーしてた。でも違うんだ。実際に使ってみるとパッと見ほど青い感じがしないんだ。少なくとも僕の中ではギリ許容範囲内だ。かなり彩度強めの色が用いられているけど、この青だか黒だかはっきりしない絶妙な背景のおかげで意外に目が疲れない。ハイライトの具合が素晴らしくて気づいたら気に入ってしまった。眼球退職危険度はMonokaiとBearの中間くらいだな。

このテーマはリリースされてから2年半も経っていないわりにはどえらい人気で、既にVimにもAlacrittyにも共通のカラースキームが用意されている。暖色系ではないからジジ臭度は皆無に等しい。

実は本エントリもこれを適用して書いている。当面はこいつをメインで使っていこうと思う。不満があるとすればVimの方は背景の青がやや強く見えるところだな。ハイライトとの組み合わせ次第では僕の許容範囲を若干はみ出る。

HotDogStand

おまけ。罰ゲームに良さそう。おい山田ァ、お前これから1ヶ月間、このカラースキームでコーディングしろよ。 来月末の山田君は眼球が溶けてなくなってそう。退職を待たずして過労死。

©2011 Rikuoh Tsujitani | Twitter | 小説