ciguwerao

2014/05/07の記録:Lubuntu (14.04) でのxkb optionの設定

昨日はDebianを例にxkbを利用したキーボードレイアウト関連の設定の仕方について書いたが、それをLubuntuで実行する方法について今日は書く。
Lubuntuのバージョンは14.04だが13.10でも一緒だったと思う。

Lubuntuでの設定は面倒なことになるかな、となんとなく思っていたのだが、拍子抜けするほど簡単だった。

パネルに「キーボード配列の設定」のアイコンがあると思うが、それを右クリックして、「"キーボード配列の設定"の設定」を選ぶ。

設定ウインドウの右上に一行、字が打ち込めるようになっているのだが、そこに、昨日書いたオプションの記述(XKBOPTIONS= で始まる行の " " の中だけ)のうち、ホットキーの設定以外についての文字列をそのまま打ち込む。(ホットキーの設定は設定ウインドウの左下でできるため)

これで終わり。
多分ログアウト・ログインで有効になるんじゃないかと思うけど、もしかしたら設定ウインドウの「閉じる」を押しただけで、その場で有効になるのかもしれない。
僕は慌ててログアウトしちゃったので、どっちかわからないが、少なくともログアウト・ログインで有効になるのは確実。

(昨日書いたのはシステムの設定だが、今日のは個人設定。念のため)

【念のためついでに追記しておくと、05/06の記録05/02の記録で詳述した設定はLubuntuでも使える。ただしこれは上に書いたようにシステムの設定で、Lubuntuにはこの記事で紹介した「キーボード配列の設定」の仕組みがあり、こちらは個人設定。
システムの設定は個人設定に上書きされるのが基本だと思うので、「キーボード配列の設定」で細かい設定ができないと、05/06の記録で紹介した形で細かい設定をしても、細かい設定がされていない個人設定(=「キーボード配列の設定」の設定)で上書きされ、無効になるのではないか、というのが、冒頭で書いた僕の懸念だったわけだが、それは杞憂であった、ということだ。
ただ、考えてみれば、二枚目の写真の「キーボード配列の設定」のウインドウを見ると「システムの設定を維持する」というチェック項目があり(この部分は日本語訳がされていないみたいで、僕の環境だとフランス語表記になっている。普通は英語表記になるんだと思う)、システムの設定をした上でそこにチェックを入れておくという方法もとれるようだ。 (05/08)】

| Linux関連 | 23:20 | comments(0) | trackbacks(0) |

2014/05/06の記録:キーボードレイアウトのカスタマイズ (Linux)

僕はとてもうれしい。

事の始まりは、キーボードレイアウトの切り替えに使うホットキーを05/02の記録に書いたように Control+Shift にしてしまうと、多少不都合が生じるということに気づいたことである。

具体的には、エディタでもワープロでも何でもアンドゥ(元に戻す)をやるときにはご存知の通り Control+z をやるわけだが、やっぱりそれでいい、となってリドゥ(やり直す)をやるときには、こちらはソフトによるかもしれないが Control+Shift+z を押す場合がある。僕がよく使うリブレオフィスはそうである。
で、この組み合わせが、キーボードレイアウトの切り替えに指定した組み合わせとかぶってしまうのだ。

ただし、キーボードレイアウトの切り替えは Control と Shift だけを押して、それを離したときにはじめて実行されるので、z とあわせて押して離しても、キーボードレイアウトは切り替わらない。
だから絶対にダメ、というわけではないのだが、やり直そうかと思ってシフトとコントロールを押して、やっぱいいや、となって離してしまうと、レイアウトが切り替わってしまったりして、ちょっと面倒なことが起こる可能性がある。できればほかの組み合わせにしたい。

== 05/30追記 ==

この点、勘違いがあった。元Windowsのパソコンではここに書いた通りなのだが、Appleのパソコンだと、少なくとも僕の持っている二台(PPCのノート)では、Control+Shift を押した段階でキーボードレイアウトが変わってしまう。したがってこの設定は使えない。

05/02の記録に書いたように、そのホットキーの設定は、
/etc/default/keyboard
というファイルの

XKBOPTIONS=""

の行を

XKBOPTIONS="grp:ctrl_shift_toggle"

とすることで設定できる。

そこで、"grp:ctrl_shift_toggle" に代えて、例えば "grp:ctrl_space_toggle" とか、 "grp:ctrl_super_toggle" などと書いてみたのだが、うまく機能しない。
そこで、好きな組み合わせに自由に設定できるわけでなく、あらかじめ決まった組み合わせしか選べないのではないかと思い、改めて、こうした設定を司る xkb という仕組みの情報がまとめられた、
/usr/share/X11/xkb/rules/base.lst
というファイルを良く見てみた。

ホットキーの設定に関しては、案の定自由に決められるわけではなく、結構限られた選択肢の中からしか選べない。それぞれの選択肢の得失について色々考え、結局、上で書いたように Control+Shift が絶対ダメなわけではなく、ほかの選択肢と比べれば一番まし、という結論に至ったので、ホットキーについては元のままでいくことにした。その点は残念なことで、ハッピーではない。

== 05/30追記 ==

上に追記した通りこの設定は使えないので、右シフトをキーボードレイアウト切り替えのキーに指定した。この点についても実は元Windowsの機械とAppleの機械で違いがあり、Appleの機械はシフト単独だと左右とも左シフト扱いになり、fnキーと一緒に押すと左右とも右シフト扱いになる。したがって実際にはfn+Shiftがキーボードレイアウト切り替えキーになる。同じAppleの機械でも、デスクトップマシンだと(外付けキーボードだと)変わってくるかもしれない。元Windowsの機械は普通に左シフトが左シフトで右シフトが右シフト。そのため、元Windowsの機械では設定を変えて、両方のシフトを一緒に押すとキーボードレイアウトが切り替わるようにした。本当はAppleの機械でもそうするつもりだった。

しかしそれに勝るハッピーなことがあった。

xkb の設定の option では、ホットキーのほかにもいろいろな設定ができる。
その中で、僕が長年(=3月にはじめて Linux に触れて以来)頭を悩ませてきた、第3レベルの文字・記号の打ち方の設定があった。

第3レベルと言ってもピンとこない人も多かろうから説明しておくと、第1レベルというのはキーをそのまま打って出る文字・記号で、第2レベルがシフトと一緒に押すと出てくる文字と記号である。

英語はそれだけでほとんど事足りるし、日本語はいずれにしても変換という作業が必要なので、キーのレベルでなんとかする必要性はあまりない。

しかし世の中には、英語の文字・記号じゃ足りないけど、日本語や中国語ほどには文字がないので、もう一工夫することで全部の文字を出したくなるような言葉がたくさんある。
そういう言葉のためにあるのが第3レベルの文字・記号であり、普通は右Alt( Alt Gr と言ったりもする)と一緒に押すとそうした文字や記号が出るようになっている(ちなみに 右Alt+Shift+ で出るのが第4レベル)。

例えば僕が使おうとしているカナディアンマルチリンガル配列は、次のリンク先の画像のようになっている。

この画像で、青で示されているのが第3レベルの文字・記号である。

フランス語をうつときには、この第3レベルの記号を使わないとちょっと苦しい。

一番重要なのが英語の where にあたる où という単語で使うアクサングラーブのキーである。
上のリンクの画像を見てもらえばわかると思うが、カナダで売ってる(と思う。僕はカナダに行ったことがないので確かめてはいない)キーボードには左Shift と z の間にちゃんと ù のキーがあるので、第3レベルは使わなくていいのだが、日本のキーボードにはそのキーがない。そこで p の右のキーの第3レベルを押してから u を押して ù を出すことになる。
また、フランス語(やロシア語)では会話や引用などの括弧として " " ではなくて、« » を使うのが普通である。ワープロソフトであれば、" を打てば勝手に « などに変えてくれたりするが、テキストエディタではそれをしてくれないのが普通だし、勝手に変えられてかえって迷惑なこともある。これも z と x の第3レベルを使う。
その他、{} [] も第3レベルを使う。

というわけで、フランス風にフランス語の文章を書こうとすると、第3レベルは必須なのである。

ところで、さっき、普通第3レベルは右アルトと組み合わせる、と書いたが、これはウィンドウズやたぶんリナックスでは普通、ということであって、僕が長年使ってきたマックでは MacOS でも MacOSX でも、左右のアルト、どちらでも良い。
ノートパソコンでは右アルトが省略されていることも多いし、ウインドウズでは右アルトだけ、ということも知らなかったので、左アルトを使う習慣ができてしまっている。
できれば左アルトで第3レベルを出したい。

そのために右アルトと左アルトを入れ替える設定の仕方をあれこれ悩み、xmodmap での実現を試みていたのだが、なかなかうまくいかずに苦しんできた。
それでもなんとか、右も左も第3レベル用にする設定までは xmodmap で実現できたので(*)、それで手を打つか、と思っていたのだが、ちょっと無理矢理な所もあるし、さしあたり思いつかないとはいえ元々アルトに割り当てられた機能を使いたくなったときにそれが使えるようにしておけた方がベターなので、右と左の入れ替えを実現したいと思っていた。

それが今回実現したのだ。

夢のようだ。

具体的には、

XKBOPTIONS="lv3:lalt_switch,lv3:ralt_alt"

と書く。

lv3:lalt_switch

は、左アルトを第3レベル用スイッチとして使う、という意味で、

lv3:ralt_alt

は、右アルトの方は普通のアルトとして使う、という意味。

僕の望み通り、完璧な設定である。繰り返すが、夢のようだ。

*ちなみに、xmodmap の無理矢理な設定とは、詳しい説明は省くが home ディレクトリに .Xmodmap というファイルをつくり、その中に、

remove mod1 = Alt_L
keysym Alt_L = ISO_Level3_Shift

と書いておいて、

xmodmap .Xmodmap

というコマンドで実行する、というやり方。それを起動の際自動実行するようにすれば良い。
上の行は左アルトからアルトの機能を奪う、ということで、二つ目の行は左アルトの機能をレベル3用キーに置き換える、という意味。
右アルトはいじらないので、日本語配列の際は右アルトはアルトとして使えるが、カナディアンフレンチでは元々右アルトがレベル3用になるので、両アルトがレベル3用になる。

ただ、これだけでは問題は終わらない。
フランス語には œ という文字があり、仕事・作品と言った意味の œuvre という言葉や、卵という意味の œuf という言葉など、それなりに使う言葉に使われる。
œ が使えないときは oe で代用してしまってかまわないので、こだわらなければ別にいいのだが、ちょっとかっこ悪いしできれば正確に œ を使いたい。フランス人の頭の固いえらい人を相手にするときなどは、ちゃんとしておかないと不利益を被ることも、もしかしたらあるかもしれないし。

Macで使う Canadian French CSA という配列では、この字は Alt+q でだせるのだが、上に挙げたリンク先の画像を見てもらえばわかるように、リナックスで使おうと思っているカナディアンマルチリンガルではこの文字は第3レベルの青ではなく、赤で示されている( e のところ)。赤は第5レベルである。
第3レベルでキーはいっぱい余ってるんだから、第3レベルに割り振っておけよ、と言いたくなるが、そうここで言っても仕方ない。
第5レベルも出せるようにしたい。

本来なら第5レベルは右コントロールで出せるらしいし、ターミナルで

xev

と打つとキーの機能を確認できるのでやってみると、

ISO_Leve5_Shift

と表示されるので、それでいけるはずなのに、実際に打つと出ない。

そこで、さしあたり用途のなさそうな右Winキーをそれに当てることにして xkb の設定で

XKBOPTIONS="lv5:rwin_switch_lock"

と書いてみたら、右ウィンでうまくいくほか、なぜか右コントロールでも出せるようになった。
アホか、と思うがまあいいや。
(念のため注記しておくが、設定内容の選択肢は/usr/share/X11/xkb/rules/base.lstに記されているものに限られる。上の第3レベルも、下に書く nbsp も同様)

== 05/30追記 ==

その後しばらく使ってみて、ウィンキーをウィンキーとして使うことはまずなさそうなので、より便利な左ウィンを第5レベルにあてることにした。記述は次のようになる。

XKBOPTIONS="lv5:lwin_switch_lock"

右ウィン(実際はfn+Win)はウィンキーとして使える。

これで第5レベルもうまくいった。

もう一つ、ハッピーをさらに大きくしてくれることなのだが、xkb のオプションで nbsp を打つキーも設定できる。
nbsp というのは、「ノー・ブレイク・スペース」のことで、つまり改行しないスペースである。
さっき、フランス語の括弧は « » を使うと書いたが、実はこの括弧と中の単語との間にスペースを入れることになっている。
«abc» ではなくて « abc » と書くのだ。
で、そのスペースで改行されてしまうと冴えないことになる。nbsp でなくてはならない。
html なら でいいのだが、普通のテキストとかでどう出すのか知らなかった。(今 Wikipedia 見たら書いてあったけど)
それが、今回簡単に出せるようになった。

夢のようだ。

XKBOPTIONS="nbsp:level3"

とすると、レベル3のスペース、つまり上の設定とあわせて左アルトとスペースで、nbsp が出る。
レベル2 (Shift+Space) でもレベル4 (Alt_L+Shift+Space) でもいいのだが、僕は第3にした。
さらに、nbsp:level3n というふうに n を付け加えておくと、レベル4がより細い nbsp になるようなので、それにした。

結局、僕の/etc/default/keyboardファイルの内容は以下のようになった。

XKBMODEL="pc105"
XKBLAYOUT="jp,ca,ru,ru"
XKBVARIANT=",multix,,phonetic"
XKBOPTIONS="grp:ctrl_shift_toggle, lv3:lalt_switch, lv3:ralt_alt, lv5:rwin_switch_lock, nbsp:level3n"

== 05/30追記 ==

上の追記のようにその後いくつか変更があって、現在は以下のようになっている。

XKBMODEL="pc105"
XKBLAYOUT="jp,ca,ru,ru"
XKBVARIANT=",multix,,phonetic"
XKBOPTIONS="grp:rshift_toggle, lv3:lalt_switch, lv3:ralt_alt, lv5:lwin_switch_lock, nbsp:level3n"

これで、nbsp の点を考えるとマック以上の環境ができ上がった。

今日書いた内容は最近いじりまくってる Debian Wheezy LXDE の入った iBook G3 366 SE で試したことだが、ほかのリナックス(のディストリビューション)でも使えるはずである。

05/02の記録でも書いたが、このやり方はシステムの設定、つまりそのパソコンを使う人全員に共通する設定になる。個人用の設定の仕方は05/02の記録の最後の方を参照のこと。システムの設定をしても、個人用に別の設定をすればそっちが優先になると思う)

== 05/17追記 ==

Lubuntuでの設定方法は05/07の記録参照。

== 08/05追記 ==

LinuxMint13Mateだと、「Menu>設定>キーボード」のレイアウトタグの下の方にある「オプション」ボタンを押して出てくる画面で設定できる。上に書いた設定がその画面に出てくる設定のどれにあてはまるのか、ちょっとわかりにくいが、落ち着いて考えるとわかってくると思う。なお、これは個人用の設定。

僕はとてもうれしい。

== 09/06追記 ==

その後、キーボードレイアウト自体を自分で作ってしまう方法を見つけました。面倒な作業ではありますが、それをすれば、この記事で書いたいくつかの工夫は、根本的に不要になります。08/22の記録参照

== 2015/01/12追記 ==

最近仕事で使っているThinkPadX60sにはLinuxMint13Mateが入っているのだが、この機械には右アルトがない。この記事で書いた設定では普通のアルトの機能は右アルトのみに負わせているので、右アルトがない機械でアルトが使いたくなった時に困る。今日困った。で、コントロールとして僕は使うことのない右コントロールにアルトの機能を負わせるために、/etc/default/keyboardctrl:rctrl_raltを書き加え、ThinkPadX60sの記述を次のようにした。

XKBMODEL="pc105"
XKBLAYOUT="jp"
XKBVARIANT=""
XKBOPTIONS="grp:shifts_toggle, lv3:lalt_switch, lv3:ralt_alt, lv5:lwin_switch_lock, nbsp:level3n, ctrl:rctrl_ralt"

"XKBLAYOUT" の行と "XKBVARIANT" の行が簡単な記述になっているのは、この書類はシステムの設定書類だが、LinuxMint13Mateではキーボードレイアウトの設定はパネルのキーボード設定で個人設定が容易にできるので、この書類で記述する必要がないため。なお、Lubuntu14.04でも、2014/08/27の記録の追記で書いたように、現在はシステムの設定は簡素なものとしている。詳細はその記事を参照のこと。僕の持ってるパソコンでこの記事にあるような設定を使っているのは、個人設定が容易ではない(と言うよりシステム設定のほうが手っ取り早い)Debian Wheezy on PPCs(二台)だけになっている。

| Linux関連 | 01:49 | comments(0) | trackbacks(0) |

2014/05/03の記録:今日のDebian iBook(タッチパッドのタップをオフにする)

今日やったのは、タッチパッドのタップ機能をオフにすること。
(Debian Wheezy LXDE on iBook G3 366 SE)

iBookやPowerBookはデザインの都合でタッチパッドが真ん中にあり、文章を打つ時にどうしても右手の親指の腹のあたりがタッチパッドに触れてしまい、誤作動を起こして不愉快な思いをさせられる。
タッチパッドのタップその他の機能は、便利なものだとは思うが、誤作動が嫌なのでオフにしておく習慣になっている。

ウィンドウズのパソコンでは、モノにもよるが、デザインよりも機能性重視で、真ん中よりやや左にタッチパッドを配置して誤作動を起こしにくくしてあるものが多いと思う。
EeePCはそうなっていないが、もともと感度が低いし、タッチパッド全体がちょっとくぼんでることもあり、あまり誤作動が起こらないので、オフにはしていない。

で、今度デビアンを入れたアイブックは、感度がむやみに高く誤作動が頻繁に起こるので、タップ機能をオフにしたい。
gnomeデスクトップであれば簡単に設定できるのかもしれないが、lxdeはそのへんはやさしくないので、設定に苦労した。

少し前に、ターミナルでタップをオフにするやり方は見つけていた。

sudo trackpad notap

とやればよい。

しかし、毎回ターミナルに打ち込むのは面倒なので、

/home/アカウント名/.config/lxsession/LXDE/

に "autostart" というファイルを作って

@sudo trackpad notap

と書いておいたのだが、それではうまくいかない。
"sudo" が入っているからかもしれないが、よく理由はわからない。

ネットで探して出てきた、

/etc/X11/xorg.conf.d/50-synaptics.conf

をいじるやり方を試してみたが、何の問題なのかわからないがうまく行かない。

結局、LinuxMintPPC Forumの中で見つけた記述に従って、

/etc/pbbuttonsd.conf

というファイルを開き、

TPMode = drag

という行を

TPMode = notap

と直すことでうまく行った。

最初っからこういうのを探していたんだ。50-synaptics.confは色々詳しすぎて面倒だし、もっと単純なやつがどこかにあるはずだと思っていたのに、なかなか見つからなかった。

なお、右クリックは F11 キーに当てられてるようだ。

== (05/16追記) ==

よく理解せず、確信がないままに書いていたのだが、まず、PBButtonsdというのは(リンク先を見れば書いてあるが)アップルのノートパソコン向けのいろいろな設定を司る仕組みらしい。また、trackpad notap というコマンドもこのPBButtonsdの仕組みに包摂された仕組みと言えるようで、PBButtonsdのページには、PBButtonsdの "parents" のうちの一つとして "trackpad" が明記されている。具体的な関係はよくわからない。Ubuntuフォーラムの "Thread: "sudo trackpad notap" on wake-up" が参考になる。xorg.confの方は、機能の上でいろいろと関わってくるだろうが、それらとはちょっと別の仕組みだろうと思われる。

== (2016/04/20追記) ==

この記事の内容は、上の追記にあるようにPPC、つまりアップルの古い機械の場合にのみ有効なもので、普通の機械については2016/04/20の記録で少し書きましたので、そちらをご覧ください。

| Linux関連 | 17:46 | comments(0) | trackbacks(0) |

2014/05/02の記録:今日のDebian iBook(LibreOfficeのアップグレードとキーボードレイアウトの追加)

飽きるまでこのネタが続く。

今日やったことは、バックポートを利用した libreoffice の3.いくつから4.1へのアップグレードと、キーボードレイアウトの追加。
(Debian Wheezy LXDE on iBook G3 366 SE)

バックポートを利用したリブレオフィスのアップグレード

Divide et imperaさんの記事

Backports - Debian Wiki
を参考にした。

まず、
/etc/apt/sources.list
をliefpadで開いて(root権限)次の一行を付け加えることで、バックポートのリポジトリを追加した。

deb http://ftp.debian.org/debian wheezy-backports main contrib non-free

(実はこの前に、別の色々なところから情報を得て、別のアドレスを三つぐらい試したのだが、既に使えなくなっていたらしく、うまく行かなかった。上のアドレスはDebian WikiのBackportsのページに書いてあったので、一番最初に試せても良さそうなものなのに、検索で探し当てるのに手間取った)

