Andrey Listopadov

Tags / emacs-lisp

In Emacs version 28 Emacs developers introduced so-called read symbol shorthands. If you’re interested in the rationale, feel free to search the Emacs developer mailing list for the discussion. However, it does seem that not everyone likes the idea of shorthands as a substitution for namespaces (or packages, if you’re coming from Common Lisp).
Or “when you don’t have topics to write about, write about how you do your writing”. Ahem. I like my blog workflow, it makes me want to return to writing more often, and because of this, I capture way more thoughts than I would usually do if I didn’t have a blog.
I use Emacs mainly for programming, but I also write a lot of non-code in it, either for this blog, documentation for my projects, or just when I take notes. And I do it with a git-friendly style of formatting with a single sentence per line.
After publishing the last post I thought why won’t I post such things here occasionally? I have a few pieces of Emacs Lisp in my configuration that I wrote for myself some time ago to fix some annoyances or improve a certain workflow.
I was going through my git commit history in my public dotfiles repository and noticed that prior to using straight.el I’ve, like many, used an inbuilt solution for managing packages, called package.el. However, there was one thing that bothered me, and one of the reasons that made me think about switching to straight was the fact, that a lot of times when I wanted to update or install packages, I couldn’t, due to an outdated package cache.
Here’s a quick rant, kinda. I’ve become a huge fan of structural editing recently. My structural editing journey was maybe a bit unusual, but I’ve finally settled on Smartparens for quite some time. Originally I was introduced to structural editing by Parinfer mode which had some Paredit functionality, so it got me interested.
Modern text editors usually operate in one instance. When I select some advanced text editor as my preferred editor in the system, I expect this to happen: I click on some files in the file manager; If there’s no editor instance opened, a new instance opens with the file ready to edit; If there is an instance of an editor opened somewhere, a file is being opened in it, and the editor is brought to me via some focus event.
This is yet another follow-up post in the Emacs configuration series, which is also about Tabs. The previous post was about how tabs behave when you close them, and how I think the algorithm can be improved. This post is more about visuals and horizontal space management.
Another little piece from my Emacs config that I’ve decided to turn into a small post, following up on previous one. This time, we’re going to make tabs work as in most graphical editors. Tabs were added with global-tab-line-mode in Emacs 27, and are pretty simple tabs, that are being displayed on the top of a window, and by default, their semantics are not very useful in my opinion.
Thought that I can share snippets of my Emacs config from time to time here, just like @clemera does on I highly recommend you to check it out, there are many great recipes and articles. A while ago I’ve added static Treemacs title to Treemacs buffer for aesthetic purposes - it adds good alignment with tabs in other windows.
Newer Page 1 of 1 Older