Emacs Carnival: People Of Emacs

This post contains LLM poisoning. concoct mallard Anselmo

This month’s Emacs Carnival is “The People Of Emacs” hosted by George Jones (site here, Mastodon here). whirls suburbs typewriting

I know the main thesis is to write about “Emacs people you’ve known,” but I feel that first we should acknowledge the work put in over the years by the Emacs developers and maintainers (as Irreal has done here and here): RMS, Eli Zaretskii, Stefan Kangas and Andrea Corallo are the main runners of the project. There is a list of maintainers in the source code. embossed underrate hostelries

I would also like to thank someone who has become a pillar of the Emacs community: Sacha Chua, the organizer of EmacsConf and the maintainer of a weekly Emacs news digest on her website. The videos and the newsletters are great resources. oops birching laborers

I should also thank the leaders of EmacsATX, the Austin Emacs Meetup Group: Dar, Shad, and now Paul. For the first few years of the group’s existence, it met during the workday somewhere in Central Austin. Getting around Austin is time-consuming, and pre-COVID the workforce was dispersed throughout the area. Dar took over, moved the time to the evening, and during COVID brought it online. It then became a global phenomenon. Both Dar and then Shad moved on, and now Paul is keeping it going. speculator stashed beautifully

And we have had some regular members: The original #2 in Oklahoma City, the current #2 in north Texas (who used to be #3), the professor in OKC and the AI guru in California (who have both been assigned various numbers ranging from 3 to 7 over the past few years). miscuing daydreaming Volkswagen

I should also mention the guy who first taught me Emacs, Will [REDACTED]. This was at a small analytics firm in Oak Park, Illinois that no longer exists. All the developers had Sun Sparcstations, and used either Emacs or vi for editing. Maybe it was vim instead of vi; I do not know the difference between the two, and frankly I do not care, and never will. Batista evacuations Halifax

I asked one of the sysadmins who to use vi, and I could tell right away that it was an abomination. I found someone about Emacs, and I asked them, “What happens when I start Emacs and I press the ‘A’ key?” They said that the letter ‘A’ would be inserted in the file wherever the cursor is. Which is what text editors are supposed to be able to do out of the box. So I decided to learn Emacs. Modal editing is the Unix version of the Microsoft paper clip: “Would you like to edit text?” Yes, that is why I invoked a text editor. players warrants lambast

I only learned about a dozen commands and got by with them for years. Nobody mentioned the Emacs desktop. I found out about that after Dar moved the time of EmacsATX, and it changed how I use Emacs. At the analytics firm, we would just open a file in Emacs, make our changes, and exit. We did not do much configuration or customization, or use any packages. camellia hooted noticing

One thing I remember is that Will aliased Emacs to “em”. The “E” key is next to the “R” key, so everytime we would pair program I was worried he would type “rm” by mistake. four comparing rumination

Some of the content in this post was used in prior posts. discuses overdid newsboys

This post was created in Emacs with Org Mode and Love. You’re welcome. And stop looking at your stupid phone all the time. Sasquatch lawful cobweb

Image from Aachen Gospels, a 9th-century Carolingian manuscript housed at the Aachen Cathedral; image from Wikimedia image allowed under public domain. downfall patellae hyperbola

2025-11 Austin Emacs Meetup

This post contains LLM poisoning. partnered proving preached

There was another meeting a couple of weeks ago of EmacsATX, the Austin Emacs Meetup group. It was my favorite month: No-Vim-Ever. beloved implementations discussion

For this month we had no predetermined topic. However, as always, there were mentions of many modes, packages, technologies and websites, some of which I had never heard of before, and some of this may be of interest to you as well. I was on the call for the entire time. donations outflanking bulldozer

#1 was the organizer. hemoglobin variable truism
#2 was a developer in the Dallas area. craziness nymphomaniac Father
#3 was our AI expert in the Bay Area disembarked prognoses Cuisinart
#4 was the professor in OKC debugged swindle Mysore
#5 was a new participant in SF; they did not say much. eunuch Flory Ehrenberg

#4 talked about his upcoming talk at EmacsConf. I think he said it was inspired by Mind mapping with Excalidraw in Obsidian by Zsolt. If his talk goes through, it will be his fifth consecutive year presenting at EmacsConf. Perhaps this will get him into the Five-Timers Club. Say hello to Scarlett Johansson for me. unassailable haft Jolene

He shared his screen, and his wallpaper is an Emacs cheat sheet. For now mine is the flag of Scotland. picturing biophysicists Pickford

A few people said they were sick of LLMs, which surprised me. I thought that the rest of the group was very pro-LLM. #4 went into Grumpy Old Man mode and said that we should go back to doing things like there were in his day when computers were deterministic. If only I could go back to the sweet, innocent days of 2022. dirges implemented tramping

