2009年6月26日金曜日

Run Emesene and Skype quietly.

私は、メッセンジャーとしてEmesene、加えてSkypeも使っていて、ログイン時に自動起動するようにしています。
自動起動させるには、パネルメニューの
システム > 設定 > 自動起動するアプリ
で、好きなアプリの起動コマンドを追加してやれば良い。

しばらくはそれで満足していたのだけれども、この設定のままだとログインの度にEmeseneとSkypeのウィンドウが現れる。。。
別にウィンドウはいらないのよ。パネルにアイコン出しておいてくれればいいだけなのよ。

というわけで、EmeseneとSkypeでウィンドウを表示させずに起動する方法

Skypeの場合はわざわざ記事にするほどでもない気がするほど単純。
Skypeの設定ウィンドウを見れば、もうそこには「システムトレイ内で最小化したSkypeを開始」のチェックボックスが待っています。

Emeseneでは、起動オプションに「-m」または「--minimized」を付けてやると、最小化した状態で起動してくれます。
(ver 1.0だと、GNOMEパネルの通知スペースにしまわれた状態・ver 1.5だと、ウィンドウが最小化した状態)


ちなみに、私 Pidgin使ってません。。。

Show update notification icon in GNOME Panel with Ubuntu 9.04

先日やっとUbuntu 9.04をクリーンインストール。
アップデートの通知方法が変わって、以前のようにパネルの通知領域にアイコンが出るのではなく、いきなりアップデートマネージャが開くようになりましたが、以前のように使いたい、という人は結構いるんではないかと

JauntyJackalope/ReleaseNotes/ja アップデートの通知方法が変更されました
https://wiki.ubuntu.com/JauntyJackalope/ReleaseNotes/ja#%E3%82%A2%E3%83%83%E3%83%97%E3%83%87%E3%83%BC%E3%83%88%E3%81%AE%E9%80%9A%E7%9F%A5%E6%96%B9%E6%B3%95%E3%81%8C%E5%A4%89%E6%9B%B4%E3%81%95%E3%82%8C%E3%81%BE%E3%81%97%E3%81%9F

上記のように説明されてはいますが、「コマンド一発叩けばいいよ」でUbuntuがターゲットにしている筈のユーザ全員が満足できるわけが無い!そんなのUbuntuの信条じゃないやい!と勝手に考えて、コマンドを使わない別の方法を紹介します。

1. パネルメニューで
 アプリケーション > システムツール > 設定エディタ
を起動。(設定エディタが見当たらないなら、パネルメニュー上で右クリック「メニューの編集」で、設定エディタの「表示」にチェックを入れましょう)

2. 設定エディタで/apps/update-notifier/を見つけて、auto_launchのチェックを外す。(これと同じことをコマンドでやるのが、リリースノートで紹介されている方法なのです。)

3. 次回ログインからパネル右上の通知領域に、8.10以前のバージョンの様に通知アイコンが表示されます。


・おまけ

通知アイコンを右クリックした時に現れる「通知の表示」チェックボックスですが、このチェックを外すと、/apps/update-notifier/に勝手にno_show_notificationsとdefault_actionという値が増えます。どちらも、8.10以前では標準で使ってた値なんでしょうが、9.04からはスキーマすら無くなってます。

auto_launch:false
no_show_notifications:true
の状態にしておくと、アップデート通知が分からなくなってしまいますのでご注意を。(default_actionの値にもよるかな?)

2009年6月20日土曜日

Comix accepts directory as a command line argument

Ubuntuのリポジトリにも入ってる、Comixという漫画ビューアを使っています。
そして、つい先日やっと重い腰を上げてUbuntu9.04をクリーンインストールしたのです。
もちろん、Comixも再びインストールしたのですが、以前ならば端末で
$ comix ディレクトリ
とすれば、ディレクトリ内の画像を表示してくれたのに、何故か「ディレクトリは開けません」とエラーを吐かれてしまうようになっていました。

http://comix.sourceforge.net/changelog.html
Comixのchangelogを見ると、Ubuntu8.10で提供されていたver3系ではディレクトリを指定してやることが可能になっていたようです。
しかし、Ubuntu9.04で提供されているComixはver4.0.1です。changelogを見ると、ディレクトリ指定ができるのは、ver4系では4.0.3からだというのが分かります。

http://sourceforge.net/tracker/index.php?func=detail&aid=2604916&group_id=146377&atid=764987
このページを参考に、ディレクトリを弾いているコードを書き換えてやってもいいのですが、実はgetdebに最新版のdebファイルが上がってるのでそっちを使いましょう。
(それと、上記ページの書き換えるように指定しているソースコードはちょこっと間違ってます)

http://www.getdeb.net/
getdebは、アクセスしたユーザのUbuntuのバージョンを判別します。9.04なら9.04に対応しているとして登録されているパッケージしか出てきません。「comix」で検索しても、見つからない、と言われますが、その画面の下に検索対象のバージョンを変更する案内が出てますので、8.10(Ubuntu Intrepid)を選べば、comixが出てきてくれます。(8.10向けとして登録されていますが、9.04でも問題なく動きます。)

2009年6月15日月曜日

GNOME Panel config


パネルメニューまわりの設定の設定について調べてたら、なんだかちょこっと複雑っぽいので、まとめ。

