clojure-mode #3
|
@ -52,7 +52,6 @@
|
|||
gdscript-mode
|
||||
meson-mode
|
||||
lsp-scheme
|
||||
clojure-mode
|
||||
cider
|
||||
aggressive-indent
|
||||
graphviz-dot-mode
|
||||
|
@ -90,6 +89,10 @@
|
|||
org-ql
|
||||
ctrlf
|
||||
badwolf-theme
|
||||
clojure-mode
|
||||
clojure-ts-mode
|
||||
cider
|
||||
flycheck-clj-kondo
|
||||
ace-window
|
||||
avy
|
||||
paredit
|
||||
|
|
|
@ -32,6 +32,7 @@
|
|||
(require 'fg42/langs/python)
|
||||
(require 'fg42/langs/elisp)
|
||||
(require 'fg42/langs/nix)
|
||||
(require 'fg42/langs/clojure)
|
||||
|
||||
(require 'fg42/git)
|
||||
(require 'fg42/wm)
|
||||
|
|
|
@ -0,0 +1,57 @@
|
|||
;;; FG42 --- The mighty editor for the emacsians -*- lexical-binding: t; -*-
|
||||
;;
|
||||
;; Copyright (c) 2010-2024 Sameer Rahmani & Contributors
|
||||
;;
|
||||
;; Author: Sameer Rahmani <lxsameer@gnu.org>
|
||||
;; URL: https://devheroes.codes/FG42/FG42
|
||||
;; Version: 4.0.0
|
||||
;;
|
||||
;; This program is free software; you can redistribute it and/or modify
|
||||
;; it under the terms of the GNU General Public License as published by
|
||||
;; the Free Software Foundation, either version 3 of the License, or
|
||||
;; (at your option) any later version.
|
||||
;;
|
||||
;; This program is distributed in the hope that it will be useful,
|
||||
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
;; GNU General Public License for more details.
|
||||
;;
|
||||
;; You should have received a copy of the GNU General Public License
|
||||
;; along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
;;
|
||||
;;; Commentary:
|
||||
;;; Code:
|
||||
(eval-when-compile
|
||||
(require 'fpkg))
|
||||
|
||||
|
||||
(use! flycheck-clj-kondo
|
||||
"flycheck linter for clojure using `clj-konda'"
|
||||
:defer t)
|
||||
|
||||
;; (defun fg42/clojure-ts-mode-setup ()
|
||||
;; "A hook handler to setup cpp related configurations."
|
||||
;; ;; We set eglot's autoload command to `eglot-ensure'
|
||||
;; (eglot-ensure))
|
||||
|
||||
(use! clojure-ts-mode
|
||||
"Clojure mode"
|
||||
;; :init
|
||||
;; (add-to-list 'major-mode-remap-alist '(clojure-mode . clojure-ts-mode))
|
||||
:mode (("\\.clj\\'" . clojure-ts-mode)
|
||||
("\\.cljs\\'" . clojure-ts-mode)
|
||||
("\\.cljc\\'" . clojure-ts-mode))
|
||||
:config
|
||||
(with-eval-after-load 'eglot
|
||||
;; Force nil to use nixpkgs-fmt for formatting
|
||||
(let ((clojure-lsp '(clojure-ts-mode . clojure-mode)))
|
||||
(require 'flycheck-clj-kondo)
|
||||
(add-to-list 'eglot-server-programs clojure-lsp)))
|
||||
|
||||
:hook
|
||||
(clojure-ts-mode . company-mode)
|
||||
(clojure-ts-mode . cider)
|
||||
(clojure-ts-mode . eglot-ensure))
|
||||
|
||||
(provide 'fg42/langs/clojure)
|
||||
;;; clojure.el ends here
|
|
@ -52,8 +52,10 @@
|
|||
, slock
|
||||
, supportPython ? true
|
||||
, supportVerilog ? true
|
||||
, supportClojure ? true
|
||||
, svls
|
||||
, verilator
|
||||
, clojure-lsp
|
||||
,
|
||||
}:
|
||||
with builtins;
|
||||
|
@ -99,12 +101,14 @@ let
|
|||
# SystemC is required by verilator that at the
|
||||
# moment is only available on Linux
|
||||
verilator
|
||||
]) ++ (lib.optional (supportWM && stdenv.isLinux) [
|
||||
]) ++ (lib.optional (supportClojure) [ clojure-lsp ])
|
||||
++ (lib.optional (supportWM && stdenv.isLinux) [
|
||||
# Window manager supports works on Linux only
|
||||
xorg.xhost
|
||||
slock
|
||||
]);
|
||||
|
||||
|
||||
paths = map (x: "${x}/bin/") (lib.lists.flatten runtimeBins);
|
||||
pathsStr = lib.strings.concatStrings (lib.strings.intersperse ":" paths);
|
||||
|
||||
|
|
Loading…
Reference in New Issue