Hatena::Groupvimperator

Vimple Star Sprites RSSフィード

 | 

2009-03-11

ime_controller.js を使わずに style コマンドで

22:00 | ime_controller.js を使わずに style コマンドで - Vimple Star Sprites を含むブックマーク はてなブックマーク - ime_controller.js を使わずに style コマンドで - Vimple Star Sprites

ずっと前(styleコマンドが実装された辺り)から書かなきゃと思っていたことだけど、ime_controller.js でなくてもコマンドラインのIMEの状態はstyleコマンドで制御できる。

:style -name commandline-ime chrome://* #liberator-commandline-command input {ime-mode: inactive;}

ime-modeプロパティはime-mode - MDCに書かれているようにGNU/Linuxではinactiveにできないので注意。

DOM Inspectorで見てみれば分かると思うけど、XULtextbox要素はちょっと歪で内部でHTMLInput要素をもつXBLで定義されている。そして実際の入力欄はHTMLInput部だ。また、ime-modeプロパティは親要素に設定しても継承しない。よって、textbox要素にime-modeプロパティを設定しても意味がないため、#liberator-commandline-command inputというセレクタになる。

そうそう、bug 6380 – IMEの状態をJavascriptのコードから取得できるべきにあるように、将来的にはJavaScriptとから操作できるようになるかもよ。

追記

一応 http://vimperator.org/trac/ticket/191 に書いておいた

 |