Skip to content

icyflame/.emacs.d

Repository files navigation

@icyflame’s Emacs Configuration

Supported Emacs version: 29.4

This configuration assumes that use-package and sqlite are built-in with Emacs. These features are present in Emacs 29+.

Non-existent PGP public keys for ELPA archives

On Emacs 28.2, the nongnu archive’s GPG key is not present. The key can be found on the Ubuntu keyserver. The error message looks like this:

Failed to verify signature archive-contents.sig:
	  No public key for 474F05837FBDEF9B created at 2014-09-29T07:20:03-0700 using DSA

Simply running gpg --import will not work. ELPA maintains its own GPG database and the key must be imported inside that database:

gpg --homedir ~/.emacs.d/elpa/gnupg --import < ~/Downloads/....asc

Source: https://metaredux.com/posts/2019/12/09/dealing-with-expired-elpa-gpg-keys.html

Deleting a package

M-x package-delete RET package-name TAB RET

Packages have to be deleted manually, it seems. I was unable to find any command that would cross reference the `init.el` file and check which packages are not being used and clean them up.

Helm vs. Ivy

I started using Emacs in February 2020. A few months after using Emacs without any list completion framework, I installed Helm and started using it. Helm was very good back then.

However, as I have gotten more proficient at Elisp and started writing more functions and importing more packages into my configuration, I am seeing that Helm is too slow for some actions. For e.g., the simple action of showing the list of notes under org-roam takes a noticeable half-second.

To solve this performance problem, I switched to Ivy. Ivy is a simple list completion framework. It does not do anything else. It simply adds the fuzzy completion feature to whichever Emacs command provides a list for selection.

The Ivy package actually has 3 components: Ivy (list completion for commands that provide lists already), Counsel (list completion for everything, including enhanced completion for commands that don’t provide lists or have dynamic list generating functinos), Swiper (an ivy-powered interactive search inside a single buffer). Counsel includes both Swiper and Ivy.

Awesome Tab (Removed)

https://github.com/manateelazycat/awesome-tab

I used Awesome Tab for several months. However, I never switched between tabs or even noticed that they were being displayed. So, I decided to remove this package.

Emacs Application Framework (Removed)

https://github.com/emacs-eaf/emacs-application-framework

EAF attempts to bring modern GUI applications into Emacs. I tried its browser for opening HTML emails; this would have been a great use-case, if it worked. But it did not work very well. The browser’s performance for pages such as github.com was poor. I was able to login to GitHub, but after that, moving anywhere on the page was not possible becasue the cursor and everything seemed to be stuck.

The PDF viewer was also similar; it took a long time to load a simple PDF with a white background and minimal text. Even when the PDF was loaded, the text was rendered in a strange font with a hatch pattern on top of the text, as if there was a filter of some sort. DocView is not good but it is better than this.

The system monitor application did not work at all. The other applications such as camera and video player are not very useful to me anyway. So, I decided to trial it for a period of time and then removed it.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published