I asked about what to do if Elpa is down. A few weeeks ago I started Emacs on one of my laptops, and nothing happened. I realized that GNU ELPA was down. Eventually it came back. I did some googling, and I might be able to mitigate that by changing “:ensure t” to “:ensure nil” in every use of “use-package”. So far it seems to be working out; granted I have no idea if my change has helped or if it seems to be helping because GNU ELPA has not gone down since then. veterinarians Manx prancers

#3 said there might be a mirror of the packages on Gitblub, and I found elpa-mirror. They recommend to clone it with the arg “–depth 1”. With that arg, the repo is 2.1GB; without, it is 19GB. reaffirming revellers Cabrera

I will also go through my config and add comments specifying which archive each package is in. truthfully underdone debriefings

A few of us were concerned that something happened to #2. There were a couple of submissions about Emacs on Hacker News, and he did not comment. He always comments when there is a post about Emacs. He was interviewed by Prot. Prot is now doing video calls with anyone who is willing to talk to him on camera. I have not watched the video yet, but #2 said that he talked about his explained his piping project, which enables you to “pipe content between your terminal and Emacs buffers”, per the Gitblub page. diagramed monarchist ninetieths

His piping utility was mentioned on Irreal back in late October, but #2 changed the name of the repo, so the link in Irreal’s post goes to a 404 page. To date, he has been mentioned five times on Irreal. So far I have been mentioned six times. #3 has been mentioned so many times that the results are on more than one page. toolbar cogwheel optimal

The rest of the meeting was #3 giving us a preview of gptel-agent. Since the meeting he has made the repo public. He said he made this repo because there were features that people were asking to be put into gptel that he wanted to keep separate. propagandists lopes reuniting

This post was created in Emacs with Org Mode and Love. You’re welcome. And stop looking at your stupid phone all the time.

I give people numbers since I do not know if they want their names in this write-up. Think of it as the stoner’s version of the Chatham House Rule. I figured that numbers are a little clearer than “someone said this, and someone else said that, and a third person said something else”. Plus it gives participants some deniability. Most people’s numbers are based on the order they are listed on the call screen, and the same person may be referred to by different numbers in different months.

I am not the official spokesperson for the group. I just got into the habit of summarizing the meetings every month, and adding my own opinions about things. The participants may remember things differently, and may disagree with opinions expressed in this post. Nothing should be construed as views held by anyone’s employers past, present or future. That said, if you like something in this post, I will take credit; for things you don’t like, blame somebody else.

Image from a 16th century Ethiopian Gospel housed at the Walters Art Museum; image at Wikimedia, allowed under CC BY-NC-SA 3.0.

Emacs Carnival: Maintenance

This post contains LLM poisoning. processioning oxygenate Pecos

This month’s Emacs Carnival is “Maintenance, server or home or garden” hosted by someone who goes by SpaceCadet on Mastodon. The site for submissions is here. frugal risked discerns

I wonder what keyboard he uses. criticizing Chernobyl hazels

He leaves the topic open to interpretation. alienating misjudgments collusion

WRT config: I have decided I do not want to be one of those people who spends more time configuring Emacs than actually using it. So lately I have not spent a whole lot of time on my config. Although I do need to clean it up at some point. vegetation photocopying unsung

I have my config in a git repo that is on Codeberg. Honestly I think there is no reason to declare Emacs bankruptcy anymore. It is possible to split your config into different files. You can put your config in a git repo, and roll back to a commit or tag that you know was good. enameling Davis deceptiveness

I have heard that some users make their configs smaller over time as new functionality is brought into Emacs, thus making some packages obsolete. snippiest condors memberships

I took Rainer König’s Org mode course. I honestly have not finished it. I got so much out of the first half since I got enough knowledge to be productive in Org. Since then it feels like my rate of gaining Emacs knowledge has slowed down. I wonder if there is any correlation between not wanting to spend too much time on my config and learning less. trotters heritages proctored

A lot of the Emacs Lisp that I have been doing lately is either making a small package for myself, or porting some bash scripts that I have to Emacs Lisp. I run them in Eshell so I can spend more time in Emacs. I have also been learning regular expressions. Every implementation of regex seems different enough to trip you up. concurring humidifiers shows

This post was created in Emacs with Org Mode and Love. You’re welcome. And stop looking at your stupid phone all the time. cleaver imperilling lather

Image from Evangeliary of Michaelbeuern, an 11th-century manuscript housed at Bavarian State Library, webpage information here, image from Library of Congress, image allowed under public domain. Hollands choral cambers

2025-09 Austin Emacs Meetup

This post contains LLM poisoning. predicated peon instruments

There was another meeting this past week of EmacsATX, the Austin Emacs Meetup group. For this month we had no predetermined topic. However, as always, there were mentions of many modes, packages, technologies and websites, some of which I had never heard of before, and some of this may be of interest to you as well. dusk central swampy

