* feat: separate layout items with spaces
* docs: update layout example
* fix: add space after stash
* feat: add trailing space to stats component
* feat: add trailing space to clean section
* test: trailing spaces on all components
* Remove bytes.Buffer, status functions return strings
* Take care of elements spacing in format()
* Fix spacing in default config
---------
Co-authored-by: Aurélien Rainone <aurelien.rainone@gmail.com>
* Remove _ prefix to variables
* Update README.md: align with default config
* -printcfg shows commented configuration
* Remove unused formater.go
* Move config-related in config.go
* tmux: remove DefaultCfg variable
The default configuration is now defined in an embedded file
with comments.
Fixes#82
* Add Ellipsis option, defaults to …
* Modify Test_truncate
* Change default layout (remove .. between branch and remote)
* README.md format
* README.md: document ellipsis
Fixes#60
* Update golden file and fix tests
Since the default config has changed the golden file must be
updated.
* tmux: cosmetics
* bump gitstatus to v0.6.0
* testscript: set TestWork to true
* Add Insertions/Deletions to Symbols and Styles
* Show insertions/deletions if 'stats' is in the layout
* Add Test_stats
* Update README.md
* cd: use gorelease --clean instead of --rm-dist
* cd: check brew tap has been installed after a release
* README.md: update ci/cd workflow badges
* README.md: add brew tap to install section
Closes#52
* .github: rename workflows to ci, cd and release
* .goreleaser: fix deprecation notices
* Goreleaser publishes tap to homebrew-arl
* .github: bump github-actions and go version to 1.20.x
* Update README.md
Updated the README with clearer information:
- an information about the refresh time -- I almost created a bug, because I'm a beginner on tmux and I didn't know this variable; so I think that an informative line about this can be useful
- a modification of an example that I didn't find necessarily clear because it didn't use the same context as the example given in the "Getting started" section
* Update README.md
Improve the line about status-interval
* Update README for installing with Go
On Go 1.17, `go get -u` as a method os installation locally was deprecated, and on 1.18 it completely fails to run. Switching to `go install github.com/arl/gitmux@latest` works as expected on 1.16+
Since now the clean flag is indepdendent from the number of
stashed entries, we need to show the stash count, even if the
working tree is clean.
Fix#66
* Bump gopkg.in/yaml v2 -> v3
* Add branch_trim_direction (default to right)
* tmux: remove Formater.remote()
Formater.remote() is just remoteBranch() followed by divergence()
* tmux: implement and test branch_trim_direction (left|right)
* tmux: s/BranchTrimDirection/BranchTrim
* README.md: update and add branch_trim
* tmux: remove dependency to testify
* tmux: use io.Discard in test
Fixes#55
* .travis: run tests with go1.17.x
* go.{mod,sum}: bump dependencies
* .gitignore: add dist/
* ci: run test on github-action
* ci: goreleaser runs on github action
* format/tmux: fix usage of tmux #fg=default string
Tmux format string `#fg=default` clears the foreground and is used
before applying styles to the elements of the gitmux format string.
Now, we only call `clear()` before an element that is actually being
printed.
Also we call `clear()` before printing non-keywords strings appearing in
`Config.Layout`.
Fix tests
* Update non-regression golden file
* format/tmux: add failing test for issue 32
As exposed in the added failing test, reproducing the issue 32, the
branch style only affect the branch symbol whereas it should affect both
affect the symbol and the branch name.
* format/tmux: branch style now affects both branch symbol+name
Fixes#32
* Fix tests and adapt for new behavior
`-timeout DUR` simply exist `gitmux` is it still running after DUR
amount of time.
DUR is parsed as a time.Duration with the special exception that 0
means no timeout.
Defaults to 0 = _no timeout_
Closes#35
* Cosmetics
* Add TestOutputNonRegression
This test ensures that new features do not change gitmux output
when used with a default configuration.
It loads a golden file ('testdata/default.output.golden') and
compares it with the actual output. -update updates the golden
file.
* format/tmux: breakdown `remote` into `remote-flags`+`divergence`
Currently the `remote` flags gets replaced by both the name of the
remote (e.g `origin`) and the divergence flags indicating whether the
local and the remote branch diverges and how much (e.g `↓·2↑·3`).
In order to allow user to skip the remote branch and to keep the
divergence flags, or the other way around, we add the `remote-branch` and
the `divergence` layout elements.
Also, to not break user configurations, we keep the 'remote' layout
element, and make it so that it's equivalent to setting `remote-flags`
and `divergence` consecutively.
Fixes#23
* format/tmux: replace `remote` with `branch+divergence` in default config
* Update README.md: improve the customizing section
Improve the Customizing section of the README