julia-emacs

Julia support in Emacs.

OTHER License

Stars
286
Committers
46

julia-mode

Emacs major mode for the Julia programming language.

Installation

Installing from MELPA

Unless you want to develop this package, it is recommended that you use it from MELPA:

  1. Enable the MELPA repository.

  2. Enable the package by adding these lines to to your Emacs init file, e.g., ~/.emacs:

(package-install 'julia-mode)
(require 'julia-mode)

Alternatively, if you are using use-package, which has been part of Emacs since version 29.1, you can use

(use-package julia-mode
  :ensure t)

A note on versioning

The code has been on a rolling release model before version 1.0: not all code changes were accompanied by a version increment. From version 1.0, we follow semantic versioning.

Installing from Source

To get the latest version of julia-mode, clone this repository and then use:

(add-to-list 'load-path "<path-to-julia-mode>")
(require 'julia-mode)

Contributing

Contributions are welcome, in the form of pull requests.

We do our best to provide feedback within 2 weeks. Feel free bump the PR thread with a comment after that.

Submitting Pull Requests

  • Do add unit tests whenever possible. Consider breaking functions into an interface and a backend function for convenient testing.

  • Do add a short summary in the Unreleased section of the CHANGELOG.

  • Do use the rx macro (S-expressions) whenever rewriting regular expressions or introducing new ones. This keeps the code much more readable.

Working With Tests

It's easy to add new ERT tests to the julia-mode test suite.

You only need to prepare a new ert-deftest definition in julia-mode-tests.el.

You can run the test suite from the command line with:

emacs -batch -L . -l ert -l julia-mode-tests.el -f  ert-run-tests-batch-and-exit