Hatena::ブログ(Diary)

papamitra RSSフィード

2011-06-02

[][]gnome-shellのmigemo extension

f:id:papamitra:20110602222522p:image:medium

先日Gnome3がリリースされた。ネットの評判を眺めてるとどうも芳しくはないようだが、個人的には気に入っていてすでにノートPCもデスクトップもGnome3になってしまっている。

もちろん不満が全く無いかといえばそんなことはなく、細かい不満はいくつもある。

そんな不満の中の1つがアプリの検索について。Gnome3ではSuperキーを押したときにキーボードからの入力でアプリの検索ができるが、アプリ名が日本語になっている場合などはいちいちかな入力をONにしてから入力をしなければいけなかったりと非常に面倒くさい。

そんなときはmigemoの出番。ということでアプリ検索でmigemoが使えるgnome-shellのextensionを作ってみた。

使い方

最初にmigemoに付属しているmigemo-clientが使える状態にするため、migemo-serverを起動させる。

自分の環境(Debian unstable)では.xprofileに

migemo-server /usr/share/migemo &

と記述してある。

次にextension本体を持ってくる。

https://github.com/papamitra/gnome-shell-migemo-extension

git cloneするか、上のページにあるDownloadsボタンをクリックしてDLする。

ディレクトリ構成はこうなる。

$ cd ~/.local/share/gnome-shell/extensions
$ tree migemosearch@papamitra.com
migemosearch@papamitra.com
|-- extension.js
`-- metadata.json

0 directories, 2 files

ディレクトリ名が気に入らない場合は名前を変えて、metadata.jsonのuuidを適切に変更する。

あとはgnome-shellを再起動すれば、extensionが有効になる。ログインしなおしてもいいけど、Alt-F2のダイアログでrコマンドを使うのが簡単。

f:id:papamitra:20110602221824p:image

使ってみるとこんな感じ。

f:id:papamitra:20110602222522p:image

最後にいくつか

コードを見てもらえば分かるとおり、かなり力技で実装してあるが一応自分の環境では実用的な速度で動作している。

Gjs(JavascriptGnomeバインディング)はドキュメントが少なくて非常に難儀した。

migemo-serverの起動とかもextension内で完結できないものか。