From 2d7cafa3bfc70eef80f5396cb1e9ec24b2c12c14 Mon Sep 17 00:00:00 2001 From: Sean Smith Date: Sat, 27 Apr 2019 15:24:08 -0400 Subject: [PATCH] Rip out two more instances of global config One setting TERM environment variable Another in multisource widget --- main.go | 9 ++++----- modules/git/widget.go | 2 +- modules/mercurial/widget.go | 2 +- modules/textfile/widget.go | 2 +- modules/twitter/widget.go | 2 +- wtf/multisource_widget.go | 23 +++++++++-------------- 6 files changed, 17 insertions(+), 23 deletions(-) diff --git a/main.go b/main.go index ce383026..82d2a16f 100644 --- a/main.go +++ b/main.go @@ -64,10 +64,6 @@ func refreshAllWidgets(widgets []wtf.Wtfable) { } func setTerm() { - err := os.Setenv("TERM", cfg.Config.UString("wtf.term", os.Getenv("TERM"))) - if err != nil { - return - } } func watchForConfigChanges(app *tview.Application, configFilePath string, grid *tview.Grid, pages *tview.Pages) { @@ -131,7 +127,10 @@ func main() { defer profile.Start(profile.MemProfile).Stop() } - setTerm() + err := os.Setenv("TERM", config.UString("wtf.term", os.Getenv("TERM"))) + if err != nil { + return + } app := tview.NewApplication() pages := tview.NewPages() diff --git a/modules/git/widget.go b/modules/git/widget.go index 9e15b7f4..0b6ad89d 100644 --- a/modules/git/widget.go +++ b/modules/git/widget.go @@ -42,7 +42,7 @@ type Widget struct { func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { widget := Widget{ HelpfulWidget: wtf.NewHelpfulWidget(app, pages, HelpText), - MultiSourceWidget: wtf.NewMultiSourceWidget(settings.common.Name, "repository", "repositories"), + MultiSourceWidget: wtf.NewMultiSourceWidget(settings.common, "repository", "repositories"), TextWidget: wtf.NewTextWidget(app, settings.common, true), app: app, diff --git a/modules/mercurial/widget.go b/modules/mercurial/widget.go index f01a19e5..656047e8 100644 --- a/modules/mercurial/widget.go +++ b/modules/mercurial/widget.go @@ -37,7 +37,7 @@ type Widget struct { func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { widget := Widget{ HelpfulWidget: wtf.NewHelpfulWidget(app, pages, HelpText), - MultiSourceWidget: wtf.NewMultiSourceWidget(settings.common.Name, "repository", "repositories"), + MultiSourceWidget: wtf.NewMultiSourceWidget(settings.common, "repository", "repositories"), TextWidget: wtf.NewTextWidget(app, settings.common, true), app: app, diff --git a/modules/textfile/widget.go b/modules/textfile/widget.go index 318d0e3f..17bf277f 100644 --- a/modules/textfile/widget.go +++ b/modules/textfile/widget.go @@ -42,7 +42,7 @@ type Widget struct { func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { widget := Widget{ HelpfulWidget: wtf.NewHelpfulWidget(app, pages, HelpText), - MultiSourceWidget: wtf.NewMultiSourceWidget(settings.common.Name, "filePath", "filePaths"), + MultiSourceWidget: wtf.NewMultiSourceWidget(settings.common, "filePath", "filePaths"), TextWidget: wtf.NewTextWidget(app, settings.common, true), app: app, diff --git a/modules/twitter/widget.go b/modules/twitter/widget.go index ddae61e6..2682e151 100644 --- a/modules/twitter/widget.go +++ b/modules/twitter/widget.go @@ -38,7 +38,7 @@ type Widget struct { func NewWidget(app *tview.Application, pages *tview.Pages, settings *Settings) *Widget { widget := Widget{ HelpfulWidget: wtf.NewHelpfulWidget(app, pages, HelpText), - MultiSourceWidget: wtf.NewMultiSourceWidget(settings.common.Name, "screenName", "screenNames"), + MultiSourceWidget: wtf.NewMultiSourceWidget(settings.common, "screenName", "screenNames"), TextWidget: wtf.NewTextWidget(app, settings.common, true), app: app, diff --git a/wtf/multisource_widget.go b/wtf/multisource_widget.go index 32900657..3123e6cf 100644 --- a/wtf/multisource_widget.go +++ b/wtf/multisource_widget.go @@ -1,26 +1,24 @@ package wtf import ( - "fmt" - "github.com/wtfutil/wtf/cfg" ) type MultiSourceWidget struct { - module string - singular string - plural string + moduleConfig *cfg.Common + singular string + plural string DisplayFunction func() Idx int Sources []string } -func NewMultiSourceWidget(module, singular, plural string) MultiSourceWidget { +func NewMultiSourceWidget(moduleConfig *cfg.Common, singular, plural string) MultiSourceWidget { return MultiSourceWidget{ - module: module, - singular: singular, - plural: plural, + moduleConfig: moduleConfig, + singular: singular, + plural: plural, } } @@ -37,11 +35,8 @@ func (widget *MultiSourceWidget) CurrentSource() string { func (widget *MultiSourceWidget) LoadSources() { var empty []interface{} - s := fmt.Sprintf("wtf.mods.%s.%s", widget.module, widget.singular) - p := fmt.Sprintf("wtf.mods.%s.%s", widget.module, widget.plural) - - single := cfg.Config.UString(s, "") - multiple := cfg.Config.UList(p, empty) + single := widget.moduleConfig.Config.UString(widget.singular, "") + multiple := widget.moduleConfig.Config.UList(widget.plural, empty) asStrs := ToStrs(multiple)