Для удаления первых n строк, GNU sed может использоваться. Например, если n = 2
sed -n '1,2!p' input-file
!
средний "исключают этот интервал". Как можно предположить, более сложный результат может быть получен, например
sed -n '3,5p;7p'
это покажет строку 3,4,5,7. Больше питания прибывает из использования регулярных выражений вместо адресов.
Ограничение - то, что числа строк должны быть известны заранее.
Это не выделяет выбор, но иначе я думаю, что это хорошо работает.
Попытайтесь работать
$ bind -p | grep copy-region-as-kill
удостоверяться это C-x C-r
на самом деле работавший.
Это должно сказать:
"\ew": copy-region-as-kill
После этого это должно хорошо работать.
Пример:
$ abc<C-Spc><C-a><M-w> def <C-y>
дает мне
$ abc def abc
Если Вы когда-нибудь хотите знать где mark
просто сделайте C-x
C-x
.
Пример:
$ <C-Spc>abc<C-x><C-x>
отложит курсор туда, где Вы устанавливаете метку (запуск строки).
Кроме того, я не думаю, что необходимо добавить set-mark
привязка. Я не сделал.
$ bind -p | grep set-mark
"\C-@": set-mark
"\e ": set-mark
# vi-set-mark (not bound)
(обратите внимание, что большинство терминалов отправляет C-@
когда C-Spc
нажимается. Я предполагаю, что Ваш делает также.)
Если все это перестало работать:
emacs -nw
на том же терминале?Я также связываю C-w для уничтожать-региона. Здесь мой .inputrc:
# See http://lists.gnu.org/archive/html/bug-bash/2009-03/msg00033.html set bind-tty-special-chars off # Define my favorite Emacs key bindings. "\C-@": set-mark "\C-w": kill-region "\M-w": copy-region-as-kill "\M-/" dabbrev-expand
\e
или\M-
. См. readline init синтаксис файла. – Mikel 25.04.2011, 00:37