その後、

sudo apt-get update

をやってから、

sudo aptitude -t wheezy-backports install libreoffice

で、リブレオフィスの新しいバージョンをインストール。
apt-getではなくてaptitudeを使ったのは、Debian Wikiでそうなっている上に、たまたま目にした記事で、後者の方がちょっと手厚い対応らしいことを知ったから。

libureofficeのインストールの過程で、依存関係の問題で何やら質問されたが、提案された選択肢にしたがった。 アップグレード前のことをよく覚えていないのだが、 mathがなくなったみたい。これはどういうことだろう?

キーボードレイアウトの追加

Keyboard - Debian Wiki

Keyboard configuration in Xorg - ArchWiki
を参考にしてやった。

まず、 DebianWikiでは、console-data と keyboard-configuration が必要と書いてあるが、Synapticパッケージマネージャで確認すると、後者はインストールされていたが、前者はインストールされていなかったので、インストールした。
途中、何かを変更するか否か見たいなことを聞かれたので、怖いので変更しなさそうな選択肢を選んだ。何が行われたのかよく分からん。

(この作業、つまりconsole-dataのインストールは必須だったのだろうか? との疑問がわいた。これをやる前に先のことを試してみればよかった。 DebianWikiの冒頭で書いてあるんだから、多分必須なんだろうと思うけど)

キーボードレイアウトの追加は存外簡単で、
/etc/default/keyboard
をいじればよい。

XKBMODEL="pc105"
XKBLAYOUT="jp"
XKBVARIANT=""
XKBOPTIONS=""

こうなっていた部分を、最終的に次のようにした。

XKBMODEL="pc105"
XKBLAYOUT="jp,ca,ru,ru"
XKBVARIANT=",multix,,phonetic"
XKBOPTIONS="grp:ctrl_shift_toggle"

03/12の記録で書いたEeePCの設定に合わせ、カナディアンフレンチとロシア語ロシア配列、ロシア語フォネティック配列(JPやUSのローマ字配列の文字の音に基本的に合わせたキリル文字が出る配列)の三つを付け加えたわけ。

XKBLAYOUTの行は基本的にそのキーボード配列が使われている国の二文字のコードを選ぶ。
日本のとカナダのは一種類だから一度だけだけど、上に書いたようにロシア語の配列は二種類用意しておきたいので、ruを二回繰り返して書いた。

XKBVARIANTの行は、LAYOUTで選んだ国の配列の中から、さらに配列を選択して指定する行。その国の一番普通の配列の場合は空欄にしておけばよいので、上のデフォルトの設定では何も書いてなかった。
が、僕はCAとRUで、普通じゃないやつを選ぶので、書かなきゃいけない。
LAYOUTの行に合わせて四つ分指定して、それぞれの間をカンマで区切るわけだが、JAと一つ目のRUは普通のやつなので何も書かない。そのために、上のような書き方になっているわけ。
場合によっては ",,,phonetic" みたいなこともありうるわけだ。

XKBOPTIONSの行はオプションの行だが、ここで切り替えの仕方(ホットキー)を指定できる。 grp: というのがホットキーの指定の合図だと思うが、よく知らない
僕はシフトとコントロールキーを同時に押すと、順番に切り替わるやり方を選んだので、上のような記述になった。 切り替えの仕方は他にもいろいろやり方があり、その設定の記述の仕方を紹介しているところがあったと思うのだが、今見つからない。(たぶんArchWikiから飛べたと思うが、確信はない)

【この辺りのことについて、必要があってさらに調べた。下でも出てくるが、
/usr/share/X11/xkb/rules/base.lst
というファイルを見れば、ここで紹介している xkb の設定に必要な情報はたいてい手に入る。-optionとして選べる内容もこの中に書かれていて、grp: はレイアウトの切り替えに使うホットキーの設定の合図で正しかった。ほかに、lv3: は第三レベルの文字を呼びだすためのキーの設定、ctrl: はctrlキーとしてほかのキーを使いたい場合の設定、keypad: はテンキーについての設定。ほかにもある。いろいろなことができそうだ。詳しくは05/06の記録参照。ArchWikiには上で紹介したファイルを見るように、と書いてあったのであって、他サイトへのリンクがあったわけではなかった。(05/07)】

さて、カナディアンフレンチなのだが、lubuntu on EeePCでは前に書いたようにlegacyというのを使っている。これは、メインのパソコンのMacOSXではフランス語を打つのにCanadian French CSAとかいうのを使っているのだが、lubuntuの設定画面ではそんな名前の配列は出てこず、試したうちで一番近いと思ったのがCanadian French Legacyだったため。
で、これをどう記述すればいいのか分からなかったので最初は単純に

XKBVARIANT=",legacy,,phonetic"

と書いた。

設定を反映させるためにパソコンを再起動させるわけだが、 Debianでは起動中の作業の様子をちゃんと文字で教えてくれる。それをみていたら、正確な記述は忘れたが、CAのVariant "legacy" は正しくない、みたいなことが出てきた。(このパソコンは古く、したがって動きが遅いために何とか読める。早いパソコンだとあっという間に行が進んで行って、読めないとおもう)

で、立ち上がってから画面の右下隅をみると、下の写真で(つまり今)JPとなっており、そうなっているべきところがUSとなっていた。
(これはパネルを右クリックして「パネルアイテムの追加/削除>追加」で追加した「キーボードレイアウトスイッチャー」の表示。旗画像とテキストを選べ、テキストにしている)

設定していないUSが出てきてしまうのは不具合があるからで、さっきやった console-data のインストールのせいではないか、元に戻せないのではないか、と不安になった。とりあえず記述として間違いのないように

XKBLAYOUT="jp,ru"
XKBVARIANT=""

として再起動してみたら、USは消えてJAとRUが切り替えられるようになった。
記述の間違いによるものだということが分かったので、安心して、キーボードレイアウトの正しい記述の仕方を書いたリストでもないかとネットで検索してみる。
なかなか見つからなかったが、たどり着いた "Keyboard configuration in Xorg - ArchWiki" を読むと、灯台下暗し、必要なリストはネット上ではなく、パソコンの中、
/usr/share/X11/xkb/rules/base.lst
にあった。

それをみると、カナディアンフレンチレガシーは "ca" の "fr-legacy" と記述することが分かった。
確かにカナダのレガシーはフランス語以外にもあり得るのだから、分かってみれば当たり前であった。
ただし、色々探しているうちに、 MacOSXでCSAと呼ばれている配列に一番近いのは、レガシーではなく Canadian Multilingual だということが分かったので、fr-legacy ではなく multix と書いた。(Canadian Multilingualは上のリストをみると三種類あるのでどれか迷ったが、一番普通そうなので問題なかったから、それでよしとした) これで設定完了。ちゃんと機能する。

さて、ここまで紹介してきた
/etc/default/keyboard
をいじるやり方は、root権限が必要なことからも分かるようにシステムの設定で、早い話がそのパソコンを使うひと全員に関わる変更。
僕の場合は僕しか使わないので別に問題ないのだが、複数人で使う場合は個人毎の設定にしたいところだろう。
そのためには、他にもあるのかもしれないが僕が思いつくやり方としては、次のようなやり方がある。

これも "Keyboard configuration in Xorg - ArchWiki" に書いてあることだが、端末で

setxkbmap -model [xkb_model] -layout [xkb_layout] -variant [xkb_variant] -option [xkb_options]

というコマンドを出せばいい。(いらない部分ははしょれる)
具体的に、僕のやった設定にあわせて書くと、

setxkbmap -model pc105 -layout jp,ca,ru,ru -variant ,multix,,phonetic -option grp:ctrl_shift_toggle

とすればいいんだと思う。

毎回ターミナルに打ち込むのは面倒だろうから、
/home/アカウント名/.config/lxsession/LXDE/
にautostartというファイルを作って、上の一行を書いておけばうまく行くんじゃなかろうか。(もちろん、すでにautostartがあるのなら、追記する)
ただし、僕自身はdebian上では試してないので、保証はできない。
(lubuntuのEeePCにはjwmを入れてあるのだが、そのjwmの設定ファイルの自動起動のところに上の一行を書いた場合は、うまく行った)

