最下行の行コピー動作についてNo.34893
yuru さん 16/03/01 00:49
 
いつもお世話になっています。
掲題の件でご報告と要望をさせてください。

私の環境では動作設定で「選択なしでのコピーは行コピーにする」をONにして、行コ
ピーをよく利用しています。

しかしながら、最下行(つまりは改行が無い行)での行コピー → 貼り付けでは、改行
がコピーされないままに行頭に貼り付けがされるため、期待とは違った貼り付け結果
となってしまいます。

具体的には以下のとおりです。

-----------
例)
abc
def
ghi  ←最下行を行コピー

■期待される結果
abc
def
ghi
ghi  ←貼り付け実行数分、行コピーした行が複製される

■実際
abc
def
ghighi  ←元の ghi の直前に ghi が挿入される

-----------
上記の期待動作を実現できるようにしていただけないでしょうか。
ご検討いただけると幸いです。

[ ]
RE:34893 最下行の行コピー動作についてNo.34894
秀丸担当 さん 16/03/01 10:03
 

範囲選択していないときのコピーは、通常のキー割り当て可能なコマンドの「行
をコピー」でも同じで、このコマンドは最後の行は改行を入れない仕様になって
います。
改行を入れた方が便利なことはあると思いますが、存在するテキストとは違う内
容をコピーすることになるので、仕様として変えてしまっていいかは微妙なとこ
ろです。
なんとかする方法として、マクロを使う方法があります。

例えば以下のマクロをCtrl+Cなどに割り当てておくといいと思います。

if(selecting==false){
  golinetop2;
  copyline;
  if(lineno==linecount2){
    addclipboard "\n";
  }
  endmacro;
}
copy;

マクロは、マクロファイル用のフォルダに拡張子.macで保存します。
マクロファイル用のフォルダは[その他]→[動作環境]→[環境]で、あらかじめわ
かりやすい場所に指定されることをお勧めします。
[マクロ]→[マクロ登録...]で登録しておくと、登録したマクロを[その他]→
[キー割り当て...]で割り当てができます。

[ ]
RE:34894 最下行の行コピー動作についてNo.34895
yuru さん 16/03/01 14:10
 
ご返答ありがとうございます!

マクロで実現する手もあるんですね。勉強になりました。
早速試してみたいと思います。

[ ]