Довга лінія обгортання в Нано


65

Редагуючи файл autized_keys в Nano, я хочу обернути довгі рядки, щоб я міг бачити кінець рядків (тобто сказати, чий це ключ). По суті, я хочу, щоб це виглядало як результатcat authorised_keys

Отже, я натиснув, Esc + Lякий є мета-ключем для ввімкнення обгортання довгих рядків на моїй платформі, і я бачу повідомлення про те, що обмотування довгих рядків увімкнено, але лінії не завершуються, як я очікував.

Я використовую термінал на OSX 10.8.5

Відповіді:


88

Щоб побачити описаний вами стиль обгортання слів, використовуйте нано "м'яке обгортання": Esc+ $.

Команда Esc+, яку Lви (і всі) намагалися, робить "жорстке обгортання".

Примітка щодо позначення натискання клавіш - якщо ви новачок у Linux, позначення Esc+ $означає натиснути та відпустити, Escа потім натиснути $. Повний натискання послідовності , тобто Esc, Shift+4.

(Це не означає утримувати втечу під час натискання $.)

Джерело: https://www.nano-editor.org/dist/v2.9/nano.html (пошук --softwrap)


Примітка щодо помилок програмного забезпечення та форматування - Якщо ви новачок у нано, будьте обережні до програмного забезпечення. Якщо ви редагуєте файл конфігурації чи щось інше, чутливе до нових рядків чи відступів, можуть бути допущені помилки форматування. Поки ви не поцікавитеся поведінкою програмного забезпечення, я пропоную зробити швидку перевірку за допомогою програмного забезпечення (виберіть послідовність ключів ще раз) перед збереженням.

Зверніть увагу на добро, яке надають інші у своїх відповідях нижче - адже різні операційні системи та різні версії nano роблять щось трохи інакше:

  • Якщо вам подобається програмне забезпечення постійно, встановіть його у своєму .nanorc, як описано у відповіді x0a нижче , оскільки це трохи більше, ніж у Прашанта.
  • Якщо у вас є Raspberry Pi, зверніть увагу на відповідь ланцюгової маски про необхідність додаткового натискання клавіші для введення програмного забезпечення для введення в дію.
  • Якщо у вас є Mac, як відповідь lodeOfCode нижче , ви завжди можете оновити nano і тут , і таким чином поласувати теплим сяйвом програмного забезпечення!


3
Це було моїм найбільшим вихованцем у нано. Дякуємо, що розібрались у цьому.
користувач208145

1
Я рекомендую включити номери рядків Alt + Shift + 3або set linenumbersу ~/.nanorcфайлі налаштувань.
Данило Соколовський

1
Зауважте, що більш стара версія нано не включає цю функцію м'якого обгортання. У версії 2.0.9 він не входить, але у версії 2.5.3 він є. Якщо ви користуєтеся версією, яка не має цієї функції, вона видасть попереджувальне повідомлення "Невідома команда" в нижньому центрі області редагування тексту.
frederickjh

15

Я читаю тут відповіді і мені потрібно це точно встановити!

Nano підтримує дві різні форми обтікання ліній, і це може бути суттєво знати різницю!

По-перше, клавіша Meta внизу часто є клавішею Alt, але не обов'язково.

  • Увімкнення м'якої лінії активовано за допомогою Meta- $. Обгортання рядків без вставки символів розриву рядків у файл. Тобто ефект суто візуальний.
  • Обертання жорсткої лінії активовано за допомогою Meta- L. Обертає рядки , вставляючи розбивки рядків у файл. Файл фізично змінений.

Отже, якщо ви активуєте його у файлі, де обертання має значення (файли конфігурації, мови програмування, скрипти), ви, як правило, ніколи не хочете обгортання жорсткої лінії, або це змінить значення коду.

Крім того, ви знайшли ці ярлики з ^ G (тобто Ctrl- G) в Нано.


5
Meta $= Alt+ Shift+4
JamesTheAwesomeDude

1
М'яке обгортання ввімкнено в nanorc set softwrap, а жорстке обгортання в nanorc за допомогою set nowrap.
mwfearnley

14

Я просто шукав обгортку нано-ліній, і це дало високі результати, тому я опублікую свої висновки щодо GNU nano 2.2.6 на Raspberry Pi, Raspbian GNU / Linux 7: Esc+ Lдав мені те саме повідомлення; але для завершення накручування рядків я повинен був змінити лінію. Щойно я набрав ще одного персонажа на довгій лінії, загорнувши ногами.


6

Відкривайте nanorc зазвичай на ~ / .nanorc або / etc / nanorc, коментуйте рядок

set nowrap

І лінія коментування

set softwrap

1
У pfSense (і, можливо, FreeBSD загалом) потрібний файл / usr / local / etc / nanorc. Якщо цього find / -type d -name etcне вдалося , я думаю , що знайду й інші можливі місця.
mwfearnley

5

Налаштування короткого псевдоніма для вашого наноредактора також добре працює. Я зазвичай використовую:

 alias  e='nano -\$cwS'
 alias se='sudo nano -\$cwS'

(Встановіть їх у ~/.bashrc(або .bash_aliasesв деяких системах) або улюбленому запуску оболонки)

Використані прапори / параметри:

\$= Увімкнути м'яке обгортання ліній ( уникнути за допомогою зворотної косої риси)
c = Показати постійну позицію курсору (внизу)
w = Вимкнути будь-яке 'жорстке обгортання'
S = Плавне прокручування

І (як уже згадувалося) один раз в редакторі, використання Esc, $для перемикання м'якої упаковки ON / OFF.


3

Ви можете встановити значення за замовчуванням у ~/.nanorc. Але майте на увазі налаштування конфігурації для nano 1, nano 2 та nano 3 різні.

На nano 1 у вас є лише set nowrapналаштування, яке вимикає все обгортання.

На нано 2 , set softwrapбуло додано, що дозволяє перемотати програмне забезпечення та вимикати жорстке обгортання. set nowrapбуло змінено так, що воно лише вимикає жорстке обгортання

На нано 3 , set softwrapігнорується і нано продовжує до hardwrap , якщо ви також set nowrap.

Отже, якщо ви хочете обробляти текст для довгих рядків, які не порушують ваші конфігураційні файли (лише програмне забезпечення), це працює для версій 2 та 3 : Додайте наступні 2 рядки до~/.nanorc

set nowrap
set softwrap

Це також продумана відповідь, і я посилаюсь на це у своїй відповіді вище.
coreyt

2

Користувачам Mac рекомендується версія Nano, що постачається разом із High Sierra (v2.0.6) або раніше, не підтримує обгортання м'яких ліній, як описано тут. Ви отримаєте невідому помилку команди. v2.2 - найдавніша версія із згадкою про м'яке обгортання на сторінках man. Тому не витрачайте жодної години на те, щоб спробувати всі ці рішення, як я.

Esc + L працює як слід.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.