?

Log in

No account? Create an account

Previous Entry | Next Entry

В Юниксе есть ровно два текстовых редактора. То есть программ, называющих себя текстовыми редакторами, множество, но профессионал запускает либо (x)emacs, либо vi(m). А так как работа - это как правило редактирование текстовых файлов, то выбранная однажды и изученная вдоль и поперек программа становится как бы продолжением руки. Пальцы сами знают комбинации клавиш, и работают автономно, не отвлекая сознание от важных вещей: я только подумаю, что стоило бы вот этот кусок текста передвинуть вот сюда, - а пальцы уже все сами сделали. Поэтому хотя считается хорошим тоном уметь работать в обоих редакторах, человек обычно проводит большую часть времени в одном, давно облюбованном. Умные админы это знают, и без вопросов ставят на машины оба - пользователи бывают разные.

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

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

Недавно в разговоре с сыном выяснилось, что он использует только vim. Мы это обсудили и пришли к выводу, что это его вариант бунта поколений.

Comments

( 52 comments — Leave a comment )
Page 1 of 2
<<[1] [2] >>
arthin
Feb. 4th, 2009 11:38 pm (UTC)
Нда. Вот так дети вырастут - придешь домой, а дефолтной загрузкой BSD стоит...
cema
Feb. 5th, 2009 12:08 am (UTC)
FreeBSD или NetBSD?
(no subject) - vzaliva - Feb. 5th, 2009 07:26 am (UTC) - Expand
(no subject) - syarzhuk - Feb. 5th, 2009 07:00 pm (UTC) - Expand
(no subject) - scholar_vit - Feb. 5th, 2009 02:14 am (UTC) - Expand
nuns_islander
Feb. 4th, 2009 11:51 pm (UTC)
Мне emacs показался проще и ближе к WYSIWYG.
cema
Feb. 5th, 2009 12:08 am (UTC)
Ещё 10 лет назад я заметил, что студенты полюбили vim. Я 17 лет назад впервые сел за юникс и начал с vi'я, но он мне всегда казался каким-то искусственным, что ли. У emacs'а крутая learning curve, но меня на самом деле удерживала от перехода неудачная работа с кириллицей. Через год кириллицу починили, я перешёл на emacs и happily ever after это самое.

emacs

slobin
Feb. 5th, 2009 01:20 am (UTC)
А я не смог перейти на emacs по довольно странной причине: та часть мозга, которая отвечает за моторные навыки, не отличает его от "просто редактора". Не удаётся завести отдельно набор рефлексов для emacs'а и отдельно для "обобщённого notepad'а". А вот vi(m) и "просто редакторы" разведены чётко: включаются разные группы моторных навыков. На самом деле "в пальцах" у меня было даже три переключабельных набора, но третий за десять лет неиспользования полураспался.

... do se casnu ...

(no subject) - cema - Feb. 5th, 2009 03:36 am (UTC) - Expand
(no subject) - redtigra - Feb. 5th, 2009 01:26 pm (UTC) - Expand
(no subject) - slobin - Feb. 5th, 2009 03:54 pm (UTC) - Expand
ninazino
Feb. 5th, 2009 12:14 am (UTC)
*Старчески пригорюнясь* Я -- только в emacs'e работаю...
alexmoskalyuk
Feb. 5th, 2009 12:55 am (UTC)
А вот в нано и шорткаты запоминать не надо.
cema
Feb. 5th, 2009 03:37 am (UTC)
Ну в emacs'е (и нынешнем vi'е) тоже, в общем, не обяательно.
meshko
Feb. 5th, 2009 12:55 am (UTC)
забавно
Я пользуюсь vim, но не люблю его и знаю очень плохо.
А мой папа пользуется вообще nedit.
scholar_vit
Feb. 5th, 2009 02:15 am (UTC)
Re: забавно
Использовать редактор, который не любишь - это все равно, что ходить на нелюбимую работу или жить с нелюбимой женой.
Re: забавно - meshko - Feb. 5th, 2009 01:35 pm (UTC) - Expand
panchul
Feb. 5th, 2009 01:07 am (UTC)
А я использую редактор Joe, потому что он эмулирует WordStar, который эмулировал также TurboC, на котором я работал в 1988 - более 20 лет назад.

Все попытки перелезть на vi и emacs провалились - просто начинаю печатать медленнее.
kpoxa_e
Feb. 5th, 2009 01:26 am (UTC)
Ви Ай форева!!

Сорри. Сорвалась :))
cat_mucius
Feb. 5th, 2009 01:28 am (UTC)
Похоже, что самый паскудный и недостойный способ использую я - встроенный редактор в WinSCP.
angerona
Feb. 5th, 2009 01:33 am (UTC)
самое смешное, что эти навыки пальцев никуда не деваются.

Я уже почти десять лет работаю в Ворде, а не в emacs, но буквально вчера редактировала какой-то файл (смешно, но мои самые ценные данные таки в текстовых файлах, которые я редактирую только emacs, и на моем старом университетском аккаунте) -- да, так вот подумала "а как тут сохранить?" -- и чего-то в голову ничего не приходило, но на экране отразилось "file saved" -- потому что в голову может и не приходило, а пальцы уже отлично C-x C-s нажали и дальше печатали что надо. Так же и с другими простенькими коммандами.

Вот сейчас я подумываю, не выучить ли mutt в emcs и не читать ли почту таким образом. Все очень хвалят.
alex_tomas
Feb. 5th, 2009 06:22 am (UTC)
тексты редактирую в vim, долгое время использовал emacs/gnus для чтения почты, но потом достало отсутствие нормального мультитреда - если сервер молчит, а gnus решил вытащить почту, то приходится курить бамбук. плюс с русским языком в gnus были проблемы. хотя интерфейс мне нравился гораздо больше модных thunderbird и проч. с imap cache у gnus тоже были проблемы.
vitus_wagner
Feb. 5th, 2009 01:20 pm (UTC)
Это не нормальный мультитред. Вернее, нормальный мультред для этого не нужен. Для этого нужен нормальный event loop. Впрочем, этим не только emacs страдает - у mutt та же фигня.

