Last active
July 26, 2024 08:04
-
-
Save JaySon-Huang/7f2190878aa2890cf43e11ac8f654b52 to your computer and use it in GitHub Desktop.
My own oh-my-zsh
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
""""" 文件编码 | |
set fileencodings=utf-8,gbk,gb2312 | |
set termencoding=utf-8 | |
set encoding=utf-8 | |
"""""" 缩进相关 | |
set ts=4 " tabstop 设置tab为4个空格 | |
set sw=4 " shiftwidth 每层缩进4个空格 | |
set expandtab " 输入的tab自动展开为空格. 设置后, 输入TAB, 需要Ctrl-V<TAB> | |
set softtabstop=4 | |
"set smarttab | |
"set ai! | |
"set cindent | |
"set smartindent | |
set sm " 输入后括号时, 光标跳回对应的前括号显示匹配情况 | |
"""""" 显示相关 | |
set nu " 显示行号 | |
set ru " 显示屏幕右下角行号, 列号信息 | |
set showtabline=2 | |
set ic " 查找时不考虑大小写 | |
set incsearch " 增量搜索 | |
set hlsearch " 搜索时高亮结果 | |
set cursorline " 显示当前行 | |
set showmode " 显示当前操作模式 | |
"Sets how many lines of history VIM har to remember | |
set history=400 | |
set nocompatible " 不使用旧的VI兼容模式 | |
"set mouse=a " 鼠标可用 | |
"set mouse=v " 关闭鼠标模式 | |
set autoread " 文件被修改时, 重新加载 | |
" 记录上次打开文件时编辑的位置 | |
au BufReadPost * if line("'\"") > 0|if line("'\"") <= line("$")|exe("norm '\"")|else|exe "norm $"|endif|endif | |
"解决粘贴时的自动缩进带来的自动注释困扰 (和autoindent互斥, 要粘贴代码时手动输入 :set paste) | |
"set paste | |
" 设置vim打开文件之后,页脚的状态栏,包括文件编码,文件类型,光标当前列,当前行,以及总行数等信息 | |
set statusline=%2*%n%m%r%h%w%*\ %f\ %1*[FORMAT=%2*%{&ff}:%{&fenc!=''?&fenc:&enc}%1*]\ [Type=%2*%Y%1*]\ [Column=%2*%v%1*]\ [Line=%2*%l%1*/%3*%L(%p%%)%1*] | |
set laststatus=2 | |
" Auto add head info | |
" .py file into add header | |
function! HeaderPython() | |
call setline(1, "#!/usr/bin/env python") | |
call append(1, "#encoding=utf-8") | |
call append(2, "from __future__ import print_function") | |
call append(3, "import sys") | |
call append(4, "") | |
call append(5, "__doc__= ''' '''") | |
call append(5, "__author__ = ''") | |
call append(6, "") | |
normal G | |
normal o | |
endf | |
autocmd bufnewfile *.py call HeaderPython() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
ZSH_THEME="jayson" | |
# Install some plugins | |
# https://github.com/zsh-users/zsh-autosuggestions/blob/master/INSTALL.md | |
# https://github.com/zsh-users/zsh-syntax-highlighting/blob/master/INSTALL.md | |
plugins=(git | |
z # jump to workspace | |
python pip | |
rust | |
zsh-autosuggestions zsh-syntax-highlighting | |
vi-mode # ESC+v to edit current commandline | |
colored-man-pages # colorful man pages | |
history # hanful alias for history && search | |
) | |
export LANG="en_US.UTF-8" | |
export LC_ALL="en_US.UTF-8" | |
# some settings | |
TIMEFMT=$'\nreal\t%E\nuser\t%U\nsys\t%S' | |
unsetopt share_history | |
DISABLE_AUTO_TITLE="true" | |
unset MAILCHECK | |
# some alias | |
alias tailf='tail -f' | |
alias byobu='SHELL=/bin/zsh byobu' | |
alias bbr='byobu -r' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# jayson.zsh-theme | |
# Based on gnzh theme | |
setopt prompt_subst | |
() { | |
local PR_USER PR_USER_OP PR_PROMPT PR_HOST | |
# Check the UID | |
if [[ $UID -ne 0 ]]; then # normal user | |
PR_USER='%F{green}%n%f' | |
PR_USER_OP='%F{green}%#%f' | |
PR_PROMPT='%f> %f' | |
else # root | |
PR_USER='%F{red}%n%f' | |
PR_USER_OP='%F{red}%#%f' | |
PR_PROMPT='%F{red}> %f' | |
fi | |
# Check if we are on SSH or not | |
if [[ -n "$SSH_CLIENT" || -n "$SSH2_CLIENT" ]]; then | |
PR_HOST='%F{red}%M%f' # SSH | |
else | |
PR_HOST='%F{green}%M%f' # no SSH | |
fi | |
local return_code="%(?..%F{red}%? ↵%f)" | |
local user_host="${PR_USER}%F{cyan}@${PR_HOST}" | |
local current_dir="%B%F{blue}%d%f%b" | |
local rvm_ruby='' | |
if ${HOME}/.rvm/bin/rvm-prompt &> /dev/null; then # detect user-local rvm installation | |
rvm_ruby='%F{red}‹$(${HOME}/.rvm/bin/rvm-prompt i v g s)›%f' | |
elif which rvm-prompt &> /dev/null; then # detect system-wide rvm installation | |
rvm_ruby='%F{red}‹$(rvm-prompt i v g s)›%f' | |
elif which rbenv &> /dev/null; then # detect Simple Ruby Version Management | |
rvm_ruby='%F{red}‹$(rbenv version | sed -e "s/ (set.*$//")›%f' | |
fi | |
local git_branch='$(git_prompt_info)' | |
PROMPT="${user_host} ${current_dir}${rvm_ruby} ${git_branch} | |
$PR_PROMPT " | |
RPROMPT="${return_code}" | |
eval my_gray='$FG[246]' | |
RPS1='$my_gray%D{%Y-%m-%d %H:%M:%S}%{$reset_color%}%' | |
ZSH_THEME_GIT_PROMPT_PREFIX="%F{yellow}[" | |
ZSH_THEME_GIT_PROMPT_SUFFIX="]%f" | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
cargo install ripgrep | |
cargo install --locked zellij |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment