Update fisher & tide, add VS Code configs, add partial i3 config (lock (and suspend) not done)

This commit is contained in:
askiiart 2023-11-19 14:34:47 -06:00
parent 63e8262c07
commit 15f30efa7b
Signed by untrusted user who does not match committer: askiiart
GPG key ID: BC3800E55FB54D67
72 changed files with 1278 additions and 454 deletions

1
.gitignore vendored
View file

@ -1 +0,0 @@
fish/fish_variables

View file

@ -7,3 +7,8 @@ My dotfiles for:
- kitty
- nvim
- gpg
-
## Other stuff
Tide prompt command: `tide configure --auto --style=Classic --prompt_colors='True color' --classic_prompt_color=Dark --show_time='24-hour format' --classic_prompt_separators=Vertical --powerline_prompt_heads=Sharp --powerline_prompt_tails=Flat --powerline_prompt_style='One line' --prompt_spacing=Compact --icons='Many icons' --transient=No`

25
arch-i3.sh Executable file
View file

@ -0,0 +1,25 @@
#!/usr/bin/env bash
if [ $(whoami) == "root" ]; then
echo "Run as a normal user, not root"
exit 1
fi
GIT_DIR=$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")" &>/dev/null && pwd)
# gnome-keyring for VS Code
yay -S gnome-keyring --noconfirm --needed
#sed '/Identifier "libinput touchpad catchall"/a \ \ \ \ \ \ \ \ Option "NaturalScrolling" "True"' /usr/share/X11/xorg.conf.d/40-libinput.conf | sudo tee /usr/share/X11/xorg.conf.d/40-libinput.conf
#sed '/Identifier "libinput touchpad catchall"/a \ \ \ \ \ \ \ \ Option "Tapping" "on"' /usr/share/X11/xorg.conf.d/40-libinput.conf | sudo tee /usr/share/X11/xorg.conf.d/40-libinput.conf
#sed '/Identifier "libinput touchpad catchall"/a \ \ \ \ \ \ \ \ Option "TappingButtonMap" "lrm"' /usr/share/X11/xorg.conf.d/40-libinput.conf | sudo tee /usr/share/X11/xorg.conf.d/40-libinput.conf
yay -S gnome-themes-extra --noconfirm --needed
yay -S j4-dmenu-desktop --noconfirm --needed
# Install catppuccin grub theme
git clone https://github.com/catppuccin/grub
sudo cp -r ./grub/src/* /usr/share/grub/themes/
rm -rf grub/
echo /etc/default/grub | sudo xargs sed -i 's/#GRUB_THEME="\/path\/to\/gfxtheme"/GRUB_THEME=\/usr\/share\/grub\/themes\/catppuccin-mocha-grub-theme\/theme.txt/g'
sudo cp $GIT_DIR/other-files/suspend@.service /etc/systemd/system/
sudo systemctl enable suspend@$(whoami).service

View file

@ -6,9 +6,12 @@ rm -rf $GIT_DIR/kitty
rm -rf $GIT_DIR/nvim
rm -rf $GIT_DIR/gnupg
rm -rf $GIT_DIR/VencordDesktop
rm -rf $GIT_DIR/vscode
rm -rf $GIT_DIR/i3
cp -r $HOME/.config/fish/ $GIT_DIR
mv $GIT_DIR/fish/conf.d/universal.fish $GIT_DIR/universal-shellrc.txt
cp -r $HOME/.config/kitty/ $GIT_DIR
cp -r $HOME/.config/nvim/ $GIT_DIR
cp -r $HOME/.config/VencordDesktop/VencordDesktop/ $GIT_DIR
@ -16,3 +19,10 @@ cp -r $HOME/.config/VencordDesktop/VencordDesktop/ $GIT_DIR
mkdir $GIT_DIR/gnupg
cp $HOME/.gnupg/gpg.conf $GIT_DIR/gnupg/
cp $HOME/.gnupg/gpg-agent.conf $GIT_DIR/gnupg/
mkdir $GIT_DIR/vscode
code --list-extensions >$GIT_DIR/vscode/extensions.txt
cp $HOME/.config/Code/User/keybindings.json ./vscode/keybindings.json
cp $HOME/.config/Code/User/settings.json ./vscode/settings.json
cp -r $HOME/.config/i3/ .

View file

@ -1,9 +1,10 @@
complete tide --no-files
set -l subcommands bug-report configure
set -l subcommands bug-report configure reload
complete tide -x -n __fish_use_subcommand -a bug-report -d "Print info for use in bug reports"
complete tide -x -n __fish_use_subcommand -a configure -d "Run the configuration wizard"
complete tide -x -n __fish_use_subcommand -a reload -d "Reload tide configuration"
complete tide -x -n "not __fish_seen_subcommand_from $subcommands" -s h -l help -d "Print help message"
complete tide -x -n "not __fish_seen_subcommand_from $subcommands" -s v -l version -d "Print tide version"

View file

@ -11,7 +11,7 @@ function _tide_init_install --on-event _tide_init_install
if contains ilancosman/tide (string lower $_fisher_plugins)
set_color bryellow
echo "ilancosman/tide is a development branch. Please install from a release tag:"
echo -ns "fisher install ilancosman/tide@v5" | fish_indent --ansi
_tide_fish_colorize "fisher install ilancosman/tide@v6"
sleep 3
end
@ -19,7 +19,7 @@ function _tide_init_install --on-event _tide_init_install
case y ye yes ''
tide configure
case '*'
echo -s \n 'Run ' (echo -ns "tide configure" | fish_indent --ansi) ' to customize your prompt.'
echo -s \n 'Run ' (_tide_fish_colorize "tide configure") ' to customize your prompt.'
end
end
end
@ -29,7 +29,7 @@ function _tide_init_update --on-event _tide_init_update
if contains ilancosman/tide (string lower $_fisher_plugins)
set_color bryellow
echo "ilancosman/tide is a development branch. Please install from a release tag:"
echo -ns "fisher install ilancosman/tide@v5" | fish_indent --ansi
_tide_fish_colorize "fisher install ilancosman/tide@v6"
sleep 3
end
end

View file

@ -1,2 +1 @@
jorgebucaran/fisher
ilancosman/tide@v5
ilancosman/tide@v6

201
fish/fish_variables Normal file
View file

@ -0,0 +1,201 @@
# This file contains fish universal variable definitions.
# VERSION: 3.0
SETUVAR VIRTUAL_ENV_DISABLE_PROMPT:true
SETUVAR __fish_initialized:3400
SETUVAR _fisher_ilancosman_2F_tide_40_v6_files:\x7e/\x2econfig/fish/functions/_tide_1_line_prompt\x2efish\x1e\x7e/\x2econfig/fish/functions/_tide_2_line_prompt\x2efish\x1e\x7e/\x2econfig/fish/functions/_tide_cache_variables\x2efish\x1e\x7e/\x2econfig/fish/functions/_tide_detect_os\x2efish\x1e\x7e/\x2econfig/fish/functions/_tide_find_and_remove\x2efish\x1e\x7e/\x2econfig/fish/functions/_tide_fish_colorize\x2efish\x1e\x7e/\x2econfig/fish/functions/_tide_item_aws\x2efish\x1e\x7e/\x2econfig/fish/functions/_tide_item_character\x2efish\x1e\x7e/\x2econfig/fish/functions/_tide_item_cmd_duration\x2efish\x1e\x7e/\x2econfig/fish/functions/_tide_item_context\x2efish\x1e\x7e/\x2econfig/fish/functions/_tide_item_crystal\x2efish\x1e\x7e/\x2econfig/fish/functions/_tide_item_direnv\x2efish\x1e\x7e/\x2econfig/fish/functions/_tide_item_distrobox\x2efish\x1e\x7e/\x2econfig/fish/functions/_tide_item_docker\x2efish\x1e\x7e/\x2econfig/fish/functions/_tide_item_elixir\x2efish\x1e\x7e/\x2econfig/fish/functions/_tide_item_gcloud\x2efish\x1e\x7e/\x2econfig/fish/functions/_tide_item_git\x2efish\x1e\x7e/\x2econfig/fish/functions/_tide_item_go\x2efish\x1e\x7e/\x2econfig/fish/functions/_tide_item_java\x2efish\x1e\x7e/\x2econfig/fish/functions/_tide_item_jobs\x2efish\x1e\x7e/\x2econfig/fish/functions/_tide_item_kubectl\x2efish\x1e\x7e/\x2econfig/fish/functions/_tide_item_nix_shell\x2efish\x1e\x7e/\x2econfig/fish/functions/_tide_item_node\x2efish\x1e\x7e/\x2econfig/fish/functions/_tide_item_os\x2efish\x1e\x7e/\x2econfig/fish/functions/_tide_item_php\x2efish\x1e\x7e/\x2econfig/fish/functions/_tide_item_private_mode\x2efish\x1e\x7e/\x2econfig/fish/functions/_tide_item_pulumi\x2efish\x1e\x7e/\x2econfig/fish/functions/_tide_item_python\x2efish\x1e\x7e/\x2econfig/fish/functions/_tide_item_ruby\x2efish\x1e\x7e/\x2econfig/fish/functions/_tide_item_rustc\x2efish\x1e\x7e/\x2econfig/fish/functions/_tide_item_shlvl\x2efish\x1e\x7e/\x2econfig/fish/functions/_tide_item_status\x2efish\x1e\x7e/\x2econfig/fish/functions/_tide_item_terraform\x2efish\x1e\x7e/\x2econfig/fish/functions/_tide_item_time\x2efish\x1e\x7e/\x2econfig/fish/functions/_tide_item_toolbox\x2efish\x1e\x7e/\x2econfig/fish/functions/_tide_item_vi_mode\x2efish\x1e\x7e/\x2econfig/fish/functions/_tide_parent_dirs\x2efish\x1e\x7e/\x2econfig/fish/functions/_tide_print_item\x2efish\x1e\x7e/\x2econfig/fish/functions/_tide_pwd\x2efish\x1e\x7e/\x2econfig/fish/functions/_tide_remove_unusable_items\x2efish\x1e\x7e/\x2econfig/fish/functions/_tide_sub_bug\x2dreport\x2efish\x1e\x7e/\x2econfig/fish/functions/_tide_sub_configure\x2efish\x1e\x7e/\x2econfig/fish/functions/_tide_sub_reload\x2efish\x1e\x7e/\x2econfig/fish/functions/fish_mode_prompt\x2efish\x1e\x7e/\x2econfig/fish/functions/fish_prompt\x2efish\x1e\x7e/\x2econfig/fish/functions/tide\x1e\x7e/\x2econfig/fish/functions/tide\x2efish\x1e\x7e/\x2econfig/fish/conf\x2ed/_tide_init\x2efish\x1e\x7e/\x2econfig/fish/completions/tide\x2efish
SETUVAR _fisher_plugins:ilancosman/tide\x40v6
SETUVAR _fisher_upgraded_to_4_4:\x1d
SETUVAR _tide_left_items:vi_mode\x1eos\x1epwd\x1egit
SETUVAR _tide_prompt_11632:\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x5b38\x3b2\x3b48\x3b48\x3b48m\x1b\x5b38\x3b2\x3b238\x3b238\x3b238m\x1b\x5b48\x3b2\x3b48\x3b48\x3b48m\x20\uf303\x20\x1b\x5b38\x3b2\x3b148\x3b148\x3b148m\u2502\x1b\x5b48\x3b2\x3b48\x3b48\x3b48m\x20\x40PWD\x40\x20\x1b\x5b38\x3b2\x3b148\x3b148\x3b148m\u2502\x1b\x5b48\x3b2\x3b48\x3b48\x3b48m\x20\x1b\x5b38\x3b2\x3b95\x3b215\x3b0m\uf1d3\x20\x1b\x5b37m\x1b\x5b38\x3b2\x3b95\x3b215\x3b0mmain\x1b\x5b38\x3b2\x3b255\x3b0\x3b0m\x1b\x5b38\x3b2\x3b95\x3b215\x3b0m\x1b\x5b38\x3b2\x3b95\x3b215\x3b0m\x1b\x5b38\x3b2\x3b255\x3b0\x3b0m\x1b\x5b38\x3b2\x3b215\x3b175\x3b0m\x20\x2b57\x1b\x5b38\x3b2\x3b215\x3b175\x3b0m\x20\x212\x1b\x5b38\x3b2\x3b0\x3b175\x3b255m\x20\x3f1\x20\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x5b38\x3b2\x3b48\x3b48\x3b48m\ue0b0\x1e\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x5b38\x3b2\x3b48\x3b48\x3b48m\ue0b2\x1b\x5b38\x3b2\x3b95\x3b175\x3b0m\x1b\x5b48\x3b2\x3b48\x3b48\x3b48m\x20\u2714\x20\x1b\x5b38\x3b2\x3b148\x3b148\x3b148m\u2502\x1b\x5b38\x3b2\x3b95\x3b135\x3b135m\x1b\x5b48\x3b2\x3b48\x3b48\x3b48m\x2017\x3a49\x3a16\x20\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x5b38\x3b2\x3b48\x3b48\x3b48m
SETUVAR _tide_prompt_62734:\x1b\x5bm\x0f\x1b\x5bm\x0f\x1b\x5b30m\x1b\x5b37m\x1b\x5b40m\x20\uf303\x20\x1b\x5b90m\u2502\x1b\x5b40m\x20\x40PWD\x40\x20\x1b\x5bm\x0f\x1b\x5bm\x0f\x1b\x5b30m\ue0b0\x1e\x1b\x5bm\x0f\x1b\x5bm\x0f\x1b\x5b30m\ue0b2\x1b\x5b33m\x1b\x5b40m\x20\u2714\x20\x1b\x5b90m\u2502\x1b\x5b90m\x1b\x5b40m\x2021\x3a34\x3a42\x20\x1b\x5bm\x0f\x1b\x5bm\x0f\x1b\x5b30m
SETUVAR _tide_prompt_65309:\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x5b38\x3b2\x3b48\x3b48\x3b48m\x1b\x5b38\x3b2\x3b238\x3b238\x3b238m\x1b\x5b48\x3b2\x3b48\x3b48\x3b48m\x20\uf303\x20\x1b\x5b38\x3b2\x3b148\x3b148\x3b148m\u2502\x1b\x5b48\x3b2\x3b48\x3b48\x3b48m\x20\x40PWD\x40\x20\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x5b38\x3b2\x3b48\x3b48\x3b48m\ue0b0\x1e\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x5b38\x3b2\x3b48\x3b48\x3b48m\ue0b2\x1b\x5b38\x3b2\x3b95\x3b175\x3b0m\x1b\x5b48\x3b2\x3b48\x3b48\x3b48m\x20\u2714\x20\x1b\x5b38\x3b2\x3b148\x3b148\x3b148m\u2502\x1b\x5b38\x3b2\x3b135\x3b135\x3b95m\x1b\x5b48\x3b2\x3b48\x3b48\x3b48m\x20\uf252\x2020m\x208s\x20\x1b\x5b38\x3b2\x3b148\x3b148\x3b148m\u2502\x1b\x5b38\x3b2\x3b95\x3b135\x3b135m\x1b\x5b48\x3b2\x3b48\x3b48\x3b48m\x2023\x3a26\x3a55\x20\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x5b38\x3b2\x3b48\x3b48\x3b48m
SETUVAR _tide_prompt_72705:\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x5b38\x3b2\x3b48\x3b48\x3b48m\x1b\x5b38\x3b2\x3b238\x3b238\x3b238m\x1b\x5b48\x3b2\x3b48\x3b48\x3b48m\x20\uf303\x20\x1b\x5b38\x3b2\x3b148\x3b148\x3b148m\u2502\x1b\x5b48\x3b2\x3b48\x3b48\x3b48m\x20\x40PWD\x40\x20\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x5b38\x3b2\x3b48\x3b48\x3b48m\ue0b0\x1e\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x5b38\x3b2\x3b48\x3b48\x3b48m\ue0b2\x1b\x5b38\x3b2\x3b95\x3b175\x3b0m\x1b\x5b48\x3b2\x3b48\x3b48\x3b48m\x20\u2714\x20\x1b\x5b38\x3b2\x3b148\x3b148\x3b148m\u2502\x1b\x5b38\x3b2\x3b135\x3b135\x3b95m\x1b\x5b48\x3b2\x3b48\x3b48\x3b48m\x20\uf252\x204s\x20\x1b\x5b38\x3b2\x3b148\x3b148\x3b148m\u2502\x1b\x5b38\x3b2\x3b95\x3b135\x3b135m\x1b\x5b48\x3b2\x3b48\x3b48\x3b48m\x2023\x3a26\x3a55\x20\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x5b38\x3b2\x3b48\x3b48\x3b48m
SETUVAR _tide_prompt_79251:\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x5b38\x3b2\x3b48\x3b48\x3b48m\x1b\x5b38\x3b2\x3b238\x3b238\x3b238m\x1b\x5b48\x3b2\x3b48\x3b48\x3b48m\x20\uf303\x20\x1b\x5b38\x3b2\x3b148\x3b148\x3b148m\u2502\x1b\x5b48\x3b2\x3b48\x3b48\x3b48m\x20\x40PWD\x40\x20\x1b\x5b38\x3b2\x3b148\x3b148\x3b148m\u2502\x1b\x5b48\x3b2\x3b48\x3b48\x3b48m\x20\x1b\x5b38\x3b2\x3b95\x3b215\x3b0m\uf1d3\x20\x1b\x5b37m\x40\x1b\x5b38\x3b2\x3b95\x3b215\x3b0ma8b612c\x1b\x5b38\x3b2\x3b255\x3b0\x3b0m\x1b\x5b38\x3b2\x3b95\x3b215\x3b0m\x1b\x5b38\x3b2\x3b95\x3b215\x3b0m\x1b\x5b38\x3b2\x3b255\x3b0\x3b0m\x1b\x5b38\x3b2\x3b215\x3b175\x3b0m\x1b\x5b38\x3b2\x3b215\x3b175\x3b0m\x20\x213\x1b\x5b38\x3b2\x3b0\x3b175\x3b255m\x20\x3f2\x20\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x5b38\x3b2\x3b48\x3b48\x3b48m\ue0b0\x1e\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x5b38\x3b2\x3b48\x3b48\x3b48m\ue0b2\x1b\x5b38\x3b2\x3b95\x3b175\x3b0m\x1b\x5b48\x3b2\x3b48\x3b48\x3b48m\x20\u2714\x20\x1b\x5b38\x3b2\x3b148\x3b148\x3b148m\u2502\x1b\x5b38\x3b2\x3b95\x3b135\x3b135m\x1b\x5b48\x3b2\x3b48\x3b48\x3b48m\x2023\x3a29\x3a19\x20\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x5b38\x3b2\x3b48\x3b48\x3b48m
SETUVAR _tide_prompt_9469:\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x5b38\x3b2\x3b48\x3b48\x3b48m\x1b\x5b38\x3b2\x3b238\x3b238\x3b238m\x1b\x5b48\x3b2\x3b48\x3b48\x3b48m\x20\uf303\x20\x1b\x5b38\x3b2\x3b148\x3b148\x3b148m\u2502\x1b\x5b48\x3b2\x3b48\x3b48\x3b48m\x20\x40PWD\x40\x20\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x5b38\x3b2\x3b48\x3b48\x3b48m\ue0b0\x1e\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x5b38\x3b2\x3b48\x3b48\x3b48m\ue0b2\x1b\x5b38\x3b2\x3b95\x3b175\x3b0m\x1b\x5b48\x3b2\x3b48\x3b48\x3b48m\x20\u2714\x20\x1b\x5b38\x3b2\x3b148\x3b148\x3b148m\u2502\x1b\x5b38\x3b2\x3b95\x3b135\x3b135m\x1b\x5b48\x3b2\x3b48\x3b48\x3b48m\x2017\x3a40\x3a18\x20\x1b\x28B\x1b\x5bm\x1b\x28B\x1b\x5bm\x1b\x5b38\x3b2\x3b48\x3b48\x3b48m
SETUVAR _tide_right_items:status\x1ecmd_duration\x1econtext\x1ejobs\x1epython\x1etime
SETUVAR fish_color_autosuggestion:555\x1ebrblack
SETUVAR fish_color_cancel:\x2dr
SETUVAR fish_color_command:blue
SETUVAR fish_color_comment:red
SETUVAR fish_color_cwd:green
SETUVAR fish_color_cwd_root:red
SETUVAR fish_color_end:green
SETUVAR fish_color_error:brred
SETUVAR fish_color_escape:brcyan
SETUVAR fish_color_history_current:\x2d\x2dbold
SETUVAR fish_color_host:normal
SETUVAR fish_color_host_remote:yellow
SETUVAR fish_color_normal:normal
SETUVAR fish_color_operator:brcyan
SETUVAR fish_color_param:cyan
SETUVAR fish_color_quote:yellow
SETUVAR fish_color_redirection:cyan\x1e\x2d\x2dbold
SETUVAR fish_color_search_match:bryellow\x1e\x2d\x2dbackground\x3dbrblack
SETUVAR fish_color_selection:white\x1e\x2d\x2dbold\x1e\x2d\x2dbackground\x3dbrblack
SETUVAR fish_color_status:red
SETUVAR fish_color_user:brgreen
SETUVAR fish_color_valid_path:\x2d\x2dunderline
SETUVAR fish_key_bindings:fish_default_key_bindings
SETUVAR fish_pager_color_completion:normal
SETUVAR fish_pager_color_description:B3A06D\x1eyellow\x1e\x2di
SETUVAR fish_pager_color_prefix:normal\x1e\x2d\x2dbold\x1e\x2d\x2dunderline
SETUVAR fish_pager_color_progress:brwhite\x1e\x2d\x2dbackground\x3dcyan
SETUVAR fish_pager_color_selected_background:\x2dr
SETUVAR tide_aws_bg_color:303030
SETUVAR tide_aws_color:FF9900
SETUVAR tide_aws_icon:\uf270
SETUVAR tide_character_color:5FD700
SETUVAR tide_character_color_failure:FF0000
SETUVAR tide_character_icon:\u276f
SETUVAR tide_character_vi_icon_default:\u276e
SETUVAR tide_character_vi_icon_replace:\u25b6
SETUVAR tide_character_vi_icon_visual:V
SETUVAR tide_chruby_bg_color:303030
SETUVAR tide_chruby_color:000000
SETUVAR tide_chruby_icon:\ue23e
SETUVAR tide_cmd_duration_bg_color:303030
SETUVAR tide_cmd_duration_color:87875F
SETUVAR tide_cmd_duration_decimals:0
SETUVAR tide_cmd_duration_icon:\uf252
SETUVAR tide_cmd_duration_threshold:3000
SETUVAR tide_context_always_display:false
SETUVAR tide_context_bg_color:303030
SETUVAR tide_context_color_default:D7AF87
SETUVAR tide_context_color_root:D7AF00
SETUVAR tide_context_color_ssh:D7AF87
SETUVAR tide_context_hostname_parts:1
SETUVAR tide_crystal_bg_color:303030
SETUVAR tide_crystal_color:FFFFFF
SETUVAR tide_crystal_icon:\ue62f
SETUVAR tide_direnv_bg_color:303030
SETUVAR tide_direnv_bg_color_denied:303030
SETUVAR tide_direnv_color:D7AF00
SETUVAR tide_direnv_color_denied:FF0000
SETUVAR tide_direnv_icon:\u25bc
SETUVAR tide_distrobox_bg_color:303030
SETUVAR tide_distrobox_color:FF00FF
SETUVAR tide_distrobox_icon:\U000f01a7
SETUVAR tide_docker_bg_color:303030
SETUVAR tide_docker_color:2496ED
SETUVAR tide_docker_default_contexts:default\x1ecolima
SETUVAR tide_docker_icon:\uf308
SETUVAR tide_elixir_bg_color:303030
SETUVAR tide_elixir_color:4E2A8E
SETUVAR tide_elixir_icon:\ue62d
SETUVAR tide_gcloud_bg_color:303030
SETUVAR tide_gcloud_color:4285F4
SETUVAR tide_gcloud_icon:\U000f02ad
SETUVAR tide_git_bg_color:303030
SETUVAR tide_git_bg_color_unstable:303030
SETUVAR tide_git_bg_color_urgent:303030
SETUVAR tide_git_color_branch:5FD700
SETUVAR tide_git_color_conflicted:FF0000
SETUVAR tide_git_color_dirty:D7AF00
SETUVAR tide_git_color_operation:FF0000
SETUVAR tide_git_color_staged:D7AF00
SETUVAR tide_git_color_stash:5FD700
SETUVAR tide_git_color_untracked:00AFFF
SETUVAR tide_git_color_upstream:5FD700
SETUVAR tide_git_icon:\uf1d3
SETUVAR tide_git_truncation_length:24
SETUVAR tide_git_truncation_strategy:\x1d
SETUVAR tide_go_bg_color:303030
SETUVAR tide_go_color:00ACD7
SETUVAR tide_go_icon:\ue627
SETUVAR tide_java_bg_color:303030
SETUVAR tide_java_color:ED8B00
SETUVAR tide_java_icon:\ue256
SETUVAR tide_jobs_bg_color:303030
SETUVAR tide_jobs_color:5FAF00
SETUVAR tide_jobs_icon:\uf013
SETUVAR tide_kubectl_bg_color:303030
SETUVAR tide_kubectl_color:326CE5
SETUVAR tide_kubectl_icon:\U000f10fe
SETUVAR tide_left_prompt_frame_enabled:false
SETUVAR tide_left_prompt_items:vi_mode\x1eos\x1epwd\x1egit
SETUVAR tide_left_prompt_prefix:
SETUVAR tide_left_prompt_separator_diff_color:\ue0b0
SETUVAR tide_left_prompt_separator_same_color:\u2502
SETUVAR tide_left_prompt_suffix:\ue0b0
SETUVAR tide_nix_shell_bg_color:303030
SETUVAR tide_nix_shell_color:7EBAE4
SETUVAR tide_nix_shell_icon:\uf313
SETUVAR tide_node_bg_color:303030
SETUVAR tide_node_color:44883E
SETUVAR tide_node_icon:\ue24f
SETUVAR tide_os_bg_color:303030
SETUVAR tide_os_color:EEEEEE
SETUVAR tide_os_icon:\uf303
SETUVAR tide_php_bg_color:303030
SETUVAR tide_php_color:617CBE
SETUVAR tide_php_icon:\ue608
SETUVAR tide_private_mode_bg_color:303030
SETUVAR tide_private_mode_color:FFFFFF
SETUVAR tide_private_mode_icon:\U000f05f9
SETUVAR tide_prompt_add_newline_before:false
SETUVAR tide_prompt_color_frame_and_connection:6C6C6C
SETUVAR tide_prompt_color_separator_same_color:949494
SETUVAR tide_prompt_icon_connection:\x20
SETUVAR tide_prompt_min_cols:34
SETUVAR tide_prompt_pad_items:true
SETUVAR tide_prompt_transient_enabled:false
SETUVAR tide_pulumi_bg_color:303030
SETUVAR tide_pulumi_color:F7BF2A
SETUVAR tide_pulumi_icon:\uf1b2
SETUVAR tide_pwd_bg_color:303030
SETUVAR tide_pwd_color_anchors:00AFFF
SETUVAR tide_pwd_color_dirs:0087AF
SETUVAR tide_pwd_color_truncated_dirs:8787AF
SETUVAR tide_pwd_icon:\uf07c
SETUVAR tide_pwd_icon_home:\uf015
SETUVAR tide_pwd_icon_unwritable:\uf023
SETUVAR tide_pwd_markers:\x2ebzr\x1e\x2ecitc\x1e\x2egit\x1e\x2ehg\x1e\x2enode\x2dversion\x1e\x2epython\x2dversion\x1e\x2eruby\x2dversion\x1e\x2eshorten_folder_marker\x1e\x2esvn\x1e\x2eterraform\x1eCargo\x2etoml\x1ecomposer\x2ejson\x1eCVS\x1ego\x2emod\x1epackage\x2ejson
SETUVAR tide_python_bg_color:303030
SETUVAR tide_python_color:00AFAF
SETUVAR tide_python_icon:\U000f0320
SETUVAR tide_right_prompt_frame_enabled:false
SETUVAR tide_right_prompt_items:status\x1ecmd_duration\x1econtext\x1ejobs\x1edirenv\x1enode\x1epython\x1erustc\x1ejava\x1ephp\x1epulumi\x1eruby\x1ego\x1egcloud\x1ekubectl\x1edistrobox\x1etoolbox\x1eterraform\x1eaws\x1enix_shell\x1ecrystal\x1eelixir\x1etime
SETUVAR tide_right_prompt_prefix:\ue0b2
SETUVAR tide_right_prompt_separator_diff_color:\ue0b2
SETUVAR tide_right_prompt_separator_same_color:\u2502
SETUVAR tide_right_prompt_suffix:
SETUVAR tide_ruby_bg_color:303030
SETUVAR tide_ruby_color:B31209
SETUVAR tide_ruby_icon:\ue23e
SETUVAR tide_rustc_bg_color:303030
SETUVAR tide_rustc_color:F74C00
SETUVAR tide_rustc_icon:\ue7a8
SETUVAR tide_shlvl_bg_color:303030
SETUVAR tide_shlvl_color:d78700
SETUVAR tide_shlvl_icon:\uf120
SETUVAR tide_shlvl_threshold:1
SETUVAR tide_status_bg_color:303030
SETUVAR tide_status_bg_color_failure:303030
SETUVAR tide_status_color:5FAF00
SETUVAR tide_status_color_failure:D70000
SETUVAR tide_status_icon:\u2714
SETUVAR tide_status_icon_failure:\u2718
SETUVAR tide_terraform_bg_color:303030
SETUVAR tide_terraform_color:844FBA
SETUVAR tide_terraform_icon:\x1d
SETUVAR tide_time_bg_color:303030
SETUVAR tide_time_color:5F8787
SETUVAR tide_time_format:\x25T
SETUVAR tide_toolbox_bg_color:303030
SETUVAR tide_toolbox_color:613583
SETUVAR tide_toolbox_icon:\ue24f
SETUVAR tide_vi_mode_bg_color_default:303030
SETUVAR tide_vi_mode_bg_color_insert:303030
SETUVAR tide_vi_mode_bg_color_replace:303030
SETUVAR tide_vi_mode_bg_color_visual:303030
SETUVAR tide_vi_mode_color_default:949494
SETUVAR tide_vi_mode_color_insert:87AFAF
SETUVAR tide_vi_mode_color_replace:87AF87
SETUVAR tide_vi_mode_color_visual:FF8700
SETUVAR tide_vi_mode_icon_default:D
SETUVAR tide_vi_mode_icon_insert:I
SETUVAR tide_vi_mode_icon_replace:R
SETUVAR tide_vi_mode_icon_visual:V
SETUVAR tide_virtual_env_bg_color:303030
SETUVAR tide_virtual_env_color:00AFAF
SETUVAR tide_virtual_env_icon:\ue73c

View file

@ -69,6 +69,8 @@ function _tide_detect_os_linux_cases -a file key
printf %s\n$defaultColor # Doesn't really have a logo, and the colors are too close to PWD blue anyway
case ubuntu
printf %s\n  E95420 D4D4D4 # https://design.ubuntu.com/brand/
case void
printf %s\n  FFFFFF 478061 # from https://alpha.de.repo.voidlinux.org/logos/void.svg
case '*'
return 1
end

View file

@ -0,0 +1,7 @@
function _tide_fish_colorize
if command -q fish_indent
echo -ns "$argv" | fish_indent --ansi
else
echo -ns "$argv"
end
end

View file

@ -1,3 +0,0 @@
function _tide_item_chruby
test -n "$RUBY_VERSION" && _tide_print_item chruby $tide_chruby_icon' ' $RUBY_VERSION
end

View file

@ -1,15 +1,14 @@
function _tide_item_context
if set -q SSH_TTY
set -lx tide_context_color $tide_context_color_ssh
test "$tide_context_hostname_parts" = 0 && _tide_print_item context $USER ||
h=(string split . $hostname) _tide_print_item context $USER@(string join . $h[..$tide_context_hostname_parts])
set -fx tide_context_color $tide_context_color_ssh
else if test "$EUID" = 0
set -lx tide_context_color $tide_context_color_root
test "$tide_context_hostname_parts" = 0 && _tide_print_item context $USER ||
h=(string split . $hostname) _tide_print_item context $USER@(string join . $h[..$tide_context_hostname_parts])
set -fx tide_context_color $tide_context_color_root
else if test "$tide_context_always_display" = true
set -lx tide_context_color $tide_context_color_default
test "$tide_context_hostname_parts" = 0 && _tide_print_item context $USER ||
h=(string split . $hostname) _tide_print_item context $USER@(string join . $h[..$tide_context_hostname_parts])
set -fx tide_context_color $tide_context_color_default
else
return
end
string match -qr "^(?<h>(\.?[^\.]*){0,$tide_context_hostname_parts})" @$hostname
_tide_print_item context $USER$h
end

View file

@ -1,4 +1,6 @@
function _tide_item_crystal
path is $_tide_parent_dirs/shard.yml &&
_tide_print_item crystal $tide_crystal_icon' ' (crystal --version | string match -r "[\d.]+")[1]
if path is $_tide_parent_dirs/shard.yml
crystal --version | string match -qr "(?<v>[\d.]+)"
_tide_print_item crystal $tide_crystal_icon' ' $v
end
end

View file

@ -14,12 +14,17 @@ function _tide_item_git
# Operation
if test -d $gdir/rebase-merge
read -f step <$gdir/rebase-merge/msgnum
read -f total_steps <$gdir/rebase-merge/end
# Turn ANY into ALL, via double negation
if not path is -v $gdir/rebase-merge/{msgnum,end}
read -f step <$gdir/rebase-merge/msgnum
read -f total_steps <$gdir/rebase-merge/end
end
test -f $gdir/rebase-merge/interactive && set -f operation rebase-i || set -f operation rebase-m
else if test -d $gdir/rebase-apply
read -f step <$gdir/rebase-apply/next
read -f total_steps <$gdir/rebase-apply/last
if not path is -v $gdir/rebase-apply/{next,last}
read -f step <$gdir/rebase-apply/next
read -f total_steps <$gdir/rebase-apply/last
end
if test -f $gdir/rebase-apply/rebasing
set -f operation rebase
else if test -f $gdir/rebase-apply/applying

View file

@ -1,4 +1,6 @@
function _tide_item_go
path is $_tide_parent_dirs/go.mod &&
_tide_print_item go $tide_go_icon' ' (go version | string match -r "[\d.]+")
if path is $_tide_parent_dirs/go.mod
go version | string match -qr "(?<v>[\d.]+)"
_tide_print_item go $tide_go_icon' ' $v
end
end

View file

@ -1,4 +1,6 @@
function _tide_item_java
path is $_tide_parent_dirs/pom.xml &&
_tide_print_item java $tide_java_icon' ' (java -version &| string match -r "[\d.]+")[1]
if path is $_tide_parent_dirs/pom.xml
java -version &| string match -qr "(?<v>[\d.]+)"
_tide_print_item java $tide_java_icon' ' $v
end
end

View file

@ -1,4 +1,6 @@
function _tide_item_node
path is $_tide_parent_dirs/package.json &&
_tide_print_item node $tide_node_icon' ' (node --version | string trim --chars=v)
if path is $_tide_parent_dirs/package.json
node --version | string match -qr "v(?<v>.*)"
_tide_print_item node $tide_node_icon' ' $v
end
end

View file

@ -1,4 +1,6 @@
function _tide_item_php
path is $_tide_parent_dirs/composer.json &&
_tide_print_item php $tide_php_icon' ' (php --version | string match -r 'PHP ([\d.]+)')[2]
if path is $_tide_parent_dirs/composer.json
php --version | string match -qr "(?<v>[\d.]+)"
_tide_print_item php $tide_php_icon' ' $v
end
end

View file

@ -1,19 +1,19 @@
function _tide_item_pulumi
if path filter $_tide_parent_dirs/Pulumi.yaml | read -l yaml_path
if command -q sha1sum
echo -n "$yaml_path" | sha1sum | string sub -e40 | read -f path_hash
echo -n "$yaml_path" | sha1sum | string match -qr "(?<path_hash>.{40})"
else if command -q shasum
echo -n "$yaml_path" | shasum | string sub -e40 | read -f path_hash
echo -n "$yaml_path" | shasum | string match -qr "(?<path_hash>.{40})"
else
return
end
if test -n "$path_hash"
string match -rg 'name: *(.*)' <$yaml_path | read -l project_name
set -l workspace_file "$HOME/.pulumi/workspaces/$project_name-$path_hash-workspace.json"
string match -qr 'name: *(?<project_name>.*)' <$yaml_path
set -l workspace_file "$HOME/.pulumi/workspaces/$project_name-$path_hash-workspace.json"
if test -e $workspace_file
string match -rg '"stack": *"(.*)"' <$workspace_file | read -l stack
_tide_print_item pulumi $tide_pulumi_icon' ' $stack
end
if test -e $workspace_file
string match -qr '"stack": *"(?<stack>.*)"' <$workspace_file
_tide_print_item pulumi $tide_pulumi_icon' ' $stack
end
end
end

View file

@ -0,0 +1,20 @@
function _tide_item_python
if test -n "$VIRTUAL_ENV"
python --version | string match -qr "(?<v>[\d.]+)"
string match -qr "^.*/(?<dir>.*)/(?<base>.*)" $VIRTUAL_ENV
# pipenv $VIRTUAL_ENV looks like /home/ilan/.local/share/virtualenvs/pipenv_project-EwRYuc3l
# Detect whether we are using pipenv by looking for 'virtualenvs'. If so, remove the hash at the end.
if test "$dir" = virtualenvs
string match -qr "(?<base>.*)-.*" $base
_tide_print_item python $tide_python_icon' ' "$v ($base)"
else if contains -- "$base" virtualenv venv .venv env # avoid generic names
_tide_print_item python $tide_python_icon' ' "$v ($dir)"
else
_tide_print_item python $tide_python_icon' ' "$v ($base)"
end
else if path is .python-version Pipfile __init__.py pyproject.toml requirements.txt setup.py
python --version | string match -qr "(?<v>[\d.]+)"
_tide_print_item python $tide_python_icon' ' $v
end
end

