Выбор текста в терминале без использования мыши

Мы говорили об этой проблеме на саммите разработчиков Ubuntu. Мы начали страницу wiki, чтобы отслеживать эти усилия для тех, кто хочет помочь.

1
задан 31 May 2013 в 10:09

4 ответа

Если вы используете одну из оболочек, которая понимает ключи emacs (bash, csh и т. д.), вы можете скопировать текущую команду:

control-A перенесет вас в начало линия. control-K убьет всю строку, которую вы только что ввели. control-Y вернет текст назад.

Затем вы можете control-Y вернуть текст обратно, чтобы вставить текст обратно в качестве ввода в редактор командной строки оболочки.

См. man bash, а затем, когда он появится, type /emacs, а затем пару n (далее), чтобы переместить вас в раздел READLINE.

13
ответ дан 24 May 2018 в 21:35
  • 1
    Я знал это, но хочу вставить за пределы терминала. Отредактировано для уточнения. – Strapakowsky 31 May 2013 в 10:09
  • 2
    control-U может вырезать команду с ее конца напрямую – vstepaniuk 14 February 2018 в 22:47

Ближайшим, о котором я могу думать, является ctrl + u, ctrl + y. Это будет удалить от проклятия до начала строки, а затем вставить из буфера чтения. Однако это не совсем то же самое, что и в буфере обмена, но вы можете вставлять внутри оболочки, если это то, что вам нужно.

6
ответ дан 24 May 2018 в 21:35
  • 1
    Я знал это, но хочу вставить за пределы терминала. Отредактировано для уточнения. – Strapakowsky 31 May 2013 в 10:10

Существует программа, называемая экраном. Он создает текстовую оконную систему, которая позволяет вам переключаться между несколькими экземплярами. Но это также позволяет вам выбирать текст.

sudo apt-get install screen

Эта команда устанавливает его.

Затем введите screen

Вы используете ctr-a для запуска последовательность команд. Затем нажмите esc, и ваш курсор будет двигаться в любом направлении. Нажмите enter, чтобы начать выбор текста, перейдите к конечной точке, нажмите клавишу ввода еще раз. Это будет скопировано в буфер.

Затем ctr-a, а затем} вставьте

Подробнее о других командах здесь http://www.kuro5hin.org/story/2004/3 / 9/16838/14935

5
ответ дан 24 May 2018 в 21:35
  • 1
    Хорошее предложение, но мне не нравится screen по разным причинам, поэтому предположим, что обычный терминал Ubuntu. Отредактировал мой вопрос для разъяснения. – Strapakowsky 31 May 2013 в 10:11
  • 2
    Это должно быть отмечено как правильный ответ IMHO. – eddiewould 19 January 2016 в 11:15

Если вы находитесь внутри vim, вы можете визуально выбрать одну или несколько строк с помощью Shift + v, а затем использовать привязку, например. yy, чтобы передать выбор в xclip.

Добавить привязку к вашему vimrc:

vnoremap yy :w !xclip -selection clipboard<CR><CR>

Для этого необходимо установить xclip , он находится в репозиторий aptitude Debian / Ubuntu.

xclip хранит stdin, а опция -selection clipboard также выталкивает stdin в системный буфер обмена.

Таким образом, вы также можете использовать xclip в общем случае с терминала, например, чтобы скопировать весь файл в системный буфер обмена:

cat myfile | xclip -selection clipboard

Если вы также можете создать псевдоним, например:

alias cb="xclip -selection clipboard" 
0
ответ дан 24 May 2018 в 21:35

Другие вопросы по тегам:

Похожие вопросы: