2013年9月20日金曜日

rhythmboxで複数のライブラリ

rhythmboxで複数のライブラリを登録するときのやりかた

http://askubuntu.com/questions/189265/how-do-i-edit-the-list-of-music-library-locations-in-rhythmbox


2013年4月9日火曜日

epgrec録画済みのグループ化

epgrecに録画済みの番組がたまってきた。
たまっている奴を1話から見るのが面倒になってきた。
面倒になると見なくなって溜まる一方。
そろそろ何とかしたかったので、ちょっと改造した。


タイトル頭の【】とかを削って、「」とかのサブタイトルとか#1とかをスペースで区切る。
で、splitでわけて一つ目がグループということにした。

データベースはいじりたくなかった(よくわかんないし)ので、phpだけで実施。
番組数2個以上 のやつを固めて選べるようにした。
番組数1個の奴はまとめて「その他」に入れる。
図の右上みたいな感じで選べるように。
全視聴のリンクも作ってみた(次の行左付近)。表示されてる番組をまとめてasxにする。

つくってみて分かったけど、見たら消していく奴は常に番組1個だから、
全部その他に入ってしまう。
1個でも直近のいくつかは分けた方がいいかなあ。
でも直近のはちょっとスクロールするだけだしなあ。

それより、一つ一つ消すのがめんどいから、全削除も作りたい。

2013年4月6日土曜日

バンダイチャンネルのフルスクリーン

