Skip to content

Helpers for working with Quarkus in Emacs. Including generating projects, easily adding (and searching extensions) etc. Inspired by the official IntelliJ and VScode extensions.

License

Notifications You must be signed in to change notification settings

themkat/emacs-quarkus

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Emacs Quarkus tooling

Gives basic tooling for Quarkus work in Emacs, inspired by the IntelliJ IDEA and VSCode extensions.

Warning: Very experimental. Details might change as I commit stuff, or things might break. Ugly code while evaling code left and right inside Emacs.

Features

Generate project

./screenshots/create.gif

Add extensions

./screenshots/add.gif (auto-revert-mode is activated in the pom.xml buffer above)

Configures the MicroProfile Language Server for application property file completion

NOTE: For this to work, you NEED to run =quarkus-setup-tooling= for the tools to be downloaded. Working on possible alternatives atm…

#+ATTR width: 800 ./screenshots/properties.png (the documentation popup on the side is from company box)

To get this working, you need to do the following:

  1. Start jdtls using lsp-java inside a Java source file.
  2. Run quarkus-fill-property-context when jdtls has started.
  3. Navigate to a .properties file and activate quarkus-property-mode.

The plan is to make it easier. Have to work around how lsp-mode works it seems…

Usage

Installation

This package is not yet on Melpa, so you need to install it from source. Start by cloning this repo somewhere, then add it to your load path and load it:

(add-to-list 'load-path "/path/to/cloned/repo")
(require 'quarkus)

Or just use straight use-package like a sane human being would:

(use-package quarkus
  :straight (quarkus :type git :host github :repo "themkat/emacs-quarkus"))

Dependencies

This package depends on other packages, which are pulled in if installed by straight.

  • helm
  • ht
  • s.el
  • dash
  • request

Interactive functions

quarkus-generate-project

Start it inside the directory you want to create the project in!

quarkus-add-extension

Can be run anywhere inside a Quarkus project.

quarkus-setup-tooling

NOTE: Only necessary if you need completion and tooling in property files. Downloads all tooling and puts them into the correct place.

quarkus-fill-property-context

NOTE: Currently a little hacky, but at least it works… Run from a Java file inside your project to get the property context filled in. You can then

Minor modes

quarkus-property-mode

Used in property files so that the MicroProfile Language Server is activated.

About

Helpers for working with Quarkus in Emacs. Including generating projects, easily adding (and searching extensions) etc. Inspired by the official IntelliJ and VScode extensions.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published