Emacs-as-OS: застарілий? [зачинено]


22

Намагаючись досягти принаймні статусу початківця з таким легендарним редактором, я кодую в Emacs останні два місяці. Я намагаюся зберігати відкрите серце, але я континентально не погоджуюся з одним основним вибором дизайну: тим, що Emacs дозволяє його користувачам ніколи не залишати їх. У світі 2010 року я просто думаю, що кожна бічна особливість Emacs безнадійно відстає від спеціалізованого програмного забезпечення:

  • Я б ніколи не використовував його вбудований браузер; Chrome на роки вперед.
  • Я ніколи не використовував би його функцію; Шлях пошуку (Mac OS X) відповідає моїм потребам.
  • Я б ніколи не використовував його вбудовану електронну пошту; Веб-інтерфейс Gmail має більш відповідні функції, такі як "Пріоритетна папка".
  • І т.д.

Звичайно, я можу час від часу занурюватися в Emacs для використання повторних символів і т. Д. Для однієї з вищезазначених завдань, окрім, ніж регулярного виразів, я дійсно не бачу причин ніколи торкатися цих побічних особливостей. Я абсолютно новачок, але в мене є сильне відчуття кишки, що Emacs-as-an-OS застаріло.

Експерти Emacs, чи вважаєте ви, що вибір Emacs бути всеосяжним середовищем - це правильний вибір для 2010 та майбутнього? Чи є певні периферійні особливості, які все ще знаходяться або випереджають свій час порівняно з альтернативними?


9
Це справді питання? Схоже, ви вже вирішили.
Ларрі Коулман

5
@Emacs дуже приємний для розвитку gcc + gdb у середовищі Unix. Також приємно писати LaTeX.

20
Ось чому Emacs має вбудований психіатр.
Тім Пост

3
@Tim, Mx тетріс набагато веселіше.

2
Я вас цілком розумію ... Я багато років використовував vi і потребував певного часу, щоб вивчити Emacs ... і я прийшов до висновку, що обидва просто не відповідають моїм потребам ... в програмуванні я вважаю за краще сучасний IDE (Eclipse) і для простого редагування / написання тексту, нано просто чудово.
Олівер Вайлер

Відповіді:


14

Я використовую emacs останні 10 років (від і до), і можу лише сказати, що ви абсолютно праві . Ще в ті часи я використовував веб-переглядач gnus і w3, але, очевидно, вони вже не до нього в порівнянні з виділеними програмами. Але, очевидно, ви не можете запустити Chrome у текстовому режимі, тому тут перемагає emacs. І навіть там я вважаю за краще використовувати для цього рись / елінкси чи баранини.

Emacs-програміст-редактор також втратив зв'язок. Редагування тексту - це просто чудово, але коли я пишу код , я вважаю, що бажаю таких функцій, як: визначення goto, автоматичне завершення, рефакторинг, підказки синтаксису, документи параметрів тощо тощо (думаю Eclipse). Я спробував пару режимів emacs, але ніколи не змусив його працювати правильно. І ні, я не хочу вчитися Елісп, дякую.

Крім того, emacs насправді не розуміє семантику коду. Це болісно очевидно, коли кодується у файлі, що містить декілька мов, таких як html з javascript та php чи щось. Це просто руйнується. Для цього я набагато скоріше використовую будь-який інший редактор (блокнот ++ або будь-який інший), який робить цю роботу набагато краще.


5
З речей, які ви перераховуєте, Emacs насправді має "goto definition" (з використанням етагів), "auto завершення" ( autocomplete.elя думаю), підказки щодо синтаксису / параметри документів (за мовою за мовою). Єдине, про що ви згадуєте, він не підтримує AFAIK - це автоматичний рефакторинг, який не є необхідним і не корисним для всіх мов. Кілька режимів - це жорстоко; він існує і підтримує PHP та змішані мови, але це погано (як у надмірно повільному, якщо я не на своєму робочому столі). Я також дам вам ту саму пораду, яку я даю будь-якому колезі: якщо ви не хочете вчитися на Ліспі, не використовуйте Emacs, це нічого не зробить для вас.
Inaimathi

8
Домовились; Emacs - це не ОС. Моє заперечення - "Emacs-програміст-редактор також втратив зв'язок". Це особливо необгрунтований аргумент, враховуючи те, що ви відмовляєтеся вивчати Елісп, оскільки більша частина переваг редактора Emacs-програмістів походить від застосування налаштувань. Я не заперечую проти "я не використовую Emacs, тому що я не люблю вчитися на Ліспі", але ви здаєтеся, що ваше умисне незнання інструменту впливає на його придатність. Це нарівні зі мною: "Eclipse смокче, тому що у нього немає підтримки PHP. І я не відчуваю, як навчитися встановлювати плагіни, дякую".
Inaimathi

