2008年10月17日から2008年10月13日までの日記を表示中

2008年10月17日 (金)

OOoの虫眼鏡

多分前にも書きましたが,OOo のドローとかでツールバーに埋め込める虫眼鏡アイコンの「-」の方をクリックすると画面がズームアウトするのに「+」の方はアイコンをクリックしただけではズームインせずマウスで画面内のどこかをクリックすると初めてズームインするという非対称な挙動がどうにも好きになれません.なんでこんなことになってるのか・・・.

気になってググってみたらこんな書込みを発見.やっぱ同じようなこと考える人はいるんだな,うんうん (全然違ってたら恥ずかしい).まさに虫眼鏡の「+」を押したら「+」キーを押したときと同じ挙動がいいなぁ.マウスでクリックしたところをズームインするとかそういう機能は「+」も「-」書いてないすっぴんの虫眼鏡に任せて,押すとマウスカーソルが「+」の入った虫眼鏡になって,「Ctrl」が押されている間はそれが「-」になるとかそういう感じで.

下の方にバグトラッカーのリンクがいくつか張られてますが,読解力不足により結局何がどうなって今の状態になってんのか読んでもいまいちよくわかりません (´・ω・`).どれも解決になってないってことは,長い年月をかけてコードを練っているということなのか?

中華街

某打ち上げに混ぜてもらって(?) 横浜の中華街に行ってご飯食べてきました.中華街なんて一体いつ以来だろう・・・.近くて遠いとはまさにこのこと.

料理はもちろんですが,紹興酒もおいしかったです.あと両隣が濃くて,パソコンサンデーやベーマガといった割と昔の話からコードゴルフや特攻空母ベルーガなどの割と最近の話まで濃く盛り上がりました.・・・ん?

終了後,たまたま時間が合ったので帰宅途中のよみさんを無理やり石川町で電車から引きずりおろしM3で買っておいたCDを引き渡し.どうもお疲れさまでした.

ケツイ体験版

中華街に行く前に横浜のヨドバシに寄ってDSステーションとやらでダウンロードしてみました.で,帰宅後ちょろっとやってみたところ,割とあっさり3体目の最終段階に到達.何回かやってたら撃破できました (スコアはスカスカもいいところですが).ケツイの会のときのよりずいぶん簡単になったような気がします.ていうか気がつけば来週発売なんですね.月日が経つのは本当に早いなぁ.もちろん買いますよー.

続きは製品版でお楽しみ下さい

スコアなんて贅沢言ってられません

2008年10月16日 (木)

OOo-3.0.0

例によってソースから入れてみました.2系と同じ手順でやろうとしたら hunspell とやらが libiconv とリンクしてくれなくてこけたので別途これだけ単体でビルド・インストールして「--with-system-hunspell」とつけて逃げ.ちなみに hunspell は単体でビルドするときも同じようにこけたので Makefile.in を修正.ちゃんと「-liconv」が「LIBICONV」にセットされてるのにこれをリンク時に使おうとしていないのは誰が悪いのか・・・.これ以外は特にはまることもなく完走してOOo自体は無事動作してくれました.「dmake -P2」で5時間ちょっと.

雷電IV

このゲーム,オートセーブじゃなかったのねw.ゲーム終了時に出るアレはリプレイの保存を聞いてきているんだと思ってました(笑).道理で3面から練習しようとして選べなかったわけだぜ (1面からやって3面で終わってスコア入れるところで初めて気づいた).まあクリアで満足なんでスコアの方はほんとどうでもいいんですが.

というわけで気を取り直して何度かプレーするもやっぱり難しい.3面道中くらいまではまあちょいちょい避けて切り替えして・・・でどうにかなってんですが (それでもうっかり当たって死んだりするけど),3ボスが全然わかりません.

こりゃ攻略ページとか見なきゃだめかなぁ・・・ってことで真っ先に 1000万点@グラディウスVさんのWebを思い出したので見てみました.おお,攻略が始まっている! まだまだ本当にさわりの部分だけみたいですが,この文言を見てドキリ.

そのため弾幕シューティングやグラディウスはクリアできるけど、 雷電IVは2ボス、3ボスで終了ということも頻発します。
これは弾幕シューティングやグラディウスで上手くいった攻略法を そのまま雷電IVに適用したためだと思います。

俺かよ!・・・俺かよ! ・・・まあ,自分の場合,クリアできる(た)のは「ごく一部」ですけど.で,リンク先のニコニコのリプレイを拝見.おお,すげえ.なるほど,こんなことが・・・.何をやっているのかわかる範囲で真似できそうなところは真似する方向で何度かトライしたところ,360モードとアーケードモードでどうにか4面に到達成功.その先であっという間に死んだけど.

ゲーム終了後は,RF1の時に参考にさせて頂いた雷電フリークスさんのページのIVの攻略コンテンツをアクセス.ここで基礎から再確認・・・って溜め撃ちなんてあるのか! リプレイで打つの止めてたのはそれだったのかー.うお,アイテム吸引なんてのもあるのか.うおおお.

そんなわけで何か全然まとまりないですが,今週末は4ボス到達くらいを目標に頑張ります.

2008年10月15日 (水)

alt-cannadic-081012のextraをuim.elで使ってみた

昨日の続き.Emacs22 でちょっと試してみたんですが UTF-8 で uim 側とやりとりすると記号の大きさが変で変換候補の表示幅がおかしかったり確定した後のバッファを SJIS や EUC-JP で保存できなかったりとフォント以前に色々と変だったので早々に諦めて Emacs23 の上で試してみることにしました.

とりあえず Emacs23 を普通に CVS から引っ張ってきてビルドしたところ,セグって全く起動する気配がありません.「Fatal error」でも何でもいいから落ちた理由くらい教えてくれ (´・ω・`)