View file

@ -0,0 +1,6 @@
function _tide_item_ruby
if path is $_tide_parent_dirs/{*.gemspec,Gemfile,Rakefile,.ruby-version}
ruby --version | string match -qr "(?<v>[\d.]+)"
_tide_print_item ruby $tide_ruby_icon' ' $v
end
end

View file

@ -1,4 +1,6 @@
function _tide_item_rustc
path is $_tide_parent_dirs/Cargo.toml &&
_tide_print_item rustc $tide_rustc_icon' ' (rustc --version | string split ' ')[2]
if path is $_tide_parent_dirs/Cargo.toml
rustc --version | string match -qr "(?<v>[\d.]+)"
_tide_print_item rustc $tide_rustc_icon' ' $v
end
end

View file

@ -1,11 +0,0 @@
function _tide_item_virtual_env
test -n "$VIRTUAL_ENV" && split_virtual_env=(string split / "$VIRTUAL_ENV") if test $split_virtual_env[-2] = virtualenvs
# pipenv $VIRTUAL_ENV looks like /home/ilan/.local/share/virtualenvs/pipenv_project-EwRYuc3l
# Detect whether we are using pipenv by looking for virtualenvs. If so, remove the hash at the end.
_tide_print_item virtual_env $tide_virtual_env_icon' ' (string split -r -m1 - "$split_virtual_env[-1]")[1]
else if contains -- $split_virtual_env[-1] virtualenv venv .venv env # avoid generic names
_tide_print_item virtual_env $tide_virtual_env_icon' ' $split_virtual_env[-2]
else
_tide_print_item virtual_env $tide_virtual_env_icon' ' $split_virtual_env[-1]
end
end

