海月玲二

えーと、ユーザーから見た違いは、

  • データのエクスポート・インポート機能
  • メモの内容を表示中に画面がオフになったりしても、表示が引っこまなくなった

という点である。本来、2つめの点を直そうとして手をつけたものである。つまり、「料理中にレシピなどを表示して、野菜を切ったりしてるうちに画面が消えると、表示してたポップアップが引っこんでしまう」というのがウザくなったからだ。

しかしこれを直すのは微妙にめんどうだった。そもそも、Androidでは「スクリーンオフになる」というのは、別の画面に遷移したとかバックキーを押したときとかと同様の「表示中の画面が見えなくなる」の一種にすぎないので、区別しづらい。「画面が遷移するときはポップアップも消えてほしいけど、スクリーンオフのときは消えないでほしい」というのは、なんというか手動で判定するかんじになる。ちゃんとできてるかイマイチ自信がない。

あとついでにエクスポート・インポートをつけてみた。なにしろ最近のAndroidは「よそのファイルを直接触らせないぞ」感が超すごいので、バックアップとか別端末へのデータ移行とかがめんどうなのである。もはやデータディレクトリを指定する設定はなくしたほうがいいのかもしれない。

いやまあね、携帯電話などというものをサポートする側としては、結局安全側に倒すしかないんだろう、ということはわからんでもないけどね。しかし窮屈なものだよなあ。「一切の保証が無効になります」とか警告してrootモードをつけてほしいなあ。

実に3年ぶりのバージョンアップだが、下と同様、たいした話ではない。これも本質的には最近の開発環境に対応させただけである。まあ、それだけではなんなので、多少はユーザーから見える違いもある。

  • 設定画面を整理した
  • 変換辞書は初回起動時に自動で解凍されるようにした

辞書の自動解凍は、初リリースからなんと11年たって実装された。驚くべき引き伸ばし。いや、思ったより手間はかかったんだよ。

ところで、最近の開発環境に合わせて修正していて今回いちばん驚いたのは、なんかKeyboardViewとかKeyboardとかのクラスが軒並みdeprecatedにされていたことである。しかもその理由が「このクラスは単なる既存のクラスの組み合わせにすぎないし、要るなら自分で実装したらいいよね」みたいな感じだった。ふざけた話と言わざるをえない。そりゃまあ単なる便利クラスかもしれないが、消す理由はないだろ。実装しなおすのめんどくさいし。

まあ俺は別にGoogle playに出してるわけじゃないから、これは気にせず残してるけどね。そのうち自前のものに直すかもしれないけど。気がむいたら。

というかね、前から思ってるんだけど、Google的にはIMEなんぞあんまり作ってほしいわけじゃないんだろうか? サポートが適当すぎる。APIドキュメントもたいへん説明不足だし。

実を言うとSKKServiceに「設定を読みなおせ」とか「個人辞書をcommit()しろ」とか通知するつもりでsendAppPrivateCommand()とかいうのを使ってたんだけど、どうもこれはそういう使いかたをするためのものじゃないようだ、というのに今さら気付いた。よくわからないが、Broadcastを使って通知するようにしたら、いちおう期待通りに動いているようである。

そういえば、辞書の追加機能をテストするためにSKK用の絵文字辞書なるものを入れてみたら、ふつうに絵文字が入力されてちょっとおもしろかった。もともとutf-8なので変換の手間もないし、もうこれは絵文字変換をサポートしていると言っても過言ではないのでは。いや実際使うわけじゃないけど。

画像を見ているときに、ソート順を覚えていなかったりとか最後と最初の間をスワイプで行き来できなかったりとかが微妙に不便に思えたので、ちょっと直した。

しかし2年ぶりぐらいに触ったので、ほんとちょっと直したいだけなのにいろいろと修正点が増えてて大変だった。Android Studioやらgradleやらのバージョン、ライブラリのバージョンなんかがことごとく上がってるし、前は問題なかった書きかたがいくつもdeprecated扱いになってて「直せよな」マークがいっぱい出てきた。

いやまあ、別に文句を言いたいわけではない。むしろ、ソフトウェアというのはこういうものなのだ。ユーザーとしては同じことをしたいだけでも、時代が変わるとあれこれ修正しなければならない点が必ず出てくる。この点については、Googleが特に邪悪だというほどのことはない(その他の点については知らん)。

この話をいつものように大学に対する文句につなげておくと、大学でソフトウェアシステムを発注するときに、「一定の金額を払って完成品を納品してもらっておしまい」という形態の契約になっているのはおかしいのだ。ソフトウェアシステムを発注するというのは、すなわちサービスを契約するということとほぼ同義だ。定常的に予算が必要なんだよ。どうでもいいが普通の企業でもこういう間抜けなことは起きてるんだろうか。

しかしRMSの人はずいぶん先見の明があったことだと思う。俺は90年代でもソフトウェアというのは完成品を入手して終わりだと思っていた。

2022-01-30(日)

無題

SymPyという数式処理システムがある。数式処理システムという言いかたが正しいかわからんが、いわゆる数値計算じゃなくて、シンボル計算的に式を簡単化したり導関数や原始関数を求めたり方程式を解いたりとかそういうことをしてくれるやつだ。こいつの特徴は、普通のソフトウェアではなくてpythonのライブラリであるということと、cで書いたライブラリを呼び出しているとかじゃなくて完全にpythonで書いてあるということである。

