<<2014-092014-11>>

2014-10-13[月] linux Mint(Ubuntu)で 窓使いの憂鬱 を使いダイアモンドカーソル

linux でも win や mac 同様にダイヤモンドカーソルを使いたいので、キーバインディングソフトの「私家版 窓使いの憂鬱 for linux & Mac (Darwin) 対応版」 を使用させてもらってる。

といってもlinux入PCはディスプレイ繋げず置物化していて、(格安)noteの設定のために数ヶ月ぶりに立ち上げてみればダイヤモンドカーソルが効かなくなっていて... なんぞ設定変わった?

と、ま、そんなこともあり、linux Mint 17(Ubuntu 14.04系) で窓使いの憂鬱をダイヤモンドカーソルで使用するためのメモ.

ざっくり やったことは

  • IME で CapsLock/英数(EISU)キー を使用しない用にする
  • 窓使いの憂鬱 for linux & Mac のダウンロード
  • ソースをコンパイルして インストール
  • 自動起動用スクリプトの設定
  • ダイヤモンドカーソルな定義をした ~/.mayu ファイルの作成
  • 再起動

な感じ。

IME の設定

キー配置的に CAPSLOCK/英数キー をダイヤモンドカーソルする拡張キーにしたい。

IME で 英数キー が使われていると不味いので、IME の設定(プロパティ)で英数キーを使ったものをすべて削除か別のキーに割り当て直しておく。

例えば Mozc なら

"(スタート)メニュー"→"設定"→"Mozcの設定"→"一般"→"キー設定の選択"の処の"詳細"→(各種キー設定)

あたり. (複数のIME入れてるならそれぞれ対処... 面倒なので己はAnthy削除してMozcだけにしてる)

mayuのダウンロード、コンパイル、インストール

http://www42.tok2.com/home/negidakude/ から mayu-0.12.1.tar.gz をダウンロード.

適当なフォルダで展開(tar xvzf mayu-0.12.1.tar.gz)し、そのディレクトリに移動(cd mayu-0.12.1).

その中に入ってる README(or INSTALL) テキストを参考に作業...だけど2011-11年以降の環境の変化でそのままでは駄目な場合があり、ググれば幾つかのサイトで対処方法が公開されているのでそれらも参考。

まずライブラリをインストール.
sudo apt-get install g++ libboost-regex-dev libboost-dev libudev-dev libusb-1.0-0-dev

ubuntu系だし起動時から使うので
/etc/modules の最後に uinput の1行追加.
※README に書かれている update-modules はすでに廃止されたコマンドのようで無かったが、実行しなくてもよさげ(?)

./configure は こちら等にあるようにエラーでるので
./configure --with-boost-libdir=/usr/lib/x86_64-linux-gnu/
にして実行(x64用. 32bitなら別のディレクトリ)

make するとエラー出るので先のサイトに書かれてるように msgstream.h の setp を this->setp に置換(3箇所)してから
make
そして
sudo make install

自動起動

こちら で公開されてる定番のスクリプトを使わせてもらう。
サイトにあるスクリプト部分をコピペして(自分のユーザー名に書換える部分は書換えておいて) /etc/init.d/mayu にセーブ、実行可能に変更.
...なんだが、どうもubuntuの変更か何かの影響でエラーで動かなくなった模様。

ググると対処されてる方がおられて、こちらの頁.
そこに書かれてるスクリプトをコピペすれば...だけどタブ消えてたりちょっと面倒そうだったので、必要な変更箇所だけ抜き出して、元のスクリプトに反映.
具体的には元のmayuスクリプトの最初の1行を

#!/bin/bash
# Start/stop the mayu daemon.
#
### BEGIN INIT INFO
# Provides: mayu
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: mayu
# Description: Enable service provided by root
#
### END INIT INFO

に置き換えた.

/etc/init.d/mayu ができたら ([追記] update-rc.dの指定違い等修正)

sudo /sbin/insserv -v mayu

あるいは

sudo update-rc.d mayu start 17 2 3 4 5 . stop 17 0 1 6 .

で自動起動されるように設定.
(どうも update-rc.d の引数無視されてデフォルト設定か BEGIN INIT INFO の内容か何かで設定されるようにみえる)

ダイヤモンドカーソルな定義ファイル

ダイヤモンドカーソル、てか、vz系の操作を元に 設定してみたキー (ここでの ^ はCapsLock/英数キーの意)

^E^X^S^D(上下左右) ^A^F(単語移動) ^R^C(頁移動) ^H(BackSpace) ^G(Delete)
^QF(検索) ^QA(置換) ^QS(行頭) ^QD(行末) ^QR ^QC(ファイル先頭/末移動)
^T(HOME) ^V(END) ※vzと違うけど楽にHOME/ENDしたく
^TAB(CapsLock/英数) ※念の為

書いてみた定義ファイルの内容は以下

include "linux109.mayu"

keymap2 Q2
key *r = C-HOME
key *c = C-END
key *s = HOME
key *d = END
key *f = C-F
key *a = C-H

keymap Global
mod mod0 = !Eisuu
key M0-e = Up
key M0-s = Left
key M0-d = Right
key M0-x = Down
key M0-r = PageUp
key M0-c = PageDown
key M0-h = BackSpace
key M0-g = Delete
key M0-a = C-Left
key M0-f = C-Right
key M0-t = Home
key M0-v = End
key M0-q = &Prefix(Q2)
key M0-TAB = Eisuu

