/ 最近 .rdf 追記 設定 本棚

脳log[2013-05-02~]



2013年05月02日 (木) 年間10万円浮かす! 食費を節約するためのお買い物ベーシックガイド : ライフハッカー[日本版]」■全部知ってた。ひとつ付け加えるなら、レシートを見返して総額の 3割以上(※具体例として)を単独で占めてたりする品目を見つけ出して意識すること(必要か?代替は?優先順位を他にまわさなくて良いか?)。もうひとつ。空腹の時に食べ物を買わない。■昔はこうだった(20070406p02)けど今は商品を手に取るのと同時に10円単位で加算していってる。■だいたい年寄りの方がきっちりしてるもので、切り捨てによって生じた 1円単位の誤差を指摘してくれたり、手書きのメモで自分でも計算してくれてたりするのは例外なく年寄り(注:スーパーでの話ではない)。■お金の勘定を人任せにせず自分でもやってると「(俺がその人のことを)信用してない」とか言われたりしたけど、信用云々ではなくミスが混じる確率の問題。それに、あなたが封をするところまでやってくれてたら、こんな面倒なことはしていない。途中で引き渡されたから、関わってしまったから、全体を一から自分で確かめる必要が生じるのだ。■やっぱり信用してないのかもね。連帯して責任を負う(=信用する?)ことができないって言ってるんだから。■でもなんで「信用してない」と言われてそれを否定してしまうのかもわかっていて、信用できない主要な要因がその人とは関係のないところ(自分自身)にあって、誰に対しても同じことをするからだ。「(あなたを)信用してないわけではない、誰も信用してないだけだ(そしてそれがお金に関して正しい態度だと思ってる)。」というわけ。


2013年05月01日 (水) spamにこんな URL >http://keisok.sakura.ne.jp/moodle/user/view.php?id=2351■.sakura.ne.jpだから目にとまったんだけど、keisok.sakura.ne.jp自体はたぶん真っ当なサイト。moodleを狙って書き込みを行い、その一見無害な URLをスパムとしてまき散らしてるみたい。他にも /moodle/を含む URLを内容とするスパムが大量にあった。■こういうのは SaaSを利用する圧力になるんかな。自分で管理するより管理されてる方が楽だもんね。それが面白くない。

最終更新: 2013-06-11T17:42+0900

[SakuraEditor] DirectWriteパッチ(by novice123)

https://sourceforge.net/p/sakura-editor/patchunicode/482/

これは期待せざるをえない。でもこれは、何がいけなかったんだろう。

trunk2>svn revert -R .
trunk2>svn up -r 2954
(サクラエディタで trunk2_directwrite.patchを、改行をCRLFに統一して、保存し直し)
trunk2>patch -p0 < trunk2_directwrite.patch
(VS2008EEで sakura/sakura.slnを開く。Release_Unicodeでリビルド)

1.起動してファイルを開いた直後。[EOF]マークが残ってる。日本語文字に半角サイズしか割り当てられてないのはウチの環境のせい(Consolas+Meiryoで GDIが全角文字を半角で描画するせいで全角半角判定(GDI依存)と DirectWriteによる描画が食い違ってる)。

2.スクロールしてまた先頭に戻ってきた。ゴミが残ってる。

3.最小化して復元した。ゴミしかない。

自分でもやってるけど目に見えて遅くなるから@2013-05-26常用はしてない。関連(古い順)>2011042320120201(参考画像豊富)、201202052012070720121018。DirectWriteをハンコにして得られるメリットは縦方向のアンチエイリアスがかけられることかなあ。GDI+ClearTypeでも横方向のサブピクセルレンダリングはやってるから、フォントと OS次第ではそれ以外に差が出ない。サクラエディタではサブピクセル単位での字間調整に意味がないという個別の事情もあるし。


 @2013-05-02 背景画像を指定してみた。


 @2013-05-03 更新パッチ:trunk2_directwrite_a.patch

フォントは相変わらず Consolas+Meiryoなんだけど、日本語にきちんと全角幅が割り当てられてるのが不思議。

曲線を観察するに縦方向のアンチエイリアスがかかってない気がする。それでは Consolas+Meiryo+ClearTypeに比して DirectWriteのアドバンテージがない。

 Postボタンを押す直前に臆病風に吹かれてここに書きますよ。モチベーション大事。

早々に気にすることではないかも知れませんが、この二つの適切な呼び分けは難しくないですか?

