Копировать (только копировать, а не вырезать) в нано?

52

Мне нужно скопировать текст в Nano, поэтому я искал с помощью Google и нашел здесь несколько постов на Stack Exchange и других сайтах, на которых ОП спрашивает: «Как я могу скопировать?» и люди обычно отвечают «Вы можете использовать ctrl+ K». Человек спрашивает, как копировать, и ему говорят, как вырезать.

Другие ответы упоминают alt+, 6но в моем тестировании это не работает.

Нет ли возможности скопировать текст в Nano? Есть ли обходной путь?

JohnDoea
источник
2
Какая у вас раскладка клавиатуры? И Alt-6 (ака M-6) и Alt- ^ (ака M-^) работают на меня.
SteelDriver
Я использую англо-ивритскую клавиатуру от Logitech, которую я купил несколько лет назад. Никогда не было проблем.
JohnDoea

Ответы:

83
  1. Поместите курсор в начало символа, из которого вы хотите скопировать. Нажмите Alt+ Shift+, Aчтобы установить отметку. (В качестве альтернативы установите отметку с помощью Ctrl+ 6)

  2. Используйте клавиши со стрелками, чтобы выделить текст для копирования. выделить с нано-изображения

  3. Используйте Alt+ Shift+ 6для копирования (или Alt+ 6)

  4. Перейдите к месту, которое вы хотите вставить. Выпуск пасты с Ctrl+U

    вставить изображение

Где ссылка на эти сочетания клавиш

Все они определены в документации, к которой вы можете получить доступ с Ctrl+ Gв любой момент. Следует отметить , что ведущие ^стенды для Ctrlи Mдля Altв документации, так как это традиционный способ Unix определения мета - символов. Строки из документации:

^^ (MA) Пометить текст, начиная с позиции курсора

а также

M- ^ (M-6) Скопировать текущую строку и сохранить ее в буфере вырезания

Сергей Колодяжный
источник
Удивительно. Но как ты делаешь "alt" на яблочном макинтоше?
Дарт Egregious
4
@ user973810 В прошлый раз, когда я проверял, все ноутбуки и настольные компьютеры Apple имеют клавишу Alt. Если вы говорите о Macintosh еще в далеком 1998 году или около того, хорошо. , , Я не знаком с ними и могу вам помочь. Наверное, выучите редактор VI - это гораздо лучше, чем нано
Сергей Колодяжный
Нет ты ошибаешься. Там есть функция, управление, опция и команда. Никакого "альта".
Дарт Egregious
3
Посмотрите на изображение Опция на Macs действует как клавиша Atl
Сергей Колодяжный
5
@ user973810 Если вы внимательно посмотрите на ключ опции, вы можете заметить, что на нем также написано alt. nedbatchelder.com/pix/mackeyboard.jpg
TheWanderer
28

Обходной путь: обрежьте, затем обрежьте и снова обрежьте в том месте, где вы хотите скопировать текст.

unicorns
rainbows

line4

Я Ctrl+K unicorns

rainbows

line4

Я необрезанный Ctrl+U

unicorns
rainbows

line4

Я перемещаю курсор до конца и снова Ctrl+U

unicorns
rainbows

line4
unicorns
Занна
источник
2
Хороший обходной путь, +1
Сергей Колодяжный
5

Да, копирование текста в нано немного странно и несколько запутанно из-за противоречивых сообщений о веб-сайтах и ​​отсутствия ясности (или здравого смысла ...) как в том, как это было реализовано (ИМХО), так и в официальных документах ...

Согласно документации:

4.3 Cutbuffer

Текст можно вырезать из файла, целую строку за раз, с помощью команды «Вырезать текст» (связывание ключей по умолчанию: ^ K). Линия разреза сохраняется в буфере резки. Последовательные штрихи ^ K добавят каждую строку вырезания в этот буфер, но ^ K после любого другого нажатия клавиши перезапишет весь буфер вырезания.

