2012年10月31日水曜日

hgで指定のリビジョンと作業セットを比較する

hg diff -r 999 hoge.file

Windowsでgrepしたい(代替コマンド)

Windows版grepでも入れようかと思っていたところ,代替コマンドがあるらしく. そんな高度なことやらないので,grepの完全互換かどうかわからんが.
findstr /SN strings *.txt
使いそうなオプション:
  • /S 現在のディレクトリとすべてのサブディレクトリから一致するファイルを検索します。
  • /N 一致する各行の前に行番号を出力します。

Via Windowsでgrepみたいなコマンド

2012年10月18日木曜日

dvipdfmxでUS letterサイズのpdfを作る

-pオプションでサイズ指定できる.デフォルト値はa4.
dvipdfmx -p letter hoge.dvi
知らんかった.以前にUS letterサイズでどこかに提出したはずなんだが,そのときはどうやったんだろう?

2012年10月15日月曜日

Thinkpad USBキーボード with トラックポイントのキートップを外す

何かこぼしたらしく,右Shift周辺のキーがペタペタするので,キートップを外して掃除をした. キートップの外し方,はめ方をメモしておく.

私は特にこの作業に熟練した者ではないので,あくまで自分の備忘録としてです.

対象キーボード

  • Thinkpad USBキーボード with トラックポイント
  • Model No.: SK-8855
  • 2011年購入

この辺↓の情報を参考に作業開始.

外し方

参考ページに書いてあるように,キーを特定の方向から剥がすように持ち上げる.キー列によって爪の方向が異なるので注意する.
図中の矢印方向から取り外せる.
外した後.
キートップの裏側.
赤丸と青丸が爪がはまる位置.赤の方向から外す.

はめ方

キートップ裏の爪とパンタの位置を合わせて,グリグリやればはまる. 片側ずつはめるようにするとよい.
Shiftキー,Enterキーは,針金バネが所定の爪に収まるように注意する.

2012年9月26日水曜日

pdf仮想プリンタを作成する (Windows 7 Enterprise 64bit)

redmonとGhostscriptでpdf仮想プリンタを作成しようと思ったがうまくいかなかった.結局,BullZip PDF Printer を使うことにした,というお話.

RedMon version 1.9をインストールして,コントロールパネルからプリンタの追加ウィザードを開始.Redirected portを作成するところでコケる. エラーメッセージは
「指定されたポートを追加できません。操作を完了できませんでした(エラー 0x00000001)」.

たぶん管理者権限が必要なんだろうけど,ウィザードを管理者で実行するやりかたがわからん. これ http://borntoidentify.blogspot.com/2010/09/configuring-virtual-printer-using.html を参考にすればたぶんできるが,explorer.exeを管理者で実行とか書いてある.糞めんどいのでやめた.

代替案を探したところ,素敵なソフトを公開している方を発見.
http://dsas.blog.klab.org/archives/51741063.html
しかし,自環境(Win7 Ent 64bit)ではサポート外らしく,動作せず.

2012年9月17日月曜日

Radikaでサスペンドから復帰しての録音に失敗する

結論: スタンバイ→録音→スタンバイではなく,休止状態→録音→休止状態なら実現できている.

やりたいこと

radikoの放送をスタンバイから復帰して録音→スタンバイに戻る

現状

.Netのエラーが出て録音失敗.スタンバイから復帰,再移行はできているみたい.

エラーログ
2012/mm/dd hh:mm:ss:radikaβ Ver.1.70.0.0
radika.TunerDeviceException: キーを取得できませんでした。
   場所 radika.RadikoTunerDevice.RadikoClientCreater`1.GetAuthKey(RadikaApp app, String id, String host, String playerURL, Int32 timeoutSeconds, ManualResetEvent stop, Boolean showChildProcessWindow, String userAgent)
   場所 radika.RadikoTunerDevice.RadikoClientCreater`1.CreateReader(RadikaApp app, AMFAudioSharedClient share, StreamType streamType, String id, String host, String playerURL, Int32 timeoutSeconds, Int32 priority, PriorityMode priorityMode, Boolean sharedConnection, ManualResetEvent stop, Boolean showChildProcessWindow, String userAgent)
   場所 radika.RadikoTunerDevice.CreateReader[T](AMFAudioSharedClient share, StreamType radikocap, String id, String host, String playerURL, Int32 priority, PriorityMode priorityMode)
   場所 radika.RadikoTunerDevice.CreateReaderCore(Int32 priority, PriorityMode priorityMode)
   場所 radika.BaseNetworkTunerDevice.CreateReader(Int32 priority, PriorityMode priorityMode)
   場所 radika.BaseTunerDevice.Create(Int32 priority, PriorityMode priorityMode, BasePCMStream pcmStream, IAMFReader& reader, IAMFWriterPlugin& writer)
   場所 radika.RadikaTask.<>c__DisplayClassb.<Initialize>b__a()

