Just another Ruby porter,

〜2009年10月上旬〜


<Prev(,) | Next(.)> | Recent(/)>> | RDF

2009-10-01 (Thu)

[シェルスクリプト] メタ文字

問題。

a='/tmp/[ruby]/'
b='/tmp/[ruby]/foo/bar'

$bから$aを除いた部分(foo/bar)を取り出せ(configure内で使われる)。
今まではexprを使ってたので

expr "$b" : "$a"'\(.*\)'

こんな感じだった。[]が正規表現では意味を持つのでこれじゃだめ、と。

bashなら

expr "$b" : "${a//?/.}"'\(.*\)'

でいいわけで、これをtrで実装したのを提案してみたけどどうもいまいち。

configureで使うのであまりマイナーなコマンドは使えないし、
GNU特有とかもだめで古くからある機能を使って汎用性重視しないといけない。
このあたりが悩ましい。


2009-10-02 (Fri)

[zsh] zshでメタ文字のクォート

あるかなと思ってman zshexpnしたらやはりあった。
変数展開フラグのqでメタ文字をクォートできる。

q      Quote  the  resulting  words  with  backslashes;  unprintable or
       invalid characters are quoted using the $’\NNN’ form, with sepa-
       rate  quotes  for  each octet.  If this flag is given twice, the
       resulting words are quoted in single quotes and if it  is  given
       three  times,  the  words  are quoted in double quotes; in these
       forms no special handling of unprintable or  invalid  characters
       is  attempted.   If  the flag is given four times, the words are
       quoted in single quotes preceded by a $.

実際に昨日の例だとこんな感じ。

% a='/tmp/[ruby]/'
% b='/tmp/[ruby]/foo/bar'
% echo ${(q)a}
/tmp/\[ruby\]/
% expr "$b" : "${(q)a}"'\(.*\)'
foo/bar

正確にはzshのメタ文字なのでexprの正規表現のメタ文字とは違うが、
ほぼ代用可能だ。

9月のspam

3400通ほど。安定してる。


2009-10-03 (Sat)

[Tips] Change newline to space in a file just using echo

改行を空白に変換する。
</tmp/fooだけでcatの代わりになるというとこがちょっとトリッキー。
でも単独ではcatの代わりにはならない。zshはなんでもあり。

% echo foo > foo
% bash -c '<foo'
% zsh -c '<foo'
foo

あとこんなこともできたり。

% echo foo >a >b >c
% <a <b <c
foo
foo
foo

2009-10-04 (Sun)

[Golf] Count diamonds level 1

Bashじゃ面倒かと思ったけど意外に簡単に数える方法があった。
それをRubyでもやってみるとなぜかすげー面倒臭い。
不思議なもんだ。なぜかどっちも39Bだし。


2009-10-05 (Mon)

[Firefox] TMPやめてUndo Closed Tabs ButtomとTabberwockyを入れた

TMPの機能をあまり使ってないのでもうちょっと軽そうな Undo Closed Tabs ButtonTabberwocky を入れた。
やっぱ閉じたタブのリストは欲しいし、プロテクトも欲しいのでこんな感じで。

[awk] awkのRSとFSで正規表現

なぜか使えないもんだとずーっと思い込んでいた。
ちょっとはゴルフが縮むか?


2009-10-06 (Tue)

[Firefox] コンパクトメニューもどき - ’ellaneous

これ入れたらすっきりした。拡張も1個(Compact Menu 2)減らせるしいい感じ。
元あった場所にマウスカーソルを持って行くとメニューが表示される。
かなり反応する範囲はせまいので、下からじゃなくて上からゆっくりと動かす感じで。


2009-10-07 (Wed)

[Web] Evernoteを使い始める

なんかやたらと最近目につくので Evernote を使い始めた。
ごっそりページごとクリッピングできたりする。
CSSまではさすがにコピーしないようで、元のレイアウトは再現されない。

