GNU nano — текстовый редактор для Unix-подобных вычислительных систем или операционных сред, использующий интерфейс командной строки . Он эмулирует текстовый редактор Pico , часть почтового клиента Pine , а также предоставляет дополнительные функциональные возможности. [5] В отличие от Pico, nano лицензируется по GNU General Public License (GPL). Выпущенный как свободное программное обеспечение Крисом Аллегреттой в 1999 году, nano стал частью проекта GNU в 2001 году. [6] Логотип напоминает строчную форму греческой буквы Эта (η) .
GNU nano был впервые создан в 1999 году под названием TIP ( рекурсивная аббревиатура от TIP Isn't Pico ) Крисом Аллегреттой. Его мотивацией было создание свободной программной замены для Pico, которая не распространялась по лицензии свободного программного обеспечения . Название было изменено на nano 10 января 2000 года, чтобы избежать конфликта имен с существующей утилитой Unix tip . Название происходит от системы префиксов СИ , в которой nano в 1000 раз больше, чем pico . В феврале 2001 года nano стал частью проекта GNU .
GNU nano реализует несколько функций, которых нет в Pico, включая подсветку синтаксиса , нумерацию строк, поиск и замену регулярных выражений , построчную прокрутку, множественные буферы, отступы групп строк, поддержку переназначаемых клавиш [7] , а также отмену и повтор изменений редактирования. [8]
11 августа 2003 года Крис Аллегретта официально передал поддержку исходного кода nano Дэвиду Лоуренсу Рэмси. [9] 20 декабря 2007 года, с выпуском версии 2.0.7, Рэмси ушел с поста сопровождающего nano. [10] Лицензия также была обновлена до GPL-3.0-или-более поздней . [11] В настоящее время проект поддерживается Бенно Шуленбергом. [12]
В версии 2.6.0 в июне 2016 года текущий главный разработчик и другие активные участники проекта nano единогласно решили покинуть проект GNU из-за своих возражений по поводу политики передачи авторских прав Free Software Foundation и убеждения в том, что децентрализованное владение авторскими правами не препятствует возможности принудительного применения GNU General Public License. [13] [14] [15] [16] Этот шаг был признан Debian и Arch Linux , [17] [18] в то время как проект GNU воспротивился этому шагу и назвал его «ответвлением » . [19] 19 августа 2016 года Крис Аллегретта объявил о возвращении проекта в семью GNU после уступок со стороны GNU по передаче авторских прав, в частности, для Nano, [20] что произошло, когда версия 2.7.0 была выпущена в сентябре 2016 года. [21]
GNU nano, как и Pico, ориентирован на клавиатуру и управляется клавишами управления . Например, Ctrl+ Oсохраняет текущий файл; + переходит в меню поиска. GNU nano помещает двухстрочную «панель быстрого доступа» в нижней части экрана, перечисляя множество команд, доступных в текущем контексте. Для полного списка + вызывает экран справки.CtrlWCtrlG
В отличие от Pico, nano использует метаклавиши для переключения своего поведения. Например, + включает и выключает режим плавной прокрутки. Почти все функции, которые можно выбрать из командной строки, можно динамически переключать. На клавиатурах без метаклавиши она часто сопоставлена с клавишей Escape, , так что для имитации, скажем, + нужно нажать клавишу, затем отпустить ее, а затем нажать клавишу.MetaSEscMetaSEscS
GNU nano также может использовать указывающие устройства, такие как мышь , для активации функций, находящихся на панели сочетаний клавиш, а также для позиционирования курсора.