diff options
author | Petter Rodhelind <petter.rodhelind@gmail.com> | 2021-03-03 16:24:03 +0100 |
---|---|---|
committer | Petter Rodhelind <petter.rodhelind@gmail.com> | 2021-03-03 16:24:03 +0100 |
commit | eddb1c60371d2b2e10bd1952d68a6dec00545e39 (patch) | |
tree | 68810f2a87ef4b7da4a892d0cd1796d5e2c57e46 /ui | |
parent | 38d7be1d7ea7cf9025f6facc1404e3e65c56a9cc (diff) | |
download | poe-eddb1c60371d2b2e10bd1952d68a6dec00545e39.tar.gz poe-eddb1c60371d2b2e10bd1952d68a6dec00545e39.tar.bz2 poe-eddb1c60371d2b2e10bd1952d68a6dec00545e39.zip |
Manage initial loading of buffers in UI.
Diffstat (limited to 'ui')
-rw-r--r-- | ui/cli.go | 16 | ||||
-rw-r--r-- | ui/tcell/tcell.go | 5 |
2 files changed, 18 insertions, 3 deletions
@@ -17,6 +17,11 @@ type Cli struct { func (c *Cli) Init(e editor.Editor) error { c.ed = e + + if c.ed.Len() == 0 { + c.ed.NewBuffer() + } + return nil } @@ -33,17 +38,22 @@ outer: switch input[0][0] { // first rune in input case 'q': // quit break outer - case 'f': + case 'f': // list files ids, bs := c.ed.Buffers() fmt.Printf("%v\n%v\n", ids, bs) - case 'b': + case 'e': // edit/load file name + if len(input) <= 1 { + c.ed.NewBuffer() + } + c.ed.LoadBuffers(input[1:]) + case 'b': // select active buffer if len(input) > 1 { id, _ := strconv.ParseInt(input[1], 10, 64) c.ed.Buffer(id) break } c.ed.NewBuffer() - case 'a': + case 'a': // append if len(input) < 2 { break } diff --git a/ui/tcell/tcell.go b/ui/tcell/tcell.go index c905704..bdd3b0e 100644 --- a/ui/tcell/tcell.go +++ b/ui/tcell/tcell.go @@ -33,6 +33,11 @@ type Tcell struct{} func (t *Tcell) Init(e editor.Editor) error { ed = e + + if ed.Len() == 0 { + ed.LoadBuffers([]string{"."}) + } + if err := initScreen(); err != nil { return err } |