LINUX.ORG.RU
решено ФорумTalks

Продвинутые варианты использования emacs

 


1

2

Я использую исключительно vi или vim. Мне достаточно не сильно прокачанного .vimrc и пары плагинов (nerdtree и taglist), да и этими пользуюсь только по необходимости. Даже, думаю, и этого можно было бы избежать для облегчения установки. Использование - правка конфигов, C, C++, Python, R, LaTeX, математика, алгоритмы, анализ данных.

Такое положение дел меня удовлетворяло бы, если бы не одно «но». Периодически до меня долетают отголоски того, что там, в emacs, есть нечто особое и эксклюзивное, что не так просто получить без серьезной прокачки vim или не получить вовсе.

Что вызывает сомнения (с равным приоритетом важности):

- масштабность (громоздкость) установки, контроль конфигов и плагинов (они должны легко перемещаться через git между машинами). Т.е. они должны размещаться компактно и устанавливаться быстро. Будут ли с этим проблемы?
- возможность работы в консоли - какие будут ограничения?
- возможность работать в двух редакторах (vim, emacs) параллельно (для разных задач). Не будет ли здесь проблем с координацией движений? Как это бывает, когда вы пересаживаетесь с одного рояля на другой, с автомата легковушки на ручку гузовика и т.п.

Цель использования emacs - не удобства, а расширение возможностей. Но хотелось бы получить комментарии по поводу этих сомнений.

Меня ещё интересует, для чего особенного вы используете emacs (не только в моих вариантах использования, а в любых, в том числе для лиспа), и в чем он для вас незаменим. Я имею в виду не столько перечисление языков, сколько направления деятельности - анализ данных, математика, статистика, другие расчеты, другие науки, разработка и прочее.

Какие особенности вашей установки (в смысле плагинов)?

Deleted

emacs терпеть не могу(жирный тормозной комбайн, умеющий всего понемного, но ничего толком), vi просто не использую за ненадобностью, но тебе, ТС, нужно обратить внимание на evil и, возможно, org-mode.

ptarh ★★★★★
()
Последнее исправление: ptarh (всего исправлений: 1)

Периодически до меня долетают отголоски того, что там, в emacs, есть нечто особое и эксклюзивное, что не так просто получить без серьезной прокачки vim или не получить вовсе.

так и есть. примеры: прием/отправка электронной почты, org-mode.

- масштабность (громоздкость) установки, контроль конфигов и плагинов (они должны легко перемещаться через git между машинами). Т.е. они должны размещаться компактно и устанавливаться быстро. Будут ли с этим проблемы?

масштабность установки - это про сам Emacs? вообще-то он довольно тяжелый. что касается конфига и плагинов, то здесь никаких проблем нет. все расширения лежат в специальной директории (~/.emacs/lisp, например), конфиг - ~/.emacs.

- возможность работать в двух редакторах (vim, emacs) параллельно (для разных задач). Не будет ли здесь проблем с координацией движений? Как это бывает, когда вы пересаживаетесь с одного рояля на другой, с автомата легковушки на ручку гузовика и т.п.

проблемы действительно будут. после богоподобного Emacs пользоваться убогим vi(m) очень тяжело и неудобно.

Lincor
()
Ответ на: комментарий от StReLoK

Я интересуюсь просто для души.

Deleted
()

Мне емакс очень нравится, но очень-очень-очень много пилить его приходится, постоянно, непременно. Юзаю prelude, как базу для своих конфигов. Иногда опускаются руки, когда начинает что-то глючить, и нет желания копаться в потрохах множества конфигов, ища, что же отвалилось. Использую для разработки, в основном, на c++ и, с недавних пор, python. Редактирую конфиги им же, и всякие заметки в .txt

Имхо, у емакса расширение гибче и удобней. Пользовавшись вимом, не выходил за рамки легкой правки дефолтного vimrc. В емаксе есть хотя бы обозначенный язык elisp, что за скрипт в vim я до сих пор не особо понимаю.

Deleted
()

собственно кроме текстового редактора:

  • программинг на всех язычках, в т.ч matlab
  • интерфейс для git
  • чтение почты, newsgroups
  • file manager
  • соснольки: eshell, ansi-term, term
  • jabber
  • irc, bitlbee
  • latex via auctex
  • чтение простых сайтов без js и css
  • org-mode
  • twittering-mode

раньше было еще постинг в lj и проигрывание музыки.

иногда юзают vim для быстроправок конфигов, проблем с координацией не имею.

x4DA ★★★★★
()
Последнее исправление: x4DA (всего исправлений: 1)