View file

@ -25,9 +25,13 @@ eval "function _tide_pwd
if path is \$parent_dir/\$dir_section/\$tide_pwd_markers
set split_output[\$i] \"$color_anchors\$dir_section$reset_to_color_dirs\"
else if test \$_tide_pwd_len -gt \$dist_btwn_sides
set -l trunc
string match -qr \"(?<trunc>\..|.)\" \$dir_section
while v=\$parent_dir/\$trunc*/ set -q v[2] && string match -qr \"(?<trunc>\$trunc.)\" \$dir_section
set -l glob \$parent_dir/\$trunc*/
set -e glob[(contains -i \$parent_dir/\$dir_section/ \$glob)] # This is faster than inverse string match
while string match -qr \"^\$parent_dir/\$(string escape --style=regex \$trunc)\" \$glob &&
string match -qr \"(?<trunc>\$(string escape --style=regex \$trunc).)\" \$dir_section
end
test -n \"\$trunc\" && set split_output[\$i] \"$color_truncated\$trunc$reset_to_color_dirs\" &&
string join / \$split_output | string length -V | read _tide_pwd_len

View file

@ -1,17 +1,17 @@
function _tide_remove_unusable_items
# Remove tool-specific items for tools the machine doesn't have installed
set -l removed_items
for item in aws chruby crystal direnv distrobox docker elixir gcloud git go java kubectl nix_shell node php pulumi rustc terraform toolbox virtual_env
for item in aws crystal direnv distrobox docker elixir gcloud git go java kubectl nix_shell node php pulumi python ruby rustc terraform toolbox
contains $item $tide_left_prompt_items $tide_right_prompt_items || continue
set -l cli_names $item
switch $item
case distrobox # there is no 'distrobox' command inside the container
set cli_names distrobox-export # 'distrobox-export' and 'distrobox-host-exec' are available
case virtual_env
set cli_names python python3
case nix_shell
set cli_names nix nix-shell
case python
set cli_names python python3
end
type --query $cli_names || set -a removed_items $item
end

View file

