├── .config ├── fish │ └── config.fish ├── gitconfig │ ├── altair │ ├── avalonstar │ ├── bryanveloso │ └── inc └── starship.toml ├── .gitconfig ├── .gitignore ├── Makefile ├── README.md ├── fish └── .config │ └── fish │ ├── config.fish │ └── fish_variables ├── git ├── .gitconfig └── .gitignore_global ├── github └── .config │ └── gh │ └── config.yml └── starship └── .config └── starship.toml /.config/fish/config.fish: -------------------------------------------------------------------------------- 1 | set fish_greeting "" 2 | 3 | set -gx TERM xterm-256color 4 | 5 | # Theme 6 | set -g fish_prompt_pwd_dir_length 1 7 | set -g theme_display_user yes 8 | set -g theme_hide_hostname no 9 | set -g theme_hostname always 10 | 11 | if status is-interactive 12 | # Commands to run in interactive sessions can go here 13 | end 14 | 15 | # Set environment variables. 16 | set -g fish_user_paths /opt/homebrew/bin $fish_user_paths 17 | set -g fish_user_paths /opt/homebrew/sbin $fish_user_paths 18 | set -g fish_user_paths $HOME/.local/bin $fish_user_paths 19 | 20 | # Set GPG TTY 21 | set -x GPG_TTY (tty) 22 | 23 | # Initialize Starship 24 | starship init fish | source 25 | -------------------------------------------------------------------------------- /.config/gitconfig/altair: -------------------------------------------------------------------------------- 1 | [user] 2 | email = bryan@altair.tv 3 | -------------------------------------------------------------------------------- /.config/gitconfig/avalonstar: -------------------------------------------------------------------------------- 1 | [user] 2 | email = bryan@avalonstar.com 3 | -------------------------------------------------------------------------------- /.config/gitconfig/bryanveloso: -------------------------------------------------------------------------------- 1 | [user] 2 | email = bryan@velo.so 3 | -------------------------------------------------------------------------------- /.config/gitconfig/inc: -------------------------------------------------------------------------------- 1 | [gpg] 2 | program = /usr/bin/gpg 3 | -------------------------------------------------------------------------------- /.config/starship.toml: -------------------------------------------------------------------------------- 1 | [character] 2 | success_symbol = "[➜](bold green) " 3 | error_symbol = "[➜](bold red) " 4 | 5 | [git_branch] 6 | always_show_remote = true 7 | symbol = "🌱 " 8 | 9 | [git_commit] 10 | only_detached = false 11 | style = "bold green" 12 | 13 | [git_metrics] 14 | disabled = true 15 | format = '[+$added]($added_style)/[-$deleted]($deleted_style) ' 16 | 17 | [nodejs] 18 | symbol = "❇️ " 19 | 20 | [python] 21 | python_binary = "python3" 22 | -------------------------------------------------------------------------------- /.gitconfig: -------------------------------------------------------------------------------- 1 | # Core configuration. 2 | [apply] 3 | whitespace = fix 4 | [color] 5 | ui = true 6 | diff = true 7 | status = true 8 | branch = true 9 | interactive = true 10 | [commit] 11 | gpgsign = true 12 | [core] 13 | editor = code --wait 14 | whitespace = fix 15 | trustctime = false 16 | [credential "https://github.com"] 17 | helper = !/home/linuxbrew/.linuxbrew/Cellar/gh/2.1.0/bin/gh auth git-credential 18 | [fetch] 19 | prune = true 20 | [github] 21 | user = bryanveloso 22 | [init] 23 | defaultBranch = main 24 | [interactive] 25 | diffFilter = delta --color-only --features=interactive 26 | [pager] 27 | diff = delta 28 | log = delta 29 | reflog = delta 30 | show = delta 31 | [pull] 32 | default = current 33 | [push] 34 | default = matching 35 | [rebase] 36 | autosquash = true 37 | [rerere] 38 | enabled = 1 39 | [status] 40 | submoduleSummary = true 41 | [user] 42 | name = Bryan Veloso 43 | signingkey = B896EEA5BA83644C 44 | 45 | # Aliases. 46 | [alias] 47 | amend = commit --amend 48 | st = status 49 | 50 | # Custom .gitconfigs. 51 | [include] 52 | path = ~/.config/gitconfig/inc 53 | [includeIf "gitdir:~/altair/"] 54 | path = ~/.config/gitconfig/altair 55 | [includeIf "gitdir:~/avalonstar/"] 56 | path = ~/.config/gitconfig/avalonstar 57 | [includeIf "gitdir:~/bryanveloso/"] 58 | path = ~/.config/gitconfig/bryanveloso 59 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Backup files created by Makefile 2 | backup/ 3 | 4 | # macOS 5 | .DS_Store 6 | 7 | # Editor files 8 | .vscode/ 9 | .idea/ 10 | 11 | # Personal files that shouldn't be shared 12 | **/hosts.yml 13 | **/*_personal* 14 | 15 | # Claude local context (not for sharing) 16 | CLAUDE.local.md -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | .PHONY: help install uninstall backup restore clean 2 | 3 | # Default target 4 | help: 5 | @echo "Available commands:" 6 | @echo " install - Install all dotfiles using GNU Stow" 7 | @echo " uninstall - Remove all symlinks" 8 | @echo " backup - Backup existing dotfiles" 9 | @echo " restore - Restore from backup" 10 | @echo " clean - Remove backups" 11 | @echo "" 12 | @echo "Prerequisites:" 13 | @echo " brew install stow" 14 | 15 | # Install all dotfiles 16 | install: backup 17 | @echo "Installing dotfiles with GNU Stow..." 18 | stow git 19 | stow fish 20 | stow starship 21 | stow github 22 | @echo "✅ Dotfiles installed successfully!" 23 | @echo "" 24 | @echo "🔄 Restart your terminal or run 'exec fish' to apply changes" 25 | 26 | # Uninstall all dotfiles 27 | uninstall: 28 | @echo "Removing dotfile symlinks..." 29 | stow -D git 30 | stow -D fish 31 | stow -D starship 32 | stow -D github 33 | @echo "✅ Dotfiles uninstalled" 34 | 35 | # Backup existing dotfiles 36 | backup: 37 | @echo "Creating backup of existing dotfiles..." 38 | @mkdir -p backup 39 | @if [ -f ~/.gitconfig ]; then cp ~/.gitconfig backup/gitconfig.bak; fi 40 | @if [ -f ~/.gitignore_global ]; then cp ~/.gitignore_global backup/gitignore_global.bak; fi 41 | @if [ -f ~/.config/fish/config.fish ]; then cp ~/.config/fish/config.fish backup/config.fish.bak; fi 42 | @if [ -f ~/.config/fish/fish_variables ]; then cp ~/.config/fish/fish_variables backup/fish_variables.bak; fi 43 | @if [ -f ~/.config/starship.toml ]; then cp ~/.config/starship.toml backup/starship.toml.bak; fi 44 | @if [ -f ~/.config/gh/config.yml ]; then cp ~/.config/gh/config.yml backup/gh_config.yml.bak; fi 45 | @echo "✅ Backup complete" 46 | 47 | # Restore from backup 48 | restore: 49 | @echo "Restoring from backup..." 50 | @if [ -f backup/gitconfig.bak ]; then cp backup/gitconfig.bak ~/.gitconfig; fi 51 | @if [ -f backup/gitignore_global.bak ]; then cp backup/gitignore_global.bak ~/.gitignore_global; fi 52 | @if [ -f backup/config.fish.bak ]; then cp backup/config.fish.bak ~/.config/fish/config.fish; fi 53 | @if [ -f backup/fish_variables.bak ]; then cp backup/fish_variables.bak ~/.config/fish/fish_variables; fi 54 | @if [ -f backup/starship.toml.bak ]; then cp backup/starship.toml.bak ~/.config/starship.toml; fi 55 | @if [ -f backup/gh_config.yml.bak ]; then cp backup/gh_config.yml.bak ~/.config/gh/config.yml; fi 56 | @echo "✅ Restored from backup" 57 | 58 | # Clean backup files 59 | clean: 60 | @echo "Removing backup files..." 61 | rm -rf backup/ 62 | @echo "✅ Backups cleaned" 63 | 64 | # Check if stow is installed 65 | check-stow: 66 | @which stow > /dev/null || (echo "❌ GNU Stow not found. Install with: brew install stow" && exit 1) -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # dotfiles 2 | 3 | These are my `.files`. They help me keep my life sane. The last time I committed to this repository was in 2014... and a lot has changed since then. Not the least of which is I switched from __zsh__ to __fish__ shell, you know, if you ignore all the important stuff. 4 | 5 | This is a complete rewrite using GNU Stow for elegant symlink management and modern best practices. 6 | 7 | ## Prerequisites 8 | 9 | | Tool | Description | 10 | | ----------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | 11 | | [Homebrew](https://brew.sh) | Self-explanatory, really. | 12 | | [Fish shell](https://fishshell.com) | It comes with a lot of great things out of the box, like auto-completions. But it's NOT `sh`-based, so, don't use `EXPORT`. | 13 | | [Starship](http://starship.rs) | A really cool cross-shell prompt that does all the "powerline" things without me having to fiddle with shell configurations. | 14 | | [GNU Stow](https://www.gnu.org/software/stow/) | Symlink farm manager for organizing dotfiles cleanly. | 15 | 16 | ```bash 17 | # Install everything you need 18 | brew install stow fish starship git-delta gh 19 | ``` 20 | 21 | ## Quick Setup 22 | 23 | ```bash 24 | # Clone this repository 25 | git clone https://github.com/bryanveloso/dotfiles.git ~/.dotfiles 26 | 27 | # Navigate to dotfiles directory 28 | cd ~/.dotfiles 29 | 30 | # Install all configurations 31 | make install 32 | ``` 33 | 34 | ## What's Included 35 | 36 | ### Git Configuration 37 | - Optimized `.gitconfig` with best practices 38 | - SSH signing with 1Password integration 39 | - Delta diff viewer with syntax highlighting 40 | - Global `.gitignore` for common files 41 | - Useful aliases and safety settings 42 | 43 | ### Fish Shell 44 | - Clean configuration with Starship prompt 45 | - Useful abbreviations for common commands 46 | - Proper PATH management with `fish_add_path` 47 | - Development tools integration (Node.js, Python, etc.) 48 | 49 | ### Starship Prompt 50 | - Custom symbols and styling 51 | - Git status and metrics 52 | - Command duration display 53 | - Package and language detection 54 | 55 | ### GitHub CLI 56 | - Pre-configured with useful aliases 57 | - HTTPS protocol setting 58 | 59 | ## Usage 60 | 61 | ```bash 62 | # Install all dotfiles 63 | make install 64 | 65 | # Uninstall (remove symlinks) 66 | make uninstall 67 | 68 | # Backup existing configs before install 69 | make backup 70 | 71 | # Restore from backup 72 | make restore 73 | 74 | # Clean backup files 75 | make clean 76 | 77 | # Show help 78 | make help 79 | ``` 80 | 81 | ## Manual Installation 82 | 83 | If you prefer not to use the Makefile: 84 | 85 | ```bash 86 | cd ~/.dotfiles 87 | stow git fish starship github 88 | ``` 89 | 90 | ## Structure 91 | 92 | ``` 93 | .dotfiles/ 94 | ├── fish/ 95 | │ └── .config/fish/ 96 | │ ├── config.fish 97 | │ └── fish_variables 98 | ├── git/ 99 | │ ├── .gitconfig 100 | │ └── .gitignore_global 101 | ├── github/ 102 | │ └── .config/gh/ 103 | │ └── config.yml 104 | ├── starship/ 105 | │ └── .config/starship.toml 106 | ├── Makefile 107 | └── README.md 108 | ``` 109 | 110 | ## Best Practices Implemented 111 | 112 | - **Git**: Safety settings, auto-pruning, SSH signing 113 | - **Fish**: Modern path management, useful abbreviations 114 | - **Starship**: Comprehensive status display, performance optimized 115 | - **Cross-platform**: Works on macOS with considerations for other systems 116 | 117 | ## Inspirations 118 | 119 | Crazy ideas beget other crazy ideas, and for those I have these fine people to thank: 120 | 121 | * [Julian Nadeau][1] for their lovely looking [dotfiles][2] with 1Password integration. 122 | * [Josh Nichols][3] and [Ani Betts][4] for talking about cool dotfiles. 123 | * [Takuya Matsuyama][5] for their [no-nonsense dotfiles][6]. 124 | 125 | [1]: https://github.com/jules2689 126 | [2]: https://github.com/jules2689/dotfiles 127 | [3]: https://github.com/technicalpickles 128 | [4]: https://github.com/anaisbetts 129 | [5]: https://github.com/craftzdog 130 | [6]: https://github.com/craftzdog/dotfiles-public 131 | 132 | ## Notes 133 | 134 | - All configurations follow modern best practices 135 | - SSH signing key is email-agnostic (works with any email address) 136 | - Fish shell abbreviations expand for better command history 137 | - Starship is optimized for development workflows 138 | -------------------------------------------------------------------------------- /fish/.config/fish/config.fish: -------------------------------------------------------------------------------- 1 | # Remove fish greeting 2 | set fish_greeting "" 3 | 4 | # Terminal settings 5 | set -gx TERM xterm-256color 6 | 7 | # Theme settings 8 | set -g fish_prompt_pwd_dir_length 1 9 | set -g theme_display_user yes 10 | set -g theme_hide_hostname no 11 | set -g theme_hostname always 12 | 13 | # PATH management using fish_add_path (more robust than manual PATH setting) 14 | fish_add_path /opt/homebrew/bin 15 | fish_add_path /opt/homebrew/sbin 16 | fish_add_path $HOME/.local/bin 17 | 18 | # Development tools 19 | fish_add_path $HOME/Library/pnpm 20 | fish_add_path $HOME/.bun/bin 21 | 22 | # Environment variables 23 | set -gx GPG_TTY (tty) 24 | set -gx PNPM_HOME "$HOME/Library/pnpm" 25 | set -gx BUN_INSTALL "$HOME/.bun" 26 | 27 | # Abbreviations for common commands 28 | if status is-interactive 29 | # Git abbreviations 30 | abbr -a g git 31 | abbr -a gs git status 32 | abbr -a ga git add 33 | abbr -a gc git commit 34 | abbr -a gp git push 35 | abbr -a gl git pull 36 | abbr -a gd git diff 37 | abbr -a gb git branch 38 | abbr -a gco git checkout 39 | abbr -a glog git log --oneline --graph 40 | 41 | # Directory navigation 42 | abbr -a .. cd .. 43 | abbr -a ... cd ../.. 44 | abbr -a .... cd ../../.. 45 | abbr -a l ls -la 46 | abbr -a ll ls -l 47 | 48 | # Common commands 49 | abbr -a c clear 50 | abbr -a h history 51 | abbr -a reload exec fish 52 | end 53 | 54 | # Initialize Starship prompt 55 | starship init fish | source 56 | 57 | # Conda initialization 58 | if test -f /opt/miniconda3/bin/conda 59 | eval /opt/miniconda3/bin/conda "shell.fish" "hook" $argv | source 60 | else 61 | if test -f "/opt/miniconda3/etc/fish/conf.d/conda.fish" 62 | . "/opt/miniconda3/etc/fish/conf.d/conda.fish" 63 | else 64 | fish_add_path /opt/miniconda3/bin 65 | end 66 | end -------------------------------------------------------------------------------- /fish/.config/fish/fish_variables: -------------------------------------------------------------------------------- 1 | # This file contains fish universal variable definitions. 2 | # VERSION: 3.0 3 | SETUVAR __fish_initialized:3800 4 | SETUVAR fish_color_autosuggestion:555\x1ebrblack 5 | SETUVAR fish_color_cancel:\x2dr 6 | SETUVAR fish_color_command:005fd7 7 | SETUVAR fish_color_comment:990000 8 | SETUVAR fish_color_cwd:green 9 | SETUVAR fish_color_cwd_root:red 10 | SETUVAR fish_color_end:009900 11 | SETUVAR fish_color_error:ff0000 12 | SETUVAR fish_color_escape:00a6b2 13 | SETUVAR fish_color_history_current:\x2d\x2dbold 14 | SETUVAR fish_color_host:normal 15 | SETUVAR fish_color_host_remote:yellow 16 | SETUVAR fish_color_normal:normal 17 | SETUVAR fish_color_operator:00a6b2 18 | SETUVAR fish_color_param:00afff 19 | SETUVAR fish_color_quote:999900 20 | SETUVAR fish_color_redirection:00afff 21 | SETUVAR fish_color_search_match:white\x1e\x2d\x2dbackground\x3dbrblack 22 | SETUVAR fish_color_selection:white\x1e\x2d\x2dbold\x1e\x2d\x2dbackground\x3dbrblack 23 | SETUVAR fish_color_status:red 24 | SETUVAR fish_color_user:brgreen 25 | SETUVAR fish_color_valid_path:\x2d\x2dunderline 26 | SETUVAR fish_key_bindings:fish_default_key_bindings 27 | SETUVAR fish_pager_color_completion:\x1d 28 | SETUVAR fish_pager_color_description:B3A06D\x1eyellow 29 | SETUVAR fish_pager_color_prefix:normal\x1e\x2d\x2dbold\x1e\x2d\x2dunderline 30 | SETUVAR fish_pager_color_progress:brwhite\x1e\x2d\x2dbackground\x3dcyan 31 | SETUVAR fish_pager_color_selected_background:\x2dr 32 | SETUVAR fish_user_paths:/Users/Avalonstar/\x2elocal/bin\x1e/opt/homebrew/sbin\x1e/opt/homebrew/bin\x1e/Users/Avalonstar/\x2eyarn/bin 33 | -------------------------------------------------------------------------------- /git/.gitconfig: -------------------------------------------------------------------------------- 1 | [user] 2 | name = Bryan Veloso 3 | email = bryan@velo.so 4 | signingkey = ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJ7/I2U8WBtLe+sxuzbx81ewE/q3ZJcmzW3i0QEopcJv 5 | 6 | [github] 7 | user = bryanveloso 8 | 9 | [core] 10 | editor = code --wait 11 | whitespace = fix,-indent-with-non-tab,trailing-space,cr-at-eol 12 | excludesfile = ~/.gitignore_global 13 | 14 | [color] 15 | interactive = auto 16 | ui = auto 17 | 18 | [color "branch"] 19 | current = yellow bold 20 | local = green bold 21 | remote = cyan bold 22 | 23 | [color "diff"] 24 | meta = yellow bold 25 | frag = magenta bold 26 | old = red bold 27 | new = green bold 28 | whitespace = red reverse 29 | 30 | [color "status"] 31 | added = green bold 32 | changed = yellow bold 33 | untracked = red bold 34 | 35 | [delta] 36 | features = line-numbers decorations 37 | line-numbers = true 38 | 39 | [delta "decorations"] 40 | minus-style = red bold normal 41 | plus-style = green bold normal 42 | minus-emph-style = white bold red 43 | minus-non-emph-style = red bold normal 44 | plus-emph-style = white bold green 45 | plus-non-emph-style = green bold normal 46 | file-style = yellow bold none 47 | file-decoration-style = yellow box 48 | hunk-header-style = magenta bold 49 | hunk-header-decoration-style = magenta box 50 | minus-empty-line-marker-style = normal normal 51 | plus-empty-line-marker-style = normal normal 52 | line-numbers-right-format = "{np:^4}│ " 53 | 54 | [alias] 55 | amend = commit --amend 56 | st = status -sb 57 | co = checkout 58 | br = branch 59 | unstage = reset HEAD -- 60 | last = log -1 HEAD 61 | visual = !gitk 62 | 63 | [help] 64 | autocorrect = 1 65 | 66 | [commit] 67 | gpgsign = true 68 | 69 | [gpg] 70 | program = /opt/homebrew/bin/gpg 71 | format = ssh 72 | 73 | [gpg "ssh"] 74 | program = /Applications/1Password.app/Contents/MacOS/op-ssh-sign 75 | 76 | [rerere] 77 | enabled = 1 78 | 79 | [filter "lfs"] 80 | process = git-lfs filter-process 81 | required = true 82 | clean = git-lfs clean -- %f 83 | smudge = git-lfs smudge -- %f 84 | 85 | [init] 86 | defaultBranch = main 87 | 88 | [pull] 89 | rebase = false 90 | 91 | [push] 92 | default = simple 93 | 94 | [branch] 95 | autosetupmerge = always 96 | 97 | [fetch] 98 | prune = true 99 | 100 | [rebase] 101 | autoStash = true -------------------------------------------------------------------------------- /git/.gitignore_global: -------------------------------------------------------------------------------- 1 | # macOS 2 | .DS_Store 3 | .AppleDouble 4 | .LSOverride 5 | Icon 6 | 7 | # Thumbnails 8 | ._* 9 | 10 | # Files that might appear in the root of a volume 11 | .DocumentRevisions-V100 12 | .fseventsd 13 | .Spotlight-V100 14 | .TemporaryItems 15 | .Trashes 16 | .VolumeIcon.icns 17 | .com.apple.timemachine.donotpresent 18 | 19 | # Directories potentially created on remote AFP share 20 | .AppleDB 21 | .AppleDesktop 22 | Network Trash Folder 23 | Temporary Items 24 | .apdisk 25 | 26 | # Windows 27 | Thumbs.db 28 | ehthumbs.db 29 | Desktop.ini 30 | $RECYCLE.BIN/ 31 | 32 | # Linux 33 | *~ 34 | 35 | # Editor files 36 | .vscode/ 37 | .idea/ 38 | *.swp 39 | *.swo 40 | *~ 41 | 42 | # Node.js 43 | node_modules/ 44 | npm-debug.log* 45 | yarn-debug.log* 46 | yarn-error.log* 47 | 48 | # Python 49 | __pycache__/ 50 | *.py[cod] 51 | *$py.class 52 | *.so 53 | .Python 54 | env/ 55 | venv/ 56 | .venv/ 57 | .env 58 | 59 | # Logs 60 | logs 61 | *.log 62 | 63 | # Runtime data 64 | pids 65 | *.pid 66 | *.seed 67 | *.pid.lock 68 | 69 | # Optional npm cache directory 70 | .npm 71 | 72 | # Optional REPL history 73 | .node_repl_history 74 | 75 | # Output of 'npm pack' 76 | *.tgz 77 | 78 | # Yarn Integrity file 79 | .yarn-integrity 80 | 81 | # dotenv environment variables file 82 | .env 83 | .env.local 84 | .env.development.local 85 | .env.test.local 86 | .env.production.local -------------------------------------------------------------------------------- /github/.config/gh/config.yml: -------------------------------------------------------------------------------- 1 | # What protocol to use when performing git operations. Supported values: ssh, https 2 | git_protocol: https 3 | # What editor gh should run when creating issues, pull requests, etc. If blank, will refer to environment. 4 | editor: 5 | # When to interactively prompt. This is a global config that cannot be overridden by hostname. Supported values: enabled, disabled 6 | prompt: enabled 7 | # A pager program to send command output to, e.g. "less". Set the value to "cat" to disable the pager. 8 | pager: 9 | # Aliases allow you to create nicknames for gh commands 10 | aliases: 11 | co: pr checkout 12 | # The path to a unix socket through which send HTTP connections. If blank, HTTP traffic will be handled by net/http.DefaultTransport. 13 | http_unix_socket: 14 | # What web browser gh should use when opening URLs. If blank, will refer to environment. 15 | browser: 16 | version: "1" 17 | -------------------------------------------------------------------------------- /starship/.config/starship.toml: -------------------------------------------------------------------------------- 1 | add_newline = true 2 | command_timeout = 5000 3 | 4 | [battery] 5 | disabled = true 6 | 7 | [character] 8 | success_symbol = "[➜](bold green) " 9 | error_symbol = "[➜](bold red) " 10 | 11 | [directory] 12 | truncation_length = 3 13 | truncation_symbol = "…/" 14 | home_symbol = "~" 15 | read_only = " " 16 | style = "blue bold" 17 | 18 | [git_branch] 19 | always_show_remote = true 20 | symbol = "🌱 " 21 | style = "purple bold" 22 | 23 | [git_commit] 24 | only_detached = false 25 | style = "bold green" 26 | 27 | [git_metrics] 28 | disabled = false 29 | added_style = "bold blue" 30 | deleted_style = "bold red" 31 | format = '[+$added]($added_style)/[-$deleted]($deleted_style) ' 32 | 33 | [git_status] 34 | format = '([\[$all_status$ahead_behind\]]($style) )' 35 | style = "cyan bold" 36 | conflicted = "🏳" 37 | up_to_date = "✓" 38 | untracked = "🤷" 39 | ahead = "⇡${count}" 40 | diverged = "⇕⇡${ahead_count}⇣${behind_count}" 41 | behind = "⇣${count}" 42 | stashed = "📦" 43 | modified = "📝" 44 | staged = '[++\($count\)](green)' 45 | renamed = "👅" 46 | deleted = "🗑" 47 | 48 | [nodejs] 49 | symbol = "❇️ " 50 | detect_files = ["package.json", ".node-version"] 51 | style = "bold green" 52 | 53 | [python] 54 | python_binary = "python3" 55 | symbol = "🐍 " 56 | style = "bold yellow" 57 | 58 | [rust] 59 | symbol = "🦀 " 60 | style = "bold red" 61 | 62 | [package] 63 | disabled = false 64 | symbol = "📦 " 65 | 66 | [cmd_duration] 67 | min_time = 2_000 68 | format = "took [$duration](bold yellow)" 69 | 70 | [memory_usage] 71 | disabled = false 72 | threshold = 70 73 | symbol = "🐏" 74 | style = "bold dimmed white" 75 | 76 | [time] 77 | disabled = false 78 | format = '🕙[\[ $time \]]($style) ' 79 | time_format = "%T" 80 | style = "bold yellow" --------------------------------------------------------------------------------