Выбор редактора

Консольных (и не очень) редакторов в мире Linux сейчас существует великое множество.

Наиболее маститые из них давно уже выросли из понятия ``редактор'' в скорее ``интегратор'', став своеобразными операционными системами (то есть их пользователь может в Linux и не выходить - почти все, что ему может там понадобиться уже есть в ``редакторе'').

Лидером по части ``интеграторства'' заслуженно считается Emacs, что обусловлено тем, что он по сути не просто редактор, а Lisp-машина. То есть при хорошем знании Lisp (а точнее его диалекта E-Lisp) вы сможете превратить Emacs практически во что угодно. Практическая неограниченность (то есть ограниченность только возможностями E-Lisp) настраиваемости Emacs`а привлекает к нему многих пользователей, являющихся, естественно, еще и программистами. Оные пользователи, желая облегчить себе жизнь, облегчают ее и вам. Так под Emacs появляются почтовые клиенты (Gnus - один из лучших почтовых клиентов и лучший ньюсридер, в частности и из-за конфигурябельности), файловые менеджеры и даже вездесущие игры тетрис и life...

Продолжением достоинств Emacs`а являются его недостатки. Мощнейшие возможности настроек зачастую отпугивают пользователей, не желающих разбираться в не особо нужном им e-lisp. Многим не нравятся монстры, каковым Emacs несомненно является -- большой, весьма многофункциональный, весьма не интуитивен новичкам39...

Нужна альтернатива? Их есть у нас. ViM. Присутствует (хотя бы в своей инкарнации по имени vi) практически во всех системах, легок при загрузке (хотя это не сложно исправить), также весьма многофункционален (поддерживает плагины, макросы и многое другое), неплохо настраиваем и опять-таки имеет свой язык (впрочем есть возможность использования других - например, Perl). Этот редактор также может отпугнуть новичков, переходящих на Linux с WindowsOS (и привыкших к тамошним предефинированным клавиатурным комбинациям), но не спешите отчаиваться - читайте дальше. Данная статья пишется как раз в ViM (точнее в vim-athena-plain -g) и я постараюсь рассказать о некоторых особенностях работы в нем.

Заметьте, что функционально оба эти варианта равноправны, а отличаются больше идеологически: Emacs -- система (операционная), работа идет не столько с ним, сколь в нем; тогда как ViM -- более отвечает UNIX-way, ибо хотя и позволяет практически все, что и Emacs, но располагает именно к работе с ним, вызывая его когда нужен редактор, а из него запускать только то, что имеет непосредственное отношение к редактированию текстов...



Footnotes

... новичкам39
Как сказал об этом Линус Торвальдс в своей книге Just For Fun: ``Gnu-emacs начинался как редактор, но его создатели встроили в него кучу разных функций. Они хотели, чтоб это был редактор, который можно программировать, но потом программистская часть выросла до невообразимых размеров и редактор стал настоящим кошмаром. В него входит все, кроме разве что кухонной раковины, именно поэтому кухонная раковина часто служит его значком. Программа известна как чудовищный монстр, который включает больше функций, чем в принципе может понадобиться редактору.''

Copyleft © 2002-2003 г.   Nikolay A. Panov, "Intro To Linux" (orig),  niksite@mail.ru,  ICQ: 122-40-8888