選択→文字入力→やり直しで違和感No.03506
colder さん 09/09/01 12:59
 
テキストを選択した後で文字入力を行なった状態でやり直しを行なうと、
入力した文字、選択したテキストの両者が無い状態になり、
もう一回やり直しを行なうと、選択したテキストが復活しますが、
秀丸以外のソフトでは、試した範囲内では、すべて、一回のやり直しで、
選択したテキストが復活します。
秀丸でも一回のやり直しで選択したテキストが復活するようにならないでしょうか。
検討、お願いします。

[ ]
RE:03506 選択→文字入力→やり直しで違和No.03517
秀丸担当 さん 09/09/01 18:02
 

>テキストを選択した後で文字入力を行なった状態でやり直しを行なうと、
>入力した文字、選択したテキストの両者が無い状態になり、
>もう一回やり直しを行なうと、選択したテキストが復活しますが、

確かにそのようになりました。
動作が変わると困る人もいるかもしれないので、慎重に考えたいと思います。
少なくともマクロは従来通りにしないといけないです。

個人的なことですが、1つずつに慣れてしまっています。
また、IMEを介さない直接入力はメモ帳やワードでは連続入力した文字が一気にア
ンドゥされますが、秀丸エディタでは1文字ずつで、個人的には1つずつに慣れ
てしまっています。

[ ]
RE:03517 選択→文字入力→やり直しで違和No.03523
colder さん 09/09/01 22:30
 
>確かにそのようになりました。
>動作が変わると困る人もいるかもしれないので、慎重に考えたいと思います。
>少なくともマクロは従来通りにしないといけないです。

マクロでundoを使うことは個人的には、まずないと思っています。
undo文を書く位なら、直前の編集系文を消します。
マクロを実行する前の編集をやり直すような使い方を想定しているなら、
以下で行なわれた変更で厳密な意味での互換性は既に失われています。
http://www.maruo.co.jp/turukame/3/x03284_.html#3284

ところで、キー操作の記録でやり直しが記録されなくなっています(v6.14で記録され
るのを確認しました。)が、
改版記録に記載がありませんが、意図的なものでしょうか?

>個人的なことですが、1つずつに慣れてしまっています。
>また、IMEを介さない直接入力はメモ帳やワードでは連続入力した文字が一気にア
>ンドゥされますが、秀丸エディタでは1文字ずつで、個人的には1つずつに慣れ
>てしまっています。

こちらについては、秀丸エディタの動作の方が好みです。

[ ]
RE:03523 選択→文字入力→やり直しで違和No.03524
Iranoan さん 09/09/01 23:01
 
 colder さん今日は、Iranoan です。
> マクロでundoを使うことは個人的には、まずないと思っています。
 そうでも無いです。
 私の例ですと「置換をしてみて、その結果、HTML の〜なので取り消し」に
類することをやっています。特に正規表現を使った置換では、これ以外の方法
では、繁雑になるので。
 また公開されているマクロでも、それなりに使われているようです。

> 以下で行なわれた変更で厳密な意味での互換性は既に失われています。
> http://www.maruo.co.jp/turukame/3/x03284_.html#3284
 まさしく、これは「厳密には」ですよね。
 マクロでは、アウトラインの D&D はできませんが、それに対して「範囲選
択して文字に置き換え」はマクロで可能です。

 こういったことから、マクロの互換性は維持すべきだと思います。
 ##ソフトウェアの提供側は、ユーザがどのように使っているか解りませんし。

 ただし、実際の編集中は、colder さんの仰るように、一回のアンドゥで元
に戻ったほうが自然な印象が有ります。
 ###今は、プログラムの動きとして違和感がありませんが...。


> ところで、キー操作の記録でやり直しが記録されなくなっています(v6.14で記録され
> るのを確認しました。)が、
 確かにできませんね。これまで含めて互換性を考えると、余計に困難な気も
しますが(^^;.....。

[ ]
RE:03524 選択→文字入力→やり直しで違和No.03528
colder さん 09/09/02 00:03
 
>> マクロでundoを使うことは個人的には、まずないと思っています。
> そうでも無いです。
> 私の例ですと「置換をしてみて、その結果、HTML の〜なので取り消し」に
>類することをやっています。特に正規表現を使った置換では、これ以外の方法
>では、繁雑になるので。
> また公開されているマクロでも、それなりに使われているようです。

そういう使い方を考えなかったわけではないですが、
文字を選択して文字入力(又はペースト)した後のやり直し以外では影響はないのであ
えて無視していました。(^^)

[ ]
RE:03528 選択→文字入力→やり直しで違和No.03539
秀丸担当 さん 09/09/02 12:08
 

>マクロでundoを使うことは個人的には、まずないと思っています。
>undo文を書く位なら、直前の編集系文を消します。
>マクロを実行する前の編集をやり直すような使い方を想定しているなら、
>以下で行なわれた変更で厳密な意味での互換性は既に失われています。

アウトライン解析の枠のドラッグ&ドロップは確かに厳密には互換は無いですが、
相当するマクロ文が無いので、あまり問題ではないと思います。
マクロで編集したことはマクロでundoできないと互換性の問題はあると思います。

例:
  //(編集)
  // :
  question "これでいいですか?";
  if( result == no ) {
    //(undo何回か)
    // :
  }

>ところで、キー操作の記録でやり直しが記録されなくなっています(v6.14で記録され
>るのを確認しました。)が、
>改版記録に記載がありませんが、意図的なものでしょうか?


確認してみたところ2つ問題を見つけました。
1つは、連続入力後のやり直しで、記録内容と実際のやり直しで食い違いが起き
ていました。
  insert "a";
  insert "b";
  insert "c";
  undo;
という操作を行ったとき、実際に記録されるのは
  insert "abc";
  undo;
になります。記録中は"c"だけが消えるのに対して再生では"abc"が消えます。
これは秀丸エディタV1.xxの頃からずっと起きていた問題のようです。
何らかの対策が必要だと思いますが、これをうまいことするのは結構複雑になっ
てしまうと思います。
今まで報告が無かったことからすると使われていることがほとんど無いのかもし
れません。
安易な対策ですが、こういうケースになる場合はやり直しを禁止するようにして
しまおうかと思います。
β10でそのようにしてみようと思います。

もう一つは、記録したものを「キー操作の保存」をすると保存されていませんで
した。
これはV7.xxから起きていたようでした。
こちらはβ10で修正させていただきます。

[ ]