Skip to main content

ログ取得ツール

Category: コンピュータ

電話壊れた~

愛用のMotorola DEFY+が壊れてしまった。reboot loopですね。一瞬上がるが、何も出来ずにrebootが始まる。recovery mode(volume downを押しながら電源オン→右下タップ)をやってもうまくいかない。ちょっとこれはどうしようもないね。

壊れるときは割れるんだろうと思ってたんだけど、この壊れ方はよくわからないが、Flashがイカれた感じなのかな。割れると思ったのは、よく子供に投げられたり上に乗られたり舐められたりしていたから。一応防水だったので舐められても壊れないはず…と信じていたが、投げたら普通に壊れるよね。

性能や機能で不満が出始めていたので、Nexus4か何かが買えるようになったら買い換えようとは思っていたのだが、ちょっと早くその時期が来てしまったことになる。

いろいろ選んでいたが、ここはSonyのXperia Solaにしようと思い、発注した。いつ来るかは分からず、それまでは連絡がつかない人になります。まー1週間もあれば届くんじゃないかな。ソラはウィザード(仮面ライダー)の敵幹部のお茶目な奴(グレムリン)の名前でもありますが、こちらのSolaは小さめで悪くなさそう。解像度と画面サイズはDEFY+と同じ。ICSにアップグレードできて1コア→2コアになって高さがちょっと高くなり、厚みが減った感じ。あと手袋のままで操作できるとかWalkmanがどうとか…。

ScratchpadとGoogle Keep

Chrome上でメモるときに、Scratchpadという拡張を使っていた。動作は軽いし、データはGoogle Drive(Docs)上のドキュメントとして保存されるので、仮に将来これを捨てた時でもデータの読み書きができるので安心。当然複数クライアントから無造作に書いてても同期される。Google Driveのドキュメントの表現力がある程度使えて、実際は箇条書きを混ぜて書くくらいしかやらないが、問題ない使用感だった。

ただ、複数のクライアントから使っていると稀にメモのリストから漏れていってしまうことがあるという問題もあった。つまり、ScratchpadのUIからメモが見えなくなってしまう。ただ、Google Drive上は見えていて、Google Drive側から編集はできる、という不思議な状態に、たまになった。Scratchpadが使うローカルストレージを削除して起動し直すと見えるようになるのだが、気持ちの良くないバグだなぁ、という不満がある。あと同期のタイミングがちょっと遅かったりもする。同期しないローカルのメモの機能がいらないんじゃないか、という気も。

mod_ext_filterでroot relative link化

サイトを別のサーバに移行する場合(まだのんびりやってます)、テスト中にリンクが絶対URLだと元のサイトに飛んでいってしまってテストがしづらい。ローカルのhostsファイルをいじるのはなんかカッコ悪いので避けたい。

そこで、mod_ext_filterでサイトのHTMLの要素を相対参照root relative linkにする。

mod_ext_filterは最近のApacheにはデフォルトで入っていることと思う。

例えば、このサイトのように/wordpress以下に対象のHTMLがある場合。

  • cat /etc/httpd/conf.d/relative.conf
    ExtFilterDefine relative mode=output intype=text/html outtype=text/html cmd="/bin/sed -f /etc/httpd/conf.d/relative.sed"
    <Location /wordpress>
      SetOutputFilter relative
  • cat /etc/httpd/conf.d/relative.sed
    s,“https://wtnb.mydns.jp,",g;
    s,‘https://wtnb.mydns.jp,’,g;

このサイトで言うと、postratingsのプラグインはJavaScript部分に絶対URLが書いてあるので、上記のフィルタだけでは絶対リンクを根絶できない。あとヘッダに書かれるURL(X-Pingback:)は対象にならない。

また、mod_ext_filterはmod_deflateとあまり仲がよろしくないようだ。両方有効だと化ける。wgetやcurlで取ってくるHTMLファイルは壊れていないのに、ブラウザで見ると盛大に化けて悩んでしまった。まあ移行中のことと割り切ってmod_deflateを諦めた。例えば、

kobo gloの経過

あけましておめでとうございます。

先日買ったkobo gloですが、Wifi常時オン、フロントライト常時オンの状態でいろいろ読んでますが、10日くらいで充電が必要になりました。このくらい持てば問題ないと思う。スリープ状態からの復帰も早いし、子育ての合間の読書には快適ですね。リセットボタンも何度か使ったが、まあいずれ改善されると思えば許容範囲か。

Android用のアプリも電話に入れました。進捗や購入した本が同期するのはいいですが、読了状態がクリアされてしまう? という現象が出ている。しかもそれも同期してしまうので、端末側でも読み終わった本が未読状態になってしまった。再現性は分からないところだが。

比較のためというのもあって、KindleのAndroid用アプリも入れてそっちで本を買って読んでみたりもしていました。Kindle for Androidは起動が遅いし、もう使うことはないような気がします。Kindle for PCは使えなかった。

ついに見つけたぞ、iTunes真実を…

