LINUX.ORG.RU

Emacs 27.1

 , , ,


5

5

Свершилось, братие и сестрие!

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

В данном выпуске:

  • встроенная поддержка чисел целых чисел произвольного размера (в Emacs встроен великолепный калькулятор с поддержкой RPN и алгебраических вычислений)
  • встроенная поддержка JSON
  • для рендеринга шрифтов теперь используется библиотека HarfBuzz
  • добавлена поддержка табов
  • работа с изображениями без использования ImageMagick
  • Lexical-binding используется по-умолчанию (если вы не писали на Lisp данный пункт можно смело игнорировать)
  • поддержка дополнительного конфига для ранней инициализации (это может быть интересно пользователям spacemacs)
  • поддержка спецификаций XDG на размещение файлов в домашней директории (наконец-то!)

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

Ценители архи-боянов приглашаются в комментарии - делать ставки кто первый «пошутит» про отсутствие в GNU/Emacs текстового редактора: когда ещё доведётся услышать шутку, которая старше большинства посетителей ЛОРа?

>>> Подробности

★★★★★

Проверено: alpha ()
Ответ на: комментарий от loz

Ну Emoji цветные 🌈 всяко проще парсить. Пользователю

fornlr ★★★★★
()

Трям всем причастным и сочувствующим!

Мечтаю о возможности соединений emacsclient посредством ssh-forward. :D

ssh2 ★★★★★
()

работа с изображениями без использования ImageMagick

Ждал больше всего. Эти пляски в новыми версиями IM, которые то работают, то не работают, поднадоели. Заодно attack surface уменьшили.

nhdt
()

реализующей редактор текста, файловый менеджер, почтовый клиент, систему установки пакетов и множество различных функций

А как же заповедь Linux way, gnu, fsf о том, что программа должна выпонять одну функцию и хорошо? А тут уже целый комбайн?

grovekeeper
()

Свершилось, братие и сестрие!

Аминь !

anonymous
()
Ответ на: комментарий от Lzzz

А зачем Столлман разработал Emacs Lisp? Ведь сам Lisp уже в то время уже существовал.

во-первых, не Столлман, а Гослинг: пруфлинк. во-вторых, не совсем разработал. и не совсем сам емакс, а дистрибутив макросов под teco. потом уже их перепортировал в как бы свой порт гослингового емакса.

сама реализация именно гослингового емакса как базис имхо не самая лучшая. микроемаксы всякие даже местами бывают более компактны и наворочены.

в-третьих, не совсем понятно почему GNU таки лучше. ещё в Multics был емакс на PL/I, с нормальной асинхронностью и многопоточкой (sic), которую в GNU только недавно допилили. на выскокоуровневом языке. с более высокоуровневым лиспом, чем elisp.

в-четвёртых, eine/zwei/climacs(common lisp) drei и duce (dylan) как бы не более православные чем.

в-пятых, реализация emact включающая ISLISP реализацию на основе OpenLisp довольно неплоха. а это тоже примерно 1985 год.

в-шестых, общая идея емаксовая, только язык реализации другой. редакторы e, m, k, kedit, xe_xwd, THE, textadept, lite, slickedit, brief/grief, и т.п.

в-седьмых, реализации на схеме типа TexEmacs и т.п.

в общем: полным полно было уже и в то время как и более других реализаций лиспа, и более других реализаций емакса-на-лиспе, так и более других реализаций идеи «расширяемого программируемого текстового редактора».

anonymous
()

релиз системы исполнения emacs-lisp,

Тонко. Одобряю.

no-such-file ★★★★★
()

если вы не писали на Lisp данный пункт можно смело игнорировать

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

no-such-file ★★★★★
()
Последнее исправление: no-such-file (всего исправлений: 1)
Ответ на: комментарий от no-such-file

Можно. Но тут получается всё по другому. Большинство пишет или обновляет дополнения для snapshot версии emacs. Слишком много изменений, по сравнению с 26 версией.