環境ubuntu 12.10
バンダイチャンネルをフルスクリーンで見ようとすると、
何か右30%くらいが切れて表示される。
ずっと前からそうだったけど、linuxのflashはどうもadobeがやる気ないみたいで直る気配なし。
なんとかならんかなあ。と思ってたら何とかしている人がいるようだ。(ここ


どうもデュアルディスプレイにしてたら問題があるらしい。
LD_PRELOADで何とかできるそうだ。
これで長年の不満がちょっと解消した。

追記:なんかいつの間にか直されてたようだ。GJ

2013年2月16日土曜日

walkmanのid3tag

ちょっと前にwalkman nw-z1050買った。
もってたmp3入れるとタグちゃんと認識しない。
id3タグ全部v2.3のUTF-16にしたのに
アーティスト名とか「不明」になる。

SuperTagEditorでみたところ、文字データはおそらくUTF-16なのに、
文字コードの情報がlatin1になってるっぽい?

SuperTagEditorはwineで使うとすぐ死ぬので、他の方法を色々探した結果、

taglibとそのフロントエンド使うことにした。
ほんとはrubyがよかったんだけど、setDefaultTextEncodingが使えなそうなので、
ubuntuのパッケージになってるtagpyってのを使うことにした。

で、色々苦労して以下をfindで回すことで全部変換した。
ちゃんとv2.3のUTF-16にしてるのに何かwalkmanがちゃんと認識しない時用スクリプト。

import sys
import tagpy
import tagpy.mpeg
import tagpy.id3v2

argvs = sys.argv
del argvs[0]

tagpy.id3v2.FrameFactory.instance().setDefaultTextEncoding(tagpy.StringType.UTF16)

for i in range(len(argvs)):
    f = tagpy.mpeg.File(argvs[i])
    t = f.tag()
    t1 = f.ID3v1Tag()
    t2 = f.ID3v2Tag()
    t2.artist = t2.artist
    t2.title = t2.title
    t2.album = t2.album
    print "%s - %s - %s" % (t2.artist, t2.album, t2.title)
    f.save()

っていうかパッケージに入ってるのに情報少なすぎでえらい苦労した。
サンプルのテストすら動かないし。
pythonとか使ったことないし。

2013年2月10日日曜日

BUFFALO WZR-450HP

使ってた無線LAN親機がどうも調子がおかしくなってきた。
(たまに再起動しないとつながらなくなる。)

電気屋をうろうろしてたところ、「おすすめ!」「はやい!」みたいな感じだったので、
何も調べず買ってみた。

とりあえず家の構成に合わせないといけない。
モデムがルータ機能を持ってるので2段ルータになる。

とりあえず以下の機器がある。
(1) モデム兼ルータ  Aterm DL180V-C
(2) ルータ(買った奴) AirStation WZR-450HP
(3) 常時稼働サーバPC
(4) 携帯
(5) 客とかDSとか



(3)はwebサーバとかsshサーバとか動いてるので、外部(Internet)からアクセスする。
なので、DynDNSを使ってて、 外部から割り当てた名前でアクセスできる。
で、内部から同じ名前でアクセスできるように(3)内にDNSサーバを立てている。(dnsmasq)
今まではルータのDNSとか全部切ってて(3)のDNSを使ってた。(DHCPも動かしてた)

で、今度買ったルータAirStation WZR-450HPには隔離機能っていうのがあるみたい。
客用に使いたい。
でも今まで通りにすると、隔離された(5)ゲストから(3)のDNS(&DHCP)へアクセスできないので使えない。

ってことで図のような感じにしてみた。
(2) AirStationのDNS,DHCPを有効にして、(3) サーバのDNSを参照する。(サーバのDHCPは止める)
これで(5) ゲストからも使える。

(2)のセカンダリDNSに(1)を指定しておけば仮に(3)のサーバが落ちても 使える様な気がする。
試してないけど。

2013年1月13日日曜日

mechanize / watir

銀行とかから月イチで明細をダウンロードしてgnucashに突っ込む
と言う作業をここ3年くらいやっている。
正直面倒くさいので、mechanizeで自動化しようとした。

 とりあえず以下の明細をとりたかった
・イオンカード
・中国銀行VISAカード
・中国銀行
・SMBC
・ゆうちょ

このうち、イオンカードと中銀VISAと中銀はjavascriptを解析して
mechanizeで自動取得できた。
他の(特にゆうちょ)は javascriptバリバリでちょっと無理。

と思ったら、中銀に改造が入ったらしく、javascriptの割合が増えて動かなくなった。

もうmechanize使ってjavascript解析してってのはやってらんないってことで
他のを探してwatirってのを見つけた。
ちょっと前までは要素が無いものに対してexists?を実行すると落ちてたけど、
最近updateしたら直っているようだ。

自動化するためのメモをいくつか書いておく。

・要素の調べ方
右クリックで「要素を調査」を選んだら色々調べられる。


・ofxファイルダウンロード 先の指定
普通に動かすとダウンロードダイアログが出てしまうので起動するブラウザの設定を変える。
profile = Selenium::WebDriver::Firefox::Profile.new
profile["browser.download.useDownloadDir"] = true
profile["browser.download.dir"] = '~/work/mechanize/smbc'
profile["browser.download.folderList"] = 2
profile["browser.helperApps.neverAsk.saveToDisk"] = "application/x-ofx"
driver = Selenium::WebDriver.for :firefox, :profile => profile
b = Watir::Browser.new(driver)

・フレーム
中銀はフレームを使って無いように見えて使ってたりするのでハマった
f = b.frame(:index=>0)
f.link(:href=>/hogehoge/).exists?

・ゆうちょは明細ダウンロードが無い
table要素を配列にできる
hairetu = b.table(:class=>"hogehoge").to_a

最近ゆうちょ使ってなくて明細にログが無いので未確認だけど、そのうちやる。

ubuntu 12.10 byobuのエスケープキー

いままでbyobuのバックエンドをscreenにして使ってた(エスケープキーが変えられなかったから)
設定メモ: screenでマウススクロール

12.10でもUIでエスケープキー変えられないのは相変わらず。
なんでなんだろう。

とりあえずtmuxの設定を直書きする事にした。(Ctrl-gに設定)

 ~/.byobu/keybindings.tmuxに

 set-option -g prefix C-g

を追加

byobuだと分割とかの設定がtmuxとかscreenとかと違うっぽい

よく使う機能

shift-F2 -> 横分割(Ctrl-g "は違うっぽい)

Ctrl-g % -> 縦分割
Ctrl-g Tab -> 分割間の移動
Ctrl-g 1 -> 分割やめる
Ctrl-g n or p -> ウインドウ移動
Ctrl-g d ->デタッチ
Ctrl-g [ ->コピー(スペースで開始→Enterで確定(何か分かりにくい))
Ctrl-g ] -> ペースト
Ctrl-g A ->ウインドウへの命名

まあこんくらいメモっとけば大丈夫だろう。