Compare commits

..

5 Commits

5 changed files with 239 additions and 12 deletions

View File

@ -75,10 +75,11 @@ pacman = [
'grc',
'zellij',
'ranger',
'vim',
'neovim',
]
pacman_nogui = [
'vim',
]
pacman_gui = [
'gvim',
'neovide',
@ -117,7 +118,6 @@ pacman = [
'grc',
'zellij',
'ranger',
'vim',
'neovim',
'python',
'go',
@ -125,6 +125,9 @@ pacman = [
'npm',
'jdk-openjdk',
]
pacman_nogui = [
'vim',
]
pacman_gui = [
'gvim',
'neovide',

View File

@ -3,6 +3,11 @@
url = "https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim"
refreshPeriod = "168h"
[".oh-my-bash"]
type = "git-repo"
url = "https://github.com/ohmybash/oh-my-bash"
refreshPeriod = "168h"
{{ if not .noGUI }}
[".config/alacritty/themes"]
type = "git-repo"

View File

@ -62,7 +62,9 @@ rm -rf lazygit.tar.gz lazygit
{{- $pacman_force := .packages.linux.arch.pacman_force -}}
{{- $pacmanInstall := .packages.linux.arch.pacman -}}
{{- $aurInstall := .packages.linux.arch.aur -}}
{{- if not .noGUI -}}
{{- if .noGUI -}}
{{- $pacmanInstall = concat .packages.linux.arch.pacman .packages.linux.arch.pacman_nogui -}}
{{- else -}}
{{- $pacmanInstall = concat .packages.linux.arch.pacman .packages.linux.arch.pacman_gui -}}
{{- $aurInstall = concat .packages.linux.arch.aur .packages.linux.arch.aur_gui -}}
{{- end -}}
@ -71,7 +73,9 @@ rm -rf lazygit.tar.gz lazygit
{{- $pacman_force = .packages.linux.manjaro.pacman_force -}}
{{- $pacmanInstall = .packages.linux.manjaro.pacman -}}
{{- $aurInstall = .packages.linux.manjaro.aur -}}
{{- if not .noGUI -}}
{{- if .noGUI -}}
{{- $pacmanInstall = concat .packages.linux.manjaro.pacman .packages.linux.manjaro.pacman_nogui -}}
{{- else -}}
{{- $pacmanInstall = concat .packages.linux.manjaro.pacman .packages.linux.manjaro.pacman_gui -}}
{{- $aurInstall = concat .packages.linux.manjaro.aur .packages.linux.manjaro.aur_gui -}}
{{- end -}}

View File

@ -217,17 +217,17 @@
##################################[ dir: current directory ]##################################
# Default current directory color.
typeset -g POWERLEVEL9K_DIR_FOREGROUND=4
typeset -g POWERLEVEL9K_DIR_FOREGROUND=7
# If directory is too long, shorten some of its segments to the shortest possible unique
# prefix. The shortened directory can be tab-completed to the original.
typeset -g POWERLEVEL9K_SHORTEN_STRATEGY=truncate_to_unique
# Replace removed segment suffixes with this symbol.
typeset -g POWERLEVEL9K_SHORTEN_DELIMITER=
# Color of the shortened directory segments.
typeset -g POWERLEVEL9K_DIR_SHORTENED_FOREGROUND=4
typeset -g POWERLEVEL9K_DIR_SHORTENED_FOREGROUND=7
# Color of the anchor directory segments. Anchor segments are never shortened. The first
# segment is always an anchor.
typeset -g POWERLEVEL9K_DIR_ANCHOR_FOREGROUND=4
typeset -g POWERLEVEL9K_DIR_ANCHOR_FOREGROUND=7
# Set to true to display anchor directory segments in bold.
typeset -g POWERLEVEL9K_DIR_ANCHOR_BOLD=false
# Don't shorten directories that contain any of these files. They are anchors.
@ -908,9 +908,9 @@
# Context color when running with privileges.
typeset -g POWERLEVEL9K_CONTEXT_ROOT_FOREGROUND=1
# Context color in SSH without privileges.
typeset -g POWERLEVEL9K_CONTEXT_{REMOTE,REMOTE_SUDO}_FOREGROUND=7
typeset -g POWERLEVEL9K_CONTEXT_{REMOTE,REMOTE_SUDO}_FOREGROUND=11
# Default context color (no privileges, no SSH).
typeset -g POWERLEVEL9K_CONTEXT_FOREGROUND=7
typeset -g POWERLEVEL9K_CONTEXT_FOREGROUND=11
# Context format when running with privileges: bold user@hostname.
typeset -g POWERLEVEL9K_CONTEXT_ROOT_TEMPLATE='%B%n@%m'
@ -1553,7 +1553,7 @@
###############################[ public_ip: public IP address ]###############################
# Public IP color.
typeset -g POWERLEVEL9K_PUBLIC_IP_FOREGROUND=6
typeset -g POWERLEVEL9K_PUBLIC_IP_FOREGROUND=4
# Custom icon.
# typeset -g POWERLEVEL9K_PUBLIC_IP_VISUAL_IDENTIFIER_EXPANSION='⭐'
@ -1575,7 +1575,7 @@
###########[ ip: ip address and bandwidth usage for a specified network interface ]###########
# IP color.
typeset -g POWERLEVEL9K_IP_FOREGROUND=4
typeset -g POWERLEVEL9K_IP_FOREGROUND=6
# The following parameters are accessible within the expansion:
#
# Parameter | Meaning

View File

@ -6,7 +6,222 @@
{{ include "/etc/skel/.bashrc" | trim }}
{{ end }}
# ----oh-my-bash 內容 ------------------------------------------------------
# Enable the subsequent settings only in interactive sessions
case $- in
*i*) ;;
*) return;;
esac
# Path to your oh-my-bash installation.
export OSH='/home/yuan/.oh-my-bash'
# Set name of the theme to load. Optionally, if you set this to "random"
# it'll load a random theme each time that oh-my-bash is loaded.
OSH_THEME="powerbash10k"
__PB10K_TOP_LEFT="user_info dir scm"
__PB10K_TOP_RIGHT="exitcode cmd_duration python ruby todo clock battery"
__PB10K_BOTTOM="char"
# If you set OSH_THEME to "random", you can ignore themes you don't like.
# OMB_THEME_RANDOM_IGNORED=("powerbash10k" "wanelo")
# You can also specify the list from which a theme is randomly selected:
# OMB_THEME_RANDOM_CANDIDATES=("font" "powerline-light" "minimal")
# Uncomment the following line to use case-sensitive completion.
# OMB_CASE_SENSITIVE="true"
# Uncomment the following line to use hyphen-insensitive completion. Case
# sensitive completion must be off. _ and - will be interchangeable.
# OMB_HYPHEN_SENSITIVE="false"
# Uncomment the following line to disable bi-weekly auto-update checks.
DISABLE_AUTO_UPDATE="true"
# Uncomment the following line to change how often to auto-update (in days).
# export UPDATE_OSH_DAYS=13
# Uncomment the following line to disable colors in ls.
# DISABLE_LS_COLORS="true"
# Uncomment the following line to disable auto-setting terminal title.
# DISABLE_AUTO_TITLE="true"
# Uncomment the following line to enable command auto-correction.
# ENABLE_CORRECTION="true"
# Uncomment the following line to display red dots whilst waiting for completion.
# COMPLETION_WAITING_DOTS="true"
# Uncomment the following line if you want to disable marking untracked files
# under VCS as dirty. This makes repository status check for large repositories
# much, much faster.
# DISABLE_UNTRACKED_FILES_DIRTY="true"
# Uncomment the following line if you don't want the repository to be considered dirty
# if there are untracked files.
# SCM_GIT_DISABLE_UNTRACKED_DIRTY="true"
# Uncomment the following line if you want to completely ignore the presence
# of untracked files in the repository.
# SCM_GIT_IGNORE_UNTRACKED="true"
# Uncomment the following line if you want to change the command execution time
# stamp shown in the history command output. One of the following values can
# be used to specify the timestamp format.
# * 'mm/dd/yyyy' # mm/dd/yyyy + time
# * 'dd.mm.yyyy' # dd.mm.yyyy + time
# * 'yyyy-mm-dd' # yyyy-mm-dd + time
# * '[mm/dd/yyyy]' # [mm/dd/yyyy] + [time] with colors
# * '[dd.mm.yyyy]' # [dd.mm.yyyy] + [time] with colors
# * '[yyyy-mm-dd]' # [yyyy-mm-dd] + [time] with colors
# If not set, the default value is 'yyyy-mm-dd'.
# HIST_STAMPS='yyyy-mm-dd'
# Uncomment the following line if you do not want OMB to overwrite the existing
# aliases by the default OMB aliases defined in lib/*.sh
# OMB_DEFAULT_ALIASES="check"
# Would you like to use another custom folder than $OSH/custom?
# OSH_CUSTOM=/path/to/new-custom-folder
# To disable the uses of "sudo" by oh-my-bash, please set "false" to
# this variable. The default behavior for the empty value is "true".
OMB_USE_SUDO=true
# To enable/disable display of Python virtualenv and condaenv
# OMB_PROMPT_SHOW_PYTHON_VENV=true # enable
# OMB_PROMPT_SHOW_PYTHON_VENV=false # disable
# To enable/disable Spack environment information
# OMB_PROMPT_SHOW_SPACK_ENV=true # enable
# OMB_PROMPT_SHOW_SPACK_ENV=false # disable
# Which completions would you like to load? (completions can be found in ~/.oh-my-bash/completions/*)
# Custom completions may be added to ~/.oh-my-bash/custom/completions/
# Example format: completions=(ssh git bundler gem pip pip3)
# Add wisely, as too many completions slow down shell startup.
completions=(
git
composer
ssh
)
# Which aliases would you like to load? (aliases can be found in ~/.oh-my-bash/aliases/*)
# Custom aliases may be added to ~/.oh-my-bash/custom/aliases/
# Example format: aliases=(vagrant composer git-avh)
# Add wisely, as too many aliases slow down shell startup.
aliases=(
general
)
# Which plugins would you like to load? (plugins can be found in ~/.oh-my-bash/plugins/*)
# Custom plugins may be added to ~/.oh-my-bash/custom/plugins/
# Example format: plugins=(rails git textmate ruby lighthouse)
# Add wisely, as too many plugins slow down shell startup.
plugins=(
git
bashmarks
sudo
chezmoi
)
# Which plugins would you like to conditionally load? (plugins can be found in ~/.oh-my-bash/plugins/*)
# Custom plugins may be added to ~/.oh-my-bash/custom/plugins/
# Example format:
# if [ "$DISPLAY" ] || [ "$SSH" ]; then
# plugins+=(tmux-autoattach)
# fi
# If you want to reduce the initialization cost of the "tput" command to
# initialize color escape sequences, you can uncomment the following setting.
# This disables the use of the "tput" command, and the escape sequences are
# initialized to be the ANSI version:
#
#OMB_TERM_USE_TPUT=no
source "$OSH"/oh-my-bash.sh
# User configuration
# export MANPATH="/usr/local/man:$MANPATH"
# You may need to manually set your language environment
# export LANG=en_US.UTF-8
# Preferred editor for local and remote sessions
# if [[ -n $SSH_CONNECTION ]]; then
# export EDITOR='vim'
# else
# export EDITOR='mvim'
# fi
# Compilation flags
# export ARCHFLAGS="-arch x86_64"
# ssh
# export SSH_KEY_PATH="~/.ssh/rsa_id"
# Set personal aliases, overriding those provided by oh-my-bash libs,
# plugins, and themes. Aliases can be placed here, though oh-my-bash
# users are encouraged to define aliases within the OSH_CUSTOM folder.
# For a full list of active aliases, run `alias`.
#
# Example aliases
# alias bashconfig="mate ~/.bashrc"
# alias ohmybash="mate ~/.oh-my-bash"
function __pb10k_top {
local seg segments info terminal_width filler_character cursor_adjust
local __TOP_LEFT="\n$_omb_prompt_black╭─ "
local __TOP_RIGHT=""
local __TOP_RIGHT_LEN=0
local __SEG_AT_RIGHT=0
IFS=" " read -ra segments <<< "$__PB10K_TOP_LEFT"
for seg in "${segments[@]}"; do
info="$(__pb10k_prompt_"$seg")"
[ "$info" != "" ] && __pb10k_top_left_parse "$info"
done
terminal_width=$(tput cols)
filler_character="─"
__TOP_LEFT+="$_omb_prompt_black"
__TOP_LEFT+="$(for ((i=0; i<"$terminal_width"; i++)); do printf "%s" "$filler_character"; done)"
__TOP_LEFT+="\033[${terminal_width}G\033[1K\033[1A"
IFS=" " read -ra segments <<< "$__PB10K_TOP_RIGHT"
for seg in "${segments[@]}"; do
info="$(__pb10k_prompt_"$seg")"
[ "$info" != "" ] && __pb10k_top_right_parse "$info"
done
[ "$__TOP_RIGHT_LEN" -gt 0 ] && __TOP_RIGHT_LEN=$(( __TOP_RIGHT_LEN - 1 ))
cursor_adjust="\033[${__TOP_RIGHT_LEN}D"
__TOP_LEFT+="$cursor_adjust"
printf "%s%s" "$__TOP_LEFT" "$__TOP_RIGHT"
}
function __pb10k_bottom {
local seg segments info
local __BOTTOM=""
_omb_util_split segments "$__PB10K_BOTTOM"
for seg in "${segments[@]}"; do
info=$(__pb10k_prompt_"$seg")
[[ $info ]] && __pb10k_bottom_parse "$info"
done
printf "\n$_omb_prompt_black╰─ %s" "$__BOTTOM"
}
# ----以下是我的自訂內容 ------------------------------------------------------
export LANG=zh_TW.UTF-8 #macOS要手動指定不然被ssh連入使用時會變亂碼
# overwrite ls
if command -v eza &> /dev/null; then
alias ls='eza --color=always --icons=always'
elif command -v exa &> /dev/null; then
alias ls='exa --color=always --icons'
fi
{{ template "common.sh.tmpl" . }}