Vault_Boy
()
Ответ на: комментарий от anonymous

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

фанатики?

anonymous
()

Судя по действующим лицам и времени происходящего, некто счёл комментарий руководством к действию и решил развести очередную клоунаду.

anonymous
()
Ответ на: комментарий от ugoday

Сложно вообразить как это удобно представить в виде вкладок

Именно. Наверное добавили чтобы хомячки с ходу не убегали в ужасе.

no-such-file ★★★★★
()
Ответ на: комментарий от LamerOk

Ты их колллекционируешь

В emacs нет нужды закрывать буфер, там совсем другой воркфлоу в отличие от GUI редакторов с табами. Поэтому открытые буферы накапливаются по мере работы. Щас глянул, у меня за 24 дня с перезагрузки открыто 310 буферов.

no-such-file ★★★★★
()
Последнее исправление: no-such-file (всего исправлений: 1)
Ответ на: комментарий от Landgraf

Чем emacs лучше Atom\Visual Code?

Примерно тем же, чем борщ лучше шавермы. Ничем, они все по-своему крутые. Ну кроме атома.

Nervous ★★★★★
()

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

Да уж, это же так важно. Нам ведь шашечки, а не ехать.

vyazovoi ★★★
()

Я как выучил Vim, так до сих пор им и пользуюсь:

  • Когда-то переводил в Vim, пока не осилил OmegaT.
  • Когда-то писал в Vim стихи и прозу (в стол), статьи и новостные заметки (за денежку), планы уроков.
  • До сих пор правлю конфиги в Vim.
  • До сих пор редактирую в Vim распознанные Tesseract сканы.
  • Иногда пишу в Vim свой говнокод.
  • Временами создаю документы LaTeX, тоже в Vim.

И смысла переходить на Emax не вижу. Впрочем, никто меня не уговаривает, да и сам я никого не отговариваю. А так, то, что Emacs жив, не может не радовать. Если звёзды зажигают, значит это кому-нибудь нужно.

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

сабж взлетел потому что это такой палеоконтакт с древними цивилизациями.

вся эта юниксвейность вовсе не новые технологии. это попсовизация древних нанотехнологиях, доступных палеонтологам в отложениях: мультикс мейнфреймовый с емаксом, компилятором PL/I и Maclisp; лисп-машины где лисп всю дорогу сверху донизу, начиная с биоса и микрокода процессора, и на нём вообще всё, даже емакс (CADR, Tom Knight Machine, LMI, Symbolics Genera и OpenGenera, TI Explorer, прочие); plan 9 и sam, acme, wily; микрософт и его редакторы M, K link k musings k_edit k

see also : 1988.09-MS.Journal-Notenboom-Customizing.M.Editor.pdf 2001.07-MSDN.News-Michell-PWB.pdf

e3

Lua: Minimum Profit TextAdept Lite

прочие консольные M, Z, mep

tl;dr: емаксов было тысячи разных, это такой анекдот.

про «программируемый язык программирования текстовый редактор», и дальше изложение этой идеи на разных языках: лисп(классический емакс, либо свой клон емакса/диалект лиспа), c-подобное(joe, jed, slrn, slang, slickedit, brief/grief), рекс-подобное(THE, KEDIT, XE), луа (MP, TextAdept, Lite), бинарники и DLL-ки (M, Z, MEP, K_edit), guile scheme (emacsy, texmacs и прочие)

фанатики?

просто каждый из них, услышав этот анекдот начинает переписывать его на «своём идеальном языке реализации» – диалектах лиспа, схемке, рексе, луа, вот ещё на го появляется всякое.

чем всё это велосипедостроительство – брали бы лучше лисп-машину и допиливали единую универсальную реализацию на коммон лиспе, ей- богу.

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

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

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

И зачем

org-mode, например. там есть примеры работы на лиспе со структурными выражениями. то есть. через S-выражения обёртки к API работы с буферами как нечто структурное, на уровне предложений, слов, отдельных символов, faces с синтаксической раскраскою.

