LINUX.ORG.RU

GNU Emacs 30.1

 , , ,


0

1

Вышла новая версия старейшего редактора, написанного на C и Lisp, Emacs 30.1!

Основные изменения:

  • портирование на Android;
  • нативная компиляция включена по умолчанию (при наличии библиотеки libgccjit);
  • нативная поддержка JSON, без ранее использованной библиотеки libjansson.

Изменения, несовместимые с предыдущими версиями:

  • режимы Tree-Sitter теперь объявлены подрежимами режимов non-TS (исправления в major-mode-remap-alist, что позволяет добавлять моды к TS, например Yasnippet);
  • буфер Completions всегда сопровождает icomplete-in-buffer;
  • фильтр процессов переписан в нативный код.

Другие изменения:

  • добавлена пользовательская опция trusted-content;
  • добавлена поддержка Unicode 15.1;
  • улучшена поддержка сенсорных экранов;
  • элементы Modeline теперь можно выравнивать по правому краю;
  • добавлены новые пользовательские опции, облегчающие работу: yes-or-no-prompt и kill-matching-buffers-no-ask.

>>> Полный список изменений на gnu.org



Проверено: dataman ()
Последнее исправление: CrX (всего исправлений: 3)
Ответ на: комментарий от amm

Тут вариантов два я вижу: а) вы пользуетесь cli, пишете скрипты, от замены gnu на что угодно другое вам станет немедленно больно. б) вы нищеброд, которому не хватает денег на макось.

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

Миллионы пользователей не выбирали её осознанно

Вот какую ерунду вам нужно выдумывать, чтобы обосновать

Хочешь сказать, они осознанно посмотрели на *BSD, на GNU/Linux, на Haiku и осознанно же выбрали Windows? Прям миллионы?

я давно потерялся о чём вы спорите и зачем.

Не вникай. Я всего лишь озвучил, что при осознанном выборе особых альтернатив нет. По крайней мере пока нет приколоченного гвоздями к форточкам софта, необходимого для производства.

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

аналитика уровня бог :) я использую bash в повседневной работе, но только для интерактива, если же нужно что-то автоматизировать, то bash будет последнее средство, которое я возьму :)

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

А он теперь с новой версии оптимизированно собирается:

056-debuginfo.brp: WARNING: 4751 non-stripped binaries don't contain .debug sections making -debuginfo
4751 бинарник, Карл! Это Lisp перегнанный в байткоды (что теперь и занимает львиную долю сборки).

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

4751 бинарник, Карл! Это Lisp перегнанный в байткоды (что теперь и занимает львиную долю сборки).

Там выше с конкретными числами пример был. Всё ещё не считаю это какой-то проблемой.

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

Всё ещё не считаю это какой-то проблемой.

Ну, в целом да, но теперь без short-circuit'ов сложнее перепиливать пакеты emacs'а. Вчера я и с ними немножно недокрасноглазил пакеты новой версии для ALT'а. Вот и психанул.

Спасибо Сергею Большакову, который сам всё допилил.

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

спросил бы ты про c#, я бы поделился опытом, но go вне области моих интересов, поэтому можешь начать, ну например, с gore. потом поделись ощущениями :)

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

Я в принципе не очень понимаю ценность репла для таких языков, если честно. В лиспе понятно – натыкал, сохранил дамп и радуешься. Тем более, что там и в IDE интеграция. А для чего он C# и Go ума не приложу.

Поделишься своим видением области применения? Вдруг я упускаю целый пласт возможностей :)

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

зачем в нём заменять lisp? Более того, хочу lisp emacs, отдельно от emacs. Это желание после юзанья автокадовского lisp-а (в нём что потом в замыкания привратилось, нет, и изза этого иногда вызовы становятся не предсказуемые), в emacs самая совершенная версия, и её в отдельности без emacs нет.

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

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

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

