emacs: Orgmode, как составить список из блока строк - PullRequest
13 голосов
/ 12 февраля 2010

Есть ли способ скрыть такой блок строк

line1  
line2 
linen

в

1. line1
2. line2
n. linen

Использование Emacs Режим org

Ответы [ 4 ]

29 голосов
/ 03 октября 2010

самый короткий способ, который я знаю: выделите строки, включая их символ новой строки,

line1
line2
line3

Затем выполните M-x org-ctrl-c-minus (нажмите C-c -), и вы получите

- line1  
- line2 
- line3

Затем запустите M-x org-shiftright (нажмите <S-right>) дважды, и вы получите желаемый

1. line1  
2. line2 
3. line3
13 голосов
/ 12 февраля 2010

не знаю, есть ли прямой путь, пока не слышал об этом. Но один из подходов заключается в использовании string-rectangle (C-x r t) для предварительного добавления 1. ко всем строкам, а затем нажмите C-c C-c для обновления нумерации.

Для string-rectangle вы бы поставили точку и отметили следующим образом:

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

После M-x: string-rectangle: 1. вы получите:

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

Нажав C-c C-c, вы получите правильную нумерацию!

Проще, потому что это дает вам визуальную обратную связь, это включить CUA-mode и использовать C-return для создания выделения прямоугольника, тогда вы можете начать печатать на всех линиях параллельно. Смотрите также это видео на YouTube.

2 голосов
/ 09 сентября 2016

Нашел это на emacsworld.blogspot.com (я сделал несколько незначительных правок):

В Emacs 24.1 файл NEWS имел это новое дополнение к командам прямоугольника.

** Новая команда `C-x r N '(` rectangle-number-lines') нумерует строки в текущем прямоугольнике. С префиксным аргументом, это запрашивает число для подсчета и для строки формата.

Теперь вы можете легко нумеровать строки или списки без использования макроса или дополнительных функций elisp. Выделите вертикальную область текста (может помочь режим переходной пометки) шириной в 1 символ, а затем нажмите C-x r N и все. Emacs нумерует строки.

Если вы используете префиксную команду Cu (например, Cu Cx r N), вам будет предложено ввести начальную цифру и строку формата, чтобы вы могли начать с произвольного числа и указать точку, или точку, или что угодно, чтобы предшествовать или следовать за номером.

1 голос
/ 11 июля 2015

См. Также org-toggle-item для преобразования в обычный или нумерованный список.

...