mirror of
https://github.com/arl/gitmux.git
synced 2026-09-10 07:26:18 -04:00
Set 'Clear' to #[none] (#108)
* Cosmetics * Default 'Clear' style is now #[none] None actually resets all attributes. * Always append the Clear attribute to gitmux status string Fix #107
This commit is contained in:
parent
076c75ffd4
commit
b821624bad
|
|
@ -32,7 +32,7 @@ tmux:
|
||||||
# https://man7.org/linux/man-pages/man1/tmux.1.html#STYLES.
|
# https://man7.org/linux/man-pages/man1/tmux.1.html#STYLES.
|
||||||
styles:
|
styles:
|
||||||
# Clear previous style.
|
# Clear previous style.
|
||||||
clear: "#[fg=default]"
|
clear: "#[none]"
|
||||||
# Special tree state strings such as [rebase], [merge], etc.
|
# Special tree state strings such as [rebase], [merge], etc.
|
||||||
state: "#[fg=red,bold]"
|
state: "#[fg=red,bold]"
|
||||||
# Local branch name
|
# Local branch name
|
||||||
|
|
|
||||||
|
|
@ -4,8 +4,9 @@ import (
|
||||||
_ "embed"
|
_ "embed"
|
||||||
"fmt"
|
"fmt"
|
||||||
|
|
||||||
"github.com/arl/gitmux/tmux"
|
|
||||||
"gopkg.in/yaml.v3"
|
"gopkg.in/yaml.v3"
|
||||||
|
|
||||||
|
"github.com/arl/gitmux/tmux"
|
||||||
)
|
)
|
||||||
|
|
||||||
// Config configures output formatting.
|
// Config configures output formatting.
|
||||||
|
|
|
||||||
2
testdata/default.output.txt
vendored
2
testdata/default.output.txt
vendored
|
|
@ -51,4 +51,4 @@ with some different content
|
||||||
|
|
||||||
-- empty_file --
|
-- empty_file --
|
||||||
-- output.golden --
|
-- output.golden --
|
||||||
#[fg=default]#[fg=default]#[fg=white,bold]⎇ #[fg=default]#[fg=white,bold]main#[fg=default] - #[fg=default]#[fg=green,bold]● 1 #[fg=red,bold]✚ 1 #[fg=cyan,bold]⚑ 1 #[fg=magenta,bold]… 2#[fg=default,bg=default]
|
#[none]#[none]#[fg=white,bold]⎇ #[none]#[fg=white,bold]main#[none] - #[none]#[fg=green,bold]● 1 #[fg=red,bold]✚ 1 #[fg=cyan,bold]⚑ 1 #[fg=magenta,bold]… 2#[fg=default,bg=default]#[none]
|
||||||
|
|
|
||||||
|
|
@ -85,11 +85,11 @@ func (d *direction) UnmarshalYAML(value *yaml.Node) error {
|
||||||
}
|
}
|
||||||
|
|
||||||
type options struct {
|
type options struct {
|
||||||
BranchMaxLen int `yaml:"branch_max_len"`
|
BranchMaxLen int `yaml:"branch_max_len"`
|
||||||
BranchTrim direction `yaml:"branch_trim"`
|
BranchTrim direction `yaml:"branch_trim"`
|
||||||
Ellipsis string `yaml:"ellipsis"`
|
Ellipsis string `yaml:"ellipsis"`
|
||||||
HideClean bool `yaml:"hide_clean"`
|
HideClean bool `yaml:"hide_clean"`
|
||||||
SwapDivergence bool `yaml:"swap_divergence"`
|
SwapDivergence bool `yaml:"swap_divergence"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// A Formater formats git status to a tmux style string.
|
// A Formater formats git status to a tmux style string.
|
||||||
|
|
@ -135,6 +135,8 @@ func truncate(s, ellipsis string, max int, dir direction) string {
|
||||||
|
|
||||||
// Format writes st as json into w.
|
// Format writes st as json into w.
|
||||||
func (f *Formater) Format(w io.Writer, st *gitstatus.Status) error {
|
func (f *Formater) Format(w io.Writer, st *gitstatus.Status) error {
|
||||||
|
defer fmt.Fprintf(w, "%s", f.Styles.Clear)
|
||||||
|
|
||||||
f.st = st
|
f.st = st
|
||||||
|
|
||||||
// Overall working tree state
|
// Overall working tree state
|
||||||
|
|
@ -241,11 +243,11 @@ func (f *Formater) divergence() string {
|
||||||
return ""
|
return ""
|
||||||
}
|
}
|
||||||
|
|
||||||
behind := ""
|
behind := ""
|
||||||
ahead := ""
|
ahead := ""
|
||||||
s := f.Styles.Clear + f.Styles.Divergence
|
s := f.Styles.Clear + f.Styles.Divergence
|
||||||
if f.st.BehindCount != 0 {
|
if f.st.BehindCount != 0 {
|
||||||
behind = fmt.Sprintf("%s%d", f.Symbols.Behind, f.st.BehindCount)
|
behind = fmt.Sprintf("%s%d", f.Symbols.Behind, f.st.BehindCount)
|
||||||
}
|
}
|
||||||
|
|
||||||
if f.st.AheadCount != 0 {
|
if f.st.AheadCount != 0 {
|
||||||
|
|
@ -253,11 +255,11 @@ func (f *Formater) divergence() string {
|
||||||
}
|
}
|
||||||
|
|
||||||
if !f.Options.SwapDivergence {
|
if !f.Options.SwapDivergence {
|
||||||
// Behind first, ahead second
|
// Behind first, ahead second
|
||||||
s += behind + ahead
|
s += behind + ahead
|
||||||
} else {
|
} else {
|
||||||
// Ahead first, behind second
|
// Ahead first, behind second
|
||||||
s += ahead + behind
|
s += ahead + behind
|
||||||
}
|
}
|
||||||
|
|
||||||
return s
|
return s
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue