VimのQuickFixモードで読み取る文字コード(エンコーディング)

MS VC++のcl.exeが常に日本語メッセージをShift-JISで出しくさるとか,cygwinのmakeがデフォルトではやはり日本語メッセージを出しくさるとか,うざい状況が色々ある.VimのQuickFixモードではエディタ内でそれらのコマンドを実行し,帰ってきたエラー・メッセージを解釈してエラーの行にジャンプとか便利な機能が色々あるのだが,それが文字化けでうまく働かなくなってしまう.Vimには様々な部分でテキストのエンコーディングを変更したりするオプションがあるがQuickFixには付いてない.そこで外部のフィルタ(とりあえずnkf)を噛ませる.多分,以下が最も楽で汎用性がある.

set shellpipe=2>\&1\|/tex/bin/nkf\ -w>%s

'&' と '|' はVimスクリプトで特別な意味を持つのでオプションの値に含めるには '\' でエスケープしなければならない.要するに(例えば)

/cygwin/bin/make -kr 2>&1|/tex/bin/nkf -w>(一時ファイル)

のようにコマンドが実行される仕掛け.私はVim全体の基本となるエンコーディングとしてUTF-8を使っているのでnkfにもUTF-8で出力させている (-w).nkfTeXのall-in-oneインストーラで一緒に入った(んだっけ?)やつを使ってみた.

なおMS .NET FrameworkのC#コンパイラ csc.exe だとUTF-8で出すオプションが一応ある.本当は扱いやすい英語がいいんですが...

またGNU gettext系だと日本語メッセージを格納している /usr/share/locale/ja/LC_MESSAGES/foo.moCygwinなら\cygwin\usr\share\locale\ja\LC_MESSAGES\foo.mo)を foo.mo.bak にリネームしてしまえば「make: 入ります ディレクトリ」とかの悪名高い*1うざい翻訳メッセージを目にしなくて済む(翻訳者の方,すみません...).

*1:今はもう直ってるみたい?

WinView SPE to TXT converter

id:flappphys:20080712#p1 の,もっとシンプルな版.
どうでもいいが cl.exe 15.00.21022.08 for 80x86 でこれを /O2 付きでコンパイルすると type の値がおかしい.読み取った直後は(例えば) 5 なのに,xLen とかと一緒に表示するところでは 0 になってしまう./O1 では 5 のまま.reinterpret_cast 辺りはともかくとして,static_cast とかSTL vector中の配列アクセスだけで最適化オプションにより結果が変わるっておかしくない?
(追記:以下はコメントに感謝しつつ修正した版)

続きを読む

79844 bytes

列 1 / 41; 行 677 / 1871; 単語 3239 / 9121; 文字 27248 / 75116; バイト 31976 of 79844

気付いたらappendixのうち書きかけの1章が消滅していた.いつの時点で消えたのやら... どうやら章の並び替えの途中でカットしてペーストせぬままだったらしい.今後繰り返してはたまらんのでSubversionに登録しておいた.みんなもせめて日付付きバックアップくらい(書いてるのとは別のマシンに)取るといいよ!
実験の論文なんで実験系の図を一度 入れ始めればそれに関する説明でどんどん筆が進むと期待していたが,そもそも図を描くのに手間取る → なんてこったい! という現状.

睡眠

修論書きは純粋なデスクワークということで,この期間,睡眠だけはきちんと取ることを心がけている.もう「風呂に浸かって寝れば寒くなった頃に強制的に目覚めるので4時間以上寝ないで済む」とかはやらない.

半導体業界の景気の悪い話

IRCでサークルの先輩から教えていただいたのだが,

「東京」ジャスダック上場のエス・イー・エス(株)... は、1月16日に東京地裁民事再生法の適用を申請し、同日、保全命令を受けた。
...

当社は、1978年(昭和53年)11月に設立された半導体洗浄装置メーカー。半導体製造工程における半導体・液晶ガラス等の薬液処理装置の製造卸売を行い、関連する研究・保守サービスも手がけ、91年5月には株式の店頭登録(現・ジャスダック)を果たしていた。... バッチ式半導体洗浄装置分野では世界3位のシェアを占めるまでに成長していた。近年は新規事業として結晶系太陽電池製造装置製造にも進出し、2007年3月期の年売上高は約217億3500万円を計上していた。

2007年10月以降、半導体メモリ価格の急落から顧客となる半導体メーカーが設備投資を抑制したことで受注が落ち込んでいた ...

今年に入って上場企業の倒産は、東新住建(株)(ジャスダック、負債430億円、愛知)、(株)クリード東証1部、負債650億8100万円、東京)に続いて3社目。

この企業は今まで知らない企業だったが,半導体の洗浄とか検査とか,何だかんだ言って割と羽振りよくてまったり高給なイメージがあったので(いくらメモリが安くなっても不況に突入しても,必要不可欠であることに変わりないだろう,とか思ってた)けっこう驚いた.今の世の中は甘くないらしい.
某先輩のお勤めのルネサスは200 G円規模の赤字らしいとも聞いた:

... 日立製作所は09年3月期の連結最終損益が150億円の黒字予想から一転、大幅赤字となる見通しだ。

ルネサスは主力のシステムLSIの販売が急激に落ち込み、09年3月期は最終損益が2000億円規模の赤字(同95億円の黒字)に転じる見込み。...

半導体を本体に抱える東芝はNAND型フラッシュメモリー、システムLSIの2つの主力半導体が深刻だ。... 半導体部門の ... 赤字幅は ... 2000億円規模に拡大する見通しだ。

NEC子会社のNECエレクトロニクスも昨秋、09年3月期の連結営業損益を100億円から10億円に下方修正したが、工場稼働率がここにきて「半分以下」(同社首脳)に落ち込み、営業赤字転落が避けられそうもない。

富士通が昨年3月に半導体事業を分社化した富士通マイクロエレクトロニクスは ... 昨秋300億円近い営業赤字に修正している。

なんともはや.まぁあれだけの大企業だと直接 割を食う人が一部に留まるというのがメリット(?)なのだろう.むしろ我が身がさすがに心配になってくる.
半導体そのものではないが,つい先日,富士通のHDD部門が東芝に身売りというニュースが流れたばかりでしたね...

東芝が、パソコンやデジタル家電などのデータ記憶装置として使われるハードディスク駆動装置(HDD)事業を、富士通から買収する方向で最終調整に入ったことが14日わかった。早ければ月内にも合意する見通し。買収額は300億〜400億円程度とみられる。富士通は同事業の業績改善が見込めないと判断。一方、東芝は小型HDD製品でシェアを拡大し、量産効果や開発力の強化を狙う。...

東芝は14日、富士通のハードディスク駆動装置(HDD)事業を買収することで基本合意した。両社の社長が同日会談し、東芝が今春をメドに富士通のHDD生産・販売事業を買収することで一致した。

ただの噂じゃなくて,合意までしたのね.

74658 bytes

列 1 / 0; 行 210 / 1743; 単語 291 / 8473; 文字 5837 / 69930; バイト 10565 of 74658

より正確にカウントする方法としてdetexをかけてからsedで句読点や記号文字を削除とか,DVIまでコンパイルした後にdvi2ttyでテキストに戻してsedとか,色々方法は思い付く(し,試してみた)のだが,とりあえず一番単純な方法を続ける.
何か増えたように見えるが本質的なところが増えてないので無駄くさい.なお実質の単語数は上の半分ちょいのようだ.