A groovy major mode, grails minor mode, and a groovy inferior mode.
Emacs Lisp
Clone or download
Wilfred Merge pull request #127 from FormerPhysicist/fix-string-indent
Fix indentation when a string contains a keyword
Latest commit c32f82d Aug 10, 2018


Emacs Modes for Groovy and Grails

Travis-CI Coverage Status Licence MELPA MELPA

This repository contains Emacs modes for Groovy and Grails. The major features are syntax highlighting with groovy-mode, REPL integration with run-groovy and Grails project navigation with grails-mode.


Emacs 24+ is required.

These packages are available on MELPA. To use rolling releases:

(require 'package)
(add-to-list 'package-archives
             '("melpa" . "https://melpa.org/packages/") t)

Alternatively, if you just want stable releases:

(require 'package)
(add-to-list 'package-archives
             '("melpa-stable" . "https://stable.melpa.org/packages/") t)

A Bit of History

This mode was originally developed as a derived mode of java-mode (a derived mode of cc-mode) inspired by Dylan R.E. Moonfire's C# mode. There are however what seem to be insurmountable obstacles to making groovy-mode based on CC Mode work as people want. Wilfred Hughes created a new groovy-mode (standalone) independent of CC Mode.

The CC Mode version of groovy-mode used to be master, and is the basis for the 1.0.1 version on MELPA. The work on standlone groovy-mode happened on a feature branch. As of 2017-05-08T08:00+01:00, the CC Mode version has been switched to the 1.X branch and the standalone version is now master and will be released as 2.0.0 as soon as viable.

cc-mode derived mode

The CC Mode version of groovy-mode is configured by overriding cc-mode settings, such as c-basic-offset.

Standalone mode (the default)

The new, and now default, standalone mode provides more robust highlighting and indentation, plus niceties like string interpolation highlighting, compared to the CC Mode based version..


You can configure the standalone groovy-mode with M-x customize RET groovy-mode RET.