(no subject) - alex_tomas - Feb. 5th, 2009 01:25 pm (UTC) - Expand
(no subject) - vitus_wagner - Feb. 5th, 2009 03:04 pm (UTC) - Expand
(no subject) - alex_tomas - Feb. 5th, 2009 03:07 pm (UTC) - Expand
(no subject) - vitus_wagner - Feb. 5th, 2009 03:10 pm (UTC) - Expand
(no subject) - alex_tomas - Feb. 5th, 2009 03:19 pm (UTC) - Expand
(no subject) - vitus_wagner - Feb. 5th, 2009 08:51 pm (UTC) - Expand
kzn
Feb. 5th, 2009 07:27 am (UTC)
А я переметнулся из клана vi(m) в emacs :)
Единственное - emacs должен быть разботать из X, а не в терминале.

Правда, я использую vi(m) для правки конфигов. Им как-то проще и привычнее. И vi(m) легковеснее, хотя это уже спорно.
vzaliva
Feb. 5th, 2009 07:30 am (UTC)
на самом деле те кто работают в emacs умеют обычно пользоваться vi тоже, а вот те что в vi обычно из emacs даже выйти не могут. :)

Как emacs пользователь я люблю классифицировать пользователей vi по ответу на вопрос как они выходят из редактирования файла с записью. Обычно есть 3 варианта:

1. :wq! - ретрограды
2. :x - продвинутые
3. ZZ - пока кроме меня знаю только одного человека который знает про эту комбинацию - dk379. Он меня и научил.


dmpogo
Feb. 5th, 2009 07:44 am (UTC)
Черт, не по пасть даже в ретрограды - :w:q :)
(no subject) - (Anonymous) - Feb. 5th, 2009 08:08 am (UTC) - Expand
(no subject) - slobin - Feb. 5th, 2009 03:57 pm (UTC) - Expand
(Anonymous)
Feb. 5th, 2009 07:55 am (UTC)
??!
emacs ?!! - теперь понятно почему мы с вами в противоположных политических лагерях.

1. Главная проблема редакторов в том, что буквы которые пишешь и которыми отдаешь команды - те же самые.

Было придумано 3 решения:

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

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

    Если вим в графическом виде (gvim), то режим показывает форма курсора. Если в консоли, то надо делать еще одну операцию (равную нажатию еще одной клавиши) - прервать внимание и посмотреть на индикатор внизу окна.

    -- IBM-овский редактор, который использовал для команд цифровую подгруппу на клавиатуре.
    До сих пор идея не умерла, и такую раскладку можно включить например в jed'е (который много слабее чем emacs/vim).
    Есть и отдельные минимальные implementations этого редактора.


Я придумал четвертое,
которое решает еще одну, вторую главную проблему vim'а: в разных режимах одни и те же клавиши ЗНАЧАТ РАДИКАЛЬНО РАЗНОЕ.
Например, crtl-U в командном листает экран вверх, а в печатном уничтожает строку (!!!)
Скудоумие разработчиков поражает: связать повседневную безопасную с деструктивной функциями на одной клавише. Блядь.

На самом деле серьезная претензия и к emacs и к vim'у в том, что все их клавиши выдумывались по ходу, бессистемно и не имеют мнемоник.

Так вот, это лечится моим четвертым методом. К счастью, vim позволяет очень широкий спектр of keyboard remappings, а потому я работаю в вим'е (как более "умной" с точки зрения команд системе), но со своими клавишами.
Думаю, я их могу remap и для emacs'а тоже, если будет надо.


2. Vim как редактор - более умная система. Он как и emacs манипулирует теми же самыми концепциями, но оформляет команды лучше.

Например, в Vim'е я всегда держу номера строк включенными, и двигаюсь, редактирую по их адресам, что резко сокращает количество того, что надо печатать.
:345
:,$s/
/
/g
:'a,'by затем Ctrl-o затем  p
и так далее

3. Ну и не говоря о том,  что >70МБ для редактора (это про emacs) - все-таки слишком много говна за собой волочь.
(Anonymous)
Feb. 5th, 2009 07:57 am (UTC)
Re: ??!


Sorry, disregard the example, which got garbled by LJ software
tchnical - (Anonymous) - Feb. 5th, 2009 07:59 am (UTC) - Expand
Re: ??! - slobin - Feb. 5th, 2009 04:02 pm (UTC) - Expand
Re: ??! - grundik - Feb. 5th, 2009 04:11 pm (UTC) - Expand
e2pii1
Feb. 5th, 2009 09:06 am (UTC)
A внyки бyдyт oпять emacs :-)
scholar_vit
Feb. 5th, 2009 08:34 pm (UTC)
В поэзии эту закономерность обнаружил Шкловский: дети, отвергая стиль отцов, пишут стихи стилем, напоминающем стихи дедов.

Ваша уверенность в том, что и emacs, и vi будут доступны внукам, внушает оптимизм.
Хм... - vryadli - Feb. 5th, 2009 09:56 pm (UTC) - Expand
(no subject) - e2pii1 - Feb. 6th, 2009 01:36 pm (UTC) - Expand
Page 1 of 2
<<[1] [2] >>
( 52 comments — Leave a comment )

Profile

knot
scholar_vit
scholar_vit

Latest Month

August 2018
S M T W T F S
   1234
567891011
12131415161718
19202122232425
262728293031 

Tags

Powered by LiveJournal.com
Designed by Paulina Bozek