Skip to content

3.0.0

Compare
Choose a tag to compare
@kandu kandu released this 25 Apr 15:29
· 45 commits to master since this release

3.0.0 (2020-04-25)

Additions

  • LTerm_editor: two editor modes: default and vi

  • LTerm_read_line: class virtual ['a] term:

    • method editor_mode : LTerm_editor.mode signal: the current editor mode
    • method set_editor_mode : LTerm_editor.mode -> unit: set the current editor mode

Add initial support for vi editing mode to LTerm_read_line:

  • motions:
    • h l 0 ^ $
    • j k gg G
    • w W e E b B ge gE
    • f F t T
    • aw iw aW iW
    • include or inner ( ), [ ], { }, < >, ' and "
    • generic quote: aq? iq? where ? could be any character
    • bracket matching: jump back and forth between matched brakcets
  • delete, change, yank with motions
  • paste: p P
  • line joining: J

Many thanks to @nilsbecker for his feature-request on vi edit mode and the helps during the development on this topic!

Breaking

  • `LTerm_read_line
    • class virtual ['a] term: the type signature of method private execis changed frommethod private exec : action list -> 'a Lwt.tto?keys : LTerm_key.t list -> action list -> 'a loop_result Lwt.t`

Since this is a private method and is intended to be used internally, the backward-compatibility will not be affected in most cases.

General

  • Load inputrc file from ~/.config/.lambda-term-inputrc as per XDG conventions (@copy, #86)