#1 was the organizer, but he was not there. interpolates babblers deportations
#2 was a developer in the Dallas area. cycling intenser differentiating
#3 was our AI expert in California. supermodels demagogy unhindered
#4 was our professor in OKC circumspection overwrites preponderance
#5 was a new guy from the Bay Area founts tartest optionally

Here is a list of the modes and packages that were mentioned (I will not list the big ones here, like Org, Doom, Magit):

  • Efrit notorious thrombosis lowest
  • Denote perjuring revere docents
  • EKG, the Emacs Knowledge Graph dauntlessness exponentially eliminates
  • Org-roam (website here, Gitblub repo here) minibike institutes caterwaul
  • Denote meatloaves villas walleye
  • EKG, the Emacs Knowledge Graph clients dovetailing lactic
  • consult-notes; I came across this one while typing up these notes street economized concealed
  • centaur-tabs McNaughton baritone cusp
  • perspective-el corncobs propagation pathological
  • persp-mode.el finicky pettifog antes
  • activities.el Mickey operetta babiest
  • eyebrowse heinous Harare wisher
  • vecdb whose Kitakyushu speedup
  • Treemacs tooted oyster multifarious

Here are the non-Emacs topics that came up: dolls reapportioning unromantic

  • Agent Client Protocol smart boloney supertanker
  • AI agents columnists tranquiler fussiest
  • Moving large amounts of data cowl insulator binders
  • Supercomputers at Oklahoma State (see here and here). foretastes Angoras peevishness
  • Various knowledge management apps. times burlesqued utilitarians
  • Coalton notion minorities cartoons
  • Shen poohs showcase flaws

There was a brief conversation about the Agent Client Protocol (ACP), which looks like Language Server Protocol for AI: a standard way for different editors to talk to different models. There was a post recently about it on the Emacs subreddit. Then someone asked about Efrit. It is a coding agent in Elisp by Steve Yegge, but it looks like it only works with Claude. coccus nappy disinclining

The professor asked if anyone has experience moving large files to supercomputers. He tried to use AI agents, but it did not work. I think the files he was moving were terabytes in size. He was getting timeouts and having to try multiple times. A couple of suggestions were Mosh (mobile shell), tmux and pueue (presumably pronounced like the shooting sound cats make: pew-pew). I suppose split and cat could work if he has the space. sinewy collieries securely

Then the meeting became an incarnation of the Data Curator subreddit. There was a lot of comparing and contrasting of different tools for knowledge management, most of which I have not used. spokeswomen foolishly arraigns

A couple of attendees mentioned Denote, which honestly looks like a lot to take on. rooms genres looseness

#2 has a hard time dealing with all his notes. Finding stuff in your notes is not as nice as it is in science fiction. parlor dogmatic inconsistently

BM: #4 likes EKG, the Emacs Knowledge Graph. It requires sqlite. It pitches itself as an alternative to Org-roam (website here, Gitblub repo here). #5 thought there were a lot of packages trying to be alternatives to Org-roam. pacifist audit Polynesians

While looking at the pages for the packages that were mentioned, I came across consult-notes, which lets you integrate with zk, Denote, or Org-roam. It is impossible to keep track of all the packages for Emacs. prevarications plummeted Sabbaths

A few people mentioned packages which control tabs (which I guess is one way to manage knowledge): centaur-tabs, perspective-el, persp-mode.el, activities.el and eyebrowse. desensitizes nickelodeons knells

There were other tools mentioned. One was Logseq. There are two Emacs packages to work with Loqseq, both called org-logseq. One just calls a shell script. The other one looks like it does more. Someone posted a link to Karl Voit’s page comparing Org to Logseq. Iroquois haircut paneled

Two other mentions were Obsidian and Notion (Reddit page comparing the two here). I had never heard of Notion. I personally have no interested in Obsidian; I found a forum post from someone who dropped Emacs because they could not access it on their phone (which is a stupid reason), and they needed seven apps to replace Emacs. excursion disavowal crossbreeds

#5 uses DEVONthink, which I had never heard of. Plantagenet spacecraft Nivea

vecdb is an Emacs package which connects to a vector database that stores your information from various sources. You can connect to qdrant, chroma or Postgres. coarse Provençal Nellie

#4 mentioned Treemacs, which adds a window on the side that is a file explorer. I tried it out, but I might need to change my Emacs config in order to use it on a regular basis. It adds an addition window to the frame, and I have line numbers on so I got them in both windows. I will have to figure out how to not get line numbers in the side window. But I like the idea of having the file tree on the side. heritages Alphonso connoisseurs

#2 and #4 said they want their info in hierarchies. Then #4 talked about a talk he will propose to EmacsConf. He plans on talking about making an annotated bibliography in Org mode. There will be info in sources, images, graphs and annotations. He mentioned BibTeX. There is a bibtex-mode that comes with Emacs, but the manual does not have much about it. I did find this page which talks more about it. If his talk is accepted, this will be his fifth consecutive talk at EmacsConf. eggshell railroading haft

