Tuesday, May 10, 2011

[MacOSX] Search with DEFAULT Browser [Automator]

非常にシンプルなServiceを作りました。ホームフォルダの「ライブラリ」→「Services」に入れれば使えるようになります。システム環境設定からショートカットキーを割り当てると結構便利に使えると思います。

Search with DEFAULT Browser.workflow.zip

※(5/10 13:30追記)wordの末尾に余計な"+"が入る問題を修正しました

作った経緯、解説、使い方などは折り畳み↓

Wednesday, May 4, 2011

雑談とか3

実は昨日、MacBookのバッテリーと電源アダプターがお釈迦になりました…。バッテリーが14,800円で電源アダプターが7,800円…。痛い出費…orz それでも部品換えるだけで済んだのでまだマシだと前向きに考えた方がいいかもしれません。修理に出すと、もっと恐ろしい値段に…。

以下、ブラウザ関係の雑談をちょっと。

Monday, May 2, 2011

雑談とか2

まだ#x264devで議論の途中(?)みたいですが、おそらく次回の更新でconfigureとmakeに変更が来ます。簡単に要約してしまうと、

  1. configureのオプションとして以下のものが追加される
    --disable-cli、--system-libx264、--enable-static

  2. makeのオプションとして以下のものが追加される
    install-cli、install-lib-dev、install-lib-static、install-lib-shared

  3. ビルド時にstripしなくなるかもしれない(意見対立中?僕はしない方に一票)


3の変更と関連してmake install-stripが実装されるかされないかはわかりません。そこらへんの議論はまだされていない様子。この記事の内容から更に変更になる場合もあると思うので、ビルダーの方々は更新が来たらdiffに目を通すことをお勧めします。シェルスクリプトとMakefileに注意すればいいだけなので、ちょっと調べながら眺めてみれば変更内容は理解できると思います。

また別件ですが、GPAC Repositoryは管理上の点からどうしてもrebaseをせざるを得ません。svnの更新を取り込み、git svn rebaseをしますが、このときにconflictが発生した場合はそれを修正してgit rebase --continue、を繰り返して、すべてのパッチのconflictが解消したらビルドの確認をしてpush -fしています。このときに歴史が書き換えられ、他の環境からpullする時にconflictが発生します。そういうときはパッチ適用前のリビジョン(つまりgit logで見たときにAuthorがgolgol氏や僕でないコミット)をgit logから探し、そこにgit reset --hardしてから再度pullするとうまくいきます。GitHubに公開されているD_S氏のx264-devel repositoryを利用している人は既に手慣れた作業かもしれません。まあよくわからないときはgit cloneし直すのが一番簡単です…(笑)

更にもう一つだけ注意点を。このようにして更新をしていくと、conflictする度に過去のコードを書き変えることになります。つまり、ある時点で作ったバイナリのソースコードを、過去に遡って取得できなくなります。ライセンスを考え、バイナリ配布をする場合には、バイナリを作った時点で適用されているパッチをバックアップしておくか、またはソースコードを丸々残しておくことをおすすめします。

パッチはgit format-patchで取得できます。その時点でのソースコードを丸々取得する場合はgit archiveを利用すればいいと思います。僕はgit archiveが手軽だと思います(圧縮ファイルを伸張すればパッチを当てなくてもすぐにビルドにできますし)。使い方はこんな感じ。

[gist id=950385]

zipならもうちょっとシンプルにこんな感じ。

[gist id=950360]

コマンドが面倒な人はGitHubのページからDownloadをクリックしてGit Snapshotを取得してください。