Почтой не пользовался, потому что у меня в почте ничего важного не происходит. Но не думаю, что там сложно. А вот поиск по проекту (grep), простейший LSP (переход к символу, упоминания символа, переименовать символ), запросы к бд (postgresql, в основном) и внешним сервисам (curl), git, да и вообще любая задача, решаемая командами (docker, systemd, iwd) — всё это классно работает. В планах завести бложик и показать, но это долгострой.

до такого я не дорос и позорно бежал обратно на Emacs %)

Ну не знаю, Emacs тоже нужно иметь терпение освоить. По нему даже книги пишут.

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

Но не думаю, что там сложно.

Зависит от объёма. Когда

$ find ~/Maildir -type f |wc -l
37972

Просто так по файловой систее не по бегаешь. Придётся какой-нибудь индексатор-поисковик городить.

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

В первую очередь для исследования и изучения новой темы. Из того что использую: dotnet-interactive – notebooks для dotnet и dotnet-script – скрипты на c# (после bash как глоток свежего воздуха :))

Также удобно использовать интерактивный режим при дебаге, когда надо посмотреть нетривиальное выражение. Здесь, что использовать, зависит от ide: в rider сделано очень удобно, в vs не очень.

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

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

У тех же Samsungов есть десктопный режим, а при подключении внешнего монитора, клавиатуры и мыши на нём что-то можно делать, только вот с удобным софтом голяк, да и памяти, как правило, маловато, что затрудняет использование полноценного дистрибутив GNU/Linux поверх Android.

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

Ну не знаю, Emacs тоже нужно иметь терпение освоить. По нему даже книги пишут.

Тут дело как с Fvwm. Я его очень люблю, но новичков отговариваю от него. Я им пользуюсь потому что знаю и конфиг свой начал писать более полутора десятка лет назад. Но вот чтобы начинать с него – это надо много сил и терпения.

Хотя, емакс всё таки немного рекламирую. Особенно, если человек интересуется лиспом.

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

...вменяемого текстового редактора так и не завезли.

Ну как же? А клон Либры?

Телефон в кармашке имеет процессор, который мощнее, чем любой настольный компьютер начала тысячелетия...

Ну да. Но это всё-таки телефон, а не десктоп.

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

Ну как же? А клон Либры?

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

Ну да. Но это всё-таки телефон, а не десктоп.

Первый раз Xы я запускал на компьютере, где было 6МБ (мегабайт) оперативной памяти. По сравнению с тем, что было, железо на телефоне, это круче многих суперкомпьютеров того времени. Не вижу ни одной причины, кроме искусственных, не использовать телефон в качестве рабочего десктопного устройства.

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

Я согласен, что termux — это удобно и я использую его, когда есть такая возможность, но это решает лишь часть проблем при создании удобной десктопной среды.

Evgueni ★★★★★
()

YandexGPT сообщает:

По данным на май 2021 года, в Роскомнадзоре (РКН) работает около 8 тысяч сотрудников, включая более 100 программистов в сегменте разработки

Интересно, из этих более 100 программистов в сегменте разработки РКН хоть кто-нибудь использует Emacs при выполнении своей работы?

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

Но это всё-таки телефон, а не десктоп.

Это до поры...

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

Пришло время ненужности скобщины.

Заменяя её жижей типа пайтона?

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

...хоть кто-нибудь использует Emacs при выполнении своей работы?

Нет, конечно. Я — использовал, не будучи программистом. Под оффтоп. Однажды вызвал удивление у коллеги-программиста тем, что общаюсь с разрабами из M$.

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

я знаю и использую lisp, python, и множество других, я могу ругать тот и другой, знаю их минусы и плюсы, что раздражает именно вас в lisp, оскорбление lisp от человека не знающего его это синоним крика: я одноклеточный идиот.

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

… оскорбление lisp от человека…

Как вообще можно оскорбить язык программирования?

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

то тут больше подходит Acme.

Слушайте историю @kaldeon, @skiminok1986, @Eulenspiegel.

Сейчас я распрашивал чат chat.deepseek.com про AST в языке Go. Для этого брался некоторый пакет/определение и после него добавлялся фрагмент текта «объяснить для 10 летнего ребенка, для 15 летнего подростка, и для первокурсника, и для второкурсника.», другими словами я постоянно копипастил.

