Fix zsh config inclusion
This commit is contained in:
		
							
								
								
									
										10
									
								
								zsh/.oh-my-zsh_old/lib/bzr.zsh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										10
									
								
								zsh/.oh-my-zsh_old/lib/bzr.zsh
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,10 @@ | ||||
| ## Bazaar integration | ||||
| ## Just works with the GIT integration just add $(bzr_prompt_info) to the PROMPT | ||||
| function bzr_prompt_info() { | ||||
| 	BZR_CB=`bzr nick 2> /dev/null | grep -v "ERROR" | cut -d ":" -f2 | awk -F / '{print "bzr::"$1}'` | ||||
| 	if [ -n "$BZR_CB" ]; then | ||||
| 		BZR_DIRTY="" | ||||
| 		[[ -n `bzr status` ]] && BZR_DIRTY=" %{$fg[red]%} * %{$fg[green]%}" | ||||
| 		echo "$ZSH_THEME_SCM_PROMPT_PREFIX$BZR_CB$BZR_DIRTY$ZSH_THEME_GIT_PROMPT_SUFFIX" | ||||
| 	fi | ||||
| } | ||||
							
								
								
									
										86
									
								
								zsh/.oh-my-zsh_old/lib/clipboard.zsh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										86
									
								
								zsh/.oh-my-zsh_old/lib/clipboard.zsh
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,86 @@ | ||||
| # System clipboard integration | ||||
| # | ||||
| # This file has support for doing system clipboard copy and paste operations | ||||
| # from the command line in a generic cross-platform fashion. | ||||
| # | ||||
| # On OS X and Windows, the main system clipboard or "pasteboard" is used. On other | ||||
| # Unix-like OSes, this considers the X Windows CLIPBOARD selection to be the | ||||
| # "system clipboard", and the X Windows `xclip` command must be installed. | ||||
|  | ||||
| # clipcopy - Copy data to clipboard | ||||
| # | ||||
| # Usage: | ||||
| # | ||||
| #  <command> | clipcopy    - copies stdin to clipboard | ||||
| # | ||||
| #  clipcopy <file>         - copies a file's contents to clipboard | ||||
| # | ||||
| function clipcopy() { | ||||
|   emulate -L zsh | ||||
|   local file=$1 | ||||
|   if [[ $OSTYPE == darwin* ]]; then | ||||
|     if [[ -z $file ]]; then | ||||
|       pbcopy | ||||
|     else | ||||
|       cat $file | pbcopy | ||||
|     fi | ||||
|   elif [[ $OSTYPE == (cygwin|msys)* ]]; then | ||||
|     if [[ -z $file ]]; then | ||||
|       cat > /dev/clipboard | ||||
|     else | ||||
|       cat $file > /dev/clipboard | ||||
|     fi | ||||
|   else | ||||
|     if (( $+commands[xclip] )); then | ||||
|       if [[ -z $file ]]; then | ||||
|         xclip -in -selection clipboard | ||||
|       else | ||||
|         xclip -in -selection clipboard $file | ||||
|       fi | ||||
|     elif (( $+commands[xsel] )); then | ||||
|       if [[ -z $file ]]; then | ||||
|         xsel --clipboard --input  | ||||
|       else | ||||
|         cat "$file" | xsel --clipboard --input | ||||
|       fi | ||||
|     else | ||||
|       print "clipcopy: Platform $OSTYPE not supported or xclip/xsel not installed" >&2 | ||||
|       return 1 | ||||
|     fi | ||||
|   fi | ||||
| } | ||||
|  | ||||
| # clippaste - "Paste" data from clipboard to stdout | ||||
| # | ||||
| # Usage: | ||||
| # | ||||
| #   clippaste   - writes clipboard's contents to stdout | ||||
| # | ||||
| #   clippaste | <command>    - pastes contents and pipes it to another process | ||||
| # | ||||
| #   clippaste > <file>      - paste contents to a file | ||||
| # | ||||
| # Examples: | ||||
| # | ||||
| #   # Pipe to another process | ||||
| #   clippaste | grep foo | ||||
| # | ||||
| #   # Paste to a file | ||||
| #   clippaste > file.txt | ||||
| function clippaste() { | ||||
|   emulate -L zsh | ||||
|   if [[ $OSTYPE == darwin* ]]; then | ||||
|     pbpaste | ||||
|   elif [[ $OSTYPE == (cygwin|msys)* ]]; then | ||||
|     cat /dev/clipboard | ||||
|   else | ||||
|     if (( $+commands[xclip] )); then | ||||
|       xclip -out -selection clipboard | ||||
|     elif (( $+commands[xsel] )); then | ||||
|       xsel --clipboard --output | ||||
|     else | ||||
|       print "clipcopy: Platform $OSTYPE not supported or xclip/xsel not installed" >&2 | ||||
|       return 1 | ||||
|     fi | ||||
|   fi | ||||
| } | ||||
							
								
								
									
										44
									
								
								zsh/.oh-my-zsh_old/lib/compfix.zsh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										44
									
								
								zsh/.oh-my-zsh_old/lib/compfix.zsh
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,44 @@ | ||||
| # Handle completions insecurities (i.e., completion-dependent directories with | ||||
| # insecure ownership or permissions) by: | ||||
| # | ||||
| # * Human-readably notifying the user of these insecurities. | ||||
| function handle_completion_insecurities() { | ||||
|   # List of the absolute paths of all unique insecure directories, split on | ||||
|   # newline from compaudit()'s output resembling: | ||||
|   # | ||||
|   #     There are insecure directories: | ||||
|   #     /usr/share/zsh/site-functions | ||||
|   #     /usr/share/zsh/5.0.6/functions | ||||
|   #     /usr/share/zsh | ||||
|   #     /usr/share/zsh/5.0.6 | ||||
|   # | ||||
|   # Since the ignorable first line is printed to stderr and thus not captured, | ||||
|   # stderr is squelched to prevent this output from leaking to the user.  | ||||
|   local -aU insecure_dirs | ||||
|   insecure_dirs=( ${(f@):-"$(compaudit 2>/dev/null)"} ) | ||||
|  | ||||
|   # If no such directories exist, get us out of here. | ||||
|   [[ -z "${insecure_dirs}" ]] && return | ||||
|  | ||||
|   # List ownership and permissions of all insecure directories. | ||||
|   print "[oh-my-zsh] Insecure completion-dependent directories detected:" | ||||
|   ls -ld "${(@)insecure_dirs}" | ||||
|  | ||||
|   cat <<EOD | ||||
|  | ||||
| [oh-my-zsh] For safety, we will not load completions from these directories until | ||||
| [oh-my-zsh] you fix their permissions and ownership and restart zsh. | ||||
| [oh-my-zsh] See the above list for directories with group or other writability. | ||||
|  | ||||
| [oh-my-zsh] To fix your permissions you can do so by disabling | ||||
| [oh-my-zsh] the write permission of "group" and "others" and making sure that the | ||||
| [oh-my-zsh] owner of these directories is either root or your current user. | ||||
| [oh-my-zsh] The following command may help: | ||||
| [oh-my-zsh]     compaudit | xargs chmod g-w,o-w | ||||
|  | ||||
| [oh-my-zsh] If the above didn't help or you want to skip the verification of | ||||
| [oh-my-zsh] insecure directories you can set the variable ZSH_DISABLE_COMPFIX to | ||||
| [oh-my-zsh] "true" before oh-my-zsh is sourced in your zshrc file. | ||||
|  | ||||
| EOD | ||||
| } | ||||
							
								
								
									
										73
									
								
								zsh/.oh-my-zsh_old/lib/completion.zsh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										73
									
								
								zsh/.oh-my-zsh_old/lib/completion.zsh
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,73 @@ | ||||
| # fixme - the load process here seems a bit bizarre | ||||
| zmodload -i zsh/complist | ||||
|  | ||||
| WORDCHARS='' | ||||
|  | ||||
| unsetopt menu_complete   # do not autoselect the first completion entry | ||||
| unsetopt flowcontrol | ||||
| setopt auto_menu         # show completion menu on successive tab press | ||||
| setopt complete_in_word | ||||
| setopt always_to_end | ||||
|  | ||||
| # should this be in keybindings? | ||||
| bindkey -M menuselect '^o' accept-and-infer-next-history | ||||
| zstyle ':completion:*:*:*:*:*' menu select | ||||
|  | ||||
| # case insensitive (all), partial-word and substring completion | ||||
| if [[ "$CASE_SENSITIVE" = true ]]; then | ||||
|   zstyle ':completion:*' matcher-list 'r:|=*' 'l:|=* r:|=*' | ||||
| else | ||||
|   if [[ "$HYPHEN_INSENSITIVE" = true ]]; then | ||||
|     zstyle ':completion:*' matcher-list 'm:{a-zA-Z-_}={A-Za-z_-}' 'r:|=*' 'l:|=* r:|=*' | ||||
|   else | ||||
|     zstyle ':completion:*' matcher-list 'm:{a-zA-Z}={A-Za-z}' 'r:|=*' 'l:|=* r:|=*' | ||||
|   fi | ||||
| fi | ||||
| unset CASE_SENSITIVE HYPHEN_INSENSITIVE | ||||
|  | ||||
| # Complete . and .. special directories | ||||
| zstyle ':completion:*' special-dirs true | ||||
|  | ||||
| zstyle ':completion:*' list-colors '' | ||||
| zstyle ':completion:*:*:kill:*:processes' list-colors '=(#b) #([0-9]#) ([0-9a-z-]#)*=01;34=0=01' | ||||
|  | ||||
| if [[ "$OSTYPE" = solaris* ]]; then | ||||
|   zstyle ':completion:*:*:*:*:processes' command "ps -u $USER -o pid,user,comm" | ||||
| else | ||||
|   zstyle ':completion:*:*:*:*:processes' command "ps -u $USER -o pid,user,comm -w -w" | ||||
| fi | ||||
|  | ||||
| # disable named-directories autocompletion | ||||
| zstyle ':completion:*:cd:*' tag-order local-directories directory-stack path-directories | ||||
|  | ||||
| # Use caching so that commands like apt and dpkg complete are useable | ||||
| zstyle ':completion::complete:*' use-cache 1 | ||||
| zstyle ':completion::complete:*' cache-path $ZSH_CACHE_DIR | ||||
|  | ||||
| # Don't complete uninteresting users | ||||
| zstyle ':completion:*:*:*:users' ignored-patterns \ | ||||
|         adm amanda apache at avahi avahi-autoipd beaglidx bin cacti canna \ | ||||
|         clamav daemon dbus distcache dnsmasq dovecot fax ftp games gdm \ | ||||
|         gkrellmd gopher hacluster haldaemon halt hsqldb ident junkbust kdm \ | ||||
|         ldap lp mail mailman mailnull man messagebus  mldonkey mysql nagios \ | ||||
|         named netdump news nfsnobody nobody nscd ntp nut nx obsrun openvpn \ | ||||
|         operator pcap polkitd postfix postgres privoxy pulse pvm quagga radvd \ | ||||
|         rpc rpcuser rpm rtkit scard shutdown squid sshd statd svn sync tftp \ | ||||
|         usbmux uucp vcsa wwwrun xfs '_*' | ||||
|  | ||||
| # ... unless we really want to. | ||||
| zstyle '*' single-ignored show | ||||
|  | ||||
| if [[ $COMPLETION_WAITING_DOTS = true ]]; then | ||||
|   expand-or-complete-with-dots() { | ||||
|     # toggle line-wrapping off and back on again | ||||
|     [[ -n "$terminfo[rmam]" && -n "$terminfo[smam]" ]] && echoti rmam | ||||
|     print -Pn "%{%F{red}......%f%}" | ||||
|     [[ -n "$terminfo[rmam]" && -n "$terminfo[smam]" ]] && echoti smam | ||||
|  | ||||
|     zle expand-or-complete | ||||
|     zle redisplay | ||||
|   } | ||||
|   zle -N expand-or-complete-with-dots | ||||
|   bindkey "^I" expand-or-complete-with-dots | ||||
| fi | ||||
							
								
								
									
										14
									
								
								zsh/.oh-my-zsh_old/lib/correction.zsh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								zsh/.oh-my-zsh_old/lib/correction.zsh
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,14 @@ | ||||
| if [[ "$ENABLE_CORRECTION" == "true" ]]; then | ||||
|   alias cp='nocorrect cp' | ||||
|   alias ebuild='nocorrect ebuild' | ||||
|   alias gist='nocorrect gist' | ||||
|   alias heroku='nocorrect heroku' | ||||
|   alias hpodder='nocorrect hpodder' | ||||
|   alias man='nocorrect man' | ||||
|   alias mkdir='nocorrect mkdir' | ||||
|   alias mv='nocorrect mv' | ||||
|   alias mysql='nocorrect mysql' | ||||
|   alias sudo='nocorrect sudo' | ||||
|  | ||||
|   setopt correct_all | ||||
| fi | ||||
							
								
								
									
										353
									
								
								zsh/.oh-my-zsh_old/lib/diagnostics.zsh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										353
									
								
								zsh/.oh-my-zsh_old/lib/diagnostics.zsh
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,353 @@ | ||||
| # diagnostics.zsh | ||||
| # | ||||
| # Diagnostic and debugging support for oh-my-zsh | ||||
|  | ||||
| # omz_diagnostic_dump() | ||||
| # | ||||
| # Author: Andrew Janke <andrew@apjanke.net> | ||||
| # | ||||
| # Usage: | ||||
| # | ||||
| # omz_diagnostic_dump [-v] [-V] [file] | ||||
| # | ||||
| # NOTE: This is a work in progress. Its interface and behavior are going to change, | ||||
| # and probably in non-back-compatible ways. | ||||
| # | ||||
| # Outputs a bunch of information about the state and configuration of | ||||
| # oh-my-zsh, zsh, and the user's system. This is intended to provide a | ||||
| # bunch of context for diagnosing your own or a third party's problems, and to | ||||
| # be suitable for posting to public bug reports. | ||||
| # | ||||
| # The output is human-readable and its format may change over time. It is not | ||||
| # suitable for parsing. All the output is in one single file so it can be posted | ||||
| # as a gist or bug comment on GitHub. GitHub doesn't support attaching tarballs | ||||
| # or other files to bugs; otherwise, this would probably have an option to produce | ||||
| # tarballs that contain copies of the config and customization files instead of | ||||
| # catting them all in to one file. | ||||
| # | ||||
| # This is intended to be widely portable, and run anywhere that oh-my-zsh does. | ||||
| # Feel free to report any portability issues as bugs. | ||||
| # | ||||
| # This is written in a defensive style so it still works (and can detect) cases when | ||||
| # basic functionality like echo and which have been redefined. In particular, almost | ||||
| # everything is invoked with "builtin" or "command", to work in the face of user  | ||||
| # redefinitions. | ||||
| # | ||||
| # OPTIONS | ||||
| # | ||||
| # [file]   Specifies the output file. If not given, a file in the current directory | ||||
| #        is selected automatically. | ||||
| # | ||||
| # -v    Increase the verbosity of the dump output. May be specified multiple times. | ||||
| #       Verbosity levels: | ||||
| #        0 - Basic info, shell state, omz configuration, git state | ||||
| #        1 - (default) Adds key binding info and configuration file contents | ||||
| #        2 - Adds zcompdump file contents | ||||
| # | ||||
| # -V    Reduce the verbosity of the dump output. May be specified multiple times. | ||||
| # | ||||
| # TODO: | ||||
| # * Multi-file capture | ||||
| # * Add automatic gist uploading | ||||
| # * Consider whether to move default output file location to TMPDIR. More robust | ||||
| #     but less user friendly. | ||||
| # | ||||
|  | ||||
| autoload -Uz is-at-least | ||||
|  | ||||
| function omz_diagnostic_dump() { | ||||
|   emulate -L zsh | ||||
|  | ||||
|   builtin echo "Generating diagnostic dump; please be patient..." | ||||
|    | ||||
|   local thisfcn=omz_diagnostic_dump | ||||
|   local -A opts | ||||
|   local opt_verbose opt_noverbose opt_outfile | ||||
|   local timestamp=$(date +%Y%m%d-%H%M%S) | ||||
|   local outfile=omz_diagdump_$timestamp.txt | ||||
|   builtin zparseopts -A opts -D -- "v+=opt_verbose" "V+=opt_noverbose" | ||||
|   local verbose n_verbose=${#opt_verbose} n_noverbose=${#opt_noverbose} | ||||
|   (( verbose = 1 + n_verbose - n_noverbose )) | ||||
|  | ||||
|   if [[ ${#*} > 0 ]]; then | ||||
|     opt_outfile=$1 | ||||
|   fi | ||||
|   if [[ ${#*} > 1 ]]; then | ||||
|     builtin echo "$thisfcn: error: too many arguments" >&2 | ||||
|     return 1 | ||||
|   fi | ||||
|   if [[ -n "$opt_outfile" ]]; then | ||||
|     outfile="$opt_outfile" | ||||
|   fi | ||||
|  | ||||
|   # Always write directly to a file so terminal escape sequences are | ||||
|   # captured cleanly | ||||
|   _omz_diag_dump_one_big_text &> "$outfile" | ||||
|   if [[ $? != 0 ]]; then | ||||
|     builtin echo "$thisfcn: error while creating diagnostic dump; see $outfile for details" | ||||
|   fi | ||||
|  | ||||
|   builtin echo | ||||
|   builtin echo Diagnostic dump file created at: "$outfile" | ||||
|   builtin echo | ||||
|   builtin echo To share this with OMZ developers, post it as a gist on GitHub  | ||||
|   builtin echo at "https://gist.github.com" and share the link to the gist. | ||||
|   builtin echo | ||||
|   builtin echo "WARNING: This dump file contains all your zsh and omz configuration files," | ||||
|   builtin echo "so don't share it publicly if there's sensitive information in them." | ||||
|   builtin echo | ||||
|  | ||||
| } | ||||
|  | ||||
| function _omz_diag_dump_one_big_text() { | ||||
|   local program programs progfile md5 | ||||
|  | ||||
|   builtin echo oh-my-zsh diagnostic dump | ||||
|   builtin echo | ||||
|   builtin echo $outfile | ||||
|   builtin echo  | ||||
|    | ||||
|   # Basic system and zsh information | ||||
|   command date | ||||
|   command uname -a | ||||
|   builtin echo OSTYPE=$OSTYPE | ||||
|   builtin echo ZSH_VERSION=$ZSH_VERSION | ||||
|   builtin echo User: $USER | ||||
|   builtin echo umask: $(umask) | ||||
|   builtin echo | ||||
|   _omz_diag_dump_os_specific_version | ||||
|   builtin echo | ||||
|  | ||||
|   # Installed programs | ||||
|   programs=(sh zsh ksh bash sed cat grep ls find git posh) | ||||
|   local progfile="" extra_str="" sha_str="" | ||||
|   for program in $programs; do | ||||
|     extra_str="" sha_str="" | ||||
|     progfile=$(builtin which $program) | ||||
|     if [[ $? == 0 ]]; then | ||||
|       if [[ -e $progfile ]]; then | ||||
|         if builtin whence shasum &>/dev/null; then | ||||
|           sha_str=($(command shasum $progfile)) | ||||
|           sha_str=$sha_str[1] | ||||
|           extra_str+=" SHA $sha_str" | ||||
|         fi | ||||
|         if [[ -h "$progfile" ]]; then | ||||
|           extra_str+=" ( -> ${progfile:A} )" | ||||
|         fi | ||||
|       fi | ||||
|       builtin printf '%-9s %-20s %s\n' "$program is" "$progfile" "$extra_str" | ||||
|     else | ||||
|       builtin echo "$program: not found" | ||||
|     fi | ||||
|   done | ||||
|   builtin echo | ||||
|   builtin echo Command Versions: | ||||
|   builtin echo "zsh: $(zsh --version)" | ||||
|   builtin echo "this zsh session: $ZSH_VERSION" | ||||
|   builtin echo "bash: $(bash --version | command grep bash)" | ||||
|   builtin echo "git: $(git --version)" | ||||
|   builtin echo "grep: $(grep --version)" | ||||
|   builtin echo | ||||
|  | ||||
|   # Core command definitions | ||||
|   _omz_diag_dump_check_core_commands || return 1 | ||||
|   builtin echo   | ||||
|  | ||||
|   # ZSH Process state | ||||
|   builtin echo Process state: | ||||
|   builtin echo pwd: $PWD | ||||
|   if builtin whence pstree &>/dev/null; then | ||||
|     builtin echo Process tree for this shell: | ||||
|     pstree -p $$ | ||||
|   else | ||||
|     ps -fT | ||||
|   fi | ||||
|   builtin set | command grep -a '^\(ZSH\|plugins\|TERM\|LC_\|LANG\|precmd\|chpwd\|preexec\|FPATH\|TTY\|DISPLAY\|PATH\)\|OMZ' | ||||
|   builtin echo | ||||
|   #TODO: Should this include `env` instead of or in addition to `export`? | ||||
|   builtin echo Exported: | ||||
|   builtin echo $(builtin export | command sed 's/=.*//') | ||||
|   builtin echo  | ||||
|   builtin echo Locale: | ||||
|   command locale | ||||
|   builtin echo | ||||
|  | ||||
|   # Zsh installation and configuration | ||||
|   builtin echo Zsh configuration: | ||||
|   builtin echo setopt: $(builtin setopt) | ||||
|   builtin echo | ||||
|   builtin echo zstyle: | ||||
|   builtin zstyle | ||||
|   builtin echo | ||||
|   builtin echo 'compaudit output:' | ||||
|   compaudit | ||||
|   builtin echo  | ||||
|   builtin echo '$fpath directories:' | ||||
|   command ls -lad $fpath | ||||
|   builtin echo | ||||
|  | ||||
|   # Oh-my-zsh installation | ||||
|   builtin echo oh-my-zsh installation: | ||||
|   command ls -ld ~/.z* | ||||
|   command ls -ld ~/.oh* | ||||
|   builtin echo | ||||
|   builtin echo oh-my-zsh git state: | ||||
|   (cd $ZSH && builtin echo "HEAD: $(git rev-parse HEAD)" && git remote -v && git status | command grep "[^[:space:]]") | ||||
|   if [[ $verbose -ge 1 ]]; then | ||||
|     (cd $ZSH && git reflog --date=default | command grep pull) | ||||
|   fi | ||||
|   builtin echo | ||||
|   if [[ -e $ZSH_CUSTOM ]]; then | ||||
|     local custom_dir=$ZSH_CUSTOM | ||||
|     if [[ -h $custom_dir ]]; then | ||||
|       custom_dir=$(cd $custom_dir && pwd -P) | ||||
|     fi | ||||
|     builtin echo "oh-my-zsh custom dir:" | ||||
|     builtin echo "   $ZSH_CUSTOM ($custom_dir)" | ||||
|     (cd ${custom_dir:h} && command find ${custom_dir:t} -name .git -prune -o -print) | ||||
|     builtin echo | ||||
|   fi | ||||
|  | ||||
|   # Key binding and terminal info | ||||
|   if [[ $verbose -ge 1 ]]; then | ||||
|     builtin echo "bindkey:" | ||||
|     builtin bindkey | ||||
|     builtin echo | ||||
|     builtin echo "infocmp:" | ||||
|     command infocmp -L | ||||
|     builtin echo | ||||
|   fi | ||||
|  | ||||
|   # Configuration file info | ||||
|   local zdotdir=${ZDOTDIR:-$HOME} | ||||
|   builtin echo "Zsh configuration files:" | ||||
|   local cfgfile cfgfiles | ||||
|   # Some files for bash that zsh does not use are intentionally included | ||||
|   # to help with diagnosing behavior differences between bash and zsh | ||||
|   cfgfiles=( /etc/zshenv /etc/zprofile /etc/zshrc /etc/zlogin /etc/zlogout  | ||||
|     $zdotdir/.zshenv $zdotdir/.zprofile $zdotdir/.zshrc $zdotdir/.zlogin $zdotdir/.zlogout | ||||
|     ~/.zsh.pre-oh-my-zsh | ||||
|     /etc/bashrc /etc/profile ~/.bashrc ~/.profile ~/.bash_profile ~/.bash_logout ) | ||||
|   command ls -lad $cfgfiles 2>&1 | ||||
|   builtin echo | ||||
|   if [[ $verbose -ge 1 ]]; then | ||||
|     for cfgfile in $cfgfiles; do | ||||
|       _omz_diag_dump_echo_file_w_header $cfgfile | ||||
|     done | ||||
|   fi | ||||
|   builtin echo | ||||
|   builtin echo "Zsh compdump files:" | ||||
|   local dumpfile dumpfiles | ||||
|   command ls -lad $zdotdir/.zcompdump* | ||||
|   dumpfiles=( $zdotdir/.zcompdump*(N) ) | ||||
|   if [[ $verbose -ge 2 ]]; then | ||||
|     for dumpfile in $dumpfiles; do | ||||
|       _omz_diag_dump_echo_file_w_header $dumpfile | ||||
|     done | ||||
|   fi | ||||
|  | ||||
| } | ||||
|  | ||||
| function _omz_diag_dump_check_core_commands() { | ||||
|   builtin echo "Core command check:" | ||||
|   local redefined name builtins externals reserved_words | ||||
|   redefined=() | ||||
|   # All the zsh non-module builtin commands | ||||
|   # These are taken from the zsh reference manual for 5.0.2 | ||||
|   # Commands from modules should not be included. | ||||
|   # (For back-compatibility, if any of these are newish, they should be removed, | ||||
|   # or at least made conditional on the version of the current running zsh.) | ||||
|   # "history" is also excluded because OMZ is known to redefine that | ||||
|   reserved_words=( do done esac then elif else fi for case if while function  | ||||
|     repeat time until select coproc nocorrect foreach end '!' '[[' '{' '}'  | ||||
|     ) | ||||
|   builtins=( alias autoload bg bindkey break builtin bye cd chdir command | ||||
|     comparguments compcall compctl compdescribe compfiles compgroups compquote comptags | ||||
|     comptry compvalues continue dirs disable disown echo echotc echoti emulate | ||||
|     enable eval exec exit false fc fg functions getln getopts hash | ||||
|     jobs kill let limit log logout noglob popd print printf | ||||
|     pushd pushln pwd r read rehash return sched set setopt shift | ||||
|     source suspend test times trap true ttyctl type ulimit umask unalias | ||||
|     unfunction unhash unlimit unset unsetopt vared wait whence where which zcompile | ||||
|     zle zmodload zparseopts zregexparse zstyle ) | ||||
|   if is-at-least 5.1; then | ||||
|     reserved_word+=( declare export integer float local readonly typeset ) | ||||
|   else | ||||
|     builtins+=( declare export integer float local readonly typeset ) | ||||
|   fi | ||||
|   builtins_fatal=( builtin command local ) | ||||
|   externals=( zsh ) | ||||
|   for name in $reserved_words; do | ||||
|     if [[ $(builtin whence -w $name) != "$name: reserved" ]]; then | ||||
|       builtin echo "reserved word '$name' has been redefined" | ||||
|       builtin which $name | ||||
|       redefined+=$name | ||||
|     fi | ||||
|   done | ||||
|   for name in $builtins; do | ||||
|     if [[ $(builtin whence -w $name) != "$name: builtin" ]]; then | ||||
|       builtin echo "builtin '$name' has been redefined" | ||||
|       builtin which $name | ||||
|       redefined+=$name | ||||
|     fi | ||||
|   done | ||||
|   for name in $externals; do | ||||
|     if [[ $(builtin whence -w $name) != "$name: command" ]]; then | ||||
|       builtin echo "command '$name' has been redefined" | ||||
|       builtin which $name | ||||
|       redefined+=$name | ||||
|     fi | ||||
|   done | ||||
|  | ||||
|   if [[ -n "$redefined" ]]; then | ||||
|     builtin echo "SOME CORE COMMANDS HAVE BEEN REDEFINED: $redefined" | ||||
|   else | ||||
|     builtin echo "All core commands are defined normally" | ||||
|   fi | ||||
|  | ||||
| } | ||||
|  | ||||
| function _omz_diag_dump_echo_file_w_header() { | ||||
|   local file=$1 | ||||
|   if [[ ( -f $file || -h $file ) ]]; then | ||||
|     builtin echo "========== $file ==========" | ||||
|     if [[ -h $file ]]; then | ||||
|       builtin echo "==========    ( => ${file:A} )   ==========" | ||||
|     fi | ||||
|     command cat $file | ||||
|     builtin echo "========== end $file ==========" | ||||
|     builtin echo | ||||
|   elif [[ -d $file ]]; then | ||||
|     builtin echo "File '$file' is a directory" | ||||
|   elif [[ ! -e $file ]]; then | ||||
|     builtin echo "File '$file' does not exist" | ||||
|   else | ||||
|     command ls -lad "$file" | ||||
|   fi | ||||
| } | ||||
|  | ||||
| function _omz_diag_dump_os_specific_version() { | ||||
|   local osname osver version_file version_files | ||||
|   case "$OSTYPE" in | ||||
|     darwin*) | ||||
|       osname=$(command sw_vers -productName) | ||||
|       osver=$(command sw_vers -productVersion)       | ||||
|       builtin echo "OS Version: $osname $osver build $(sw_vers -buildVersion)" | ||||
|       ;; | ||||
|     cygwin) | ||||
|       command systeminfo | command head -4 | command tail -2 | ||||
|       ;; | ||||
|   esac | ||||
|  | ||||
|   if builtin which lsb_release >/dev/null; then | ||||
|     builtin echo "OS Release: $(command lsb_release -s -d)" | ||||
|   fi | ||||
|  | ||||
|   version_files=( /etc/*-release(N) /etc/*-version(N) /etc/*_version(N) ) | ||||
|   for version_file in $version_files; do | ||||
|     builtin echo "$version_file:" | ||||
|     command cat "$version_file" | ||||
|     builtin echo | ||||
|   done | ||||
| } | ||||
|  | ||||
							
								
								
									
										38
									
								
								zsh/.oh-my-zsh_old/lib/directories.zsh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										38
									
								
								zsh/.oh-my-zsh_old/lib/directories.zsh
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,38 @@ | ||||
| # Changing/making/removing directory | ||||
| setopt auto_pushd | ||||
| setopt pushd_ignore_dups | ||||
| setopt pushdminus | ||||
|  | ||||
| alias -g ...='../..' | ||||
| alias -g ....='../../..' | ||||
| alias -g .....='../../../..' | ||||
| alias -g ......='../../../../..' | ||||
|  | ||||
| alias -- -='cd -' | ||||
| alias 1='cd -' | ||||
| alias 2='cd -2' | ||||
| alias 3='cd -3' | ||||
| alias 4='cd -4' | ||||
| alias 5='cd -5' | ||||
| alias 6='cd -6' | ||||
| alias 7='cd -7' | ||||
| alias 8='cd -8' | ||||
| alias 9='cd -9' | ||||
|  | ||||
| alias md='mkdir -p' | ||||
| alias rd=rmdir | ||||
|  | ||||
| function d () { | ||||
|   if [[ -n $1 ]]; then | ||||
|     dirs "$@" | ||||
|   else | ||||
|     dirs -v | head -10 | ||||
|   fi | ||||
| } | ||||
| compdef _dirs d | ||||
|  | ||||
| # List directory contents | ||||
| alias lsa='ls -lah' | ||||
| alias l='ls -lah' | ||||
| alias ll='ls -lh' | ||||
| alias la='ls -lAh' | ||||
							
								
								
									
										224
									
								
								zsh/.oh-my-zsh_old/lib/functions.zsh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										224
									
								
								zsh/.oh-my-zsh_old/lib/functions.zsh
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,224 @@ | ||||
| function zsh_stats() { | ||||
|   fc -l 1 | awk '{CMD[$2]++;count++;}END { for (a in CMD)print CMD[a] " " CMD[a]/count*100 "% " a;}' | grep -v "./" | column -c3 -s " " -t | sort -nr | nl |  head -n20 | ||||
| } | ||||
|  | ||||
| function uninstall_oh_my_zsh() { | ||||
|   env ZSH=$ZSH sh $ZSH/tools/uninstall.sh | ||||
| } | ||||
|  | ||||
| function upgrade_oh_my_zsh() { | ||||
|   env ZSH=$ZSH sh $ZSH/tools/upgrade.sh | ||||
| } | ||||
|  | ||||
| function take() { | ||||
|   mkdir -p $@ && cd ${@:$#} | ||||
| } | ||||
|  | ||||
| function open_command() { | ||||
|   local open_cmd | ||||
|  | ||||
|   # define the open command | ||||
|   case "$OSTYPE" in | ||||
|     darwin*)  open_cmd='open' ;; | ||||
|     cygwin*)  open_cmd='cygstart' ;; | ||||
|     linux*)   [[ "$(uname -r)" != *icrosoft* ]] && open_cmd='nohup xdg-open' || { | ||||
|                 open_cmd='cmd.exe /c start ""' | ||||
|                 [[ -e "$1" ]] && { 1="$(wslpath -w "${1:a}")" || return 1 } | ||||
|               } ;; | ||||
|     msys*)    open_cmd='start ""' ;; | ||||
|     *)        echo "Platform $OSTYPE not supported" | ||||
|               return 1 | ||||
|               ;; | ||||
|   esac | ||||
|  | ||||
|   ${=open_cmd} "$@" &>/dev/null | ||||
| } | ||||
|  | ||||
| # | ||||
| # Get the value of an alias. | ||||
| # | ||||
| # Arguments: | ||||
| #    1. alias - The alias to get its value from | ||||
| # STDOUT: | ||||
| #    The value of alias $1 (if it has one). | ||||
| # Return value: | ||||
| #    0 if the alias was found, | ||||
| #    1 if it does not exist | ||||
| # | ||||
| function alias_value() { | ||||
|     (( $+aliases[$1] )) && echo $aliases[$1] | ||||
| } | ||||
|  | ||||
| # | ||||
| # Try to get the value of an alias, | ||||
| # otherwise return the input. | ||||
| # | ||||
| # Arguments: | ||||
| #    1. alias - The alias to get its value from | ||||
| # STDOUT: | ||||
| #    The value of alias $1, or $1 if there is no alias $1. | ||||
| # Return value: | ||||
| #    Always 0 | ||||
| # | ||||
| function try_alias_value() { | ||||
|     alias_value "$1" || echo "$1" | ||||
| } | ||||
|  | ||||
| # | ||||
| # Set variable "$1" to default value "$2" if "$1" is not yet defined. | ||||
| # | ||||
| # Arguments: | ||||
| #    1. name - The variable to set | ||||
| #    2. val  - The default value | ||||
| # Return value: | ||||
| #    0 if the variable exists, 3 if it was set | ||||
| # | ||||
| function default() { | ||||
|     (( $+parameters[$1] )) && return 0 | ||||
|     typeset -g "$1"="$2"   && return 3 | ||||
| } | ||||
|  | ||||
| # | ||||
| # Set environment variable "$1" to default value "$2" if "$1" is not yet defined. | ||||
| # | ||||
| # Arguments: | ||||
| #    1. name - The env variable to set | ||||
| #    2. val  - The default value | ||||
| # Return value: | ||||
| #    0 if the env variable exists, 3 if it was set | ||||
| # | ||||
| function env_default() { | ||||
|     (( ${${(@f):-$(typeset +xg)}[(I)$1]} )) && return 0 | ||||
|     export "$1=$2" && return 3 | ||||
| } | ||||
|  | ||||
|  | ||||
| # Required for $langinfo | ||||
| zmodload zsh/langinfo | ||||
|  | ||||
| # URL-encode a string | ||||
| # | ||||
| # Encodes a string using RFC 2396 URL-encoding (%-escaped). | ||||
| # See: https://www.ietf.org/rfc/rfc2396.txt | ||||
| # | ||||
| # By default, reserved characters and unreserved "mark" characters are | ||||
| # not escaped by this function. This allows the common usage of passing | ||||
| # an entire URL in, and encoding just special characters in it, with | ||||
| # the expectation that reserved and mark characters are used appropriately. | ||||
| # The -r and -m options turn on escaping of the reserved and mark characters, | ||||
| # respectively, which allows arbitrary strings to be fully escaped for | ||||
| # embedding inside URLs, where reserved characters might be misinterpreted. | ||||
| # | ||||
| # Prints the encoded string on stdout. | ||||
| # Returns nonzero if encoding failed. | ||||
| # | ||||
| # Usage: | ||||
| #  omz_urlencode [-r] [-m] [-P] <string> | ||||
| # | ||||
| #    -r causes reserved characters (;/?:@&=+$,) to be escaped | ||||
| # | ||||
| #    -m causes "mark" characters (_.!~*''()-) to be escaped | ||||
| # | ||||
| #    -P causes spaces to be encoded as '%20' instead of '+' | ||||
| function omz_urlencode() { | ||||
|   emulate -L zsh | ||||
|   zparseopts -D -E -a opts r m P | ||||
|  | ||||
|   local in_str=$1 | ||||
|   local url_str="" | ||||
|   local spaces_as_plus | ||||
|   if [[ -z $opts[(r)-P] ]]; then spaces_as_plus=1; fi | ||||
|   local str="$in_str" | ||||
|  | ||||
|   # URLs must use UTF-8 encoding; convert str to UTF-8 if required | ||||
|   local encoding=$langinfo[CODESET] | ||||
|   local safe_encodings | ||||
|   safe_encodings=(UTF-8 utf8 US-ASCII) | ||||
|   if [[ -z ${safe_encodings[(r)$encoding]} ]]; then | ||||
|     str=$(echo -E "$str" | iconv -f $encoding -t UTF-8) | ||||
|     if [[ $? != 0 ]]; then | ||||
|       echo "Error converting string from $encoding to UTF-8" >&2 | ||||
|       return 1 | ||||
|     fi | ||||
|   fi | ||||
|  | ||||
|   # Use LC_CTYPE=C to process text byte-by-byte | ||||
|   local i byte ord LC_ALL=C | ||||
|   export LC_ALL | ||||
|   local reserved=';/?:@&=+$,' | ||||
|   local mark='_.!~*''()-' | ||||
|   local dont_escape="[A-Za-z0-9" | ||||
|   if [[ -z $opts[(r)-r] ]]; then | ||||
|     dont_escape+=$reserved | ||||
|   fi | ||||
|   # $mark must be last because of the "-" | ||||
|   if [[ -z $opts[(r)-m] ]]; then | ||||
|     dont_escape+=$mark | ||||
|   fi | ||||
|   dont_escape+="]" | ||||
|  | ||||
|   # Implemented to use a single printf call and avoid subshells in the loop, | ||||
|   # for performance (primarily on Windows). | ||||
|   local url_str="" | ||||
|   for (( i = 1; i <= ${#str}; ++i )); do | ||||
|     byte="$str[i]" | ||||
|     if [[ "$byte" =~ "$dont_escape" ]]; then | ||||
|       url_str+="$byte" | ||||
|     else | ||||
|       if [[ "$byte" == " " && -n $spaces_as_plus ]]; then | ||||
|         url_str+="+" | ||||
|       else | ||||
|         ord=$(( [##16] #byte )) | ||||
|         url_str+="%$ord" | ||||
|       fi | ||||
|     fi | ||||
|   done | ||||
|   echo -E "$url_str" | ||||
| } | ||||
|  | ||||
| # URL-decode a string | ||||
| # | ||||
| # Decodes a RFC 2396 URL-encoded (%-escaped) string. | ||||
| # This decodes the '+' and '%' escapes in the input string, and leaves | ||||
| # other characters unchanged. Does not enforce that the input is a | ||||
| # valid URL-encoded string. This is a convenience to allow callers to | ||||
| # pass in a full URL or similar strings and decode them for human | ||||
| # presentation. | ||||
| # | ||||
| # Outputs the encoded string on stdout. | ||||
| # Returns nonzero if encoding failed. | ||||
| # | ||||
| # Usage: | ||||
| #   omz_urldecode <urlstring>  - prints decoded string followed by a newline | ||||
| function omz_urldecode { | ||||
|   emulate -L zsh | ||||
|   local encoded_url=$1 | ||||
|  | ||||
|   # Work bytewise, since URLs escape UTF-8 octets | ||||
|   local caller_encoding=$langinfo[CODESET] | ||||
|   local LC_ALL=C | ||||
|   export LC_ALL | ||||
|  | ||||
|   # Change + back to ' ' | ||||
|   local tmp=${encoded_url:gs/+/ /} | ||||
|   # Protect other escapes to pass through the printf unchanged | ||||
|   tmp=${tmp:gs/\\/\\\\/} | ||||
|   # Handle %-escapes by turning them into `\xXX` printf escapes | ||||
|   tmp=${tmp:gs/%/\\x/} | ||||
|   local decoded | ||||
|   eval "decoded=\$'$tmp'" | ||||
|  | ||||
|   # Now we have a UTF-8 encoded string in the variable. We need to re-encode | ||||
|   # it if caller is in a non-UTF-8 locale. | ||||
|   local safe_encodings | ||||
|   safe_encodings=(UTF-8 utf8 US-ASCII) | ||||
|   if [[ -z ${safe_encodings[(r)$caller_encoding]} ]]; then | ||||
|     decoded=$(echo -E "$decoded" | iconv -f UTF-8 -t $caller_encoding) | ||||
|     if [[ $? != 0 ]]; then | ||||
|       echo "Error converting string from UTF-8 to $caller_encoding" >&2 | ||||
|       return 1 | ||||
|     fi | ||||
|   fi | ||||
|  | ||||
|   echo -E "$decoded" | ||||
| } | ||||
							
								
								
									
										201
									
								
								zsh/.oh-my-zsh_old/lib/git.zsh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										201
									
								
								zsh/.oh-my-zsh_old/lib/git.zsh
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,201 @@ | ||||
| # Outputs current branch info in prompt format | ||||
| function git_prompt_info() { | ||||
|   local ref | ||||
|   if [[ "$(command git config --get oh-my-zsh.hide-status 2>/dev/null)" != "1" ]]; then | ||||
|     ref=$(command git symbolic-ref HEAD 2> /dev/null) || \ | ||||
|     ref=$(command git rev-parse --short HEAD 2> /dev/null) || return 0 | ||||
|     echo "$ZSH_THEME_GIT_PROMPT_PREFIX${ref#refs/heads/}$(parse_git_dirty)$ZSH_THEME_GIT_PROMPT_SUFFIX" | ||||
|   fi | ||||
| } | ||||
|  | ||||
| # Checks if working tree is dirty | ||||
| function parse_git_dirty() { | ||||
|   local STATUS | ||||
|   local -a FLAGS | ||||
|   FLAGS=('--porcelain') | ||||
|   if [[ "$(command git config --get oh-my-zsh.hide-dirty)" != "1" ]]; then | ||||
|     if [[ "$DISABLE_UNTRACKED_FILES_DIRTY" == "true" ]]; then | ||||
|       FLAGS+='--untracked-files=no' | ||||
|     fi | ||||
|     case "$GIT_STATUS_IGNORE_SUBMODULES" in | ||||
|       git) | ||||
|         # let git decide (this respects per-repo config in .gitmodules) | ||||
|         ;; | ||||
|       *) | ||||
|         # if unset: ignore dirty submodules | ||||
|         # other values are passed to --ignore-submodules | ||||
|         FLAGS+="--ignore-submodules=${GIT_STATUS_IGNORE_SUBMODULES:-dirty}" | ||||
|         ;; | ||||
|     esac | ||||
|     STATUS=$(command git status ${FLAGS} 2> /dev/null | tail -n1) | ||||
|   fi | ||||
|   if [[ -n $STATUS ]]; then | ||||
|     echo "$ZSH_THEME_GIT_PROMPT_DIRTY" | ||||
|   else | ||||
|     echo "$ZSH_THEME_GIT_PROMPT_CLEAN" | ||||
|   fi | ||||
| } | ||||
|  | ||||
| # Gets the difference between the local and remote branches | ||||
| function git_remote_status() { | ||||
|     local remote ahead behind git_remote_status git_remote_status_detailed | ||||
|     remote=${$(command git rev-parse --verify ${hook_com[branch]}@{upstream} --symbolic-full-name 2>/dev/null)/refs\/remotes\/} | ||||
|     if [[ -n ${remote} ]]; then | ||||
|         ahead=$(command git rev-list ${hook_com[branch]}@{upstream}..HEAD 2>/dev/null | wc -l) | ||||
|         behind=$(command git rev-list HEAD..${hook_com[branch]}@{upstream} 2>/dev/null | wc -l) | ||||
|  | ||||
|         if [[ $ahead -eq 0 ]] && [[ $behind -eq 0 ]]; then | ||||
|             git_remote_status="$ZSH_THEME_GIT_PROMPT_EQUAL_REMOTE" | ||||
|         elif [[ $ahead -gt 0 ]] && [[ $behind -eq 0 ]]; then | ||||
|             git_remote_status="$ZSH_THEME_GIT_PROMPT_AHEAD_REMOTE" | ||||
|             git_remote_status_detailed="$ZSH_THEME_GIT_PROMPT_AHEAD_REMOTE_COLOR$ZSH_THEME_GIT_PROMPT_AHEAD_REMOTE$((ahead))%{$reset_color%}" | ||||
|         elif [[ $behind -gt 0 ]] && [[ $ahead -eq 0 ]]; then | ||||
|             git_remote_status="$ZSH_THEME_GIT_PROMPT_BEHIND_REMOTE" | ||||
|             git_remote_status_detailed="$ZSH_THEME_GIT_PROMPT_BEHIND_REMOTE_COLOR$ZSH_THEME_GIT_PROMPT_BEHIND_REMOTE$((behind))%{$reset_color%}" | ||||
|         elif [[ $ahead -gt 0 ]] && [[ $behind -gt 0 ]]; then | ||||
|             git_remote_status="$ZSH_THEME_GIT_PROMPT_DIVERGED_REMOTE" | ||||
|             git_remote_status_detailed="$ZSH_THEME_GIT_PROMPT_AHEAD_REMOTE_COLOR$ZSH_THEME_GIT_PROMPT_AHEAD_REMOTE$((ahead))%{$reset_color%}$ZSH_THEME_GIT_PROMPT_BEHIND_REMOTE_COLOR$ZSH_THEME_GIT_PROMPT_BEHIND_REMOTE$((behind))%{$reset_color%}" | ||||
|         fi | ||||
|  | ||||
|         if [[ -n $ZSH_THEME_GIT_PROMPT_REMOTE_STATUS_DETAILED ]]; then | ||||
|             git_remote_status="$ZSH_THEME_GIT_PROMPT_REMOTE_STATUS_PREFIX$remote$git_remote_status_detailed$ZSH_THEME_GIT_PROMPT_REMOTE_STATUS_SUFFIX" | ||||
|         fi | ||||
|  | ||||
|         echo $git_remote_status | ||||
|     fi | ||||
| } | ||||
|  | ||||
| # Outputs the name of the current branch | ||||
| # Usage example: git pull origin $(git_current_branch) | ||||
| # Using '--quiet' with 'symbolic-ref' will not cause a fatal error (128) if | ||||
| # it's not a symbolic ref, but in a Git repo. | ||||
| function git_current_branch() { | ||||
|   local ref | ||||
|   ref=$(command git symbolic-ref --quiet HEAD 2> /dev/null) | ||||
|   local ret=$? | ||||
|   if [[ $ret != 0 ]]; then | ||||
|     [[ $ret == 128 ]] && return  # no git repo. | ||||
|     ref=$(command git rev-parse --short HEAD 2> /dev/null) || return | ||||
|   fi | ||||
|   echo ${ref#refs/heads/} | ||||
| } | ||||
|  | ||||
|  | ||||
| # Gets the number of commits ahead from remote | ||||
| function git_commits_ahead() { | ||||
|   if command git rev-parse --git-dir &>/dev/null; then | ||||
|     local commits="$(git rev-list --count @{upstream}..HEAD 2>/dev/null)" | ||||
|     if [[ -n "$commits" && "$commits" != 0 ]]; then | ||||
|       echo "$ZSH_THEME_GIT_COMMITS_AHEAD_PREFIX$commits$ZSH_THEME_GIT_COMMITS_AHEAD_SUFFIX" | ||||
|     fi | ||||
|   fi | ||||
| } | ||||
|  | ||||
| # Gets the number of commits behind remote | ||||
| function git_commits_behind() { | ||||
|   if command git rev-parse --git-dir &>/dev/null; then | ||||
|     local commits="$(git rev-list --count HEAD..@{upstream} 2>/dev/null)" | ||||
|     if [[ -n "$commits" && "$commits" != 0 ]]; then | ||||
|       echo "$ZSH_THEME_GIT_COMMITS_BEHIND_PREFIX$commits$ZSH_THEME_GIT_COMMITS_BEHIND_SUFFIX" | ||||
|     fi | ||||
|   fi | ||||
| } | ||||
|  | ||||
| # Outputs if current branch is ahead of remote | ||||
| function git_prompt_ahead() { | ||||
|   if [[ -n "$(command git rev-list origin/$(git_current_branch)..HEAD 2> /dev/null)" ]]; then | ||||
|     echo "$ZSH_THEME_GIT_PROMPT_AHEAD" | ||||
|   fi | ||||
| } | ||||
|  | ||||
| # Outputs if current branch is behind remote | ||||
| function git_prompt_behind() { | ||||
|   if [[ -n "$(command git rev-list HEAD..origin/$(git_current_branch) 2> /dev/null)" ]]; then | ||||
|     echo "$ZSH_THEME_GIT_PROMPT_BEHIND" | ||||
|   fi | ||||
| } | ||||
|  | ||||
| # Outputs if current branch exists on remote or not | ||||
| function git_prompt_remote() { | ||||
|   if [[ -n "$(command git show-ref origin/$(git_current_branch) 2> /dev/null)" ]]; then | ||||
|     echo "$ZSH_THEME_GIT_PROMPT_REMOTE_EXISTS" | ||||
|   else | ||||
|     echo "$ZSH_THEME_GIT_PROMPT_REMOTE_MISSING" | ||||
|   fi | ||||
| } | ||||
|  | ||||
| # Formats prompt string for current git commit short SHA | ||||
| function git_prompt_short_sha() { | ||||
|   local SHA | ||||
|   SHA=$(command git rev-parse --short HEAD 2> /dev/null) && echo "$ZSH_THEME_GIT_PROMPT_SHA_BEFORE$SHA$ZSH_THEME_GIT_PROMPT_SHA_AFTER" | ||||
| } | ||||
|  | ||||
| # Formats prompt string for current git commit long SHA | ||||
| function git_prompt_long_sha() { | ||||
|   local SHA | ||||
|   SHA=$(command git rev-parse HEAD 2> /dev/null) && echo "$ZSH_THEME_GIT_PROMPT_SHA_BEFORE$SHA$ZSH_THEME_GIT_PROMPT_SHA_AFTER" | ||||
| } | ||||
|  | ||||
| # Get the status of the working tree | ||||
| function git_prompt_status() { | ||||
|   local INDEX STATUS | ||||
|   INDEX=$(command git status --porcelain -b 2> /dev/null) | ||||
|   STATUS="" | ||||
|   if $(echo "$INDEX" | command grep -E '^\?\? ' &> /dev/null); then | ||||
|     STATUS="$ZSH_THEME_GIT_PROMPT_UNTRACKED$STATUS" | ||||
|   fi | ||||
|   if $(echo "$INDEX" | grep '^A  ' &> /dev/null); then | ||||
|     STATUS="$ZSH_THEME_GIT_PROMPT_ADDED$STATUS" | ||||
|   elif $(echo "$INDEX" | grep '^M  ' &> /dev/null); then | ||||
|     STATUS="$ZSH_THEME_GIT_PROMPT_ADDED$STATUS" | ||||
|   elif $(echo "$INDEX" | grep '^MM ' &> /dev/null); then | ||||
|     STATUS="$ZSH_THEME_GIT_PROMPT_ADDED$STATUS" | ||||
|   fi | ||||
|   if $(echo "$INDEX" | grep '^ M ' &> /dev/null); then | ||||
|     STATUS="$ZSH_THEME_GIT_PROMPT_MODIFIED$STATUS" | ||||
|   elif $(echo "$INDEX" | grep '^AM ' &> /dev/null); then | ||||
|     STATUS="$ZSH_THEME_GIT_PROMPT_MODIFIED$STATUS" | ||||
|   elif $(echo "$INDEX" | grep '^MM ' &> /dev/null); then | ||||
|     STATUS="$ZSH_THEME_GIT_PROMPT_MODIFIED$STATUS" | ||||
|   elif $(echo "$INDEX" | grep '^ T ' &> /dev/null); then | ||||
|     STATUS="$ZSH_THEME_GIT_PROMPT_MODIFIED$STATUS" | ||||
|   fi | ||||
|   if $(echo "$INDEX" | grep '^R  ' &> /dev/null); then | ||||
|     STATUS="$ZSH_THEME_GIT_PROMPT_RENAMED$STATUS" | ||||
|   fi | ||||
|   if $(echo "$INDEX" | grep '^ D ' &> /dev/null); then | ||||
|     STATUS="$ZSH_THEME_GIT_PROMPT_DELETED$STATUS" | ||||
|   elif $(echo "$INDEX" | grep '^D  ' &> /dev/null); then | ||||
|     STATUS="$ZSH_THEME_GIT_PROMPT_DELETED$STATUS" | ||||
|   elif $(echo "$INDEX" | grep '^AD ' &> /dev/null); then | ||||
|     STATUS="$ZSH_THEME_GIT_PROMPT_DELETED$STATUS" | ||||
|   fi | ||||
|   if $(command git rev-parse --verify refs/stash >/dev/null 2>&1); then | ||||
|     STATUS="$ZSH_THEME_GIT_PROMPT_STASHED$STATUS" | ||||
|   fi | ||||
|   if $(echo "$INDEX" | grep '^UU ' &> /dev/null); then | ||||
|     STATUS="$ZSH_THEME_GIT_PROMPT_UNMERGED$STATUS" | ||||
|   fi | ||||
|   if $(echo "$INDEX" | grep '^## [^ ]\+ .*ahead' &> /dev/null); then | ||||
|     STATUS="$ZSH_THEME_GIT_PROMPT_AHEAD$STATUS" | ||||
|   fi | ||||
|   if $(echo "$INDEX" | grep '^## [^ ]\+ .*behind' &> /dev/null); then | ||||
|     STATUS="$ZSH_THEME_GIT_PROMPT_BEHIND$STATUS" | ||||
|   fi | ||||
|   if $(echo "$INDEX" | grep '^## [^ ]\+ .*diverged' &> /dev/null); then | ||||
|     STATUS="$ZSH_THEME_GIT_PROMPT_DIVERGED$STATUS" | ||||
|   fi | ||||
|   echo $STATUS | ||||
| } | ||||
|  | ||||
| # Outputs the name of the current user | ||||
| # Usage example: $(git_current_user_name) | ||||
| function git_current_user_name() { | ||||
|   command git config user.name 2>/dev/null | ||||
| } | ||||
|  | ||||
| # Outputs the email of the current user | ||||
| # Usage example: $(git_current_user_email) | ||||
| function git_current_user_email() { | ||||
|   command git config user.email 2>/dev/null | ||||
| } | ||||
							
								
								
									
										28
									
								
								zsh/.oh-my-zsh_old/lib/grep.zsh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										28
									
								
								zsh/.oh-my-zsh_old/lib/grep.zsh
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,28 @@ | ||||
| # is x grep argument available? | ||||
| grep-flag-available() { | ||||
|     echo | grep $1 "" >/dev/null 2>&1 | ||||
| } | ||||
|  | ||||
| GREP_OPTIONS="" | ||||
|  | ||||
| # color grep results | ||||
| if grep-flag-available --color=auto; then | ||||
|     GREP_OPTIONS+=" --color=auto" | ||||
| fi | ||||
|  | ||||
| # ignore VCS folders (if the necessary grep flags are available) | ||||
| VCS_FOLDERS="{.bzr,CVS,.git,.hg,.svn}" | ||||
|  | ||||
| if grep-flag-available --exclude-dir=.cvs; then | ||||
|     GREP_OPTIONS+=" --exclude-dir=$VCS_FOLDERS" | ||||
| elif grep-flag-available --exclude=.cvs; then | ||||
|     GREP_OPTIONS+=" --exclude=$VCS_FOLDERS" | ||||
| fi | ||||
|  | ||||
| # export grep settings | ||||
| alias grep="grep $GREP_OPTIONS" | ||||
|  | ||||
| # clean up | ||||
| unset GREP_OPTIONS | ||||
| unset VCS_FOLDERS | ||||
| unfunction grep-flag-available | ||||
							
								
								
									
										40
									
								
								zsh/.oh-my-zsh_old/lib/history.zsh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										40
									
								
								zsh/.oh-my-zsh_old/lib/history.zsh
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,40 @@ | ||||
| ## History wrapper | ||||
| function omz_history { | ||||
|   local clear list | ||||
|   zparseopts -E c=clear l=list | ||||
|  | ||||
|   if [[ -n "$clear" ]]; then | ||||
|     # if -c provided, clobber the history file | ||||
|     echo -n >| "$HISTFILE" | ||||
|     echo >&2 History file deleted. Reload the session to see its effects. | ||||
|   elif [[ -n "$list" ]]; then | ||||
|     # if -l provided, run as if calling `fc' directly | ||||
|     builtin fc "$@" | ||||
|   else | ||||
|     # unless a number is provided, show all history events (starting from 1) | ||||
|     [[ ${@[-1]-} = *[0-9]* ]] && builtin fc -l "$@" || builtin fc -l "$@" 1 | ||||
|   fi | ||||
| } | ||||
|  | ||||
| # Timestamp format | ||||
| case ${HIST_STAMPS-} in | ||||
|   "mm/dd/yyyy") alias history='omz_history -f' ;; | ||||
|   "dd.mm.yyyy") alias history='omz_history -E' ;; | ||||
|   "yyyy-mm-dd") alias history='omz_history -i' ;; | ||||
|   "") alias history='omz_history' ;; | ||||
|   *) alias history="omz_history -t '$HIST_STAMPS'" ;; | ||||
| esac | ||||
|  | ||||
| ## History file configuration | ||||
| [ -z "$HISTFILE" ] && HISTFILE="$HOME/.zsh_history" | ||||
| HISTSIZE=50000 | ||||
| SAVEHIST=10000 | ||||
|  | ||||
| ## History command configuration | ||||
| setopt extended_history       # record timestamp of command in HISTFILE | ||||
| setopt hist_expire_dups_first # delete duplicates first when HISTFILE size exceeds HISTSIZE | ||||
| setopt hist_ignore_dups       # ignore duplicated commands history list | ||||
| setopt hist_ignore_space      # ignore commands that start with space | ||||
| setopt hist_verify            # show command with history expansion to user before running it | ||||
| setopt inc_append_history     # add commands to HISTFILE in order of execution | ||||
| setopt share_history          # share command history data | ||||
							
								
								
									
										93
									
								
								zsh/.oh-my-zsh_old/lib/key-bindings.zsh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										93
									
								
								zsh/.oh-my-zsh_old/lib/key-bindings.zsh
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,93 @@ | ||||
| # http://zsh.sourceforge.net/Doc/Release/Zsh-Line-Editor.html | ||||
| # http://zsh.sourceforge.net/Doc/Release/Zsh-Line-Editor.html#Zle-Builtins | ||||
| # http://zsh.sourceforge.net/Doc/Release/Zsh-Line-Editor.html#Standard-Widgets | ||||
|  | ||||
| # Make sure that the terminal is in application mode when zle is active, since | ||||
| # only then values from $terminfo are valid | ||||
| if (( ${+terminfo[smkx]} )) && (( ${+terminfo[rmkx]} )); then | ||||
|   function zle-line-init() { | ||||
|     echoti smkx | ||||
|   } | ||||
|   function zle-line-finish() { | ||||
|     echoti rmkx | ||||
|   } | ||||
|   zle -N zle-line-init | ||||
|   zle -N zle-line-finish | ||||
| fi | ||||
|  | ||||
| bindkey -e                                            # Use emacs key bindings | ||||
|  | ||||
| bindkey '\ew' kill-region                             # [Esc-w] - Kill from the cursor to the mark | ||||
| bindkey -s '\el' 'ls\n'                               # [Esc-l] - run command: ls | ||||
| bindkey '^r' history-incremental-search-backward      # [Ctrl-r] - Search backward incrementally for a specified string. The string may begin with ^ to anchor the search to the beginning of the line. | ||||
| if [[ "${terminfo[kpp]}" != "" ]]; then | ||||
|   bindkey "${terminfo[kpp]}" up-line-or-history       # [PageUp] - Up a line of history | ||||
| fi | ||||
| if [[ "${terminfo[knp]}" != "" ]]; then | ||||
|   bindkey "${terminfo[knp]}" down-line-or-history     # [PageDown] - Down a line of history | ||||
| fi | ||||
|  | ||||
| # start typing + [Up-Arrow] - fuzzy find history forward | ||||
| if [[ "${terminfo[kcuu1]}" != "" ]]; then | ||||
|   autoload -U up-line-or-beginning-search | ||||
|   zle -N up-line-or-beginning-search | ||||
|   bindkey "${terminfo[kcuu1]}" up-line-or-beginning-search | ||||
| fi | ||||
| # start typing + [Down-Arrow] - fuzzy find history backward | ||||
| if [[ "${terminfo[kcud1]}" != "" ]]; then | ||||
|   autoload -U down-line-or-beginning-search | ||||
|   zle -N down-line-or-beginning-search | ||||
|   bindkey "${terminfo[kcud1]}" down-line-or-beginning-search | ||||
| fi | ||||
|  | ||||
| if [[ "${terminfo[khome]}" != "" ]]; then | ||||
|   bindkey "${terminfo[khome]}" beginning-of-line      # [Home] - Go to beginning of line | ||||
| fi | ||||
| if [[ "${terminfo[kend]}" != "" ]]; then | ||||
|   bindkey "${terminfo[kend]}"  end-of-line            # [End] - Go to end of line | ||||
| fi | ||||
|  | ||||
| bindkey ' ' magic-space                               # [Space] - do history expansion | ||||
|  | ||||
| bindkey '^[[1;5C' forward-word                        # [Ctrl-RightArrow] - move forward one word | ||||
| bindkey '^[[1;5D' backward-word                       # [Ctrl-LeftArrow] - move backward one word | ||||
|  | ||||
| if [[ "${terminfo[kcbt]}" != "" ]]; then | ||||
|   bindkey "${terminfo[kcbt]}" reverse-menu-complete   # [Shift-Tab] - move through the completion menu backwards | ||||
| fi | ||||
|  | ||||
| bindkey '^?' backward-delete-char                     # [Backspace] - delete backward | ||||
| if [[ "${terminfo[kdch1]}" != "" ]]; then | ||||
|   bindkey "${terminfo[kdch1]}" delete-char            # [Delete] - delete forward | ||||
| else | ||||
|   bindkey "^[[3~" delete-char | ||||
|   bindkey "^[3;5~" delete-char | ||||
|   bindkey "\e[3~" delete-char | ||||
| fi | ||||
|  | ||||
| # Edit the current command line in $EDITOR | ||||
| autoload -U edit-command-line | ||||
| zle -N edit-command-line | ||||
| bindkey '\C-x\C-e' edit-command-line | ||||
|  | ||||
| # file rename magick | ||||
| bindkey "^[m" copy-prev-shell-word | ||||
|  | ||||
| # consider emacs keybindings: | ||||
|  | ||||
| #bindkey -e  ## emacs key bindings | ||||
| # | ||||
| #bindkey '^[[A' up-line-or-search | ||||
| #bindkey '^[[B' down-line-or-search | ||||
| #bindkey '^[^[[C' emacs-forward-word | ||||
| #bindkey '^[^[[D' emacs-backward-word | ||||
| # | ||||
| #bindkey -s '^X^Z' '%-^M' | ||||
| #bindkey '^[e' expand-cmd-path | ||||
| #bindkey '^[^I' reverse-menu-complete | ||||
| #bindkey '^X^N' accept-and-infer-next-history | ||||
| #bindkey '^W' kill-region | ||||
| #bindkey '^I' complete-word | ||||
| ## Fix weird sequence that rxvt produces | ||||
| #bindkey -s '^[[Z' '\t' | ||||
| # | ||||
							
								
								
									
										35
									
								
								zsh/.oh-my-zsh_old/lib/misc.zsh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								zsh/.oh-my-zsh_old/lib/misc.zsh
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,35 @@ | ||||
| autoload -Uz is-at-least | ||||
|  | ||||
| # *-magic is known buggy in some versions; disable if so | ||||
| if [[ $DISABLE_MAGIC_FUNCTIONS != true ]]; then | ||||
|   for d in $fpath; do | ||||
|   	if [[ -e "$d/url-quote-magic" ]]; then | ||||
|   		if is-at-least 5.1; then | ||||
|   			autoload -Uz bracketed-paste-magic | ||||
|   			zle -N bracketed-paste bracketed-paste-magic | ||||
|   		fi | ||||
|   		autoload -Uz url-quote-magic | ||||
|   		zle -N self-insert url-quote-magic | ||||
|       break | ||||
|   	fi | ||||
|   done | ||||
| fi | ||||
|  | ||||
| ## jobs | ||||
| setopt long_list_jobs | ||||
|  | ||||
| env_default 'PAGER' 'less' | ||||
| env_default 'LESS' '-R' | ||||
|  | ||||
| ## super user alias | ||||
| alias _='sudo ' | ||||
|  | ||||
| ## more intelligent acking for ubuntu users | ||||
| if which ack-grep &> /dev/null; then | ||||
|   alias afind='ack-grep -il' | ||||
| else | ||||
|   alias afind='ack -il' | ||||
| fi | ||||
|  | ||||
| # recognize comments | ||||
| setopt interactivecomments | ||||
							
								
								
									
										9
									
								
								zsh/.oh-my-zsh_old/lib/nvm.zsh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								zsh/.oh-my-zsh_old/lib/nvm.zsh
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,9 @@ | ||||
| # get the node.js version | ||||
| function nvm_prompt_info() { | ||||
|   [[ -f "$NVM_DIR/nvm.sh" ]] || return | ||||
|   local nvm_prompt | ||||
|   nvm_prompt=$(node -v 2>/dev/null) | ||||
|   [[ "${nvm_prompt}x" == "x" ]] && return | ||||
|   nvm_prompt=${nvm_prompt:1} | ||||
|   echo "${ZSH_THEME_NVM_PROMPT_PREFIX}${nvm_prompt}${ZSH_THEME_NVM_PROMPT_SUFFIX}" | ||||
| } | ||||
							
								
								
									
										42
									
								
								zsh/.oh-my-zsh_old/lib/prompt_info_functions.zsh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										42
									
								
								zsh/.oh-my-zsh_old/lib/prompt_info_functions.zsh
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,42 @@ | ||||
| # *_prompt_info functions for usage in your prompt | ||||
| # | ||||
| # Plugin creators, please add your *_prompt_info function to the list | ||||
| # of dummy implementations to help theme creators not receiving errors | ||||
| # without the need of implementing conditional clauses. | ||||
| # | ||||
| # See also lib/bzr.zsh, lib/git.zsh and lib/nvm.zsh for | ||||
| # git_prompt_info, bzr_prompt_info and nvm_prompt_info | ||||
|  | ||||
| # Dummy implementations that return false to prevent command_not_found | ||||
| # errors with themes, that implement these functions | ||||
| # Real implementations will be used when the respective plugins are loaded | ||||
| function chruby_prompt_info \ | ||||
|   rbenv_prompt_info \ | ||||
|   hg_prompt_info \ | ||||
|   pyenv_prompt_info \ | ||||
|   svn_prompt_info \ | ||||
|   vi_mode_prompt_info \ | ||||
|   virtualenv_prompt_info \ | ||||
|   jenv_prompt_info \ | ||||
| { | ||||
|   return 1 | ||||
| } | ||||
|  | ||||
| # oh-my-zsh supports an rvm prompt by default | ||||
| # get the name of the rvm ruby version | ||||
| function rvm_prompt_info() { | ||||
|   [ -f $HOME/.rvm/bin/rvm-prompt ] || return 1 | ||||
|   local rvm_prompt | ||||
|   rvm_prompt=$($HOME/.rvm/bin/rvm-prompt ${=ZSH_THEME_RVM_PROMPT_OPTIONS} 2>/dev/null) | ||||
|   [[ -z "${rvm_prompt}" ]] && return 1 | ||||
|   echo "${ZSH_THEME_RUBY_PROMPT_PREFIX}${rvm_prompt}${ZSH_THEME_RUBY_PROMPT_SUFFIX}" | ||||
| } | ||||
|  | ||||
| ZSH_THEME_RVM_PROMPT_OPTIONS="i v g" | ||||
|  | ||||
|  | ||||
| # use this to enable users to see their ruby version, no matter which | ||||
| # version management system they use | ||||
| function ruby_prompt_info() { | ||||
|   echo $(rvm_prompt_info || rbenv_prompt_info || chruby_prompt_info) | ||||
| } | ||||
							
								
								
									
										37
									
								
								zsh/.oh-my-zsh_old/lib/spectrum.zsh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										37
									
								
								zsh/.oh-my-zsh_old/lib/spectrum.zsh
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,37 @@ | ||||
| #! /bin/zsh | ||||
| # A script to make using 256 colors in zsh less painful. | ||||
| # P.C. Shyamshankar <sykora@lucentbeing.com> | ||||
| # Copied from https://github.com/sykora/etc/blob/master/zsh/functions/spectrum/ | ||||
|  | ||||
| typeset -AHg FX FG BG | ||||
|  | ||||
| FX=( | ||||
|     reset     "%{[00m%}" | ||||
|     bold      "%{[01m%}" no-bold      "%{[22m%}" | ||||
|     italic    "%{[03m%}" no-italic    "%{[23m%}" | ||||
|     underline "%{[04m%}" no-underline "%{[24m%}" | ||||
|     blink     "%{[05m%}" no-blink     "%{[25m%}" | ||||
|     reverse   "%{[07m%}" no-reverse   "%{[27m%}" | ||||
| ) | ||||
|  | ||||
| for color in {000..255}; do | ||||
|     FG[$color]="%{[38;5;${color}m%}" | ||||
|     BG[$color]="%{[48;5;${color}m%}" | ||||
| done | ||||
|  | ||||
|  | ||||
| ZSH_SPECTRUM_TEXT=${ZSH_SPECTRUM_TEXT:-Arma virumque cano Troiae qui primus ab oris} | ||||
|  | ||||
| # Show all 256 colors with color number | ||||
| function spectrum_ls() { | ||||
|   for code in {000..255}; do | ||||
|     print -P -- "$code: %{$FG[$code]%}$ZSH_SPECTRUM_TEXT%{$reset_color%}" | ||||
|   done | ||||
| } | ||||
|  | ||||
| # Show all 256 colors where the background is set to specific color | ||||
| function spectrum_bls() { | ||||
|   for code in {000..255}; do | ||||
|     print -P -- "$code: %{$BG[$code]%}$ZSH_SPECTRUM_TEXT%{$reset_color%}" | ||||
|   done | ||||
| } | ||||
							
								
								
									
										106
									
								
								zsh/.oh-my-zsh_old/lib/termsupport.zsh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										106
									
								
								zsh/.oh-my-zsh_old/lib/termsupport.zsh
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,106 @@ | ||||
| # Set terminal window and tab/icon title | ||||
| # | ||||
| # usage: title short_tab_title [long_window_title] | ||||
| # | ||||
| # See: http://www.faqs.org/docs/Linux-mini/Xterm-Title.html#ss3.1 | ||||
| # Fully supports screen, iterm, and probably most modern xterm and rxvt | ||||
| # (In screen, only short_tab_title is used) | ||||
| # Limited support for Apple Terminal (Terminal can't set window and tab separately) | ||||
| function title { | ||||
|   emulate -L zsh | ||||
|   setopt prompt_subst | ||||
|  | ||||
|   [[ "$EMACS" == *term* ]] && return | ||||
|  | ||||
|   # if $2 is unset use $1 as default | ||||
|   # if it is set and empty, leave it as is | ||||
|   : ${2=$1} | ||||
|  | ||||
|   case "$TERM" in | ||||
|     cygwin|xterm*|putty*|rxvt*|ansi) | ||||
|       print -Pn "\e]2;$2:q\a" # set window name | ||||
|       print -Pn "\e]1;$1:q\a" # set tab name | ||||
|       ;; | ||||
|     screen*|tmux*) | ||||
|       print -Pn "\ek$1:q\e\\" # set screen hardstatus | ||||
|       ;; | ||||
|     *) | ||||
|       if [[ "$TERM_PROGRAM" == "iTerm.app" ]]; then | ||||
|         print -Pn "\e]2;$2:q\a" # set window name | ||||
|         print -Pn "\e]1;$1:q\a" # set tab name | ||||
|       else | ||||
|         # Try to use terminfo to set the title | ||||
|         # If the feature is available set title | ||||
|         if [[ -n "$terminfo[fsl]" ]] && [[ -n "$terminfo[tsl]" ]]; then | ||||
| 	  echoti tsl | ||||
| 	  print -Pn "$1" | ||||
| 	  echoti fsl | ||||
| 	fi | ||||
|       fi | ||||
|       ;; | ||||
|   esac | ||||
| } | ||||
|  | ||||
| ZSH_THEME_TERM_TAB_TITLE_IDLE="%15<..<%~%<<" #15 char left truncated PWD | ||||
| ZSH_THEME_TERM_TITLE_IDLE="%n@%m: %~" | ||||
| # Avoid duplication of directory in terminals with independent dir display | ||||
| if [[ "$TERM_PROGRAM" == Apple_Terminal ]]; then | ||||
|   ZSH_THEME_TERM_TITLE_IDLE="%n@%m" | ||||
| fi | ||||
|  | ||||
| # Runs before showing the prompt | ||||
| function omz_termsupport_precmd { | ||||
|   emulate -L zsh | ||||
|  | ||||
|   if [[ "$DISABLE_AUTO_TITLE" == true ]]; then | ||||
|     return | ||||
|   fi | ||||
|  | ||||
|   title $ZSH_THEME_TERM_TAB_TITLE_IDLE $ZSH_THEME_TERM_TITLE_IDLE | ||||
| } | ||||
|  | ||||
| # Runs before executing the command | ||||
| function omz_termsupport_preexec { | ||||
|   emulate -L zsh | ||||
|   setopt extended_glob | ||||
|  | ||||
|   if [[ "$DISABLE_AUTO_TITLE" == true ]]; then | ||||
|     return | ||||
|   fi | ||||
|  | ||||
|   # cmd name only, or if this is sudo or ssh, the next cmd | ||||
|   local CMD=${1[(wr)^(*=*|sudo|ssh|mosh|rake|-*)]:gs/%/%%} | ||||
|   local LINE="${2:gs/%/%%}" | ||||
|  | ||||
|   title '$CMD' '%100>...>$LINE%<<' | ||||
| } | ||||
|  | ||||
| autoload -U add-zsh-hook | ||||
| add-zsh-hook precmd omz_termsupport_precmd | ||||
| add-zsh-hook preexec omz_termsupport_preexec | ||||
|  | ||||
|  | ||||
| # Keep Apple Terminal.app's current working directory updated | ||||
| # Based on this answer: https://superuser.com/a/315029 | ||||
| # With extra fixes to handle multibyte chars and non-UTF-8 locales | ||||
|  | ||||
| if [[ "$TERM_PROGRAM" == "Apple_Terminal" ]] && [[ -z "$INSIDE_EMACS" ]]; then | ||||
|   # Emits the control sequence to notify Terminal.app of the cwd | ||||
|   # Identifies the directory using a file: URI scheme, including | ||||
|   # the host name to disambiguate local vs. remote paths. | ||||
|   function update_terminalapp_cwd() { | ||||
|     emulate -L zsh | ||||
|  | ||||
|     # Percent-encode the pathname. | ||||
|     local URL_PATH="$(omz_urlencode -P $PWD)" | ||||
|     [[ $? != 0 ]] && return 1 | ||||
|  | ||||
|     # Undocumented Terminal.app-specific control sequence | ||||
|     printf '\e]7;%s\a' "file://$HOST$URL_PATH" | ||||
|   } | ||||
|  | ||||
|   # Use a precmd hook instead of a chpwd hook to avoid contaminating output | ||||
|   add-zsh-hook precmd update_terminalapp_cwd | ||||
|   # Run once to get initial cwd set | ||||
|   update_terminalapp_cwd | ||||
| fi | ||||
							
								
								
									
										54
									
								
								zsh/.oh-my-zsh_old/lib/theme-and-appearance.zsh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										54
									
								
								zsh/.oh-my-zsh_old/lib/theme-and-appearance.zsh
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,54 @@ | ||||
| # ls colors | ||||
| autoload -U colors && colors | ||||
|  | ||||
| # Enable ls colors | ||||
| export LSCOLORS="Gxfxcxdxbxegedabagacad" | ||||
|  | ||||
| # TODO organise this chaotic logic | ||||
|  | ||||
| if [[ "$DISABLE_LS_COLORS" != "true" ]]; then | ||||
|   # Find the option for using colors in ls, depending on the version | ||||
|   if [[ "$OSTYPE" == netbsd* ]]; then | ||||
|     # On NetBSD, test if "gls" (GNU ls) is installed (this one supports colors); | ||||
|     # otherwise, leave ls as is, because NetBSD's ls doesn't support -G | ||||
|     gls --color -d . &>/dev/null && alias ls='gls --color=tty' | ||||
|   elif [[ "$OSTYPE" == openbsd* ]]; then | ||||
|     # On OpenBSD, "gls" (ls from GNU coreutils) and "colorls" (ls from base, | ||||
|     # with color and multibyte support) are available from ports.  "colorls" | ||||
|     # will be installed on purpose and can't be pulled in by installing | ||||
|     # coreutils, so prefer it to "gls". | ||||
|     gls --color -d . &>/dev/null && alias ls='gls --color=tty' | ||||
|     colorls -G -d . &>/dev/null && alias ls='colorls -G' | ||||
|   elif [[ "$OSTYPE" == (darwin|freebsd)* ]]; then | ||||
|     # this is a good alias, it works by default just using $LSCOLORS | ||||
|     ls -G . &>/dev/null && alias ls='ls -G' | ||||
|  | ||||
|     # only use coreutils ls if there is a dircolors customization present ($LS_COLORS or .dircolors file) | ||||
|     # otherwise, gls will use the default color scheme which is ugly af | ||||
|     [[ -n "$LS_COLORS" || -f "$HOME/.dircolors" ]] && gls --color -d . &>/dev/null && alias ls='gls --color=tty' | ||||
|   else | ||||
|     # For GNU ls, we use the default ls color theme. They can later be overwritten by themes. | ||||
|     if [[ -z "$LS_COLORS" ]]; then | ||||
|       (( $+commands[dircolors] )) && eval "$(dircolors -b)" | ||||
|     fi | ||||
|  | ||||
|     ls --color -d . &>/dev/null && alias ls='ls --color=tty' || { ls -G . &>/dev/null && alias ls='ls -G' } | ||||
|  | ||||
|     # Take advantage of $LS_COLORS for completion as well. | ||||
|     zstyle ':completion:*' list-colors "${(s.:.)LS_COLORS}" | ||||
|   fi | ||||
| fi | ||||
|  | ||||
| setopt auto_cd | ||||
| setopt multios | ||||
| setopt prompt_subst | ||||
|  | ||||
| [[ -n "$WINDOW" ]] && SCREEN_NO="%B$WINDOW%b " || SCREEN_NO="" | ||||
|  | ||||
| # git theming default: Variables for theming the git info prompt | ||||
| ZSH_THEME_GIT_PROMPT_PREFIX="git:("         # Prefix at the very beginning of the prompt, before the branch name | ||||
| ZSH_THEME_GIT_PROMPT_SUFFIX=")"             # At the very end of the prompt | ||||
| ZSH_THEME_GIT_PROMPT_DIRTY="*"              # Text to display if the branch is dirty | ||||
| ZSH_THEME_GIT_PROMPT_CLEAN=""               # Text to display if the branch is clean | ||||
| ZSH_THEME_RUBY_PROMPT_PREFIX="(" | ||||
| ZSH_THEME_RUBY_PROMPT_SUFFIX=")" | ||||
		Reference in New Issue
	
	Block a user