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

[xyzzy:08419] kill-line



こんばんは、塩野@遊び人です。

デフォルトの kill-line がイマイチ?なので、以下のようにしてみまし
た。既に、あるのかも知れませんが…
----
(setq kill-whole-line t)
(defun kill-line (&optional lines)
  (interactive "*p")
  (kill-region (point)
	       (progn
		 (if lines
		     (forward-virtual-line lines)
;		   (if (eobp)
;		       (signal 'end-of-buffer nil))
		   (if (or (looking-at "[ \t]*$") (and kill-whole-line (bolp)))
		       (forward-virtual-line 1)
		     (end-of-virtual-line)))
		   (point))))
----
これで、kill-whole-line を nil にしておけばほぼ?従来通ですし、t
にしておけば、行の先頭で C-k すると、1行丸ごと消してくれます。
また、その行に 空白/TABしかない場合は、kill-whole-line が nil で
も1行丸ごと消すようになります。

上野2つのコメント部分は end-of-buffer のときにエラーメッセージ
を出そうと思ったのですが、良くわからなかったので…(^^;;;)
--
                             ∧_∧
                            ミ^.^ミ E-Mail: jun@xxxxxxxxxxxxxxxx
・ナガオのドライブの法則
 車でラジオを聞いていると、ニュース、スポーツ、天気予報などを聞きたい
 ときに、必ずトンネルに入る。

Index Home