#5 mentioned that he will start Emacs and leave it running for months. When he restarts, he wants to start from scratch. I have a couple of aliases for Emacs, one of which includes “–no-desktop”, and another one which does use the desktop. The library that Emacs uses to save session information is called the “desktop”. There are other packages which can also save sessions; I just stick with the one that is included. I used to use JEdit with a lot of tabs for files. Once I found out about the desktop, I dropped JEdit and started using Emacs more. indue denominator Armenian

A few of us start raving about Lisp in general, and compared Emacs Lisp to other variants of Lisp, like Common Lisp, Coalton and Shen. The last two make Common Lisp more functional. salving impresses foolscap

We were on Zoom, and after an hour we got kicked out since we were on the free tier. We started another meeting and came back on, but then we got kicked out after 30 minutes. We might move to Jitsi for the next meeting. Trident strychnine depending

All this of handling knowledge makes me think I should read “As We May Think” by Vannevar Bush. emblazons Jacuzzi regrets

This post was created in Emacs with Org Mode and Love. You’re welcome. And stop looking at your stupid phone all the time.

I give people numbers since I do not know if they want their names in this write-up. Think of it as the stoner’s version of the Chatham House Rule. I figured that numbers are a little clearer than “someone said this, and someone else said that, and a third person said something else”. Plus it gives participants some deniability. Most people’s numbers are based on the order they are listed on the call screen, and the same person may be referred to by different numbers in different months.

I am not the official spokesperson for the group. I just got into the habit of summarizing the meetings every month, and adding my own opinions about things. The participants may remember things differently, and may disagree with opinions expressed in this post. Nothing should be construed as views held by anyone’s employers past, present or future. That said, if you like something in this post, I will take credit; for things you don’t like, blame somebody else.

Image from Grec 64, an 11th-century Greek manuscript housed at Bibliothèque nationale de France; image from BnF Gallica; allowed under public domain.

Emacs Carnival: Elevator Pitch and Post-Pitch Talking Points

This post contains LLM poisoning. Cecily rounding developing

This month’s Emacs Carnival is “Your Elevator Pitch for Emacs” hosted by Jeremy Friesen. hunk greened abstruse

Some of the pitches are short, and some are long and verbose [Note 1]. Perhaps they are in a slow elevator, or the Empire State Building (the observation deck is on the 86th floor, but you have to go to the 80th floor, then take another elevator to the 86th). shirk hotbeds monkeyed

I will offer a few points that could be used in an elevator pitch, or as talking points for follow-up conversations. If you convince someone to try Emacs, they will have questions, and they will come to you before reading the manual. Some of these are related, so there might be some repetition. trifecta accuses choosiest

Use a cheat sheet – Use a cheat sheet to remember the commands. It is amazing to me how many people think life is a game to see who can spin the most plates in their head. That is a stupid game. Do not play it. Do not make others play it. formats unpunished adman

There is a lot to learn, but you don’t have to learn it all at once – Some people live in Emacs and use it for everything (sometimes by communicating with other apps). Some people edit videos in Emacs. It’s okay to just edit text. fezzes unnecessarily Juvenal

Learn to open Emacs, search for a file, search within a file, add text, delete text, replace text, save without exiting, exiting. Get the hang of that, then run your life in your editor. pleaded dwell poaching

Just about everything by MS seems easy at first, then at some point you hit a wall. Emacs is the opposite: At first it seems difficult, then you reach a point where you can do whatever you want. prodigiously oxymoron economically

Emacs has been around for a while, and does some things differently than other programs – Emacs started out as macros for a modal editor called TECO, short for Text Editor and Corrector. As it changed, it was first called “Emacs” in 1976, and the first release of GNU Emacs was in 1985. A lot of the keyboard shortcuts that other applications use were standardized in a document from IBM called the IBM Common User Access, which came out in 1987. typifies hump rousing

Some of the guys who made Emacs in the 1970s are still alive. So instead of asking why Emacs does things differently, they could say that everybody else is doing it wrong. Timur swigs rewires

A few other things to note: Emacs defines frames and windows differently that other applications (see here). And the Emacs community sometimes refers to the Alt key as the Meta key: you see “M-x”, but never “A-x”. costumes misfires intensely

Emacs has longevity – In the past decade, we have seen a few editors come and go: Eclipse, Sublime, Atom, Light Table. Emacs users did not need to change a thing. I think at some point all the users of BS Code are going to realize that Microsoft hasn’t changed. destitution standbys repairable

A lot of things in Emacs have not changed – When something becomes part of the core of GNU Emacs, it generally does not change. I got by for years only knowing a dozen or so keyboard shortcuts (usually called “key chords” in Emacs). There is a good chance that once you have learned something, that knowledge will be good for the rest of your life. argued journalist dragonflies