Использую для Clojure и ClojureScript.

Консоль запускаю отдельно (т.к. зачастую работаю на Windows, а не на Linux и, лично для меня, это удобной получается).

масштабность (громоздкость) установки, контроль конфигов и плагинов (они должны легко перемещаться через git между машинами). Т.е. они должны размещаться компактно и устанавливаться быстро. Будут ли с этим проблемы?

С 24+ всё просто - скачать, скомпилировать (опционально под Linux, если нет свежего пакета), добавить ярлык\PATH. *в репах дистров сейчас старый emacs часто валяется, 24.3, а сейчас уже 24.4 вышел, поэтому я компилировал под Linux себе.

Конфиги засовываются в отдельную папку и легко переносятся с машины на машину. Плагины качаются из репозиториев (менеджер пакетов встроен в emacs) и требуют лишь установки на новой системы (можно прописать автоустановку, если их нет).

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

Я, частенько, запускаю Sublime Text параллельно, если html\css править надо. У меня проблем нет.

Norgat ★★★★★
()

Я использую исключительно vi или vim.

внезапно окажется что в ымаксе все через жопу. ваще все!

и тонны манов.

Rastafarra ★★★★
()

- возможность работы в консоли - какие будут ограничения?

16 цветов, картинок не будет, не будут работать клавиши типа C-1, C-2, backtab.

Extraterrestrial ★★★★★
()
Ответ на: комментарий от Extraterrestrial

Через жопу это как раз в vim.

вот видишь, емаксеры как всегда неправы!

Rastafarra ★★★★
()
Ответ на: комментарий от Rastafarra

BUTTHURT

ымакс говно!

Вот и вимеры разбавили butthurt имаксеров.

Camel ★★★★★
()

Мне в emacs нравится механизм tramp.
Это когда редактор запущен у тебя, а файлы открываешь через ssh с удаленного хоста. Тут же, в редакторе, можно открыть отдельный буфер с eshell - и вот тебе консоль на удаленный хост.
Еще doc-view mode хорош, вполне удобен как читалка для pdf.

Komintern ★★★★★
()
Ответ на: комментарий от Komintern

Мне в emacs нравится механизм tramp.
Это когда редактор запущен у тебя, а файлы открываешь через ssh с >удаленного хоста. Тут же, в редакторе, можно открыть отдельный буфер с >eshell - и вот тебе консоль на удаленный хост.

Вот это круть! Давно нехватало такого. Это по дефолту или нужно что-то доустановить?

Deleted
()
Последнее исправление: Deleted (всего исправлений: 1)
Ответ на: комментарий от Rastafarra

Готов поступиться этим ради эксклюзивных use cases.

Deleted
()

масштабность (громоздкость) установки

если сидишь не через gprs на жестком диске есть лишние 100 мегабайт места - это тебя волновать не должно

контроль конфигов и плагинов (они должны легко перемещаться через git между машинами). Т.е. они должны размещаться компактно и устанавливаться быстро. Будут ли с этим проблемы?

elpa, я даже запилил конфиг для автоматической доустановки того, чего нужно конфигам

возможность работы в консоли - какие будут ограничения?

с мышкой и отображением картинок будет печаль. С другой стороны - а нафига?

возможность работать в двух редакторах (vim, emacs) параллельно (для разных задач).

а нафига?

Не будет ли здесь проблем с координацией движений?

я изредка использую vi, серьезных проблем не испытываю, но ты можешь посмотреть в сторону Evil и использовать в емаксе +/- те же сочетания клавиш

Меня ещё интересует, для чего особенного вы используете emacs (не только в моих вариантах использования, а в любых, в том числе для лиспа), и в чем он для вас незаменим.

в написании конфигов для емакса, а последние как раз и позволяют настроить сабж для максимального удобства

Я имею в виду не столько перечисление языков, сколько направления деятельности - анализ данных, математика, статистика, другие расчеты, другие науки, разработка и прочее.

разработка, почта, болтология в интернетиках

Какие особенности вашей установки (в смысле плагинов)?

использую исключительно встроенный менеджер пакетов (т.е. никаких git clone), вместо require запилен враппер, умеющий устанавливать недостающие «плагины» одной командой (и перезагружать требуемые конфиги).

lazyklimm ★★★★★
()
Ответ на: комментарий от Deleted

дефолтный дефолт, только почитай статью на emacswiki по теме

lazyklimm ★★★★★
()
Ответ на: комментарий от lazyklimm

возможность работы в консоли - какие будут ограничения?