HRESULT DWriteContext::SetLOGFONT(const LOGFONTW &logFont, float fontSize);
void    DWriteContext::SetFont   (const LOGFONTW &logFont);

ひょっとして上の2つと下の1つは副作用を伴う一連の不可分な処理を3分割したもので、入れ替えたり飛ばしたりできないものだったりするのでしょうか?

void DWriteContext::SetFont(HFONT hFont, bool bold, bool underline)

それから、DWriteContext::SetFont(HFONT hFont, bool bold, bool underline) の hFontにも太字・下線情報が含まれますが、CEditView_Paint.cppでこのように

HFONT hFont = GetFontset().ChooseFontHandle(false, false);
DWriteContext_SetFont(s_dwc, hFont, info.m_bFatFont, info.m_bUnderLine);

あえて無視する(無視させる)理由についても、想像がつかないもので、知っておきたいと思うのですが、教えてもらえますか?

 @2013-05-13 vim-jpのログを読んでる。

デジャヴを感じるコメントの流れだ。

>DirectWriteで描画したい · Issue #262 · vim-jp/issues · GitHub

そんで、すぐ上の疑問に関して。たぶん novice123さんはここまで読んでいない(手が回っていない)。

koron commented 4 months ago

最新版ではGetObject()を使ってHFONTからLOGFONTを取得することで、必要なときに DWriteContext_SetFont() するように変更しました。合わせて太字と斜体の有無は、DrawTextの引数ではなくフォントの情報を利用するように変更しました。

しっかし、個別問題に対処するパッチがいくつか見られるだけでさっぱりコードの全貌が追いかけられん。リンク切れも多すぎる。


 @2013-05-04 trunk2_directwrite_c.patch

ピクセルジオメトリはダイアログで設定するものでも、できるものでもないと思う。マルチモニタ。デバッグモード?


 @2013-05-13 下線

あんまり PPDとか理解してないけど結果オーライ(※自分の環境限定)で、こんな感じでやってた。(static_cast<int>(f)って int(f)って書けるんかなあ)

  STDMETHODIMP DWGdiTextRenderer::DrawUnderline(
      __maybenull void* clientDrawingContext,
      FLOAT baselineOriginX,
      FLOAT baselineOriginY,
      __in DWRITE_UNDERLINE const* underline,
      IUnknown* clientDrawingEffect
      )
  {
      HDC hdcRT = pRenderTarget_->GetMemoryDC();
      FLOAT ppd = pRenderTarget_->GetPixelsPerDip();
      RECT rcUnderline = {static_cast<int>(baselineOriginX*ppd), static_cast<int>((baselineOriginY+underline->offset)*ppd),
                          static_cast<int>((baselineOriginX+underline->width)*ppd)+1, static_cast<int>((baselineOriginY+underline->offset+underline->thickness)*ppd)+1};
      HBRUSH hBrush = CreateSolidBrush(GetTextColor(hdcRT));

      FillRect(hdcRT, &rcUnderline, hBrush);

      DeleteObject(hBrush);
      return S_OK;
  }

なんでペンでなくブラシなんでしょうねえ。思い出せないからもう一度考えてみると、ペンの場合、線の太さが、始点と終点で示される線分に対してどう影響するのかが不明だったからだろう。線がどのように太るのかが。例えば幅2ピクセルの水平線を引く場合、線の始点・終点の Y座標に大小どちらを指定すべきだろう? その点 RECTで領域を指定して塗りつぶせるブラシは結果がピクセル単位で予想できる。

 @2013-05-16 DPI、DIP。ドットパーインチ、デバイスインディペンデントピクセル。

COMのところの2、3項目しか読んでなかったけど、常識レベルの基礎が身につく良いシリーズだったのだね。DirectWriteの APIドキュメントを読んでると出てくる DIPについても書いてあった。

 @2013-05-17 QueryInterface

DirectWriteのサンプルプログラムがそうで、自分のも同じように AddRefがなかったことに、コメントした後で気付いたんだけど、

ds14050 2013-05-01

QueryInterfaceが正常に返る前に AddRefしておかなくていいのでしょうか?

この疑問に対して同シリーズのこれは無関係ではないのではないか。

hr = pFileOpen->QueryInterface(IID_IFileDialogCustomize, 
    reinterpret_cast<void**>(&pCustom));
if (SUCCEEDED(hr))
{
    // インターフェイスを使用する  (省略)
    // ...

    pCustom->Release();
}
else
{
    // エラーを処理する
}