gdbで見て落ちているところをキーワードにググってみたらこれがヒット.あー,fontconfig が古いのか.見てみたら T60 の環境の fontconfig は 2.3.94 だとか.こりゃ古そうだ(笑).というわけで fontconfig を 2.6.0 にアップデート・・・しようとしたら freetype が古くてついてこれなかった (2.1.10だった) のでこっちもついでに 2.3.7 にアップデート.これでセグらずに Emacs23 が起動するようになりましたよ.よしよし.

で,.emacs に Emacs23 用の設定を加えてIPAゴシックを使うようにしたりEmacs22以下では anthy-utf8 を使わないように細工したり (ここでuim.elのしょぼいバグを見つけたりしてcommitしたorz) していざテスト.お,とりあえず uim.el 経由で「!!」を変換すると「‼」が表示されますな.確定もできる.何かIPAゴシックじゃないフォントみたいですが (IPAフォントを最新のに上げたら直りました) ひとまず uim.el でもいけそうな感じです.

Emacs23のフレーム幅が変

そんな具合で uim.el でも Anthy の辞書にある UTF-8 な文字を入力できることが確認できたわけなんですが,色々いじってたら問題発覚.インライン変換候補をウィンドウの右の方で出すと表示位置がずれます.何コレ.

変換候補の表示位置がずれる

・・・というかよく見るとフレーム (他のアプリケーションでいうところのウィンドウ) の初期幅が超でかいんですけどwww

幅が異常にでかいフレーム

数えてみたら丁度半角英数字160文字分の幅がありました.デフォルトで80文字分の幅に設定しているので倍になっちゃってる感じですかね.試しに .emacs で幅を40文字分に変更してみたら丁度80文字分の幅になったので多分正解.とはいえ半分にしたところで変換候補の表示位置がずれるとかそういう問題は何も解決しませんが.

160文字分の幅があった

.emacsの設定がおかしいのかと思ったんですが,「-q」をつけて Emacs23 を起動しても同じように横長のフレームが生成されちゃいます.くそー,何だこれ.

あれこれ試しているうちに,.fonts.conf をリネームして無効化した状態で「emacs -q -fn "IPAGothic"」とかやって起動すると設定通り半角英数字で80文字分の幅になることが判明.ただし,昔よく遭遇した「半角英数字が全角文字と同じ幅を占めてしまい全体的に間延びした感じに表示されてしまう」現象付きですが・・・

文字が間延びした状態

