Add Go statusline implementation

Replace shell-based statusline with native Go for ~4x speedup.
Parses JSON natively, detects git status, checks gitea process,
and formats colored output with proper terminal width handling.
This commit is contained in:
2025-12-18 04:59:15 +01:00
parent ffb73d6544
commit 135bbf68f1
4 changed files with 251 additions and 0 deletions

45
.gitignore vendored Normal file
View File

@ -0,0 +1,45 @@
/statusline
/bin
# Created by https://gitignore.kjanat.com/api/go,linux
# Edit at https://gitignore.kjanat.com?templates=go,linux
### Go ###
# If you prefer the allow list template instead of the deny list, see community template:
# https://github.com/github/gitignore/blob/main/community/Golang/Go.AllowList.gitignore
#
# Binaries for programs and plugins
*.exe
*.exe~
*.dll
*.so
*.dylib
# Test binary, built with `go test -c`
*.test
# Output of the go coverage tool, specifically when used with LiteIDE
*.out
# Dependency directories (remove the comment below to include it)
# vendor/
# Go workspace file
go.work
### Linux ###
*~
# temporary files which can be created if a process still has a handle open of a deleted file
.fuse_hidden*
# KDE directory preferences
.directory
# Linux trash folder which might appear on any partition or disk
.Trash-*
# .nfs files are created when an open file is removed but is still being accessed
.nfs*
# End of https://gitignore.kjanat.com/api/go,linux