これで書くべきことは書いたのだが、元々lubuntuのネタとしてカナディアンフレンチ・レガシーについての愚痴を書こうかと思っていたところだったので、ついでにここで書く。
OSXのCSAやmultixでは、shift+.(ピリオド) は " になるのだが、fr-legacyでは shift+. は . である。
また、CSAやmultixでは、shift+^(アクサンシルコンフレクス。日本語配列だとアットマークのキー) は ¨(トレマ) になるのだが、fr-legacyだと shift+^ は ^ 。
アホかと言いたい。
限りあるキーを大切にしろと言いたい。
そんなことをしてるから、それなりに使うアットマークが右アルトを押さなければ出せなくなってしまうなど、面倒なことが色々出るのだ。(アットマークは shift+2 であるべきなのに、そこに shift+. に収めてもらえなかった " が来てしまったせいで、アットマークは 右Alt+2 に押しやられているのだ)

こんな配列は使えないな、xmodmapで自分で設定しなければならないのか、と思っていたところで、multixというのに気づくことができたので、大変によかったと思っている。
別に使う当ても必要もないのに、長い時間かけてiBookで遊んでみた甲斐があったと思っている。
ただ、lubuntuでは、そしてもしかしたらLinuxMintでも、よく覚えていないが設定画面にマルチリンガルがでてこなかったような気がするので、思い通りの環境を手に入れるにはもうひとやまあるかもしれない。

【今確認したら、lubuntuのキーボード配列選択リストの中にも、カナディアンマルチリンガルは普通にあった。最初にlubuntuの設定をした時、選べるすべてのカナダの配列を試したと記憶していたのだが、勘違いだったようだ。なぜマルチリンガルを試さなかったのかよくわからない。ただ、OSXのCSAとは違うところがあって、CSAではスラッシュはアルト+日本語キーボードのスラッシュキーなのだが、マルチリンガルでは半角/全角キーがスラッシュになってる。元ウインドウズのパソコン(のキーボード)なら、それで問題なく、むしろ便利なくらいだが、マックのパソコンには半角/全角キーがないので、ちょっと困る。どうしたものか。とりあえず現状可能な回答は、fn+0 つまりテンキー利用、のようだ。この点、CSAに比べて不便だ。(05/03)】

【その後、キーボードレイアウト自体を自分で作ってしまう方法を見つけました。面倒な作業ではありますが、それをすれば、この記事で書いたいくつかの工夫は、根本的に不要になります。08/22の記録参照。(09/06)】

| Linux関連 | 23:53 | comments(0) | trackbacks(0) |

2014/05/01の記録:Debian on iBook G3 366 SE の不具合修正(Catfish)

この前DebianをいれたiBook G3 366 SE(調べたら、僕のiBookはこう呼ばれるらしい)に、EeePC上のLubuntuで使っているファイル検索ソフトのCatfishをインストールして使おうとしたが、動作しない。

ターミナルで起動させて見ると、

fg ジョブ制御が無効です

と出る。

意味が分からない。

"catfish fg debian" でgoogle検索してみて出てきたページの投稿にしたがって
/usr/bin/catfish

%python% /usr/share/catfish/bin/catfish.py "$@"

python /usr/share/catfish/catfish.py "$@"

と改めたら、うまく行くようになった。

意味が分からない。

いずれにしても、そのページで質問をされた alb氏、適切な回答をなさったMALsPa氏、どこのどなたか存じませぬが、感謝致しております。

ついでに、前回不具合の修正に難儀した xfce4-power-manager についてだが、バッテリーが減っていく(状況を伝えてくれた)ところまではよかったのだが、残り少なくなったので電源を接続すると、8%なのに「フル充電」と出て、それ以上アイコンも変わらず、数字も変わらなくなった。

前回の困った状況と同じ。

前回わざわざ書いたことは不具合の問題と関係なかったようで残念だが、設定が保存されるようになったのはあの作業のお陰なのでそれはまあ、よしとする。

で、電源をさしたまま再起動させてみたらちゃんと動作するようになった。
が、抜くと、アイコンは変わったものの電源が抜いてあるのに「アダプタは通電しています」と出る。残量の数字は増えるようだ。

もう一度電源をつなぐと、また、 34% なのに「フル充電」と出て、数字が変わらなくなる。

抜き差しすると不具合が出るようで、もうひと悩みふた悩みが必要なようだ。

【その後、デビアンを入れたマックの機械ではxfce4-power-managerはうまく働かないことがわかったので、使うのはやめました。詳細は05/19の記録05/27の記録などを参照のこと。(07/14)】

| Linux関連 | 04:19 | comments(0) | trackbacks(0) |

2014/04/27の記録:初代グラファイトiBookにDebian 7.4.0 PPC lxdeをインストール

前の記事でそういう予定があることにちょっと触れたが、昔の愛機ibookグライファイトFirewireなしにDebianを入れてみた。
xfceのねずみに惹かれたものの、軽いといううわさと、lubuntuでなれている点を重視して、lxdeのにした。
詳しいことは後で書くとして、今日は取り急ぎ、一番難儀した点だけ。

電源管理がうまくいかず、バッテリー残量がうまく表示されなかった。
power managerはlubuntuで使っていて勝手の分かっているxfce4-power-managerを入れたのだが、これがうまく動作しなかった。

まず、ネット検索で出てきた記述に従って、
/etc/modules

pmu_battery

という一行を追加。

「設定/デスクトップセッションの設定」の電源管理のところにチェックを入れてパソコンを再起動するとxfce4-power-managerが働いて下のパネルに表示されたので、うまく行ったかに思えたのだが、最初に出た状態のまま、バッテリーが減っても、ACアダプターを接続してもアイコンが変わらず、ポップアップで出てくる情報の内容も変わらない。
また、xfce4-power-managerの設定画面で各種設定をしても、ログインしなおすと設定した内容がデフォルトに戻ってしまう。

何時間も試行錯誤した末に、
/home/アカウント名/.config
を見てみると、
xfce4
というディレクトリがある。それの中をどんどん見ていくと、二つ下にあるファイルを見ようとしたときだったと思うが、許可がないとか言ってきたので、自分のアカウントの設定が見られないのはおかしいと思って右クリックでパーミッションを確認してみた。
すると、何でそんなことになるのか分からないが、root権限でないと見ることもできないようになっていた。

さかのぼって確認すると
/xfce4/
ディレクトリから既に所有者がrootになってたので、それ以下の所有者をすべてアカウント名に設定しなおすとうまく行くようになった。

そもそも設定が保存できないことに気づいた時点で、パーミッションの問題じゃないかと一瞬思ったのに、その思いつきを深く追求しなかったせいで、何時間も無駄にしてしまった。

【その後、これで不具合が解消したわけではないことが分かりました。2014/05/01の記録参照(2014/05/01追記)】

一応初代グラファイトibook上のDebianの使い心地を書いておくと、かなり遅い。
今、その環境でiceweasel(ブラウザ)を使ってこの書き込みをしているのだが、文章を打つにももっさりした感じでかなりじれったい。
でも、この投稿ができているのだから、まったく使えないというわけでもない。

あと、僕がこだわっている入力メソッドだが、MozcはPPC向けのがないみたいだし、Debianのこのバージョン向けのFcitxには日本語入力メソッドがないみたいなので、iBus-Anthyを使っている。
iBusはバージョンが古いので、ちゃんと使える。

== 以下2014/04/28追記 ==

ついでに今回の試行錯誤で分かったことを追記しておこう。
/proc/pmu/battery_0
を見ると、現在のバッテリー関係の状況が分かる。
参考記事

また、
/sys/class/power_supply/PMU_battery_0/
の中の各ファイルからも、同様の情報がとれる。
参考記事

写真もあげておく。


(ibook G3 上の Debian。左側、USBにささっているのは、ワイヤレスマウスの、なんて言うのか、飛ばすやつ。15年くらい前はこんなにでかかったんだよ、わかいひと。右側にあるマウスは、ふたをなくしちゃったわけではなくて、エネループが液漏れしてるっぽく、不安なのでふたをしめずに使ってる。エネループ、高いんだから液漏れしないでよね。RIP SANYO)


(画面はこんな感じ。こういう写真って、犬の写真だとか赤ん坊の写真と同じで、お前以外誰が喜ぶんだよって言われるだろうことは覚悟している)

全く関係ないが、今晩撮った写真。

(人目を気にしながら何枚もとったのに、ピントの合ってる部分が少しでもあったのが、この一枚だけだった)

| Linux関連 | 23:51 | comments(0) | trackbacks(0) |

2014/04/23の記録:三たびLubuntuの入力メソッド設定について

【すみません。執筆時点で認識不足があったのか、その後の状況の変化があったためなのかわからないのですが、現状ではこの記事は不正確であることが判明しました。08/27の記録をご参照ください。(08/27)】

多くの人にとってどうでもいいことであることは承知しているが、一旦書き始めてしまったことなので、何か変化があれば書く。

前回の記事で、14.04へのアップグレードによってFcitxの不具合が解消されたので、03/12の記録で紹介したやり方はやめて、Fcitxの方で入力メソッドのオン/オフそれぞれの専用キーを設定し、入力メソッドとしては「Mozc」と「キーボード - 日本語」を設定しておくことにしたと書いた。

しかし、Fcitxのバグが治ったことは事実で、喜ばしいことであるのは確かなのだが、結局03/12の記録の設定に戻すことにした。

つまり、Fcitxの治った機能を使うのはやめて、Fcitxの設定では入力メソッドを「Mozc」のみにして、Mozcの設定の方で、「IMEのオン」/「オフ」専用キーを設定したということである。(やり方は当該記事を参照のこと)

以下、その理由。

確認しておくと、入力方法について僕が求めていることは次の二点。

  1. 日本語入力、フランス語入力(カナディアンフレンチ配列)、ロシア語入力が簡単に切り替えられるようにすること
  2. スペースの右のキー(変換キー)を押すと確実に日本語入力ができ、スペースの左(無変換キー)を押すと確実にローマ字入力ができること(キリル文字がからむとひと手間増えるのは仕方ない)

Ubuntu系のディストリビューションで(というのは、Ubunt系以外のLinuxは試したことがないので)これを実現するには、キーボード配列(JP、CA、RU)の切り替えはシステムのキーボード配列の切り替えで行い、それとは別に、Fcitx-Mozc(もしくはIbusやAnthy)によって日本語入力と直接入力の切り替えを行う。

それが実現された状態として理想的なのは、直接入力の際はキーボード配列の設定で選択した配列に従った文字が打て、日本語入力の際は、キーボード配列の方で選択したものとは無関係に、日本語入力用の配列を自分で設定することができる状態(「状態1」とする)。

MacOSXのいくつか前のバージョンではこれと同等の状態が仕組みとしては実現していた(*)。しかしこれは仕組みとして実現していただけで、実際の使用に耐えたのは日本語入力用として日本式配列(Fcitxのいわゆる「キーボード - 日本語」だが、OSXの場合どういう名称だったか忘れた。USをそれにあてていたんだったかもしれない)を設定した場合のみ(他のキーボード配列を日本語入力用に選んでしまうと、何かと不具合が生じた。具体的に言えば、機能しないキーが頻出した)。そのため、実質上次の状態と一緒。

【*何回か前のバージョンアップで仕組みが変わったので、できなくなったかと思っていたがそれは勘違いで、今確認してみたら現行のマーベリックスでもできた。"ことえり"環境設定で「英字のレイアウト」を変えれば、例えばカナディアンフレンチで日本語がうてる。が、それでは使い物にならないのも元通り。デフォルトはU.S.で、それ以外だと不都合が多そうだ。(04/27)】

で、次善の状態(「状態2」とする)は、直接入力の際はキーボード配列の設定で選択した配列に従った文字が打て、日本語入力の際は、キーボード配列の方で選択したものとは無関係に、日本式配列に従って日本語が打てる。日本語用に好みの配列を選ぶことができない点が状態1との違い。

これはMacOSXで実現している他、僕が実際に確認できたものとしては、LinuxMint13Mateで実現している。僕自身で確認したわけではないが、おそらくLinuxMint13が元にしているUbuntu12.04を元にしたディストリビューション、さらに言えばちょっと前のバージョンのIbusが使えたディストリビューションでは、実現できたのだろうと思う。

【その後、Debian Wheezyでも実現していることを確認した。(08/12)】

残念ながら、Lubuntu14.04では、現状では、このどちらも実現できない。

【すみません。これ、嘘でした。冒頭に追記したように少なくとも2014/08/27現在では正しくありません。08/27現在、Lubuntu14.04ではFcitx-Mozcによって状態1が実現できます。詳細は08/27の記録をご参照ください。(08/27)】

04/19の記録で紹介した設定(「状態3」とする)だと、日本語入力をしようとするとキーボード配列が自動でJP(日本式配列)に切り替わってしまう。実際にやってみないと何が違うのかわかりづらいだろうが、上のふたつの状態では、日本語入力をするときにはシステムのキーボード配列を無視するのであって、切り替えるのではない、というのが大きなポイント。

なぜかというと、例えばフランス語を打っていて、日本語をうつために日本語入力に切り替えたとすると、もう一度フランス語を打ちたくなったときに、状態3では直接入力に切り替えるキー(僕の設定では無変換キー)を押すだけではフランス語が打てない。キーボード配列が日本式配列になってしまっているからである。キーボード配列の切り替えの操作が必要になる。

状態1、2ならば、日本語入力に切り替えてもキーボード配列が切り替わることはないので、もう一度フランス語を打ちたくなったら直接入力に切り替えるキーを押すだけでよい。日本語はシステムのキーボード配列の設定の如何にかかわらず日本式配列に従って打てるので、問題ない。

では、Lubuntu13.10における最良の状態であり、14.04でも選ぶことのできる03/12の記録で紹介した設定(「状態4」とする)はどういう状態かというと、キーボード配列の選択が日本語入力のオン/オフによって自動的に切り替わることはないが、日本語入力メソッドはシステムのキーボード配列をそのまま利用するので、入力メソッドがそれに基づいて設計されているところの日本式配列に無い文字や記号(日本語入力メソッドの読めない文字や記号)が打たれると、その文字がそのまま出てきてしまう。

つまり、数字やローマ字アルファベット26文字、一般的な記号のキーであれば問題なく日本語入力ができるが、アクサン付き文字や一部の記号、キリル文字などが打たれた場合は、その文字や記号がそのまま出る。

そのため、フランス語やドイツ語など、基本的にローマ字を使っているキーボード配列なら、いくつかのキーは使えなくなるとしても、たいていのキーは(並びが異なるだけで)日本語入力に利用でき、日本語の文章を打つことは可能だが、ロシア語配列やギリシア語配列などを使った場合は数字と句読点以外はほぼ全滅となるので、日本語の文章は打てないと言っていい。

この状態4と、先ほど説明した状態3では、どちらがいいかは一概に言えない。

状態3の欠点は日本語からフランス語・ロシア語に戻る際にひと手間余計にかかる点だが、フランス語・ロシア語から日本語にうつる際はワンタッチですむ。

状態4の欠点はロシア語入力と日本語入力の切り替えに必ずふた手間かかる点だが、フランス語配列を使用している場合であれば、日本語入力の際に多少の不便はあるものの、ワンタッチでの切り替えが可能。

どちらを取るかは判断のわかれるところだろうが、僕はロシア語はさほど使わないので、フランス語と日本語の切り替えが簡単な状態4を選ぶことにしたというわけである。

状態4の問題点は実はもうひとつあって、パネルに表示されるアイコンが日本語入力の際も直接入力の際も変化しない点だが、03/12の記録の最後に追記したように、Mozcの「状態パネル」を常時表示させる設定にすれば、解決できる。(設定方法は当該記事参照)

状態パネルが邪魔に思われるなら、「パネルの設定」で、「パネルアプレット」に「空白」を追加し、「編集」によってその大きさ(幅のこと)を適切に設定した上で、「Mozc状態パネル」をその空白の位置においておけばいいと思う。

状態パネルのスキンをclassicにした場合、「空白」パネルの大きさは100くらいでちょうどよい。もちろん「状態パネル」に表示させるアイコンの選択によってその数字は上下するが。

| Linux関連 | 01:01 | comments(0) | trackbacks(0) |

2014/04/19の記録:Lubuntu14.04にアップグレード

Lubuntuの14.04が出た。これは長期間サポートということもあり、当初から待ちかねてたので、早速アップグレードした。
メニュー>システムツール>ソフトウェアの更新
をやると、「アップグレード」ボタンが出たのでそれを押して開始。
1時間ちょっとかかったと思うが、特に問題なし。
(端末ボタンを押すと何が行われているか見えるので、見ていると、時々Errorとか出ているみたいではあったけど)

ちょっといじってみた限りで気づいた、よいところとわるいところをまとめておく。

よいところ

1 Fcitxのバグが治った

この前の記事で書いたFcitxのうまく行かないことがうまく行くようになったので、その記事の半分くらいは無意味なものになった。
具体的にはこの前の記事で次のように書いたところが、治った。

Fcitxの方は、設定画面(「全体の設定」タブを選んで、下の「拡張オプションの表示」をチェックする)ではちゃんと切り替えボタンの他にそれぞれの専用キーが設定できるかのようになっているのに、実際には「入力メソッドをオフに」は機能せず、「入力メソッドをオンに」は切り替えキー(トグルキー)になってしまう。バグなんでないかと思うが、僕の考え違いなのかもしれない。

[「それぞれの専用キー」というのは、「入力メソッドのオン」と「オフ」の専用キーということ]


(前回の記事の写真)

そこで早速上の写真でマウスカーソルのおいてある、「入力メソッドをオンに」の右の「空」と書いてあるボタン(2つあるがどちらでもいい)を押すと次のようなウインドウがでてくるので、「変換」キーを押す。

(今回とった写真。上の写真と比べると設定ウインドウが広がっている。その他、下のパネルや背景などに、アップグレードの結果が反映されている。このあとの文章を読む際の参考にされたい)

「入力メソッドをオフに」も同様に右の「空」ボタンを押して、「無変換」キーを押す。

つぎに、前回の記事の次の部分で消してしまった、「キーボード - 日本語」を復活させる。

次に、Fcitxの場合は「Fcitx設定」の「入力メソッド」タブのところでMozcもしくはAnthy以外を消してしまう(「キーボード - 日本語」も)。こうすると、MozcないしはAnthyが常に生きてる状態になるんだと思う。


(前回の記事の写真)

やり方は「+」ボタンを押して「キーボード - 日本語」を選ぶだけ。

最後に、前回の記事の次の部分で紹介したMozcの設定を取り消す。

そこで、Mozcの場合右下のトレイの「あ」のアイコンを左クリックして出たメニューから「Mozcツール>設定ツール」を選び、 「一般」タブの下の方にある「キー設定の選択」のところの「編集」ボタンを押して、更に「編集」ボタンから「エントリーを追加」を選び、モード - 直接入力、入力キー - Henkan、コマンド - IMEを有効化、というのと、もう一度「エントリーを追加」で、モード - 入力文字なし、入力キー - Muhenkan、コマンド - IMEを無効化、を追加する。


(前回の記事の写真)

やり方は、上の写真の右下のウインドウ(「Mozcキー設定」ウインドウ)の方で、この前追加した行を選択した状態で「編集」ボタンを押し、「選択したエントリーを削除」を選ぶだけ。

これでMozcを無理やり常時生かしておくというトリッキーなことをせずに、望む環境が実現できた。右下のアイコンもちゃんと変わるので、目で見て確認することもできるし。よかったよかった。Ibusではどうなるかは試してない。Fcitx-Anthyでもうまくいく。

【その後、04/23の記録を経て、08/27の記録へと認識が移り変わっています。両記事、特に後者をご一読ください。(08/27)】

2 XTermのアイコンがかっこよくなった

13.10では、僕の環境では、ということなのかもしれないが、XTermのアイコンが、よく言えば古風な、悪く言えば垢抜けないものだったのだが、アップグレードでLubuntuの他のアイコンとも調和したものになった。心置きなく、左下の「アプリケーションランチャー」に追加しておいた。

3 デスクトップに「ゴミ箱」「ドキュメント」「接続されたボリューム」が簡単に置けるようになった

この記事の二枚目の写真の左の方を参照のこと。
デスクトップで右クリックしてデスクトップの設定を選び、デスクトップアイコンタブでそれぞれにチェックを入れると出てくる。
ゴミ箱にゴミを入れるとアイコンに反映されるようになったのが嬉しい。そのゴミ箱アイコンを選択して右クリックでゴミ箱を空にするができればなおいいんだけどな。

【できるようになりました。2016/02/11の記録参照。 (2016/02/11)】

よいところはこれくらいしか思いつかない。

次に

わるいところ

1 ログイン画面の背景画像の右の方に赤みがかかってしまったのが気に入らない

Lubuntu13.10でのデフォルトの背景画面はなかなかクールでいいと思っていたのだが、14.04ではだいたい同じなのだが、右のほうに赤みがかかってしまった。完全に好みの問題だが、元のほうが良かった。

もうひとつ、
/usr/share/lubuntu/wallpapers
に入ってる壁紙用写真が更新されてしまい、そこそこ気に入ってた写真がなくなっちゃった。新しくなった写真はどれも気に入らない。消しちゃうならそう言ってくれよ。保存しておいたのに。
仕方ないのでEeePCのデフォルトの壁紙にした。これはなかなか気に入っていて、xp時代は一度も変えなかった。

(これ)

【なくなった壁紙、Lubuntu 13.10 - Community Wallpaper Contestで見つかった。 "muelle" というやつ。 "smolikas" というのも良いと思っていたが、こっちはダウンロードできるようになっていないみたいなのを遺憾に思い、さらに探したら、“lubuntu-artwork” 0.41 source package in Ubuntu というのにたどり着くことができた。これを落としてくると、壁紙以外のものも含めて、いろいろ手に入る。 (05/03)】

2 PCManFMで、「ツール>root ユーザとして現在のフォルダを開く」の選択肢がなくなり、ルート権限でいじる方法がよくわからなくなった

これはこまる。色々探してみたが、この機能を実現させるやり方がわからないので、仕方なく次のやり方をした。

どこでもいいので、「右クリック>新規作成>空のファイル」をやって、「root_pcmanfm.desktop」と名付ける。(名前は何でもいいんだけど、最後の「.desktop」は忘れずに)

エディタで開いて、次のように書いて保存。

[Desktop Entry]
Encoding=UTF-8
Type=Application
Name=root_pcmanfm
Name[ja]=PCManFM (root)
Icon=system-file-manager
Exec=gksudo pcmanfm %U
Comment[ja]=ルート権限でPCManFMを起動
Categories=Utility;

端末で

gksudo pcmanfm

と打ってエンターを押すとパスワードをきかれるので、打ち込むと、ルート権限でpcmanfmが開く。

【これ、端末を使わないで単に今つくった "root_pcmanfm.desktop" —— "PCManFM (root)" と名前が変わってるかもしれない——をダブルクリックするだけでよかった。(11/03)】

そこで、
/usr/local/share/applications【*】
を開いて、さっき作った「root_pcmanfm.desktop」をそこにうつす。

【*訂正しました。訂正の詳細 (2017/02/15)】

そうするとメニューの「アクセサリ」のところに「PCManFM (root)」が出てくるようになる。
左下のアプリケーションランチャーにもこれを追加しておいてもいいだろう。

アイコンが普通のPCManFMと一緒なのでわかりづらい、という事なら、上の「Icon=system-file-manager」のところを別のものに変えるとよい。

これでルート権限でpcmanfmをいじれるようになるので、一応はいいんだけど、いちいちホームフォルダから辿らなきゃいけないのでめんどくさい。もっとクールなやり方がないかと思っている。

【ここ、ちょっとだけ修正した。具体的には「root_pcmanfm.desktop」の中の記述で "Exec=gksudo pcmanfm" となってたのを "Exec=gksudo pcmanfm %U" にした。元のが間違ってたというわけではないが、より便利なようにかえた。こうしておくと、 PCManFM上でフォルダを選択して「右クリック>アプリケーションで開く」をやって「アクセサリ」の中にあるここで作った「PCManFM (root)」を選んで開くことができる。一度やると次からは右クリックをするだけで「PCManFM (root)」が選択肢に出てくるようだ。これは「もっとクールなやり方」と言えると思う。(10/26)】

3 下のパネルにネットワークの状態を示すアイコンが出なくなった

パネルの設定のパネルアプレットを追加するところで「ネットワーク状態モニタ」や「ネットワークの管理」を追加できるのだが、前者はろくに機能しないし、後者はアイコンが変になっちゃうし、使っていないイーサネットの分まで出ちゃって鬱陶しいので、これらは使わない。

/home/アカウント名/.config/lxsession/Lubuntu
に「autostart」という空ファイルをつくり、そこに

@nm-applet

と書いておいた。

これで多分、アップグレード前と同じやつが出るようになると思うが、アップグレード前がどんなだったか忘れたので確認できない。気に入らないのは、下でも書くが、アイコンがLubuntuのテーマに沿ったものじゃなくなっちゃった点。(上であげた新旧の写真を参照)

4 テーマに沿わないアイコンが出てくるようになった

アップグレードをしている最中にアイコンが切り替わる瞬間を目撃したのだが、仕組みを変えたことによってリンクされているアイコンが置き換わってしまったのかと思う。アップグレードではなくクリーンインストールなら、話は違ったりするのかもしれないし、そうでもないのかもしれない。

一番気に入らないのはパネルに表示される電源管理のアイコンで、バッテリーをつけているときは、バッテリーの残りを示す今までどおりのアイコンが出てくるのでいいのだが、バッテリーを外してしまうと、元々は稲妻のアイコンだったのが、乾電池のアイコンが出るようになってしまった。

(この画面の乾電池と同じやつ。たしかこの画面でも、乾電池のところは稲妻アイコンだったはず)

電池をつけずにac-adapterをつなげてるのに電池のアイコンが出てくるのはけしからん。
catfishで「ac-adapter」を検索してみると、 Lubuntuでのac-adapterのアイコンは
xfpm-ac-adapter.svg
という名前になってるらしいことがわかった。

/usr/share/icons/lubuntu/devices
の、それぞれの大きさを見ると、どれもこれも
xfpm-ac-adapter.svg
が、
battery.svg
にリンクされている。

ACアダプターを電池にはるなよ、バカ、と思い、稲妻アイコンがないかと探してみると、
/usr/share/icons/lubuntu/panel/24
にかろうじて、稲妻アイコンの
xfpm-ac-adapter.svg
があったので、これをコピーして同じ大きさの
/usr/share/icons/lubuntu/devices/24
のやつに上書きしてやった。

すると、次にパソコンをたちあげたら、上の方にあげた写真の右下を見てもらえばわかるが、稲妻アイコンが出るようになった。ひとまずはいらだちは収まった。

あとは、さっき書いた
nm-applet
のアイコンも弄りたいところだが、面倒なのでまだ手を付けていない。

5 xmodmapが自動起動できない

これは実は13.10の時には試してなかったので、アップグレードとは関係ないのかもしれないが、 xmodmapでキーの置換えをすることにして、そのためのファイルをつくり、ターミナルで試してみたらうまく行くようになったのに、ログイン時に自動起動ができない。

Lubuntuの自動起動はいくつかやり方があるようで、さっきnm-appletを自動起動させるときに作ったファイルに

@xmodmap /home/アカウント名/.xmodmap7

という行を付け加えてみたがダメ。

さっきルート権限のpcmanfmのを作った要領で、上のコマンドを実行させるxmodmap7.desktopというファイルを作って、
/home/アカウント名/.config/autostart
に入れてみたがこれもダメ。
(xmodmap7というのは、いろいろな設定を試してみて、その都度設定ファイルに「.xmodmap数字」という名前をつけてたんだけど、七番目に作った設定が一番しっくりきたからそういう名前になってます)

るるる〜るぶんつさんの記事を参考に、このxmodmap7.desktopファイルを
/etc/xdg/autostart
に入れてみてもダメ。

/etc/xdg/lxsession/Lubuntu/autostart
に書いてもダメ。

「メニュー>設定>LXSessionのデフォルトのアプリケーション>autostart タブ」のところで設定してみてもダメ。

今のところ打つ手がない。

/usr/local/share/applications
【*】 にxmodmap7.desktopファイルを入れておけばメニューから呼び出せるので、毎回実行するようにしてる。

【*訂正しました。訂正の詳細 (2017/02/15)】

で、今この記事を書くためにも最初に実行させて、しばらくはうまく機能してたんだけど、何かの拍子に効かなくなることがあるようだ。

ちなみにこの設定は、2008/11/01の記録でお蔵入りにしたカルフールで買った安っぽいキーボードを最近EeePCにつなげて使っているので、これのキーを日本語がうちやすいようにかえるためのもの。
参考までに設定ファイルの.xmodmap7の内容を紹介しておく。

keycode 94 = Muhenkan
keycode 134 = Henkan_Mode
keycode 163 = underscore backslash

フランスで買ったキーボードを日本語配列で使って問題となるのはアンダースコアが打てなくなることなんだけど、キーボードの上の方にせっかくついてるのに一切使わないe-mailボタンをそのために活用できたのが大変嬉しい。

== 追記(2014/04/19 夜) ==

色々いじってわかったが、上で書いたxmodmapが効かなくなる現象は、ここで大喜びしているe-mailボタンを押したことで発生するようだ。e-mailボタンだけでなく、キーボードの上についてるおまけボタンをどれでも押すとなぜだかわからないがxmodmapの設定が取り消される。おまけボタン利用は諦めねばならない。非常に残念だ。

いろいろ考え、Fcitxの設定のほうで「入力メソッドをオンに」のキーとして右アルトをあてることにし、上の.xmodmap7で「Henkan_Mode」にあてていた右ウインドウズキー(Super_right)をアンダースコアとバックスラッシュのキーにすることにした。このやり方だと、キーボード設定がCAやRUの時に日本語を打ちたくなったら、一旦キーボードの方をJAに戻してから右アルトを叩くか、Fcitxで「半角全角」キーとともに入力メソッドオンオフのトグルキーに設定しているCtrl + Spaceをやらねばならず、面倒だが、最近はフランス語を打つことも減ったのでまあいいことにする。

ついでにテンキーの記号のキーもスペースと一緒に押すと違うのが出るように設定してみた。

その最新版.xmodmap7は次のとおり。自動起動の方はまだ解決しない。

keycode 63  = KP_Multiply bar
keycode 82  = KP_Subtract underscore
keycode 94  = Muhenkan
keycode 106 = KP_Divide backslash
keycode 134 = underscore backslash

もうひとつちなみに、2008/11/01の記録で買ってはしゃいでいるOMじるしキーボードは、一旦ビールをぶっかけて壊しちゃって買いなおして、その買いなおしたやつをメインのMacMini用として今でも使ってる。

| Linux関連 | 12:59 | comments(0) | trackbacks(0) |

2014/03/31の記録:LinuxMint13Mateでの外付けテンキーの設定

外付けのテンキーを二つ持っている。

一つは、サンワサプライのUSB Mobile Ten III (NT-IBOOK9TAN) という機械。
学生時代に大学生協で100円で投げ売りされていたのを、100円だったらオレ、買っちゃうぜ、といって、別にいらないけど買った。

(右端)

当時僕が使っていたパソコンは初代グラファイトiBook。

2011/10/12の記録で紹介したように、今でも動く。これにもリナックスを入れてやりたいと思っている【04/27、入れてやった】)

