2006-01-20 (Fri)

* xyzzy の印刷時にヘッダやフッタをカスタマイズして時刻を入れる

この記事の直リンクURL: Permlink | この記事が属するカテゴリ: [xyzzy]

2005-12-20 の「IE の印刷時にヘッダやフッタをカスタマイズして時刻を入れる」では IE の印刷時ヘッダのカスタマイズをしたが、今回はテキストエディタ xyzzy の印刷時ヘッダとフッタのカスタマイズ。

- xyzzy の印刷時ヘッダとフッタのカスタマイズ

xyzzy の上部メニューの ファイル(F) の 印刷(P) の ヘッダ(H) とフッタ(O) に書式指定文字列を記述することでヘッダやフッタをカスタマイズできる。

ヘッダには以下の書式指定文字列を設定。

%F%l

左上にファイルのフルパス。
右上にはとくになし。

フッタには以下の書式指定文字列を設定。

%p / %P Page %l%r%:w, %0d %:m %Y %0h:%0M:%0s

左下には現在のページ数と、総ページ数。
右下には印刷した年月日時分秒と曜日。

- カスタマイズした結果のサンプル

上記設定ではこんな感じに印刷される。

D:/MyDocuments/Report/2006-01-20.txt




                      本文



1 / 64 Page                                    Fri, 20 Jan 2006 10:10:43


2006-01-13 (Fri)

* xyzzy で「不正なwindow-configurationです」エラー

この記事の直リンクURL: Permlink | この記事が属するカテゴリ: [xyzzy]

テキストエディタ xyzzy でバッファを保存しようとしたり、ウィンドウを閉じようとすると「不正なwindow-configurationです」というメッセージが出るようになってしまった。このおかげで xyzzy を終了できない。

Google で不正なwindow-configurationですを検索してもとくに解決に結びつく情報は見つけられなかった。仕方がないので、タスクマネージャからプロセスを kill して xyzzy を再起動したら直った。

何だったんだろう? 再現条件がよくわからないので原因追及ができない。

2005-11-10 (Thu)

* xyzzy/Emacs のバッファとウィンドウの違い

この記事の直リンクURL: Permlink | この記事が属するカテゴリ: [xyzzy]

2005-11-01 の 「xyzzy でバッファを閉じるには CTRL + x k」について反応があった。反応を読んだ結果、私は xyzzy/Emacs のバッファとウィンドウの違いを理解してないことを痛感したので、違いを調べた。

- バッファとウィンドウを混同している私

[MM]51さんのメモ - MM/Memo
http://1470.net/mm/mylist.html/51?date=2005-11-02#m100069
kill-buffer(C-x k)とdelete-window(C-x 0)を混同されているように思われる。

どれを使ったらいいのかよくわからなかった。閉じられればどれでもよかった。今は反省している。という状態でした。あのメモは以下のような思考過程の結果です。

1. 複数ファイルを編集してて、今のファイルの編集が終わったので閉じたい。
2. xyzzy の上部メニューの「ウィンドウ (W)」 に、「現在のウィンドウを閉じる CTRL + x 0」とあったのでやってみた。
3. でも、「カレントウインドウは削除できません」と警告が出て閉じることができない。
4. なんでだろう?
5. CTRL + x k をやってみたら閉じることができた。
6. なんだ、CTRL + x k でいいのね。ChangeLog メモに書いておこう。

要するに、私は xyzzy や Emacs のバッファとウインドウの違いがわかってないということですね。調べよう。

- xyzzy/Emacs のバッファとウインドウの違い

検索したら GNU Emacs の マニュアルがヒット。xyzzy は Emacs 系のエディタだから、Emacs の資料でも役に立つはず。

GNU Emacs Manual - Visiting - ファイルの読み込み
http://flex.ee.uec.ac.jp/texi/emacs-jp/emacs-jp_68.html#SEC8 ...
ファイルの読み込みとは,編集のためにEmacsにファイルの内容を写すことです.Emacsは読み込むファイルそれぞれに対して,新たにバッファを作成します.これからファイルを読み込んだというときには,バッファをつくって,そこに読み込んだという意味です.

あー、なるほど。Emacs におけるバッファとは、ファイルを編集するためにメモリに読み込んだものを指すのか。だからバッファなんだ。じゃあ、ウィンドウはそのバッファの中身を表示してる枠みたいなもの? データベースにおけるビューみたいなイメージかな?

