default to nano and warn if $EDITOR not set
parent
491adc5290
commit
251c250a8d
|
@ -0,0 +1 @@
|
||||||
|
patch type="fixed" "default to nano and warn if no $EDITOR set"
|
|
@ -1,6 +1,8 @@
|
||||||
package app
|
package app
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"bufio"
|
||||||
|
"fmt"
|
||||||
"os"
|
"os"
|
||||||
"os/exec"
|
"os/exec"
|
||||||
|
|
||||||
|
@ -61,6 +63,17 @@ func (graffiti *Graffiti) Event(state *ui.State, event vaxis.Event) (processed b
|
||||||
}
|
}
|
||||||
|
|
||||||
func editGraffiti(state *ui.State) {
|
func editGraffiti(state *ui.State) {
|
||||||
|
// if $EDITOR isn't set, warn about it, and use nano
|
||||||
|
editor := os.ExpandEnv(os.Getenv("EDITOR"))
|
||||||
|
if editor == "" {
|
||||||
|
editor = "nano"
|
||||||
|
state.Suspend()
|
||||||
|
fmt.Print("$EDITOR not found, using nano. press ↵ to continue")
|
||||||
|
input := bufio.NewScanner(os.Stdin)
|
||||||
|
input.Scan()
|
||||||
|
state.Resume()
|
||||||
|
}
|
||||||
|
|
||||||
state.HideCursor()
|
state.HideCursor()
|
||||||
vt := term.New()
|
vt := term.New()
|
||||||
vt.TERM = os.Getenv("TERM")
|
vt.TERM = os.Getenv("TERM")
|
||||||
|
|
15
app/menu.go
15
app/menu.go
|
@ -1,6 +1,8 @@
|
||||||
package app
|
package app
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"bufio"
|
||||||
|
"fmt"
|
||||||
"os"
|
"os"
|
||||||
"os/exec"
|
"os/exec"
|
||||||
"path"
|
"path"
|
||||||
|
@ -129,13 +131,24 @@ func showManpage(state *ui.State) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func newFeels(state *ui.State) {
|
func newFeels(state *ui.State) {
|
||||||
|
// if $EDITOR isn't set, warn about it, and use nano
|
||||||
|
editor := os.ExpandEnv(os.Getenv("EDITOR"))
|
||||||
|
if editor == "" {
|
||||||
|
editor = "nano"
|
||||||
|
state.Suspend()
|
||||||
|
fmt.Print("$EDITOR not found, using nano. press ↵ to continue")
|
||||||
|
input := bufio.NewScanner(os.Stdin)
|
||||||
|
input.Scan()
|
||||||
|
state.Resume()
|
||||||
|
}
|
||||||
|
|
||||||
state.HideCursor()
|
state.HideCursor()
|
||||||
vt := term.New()
|
vt := term.New()
|
||||||
vt.TERM = os.Getenv("TERM")
|
vt.TERM = os.Getenv("TERM")
|
||||||
vt.Attach(state.PostEvent())
|
vt.Attach(state.PostEvent())
|
||||||
vt.Focus()
|
vt.Focus()
|
||||||
now := time.Now()
|
now := time.Now()
|
||||||
err := vt.Start(exec.Command(os.ExpandEnv(os.Getenv("EDITOR")), path.Join(ttbp.PathUserEntries, now.Format("20060102")+".txt")))
|
err := vt.Start(exec.Command(editor, path.Join(ttbp.PathUserEntries, now.Format("20060102")+".txt")))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
panic(err)
|
panic(err)
|
||||||
}
|
}
|
||||||
|
|
8
ui/ui.go
8
ui/ui.go
|
@ -83,3 +83,11 @@ func (state *State) HideCursor() {
|
||||||
func (state *State) Window() vaxis.Window {
|
func (state *State) Window() vaxis.Window {
|
||||||
return state.vx.Window()
|
return state.vx.Window()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (state *State) Suspend() {
|
||||||
|
state.vx.Suspend()
|
||||||
|
}
|
||||||
|
|
||||||
|
func (state *State) Resume() {
|
||||||
|
state.vx.Resume()
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in New Issue