mirror of
https://github.com/ohmyzsh/ohmyzsh.git
synced 2026-03-27 03:14:56 +01:00
Merge remote-tracking branch 'upstream/master'
This commit is contained in:
commit
9d7ec8c7d6
14 changed files with 91 additions and 27 deletions
|
|
@ -38,7 +38,7 @@ git_remote_status() {
|
||||||
|
|
||||||
if [ $ahead -eq 0 ] && [ $behind -eq 0 ]
|
if [ $ahead -eq 0 ] && [ $behind -eq 0 ]
|
||||||
then
|
then
|
||||||
echo "$ZSH_THEME_GIT_PROMPT_EQUAL_REMOTE"
|
git_remote_status="$ZSH_THEME_GIT_PROMPT_EQUAL_REMOTE"
|
||||||
elif [ $ahead -gt 0 ] && [ $behind -eq 0 ]
|
elif [ $ahead -gt 0 ] && [ $behind -eq 0 ]
|
||||||
then
|
then
|
||||||
git_remote_status="$ZSH_THEME_GIT_PROMPT_AHEAD_REMOTE"
|
git_remote_status="$ZSH_THEME_GIT_PROMPT_AHEAD_REMOTE"
|
||||||
|
|
|
||||||
|
|
@ -11,7 +11,7 @@ if grep-flag-available --color=auto; then
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# ignore VCS folders (if the necessary grep flags are available)
|
# ignore VCS folders (if the necessary grep flags are available)
|
||||||
VCS_FOLDERS="{.bzr,.cvs,.git,.hg,.svn}"
|
VCS_FOLDERS="{.bzr,CVS,.git,.hg,.svn}"
|
||||||
|
|
||||||
if grep-flag-available --exclude-dir=.cvs; then
|
if grep-flag-available --exclude-dir=.cvs; then
|
||||||
GREP_OPTIONS+=" --exclude-dir=$VCS_FOLDERS"
|
GREP_OPTIONS+=" --exclude-dir=$VCS_FOLDERS"
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,10 @@
|
||||||
## Load smart urls if available
|
## Load smart urls if available
|
||||||
for d in $fpath; do
|
for d in $fpath; do
|
||||||
if [[ -e "$d/url-quote-magic" ]]; then
|
if [[ -e "$d/url-quote-magic" ]]; then
|
||||||
|
if [[ -e "$d/bracketed-paste-magic" ]]; then
|
||||||
|
autoload -Uz bracketed-paste-magic
|
||||||
|
zle -N bracketed-paste bracketed-paste-magic
|
||||||
|
fi
|
||||||
autoload -U url-quote-magic
|
autoload -U url-quote-magic
|
||||||
zle -N self-insert url-quote-magic
|
zle -N self-insert url-quote-magic
|
||||||
fi
|
fi
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,5 @@
|
||||||
# Gets OS Type
|
case $OSTYPE in
|
||||||
unamestr=$(uname -s)
|
darwin*)
|
||||||
|
|
||||||
# If OSX
|
|
||||||
if [[ "$unamestr" == 'Darwin' ]]; then
|
|
||||||
local _atom_paths > /dev/null 2>&1
|
local _atom_paths > /dev/null 2>&1
|
||||||
_atom_paths=(
|
_atom_paths=(
|
||||||
"$HOME/Applications/Atom.app"
|
"$HOME/Applications/Atom.app"
|
||||||
|
|
@ -15,8 +12,26 @@ if [[ "$unamestr" == 'Darwin' ]]; then
|
||||||
break
|
break
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
# If Linux
|
;;
|
||||||
elif [[ "$unamestr" == 'Linux' ]]; then
|
cygwin)
|
||||||
|
local _atom_path > /dev/null 2>&1
|
||||||
|
|
||||||
|
_atom_path=${LOCALAPPDATA}/atom/bin/atom
|
||||||
|
|
||||||
|
if [[ -a $_atom_path ]]; then
|
||||||
|
cyg_open_atom()
|
||||||
|
{
|
||||||
|
if [[ -n $1 ]]; then
|
||||||
|
${_atom_path} `cygpath -w -a $1`
|
||||||
|
else
|
||||||
|
${_atom_path}
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
alias at=cyg_open_atom
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
linux*)
|
||||||
# Alerts the user if 'atom' is not a found command.
|
# Alerts the user if 'atom' is not a found command.
|
||||||
type atom >/dev/null 2>&1 && alias at="atom" || { echo >&2 "You have enabled the atom oh-my-zsh plugin on Linux, but atom is not a recognized command. Please make sure you have it installed before using this plugin."; }
|
type atom >/dev/null 2>&1 && alias at="atom" || { echo >&2 "You have enabled the atom oh-my-zsh plugin on Linux, but atom is not a recognized command. Please make sure you have it installed before using this plugin."; }
|
||||||
fi
|
esac
|
||||||
|
|
|
||||||
|
|
@ -14,7 +14,7 @@ _arguments -C \
|
||||||
_cap_tasks() {
|
_cap_tasks() {
|
||||||
if [[ -f config/deploy.rb || -f Capfile ]]; then
|
if [[ -f config/deploy.rb || -f Capfile ]]; then
|
||||||
if [[ ! -f .cap_tasks~ ]]; then
|
if [[ ! -f .cap_tasks~ ]]; then
|
||||||
shipit -v --tasks | sed 's/\(\[\)\(.*\)\(\]\)/\2:/' | awk '{command=$2; $1=$2=$3=""; gsub(/^[ \t\r\n]+/, "", $0); gsub(":", "\\:", command); print command"["$0"]"}' > .cap_tasks~
|
shipit --tasks | sed 's/\(\[\)\(.*\)\(\]\)/\2:/' | awk '{command=$2; $1=$2=$3=""; gsub(/^[ \t\r\n]+/, "", $0); gsub(":", "\\:", command); print command"["$0"]"}' > .cap_tasks~
|
||||||
fi
|
fi
|
||||||
|
|
||||||
OLD_IFS=$IFS
|
OLD_IFS=$IFS
|
||||||
|
|
|
||||||
|
|
@ -24,7 +24,7 @@ _homebrew-installed() {
|
||||||
}
|
}
|
||||||
|
|
||||||
_chruby-from-homebrew-installed() {
|
_chruby-from-homebrew-installed() {
|
||||||
[ -r $(brew --prefix chruby)] &> /dev/null
|
[ -r $(brew --prefix chruby) ] &> /dev/null
|
||||||
}
|
}
|
||||||
|
|
||||||
_ruby-build_installed() {
|
_ruby-build_installed() {
|
||||||
|
|
|
||||||
3
plugins/fedora/README.md
Normal file
3
plugins/fedora/README.md
Normal file
|
|
@ -0,0 +1,3 @@
|
||||||
|
This is a plugin based on yum plugin, but using dnf as main frontend
|
||||||
|
(from Fedora 22 onwards, yum is deprecated in favor of dnf).
|
||||||
|
|
||||||
16
plugins/fedora/fedora.plugin.zsh
Normal file
16
plugins/fedora/fedora.plugin.zsh
Normal file
|
|
@ -0,0 +1,16 @@
|
||||||
|
## Aliases
|
||||||
|
|
||||||
|
alias dnfs="dnf search" # search package
|
||||||
|
alias dnfp="dnf info" # show package info
|
||||||
|
alias dnfl="dnf list" # list packages
|
||||||
|
alias dnfgl="dnf grouplist" # list package groups
|
||||||
|
alias dnfli="dnf list installed" # print all installed packages
|
||||||
|
alias dnfmc="dnf makecache" # rebuilds the dnf package list
|
||||||
|
|
||||||
|
alias dnfu="sudo dnf upgrade" # upgrade packages
|
||||||
|
alias dnfi="sudo dnf install" # install package
|
||||||
|
alias dnfgi="sudo dnf groupinstall" # install package group
|
||||||
|
alias dnfr="sudo dnf remove" # remove package
|
||||||
|
alias dnfgr="sudo dnf groupremove" # remove pagage group
|
||||||
|
alias dnfrl="sudo dnf remove --remove-leaves" # remove package and leaves
|
||||||
|
alias dnfc="sudo dnf clean all" # clean cache
|
||||||
|
|
@ -20,7 +20,7 @@
|
||||||
# in the current directory.
|
# in the current directory.
|
||||||
#
|
#
|
||||||
function $$gulp_completion() {
|
function $$gulp_completion() {
|
||||||
compls=$(grep -Eo "gulp.task\(('(([a-zA-Z0-9]|-)*)',)" gulpfile.js 2>/dev/null | grep -Eo "'(([a-zA-Z0-9]|-)*)'" | sed s/"'"//g | sort)
|
compls=$(grep -Eo "gulp.task\((['\"](([a-zA-Z0-9]|-)*)['\"],)" gulpfile.js 2>/dev/null | grep -Eo "['\"](([a-zA-Z0-9]|-)*)['\"]" | sed s/"['\"]"//g | sort)"
|
||||||
|
|
||||||
completions=(${=compls})
|
completions=(${=compls})
|
||||||
compadd -- $completions
|
compadd -- $completions
|
||||||
|
|
|
||||||
|
|
@ -61,8 +61,8 @@ Insertion
|
||||||
Delete and Insert
|
Delete and Insert
|
||||||
-----------------
|
-----------------
|
||||||
|
|
||||||
- `ctrl-h` : While in *Insert mode*: delete character after the cursor
|
- `ctrl-h` : While in *Insert mode*: delete character before the cursor
|
||||||
- `ctrl-w` : While in *Insert mode*: delete word after the cursor
|
- `ctrl-w` : While in *Insert mode*: delete word before the cursor
|
||||||
- `d{motion}` : Delete text that {motion} moves over
|
- `d{motion}` : Delete text that {motion} moves over
|
||||||
- `dd` : Delete line
|
- `dd` : Delete line
|
||||||
- `D` : Delete characters under the cursor until the end of the line
|
- `D` : Delete characters under the cursor until the end of the line
|
||||||
|
|
|
||||||
|
|
@ -12,7 +12,8 @@ PROMPT='
|
||||||
%{$fg_bold[green]%}${PWD/#$HOME/~}%{$reset_color%}$(git_prompt_info) ⌚ %{$fg_bold[red]%}%*%{$reset_color%}
|
%{$fg_bold[green]%}${PWD/#$HOME/~}%{$reset_color%}$(git_prompt_info) ⌚ %{$fg_bold[red]%}%*%{$reset_color%}
|
||||||
$ '
|
$ '
|
||||||
|
|
||||||
ZSH_THEME_GIT_PROMPT_PREFIX=" on %{$fg[magenta]%}⭠ "
|
# Must use Powerline font, for \uE0A0 to render.
|
||||||
|
ZSH_THEME_GIT_PROMPT_PREFIX=" on %{$fg[magenta]%}\uE0A0 "
|
||||||
ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}"
|
ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}"
|
||||||
ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[red]%}!"
|
ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[red]%}!"
|
||||||
ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$fg[green]%}?"
|
ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$fg[green]%}?"
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,10 @@ set -e
|
||||||
|
|
||||||
# Use colors, but only if connected to a terminal, and that terminal
|
# Use colors, but only if connected to a terminal, and that terminal
|
||||||
# supports them.
|
# supports them.
|
||||||
ncolors=$(tput colors)
|
tput=$(which tput)
|
||||||
|
if [ -n "$tput" ]; then
|
||||||
|
ncolors=$($tput colors)
|
||||||
|
fi
|
||||||
if [ -t 1 ] && [ -n "$ncolors" ] && [ "$ncolors" -ge 8 ]; then
|
if [ -t 1 ] && [ -n "$ncolors" ] && [ "$ncolors" -ge 8 ]; then
|
||||||
RED="$(tput setaf 1)"
|
RED="$(tput setaf 1)"
|
||||||
GREEN="$(tput setaf 2)"
|
GREEN="$(tput setaf 2)"
|
||||||
|
|
@ -43,10 +46,23 @@ fi
|
||||||
umask g-w,o-w
|
umask g-w,o-w
|
||||||
|
|
||||||
printf "${BLUE}Cloning Oh My Zsh...${NORMAL}\n"
|
printf "${BLUE}Cloning Oh My Zsh...${NORMAL}\n"
|
||||||
hash git >/dev/null 2>&1 && env git clone --depth=1 https://github.com/robbyrussell/oh-my-zsh.git $ZSH || {
|
hash git >/dev/null 2>&1 || {
|
||||||
printf "git not installed\n"
|
echo "Error: git is not installed"
|
||||||
exit
|
exit 1
|
||||||
}
|
}
|
||||||
|
env git clone --depth=1 https://github.com/robbyrussell/oh-my-zsh.git $ZSH || {
|
||||||
|
printf "Error: git clone of oh-my-zsh repo failed\n"
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
|
||||||
|
# The Windows (MSYS) Git is not compatible with normal use on cygwin
|
||||||
|
if [ "$OSTYPE" = cygwin ]; then
|
||||||
|
if git --version | grep msysgit > /dev/null; then
|
||||||
|
echo "Error: Windows/MSYS Git is not supported on Cygwin"
|
||||||
|
echo "Error: Make sure the Cygwin git package is installed and is first on the path"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
printf "${BLUE}Looking for an existing zsh config...${NORMAL}\n"
|
printf "${BLUE}Looking for an existing zsh config...${NORMAL}\n"
|
||||||
if [ -f ~/.zshrc ] || [ -h ~/.zshrc ]; then
|
if [ -f ~/.zshrc ] || [ -h ~/.zshrc ]; then
|
||||||
|
|
@ -68,13 +84,15 @@ export PATH=\"$PATH\"
|
||||||
mv -f ~/.zshrc-omztemp ~/.zshrc
|
mv -f ~/.zshrc-omztemp ~/.zshrc
|
||||||
|
|
||||||
# If this user's login shell is not already "zsh", attempt to switch.
|
# If this user's login shell is not already "zsh", attempt to switch.
|
||||||
if [ "$(expr "$SHELL" : '.*/\(.*\)')" != "zsh" ]; then
|
TEST_CURRENT_SHELL=$(expr "$SHELL" : '.*/\(.*\)')
|
||||||
|
if [ "$TEST_CURRENT_SHELL" != "zsh" ]; then
|
||||||
# If this platform provides a "chsh" command (not Cygwin), do it, man!
|
# If this platform provides a "chsh" command (not Cygwin), do it, man!
|
||||||
if hash chsh >/dev/null 2>&1; then
|
if hash chsh >/dev/null 2>&1; then
|
||||||
printf "${BLUE}Time to change your default shell to zsh!${NORMAL}\n"
|
printf "${BLUE}Time to change your default shell to zsh!${NORMAL}\n"
|
||||||
chsh -s $(grep /zsh$ /etc/shells | tail -1)
|
chsh -s $(grep /zsh$ /etc/shells | tail -1)
|
||||||
# Else, suggest the user do so manually.
|
# Else, suggest the user do so manually.
|
||||||
else
|
else
|
||||||
|
printf "I can't change your shell automatically because this system does not have chsh.\n"
|
||||||
printf "${BLUE}Please manually change your default shell to zsh!${NORMAL}\n"
|
printf "${BLUE}Please manually change your default shell to zsh!${NORMAL}\n"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
echo "Removing ~/.oh-my-zsh"
|
echo "Removing ~/.oh-my-zsh"
|
||||||
if [[ -d ~/.oh-my-zsh ]]
|
if [ -d ~/.oh-my-zsh ]
|
||||||
then
|
then
|
||||||
rm -rf ~/.oh-my-zsh
|
rm -rf ~/.oh-my-zsh
|
||||||
fi
|
fi
|
||||||
|
|
@ -20,9 +20,13 @@ then
|
||||||
|
|
||||||
source ~/.zshrc;
|
source ~/.zshrc;
|
||||||
else
|
else
|
||||||
|
if hash chsh >/dev/null 2>&1
|
||||||
|
then
|
||||||
echo "Switching back to bash"
|
echo "Switching back to bash"
|
||||||
chsh -s /bin/bash
|
chsh -s /bin/bash
|
||||||
source /etc/profile
|
else
|
||||||
|
echo "You can edit /etc/passwd to switch your default shell back to bash"
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "Thanks for trying out Oh My Zsh. It's been uninstalled."
|
echo "Thanks for trying out Oh My Zsh. It's been uninstalled."
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,10 @@
|
||||||
|
|
||||||
# Use colors, but only if connected to a terminal, and that terminal
|
# Use colors, but only if connected to a terminal, and that terminal
|
||||||
# supports them.
|
# supports them.
|
||||||
ncolors=$(tput colors)
|
tput=$(which tput)
|
||||||
|
if [ -n "$tput" ]; then
|
||||||
|
ncolors=$(tput colors)
|
||||||
|
fi
|
||||||
if [ -t 1 ] && [ -n "$ncolors" ] && [ "$ncolors" -ge 8 ]; then
|
if [ -t 1 ] && [ -n "$ncolors" ] && [ "$ncolors" -ge 8 ]; then
|
||||||
RED="$(tput setaf 1)"
|
RED="$(tput setaf 1)"
|
||||||
GREEN="$(tput setaf 2)"
|
GREEN="$(tput setaf 2)"
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue