[Date Prev] [Date Index] [Date Next]
[Thread Prev] [Thread Index] [Thread Next]

[xyzzy:02713] Re: sorry ()



須田さま,こんにちは。Toy@言葉足らずです。

    Wed, 26 May 1999 20:29:24 +0900 の
    "[xyzzy:02700] Re: sorry ()" について。


言葉足らずですみません。m(_ _)m
長くなりますが一つ一つ説明いたしますのでどうかお許しを。

| > あぁ,xyzzy Q&R ネタ帳の 23 番がぁ。
| 
| なんなのかなぁ?

xyzzy に対する Question & Request を xyzzy_QR.txt にメモってあるのですが,
その23番目が,
「範囲外の値です:1」といわれるのがなんとかなりますか?
というものでした。

| > ということで便乗して 23.3 番を公開しますが,(^ ^;)
| 
| なんなのかなぁ?

で,それと同じ頃,それだったら一行エラーメッセージはステータスバーに追いやれると,
少しスマートではないかな? と思ってメモったのが 23.3 番目でした。
どちらもいずれ提案しようと思っていたものでした。

| > mule を使っているとき undo で行き過ぎたときは,redo なんてカッコいい方法を選ばず,
| > SPC か何かを適当に打ち込んで,undo リング(?)か何かをひっくり返して,
| > 逆向き undo なんていうややスマートでない方法をとってました。
| > xyzzy では 「F12 でリドゥーーー!!!」って自分に言い聞かせてリドゥしてます。(^ ^;)
| 
| わからないなぁー。すみません、もうちょっと、詳しく教えてもらえませんか?

undo をずーっと繰り返していると,行き過ぎてしまうことがよくありました。
# undo をキー割り当てしているからかもしれません
そんなとき mule では undo 以外の何か新しいイベントを与えてやることで,
今のミスまで undo で戻れました。
具体的にはどういうアルゴリズムなのかはわからないのですが,
(a) のように 11 までイベントが来てしまったときに 8 まで戻りたいとします。
そんなとき undo が割り当ててあるキーを押しっぱなしにしてたら,6 まで戻ってしまったと。(b)
そんなとき,新たに 12 というイベントを与えて(c) さらに undo をすると,
多分下記のようになってめでたく 8 まで戻れたのではないかと思います。(d)
# あくまでも推測なのですがこのような動きをしているので…

(a) 1 2 3 4 5 6 7 8 9 10 11
                         ~~
    8 まで戻りたい!
              _ _ _ _ __
(b) 1 2 3 4 5 6 7 8 9 10 11 10 9 8 7 6
                            ~~~~~~~~~~
    本来は上線のように 10 9 8 ... と undo がかかるのですが,
    そのときひっそり下線のように履歴として残ってるのではないか? と(推測)。

(c) 1 2 3 4 5 6 7 8 9 10 11 10 9 8 7 6 12
                                       ~~
    で,12 という新しいイベントを追加。
                                 _ _ _
(d) 1 2 3 4 5 6 7 8 9 10 11 10 9 8 7 6 12 6 7 8
                                          ~~~~~
    また undo をすれば無事 8 に行ける,と。

説明が下手ですみません。伝わりましたでしょうか?

| > C-x C-v のときのミニバッファについてなんですが,(17 番)
| > D:/User/s5087/report.tex をいじっているときに,C-x C-v で
| > "Find other file: D:/User/s5087/"
| > となるんですが,
| > "Find other file: D:/User/s5087/report.tex"
| >                                 ~  ←ここにカーソル
| > ってなっていただけるとおいしいかな,と。
| 
| これはどういうメリットがあるんでしょうか?

| > 違うファイルを読むときは,C-k スタートすれば同じだと思われます。
| 
| 消しやすいということでしょうか?

私の経験上,C-x C-v のコマンドは,
  1. 同じファイルを読み直す
  2. ファイル名を間違えて読み込んでしまったとき間違えたバッファを消す手間を省く
という大きく分けて 2 つの場合に使うことが多いです。みなさまはどうでしょうか?
さらに 2 ならば,これまた次の 3 つの場合が多いのではないでしょうか?
  2-(a) リターンを押すときに間違えて,] キーにさわってしまった。
      たとえば,.xyzzy<RET> といきたかったのを,間違って .xyzzy]<RET>
      となってしまったりする場合
  2-(b) report-c というファイルを開きたくて,めんどくさがって rep<SPC><RET>
      とやったら実は report というファイルがあった場合
  2-(c) 勘違いして同じディレクトリの全く違うファイルを開いてしまった場合
で,1 の場合,ファイル名があるとそのまま <RET>。
    2-(a) の場合,C-e C-h <RET>
    2-(b) の場合,C-e から -c と打つか,<SPC><TAB>などで確認後,
                  適当なファイル名を補完して<RET>
    2-(c) の場合,"C-k で消してから" 適当なファイル名を補完して<RET>
という結果となり,何もないときよりは効率が上がるのではないでしょうか?
# 空論だと思われたらそれまでですが,一応自分の経験に基づいてます


以上です。
言葉足らずですみません。m(_ _)m

---- 
Toy@もばいる
  E-mail : s5087@xxxxxxxxxxxxxxxxxxxxx

Index Home