調べた所,この現象は fontconfig でフォントの「globaladvance」属性(?)を「false」にすれば出なくなるとかで (以前は fontconfig か何かにパッチを当てて回避していたような),手元の .fonts.conf でも ↓なことをやってきちんと回避してました.

 <match target="font">
  <test compare="contains" target="pattern" name="lang">
   <string>zh-tw</string>
   <string>zh-cn</string>
   <string>ja</string>
   <string>ko</string>
  </test>
  <edit name="spacing"><int>0</int></edit>
  <edit name="globaladvance"><bool>false</bool></edit>
 </match>

・・・ふぅ・・・ってこれは何も関係ないじゃないか orz.fontconfig のバージョンを 2.4.2 に落としてみたり libXft のバージョンを 2.1.13 に上げてみたりしましたが何も変わりません.ググってもそれっぽい情報は見つからないし・・・.うーん.

やっぱ当てずっぽうはダメですかねー.というわけで諦めて Emacs23 の src 以下を覗いてみることにしました.現象から察するに Emacs の中で文字の幅の計算を間違えているような雰囲気.とりあえず「width」とかでgrepをかけてそれっぽいファイルを・・・って src/xftfont.c にいきなり怪しいところが.

  if (INTEGERP (AREF (entity, FONT_SPACING_INDEX)))
    spacing = XINT (AREF (entity, FONT_SPACING_INDEX));
  else
    spacing = FC_PROPORTIONAL;

(中略)

  if (spacing != FC_PROPORTIONAL)
    {
      font->min_width = font->average_width = font->space_width
        = xftfont->max_advance_width;
      XftTextExtents8 (display, xftfont, ascii_printable + 1, 94, &extents);
    }
  else
    {

超あやしい.試しに printf を突っ込んでどこを通っているのか見てみたら spacing が FC_PROPORTIONAL になっていないようだったので,その直前で spacing に「FC_PROPORTIONAL」を設定してやったところ見事に設定通りの幅でフレームが表示されるようになったではないですか.いきなり到達するとは珍しい・・・.

しかし何だこりゃ.「spacing」自体は .fonts.conf で「0」に設定しているわけで (ちょうど globaladvance の無効化と一緒に設定してあった),/usr/local/include/fontconfig/fontconfig.h を見ると 0 は FC_PROPORTIONAL に相当するように見えます.

#define FC_PROPORTIONAL             0
#define FC_DUAL                     90
#define FC_MONO                     100
#define FC_CHARCELL                 110

が,Emacs 側で printf してみると spacing は 0 でなく「90」になってました.すなわち「FC_DUAL」・・・.なにそれ.「M-x list-fontsets」とかやってみると以下のように「p」でなく「d」と表示されるので確かに dual 扱いしているようです.

Fontset: -unknown-IPAゴシック-normal-normal-normal-*-16-*-*-*-d-0-fontset-auto1

どうして .fonts.conf で設定した情報がきちんと Emacs に伝わっていないのか・・・.次のエントリでその謎に迫ります.

Emacs23のフレーム幅が直った

・・・といきたいところだったんですが,先に「spacing」に注目して色々試してみたところ謎に迫ることなく回避策が見つかってしまったので深追いするのはやめにしちゃいました.見つかった回避策はこれ.

  • 「(set-default-font "IPAGothic-16:spacing=0")」のように,Emacsで使いたいフォント名の後ろに「:spacing=0」をつけておく (0でなく100や110でもなぜか平気)
  • .fonts.conf とかでそのフォントの spacing を 0 にしておく

こんだけです.IPAフォントに限った話なのかもしれませんが,どっちかだけだとダメでした.

というわけで,以下は Emacs23 + anthy-9100e + alt-cannadic-081012 + uim.el (trunk-r5595) で色々変換してみたところ.とりあえず変換候補の位置が正常になりましたよ,と.

「‼」

みんなが大好きな「まるきゅう」.「⑨」以外なぜかボコボコ.別のフォントになっている?

「⑨」

「⊕」は何か幅が変だな.

「⊕」

ていうか「波ダッシュ」と「全角チルダ」の見分けがつかないのですが (;´Д`)

「~」

それと,これまたよくわからんのですが,さざなみフォントとかVLゴシックを使う場合は「(set-default-font "VL Gothic-16:spacing=100")」みたいに「100」にしとかないとフレームの幅が直ってくれませんでした.しかもこれらフォントの場合は .fonts.conf に spacing を設定しなくても大丈夫っぽい.フォントまわりは相変わらず奥が深い症候群.

というわけで,とりあえず使えることを確認するだけのはずだったのになぜか脱線してこんなことになってしまったというお話でした・・・.しかしこんだけハマったのにググっても同じような話題が見当たらないってのがすごいですね.・・・ひょっとして一人思いっきり間違ったことしてたりするのかな・・・ま,いいか (´∀`)

おまけ: 「t」をくっつけて変換する方法は .uim に以下のように書いとけばいいんじゃないかと (何か足りなかったらごめん)

(require "japanese.scm")
(define ja-rk-rule
  (append  '(
            ((("t") . ()) ("t" "t" "t"))
            )
           ja-rk-rule))

