mirror of
https://github.com/doomemacs/doomemacs
synced 2025-08-01 12:17:25 -05:00
Add Kotlin module
This commit is contained in:
15
modules/lang/kotlin/autoload.el
Normal file
15
modules/lang/kotlin/autoload.el
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
;;; lang/kotlin/autoload.el -*- lexical-binding: t; -*-
|
||||||
|
|
||||||
|
;;;autoload
|
||||||
|
(defun +kotlin/locate-gradlew-file ()
|
||||||
|
"Gradlew file location for this project."
|
||||||
|
(locate-dominating-file buffer-file-name "gradlew"))
|
||||||
|
|
||||||
|
;;;###autoload
|
||||||
|
(defun +kotlin/run-gradlew (command)
|
||||||
|
"Run gradlew in this project."
|
||||||
|
(interactive "sCommand: ")
|
||||||
|
(let ((default-directory (+kotlin/locate-gradlew-file))
|
||||||
|
(compilation-read-command nil)
|
||||||
|
(compile-command (format "sh gradlew %s" command)))
|
||||||
|
(call-interactively #'compile)))
|
16
modules/lang/kotlin/config.el
Normal file
16
modules/lang/kotlin/config.el
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
;;; lang/kotlin/config.el -*- lexical-binding: t; -*-
|
||||||
|
|
||||||
|
(after! kotlin-mode
|
||||||
|
(set-docsets! 'kotlin-mode "Kotlin")
|
||||||
|
|
||||||
|
(map! :map kotlin-mode-map
|
||||||
|
:localleader
|
||||||
|
:prefix ("b" . "build")
|
||||||
|
:desc "gradlew assemble" "a" (λ! (+kotlin/run-gradlew "assemble"))
|
||||||
|
:desc "gradlew build" "b" (λ! (+kotlin/run-gradlew "build"))
|
||||||
|
:desc "gradlew test" "t" (λ! (+kotlin/run-gradlew "test"))))
|
||||||
|
|
||||||
|
(def-package! flycheck-kotlin
|
||||||
|
:when (featurep! :tools flycheck)
|
||||||
|
:after kotlin-mode
|
||||||
|
:config (add-hook 'kotlin-mode-hook #'flycheck-kotlin-setup))
|
4
modules/lang/kotlin/doctor.el
Normal file
4
modules/lang/kotlin/doctor.el
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
;;; lang/kotlin/doctor.el -*- lexical-binding: t; -*-
|
||||||
|
|
||||||
|
(unless (executable-find "ktlint")
|
||||||
|
(warn "ktlint not found. flycheck-kotlin won't work."))
|
7
modules/lang/kotlin/packages.el
Normal file
7
modules/lang/kotlin/packages.el
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
;; -*- no-byte-compile: t; -*-
|
||||||
|
;;; lang/kotlin/packages.el
|
||||||
|
|
||||||
|
(package! kotlin-mode)
|
||||||
|
|
||||||
|
(when (featurep! :tools flycheck)
|
||||||
|
(package! flycheck-kotlin))
|
Reference in New Issue
Block a user