通常どおり、戻り値 HRESULT をチェックしてメソッドの失敗に備えます。メソッドが成功した場合、ポインターを使用し終えた時点で Release を呼び出す必要があります。詳細については、「オブジェクトの有効期間を管理する」を参照してください。

  1. QueryInterfaceが返す<インターフェイスポインタのコピー>ごとに Releaseが呼ばれる。
  2. QueryInterfaceの呼び出し元は AddRefを呼ばない。
  3. ということは……

あと、キャストせずに thisを代入して返してるけど、どういうキャストの場合に thisが変化するか熟知してない自分には不安なコード。

「QueryInterface キャスト」で検索した。そうそう、こういう懸念、

既に示したQueryInterfaceの問題点は、どのようなインターフェースが渡されてもオブジェクトのアドレスをそのまま返した点です。 このとき、適切なインターフェースでオブジェクトをキャストしていれば、 インターフェースのvptrは適切なvtblを識別するようになります。

サクラエディタで実装する、IDWriteTextRendererを継承した GdiTextRendererに真っ当な QueryInterfaceや、InterlockedIncrement/InterlockedDecrementを使った AddRef/Releaseが必要かといえばいらないんだろうけど(だから動いてる)、ざる実装でも構いはしないんだけど、一見それっぽいのはミスリーディングでよろしくない(問題があるとして、ね)。


 @2013-05-19 _d.patchをベースにしたパッチを投稿したよ。

寝る前の3時間でやっつけた!(つもりになってるだけで返り討ち……とか)。

 @2013-05-20 最初のダメージ

どういう思考をたどったのか、地震(※震源は前住んでたとこだ)に揺れる風呂場で気がついた。まだバージョン管理されていない新ファイル3つがパッチに含まれていなかった。サイズが半分になってるのは小さすぎると思ったんだ。以前指摘されたのと同じミス。

 @2013-05-25 コメントを頂戴しました。

https://sourceforge.net/p/sakura-editor/patchunicode/482/?limit=20#c9f7

 @2013-05-25 trunk2_directwrite_e.patch

無意味な(そう見える@2013-05-27)関数分割(20130501p01.02.01)によって

  1. トラップのようなエントリポイントが生じていること
  2. 分割した関数に同じ名前(オーバーロード)や似た名前を与えていることによって名が体を表していない(似た関数を区別するのに十分な名前を与えていない)こと。
  3. その必要がないのにメンバ関数にすると、関数全体を見渡して thisが大量にもたらす入力パラメータ(※非constメンバ関数の場合は出力パラメータを兼ねる)を見つけ出すのが面倒くさい

という問題に対処した点は汲んでもらえなかったようだ。Cインターフェイスという名の、DWriteContextの opaqueポインタ読み方(ハンドル)を操作する限られた関数群をとっぱらって、DWriteContextクラス自体をモジュールの外へエクスポートしたことで事態はさらに悪化した。

クラスっていうのは内にも外にも過度の依存性/コンテクスト/癒着をもたらすのだなあ。どれだけ良い点、Cからの改善点を並べようと一部のクソのために C++を忌避するという選択は理解できる。

 @2013-05-26 補記。ペンディング。

あ、エクスポートにあたって private化はされてました。トラップは対外的には隠されていたし、呼び出し階層が明確になっていた。でも DirectWrite/DirectX系の定数をモジュールの外から隠せてない。レンダリングパラメータを int, floatと変換関数のセットで再定義してる意味がない。


チケットが pendingされてしまいました。遅いのは vim-jpが DirectWriteをオプション扱いにする理由として挙げていてわかっていたことだし、描画方法と描画先を両方とも GDIから Direct2Dに完全移行できれば改善が期待できるし、遅くても試したい人はいっぱいいたと思うのになあ。


 @2013-05-28 いまさらだけど

互換インターフェイスを C++で定義するならヘッダに書く内容は DWriteContextそのままではなくこんなんになると思う。

class DirectWrite
{
public:
  static DirectWrite* Init();

  DrawText();
  SetFont();
  SetRenderingParam();
  ...
  //< Initと対になる後片付け関数。
private:
  DirectWrite(); // 呼ばせない。代わりに Init().
  //< たぶんコピーコンストラクタも禁止しないといけない。
  //< ポインタメンバがあるので代入演算子も禁止しないといけない。

  struct DataMember;
  DataMember* m;
};

ポリモーフィズムが必要なわけでないしファクトリメソッドの代わりにコンストラクタでもいいのかも。それでもこっそりメンバの追加はできるだろうし。


 @2013-06-11 DirectWrite採用への布石。待望のパッチ