こいつを ~/.mayu でセーブ.

"置換"(^QA)はソフトによって結構キー違うものなので定義しないほうが無難かもだが、GEditが MS(VS)系を踏襲した CTRL-H だったのでそれを設定してる.

HOME,ENDの扱いはmacよりWinと同様のことが多そうなので そのあたりは素直に設定。なのでmacと違い^t ^v の必要性ないけれど自分が使うかもで用意(いらなければ削除)。^TABでの英数(CapsLock)キー動作は...自分で使うことはほぼ無さそうだけど念の為用意.


ひと通り設定がすんだら、再起動、問題なければ CapsLock/英数キーでダイヤモンドカーソルできるはず.




2014-10-12[日] 古noteでlinux ―― linux(gnome) で経年劣化した液晶モニタの黄色具合の改善

少しはマシな実機でlinux環境を常設したく、ちょっと前にヤフオクでOS無のジャンク扱いな core2duo(1.6GHz) 2GB の古ノートPC(FMV s8245)を入手。 外装禿げてるし画面もキーも黄ばんでるけど バッテリィは電源抜いても即落せずそれなりに持つし、 送料手数料込 4000円位の7歳児としてはまずまず。 (core i系はまだ高くなりやすいけど、core2duo は64bit使えて性能の割に安く入手しやすい感じ)

とりあえず linux Mint 17(cinnamon) の64bit版をインストール、すんなり動作。あっけない。

で、まともに使えてると気になるのは画面の黄色具合。
液晶は種類によるけれど経年劣化で黄色がかってくるモノがあり、 そういうのを承知で入手したが、いざ触りだすと結構気になってくる。
モノクロ写真を壁紙にすると セピアぽくなるのは味があるっちゃあるけれど。

BIOSみてもディスプレイのRGBを調整するような項目はなく、 Win の(Graphics Card)メーカー製ドライバ/ユーティリティのようになんらかの色味調整機能が、linuxでも何ぞないかなとみてみれば、

 "(スタート)メニュー"→"設定"(または"システム設定")→"色(カラーマネージメントの設定)"~

がそれっぽい。(他の gnome環境でも gnome-color-maneger がinstallされてたらたぶんそれ)

が、用意されたプロファイル(iccファイル)を選択できるが、直接色を調整する機能はなさそうだ。(キャリブレーション機器があればそれを使っての設定はできる模様)

ただ、プロファイルの一つに Blue(Bluish.icc) というのがあり設定すると画面が青みがかる。
通常用らしき D65(Gamma6500k.icc) と見比べると、VCGT という項目でのガンマのパラメータが違い、緑や赤が低い値になっている模様。 (VCGT は Video Card Gamma Table らしい. グラボのガンマ・パラメータを設定するもののよう)

つまり、今の液晶のへたり具合を補正するような icc ファイルを用意できればよさそうだ。 iccファイルを覗くと vcgt というタグがあるようでそこにガンマテーブルぽい値も見受けられる。 (ただ たいていのiccファイルにはvcgtタグは入ってなくて一部ディスプレイ用のiccファイルに入ってる模様。 カラーマネージャの解説されてるページからすると、そもそも vcgt タグは正式なものじゃなくメーカー(apple)拡張のようだ)

で、iccファイルを作成するツールがあれば(あるいは直接rgb調整できるようなツールがないか)、とググってみたけれど、よさそうなものをみつけられず。
最近のwinやmacの場合、標準で(目視)キャリブレーションできるらしいし、フリーソフトもあるみたい(このへん検索で見かけただけで動作未確認)。linux でも argyll とか lprof とかそれっぽいものはあるけれど使いかたよくわからず断念(キャリブレーション装置を使った例はあるけれど)。

きっと他にも何かあるだろうと思いつつ、そんな厳密なことやりたいわけじゃないし探すのも疲れたので、icc ファイルを弄ってなんとかならないか画策。

Gamma6500k.icc , Bluish.icc のバイナリみてると、vcgtタグ自体はいろいろな形式ありそうだけど、この2ファイルに限れば、わりと単純なテーブル(2バイト符号無整数を256個3チャンネル分)のようなので、簡易にr,g,b別に線形で設定するプログラム作ってガンマテーブル書き換えてみたところ、すんなり出来た感じ。

(cソース)

いや、すんなりは嘘か。パラメータや名前の設定具合が気に喰わないのか、作ったiccファイルをimportしても反応無かったりマシン再起動したら有効になる場合があったりと微妙な挙動だけれど、とりあえず変更したプロファイル(iccファイル)を1つ設定できた。
線形なんで途中の階調のバランス合ってないところあるし当然全体に輝度下がるので暗くはなってるけれど、元よりは大分マシな見栄えにはなったので吉としとく。(視野角で色の見え方違う件もあるし あまり拘ってもしかたない状態)


と、このネタ書いてる途中で、xgamma -gamma で設定かえると元の色バランスに上書きされるのに気づいた。ということは、vcgtなパラメータを書き換えてるということなのだろうか。
しかも xgamma、よくよくみると -rgamma -ggamma -bgamma というオプションがあって、r,g,b別設定すれば調整できそうだ...orz

(まだ適切なパラメータ設定をまだ見つけられてないし、起動時にxgammaを実行させる手間もあるので、iccファイルで出来る現状のほうがベター、と思おう)


(追記) これのためではないが結局 カラーキャリブレータを購入した ので、それでiccファイルを作成した。劇的にマシになった。




<<2014-092014-11>>