Удаление определенных столбцов текста в Emacs/XEmacs с помощью клавиатуры
Можно ли удалить определенные столбцы текста (например, определенные номера столбцов) в Emacs/XEmacs, используя только клавиатуру? Я знаю, что с помощью мыши (или клавиш со стрелками) можно выделить прямоугольник текста, но для текстового файла длиной в 1 миллион строк это может занять довольно много времени.
Спасибо!
2 ответа
Вы можете удалить прямоугольник с delete-rectangle
(Cx rd) или kill-rectangle
(Cx rk). Любой из них убьет прямоугольник с углами, определенными точкой и отметкой. kill-rectangle
также сохранит это для того, чтобы дергать с yank-rectangle
,
Если у вас есть sed
или же awk
в вашей системе вы можете удобно использовать C-u M-|
,
Из документации:
M- | запускает команду shell-command-on-region [...]
Выполнить строку COMMAND в нижней оболочке с регионом в качестве ввода. Обычно выводится вывод (если есть) во временный буфер `Shell Command Output'; Приставка arg означает заменить регион на него. Вернуть код выхода команды. [...]
Обратите внимание на префикс arg (C-u
).
Совет: C-x h
установит регион для всего вашего буфера.