{"repo":"jangko/nim-noise","free":true,"listed":false,"github":"https://github.com/jangko/nim-noise","clone":"git clone https://github.com/jangko/nim-noise.git","description":"Nim implementation of linenoise command line editor","language":"Nim","stars":71,"topics":["nim","linenoise","command-line","repl"],"license":"MIT","category":"cli-tools","readme_excerpt":"noise Nim implementation of linenoise command line editor, inspired by replxx and linenoise-ng Features Line editing with emacs keybindings History handling Completion Unicode aware Intuitive ESC key sub menu escaping Incremental history search Support multiline editing out of the box Support multiline prompt with color and unicode characters A bunch of compile time switches to select which features you want to turn on/off Support Windows, Linux and Mac OS Disable all basic features, then you'll get a cross platform key stroke library Planned Features Hints(work in progress) Syntax coloring(work in progress) API Primitive API(available when prompt no basic is defined): proc readChar(): char32 Basic API: proc init(x: typedesc[Noise]): Noise proc getKeyType(self: Noise): KeyType proc getLine(self: var Noise): string proc readLine(self: var Noise): bool proc setPrompt(self: var Noise, text: Styler) proc setPrompt(self: var Noise, text: string) proc getPrompt(self: var Noise): Styler History API: proc historyAdd(self: var Noise, line: string) proc historySetMaxLen(self: var Noise, len: int) iterator histories(self: var Noise): string iterator historyPairs(self: var Noise): (int, string) proc historySave(self: var Noise, fileName: string): bool proc historyLoad(self: var Noise, fileName: string): bool proc historyClear(self: var Noise) Completion API: proc setCompletionHook(self: var Noise, prc: CompletionHook) proc addCompletion(self: var Noise, text: string) PreloadBuffer API: p","default_branch":null,"files":null,"tree":[],"storefront":"/r/jangko","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/jangko/nim-noise/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}