Sakura Editor / PatchUnicode / #588 文字列を一度にExtTextOutで描画する

ただ口を開けて待ってたわけではなかったんだよ(いいわけ)。「ところで、DispTextって文字の数だけ呼ばれるんだけど、こんなんを仮想関数にしても良いものだろうか。9か月前の自分はできるだけ長い GLYPH_RUNを対象にすることで回数を減らそうとしてたみたいだけど(20120201)」と書いていた自分はというと、CEditView_Paint.cppの似たような所をいじるまではやっていて、そこから、どいつにどうやって一挙に文字を書き出させるのが(どこでどこまで決めるのが)いいんだろう?というところで停止していた。

@2013-05-26 もしかしたら違う理由かも。過去の日記を読む限りでは、べらぼうに遅い→まあまあ遅い→まともな速度、と2段の変化があったようで、2段階で改善したことは記憶してなかったから。表示品質があまり変わらなかったのと細かい詰めを放り投げた結果として常用してないのかも。

@2013-05-27 SetFontと SetFontに関しては同じ機能を提供しつつ、LOGFONT版でなく HFONT版を呼んだときには、前回の HFONTとの比較結果次第で以降の処理を省略する意図がありそう。みみっちい。ポインタ/ハンドルを比較してその先の値が同じかどうかわかるかいな。そんな目的のためだけにメンバ変数を増やしますか。しかし、効くのだろうか。自分のパッチでは std::basic_string<TCHAR>を毎回作って lfFaceNameの比較をしていた。手を抜きすぎだとは思う。

読み方 オゥペイクだってさ。オパックだと思ってたよ。思い込みは恐いよ。

本日のツッコミ(全2件) ツッコミを入れる

もかスクリーンショット拝見しました。ExtTextOutのETO_OPAQUEようするに"背景を塗りつぶす"に相当する処..