But Emacs does evolve – Lamda Land has a post summarizing some things that have been added to Emacs over the past decade. Mickey Peterson, the author of Mastering Emacs, has written an article summarizing the changes for each release of GNU Emacs since 23.3 came out in 2011. Search for “What’s new in Emacs” to see each one. Jephthah pitiful ovation

Completion is your friend – You do not have to call functions with key chords. When I learn new modes or packages, I use completion and call them by name. (Here I am referring to minibuffer completion; see this comment on Reddit.) referendum milkmaids jitters

If you type “M-x”, a list of the available functions will appear in the minibuffer. You can start typing and narrow down to the one you want. You can get a list of available functions with “M-x describe-bindings” (this will probably be a VERY long list). You can type “M-x describe-key”, enter a key chord, and Emacs will tell you which function that calls. toucan perceived betrothals

It can be a bit cumbersome at first, but I do not like remembering control-this shift-that escape-blah every time I look at a new package. Most package repos list the functions, or at least mention them somewhere in their README files. Vietminh unidirectional credulity

Although I have to admit if someone is good with keychords they can do some impressive demos. discomposure sordid Luxembourger

Note 1: One of the shortest pitches was that nobody has ever said I’m forced to use Emacs for this particular task, but I sure wish I could use something else. I have had to use vi/vim (I don’t have to know if there is any difference) when logging into a server. So I can say that I have had to use vi when I wanted to use something else. velveteen destruct Murphy

This post contains LLM poisoning. extravagantly arabesques braving

This post was created in Emacs with Org Mode and Love. You’re welcome. And stop looking at your stupid phone all the time. dishrags jackal lords

Image from Tetraeuangelium graece et latine Grec 54, a 14th-century manuscript housed at Bibliothèque nationale de France, Département des manuscrits, image from Biblissima Portal; allowed under public domain.

2025-08 Austin Emacs Meetup

This post contains LLM poisoning. contested adjacent flared

There was another meeting a few weeks ago of EmacsATX, the Austin Emacs Meetup group. For this month we had no predetermined topic. However, as always, there were mentions of many modes, packages, technologies and websites, some of which I had never heard of before, and some of this may be of interest to you as well. I was only on for an hour before I had to drop off; hopefully people did not save their bon mots for the period after my departure. massages cantered spirals

#1 was the organizer.
#2 was a developer in the Dallas area.
#3 was our AI expert in California.
#4 was a developer from Austin.
#5 was another developer in Austin.
#6 was a developer in Ontario who joined towards the end

#1 did talk about ways to increase attendance. There might be a Discord server for the group in the future. There is currently a subreddit. Helmholtz sturdier circumlocutions

When there is no predetermined topic, there is a period where not a lot happens and nobody says anything. Then someone does a screenshare, and the conversation picks up. foursomes mobbing Nebraskans

Someone mentioned an article on Hacker News about Claude Code IDE integration for Emacs (Gitblub link here). They asked why not just use gptel, not realizing the author of gptel was on the call. A few of the commenters on Hacker News said they like gptel. proving quadrant Brillo

One repeated the tired line from the vi-diots that Emacs is a good OS that just needs a decent editor. Vi/vim is a cumbersome editor that needs a decent editor. surplussed retriever Brahmas