テンキーは色があわないが、iBookと一緒に買って当時愛用していたマウスも、上の写真に写ってるようにタンジェリンだったので、それとそろえることができて幸せだった。元々僕はオレンジという色が好きだ。

僕の持っているもう一つのテンキーは、サンワサプライのUSB Mobile Ten III (NT-IBOOK9G3) という機械。
一つ目を買った翌日に大学生協で100円で投げ売りされていたのを、100円だったらオレ、二つ目だって買っちゃうぜ、といって、別にいらないけど買った。
一つ目のと色違いで、iBookにあわせてあるタンジェリンに対して、PowerBookにあわせた黒。
すでにタンジェリンのを持っていたし、それすら実際のところは持て余していたのを、パソコン一台に二つのテンキーをつけてもしょうがないので、長らくしまわれていたが、いつだったか、母がテンキーをほしがっていたのであげた。

タンジェリンのはほとんど使っていないが、黒い方は、母がそれ以来愛用している。
率直に言って、二つで200円はかなりお買い得だったと評価できる。マック用とされていたのが嫌われた結果の100円なのだろうと思うが、Windowsでも問題なく使える。母の機械はxpである。

いや、問題なく、と言ったが、実は多少の問題はあった。
マックで使う分にはそういうことは起こらないのだが、Windowsの乗ってるノートパソコンではNumLockを押さないと数字がうてない(矢印キーみたいな機能になる)。NumLockを押すと、テンキーは使えるようになるが、今度は元々のキーボードのKだのLだののあたりが数字になってしまう。
(これはマック用テンキーだから、というわけじゃなく、しかるべく手のうってないテンキーではこういうことが起こるのが仕様だったようだ)
かなり不便で、はっきり言って実用的でない。