И тут вспонив нашу беседу я задумался, не попровать ли мне приемы Acme в Xfce? Перекидывать выделения в окно редактора просто нажатием среднй кнопки мыши. И заработало.

Хорошо.

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

Я этим не пользуюсь. Я из «этих», suckless. Мой рабочий процесс скорее всего будет чужд большинству, разве что рядом @hateyoufeel

Как выясняется, тут полтреда таких. Удивительно сколько народу в курсе про Acme.

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

Всё так. Голанг – это фактически Algol68 со слегка другим синтаксисом.

Не могу свами согласится. Golang это все самые ходовые идеи из JS, Python, Ruby, C набранные в один язык.

Сильно сомневаюсь что в Algol68 были замыкания с слайсами.

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

Слайсы были. Про замыкания хз.

Все эти идеи нифига не новые и появились ещё в 60х-70х. Просто до массового разработчика очень долго доходит.

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

Всё так. Голанг – это фактически Algol68 со слегка другим синтаксисом.

Авторы языка не заморачивались «чистотой идеи». Просто собрали все, что действительно хорошее и действительно используется из других языков в один. Получился Go. Вроде и не ООП, вроде и не Функциональное Прогрммирование. А вроди и ООП и Функциональное.

Всё что надо есть.

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

Все эти идеи нифига не новые и появились ещё в 60х-70х. Просто до массового разработчика очень долго доходит.

Так и есть. Всю теорию программирования к 70ым годам уже прописали в университетах. Сейчас программирование это технология. Теоретически ничего нового.

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

Авторы языка не заморачивались «чистотой идеи».

Да, расскажи нам о Go, мы же Bill Kennedy не слушали, о GC и стеке ничего не знаем, поэтому поинтерами обмазываемся, ага-ага.

А с https://usesthis.com/interviews/rob.pike/ мы даже не переписываемся, пиписька не выросла, ага.

Eulenspiegel
() автор топика

Собрал новую версию и ничерта не работает.

Снес старую папку ~/.emacs.d, подложил старый конфиг, в результате в логе куча строчек, что (use-package) не может загрузить пакет. Все (use-package) у меня без ensure: t, но включено (setq use-package-always-ensure t). Как будто бы эта переменная перестала работать, у кого-то было? Не сильно хочется везде прописывать ensure

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

Теоретически ничего нового.

Да конечно! Н-И-Ч-Е-Г-О! ))) Доктор! Они лезут на свет!

Eulenspiegel
() автор топика
Ответ на: комментарий от Eulenspiegel
(use-package package
  :config
  (add-to-list 'package-archives (cons "melpa" "https://melpa.org/packages/") t)
  (add-to-list 'package-archives (cons "org" "https://orgmode.org/elpa/") t)
  (add-to-list 'package-archives (cons "jcs-elpa" "https://jcs-emacs.github.io/jcs-elpa/packages/") t)
  (setq package-archive-priorities '(("org" . 10)
                                     ("melpa" . 5)
                                     ("jcs-elpa" . 0))))
(setq use-package-always-ensure t)

Ну я методом тыка одному use-package добавил ensure и он поставился.

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

Ну конечно, клоуна, а клоуна строишь ты )) Знаток теорий )))

Знатока теорий я из себя не строю. Большниство структур данных разработаны в 60ых, теория CSP от Tomas Hoare 1978. И до 1978 года работали с паралельными вычислениями, была своя математическая база.

Чего вы кривляетесь и пытаетесь осмеять факт, что теоретические основы программирование были готовы в 70ых мне не понятно.

Вы ведете себя как клоун, клоуна и получаете.

P.S.

  • Binary search tree Invented 1960
  • Dijkstra’s algorithm 1956
  • Quicksort 1962
  • Hash table 1953
  • Linked List 1955–1956
  • AVL tree 1955–1956
  • Heap (data structure) 1964
lbvf50txt
()
Последнее исправление: lbvf50txt (всего исправлений: 3)
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.