9月の近況

まだCSの可能性はある。頑張れベイスターズ。

GNU nanoが3.0、3.1になった。

GNU nano 3.1が公開されている。その前の3.0ではASCIIの処理が高速化された。また、いくつかのキーバインドが変更されている。

3.1はバグフィックスが主で大きな変更はあまりない。今回の修正レベルだとv3.0.1でも良さそうだが、3.0からバージョニングの取り方が変ったのかもしれない。

2018年6月〜7月中旬の近況

2018年も半年が過ぎてしまった。

GNU nanoが2.9.8になった。

wrappingやjustifyあたりの改善が主。クォートの閉じ忘れでクラッシュする問題が修正されたとのこと。

なお、一ヶ月ぐらい2.9.8-12で更新が止まっていたが、ここ最近で更新が進んでいる。私家版のとのコンフリクトを解消するときに、tigを使っている。tigやっぱり便利だ。

なお、2.9.8-58でついに^?に単語レベルでの削除が実装された模様。

さくらのVPSをUbuntu 18.04にアップグレードした。

nginx/PHPまわりで一部設定を書き直す必要があったが、基本的にはすんなりアップグレード出来た。

私家版GNU nanoの開発にはgcc4.9を使っていたが、これを機会にclangに変更。そしてgnulibの実装を使わないようにする。gnulibではAndroid用にnanoをコンパイルする際に地雷を踏みまくった(パッチもかなり充てた)ので、極力使いたくないのだ。

Android端末で実装が無いと困るのはglobだが、クロスコンパイルでもmuslの実装を一部修正すれば対応出来るのでgnulibを積極的に使う理由が自分にはもう無い。

gnulibを使わないようにするには、lib/Makefile.inを適当に作成して、autogen.shの代わりにautoreconf -f -s -iで良い。

Owltech OWL/BTKB-7801を購入した。

折り畳みキーボードが欲しいなということで購入。英語標準配列というのはこの上ない強みだ。そしてカバーが上出来。10インチあたりでも安定して使うことが出来る。惜しむらくはマルチペアリングに対応していないところ。最近はMediapad T3での利用が殆どだからそこまで致命的ではないけど、Qua Tabにするときに繋ぎ直すのが面倒ではある。

Apex Launcherが4.0.0になった。

いくつかの端末で自動に更新が走って大変な思いをした。1端末だけ難を逃れたので、その端末から復旧。自分はそこまで大きなカスタマイズをしていなかったけど、かなり細かいことが出来ただけに、修正は大変そうだ。

2018年4月後半〜5月初旬の近況

所謂ゴールデンウィーク前後。

GNU nanoが2.9.6になった。

GNU nano 2.9.6がリリースされている。前バージョンでのバグフィックスが個人的には大きいかな。

Huawei Mediapad T3 10

画面は9.6インチで大きいので見易い。解像度は1280×800であるが、ドットの粗さも気にならず、解像度の低さで困ったことはまだない。むしろ指紋の付きが気になる。他の機種と比べてもかなり目立つので、付属の保護フィルムを貼ろうとするも轟沈。自分は極度の不器用なのだ。

保護フィルムを改めて購入したが、自分でやるとまた失敗するのが目に見えている。購入した店で実施しているフィルム貼りサービスを利用した。

片手で持つのは大きさ、重量の点でやはり厳しい部分がある。460gはこのクラスでは最軽量の部類なんだとは思うが。

その点Qua Tab PXは手が小さい自分でも片手で鷲掴みが出来る。そしてなにより軽い。310gしかないのだ。他の8インチのタブレットでもこのレベルの軽さはあまりない。そういう意味でも棲み分けは出来るんだろう。

私家版GNU nano

ようやくAndroid本体のみでGNU nanoがビルドできるようにした。gnulibのmoduleを使わない設定にしてautoreconfを通し、configureをした後にconfig.hとMakefileを修正することにした。

私家版SKK for Android

前の投稿でも伸べたがキーボードは普通にT3 10で動いてくれている。ソフトウェアキーボードが出しゃ張ることもない。しかしshowStatusIconによる入力モードの表示がされないのは気になる。私家版Android for SKKでは通知領域に入力モードを表示させることで凌いでいる。とはいうものの、(priority lowとは言え)通知領域に表示するのもどうかとは思っている。

どうせなら本体の方に組み込んでしまえということで、Composingの文字バッファと入力モードの表示にもInputViewにみ込んだ。

