Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/pierre-rouleau/tup-mode

Support for Tup software build tool.
https://github.com/pierre-rouleau/tup-mode

Last synced: 25 days ago
JSON representation

Support for Tup software build tool.

Awesome Lists containing this project

README

        

Tup Mode for GNU Emacs
======================

This is a major mode for Emacs made for editing ‘tupfiles’, files used
by the [Tup build system](http://gittup.org/tup/).

Features
--------

Tup mode provides syntax highlighting for all of the elements of
tupfiles, such as rule definitions, user-defined variables, macros,
flags, bin variables, and so on. The mode also allows you to execute
Tup commands. It binds the following key sequences:

1. `C-c C-i`: `tup init`
2. `C-c C-u`: `tup upd`
3. `C-c C-m`: `tup monitor`
4. `C-c C-s`: `tup stop`
5. `C-c C-r`: `tup refactor`
6. `C-c C-o`: `tup options`
7. `C-c C-t`: `tup todo`

If you use a prefix argument with `C-c C-u`, e.g. if you press `C-u
C-c C-u`, then Tup mode will prompt you for the name of a
[variant](http://gittup.org/tup/manual.html#lbAJ). It will then run
Tup to build that specific variant. And in either case the command
will show you a `*Tup*` buffer containing the output from Tup so that
you can see if the build succeeded or not.

Original Author and Contributors
--------------------------------

This depot was imported from [ejmr/tup-mode](https://github.com/ejmr/tup-mode)
originally written by [Eric James Michael Ritz](https://github.com/ejmr).

Contributors:

1. [Steve Purcell](https://github.com/purcell)
2. [Jonas Bernoulli](https://github.com/tarsius)
3. [nshepperd](https://github.com/nshepperd)

License
-------

[GNU General Public License Version 3](http://www.gnu.org/copyleft/gpl.html)

Versioning
----------

Tup Mode follows [Semantic Versioning](http://semver.org/). See the
comments in the `Code` section of `tup-mode.el` for a description of
what belongs to the public API and what does not.