Posts

How to iterate through all alphabet letters in ClojureScript?

Problem: JavaScript doesn’t have “chars” EDIT [2022-07-19 Tue] no-interop solution from In languages with an integer-based Char datatype, such as C and Java and probably by inheritance JVM Clojure, you could iterate through characters by the equivalent of (+ \A 1). JS doesn’t have chars though; only strings. Is there a nice way out-of-the-box to iterate through the characters of the alphabet, perhaps just in one case? I mean, obviously we could create a collection that contains all the letters we want, but is that already done somewhere?

Stop find-file from ignoring .git

Intro This wasn’t always the case, but I find that now emacs is ignoring some files when I do find-file. The most annoying example is .git not appearing, although I can navigate through it if I type it fully. This seems to happen whether I am using my vertico for find-file, or if I disable vertico and try using tab-completion in a raw find-files. How can I find out what is being ignored, and change/disable it?

auctex on guix

File mode specification error: (error Autoloading file ~/emacs/.emacs.d/straight/build/auctex/tex.elc failed to define function tex) Based on attempts I made to copy solutions from other examples in issues on the github repo1, I had this (which seems to have worked fine in older versions of straight) (use-package tex :straight `(auctex :local-repo ,(tsa/wrap-guix-profile "auctex-13.1.3")) ;; this just says to use the version I downloaded from guix, since it did all the system config :mode "\\.

pdflatex not an option anymore in TeX-command-list

Problem: in .tex files the pdflatex compile option was gone For years I built tex into pdf with pdflatex; I just hit C-c C-c and there it was. But now having just rebuilt my system with Guix, I find that pdflatex isn’t on the list of compilation commands. This is despite the fact that the command pdflatex works from the commandline. Does anyone know where it went in auctex, and how to get it back?

How to avoid interpreting just one underscore in orgmode export?

Problem: I need just one literal underscore in my org-exported blog post I export orgmode to my blogs. However, when I have an underscore (like in a section header) it is interpreted as putting the next thing in a subscript. There are plenty of answers out there for disabling this globaly or for the whole file, but I WANT subscripts sometimes. How do I tell it to leave just a particular _ alone when I export?

volume control from guix cli with pactl instead of amixer

Intro I used to have an exwm emacs shortcut to change my volume: (exwm-input-set-key (kbd "<XF86AudioLowerVolume>") (lambda () (interactive) (shell-command "amixer set Master 2%-"))) and a similar function for the volume-up key. When I press the audio buttons, it uses amixer to change the volume. The trouble is, guix doesn’t seem to offer amixer anywhere. I don’t see it in nongnu packages, so I was able to find pactl instead. Here’s how I got it (improvement suggestions welcome):

fast fibonacci in Clojure?

Intro A recent stack overflow question asked about Clojure performance compared to other implementations, with Python and raw java performing vastly better than Clojure1. Now, this is Clojure, so there must be a better way. One of the answers pointed to RosettaCode and Clojure fibonacci implementations there2, so I felt pretty good grabbing the “Doubling Algorithm (Fast)” version given there, which is based on an off-the-cuff github answer from Clojure optimization guru Mike Fikes3.

ignore file permissions in git

Intro git config --global core.fileMode false Resources https://tecadmin.net/git-ignore-file-permission/

installing NPM and shadow-cljs on guix

Intro Installing things on guix is usually more involved that just using the one-liners you may have been given with other things in mind. Getting NPM in Guix Install the latest node to get the npm command. guix install node

Find the process id of a running process

The command Sometimes I started a command with a java -jar mything.jar & long ago, and now it needs to be updated, and I haven’t got around to properly instrumenting it yet. Here is the command that helps me find and shutdown the old process so I can restart it. ps -ef | grep mything Resources https://community.talend.com/s/article/How-to-find-and-kill-a-process-running-on-a-port-LVJkZ?language=en_US#auraLoadingBox