help-gnu-emacs
[Top][All Lists]
Advanced

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

Re: non-continuous selection?


From: lakerhy
Subject: Re: non-continuous selection?
Date: Sun, 1 Mar 2009 09:14:10 -0800 (PST)
User-agent: G2/1.0

On Mar 1, 3:31 pm, Marc Tfardy <address@hidden> wrote:
> lakerhy schrieb:
>  > is there any method to get a non-continous selection?
>  >
>  > for example, if the text is as following:
>  >
>  > 123
>  > 456
>  > 789
>  >
>  > I want to select 1 5 9 which is not continous or in a rectangle. How
>  > this could be done?
>
> Do you want select "1", then "5" and then "9" and then paste all
> together at one shot "159"? This small and simple function do this:
>
> (defun insert-collected-kill-ring (count)
>    "Collect COUNT items from kill-ring and insert into buffer."
>    (interactive "p")
>    (if (>= (length kill-ring) count)
>        (progn
>          (let ((n (- count 1))
>                (str ""))
>            (while (>= n 0)
>              (setq str (concat str (substring-no-properties (nth n
> kill-ring))))
>              (setq n (1- n)))
>            (insert str)))
>      (error "No enough items in kill-ring")))
>
> You must select n piece of text, for each one do "copy" (M-w) and then
> call insert-collected-kill-ring with numeric argument. For your example:
> C-u 3 M-x insert-collected-kill-ring.
>
> Please note that this function inserts oldest first, but this is often
> what one expect so you get "159" and not "951".
>
> HTH
>
> regards
> Marc

Thanks, this ring collection function do help at certain
circumstances. But most of time, I would like to kill the non-
continous at one stroke rather than one by one, just like the utility
provided by ctrl in Windows.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]