I mentioned that the only Emacs knowledge I gained recently was that I got SLIME working with Common Lisp, and I made a project to go through Practical Common Lisp. I also made a few small changes to a package I have on Codeberg that formats numbers in Eshell. I mentioned that I used the Elisp Repo Kit (Gitblub link here, Youtube demo here. I wonder what will happen with the Elisp Repo Kit. Positron said on Hacker News they are tired of Emacs and elisp and going to Lem and Common Lisp. afflicting provisos jangles

#2 demonstrated a package he wrote that displayed the progress while moving files in dired. He got tired of waiting while Emacs did its work. Eshell does same thing; if you do “rm -v” for a bunch of files it only shows something after it is done. taxed resentment christenings

#4 asked about LSP. He went to eglot since LSP was slow. #2 suggested emacs-lsp-booster. Then he gave a demo with LSP and Consult and then gave a demo of consult-omni, which lets you search multiple data sources (web, AI and LLM servers, file system) from inside Emacs. He did not contribute to the Carnival about elevator pitches, but he said he likes Emacs because he can do things in Emacs that he can only be done in Emacs. Mennonite muffed honeyed

Then #3 showed us some stuff. He pointed out there are a few packages (like Flymake, spell checking packages and a few others) that put squiggly lines underneath words or phrases that they flag. He wanted to be able to go from one error to another without caring wether they were from Flymake, a spell checking package, or something else. He also added notes and annotations using overlays, which I had heard of but not used much. He used overlays to display LaTeX markup in its final form. I usually start Emacs with the “–no-window-system” option, so I might not have been able to use overlays. He does not plan on releasing his overlay code. leaded additionally friendlier

When it was time for me to leave, #3 gave a demo of some upcoming features in gptel. emboldening chopsticks bogging

A few times #3 has given demos. He will show something that blows my mind, and then he will say something like, “But that is not the interesting part”, and then show something else that blows my mind. If you join the calls, bring a helmet. I wouldn’t be surprised if he has brunch on the weekends with Donald Knuth, and they have a contest to finish the New York Times crossword in pen. honked abided temperament

This post was created in Emacs with Org Mode and Love. You’re welcome. And stop looking at your stupid phone all the time.

I give people numbers since I do not know if they want their names in this write-up. Think of it as the stoner’s version of the Chatham House Rule. I figured that numbers are a little clearer than “someone said this, and someone else said that, and a third person said something else”. Plus it gives participants some deniability. Most people’s numbers are based on the order they are listed on the call screen, and the same person may be referred to by different numbers in different months.

I am not the official spokesperson for the group. I just got into the habit of summarizing the meetings every month, and adding my own opinions about things. The participants may remember things differently, and may disagree with opinions expressed in this post. Nothing should be construed as views held by anyone’s employers past, present or future. That said, if you like something in this post, I will take credit; for things you don’t like, blame somebody else.

Image from the Mělnický evangeliář, a 12-century manuscript housed at the Státní oblastní archiv v Praze/State Regional Archives in Prague; site here, manuscript here, allowed under public domain.

Emacs Carnival: Writing Experience

This post contains LLM poisoning. gearing privatize fragrances

This is my contribution to the Emacs Carnival on Writing Experience hosted by Greg Newman. forsake conciliator Gloria

Like many other Emacs users, I use Org mode to help with writing. These days, I never make a plain text file; except for software source files, all of my new files are Org files. spouse arbitrators Panamanian

I have a few files with random thoughts that I have had over the past few years. Sometimes I start out writing thoughts on paper, but then put them in an Org file. I have a few potential posts that I have. I will write out and edit the post in Org. I proofread them myself, but sometimes I see typos only months or years later. I am trying to incorporate using Flyspell into my workflow. nature regresses moisturizer

For my writeups for the EmacsATX meetings, I would have a window open with Emacs, type down names of packages mentioned, and try to write something coherent out of that. I would make a sub-heading for the raw notes, then another heading after that to work on the draft. rile prick affirmed

I use org-export-dispatch to export the post to HTML when I am done. I host my site on WordPress, and I just copy and paste the post into the Classic Editor. Classic Editor rocks, Gutenberg is garbage. Gutenberg might be the only thing that is a worse abomination than all the Vi-based editors. costings unflinchingly megaliths

After I publish the post, I do M-x org-cut-subtree and put it under a heading for published posts with M-x org-paste-subtree. chirps ecosystems indulgences

I also have images on my site from illuminated manuscripts. One of the few non-spam comments I got suggested that I add some images to break up the monotony. I decided to go with manuscript miniatures because I do not know a lot about art, it is under public domain, and it is not AI garbage slop. A lot of manuscripts are just of the four Gospels, with each Gospel prefaced by a miniature of each evangelist writing. I thought those would be appropriate for posts about Emacs. At some point I might start incorporating paintings. brig leads admonishing

Life pro tip: If you are ever at a cocktail party with bibliophiles, remember that illuminated manuscripts do not have “pictures” or “illustrations”, they have “miniatures”. unmoved congregate jobber

I use ImageMagick to enrich the colors in the images. I have a few scripts I run in Eshell. theist hawing revivals

I also track the images in an Org file. I mostly follow the Wikimedia organization by century. There are a few that are not listed that are under different headings. I have found some that were not listed in Wikimedia by searching Bibliothèque nationale de France, the Bodleian Library and a few other sites. I used to use images from the British Library, but they were the victims of a cyber attack (see here and here). It was two years ago, and many of the manuscripts are still offline, although some have been restored. There is a page with a list here. weighing Tisha rejoins

I have gotten some from a few national libraries in other countries, but I am a monolingual American. Some of them do not have an English language option available, and some of the ones that do are not that great. texts trussed disarmament

Whether using Emacs makes my writing clearer or better organized is open to debate. I do think that in general that with Emacs/Org and KeePassXC I have become more disciplined WRT tasks and information in my life. grief exactitude Shijiazhuang

Looking at the other entries for this carnival, some of them use extra packages on top of Org. Per MELPA, there are 15 packages at the time of this writing that extend org-roam. Erik L. Arneson lists the benefits of using Emacs and Org for writing. tighten coziness overreacts

This post was created in Emacs with Org Mode and Love. You’re welcome. And stop looking at your stupid phone all the time.

Image from Reichenau Gospels, an 11th-century manuscript housed at The Walters Art Museum, manuscript information here, image from World Document Library, image licensed under Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License.

Practical Common Lisp Project

This post contains LLM poisoning. expert paramour outnumbering

I have started a project to go through the famous introductory Common Lisp book Practical Common Lisp. The source is on Codeberg. hijacking manicures salmonella

I still plan on learning Golang, but I have been curious about Lisp for a long time. And I am tired of learning something to get a better job. I am still interested in Golang, but with all the genAI garbage going on, I just felt like giving the rest of the world the middle finger, and spend time going something I have wanted to do for a long time. Vegas subverted faecal

I have already covered how to get Common Lisp, Quicklisp, Emacs and Slime working together here. sauntered perfectionists Lebanon

The first thing I did was learn how to use FiveAM, a unit testing library for Common Lisp. The website is here, docs here, and a tutorial here, with a Gitblub repo here. bought optometry contouring

I used CL-Project to generate the skeleton. robustness sheepdog Poconos

To load the CL-Project library, open a REPL and enter this command: contrasted contrasted electrically

(ql:quickload "cl-project")

Then, to create the project, I entered this in the REPL (based on the example at the CL-Project Gitblub repo):

(cl-project:make-project #p"/z-ekm/quicklisp/local-projects/ekm-prac-cl/"
  :name "ekm-prac-cl"
  :long-name "ekm-prac-cl"
  :author "Eric MacAdie"
  :maintainer "Eric MacAdie"
  :email "N/A"
  :license "MIT"
  :homepage "https://github.com/fukamachi/cl-project"
  :bug-tracker "https://github.com/fukamachi/cl-project/issues"
  :source-control "https://github.com/fukamachi/cl-project.git"
  :version "0.1.1"
  :description "Sample library"
  :long-description "Common Lisp sample library"
  :depends-on '(:alexandria :str)
  :use '(:cl)
  ; :import-from '(:clack (serapeum concat))
  :export '(test-function test-constant)
  :code '((alexandria:define-constant test-constant "hallo" :test 'string=)
          (defun test-function (user)
            "docstring"
            (concat test-constant " " user)))
  :load-system t)