с мышкой и отображением картинок будет печаль. С другой стороны - а нафига?

Да, мне не нужны картинки в редакторе ) Мышь принципиально не использую. Будут ли другие проблемы от работы только в консоли? У меня есть десктопы, на которых я постоянно работаю, вообще без иксов.

Deleted
()
Последнее исправление: Deleted (всего исправлений: 1)
Ответ на: комментарий от Deleted

по дефолту.
C-x C-f /ssh:user@host:/path/to/file

оно спросит пароль. можно без пути к файлу, тогда после ввода пароля можно будет табом дополнять и по директориям лазить через dired.

Komintern ★★★★★
()

Использую emacs и org-mode для конпектов. Все остальное делаю в виме. В emacs естественно evil, особых проблем с координацией нет. Иногда конечно, evil ведет себя не так как вим, но особых проблем это не создает, это та притча о том что не один симулятор вима, не повторяет вим в точности, но на конкретные несоответствия указать очень сложно.

zinfandel ★★
()
Ответ на: комментарий от Deleted

Да, мне не нужны картинки в редакторе

Иногда бывает нужно из браузера что-то глянуть. Я даже для этого дела сварганил emacs'овую обертку к fim и прикрутил ее к w3m-el.

Extraterrestrial ★★★★★
()
Последнее исправление: Extraterrestrial (всего исправлений: 1)
Ответ на: комментарий от lazyklimm

вместо require запилен враппер, умеющий устанавливать недостающие «плагины» одной командой (и перезагружать требуемые конфиги).

Покажи :)

feofan ★★★★★
()
Ответ на: комментарий от Deleted

Будут ли другие проблемы от работы только в консоли?

есть знакомые которые только в консоли и используют, вроде бы все норм

У меня есть десктопы, на которых я постоянно работаю, вообще без иксов.

жесть какая, но зачем?

lazyklimm ★★★★★
()

Веду offline-блог в org-mode (я называю его судовой журнал). Больше имакс ни для чего не годен. Согласен с джентльменом выше: кривое, жирное, тормозное говно. Диву даюсь, как ЭТО запускали на машинах 90х.

Deleted
()

Я использую emacs как текстовый редактор для правки конфигов, быдлокода на php, lua, python и bash. Использую SLIME в связке с SBCL, небольшие расширения на elisp. gnus для почты, jabber.el для im, emms для музыки и видео. Ещё как фронтенд к lftp и иногда shell для мелочи (хотя в качестве терминала rxvt-unicode удобнее да). org-mode в качестве ежедневника на работе и для хранения учётных данных (на лету при сохранении шифруется). Для просмотра документов (если не нужны закладки) и изображений. Чтение манов в емаксе мне нравится ещё.

На фоне этого любой текстовый редактор бледноват. Хотя на серверах я юзаю vi/vim, так как не везде есть возможность законнектиться емаксом через ssh (на работе приходится наружу через матрёшку удалёнок лазить).

Просто emacs это не текстовый редактор, а lisp-машина с приличной пачкой софта, среди которого есть и текстовый редактор =)

skiminok1986 ★★★★★
()
Ответ на: комментарий от lazyklimm

жесть какая, но зачем?

По большому счету, всё консольное. В иксах - только верхушка айсберга.

Deleted
()
Ответ на: комментарий от lazyklimm

вот сам кот

(require feature nil t)
щас так не делают.
Для пакетов --

(with-eval-after-load "package-name-autoloads"
  (setq nastroyki paketa)...)
Использование with-eval-after-load в сочитании с autoload позволяет сильно ускорит запуск бывают, правда кривые пакеты, в которых автолоадс не генерится как надо, мжно делать так:
(with-eval-after-load "package-name"
  (setq nastroyki paketa)...)
(require package-name nil t)

установить пакет, если ещё не установлен:
(defun require-package (package &optional min-version no-refresh)
    "Install given PACKAGE, optionally requiring MIN-VERSION.
If NO-REFRESH is non-nil, the available package lists will not be
re-downloaded in order to locate PACKAGE."
    (if (package-installed-p package min-version)
        t
      (if (or (assoc package package-archive-contents) no-refresh)
          (condition-case err (package-install package)
            (error (message "Package: %s, Error: %s." package err)))
        (progn
          (package-refresh-contents)
          (require-package package min-version t)))))

Bad_ptr ★★★★★
()
Последнее исправление: Bad_ptr (всего исправлений: 2)
Ответ на: комментарий от Bad_ptr

ок, я просто давно это костылил :), при случае переделаю кошерно, спасибо

lazyklimm ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.