完全にpythonで書いてあるので、基本的にはpythonインタプリタが動くなら動く。俺がここで言いたいのは、「Termux環境でもSymPyは普通にインストールできるし、ちゃんと動く」ということである。動くのかどうかあれこれ調べてもはっきりした情報が出てこなかったので悩んでいたのだが、試しにpipでインストールしたら普通に動いてしまってびっくりした。unicode文字出力をオンにすれば、数学記号っぽい表示までできてしまう。

俺は某学校のさんすうの授業の準備のため、ときどき方程式の解とか式の展開とかが正しいかチェックする必要があって、今まではスマートフォンにさんすう電卓アプリの類を入れたりしていた。しかしああいうのはどうも、いちいちネット接続を要求したりとかいつのまにか有償になってたりとかして困っていたのだ。SymPyを使えば問題がなくなりそうで、たいへん喜ばしい。

もちろんSymPyはライブラリなので、いちいちUIなどは持っていない。でも別にpythonインタプリタをインタラクティブモードで動かせばいいのだ。なんならTermux:GUIとか使ってUIを作ってもいいかもしれんけども。というかいろいろ入力するのがめんどうなので一瞬SKKにマクロ機能でも付けようかと思ったけど、まあ補完と履歴で十分かなあ。

darktableマニュアル日本語版をバージョン3.8にあわせて更新した。今回マニュアルのOverview(概要)のところがかなり改訂されていて、もうdarktableチュートリアルは「これ読んどけ」でいいんじゃないかなと思う。特に「モジュール3つだけで画像処理」のところ。

公式でマニュアルの翻訳をやってる人が苦労しているようなので、俺もちょっと様子を見てみたのだが、確かにどうもよくわからん。webインターフェースだと「ファイル単位でアップロードする」みたいな機能が見当たらないんだけど、もしかしてそういうのはコマンドラインからやれってことなのかな?

あとやっぱり、ドキュメントをローカルで生成してみるには、どうしてもnpmをインストールしないといけないっぽい。めんどくさいな。

ところで、3.8でめでたく日本語インターフェースが復活したわけだけど、どうも「デフォルトのフォントがイマイチで見づらい」問題があるようだ。とりあえず緊急避難的にテーマファイルを作って置きかえるという対処も紹介されていて、まあこれでもいいんだけど、darktableのテーマcssは設定で好きなように上書きできるので、たぶんそっちを使ったほうが楽だと思う。

つまり、

  1. 設定の「一般」を開く(下のやつ)
  2. 「選択したテーマを以下のCSS調整にしたがって修正する」をオンにする
  3. 下のでかい入力欄に、/usr/share/darktable/themes/darktable-elegant-darker.cssの内容の26行目以降(最初のほうの、@で始まってる行やコメントは不要。「*,」という行から)を貼りつける
  4. 4箇所のfont-family指定の、一番最初のところに好きなフォント名を書く
  5. 右下の「CSSを保存し適用する」ボタンを押す

これでいけるはず。


2022-01-20(木)

無題

最近ツイッターのどこだかで「ホテルの部屋のテレビで、HDMIポートを解放してPCとかを自由につなげるようなのがもっと増えればいいのに」みたいな発言を見た。

でも、今まで俺が旅行してるときに泊まった適当なホテルは、だいたいそういう感じだったように思う。だからいつもraspberry piとケーブルを持って行ってたし、ホテルを探すときもテレビがあると書いてあるとこをわざわざ選んだりもしていた。

もしかすると日本のホテルではポートを塞いであるのが普通なのか? 日本でホテルに泊まったことあんまりないから知らなかった。夏に友人たちと集まったりするときに使う貸別荘の類では、だいたいテレビの接続端子はやっぱり自由に使えてたし。しかしなんでわざわざ塞いでるんだろうね。何かの不正使用ができるでもないし、そこまで壊れやすい端子でもないと思うけど(というか多少壊れてもそんなに困らなそう)。

しかし、「テレビがある」という条件で宿泊先を探すと、わりと選択肢が減ったり値段が上がったりすることも多かったので、最近やっと携帯用LCDと一体化させたらコレだよ。次はいつ旅行に行けるだろうか。

2021-12-31(金)

無題

今年はオンライン授業に新しくペンタブレットを導入してみたり、ひさしぶりに対面授業が復活したり、来年度からの授業がだいぶ変更になる話が来たり、知り合いから突然お国の仕事の孫請けが来たり、仕事に関してはそれなりにいろいろあった。

しかしそんなことはどうでもいいのだ。所詮一生フリーターの俺にとって、仕事なんぞ別になにも重要ではない。問題は、もうそろそろ丸二年間旅行に行けていないという事実である。まったくこのクソウイルスは本当になんとかならぬものか。「人類に対して致命的に危険である」という特徴があるのではなくて、「現代人の活動を効率的に阻害する」ということに関して非常に向いた特徴を持っている。こんなものが出現するとはねえ。

あと今年やったことと言えば、darktableマニュアルの翻訳ぐらいか。ある人が連絡をくれて、なんか本家に入れるよう努力してくれるという話なので、せめて最新バージョンに追随するぐらいはしておこうかな。とりあえず、3.8の目玉機能のひとつであるdiffuse or sharpenのマニュアルは日本語にしてみた。

それからキーボード完全自作もやってみた。これは確かに、ひとにお勧めしたくなるぐらいには面白い。こないだ作ったやつも、もうちょっと改良できないかあれこれ考えている。コンパクトさを保ったまま機能を追加するというのはなかなか難しそうだが。

あと猫たちは今年もげんきだった。よく言われることだが、うちでも去年から飼い主が家にいることが多いので、なんかうれしそうだ。