「software」カテゴリーアーカイブ

Dark Reader

飽きるまでのことかもしれませんが。
🕶️

かつて古のPCの画面は黒地にグリーンやオレンジ、白の文字と決まっていたものですが、いつのころからか紙に印刷したもののイメージからか白地に黒が基本となってしまっていました。しかし最近はWindowsでもMac OSでも、PCでもスマートフォンでもダークモードが人気を博しているようです。通常はどちらかを選択できたり、時間帯によって昼間はノーマルで夜間はダークモードといった使い方ができると思いますが、一日中ダークモードで使っている人も少なくないのではないでしょうか。

AppleがWWDC 2019のキーノートスピーチで対応を発表したときにはその日一番の盛り上がりでしたし、世界的にも人気であることは間違いないでしょう。一つには自発光式の有機ELのディスプレイでは暗い色のほうが消費電力が小さいから、という理由もあるかもしれませんが、多くの人は見やすいから、かっこいいから、目新しいからといったことからではないでしょうか。私もそうした中の一人です。

ということで、OSがダークモードに対応してウェブブラウザ本体のメニューバーその他UIも暗色で表示されるようになりましたが、その中に表示されるウェブページの内容はそれぞれの運営側が対応させる必要があります。TwitterFacebookなどはUIの刷新とともにダークモードに対応させてきましたが、そういったところはまだまだ少なく、眩しいくらいに真っ白なページで表示されるところが多数派なのが現状です。

それならば表示させる側でダークにしてしまおうというのがブラウザの拡張として実装されているDark Readerというものです。ChromeFirefoxSafariEdgeというメジャーなブラウザに対応しているので、これなら誰でも試すことができるでしょう。

私がその存在を知ったのは「人気の拡張機能『Dark Reader』の悪意あるコピーが蔓延」というソフトアンテナブログ記事だったので、インストールする際には注意が必要です。Dark Readerのホームページにあるリンクからたどっていけば間違いないでしょうが、chromeウェブストアで見ると確かに紛らわしいものが複数ありますので、慎重に選択しましょう。

実は調べてみると1年半ほども前の2018年12月にはGigazineにも「Chrome・Firefox・Safariを簡単に『ダークモード』にできる拡張機能『Dark Reader』を使ってみた」という記事が掲載されているくらいなのでまったく新しいものではなかったので、自分の情報収集能力の衰えを感じてしまいましたが、この記事もRSSフィードリーダーで見ていたはずなのに素通りしてしまったようです。

実際に使ってみると無理やりダークモードにしている割にはかなり自然な感じで表示され、これで十分ではないかと思えるレベルです。本来のページのデザイナーの意図した通りのものではなくなるので、大々的に宣伝すると著作者人格権的な問題もあるかもしれませんが、個人で使用する範囲では問題ないでしょう。ただ、どうしても違和感が生じるところはやはりありますが、そういったところではドメインごとに個別にオン・オフするのも簡単です。

ということで、私は日常的に使っていきたいと思っていますが、いつの間にかダークモード対応していたとしても気づかないということになるかもしれません。また、これに慣れすぎてしまって、他の環境で本来の表示を見たときに戸惑う、なんていうことになってしまうかもしれませんね。

Visual Studio Code + Iosevka

飽きっぽい私が20年以上使い続けてきたものとは?
✍🏼

私はいわゆる付属の高校に通っていたのですが、夏休みの間に大学の学生がプログラミングを教えてくれる一週間くらいの講座があり、その名も確か「プログラミング教室」だったと思います。教えてくれる言語は様々で、CBASICはもちろん、Pascal, LISP, Prolog, Forthなどがあったと思いますが、FORTRANCOBOLがあったかどうかは定かでありません。私は3年間毎年受講していたと思うのですが、最初の年にPrologを教えてもらった以外、他の年のことはなぜか思い出せません。

