Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

emacs: Orgmode, how to make a list from a block of lines

Tags:

Is there a way to covert such block of lines

line1  
line2 
linen

into

1. line1
2. line2
n. linen

Using Emacs org mode

like image 692
Oleg Tarasenko Avatar asked Feb 12 '10 09:02

Oleg Tarasenko


2 Answers

the shortest way I know of is: highlight the lines, including their newline character,

line1
line2
line3

Then execute M-x org-ctrl-c-minus (press C-c -) and you will get

- line1  
- line2 
- line3

Then run M-x org-shiftright (press <S-right>) twice and you get the desired

1. line1  
2. line2 
3. line3
like image 119
gregor Avatar answered Oct 21 '22 02:10

gregor


don't know if there is a direct way, haven't heard of it yet at least. But one approach would be to use string-rectangle (C-x r t) to prepand 1. to all lines and then hit C-c C-c to update the numbering.

For string-rectangle you would put point and mark the following way:

v---mark
line1 with some text
line2 with more text
<---point

After M-x: string-rectangle: 1. you will get:

1. line1 with some text
1. line2 with more text

Hitting C-c C-c will give you the correct numbering!

Easier because it gives you visual feedback is to enable CUA-mode and use C-return to create a rectangle selection, then you can start typing on all lines in parallel. See also this video on youtube.

like image 39
danielpoe Avatar answered Oct 21 '22 02:10

danielpoe