Skip to content

LkbMode

FrancisBond edited this page Sep 3, 2016 · 9 revisions

There are some emacs lisp extensions to make life easier when you are running the LKB from within emacs in the file lkb.el.

Install with:

;;; load it
(load-file "/path/to/tdl-mode.el")
;;; use it for .tdl and .mtr files
(add-to-list 'auto-mode-alist '("\\.tdl\\'" . tdl-mode))
(add-to-list 'auto-mode-alist '("\\.mtf\\'" . tdl-mode))
;;; make a menu of types in this file
(add-hook 'tdl-mode-hook
          (function (lambda ()
                      (imenu-add-to-menubar "Types"))))

It sets up a menu, which is fairly self explanatory, and some keybindings to save precious key strokes.

Key Bindings

The "⁁" shows where the cursor is placed at the end of the command.

  • C-c p: parse using the main grammar (lkb::do-parse-tty "⁁")
  • C-c r: parse using a client grammar

    • (mt::parse-interactively "⁁")

    C-c u: start a client grammar

    • (tsdb::tsdb :cpu :⁁ :file t)

    C-c g: load a grammar

    • (lkb::read-script-file-aux "~/⁁/lkb/script")

    C-c G: reload a grammar

    C-c i: index for generation

    C-c I: reload and index grammar

    C-c l: show a word (unexpanded)

    • (lkb::show-word-aux-tty "⁁" nil)

    C-c L: show a word (expanded)

    • (lkb::show-word-aux-tty "⁁" t)

You can also use commands from Inferior Common Lisp, such as the extremely useful:

  • C-c C-p:find the previous command

    • fi:pop-input

    C-c C-n: find the next command in the ring

    • fi:push-input
Clone this wiki locally