そして候補変換は使っていなかったのだけども、これも使ってみることにした。その際にCadidateViewでの表示だと困る場面が出てきたのでInputViewの方に組み込んで常時表示することにした。非表示にしたいときもあるので、表示/非表示は前述のComposingのViewとあわせてそれぞれキーボードでも切り替えられるようにした。

余談ではあるが、Universla Mobile Keyboardの使い勝手は非常に良いので、先月に2台目を購入した。状態も悪くなく普通に使えている。

2018年3~4月前半の近況

今年もプロ野球開幕。

本家GNU nanoが2.9.5になった。

GNU nanoがv2.9.5になっている。

その前のバージョンであるv2.9.4では指定した文字列をキーに割り当てられるようになった。また、errorcolorに対応、標準では赤背景に白字となっている。

今回のv2.9.5ではM–/M-=の挙動がスクロールしてもカーソル位置を出来るだけ現在行をキープするように変更された。また、色指定で標準としてnormalが指定出来るようになっている。

私家版GNU nanoに機能を追加/削除した。

私家版GNU nanoでは現在行をハイライトする機能を追加。vimでいうCursorLineに相当。行番号自体は既にブックマークの有無で切り替えているので、改めてハイライトしないことにした。ブックマークの表示は行番号のすぐ右の空白にマークの表示に変更するかもしれない。

なお、通常のツーストロークでまかなえると判断したため、ツーストロークトグルは関数としての実装をオミットした。

Huawei Mediapad T3 10

10インチクラスのタブレットが欲しかったのでHuawei Mediapad T3 10を購入。クアッドコアだし解像度は1280×800とスペックは今のご時世からすると控え目ではあるが、このクラスが実売2万円を切るのだから時代の流れというのは凄い。

私家版SKK for Androidの変更

Huaweiの一部機種ではBluetoothキーボードを接続してもソフトウェアキーボードが表示されたままになるらしいが、こいつは一般的な機種と同様にソフトウェアキーボードが消えてくれる。しかし、ステータスバーの右側に入力モードを示すアイコンが表示されてないことに気付く。入力時にどのモードにいるか失念することがあるので表示されていてほしい。

モード切り替え時にToastを出す実装はうまくいかなかった。ATOKではキーボードを接続するとその旨のToastが出るが、それもこの機種では表示がされない。どうも強制的に表示を切られているようだ。

通知であれば問題無く表示されるようなので、モード切り替え時にステータスバーに通知できるようにする設定を追加した。アイコンは小さく表示されてしまうので、極力大きく表示されるようにリサイズした。それでも小さいが、無いよりは全然マシだ。

2018年1月〜2月前半の近況

今年も一月が過ぎてしまった。はやいなぁ。

本家GNU nanoが2.9.3になった

GNU nano v2.9.3がリリースされている。–trimblankでsegfalutが発生する問題の改善。いくつかのキーのShiftキー同時押しのキーコード対応等がされている。地味にM-TabがSh-Tabと同じコードを返すようになっている。私家版では同じコードを返さずにM-Tabのままに戻した。

私家版GNU nanoに機能追加

私家版GNU nanoの方は機能をいくつか追加した。

256色、水平2画面分割に対応

ncursesが6.1にバージョンアップしたのを機会に、256色対応をした。HTMLのカラーコードを指定出来るようにして、少しカラフルになった。

水平2画面分割はなんとなく実装案が閃いたので、思いつくままに実装してしまった。正直「ずるい」実装なので、褒められたものではないのだが、思いの外うまく動いているようだ。

簡易ブックマークとタグジャンプ、バッファリストの実装

行単位の簡易ブックマークとタグジャンプを実装した。簡易ブックマークを行単位の実装にしたのは速度を懸念したため。タグジャンプはgrep -n/gtags/ctagsの形式に対応させた。

バッファリストはタグジャンプ等を使ってバッファを沢山開いている時、前後のバッファが分かり難いので実装。

ツーストローク関連の実装

そろそろ割り当てるキーが足りなくなってきたのでツーストロークキーを実装した。emacsでいうC-x C-cとかを実現出来るようになった。ツーストロークトグルはトグル関連をツーストロークとして呼び出せるようにしたもの。

キーバインドでM-^A等に対応

M-^A等のESC→コントロールコード自体は入力は出来ているのだが、それを解釈させることが標準ではできなかったので、nanorc等で設定出来るように変更した。

HTML Generating Time : 0.055 s