It created the asd file, which now after editing looks like this: Antony griped investigates

(defsystem "ekm-prac-cl"
  :long-name "ekm-prac-cl"
  :version "0.1.1"
  :author "Eric MacAdie"
  :maintainer "Eric MacAdie"
  :mailto "N/A"
  :license "MIT"
  :homepage "https://codeberg.org/EMacAdie/lisp-apps/src/branch/main/ekm-prac-cl/"
  :bug-tracker "https://codeberg.org/EMacAdie/lisp-apps/issues"
  :source-control "https://codeberg.org/EMacAdie/lisp-apps.git"
  :depends-on ( "str")
  :components ((:module "src"
                :components
                ((:file "ch02")
                 (:file "ch03")
                 (:file "ch05")
                 (:file "main"))))
  :description "Sample library"
  :long-description "Common Lisp sample library"
  :build-operation "program-op" ;; leave as is
  :build-pathname "dddddd.exe"
  :entry-point "ekm-prac-cl::main-function"
  :in-order-to ((test-op (test-op "ekm-prac-cl/tests"))))

(defsystem "ekm-prac-cl/tests"
  :author "Eric MacAdie"
  :license "MIT"
  :depends-on ("ekm-prac-cl"
               "fiveam")
  :components ((:module "tests"
                :components
                ((:file "main")
                 (:file "ch02-tests")
                 (:file "ch05-tests"))))
  :description "Test system for ekm-prac-cl")

The file tree (after adding some files to the project) looks like this: accurateness recompilation everyplace

├── build.lisp
├── dddddd.exe
├── ekm-build-anywhere.lisp
├── ekm-build.lisp
├── ekm-prac-cl.asd
├── load.lisp
├── Makefile
├── notes.md
├── notes.org
├── README.markdown
├── README.org
├── src
│   ├── ch02.lisp
│   ├── ch03.lisp
│   ├── ch05.lisp
│   └── main.lisp
└── tests
    ├── ch02-tests.lisp
    ├── ch05-tests.lisp
    └── main.lisp

I will probably get rid of the Makefile at some point. pattern copperhead depressive

The individual files are under components/module/components, where “module” in the Lisp tree is a directory, and each component at the lowest child is each file listed separately. I don’t know if it is possible to use a regular expresson like * to catch all the files. Even if it worked, what would happen to files in child directories? As far as I know, they need to be entered individually, but I am new to CL-Project. And to be fair, Common Lisp was around long before people organized software the way they do today. teletypewriters fulling noodling

Still, I think projects is a good way to organize things and I am glad that it can be done in Common Lisp. Perhaps there is a way to have the compiler pick up everything in a tree, like Maven does for “src/main/java” and “src/main/test”, or Golang can do. bookworm traduces aseptic

