git-glimpse is a command-line tool that is aimed at generating a git prompt like the one from zsh-vcs-prompt.

Overview

Git GoGlimpse

git-glimpse is a command-line tool that is aimed at generating a git prompt like the one from zsh-vcs-prompt.

The particularity of this tool is that it is aimed at maximizing the performances using the native Go interface for git (vs. Python that can slow down a terminal)

Requirements

  • libgit2-dev
  • make
  • golang

Installation

You can build the program by running:

make all

Then install it with

make install

Configure for ZSH

You can add a right prompt in ZSH, by using the following line in your .zshrc:

RPROMPT='$(git-glimpse shell-prompt --zsh-mode)'

The exact path to git-glimpse can be found using which git-glimpse

Using the CLI

You can configure the output of this tool with the following arguments:

Print the shell prompt content and exit

Usage:
git-glimpse shell-prompt [flags]

Flags:
-a, --ahead-sigil string       Sigil to signal the branch is ahead of the remote (default "↑")
-b, --behind-sigil string      Sigil to signal the branch is behind of the remote (default "↓")
-C, --clean-sigil string       Sigil to signal the working tree is clean (default "✔")
-c, --conflicts-sigil string   Sigil to signal there are conflicts to resolve (default "✖")
-h, --help                     help for shell-prompt
-s, --staged-sigil string      Sigil to signal there are staged edits (default "●")
-S, --stashed-sigil string     Sigil to signal there are stashed edits (default "⚑")
-u, --unstaged-sigil string    Sigil to signal there are unstaged edits (default "✚")
-U, --untracked-sigil string   Sigil to signal there are untracked files (default "…")
    --zsh-mode                 Print the output using color tags in the zsh standard instead of AINSI

Uninstalling git-glimpse

TODO

You might also like...
A command line utility and library for generating professional looking invoices in Go.
A command line utility and library for generating professional looking invoices in Go.

ginvoicer A command line utility and library for generating professional looking invoices in Go. This is a very rough draft and there could still be b

An open-source GitLab command line tool bringing GitLab's cool features to your command line
An open-source GitLab command line tool bringing GitLab's cool features to your command line

GLab is an open source GitLab CLI tool bringing GitLab to your terminal next to where you are already working with git and your code without switching

A simple command line tool using which you can skip phone number based SMS verification by using a temporary phone number that acts like a proxy.
A simple command line tool using which you can skip phone number based SMS verification by using a temporary phone number that acts like a proxy.

Fake-SMS A simple command line tool using which you can skip phone number based SMS verification by using a temporary phone number that acts like a pr

Vale is a command-line tool that brings code-like linting to prose
Vale is a command-line tool that brings code-like linting to prose

Vale: Your style, our editor Vale is a command-line tool that brings code-like linting to prose. It's fast, cross-platform (Windows, macOS, and Linux)

A command line http test tool. Maintain the case via git and pure text
A command line http test tool. Maintain the case via git and pure text

httptest A command line http test tool Maintain the api test cases via git and pure text We want to test the APIs via http requests and assert the res

Modern ls command with vscode like File Icon and Git Integrations. Written in Golang
Modern ls command with vscode like File Icon and Git Integrations. Written in Golang

logo-ls modern ls command with beautiful Icons and Git Integrations . Written in Golang Command and Arguments supported are listed in HELP.md Table of

A command line tool for simplified docker volume command built with go

dockervol A command line tool for simplified docker volume command built with go. Features: Remove anonymous volume (beta) Remove volume by matching n

A CLI to replace your git commit command, so your git message can partially follow the Conventional Changelog ecosystem
A CLI to replace your git commit command, so your git message can partially follow the Conventional Changelog ecosystem

COMMIT CLI A CLI to replace your git commit command, so your git message can partially follow the Conventional Changelog ecosystem. And yes, it is bui

Hosty is a command-line utility that allows for fast inspection and editing of /etc/hosts-like files

Hosty Description Hosty is a command-line utility that allows for fast inspection and editing of /etc/hosts-like files. It is written in golang and us

Owner
Corentin de Boisset
Corentin de Boisset
A command tool to help user install oh-my-zsh plugins fast in a comfortable way

zshx A command tool to help user install oh-my-zsh plugins fast in a comfortable way. in other way, it is a zsh plugin package manager. How to use the

xylon 6 Feb 11, 2022
Interactive prompt for command-line applications

promptui Interactive prompt for command-line applications. We built Promptui because we wanted to make it easy and fun to explore cloud services with

Manifold 5.3k Jan 8, 2023
Pure Go command line prompt with history, kill-ring, and tab completion

Prompt Prompt is a command line prompt editor with history, kill-ring, and tab completion. It was inspired by linenoise and derivatives which eschew u

Peter Mattis 1 Nov 20, 2021
cod is a completion daemon for bash/fish/zsh

Cod is a completion daemon for {bash,fish,zsh}. It detects usage of --help commands parses their output and generates auto-completions for your shell.

Dmitry Ermolov 445 Dec 25, 2022
A command-line tool and library for generating regular expressions from user-provided test cases

Table of Contents What does this tool do? Do I still need to learn to write regexes then? Current features How to install? 4.1 The command-line tool 4

Peter M. Stahl 5.8k Jan 9, 2023
mass-binding-target is a command line tool for generating binding target list by search plot files from disk.

mass-binding-target mass-binding-target is a command line tool for generating binding target list by search plot files from disk. Build Go 1.13 or new

null 0 Nov 5, 2021
A command line tool that builds and (re)starts your web application everytime you save a Go or template fileA command line tool that builds and (re)starts your web application everytime you save a Go or template file

# Fresh Fresh is a command line tool that builds and (re)starts your web application everytime you save a Go or template file. If the web framework yo

null 0 Nov 22, 2021
git-xargs is a command-line tool (CLI) for making updates across multiple Github repositories with a single command.

Table of contents Introduction Reference Contributing Introduction Overview git-xargs is a command-line tool (CLI) for making updates across multiple

Gruntwork 713 Dec 31, 2022
git-xargs is a command-line tool (CLI) for making updates across multiple GitHub repositories with a single command

git-xargs is a command-line tool (CLI) for making updates across multiple GitHub repositories with a single command. You give git-xargs:

Maxar Infrastructure 1 Feb 5, 2022
A command line utility for generating language-specific project structure.

hydra hydra is a command line utility for generating language-specific project structures. ⏬ ✨ Features Build project templates with just one command

Shravan 18 Oct 8, 2021