Доступен (https://www.mail-archive.com/info-gnu@gnu.org/msg02363....) релиз консольного текстового редактора GNU nano 2.9.0 (https://nano-editor.org/), предлагаемого в качестве редактора по умолчанию во многих пользовательских дистрибутивах, разработчики которых считают vim слишком сложным для освоения.
В новом выпуске добавлена функция записи производимых клавиатурных манипуляций с возможностью их повторного воспроизведения ("M-:" - для начала и остановки записи макроса, "M-;" - для его воспроизведения). Добавлены клавиатурные комбинации
"^Q" и "^S" для поиска в обратном направлении и сохранения текущего файла, а также изменена комбинация "^W", которая теперь инициирует прямой поиск. В статусной строке обеспечен показ числа открытых буферов. По умолчанию при ошибке в rc-файлах больше не выводится предупреждение с запросом нажатия Enter.
URL: https://www.mail-archive.com/info-gnu@gnu.org/msg02363....
Новость: http://www.opennet.me/opennews/art.shtml?num=47591
"во многих пользовательских дистрибутивах, разработчики которых считают vim слишком сложным для освоения"-автор знает как правильно создать искру для пожара
Автор прав. VIM сложен, но богат функционалом. Никто не утверждает обратного.
> Автор прав. VIM сложен, но богат функционалом.Автор не утверждает, что VIM сложен. Также он не утверждает, что он богат функционалом. Автор утверждает, что мотивом для выбора nano служит то, что разработчики многих пользовательских дистрибутивов считают vim слишком сложным для освоения. И вот тут он неправ категорически. Причём неправ дважды.
Во-первых, то что он высказал -- это его личное мнение, которое никак не подкреплено социологическими исследованиями мнения разработчиков многих пользовательских дистрибутивов. Он же высказывает это мнение в новости, которая претендует на объективность, не подкрепляя своё мнение ссылками. Ни мы, ни автор новости не знаем, считают ли разработчики дистрибутивов vim слишком сложным.
Во-вторых, он просто не прав. Критерий для выбора текстового редактора -- это не сложность освоения, а востребованность пользователями. Если мы представим себе сейчас умозрительно голосование среди всех пользователей дистрибутивов линукса, какой из текстовых редакторов включать в base system -- nano или vim, -- то, я уверен, большинство будет за nano. Точнее большинству будет без разницы, потому что они не пользуются ни тем, ни другим. А вот вторым по количеству голосов будет пункт про nano, потому что в этот пункт войдут все те, кто пользуется какими-то текстовыми редакторами (gedit, Kate, Atom, Eclipse, emacs, nano, etc), но не vim'ом. vim не нужен большинству, почему это так -- это другой вопрос, и ответ на него не столь очевиден, как полагает автор новости.
Таким образом, прав не автор новости, а тредстартер: автор ловко вбросил гoвнa на вентилятор, и в этом он мастер.
значительная часть пользователей linux пользуются консолью только когда факелы и вилы загнали их в сарай, где путь спасения лежит через консоль.в atom и eclipse есть vim плагины. которые те, кто хочет спокойно могут себе поставить.
и да, если что-то по мелочи подправить nano хватит за глаза.
В сарае и vi достаточно. А в обычной жизни - nano нужен, как попу баян.
Настоящий vi (как и совместимый режим vim) это не для слабых духом. Внезапно приходится судорожно вспоминать забытые клавиатурные комбинации для самых элементарных вещей. А если человек их не знал, то ему vi никак не поможет.
> Настоящий vi (как и совместимый режим vim) это не для слабых духом.
> Внезапно приходится судорожно вспоминать забытые клавиатурные комбинации для самых элементарных
> вещей. А если человек их не знал, то ему vi никак
> не поможет.в slackbook есть учебник по vi. только не помню, по какому именно. штатным vi в слаке вроде elvis идёт, но он фичат
До учебника ли, если выходить из vi приходится кнопкой reset? :)
надо продавать ОС-ы с твёрдой папкой ман-ов, бумажных. чтобы было, чего почитать на досуге
Полностью согласен. Небольшая книжечка документации во многих ситуациях была бы просто спасением.У меня к мелким окнам-2003 прилагается фирменное в бумаге достаточно подробное и с указателем вводное руководство на две с половиной сотни страниц. Я его, правда, так и не прочитал, но всё равно приятно.
> Полностью согласен. Небольшая книжечка документации во многих ситуациях была бы просто
> спасением.
> У меня к мелким окнам-2003 прилагается фирменное в бумаге достаточно подробное и
> с указателем вводное руководство на две с половиной сотни страниц. Я
> его, правда, так и не прочитал, но всё равно приятно.Пойду писать книжку, чтобы потом выпускать OpenBSD Enterprise
Давно хотелось
Дайте уж знать, когда напишете.
Не пугай людей, в vi чуть больше десятка команд. Когда меня загнали в сарай я распечатал у друга листок с описанием команд и через пару часов уже пользовался vi не глядя в шпаргалку. До сих пор помню все команды, хоть ночью разбуди.
> Не пугай людей, в vi чуть больше десятка команд. Когда меня загнали
> в сарай я распечатал у друга листок с описанием команд
> и через пару часов уже пользовался vi не глядя в шпаргалку.
> До сих пор помню все команды, хоть ночью разбуди.http://man.openbsd.org/vi#VI_COMMANDS
там СИЛЬНО больше десятка команд
но до десятка команд достаточно, чтоб больше ничего не знать(если нет желания изучать), настроить ОС, скачать любимый редактор и его поставить...)))
Дабы не выходить из редактора кнопкой reset, за vi/vim лучше не садиться, не проштудировав мануал и не потренировавшись на отдельно стоящей системе. То же касается ещё нескольких старых юниксовых редакторов. Потому-то и придумали nano для ньюбов, которых, впрочем, не прибыло.
> Настоящий vi (как и совместимый режим vim) это не для слабых духом.
> Внезапно приходится судорожно вспоминать забытые клавиатурные комбинации для самых элементарныхhttp://www.opennet.me/openforum/vsluhforumID3/109019.html#70
>А если человек их не знал, то ему vi никак
> не поможет.Ну, почему ж. Спасибо ему за _помощь_ с mcedit и GNU Emacs.
Этот "мастер" "ловко" вбрасывает это от релиза к релизу. И вот, после n-го раза, это наконец-то прокомментировали.
Пора уже. Мне очень интересно, как часто среди таких "авторов" попадаются ip tor'а и других стран... Таковые вполне могли бы быть "ведущими". Интересно было бы узнать мнение модераторов, если бы они полюбопытствовали.
Ничего не понял. Мне таки кажется между vim и nano большинство выберет nano именно потому, что как пользоваться nano очевидно любому, а использованию vim надо специально учиться и привыкать, даже пройдя туториал и положив перед собой шпаргалку обычный человек всё-равно чувствует себя в vim не лучше чем тот, кто умеет водить только машины автоматической коробкой и внезапно сел за руль машины с ручной. Т.е. vim именно слишком сложный.PS: Лично мой выбор для консоли вообще mcedit, там можно даже несколько окон открыть и всё полностью интуитивно.
> Ничего не понял. Мне таки кажется между vim и nano большинство выберет
> nano именно потому, что как пользоваться nano очевидно любому, а использованию
> vim надо специально учиться и привыкать, даже пройдя туториал и положив
> перед собой шпаргалку обычный человек всё-равно чувствует себя в vim не
> лучше чем тот, кто умеет водить только машины автоматической коробкой и
> внезапно сел за руль машины с ручной. Т.е. vim именно слишком
> сложный.Мне очень сложно на это ответить, потому что слово "большинство" слишком размыто для меня. Большинству пользователей linux не нужен текстовый редактор вообще. Большинству программистов, я надеюсь, vim не то, чтобы слишком сложный, он просто не нужный, потому что есть другие альтернативы для кодинга. Большинству сисадминов? Мне почему-то кажется, что большинство сисадминов как раз вовсю пользуется vim'ом: vim для этого подходит идеально -- достаточно мощный текстовый редактор, который позволяет работать и с конфигами и с портянками кода на bash или perl, с подсветкой синтаксиса (хотя бы выделение цветом комментариев в конфигах -- это уже большой плюс), со всякими плюшками типа поиска по подстроке/регекспу, замены и проч., который работает в консоли и при этом стартует моментально (в отличие от того же emacs'а).
Мы можем каким-нибудь образом определить такую группу пользователей, в которой большинство действительно будет выбирать nano, потому что vim слишком сложный. Но сначала надо определить эту группу, и только затем рассуждать.
> Лично мой выбор для консоли вообще mcedit, там можно даже несколько окон открыть и всё полностью интуитивно.
Мы можем попытаться обобщить твой случай и определить эту группу пользователей через него. Зачем тебе вообще нужен текстовый редактор? Раз в месяц подправить какой-нибудь файлик в /etc или в ~/.config? То есть это группа пользователей, которым не важно какой текстовый редактор есть, но при этом важно, чтобы он был. Но, я отмечу, nano в базовой системе стоит не для этой группы пользователей, а на случай системного факапа и для тех, кто за ненадобностью не ставит в систему ни vim, ни emacs, ни mcedit, ни других текстовых редакторов работающих в терминале.
> Большинству пользователей linux не нужен текстовый редактор вообще.Они не умеют писать?!
И печатать!
А уж если печатают, то только на япах.
> раз в месяц подправить какой-нибудь файлик в /etc или в ~/.config?Да, грубо говоря так.
> не важно какой текстовый редактор есть, но при этом важно, чтобы он был.
Не совсем. Важно чтобы он был интуитивен и в нём можно было делать все обычные операции, привычные для гуёвых "блокнотов", включая не только поиск с заменой, но и копипастинг, в т.ч. между несколькими разными файлами, в т.ч. в голой консоли (понятия не имею как это сделать даже в Nano, а в mcedit полазил по меню и разобрался мгновенно).
> Ничего не понял. Мне таки кажется между vim и nano большинство выберет
> nano именно потому, что как пользоваться nano очевидно любому, а использованию
> vim надо специально учиться и привыкать, даже пройдя туториал и положивничего не очевидно.
нелепые комбинации клавиш, не стыкующиеся с общепринятыми значениями, заставляют заново изучать какие-то труднозапоминаемые наборы. судя по описанию, так еще и смысл комбинаций меняется от релиза к релизу. Пользуюсь иногда nano, но мне его комбинации клавиш не известны, те что отображаются не всегда закрывают мой интерес в редакторе. Если заменить слово, то нано идеален! При выборе vi или nano, я возможно выберу nano, в зависимости что надо делать. Но если есть vim, то у nano шансов нет.
Все что нужно знать о vim, чтоб его освоить пишется в самом начале, когда вы его запускаете.
Аналогов vimtutor, причем с переводом на русский, я не могу вспомнить и кажется мне, что это уникальное явление.
Не скажу что nano не нужен. Нужен, но вот не надо из нано делать пулю.
mcedit универсальная середина удобства и возможностей. 75% редактирования в консоли - в нем. Остальное - Vim. Но его нет по-умолчанию на всех дистрибутивах. Зато vi-подобный редактор есть всегда в POSIX-совместимых ОС. nano - только на большинстве Linux/GNU OS(и то не на всех).
У mcedit есть фатальный недостаток: он часть mc. Зачем мне нужен этот комбайн в базовой системе?
В таком социологическом исследовании, тем не менее, приняли участия пользователи "Stack Overflow вывел из Vim уже больше миллиона пользователей" https://habrahabr.ru/company/everydaytools/blog/329514/
Это не социологическое исследование, а голая статистика плюс безграмотные рассуждения. Исследование подразумевает установление логической связи между статистической гипотезой и теоретической. В статье на хабре есть статистическая гипотеза, есть теоретическая, но автор их явно не различает, ставит между ними знак равенства. Статистика в руках обезьяны хуже гранаты, ей богу.Делать из того миллиона посещений какие-либо выводы затруднительно. Тут ведь напрашивается очевидный вопрос, которым совершенно не задаётся автор статьи на хабре: как и зачем человек оказывается на SO, на странице с вопросом о выходе из vim? Потому, что он не знает ответа? Или потому, что он увидел ссылку на этот вопрос на хабре, и решил посмотреть, а нет ли там какого-нибудь веселья в ответах? Или может ему стало интересна личность автора вопроса: "каким же надо быть идиотом, чтобы не разобраться с тем, как выйти из vim"? Или "что там такое случилось с vim, что из него не выйти"? Или "что такое vim"?
Кроме того, способ получения выборки сомнителен и с другой точки зрения: выборка взята из посетителей SO, а не из пользователей linux, и уж тем более не разработчиков дистрибутивов linux. Насколько возможно переносить выводы с одной выборки на другую -- это ещё один вопрос, заслуживающий самостоятельного исследования.
До тех пор, пока не будут рассмотрены все такие альтернативные гипотезы, и не будут получены каким-либо разумным способом числа, оценивающих вклад в те посещения разных групп посетителей, делать выводы из подобной статистики не стоит. То есть, для хабра сойдёт, он на то и хабр, а вот если всё же есть желание создать и поддерживать в своей голове адекватную картину мира, то лучше всё же воздержаться от выводов.
Ordu из своего первого знакомства с vim, могу сказать что таким образом косвенно познакомился с терминалами Линукс - так как по Виндовой привычке "вышел" через Alt + F4, и полагал раз требуют снова пароль, значит сеанс был завершён. Естественно такая уверенность продержалась до первой необходимости vim, но уже в 4 терминале, где выше упомянутое клавиатурное сочетания не привело к выходу из редактора.
Каким это таким чудо-функционалом он богат?
Он пищит
и всё портит
в восьмом виме появилась поддержка DirectX - теперь будет так пищать, что за уши не оттащишь
Надо будет найти выход в 3д коридорах?
причём на слух, по писку
в нем есть окна и вкладки плюс можно прикрутить нехитрую поддержку синтаксиса.
честно говоря, дальше среды разработки C для решения на armv8 использовать vim не доводилось.
везде, где есть X я ставил eclipse + Vrapper, тк. чистый vim уж как-то архаично смотрится.
Попробуйте заменить Eclipse на Qt Creator или KDevelop, есть высокий шанс, что на Эклипс вы уже не вернётесь.
Вы оба неправы.> Ed is the standard text editor.
Полностью согласен, в новостях недопустимы неявные призывы к разжиганию ненависти. Уже даже крупные компании (например, Google) спохватились из-за подобных манипуляций в СМИ, судя по новостям, из-за чего хотят сделать максимальную идентификацию пользователей.
Идентификация по используемому текстовому редактору. Вход в интернет только через текстовый редактор.
> Идентификация по используемому текстовому редактору. Вход в интернет только через текстовый
> редактор.Спасибо за идею!
Мега-капча. Типа "введите команду замены слова Вася на Петя в диапазоне строк с 5 по 14"
>Уже даже крупные компании (например, Google) спохватились из-за подобных манипуляций в СМИГугл сам участвует в манипуляциях.
> "во многих пользовательских дистрибутивах, разработчики которых считают vim слишком сложным для освоения"Правильно было бы сказать "в дистрибутивах, авторы которых не хотят, чтобы их закидали экскрементами емаксеры за установку vim по умолчанию или вимеры за установку emacs по умолчанию".
Сабж — очень странный редактор. Ни разу не видел человека, которому бы он нравился или хотя бы казался удобным. Даже любители простоты предпочитают какой-нибудь mcedit.
Кстати, баян, но в тему: https://vim.sourceforge.io/images/0xbabaf000l.png
И что же в нём странного? Пользую регулярно мне хватает.
Пользовался nano как консольным редактором до момента освоения Vim, а потом и неконсольные перестал использовать.
> простоты
> mceditПростота так и прёт.
> Ни разу не видел человека, которому бы он нравился или хотя бы казался удобнымПриятно познакомиться.
Просто вам не пришлось быть свидетелем массового перехода дистрибутивов с vi на nano по умолчанию в начале 2000-х под предлогом того, что с nano может сразу начать работать любой, а первый запуск vi без должного навыка вызывает ступор. В то время много было бурления по этому поводу.
как недавно с ситемдой?
> как недавно с ситемдой?Славься, GNU Shepherd[I]! https://www.gnu.org/software/shepherd/
А не всё ли равно, что там "по умолчанию в инсталляторе"? Я вот всё равно ставлю систему через debootstrap с --target=minimal, после чего там даже nano нету. А первая команда, которую я запускаю -- это apt-get install emacs25.А уж если кто систему ставит посредством инсталлятора, а не с живой системы, то ему nano в самый раз, почему бы и нет.
VIM - это архаичное изголяние - типа как в ZX Spectrum - 40 клавиш по 5 команд на каждую для дешевизны.
Согласен. Emacs много проще. В нем хоть сразу понятно, как пару букв дописать ...
> Согласен. Emacs много проще. В нем хоть сразу понятно, как пару букв дописать ...Однако ж он и тяжеловесней многократно. Может кому-то из-за этого не подойти.
> Однако ж он и тяжеловесней многократно. Может кому-то из-за этого не подойти.Это да, фигурно обрезанный vim-tiny+vim-common << emacs25-nox+emacs25-bin-common.
//колонки: Package, Installed-Size, Size из apt-cache showuser@host:~$ my_show_size vim{,-{common,gui-common,runtime,doc,tiny,dbg,gtk,nox,athena,lesstif,gnome}}
vim-lesstif 114 87258
vim-gui-common 270 142978
vim-common 287 162398
vim-tiny 780 326598
vim 1797 778220
vim-nox 2004 858948
vim-athena 2241 950984
vim-gtk 2284 960988
vim-gnome 2288 963142
vim-doc 8838 1658942
vim-runtime 22368 4606980
vim-dbg 27130 6919070
user@host:~$ my_show_size emacs25{,-{lucid{,-dbg},nox,nox-dbg,dbg,bin-common,common,el}}
emacs25-bin-common 412 136894
emacs25-nox-dbg 3406 3239736
emacs25-dbg 4667 4477196
emacs25-lucid-dbg 4715 4524178
emacs25-nox 10960 2807848
emacs25 12177 3165658
emacs25-lucid 12193 3175456
emacs25-el 15140 15660922
emacs25-common 63929 12421386
Некоторые [фанатики!] таскают -user@host:~$ my_show_size zile, который, вроде (не считал зависимости--), ещё вдвое меньше. (И не знаю, как в нём с utf8/"русским" --)
zile 416 208390
>> Однако ж он и тяжеловесней многократно. Может кому-то из-за этого не подойти.
> Это да, фигурно обрезанный vim-tiny+vim-common << emacs25-nox+emacs25-bin-common.
vim-common 287 162398
vim-tiny 780 326598emacs25-bin-common 412 136894
emacs25-nox 10960 2807848zile 416 208390
nano-tiny 154 72920
nano 1662 582092Добавил нашедшуюся (debian wheezy lts; emacs25 самосбор) версию сабжа.
Он-то ещё боле "-tiny"...
>, который, вроде (не считал зависимости--), ещё вдвое
> меньше. (И не знаю, как в нём с utf8/"русским" --)С UTF-8 у zile - "ещё" никак, https://www.gnu.org/s/zile/
---Активнее! Активнее участвуем в мерянии килобайтами и ценными мнениями.
> ---Активнее! Активнее участвуем в мерянии килобайтами и ценными мнениями.а емэкс у менэ 11 мб весил
А выделение вертикальными блоками он умеет?
как часто ты пользуешься выделением блоками и с какой практической целью? просто интересно, сколько кода не пишу, такого никогда не требовалось
Когда например у тебя лог-файл размером от пары мегабайт. И тебе нужно выдрать из него 200 строчек в удобочитаемом формате.
Часто удобно когда пишешь код, например убрать какой-нибудь модификатор с десяти переменных. Или боилерплейт всякий добавлять (извините, не знаю как по-русски).Вообще, во всех продвинутых редакторах есть что-нибудь подобное. В саблайме - мультикурсор. В идешках - выделение через альт.
а в нормальных редакторах — регулярные выражения. в «продвинутых» же редакторах авторы в курсе уровня своих пользователей, и понимают, что в регулярки их пользователи не смогут даже за три жизни.
Регулярки не помогут если тебе надо обрезать мусорные префиксы/суффиксы в наборе строк. Vim со своим Control-V не идеален, но обычно этого хватает.
> Регулярки не помогут если тебе надо обрезать мусорные префиксы/суффиксы в наборе строк.
> Vim со своим Control-V не идеален, но обычно этого хватает.А что бывает регулярка не может, а крсором ок? Теоретически придумать могу конечно, но на практике не встречал, чтобы лог файл не порезать. Да и регулярки нужны в 1 случае из 1000.
Помогут.
> Регулярки не помогут если тебе надо обрезать мусорные префиксы/суффиксы в наборе строк.Ещё один не осиливший. Это может быть менее удобно в случае небольшого числа строк, но регулярки справятся.
Есть в виме регулярки, даже довольно удобные. А выделение он не только квадратами умеет, а, например, можно словами, или от пятого символа - до конца строки. Вполне удобно.Я не фанат вима, но периодически пользуюсь. Как то так получается, что основные клавиатурные сочетания запомнились еще три года назад и теперь не забываются. Всякие мелочи обычно в нём правлю
>сколько кода не пишу, такого никогда не требовалосьСдвинуть блок кода вправо/влево на n позиций
Макросы - нужно. Отличное обновление.
> Макросы - нужно. Отличное обновление.Непонятно как при записи макроса записать запись макроса. Хочу рекурсивных макросов и тьюринг-полноты.
> записи производимых клавиатурных манипуляций с возможностью их повторного воспроизведенияВсю жизнь недоумеваю зачем кому–то может быть такое надо. Ни одного примера полезного использования этого придумать не могу :-(
Ты о макросах шо ли? Они нужны для тех кто не смог в sed или awk.
> Ты о макросах шо ли? Они нужны для тех кто не смог
> в sed или awk.И нафейхоа мне покидать редактор если я хочу по шаблону поправить кусочек текста в разных местах?
>> Ты о макросах шо ли? Они нужны для тех кто не смог
>> в sed или awk.
> И нафейхоа мне покидать редактор если я хочу по шаблону поправить кусочек
> текста в разных местах?да, зачем ты его покидаешь, если из него надо просто шелл команду запустить?
> да, зачем ты его покидаешь, если из него надо просто шелл команду
> запустить?В нано разве можно шелл запускать? Это же не ви(м).
>> Ты о макросах шо ли? Они нужны для тех кто не смог
>> в sed или awk.
> И нафейхоа мне покидать редактор если я хочу по шаблону поправить кусочек
> текста в разных местах?Вот вот. В vim просто выполнили внешнюю команду к нужной части текста и все в порядке. причем неважно что за команда. Можете даже свой скрипт написать. А чтоб не выполнять все время длинную команду - делаете макрос и привязываете к комбинации клавиш.
Вот тут глянь зачем > http://emacsrocks.com/e13.html
Например, поменялась сигнатура функции, а ещё перед каждым вызовом надо делать дополнительное действие. Ставишь курсор в нужное место, начинаешь запись, редактируешь, останааливаешь запись, переводишь курсор на второе нужное место, воспроизводишь макрос и так далее.Можно, конечно, обойтись "sed и awk", как написали выше, или взять монструозный IDE с кучей функций для рефакторинга, но зачастую так быстрее и проще.
"^S" для сохранения текущего файла перевернуло мой мир, едва я успел привыкнуть к "^O".
mcedit - лучшее что есть из консольного
sed лучше всего, остальное для окошечников.
sed для тех, кто не осилил ed.
ed для тех кто не осилил cat
cat для тех кто не осилил dd.
dd для тех кто не осилил осциллограф
осциллограф для тех кто не осилил ясновидение /thread
> осциллограф для тех кто не осилил ясновидение /threadНу вот для всех значит. В нём и редактируй
> осциллограф для тех кто не осилил ясновидение /threadПерфокарты+дырокол+наклейки же!
Бабочки же.
> осциллограф для тех кто не осилил ясновидениеясновидение для тех кто не освоил butterfly mode
> /thread
Осциллограф для тех, кто не осилил бабочек (xkcd, да)
> Осциллограф для тех, кто не осилил бабочек (xkcd, да)
> бабочекЕще есть те, кто вместо ловли бабочек просто осиливает emacs:
M-x butterfly (да, это реальный биндиг :))
А когда бабочки надоедают:
M-s
Enter sed expression: s/a/b/
> sed для тех, кто не осилил ed.скорее, наоборот. ed - простой редактор для людей, а sed для тех, кто пишет однострочники, летающие в космос, и помнит наизусть всё содержимое файловой системы :)
> ed - простой редактор для людей, а sed для тех,
> кто пишет однострочники, летающие в космос, и помнит наизусть всё содержимое
> файловой системы :)Всё проще: ed — для интерактивности, sed — для скриптов.
> sed для тех, кто не осилил ed.неосилить ed, прочитав краткую справку на три листа, довольно сложно
кто в детстве осиливал 10 LET a = 5, тот спокойно осилит ed
> кто в детстве осиливал 10 LET a = 5, тот спокойно осилит edну, "a = 5" - понято. А при чём тут 10 лет?
sed для тех, кто помнит весь свой файл наизусть. вводишь ты вундеркоманду, и не знаешь, сделает она, что надо, или покорёжит тебе весь файла ed - интерактивный редактор, где ты можешь всем управлять
> sed для тех, кто помнит весь свой файл наизусть. вводишь ты вундеркоманду,
> и не знаешь, сделает она, что надо, или покорёжит тебе весь
> файлУзнаем № строки:
sed '/слово/!d; =' /где/то/тут
Меняем слово токо в строке №4:
sed -i '4s/фрагмент 1/фрагмент 2/' /где/то/тутЧитать по страницах:
sed '1,20!d' /где/то/тут
вот-вот. а в ed это делается проще и последовательно, *на-месте*. есть и откат
> вот-вот. а в ed это делается проще и последовательно, *на-месте*. есть и
> откатВ sed тоже:
вариант 1)
проверяем изменения: sed '4s/фрагмент 1/фрагмент 2/' /где/то/тут
пишем изменения: sed -i '4s/фрагмент 1/фрагмент 2/' /где/то/тутвариант 2)
читаем: TEXT=`cat /где/то/тут`
бекапим: TEXT1="$TEXT"
меняем много раз, в несколько подходов можна: TEXT=`echo "$TEXT" | sed '4s/фрагмент 1/фрагмент 2/'`
пишем: echo "$TEXT" > /где/то/тут
>[оверквотинг удален]
> В sed тоже:
> вариант 1)
> проверяем изменения: sed '4s/фрагмент 1/фрагмент 2/' /где/то/тут
> пишем изменения: sed -i '4s/фрагмент 1/фрагмент 2/' /где/то/тут
> вариант 2)
> читаем: TEXT=`cat /где/то/тут`
> бекапим: TEXT1="$TEXT"
> меняем много раз, в несколько подходов можна: TEXT=`echo "$TEXT" | sed
> '4s/фрагмент 1/фрагмент 2/'`
> пишем: echo "$TEXT" > /где/то/туткруто. но в ed это делается проще и последовательно, на месте
Если не умеешь пользоваться vim.
Оно уже научилось жить без ncurses?
> Оно уже научилось жить без ncurses?а vi научилось?
> Оно уже научилось жить без ncurses?ldd /usr/bin/vi
/usr/bin/vi:
Start End Type Open Ref GrpRef Name
145f8000 34605000 exe 1 0 0 /usr/bin/vi
0ea8b000 2eaa4000 rlib 0 1 0 /usr/lib/libcurses.so.14.0
02081000 22086000 rlib 0 1 0 /usr/lib/libutil.so.12.2
0d856000 2d886000 rlib 0 1 0 /usr/lib/libc.so.90.0
02cfb000 02cfb000 rtld 0 1 0 /usr/libexec/ld.so
У тебя плохой vim, выкинь его.$ ldd /usr/bin/vi | grep curses
$
> У тебя плохой vim, выкинь его.
> $ ldd /usr/bin/viХороший vi в приличном месте в /usr не положат.
PS: правда, что он хороший, узнаёшь только при недоступности большей части ABI на развалинах локалхоста (давненько такого не было, но проходили).
>> У тебя плохой vim, выкинь его.
>> $ ldd /usr/bin/vi
> Хороший vi в приличном месте в /usr не положат.
> PS: правда, что он хороший, узнаёшь только при недоступности большей части ABI
> на развалинах локалхоста (давненько такого не было, но проходили).Ммм... Это усиление "в сарай -- факелами-вилами" до "сам себя -- запер и запалил"? :D
> Хороший vi в приличном месте в /usr/bin не положат.поэтому он и в /usr, что зависит от curses
в /bin только статика
> mcedit - лучшее что есть из консольногоНе-а, это жутчайшая потеря времени, как и всё непрограммируемое.
Впрочем, Вы же явно не о редакторах.
У меня педальный vim. Режимы переключаются педалями. Присобачил от старого фортепиано.
А я как раз заказал педаль с Китая, чтобы нажимать Escape ногой. Вот зачем мне тягать палец туда?
на капслок переназначь
> на капслок переназначьпедаль?
UNIX layout тогда уж. У меня три такие лежат, про запас, Sun Type 7 Unix: http://cfs9.tistory.com/upload_control/download.blog?fhandle...
Vim не ставят, потому что он слишком тяжёлый. В OpenBSD vim-no_x11 + vim-lang - 11 мб в упакованном виде, 31 в распакованномВ том же дебиане по дефолту vim.tiny, максимально урезанный vim, да nano. в OpenBSD - классические версии mg (маленький emacs), vi и ed. причём только ed нормально дружит с utf-8.
В большинстве случаев, конфиги действительно удобнее править с помощью ed, это банально занимает меньше нажатий клавиш и меньше усилий, чем в других редакторах. Кроме того, ed есть в самом установочном образе OpenBSD, можно править что-нибудь в процессе инсталляции.
По части изучения ed точно проще всего - там всего несколько команд. Если в vim я знаю где-то 1-5% всех команд, то в ed помню больше 50%, а остальные легко вспоминаются из man.
А nano я, честно говоря, не осилил. Как выйти оттуда, я знаю, но больше - ничего. Минимальное действие занимает кучу нажтий кнопок.
У nano краткая справка прямо на экране.У vi(m) можно не знать больше 1-5% команд, но использовать его не менее мощно чем ed. :)
> У nano краткая справка прямо на экране.справка есть. толку нет. на банальные действия постоянно вопрос *а как*
> У vi(m) можно не знать больше 1-5% команд, но использовать его не менее мощно чем ed. :)
понятное дело. есть дела, которые требуют наглядности - там, понятное дело, или vim, или mcedit. а править конфиги, которые примерно знаешь, мне удобнее в ed
Что у вас за вим такой?$ apt show vim
Installed-Size: 2 431 kB
Download-Size: 1 034 kB
> Что у вас за вим такой?
> $ apt show vim
> Installed-Size: 2 431 kB
> Download-Size: 1 034 kBА теперь посмотрите зависимости. Особенно следует обратить внимание на "vim-runtime" -- как раз под 30мб будет.
Когда впервые столкнулся с nano был зело обескуражен хоткеями.
С тех пор старательно обхожу его стороной...
> Когда впервые столкнулся с nano был зело обескуражен хоткеями.Так вордстаровские, что ли.
> С тех пор старательно обхожу его стороной...
+1
>> Когда впервые столкнулся с nano был зело обескуражен хоткеями.
> Так вордстаровские, что ли.Смутно вспоминаются ^K-W, ^K-X и пр. -- совсем не похоже. //turbo-c-2-0~~
Давно это https://sourceforge.net/p/joe-editor/mercurial/ci/default/tr... было.
надо выпускать сразу два редактораГНУ Нуно
и ГНУ Ненуноодин - если захочу редактировать, а другой - если не захочу
И гну-не-гну, если не захочу захотеть не редактировать.
> И гну-не-гну,гну-гтпру же! Ближе к пормышленным стандартам, бро.
Выкинул nano и перешёл на micro. Доволен.
> microЧто, и такой есть? Только про pico слышал.
Внезапно есть
Repository : aur
Название : micro
Version : 1.3.3-1
Description : A modern and intuitive terminal-based text editor
URL : https://github.com/zyedidia/micro
AUR Page : https://aur.archlinux.org/packages/micro
Licenses : MIT
Keywords : micro text-editor
Provides : None
Depends on : None
Make Deps : None
Optional Deps : xclip
Conflicts With : micro-git
Replaces : None
Maintainer : sukso96100
Popularity : 4,79
Votes : 50
Out of Date : No
Submitted : Ср 27 апр 2016 08:42:33
Last Modified : Вс 15 окт 2017 06:18:02
Надо срочно писать femto и milli, пока имена не застолбили.
Вот макросов только в nano и не хватало.
Два редактора создало человечество за послепотопные годы, это вим и емакс.
Использую вим более десятка лет. На той неделе случайно узнал, что без каких-либо сложных плагинов табулиции, просто перед стандартным форматированием прогоняя строки через column -t можно получить няшнейшее форматирование!Пример стандартного форматирования:
message UserJoin {
mandatory Timestamp timestamp = 0;
optional string name = 1;
mandatory int32 id = 2;
optional string email = 3;
mandatory bool active = 4;
optional Gender gender = 5;
notused District district = 6;
optional Address address = 7;
notdefined string nationality = 8;
notdefined double age = 9;
}после :%!column -t и =%
message UserJoin {
optional string name = 1;
mandatory int32 id = 2;
optional string email = 3;
mandatory bool active = 4;
optional Gender gender = 5;
notused District district = 6;
optional Address address = 7;
notdefined string nationality = 8;
notdefined double age = 9;
}ляпота же, парни.
Ввиду проблем отображения тут в каменте выше отрисовалось как раз так, как выглядит проблема читаемости, которая решается данными командами.
После этих простых действий все слова после первого будут отформатированы пробелами в аккуратные столбики. Всем советую.
Применяйте теги [ CODE ] ... [ /CODE ]. :)PS: что до сабжа -- Ctrl-{Q,S,W} были просто феерическим выбором... впрочем, когда-то нашёл четверть часа на прохождение vimtutor и с тех пор рад сэкономленному времени :)
> Применяйте теги [ CODE ] ... [ /CODE ]. :)
> PS: что до сабжа -- Ctrl-{Q,S,W} были просто феерическим выбором... впрочем, когда-то
> нашёл четверть часа на прохождение vimtutor и с тех пор рад
> сэкономленному времени :)речь о форматировании такого вида
message UserJoin {
mandatory Timestamp timestamp = 0;
optional string name = 1;
mandatory int32 id = 2;
optional string email = 3;
mandatory bool active = 4;
optional Gender gender = 5;
notused District district = 6;
optional Address address = 7;
notdefined string nationality = 8;
notdefined double age = 9;
}спасибо за тэгирование.
>будут отформатированы пробелами в аккуратныеФронт борьбы с мс-офисом одобряет[I]!
> столбики. Всем советую.
стандартное лучше
В ядре макросы так выравнивают. Стандартное выравнивание вим не справляется. Надо именно этим способом выравнивать.
Если в nano отбросят совместимость и сделают нормальные ctrl+zxcv то захватят 99% рынка консольных редакторов.
Так micro же. Товарищ выше ссылку дал.