この問題を解決するためにキーボードのメーカーはドライバだかアプリケーションだかを配ってて、サンワサプライのだったか別のメーカーのだったか忘れたが、そういうものを母のパソコンに入れて、パソコンのキーボードでは文字がうて、テンキーでは数字がうてる状態を実現していた。

そこへきて、このたびのxpサポート打ち切り騒ぎだ。
母のパソコンにはLinuxMint13Mateを入れたのだが、テンキー用のドライバだかアプリケーションだかはWindows用のものしか配られていない。
上の問題がまた浮上してきてしまった。仕方ないとあきらめてくれ、と母には言ったものの、何とかならないものかと気になっていた。

そうこうしているうちにxmodmapというものの存在を知った。僕のネットブックに入れたlubuntuの環境を整えるためにいろいろいじっている中で、これもそのうち書くかもしれないが、キーボード配列の問題が一つあって、その解決のためにあれこれ調べていて、いくつかのブログやサイトで言及されているのを見つけたのだ。
(例えば「UNIXの部屋 コマンド検索: xmodmap」さんや「Linux, Mac, Emacsについての設定、覚え書き」さん。ほかにもいくつかのサイト・ブログの諸先輩方にお教えいただいた。感謝いたしております)
これはキーボードの配列をいじる仕組みで、これを使ってもlubuntuでの問題はなかなか解決に至らなかったのだが、ふと、これが母のテンキーの問題解決に使えるのではないかと思いついて、やってみた。
うまくいった。

