jale/examples/editor.nim

29 lines
542 B
Nim
Raw Normal View History

import ../plugin/defaults
import ../editor
import ../strutils
import ../templates
2021-02-18 21:51:44 +01:00
import ../multiline
import terminal
2021-02-18 21:51:44 +01:00
import os
2021-02-18 21:51:44 +01:00
eraseScreen()
setCursorPos(stdout, 0,0)
let e = newLineEditor()
2021-02-18 21:51:44 +01:00
if paramCount() > 0:
let arg = paramStr(1)
if fileExists(arg):
2021-02-18 22:25:13 +01:00
e.content = readFile(arg).fromString()
2021-02-18 22:27:36 +01:00
var save = false
2021-02-18 21:51:44 +01:00
e.bindKey("ctrl+s"):
e.finish()
2021-02-18 22:27:36 +01:00
save = true
e.prompt = ""
2021-02-18 21:51:44 +01:00
e.populateDefaults(enterSubmits = false, shiftForVerticalMove = false)
let result = e.read()
2021-02-18 22:27:36 +01:00
if save and paramCount() > 0:
2021-02-18 21:51:44 +01:00
writeFile(paramStr(1), result)