1
@Inaimathi Вам не доведеться вивчати elisp (або будь-яку мову), щоб вміти правильно використовувати затемнення. Встановлення плагінів теж не вимагає цього.
Мартін Вікман

2
@Martin - у нього немає вбудованої підтримки PHP (або не було, коли я ним користувався); для цього вам потрібно встановити плагін. Викладене вище твердження еквівалентно "[Редактор] смокче, тому що у нього немає [функція, яка насправді є, але це потрібно включити], але я не дуже люблю вчитися [те, що вам потрібно зробити для того, щоб зробити щоб включити його] », і моя точка зору в тому , що це є необгрунтованим аргумент.
Inaimathi

3
@Inaimathi: Що стосується рефакторингу, я шукав програму автоматизованого рефакторингу на C ++, і одна з небагатьох, яку я знайшла, була в Elisp. Якщо ви скажете, що "emacs не підтримує X", ви, ймовірно, помиляєтесь.
Девід Торнлі

19

Виберіть правильний інструмент для роботи.

Спробуйте запустити Chrome або Path Finder через ssh-з'єднання - тут вам знадобляться альтернативні інструменти, і Emacs був розроблений для роботи в терміналі.


Гарний момент щодо ssh.
AlcubierreDrive

3
x11 переадресація?
TheLQ

7
Скільки людей насправді використовують веб-браузер через ssh-з'єднання?
комман

1
@compman, так. Це може бути надзвичайно корисно для завантаження файлів з веб-сайтів.

1
У OS X є VNC, просто тунель VNC-з'єднання через SSH, і вам не потрібно турбуватися, що OS X не використовує X11.
Лі Лі Райан

8

Я навіть не використовую вбудованого терапевта так сильно, але я використовую Emacs і мені це подобається не тому, що він є всеосяжним, а тому, що він нескінченно настроюється та потужний як текстовий редактор. Також я знаю багато натискань на цю клавішу. Успішне редагування тексту - це все про натискання клавіш.

Якщо ви хочете з цим розвинути свою продуктивність, Стів Йегге має кілька хороших порад.


Я категорично не погоджуюсь із тим, як Стівс підходив перезаписувати тонни ключів, щоб змусити Emacs вести себе. Вивчіть стандартні прив’язки ключів та використовуйте свої .emacs для налаштування їх поведінки.

Його справа в основному ергономічна - він не каже, що існує проблема зі стандартними прив'язками як прив'язками, він говорить, що є проблема з тим, де клавіші знаходяться на клавіатурі, і що якщо ви хочете зробити їх простими у використанні вам потрібно знайти клавіші для цієї мети, які не потребують, щоб ви заплутували свої маленькі пальці в найдальніших куточках клавіатури. Я бачу сенс у цьому, але це обмежує вас, якщо ви часто міняєте машину, оскільки тоді вам потрібен інший набір м’язових спогадів або витрачаєте віки, переналаштовуючи кожну машину, яку ви використовуєте.
гленатрон

5

Emacs ніколи не призначався для масового ринку. Він розроблений для ефективного використання людьми, які знайшли час, щоб дізнатися, як це працює. Однак, один розмір підходить не всім, тому вам можуть не сподобатися emacs навіть після того, як ви дізнаєтесь більше про нього.

EDIT: Мої дві улюблені функції emacs, крім редагування тексту, - це режим оболонки та gnus. Розчарувавшись у групах Google через увесь спам, я зареєструвався у Вічному вересні та навчився користуватися gnus. Навчатися у повідомленнях набагато швидше, і лише випадкові повідомлення про спам потрапляють, і позбутися від них - справа одного натискання клавіш. Режим оболонки особливо корисний для мене на роботі, оскільки копіювання / вставка ефективніше, ніж це в запиті DOS.


Я не відкидаю редактор тексту як застарілий; Я згоден, це дуже ефективно, коли ти звикнеш до цього. Моє запитання полягає в заслузі вибору дизайну в тому, що ви повинні вміти робити все і все, не залишаючи Emacs. Чи є певні периферійні особливості, які все ще є великими, чи ви маєте уявлення про історію колись великих периферійних особливостей, які зараз перевершили?
AlcubierreDrive

1
Я відредагував звільнення як застарілий розділ, прочитавши ваші коментарі. Я не використовую emacs для всього, але мені дуже подобаються режим оболонки та gnus.
Ларрі Коулман

Солодке! Я додав нову другу половину до свого запитання у відповідь на ваші відгуки. Ваш коментар відповідає на це так +1
AlcubierreDrive