ds14050背景画像を指定したスクリーンショットもとってみました。確かに仰るとおりでした。(novice123さんが背景画像を指..


2013年04月30日 (火) 警察と話をするときは新手の登場を黙って受け入れてはいけないな。途中から重量級を含めて3対1だよ。こちらを向かせる、座らせる、(自己)紹介をさせるなど、黙って耐えるのでなく、いろいろと試せる手はあったはずだ。相手だって威圧するのが目的で居るのではないはずだから(そういう建前がなかったらお手上げ)。ああ不愉快だ。

最終更新: 2013-05-02T16:45+0900

[SakuraEditor] 規制されたからここで。

830 :名無しさん@お腹いっぱい。:2013/04/30(火) 13:45:27.36 ID:ph+iG0mE0
>>829 
これってブロックコメントの色付け方法が変更されるの?違う? 
完全に閉じたときのみに色変更してほしいんだが……。 
現在の仕様のブロックコメント開始文字列があったらただちに色変更されるのは、(他人の)jsコード見るとき非常に困る。
>>830
829で指摘した変更は単なる最適化を目的としたものだよ。

>現在の仕様のブロックコメント開始文字列があったらただちに
これは ANSI板からの仕様みたいだし、自分としても、画面内の
情報だけに頼って色分けできたほうがどんなファイルを開いた場
合でも軽くていいと思う。対かっこ強調などもそういう割り切り
が多いよ。

せっかくこの日記に書いてるのだし、SHJS方式にも言及しておくと、あれでもやっぱり行末を超えた時点で、コメント終了マークが存在しなくても、コメント開始が確定してしまう。その取り消しを可能にするのがバックトラック版(20090808p01)なんだけど、あれができるのは Web上に載せるコード片が対象だからっていうのがある。IDEでもそれは許されるだろうけど、テキストエディタではどうだろう。バックグラウンドで色分けスレッドを走らせて非同期に画面上の文字の色を変えていくというのは可能だろうけど、わずかなラグ(ちらつき)が気になったりするだろうね。非同期だけど一瞬だけは待つことにして大体の場合は同期的に見えるというのだと、いいのかな? Operaだったか、ページの描画待ち時間を指定できたけど、あれはそういう意味だったのか。


予想外の展開。未完成の .jsに対する色分けかと思っていたら、XPathを表現した文字列に含まれる /* をコメント開始と誤認識するってな話だった。

832 :名無しさん@お腹いっぱい。:2013/04/30(火) 18:48:43.80 ID:ph+iG0mE0
>>831
?……そのプログラムって何を指すの?サクラ側の実行プログラムのこと?
例に挙げたjs(JavaScript)のこと?
jsでは「/*~*/」がブロックコメントという扱いだけど、「/*」の文字列はXPathなどコード上記述されることがままある。
このとき「*/」が以降のコードのどこかに記されてない限りコメント色が付いたまま。
だけどjsの実行上は問題ない。あくまで視認の問題。他人のコードを読むときに困ってるんだ。 

正規表現キーワードでは回避できないんだよね。既知の不具合です>サクラエディタBBS[7020]

掲示板のこのやりとりが 20090808p03のきっかけだった。自分では今でも使ってるんだけど、性能がときどき問題になる。バイナリファイル(=改行が少ない)を開いて検索したときに顕著。

もやもやするって書いちゃった(20130425)けど、このパッチ(#431 PHPヒアドキュメント/C++ RowString/C# quoted String等対応)が適用されたら、文字列の色分けを正規表現キーワードから組み込みのものにまた任せることができるし、それで解決すると思う。ただし、正規表現リテラルの中の /* は解決しない。


 @2013-05-02 vimだって?

834 :名無しさん@お腹いっぱい。:2013/05/02(木) 05:53:25.17 ID:8gLFxXSe0 
正規表現リテラルとか、htmlやphpみたいな文脈による言語変更とかを考えだすと限界があるんだよな・・・ 
vimのシンタックスエンジンを組み込みたい。あれかなり強力だし

どんなのだろうと検索したら見つかった。>syntax - vimdoc-ja< 難しすぎるでしょ。特定のキーワード(containとか contained)がフラットな記述に構造を与えてて余計に難しいってのもあるけど。


2013年04月28日 (日) [DSC-HX30] WXシリーズにちょっと遅れて HXシリーズの GPS付きVモデル後継機種発表。DSC-HX50V。■価値ある変化は、360°パノラマ、Xバッテリーで400枚、虹彩絞り5枚、EVダイヤル、あたり。■C++本で有名な Herb Sutterさんですね。わかります。「Sutter Priority」(主な仕様 | DSC-HX50V | デジタルスチルカメラ Cyber-shot“サイバーショット” | ソニー)


2013年04月27日 (土) enchantMOON価格決定プロセス / "新しいコンピュータ"が39,800円である理由 - UEI shi3zの日記」■@2013-04-23T17:10 傍観してるつもりがなんか勢いにのせられて予約しちゃった。初タブレットコンピュータ!初タブレットはワコムのなので。でもフィギュアを予約するときのような不安がある。早く触りたいってのが一番だけど。■リンクしたエントリって、楽天名物のスクロールしてもスクロールしても購入ボタンが見えてこない商品ページと同じだよね(読み手の感想として)。■■■こういうの(その後も続々とエントリが上げられています)を指してモノでなくモノガタリを買ったとかいっちゃうんだろうか(自分でいってら)。寒気(さむけ)がする。■(蛇足)寒気がするっていうのはそういうことをいう外野に対して。この場合自分自身。


2013年04月26日 (金) うちのにゃんこ。これまでに2度うっかりしっぽを踏んづけてギャッと飛び上がらせたことがある。すぐにごめんねごめんねとなでなでしてやりたくなるけど、そうやって伸ばした手が敵対行動に見えるくらい高まった緊張の中、にゃんこの方からことさらにすり寄ってきて甘えた態度を見せる。威嚇でも逃亡でもないこの行動は関係を維持したいという意思の表れだよね。こういう正しい行動をとれる自信がない自分は素直なにゃんこがうらやましい。


2013年04月25日 (木) [SakuraEditor]「Sakura Editor / PatchUnicode / #431 PHPヒアドキュメント/C++ RowString/C# quoted String等対応」■もやもやする。CColor_Quoteにすべての文字列タイプを扱うコードが詰め込まれてる(if-elseの嵐)とか、CLayoutColorInfo*が単なる(いやちょっと不自由な) void*に過ぎない(IsEqualは非メンバのオーバーロード関数にできるので考慮に値しない)とか、static_castでなく dynamic_castを使うべきなんじゃないか(その前にキャストが不要な設計を模索すべきなんじゃないか)とか。いずれの点も、もっとコンパイラに仕事をさせようという一言に尽きる。■コードでなくデータ、クラスで駆動されるプログラムは見通しが良く、スケールしやすい。それは実行のルール(コード)がシンプルに維持されることと、データや派生クラス群で表されるバリエーションが個々独立に定義される、定義された時点でプログラムが完成しているという点にあると思う。■この本(4797319127)を読んだときに、そういう風にクラスを定義しますか!と何度か目から鱗が落ちた。最初はなんでそうするの?と思うんだけどぴたっぴたっとピースがはまっていって鮮やかに問題が解決してるんだなあ。使うだけならまだしも設計するのは難しい。■■■「Sakura Editor / Code / Commit [r2900]」■バグるというか、static変数の初期化は一回だけしか行われないという……。代入じゃないもんね?いや、規格は見たことも読んだこともありませんが。■どっちも初期化だと思ってるから間が詰まらず見た目がいい = を使って書いてきたのだけど。= は主に初期化構文の一部として使ってるんだけど。■■■もちょっと具体的に。if-elseの嵐と書いた CColor_Quote::BeginColorだけど、この if-elseを CColor_*のインスタンスを作成するときに前倒しすれば、それ以降の(はるかに多数の)実行がストレートになる。なにもすべてを別々のクラスに独立させる必要はなくて、エスケープ文字が違う、開始・終端文字が違う程度の違いはコンストラクタに与える引数の違いでバリエーションを表現できる。その引数はもちろん処理内容を変えるためのフラグではなくて、直接、文字探索に使うんでよ?(失礼、)■■■ファイル名入力補完「Plugin/投稿/14 - SakuraEditorWiki」プラグインで何ができるのか全然知らないな(知りたくなってきた)。


2013年04月24日 (水) [C++]「VC6: テンプレート引数だけが違う関数定義は無視される - tcha.org」■戻り値が違うだけの関数オーバーロードはできないと思ったのだけど、テンプレートだと話が違うってことなんだろうか(だからこそ VC6が間違えた)。

最終更新: 2013-05-26T18:00+0900

[photo] はさみ。ねこ。

家では小学校で使っていたハサミが現役だが、早々に二代目Myハサミの持ち方を決めたい。

中指の背中が遊んでる。刃先も不安定。

中指の背中だけでなく左右も遊び始めた。

ベスト。だがグリップがでかすぎる。薬指と親指が背と腹、開くためと閉じるための2点の接触を維持するためにたいへん苦労している。ベルヌーイカーブ刃を一番に決めてしまったが、そのラインアップに満足できるグリップはなかったのでした。

結局、中指以下3本を輪っかの中に入れることにした。あと、ゴムグリップはすぐ黒くなる。

左手で切るとき(右手の爪を切るときとか!)のコツは、親指を3枚目のように折り曲げることなんだよね?そんで他の指はそれまでと反対に反らせる(腹で押して支える)。ガタがないから今はどうやったって切れてわからん。

写真を貼るからにはネコ。


2013年04月23日 (火) すごく長い。「軽量マークアップ言語で気楽にマークアップ」■一個一個は軽量でも使いたいサービスごとにサポートしてる形式がばらばらだと紛らわしいのをいっぱい覚えないといけない。■Wikiの記法も Markdownも、まずプレインテキストありきで、そこに加えられた文字による装飾の意図をくみとって HTMLタグに変換するものだと思ってる。記法を覚えてマークアップしようってなもんではない。そんなの HTMLだけで十分だ。■sourceforge.netのコメント欄でここ数日 Markdown記法を使うことになったが、覚えたのは \エスケープで意味のある記号を無効化できるということだけ。意図に反する変換をされたときにエスケープするのだ。■エスケープさせるという発想がもう気にくわない。それはもうプレインテキストではない。それだけを覚えればいいという点で助かりはしたが。■自分も引っかかったし、それにコメントしてくれた人も引っかかっていたのだけど、引用(>)で始まる行の次の行も引用扱いになる。すべての行頭に >を挿入するのがエディタや専用ツールを使わないと難しいのは理解できるが、メールなどでの使われ方を踏まえるのでなく独自のルールを強制するのは成り立ちに反する。あるいは俺とは違う文化に根ざしていて、俺が好んで使うべきものではなかったということか。■あと、声を大にして言いたいのは、HTMLが書ける(埋め込める)というのはデメリットであるということ。そういう書き方は分離がうまくないと危険だし、マスターデータとしての価値が変換済みの HTMLにしかなく元のプレインテキストのそれ以上の可能性を閉ざしてしまう。それってこういうこと。日本語の文章を書いてたと思ったら実は HTMLだった(20110212p02.02)とか、これからは HTML5だ!と思ったが埋め込み HTML部分が対応できなかったとか。そんなの嫌でしょ。

最終更新: 2013-05-01T20:17+0900

[photo] 身辺写真

MDT243WG / Majestouch(FKBN108ML/NB) / TrackMan Marble(TM-150) / Bamboo Fun(CTE-670/W1) / DUALSHOCK2 / SN25P / CMT-SE3(スピーカー) 水彩画調。サムネイルだと効果がわかりづらい。ディテールが溶けて輪郭を墨でなぞったような効果。これと違って、絵画調HDRとリッチトーンモノクロは複数回シャッターなのでカメラでやる価値があると思う。価格.comの顔アイコンはどうしてどれもこれもイラっとするのだろう(特にじじいと黄帽)。

Sony Reader(PRS-650) 刻印サービスがあるからソニーストアで買った。後継機種の PRS-T1(赤色は対象外)、PRS-T2(サービス適用外)と劣化していったけど、使い捨て商品はいらないよ(捨てるのが面倒だ)。

SONY Wi-Fi Audio(VGF-WA1) せくしーなおしり。

LUTS Kid Delf LIME(Girl Normal) / RUNE ベルせんせいのトゥルトゥルBOX(木箱) そそられる視点。この靴、内外両側にバックルがあるんだけど(左右を間違えてないよアピール)、内側のは歩くのに邪魔だし危険でもあるね。


2013年04月22日 (月) 2004年7月からお世話になっております。「さくらのレンタルサーバ ズッ友キャンペーン|さくらインターネット」スタート時9割が社長謹製とかかっこよすぎです。■Webメールには山かっこでレイアウトが崩れると改善要望メールを出したりもしました(20051009p01)。■もうちょっとお金を出す準備が初期からありますが、移行措置がないために未だに雀の涙ほどしか請求を受けておりません。ありがたくもタイミング良く行われた二度の容量アップが行動の先延ばしを助けていたりも。■吹き出しにありますが、sakuratan.comはやはり画期的だったのですね。この日記は http://hoehoe.sakuratan.com/ds14050/diary/ でもアクセスできます(Hostヘッダを見て内容を変えたりしてないので)。声に出すときはサンタクロース(ho ho ho)でなく、ほえ~の人になってください。例外は認められません。■最初に「~おります」とか書いたから最後まで気持ち悪い文章になってしまった。「ズッ友」とか言い出したからって距離を置こうとは思ってないよ。


2013年04月21日 (日) 小さい頃、正座をする機会があるごとに「足が揃ってる」と注意されるのが、それとその後の正座が苦痛だった。今ならわかる。かかとを逆ハの字に開いてそこにおしりをのせることができないのは骨格の問題だと。生まれつきなのか初期の悪い正座のせいなのか知らないが、絶対俺に非はない。右足首の可動域が明らかに左足とは違う。できるようになってないからできないのだ。本人にどうしようもないことを無意味に指摘したって追い詰めるだけだ。■フライパンのフタ。いまやほとんど駆逐されたドアノブのごときぽっちが中央にあるだけのものはよくない。使ったあとまだ熱いうちにちゃっとすすいで拭いて片付けることができないから。それだけなんだけど、そうでない常のフタが汚すぎる。あと、つまむために折り曲げた指の関節が金属部分に接触して「熱っ」てことがなくなるだろう。一点でバランスを保持するのは難しすぎる。かまめしどんの頭みたいにわしづかみにしたい。■両手鍋。片手で持てないほど大きくはない両手鍋の片手鍋に対する優位性(存在価値)がわからない。片手鍋がないときしかたなく使うんだけど、必ず両手が塞がってしまうことがいつも問題になる。検索した。やっぱり両手鍋のメリットは大きさとセットだった。あとは取っ手が邪魔にならないこと。ただしこれは、取っ手が着脱式の片手鍋もあるので絶対ではない。■風呂場の吸盤式せっけん台。お誂え向きに使用中の物が2種類あって比較しやすいのだが、吸盤が1個のものと2個のものがある。せっけんをつるりと滑り落としておいて素知らぬふりで元の姿勢に戻ってる憎々しいあいつはどちらでしょうか。■シャワーヘッドを引っ掛けるフック。初めからあるのが縦に2点留め。後付けが1点留め。これに関してはせっけん台と同じには評価できなくて、微妙に角度調整ができる1点留めが悪くない。


2013年04月20日 (土) Reader Storeの検索窓。だいぶ前からはやってる、入力欄の中に薄く「キーワードを入力してください」(キーワードって言われても……なんのこと?)みたいに入力欄の目的を表示する機能。入力欄がすでにフォーカスを持ってる場合を想定せずに初期化してる。勝手に文字(キーワードを入力してください)を追加して検索の邪魔をするな。■アマゾン。購入は 1クリックで済む一方、その注文の詳細を表示するにはパスワードの入力が必要。この非対称をなんでやねんと思ってたのだけど、購入履歴を本人以外に表示する(プライバシー問題)のと、間違って商品を送りつけてしまう(返金すれば済む)のとでは扱いが違って当然だった。そして、こういう非対称が顕在化するのはアマゾンが購入のハードルを限界まで引き下げてるからこそなわけだ。通販だから送料がかかるのは当たり前とか試着はできませんとか言ってしまうと実店舗を食ってしまうことはできないもんね。勝手に枠を作ってその内側だけで何かをしようとしてない。■Reader Store. 購入画面に「メールマガジンを受信する」というチェックボックス(デフォルト:CHECKED)がある。どうしてこのタイミングで選択を迫るのか。すでに購読してるんだけどその場合このチェック/アンチェックはどう働くのか。脳みそが留守なんだろ?お前らの最終目標はなんだ?メールマガジンか?ひっかけとうんざりが客を遇するお前らの態度で、それが目的に適うと思ってんだな?楽天市場(※koboは知らん)と自分らの体制が違うことは理解してるな?わかってたら購入後にオプションを提示するのができる精一杯のはずだ。あまりにばかばかしすぎて怒りが冷めてきた。次は無関心な。■「Reader™ワイヤードモデルお使いの方は」誰に理解させたい言葉だ?ワイヤードなんて lainでしか聞いたことがない。それも wiredと変換して初めて理解できる。■ソート条件も全然洗練されていない。実装が透けて見えるし、どう並ぶのか理解しがたい。初期値が、最近人気が高いもの・昇順。昇順(小さいもの順)ってどっち?逆順で表示したい人いる?新着順に変えてみましょうか。新着順・昇順になりました。日付は昇順にすると過去から並ぶけど、新着順・昇順も入荷した日を基準にして(おそらく)、最初期ラインアップから並びました。全然新しくない。昇順・降順という用語がまず一般人に理解されない。それを理解しても新着とか人気の意味するものが順位(小さい方が上)なのかスコア(大きい方が上)なのか日付なのかが誰にもわからない。逆順が不要(ラベルの選び方がそのようになってる)なのにそれができたところで手間が増えただけ。ましてそんなのはリストの最後尾に移動して頭に向かうだけで得られるものだ。無駄無駄無駄。■トップページに並んでる「入荷リスト」「新着」も理解しがたい。Reader Storeにおける定義を書いてもらうまで(知りたくないけど)違いがわからない。白痴の集団なのか?自分の責任(とそれに付随する権限)で考えられる個人がいないんだろう。まず顔を出せ。(外野の気楽な遠吠え)■.mbbsを何度実行してもサーバーとの通信に失敗して Readerに転送できない(もう一冊は成功した)。.mbbsをもう一度ダウンロードしようとして購入履歴を開いた。いっぱいあったので「未ダウンロードのみ」にチェックを入れたら一冊も残らなかったので、またチェックを外そうと思ったが外れている。チェックボックスをクリックすると即座に検索が実行されるというのに、チェックを「外す」という動作が行えない。チェックや入力欄をそのままにして検索ボタンを押しても結果は 0件のまま。詰みだ(もちろんこの後リロードするんだけど)。■.mbbsっていうのは有効期限の短い使い捨ての切符みたいなファイルみたい。だったらエラーメッセージは通信に失敗したでなく、.mbbsが古いからもう一回ダウンロードして実行しろ、だろう。こういうメッセージって、日本語であっても、びっくりするほど読まれないけどね。ポップアップメッセージを出した時点で負け。自分の父母・祖父母に使ってもらいなさいよ。


2013年04月19日 (金) パワーが従来の2倍になるナノクリスタルを使ったリチウムイオンバッテリーが開発される - GIGAZINE」■パワーっていうと瞬間的なものだと思うんだけど……。電圧?アンペア?どっちもないな、と思いつつ読み進めていって最後でようやく「従来の2倍のエネルギーをバッテリー内に蓄えることが可能になりました。」記事を読ませるなんかのメソッドにまんまとはめられた気分。