mieki256's diary



2004/09/17(金) [n年前の日記]

#5 [prog] begin〜end、do〜end

xyzzy上で、Rubyの勉強をしていて、イライラしてきた。end がどこと対応してるか把握しづらい。()や{}なら、xyzzy上で対応してる括弧を強調表示してくれるので、どこからどこまでがブロック(ていうの?)なのか把握しやすいのですが。それに比べると、endは見難い。何かいい手は無いかしら。

検索してたら関連記事を見かけた :

_Being a end-hater
_ツールの効用
_endのユーザビリティ
_だから「ツールの効用」と言ってみたんです
_endのユーザビリティ(2)
_ツールがなきゃ Ruby は書けないのか?
_ruby-mode.el
_Tools for Ruby
把握しづらいと思ってるのは、自分だけじゃなかったらしい。ホッとした。

C-M-f/C-M-b とやらで緩和されるところもあるらしいけど、xyzzy の ruby-mode ではそれらしい動作はせず。

Rubyの父の日記にtipsが。
 ESC C-a		ruby-beginning-of-defun
 ESC C-e		ruby-end-of-defun
 ESC C-p		ruby-beginning-of-block
 ESC C-n		ruby-end-of-block
 ESC C-f		ruby-forward-sexp
 ESC C-b		ruby-backward-sexp
emacsならこういう関数があるらしい。xyzzy の ruby-mode.l の中を覗いてみたけど、それらしい表記部分はないように見える。 *1

vim で打ってる人も多いらしい。ブロックの認識に関して、何かアドバンテージがあるのだろうか。 *2

RDEもインストールしてあったので試してみた :

_RDE(Ruby Development Environment)

Alt+Up、Alt+Downで、同じインデントの行にカーソル移動できる模様。そこそこ便利。ということは、xyzzyで打ち込んで、わからなくなったらRDEで開きなおして、位置を確認して、xyzzyに戻ってまた打ち込んで、とやっていけば… <ドアホウ。

要するに :

自分の環境で、改善を図るとすれば、選択肢は以下の通り。
Meadowを導入して、ruby-mode.el を使う。
Meadowは、使える状態にするまでの設定がかなり面倒。あまり気が進まない。
ruby-mode.el(emacs上で使用) 中の関数を、ruby-mode.l(xyzzy上で使用)に移植する。
lisp、わからんです。「Rubyを勉強するには、まずlispを習得せねばならない」という図式が成立してしまうのも、なんだか妙な話。
RDEに乗り換える。
emacs系キーバインドに慣れてしまってるので、ゲイツ仕様のキーバインドでエディタを操るのはストレスが。
vimを導入する。
メリットが不明。
Rubyの勉強自体をやめる。
ちょっとだけとはいえ、class の作り方にもせっかく慣れてきたところなのに… (つД`)
ということで結論としては、オブジェクト指向の真っ当な表記ができて、ウザったい「end」とは無縁の、Python を勉強すべしということに。<なんでやねん。 *3

まあ、もう少し悶々としてみます。耐えられなくなったら、その時、上記のどれかで対策することにしやう。

ちなみに :

Windows文化にしか触れてない人ならRDEで問題ないし。UNIX文化どっぷりの人がWindows上でどうにかするならMeadowで問題ないし。いや、cygwin上でemacs使うのもアリでせうか。

自分の場合、
  • 日記書きもプログラム書きもxyzzy上で作業してるので、できればそこから離れたくない。
  • そのくせlispはわからない。
  • 何故か、emacs系キーバインドに慣れてしまってる。
という中途半端状態であるが故に困ってるだけの話。

*1: 名前が変わってるだけで、同等部分があったりするのかしらん。
*2: それとも利用者の脳のキャッシュが多いだけか。
*3: ウザったいend云々は冗談ですよ。このへんはエディタの問題だと判ってるつもりですし。

以上です。

過去ログ表示

Prev - 2004/09 - Next
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

カテゴリで表示

検索機能は Namazu for hns で提供されています。(詳細指定/ヘルプ


注意: 現在使用の日記自動生成システムは Version 2.19.6 です。
公開されている日記自動生成システムは Version 2.19.5 です。

Powered by hns-2.19.6, HyperNikkiSystem Project