なお,手動起動から番組聴取 & 録音は問題なし.

環境: XPSP3, Radika ver. 1.70, .Net ver. 3.5 & 4, IE 8

ネット上で見つけた対策情報

  • スタンバイからの復帰時にパスワードを求めない設定 → 設定済み.
  • 「スタンバイ」からの復帰じゃなくて「休止状態」を使う → やってみた.2回のテストで正常動作を確認した.とりあえずこれで.

その他未検討の情報
  • スタンバイからの復帰時にディスプレイがoffだとコケる(?).それを防ぐためにWakeDisp2というソフトを使う.
  • ver. 1.28のAYTHKeyGet.exeを使う.
  • IEをデフォルトブラウザに指定する.

2012年9月15日土曜日

xyzzyのフォントを変えてみる

今までデフォルトのフォント(FixedSys)で満足していたのだが,XPから7に乗り換えた所,なんか小さく感じる.ディスプレイと解像度は変わってないのに...

ということで,フォントサイズを変えてみる.メニューバー > ツール > 共通設定から変更できるのだが,FixedSysはフォントサイズが変更できない.

色々変えてみたが,どうもしっくり来ない.どうやらOsakaフォントが人気らしいので,入れてみる.
WindowsでOsakaフォントを使おう!から,"864ttc2.rar"をいただいてきて,インストール.

しかし,拡大して使うと太すぎる.なんか歪んで見えるし(Clear Typeのせい?).どうやら9-12ptくらいの,小さいサイズで使うと真価を発揮するものらしい.

結局,ASCII: Consolas, 日本語: MSゴシック, 16ptで落ち着いた.

2012年9月10日月曜日

Windows 7 64bitにTeX環境を作る


全部32bit版にそろえて,公式サイトの指示通りにやればよし.

角藤TeX(W32TeX)をインストール

  1. 本家サイト経由でインストーラ(texinst2012.zip)と必要なパッケージをダウンロードする.
  2. 指示通りにインストール.
  3. tex/binを環境変数pathに加えておく.

Ghostscriptをインストール

  1. W32TeXのサイトに,日本語環境用にカスタマイズされた版のインストーラがあるのでそれを使う.32bit版のみ.gs906w64full-gpl.exeにあたるものがどっかにないか探してみたが見つからず.正常に動作はするのでよしとする.本家には64bit版あり
  2. gs/gsX.XX/bin, gs/gsX.XX/libを環境変数pathに追加する.

Ghostviewをインストール

  1. http://pages.cs.wisc.edu/~ghost/gsview/よりインストーラを落としてくる.32bit版を使うこと(Ghostscriptが32bitなので).
  2. W32TeXのサイトにあるとおりに,下記のオプション設定をする.
Options ---> Advanced Configure
Ghostscript Options: 編集ボックスに
-dWINKANJI
と記述しておくと便利でしょう。

dvioutをインストール

  1. dviout/dviprt開発室からインストーラを落としてくる.
  2. dvioutの実行ファイルがある場所を環境変数pathに追加する.



ピュア64bitで環境作れるのかな?誰か知ってたら教えて下さい.できれば,32bitで構成するのと比較したメリット,デメリットも.

2012年3月23日金曜日

無線でプロジェクターと接続できないか?

動機: http://heilman-jinroku.blogspot.jp/2011/11/dvi.html


dviケーブルを無線化出来るような機器が既にあるか,ちょっとだけ調べた.

HDMIをワイヤレスで飛ばすアダプタが発売に
でかい.HDMIのみ.通信可能距離が長い(10m)が,そんなに要らない.

ディスプレイを無線でつなぐUSBアダプタが発売、デモ実施中
結構いい感じ.受信側がもっと小型化すれば.

ディスプレイ無線アダプタのDVI対応モデルが登場、実売1.5万円
いっこ前の受信機小型版にみえる.それでもでかい.

感想


  • 頻繁な取り外しを前提としていない
  • 伝送距離は既存のものよりかなり短くて良い
  • 無線通信が最適解ではないかも

2012年3月22日木曜日

Mendeleyで吐いたbibファイルでjournal名を別途指定したい



雑誌名の表示は投稿先によって短縮系,フルを使い分けたい.そのために,IEEEabrv.bibやIEEEfull.bibのようなbibファイルが提供されている(ファイルはこちらから→CTAN web interface: Directory listing for /macros/latex/contrib/IEEEtran/bibtex).
自分の文献リストをMendeleyから自動生成している場合にどうすればよいか,やってみた.

結論から言うと,IEEEabrv.bibやIEEEfull.bibのようなbibファイルを使った表示形式切り替えは実現出来なかった.以下,その理由と対処した方法の載せる.


実現出来なかった理由



Mendeleyが吐くbibファイルでは



journal = {hogehoge},



のように,雑誌名がMendeleyに登録してある名前を{}で囲ったものとして出力されるため.この{}を外すことが出来れば簡単なんだが,今のところその方法はわからない.


対処した方法



Mendeleyに登録する際,論文名を "\hogehoge" のようにlatexコマンドで書く.別途,\hogehoge を表示したい雑誌名に置換するstyファイルを作る.



\newcommand{\hogehoge}{Hoge Journal on HogeHoge}



めんどくせー.





2012年3月7日水曜日

Under the Rose 応募者全員サービス ライナスくんがスゴい



すごい.もともと"小冊子"という触れ込みだったのでそんなに期待していなかったのだが,なんとハードカバーで製本された立派な本が届いた.中身開けてまたびっくり.カラーだ.結構な枚数カラーだ.

内容も面白かった.個人的にライナス好きなこともあるが,キャラが立っている人物が多いからキャラ遊び漫画も面白い.これはこれで続けてくれないかなー.

作者の船戸明里先生と幻冬舎の方々に感謝を.あとは,新刊発売を首がネジ切れるくらい待っていますのでお願いします.





2012年2月11日土曜日

java 一回しか使わないArrayList

一回しか使わないArrayListを作りたい.
匿名クラス?Javaの匿名クラスを使ってかっこよくオブジェクトを初期化するテクニック - 矢野勉のはてな日記
new ArrayList<Double>() {
{
add((double) k);
add(yhk[0]);
add(yhk[1]);
}
}
→初期化する変数がfinalでないとダメ

Arrays.asList(配列)でListができるので,それをコンストラクタArrayList()
に食わせる.
→型指定がないと警告.無視すると書きだしたデータが読めん.型指定入れるとコンストラクタ未定義でエラー.

ArrayListへのaddってインスタンスコピーじゃなくて参照コピーなんだね.

2012年2月9日木曜日

doubleの精度



久しぶりにeclipseなぞ起動してシミュレーションを書く.
どうも思ったとおりの結果にならなくて,数値計算の誤差の影響を疑う.今までdoubleでやっとけば困ることはなかったのだが...

厳密にやってみよう!ということで調べてみると,BigDecimalBigDecimal (Java 2 Platform SE 5.0)を使えば丸め誤差を任意に取り扱えるとのこと.

ちょっと書いてみるが,四則演算をメソッド使って書かないといけないのでものすごい面倒くさい.今までdoubleで書いてたところを気合で書き直しても絶対ミスあるし.書くのもデバッグもかなり面倒くさい.金融系はこんな風なんだろうか.これは大変だ.

迷ってみたが書き直した.コンパイルは通ったが除算の精度指定を適当に書いたので期待通りにはならず.もうちょっと勉強が必要.

なんかdoubleの倍とか3倍とかの精度でやってくれる基本データ型はないんですか!

Groovyは標準でBigDecimalだそうで,手をだそうか検討中.