mirror of
https://github.com/hrfee/jfa-go.git
synced 2024-12-22 09:00:10 +00:00
args: fix help not usually showing
another weird side effect of the line cache/logging stuff. The true stderr is now stored in the "stderr" global variable and is used to print the help screen.
This commit is contained in:
parent
e4f03fac4b
commit
456c99d7db
13
args.go
13
args.go
@ -75,18 +75,23 @@ func (app *appContext) loadArgs(firstCall bool) {
|
|||||||
os.Setenv("JFA_DATAPATH", app.dataPath)
|
os.Setenv("JFA_DATAPATH", app.dataPath)
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Adds start/stop/systemd to help message, and
|
/*
|
||||||
|
Adds start/stop/systemd to help message, and
|
||||||
|
|
||||||
also gets rid of usage for shorthand flags, and merge them with the full-length one.
|
also gets rid of usage for shorthand flags, and merge them with the full-length one.
|
||||||
implementation is 🤢, will clean this up eventually.
|
implementation is 🤢, will clean this up eventually.
|
||||||
|
|
||||||
-h SHORTHAND
|
-h SHORTHAND
|
||||||
-help
|
-help
|
||||||
prints this message.
|
prints this message.
|
||||||
|
|
||||||
becomes:
|
becomes:
|
||||||
|
|
||||||
-help, -h
|
-help, -h
|
||||||
prints this message.
|
prints this message.
|
||||||
*/
|
*/
|
||||||
func helpFunc() {
|
func helpFunc() {
|
||||||
fmt.Fprint(os.Stderr, `Usage of jfa-go:
|
fmt.Fprint(stderr, `Usage of jfa-go:
|
||||||
start
|
start
|
||||||
start jfa-go as a daemon and run in the background.
|
start jfa-go as a daemon and run in the background.
|
||||||
stop
|
stop
|
||||||
@ -99,7 +104,7 @@ func helpFunc() {
|
|||||||
// Write defaults into buffer then remove any shorthands
|
// Write defaults into buffer then remove any shorthands
|
||||||
flag.CommandLine.SetOutput(&b)
|
flag.CommandLine.SetOutput(&b)
|
||||||
flag.PrintDefaults()
|
flag.PrintDefaults()
|
||||||
flag.CommandLine.SetOutput(os.Stderr)
|
flag.CommandLine.SetOutput(stderr)
|
||||||
scanner := bufio.NewScanner(&b)
|
scanner := bufio.NewScanner(&b)
|
||||||
out := ""
|
out := ""
|
||||||
line := scanner.Text()
|
line := scanner.Text()
|
||||||
@ -150,5 +155,5 @@ func helpFunc() {
|
|||||||
lastLine = true
|
lastLine = true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
fmt.Fprint(os.Stderr, out)
|
fmt.Fprint(stderr, out)
|
||||||
}
|
}
|
||||||
|
2
log.go
2
log.go
@ -14,6 +14,8 @@ import (
|
|||||||
var logPath string = filepath.Join(temp, "jfa-go.log")
|
var logPath string = filepath.Join(temp, "jfa-go.log")
|
||||||
var lineCache = linecache.NewLineCache(100)
|
var lineCache = linecache.NewLineCache(100)
|
||||||
|
|
||||||
|
var stderr = os.Stderr
|
||||||
|
|
||||||
func logOutput() (closeFunc func(), err error) {
|
func logOutput() (closeFunc func(), err error) {
|
||||||
old := os.Stdout
|
old := os.Stdout
|
||||||
writers := []io.Writer{old, colorStripper{lineCache}}
|
writers := []io.Writer{old, colorStripper{lineCache}}
|
||||||
|
Loading…
Reference in New Issue
Block a user