デフォルトだと左上にある「アプリケーション」メニュー内の、各種ショートカットの実体は
/usr/share/applications/ 以下の.desktopファイルとしてシステムにインストールされている(/usr/local/share/applications/ にも入ってたりする)。
ただし、「アプリケーション」メニュー上で右クリックの「メニューの編集」から編集を行うと、
~/.local/share/applications/ にシステム側から.desktopファイルがコピーされて、それに編集内容が書き込まれる。さらに、メニューで削除をしても、.desktopファイル自体は残りつづけて、ファイル中のHidden値がtrueに設定するのでメニューに現れなくなるだけ。
(ちなみに、「メニューの編集」ウィンドウは実は alacarte というアプリケーション。参考:http://mstssk.blogspot.com/2008/11/gnome-panel-2alacarte.html

パネル上のランチャショートカットやアプレットは、GNOME Panelの設定として~/.gconf/apps/panel/以下に保存される。これらの設定にアクセスするには設定エディタ(gconf-editor)を使う。
ただし、パネルの設定のデフォルト値は /etc/gconf/schemas/panel-default-setup.entries に記述されている。

パネル上のランチャショートカットの設定内容は、起動するアプリケーションの実行ファイルを直接指定している訳ではなく。前述の.desktopファイルを指定している。設定は/apps/panel/objects/以下にアイコンごとにある。
パネル上のランチャショートカットを右クリックから編集すると、編集内容を反映した.desktopファイルは ~/.local/share/applications/ ではなく
~/.gnome2/panel2.d/default/launchers/
以下に保存される。
システムや~/.local/share/applications/以下の.desktopファイルを指定している時は、フルパスが/apps/panel/objects/以下の各アイコンごとの設定項目に書き込まれるが、編集した後の~/.gnome2/panel2.d/default/launchers/以下のファイルを指定している時は、ファイル名のみが書き込まれている(ただ、firefox.desktopとだけ書かれていたりする)。

2009年6月6日土曜日

List directories in current directory.

「echo *」を実行するとどうなる?
http://itpro.nikkeibp.co.jp/article/COLUMN/20090602/331173/

echo *
を実行すると、あんなことが出来るらしい。

じゃあ、
echo */
とすると……
実はlsだとこれ出来ないんだよね。まさか、echoで代替出来るとは。

参考(その他の方法)
linuxでディレクトリだけを表示させる方法 - 教えて!goo
http://oshiete1.goo.ne.jp/qa2760104.html

<追記>
「ls -d */」で出来るそうです。。。嘘付いてごめんなさい。
コメントくれた方ありがとうございました。

2009年6月1日月曜日

Configure shortcut key with Windows Key(Super Key).

Windowsで私がけっこう使っているWin+Mのショートカット。開いているウィンドウをすべて一発で最小化して、デスクトップを表示してくれます。
Ubuntuでも同じ機能がちゃんと付いていて、デフォルトでは下側パネルの左端にアイコンがあり、これをクリックするか、Ctrl+Alt+Dで出来ます。

ただ、Win+Mに慣れちゃってるので、Ctrl+Alt+Dはなんか押しづらい。。。

というわけで、Win+Mに変えてしまえばいいじゃん、と思い立ったが吉日。
パネルメニューの システム > 設定 > キーボード・ショートカット から設定だぁッ、、、あれ? 出来ない。。。

(WinキーはUbuntuではSuperキーという表示になっている。)

左Winキーを押しながらMを押そうとするんだけど、この設定ツールだとWinキーはCtrlやAltのような組み合わせ用のキーとしては認識してくれず、ほかのアルファベットキーなどのように扱われてしまう。

どうしたもんかと思ったら、launchpadで対処法が投稿されてた。
https://bugs.launchpad.net/ubuntu/+source/gnome-settings-daemon/+bug/194979/comments/16

ホーム・フォルダを開くショートカットの設定方法を説明してます。

方法 1:
========
1)システム->設定->キーボード->レイアウト->Other options
Alt/Win キーの挙動: "Meta を両側の Windows キーに割り当て" を選ぶ。

2)システム->設定->キーボード・ショートカット
"ホーム・フォルダを開く" を選び、好きなキーの組み合わせを押す。

例えば、Win+Eなら"Mod4+E"と表示されるでしょう。

方法 2:
========
1)"設定エディタ(gconf-editor)"を起動する。

2)"/apps/metacity/global_keybindings" で
"run_command_1" の値を "<Super>E" に変更。

3)"/apps/metacity/keybinding_commands" で
"command_1" の値を "nautilus" に変更。

(これは、Alt/Winキーの挙動が"デフォルト"か"Meta を両側の Windows キーに割り当て"(訳注)に設定されている場合のみ有効です。方法1を見て、適宜対応してください。)

方法 3 (コマンドラインでの操作):
====================================
gconftool-2 --type string --set /apps/metacity/global_keybindings/run_command_1 'E'
gconftool-2 --type string --set /apps/metacity/keybinding_commands/command_1 'nautilus'

P.S: "/apps/panel/global/menu_key" に関するコマンドラインでの操作を検索しているうちに、gconfに関する別の面白い情報も見つけました。
http://docsun.cites.uiuc.edu/sun_docs/C/solaris_9/SUNWgndoc/GNOMEADMIN/p5.html

とても面白い。(^_^)

訳注:私の環境だと、設定項目は英語のままで"Super is mapped to Win-keys"と表示されていましたが、一応ここも訳しました。

私は極力少ない設定で済ませたいので、方法2を選択。
上記の解説だと、"command_1"にnautilusコマンドを割り当ててますが、デスクトップを表示させる動作は"show_desktop"として既に値が存在しているので、そいつを編集して<Super>Mとしてやります。


ちなみに、"ホーム・フォルダを開く”の設定エディタ上の項目は "/apps/gnome_settings_daemon/keybindings" にあります。けど、そこに"<Super>E"としてやってもショートカットは動作してくれず、しかも勝手に画面テーマが切り替わるという現象が。。。

※ Ubuntu 8.10環境で確認しました。バージョンが違うと設定の位置が違ってたりするのはご愛嬌。