先日のアップデートで繰り返し再生という基本機能の使い方がわからなくなっていたiTunes。以前はウィンドウの左下の領域にある分かりにくいアイコンをクリックすると状態が変わって1曲繰り返し/全曲繰り返し/繰り返しオフを選択できましたが、そのボタンが消えて、どこを探しても該当の設定が見当たらなくなっていました。これは困る。しかも本気で探しても見つからないから実際2倍困る。

このたび、めでたく設定方法を発見しました。

Altキーでメニューを開いて、[コントロール(C)] - [リピートする(R)] - [すべて(A)]です。

これは分かりにくいです。以前も分かりやすかったとは思えませんが、輪をかけてきました。

誰も買わないからkobo glo買ってみた

kobo glo買ってみました。これで私もグローバルなオポチュニティによる成果を享受できることに。私の周りで買ってる人見たことないけど、みなさんEPUB嫌いなんですかね。私はpandocで作れるのでEPUB派になろうと思って、Amazon Kindleはちょっと買えないなぁと思ってました。電車通勤しないのでいつ使うんだ、という話もありますが、まあ自宅で本を読むときに使えるかもしれない。

ブラウザ(設定→その他→ブラウザで起動)のUserAgentは「Mozilla/5.0 (Linux; U; Android 2.0; en-us;) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1 (Kobo Touch)」でした。これって中身はAndroidだったんですか? ソフトウェアのバージョンは「2.2.1 (r44772, 12/11/09)」です。

pandocで作っている自作のepubファイルはいまいちな表示。まず最初は文字化けしていて、フォントを設定しないと読めない。まあフォントは綺麗ですが、セリフのカッコ(「」)や句読点や中黒(・)の周囲に不自然な空白が出てしまい、気になって気になって…縦書きにしないと日本語の本はダメなのかと思って縦書きにしてみましたが、改善せず。表紙の画像も異常な表示に。ページの余白はまともなepubファイルと全くなくなって端っこの方が読めなくなるepubファイルがある。まあこれらは今後の研究課題ということで。拡張子を「.kepub.epub」に変えたら綺麗になるとかならないとか。元はといえば電話でニンジャスレイヤーのepubファイルをFBReaderで読んでばかりいるので、E-Inkでモリサワフォントで読めれば快適かなぁ、というところから来ている。自作epubファイルがまともに読めないなら、買った意味がほとんどなくなる。

bluetoothの逆襲

ここのところ当家はいろいろな事件に巻き込まれたり引き起こしたりして、なかなかエキサイティングな毎日を送っています。 先日の事件「iPodの洗濯」とともに導入されたbluetoothの車用のFMトランスミッターの調子がすこぶる良い。普通に電話から音楽を鳴らして、操作も難しくないし音も意外と良い。bluetooth→FMと2重に電波を使うので不安だったのだが、その不安はあっという間に払拭された。 以前にもマウスなどbluetooth機器は持っていた。持っていたのだが、子供に壊されたりちょっと不安定な時期があったりして、結局buetooth自体を敬遠していた。Vistaが悪かったのかもしれない。それが今回の「iPod洗濯事件」の余波により一気にbluetoothラブになってしまった。 そこで買おうと思ったのがキーボード。かねてPCのキーボードはUSB接続のHHK廉価版だったのだが、英語配列が家族には不評だったり。あと机の上がおもちゃ置き場のようになってしまった関係で、信じがたいことにHHKですらちょっと大きい。 探してみると、iPhoneとかAndroidがbluetoothのキーボードをつなげられるようになっているらしく、小型のキーボード製品がたくさん出てました。いい世の中ですね。そこそこの用途で使えそうなiBUFFALOの小型キーボードを発注し、さきほど届きました・・。これと洗濯ばさみを持ち歩けば、出先でちょっとしたテキスト文書を書くくらいなら不自由しなさそうな気がする。 とりあえずAndroid側につないでみてこの記事を書いてみてますが、ちょっとPCで常用するにはチャチすぎるかもしれません。ただ買う前に思っていたほどは悪くないです。このくらいの長文ならストレスなく普通に書ける感じ。さすがにプログラムを書けそうな気まではしませんが。 ついでにPC側につないで101→106の設定を変更しようとしたら、Windows Updateとタイミングがかちあってしまったためか、ちょっとしたトラブルになってしまいました。アップデート失敗のロールバックして起動が中途半端に失敗の…やっているうちに次々といろんなものが失敗していく…Windows7壊れたかも?

togetter→EPUB変換

結局、togetterの番号から記事を取ってきてテキストにするスクリプトを書いて、reStructuredTextあたりとして処理してpandocでEPUBに変換することで、ニンジャスレイヤーをEPUBでオフラインで読むことができるようになりました。最近はこれでAndroidのFBReaderで読んでますが、動作も安定しているし、途中で中断しても続きから開けるのでかなり快適になりました。

とりあえずスクリプトを載せておきます。Cookieとかcsrf_tokenがないと続きを読み込めないみたいだが、かなり適当にやっても普通にテキストに変換することができた。ニンジャスレイヤーのテキストに関しては一部エスケープしないといけなかったり、&が&になってしまったりするようだが、おおむね読むのに問題ない状況になっている。

#! /usr/bin/python
# encoding: UTF-8