1
Крім того, що можна робити все в Emacs було набагато більше сенсу, наприклад, у 1994 році, коли комп'ютери, де значно повільніше, ніж зараз. Я час від часу використовую розроблені, якщо я вже в emacs і багато використовую оболонку. Можливість робити багато речей у моєму редакторі або принаймні без переміщення до миші - це виграш для мене. У вас може бути різний смак (це справді питання смаку на якомусь рівні)
Zachary K

2

Я завжди підходив до Emacs як до платформи, а не до нестандартного рішення. Існує багато пакетів, які дублюють функціональність або призначення, і ви вирішуєте, відповідають вони вашим потребам чи ні.

Це також причина, чому багато речей застаріли. Більшість людей (з якими я все-таки зустрічалася), які використовують Emacs, не використовують його для читання електронної пошти чи перегляду Інтернету. Однак мені важко знайти іншого редактора, який має

  • як складні можливості віддаленого редагування
  • створення та редагування макрос безкоштовною формою
  • глибина та широта доступних розширень / пакетів

Більше десятиліття я був моїм редактором для розробки програмного забезпечення та обробки текстів.

Найкраще, що я не повинен торкатися миші під час використання Emacs.


2

Emacs може стати для вас ОС, якщо ви готові навчитися Lisp та написати власні функції, що відповідають вашим потребам.

Але сьогодні ви можете знайти все необхідне в інших інструментах, виготовлених іншими великими людьми. Ці люди зробили ці інструменти, тому що відчували, що їм потрібні, як і ви, хто буде ними користуватися. Оскільки багато з них є відкритим кодом, є спільнота, яка зробить їх все кращими та кращими, з усіма необхідними функціоналами.

Намагатися вдосконалити Emacs важко, тому що ви повинні навчитися Lisp. Навіть існуючі плагіни старіють і старіють. Візьмемо, наприклад, мовні режими, звичайні мови, такі як JS та PHP, навряд чи підтримуються навіть для виділення синтаксису. Найкращого режиму, який ви могли б знайти для них, просто недостатньо.

Emacs - чудовий інструмент як у правильних руках, так і для правильних завдань. Але є кращі інструменти для заданих завдань, і ви обов'язково повинні використовувати їх замість цього.


1

Я не хочу розпочинати святу війну, насправді був час, коли я використовував emacs кожен другий день (один день vim, один день emacs). У Emacs немає нічого поганого, це справді чудовий інструмент. Чудовий, чудовий інструмент.

Але, як справжній вимер, я завжди трохи засмучувався тим, що багато емакери намагаються використовувати emacs буквально скрізь, для буквально усіх завдань.

Читання пошти, запитів до баз даних, читання PDF-файлів - це найневинніші завдання, які я бачив як "ухильнені".

Отже, як на мене, існують основні дерева використання emacs:

  1. Редагування тексту І це чудовий супер інструмент. Повірте, після довгого використання vim чи emacs ви повністю пропустите його функції у більшості сучасних IDE.

  2. ІДЕ. Ну, це можна було б зробити. Більше того, він може якось конкурувати з режимами IDE. Але факт полягає в тому, що для того, щоб зробити це дійсно конкурентоспроможним, слід докладати великих вкладень. Вам слід спробувати зібрати безліч різних сценаріїв. Ви навіть повинні написати свої фрагменти коду. Я б, якщо чесно.

  3. Інші завдання, більшість з яких екзотичні або навіть езотеричні. Гра в тетріс тощо. Краще ні.


1
Як давній користувач як emacs, так і vi (досвід роботи обох понад 20 років, а також близько 1 року використання Ed як мого основного редактора), я вважаю emacs близьким до вищого для випадкових "у мене з'являється повторюваний код , нехай редактор автоматично його генерує "(а не, скажімо, написати інший фрагмент коду, потім компілювати та запустити його для створення коду).
Ватін

0

Десь у моїй колекції речей, я впевнений, що моя дружина хоче, щоби я просто викинув, у мене є копія Emacs на стрічці QIC-40. Я заплатив 50 доларів, щоб отримати його.

Я не міг # @% # $ # $% @ ^ #% # витримати його тоді, я не витримую його зараз. Я не кажу, що для деяких це не чудовий редактор, але для мене .. це просто заважає більше. Своєю первісною початком було працювати над ключами коксових пляшок , і це було дуже добре.

Якщо ви запускаєте програму, будь-яку програму, ви робите це з надією, що вона збільшить (або принаймні не завадить) вашій продуктивності. Якщо це не працює для вас, не використовуйте його.

Повірте, вам не проблема.


2
"Це важливий артефакт, і він належить до музею!"

1
"Якщо це не працює для вас, не використовуйте його" - це заклик до суб'єктивності, тому "ви не проблема" є протиріччям.
Джон Перді
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.