LINUX.ORG.RU

Релиз консольного текстового редактора nano 4.5

 


2

0

4 октября состоялся релиз консольного текстового редактора nano 4.5. В нём были исправлены некоторые ошибки и произведены небольшие улучшения.

  • Новая команда tabgives позволяет определить поведение при нажатии клавиши Tab для различных языков программирования. Клавишей Tab можно вставить знак табуляции, пробелы или что-то ещё.
  • Вывод справочной информации с помощью команды --help теперь одинаково выравнивает текст для различных языков.
  • Tab теперь корректно работает, и делает отступ для выделенной области в случае переназначения M-}.

>>> Подробности

★★★★★

Проверено: a1batross ()

Ответ на: комментарий от grem

Можно пример хотя бы из 5 базовых действий, которые есть в vim, но отсутствуют в nano?

Логика из разряда «А чем молоток отличается от камня, можно 5 базовых действий с молотком которые нельзя сделать с камнем», вообще так-то камни они бесплатно валяются, но что-то не видно строителей которые камнями гвозди забивают.

Конечно при работе с текстом, можно любым редактором делать с этим текстом что угодно, преимущество vim в том, что скажем сделав 10 операций с текстом- поиск перестановка, смещение и т.д, вы нажмёте 15 клавиш, а в nano 45, вот и всё.

shpinog ()
Ответ на: комментарий от shpinog

То есть конкретных фич так никто и ни привёл, зато все ударились в аналогии. Больше похоже, из присутствующих в теме просто vim’ом пользоваться никто не умеет толком.

grem ★★★★★ ()
Ответ на: комментарий от Iron_Bug

если вим писал однорукий инвалид

Ты вроде олдфажка, а не знаешь про тупые терминалы. Но оказалось, что короткие команды везде удобны, и вим взлетел уже на ПК. Главная его фича это огромный набор функций, доступных через короткие аккорды без модификаторов или в худшем случае с одним. Безрежимный редактор обрастая функциями всегда стремится к осьминожному емаксу.

bread ()
Ответ на: комментарий от grem

То есть конкретных фич так никто и ни привёл, зато все ударились в аналогии. Больше похоже, из присутствующих в теме просто vim’ом пользоваться никто не умеет толком.

Nano много чего умеет на самом деле. Но если настаиваете.

1)Cсобственные буферы для текста.(регистры)

2)Более умный поиск с возможностью форматирования, т.е «удалить от текущей позиции до слова ххх или символа х»

3)Уменьшать\ увеличивать число под курсором на единицу.

4)Возможность использовать больше одного маркера.

5)Возможность использовать словарь и автодополнение по нему. (без плагинов)

Просили пять, достаточно?

shpinog ()
Последнее исправление: shpinog (всего исправлений: 1)
Ответ на: комментарий от shpinog
  1. Да, похоже не поддерживает.

  2. Умеет (выделение от и до нужной строки или результата поиска + удаление)

  3. Ок, может даже полезная фича.

  4. Ок. Но это относится к фиче плагинов.

  5. Насчёт словаря не знаю, вряд ли. Есть просто автопополнение по запросу.

В целом фич более чем достаточно для правки конфигов, написания писем, коммитов (хотя тут пытаются уравнять nano с notepad.exe). Для конфигов я чаще mcedit использую.

grem ★★★★★ ()
Ответ на: комментарий от grem

Умеет (выделение от и до нужной строки или результата поиска + удаление)

Пример можно, находясь на позиции в начале файла, удалить до слова world. Какую комбинацию я должен сделать.

Ок. Но это относится к фиче плагинов.

Нет не относится, это стандартная фича.

  1. Нет возможности повторять команду несколько раз «.», например

  2. Нет возможности сделать одно действие N-раз

y3f" скопирует текст от курсора до третьей кавычки после курсора на текущей строке

  1. Не уверен, но в нано вроде нельзя поменять регистр выделенного на противоположный.

  2. gi - перейти к последнему месту где было редактирование, удобно при просмотре и редактировании больших файлов

ci" - заменить текст между кавычками ci( - заменить текст между круглыми скобками

Здесь это 3 нажатых буквы, в nano это выделение, удаление, вставка.

  1. Как это сделать в nano?

Удалить все строки, не содержащие ‘string’

:v/string/d

Начиная с текущей, удалить в следующих 21-ой строках те, что содержат слово foo

:.,+21g/foo/d

  1. Между метками ‘a’ и ‘b’, объединить строки, что содержат ‘foo’ с теми что идут после них.

:’a,’bg/foo/j

Можно долго продолжать.