いつものように前置きが非常に長くなったが、以下、そのやり方。

まず、端末を起動させて

xev

とうつと、何やらアプリケーションが立ち上がるのだが、これで次に打ったキーボードのキーのkeycodeというものがわかる。
そこで、テンキーの各キーをひとつひとつ打っていって、そのキーのキーコードをメモしておく。

home直下に、実は名前は何でもいいらしいのだが、慣例に従って ".Xmodmap" という空の書類をつくり、テキストエディタで開く。
そして、上で調べたキーコードをひとつひとつ確認しながら、つくった書類に次のようなことを書いて保存する。

keycode 90 = KP_0
keycode 91 = KP_Decimal comma
keycode 104 = BackSpace Delete
keycode 87 = KP_1
keycode 88 = KP_2
keycode 89 = KP_3
keycode 83 = KP_4
keycode 84 = KP_5
keycode 85 = KP_6
keycode 79 = KP_7
keycode 80 = KP_8
keycode 81 = KP_9

ただし、これは僕が実際にやった例で、キーコードが機械や環境によって違ってる可能性があるし、keycode 91やkeycode104のあたりは僕の趣味なので、ご自分の趣味や使い方にあわせて設定してもらいたい。
僕が特に設定しなかったキーについても、もちろんキーコードを調べて付け加えれば、設定できる。

"KP_" というのはキーパッドかなんかの略じゃないかと思うんだけど、どうもたとえば普通の "1" と "KP_1" は働きが違って、ワープロとかで数字を打つだけならどっちもかわらないけど、電卓アプリとかで直接打ち込めるか否かとかの差が出てくるんではないかと思われる。
よくわからないが、上に書いた xev でキーコードを調べる際にそのキーがどんな信号を送るのかも同時に知ることができて(keysymとか言うやつ)、そこでテンキーのキーには "KP_" がつくらしいことがわかったので、そのままつけといた方がよかろうと思ってつけておいた。
"KP_1" の代わりに "1" と書いたら、普通の 1 が出るようになる。ワープロとかテキストエディタのためだけだったら、別に普通の 1 でもいいかもしれない。

【もう一つ、書き落としていたが、keycode91や104のように半角スペースをおいて二つ並べて書いておくと、シフトを押しながらそのキーを押すと二つ目に書いたものが出るようになる。実用的でないが例えば

keycode 88 = KP_2 KP_3

と書いておいたとしたら、keycode88にあたるキーを単独で押すと 2 に、シフトと一緒に押すと 3 になる。だから僕の設定では91のキーはそのまま押すとピリオド(小数点)で、シフトを押して押すとカンマになり、104のキーはそのまま押すとバックスペースで、シフトを押しながらだとデリートになる】

".Xmodmap" をつくりおわったら、また端末を開いて

xmodmap .Xmodmap

と打ってエンター。
最初の "xmodmap" は仕組みを起動させるためで、後ろの ".Xmodmap" は上でつくった書類の名前。だから、書類に別の名前をつけたのなら、その名前を書く。あと、ほんとはディレクトリとかもちゃんと書いた方がいいのかもしれないが、僕はこれしかやってないし、home直下に ".Xmodmap" を入れとけばこれで問題なく動くので、特に考えがあるのでなければこうすればいいのだと思う。
逆に、home直下じゃないところにおいても、ディレクトリをちゃんと記述することで機能させられるのだと思うのだけど、試してないので責任は持てない。間違ってたらごめんなさい。

これで、NumLockをオンだかオフだかにすれば(どっちがどっちかよく知らない)パソコンのキーボードでは文字がうて、外付けテンキーからは常に数字がうてるようになったはず。

ただ、上のように端末から打ち込んだだけではログアウトしたら効き目が消えてしまうので、毎回打ち込むのが面倒なら、起動項目の中に上のコマンドをそのまま入れておけばいい。

今手元にLinuxMintの機械がないので実際の言葉遣いが確認できないが、メニューの設定のところに「起動時に自動で立ち上がるアプリケーション」みたいなのがあると思うので、それを開いて、「新しく付け加える」みたいなのを選び、開いたウインドウにコマンドを書き込む欄があるので、上のコマンドをそのまま書いて、「テンキー設定」の様な名前をつけて保存すればいい。いらなくなったらそれを削除しちゃえばいい。

もう一つ、起動時に ".Xmodmap" を読み込ませる設定ファイルをhome直下につくっておくという手もあるらしいが、LinuxMintMateなら起動項目に付け加えるのは簡単なのでそれでいいと思う。やってることは結局同じことだし。

| Linux関連 | 23:15 | comments(0) | trackbacks(0) |

2014/03/12の記録:Lubuntuのキーボードと入力メソッドの設定について

== 追記 ==

この記事の中で僕の環境であるLubuntu​13.10のケースを、十分な確認をせずに別の環境でも当てはまる一般的状況であるかのように書いてしまっていましたが、僕自身が今のところ確認できるLinux​Mint​13では、Lubuntu​13.10の場合とはまったく違う状況であることに気づきました。その点、注の形で明記し、さらに内容をできるだけ正確になるよう一部書き換えました。同じIBusやMozcでも環境によって大きく異なることを学びました。

== 08/27追記 ==

Fcitxに関しては、その後の紆余曲折を経て、08/27の記録がこの件に関する最新の情報です。この新しい記事では、当記事(03/12の記録)の内容に反するようなことも書いてありますので、ご一読いただけると幸いです。 Fcitx以外の環境では、ここに書かれた内容がいまだに参考になると思います。いま読み返してみると非常にわかりづらい文章で恐縮ですが。

Lubuntuで色々遊んでいる。
色々と好みに合わせた設定を試みているわけだが、キーボードと入力メソッドの設定に戸惑った。
僕がこだわったのは次の二点で、それを実現するのが難しかった。

  1. 僕は時々フランス語を打つことがあるし、ロシア語を打つ必要があるときもあるので、カナディアンフレンチとロシア語ロシア配列と、ロシア語フォネティックの3つのキーボード配列を、簡単に切り替えられるようにしたい。
  2. メインのパソコンはマックなので、マックの日本語キーボードに合わせ、スペースキーの左右にそれぞれかな入力キーと英数入力キーを持ってきたい。

これを実現するための試行錯誤のなかで、FcitxだとかIBusだとかMozcだとかAnthyだとか、いろいろ覚えたわけだが、結論をまず書く。

1. を実現するためには、入力メソッドの方での解決を図るのではなく、キーボードの設定のところでキーボード配列を選べるようにする。そのうえで、FictxなりIBusなりには、MozcなりAnthyなりを常に活かしておくようにさせる(他の選択肢を消す)。

2. の実現は、IBusやFcitxのレベルでは後述の理由でうまくいかないので(*1)、入力メソッドの設定でスペースキーの右をMozcならIME有効、Anthyならひらがな入力モードに、左をそれぞれIME無効、英数入力モードに割り振ればいい。

===== 注 =====

*1 ここに書いたのはLubuntu​13.10の場合で、Linux​Mint13では、IBusの設定でスペースの右左をそれぞれ入力メソッドのオン・オフに割り当てることができた。この違いはLubuntuとMintの違いなのか、バージョンの違いなのかよくわからんが、バージョンの違いだとすると、新しい方が不便ってのはどういうことだろう。

【☆IBusは設計思想の観点から新しいバージョンではその機能を省いたようです。 Fcitxではバグのためうまくいかなかったのですが、バージョンが進み解決しました。上記のようにFcitxをご使用の場合は、この記事の内容は古く参考にならないと思うので、 08/27の記録をご覧下さい。(2015/02/28)】

そうすると、入力メソッドが直接入力の時は、その時選んでいるキーボード配列に従って出るべき文字が出る。
入力メソッドがひらがな入力の時は、叩かれたキーの出す文字が入力メソッドの読める文字(つまり普通のローマ字)の時は然るべきひらがなが出るが、キーボード配列によって入力メソッドの読めない文字(つまりキリル文字やアクサン付きの文字)が送られると、その文字がそのまま出る。

具体的な手順は、Lubuntuだとデフォルトで右下のトレイで「JP」となっているアイコンを右クリックし、「キーボード配列の設定」の画面を出す。

(左のメニューからこれが呼び出せたほうが安心なのだが、これ以外のやり方が見つからない。親のパソコンに入れてみたLinux​Mint​13​MATEではちゃんとメニューからキーボード配列設定が呼び出せた)

==== 補足 ====

右下に“jp”等の国名のアルファベット、もしくは国旗のアイコンがなければ、どこでもいいのでパネル上にポインタを持って行って右クリックし、「パネルアイテムの追加・削除」を選択。出てきたウインドウの右の「追加」ボタンを押し、「キーボード配列の設定」を選んで追加すると、国旗アイコンが右下に出る。

そしてその右上の方にある「システムの設定を保持する」みたいなことの書かれている部分のチェックを外すと、左側でキーボード配列を追加できるようになるので、希望する配列を追加する(僕の場合は上の3つ。細かく言えば、カナディアンフレンチは2種類あったが、マックのと一緒なのは無印のほうじゃなくてレガシーの方だった。レガシーだったのか)。

こうすると、JPのところをクリックしたり、設定画面の左下にある「配列の改変オプション」のところで指定したホットキーを押すたびにCA - RU - RU - JPと切り替わってキーボード配列が選べるようになった。

次に、Fcitxの場合は「Fcitx設定」の「入力メソッド」タブのところでMozcもしくはAnthy以外を消してしまう(「キーボード - 日本語」も)。こうすると、MozcないしはAnthyが常に生きてる状態になるんだと思う。

(大きな欄で選択した状態にして、欄の下のマイナスを押すと削除できる)