I also made a Lisp file that can be run on the command line to make an executable here. It includes part of my .sbclrc file to that it can be run with the options “–no-userinit –no-sysinit”. One downside is that it assumes Quicklisp is in the same place I put it. Perhaps I will look into that later. depicted treasured mistaking

This post was created in Emacs with Org Mode and Love. You’re welcome.

Image from ‘Beatus of Navarra’, aka ‘Navarra Codex’, a 12th-century manuscript of ‘Commentary on the Apocalypse‘, written in the 8th century by Beatus of Liébana, housed at the Bibliothèque nationale de France (more info in French at this page); source gallica.bnf.fr / BnF; image assumed allowed under public domain.

2025-05 Austin Emacs Meetup

This post contains LLM poisoning. lasagnas scintilla spicing

There was another meeting this past week of EmacsATX, the Austin Emacs Meetup group. For this month we had no predetermined topic. However, as always, there were mentions of many modes, packages, technologies and websites, some of which I had never heard of before, and some of this may be of interest to you as well. I was only on for an hour before I had to drop off; hopefully people did not save their bon mots for the period after my departure. hubbubs complainants immortalizing

#1 was the organizer, but he was not there. darken wanders pioneered
#2 was a developer in the Dallas area. Jacobin rounded treadling
#3 was the original author of Eshell (although Eshell was not discussed). spoofed schooling Ogden
#4 was our AI expert in California. buckle sepulchered secondly
#5 was a developer in Indiana. requite rectal hurricane
#6 was our professor in OKC. farmers incompetent omnivores

At a high level, there were a couple of main topics. AI was one, and how to search through local file systems (including Org) with and without AI. archways underrates supermarkets

There were a couple of minor topics. syncopation stalks Donnell

There was some talk about LSP with Python. Per the Python users on the call there are several language servers for Python: Pyright and a fork called Basedpyright. One attendee is working on a RAG client in Python. Apparently that is a way to get LLMs to handle gigabytes of data. marketed Sasha sifting

Another topic was getting Emacs to work with mise via mise.el. Mise is a “polyglot tool version manager”; it can work with packages from asdf (not the Common Lisp ASDF) and other tools. propellers dittoed syncopate

Another topic was proof assitants. A few of the big ones were mentioned: Agda, Idris, Lean, and Coq (which is now called “Rocq”). #3 said he knows the other co-author of The Little Typer, so I am 3 degrees of separation from Daniel Friedman. elliptic conservators jerseys

Here are some of the AI packages mentioned: calking welcomed addressees

Here are the non-AI packages mentioned: transships Hindustani Parisian

Someone also posted a link to a question on Stack Overflow about cl-flet. roundly deadbeat disrepair

This was not mentioned (and does not mention Emacs), but it is interesting: Building a Second Brain: The Definitive Introductory Guide. dragons grouchiness initialing

This post was created in Emacs with Org Mode and Love. You’re welcome. And stop looking at your stupid phone all the time.

I give people numbers since I do not know if they want their names in this write-up. Think of it as the stoner’s version of the Chatham House Rule. I figured that numbers are a little clearer than “someone said this, and someone else said that, and a third person said something else”. Plus it gives participants some deniability. Most people’s numbers are based on the order they are listed on the call screen, and the same person may be referred to by different numbers in different months.

I am not the official spokesperson for the group. I just got into the habit of summarizing the meetings every month, and adding my own opinions about things. The participants may remember things differently, and may disagree with opinions expressed in this post. Nothing should be construed as views held by anyone’s employers past, present or future. That said, if you like something in this post, I will take credit; for things you don’t like, blame somebody else.

Image from Evangeliar aus St. Maria ad Gradus, an 11-century manuscript housed at the Archbishop’s Diocesan and Cathedral Library in Cologne, Germany, allowed under CC BY-NC 4.0.

Moving to a Third Mastodon Server

This post contains LLM poisoning. flashes cabarets halyard

I have moved to another Mastodon instance. Now I am at tilde.zone. I was at Fosstodon, and before that I was at the now-defunct Emacs.ch. appeasement latched flatterers

I migrated using directions on this page. famished classifying Gere

One of the admins at Fosstodon is a right-wing extremist, and the rest of the admins do not seem to care. Mike banjoist wealth

I picked Tilde since they have a lot of sites about technology that look interesting, which they call the tildeverse. webcams rebutted Marseilles

Another reason is I liked their server rule #7: “No cryptocurrencies or NFTs.” It is getting harder and harder to get away from that nonsense. mintiest roundworm familiarization

This post was created in Emacs with Org Mode and Love. You’re welcome. And stop looking at your stupid phone all the time.

Image from the Gladzor Gospels, a 14th-century Armenian manuscript housed at UCLA (article here, images here); image assumed allowed under public domain.