GNU Emacs Manual - Basic Window - Emacsのウィンドウの概念
http://flex.ee.uec.ac.jp/texi/emacs-jp/emacs-jp_94.html#SEC1 ...
複数のウィンドウが表示されているとき,各ウィンドウはそこに表示されているEmacsバッファと結び付いています.1つのバッファが複数のウィンドウで表示されることもあります.そうなっているとき,テキストを変更すると,変更した所を表示していたすべてのウィンドウに変更が現れます.しかし,同一のバッファを表示しているウィンドウは,そのバッファの別の部分を表示することもできます.それは,各ウィンドウは独自のポイントの位置を持っているからです.

常に1つのウィンドウが選択されたウィンドウとなり,そこに表示されているバッファがカレントバッファとなります.

うん、なるほど。わかった。「カレントウインドウは削除できません」って言われる理由も理解できた。カレントウインドウを削除しちゃうとバッファを表示するものがなくなっちゃうので、削除できないって言われるんだ。

- CTRL + F4 でバッファを閉じる

WOMO :: ?xyzzy でバッファを閉じる :: 2005/11/02
http://womo.nconc.net/2005/11/02/close-buffer
Landscape で xyzzy でバッファを閉じるには CTRL + x k という記事がありましたが、私は Ctrl + F4 でバッファが閉じられるようにしてあります。
以下の記述を .xyzzy に書くだけです。

