shell-prompt

Open-source projects categorized as shell-prompt

Top 13 shell-prompt Open-Source Projects

  • starship

    ☄🌌️ The minimal, blazing-fast, and infinitely customizable prompt for any shell!

  • Project mention: Atuin – Magical Shell History | news.ycombinator.com | 2024-02-21

    Agreed, I use this in conjunction with Starship [1], both initialized specifically for Fish in the config. I love this shell so much.

    [1] - https://starship.rs/

  • spaceship-prompt

    :rocket::star: Minimalistic, powerful and extremely customizable Zsh prompt

  • Project mention: Is there any way to remove the first newline from Starship Prompt? | /r/commandline | 2023-05-24

    There are solutions in this GH issue discussion: https://github.com/spaceship-prompt/spaceship-prompt/issues/677

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • oh-my-posh

    The most customisable and low-latency cross platform/shell prompt renderer

  • Project mention: wsl arch setup for oh my posh | dev.to | 2024-04-12

    # Download the correct binary for Linux (replace the URL with the latest version if needed) wget https://github.com/JanDeDobbeleer/oh-my-posh/releases/latest/download/posh-linux-amd64 -O oh-my-posh # Make the binary executable chmod +x oh-my-posh # Move the binary to a directory in your PATH sudo mv oh-my-posh /usr/local/bin/

  • pure

    Pretty, minimal and fast ZSH prompt (by sindresorhus)

  • Project mention: Carapace: A multi-shell completion library and binary | news.ycombinator.com | 2024-04-22

    Beyond zprof (https://www.bigbinary.com/blog/zsh-profiling) not really I'm afraid. I did the majority of my zsh-prompt hacking 10 years ago and haven't thought about it since. That snippet could be from anywhere.

    You could peek at something like zprezto https://github.com/sorin-ionescu/prezto or pure https://github.com/sindresorhus/pure for tips.

    Fetching git/hg/... info is always slow, so try and speed that up where you can (as to how to do that, uhh... I know my prompt has a dirty-state check nicked from pure for speed reasons). You can also cache any `asdf init zsh` or similar to a file and do the same "run in background" trick so the next shell will have any changes.

    The biggest improvement I can remember was dropping zprezto for my own much smaller config, I really did not need much comparatively. Mostly some git info and "good default" options. I use zgenom for a plugin manager but only have 3 plugins, probably I should just dump it and inline the plugins to avoid getting owned one day.

  • liquidprompt

    A full-featured & carefully designed adaptive prompt for Bash & Zsh

  • Project mention: Liquidprompt: Full-featured, carefully designed adaptive prompt for Bash, Zsh | news.ycombinator.com | 2024-03-20
  • riposte

    Python package for wrapping applications inside a tailored interactive shell

  • polyglot

    Color, ASCII-only Git prompt for zsh, bash, ksh93, mksh, pdksh, oksh, dash, yash, busybox ash, and osh (by agkozak)

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • kubeprompt

    Isolated kubectl shells and prompt info

  • angel-PS1

    Your fancy shell prompt fed by your guardian angel

  • BashConfig

    BASH configuration files.

  • Project mention: huge list of bash aliases | /r/bash | 2023-05-14

    alias config="$(which git) -C $HOME --git-dir=$HOME/.dots/ --work-tree=$HOME" # ------------------------------------------------------------------ # Common # ------------------------------------------------------------------ alias python="$(which python3)" alias pip=pip3 # Place above other sudo commands to enable aliases to be sudo-ed. alias sudo="sudo " # if [ $UID -ne 0 ]; then # ## Effective UID is the user you changed to, UID is the original user. # # echo "UID is $UID and EUID is $EUID" # fi # ------------------------------------------------------------------ # Navigation # ------------------------------------------------------------------ alias cd..="cd .." alias ..="cd .." alias ...="cd ../.." alias ....="cd ../../.." alias .....="cd ../../../.." alias ~="cd $HOME" # `cd` is probably faster to type though alias -- -="cd -" # ------------------------------------------------------------------ # Copy / Get / Remove # ------------------------------------------------------------------ # mv, cp confirmation alias mkdir="mkdir -pv" alias cp="cp -iv" alias ln='ln -i' alias mv="mv -iv" if hash rsync 2>/dev/null; then # alias cpv="rsync -ah --info=progress2" alias cpv="rsync -ah --info=progress2 --no-inc-recursive --stats" # progress bar alias rcopy="rsync -av --progress -h" alias rmove="rsync -av --progress -h --remove-source-files" alias rupdate="rsync -avu --progress -h" alias rsynchronize="rsync -avu --delete --progress -h" fi # ------------------------------------------------------------------ # Safetynets/Permission/Ownership # ------------------------------------------------------------------ # do not delete / or prompt if deleting more than 3 files at a time # alias rm='rm -vI --preserve-root' # 'rm -i' prompts for every file # Safetynets [Parenting changing perms on / #] alias chown='chown -v --preserve-root' alias chmod='chmod -v --preserve-root' alias chgrp='chgrp --preserve-root' alias chmox="chmod +x --preserve-root" if [ $UID -ne 0 ]; then # Add sudo if forgotten. i.e. # require sudo if user is not root alias reboot='sudo reboot' alias update='sudo apt-get upgrade' alias susp='sudo /usr/sbin/pm-suspend' alias dpkg='sudo dpkg' fi # ------------------------------------------------------------------ # File managements # ------------------------------------------------------------------ alias df='df -h' alias du='du -hs' alias fs="stat -f \"%z bytes\"" # File size ## Alisase: new # List all files colorized in long format alias l="ls -lF ${colorflag}" # List all files colorized in long format, excluding . and .. alias la="ls -lAF ${colorflag}" # List only directories alias lsd="ls -lF ${colorflag} | grep '^d' --color=never" alias ls="ls --classify --tabsize=0 --group-directories-first --literal --show-control-chars ${colorflag} --human-readable" alias lh="ls -d .*" # show hidden files/directories only # tree should be in most distributions (maybe as an optional install) # alias tree="ls -R | grep ":$" | sed -e 's/:$//' -e 's/[^-][^\/]*\//--/g' -e 's/^/ /' -e 's/-/|/'" alias lsblkid="lsblk -o name,label,fstype,size,uuid --noheadings" #: A more descriptive, yet concise lsblk. alias blkid_="blkid -o list" alias new="/usr/bin/ls -lth | head -15" # a quick glance at the newest files. alias big="command du -a -BM | sort -n -r | head -n 10" # Find 10 largest files in pwd. # ------------------------------------------------------------------ # Nginx # ------------------------------------------------------------------ if hash nginx 2>/dev/null; then function ngensite { sudo ln -s "/etc/nginx/sites-available/$1" /etc/nginx/sites-enabled; } function ngdissite { sudo rm "/etc/nginx/sites-enabled/$1"; } alias nginx='sudo nginx' alias ngdir='cd /etc/nginx/' alias nglog-access='tail -f /var/log/nginx/access.log' alias nglog-error='tail -f /var/log/nginx/error.log' alias ngsites='ls /etc/nginx/sites-available' alias ngsitesen='ls /etc/nginx/sites-enabled' alias ngreload='sudo service nginx reload' alias ngrestart='sudo service nginx restart' alias ngstart='sudo service nginx start' alias ngstatus='sudo service nginx status' alias ngstop='sudo service nginx stop' alias ngtest='sudo nginx -t' fi # ------------------------------------------------------------------ # Networking and IP addresses # ------------------------------------------------------------------ alias ping="ping -c 5" alias ports='sudo netstat -vatnp' alias ifconfig="ip -c a | sed -e 's/\// \//g'" # Show active network interfaces alias ifactive="ifconfig | pcregrep -M -o '^[^\t:]+:([^\n]|\n\t)*status: active'" #alias ip="dig +short myip.opendns.com @resolver1.opendns.com" alias localip="ipconfig getifaddr en1" alias ips="ifconfig -a | grep -o 'inet6\? \(addr:\)\?\s\?\(\(\([0-9]\+\.\)\{3\}[0-9]\+\)\|[a-fA-F0-9:]\+\)' | awk '{ sub(/inet6? (addr:)? ?/, \"\"); print }'" # Enhanced WHOIS lookups alias whois="whois -h whois-servers.net" # View HTTP traffic alias sniff="sudo ngrep -d 'en1' -t '^(GET|POST) ' 'tcp and port 80'" alias httpdump="sudo tcpdump -i en1 -n -s 0 -w - | grep -a -o -E \"Host\: .*|GET \/.*\"" alias ports='sudo lsof -nP 2>/dev/null | grep LISTEN | sed -re "s/ +/ /g" | cut -d " " -f 1,3,9 | sort -u | column -t' # https://github.com/terminalforlife/BashConfig/ alias joke='command wget -U "curl/7.55.1" -o /dev/null -qO - https://icanhazdadjoke.com || printf "No jokes today"; echo' # Always enable colored `grep` output if [ -x /usr/bin/dircolors ]; then test -r $HOME/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)" alias grep="grep -sI --color=auto --exclude-dir=__pycache__" alias grepi="grep -i --color=auto --exclude-dir=__pycache__" alias fgrep="fgrep --color=auto --exclude-dir=__pycache__" alias egrep="egrep --color=auto --exclude-dir=__pycache__" fi # One of @janmoesen’s ProTip™s for method in GET HEAD POST PUT DELETE TRACE OPTIONS; do alias "${method}"="lwp-request -m '${method}'" done # ------------------------------------------------------------------ # My Specific # ------------------------------------------------------------------ # Mine Specific Shortcuts alias dl="cd $HOME/Downloads" alias dt="cd $HOME/Desktop" if hash subl 2>/dev/null; then if [ $UID -ne 0 ]; then # If Sublime Text installed - use it istead of gedit # only for non-root to prevent side effects alias gedit=subl fi fi if hash nnn 2>/dev/null; then alias nnn="nnn -Rd" fi if [ -f ${HOME}/.local/bin/bat ]; then alias aliases="bat $HOME/.bash_aliases" # for quick reference if [ $UID -ne 0 ]; then # apply bat style inline incase .config/bat/conf is not available alias cat="bat -pp --paging=never --style='plain' --theme=TwoDark --color=always --decorations=always" fi fi if hash wget 2>/dev/null; then #alias wget="curl -O" alias wget="wget -c - --hsts-file='$XDG_CACHE_HOME/wget-hsts'" # resume if failed by default fi # ------------------------------------------------------------------ # Misc # ------------------------------------------------------------------ # Add an "alert" alias for long running commands. # Usage example: $ sleep 5; alert alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"' # Much nicer output for the apt-get command. alias apt-get="apt-get -q -o Dpkg::Progress=true -o Dpkg::Progress-Fancy=true -o APT::Get::AutomaticRemove=true" # Show which commands you use the most alias freq='cut -f1 -d" " $HOME/.bash_history | sort | uniq -c | sort -nr | head -n 30' alias fuck="killall -9" # alias g="git" alias h="history" alias incognito='export HISTFILE=/dev/null' # Potentially useful option for viewing the kernel log. alias klog="dmesg -t -L=never -l emerg,alert,crit,err,warn --human --nopager" alias vi="vim" alias where=which # sometimes i forget alias shh="pkill mpv; pkill mpv" # Play online drum and bass radio station. alias dnb="shh; mpv --really-quiet https://dnbradio.com/hi.pls &" # make easier editing alias vimrc="$EDITOR $HOME/.vimrc" alias bashrc="$EDITOR $HOME/.bashrc" alias alia="$EDITOR $HOME/.bash_aliases" alias func="$EDITOR $HOME/.bash_functions" # Print each PATH entry on a separate line alias path="echo -e ${PATH//:/\\n}" # Control Sequences / Reload the shell alias cls='printf "\ec"' alias reload="exec $SHELL -l" # invoke as a login shell alias c="clear;exec bash" # Shell exit alias alias q="exit" alias :q="exit"

  • xontrib-prompt-starship

    Starship cross-shell prompt in xonsh shell.

  • mini-prompt

    🦊 Minimal and versatile bash prompt

  • simpl

    Simple, pretty, minimal, customizable and fast ZSH prompt (by eduarbo)

NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020).

shell-prompt related posts

Index

What are some of the best open-source shell-prompt projects? This list will help you:

Project Stars
1 starship 40,684
2 spaceship-prompt 19,090
3 oh-my-posh 14,144
4 pure 12,772
5 liquidprompt 4,419
6 riposte 568
7 polyglot 167
8 kubeprompt 75
9 angel-PS1 60
10 BashConfig 56
11 xontrib-prompt-starship 49
12 mini-prompt 35
13 simpl 1

Sponsored
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com