@ -6,7 +6,7 @@ function _tide_sub_bug-report
if set -q _flag_clean
HOME=(mktemp -d) $fish_path --init-command "curl --silent \
https://raw.githubusercontent.com/jorgebucaran/fisher/main/functions/fisher.fish |
source && fisher install ilancosman/tide@v5"
source && fisher install ilancosman/tide@v6"
else if set -q _flag_verbose
set --long | string match -r "^_?tide.*" | # Get only tide variables
string match -r --invert "^_tide_prompt_var.*" # Remove _tide_prompt_var

View file

@ -15,7 +15,16 @@ for file in (status dirname)/tide/configure/{choices, functions}/**.fish
end
function _tide_sub_configure
if test $COLUMNS -lt 55 -o $LINES -lt 21
set -l choices (path basename (status dirname)/tide/configure/choices/**.fish | path change-extension '')
argparse auto $choices= -- $argv
for var in (set -l --names | string match -e _flag)
set -x $var $$var
end
if set -q _flag_auto
set -fx _flag_finish 'Overwrite your current tide config'
else if test $COLUMNS -lt 55 -o $LINES -lt 21
echo 'Terminal size too small; must be at least 55 x 21'
return 1
end
@ -37,51 +46,86 @@ function _next_choice -a nextChoice
end
function _tide_title -a text
set -q _flag_auto && return
command -q clear && clear
set_color -o
string pad --width (math --scale=0 "$fake_columns/2" + (string length $text)/2) $text
set_color normal
set -g _tide_configure_first_option_after_title
end
function _tide_option -a symbol text
set -ga _tide_option_list $symbol
set -ga _tide_symbol_list $symbol
set -ga _tide_option_list $text
set_color -o
echo "($symbol) $text"
set_color normal
if not set -q _flag_auto
set -g _tide_configure_first_prompt_after_option
set_color -o
set -e _tide_configure_first_option_after_title || echo
echo "($symbol) $text"
set_color normal
end
end
function _tide_menu
set -l list_with_slashes (string join '/' $_tide_option_list)
function _tide_menu -a func
if set -q _flag_auto
set -l flag_var_name _flag_$func
set -g _tide_selected_option $$flag_var_name
echo '(r) Restart from the beginning'
if test -z "$_tide_selected_option"
echo "Missing input for choice '$func'"
_tide_exit_configure
else if not contains $_tide_selected_option $_tide_option_list
echo "Invalid input '$_tide_selected_option' for choice '$func'"
_tide_exit_configure
else
set -e _tide_symbol_list
set -e _tide_option_list
end
return
end
argparse no-restart -- $argv # Add no-restart option for first menu
echo
if not set -q _flag_no_restart
set -f r r
echo '(r) Restart from the beginning'
end
echo '(q) Quit and do nothing'\n
while true
set_color -o
read --nchars 1 --prompt-str "Choice [$list_with_slashes/r/q] " input
set_color normal
while read --nchars 1 --prompt-str \
"$(set_color -o)Choice [$(string join '/' $_tide_symbol_list $r q)] $(set_color normal)" input
switch $input
case r
set -q _flag_no_restart && continue
set -e _tide_symbol_list
set -e _tide_option_list
_next_choice all/style
break
case q
set -e _tide_selected_option # Skip through all the _next_choices
_tide_exit_configure
set -e _tide_symbol_list
set -e _tide_option_list
command -q clear && clear
break
case $_tide_option_list
case $_tide_symbol_list
set -g _tide_selected_option $_tide_option_list[(contains -i $input $_tide_symbol_list)]
test "$func" != finish &&
set -a _tide_configure_current_options --$func=(string escape $_tide_selected_option)
set -e _tide_symbol_list
set -e _tide_option_list
set -g _tide_selected_option $input
break
end
end
end
function _tide_display_prompt -a var_name var_value
test -n "$var_name" && set -g $var_name $var_value
function _tide_display_prompt
set -q _flag_auto && return
_fake_tide_cache_variables
set -l prompt (_fake_tide_prompt)
@ -89,7 +133,24 @@ function _tide_display_prompt -a var_name var_value
set -l right_prompt_string (string pad --width (math $fake_columns-$bottom_left_prompt_string_length) $prompt[1])
set -l prompt[-1] "$prompt[-1]$right_prompt_string"
string unescape $prompt[2..]
if set -q _configure_transient
if contains newline $fake_tide_left_prompt_items
string unescape $prompt[3..]
else
_fake_tide_item_character
echo
end
else
if not set -q _tide_configure_first_prompt_after_option
test "$fake_tide_prompt_add_newline_before" = true && echo
end
string unescape $prompt[2..]
end
set -e _tide_configure_first_prompt_after_option
set_color normal
echo
end
function _tide_exit_configure
set -e _tide_selected_option # Skip through all switch and _next_choice
end

View file

@ -0,0 +1,3 @@
function _tide_sub_reload
source (functions --details fish_prompt)
end

View file

@ -34,7 +34,36 @@ if contains newline $_tide_left_items # two line prompt initialization
set -l bot_right_frame "$prompt_and_frame_color─╯" &&
set column_offset (math $column_offset-2)
eval "
if test "$tide_prompt_transient_enabled" = true
eval "
function fish_prompt
_tide_status=\$status _tide_pipestatus=\$pipestatus if not set -e _tide_repaint
jobs -q && set -lx _tide_jobs
$fish_path -c \"set _tide_pipestatus \$_tide_pipestatus
set _tide_parent_dirs \$_tide_parent_dirs
PATH=\$(string escape \"\$PATH\") CMD_DURATION=\$CMD_DURATION fish_bind_mode=\$fish_bind_mode set $prompt_var (_tide_2_line_prompt)\" &
builtin disown
command kill \$_tide_last_pid 2>/dev/null
set -g _tide_last_pid \$last_pid
end
if not set -q _tide_transient
math \$COLUMNS-(string length -V \"\$$prompt_var[1][1]\$$prompt_var[1][3]\")+$column_offset | read -lx dist_btwn_sides
echo -n $add_newline'$top_left_frame'(string replace @PWD@ (_tide_pwd) \"\$$prompt_var[1][1]\")'$prompt_and_frame_color'
string repeat -Nm(math max 0, \$dist_btwn_sides-\$_tide_pwd_len) '$tide_prompt_icon_connection'
echo \"\$$prompt_var[1][3]$top_right_frame\"
end
echo -n \e\[0J\"$bot_left_frame\$$prompt_var[1][2]$color_normal \"
end
function fish_right_prompt
set -e _tide_transient || string unescape \"\$$prompt_var[1][4]$bot_right_frame$color_normal\"
end"
else
eval "
function fish_prompt
_tide_status=\$status _tide_pipestatus=\$pipestatus if not set -e _tide_repaint
jobs -q && set -lx _tide_jobs
@ -57,13 +86,43 @@ end
function fish_right_prompt
string unescape \"\$$prompt_var[1][4]$bot_right_frame$color_normal\"
end"
end
else # one line prompt initialization
test "$tide_prompt_add_newline_before" = true && set -l add_newline '\0'
math 5 -$tide_prompt_min_cols | read -l column_offset
test $column_offset -ge 0 && set column_offset "+$column_offset"
eval "
if test "$tide_prompt_transient_enabled" = true
eval "
function fish_prompt
set -lx _tide_status \$status
_tide_pipestatus=\$pipestatus if not set -e _tide_repaint
jobs -q && set -lx _tide_jobs
$fish_path -c \"set _tide_pipestatus \$_tide_pipestatus
set _tide_parent_dirs \$_tide_parent_dirs
PATH=\$(string escape \"\$PATH\") CMD_DURATION=\$CMD_DURATION fish_bind_mode=\$fish_bind_mode set $prompt_var (_tide_1_line_prompt)\" &
builtin disown
command kill \$_tide_last_pid 2>/dev/null
set -g _tide_last_pid \$last_pid
end
if set -q _tide_transient
echo -n \e\[0J
add_prefix= _tide_item_character
echo -n '$color_normal '
else
math \$COLUMNS-(string length -V \"\$$prompt_var[1][1]\$$prompt_var[1][2]\")$column_offset | read -lx dist_btwn_sides
string replace @PWD@ (_tide_pwd) $add_newline \$$prompt_var[1][1]'$color_normal '
end
end
function fish_right_prompt
set -e _tide_transient || string unescape \"\$$prompt_var[1][2]$color_normal\"
end"
else
eval "
function fish_prompt
_tide_status=\$status _tide_pipestatus=\$pipestatus if not set -e _tide_repaint
jobs -q && set -lx _tide_jobs
@ -83,8 +142,24 @@ end
function fish_right_prompt
string unescape \"\$$prompt_var[1][2]$color_normal\"
end"
end
end
eval "function _tide_on_fish_exit --on-event fish_exit
set -e $prompt_var
end"
if test "$tide_prompt_transient_enabled" = true
function _tide_enter_transient
# If the commandline will be executed, or is empty
if commandline --is-valid || test -z "$(commandline)"
set -g _tide_transient
set -g _tide_repaint
commandline -f repaint
end
commandline -f execute
end
bind \r _tide_enter_transient
bind -M insert \r _tide_enter_transient
end

View file

@ -2,7 +2,7 @@ function tide --description 'Manage your Tide prompt'
argparse --stop-nonopt v/version h/help -- $argv
if set -q _flag_version
echo 'tide, version 5.6.0'
echo 'tide, version 6.0.1'
else if set -q _flag_help
_tide_help
else if functions --query _tide_sub_$argv[1]
@ -23,5 +23,6 @@ function _tide_help
'' \
'Subcommands:' \
' configure run interactive configuration wizard' \
' reload reload tide configuration' \
' bug-report print info for use in bug reports'
end

View file

@ -1,21 +1,30 @@
function finish
set_color red
_tide_title 'Overwrite tide config?'
set_color normal
_tide_title Finish
_tide_option y Yes
echo
set_color red
_tide_option y 'Overwrite your current tide config'
set_color normal
echo
_tide_menu
_tide_option p 'Exit and print the config you just generated'
echo
_tide_menu (status function)
switch $_tide_selected_option
case y
case 'Overwrite your current tide config'
_tide_finish
command -q clear && clear
set -q _flag_auto || _tide_print_configure_current_options
case 'Exit and print the config you just generated'
_tide_exit_configure
command -q clear && clear
_tide_print_configure_current_options
end
end
function _tide_finish
set -e _tide_selected_option # Skip through all the _next_choices
_tide_exit_configure
# Deal with prompt char/vi mode
contains character $fake_tide_left_prompt_items || set -p fake_tide_left_prompt_items vi_mode
@ -29,5 +38,9 @@ function _tide_finish
set -e $_tide_prompt_var 2>/dev/null
# Re-initialize the prompt
source (functions --details fish_prompt)
tide reload
end
function _tide_print_configure_current_options
_tide_fish_colorize "tide configure --auto $_tide_configure_current_options"
end

View file

@ -8,12 +8,12 @@ function icons
_enable_icons
_tide_display_prompt
_tide_menu
_tide_menu (status function)
switch $_tide_selected_option
case 1
case 'Few icons'
_disable_icons
end
_next_choice all/finish
_next_choice all/transient
end
function _enable_icons

View file

@ -9,9 +9,9 @@ function prompt_colors
set -g _tide_16color true
_tide_display_prompt
_tide_menu
_tide_menu (status function)
switch $_tide_selected_option
case 1
case 'True color'
_load_config "$_tide_configure_style"
set -e _tide_16color
switch $_tide_configure_style
@ -20,7 +20,7 @@ function prompt_colors
case classic
_next_choice classic/classic_prompt_color
end
case 2
case '16 colors'
_next_choice all/show_time
end
end

View file

@ -2,27 +2,30 @@ function prompt_connection
_tide_title 'Prompt Connection'
_tide_option 1 Disconnected
_tide_display_prompt fake_tide_prompt_icon_connection ' '
set -g fake_tide_prompt_icon_connection ' '
_tide_display_prompt
_tide_option 2 Dotted
_tide_display_prompt fake_tide_prompt_icon_connection '·'
set -g fake_tide_prompt_icon_connection '·'
_tide_display_prompt
_tide_option 3 Solid
_tide_display_prompt fake_tide_prompt_icon_connection '─'
set -g fake_tide_prompt_icon_connection '─'
_tide_display_prompt
_tide_menu
_tide_menu (status function)
switch $_tide_selected_option
case 1
case Disconnected
set -g fake_tide_prompt_icon_connection ' '
case 2
case Dotted
set -g fake_tide_prompt_icon_connection '·'
case 3
case Solid
set -g fake_tide_prompt_icon_connection '─'
end
switch $_tide_configure_style
case lean
_next_choice all/prompt_connection_andor_frame_color
case classic rainbow
_next_choice powerline/powerline_prompt_frame
_next_choice powerline/powerline_right_prompt_frame
end
end

View file

@ -10,26 +10,30 @@ function prompt_connection_andor_frame_color
_tide_title "Connection & Frame Color"
_tide_option 1 Lightest
_tide_display_prompt fake_tide_prompt_color_frame_and_connection 808080
set -g fake_tide_prompt_color_frame_and_connection 808080
_tide_display_prompt
_tide_option 2 Light
_tide_display_prompt fake_tide_prompt_color_frame_and_connection 6C6C6C
set -g fake_tide_prompt_color_frame_and_connection 6C6C6C
_tide_display_prompt
_tide_option 3 Dark
_tide_display_prompt fake_tide_prompt_color_frame_and_connection 585858
set -g fake_tide_prompt_color_frame_and_connection 585858
_tide_display_prompt
_tide_option 4 Darkest
_tide_display_prompt fake_tide_prompt_color_frame_and_connection 444444
set -g fake_tide_prompt_color_frame_and_connection 444444
_tide_display_prompt
_tide_menu
_tide_menu (status function)
switch $_tide_selected_option
case 1
case Lightest
set -g fake_tide_prompt_color_frame_and_connection 808080
case 2
case Light
set -g fake_tide_prompt_color_frame_and_connection 6C6C6C
case 3
case Dark
set -g fake_tide_prompt_color_frame_and_connection 585858
case 4
case Darkest
set -g fake_tide_prompt_color_frame_and_connection 444444
end
_next_choice all/prompt_spacing

View file

@ -2,19 +2,20 @@ function prompt_spacing
_tide_title 'Prompt Spacing'
_tide_option 1 Compact
set -g fake_tide_prompt_add_newline_before false
_tide_display_prompt
printf \e\[1A # Move cursor up 1 row
_tide_display_prompt
_tide_option 2 Sparse
set -g fake_tide_prompt_add_newline_before true
_tide_display_prompt
_tide_display_prompt
_tide_menu
_tide_menu (status function)
switch $_tide_selected_option
case 1
case Compact
set -g fake_tide_prompt_add_newline_before false
case 2
case Sparse
set -g fake_tide_prompt_add_newline_before true
end
_next_choice all/icons

View file

@ -7,20 +7,22 @@ function show_time
set -a fake_tide_right_prompt_items time
_tide_option 2 '24-hour format'
_tide_display_prompt fake_tide_time_format %T
set -g fake_tide_time_format %T
_tide_display_prompt
_tide_option 3 '12-hour format'
_tide_display_prompt fake_tide_time_format '%r'
set -g fake_tide_time_format %r
_tide_display_prompt
_tide_menu
_tide_menu (status function)
switch $_tide_selected_option
case 1
case No
set -g fake_tide_time_format ''
set -e fake_tide_right_prompt_items[-1]
case 2
case '24-hour format'
set -g fake_tide_time_format %T
case 3
set -g fake_tide_time_format '%r'
case '12-hour format'
set -g fake_tide_time_format %r
end
switch $_tide_configure_style
case lean

View file

@ -1,4 +1,6 @@
function style
set -g _tide_configure_current_options
_tide_title 'Prompt Style'
_tide_option 1 Lean
@ -13,15 +15,15 @@ function style
_load_config rainbow
_tide_display_prompt
_tide_style_menu
_tide_menu (status function) --no-restart
switch $_tide_selected_option
case 1
case Lean
_load_config lean
set -g _tide_configure_style lean
case 2
case Classic
_load_config classic
set -g _tide_configure_style classic
case 3
case Rainbow
_load_config rainbow
set -g _tide_configure_style rainbow
end
@ -29,29 +31,6 @@ function style
end
function _load_config -a name
string replace -r '^' 'set -g fake_' <(status dirname)/../../icons.fish | source
string replace -r '^' 'set -g fake_' <(status dirname)/../../configs/$name.fish | source
end
function _tide_style_menu # Exactly like _tide_menu except that it doesn't have (r) option
set -l list_with_slashes (string join '/' $_tide_option_list)
echo '(q) Quit and do nothing'\n
while true
set_color -o
read --nchars 1 --prompt-str "Choice [$list_with_slashes/q] " input
set_color normal
switch $input
case q
set -e _tide_selected_option # Skip through all the _next_choices
set -e _tide_option_list
command -q clear && clear
break
case $_tide_option_list
set -e _tide_option_list
set -g _tide_selected_option $input
break
end
end
end

View file

@ -0,0 +1,22 @@
function transient
_tide_title 'Enable transient prompt?'
_tide_option 1 No
_tide_display_prompt
_tide_display_prompt
_tide_display_prompt
_tide_option 2 Yes
_configure_transient= _tide_display_prompt
_configure_transient= _tide_display_prompt
_tide_display_prompt
_tide_menu (status function)
switch $_tide_selected_option
case No
set fake_tide_prompt_transient_enabled false
case Yes
set fake_tide_prompt_transient_enabled true
end
_next_choice all/finish
end

View file

@ -17,15 +17,15 @@ function classic_prompt_color
_set_all_items_bg_color 1C1C1C
_tide_display_prompt
_tide_menu
_tide_menu (status function)
switch $_tide_selected_option
case 1
case Lightest
_set_all_items_bg_color 585858
case 2
case Light
_set_all_items_bg_color 444444
case 3
case Dark
_set_all_items_bg_color 303030
case 4
case Darkest
_set_all_items_bg_color 1C1C1C
end
_next_choice all/show_time

View file

@ -7,34 +7,34 @@ function classic_prompt_separators
_tide_display_prompt
_tide_option 2 Vertical
set -g fake_tide_left_prompt_separator_same_color '│'
set -g fake_tide_right_prompt_separator_same_color '│'
set -g fake_tide_left_prompt_separator_same_color
set -g fake_tide_right_prompt_separator_same_color
_tide_display_prompt
_tide_option 3 Slanted
set -g fake_tide_left_prompt_separator_same_color ''
set -g fake_tide_right_prompt_separator_same_color ''
set -g fake_tide_left_prompt_separator_same_color
set -g fake_tide_right_prompt_separator_same_color
_tide_display_prompt
_tide_option 4 Round
set -g fake_tide_left_prompt_separator_same_color ''
set -g fake_tide_right_prompt_separator_same_color ''
set -g fake_tide_left_prompt_separator_same_color
set -g fake_tide_right_prompt_separator_same_color
_tide_display_prompt
_tide_menu
_tide_menu (status function)
switch $_tide_selected_option
case 1
case Angled
set -g fake_tide_left_prompt_separator_same_color
set -g fake_tide_right_prompt_separator_same_color
case 2
set -g fake_tide_left_prompt_separator_same_color '│'
set -g fake_tide_right_prompt_separator_same_color '│'
case 3
set -g fake_tide_left_prompt_separator_same_color ''
set -g fake_tide_right_prompt_separator_same_color ''
case 4
set -g fake_tide_left_prompt_separator_same_color ''
set -g fake_tide_right_prompt_separator_same_color ''
case Vertical
set -g fake_tide_left_prompt_separator_same_color
set -g fake_tide_right_prompt_separator_same_color
case Slanted
set -g fake_tide_left_prompt_separator_same_color
set -g fake_tide_right_prompt_separator_same_color
case Round
set -g fake_tide_left_prompt_separator_same_color
set -g fake_tide_right_prompt_separator_same_color
end
_next_choice powerline/powerline_prompt_heads
end

View file

@ -11,13 +11,13 @@ function lean_prompt_height
set -g fake_tide_left_prompt_suffix ' '
_tide_display_prompt
_tide_menu
_tide_menu (status function)
switch $_tide_selected_option
case 1
case 'One line'
_tide_find_and_remove newline fake_tide_left_prompt_items
set fake_tide_left_prompt_suffix ''
_next_choice all/prompt_connection_andor_frame_color
case 2
case 'Two lines'
_tide_find_and_remove newline fake_tide_left_prompt_items
set -g fake_tide_left_prompt_items $fake_tide_left_prompt_items[1..-2] newline $fake_tide_left_prompt_items[-1]
set -g fake_tide_left_prompt_suffix ' '

View file

@ -1,46 +0,0 @@
function powerline_prompt_frame
_tide_title 'Prompt Frame'
_tide_option 1 'No frame'
set fake_tide_left_prompt_frame_enabled false
set fake_tide_right_prompt_frame_enabled false
set -a fake_tide_left_prompt_items character
_tide_display_prompt
set -e fake_tide_left_prompt_items[-1]
_tide_option 2 Left
set fake_tide_left_prompt_frame_enabled true
set fake_tide_right_prompt_frame_enabled false
_tide_display_prompt
_tide_option 3 Right
set fake_tide_left_prompt_frame_enabled false
set fake_tide_right_prompt_frame_enabled true
set -a fake_tide_left_prompt_items character
_tide_display_prompt
set -e fake_tide_left_prompt_items[-1]
_tide_option 4 Full
set fake_tide_left_prompt_frame_enabled true
set fake_tide_right_prompt_frame_enabled true
_tide_display_prompt
_tide_menu
switch $_tide_selected_option
case 1
set fake_tide_left_prompt_frame_enabled false
set fake_tide_right_prompt_frame_enabled false
set -a fake_tide_left_prompt_items character
case 2
set fake_tide_left_prompt_frame_enabled true
set fake_tide_right_prompt_frame_enabled false
case 3
set fake_tide_left_prompt_frame_enabled false
set fake_tide_right_prompt_frame_enabled true
set -a fake_tide_left_prompt_items character
case 4
set fake_tide_left_prompt_frame_enabled true
set fake_tide_right_prompt_frame_enabled true
end
_next_choice all/prompt_connection_andor_frame_color
end

View file

@ -6,35 +6,27 @@ function powerline_prompt_heads
set -g fake_tide_right_prompt_prefix
_tide_display_prompt
_tide_option 2 Blurred
set -g fake_tide_left_prompt_suffix '▓▒░'
set -g fake_tide_right_prompt_prefix '░▒▓'
_tide_option 2 Slanted
set -g fake_tide_left_prompt_suffix
set -g fake_tide_right_prompt_prefix
_tide_display_prompt
_tide_option 3 Slanted
set -g fake_tide_left_prompt_suffix ''
set -g fake_tide_right_prompt_prefix ''
_tide_option 3 Round
set -g fake_tide_left_prompt_suffix
set -g fake_tide_right_prompt_prefix
_tide_display_prompt
_tide_option 4 Round
set -g fake_tide_left_prompt_suffix ''
set -g fake_tide_right_prompt_prefix ''
_tide_display_prompt
_tide_menu
_tide_menu (status function)
switch $_tide_selected_option
case 1
case Sharp
set -g fake_tide_left_prompt_suffix
set -g fake_tide_right_prompt_prefix
case 2
set -g fake_tide_left_prompt_suffix '▓▒░'
set -g fake_tide_right_prompt_prefix '░▒▓'
case 3
set -g fake_tide_left_prompt_suffix ''
set -g fake_tide_right_prompt_prefix ''
case 4
set -g fake_tide_left_prompt_suffix ''
set -g fake_tide_right_prompt_prefix ''
case Slanted
set -g fake_tide_left_prompt_suffix
set -g fake_tide_right_prompt_prefix
case Round
set -g fake_tide_left_prompt_suffix
set -g fake_tide_right_prompt_prefix
end
_next_choice powerline/powerline_prompt_tails
end

View file

@ -1,30 +0,0 @@
function powerline_prompt_height
_tide_title 'Prompt Height'
_tide_option 1 'One line'
_tide_find_and_remove newline fake_tide_left_prompt_items
set fake_tide_left_prompt_frame_enabled false
set fake_tide_right_prompt_frame_enabled false
_tide_display_prompt
_tide_option 2 'Two lines'
set -g fake_tide_left_prompt_items $fake_tide_left_prompt_items newline
set fake_tide_left_prompt_frame_enabled true
set fake_tide_right_prompt_frame_enabled true
_tide_display_prompt
_tide_menu
switch $_tide_selected_option
case 1
_tide_find_and_remove newline fake_tide_left_prompt_items
set fake_tide_left_prompt_frame_enabled false
set fake_tide_right_prompt_frame_enabled false
_next_choice all/prompt_connection_andor_frame_color
case 2
_tide_find_and_remove newline fake_tide_left_prompt_items
set -g fake_tide_left_prompt_items $fake_tide_left_prompt_items newline
set fake_tide_left_prompt_frame_enabled true
set fake_tide_right_prompt_frame_enabled true
_next_choice all/prompt_connection
end
end

View file

@ -0,0 +1,51 @@
function powerline_prompt_style
_tide_title 'Powerline Prompt Style'
_tide_option 1 'One line'
_tide_find_and_remove newline fake_tide_left_prompt_items
_tide_find_and_remove character fake_tide_left_prompt_items
set fake_tide_left_prompt_frame_enabled false
set fake_tide_right_prompt_frame_enabled false
_tide_display_prompt
set -a fake_tide_left_prompt_items newline
_tide_option 2 'Two lines, character'
set -a fake_tide_left_prompt_items character
set fake_tide_left_prompt_frame_enabled false
set fake_tide_right_prompt_frame_enabled false
_tide_display_prompt
_tide_option 3 'Two lines, frame'
_tide_find_and_remove character fake_tide_left_prompt_items
set fake_tide_left_prompt_frame_enabled true
set fake_tide_right_prompt_frame_enabled true
_tide_display_prompt
_tide_option 4 'Two lines, character and frame'
set -a fake_tide_left_prompt_items character
set fake_tide_left_prompt_frame_enabled true
set fake_tide_right_prompt_frame_enabled true
_tide_display_prompt
_tide_menu (status function)
switch $_tide_selected_option
case 'One line'
_tide_find_and_remove newline fake_tide_left_prompt_items
_tide_find_and_remove character fake_tide_left_prompt_items
set fake_tide_left_prompt_frame_enabled false
set fake_tide_right_prompt_frame_enabled false
_next_choice all/prompt_connection_andor_frame_color
case 'Two lines, character'
set fake_tide_left_prompt_frame_enabled false
set fake_tide_right_prompt_frame_enabled false
_next_choice all/prompt_connection
case 'Two lines, frame'
_tide_find_and_remove character fake_tide_left_prompt_items
set fake_tide_left_prompt_frame_enabled true
set fake_tide_right_prompt_frame_enabled true
_next_choice all/prompt_connection
case 'Two lines, character and frame'
_next_choice all/prompt_connection
end
end

View file

@ -6,43 +6,35 @@ function powerline_prompt_tails
set -g fake_tide_right_prompt_suffix ''
_tide_display_prompt
_tide_option 2 Blurred
set -g fake_tide_left_prompt_prefix '░▒▓'
set -g fake_tide_right_prompt_suffix '▓▒░'
_tide_display_prompt
_tide_option 3 Sharp
_tide_option 2 Sharp
set -g fake_tide_left_prompt_prefix
set -g fake_tide_right_prompt_suffix
_tide_display_prompt
_tide_option 4 Slanted
set -g fake_tide_left_prompt_prefix ''
set -g fake_tide_right_prompt_suffix ''
_tide_option 3 Slanted
set -g fake_tide_left_prompt_prefix
set -g fake_tide_right_prompt_suffix
_tide_display_prompt
_tide_option 5 Round
set -g fake_tide_left_prompt_prefix ''
set -g fake_tide_right_prompt_suffix ''
_tide_option 4 Round
set -g fake_tide_left_prompt_prefix
set -g fake_tide_right_prompt_suffix
_tide_display_prompt
_tide_menu
_tide_menu (status function)
switch $_tide_selected_option
case 1
case Flat
set -g fake_tide_left_prompt_prefix ''
set -g fake_tide_right_prompt_suffix ''
case 2
set -g fake_tide_left_prompt_prefix '░▒▓'
set -g fake_tide_right_prompt_suffix '▓▒░'
case 3
case Sharp
set -g fake_tide_left_prompt_prefix
set -g fake_tide_right_prompt_suffix
case 4
set -g fake_tide_left_prompt_prefix ''
set -g fake_tide_right_prompt_suffix ''
case 5
set -g fake_tide_left_prompt_prefix ''
set -g fake_tide_right_prompt_suffix ''
case Slanted
set -g fake_tide_left_prompt_prefix
set -g fake_tide_right_prompt_suffix
case Round
set -g fake_tide_left_prompt_prefix
set -g fake_tide_right_prompt_suffix
end
_next_choice powerline/powerline_prompt_height
_next_choice powerline/powerline_prompt_style
end

View file

@ -0,0 +1,20 @@
function powerline_right_prompt_frame
_tide_title 'Right Prompt Frame'
_tide_option 1 No
set fake_tide_right_prompt_frame_enabled false
_tide_display_prompt
_tide_option 2 Yes
set fake_tide_right_prompt_frame_enabled true
_tide_display_prompt
_tide_menu (status function)
switch $_tide_selected_option
case No
set fake_tide_right_prompt_frame_enabled false
case Yes
set fake_tide_right_prompt_frame_enabled true
end
_next_choice all/prompt_connection_andor_frame_color
end

View file

@ -21,18 +21,18 @@ function rainbow_prompt_separators
set -g fake_tide_right_prompt_separator_diff_color ''
_tide_display_prompt
_tide_menu
_tide_menu (status function)
switch $_tide_selected_option
case 1
case Angled
set -g fake_tide_left_prompt_separator_diff_color
set -g fake_tide_right_prompt_separator_diff_color
case 2
case Vertical
set -g fake_tide_left_prompt_separator_diff_color ''
set -g fake_tide_right_prompt_separator_diff_color ''
case 3
case Slanted
set -g fake_tide_left_prompt_separator_diff_color ''
set -g fake_tide_right_prompt_separator_diff_color ''
case 4
case Round
set -g fake_tide_left_prompt_separator_diff_color ''
set -g fake_tide_right_prompt_separator_diff_color ''
end

View file

@ -1,19 +1,10 @@
tide_aws_bg_color 444444
tide_aws_color FF9900
tide_aws_icon
tide_character_color $_tide_color_green
tide_character_color_failure FF0000
tide_character_icon
tide_character_vi_icon_default
tide_character_vi_icon_replace
tide_character_vi_icon_visual V
tide_chruby_bg_color 444444
tide_chruby_color B31209
tide_chruby_icon
tide_cmd_duration_bg_color 444444
tide_cmd_duration_color 87875F
tide_cmd_duration_decimals 0
tide_cmd_duration_icon
tide_cmd_duration_threshold 3000
tide_context_always_display false
tide_context_bg_color 444444
@ -23,25 +14,19 @@ tide_context_color_ssh D7AF87
tide_context_hostname_parts 1
tide_crystal_bg_color 444444
tide_crystal_color FFFFFF
tide_crystal_icon
tide_direnv_bg_color 444444
tide_direnv_bg_color_denied 444444
tide_direnv_color $_tide_color_gold
tide_direnv_color_denied FF0000
tide_direnv_icon
tide_distrobox_bg_color 444444
tide_distrobox_color FF00FF
tide_distrobox_icon
tide_docker_bg_color 444444
tide_docker_color 2496ED
tide_docker_default_contexts default colima
tide_docker_icon
tide_elixir_bg_color 444444
tide_elixir_color 4E2A8E
tide_elixir_icon
tide_gcloud_bg_color 444444
tide_gcloud_color 4285F4
tide_gcloud_icon
tide_git_bg_color 444444
tide_git_bg_color_unstable 444444
tide_git_bg_color_urgent 444444
@ -53,21 +38,16 @@ tide_git_color_staged $_tide_color_gold
tide_git_color_stash $_tide_color_green
tide_git_color_untracked $_tide_color_light_blue
tide_git_color_upstream $_tide_color_green
tide_git_icon
tide_git_truncation_length 24
tide_git_truncation_strategy
tide_go_bg_color 444444
tide_go_color 00ACD7
tide_go_icon
tide_java_bg_color 444444
tide_java_color ED8B00
tide_java_icon
tide_jobs_bg_color 444444
tide_jobs_color $_tide_color_dark_green
tide_jobs_icon
tide_kubectl_bg_color 444444
tide_kubectl_color 326CE5
tide_kubectl_icon
tide_left_prompt_frame_enabled true
tide_left_prompt_items pwd git newline
tide_left_prompt_prefix ''
@ -76,64 +56,53 @@ tide_left_prompt_separator_same_color 
tide_left_prompt_suffix
tide_nix_shell_bg_color 444444
tide_nix_shell_color 7EBAE4
tide_nix_shell_icon
tide_node_bg_color 444444
tide_node_color 44883E
tide_node_icon
tide_os_bg_color 444444
tide_os_color EEEEEE
tide_os_icon $os_branding_icon
tide_php_bg_color 444444
tide_php_color 617CBE
tide_php_icon
tide_private_mode_bg_color 444444
tide_private_mode_color FFFFFF
tide_private_mode_icon
tide_prompt_add_newline_before true
tide_prompt_color_frame_and_connection 6C6C6C
tide_prompt_color_separator_same_color 949494
tide_prompt_icon_connection ' '
tide_prompt_min_cols 34
tide_prompt_pad_items true
tide_prompt_transient_enabled false
tide_pulumi_bg_color 444444
tide_pulumi_color F7BF2A
tide_pulumi_icon ''
tide_pwd_bg_color 444444
tide_pwd_color_anchors $_tide_color_light_blue
tide_pwd_color_dirs $_tide_color_dark_blue
tide_pwd_color_truncated_dirs 8787AF
tide_pwd_icon
tide_pwd_icon_home
tide_pwd_icon_unwritable
tide_pwd_markers .bzr .citc .git .hg .node-version .python-version .ruby-version .shorten_folder_marker .svn .terraform Cargo.toml composer.json CVS go.mod package.json
tide_python_bg_color 444444
tide_python_color 00AFAF
tide_right_prompt_frame_enabled true
tide_right_prompt_items status cmd_duration context jobs direnv node virtual_env rustc java php pulumi chruby go gcloud kubectl distrobox toolbox terraform aws nix_shell crystal elixir
tide_right_prompt_items status cmd_duration context jobs direnv node python rustc java php pulumi ruby go gcloud kubectl distrobox toolbox terraform aws nix_shell crystal elixir
tide_right_prompt_prefix
tide_right_prompt_separator_diff_color
tide_right_prompt_separator_same_color
tide_right_prompt_suffix ''
tide_ruby_bg_color 444444
tide_ruby_color B31209
tide_rustc_bg_color 444444
tide_rustc_color F74C00
tide_rustc_icon
tide_shlvl_bg_color 444444
tide_shlvl_color d78700
tide_shlvl_icon
tide_shlvl_threshold 1
tide_status_bg_color 444444
tide_status_bg_color_failure 444444
tide_status_color $_tide_color_dark_green
tide_status_color_failure D70000
tide_status_icon
tide_status_icon_failure
tide_terraform_bg_color 444444
tide_terraform_color 844FBA
tide_terraform_icon
tide_time_bg_color 444444
tide_time_color 5F8787
tide_time_format %T
tide_toolbox_bg_color 444444
tide_toolbox_color 613583
tide_toolbox_icon
tide_vi_mode_bg_color_default 444444
tide_vi_mode_bg_color_insert 444444
tide_vi_mode_bg_color_replace 444444
@ -142,10 +111,3 @@ tide_vi_mode_color_default 949494
tide_vi_mode_color_insert 87AFAF
tide_vi_mode_color_replace 87AF87
tide_vi_mode_color_visual FF8700
tide_vi_mode_icon_default D
tide_vi_mode_icon_insert I
tide_vi_mode_icon_replace R
tide_vi_mode_icon_visual V
tide_virtual_env_bg_color 444444
tide_virtual_env_color 00AFAF
tide_virtual_env_icon

View file

@ -2,8 +2,6 @@ tide_aws_bg_color black
tide_aws_color yellow
tide_character_color brgreen
tide_character_color_failure brred
tide_chruby_bg_color black
tide_chruby_color red
tide_cmd_duration_bg_color black
tide_cmd_duration_color brblack
tide_context_bg_color black
@ -61,6 +59,10 @@ tide_pwd_bg_color black
tide_pwd_color_anchors brcyan
tide_pwd_color_dirs cyan
tide_pwd_color_truncated_dirs magenta
tide_python_bg_color black
tide_python_color cyan
tide_ruby_bg_color black
tide_ruby_color red
tide_rustc_bg_color black
tide_rustc_color red
tide_shlvl_bg_color black
@ -83,5 +85,3 @@ tide_vi_mode_color_default white
tide_vi_mode_color_insert cyan
tide_vi_mode_color_replace green
tide_vi_mode_color_visual yellow
tide_virtual_env_bg_color black
tide_virtual_env_color cyan

View file

@ -1,19 +1,10 @@
tide_aws_bg_color normal
tide_aws_color FF9900
tide_aws_icon
tide_character_color $_tide_color_green
tide_character_color_failure FF0000
tide_character_icon
tide_character_vi_icon_default
tide_character_vi_icon_replace
tide_character_vi_icon_visual V
tide_chruby_bg_color normal
tide_chruby_color B31209
tide_chruby_icon
tide_cmd_duration_bg_color normal
tide_cmd_duration_color 87875F
tide_cmd_duration_decimals 0
tide_cmd_duration_icon
tide_cmd_duration_threshold 3000
tide_context_always_display false
tide_context_bg_color normal
@ -23,25 +14,19 @@ tide_context_color_ssh D7AF87
tide_context_hostname_parts 1
tide_crystal_bg_color normal
tide_crystal_color FFFFFF
tide_crystal_icon
tide_direnv_bg_color normal
tide_direnv_bg_color_denied normal
tide_direnv_color $_tide_color_gold
tide_direnv_color_denied FF0000
tide_direnv_icon
tide_distrobox_bg_color normal
tide_distrobox_color FF00FF
tide_distrobox_icon
tide_docker_bg_color normal
tide_docker_color 2496ED
tide_docker_default_contexts default colima
tide_docker_icon
tide_elixir_bg_color normal
tide_elixir_color 4E2A8E
tide_elixir_icon
tide_gcloud_bg_color normal
tide_gcloud_color 4285F4
tide_gcloud_icon
tide_git_bg_color normal
tide_git_bg_color_unstable normal
tide_git_bg_color_urgent normal
@ -53,21 +38,16 @@ tide_git_color_staged $_tide_color_gold
tide_git_color_stash $_tide_color_green
tide_git_color_untracked $_tide_color_light_blue
tide_git_color_upstream $_tide_color_green
tide_git_icon
tide_git_truncation_length 24
tide_git_truncation_strategy
tide_go_bg_color normal
tide_go_color 00ACD7
tide_go_icon
tide_java_bg_color normal
tide_java_color ED8B00
tide_java_icon
tide_jobs_bg_color normal
tide_jobs_color $_tide_color_dark_green
tide_jobs_icon
tide_kubectl_bg_color normal
tide_kubectl_color 326CE5
tide_kubectl_icon
tide_left_prompt_frame_enabled false
tide_left_prompt_items pwd git newline character
tide_left_prompt_prefix ''
@ -76,64 +56,53 @@ tide_left_prompt_separator_same_color ' '
tide_left_prompt_suffix ' '
tide_nix_shell_bg_color normal
tide_nix_shell_color 7EBAE4
tide_nix_shell_icon
tide_node_bg_color normal
tide_node_color 44883E
tide_node_icon
tide_os_bg_color normal
tide_os_color normal
tide_os_icon $os_branding_icon
tide_php_bg_color normal
tide_php_color 617CBE
tide_php_icon
tide_private_mode_bg_color normal
tide_private_mode_color FFFFFF
tide_private_mode_icon
tide_prompt_add_newline_before true
tide_prompt_color_frame_and_connection 6C6C6C
tide_prompt_color_separator_same_color 949494
tide_prompt_icon_connection ' '
tide_prompt_min_cols 34
tide_prompt_pad_items false
tide_prompt_transient_enabled false
tide_pulumi_bg_color normal
tide_pulumi_color F7BF2A
tide_pulumi_icon ''
tide_pwd_bg_color normal
tide_pwd_color_anchors $_tide_color_light_blue
tide_pwd_color_dirs $_tide_color_dark_blue
tide_pwd_color_truncated_dirs 8787AF
tide_pwd_icon
tide_pwd_icon_home
tide_pwd_icon_unwritable
tide_pwd_markers .bzr .citc .git .hg .node-version .python-version .ruby-version .shorten_folder_marker .svn .terraform Cargo.toml composer.json CVS go.mod package.json
tide_python_bg_color normal
tide_python_color 00AFAF
tide_right_prompt_frame_enabled false
tide_right_prompt_items status cmd_duration context jobs direnv node virtual_env rustc java php pulumi chruby go gcloud kubectl distrobox toolbox terraform aws nix_shell crystal elixir
tide_right_prompt_items status cmd_duration context jobs direnv node python rustc java php pulumi ruby go gcloud kubectl distrobox toolbox terraform aws nix_shell crystal elixir
tide_right_prompt_prefix ' '
tide_right_prompt_separator_diff_color ' '
tide_right_prompt_separator_same_color ' '
tide_right_prompt_suffix ''
tide_ruby_bg_color normal
tide_ruby_color B31209
tide_rustc_bg_color normal
tide_rustc_color F74C00
tide_rustc_icon
tide_shlvl_bg_color normal
tide_shlvl_color d78700
tide_shlvl_icon
tide_shlvl_threshold 1
tide_status_bg_color normal
tide_status_bg_color_failure normal
tide_status_color $_tide_color_dark_green
tide_status_color_failure D70000
tide_status_icon
tide_status_icon_failure
tide_terraform_bg_color normal
tide_terraform_color 844FBA
tide_terraform_icon
tide_time_bg_color normal
tide_time_color 5F8787
tide_time_format %T
tide_toolbox_bg_color normal
tide_toolbox_color 613583
tide_toolbox_icon
tide_vi_mode_bg_color_default normal
tide_vi_mode_bg_color_insert normal
tide_vi_mode_bg_color_replace normal
@ -142,10 +111,3 @@ tide_vi_mode_color_default 949494
tide_vi_mode_color_insert 87AFAF
tide_vi_mode_color_replace 87AF87
tide_vi_mode_color_visual FF8700
tide_vi_mode_icon_default D
tide_vi_mode_icon_insert I
tide_vi_mode_icon_replace R
tide_vi_mode_icon_visual V
tide_virtual_env_bg_color normal
tide_virtual_env_color 00AFAF
tide_virtual_env_icon

View file

@ -2,8 +2,6 @@ tide_aws_bg_color normal
tide_aws_color yellow
tide_character_color brgreen
tide_character_color_failure brred
tide_chruby_bg_color normal
tide_chruby_color red
tide_cmd_duration_bg_color normal
tide_cmd_duration_color brblack
tide_context_bg_color normal
@ -61,6 +59,10 @@ tide_pwd_bg_color normal
tide_pwd_color_anchors brcyan
tide_pwd_color_dirs cyan
tide_pwd_color_truncated_dirs magenta
tide_python_bg_color normal
tide_python_color cyan
tide_ruby_bg_color normal
tide_ruby_color red
tide_rustc_bg_color normal
tide_rustc_color red
tide_shlvl_bg_color normal
@ -83,5 +85,3 @@ tide_vi_mode_color_default white
tide_vi_mode_color_insert cyan
tide_vi_mode_color_replace green
tide_vi_mode_color_visual yellow
tide_virtual_env_bg_color normal
tide_virtual_env_color cyan

View file

@ -1,19 +1,10 @@
tide_aws_bg_color FF9900
tide_aws_color 232F3E
tide_aws_icon
tide_character_color $_tide_color_green
tide_character_color_failure FF0000
tide_character_icon
tide_character_vi_icon_default
tide_character_vi_icon_replace
tide_character_vi_icon_visual V
tide_chruby_bg_color B31209
tide_chruby_color 000000
tide_chruby_icon
tide_cmd_duration_bg_color C4A000
tide_cmd_duration_color 000000
tide_cmd_duration_decimals 0
tide_cmd_duration_icon
tide_cmd_duration_threshold 3000
tide_context_always_display false
tide_context_bg_color 444444
@ -23,25 +14,19 @@ tide_context_color_ssh D7AF87
tide_context_hostname_parts 1
tide_crystal_bg_color FFFFFF
tide_crystal_color 000000
tide_crystal_icon
tide_direnv_bg_color $_tide_color_gold
tide_direnv_bg_color_denied FF0000
tide_direnv_color 000000
tide_direnv_color_denied 000000
tide_direnv_icon
tide_distrobox_bg_color FF00FF
tide_distrobox_color 000000
tide_distrobox_icon
tide_docker_bg_color 2496ED
tide_docker_color 000000
tide_docker_default_contexts default colima
tide_docker_icon
tide_elixir_bg_color 4E2A8E
tide_elixir_color 000000
tide_elixir_icon
tide_gcloud_bg_color 4285F4
tide_gcloud_color 000000
tide_gcloud_icon
tide_git_bg_color 4E9A06
tide_git_bg_color_unstable C4A000
tide_git_bg_color_urgent CC0000
@ -53,21 +38,16 @@ tide_git_color_staged 000000
tide_git_color_stash 000000
tide_git_color_untracked 000000
tide_git_color_upstream 000000
tide_git_icon
tide_git_truncation_length 24
tide_git_truncation_strategy
tide_go_bg_color 00ACD7
tide_go_color 000000
tide_go_icon
tide_java_bg_color ED8B00
tide_java_color 000000
tide_java_icon
tide_jobs_bg_color 444444
tide_jobs_color 4E9A06
tide_jobs_icon
tide_kubectl_bg_color 326CE5
tide_kubectl_color 000000
tide_kubectl_icon
tide_left_prompt_frame_enabled true
tide_left_prompt_items pwd git newline
tide_left_prompt_prefix ''
@ -76,64 +56,53 @@ tide_left_prompt_separator_same_color 
tide_left_prompt_suffix
tide_nix_shell_bg_color 7EBAE4
tide_nix_shell_color 000000
tide_nix_shell_icon
tide_node_bg_color 44883E
tide_node_color 000000
tide_node_icon
tide_os_bg_color $os_branding_bg_color
tide_os_color $os_branding_color
tide_os_icon $os_branding_icon
tide_php_bg_color 617CBE
tide_php_color 000000
tide_php_icon
tide_private_mode_bg_color F1F3F4
tide_private_mode_color 000000
tide_private_mode_icon
tide_prompt_add_newline_before true
tide_prompt_color_frame_and_connection 6C6C6C
tide_prompt_color_separator_same_color 949494
tide_prompt_icon_connection ' '
tide_prompt_min_cols 34
tide_prompt_pad_items true
tide_prompt_transient_enabled false
tide_pulumi_bg_color F7BF2A
tide_pulumi_color 000000
tide_pulumi_icon ''
tide_pwd_bg_color 3465A4
tide_pwd_color_anchors E4E4E4
tide_pwd_color_dirs E4E4E4
tide_pwd_color_truncated_dirs BCBCBC
tide_pwd_icon
tide_pwd_icon_home
tide_pwd_icon_unwritable
tide_pwd_markers .bzr .citc .git .hg .node-version .python-version .ruby-version .shorten_folder_marker .svn .terraform Cargo.toml composer.json CVS go.mod package.json
tide_python_bg_color 444444
tide_python_color 00AFAF
tide_right_prompt_frame_enabled true
tide_right_prompt_items status cmd_duration context jobs direnv node virtual_env rustc java php pulumi chruby go gcloud kubectl distrobox toolbox terraform aws nix_shell crystal elixir
tide_right_prompt_items status cmd_duration context jobs direnv node python rustc java php pulumi ruby go gcloud kubectl distrobox toolbox terraform aws nix_shell crystal elixir
tide_right_prompt_prefix
tide_right_prompt_separator_diff_color
tide_right_prompt_separator_same_color
tide_right_prompt_suffix ''
tide_ruby_bg_color B31209
tide_ruby_color 000000
tide_rustc_bg_color F74C00
tide_rustc_color 000000
tide_rustc_icon
tide_shlvl_bg_color 808000
tide_shlvl_color 000000
tide_shlvl_icon
tide_shlvl_threshold 1
tide_status_bg_color 2E3436
tide_status_bg_color_failure CC0000
tide_status_color 4E9A06
tide_status_color_failure FFFF00
tide_status_icon
tide_status_icon_failure
tide_terraform_bg_color 800080
tide_terraform_color 000000
tide_terraform_icon
tide_time_bg_color D3D7CF
tide_time_color 000000
tide_time_format %T
tide_toolbox_bg_color 613583
tide_toolbox_color 000000
tide_toolbox_icon
tide_vi_mode_bg_color_default 949494
tide_vi_mode_bg_color_insert 87AFAF
tide_vi_mode_bg_color_replace 87AF87
@ -142,10 +111,3 @@ tide_vi_mode_color_default 000000
tide_vi_mode_color_insert 000000
tide_vi_mode_color_replace 000000
tide_vi_mode_color_visual 000000
tide_vi_mode_icon_default D
tide_vi_mode_icon_insert I
tide_vi_mode_icon_replace R
tide_vi_mode_icon_visual V
tide_virtual_env_bg_color 444444
tide_virtual_env_color 00AFAF
tide_virtual_env_icon

View file

@ -2,8 +2,6 @@ tide_aws_bg_color yellow
tide_aws_color brblack
tide_character_color brgreen
tide_character_color_failure brred
tide_chruby_bg_color red
tide_chruby_color black
tide_cmd_duration_bg_color yellow
tide_cmd_duration_color black
tide_context_bg_color brblack
@ -61,6 +59,10 @@ tide_pwd_bg_color blue
tide_pwd_color_anchors brwhite
tide_pwd_color_dirs brwhite
tide_pwd_color_truncated_dirs white
tide_python_bg_color brblack
tide_python_color cyan
tide_ruby_bg_color red
tide_ruby_color black
tide_rustc_bg_color red
tide_rustc_color black
tide_shlvl_bg_color yellow
@ -87,5 +89,3 @@ tide_vi_mode_icon_default D
tide_vi_mode_icon_insert I
tide_vi_mode_icon_replace R
tide_vi_mode_icon_visual V
tide_virtual_env_bg_color brblack
tide_virtual_env_color cyan

View file

@ -1,5 +1,8 @@
function _fake_tide_item_character
set_color $fake_tide_character_color
contains newline $fake_tide_left_prompt_items || echo -ns ' '
echo -ns $fake_tide_character_icon
if contains newline $fake_tide_left_prompt_items || set -q _configure_transient
echo -ns $fake_tide_character_icon
else
echo -ns ' '$fake_tide_character_icon
end
end

View file

@ -0,0 +1,39 @@
tide_aws_icon  # Actual aws glyph is harder to see
tide_character_icon
tide_character_vi_icon_default
tide_character_vi_icon_replace
tide_character_vi_icon_visual V
tide_cmd_duration_icon
tide_crystal_icon
tide_direnv_icon
tide_distrobox_icon 󰆧
tide_docker_icon
tide_elixir_icon
tide_gcloud_icon 󰊭 # Actual google cloud glyph is harder to see
tide_git_icon
tide_go_icon
tide_java_icon
tide_jobs_icon
tide_kubectl_icon 󱃾
tide_nix_shell_icon
tide_node_icon  # Actual nodejs glyph is harder to see
tide_os_icon $os_branding_icon
tide_php_icon
tide_private_mode_icon 󰗹
tide_prompt_icon_connection ' '
tide_pulumi_icon
tide_pwd_icon
tide_pwd_icon_home
tide_pwd_icon_unwritable
tide_python_icon 󰌠
tide_ruby_icon
tide_rustc_icon
tide_shlvl_icon
tide_status_icon
tide_status_icon_failure
tide_terraform_icon
tide_toolbox_icon
tide_vi_mode_icon_default D
tide_vi_mode_icon_insert I
tide_vi_mode_icon_replace R
tide_vi_mode_icon_visual V

192
i3/config Normal file
View file

@ -0,0 +1,192 @@
# This file has been auto-generated by i3-config-wizard(1).
# It will not be overwritten, so edit it as you like.
#
# Should you change your keyboard layout some time, delete
# this file and re-run i3-config-wizard(1).
#
# i3 config file (v4)
#
# Please see https://i3wm.org/docs/userguide.html for a complete reference!
set $mod Mod4
# Font for window titles. Will also be used by the bar unless a different font
# is used in the bar {} block below.
font pango:monospace 8
# This font is widely installed, provides lots of unicode glyphs, right-to-left
# text rendering and scalability on retina/hidpi displays (thanks to pango).
#font pango:DejaVu Sans Mono 8
# Start XDG autostart .desktop files using dex. See also
# https://wiki.archlinux.org/index.php/XDG_Autostart
exec --no-startup-id dex --autostart --environment i3
# The combination of xss-lock, nm-applet and pactl is a popular choice, so
# they are included here as an example. Modify as you see fit.
# xss-lock grabs a logind suspend inhibit lock and will use i3lock to lock the
# screen before suspend. Use loginctl lock-session to lock your screen.
exec --no-startup-id xss-lock --transfer-sleep-lock -- i3lock --nofork
# NetworkManager is the most popular way to manage wireless networks on Linux,
# and nm-applet is a desktop environment-independent system tray GUI for it.
exec --no-startup-id nm-applet
# Use pactl to adjust volume in PulseAudio.
set $refresh_i3status killall -SIGUSR1 i3status
bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +10% && $refresh_i3status
bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ -10% && $refresh_i3status
bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle && $refresh_i3status
bindsym XF86AudioMicMute exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ toggle && $refresh_i3status
# Use Mouse+$mod to drag floating windows to their wanted position
floating_modifier $mod
# move tiling windows via drag & drop by left-clicking into the title bar,
# or left-clicking anywhere into the window while holding the floating modifier.
tiling_drag modifier titlebar
# start a terminal
#bindsym $mod+Return exec i3-sensible-terminal
# kill focused window
bindsym $mod+Shift+q kill
# start dmenu (a program launcher)
#bindsym $mod+d exec --no-startup-id dmenu_run
# A more modern dmenu replacement is rofi:
# bindcode $mod+40 exec "rofi -modi drun,run -show drun"
# There also is i3-dmenu-desktop which only displays applications shipping a
# .desktop file. It is a wrapper around dmenu, so you need that installed.
# bindcode $mod+40 exec --no-startup-id i3-dmenu-desktop
# change focus
#bindsym $mod+h focus left
#bindsym $mod+j focus down
#bindsym $mod+k focus up
#bindsym $mod+l focus right
# alternatively, you can use the cursor keys:
bindsym $mod+Left focus left
bindsym $mod+Down focus down
bindsym $mod+Up focus up
bindsym $mod+Right focus right
# move focused window
#bindsym $mod+Shift+j move left
#bindsym $mod+Shift+k move down
#bindsym $mod+Shift+l move up
#bindsym $mod+Shift+semicolon move right
# alternatively, you can use the cursor keys:
bindsym $mod+Shift+Left move left
bindsym $mod+Shift+Down move down
bindsym $mod+Shift+Up move up
bindsym $mod+Shift+Right move right
# split in horizontal orientation
#bindsym $mod+h split h
# split in vertical orientation
bindsym $mod+v split v
# enter fullscreen mode for the focused container
bindsym $mod+f fullscreen toggle
# change container layout (stacked, tabbed, toggle split)
bindsym $mod+s layout stacking
bindsym $mod+w layout tabbed
bindsym $mod+e layout toggle split
# toggle tiling / floating
bindsym $mod+Shift+space floating toggle
# change focus between tiling / floating windows
bindsym $mod+space focus mode_toggle
# focus the parent container
bindsym $mod+a focus parent
# focus the child container
#bindsym $mod+d focus child
# Define names for default workspaces for which we configure key bindings later on.
# We use variables to avoid repeating the names in multiple places.
set $ws1 "1"
set $ws2 "2"
set $ws3 "3"
set $ws4 "4"
set $ws5 "5"
set $ws6 "6"
set $ws7 "7"
set $ws8 "8"
set $ws9 "9"
set $ws10 "10"
# switch to workspace
bindsym $mod+1 workspace number $ws1
bindsym $mod+2 workspace number $ws2
bindsym $mod+3 workspace number $ws3
bindsym $mod+4 workspace number $ws4
bindsym $mod+5 workspace number $ws5
bindsym $mod+6 workspace number $ws6
bindsym $mod+7 workspace number $ws7
bindsym $mod+8 workspace number $ws8
bindsym $mod+9 workspace number $ws9
bindsym $mod+0 workspace number $ws10
# move focused container to workspace
bindsym $mod+Shift+1 move container to workspace number $ws1
bindsym $mod+Shift+2 move container to workspace number $ws2
bindsym $mod+Shift+3 move container to workspace number $ws3
bindsym $mod+Shift+4 move container to workspace number $ws4
bindsym $mod+Shift+5 move container to workspace number $ws5
bindsym $mod+Shift+6 move container to workspace number $ws6
bindsym $mod+Shift+7 move container to workspace number $ws7
bindsym $mod+Shift+8 move container to workspace number $ws8
bindsym $mod+Shift+9 move container to workspace number $ws9
bindsym $mod+Shift+0 move container to workspace number $ws10
# reload the configuration file
bindsym $mod+Shift+c reload
# restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
bindsym $mod+Shift+r restart
# exit i3 (logs you out of your X session)
bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -B 'Yes, exit i3' 'i3-msg exit'"
# resize window (you can also use the mouse for that)
mode "resize" {
# These bindings trigger as soon as you enter the resize mode
# Pressing left will shrink the windows width.
# Pressing right will grow the windows width.
# Pressing up will shrink the windows height.
# Pressing down will grow the windows height.
bindsym j resize shrink width 10 px or 10 ppt
bindsym k resize grow height 10 px or 10 ppt
bindsym l resize shrink height 10 px or 10 ppt
bindsym semicolon resize grow width 10 px or 10 ppt
# same bindings, but for the arrow keys
bindsym Left resize shrink width 10 px or 10 ppt
bindsym Down resize grow height 10 px or 10 ppt
bindsym Up resize shrink height 10 px or 10 ppt
bindsym Right resize grow width 10 px or 10 ppt
# back to normal: Enter or Escape or $mod+r
bindsym Return mode "default"
bindsym Escape mode "default"
bindsym $mod+r mode "default"
}
bindsym $mod+r mode "resize"
# Start i3bar to display a workspace bar (plus the system information i3status
# finds out, if available)
bar {
status_command i3status
}
include ~/.config/i3/config.d/*.conf

View file

@ -0,0 +1,33 @@
set $rosewater #f5e0dc
set $flamingo #f2cdcd
set $pink #f5c2e7
set $mauve #cba6f7
set $red #f38ba8
set $maroon #eba0ac
set $peach #fab387
set $green #a6e3a1
set $teal #94e2d5
set $sky #89dceb
set $sapphire #74c7ec
set $blue #89b4fa
set $lavender #b4befe
set $text #cdd6f4
set $subtext1 #bac2de
set $subtext0 #a6adc8
set $overlay2 #9399b2
set $overlay1 #7f849c
set $overlay0 #6c7086
set $surface2 #585b70
set $surface1 #45475a
set $surface0 #313244
set $base #1e1e2e
set $mantle #181825
set $crust #11111b
# target title bg text indicator border
client.focused $mauve $base $text $rosewater $mauve
client.focused_inactive $overlay0 $base $text $rosewater $overlay0
client.unfocused $overlay0 $base $text $rosewater $overlay0
client.urgent $mauve $base $mauve $overlay0 $mauve
client.placeholder $overlay0 $base $text $overlay0 $overlay0
client.background $base

8
i3/config.d/other.conf Normal file
View file

@ -0,0 +1,8 @@
for_window [window_role="pop-up"] floating enable
for_window [window_role="task_dialog"] floating enable
# auth agent (the sudo popup)
exec --no-startup-id polkit
# Run suspend-lock
#exec --no-startup-id xss-lock -- ~/.config/i3/scripts/suspend-lock.sh

View file

@ -0,0 +1,15 @@
bindsym $mod+d exec --no-startup-id j4-dmenu-desktop
# Change to vi-style nav
bindsym $mod+h focus left
bindsym $mod+j focus down
bindsym $mod+k focus up
bindsym $mod+l focus right
bindsym $mod+Shift+h move left
bindsym $mod+Shift+j move down
bindsym $mod+Shift+k move up
bindsym $mod+Shift+l move right
bindsym $mod+semicolon split h
# Change term to kitty
bindsym $mod+Return exec kitty

5
i3/scripts/suspend-lock.sh Executable file
View file

@ -0,0 +1,5 @@
#!/usr/bin/env sh
set -e
xset s dpms 0 0 0
i3lock --color 202f56 --ignore-empty-password --show-failed-attempts --nofork
xset s off -dpms

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View file

@ -0,0 +1,2 @@
event=button/lid.*
action=/etc/

View file

@ -0,0 +1,13 @@
[Unit]
Description=Lock and suspend on lid closed
Before=sleep.target
[Service]
User=%r
Type=forking
Environment=DISPLAY=:0
ExecStart=/usr/bin/i3lock -ef -c 202f56
ExecStartPost=/us/bin/sleep 1
[Install]
WantedBy=sleep.target

View file

@ -7,9 +7,12 @@ rm -rf $HOME/.config/nvim/
rm -f $HOME/.gnupg/gpg-agent.conf
rm -f $HOME/.gnupg/gpg.conf
rm -rf $HOME/.config/VencordDesktop/VencordDesktop/
rm -rf $HOME/.config/i3
cp -r $GIT_DIR/fish/ $HOME/.config/
cp $GIT_DIR/universal-shellrc.txt $HOME/.config/fish/conf.d/universal.fish
sudo mkdir /usr/share/fonts/meslolgs
sudo cp $GIT_DIR/other-files/*.ttf /usr/share/fonts/meslolgs/
cp -r $GIT_DIR/kitty/ $HOME/.config/
cp -r $GIT_DIR/nvim/ $HOME/.config/
@ -18,4 +21,11 @@ mkdir $HOME/.gnupg
cp -r $GIT_DIR/gnupg/* $HOME/.gnupg/
mkdir -p $HOME/.config/VencordDesktop/VencordDesktop/
cp -r $GIT_DIR/VencordDesktop/* $HOME/.config/VencordDesktop/VencordDesktop/
cp -r $GIT_DIR/VencordDesktop/* $HOME/.config/VencordDesktop/VencordDesktop/
mkdir -p $HOME/.config/Code/User/
cp $GIT_DIR/vscode/keybindings.json $HOME/.config/Code/User/
cp $GIT_DIR/vscode/settings.json $HOME/.config/Code/User/
#for ext in $(cat $GIT_DIR/vscode/extensions.txt); do code --install-extension $ext; done
cp -r $GIT_DIR/i3 $HOME/.config/

111
vscode/extensions.txt Normal file
View file

@ -0,0 +1,111 @@
1YiB.rust-bundle
afmicc.GetterAndSetterGenerator
ahmadalli.vscode-nginx-conf
andischerer.theme-atom-one-dark
andresma.night-nord
aytee17.vscode-oceanic-next-sublime
azemoh.one-monokai
BeardedBear.beardedtheme
Catppuccin.catppuccin-vsc
Catppuccin.catppuccin-vsc-icons
codezombiech.gitignore
ctenbrinke.vscode-tsv
danielpinto8zz6.c-cpp-compile-run
DavidAnson.vscode-markdownlint
DiegoMolina.css-minify
dustypomerleau.rust-syntax
equinusocio.vsc-material-theme-icons
eserozvataf.one-dark-pro-monokai-darker
felipecaputo.git-project-manager
fisheva.eva-theme
formulahendry.code-runner
foxundermoon.shell-format
freebroccolo.theme-atom-one-dark
GitHub.copilot
GitHub.copilot-chat
GitHub.copilot-labs
GitHub.github-vscode-theme
GitHub.vscode-pull-request-github
GrapeCity.gc-excelviewer
Gruntfuggly.todo-tree
HarryHopkinson.vim-theme
hoovercj.vscode-settings-cycler
ItzSelenux.lm-theme
JoelCrosby.one-dark-darker
kisstkondoros.vscode-gutter-preview
kokoscript.loopytheme
manuth.markdown-converter
marlinfirmware.auto-build
marvhen.reflow-markdown
matthewpi.caddyfile-support
maximtrp.drone-ci
mechatroner.rainbow-csv
mhutchie.git-graph
mohd-akram.vscode-html-format
ms-azuretools.vscode-docker
ms-python.autopep8
ms-python.black-formatter
ms-python.isort
ms-python.python
ms-python.vscode-pylance
ms-toolsai.jupyter
ms-toolsai.jupyter-keymap
ms-toolsai.jupyter-renderers
ms-toolsai.vscode-jupyter-cell-tags
ms-toolsai.vscode-jupyter-slideshow
ms-vscode-remote.remote-containers
ms-vscode-remote.remote-ssh
ms-vscode-remote.remote-ssh-edit
ms-vscode-remote.remote-wsl
ms-vscode-remote.vscode-remote-extensionpack
ms-vscode.cmake-tools
ms-vscode.cpptools
ms-vscode.cpptools-extension-pack
ms-vscode.cpptools-themes
ms-vscode.hexeditor
ms-vscode.live-server
ms-vscode.makefile-tools
ms-vscode.remote-explorer
ms-vscode.remote-server
ms-vscode.vscode-serial-monitor
mwpb.java-prettier-formatter
NicScott.gitkraken-dark
Nord.nord
Novy.vsc-gcode
phplasma.csv-to-table
Pilleye.dusk-theme
platformio.platformio-ide
raynigon.nginx-formatter
rdnlsmith.linux-themes
redhat.java
redhat.vscode-xml
redhat.vscode-yaml
RobbOwen.synthwave-vscode
rokoroku.vscode-theme-darcula
rust-lang.rust-analyzer
SanaAjani.taskrunnercode
serayuzgur.crates
ShahilKumar.docxreader
slevesque.vscode-zipexplorer
St0pien.min-darker
tatsy.vscode-3d-preview
teabyii.ayu
TheaFlowers.witch-hazel
tinkertrain.theme-panda
tlevesque2.duplicate-finder
tomoki1207.pdf
twxs.cmake
VinayKumar.vice
VisualStudioExptTeam.intellicode-api-usage-examples
VisualStudioExptTeam.vscodeintellicode
vsciot-vscode.vscode-arduino
vscjava.vscode-java-debug
vscjava.vscode-java-dependency
vscjava.vscode-java-pack
vscjava.vscode-java-test
vscjava.vscode-maven
vscodevim.vim
wayou.vscode-todo-highlight
yzhang.markdown-all-in-one
zamerick.vscode-caddyfile-syntax
zhuangtongfa.material-theme

11
vscode/keybindings.json Normal file
View file

@ -0,0 +1,11 @@
// Place your key bindings in this file to override the defaults
[
{
"key": "alt+\\",
"command": "settings.cycle.inlineCopilot",
},
{
"key": "f10",
"command": "C_Cpp.BuildAndRunFile"
}
]

72
vscode/settings.json Normal file
View file

@ -0,0 +1,72 @@
{
"editor.inlineSuggest.enabled": true,
"git.autofetch": true,
"github.copilot.enable": {
"*": true,
"plaintext": true,
"markdown": true,
"scminput": false,
"yaml": true,
"python": true
},
"git.confirmSync": false,
"arduino.useArduinoCli": true,
"[python]": {
"editor.formatOnType": true,
"editor.defaultFormatter": "ms-python.autopep8"
},
"[markdown]": {
"editor.defaultFormatter": "DavidAnson.vscode-markdownlint"
},
"auto-build.defaultEnv.name": "STM32G0B1RE_btt",
"auto-build.build.silent": false,
"redhat.telemetry.enabled": false,
//"editor.rulers": [
// 120
//],
"telemetry.telemetryLevel": "off",
"security.workspace.trust.untrustedFiles": "open",
"keyboard.dispatch": "keyCode",
"vim.disableExtension": true,
"terminal.integrated.defaultProfile.linux": "fish",
"files.exclude": {
"tmp.md": true
},
"[java]": {
"editor.defaultFormatter": "redhat.java"
},
"[html]": {
"editor.defaultFormatter": "mohd-akram.vscode-html-format"
},
"workbench.colorTheme": "Catppuccin Mocha",
"terminal.integrated.defaultProfile.windows": "PowerShell",
"terminal.integrated.profiles.windows": {
"PowerShell": {
"source": "PowerShell",
"icon": "terminal-powershell"
},
"Command Prompt": {
"path": [
"${env:windir}\\Sysnative\\cmd.exe",
"${env:windir}\\System32\\cmd.exe"
],
"args": [],
"icon": "terminal-cmd"
},
"Git Bash": {
"source": "Git Bash"
}
},
"code-runner.runInTerminal": true,
"hexeditor.columnWidth": 32,
"hexeditor.showDecodedText": true,
"hexeditor.defaultEndianness": "little",
"hexeditor.inspectorType": "aside",
"[dockerfile]": {
"editor.defaultFormatter": "ms-azuretools.vscode-docker"
},
"[nginx]": {
"editor.defaultFormatter": "raynigon.nginx-formatter"
},
"workbench.iconTheme": "catppuccin-mocha"
}