zshのヒストリサーチ
zshでヒストリサーチをしようとして
history-search-end: function definition file not found
というエラーがでることがある。これはFPATHにzshのfunctionへのパスが通っていないから。
findとか使ってなんとかしてhistory-search-endの場所を探し、そこにFPATHを通す。多分/usr/share/zsh/とかの下にある。某所では/usr/share/zsh/4.3.10/functionsにあったので、
export FPATH=/usr/share/zsh/4.3.10/functions:$FPATH
でOK。
ターミナルからmiでファイルを開く
以前同じことではまったのに忘れてたので覚え書き。
Mac OS Xのターミナルから、miでファイルを開くには、
alias mi="open $1 -a /Applications/mi.app/Contents/MacOS/mi"
としてから
$ mi filename.txt
とする。
Mac OSでファイルのフルパスをコマンドラインからコピー
クリップボードにファイルのフルパスをコピーしたいことがよくある。svnなんかでファイルをディレクトリ深く掘って管理している時に、そのファイルをウェブにアップロードする場合とか。そういう時のために、コマンドラインからクリップボードにフルパスをコピーするコマンドを作った。
#!/usr/bin/ruby require 'pathname' if ARGV.size == 0 file = '.' else file = ARGV[0] end begin `echo #{Pathname.new(file).realpath} | pbcopy` puts "#{Pathname.new(file).realpath} is copied to clipboard." rescue puts "#{file} is not found." end
そして、以下のaliasを作る。
alias ccp='ccp.rb $1'
これにより、単にccpでカレントディレクトリが、ccp filenameでファイル名のフルパスがコピーできる。地味に便利。
navigateToURL
ボタンを押したら特定のページに飛ぶようなスクリプトを書こうとして、
private function onURLButtonClick(e:MouseEvent):void{ navigateToURL(new URLRequest("http://hogehoge/index.html"),"_blank"); }
みたいなコードを書いたが、実際におしても何もならない。これはどうもフラッシュのセキュリティの問題のようだ。
対応するセキュリティは、allowScriptAccessというパラメータで、デフォルト値は "sameDomain"、すなわちフラッシュが置かれているドメインと同じところとしか通信しない。
デバッグ時にこれでは面倒なので、とりあえずは"always"にしておき、実際に運用するサイトにアップロードするときには"sameDomain"にするのがよさそう。
ちなみにallowScriptAccessはswfを表示するHTMLにおいて、以下のように指定する。
<embed src="./hoge.swf" type="application/x-shockwave-flash" width="320" height="320" bgcolor="#000000" allowScriptAccess="always" pluginspage="http://www.adobe.com/go/getflashplayer_jp"/>
IEだとOBJECTタグ使ったほうが良いかも。詳しくは知らん。