import urllib, urllib2
import cookielib
from BeautifulSoup import BeautifulSoup as BS

class tog:
  def __init__(self, tid):
    self.title=str(tid)
    self.tid=tid
    self.cookie=cookielib.CookieJar()
    self.texts=[]
    self.opener=urllib2.build_opener(urllib2.HTTPCookieProcessor(self.cookie))
  def call_api(self, name, tid, data):
    url="http://togetter.com/api/%s/%d" %(name, tid)
    data["csrf_token"]=self.csrf_token
    params=urllib.urlencode(data)
    fp=self.opener.open(url, params)
    html=fp.read()
    return html
  def get(self):
    fp=self.opener.open("http://togetter.com/li/%d" %(self.tid))
    html=fp.read()
    soup=BS(html)
    self.csrf_token=soup.find('meta', {"name":"csrf_token"})["content"]
    self.title=soup.find("meta", {"name":"twitter:title"})["content"]
    return html
  def parse2txt(self, html):
    soup=BS(html)
    for i in soup.findAll("div", {"class":"tweet"}):
      self.texts.append(i.text)
    rest=filter(lambda f: f.text.startswith(u"残りを読む"), soup.findAll("a", {"class": "btn comment_btn"}))
    if len(rest)==1:
      rstr=rest[0]["onclick"]
      page=int(rstr.split(",",1)[1].strip(");"))
      return page
    return None
  def readall(self):
    html=self.get()
    rest=self.parse2txt(html)
    while rest!=None:
      html=self.call_api("moreTweets", self.tid, {"page":rest})
      rest=self.parse2txt(html)

if __name__=="__main__":
  import sys
  tg=tog(int(sys.argv[1]))
  tg.readall()
  titlelen=len(tg.title.encode("EUC-JP"))
  print tg.title.encode("UTF-8")
  print "-"*titlelen
  print ""
  for t in tg.texts:
    print t.encode("UTF-8")
    print ""

読み進めたのは今のところ第2部の終わりくらいまで。ヨロシサン製薬が実際大活躍でしたな。ビョーキ・トシヨリ・ヨロシサン。ヨロシサン関係のニンジャ…特にケジメニンジャ=サンやサブジュゲイター=サン、セントール=サンあたりはかなり良かった。

Picasaと電話の動画

Picasa 3.9.0で、今の電話の標準のカメラで撮った動画が認識されません。デジカメ(GR Digital2)で撮った動画(MotionJPEG)は認識されて便利に使っていたのですが。そう言えば、以前の電話(ideos君)の動画も認識されなかったなぁ。

  • 拡張子は.3gp
  • vlcでは再生できる
  • Codecを色々入れたMedia Playerでも再生できる

vlcが示すコーデック情報

  • ストリーム0
  • タイプ:オーディオ
  • コーデック:MPEG AAC Audio (mp4a)
  • 言語:English
  • チャンネル:ステレオ
  • サンプリングレート:44100Hz
  • ストリーム1
  • タイプ:ビデオ
  • コーデック:H264 - MPEG-4 AVC (part 10) (avc1)
  • 言語:English
  • 解像度:640x480
  • フレームレート:23.797071
  • デコードフォーマット:Planer 4:2:0 YUV

ffmpegが示す情報

Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '114904.3gp':
  Metadata:
    major_brand     : 3gp4
    minor_version   : 768
    compatible_brands: 3gp4mp413gp6
    copyright       :
    copyright-eng   :
  Duration: 00:00:19.17, start: 0.000000, bitrate: 4143 kb/s
    Stream #0:0(eng): Audio: aac (mp4a / 0x6134706D), 44100 Hz, stereo, s16, 96 kb/s
    Metadata:
      handler_name    : SoundHandler
    Stream #0:1(eng): Video: h264 (Baseline) (avc1 / 0x31637661), yuv420p, 640x480, 4046 kb/s, 23.80 fps, 24 tbr, 1k tbn, 48 tbc
    Metadata:
      handler_name    : VideoHandler

これは珍しい形式なのだろうか? AACもH.264も3gpも珍しくはないが、組み合わせとなると分からない。音声がステレオだけど、そんな立派なマイク持ってたか??

テレビ関連

当家は地デジになった世の中に遅れをとり続け、アナログテレビだったんです(CATVのおかげでテレビは見れた)が、ついに思い立ってアナログテレビを捨てました。綱島時代に新宿のヨドバシで買った時は当時の液晶の中では最も大きかったもので、ずいぶん高かったんですけどね。当日配送にしてもらってそそくさと家に帰ったことを思い出します。

と言っても新しいTVを買ったわけではなく。

先日のBenQのディスプレイをBuffaloのデジタルなHDDレコーダーにHDMIケーブルでつなげると、あっさり1080pのデジタル映像が得られる(PCからはDVIでつなぐ)。本来これはレコーダーなのでデータ放送(?)が使えないという弱みは別にどうでもいい。問題は、これだとディスプレイについているスピーカーが1Wと非力なので、リビングのTVとしては使いものにならないレベル(一応使えはしますが)。この状態をベースにして、いろいろいじりました。