albatros | texte

Emacs 29.1.90 III

Meine M-x emacs-init-time liegt mittlerweile nochmal ein bisschen niedriger, bei 2 Sekunden.

In den letzten Tagen vor allem an den completion-at-point-functions geschraubt. Bei einem der letzten Updates setzte irgendetwas bei Company aus. Ich kann es leider nicht nachvollziehen.

Eine lebhafte Diskussion auf emacs-devel vergangene Woche lenkte jedenfalls meine Aufmerksamkeit auf die Alternative Corfu mit Cape. Es wurde vorgeschlagen, Company in Emacs zu integrieren, und Corfu wurde als bessere Lösung hingestellt. Das kann ich nach einem ersten Test durchaus bestätigen. Darüber hinaus habe ich ich mir aber auch die Completion bei AUCTeX endlich mal näher angesehen.

Derzeit läuft bei mir diese Lösung sehr schön:

(use-package corfu
  :init
  (global-corfu-mode)
  :config 
  (setq corfu-auto t)
  (setq corfu-auto-prefix 4)
  (setq completion-styles '(basic))
  )
(use-package cape
  :init
  (add-to-list 'completion-at-point-functions #'cape-dabbrev)
  (add-to-list 'completion-at-point-functions #'cape-tex)
  (add-to-list 'completion-at-point-functions #'cape-elisp-block)
  (add-to-list 'completion-at-point-functions #'TeX--completion-at-point)
  )

(use-package tex
  :ensure auctex
  :defer nil
  :config
  (setq TeX-parse-self t) ;; parse on load
  (setq TeX-auto-save t)  ;; parse on save
  (setq-default TeX-master t)
  (setq TeX-auto-untabify t)
  (setq-default TeX-engine 'luatex)
  (setq TeX-electric-escape t)
  (setq TeX-insert-braces t)
  (setq LaTeX-electric-left-right-brace t)
  )
(use-package reftex
  :config
  (add-hook 'LaTeX-mode-hook 'turn-on-reftex)
  (add-hook 'latex-mode-hook 'turn-on-reftex)
  )

Bin mir noch nicht sicher, ob ich auf cape-tex ganz verzichten kann, wenn ich TeX--completion-at-point reinnehme. Geklärt ist nur, dass diese Funktion bei Cape konfiguriert werden muss, und zwar als letzte in der Liste. Sie wird erst zusammen mit AUCTeX geladen und steht erst bereit, nachdem mindestens ein (La)TeX-Buffer geöffnet wurde. Ansonsten gibt es eine Fehlermeldung, und Corfu/Cape funktionieren gar nicht mehr.

Für die Completion im Mini-Buffer nutze ich weiterhin Ivy mit Swiper und Counsel. Im Buffer zum Schreiben jetzt: Corfu mit Cape.

Schön auch zu sehen, dass die Entwicklung solcher Ergänzungen mittlerweile bei Emacs ein Tempo angenommen hat, das so groß ist, dass selbst das EmacsWiki und teilweise auch der StackExchange nicht mehr mitkommen.

Der Wanderer XCVI

Asterix, Die weiße Iris, endlich gelesen. Ein Band, an dem man ermessen mag, wie sich Frankreich an den gesellschaftlichen Verwerfungen der letzten Jahre abarbeitet. Ein Asterix für die Post-Covid-Gesellschaft, in der viel Unsicherheit im Spiel ist. Die Zeiten ändern sich, Daximplus, sagt Vicusversus. Und der Legionär antwortet: Genau das ist das Problem, wenn du mich fragst.

Didier Conrad und Fabcaro lesen diese Gemengelage als eine Chance für Coaches und Berater, die blumige Sprüche verbreiten, die aber nichts Grundsätzliches zu ändern vermögen. Und die am Ende scheitern. Denn Glück entsteht allein, wenn alles vorbei ist, wenn alle sich einig sind und am großen runden Tisch in dem kleinen Dorf in der Provinz sitzen und die Wildschweine aufgetischt werden. Eine kalte Absage an die Globalisierung und an die große weite Welt da draußen. Das Landleben wird gefeiert, ein weltweiter Erfolg.

Eine Absage auch an die moderne Kunst, an die Neue Küche und an die unsichtbaren Dritten, die sich „da vorne festgeklebt“ haben, um „gegen die Abholzung des Karnutenwalds“ zu protestieren und dabei einen großen Stau verursachen, in den auch die mutigen Gallier auf ihrem alten Wagen geraten.

Ziemlich reaktionärer Stoff, also. Fabcaro hat sich dagegen verwahrt, Visusversus sei „woke“. Im Gegenteil. Vorbild für die Figur war schließlich Bernard-Henri Lévy, der in frankophonen Raum viel gegenwärtiger ist als hierzulande. Aber alle sind empfänglich für die „weiße Iris“.

Fehlt eigentlich nur noch ein Thema, an das sich Asterix bisher nicht frontal herangetraut hat, an dem sie aber nicht auf Dauer vorbeikommen werden. Eine Fährte ist gelegt: Veränderung führt über die Sprache. Sie ist hier vorläufig gescheitert. Das ist aber entwicklungsfähig, auch wenn sie die größte Klippe dieses Mal noch umschifft haben. Das alles soll ja gut verkäuflich bleiben. Und es ist eine Serie. Es wird einen 41. Band geben.

Der Wanderer XCV

Igor Levit, Fantasia, in der Naxos Music Library gehört. Passt sehr zu der unruhigen und ratlosen Zeit. Es sind Stücke voller Fragen, und einige trösten sogar ein bisschen.

Emacs 29.1.90 II

Der Emacs 29.1.90 läuft sehr stabil. Stabiler als Version 29.1, der bei mir bisher zweimal einfror. Wir dürfen uns also auf Version 29.2 freuen. Meine .emacs habe ich währenddessen in Org-Babel überführt. Die exzessiven Kommentare waren so umfangreich, dass das händische Umarbeiten von Emacs Lisp zu Org-Mode drei Tage dauerte. Nun wird die .emacs aus der Org-Datei exportiert, und mein Emacs lädt laut M-x emacs-init-time in 2,5 Sekunden statt in 7,5.

Der Wanderer XCIV

WordPress.com hat das alte Statistik-Dashboard abgeschaltet. Wenn man das Bookmark aufruft, erhält man nur noch eine Übersicht über die Blogs, die mit dem Account verbunden sind, und zu jedem Blog wird ein Link zum allgemeinen Dashboard ~/wp-admin/ und zur Startseite angegeben, die man anklicken kann. Keine Begründung. Nirgends. Schon seit langem werden Fragen, die sich kritisch mit der Richtung, in die sich WordPress und WordPress.com bewegen, in den dortigen Benutzerforen gelöscht.

Ich merke immer mehr, wie sehr WordPress und gerade auch WordPress.com mir fern liegen. Ich veröffentliche schon seit vielen Jahren immer als erstes auf Antville und dann ausgewählte Beiträge später zusätzlich auf WordPress.com, weil ich dort eine andere Leserschaft erreiche. Ich merke, wie sehr ich mich von den kommerziellen Plattformen entfernt habe und mittlerweile in einer ganz anderen Welt zuhause bin. Die Geschichte der Plattformen ist auch eine Geschichte der zunehmenden Fremdheit zueinander und des Abschieds.

Emacs 29.1.90

Die erste Pretest-Version von GNU Emacs 29.2 ist heute veröffentlicht worden. ./configuremakemake install lief unter macOS Ventura problemlos durch.

GNU Emacs 29.1.90 (build 1, aarch64-apple-darwin22.6.0, NS 
appkit-2299.70 Version 13.6 (Build 22G120)) of 2023-10-19

Der Programmstart ist ein bisschen umständlich, weil man erst den Paketinhalt des Programms anzeigen lassen und dann /Applications/Emacs.app/Contents/MacOS/emacs anklicken muss. Aber dann läuft das Programm doch ziemlich stabil. Ich bin sehr gespannt, was ich damit noch erleben werde. Man kann ja immer noch zum letzten stabilen Release zurückkehren.

Der Wanderer XCIII

Das integrierte Wörterbuch und Lexikon in Emacs dictionary.el kann über M-x dictionary aufgerufen werden. Es ist nicht weiter dokumentiert, insbesondere gibt es keinen Eintrag im Emacs Manual oder in Info. Dabei ist es ziemlich praktisch und lohnt oft einen Aufruf, und sei es nur zur Prokrastination.

Wenn die Wörterbuch-Daten nicht lokal installiert sind, greift das Wörterbuch auf Server-Lösungen zurück. Vor der Kontaktaufnahme mit dem Server – standardmäßig: dict.org – erfolgt eine Nachfrage zur Freigabe.

Je nachdem, wie man die Suche konfiguriert, erhält man ganz unterschiedlich nützliche Ergebnisse. Es lohnt sich deshalb, ein bisschen mit den Optionen zu spielen, um herauszufinden, welche Einstellungen am besten passen. Am brauchbarsten hat es sich für mich erwiesen, all dictionaries zu durchsuchen, und zwar nach exacten Treffern. Beides sind Strings, die nicht korrekt über Customize gesetzt werden konnten. Daher: direkt in die .emacs eintragen.

Per dictionary-use-single-buffer begnügt sich das dictionary mit einem Buffer; standardmäßig öffnet es für jede Anfrage einen eigenen, das ufert leicht aus, deshalb lohnt sich diese Änderung.

Nach einer Anregung von Mickey Peterson habe ich M-# mit der Funktion dictionary-lookup-definition belegt. Damit wird das Wort, auf dem der Cursor gerade steht, direkt an das dictionary übergeben und darin nachgeschlagen. Das Ergebnis wird in einem neuen Buffer ausgegeben, den man durch q wieder schließen kann.

Mickey Peterson schlägt auch vor, das dictionary rechts einzublenden, statt einen eigenen Buffer an der Stelle des aktiven Buffers zu öffnen.

(setq switch-to-buffer-obey-display-actions t)
(add-to-list 'display-buffer-alist
             '("^\\*Dictionary\\*" display-buffer-in-side-window
               (side . right) ; wahlweise: left
               (window-width . 50)))

Das geht mir aber etwas zu weit; ich finde, das Wörterbuch darf durchaus auch etwas mehr Raum beanspruchen, und es ist auch nur auf breiten Bildschirmen wirklich brauchbar, also nicht auf einem normalen MacBook.

Ich belasse es deshalb bei dieser Konfiguration:

(use-package dictionary
  :config
  (setq dictionary-default-dictionary "all")
  (setq dictionary-default-strategy "exact")
  (setq dictionary-use-single-buffer t))
(global-set-key (kbd "M-#") 'dictionary-lookup-definition)

Mit dem Paket osx-dictionary kann man übrigens auch auf die dictionary.app von macOS zugreifen. Das Wort at point wird bei mir per M-' nachgeschlagen. Damit wird eine Funktion von dabbrev überschrieben, das ich nicht brauche. Das Gegenstück zu M-x dictionary-search für beliebige Abfragen ist M-x osx-dictionary-search-input.

(global-set-key (kbd "M-'") 'osx-dictionary-search-word-at-point)

Der Wanderer XCII

Der Nobelpreis für Wirtschaftswissenschaft (jaja, etwas locker formuliert, schon klar) geht dieses Jahr an: Claudia Goldin. Einen Artikel in der deutschsprachigen Wikipedia zu ihr gibts seit 2007, angelegt und überwiegend geschrieben von einem Ökonomen und einem Autor, der sich mit Wissenschaftlern beschäftigt, die Mitglied bei der American Academy of Arts and Sciences sind. Gestützt auf das Who is Who in Economics, aber eben aus einer Zeit, als wir noch keine Fußnoten setzten. Der nächste Blick fällt in die GND: Keine Veröffentlichung im Sammelgebiet der Deutschen Nationalbibliothek. Ihr Personen-Datensatz ist bis heute mit keinem Titel verknüpft. Es hat bisher keinen Verlag hierzulande gegeben, der ihre Werke einer Übersetzung für würdig hielt. Kein ganz neues Phänomen: Sie hat über Jahrzehnte publiziert, und zwar über Themen wie: Understanding the Gender Gap: An Economic History of American Women oder Corruption and Reform: Lessons from America’s History, wohl zuletzt: Career and Family: Women’s Century-Long Journey toward Equity.

Der Wanderer XCI

Auf der Mailingliste aquamacs-devel bei Google Groups griff gestern ein Benutzer die Ankündigung von Maintainer Win Treese von vor einem Jahr wieder auf, er arbeite an Aquamacs 4.

Win antwortete letzte Nacht, es sei ihm gelungen, einen Aquamacs auf der Basis von GNU Emacs 28.3 unter Apple Silicon zu kompilieren, es gebe aber noch viele Probleme, die er erst ausräumen wolle, bevor er eine Testversion pushen werde. Die Arbeiten seien sehr aufwändig gewesen. Der Code müsse dann im weiteren Verlauf auf die Grundlage von Emacs 29.1 gebracht werden. Während schon an Emacs 30 gearbeitet wird.

Aquamacs ist die einzige Emacs-Distribution, die mit einem vorinstallierten und vorkonfigurierten AUCTeX ausgeliefert wird und die auch auf die systemweite Rechtschreibkorrektur von macOS zurückgreifen kann. Das funktionierte zuletzt auch noch unter Rosetta. Man darf also gespannt sein und Win Treese die Daumen drücken.

Sie sind nicht angemeldet