]> git.lizzy.rs Git - micro.git/commitdiff
AddLog should be "public" accessible
authorboombuler <boombuler@gmail.com>
Tue, 27 Sep 2016 15:52:05 +0000 (17:52 +0200)
committerboombuler <boombuler@gmail.com>
Tue, 27 Sep 2016 15:52:05 +0000 (17:52 +0200)
cmd/micro/messenger.go

index 3a97eb488479b9c42320cf4faef6f4fa5f3e5e68..530ba4a3c75e3062a2bfb4d29fba605d91293c61 100644 (file)
@@ -24,7 +24,7 @@ func TermMessage(msg ...interface{}) {
        }
 
        fmt.Println(msg...)
-       messenger.addLog(fmt.Sprint(msg...))
+       messenger.AddLog(fmt.Sprint(msg...))
        fmt.Print("\nPress enter to continue")
 
        reader := bufio.NewReader(os.Stdin)
@@ -69,9 +69,11 @@ type Messenger struct {
        gutterMessage bool
 }
 
-func (m *Messenger) addLog(msg string) {
+func (m *Messenger) AddLog(msg string) {
        buffer := m.getBuffer()
        buffer.Insert(buffer.End(), msg+"\n")
+       buffer.Cursor.Loc = buffer.End()
+       buffer.Cursor.Relocate()
 }
 
 func (m *Messenger) getBuffer() *Buffer {
@@ -90,7 +92,7 @@ func (m *Messenger) Message(msg ...interface{}) {
        if _, ok := colorscheme["message"]; ok {
                m.style = colorscheme["message"]
        }
-       m.addLog(m.message)
+       m.AddLog(m.message)
        m.hasMessage = true
 }
 
@@ -106,7 +108,7 @@ func (m *Messenger) Error(msg ...interface{}) {
        if _, ok := colorscheme["error-message"]; ok {
                m.style = colorscheme["error-message"]
        }
-       m.addLog(m.message)
+       m.AddLog(m.message)
        m.hasMessage = true
 }
 
@@ -128,16 +130,16 @@ func (m *Messenger) YesNoPrompt(prompt string) (bool, bool) {
                        switch e.Key() {
                        case tcell.KeyRune:
                                if e.Rune() == 'y' {
-                                       m.addLog("\t--> y")
+                                       m.AddLog("\t--> y")
                                        m.hasPrompt = false
                                        return true, false
                                } else if e.Rune() == 'n' {
-                                       m.addLog("\t--> n")
+                                       m.AddLog("\t--> n")
                                        m.hasPrompt = false
                                        return false, false
                                }
                        case tcell.KeyCtrlC, tcell.KeyCtrlQ, tcell.KeyEscape:
-                               m.addLog("\t--> (cancel)")
+                               m.AddLog("\t--> (cancel)")
                                m.hasPrompt = false
                                return false, true
                        }
@@ -164,7 +166,7 @@ func (m *Messenger) LetterPrompt(prompt string, responses ...rune) (rune, bool)
                        case tcell.KeyRune:
                                for _, r := range responses {
                                        if e.Rune() == r {
-                                               m.addLog("\t--> " + string(r))
+                                               m.AddLog("\t--> " + string(r))
                                                m.Clear()
                                                m.Reset()
                                                m.hasPrompt = false
@@ -172,7 +174,7 @@ func (m *Messenger) LetterPrompt(prompt string, responses ...rune) (rune, bool)
                                        }
                                }
                        case tcell.KeyCtrlC, tcell.KeyCtrlQ, tcell.KeyEscape:
-                               m.addLog("\t--> (cancel)")
+                               m.AddLog("\t--> (cancel)")
                                m.Clear()
                                m.Reset()
                                m.hasPrompt = false
@@ -218,11 +220,11 @@ func (m *Messenger) Prompt(prompt, historyType string, completionTypes ...Comple
                        switch e.Key() {
                        case tcell.KeyCtrlQ, tcell.KeyCtrlC, tcell.KeyEscape:
                                // Cancel
-                               m.addLog("\t--> (cancel)")
+                               m.AddLog("\t--> (cancel)")
                                m.hasPrompt = false
                        case tcell.KeyEnter:
                                // User is done entering their response
-                               m.addLog("\t--> " + m.response)
+                               m.AddLog("\t--> " + m.response)
                                m.hasPrompt = false
                                response, canceled = m.response, false
                                m.history[historyType][len(m.history[historyType])-1] = response