Содержимое вырезанного буфера можно вставить обратно в файл с помощью команды «Uncut Text» (привязка ключа по умолчанию: ^ U).

Строка текста может быть скопирована в буфер обрезки (без обрезки) с помощью команды «Копировать текст» (связывание ключей по умолчанию: M-6).

Поскольку в основном вы используете CTRL+ Kдля вырезания , CTRL+ Uдля вставки , а линия разреза остается в буфере вырезания , вы можете выполнить быструю вырезку и вставку для замены, а затем вставить снова, чтобы получить «копию».

Но мне не нравится этот "обходной путь" ...

В последней части документа рассказывается, как копировать: с помощью ALT+ 6(для копирования ) рекламы и вставки с помощью CTRL+ Uдля вставки .

(Документы на самом деле говорят , что клавиша « M » означает « мета-клавиша» , как сказал mook765: « клавиша , Metaкоторая не существует» ... и обычно используется только ALTна современных клавиатурах.)

Вы также можете выбрать несколько строк, используя ALT+ 6и перемещая раздел с помощью клавиш со стрелками.

Надеюсь это поможет.

unknownprotocol
источник
3

Обратите внимание, что это решение работает только в GUI-версиях Ubuntu, а не в интерфейсе TTY.

Я все время копирую текст в nano, просто нажимая CTRL+ SHIFT+ Cна выделенном тексте, потому что это комбинация клавиш по умолчанию для копирования любого текста в терминале. Это относится и к нано. Это также можно найти в

Редактировать > Копировать

Странный
источник
7
Хороший обходной путь, но это не сработает в TTY, только в терминалах с графическим интерфейсом пользователя :), nanoоднако, он уже имеет свой собственный способ копирования, который не зависит от терминала
Сергей Колодяжный,
2

Из man nano

Когда необходимо вырезать или скопировать более точный фрагмент текста, можно
пометьте его начало ^ 6, переместите курсор в его конец (отмеченный текст
будет выделен), а затем используйте ^ K, чтобы вырезать его, или M-6, чтобы скопировать его в
срез

Mозначает Metaключ, который существует не на всех клавиатурах, а на некоторых. На клавиатурах wihtout в Meta-Key других модифицирующих клавиш , как Altи Escможет работать. На моей машине я обнаружил, что комбинация Alt+ 6работает отлично.

mook765
источник
2

Вы также можете сделать следующее;

  1. nano -cm <text_to_edit>
  2. Поместите курсор туда, где вы хотите начать копирование,
  3. Нажмите Shift+ LeftClick и перетащите мышью текст, который хотите скопировать, нажмитеCtrl+Shift+C
  4. Поместите курсор, который вы хотите вставить текст,
  5. Нажмите Ctrl+Shift+V

Варианты -cи -mразработано в man nano:

-c, --constantshow
    Constantly show the cursor position on the status bar.  Note that this over‐
    rides option

-m, --mouse
    Enable  mouse  support,  if  available for your system.  When enabled, mouse
    clicks can be used to place the cursor, set the mark (with a double  click),
    and  execute  shortcuts.  The mouse will work in the X Window System, and on
    the console when gpm is running.  Text can still be selected  through  drag‐
    ging by holding down the Shift key.
Абель Том
источник
0

Самый простой способ найти текст для копирования в nano - это выделить текст, который вы хотите скопировать, с помощью мыши и щелкнуть по нему правой кнопкой мыши. Это вызовет меню, в котором вы можете выбрать несколько вещей, которые одна из копий - копирование, выберите эту опцию, и вы скопировали текст. Если вы хотите вставить текст, сделайте то же самое, но выберите вместо этого вставить, и текст будет вставлен.

Николас Киршбаум
источник
3
А как правильно щелкнуть выбранный текст в TTY? Не буду там работать
Сергей Колодяжный
Что если текст длиннее окна? Как ключ SSH?
leymannx