diff options
Diffstat (limited to 'lib/statusline/texter.go')
-rw-r--r-- | lib/statusline/texter.go | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/lib/statusline/texter.go b/lib/statusline/texter.go new file mode 100644 index 00000000..d06b1982 --- /dev/null +++ b/lib/statusline/texter.go @@ -0,0 +1,73 @@ +package statusline + +import "strings" + +type Texter interface { + Connected() string + Disconnected() string + Passthrough() string + Sorting() string + Threading() string + FormatFilter(string) string + FormatSearch(string) string +} + +type text struct{} + +func (t text) Connected() string { + return "Connected" +} + +func (t text) Disconnected() string { + return "Disconnected" +} + +func (t text) Passthrough() string { + return "passthrough" +} + +func (t text) Sorting() string { + return "sorting" +} + +func (t text) Threading() string { + return "threading" +} + +func (t text) FormatFilter(s string) string { + return s +} + +func (t text) FormatSearch(s string) string { + return s +} + +type icon struct{} + +func (i icon) Connected() string { + return "โ" +} + +func (i icon) Disconnected() string { + return "โ" +} + +func (i icon) Passthrough() string { + return "โ" +} + +func (i icon) Sorting() string { + return "โ" +} + +func (i icon) Threading() string { + return "๐งต" +} + +func (i icon) FormatFilter(s string) string { + return strings.ReplaceAll(s, "filter", "๐ฆ") +} + +func (i icon) FormatSearch(s string) string { + return strings.ReplaceAll(s, "search", "๐") +} |