(global-set-key #\C-F4 'close-selected-buffer)

これ、いいですね。私も使ってみます。ありがとうございました。

こういうカスタマイズが簡単にできるってことを忘れてた。xyzzy を ChangeLog メモを書いたり、秀丸レベルのエディタとしてしか使ってないからなあ。もっと活用しよう。エディタはエンジニアの武器だからね。

2005-11-01 (Tue)

* xyzzy でバッファを閉じるには CTRL + x k

この記事の直リンクURL: Permlink | この記事が属するカテゴリ: [xyzzy]

テキストエディタ xyzzy でバッファを閉じるには CTRL + x k を使う。

CTRL + x k を入力すると、ミニバッファに閉じたいバッファの名前入力欄が表示される。デフォルトはカレントのバッファ。バッファ名を入れて enter を押すと閉じることができる。

ミニバッファへの入力なしで閉じる方法は見つけられなかった。分割したウインドウなら CTRL + x 0 で閉じることはできたが、分割してないと「カレントウインドウは削除できません」と警告が出て、閉じることができない。

2005-09-06 (Tue)

* xyzzy で選択範囲 (セレクション) を Google 検索

この記事の直リンクURL: Permlink | この記事が属するカテゴリ: [xyzzy]

テキストエディタ xyzzy で、選択範囲を Google で検索するようにしたい。

いままでは以下のようにして検索していた。

1. xyzzy で検索したい文字列を選択
2. クリップボードにコピー
3. タブブラウザ Sleipnir の検索ボックスに貼り付け
4. Sleipnir の検索ボタンを押す

4 ステップもあって手間がかかりすぎる。私はもう限界だと思った。xyzzy をカスタマイズして楽に検索できるようにしよう。

- xyzzy で選択範囲を Google 検索する

選択範囲を Google で検索したい。要するに文字列を URL エンコードしてブラウザに渡してやればいい。ちなみに、xyzzy では選択範囲をセレクションと呼ぶ。

リファレンスを見ながら自分で書こうかと思ったが、これは誰もが欲しいと思う機能なのできっと先達が作ってるはず。探してみたらあった。

xyzzy の音 - Google 検索
http://hie.s64.xrea.com/xyzzy/note/search.html#search-google
; Google 検索
(defun search-google (&optional str)
  (interactive)
  (unless str
    (setq str (read-string "Google: ")))
  (long-operation
    (let ((url (concat "http://www.google.co.jp/search?hl=ja&lr=lang_ja&num=50&ie=shift_jis&oe=euc-jp&q="
                      (si:www-url-encode str))))
      ;─────────────────────
      ; 1. 標準ブラウザを使う場合
      (shell-execute url t)
      ; 2. browser.dll & browserex.l を使う場合
      ;(bx::navigate url)
      ; 3. www-mode を使う場合
      ;(www-open-url url)
      ; 4. 指定したブラウザを使う場合
      ;(call-process (concat "C:/usr/local/MozillaFirebird/MozillaFirebird.exe " url))
      ;─────────────────────
      )))

; セレクションの文字列を Google 検索
(defun search-google-selection ()
  (interactive)
  (search-google (if (pre-selection-p)
                    (selection-start-end (beg end)
                      (buffer-substring beg end))
                  nil)))
(global-set-key '(#\C-c #\g) 'search-google-selection)

Google に渡すクエリを一部変更。num=50&ie=shift_jis&oe=euc-jp にした。ie=shift_jis を指定しないと文字化けする。

上記を .xyzzy ファイルに追加。そういえば最近は siteinit.l ではなく .xyzzy に追加することが多いな。バイトコンパイルする手間がかかるからな。

文字列を選択して、CTRL + C g を押すと、無事 Sleipnir のタブに Google 検索結果が表示された。やったー。

- xyzzy の右クリックメニューに「Google で検索」を追加

右クリックメニューにも「Google で検索」を追加したい。

カスタマイズ (xyzzy しょぼしょぼすくりぷと)
http://www.afis.to/~start/xyzzy/customize/

上記ページは「マウス右クリックに引用付き貼り付けを設定する」というサンプルを載せている。これを修正すればいい。できた。

; 右クリックメニューに「セレクションの文字列を Google 検索」を追加
(add-hook '*post-startup-hook*
        #'(lambda()
            (add-menu-item *app-popup-menu* nil "選択範囲をGoogle検索 (&G)"
                 'search-google-selection nil)))

じつに快適だ。なんで今までやらなかったんだろうと思うくらい。本当は中ボタンというかホイールクリックで Google 検索したいところだが、今日はもう時間がない。そのうちやろう。

2005-08-18 (Thu)

* xyzzy のバッファを自動保存する Lisp auto-save-buffers を導入

この記事の直リンクURL: Permlink | この記事が属するカテゴリ: [xyzzy]

いちいち保存をするのが煩わしく感じるようになったので、xyzzy 対応の auto-save-buffers を導入。
いままで一段落入力するごとに CTRL + X CTRL + S を押していたので、かなり快適になった。

tips/xyzzyでファイルの自動保存 - Xyzzy Wiki
http://xyzzy.s53.xrea.com/wiki/?tips%2Fxyzzy%A4%C7%A5%D5%A5% ...

私は主にネットワーク上にあるストレージのファイルを編集している。この環境だとデフォルトの保存間隔である0.5秒は短すぎるので5秒に変更。0.5秒だと1.5MB くらいのサイズのファイルを編集していると、引っかかりを感じてしまう。せっかく自動で保存されるんだから、保存の処理は UI とは別のスレッドで動かしてくれるとうれしいな。でも、それを実現するためには xyzzy の深いところを修正する必要があるかな。

・・・と思ったけど ATOK で入力している間もアイドル時間としてカウントしてしまうのね。未確定文字列を入力している間に、5秒経ったとみなされて保存が始まってしまう。仕方がないので30秒に延長。

2005-06-20 (Mon)

* xyzzy のバッファの書き込み禁止を設定・解除する

この記事の直リンクURL: Permlink | この記事が属するカテゴリ: [xyzzy]

xyzzy では CTRL + X CTRL + Q でバッファの書き込み禁止を設定解除できる。トグル動作。

xyzzy がなんらかの理由で異常終了し、さっきまで編集してたファイルを開いて編集しようとしたとき、以下の警告が出て身動きできなくなったときはこれ。

書き込み禁止状態になると、バッファの下部にあるファイル名やモードを表示している黒いバーの部分に % 記号が表示されて書き込み禁止モードになっていることがわかる。でも、% じゃわかりにくいよね。「書き込み禁止」っていう文言を常に出してくれた方がわかりやすいけど、Emacs の伝統なのかな、これ。

書込み禁止バッファです

間違って書き込み禁止にしてしまったときにはちょっとパニックになったりする。解除方法を知らない時は途方に暮れた。xyzzy を終了して再起動しても設定が残ったままになるし。そもそも滅多に使う機能じゃないので、解除方法なんて覚えられない。うろ覚えのまま「CTRL + X Q」なんて Q に CTRL を付けるのを忘れて入力して「解除できないよ!?」と焦ったりとか。冷静に Google で解除方法を探せばいいんだけどね。

2004-06-25 (Fri)

* xyzzy からシェルを使う

この記事の直リンクURL: Permlink | この記事が属するカテゴリ: [xyzzy]

M-x shell でシェルを xyzzy の中に起動できる。すなわち ALT キーを押しながら x を押し、その後 shell と入力して enter を押すと、xyzzy の画面でコマンドプロンプトと対話できるようになる。

当然 ping なども実行できて、結果は xyzzy に出力される。普段テキストを編集するための画面にコマンドの出力がされるのは新鮮な感じ。こんなことを書いてると、emacs を全然使いこなしてないことがバレバレだね。

でも、試しに D:\cygwin\cygwin.bat を起動したらなんだか化け化けになってしまった。一応コマンドは入力できたけど。エスケープシーケンスをうまく扱えないみたいだ。^[ というバイナリ文字列が混入している模様。以下にバイナリの ^[ を ASCII の ^[ に置き換えたものを引用。
h:\>D:\cygwin\cygwin.bat
^[]0;~^G
^[[32msaitou_hiroaki@ws3698 ^[[33m~^[[0m
$

2004-04-13 (Tue)

* xyzzy のリージョンとセレクションの意味と使い方

この記事の直リンクURL: Permlink | この記事が属するカテゴリ: [xyzzy]

- セレクション

要するに選択している範囲のこと。Shift + 矢印キーとか、マウスでドラッグした部分。

- リージョン

「マーク」機能でマークした部分から、カーソルの部分まで領域をリージョンと呼ぶ。CTRL + スペース でマークできるので、そこから現在カーソルがある部分までがリージョン。ここで言うカーソルとはマウスカーソルのことではなく、xyzzy 上に存在する文字挿入位置を示すカーソルのこと。

2004-03-09 (Tue)

* xyzzy インストール時は環境変数の設定を忘れずに

この記事の直リンクURL: Permlink | この記事が属するカテゴリ: [xyzzy]

今まで一度も xyzzy をインストールしたことのない環境に、xyzzy を新たにインストールした。私以外の人も xyzzy を使う可能性があるので、Windows 風キーバインドになる Gates mode をデフォルトで有効にしておこうとしたが、設定が反映されない。

- やったこと

.xyzzy ファイルに
(load-library "Gates")
と書いたが、まったく反映されない。編集(E) メニューのコピー(C) や貼り付け(P) のキーバインドは Ctrl+Insert や Shiftl+Insert のままだ。xyzzy.w2k を削除したり、xyzzy を何度も再起動してみたが反映されない。

もしかして .xyzzy を読んでくれていないのではないかと疑念を抱いたので、試しに
(load-library "GatesChan")
と書いて存在しないライブラリをロードさせようとしたところ、本来ならエラーになるはずなのに何事もなかったように xyzzy が起動する。これはもう設定ファイルを無視しているに違いない。

- そういえば・・・

ここでふっと思い出した。そういえば前に xyzzy をインストールしたとき、環境変数を設定したような気がする・・・。ChangeLog メモを xyzzy で grep し、ヒットした 2004-01-06 の 「* xyzzy: xyzzy + ChangeLog mode インストールメモ」を読み返す。あ、ユーザ環境変数 XYZZYHOME に C:\Program Files\xyzzy を設定してる。これをやってなかったからダメだったのか。設定したらゲイツモードでばっちり動いた。

デフォルトで xyzzy.exe インストールディレクトリの .xyzzy を読み込んでくれれば良かったのにね。

2004-02-03 (Tue)

* xyzzy で日付と時刻を挿入

この記事の直リンクURL: Permlink | この記事が属するカテゴリ: [xyzzy]

自分好みの書式で日付と時刻を挿入できる。以下を .xyzzy か siteinit.l に記述。
(defun insert-my-date-string()
  (interactive)
  (insert (format-date-string "%Y-%m-%d %H:%M:%S")))
(global-set-key '(#\C-x #\t #\d) 'insert-my-date-string)

CTRL + x t d で、
2004-02-03 12:39:43
を挿入できる。

- 参考

xyzzy の音 - 編集
http://hie.3.pro.tok2.com/xyzzy/note/edit.html#insert-date

- おまけ

レイストーム好きなら、以下の書式がいいだろう。
(defun insert-my-raystorm-date-string()
  (interactive)
  (insert (format-date-string "%b. %m, %Y \nAlbion D.U. Earth")))
(global-set-key '(#\C-x #\t #\r) 'insert-my-raystorm-date-string)

実行結果。
Feb. 02, 2004
Albion D.U. Earth
2219年8月4日まで待ってから使おう。

2004-01-21 (Wed)

* 「保存時に行末の空白文字を削除」を実現する Lisp を発見!

この記事の直リンクURL: Permlink | この記事が属するカテゴリ: [xyzzy]

2004-01-10 では結局保存時に適用する方法がわからなかったが、Xyzzy Wiki を見ていたらやりたいことそのものの Lisp を見つけた。早速 .xyzzy に記述して試したところ、問題なく動いた。私の siteinit.l に採用決定。作ってくれた方、ありがとう。

tips/保存時に行末の空白を削除する - Xyzzy Wiki
http://xyzzy.s53.xrea.com/wiki/?tips%2F%CA%DD%C2%B8%BB%FE%A4 ...
;; 保存時に行末の空白を削除する
(add-hook '*before-save-buffer-hook*
          #'(lambda ()
              (unless (and (find-load-path "auto-save-buffers")
                          (boundp 'ed::*auto-save-buffers-p*)
                          ed::*auto-save-buffers-p*
                          buffer-read-only)
                (save-excursion
                  (goto-char (point-min))
                  (replace-buffer "[ \t]+$" "" :regexp t)))
              nil))

2004-01-10 (Sat)

* xyzzy で保存時に行末の空白文字を削除

この記事の直リンクURL: Permlink | この記事が属するカテゴリ: [xyzzy]

やりたいことに近いものがあった。で、これを毎回ファイル保存時に適用するにはどうしたらいいんだろう。hook というのを使えばいいようだけど、Lisp はさっぱりわからない。そのうち調べよう。

削除系 (xyzzy ライブラリィー < しょぼしょぼすくりぷと)
http://www.afis.to/~start/xyzzy/library/kill.html
バッファー全体に
(defun delete-eol-space-buffer (&optional buf)
  (interactive)
  (when buf
     (select-buffer buf))
  (let ((usr-point (point)) )
     (delete-eol-space-region (point-min)(point-max))))

2004-01-08 (Thu)

* xyzzy でよく使う機能とキーバインドのメモ

この記事の直リンクURL: Permlink | この記事が属するカテゴリ: [xyzzy]

- コピー & ペースト

コピー: CTRL + Insert
切り取り: CTRL + Delete
貼り付け: Shift + Insert

- カーソル移動

行頭に移動: CTRL + a
行末に移動: CTRL + e
文書の先頭に移動: ESC Shift + <
文書の末尾に移動: ESC Shift + >

- 削除

カーソルから行末までを削除: CTRL + k

- アンドゥ (Undo、元に戻す、やり直し)、リドゥ (Redo、元に戻さない、やり直しのやり直し)

アンドゥ: CTRL + \ または End
リドゥ: CTRL + _ または F12 または Shift + End

- 文書の保存

保存: CTRL + x CTRL + s

- grep

開いているファイルのみを grep: M-x grep

- 2004年5月14日 追加

次のウインドウにカーソルを移動: CTRL + x o
前のウインドウにカーソルを移動: CTRL + x p

最近使うようになった機能。最近は複数のウインドウを開いて編集することが多くなったのでウインドウを移動するコマンドを使うようになった。ウインドウは、正しくは「バッファ」っていうのかな? scratch などと同列のもの。私はタブを切り替えるような感覚で使ってる。

2004-01-06 (Tue)

* xyzzy で URL ダブルクリック時にブラウザを起動

この記事の直リンクURL: Permlink | この記事が属するカテゴリ: [xyzzy]

Google で xyzzy URL ダブルクリック を検索したところヒット。インストールしたら、ダブルクリックで標準のブラウザを起動できるようになった。素晴らしい。

clickable-urlを導入しよう
http://web.sfc.keio.ac.jp/~t01089ti/xyzzy-20.html

あとは、「URL をクリックで URL 文字列全体を選択状態にする」をなんとかして実現すれば URL 系は満足だな。

2004-01-06 (Tue)

* xyzzy に欲しい機能

この記事の直リンクURL: Permlink | この記事が属するカテゴリ: [xyzzy]

引用付きペースト: > を付加してペーストする。
引用付きコピー: > を付加してコピーする
選択範囲を引用にする: 行頭に > を付加する
保存時に行末の空白文字を自動削除する: 余計なタブや半角スペースを削除する。
URL をクリックで URL 全体を選択状態にする
URL をダブルクリックでブラウザを起動

emacs だから Lisp を書けばいいのかな。

2004-01-06 (Tue)

* xyzzy + ChangeLog mode インストールメモ

この記事の直リンクURL: Permlink | この記事が属するカテゴリ: [xyzzy]

今までは秀丸で ChangeLog メモを取ってたけど、ChangeLog モードが便利そうなので、xyzzy を使ってみることにする。

以下、やったことを列挙しておく。

- xyzzy のパッケージを展開

http://www.jsdlab.co.jp/~kamei/cgi-bin/download.cgi から xyzzy をダウンロードして展開。
C:\Program Files\xyzzy に配置した。Program Files に配置することはあまり推奨されていないようだ。やっぱりスペースが入るし、8.3 形式のファイル名だからかな。でも私は気にしないことにした。

- 環境変数 XYZZYHOME を設定

WindowsXP なら、マイコンピュータのプロパティを開き、「詳細設定」タブの環境変数ボタンから新規追加できる。
今回はユーザ環境変数に 変数名 XYZZYHOME 変数値 C:\Program Files\xyzzy を設定した。

- changelogmemo.l を ~/site-lisp 以下においてバイトコンパイル

M-x byte-compile-file ~/site-lisp/changelogmemo.l と入力。

バイトコンパイルをするための操作方法をもっと詳しく書いておく。
「Alt を押しながら x を押す。
下の小さなテキストボックス(ミニバッファと呼ぶ) に M-x: と表示されたら、byte-compile-file と入力して、 Enter を押す。
ミニバッファの表示が Byte compile file: に変わってファイル名を聞いてくるので、そこにコンパイルしたいファイルのパスを入力する。
ちなみに、初期状態ではミニバッファに c:/ などと入力されているだろうが、それを backspace で消して ~/ と入力して tab キーを押すと環境変数 XYZZYHOME を展開して補完してくれるので使うと楽。」

- 細かい設定

.xyzzyか、siteinit.lに 名前やメールアドレス、アイテム名の補完情報を設定して完了。

- 参考にしたサイト

Google で xyzzy changelog メモ インストール を検索してヒットしたサイト。
たつをさんのページ。インストール手順がばっちり書いてある。
http://nais.to/~yto/clog/2002-12-14.html#2002-12-14-2

Toy's xyzzy memo - FAQ というページ。消滅してしまっていたので WebArchive で。
http://web.archive.org/web/20020930230626/http://www.carabin ...

すべての記事の見出し (全1029件)
全カテゴリの一覧と記事の数
カテゴリごとに記事をまとめ読みできます。記事の表題だけを見たい場合は、すべての記事の見出し (カテゴリ別表示) へ。

直近30日分の記事
2007-04-23 (Mon)
2007-03-07 (Wed)
2007-02-27 (Tue)
2007-01-17 (Wed)
2007-01-15 (Mon)
2007-01-14 (Sun)
2007-01-08 (Mon)
2006-12-01 (Fri)
2006-11-22 (Wed)
2006-11-20 (Mon)
2006-11-19 (Sun)
2006-09-30 (Sat)
2006-08-29 (Tue)
2006-08-04 (Fri)
2006-07-27 (Thu)
2006-07-23 (Sun)
2006-07-17 (Mon)
2006-07-10 (Mon)
2006-07-06 (Thu)
2006-07-03 (Mon)
2006-06-29 (Thu)
2006-06-28 (Wed)
2006-06-27 (Tue)
2006-06-25 (Sun)
2006-06-19 (Mon)
2006-06-18 (Sun)
2006-06-15 (Thu)
2006-06-11 (Sun)
2006-06-01 (Thu)
2006-05-30 (Tue)
プロファイル
斎藤 宏明。エンジニアです。宇都宮市に住んでいます。
リンク
RSS
スポンサードリンク
Powered by
さくらインターネット

© 斎藤 宏明 Saito Hiroaki Gmail Address
Landscape - エンジニアのメモ http://sonic64.com/
Landscape はランドスケープと読みます。
ひらがなだと らんどすけーぷ です。