This repository has been archived on 2020-12-27. You can view files and clone it, but cannot push or open issues or pull requests.
Go to file
Phuntsok Drak-pa 9b4898f146 Added reference to other examples 2019-09-16 15:51:14 +02:00
img Added example image for feature tree 2019-09-16 15:45:40 +02:00
LICENSE Add LICENSE 2019-07-21 15:28:37 +00:00
README.org Added reference to other examples 2019-09-16 15:51:14 +02:00
funcs.el added function to create graphviz trees 2019-09-16 15:30:02 +02:00
keybindings.el fixes 2019-09-16 15:46:41 +02:00
layers.el comment change 2019-08-13 18:33:43 +02:00

README.org

Conlanging layer

https://cdn.rawgit.com/syl20bnr/spacemacs/442d025779da2f62fc86c2082703697714db6514/assets/spacemacs-badge.svg

/phundrak/conlang-layer/media/commit/9b4898f146d5c6714c3b51d09b927f992340d742/img/conlang_flag.png

Description

This layer adds support for conlanging.

Features

  • Generate graphviz trees based on Elisp trees
  • Replace some text by its runic equivalent (supports the Mattér and Eittlandic languages)
  • Adds phonetics to Ňyqy text
  • Provides custom shortcuts

Graphviz trees

The conlanging layer provides one public function called conlanging/tree-to-dot. It accepts as its sole argument a list of strings or lists, such as the following:

  (setq-local vowels
    '("[vowel]"
      ("[back]"
       ("[tense]"
        ("[high]" ("ü"))
        ("{high}" ("ö")))
       ("{tense}"
        ("[high]" ("u"))
        ("{high}" ("o"))))
      ("{back}"
       ("[tense]"
        ("[high]" ("y"))
        ("{high}" ("ë")))
       ("{tense}"
        ("[high]" ("i"))
        ("{high}" ("e"))))))

When passed in the above mentioned function, and the result itself is passed through graphviz, we get the following result:

/phundrak/conlang-layer/media/commit/9b4898f146d5c6714c3b51d09b927f992340d742/img/vowels-example.png

This example tree is only a binary tree, but a single node can have up to ten children. See some examples in the Ňyqy source file.

Install

To install this layer, either clone this project in your ~/.emacs.d/private/ folder, or symlink it from there to your actual clone location. Then, add conlanging in your dotspacemacs file in the dotspacemacs-configuration-layers list:

  (setq-default dotspacemacs-configuration-layers '(conlanging))

You can then reload your configuration file with SPC f e R, or restart Emacs with SPC q r or SPC q R.

Key bindings

Key Binding Description
SPC l e l (org-mode only) Translate Einnlandish transliteration into native latin
SPC l e r (org-mode only) Translate Einnlandish transliteration into runes
SPC l m L (org-mode only) Translate Mattér transliteration into LaTeX runes
SPC l m l (org-mode only) Translate Mattér transliteration into native latin
SPC l m r (org-mode only) Translate Mattér transliteration into runes
SPC o l e o Open Eittlandic file
SPC o l h o Open Hjelp file
SPC o l m o Open Mattér file
SPC o l n o Open Ňyqy file
SPC o l o Open the conlanging directory
SPC o l t o Open Tãso file