EmEditor で Perl のスクリプトを整形する
整形されていない Perl のスクリプトを見たりするとイライラする。例えば Eclipse なら Ctrl+Shift+F でパッと整形してくれて便利なので、EmEditor でも簡単なマクロを作ってそれを実現してみる。
試した環境
- EmEditor Pro 32bit ver10.0.8 - フリーはマクロが設定できないからダメ
- ActivePerl (v5.10.1) - PerlScript でマクロを記述してるから ActivePerl が必要
- Perl::Tidy モジュール - なければ PPM でインストールする
- Windows Vista HomePre 32bit - XP,7 でも大差ないと思う
やり方
- 以下を適当な名前で適当なところに保存する。仮に C:\Users\USERNAME\Documents\Macros\Format.pl とする。
#language = "PerlScript"
use strict;
use Perl::Tidy;
our $Window;if ( $Window->document->ConfigName eq 'Perl' ) {
my $selection = $Window->document->selection;
$selection->SelectAll;
my $source = $selection->Text;
my @dest;
perltidy( source => \$source, destination => \@dest );
$selection->DestructiveInsert( join( '', @dest ) );
} - EmEditor のメニューから マクロ->選択 で今作成したファイルを選択する。
- ツールバーにマクロツールバーがなかったら、ツールバーを右クリックしてマクロツールバーをチェックして表示する。
- これで Perl のスクリプトを編集しているとき、マクロツールバーの Format ボタンを押せば整形される。
- キーボードショートカットの登録は、Perlの設定->キーボード からできる。
追記:同様のことを既に書いている方がいた。
http://shin-yuan.blogspot.com/2011/05/emeditorperltidy.html
YouTube やニコニコ動画の動画から音声だけ抽出
YouTube やニコニコ動画の H.264+AAC な MP4 または FLV から音声の AAC だけ無劣化で抽出して iTunes で再生しようという話.Windows 上で FFmpeg + MP4Box を用いる.
FFmpeg は例えば "お気に入りの動画を携帯で見よう" から,MP4Box は ここ からダウンロードしてきて,PATH の通ったフォルダに入れておく.
- YouTube やニコニコ動画の動画を何かしらの方法でダウンロードする(例えばブラウザのキャッシュから直接とってくるとか).それを仮に hoge.mp4 とする.
- FFmpeg で AAC のみ抽出し,iTunes で再生できるようにそれを MP4Box で MP4 コンテナに入れる.
- 作った hoge.m4a を iTunes にドラッグアンドドロップなどで登録すればよろし.hoge.aac は消していい.
2つのコマンドを打つのが面倒くさいときは
ffmpeg -i %1 -vn -acodec copy "%temp%\%~n1.aac"
MP4Box -add "%temp%\%~n1.aac" "%~n1.m4a"
del "%temp%\%~n1.aac"
Google検索で AutoPagerize や AutoPatchWork などを強引に動作させる
追記: 次の記事 でこの記事に書いてあることをやらなくても 「Google検索で AutoPager は正常に動作した」を書いた.
Google Chrome で AutoPatchWork を使っている.これはいろいろなブログや検索ページなどで,次のページを自動的に読み込んでくれる拡張機能である.同種の拡張機能は他のブラウザのものも含めていくつかある.
さて,ここ最近,といっても数ヶ月前からであるが Google のトップページから検索するとこの機能が動作しなくなった.最初は単にGoogleの検索結果のurlの書き方が変わって動作しなくなったものと思っていたが,http://xkansan.tumblr.com/day/2011/04/03 によると JavaScript を使って検索結果を表示するようになったので,AutoPatchWork が動作しなくなったらしい.
これを解決するために,検索結果のページの url を Ajax ではない旧来のページの url へ強引に書き換える方法が紹介されていたのでやってみた.userscripts.org に既にスクリプトをアップされている方がいたので以下のようにしてやった.
試した環境は Win Vista 上の Chrome11 + AutoPatchWork,Firefox4 + Greasemonkey + AutoPagerize.
- Google Search AJAX Killer ( http://userscripts.org/scripts/show/101838 ) に Google Chrome もしくは Firefox からアクセスし緑の Install ボタンをクリック.
- Chrome の場合は画面下部に警告が出てくるので,「続行」をクリック.
- 「Google Search AJAX Killer をインストールしますか?」と聞かれるので「インストール」をクリック.
これでインストールされる.ちゃんとインストールされたかどうかはアドレスバーに
と入力すれば拡張機能の設定画面が出てくるので確認できる.アンインストールや一時的な無効化もこのページから行える.
Google Search AJAX Killer をインストールしてGoogle のトップページから検索してみると確かに AutoPatchWork,AutoPagerize は動作した.
すこしおかしな挙動があって,それはインスタント検索の途中で確定されたり,トップページから検索してもう一度そのページから検索を行おうとするとオートコンプリートが効かなくなるといったものだ.これはGoogle検索したときにオートコンプリートを無効にするパラメータ &complete=0 を付加していることに起因すると思われる.現時点ではこのパラメータを付けなくても,AutoPatchWork などは動作するようだ.よって取っ払ってみる.
それには Google Search AJAX Killer のスクリプトを開いて,例えばその17行目をコメントアウトして
var params = query;
スクリプトのある場所は
- Firefox は拡張機能の設定画面で Google Search AJAX Killer を右クリックし,「内包するフォルダを表示」で見つかる.
- Chrome は拡張機能の設定画面で右上のディベロッパーモードを開き Google Search AJAX Killer の ID を調べ,その ID で C:\Users\USERNAME\AppData\Local\Google\Chrome\User Data\Default\Extensions あたりを探せば見つかる.
こうやると今のところ満足する挙動が得られている.ただこの先どうなるかはわからない.
アンインストールや無効化も簡単なので,AutoPacthWork,AutoPagerizeが動かなくてストレスを感じているならやってみていいと思う.
ちなみに,Google Search AJAX Killer を入れたことによって Chrome では word highlight もちゃんと動作するようになった.
Google検索で AutoPager は正常に動作した
前の記事で AutoPagerize や AutoPatchWork を Google トップページからの検索で動作させるために旧来の url に強引に書き換えることを書いたが,同じ機能をもつ AutoPager はそのままでGoogle トップページからの検索に対応していた.ver0.6.2.6の時点で
AutoPager will now re-support ajax mode google now.
http://www.teesoft.info/content/view/88/1/lang,en/
と書いてある.
対応を確認したのは2011年5月4日0:00時点で,Win Vista上のGoogle Chrome11.0.696.60 と Firefox4.0.1 に AutoPager 0.6.2.8 をインストールした場合.
Chrome はここから,Firefox は ここの AutoPager 0.6.2.8 をクリックすればインストールできる.
Ubuntu 11.04 の問題なところ
Ubuntu 11.04 日本語 Remix CDをインストールしたけれど原因がいまいち分からない問題が多い。10.10の方が安定していた。
GPUがGA-E7AUM-DS2HオンボードのGeForce9400じゃ非力か。
- 使って数時間で3回フリーズした。
- アイドル時と思われるのにCPU使用率が10-20%を彷徨うことがある。
- CompizConfig設定マネージャをいじるとフリーズしたり、メニューバーが真っ黒になることがあって再起動しないと治らない。
- 左のランチャーにある検索で日本語入力ができない。
- 起動が遅い。明らかに10.10の方が速かった。一方、終了は10.10と変わらず速い。
- いろいろいじってたら、なんか安定してきた。
Ubuntu 11.04 で Dropbox のアイコンが出ない
Ubuntu 11.04 の日本語 Remix CDが出たので早速インストールしてみた。特に何もしていないのに始終、CPU使用率が10-20%で推移してるのが謎。
さて、Dropboxをインストールして再起動してみると、なぜだかDropboxのアイコンが通知領域に表示されない。システムモニターを見てみると、Dropboxは実行されているし、実際ファイルの更新などもしっかり動作する。しかし、アイコンだけが表示されない。
あまり気持ちよくないので調べると、
http://forums.dropbox.com/topic.php?id=37361
http://www.dropbox.com/release_notes
に書いてあった。とりあえず、ver1.1.29にアップすれば解決するらしい。インストールしてあるDropboxのバージョンは ~/.dropbox-dist/VERSION を開けば分かる。
フォーラムに書いてある通り、
- Dropboxを終了させる。
- 下記のどちらかをダウンロード(仮に ~/Downloads にx86をダウンロードしたとする)。
http://dl-web.dropbox.com/u/17/dropbox-lnx.x86_64-1.1.29.tar.gz
http://dl-web.dropbox.com/u/17/dropbox-lnx.x86-1.1.29.tar.gz
でver1.1.29に更新する。
追記 2011.05.06:ver1.1.31 がでたので、ver1.1.29はダウンロードできなくなっていた。ver1.1.31は
http://dl-web.dropbox.com/u/17/dropbox-lnx.x86_64-1.1.31.tar.gz
http://dl-web.dropbox.com/u/17/dropbox-lnx.x86-1.1.31.tar.gz
からダウンロードできる。
"Ustreamの動画の下にピョコっと出るうざい広告を消したい場合"
http://ro-soku.sakura.ne.jp/wrk/hosts
に従って,広告のホスト名を存在しないIPアドレスに関連付けたら広告消えてすっきり!