на Lua и алголоподобном (например, на Rexx в THE) это выглядит несколько по другому. собираем структуры данных и обрабатываем циклами или ифами.

ну то есть, вот org-mode и реализация C-c C-c исполнения «блоков кода» на елиспе – показывают преимущества лиспа над алголоподобными.

хотя в каком-нибудь что TextAdept, что Lite на Lua такое вот не сильно сложнее выглядит.

anonymous
()
Ответ на: комментарий от Dark_SavanT

Да и Vimpulse уже был ещё когда ты из ИТМО выпускался.

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

fix link

лисп-машины лисп-машины

как можно видеть в тех эмуляторах, классика: емакс + repl. и всё остальное – модульное динамически загружаемое.

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

Потому что смысл emacs — в его расширениях. Никому не нужно лучшее/концептуальное ядро, под которым ничего не работает. Plan9 погорел по той же причине. Systems Software Research is Irrelevant.

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

микрософт и его редакторы M, K link k musings k_edit k

see also : 1988.09-MS.Journal-Notenboom-Customizing.M.Editor.pdf 2001.07-MSDN.News-Michell-PWB.pdf

1988.09-MS.Journal-Notenboom-Customizing.M.Editor.pdf 2001.07-MSDN.News-Michell-PWB.pdf

Q editor

k_edit:

Historical Notes

K is heavily based upon Microsoft’s M editor (a.k.a. «Microsoft Editor», released as M.EXE for DOS, and MEP.EXE for OS/2 and Windows NT), which was first released, and which I first started using, in 1988. According to Larry Osterman, a member of the 1990 Windows «NT OS/2» development team:

Programming editor — what editor will we have? Need better than a simple system editor (Better than VI!) [They ended up with «M», the «Microsoft Editor» which was a derivative of the «Z» editor].

K development started (in spirit) in 1988 when I started writing (in C) loadable extension modules (the immediate forerunner of DLL’s) for the DOS version of the Microsoft M editor which was included with Microsoft (not Visual) C 5.1 for DOS & OS/2. In the next Microsoft C releases (6.0, 6.0a, 7.x) for DOS and OS/2, Microsoft bloated-up M into PWB (v1.0, 1.1, 2.0; see MSDN News article from 2001) then replaced it with the GUI «Visual Studio» IDE when Windows replaced DOS. I preferred the simpler yet tremendously powerful M, so starting in 1991 I wrote my own version, K. True to its DOS heritage, K is a Win32 Console App (with no mouse support aside from the scroll-wheel) because I have no interest in mice or GUIs. The current (since 2005) extension language is Lua 5.1. A full source distro of Lua, plus a few of its key modules, is included herein, and lua.exe, built herein, is used in an early build step.

2014/10: an «employment transition» into an (effectively) Linux-only environment (willingly) forced me to port K to (x64) Linux; I had wanted to do this for years, but lacked the motivation: the prospect of working daily on a platform w/o K provided the needed motivation!

2014/11: I just discovered «Q» Text Editor, another (Win32+x64) re-implementation of the «M» Editor, written in FORTRAN using the QuickWin framework!

2017/09: See Musings

откуда и есть пошли все эти ваши DLL-ки.

микрософтов емакс M.EXE (Z, K, Q) в этом смысле был более продвинут – уже тогда позволял загружать бинарные модули, которые могли дёргать API редактора работы с буферами напрямую.

компилированные.

а елисп модули были интерпретируемые или предкомпилируемые (байт-код). бинарные модули на сишке появились в Xemacs в начале 2000-х, в GNU Emacs только недавно.

anonymous
()
Ответ на: комментарий от ugoday

это опять про дистрибутив vs. ядро, и что при прочих равных побеждают бутылки с вином, физические vs. метафизическое вино без бутылок, это вот Джон Перри Барлоу из «Декларации независимости киберпространства», вот это всё.

Plan 9 на сишке вчера := это Android на Boinc + Dalvik сегодня. потому что не требует радикальных переделок, и опять же, все эти разделяемые библиотеки и DLL-ки – можно приносить и распивать, в отличие от переписывания всего и вся на самом себе, с нуля, в единственно верной архитектуре. проще оказалось перекомпилировать линукс с боинком ради С++ и недоJVM ради Java чем переписывать на грандиозный файл-объект-клиент-серверный API. и все эти исторические наслоения на С++ просто заработают, в новой среде – чем переписать заново без всех этих недостатков.

при всех прочих равных. но прочие не равны, вот в чём штука.

anonymous
()

Emacs …
Вопросы:

 - Для "широкого пользователя" пригоден?   
 - Для программиста удобен?   
 - В качестве IDE какие языки программирования поддерживает?  
 - ...
anonymous
()

Lexical-binding используется по-умолчанию

wtf?! не ожидал такой подставы.

раньше кто хотел мог и так включить одной строкой и вроде никто не страдал. вообще никто. не знаю как они до этого додумались.

  • Lexical-binding is used by default

напишут строчку без ни*** объяснений, потом с*** сиди и думай че у тебя отвалится

пригар.жпг

в мейлинг листе не нашел дискуссии

BOSS-NIGGER
()
Ответ на: комментарий от BOSS-NIGGER

Нашел, это касается только M-: и eval, конец света отменяется. Но за лаконичное

Lexical-binding is used by default

того кто это написал надо казнить в жопу ящитаю.

https://github.com/emacs-mirror/emacs/blob/master/etc/NEWS.27

** Lexical binding is now used by default when evaluating interactive Elisp.
More specifically, 'lexical-binding' is now used by default for 'M-:'
and '--eval' (including in evaluations invoked from 'emacsclient' via
its '--eval' command-line option), as well as in
'lisp-interaction-mode' and 'ielm-mode', used in the "*scratch*" and
"*ielm*" buffers.

We envision that most Lisp code is already either written with
lexical-binding in mind, or will work unchanged under
lexical-binding.  If, for some reason, your code used in 'M-:' or
'--eval' doesn't work as result of this change, either modify the code
to work with lexical binding, or wrap it in an extra level of 'eval'.
For example, --eval "FORM" becomes --eval "(eval 'FORM)" (note the extra
quote in 'FORM).
BOSS-NIGGER
()
Последнее исправление: BOSS-NIGGER (всего исправлений: 1)
Ответ на: комментарий от Bad_ptr

думаю что не нравилось то что лисп компилируется

Сейчас, кстати, пилят в отдельной ветке libgccjit для компиляции модулей емакса на лету. Авось к следующему релизу готово будет.

zabbal ★★★★★
() автор топика

так там уже есть редактор нормальный, evil.

хороший ченжлог вообще. кроме харфбазза, наверное, надо сравнить выхлоп на разных шрифтах.

а планы которые рмс когда-то озвучивал по доведению функционала до уровня libreoffice writer еще в силе?

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

Это как-то затронет мой ~/.emacs/init.el ?

Нет - это ж емакс, они разве что не молятся на обратную совместимость. Придётся ручками конфиг в правильное место переносить.

zabbal ★★★★★
() автор топика

А кто-нить знает, когда в емакс виртуальные пробелы завезут? Или уже завезли?

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

А смысл табов, если есть фреймы?

Точь в точь тот же смысл что и в браузере, где тоже есть отдельные окна.

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

это то чем ни один емаксер не будет пользоваться

Будет, и явно не один. Уже, собственно, активно пользуются - вот и добавили.

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

обязательно посмотрю как только захочется хороший сериал про негров.

BOSS-NIGGER
()
Ответ на: комментарий от ssh2

Мечтаю о возможности соединений emacsclient посредством ssh-forward

Нахрена? Есть же TRAMP.

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