This is a very simple extension package for Corgi emacs which adds support for
clj-kondo using flymake
. This package is not part of corgi emacs
, but it is
defined to work in collaboration with that emacs configuration framework.
As corgi
uses straight.el to install packages and use-package
to manage configuration, you can install this module by adding the following to your corgi init.el
file.
(use-package corgi-clojure-kondo
:straight (:host github :repo "theophilusx/corgi-clojure-kondo")
:hook ((clojure-mode . (lambda () (flymake-mode +1))))
:config
(corgi-clojure-kondo/load-default-bindings))
This package also sets up some key bindings. However, the current implementation is a definite hack, but seems to work OK. Once we have something a little more elegant, I will update this package accordingly.
As it currently stands, you need to add two additional blocks of code to your
init.el
file. Add the following to your init.el
file BEFORE loading
corgi-clojure-kondo
.
;; Add default key and signal files to global lists
(defvar *key-files-list* (list 'corgi-keys 'user-keys)
"List of corkey key definition files.")
(defvar *signal-files-list* (list 'corgi-signals 'user-signals)
"List of corkey signal definition files.")
At the end of your init.el
, add the following
;; Load the corkey key and signal definitions and
;; watch for changes
(corkey/load-and-watch *key-files-list* *signal-files-list*)
The main task left to sort out is how best to handle new key bindings and signals introduced by an extension package for corgi. The above is a temporary hack which will be replaced with something more maintainable at some point in the future.
Any issues you encounter should with using this package should be logged against
the corgi-clojure-kondo
package. If you are certain the issue is related to the
corgi
base packages, then log the issue with the corgi repository. If your
uncertain whether the issue is with corgi-clojure-kondo
or corgi
, log the issue
with this repository and I will assess and refile when necessary.
When lodging an issue, please ensure you include the version of Emacs your running and what platform you are running on. Please also note that I tend not to immediately investigate issues associated with the current development versions of Emacs. As that version is a moving target, I will tend to leave issues and wait to see if they are resolved with later updates to the Emacs code base.
All PRs are welcomed. The aim is to keep this package as simple as possible, with minimal opinionated configuration. Note that all documentation is placed in the README, which is an Emacs org file.