on master help sign in
move linenoise to its own package
commite3fc5ea76950dc2a8a12fe61e67a702ade5a8d70 authorMason Clayton <masongclayton@gmail.com> dateFri 19 Oct 2018, 17:29 (8 years ago) parent11abce9
5 files changed+12−13
src/linenoise-helper.c → linenoise/linenoise-helper.c+2−3 src/linenoise.c → linenoise/linenoise.c+1−1 src/linenoise.go → linenoise/linenoise.go+5−7 src/linenoise.h → linenoise/linenoise.h src/language.go+4−2
src/linenoise-helper.c → linenoise/linenoise-helper.crenamed+2−3
@@ -4,8 +4,7 @@
44void linenoiseCompletionStub(const char *, linenoiseCompletions *);
55void linenoiseHintsStub(const char *, int *color, int *bold);
66
7−
87void linenoise_setup() {
9− linenoiseSetCompletionCallback(linenoiseCompletionStub);
10− linenoiseSetHintsCallback(linenoiseHintsStub);
8+ linenoiseSetCompletionCallback(linenoiseCompletionStub);
9+ linenoiseSetHintsCallback(linenoiseHintsStub);
1110}
src/linenoise.c → linenoise/linenoise.crenamed+1−1
@@ -1198,4 +1198,4 @@ int linenoiseHistoryLoad(const char *filename) {
11981198 }
11991199 fclose(fp);
12001200 return 0;
1201−}
1201+}
src/linenoise.go → linenoise/linenoise.gorenamed+5−7
@@ -1,24 +1,23 @@
1−package main
1+package linenoise
22
33/*
4−#include <stdlib.h>
54#include <linenoise.h>
5+#include <stdlib.h>
66
7−void linenoise_setup();
7+void linenoise_setup();
88
99
1010*/
1111import "C"
1212
1313import (
14− "unsafe"
1514 "fmt"
15+ "unsafe"
1616)
1717
1818type Completer func(line string) []string
1919type Hinter func(line string) string
2020
21−
2221var completer Completer
2322var hinter Hinter
2423
@@ -52,7 +51,7 @@ func linenoiseHintsStub(input *C.char, color *C.int, bold *C.int) *C.char {
5251 return C.CString(hinter(C.GoString(input)))
5352}
5453
55−func Linenoise(prompt string) (string,error) {
54+func Linenoise(prompt string) (string, error) {
5655 C.linenoise_setup()
5756 cprompt := C.CString(prompt)
5857 defer C.free(unsafe.Pointer(cprompt))
@@ -78,4 +77,3 @@ func LinenoiseSetCompleter(newCompleter Completer) {
7877func LinenoiseSetHinter(newHinter Hinter) {
7978 hinter = newHinter
8079}
81−
src/linenoise.h → linenoise/linenoise.hrenamed

The content is the same.

src/language.go+4−2
@@ -7,6 +7,8 @@ import (
77 "path/filepath"
88 "plugin"
99 "runtime"
10+
11+ "github.com/replit/prybar/linenoise"
1012)
1113
1214type PluginBase interface {
@@ -150,12 +152,12 @@ func (lang Langauge) REPL() {
150152
151153func (lang Langauge) InternalREPL() {
152154 for {
153− line, err := Linenoise(ps1)
155+ line, err := linenoise.Linenoise(ps1)
154156 if err != nil {
155157 break
156158 }
157159 lang.REPLLikeEval(line)
158− LinenoiseHistoryAdd(line)
160+ linenoise.LinenoiseHistoryAdd(line)
159161 }
160162}
161163