Linux: Копирование / вставка в TTY

17975
timn

Я ищу способ скопировать и вставить в TTY. У меня есть только тачпад, и использовать его с gpmболью. Единственная возможность, о которой я могу подумать, - это использовать «screen», но даже после переназначения Ctrl-A на «` »это все еще неудобно и медленно.
Есть ли более удобные подходы?

7
Интересный вопрос. GPM существует уже давно, и я не слышал много жалоб, поэтому я немного сомневаюсь в том, чтобы найти хорошую альтернативу ... dmckee 14 лет назад 1
gpm отлично работает, но он недостаточно гибок для моих нужд. Навигация с помощью клавиатуры намного быстрее, чем с помощью мыши. Поэтому я также предпочитаю VIM вместо графических редакторов. Таким образом, привязка клавиш в стиле VIM для TTY может улучшить навигацию. timn 14 лет назад 0
ИМХО после тестирования я бы порекомендовал использовать screen для copy-paste. Он поддерживает все консольные приложения, поэтому вы можете копировать и вставлять с помощью lynx / links. naugtur 13 лет назад 0

6 ответов на вопрос

6
Lee B

Если вам не нравится экран или gpm, ваши альтернативы весьма ограничены. Другие варианты, которые я могу придумать:

  1. Запустите терминалы под X, возможно, используя диспетчер окон для минималистского, консольного вида.

  2. Запустите * BSD вместо Linux, что позволит вам использовать sysmouse вместо gpm. Я слышал, что это лучше, и мой ограниченный опыт работы с BSD позволяет предположить, что это может быть лучше, но я не знаю, лучше ли это в области поддержки буфера обмена. Похоже, вам больше всего не нравится ваш трекпад, который, вероятно, невозможно исправить без замены.

  3. Используйте каналы, именованные каналы, рабочие файлы и т. Д. Например, большинство редакторов Unix позволяют обрабатывать выделенный текст с помощью обычных сценариев командной строки, которые можно настроить, например, для сохранения выделения в ~ / .clipboard. Выполнение команд для ввода текста (cat ~ / .clipboard) должно быть еще проще.

  4. Используйте редактор, который поддерживает несколько файлов и копирует / вставляет их. я уверен, что и vim, и emacs тоже.

1) У X-сервера есть несколько недостатков, которые мешают мне эффективно работать с ним. Во-первых, странно реагирует клавиатура гораздо медленнее, чем в кадровом буфере. Это действительно раздражает, потому что прокрутка в документе (VIM) в URxvt не такая быстрая, как в VIM, запущенном в TTY. Следующая проблема - производительность. Хотя я использую KMS и диспетчер плиточных окон (i3), X-Server не запускается сразу. Ни один не делает приложений. Даже небольшие приложения, такие как URxvt, запускаются в течение нескольких секунд. timn 14 лет назад 0
То, что также беспокоит меня, это раздувание. X.org - это огромный кусок сложного кода. Поскольку я не геймер, и мне не приходится обслуживать много удаленных рабочих столов, лично мне абсолютно не нужна прямая визуализация, перенаправление X и т. Д. На самом деле, фреймбуфер предлагает все, что мне нужно для работы. Только количество доступных приложений немного ограничено. :) 2) Это не решило бы мою проблему, так как я хочу избавиться от мыши. timn 14 лет назад 0
3) Да, это то, чем я сейчас занимаюсь, когда хочу перейти по ссылке в текстовом документе в VIM, но, честно говоря, скопировав ссылку в буфер с помощью «yy», затем набрав «: tabnew url», а затем « p "для вставки и окончательного" w3m $ ((cat url)) "на оболочке не так удобен, как URxvt с" кликабельными "ссылками. timn 14 лет назад 0
4
Natim

Вы можете использовать Ctrl+, yчтобы вставить. Для копирования это зависит от того, что вы хотите скопировать. Если это по подсказке: Ctrl+ uвырезать с начала, Ctrl+ kвырезать до конца.

Благодарю. Эти привязки клавиш действительно полезны. К сожалению, я могу использовать их только когда я работаю над оболочкой, но не в текстовых браузерах или других консольных инструментах. timn 14 лет назад 0
1
xenoterracide

в зависимости от того, что вы пытаетесь скопировать и вставить ... bash имеет режим vi, в котором вы можете редактировать свои команды более похожим на vi способом, чем emacs (bash по умолчанию) (zsh имеет режим vim). положив set -o vi в ~ / .bashrc, включите его.

Ницца! Поскольку я также являюсь пользователем VIM, привязки клавиш, подобные VIM, пригодятся. На самом деле, одна небольшая проблема сохраняется: иногда есть сайты, где URL-адреса не гиперссылки, а в виде простого текста. Если я захожу на такие сайты в w3m, мне придется вручную скопировать эту ссылку, чтобы перейти к ней. Другой пример - VIM: если я просматриваю документ, содержащий URL-адреса, невозможно просто «щелкнуть» по ним (как в URxvt). И здесь я должен их вручную скопировать. Это только два приложения, глобальная поддержка буфера обмена может быть полезной. Есть идеи? timn 14 лет назад 0
1
user203154

tmuxпохож screenи дает вам возможность копировать-вставить.

dvtm можно копировать / вставлять с помощью мыши.

0
xerostomus

Try this:

ls $(xsel -o --display :0) 

If there is "wa*" in the clipboard it will produce this in any TTY terminal:

$ ls -l $(xsel -o --display :0) -rwxr-xr-x 1 root root 1254 Jan 30 11:44 wav_to_mp3.sh $ 

Maybe it can be made even easier via bash aliases. Anyway I solved that finally this way:

1) copy text into clipboard in TTY7 - GUI 2) then I switch into say TTY1 and I write command: expandclipboard.sh youtube-dl cb 3) the script expands the command and inserts the content of the clipboard at the place of cb and runs is.

the code of the script is:

 #!/bin/bash var1=$1 if [ "$var1" = "cb" ]; then var1=$(xsel -o --display :0) fi var2=$2 if [ "$var2" = "cb" ]; then var2=$(xsel -o --display :0) fi var3=$3 if [ "$var3" = "cb" ]; then var3=$(xsel -o --display :0) fi var4=$4 if [ "$var4" = "cb" ]; then var4=$(xsel -o --display :0) fi var5=$5 if [ "$var5" = "cb" ]; then var5=$(xsel -o --display :0) fi var6=$6 if [ "$var6" = "cb" ]; then var6=$(xsel -o --display :0) fi var7=$7 if [ "$var7" = "cb" ]; then var7=$(xsel -o --display :0) fi var8=$8 if [ "$var8" = "cb" ]; then var8=$(xsel -o --display :0) fi echo $var1 $var2 $var3 $var4 $var5 $var6 $var7 $var8 $var1 $var2 $var3 $var4 $var5 $var6 $var7 $var8 

I know it is immensely primitive, but I am lazy to pretend that I am any cleverer than this script. :-)

-1
Francisco Manuel Garca Botella

Вы можете подключиться к другому компьютеру по SSH, это опция =).

Добро пожаловать в Superuser. Пожалуйста, возьмите тур на https://superuser.com/Tour, чтобы получить максимальную отдачу от этого сайта. SDsolar 6 лет назад 1
Если после прохождения [tour] (/ tour) вы все еще действительно считаете, что это правильный и полезный ответ, пожалуйста, [отредактируйте] его, чтобы объяснить, как он отвечает на вопрос. Не отвечайте в комментариях; [отредактируйте] ваш ответ, чтобы сделать его более понятным и полным. Scott 6 лет назад 0

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