この15歳の夏、Prologを教えてくれたのは大学院生のお姉さんで、他にPrologなんていうマイナーな言語を希望した人がいなかったので、一対一の贅沢な講座となりました。このとき使用していたマシンはHP 9000 Series 300というUNIXワークステーションで、その上で動いていてPrologの実行環境としても使ったのが、その後永きに渡って愛用することになるテキストエディタEmacsとの出会いでした。Emacsは単なるエディタではなく環境だ、などという人もかつていたくらい、Emacs Lispという言語で機能を拡張することができ、テキストの編集だけでなくメールの送受信やウェブブラウザなどとしても使うことができるので、やりたいことは大抵できてしまいます。しかし、GNU Emacsは現在でも開発が続いていて毎年新しいバージョンがリリースされてはいますが、最初のバージョンがリリースされたのが1985年ということでさすがに設計の古臭さは隠せず、あまり人に勧められるようなものではなくなってきました。

私もこれまでに何度も新しいエディタに乗り換えようと思っていたものの、なかなか決定版と思えるものがなく、体に染み付いたEmacsの使い勝手に勝るものが見つからずズルズルと使い続けて20年以上になってしまったのでした。しかしようやく、これならと思えるものが見つかったのですが、それがMicrosoftが開発しているVisual Studio Code (VS Code)です。Microsoftの製品ですが、Mac OS用やLinux用も開発されており、また”Visual Studio”という名前は付いていますがWindowsの開発環境であるVisual Studioとの直接の関係はありません。

VS Codeは「Node.jsを使ったBlinkで描画されるElectronフレームワークを使用」と、わからない人にはさっぱりだと思いますが、要するに最新のウェブ開発系の技術を使用した今どきのエディタであるということです。私自身は組み込み系のソフトウェアエンジニアなので疎い分野ですが、最新技術の恩恵は受けても良いでしょう。このVS Codeも最初はなかなかしっくり来なかったのですが、それが大きく変わったのはお気に入りのフォントを見つけて使い始めたことで、それがIosevkaというものです。

このフォントの魅力の一つはリガチャが使えるということです。普通はリガチャと言うと”fi”をくっつけて”i”の点を省略したり、”AE”をくっつけて一つの文字にしたりというようなもののことですが、このIosevkaはプログラミング用のフォントということで”->”を”→”に置き換えたり、”!=”を”≠”に置き換えたりすることができるのです。実用的な意味はほとんどなく、表示するアプリケーションが対応している必要もありますが、VS Codeではちゃんとリガチャを表示してくれ、これでなんとなく気分が変わります。

また、ThinからHeavyまで9種類のウェイトが用意されていたり、記号や0, a, iなどの文字のスタイルの組み合わせで12種類のバリアントが用意されていて、好みに合わせて使うことができます。私は0に斜線が入るのとアスタリスク(*)が上付きでない方が好きなのでSS04というバリアントを選んで使っていますが、他にもいろいろな文字で微妙な違いがあるので、こだわる人はGithubで公開されているソースから自分で生成した方がいいかもしれません。

なお、ASCII文字部分にIosevkaを使ってNoto Sansと組み合わせて一つのフォントセットにした更紗ゴシックというものも公開されているので、英字と日本語文字などで複数のフォントを個別に指定できないアプリケーションの場合にはこれを利用するとよいのではないでしょうか。VS Codeではウェブブラウザと同じように複数のフォントを指定することができるので、フォントの設定は非常に簡単です。フォント周りは昔からEmacsの鬼門と言えるところだったので、それが拍子抜けするくらい容易だというだけでVS Codeが素晴らしいものに見えてしまいます。

ということで、このVS CodeとIosevkaの組み合わせがとても気に入ってしまい、たとえ仕事でもコードを書くのがとても楽しくなりました。ここ10年くらいは自分でコードを書かないようにしてきたという面もあったのですが、今の新しい環境が楽しすぎて書かずにはいられませんでした。まあそんなことばかりも言っていられないのでほどほどにしておきたいと思います。しかしここまでVS Codeの何がそんなに良いのかということをほとんど書いていませんが、それは今さら私がここで語るまでもないと思うので、ただ「今どきだ」と言うに留めておきます。

ドラゴンクエスト ウォーク

「ふっかつのじゅもん」は要りません。
🗡️

今年7月に始まった「ハリー・ポッター 魔法同盟」はその後あまり流行っている様子がありませんが、私の目に触れないだけでしょうか。実は私も記事に書いて数日後にやめてしまっていたのですが、ちょっと複雑すぎるような気がしました。「ポケモンGo」がこれだけ受けて、今でも多くの人をひきつけているのはそのシンプルさのせいではないでしょうか。といっても私はポケモンGoの方も同時にやめてしまっていたのですが。

そんな「位置情報ゲーム」の真打ちと言えるのは今年6月に発表されて以来待ちわびていた人も多いであろう「ドラゴンクエスト ウォーク」ではないでしょうか。自分があのドラクエの世界を歩いているかのように、モンスターと戦いながら歩くことで勇者が成長していくというのは、想像するだけでワクワクするものでしたが、ついにその「ドラクエウォーク」が今週サービス開始となりました。私も当日12日の昼休みに職場で早速インストールして、その日の帰り道からプレイしています。

ドラゴンクエストといえば長い歴史を持つゲームタイトルですが、私が大学生の頃には社会現象となっていて、「ドラゴンクエストV 天空の花嫁」の発売の際には開店前から長蛇の列ができていたのを覚えています。インターネット前夜の当時はまだネット配信はおろかAmazon.comも存在しませんでしたから、早く手に入れたければ並ぶしかなかったわけですが、ファミコンを持っていなかった私はまったく波に乗ることもなく横目で見ていただけでした。

そう、私はドラゴンクエストシリーズのゲームはほとんどプレイしたことがないのです。しかし私は中学生時代に「テーブルトークRPG」と呼ばれるロールプレイングゲームの先祖のようなものの、「トラベラー」というゲームを友人らとやっていて、当時からこれをコンピューターでできるようにならないかと考えていたくらいなので、RPG自体は好きなジャンルです。どちらかといえば「ファイナルファンタジー」派かというくらいですが、FFの方もそんなにやっていたわけではありません。なにしろゲームコンソールを自分で所有したことがないのですから。

まあそれはどうでもいいのですが、この「ドラクエウォーク」はまさしく想像していたような作品でした。さすがに一流ゲームメーカーの製品ですし、後発だけあって非常によく研究されています。位置情報ゲームとロールプレイングゲームをうまく融合させつつ、ガチャもしっかり取り込んで、基本プレイは無料としておきながらしっかり儲かる仕組みを用意しています。どうやら強い武器や防具を手に入れる手段はガチャしかないようなので、楽に先へ進もうとすればガチャにつぎ込むことになるのでしょう。

ゲームとしてはクエストを進めていくことになるのですが、各クエストは地図上で目的地を設定して、その目的地に到達すると村なりダンジョンなりに入ってストーリーが進行する、という仕組みになっています。この目的地は現在地から楽に歩いていける範囲の周囲の地点から選ぶか、一日一回だけ任意の地点を設定できる、ということになっており、基本的には遠くに設定したほうがたくさんポイントが貰えるようです。このポイントは武器・防具や、ガチャのチケットに交換でき、また「ミッション」をクリアしたりすると貰える「ジェム」でもガチャが引けます。したがって、無料の範囲でも地道に頑張ればゲームを進めることは十分可能です。

ということで、ゲームが始まってからまる2日経ったところですが、私はすでにレベル22というところまで来ました。このレベルをいくつまで上げられるのかわかりませんが、問題はクエストの方でしょうね。私は今クエスト第2章の終了間際というところにいますが、画面のスペースを見ると今用意されているのは第4章までのようです。今後のアップデートで続々クエストが追加される、ということであると長く楽しめるのですが、どうでしょうか。明確な終わりのある本編と違い、どれだけ長く遊び続けられるかということが収益を大きく左右するジャンルですので、それをどう考えているのかが注目されるところです。