shpinog ()
Последнее исправление: shpinog (всего исправлений: 1)
Ответ на: комментарий от shpinog

Ну ладно, ладно, ты хоть vim умеешь пользоваться :)

На всё долго отвечать, да и nano прежде всего начался как попытка воспроизвести Pico и уж тем более не как конкурент vim/emacs.

Емнип, находясь в позиции в начале файла: жмём Ctrl+6 (включаем выделение), Ctrl+w (поиск), word (не помню, выделит он его или нет, но регулярки при поиске, кажется, поддерживались), затем ctrl+k (удаление).

Если поиск нужно продолжить, то придётся нажать поиск следующего.

Поиск с заменой поддерживает регулярки (не пользовался). Видимо, в случае с кавычками и скобками придётся пользоваться ими. Аналогично с удалением всех строк содержащих слово, есть возможность применить ко всем вхождения сразу.

Но, как я говорил, для правки конфигов я чаще использую mcedit. Уж очень удобно мне в нём в нём вставлять в нужное место результат-вывод выполнения команды (alt+u).

grem ★★★★★ ()
Ответ на: комментарий от shpinog

ci" - заменить текст между кавычками ci( - заменить текст между круглыми скобками

Это ж частный случай поиска-замены «текст» - «новый текст» (" заменить любым символом"

grem ★★★★★ ()
Ответ на: комментарий от Iron_Bug

редактору ... его функция - набор текста.

Функция редактора — редактирование текста. И здесь вим на два порядка удобнее, других редакторов (емакс не в счет).

einhander ★★★ ()
Ответ на: комментарий от einhander

Конечно не умею, но учитывая, как часто мне вообще бывают нужны фичи даже nano, то нет никакого смысла изучать гору сочетаний клавиш vim, чтобы просто подправить пару значений.

grem ★★★★★ ()
Ответ на: комментарий от grem

Сила vim в универсальности. Тут тебе и редактор в переменной EDITOR на vi, или vim без конфигов, или с твоими конфигами для редактирования конфигов, и alias vi/vim с целой ide для программирования. И софт vim-like, и vim-like управление на всякие less/man/etc делают всё очень унифицированно и гибко.

В общем, на любителя канеш. Но фишка в этом есть.

anonymous ()
Ответ на: комментарий от einhander

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

Iron_Bug ★★★★ ()
Ответ на: комментарий от grem

такая же точно фигня с конфигами. даже большие конфиги править в nano легко и просто. хотя я иногда в nano даже код пишу или патчу. мне его вполне хватает для любых нужд. всё нужное в нём есть, а всего ненужного в нём нет.

Iron_Bug ★★★★ ()
Ответ на: комментарий от anonymous

чтобы код править, ясен пень. подсветка - это вообще фича сама в себе. есть библиотеки, которые этим занимаются. по идее, хорошо было бы сделать отдельную библиотеку с настройками на машине глобально и чтобы все её юзали. или не юзали, соответственно, если она не установлена. но для этого опенсорц пока сильно разобщён.

Iron_Bug ★★★★ ()
Ответ на: комментарий от Iron_Bug

чтобы код править, ясен пень.

Достаточно и pico. Редактор должен редактировать, а не свистеть, пердеть, и рисовать, как nano.

подсветка - это вообще фича сама в себе

Еще раз: редактор должен редактировать, а не подсвечивать, табы настраивать, конфигурироваться через разносторонние конфиги и тп. Твои слова?

anonymous ()
Ответ на: комментарий от anonymous

нет, не мои. я сказала - редактировать. для редактирования нужно две вещи: видеть текст и править его. цветовая дифференциация штанов подсветка текста помогает видеть текст. а редактировать его позволяет нормальная работа с клавиатурой. вот и всё. впрочем, подсветка не имеет большого значения. десятилетиями жили без неё, можно и дальше без неё жить. но с ней иногда удобнее ковырять код, особенно чужой код, особенно в больших и сложных пакетах.

з.ы. у nano есть конфиг и там дохрена всего можно настроить. но это делается один раз и потом этот конфиг таскается от системы к системе.

Iron_Bug ★★★★ ()
Последнее исправление: Iron_Bug (всего исправлений: 1)
Ответ на: комментарий от Iron_Bug

подсветка текста помогает видеть текст. а редактировать его позволяет нормальная работа с клавиатурой.

Вимерам вон, и макромы помогают текст редактировать, и встроенный движок регулярных выражений. Не опускайся до их уровня. Только pico. Редактирование и всё. Видишь текст, редактируешь текст. Вот норма. Остальное - свистелки/перделки и к редактору не относится. Это отклонения разной степени.

з.ы. у nano есть конфиг и там дохрена всего можно настроить. но это делается один раз и потом этот конфиг таскается от системы к системе.

Аргументация как у вимеров. Не делай так.

anonymous ()
Ответ на: комментарий от anonymous

чего не делать? конфиги не делать? а я их делаю. и системные конфиги я тоже каждый раз с нуля не пишу. конфиги иногда маленько меняются, появляются какие-то фичи, старые фичи исчезают. но в целом конфиги переносятся с машины на машину и система поднимается за пару дней вместо возни на месяц.

Iron_Bug ★★★★ ()
Ответ на: комментарий от Iron_Bug

Могу только прованговать, на основе ваших же слов, что если в режиме вставки начинается дикая скачка по режимам, то вы запустили vi из busy box, или что-то очень древнее. Современный вим возвращается в режим команд только по ескейпу (по дефолту).

einhander ★★★ ()
Ответ на: комментарий от grem

Переместиться на нужную строку по её номеру. Отобразить номера строк.

Нажатием трёх клавиш скопировать некоторое количество строк и вставить их одной клавишей (y5y p).

Поиск/замена по регекспам любой сложности.

Выполнение команд не выходя из редактора(для отладки скриптов незаменимо).

Кастомизация подсветки/отображения нечитаемых символов на лету.

Навигация по тексту - по словам, начало/конец строки.

Визуальное выделение текста как посимвольно, так и построчно.

Список можно продолжать вечно.

shell-script ★★★★★ ()
Последнее исправление: shell-script (всего исправлений: 2)
Ответ на: комментарий от shell-script

Хоть это тебя и огорчит, но 1,2,3,6 умеет из коробки. 4 - кажется, умеет отображать пробелы и табуляцию.

7 - непонятно, что имеется ввиду.

Только один человек привёл нормальные примеры. Остальные,используя vim, занимаются натягивание совы на глобус.

grem ★★★★★ ()
Последнее исправление: grem (всего исправлений: 1)
Ответ на: комментарий от grem

В том то и дело, что это уже «вшитые» регулярки, в нано ты всё это делаешь через поиск нажимая 10 клавиш для результата, здесь же это готовая функция ci(x) где выделяется текст между двумя элементами.

shpinog ()
Ответ на: комментарий от shpinog

проблема в том, что регулярки вообще не нужны при редактировании. конфиги малы и там нечего искать регулярками. а в коде регулярками никто ничего не правит. это чревато. но если вдруг надо регулярку - на любом лине завсегда есть перл. и он даёт гораздо более мощный аппарат для работы с регулярками, с обратными захватами и прочими редко необходимыми фичами. так что если мне нужны регулярки - я юзаю перл. он на это заточен. а редактировать код или конфиги я могу в нано.

Iron_Bug ★★★★ ()
Ответ на: комментарий от shpinog

какой текст выделяется? введённый в поле поиска, ближайший к текущей позиции курсора или вообще все?

если введённый, то почему просто не найти поиском «текст»?

grem ★★★★★ ()
Ответ на: комментарий от grem

какой текст выделяется? введённый в поле поиска, ближайший к текущей позиции курсора или вообще все?

При ci" ты окажешься между двумя " Тут " сразу в режиме набора текста, если там есть текс то он удалится автоматический. Работает на одной строке, при условии что "" после курсора.

введённый в поле поиска

Это вообще никак с поиском не связанно, поиск осуществляется по / - вперёд от курсора и по ? назад. /с без учёта регистра, регулярки это уже :vimgrep

если введённый, то почему просто не найти поиском «текст»?

Потому, что в тексте может быть много "". На одной строке тоже может быть несколько. Во вторых если это обычный поиск то ты будешь перемещаться по всему тексту .

shpinog ()
Последнее исправление: shpinog (всего исправлений: 1)
Ответ на: комментарий от Iron_Bug

конфиги малы и там нечего искать регулярками.

А в конфигах правят регулярками?

а в коде регулярками никто ничего не правит. это чревато

Но все же если надо, ты берешь перл. Который доступен сразу из вима. Но ненужен бо чревато. Поэтому правишь перлом и в нано.

anonymous ()
Ответ на: комментарий от anonymous

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

перл не часть вима. и ему фиолетово, доступен он из него или нет. в 99.99% случаев велосипеды не нужны. потому что KISS. ты можешь втащить в свою наколенную поделку хоть перл, хоть чёрта лысого. но никому это не нужно.

Iron_Bug ★★★★ ()
Последнее исправление: Iron_Bug (всего исправлений: 2)