ink-mode
is an Emacs major mode for Ink, an open-source scripting
language for writing interactive fiction developed by Inkle Studios.
- syntax highlighting
- automatic indentation
- autocomplete divert links with
completion-at-point
(M-<TAB>
orC-M-i
) - jump to link inside an Ink file by clicking it or
C-c C-o
(links between Ink files are not supported) - command to playtest the game from Emacs:
C-c C-c
- start the game at a given knot or stitch with
C-c C-p
- start the game at a given knot or stitch with
- outline: fold knots and stitches as in org-mode, with
<TAB>
andS-<TAB>
- error reporting using flymake
- a collection of YASnippet snippets for Ink
- includes the Writing with ink language manual, which is displayed
with
C-c C-h
Add ink-mode.el
to your load-path then add (require 'ink-mode)
to
your init.el
. If you’re a use-package user, add this instead of
requiring ink-mode:
(use-package ink-mode
:mode "\\.ink\\'")
;; Path to the Inklecate binary, used to playtest
;; and to check for errors
(setq ink-inklecate-path "/usr/bin/inklecate")
;; Enable flymake (error reporting)
(add-hook 'ink-mode-hook 'flymake-mode)
;; Set indentation level
(add-hook 'ink-mode-hook (lambda () (setq tab-width 2)))
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.