IBusの場合は「メニュー>設定>キーボード・インプットメソッド」で開く「iBusの設定」ウインドウ内の「詳細」タブのキーボードレイアウトの「システムキーボードレイアウトを使用する」にチェックを入れる*2)。IBusでは、 MozcないしAnthy以外を消すのは同じだけど、別に消さないでも大丈夫だった気もする(*3)。

===== 注 =====

*2 ここは完全に僕の勘違いだった。僕の望む環境の実現のためには、この「システムキーボードレイアウトを使用する」を有効にするか無効にするかはあまり関係なく、むしろチェックを入れない方が、Linux​Mint​13のIBus-Mozcの環境では便利だった。と言うのは、キーボード配列がCAやRUになっていても、ここのチェックを外しておけば、入力メソッドを有効(ひらがな入力)にすると日本語配列にしたがって日本語が打てた。無効にするとそのままフランス語やロシア語が打てる。つまり、日本語をうつかぎりキーボード配列を気にしなくていいってことで、これは実はマックと同じ状況。
ほんとはlubuntu​13.10でも同じようになるはずだと思うけど、バグのせいか何のせいか、IBus-Anthyではチェックの有無に関わらず上に書いたのと同じ状態。IBus-Mozcは、アンインストールしちゃったみたいで、未確認。

*3 Lubuntu​13.10のIBus-Anthyだと(IBus-Mozcは確認できていない)、残しておいてもそんなに問題なさそうだ。意識して切り替えない限りAnthyから「日本語」などに切り替わることがない。この点、Fcitxだと何かの拍子にAnthyなどから「日本語」などに切り替わってしまい、そうなると後述の問題が起こる。いずれにしても、残しておく必要は特にないので、消してしまっていいだろうと思う。

これで上に書いた1が完了。
マックに合わせたいという欲求を持たない人は、ここまででいいだろう。ただし、注意点は、CA配列では半角/全角キーが別のキーになってしまうので、CA配列のまま日本語を無理やり打つためには、マウスを使うなり別のホットキーを使うなりしなければいけなくなること。とはいえ、ちゃんとJP配列にしてから半角/全角を押せばいいだけだから、大した問題じゃない。RU配列も一緒だが、RUだとひらがな入力にしたところでどうせひらがなは出てこないので関係ない(*4)。

===== 注 =====

*4 上(*2)で書いたようにLinux​Mint​13だと「システムキーボードレイアウトを使用する」を無効にすると、CAやRU配列にしておいてもIME有効にすれば日本語が打てるし、その場合は半角/全角キーも効くので、この点がかえって問題になる。つまり、配列を例えばRUにした状態でIMEを有功にして日本語を打っていて、ロシア語を打ちたくなったら半角/全角を押せば打てるのだが、戻すときには半角/全角が効かなくなる。そのため、そうした使い方をするためには、僕のやり方でなくてもかまわないけど、いずれにしても何かのキーをIME有効に割り振っておく必要がある。実はデフォルトでも、半角/全角の他に何かと何かの組み合わせで切り替わる設定になってると思うので、それをやればいいんだけど。

2を設定するための注意点は、IBusやFcitxのレベルで入力メソッドのオン/オフキーを設定するのではなく、AnthyやMozcのレベルで、ひらがな入力モード、直接入力モードの切り替え、あるいはimeの有効/無効の切り替えをそれぞれのキーに割り振ること。

なんでかというと、まずIBusだと入力メソッドのオンオフ切り替えキー(トグル)の設定はできるが、オン専用キー、オフ専用キーの指定は出来るようになってない(*1)。これを押せば必ずひらがな、これを押せば必ずローマ字、という、僕の求めるキーが作れないということ。

Fcitxの方は、設定画面(「全体の設定」タブを選んで、下の「拡張オプションの表示」をチェックする)ではちゃんと切り替えボタンの他にそれぞれの専用キーが設定できるかのようになっているのに、実際には「入力メソッドをオフに」は機能せず、「入力メソッドをオンに」は切り替えキー(トグルキー)になってしまう。バグなんでないかと思うが、僕の考え違いなのかもしれない。

(これがちゃんと機能してくれればば話は早いんだけど、うまくいかない)

== 2015/02/28追記 ==

この問題はFcitxのバージョンが上がった結果解決し、ちゃんと機能するようになりました。やっぱりバグだったようです。

そこで、Mozcの場合右下のトレイの「あ」のアイコンを左クリックして出たメニューから「Mozcツール>設定ツール」を選び、

「一般」タブの下の方にある「キー設定の選択」のところの「編集」ボタンを押して、更に「編集」ボタンから「エントリーを追加」を選び、モード - 直接入力、入力キー - Henkan、コマンド - IMEを有効化、というのと、もう一度「エントリーを追加」で、モード - 入力文字なし、入力キー - Muhenkan、コマンド - IMEを無効化、を追加する。

Anthyの場合「現在の入力メソッドの設定」、Anthyを選んで設定アイコン(工具のマーク)、「キー」タブの英数モード、ひらがなモードにそれぞれのキーをあてる。

===== 注 =====

環境の違いによってAnthyもMozcも設定の仕方が違って、それはIBusかFcitxかでも違ってくる様だけど、やることはだいたい同じ。

これで完成。

これはどういうことかというと、入力メソッドには死んだ状態と、いきいきと生きている状態と、生きてるけど死んだふりの3つの状態があるということだと思う。

死んでる時は当然日本語は出ず、キーボード配列の設定に従った文字が出るわけだが、それだけじゃなくて最後のところで設定したキーも効かない。
いきいきと生きてる時はもちろん日本語。
死んだふりの時は日本語は出ず、キーボード配列に従った文字が出るが、死んだわけではないので設定したキーは効く。ここが肝。

死んでしまうとIBus・Fcitxに頼るしかないわけだが、書いたようにIBus・Fcitxでは、僕の気に入らないトグルキーしか設定できない(日本語入力メソッドオン・オフそれぞれの専用キーが設定できればいろいろ悩まずにすみ、話は早かったのに)(*1)。

そこで、何かの拍子に日本語入力メソッドが死んでしまうことのないように、常に日本語入力メソッドを生かしておく(設定したキーが効かない状態を作らない)工夫が必要になるのだ。
Anthy、Mozc以外の、直接入力オンリーの入力メソッドを選択肢から排除することでそれを実現する。

入力メソッドとして、フランス語やロシア語の直接入力メソッドが選べるようになっているのが罠で、その罠にはまって随分苦しんだ。
フランス語やロシア語は、日本語の入力メソッドを生かしといた上で、死んだふりをさせて打つようにするべきだったのだ。

実は、Fcitxでこれをやると問題点がひとつある。
直接入力でも日本語入力でもアイコンが変わらないのだ。キーを叩いたらどっちが出るか、目で見て確認ができない。

これは大きな問題と思われるかもしれないが、僕は文章を書き始めるときとか、ひと呼吸おいて、さあ再開するか、というとき、どっちが出るか確信を持てない時にはとりあえずこれから打ちたい方へ切り替えるキーを叩いてから文字を打つという習慣がついてるので、あんまり困らない。
こうすれば確実に打ちたい文字が出るので、仮にアイコンがちゃんと切り替わっていたとしても、どっちが出るかを確認するためにそのアイコンに視線を移動させる必要もない。慣れてしまって無意識にできるようになれば、無駄に頭を使わず、集中力が削がれることもない良い習慣だと思う。ひとにもおすすめしたいと思っている。

ちなみに、古いバージョンのIBusならこの問題もない。なんの問題もない理想的な環境が実現する。(*5

新しいバージョンのIBusの不具合はまた別のものだったが、どんなんだったか忘れた。今度確認しようと思うけど、今日はつかれた。(*5

===== 注 =====

*5 最後の二つの段落でいい加減なことを言ってしまった。まず、古いバージョンのIBus(これはLinuxMint13のIBusのこと)で問題が起こらないのは、上で書いたようにIBusの設定で入力メソッドを殺したり生かしたりする専用キーが設定できるためで、仮にそのキーを設定せずにAnthyやMozcの方の設定に頼ったやり方をすると、アイコンは変わらないと思う。
というのは、新しいバージョン(正確にはLubuntu​13.10上)のIBusの不具合というのはまさに、この入力メソッドオンオフキーの設定ができないことで、次善の策として上で書いた方法で設定したIBus-Anthyを今使ってるんだけど、やっぱりアイコンは変わらない。

== 04/17追記 ==

Lubuntu 13.10 のIBus-Anthy、IBus-MozcおよびFcitx-Anthyでは、このやり方をすると不具合が生じることが、その後わかりました。

まず、IBusだと、設定した直後は予定どおりに機能するんだけど、一度ログアウトなりシャットダウンしてもう一度ログインすると、せっかくインプットメソッドをAnthyなりMozcなりだけにするために削除した「日本語」が復活してしまいます。

また、AnthyだとIBusでもFcitxでも、これまた設定直後はいいんだけど、何かの拍子に(どうもIBusなりFcitxなりの設定をなにかいじることが引き金になるらしいが、よくわからない)Anthyにおけるキーの設定が全て消えてしまいます。これは、自分で(カスタムで)設定したキー(上で紹介したのは、変換キーをひらがなに、無変換キーを直接入力に当てる設定)だけではなく、もとから設定してあるバックスペースとかエンターとか全てが消えてしまい、なんでか知らないけどかなの直接入力しかできなくなります。バックスペースもエンターも効かないのは恐ろしいこと。

というわけなので、この問題が解決するか、IBusやFcitxのレベルで入力メソッドのオン専用キー、オフ専用キーの設定ができるようにならない限り、僕の望む環境はFcitx-Mozcでしか実現しません。

なお、現在の入力モードが目で見て確認できない点は、Fcitxのバー(状態パネル)を常時表示する設定にすれば解決します。バーが邪魔に感じることはありますが。

(バーと言ってるのはこれのこと)

やり方は、「Fcitxの設定(入力メソッドの設定)」を開き、「外観」タブの中ほどの「状態パネルを隠すモード」のところで、「表示」を選びます。

(これまでの写真と見た目がちょっと違う点は、気にしないこと)


== 05/31追記 ==

Fcitxのバーが邪魔に感じる場合の対処策として、04/23の記録の最後に書いたような手があります。

| Linux関連 | 22:52 | comments(0) | trackbacks(0) |
|<<< | 10/11 pages | >>>|
ciguwerao
CALENDAR
S M T W T F S
    123
45678910
11121314151617
18192021222324
252627282930 
<< June 2017 >>
LATEST ENTRIES
SELECTED ENTRIES
CATEGORIES
ARCHIVES
SPONSORED LINKS
qrcode