雷電IV

日付も変わろうかという頃にようやく開封.とりあえずデフォルトの家庭用モード(?)を数回遊んでみました.初見で3ボスに到達するも,その後はスコアが伸びるだけで3ボスが全然倒せず疲れて終了.途中1回アーケードモードを難易度アーケードでやったら2ボスで死んだ(笑).やめちまえってくらいにセンスが無くて泣けます orz

2008年10月14日 (火)

帰宅

夕方頃に実家を出て再び川崎に立ち寄りつつ,日付が変わる頃に帰宅.実家で何をしたかというとサナギさんを4巻くらいまで読んだことくらいか.まあサナギさんは非常にためになる漫画でした.あ,あと最近話題のサンレッドの1巻もあったので読みました.「あんな使い古されたネタばかりの漫画はダメだ」ってことで2巻以降は買ってないそうです.残念 (´・ω・`)

alt-cannadic-081012のextraをuim.elで使ってみる

とりあえずUTF-8に対応したEmacsで .emacsに以下を足してくれ.後はフォントが整ったEmacsとanthy-utf8に対応したuimがあれば・・・.自分のEmacs22ではフォントがアレで豆腐になっちゃいましたがw

(if (>= emacs-major-version 22)
    (add-hook 'uim-load-hook
              '(lambda ()
                 (setq uim-lang-code-alist
                       (cons '("Japanese" "Japanese" utf-8 "UTF-8")
                             (delete (assoc "Japanese"
                                            uim-lang-code-alist)
                                     uim-lang-code-alist))))))

ちなみにuimをanthy-utf8対応化しようとして「--with-anthy-utf8」をつけてビルドし直しても全然対応してくれなくて軽くハマりました.実は installed-modules.scm が作り直されていなかっただけだったんですが.今後は毎回distcleanしよう・・・って何か前にもこんなことがあったような・・・.

2008年10月13日 (月)

M3-2008秋

晴れてたんで今日は自転車で行ってきました.9時くらいにPiOに着くように出発.で,ほぼ予定通り到着したわけですが・・・列が見当たらないけどこれは一体・・・って前の広場とか駐輪場側じゃなくて建物の右側に列作ってんのか! ていうか列の最後尾がどこだかわからなくて折り返し地点まで行っちゃったよ (´・ω・`).全然ちゃんと数えませんでしたが200〜300人はいそうな感じでした.すごいな・・・.4年前なんて9時半について9番目だったのにw.あと会場右側って意外と収容力あるんですね.

