<?xml version='1.0' encoding='UTF-8'?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><atom:link href="https://acidwords.com/" rel="self" type="application/rss+xml"/><title>#:acid 'words</title><link>https://acidwords.com/</link><description>about EDE Desktop, Lisp and other hacks...</description><lastBuildDate>Tue, 08 Jul 2025 14:32:00 +0200</lastBuildDate><generator>clj-rss</generator><item><guid>https://acidwords.com/posts/2024-09-12-evil-mode-in-terminal-without-alt-meta.html</guid><link>https://acidwords.com/posts/2024-09-12-evil-mode-in-terminal-without-alt-meta.html</link><title>evil-mode in terminal without Alt/Meta</title><description>This morning I found the following post on reddit /r/emacs:
Evil mode on a vt100 and
I recalled having the same issue with terminal Emacs in xterm. By
default, xterm emulates VT102, and behaving like VT100, will not send
Alt/Meta key to Emacs without
this workaround.In short, the workaround to send M-x in evil-mode even if Alt/Meta doesn't
work is to use this combo: \ Esc-x. \ will temporarily suspend evil-mode and
Esc-x is the same as M-x. The same will work with C-u M-x: type \ C-u Esc-x.I wasn't satisfied with this, we are using Emacs, after all ;) How
about we can call M-x directly as evil-mode ex command? Sure,
run this:</description><pubDate>Thu, 12 Sep 2024 00:00:00 +0200</pubDate></item><item><guid>https://acidwords.com/posts/2022-12-01-faster-man-pages-rendering.html</guid><link>https://acidwords.com/posts/2022-12-01-faster-man-pages-rendering.html</link><title>Faster man pages rendering</title><description>If you try to open rclone or gcc man pages
with Emacs, you'd be surprised how unpleasant that experience can
be. Those pages are over 30K lines and Emacs will became
unresponsive easily. For how long will depend on your CPU.To speed up things, setting Man-fontify-manpage-flag to nil can
alleviate this problem - it will disable highlighting of a man page
and buffer can be somehow usable. Surprisingly, running woman, an
alternative man pager written in elisp, will render the rclone man page
faster, but it will leave a lot of garbage around.The fastest option for me was running a shell command man &lt;page> | col -b
and reading that output directly as plain text in the Emacs buffer.</description><pubDate>Thu, 01 Dec 2022 00:00:00 +0100</pubDate></item><item><guid>https://acidwords.com/posts/2021-01-12-edit-files-in-remote-docker-container.html</guid><link>https://acidwords.com/posts/2021-01-12-edit-files-in-remote-docker-container.html</link><title>Edit files in (remote) Docker containers</title><description>I always had problems remembering Docker commands: to run a shell in a
container, should I use docker run or docker exec? Wait, I
probably need to "attach" the terminal to the running container. No
problem, let's try docker attach. Ooops...These commands initially made no much sense to me - run and exec
sounds like an alias to me and attach; well, Docker authors clearly
had the idea that attaching to container and attaching shell input
(typing commands inside container shell) are entirely unrelated
things.Because of this, I kept personal docker.org file with all the notes
how I'm going to start a container, run something in it, and so on.</description><pubDate>Tue, 12 Jan 2021 00:00:00 +0100</pubDate></item><item><guid>https://acidwords.com/posts/2020-04-26-open-uncompressed-file-in-emacs.html</guid><link>https://acidwords.com/posts/2020-04-26-open-uncompressed-file-in-emacs.html</link><title>Open (un)compressed file in Emacs</title><description>In Emacs, when you open a compressed file like foo.txt.gz, it will
transparently decompress it (using gzip in the case above) and open
as a regular file. However, what will happen if the above file is not
compressed at all?Here is my case. I'm using excellent rclone to
open remote S3 drives by mounting them in the local folder. From
there, Emacs and dired works much better than any
TRAMP hack I tried.However, an application that would ship logs to S3, would ship them
with gzip extension attached (hence foo.txt.gz), but files would not
be compressed. I'm not sure if this behavior is intentional or bug in
the script, but this will cause Emacs to fail with this error:</description><pubDate>Sun, 26 Apr 2020 00:00:00 +0200</pubDate></item><item><guid>https://acidwords.com/posts/2019-12-04-handle-chromium-and-firefox-sessions-with-org-mode.html</guid><link>https://acidwords.com/posts/2019-12-04-handle-chromium-and-firefox-sessions-with-org-mode.html</link><title>Handle Chromium &amp; Firefox sessions with org-mode</title><description>I was big fan of
Session Manager,
small addon for Chrome and Chromium that will save all open tabs,
assign the name to session and, when is needed, restore it.Very useful, especially if you are like me, switching between multiple
"mind sessions" during the day - research, development or maybe news
reading. Or simply, you'd like to remember workflow (and tabs) you had
few days ago.After I decided to ditch all extensions from Chromium except
uBlock Origin,
it was time to look for alternative. My main goal was it to
be browser agnostic and session links had to be stored in text file,
so I can enjoy all the goodies of plain text file. What would be
better for that than good old org-mode ;)</description><pubDate>Wed, 04 Dec 2019 00:00:00 +0100</pubDate></item><item><guid>https://acidwords.com/posts/2019-08-07-ido-mode-with-eshell-shell-and-more.html</guid><link>https://acidwords.com/posts/2019-08-07-ido-mode-with-eshell-shell-and-more.html</link><title>ido-mode with eshell, shell, sql and more...</title><description>ido-mode
doesn't provide completion for
eshell,
shell
or sql-mode
out of the box, and I wasn't been able to find any package with this
option that is lightweight enough (Helm, I'm looking at you). So, after few
attempts, here is the code for that:After evaluating the code, in eshell simply execute
M-x ido-eshell-comint-history and magic will happen - you will get full
eshell history managed by ido-mode. To make it more authentic, map it
to C-c C-l, which is default sequence for completion in eshell.</description><pubDate>Wed, 07 Aug 2019 00:00:00 +0200</pubDate></item><item><guid>https://acidwords.com/posts/2018-06-12-declutter-read-online-content-without-clutter.html</guid><link>https://acidwords.com/posts/2018-06-12-declutter-read-online-content-without-clutter.html</link><title>declutter - read online content without clutter</title><description>Last two days I've been hacking on a small Emacs mode called
declutter and this will be the
first version announcement.What is declutter and why?I often use Emacs to read long, online articles, which gives me plenty
of options - I can save text for offline reading, I can read content
with my favorite color and terminal setup, I have my shortcuts for fast
navigation and so on.</description><pubDate>Tue, 12 Jun 2018 00:00:00 +0200</pubDate></item><item><guid>https://acidwords.com/posts/2018-04-03-emacs-git-gpg-and-failed-to-sign-the-data.html</guid><link>https://acidwords.com/posts/2018-04-03-emacs-git-gpg-and-failed-to-sign-the-data.html</link><title>Emacs, git, gpg and 'failed to sign the data'</title><description>I'm not sure is this (un)common case, but when I used git with
signing commits
from Emacs with
VC
or Magit, I was getting this:Curiously,
many
had similar problem, but not from Emacs which is my case. On other
hand, git signing from terminal worked without any problems for me.</description><pubDate>Tue, 03 Apr 2018 00:00:00 +0200</pubDate></item><item><guid>https://acidwords.com/posts/2018-03-02-extending-org-mode-easy-templates.html</guid><link>https://acidwords.com/posts/2018-03-02-extending-org-mode-easy-templates.html</link><title>Extending org-mode Easy Templates</title><description>I frequently use org-mode
Easy Templates
and I noticed I often miss shortcut for comment block
(BEGIN_COMMENT/END_COMMENT) which is very useful from time to time.Let's add that feature.</description><pubDate>Fri, 02 Mar 2018 00:00:00 +0100</pubDate></item><item><guid>https://acidwords.com/posts/2017-12-01-distraction-free-eww-surfing.html</guid><link>https://acidwords.com/posts/2017-12-01-distraction-free-eww-surfing.html</link><title>Distraction-free EWW surfing</title><description>Sometimes when I plan to read a longish html text, I fire up
EWW, a
small web browser that comes with Emacs.However, reading pages on larger monitor doesn't provide good
experience, at least not for me. Here is an example:</description><pubDate>Fri, 01 Dec 2017 00:00:00 +0100</pubDate></item><item><guid>https://acidwords.com/posts/2017-10-19-closing-all-parentheses-at-once.html</guid><link>https://acidwords.com/posts/2017-10-19-closing-all-parentheses-at-once.html</link><title>Closing all parentheses at once</title><description>While watching interesting presentation called
Inspiring a future Clojure editor with forgotten Lisp UX,
I've noticed author mentioned one really cool feature I was looking for
some time - Interlisp's super-paren.In short, Interlisp had
this unique super-paren option, bound to ] key, that would close
all opened parentheses at once.To my knowledge, Emacs doesn't have something like this out of the box,
unless you use
Allegro CL mode
or SLIME, but let's see how would it be hard to implement it.</description><pubDate>Thu, 19 Oct 2017 00:00:00 +0200</pubDate></item><item><guid>https://acidwords.com/posts/2017-02-16-displaying-org-mode-appointments-in-calendar.html</guid><link>https://acidwords.com/posts/2017-02-16-displaying-org-mode-appointments-in-calendar.html</link><title>Displaying org-mode appointments in calendar</title><description>One neat feature of org-mode agenda is ability to
display appointments in Emacs calendar. Sadly, this isn't obvious nor
enabled by default - I discovered it accidentally by browsing through
Emacs themes screenshots.In screenshot below, you can see highlighted days with planned
meetings and scheduled work in my calendar.</description><pubDate>Thu, 16 Feb 2017 00:00:00 +0100</pubDate></item><item><guid>https://acidwords.com/posts/2016-09-21-literate-programming-with-monroe-and-org-mode.html</guid><link>https://acidwords.com/posts/2016-09-21-literate-programming-with-monroe-and-org-mode.html</link><title>Literate programming with Monroe and org-mode</title><description>I'm starting to like literate programming with
org-mode more and more, so I decided to try it
in a small Clojure project. I'm aware of
Marginalia, but since I'm
planning to mix Clojure code with shell scripts and draw some charts,
Marginalia won't be much of a help here.By default, org-mode does not have
support
for Monroe as REPL backend, and with
some elisp bending, we are going to add it.The Code</description><pubDate>Wed, 21 Sep 2016 00:00:00 +0200</pubDate></item><item><guid>https://acidwords.com/posts/2016-06-18-collapsing-all-filter-groups-in-ibuffer.html</guid><link>https://acidwords.com/posts/2016-06-18-collapsing-all-filter-groups-in-ibuffer.html</link><title>Collapsing all filter groups in ibuffer</title><description>If you have to cope with large number of buffers,
ibuffer is the only
way to keep things manageable. It has support for filtering, sorting
and, my favorite,
grouping,
which is indispensable when you are switching often between various
projects and file groups like I do.However, one thing I always missed is ability to collapse all groups
at once - a handy functionality when you have 10-30 groups and you'd not
like to be distracted with not important buffers at that point.Is short, I want from this:</description><pubDate>Sat, 18 Jun 2016 00:00:00 +0200</pubDate></item><item><guid>https://acidwords.com/posts/2016-05-09-unique-buffers-in-emacs.html</guid><link>https://acidwords.com/posts/2016-05-09-unique-buffers-in-emacs.html</link><title>Unique buffer names in Emacs</title><description>When I work on large codebase done by more than one developer, I often
find this pattern:Of course, this isn't the case with Java or Clojure only; this can be
found in almost any larger project no matter what language is
used. After all, folders are invented to keep the files under
different namespaces, right?</description><pubDate>Mon, 09 May 2016 00:00:00 +0200</pubDate></item><item><guid>https://acidwords.com/posts/2015-12-25-notmuch-and-addressbook-handling.html</guid><link>https://acidwords.com/posts/2015-12-25-notmuch-and-addressbook-handling.html</link><title>Notmuch and Addressbook handling</title><description>I always had a problem with managing my email contacts, not because
I'm lazy, but because tooling for that was/is really crude. In most
cases (actually, in all cases AFAIK) I'd have to do it manually, by
marking target address so the mail client knows what to store or do
the hard work, open addressbook editor and fill necessary details.For example, in Mutt (which I used before) I'd have
to
press 'a' on desired address
to be added on Mutt alias list. In Thunderbird, it is a totally
different story: there are
two contact lists -
one you manually manage and the other is populated by Thunderbird by
reading your recipient list.The problem with all of these approaches is that I'd have to think in
advance if a particular email address is important for me, so I can do
appropriate steps and save it. Of course, Thunderbird's
Collected addresses can help here, but will not work unless you
send an email.</description><pubDate>Fri, 25 Dec 2015 00:00:00 +0100</pubDate></item><item><guid>https://acidwords.com/posts/2015-10-21-evil-mode-and-xml-folding.html</guid><link>https://acidwords.com/posts/2015-10-21-evil-mode-and-xml-folding.html</link><title>evil-mode and xml folding</title><description>Recently I went back to Maven's
pom.xml
editing and still can't get that nice warm feeling with Eclipse. Yet.So, I was thinking, why not fire up Emacs (with evil-mode of course)
and reuse all that folding
goodness we get out of the box.The thing is, Emacs does not support xml folding out of the box, but
thanks to
this awesome
tip from Jordon Biondo, you can easily add it. Here is a little bit
improved version:</description><pubDate>Wed, 21 Oct 2015 00:00:00 +0200</pubDate></item><item><guid>https://acidwords.com/posts/2015-09-15-emacs-as-default-file-manager-in-ede.html</guid><link>https://acidwords.com/posts/2015-09-15-emacs-as-default-file-manager-in-ede.html</link><title>Emacs as default file manager in EDE</title><description>Just stumbled on
this
really neat post on how to setup Emacs as default file manager in
Ubuntu. So, why we don't do the same in EDE?First create a script named dired and save it in known place,
e.g. your $HOME folder, with this content (I found it here):</description><pubDate>Tue, 15 Sep 2015 00:00:00 +0200</pubDate></item></channel></rss>