[awk] RSについて

たしかにsolarisで試したら全然正規表現が使えなかった。
mawkで確認しても意味ないよなあ。

これをヒントにというわけでもないが Count diamonds level 1 のトップに追い付いた。
別解をsubmitしたのでStatisticsが微妙に違う。
最終的には正規表現が必要なくなってるとこが興味深い。
しかし、これは一目見ただけじゃ動きが想像つかないな。


2009-10-08 (Thu)

[Fedora] yumのメッセージの日本語

なんか日本語になっててびっくりした。10/1での更新か。

% sudo yum -y install roxterm  
読み込んだプラグイン:dellsysidplugin2, fastestmirror, presto, refresh-packagekit
Loading mirror speeds from cached hostfile
 * fedora: ftp.iij.ad.jp
 * rpmfusion-free: mirrors.tummy.com
 * rpmfusion-free-updates: mirrors.tummy.com
 * rpmfusion-nonfree: mirrors.tummy.com
 * rpmfusion-nonfree-updates: mirrors.tummy.com
 * updates: ftp.iij.ad.jp
adobe-linux-i386                                         |  951 B     00:00     
rpmfusion-free-updates                                   | 3.8 kB     00:00     
rpmfusion-nonfree-updates                                | 3.8 kB     00:00     
updates                                                  | 4.4 kB     00:00     
インストール処理の設定をしています
依存性の解決をしています
--> トランザクションの確認を実行しています
---> パッケージ roxterm.i586 0:1.15.2-1.fc11 を更新に設定しました
--> 依存性解決を終了しました

依存性を解決しました

================================================================================
 Package          Arch          Version                  Repository        Size
================================================================================
インストールしています:
 roxterm          i586          1.15.2-1.fc11            updates          169 k

Transaction Summary
================================================================================
Install       1 Package(s)
Upgrade       0 Package(s)

総ダウンロード容量: 169 k
パッケージをダウンロードしています:
Setting up and reading Presto delta metadata
Processing delta metadata
Package(s) data still to download: 169 k
roxterm-1.15.2-1.fc11.i586.rpm                           | 169 kB     00:00     
rpm_check_debug を実行しています
トランザクションのテストを実行しています
トランザクションのテストを終了しました
トランザクションのテストを成功しました
トランザクションを実行しています
  インストールし : roxterm-1.15.2-1.fc11.i586                               1/1 

インストールしました:
  roxterm.i586 0:1.15.2-1.fc11                                                  

完了しました!

[Fedora] roxterm

で、肝心のroxtermはヘルプのF1が殺せないのが惜しいな。
もうちょっと調べる。


2009-10-09 (Fri)

[Ubuntu] コアラのUbuntu beta

SCIMからiBusになるわけだよね。F12もそうかな。
gnome-terminalはなぜかcjk_width問題が再発。
VTE_CJK_WIDTH=1した。
gnome-terminalは右クリックでコンテキストメニュー出して、
SCIMが選べるようなのでとりあえずはこれでしのぐ。
次バージョンはそうはいかないんだろうなあ。
skkないと厳しいな。


2009-10-10 (Sat)

[Fedora] roxterm

まだショートカットはプロパティでいじれないようで、
直接ファイルを編集するとF1でヘルプ機能は殺せる。

% mkdir ~/.config/roxterm.sourceforge.net/Shortcuts
% sed 's/^Help/#&/' /usr/share/roxterm/Config/Shortcuts/Default >
  ~/.config/roxterm.sourceforge.net/Shortcuts/eban

あとはPreferences - Configuration Manager - Keyboard accelartorsで
ebanを選べばok。


<Prev(,) | Next(.)> | Recent(/)>> | RDF


WWW を検索 jarp.does.notwork.org を検索

わたなべひろふみ
Key fingerprint = C456 1350 085F A320 C6C8 8A36 0F15 9B2E EB12 3885
Valid HTML 4.01!