で,最初に並んだところから動かされることなくそのまま待機.おい,そこのお前!仲間内で楽しく談笑するのはいいけど動画を見るときくらいはイヤホンくらいしやがれ! ていうかお前動画流してるだけで見てねーじゃねーか.単にiPhoneで普段動画見たりしているところを連れにアピールしたいだけちゃうんかと.気持ちはわかるがいいからイヤホン(ry・・・なんてことを心の中で思いながら待つこと2時間半弱.開場 5分前くらいになってようやく列が動き出し,開場5分後くらいには中に入れました.ペナルティがあったのかどうかは不明.

入った時点で「A」だか「B」だかにでかい列ができててビビるも早い段階だけあって「F」はガラガラ.混む前にサクッと回って「B」に寄って,後は2Fに行って「レ」でちょっと買って完了.20分もかからずに予定していた分はほぼ終了です.相変わらず早いw.よみさんもそのくらいで終わったようで,「F」横の壁際の安地で遭遇して軽くお話ししたり.何か朝,並んでたらよみさんのすぐ後ろで人が倒れたとか.ううむ,陽射しにやられたのでしょうか.イベント時の体調管理には気をつけたいものです.

よみさんと別れた後は,遅れて搬入されてきたものを買ったり,先に帰ったよみさんの買いそびれを買ったり,何か面白そうなものが無いかとうろついたりするなどしたりして14時ちょっと前に離脱.離脱した時点でもまだ結構カタログがあったようですが,最終的に入場フリーになったのかな?

で,恒例の戦利品ですが,今回はこんな感じでした.CROSS GEARさんのCDは無料頒布とは思えない装丁な上におまけ付きで超ビビりました.というか超恐縮です.あと「Februa」が超楽しみ.

M3 2008秋

さて,いつもならこれで終わりなんですが,実は今日はよみさんと別れてから会場を離脱するまでの間にちょっとした事件に遭遇してしまいました.

お腹が空いてきたんで,ロビーに出てベンチの空いているところに座って朝に買っておいたおにぎりを食べようと一口二口とかじったところで,なんと壁際で談笑していた人が突然目の前にゴロリと倒れ込んできたのです・・・.

最初足がつったのかなと悠長に思っていたんですが,何やら様子がおかしい・・・.あわてて頬張ったものを飲み込んだ頃には誰かが呼んだのか既にM3のスタッフの方が駆けつけており,すぐに施設の方を通じて救急車が手配され,たまたま居合せた医療系の本職と思しき方が診察を開始.倒れた方は途中で意識が戻るも朦朧としているようで救急隊に引き継がれていきました.無事だったのかな・・・.たまたま居合せただけとはいえ心配になります・・・.

しかし後から思い返すと,間近にいながら何一つ力になれなかったのが情けなく申し訳ない感じです・・・.今回はまわりの対応が早くて自分の出る幕は何一つ無かったわけですが,もし周りに人が全然居ないときに同じようなことが起きたらいつかの講習で習ったように行動できるだろうかとか,色々考えさせられます.もちろんこんな状況無いに越したこと無いのですが・・・.うーん.

帰省

夜になって実家に移動してみました.いつもと違う道を通ってみたらいつの間にか高速に乗ってたりして色々ドキドキでしたw.あと道中の信号とか料金所の料金表とか見てあらためて視力が低下したことを実感.泣ける.

uim-el-agentとメモリ

なんかググってる人がいるなぁとハラハラしてたらスレにそのものズバリな書込みが・・・.うーん,最初から喰いまくりなのか使っていくうちにどんどん増えていくのか・・・.中身をまったく覚えていないのでそこかしこでリークしてそうな不安に駆られる _|‾|○

[コメントを書く]

ekato 2008/10/14(火) 13:08:13
とりあえず、一個みつけたので塞いでおきます。

ところで最近、候補のページごとに uim_get_candidate() を呼ぶように色々と変更したんですが、uim-el でもやっちゃっていいですか? (すぐにはとりかからないかもしれないですけど)
nosuke 2008/10/14(火) 18:04:48
うわーこんなにもあっさりとorz
> uim-el でもやっちゃっていいですか?
是非是非バッサリやっちゃってください.
申し訳ないことに最近全然ついていけてない・・・

期限

頼まれ事がきたので期限3ヶ月だと思って引き受けたら6週間とか書いてあって悶絶.こいつはやばいかも.

2008年10月17日から2008年10月13日までの日記を表示中

中の人情報

名前:
nosuke (のすけ)
メール:
sasugaanijaのgmail.com
「の」は「@」みたいな
関連リンク:

カレンダー

2008年10月
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  

<<先月分

翌月分>>

最新の10件のエントリ

最近の10件のコメント

過去ログ