タグ

ブックマーク / d.hatena.ne.jp/lurker (8)

  • Greasemonkeyで永続的に外部スクリプトを利用する - 技術メモ帳

    GM_setValue / GM_getValue + unsafeWindow.eval を使って 永続的に外部スクリプトを利用する方法を考えてみた。 わざわざ DOM で script要素 を毎回注入するよりも 速いんじゃないかと思う。 Greasemonkeyには、GM_setValue / GM_getValue というのがあって、 GM_setValue("キー", "値") 上記のように入力してあげる事によって、たとえ、 Firefoxを終了させたとしても消えないデータを作成する事が出来る。 そして、それを利用して、 初回のみ XmlHttpRequest で外部スクリプトデータを取得して、 GM_setValue でスクリプトデータを永続化しておき、 二回目以降は、それを GM_getValue して eval するようにした。 以下は、永続的に prototype.js を

  • sshで指定したコマンドしか実行できない公開鍵を作る - 技術メモ帳

    自動バックアップ処理をさせたいが シェル権限を与えたくないときとかに使える技。 やり方は簡単で $HOME/.ssh/authorized_keys の "コマンドを制限したい公開鍵" の行の先頭に 実行させたいコマンドを記述すればよい。 そのときのフォーマットはだいたい以下のようになる。 command="実行させたいコマンド",sshのオプションをカンマ区切りで書く command=hoge というのを付け足すことによって その公開鍵でアクセスがあったときに 指定したコマンドを実行させることができる。 たとえば、uptime を実行させたいときは、 以下のようにすればよい。 command="uptime",no-pty,no-port-forwarding,no-X11-forwarding,no-agent-forwarding ssh-rsa AAAABbBFERTWER....

  • 漢のzshに乗り換えた時にアッーってなるコト - 技術メモ帳

    男のbashユーザーが、バラ色の紳士こと漢のzshに乗り換えたときに アッーってなるコト事を先ほどいくつか思いついたので共有する。 !!とかの履歴実行はrコマンドで zshには、r というシェル組み込みコマンドがあって 履歴からの実行が簡単に行える。 たとえば、一番最後に実行したviコマンドを実行したいときなどだ。 bashなんかだと !vi で出来るのだが、 rコマンドだったら % r vi でよい。 直前に実行したコマンドを再び実行したいとき、 bashなんかだと !! というやり方になるが、 rコマンドでは、 % r とするだけでよい。 また、文字列を置き換えてからの履歴実行はどうだろう。 たとえば次のようなbashの例だ。 $ vi .zshrc $ !vi:s/zsh/bash/ これは、最後に実行したviコマンドの引数文字列を ":s/zsh/bash/" によりzshという文

  • 技術メモ帳 - pgrep, pkill を使用してプロセスを殺す

    最近、会社でシェルの操作方法について教えているのだが、 pgrep / pkill / skill / pidof といった 便利なプロセス操作系コマンドを知らない人が実に多い。 プロセスを殺すというのは、よくある作業なので 今回はコレについて書いてみる。 たとえば、これらのコマンドを知らない人が、 指定した名前のプロセスを kill する手順はだいたい 以下のようなものになることだろう。 $ ps aux | grep プロセス名 | grep -v 'grep' # コマンドの出力結果から pid を目で確認 12345 ... .. hoge .. .. $ kill 12345 この作業は非常に面倒で退屈だ。 もし殺さなければならないプロセスがたくさんあったときは どうするのだろうか。 おまけに、grep コマンド自身が候補に含まれてしまう事があるのだが、 grep -v grep

  • my inputrc - 技術メモ帳

    $HOME/.inputrc を適切に設定すると、 Readlineに対応したすべてのアプリの設定を変える事が出来ます。 たとえば、gdb, irb, mysql, pgsql とかもコレにあたります。 # viキーバインド set editing-mode vi # チルダをTabにより展開 set expand-tilde on # 日語関係 set input-meta on set convert-meta off set output-meta on # 大文字小文字無視 set completion-ignore-case on # 画面自動スクロール set horizontal-scroll-mode off # 補完 "\C-p": history-search-backward "\C-n": history-search-forward

    IMAKADO
    IMAKADO 2007/09/29
    inputrc
  • my irbrc - 技術メモ帳

    Ruby の irb という インタラクティブなモード の設定ファイルです。 すべて有効にすると、かなり重たいです。 require 'irb/completion' #require 'pp' #require 'open-uri' #require 'yaml' #require 'find' require 'pathname' require 'enumerator' #= for ActiveSupport #require 'rubygems' #require 'active_support' #= Irb IRB.conf[:SAVE_HISTORY] = 50000 IRB.conf[:AUTO_INDENT] = true IRB.conf[:USE_READLINE] = true #= Refe def refe arg puts `refe #{arg}` end

  • Firebugの便利な組み込み関数 - 技術メモ帳

    id:brazil さんのブックマークで知ったのだが、 Firebugには、便利な組み込み関数が定義されているようだ。 一通りさわってみたのだが、 $x() で 任意のXPath要素が取得できるのとかに感動した。 そして、やっぱりちゃんとドキュメント読むべきだなぁと思った。 XPathから要素を取得する。 $x("/html/body/h1"); -> 要素の配列が返ってくる。 selector名から要素を取得する。(getElementsByTagName) $$("h1") -> 要素の配列 所要時間測定 console#time, console#timeEnd time ~ timeEnd で囲んだ部分の所要時間を 計測することが出来るみたいで、 以下のような関数にまとめると良さそうだ。 function bench( callback ) { var uniq_id = Date

    IMAKADO
    IMAKADO 2007/09/21
    便利関数 commandLine....js で定義されている(たしか)
  • Firebug に自作関数を組み込む方法 - 技術メモ帳

    外部スクリプトをロードする関数を毎回書くのが面倒で、 Firebugの組み込み関数にしたら便利なんじゃないかと思って、 loadJS という名前で Firebug に組み込んでみた。 結論から言うと、 /chrome/content/firebug/commandLineAPI.js を編集したら、任意の関数を定義できた。 以下に、手順を書いてみる。 まず、ソースでもある Firebug拡張をダウンロードする。 http://releases.mozilla.org/pub/mozilla.org/extensions/firebug/firebug-0.4-fx+fl.xpi xpi は、実際にはただの zip ファイルなので、 unzip コマンドで解凍できる。 ./$ unzip firebug-0.4-fx+fl.xpi Archive: firebug-0.4-fx+fl.xpi

    IMAKADO
    IMAKADO 2007/09/21
    commandLineAPI firebug というディレクトリを作ってから ← amachangさんのmonitorEvents直すのをやったときにはまった! 覚えておく。
  • 1