420e9d789a26223df9dd7df7625daf032a3f5083

Author
Aaron N. Brock <AaronNBrock@gmail.com>
Committer
GitHub <noreply@github.com>
Date

Message

Merge branch 'master' into colorize-chroma-support

Diff

This diff is truncated to protect this page.

  1diff --git a/.gitignore b/.gitignore
  2index 87a79cdae3464823e307182badbf1d1ffc4b5aad..251c9dc9fff1fe5fad54a8379737f541f4ab7ef3 100644
  3--- a/.gitignore
  4+++ b/.gitignore
  5@@ -4,3 +4,4 @@ custom/
  6 # temp files directories
  7 cache/
  8 log/
  9+*.swp
 10diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
 11index f575157c21876fc09fb9bfa48297ad6a4ad1f158..be67e93b0a4242e8f96903d6b93bbc8a626afaee 100644
 12--- a/CONTRIBUTING.md
 13+++ b/CONTRIBUTING.md
 14@@ -31,7 +31,7 @@ your problem.
 15 
 16 If you find one, comment on it so we can know there are more people experiencing it.
 17 
 18-If not, look at the [Troubleshooting](https://github.com/robbyrussell/oh-my-zsh/wiki/Troubleshooting)
 19+If not, look at the [Troubleshooting](https://github.com/ohmyzsh/ohmyzsh/wiki/Troubleshooting)
 20 page for instructions on how to gather data to better debug your problem.
 21 
 22 Then, you can go ahead and create an issue with as much detail as you can provide.
 23@@ -62,7 +62,7 @@ maintainers) by mentioning their GitHub handle (starting with `@`) in your messa
 24 
 25 You should be familiar with the basics of
 26 [contributing on GitHub](https://help.github.com/articles/using-pull-requests) and have a fork
 27-[properly set up](https://github.com/robbyrussell/oh-my-zsh/wiki/Contribution-Technical-Practices).
 28+[properly set up](https://github.com/ohmyzsh/ohmyzsh/wiki/Contribution-Technical-Practices).
 29 
 30 You MUST always create PRs with _a dedicated branch_ based on the latest upstream tree.
 31 
 32@@ -85,7 +85,7 @@ maintainers) by mentioning their GitHub handle (starting with `@`) in your messa
 33 
 34 ### You have an addition
 35 
 36-Please [do not](https://github.com/robbyrussell/oh-my-zsh/wiki/Themes#dont-send-us-your-theme-for-now)
 37+Please [do not](https://github.com/ohmyzsh/ohmyzsh/wiki/Themes#dont-send-us-your-theme-for-now)
 38 send themes for now.
 39 
 40 Please be so kind as to [search](#use-the-search-luke) for any pending, merged or rejected Pull Requests
 41@@ -109,7 +109,7 @@ to help you check whether a similar contribution to yours already exists. Please
 42 before making any contribution, it avoids duplicates and eases maintenance. Trust me,
 43 that works 90% of the time.
 44 
 45-You can also take a look at the [FAQ](https://github.com/robbyrussell/oh-my-zsh/wiki/FAQ)
 46+You can also take a look at the [FAQ](https://github.com/ohmyzsh/ohmyzsh/wiki/FAQ)
 47 to be sure your contribution has not already come up.
 48 
 49 If all fails, your thing has probably not been reported yet, so you can go ahead
 50@@ -121,5 +121,5 @@ and [create an issue](#reporting-issues) or [submit a PR](#submitting-pull-reque
 51 
 52 Very nice!! :)
 53 
 54-Please have a look at the [Volunteer](https://github.com/robbyrussell/oh-my-zsh/wiki/Volunteers)
 55+Please have a look at the [Volunteer](https://github.com/ohmyzsh/ohmyzsh/wiki/Volunteers)
 56 page for instructions on where to start and more.
 57diff --git a/LICENSE.txt b/LICENSE.txt
 58index eb9978a7a523840cce8d9377200d9be93086957b..7431907a633d59ed6be68252c39cb165e47f169d 100644
 59--- a/LICENSE.txt
 60+++ b/LICENSE.txt
 61@@ -1,6 +1,6 @@
 62 MIT License
 63 
 64-Copyright (c) 2009-2019 Robby Russell and contributors (https://github.com/robbyrussell/oh-my-zsh/contributors)
 65+Copyright (c) 2009-2019 Robby Russell and contributors (https://github.com/ohmyzsh/ohmyzsh/contributors)
 66 
 67 Permission is hereby granted, free of charge, to any person obtaining a copy
 68 of this software and associated documentation files (the "Software"), to deal
 69diff --git a/README.md b/README.md
 70index 2f23febf5bfdbd210a6f4adbfcdca648be797d29..ac4b3879c689b04a0f2efa623b1189328dc21364 100644
 71--- a/README.md
 72+++ b/README.md
 73@@ -2,6 +2,9 @@
 74   <img src="https://s3.amazonaws.com/ohmyzsh/oh-my-zsh-logo.png" alt="Oh My Zsh">
 75 </p>
 76 
 77+[![Discord server](https://img.shields.io/discord/642496866407284746)](https://discord.gg/bpXWhnN)
 78+[![Follow @ohmyzsh](https://img.shields.io/twitter/follow/ohmyzsh?label=Follow+@ohmyzsh&style=flat)](https://twitter.com/intent/follow?screen_name=ohmyzsh)
 79+
 80 Oh My Zsh is an open source, community-driven framework for managing your [zsh](https://www.zsh.org/) configuration.
 81 
 82 Sounds boring. Let's try again.
 83@@ -19,7 +22,7 @@ To learn more, visit [ohmyz.sh](https://ohmyz.sh) and follow [@ohmyzsh](https://
 84 ### Prerequisites
 85 
 86 * A Unix-like operating system: macOS, Linux, BSD. On Windows: WSL is preferred, but cygwin or msys also mostly work.
 87-* [Zsh](https://www.zsh.org) should be installed (v4.3.9 or more recent). If not pre-installed (run `zsh --version` to confirm), check the following instructions here: [Installing ZSH](https://github.com/robbyrussell/oh-my-zsh/wiki/Installing-ZSH)
 88+* [Zsh](https://www.zsh.org) should be installed (v4.3.9 or more recent). If not pre-installed (run `zsh --version` to confirm), check the following instructions here: [Installing ZSH](https://github.com/ohmyzsh/ohmyzsh/wiki/Installing-ZSH)
 89 * `curl` or `wget` should be installed
 90 * `git` should be installed
 91 
 92@@ -30,13 +33,13 @@ Oh My Zsh is installed by running one of the following commands in your terminal
 93 #### via curl
 94 
 95 ```shell
 96-sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
 97+sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
 98 ```
 99 
100 #### via wget
101 
102 ```shell
103-sh -c "$(wget -O- https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
104+sh -c "$(wget -O- https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
105 ```
106 
107 #### Manual inspection
108@@ -46,7 +49,7 @@ that by downloading the install script first, looking through it so everything l
109 then running it:
110 
111 ```shell
112-curl -Lo install.sh https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh
113+curl -Lo install.sh https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh
114 sh install.sh
115 ```
116 
117@@ -54,7 +57,7 @@ sh install.sh
118 
119 ### Plugins
120 
121diff --git a/lib/termsupport.zsh b/lib/termsupport.zsh
122index aa14f3f07fe4a12979cd9352b8a6ee6d917cadc0..f5e367fcbc8a0391f3ed2b3cf28f6fa36fea91b5 100644
123--- a/lib/termsupport.zsh
124+++ b/lib/termsupport.zsh
125@@ -75,8 +75,9 @@ function omz_termsupport_preexec {
126   title '$CMD' '%100>...>$LINE%<<'
127 }
128 
129-precmd_functions+=(omz_termsupport_precmd)
130-preexec_functions+=(omz_termsupport_preexec)
131+autoload -U add-zsh-hook
132+add-zsh-hook precmd omz_termsupport_precmd
133+add-zsh-hook preexec omz_termsupport_preexec
134 
135 
136 # Keep Apple Terminal.app's current working directory updated
137@@ -99,7 +100,7 @@ if [[ "$TERM_PROGRAM" == "Apple_Terminal" ]] && [[ -z "$INSIDE_EMACS" ]]; then
138   }
139 
140   # Use a precmd hook instead of a chpwd hook to avoid contaminating output
141-  precmd_functions+=(update_terminalapp_cwd)
142+  add-zsh-hook precmd update_terminalapp_cwd
143   # Run once to get initial cwd set
144   update_terminalapp_cwd
145 fi
146diff --git a/plugins/alias-finder/alias-finder.plugin.zsh b/plugins/alias-finder/alias-finder.plugin.zsh
147index 6b8fa66ce4290e8f40dbbf76edd5f2e6f13be405..caee9b5a3bc43b2092cd6a7ab73e086dc664a8ed 100644
148--- a/plugins/alias-finder/alias-finder.plugin.zsh
149+++ b/plugins/alias-finder/alias-finder.plugin.zsh
150@@ -4,7 +4,7 @@ alias-finder() {
151     case $i in
152       -e|--exact) exact=true;;
153       -l|--longer) longer=true;;
154-      *) 
155+      *)
156         if [[ -z $cmd ]]; then
157           cmd=$i
158         else
159@@ -43,4 +43,5 @@ preexec_alias-finder() {
160   fi
161 }
162 
163-preexec_functions+=(preexec_alias-finder)
164+autoload -U add-zsh-hook
165+add-zsh-hook preexec preexec_alias-finder
166diff --git a/plugins/bundler/README.md b/plugins/bundler/README.md
167index a7d40cd0a4b7a16d998481b67780b84ddd11e14c..9f211b02f9093f9e36f1a8edaa8e1d8ecdec1ae6 100644
168--- a/plugins/bundler/README.md
169+++ b/plugins/bundler/README.md
170@@ -42,7 +42,7 @@ This will exclude the `foreman` and `spin` gems (i.e. their executable) from bei
171 
172 ## Excluded gems
173 
174-These gems should not be called with `bundle exec`. Please see [issue #2923](https://github.com/robbyrussell/oh-my-zsh/pull/2923) on GitHub for clarification.
175+These gems should not be called with `bundle exec`. Please see [issue #2923](https://github.com/ohmyzsh/ohmyzsh/pull/2923) on GitHub for clarification.
176 
177 `berks`
178 `foreman`
179diff --git a/plugins/catimg/README.md b/plugins/catimg/README.md
180index 2fc28a1c606fcd21423523afec6efb7bfdbf8690..42b59a62c3db3ac955471aff6203dee3da2d9487 100644
181--- a/plugins/catimg/README.md
182+++ b/plugins/catimg/README.md
183@@ -17,10 +17,10 @@ Plugin for displaying images on the terminal using the the `catimg.sh` script pr
184    )
185    ```
186 
187-2. Reload the source file or restart your Terminal session:
188+2. Restart the shell or restart your Terminal session:
189 
190    ```console
191-   $ source ~/.zshrc
192+   $ exec zsh
193    $
194    ```
195 
196diff --git a/plugins/colorize/README.md b/plugins/colorize/README.md
197index 38d17dc76e9938869812bad0403ad46031d7e1d8..8971fa011b12a50ab9c04df56403077c52626e7d 100644
198--- a/plugins/colorize/README.md
199+++ b/plugins/colorize/README.md
200@@ -43,6 +43,6 @@ In the latter form, the file contents will be concatenated and presented by less
201 
202 ## Requirements
203 
204-You have to either install Pygments: [pygments.org](http://pygments.org/download/)
205+You have to either install Pygments: [pygments.org](http://pygments.org/download.html)
206 
207-Or install chroma: [https://github.com/alecthomas/chroma](https://github.com/alecthomas/chroma)
208+Or install chroma: [https://github.com/alecthomas/chroma](https://github.com/alecthomas/chroma)
209diff --git a/plugins/dircycle/README.md b/plugins/dircycle/README.md
210index 3ac162f05e88febbc6627a7ce6e8373eb7100fa9..3c9b3a96f6533e821f688ade77c9715168103380 100644
211--- a/plugins/dircycle/README.md
212+++ b/plugins/dircycle/README.md
213@@ -15,10 +15,10 @@ This plugin enables directory navigation similar to using back and forward on br
214    )
215    ```
216 
217-2. Reload the source file or restart your Terminal session:
218+2. Restart the shell or restart your Terminal session:
219 
220    ```console
221-   $ source ~/.zshrc
222+   $ exec zsh
223    $
224    ```
225 
226diff --git a/plugins/dirhistory/dirhistory.plugin.zsh b/plugins/dirhistory/dirhistory.plugin.zsh
227index 239915e4821fec0264ef8bffb256f1c87c77ae0b..35c43d76ad7f06f273dbad3e4490c12b19a294af 100644
228--- a/plugins/dirhistory/dirhistory.plugin.zsh
229+++ b/plugins/dirhistory/dirhistory.plugin.zsh
230@@ -53,7 +53,8 @@ function push_future() {
231 }
232 
233 # Called by zsh when directory changes
234-chpwd_functions+=(chpwd_dirhistory)
235+autoload -U add-zsh-hook
236+add-zsh-hook chpwd chpwd_dirhistory
237 function chpwd_dirhistory() {
238   push_past $PWD
239   # If DIRHISTORY_CD is not set...
240diff --git a/plugins/dirpersist/dirpersist.plugin.zsh b/plugins/dirpersist/dirpersist.plugin.zsh
241index 616e2c3c658710d47073cfdd88aa43aea3782675..daadc3850b35b8e0731e8d69dba4232de587ac90 100644
242--- a/plugins/dirpersist/dirpersist.plugin.zsh
243+++ b/plugins/dirpersist/dirpersist.plugin.zsh
244@@ -11,7 +11,8 @@ if [[ -f ${dirstack_file} ]] && [[ ${#dirstack[*]} -eq 0 ]] ; then
245   [[ -d $dirstack[1] ]] && cd $dirstack[1] && cd $OLDPWD
246 fi
247 
248-chpwd_functions+=(chpwd_dirpersist)
249+autoload -U add-zsh-hook
250+add-zsh-hook chpwd chpwd_dirpersist
251 chpwd_dirpersist() {
252   if (( $DIRSTACKSIZE <= 0 )) || [[ -z $dirstack_file ]]; then return; fi
253   local -ax my_stack
254diff --git a/plugins/django/django.plugin.zsh b/plugins/django/django.plugin.zsh
255index 86558ff2ef7bba72ff301e68a31826d57c721966..c2d00c1711ae4c33c78254d36d1edeb8a34f8135 100644
256--- a/plugins/django/django.plugin.zsh
257+++ b/plugins/django/django.plugin.zsh
258@@ -374,7 +374,8 @@ _managepy-commands() {
259 _applist() {
260   local line
261   local -a apps
262-  _call_program help-command "python -c \"import os.path as op, re, django.conf, sys;\\
263+  _call_program help-command "python -c \"import sys; del sys.path[0];\\
264+                                          import os.path as op, re, django.conf;\\
265                                           bn=op.basename(op.abspath(op.curdir));[sys\\
266                                           .stdout.write(str(re.sub(r'^%s\.(.*?)$' %
267                                           bn, r'\1', i)) + '\n') for i in django.conf.settings.\\
268diff --git a/plugins/emotty/README.md b/plugins/emotty/README.md
269index 2cfbe120cb49aa3eb8b45c74a065f7f62b8fde6d..ee571705afaca839a55019842e979d182937a192 100644
270--- a/plugins/emotty/README.md
271+++ b/plugins/emotty/README.md
272@@ -8,7 +8,7 @@ To use it, add emotty to the plugins array in your zshrc file:
273 plugins=(... emotty)
274 ```
275 
276-**NOTE:** it requires the [emoji plugin](https://github.com/robbyrussell/oh-my-zsh/tree/master/plugins/emoji).
277+**NOTE:** it requires the [emoji plugin](https://github.com/ohmyzsh/ohmyzsh/tree/master/plugins/emoji).
278 
279 ## Usage
280 
281diff --git a/plugins/encode64/README.md b/plugins/encode64/README.md
282index 9850da85f3fae60688c039c5371fdd8bfbf3902f..66fc7cba49abb59bd022188e3a159ff7ccb4eb7d 100644
283--- a/plugins/encode64/README.md
284+++ b/plugins/encode64/README.md
285@@ -20,10 +20,10 @@ Alias plugin for encoding or decoding using `base64` command
286    )
287    ```
288 
289-2. Restart your terminal session or reload configuration by running:
290+2. Restart your terminal session or restart the shell:
291 
292    ```sh
293-   source ~/.zshrc
294+   exec zsh
295    ```
296 
297 ## Usage and examples
298diff --git a/plugins/extract/README.md b/plugins/extract/README.md
299index 83b878c3201ccf090df97a8eacd96394e5e8c946..41b6a61f15b36352df156debd365169706b93446 100644
300--- a/plugins/extract/README.md
301+++ b/plugins/extract/README.md
302@@ -27,6 +27,7 @@ plugins=(... extract)
303 | `jar`             | Java Archive                         |
304 | `lzma`            | LZMA archive                         |
305 | `rar`             | WinRAR archive                       |
306+| `rpm`             | RPM package                          |
307 | `sublime-package` | Sublime Text package                 |
308 | `tar`             | Tarball                              |
309 | `tar.bz2`         | Tarball with bzip2 compression       |
310diff --git a/plugins/extract/_extract b/plugins/extract/_extract
311index 33d49fcc5ecc2fa3b1ed3d2a4118efee9899c3e8..0257ce2314000a9580e7e8edd8c7d673f163d445 100644
312--- a/plugins/extract/_extract
313+++ b/plugins/extract/_extract
314@@ -3,5 +3,5 @@
315 
316 _arguments \
317   '(-r --remove)'{-r,--remove}'[Remove archive.]' \
318-  "*::archive file:_files -g '(#i)*.(7z|Z|apk|aar|bz2|deb|gz|ipsw|jar|lzma|rar|sublime-package|tar|tar.bz2|tar.gz|tar.xz|tar.zma|tbz|tbz2|tgz|tlz|txz|war|whl|xpi|xz|zip)(-.)'" \
319+  "*::archive file:_files -g '(#i)*.(7z|Z|apk|aar|bz2|deb|gz|ipsw|jar|lzma|rar|rpm|sublime-package|tar|tar.bz2|tar.gz|tar.xz|tar.zma|tbz|tbz2|tgz|tlz|txz|war|whl|xpi|xz|zip)(-.)'" \
320     && return 0
321diff --git a/plugins/extract/extract.plugin.zsh b/plugins/extract/extract.plugin.zsh
322index d3d847daf1f902b2e8a6a542ec9d365422d40f57..27b9e50f172a48667dd5c4a353d6ef02bd2ee7ae 100644
323--- a/plugins/extract/extract.plugin.zsh
324+++ b/plugins/extract/extract.plugin.zsh
325@@ -48,6 +48,7 @@ extract() {
326 			(*.z) uncompress "$1" ;;
327 			(*.zip|*.war|*.jar|*.sublime-package|*.ipsw|*.xpi|*.apk|*.aar|*.whl) unzip "$1" -d $extract_dir ;;
328 			(*.rar) unrar x -ad "$1" ;;
329+			(*.rpm) mkdir "$extract_dir" && cd "$extract_dir" && rpm2cpio "../$1" | cpio --quiet -id && cd .. ;;
330 			(*.7z) 7za x "$1" ;;
331 			(*.deb)
332 				mkdir -p "$extract_dir/control"
333diff --git a/plugins/fedora/README.md b/plugins/fedora/README.md
334index 6594799b32a4ede722014d9d9878ae52b31c369c..85d8d7deab2075287fc516fa3b6a73a7e8ec4f8b 100644
335--- a/plugins/fedora/README.md
336+++ b/plugins/fedora/README.md
337@@ -1 +1 @@
338-The fedora plugin is deprecated. Use the [dnf plugin](https://github.com/robbyrussell/oh-my-zsh/tree/master/plugins/dnf) instead.
339+The fedora plugin is deprecated. Use the [dnf plugin](https://github.com/ohmyzsh/ohmyzsh/tree/master/plugins/dnf) instead.
340diff --git a/plugins/git-auto-fetch/git-auto-fetch.plugin.zsh b/plugins/git-auto-fetch/git-auto-fetch.plugin.zsh
341index 56ab86dbed4572d2b3eec57f93e994aeabeb2341..5c42c21a78b14bc05b273513194beb1b1118c697 100644
342--- a/plugins/git-auto-fetch/git-auto-fetch.plugin.zsh
343+++ b/plugins/git-auto-fetch/git-auto-fetch.plugin.zsh
344@@ -1,16 +1,17 @@
345 GIT_AUTO_FETCH_INTERVAL=${GIT_AUTO_FETCH_INTERVAL:=60}
346 
347 function git-fetch-all {
348-  (`git rev-parse --is-inside-work-tree 2>/dev/null` &&
349-  dir=`git rev-parse --git-dir` &&
350+  (`command git rev-parse --is-inside-work-tree 2>/dev/null` &&
351+  dir=`command git rev-parse --git-dir` &&
352   [[ ! -f $dir/NO_AUTO_FETCH ]] &&
353   (( `date +%s` - `date -r $dir/FETCH_LOG +%s 2>/dev/null || echo 0` > $GIT_AUTO_FETCH_INTERVAL )) &&
354-  git fetch --all 2>/dev/null &>! $dir/FETCH_LOG &)
355+  GIT_SSH_COMMAND="command ssh -o BatchMode=yes" \
356+    command git fetch --all 2>/dev/null &>! $dir/FETCH_LOG &)
357 }
358 
359 function git-auto-fetch {
360-  `git rev-parse --is-inside-work-tree 2>/dev/null` || return
361-  guard="`git rev-parse --git-dir`/NO_AUTO_FETCH"
362+  `command git rev-parse --is-inside-work-tree 2>/dev/null` || return
363+  guard="`command git rev-parse --git-dir`/NO_AUTO_FETCH"
364 
365   (rm $guard 2>/dev/null &&
366     echo "${fg_bold[green]}enabled${reset_color}") ||
367diff --git a/plugins/git-prompt/git-prompt.plugin.zsh b/plugins/git-prompt/git-prompt.plugin.zsh
368index 76ac2e62b00fde67fe5f1c967dc15a55304084b1..da674af98db9a167db266fbd579a00e21f1a6a22 100644
369--- a/plugins/git-prompt/git-prompt.plugin.zsh
370+++ b/plugins/git-prompt/git-prompt.plugin.zsh
371@@ -20,9 +20,10 @@ function precmd_update_git_vars() {
372     fi
373 }
374 
375-chpwd_functions+=(chpwd_update_git_vars)
376-precmd_functions+=(precmd_update_git_vars)
377-preexec_functions+=(preexec_update_git_vars)
378+autoload -U add-zsh-hook
379+add-zsh-hook chpwd chpwd_update_git_vars
380+add-zsh-hook precmd precmd_update_git_vars
381+add-zsh-hook preexec preexec_update_git_vars
382 
383 
384 ## Function definitions
385diff --git a/plugins/gitfast/README.md b/plugins/gitfast/README.md
386index 84e35d77cc734483b837c87118cc666ad4d27f54..23db5393b00c76ecb9583035ffcd7c0826821c3b 100644
387--- a/plugins/gitfast/README.md
388+++ b/plugins/gitfast/README.md
389@@ -11,5 +11,5 @@ plugins=(... gitfast)
390 ## Aliases
391 
392 An earlier version of the plugin also loaded the git plugin. If you want to keep those
393-aliases enable the [git plugin](https://github.com/robbyrussell/oh-my-zsh/tree/master/plugins/git)
394+aliases enable the [git plugin](https://github.com/ohmyzsh/ohmyzsh/tree/master/plugins/git)
395 as well.
396diff --git a/plugins/go/README.md b/plugins/go/README.md
397index 6ce6f4ee26d36a2738dba22e78c751cd69b2d7f0..bf43b9febb93fe0e5a70d8e86f16d6a8a876e073 100644
398--- a/plugins/go/README.md
399+++ b/plugins/go/README.md
400@@ -1 +1 @@
401-The go plugin is deprecated. Use the [golang plugin](https://github.com/robbyrussell/oh-my-zsh/tree/master/plugins/golang) instead.
402+The go plugin is deprecated. Use the [golang plugin](https://github.com/ohmyzsh/ohmyzsh/tree/master/plugins/golang) instead.
403diff --git a/plugins/history-substring-search/README.md b/plugins/history-substring-search/README.md
404index 7fb0fa0b657f8b0cc8c592a3efdc089665f5325f..0ffb21351b2b637c7a7788205c2a02ee2593a711 100644
405--- a/plugins/history-substring-search/README.md
406+++ b/plugins/history-substring-search/README.md
407@@ -9,7 +9,7 @@ You can also use K and J in VI mode or ^P and ^N in EMACS mode for the same.
408 [1]: https://fishshell.com
409 [2]: https://www.zsh.org/mla/users/2009/msg00818.html
410 [3]: https://sourceforge.net/projects/fizsh/
411-[4]: https://github.com/robbyrussell/oh-my-zsh/pull/215
412+[4]: https://github.com/ohmyzsh/ohmyzsh/pull/215
413 [5]: https://github.com/zsh-users/zsh-history-substring-search
414 [6]: https://github.com/zsh-users/zsh-syntax-highlighting
415 
416diff --git a/plugins/jenv/jenv.plugin.zsh b/plugins/jenv/jenv.plugin.zsh
417index 2eda8037bb8d33b010a33559555d3b587e86f2cb..b85906a0b9f2d839974f8e457a8955d51c1d12f4 100644
418--- a/plugins/jenv/jenv.plugin.zsh
419+++ b/plugins/jenv/jenv.plugin.zsh
420@@ -15,7 +15,7 @@ if [[ $FOUND_JENV -eq 0 ]]; then
421 fi
422 
423 if [[ $FOUND_JENV -eq 1 ]]; then
424-    export PATH="${jenvdir}/bin:$PATH"
425+    (( $+commands[jenv] )) || export PATH="${jenvdir}/bin:$PATH"
426     eval "$(jenv init - zsh)"
427 
428     function jenv_prompt_info() { jenv version-name 2>/dev/null }
429diff --git a/plugins/jsontools/jsontools.plugin.zsh b/plugins/jsontools/jsontools.plugin.zsh
430index 20d5eb1c9928e05b61631072910a7fd106235906..912c835090b4155207c0cecc4c3d129bf7b2cf97 100644
431--- a/plugins/jsontools/jsontools.plugin.zsh
432+++ b/plugins/jsontools/jsontools.plugin.zsh
433@@ -11,9 +11,10 @@ if [[ $(whence node) != "" && ( "x$JSONTOOLS_METHOD" = "x"  || "x$JSONTOOLS_METH
434 	alias urlencode_json='xargs -0 node -e "console.log(encodeURIComponent(process.argv[1]))"'
435 	alias urldecode_json='xargs -0 node -e "console.log(decodeURIComponent(process.argv[1]))"'
436 elif [[ $(whence python) != "" && ( "x$JSONTOOLS_METHOD" = "x" || "x$JSONTOOLS_METHOD" = "xpython" ) ]]; then
437-	alias pp_json='python -mjson.tool'
438+	alias pp_json='python -c "import sys; del sys.path[0]; import runpy; runpy._run_module_as_main(\"json.tool\")"'
439 	alias is_json='python -c "
440-import json, sys;
441+import sys; del sys.path[0];
442+import json;
443 try: 
444 	json.loads(sys.stdin.read())
445 except ValueError, e: 
446@@ -22,11 +23,13 @@ else:
447 	print True
448 sys.exit(0)"'
449 	alias urlencode_json='python -c "
450-import urllib, json, sys;
451+import sys; del sys.path[0];
452+import urllib, json;
453 print urllib.quote_plus(sys.stdin.read())
454 sys.exit(0)"'
455 	alias urldecode_json='python -c "
456-import urllib, json, sys;
457+import sys; del sys.path[0];
458+import urllib, json;
459 print urllib.unquote_plus(sys.stdin.read())
460 sys.exit(0)"'
461 elif [[ $(whence ruby) != "" && ( "x$JSONTOOLS_METHOD" = "x" || "x$JSONTOOLS_METHOD" = "xruby" ) ]]; then
462@@ -36,4 +39,4 @@ elif [[ $(whence ruby) != "" && ( "x$JSONTOOLS_METHOD" = "x" || "x$JSONTOOLS_MET
463 	alias urldecode_json='ruby -e "require \"uri\"; puts URI.unescape(STDIN.read)"'
464 fi
465 
466-unset JSONTOOLS_METHOD
467+unset JSONTOOLS_METHOD
468diff --git a/plugins/last-working-dir/last-working-dir.plugin.zsh b/plugins/last-working-dir/last-working-dir.plugin.zsh
469index 53bb19e4687faf85d18c51ae61d265e8c64829c4..fd21705ae2ccdd4a20ab93e639d4aefa4d5a83ca 100644
470--- a/plugins/last-working-dir/last-working-dir.plugin.zsh
471+++ b/plugins/last-working-dir/last-working-dir.plugin.zsh
472@@ -2,7 +2,8 @@
473 typeset -g ZSH_LAST_WORKING_DIRECTORY
474 
475 # Updates the last directory once directory is changed
476-chpwd_functions+=(chpwd_last_working_dir)
477+autoload -U add-zsh-hook
478+add-zsh-hook chpwd chpwd_last_working_dir
479 chpwd_last_working_dir() {
480 	if [ "$ZSH_SUBSHELL" = 0 ]; then
481 		local cache_file="$ZSH_CACHE_DIR/last-working-dir"
482diff --git a/plugins/lol/README.md b/plugins/lol/README.md
483index b0e54f57529c8c571e0535224d70bcb2fc9f5c6c..8fba7b713ede3a83981cc0a8efe55b8fda937e71 100644
484--- a/plugins/lol/README.md
485+++ b/plugins/lol/README.md
486@@ -13,10 +13,10 @@ Plugin for adding catspeak aliases, because why not
487    )
488    ```
489 
490-2. Reload the source file or restart your Terminal session:
491+2. Restart your terminal session or restart the shell:
492 
493    ```console
494-   $ source ~/.zshrc
495+   $ exec zsh
496    $
497    ```
498 
499diff --git a/plugins/lol/lol.plugin.zsh b/plugins/lol/lol.plugin.zsh
500index 585f96e4f62ac50c5ce60f3209d887246a6947cb..3c30259a16a508d63036396d37b46b67b6eb486a 100644
501--- a/plugins/lol/lol.plugin.zsh
502+++ b/plugins/lol/lol.plugin.zsh
503@@ -45,7 +45,7 @@ alias bringz='git pull'
504 alias chicken='git add'
505 alias oanward='git commit -m'
506 alias ooanward='git commit -am'
507-alias yolo='git commit -m "$(curl -s https://whatthecommit.com/index.txt)"'
508+alias yolo='git commit -m "$(curl -s http://whatthecommit.com/index.txt)"'
509 alias letcat='git checkout'
510 alias violenz='git rebase'
511 
512diff --git a/plugins/meteor/README.md b/plugins/meteor/README.md
513index 4bee87f8faa5d834dc339000b199220e53bb3b08..187a45a62e33531984dde922919f537311436bfc 100644
514--- a/plugins/meteor/README.md
515+++ b/plugins/meteor/README.md
516@@ -1,6 +1,6 @@
517 ## Introduction
518 
519-The [meteor plugin](https://github.com/robbyrussell/oh-my-zsh/tree/master/plugins/meteor) provides many
520+The [meteor plugin](https://github.com/ohmyzsh/ohmyzsh/tree/master/plugins/meteor) provides many
521 [useful aliases](#aliases) as well as completion for the `meteor` command.
522 
523 Enable it by adding `meteor` to the plugins array in your zshrc file:
524diff --git a/plugins/mvn/README.md b/plugins/mvn/README.md
525index 88f5be8ba3a70e889c6a59246be582f7ce5f0197..3bbba5b4fb9764e2b1b5dc02e4403d1c4ab7530f 100644
526--- a/plugins/mvn/README.md
527+++ b/plugins/mvn/README.md
528@@ -55,4 +55,4 @@ has colored output, so this function will be soon removed from the plugin.
529 ### Known bugs
530 
531 It has a bug where it will swallow mvn prompts for user input, _e.g._ when using
532-`archetype:generate`. See [#5052](https://github.com/robbyrussell/oh-my-zsh/issues/5052).
533+`archetype:generate`. See [#5052](https://github.com/ohmyzsh/ohmyzsh/issues/5052).
534diff --git a/plugins/ng/README.md b/plugins/ng/README.md
535index 86ad64041284fd29f7fcb34d4af0dfb59c0b1b7a..94a450c18d4cff25b5047823e3f9b451ef5c95e8 100644
536--- a/plugins/ng/README.md
537+++ b/plugins/ng/README.md
538@@ -1,6 +1,6 @@
539 ## NG Plugin
540 
541-This [ng plugin](https://github.com/robbyrussell/oh-my-zsh/tree/master/plugins/ng)
542+This [ng plugin](https://github.com/ohmyzsh/ohmyzsh/tree/master/plugins/ng)
543  adds completion support for Angular's CLI (named ng).
544 
545 Ng is hosted on [ng home](https://github.com/catull/angular-cli)
546diff --git a/plugins/osx/README.md b/plugins/osx/README.md
547index 4595ee3195e92ffc47ed044577f2a79f1c7579e8..f3881ec6bef685dd0750d6ba4695dc6a3cf7eae0 100644
548--- a/plugins/osx/README.md
549+++ b/plugins/osx/README.md
550@@ -42,20 +42,21 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
551 
552 ## Commands
553 
554-| Command         | Description                                         |
555-| :-------------- | :-------------------------------------------------- |
556-| `tab`           | Open the current directory in a new tab             |
557-| `split_tab`     | Split the current terminal tab horizontally         |
558-| `vsplit_tab`    | Split the current terminal tab vertically           |
559-| `ofd`           | Open the current directory in a Finder window       |
560-| `pfd`           | Return the path of the frontmost Finder window      |
561-| `pfs`           | Return the current Finder selection                 |
562-| `cdf`           | `cd` to the current Finder directory                |
563-| `pushdf`        | `pushd` to the current Finder directory             |
564-| `quick-look`    | Quick-Look a specified file                         |
565-| `man-preview`   | Open a specified man page in Preview app            |
566-| `showfiles`     | Show hidden files                                   |
567-| `hidefiles`     | Hide the hidden files                               |
568-| `itunes`        | Control iTunes. Use `itunes -h` for usage details   |
569-| `spotify`       | Control Spotify and search by artist, album, track… |
570-| `rmdsstore`     | Remove .DS\_Store files recursively in a directory  |
571+| Command         | Description                                           |
572+| :-------------- | :---------------------------------------------------- |
573+| `tab`           | Open the current directory in a new tab               |
574+| `split_tab`     | Split the current terminal tab horizontally           |
575+| `vsplit_tab`    | Split the current terminal tab vertically             |
576+| `ofd`           | Open the current directory in a Finder window         |
577+| `pfd`           | Return the path of the frontmost Finder window        |
578+| `pfs`           | Return the current Finder selection                   |
579+| `cdf`           | `cd` to the current Finder directory                  |
580+| `pushdf`        | `pushd` to the current Finder directory               |
581+| `quick-look`    | Quick-Look a specified file                           |
582+| `man-preview`   | Open a specified man page in Preview app              |
583+| `showfiles`     | Show hidden files                                     |
584+| `hidefiles`     | Hide the hidden files                                 |
585+| `itunes`        | DEPRECATED. Use `music` from macOS Catalina on        |
586+| `music`         | Control Apple Music. Use `music -h` for usage details |
587+| `spotify`       | Control Spotify and search by artist, album, track…   |
588+| `rmdsstore`     | Remove .DS\_Store files recursively in a directory    |
589diff --git a/plugins/osx/osx.plugin.zsh b/plugins/osx/osx.plugin.zsh
590index eb3c4fb7a185b228a56688f125f02c54ee14e7d4..03e9c1c8c3a8be8d0576207280c5c543893460ed 100644
591--- a/plugins/osx/osx.plugin.zsh
592+++ b/plugins/osx/osx.plugin.zsh
593@@ -219,7 +219,19 @@ function vncviewer() {
594 }
595 
596 # iTunes control function
597-function itunes() {
598+function itunes music() {
599+	local APP_NAME=Music
600+
601+	autoload is-at-least
602+	if is-at-least 10.15 $(sw_vers -productVersion); then
603+		if [[ $0 = itunes ]]; then
604+			echo >&2 The itunes function name is deprecated. Use \`music\' instead.
605+			return 1
606+		fi
607+	else
608+		APP_NAME=iTunes
609+	fi
610+
611 	local opt=$1
612 	local playlist=$2
613 	shift
614@@ -236,7 +248,7 @@ function itunes() {
615 			opt="$opt track"
616 			;;
617 		vol)
618-			local new_volume volume=$(osascript -e 'tell application "iTunes" to get sound volume')
619+			local new_volume volume=$(osascript -e "tell application \"$APP_NAME\" to get sound volume")
620 			if [[ $# -eq 0 ]]; then
621 				echo "Current volume is ${volume}."
622 				return 0
623@@ -251,26 +263,26 @@ function itunes() {
624 			opt="set sound volume to ${new_volume}"
625 			;;
626 		playlist)
627-		# Inspired by: https://gist.github.com/nakajijapan/ac8b45371064ae98ea7f
628-if [[ ! -z "$playlist" ]]; then
629-                    		osascript -e 'tell application "iTunes"' -e "set new_playlist to \"$playlist\" as string" -e "play playlist new_playlist" -e "end tell" 2>/dev/null;
630+			# Inspired by: https://gist.github.com/nakajijapan/ac8b45371064ae98ea7f
631+			if [[ ! -z "$playlist" ]]; then
632+				osascript -e "tell application \"$APP_NAME\"" -e "set new_playlist to \"$playlist\" as string" -e "play playlist new_playlist" -e "end tell" 2>/dev/null;
633 				if [[ $? -eq 0 ]]; then
634 					opt="play"
635 				else
636 					opt="stop"
637 				fi
638-                  else
639-                    opt="set allPlaylists to (get name of every playlist)"
640-                  fi
641-                ;;
642+			else
643+				opt="set allPlaylists to (get name of every playlist)"
644+			fi
645+			;;
646 		playing|status)
647-			local state=`osascript -e 'tell application "iTunes" to player state as string'`
648+			local state=`osascript -e "tell application \"$APP_NAME\" to player state as string"`
649 			if [[ "$state" = "playing" ]]; then
650-				currenttrack=`osascript -e 'tell application "iTunes" to name of current track as string'`
651-				currentartist=`osascript -e 'tell application "iTunes" to artist of current track as string'`
652+				currenttrack=`osascript -e "tell application \"$APP_NAME\" to name of current track as string"`
653+				currentartist=`osascript -e "tell application \"$APP_NAME\" to artist of current track as string"`
654 				echo -E "Listening to $fg[yellow]$currenttrack$reset_color by $fg[yellow]$currentartist$reset_color";
655 			else
656-				echo "iTunes is" $state;
657+				echo "$APP_NAME is" $state;
658 			fi
659 			return 0
660 			;;
661@@ -284,7 +296,7 @@ if [[ ! -z "$playlist" ]]; then
662 
663 			if [[ -n "$state" && ! "$state" =~ "^(on|off|toggle)$" ]]
664 			then
665-				print "Usage: itunes shuffle [on|off|toggle]. Invalid option."
666+				print "Usage: $0 shuffle [on|off|toggle]. Invalid option."
667 				return 1
668 			fi
669 
670@@ -305,14 +317,14 @@ EOF
671 			esac
672 			;;
673 		""|-h|--help)
674-			echo "Usage: itunes <option>"
675+			echo "Usage: $0 <option>"
676 			echo "option:"
677 			echo "\tlaunch|play|pause|stop|rewind|resume|quit"
678 			echo "\tmute|unmute\tcontrol volume set"
679 			echo "\tnext|previous\tplay next or previous track"
680 			echo "\tshuf|shuffle [on|off|toggle]\tSet shuffled playback. Default: toggle. Note: toggle doesn't support the MiniPlayer."
681 			echo "\tvol [0-100|up|down]\tGet or set the volume. 0 to 100 sets the volume. 'up' / 'down' increases / decreases by 10 points. No argument displays current volume."
682-			echo "\tplaying|status\tShow what song is currently playing in iTunes."
683+			echo "\tplaying|status\tShow what song is currently playing in Music."
684 			echo "\tplaylist [playlist name]\t Play specific playlist"
685 			echo "\thelp\tshow this message and exit"
686 			return 0
687@@ -322,7 +334,7 @@ EOF
688 			return 1
689 			;;
690 	esac
691-	osascript -e "tell application \"iTunes\" to $opt"
692+	osascript -e "tell application \"$APP_NAME\" to $opt"
693diff --git a/plugins/percol/README.md b/plugins/percol/README.md
694index b262e414eca153f99e867445614332a35806add7..ec5de4f86bd232f6b468c4669f4f603a6f5ab804 100644
695--- a/plugins/percol/README.md
696+++ b/plugins/percol/README.md
697@@ -1,6 +1,6 @@
698 ## percol
699 
700-Provides some useful function to make [percol](https://github.com/mooz/percol) work with zsh history and [jump plugin](https://github.com/robbyrussell/oh-my-zsh/blob/master/plugins/jump/jump.plugin.zsh)
701+Provides some useful function to make [percol](https://github.com/mooz/percol) work with zsh history and [jump plugin](https://github.com/ohmyzsh/ohmyzsh/blob/master/plugins/jump/jump.plugin.zsh)
702 
703 ### Requirements
704 
705@@ -8,7 +8,7 @@ Provides some useful function to make [percol](https://github.com/mooz/percol) w
706 pip install percol
707 ```
708 
709-And [jump](https://github.com/robbyrussell/oh-my-zsh/blob/master/plugins/jump/jump.plugin.zsh) for `oh-my-zsh` is a optional requirement.
710+And [jump](https://github.com/ohmyzsh/ohmyzsh/blob/master/plugins/jump/jump.plugin.zsh) for `oh-my-zsh` is a optional requirement.
711 
712 ### Usage
713 
714diff --git a/plugins/pipenv/pipenv.plugin.zsh b/plugins/pipenv/pipenv.plugin.zsh
715index 0a5dc56a42b5424ba1b4b52f75cdc7d0a903cd37..ec41c3e02960fad0c9b6428a22219849e29bee48 100644
716--- a/plugins/pipenv/pipenv.plugin.zsh
717+++ b/plugins/pipenv/pipenv.plugin.zsh
718@@ -23,7 +23,8 @@ _togglePipenvShell() {
719     fi
720   fi
721 }
722-chpwd_functions+=(_togglePipenvShell)
723+autoload -U add-zsh-hook
724+add-zsh-hook chpwd _togglePipenvShell
725 
726 # Aliases
727 alias pch="pipenv check"
728diff --git a/plugins/rails/README.md b/plugins/rails/README.md
729index 5549ba18b51eb02c36e29c5ba716f9ed0e3971d9..ad83fffe88e92af1cff797371f9ebfabf14f97b1 100644
730--- a/plugins/rails/README.md
731+++ b/plugins/rails/README.md
732@@ -18,7 +18,7 @@ plugins=(... rails)
733 | `rcs` | `rails console --sandbox`  | Test code in a sandbox, without changing any data  |
734 | `rd`  | `rails destroy`            | Undo a generate operation                          |
735 | `rdb` | `rails dbconsole`          | Interact with your db from the console             |
736-| `rgen`  | `rails generate`           | Generate boilerplate code                          |
737+| `rgen`| `rails generate`           | Generate boilerplate code                          |
738 | `rgm` | `rails generate migration` | Generate a db migration                            |
739 | `rp`  | `rails plugin`             | Run a Rails plugin command                         |
740 | `ru`  | `rails runner`             | Run Ruby code in the context of Rails              |
741@@ -44,7 +44,7 @@ plugins=(... rails)
742 | `rlc`   | `rake log:clear`                | Clear Rails logs                                       |
743 | `rn`    | `rake notes`                    | Search for notes (`FIXME`, `TODO`) in code comments    |
744 | `rr`    | `rake routes`                   | List all defined routes                                |
745-| `rrg`   | `rake routes | grep`            | List and filter the defined routes                     |
746+| `rrg`   | `rake routes \| grep`           | List and filter the defined routes                     |
747 | `rt`    | `rake test`                     | Run Rails tests                                        |
748 | `rmd`   | `rake middleware`               | Interact with Rails middlewares                        |
749 | `rsts`  | `rake stats`                    | Print code statistics                                  |
750diff --git a/plugins/rake/README.md b/plugins/rake/README.md
751index e235bd91a2c53179e54e13aeb4ef6da0c1a0b2fd..e888c078577bb4f7918ff02765385220edd5e4c5 100644
752--- a/plugins/rake/README.md
753+++ b/plugins/rake/README.md
754@@ -34,4 +34,4 @@ The plugin also aliases `rake` to [`jimweirich`](https://github.com/jimweirich),
755 and big time contributor to the Ruby open source community. He passed away in 2014:
756 
757 > Thank you Jim for everything you contributed to the Ruby and open source community 
758-> over the years. We will miss you dearly. — [**@robbyrussell**](https://github.com/robbyrussell/oh-my-zsh/commit/598a9c6f990756386517d66b6bcf77e53791e905)
759+> over the years. We will miss you dearly. — [**@robbyrussell**](https://github.com/ohmyzsh/ohmyzsh/commit/598a9c6f990756386517d66b6bcf77e53791e905)
760diff --git a/plugins/salt/_salt b/plugins/salt/_salt
761index 10b782af4095bed7d9a177d6cd1000d3e15b4389..78d8611d23451da86a428d0cf2c23eae8fe0c0e9 100644
762--- a/plugins/salt/_salt
763+++ b/plugins/salt/_salt
764@@ -271,7 +271,7 @@ _salt_comp(){
765     fi
766 
767     if _cache_invalid salt/salt_dir || ! _retrieve_cache salt/salt_dir; then
768-        salt_dir="${$(python2 -c 'import salt; print(salt.__file__);')%__init__*}"
769+        salt_dir="${$(python2 -c 'import sys; del sys.path[0]; import salt; print(salt.__file__);')%__init__*}"
770         _store_cache salt/salt_dir salt_dir
771     fi
772 }
773diff --git a/plugins/sudo/README.md b/plugins/sudo/README.md
774index ebfdfd10d50b8108b8394bdb548cd23a942b98fb..25eb858293760118d3868f25d3d795e86f5dfeb3 100644
775--- a/plugins/sudo/README.md
776+++ b/plugins/sudo/README.md
777@@ -13,10 +13,10 @@ Easily prefix your current or previous commands with `sudo` by pressing <kbd>esc
778     )
779     ```
780 
781-2.  Reload the source file or restart your Terminal session:
782+2.  Restart your shell or restart your Terminal session:
783 
784     ```console
785-    $ source ~/.zshrc
786+    $ exec zsh
787     $
788     ```
789 
790diff --git a/plugins/terraform/_terraform b/plugins/terraform/_terraform
791index 1d1315a8ace23de7434782432ab8db8097dc09e0..5b36558016d6444a0987e7b287eeb1c2b680a1fb 100644
792--- a/plugins/terraform/_terraform
793+++ b/plugins/terraform/_terraform
794@@ -1,6 +1,6 @@
795 #compdef terraform
796 
797-local -a _terraform_cmds
798+local -a _terraform_cmds opt_args
799 _terraform_cmds=(
800     'apply:Builds or changes infrastructure'
801     'console:Interactive console for Terraform interpolations'
802@@ -16,13 +16,21 @@ _terraform_cmds=(
803     'push:Upload this Terraform module to Atlas to run'
804     'refresh:Update local state file against real resources'
805     'show:Inspect Terraform state or plan'
806+    'state:Advanced state management'
807     'taint:Manually mark a resource for recreation'
808     'untaint:Manually unmark a resource as tainted'
809     'validate:Validates the Terraform files'
810     'version:Prints the Terraform version'
811     'workspace:Workspace management'
812+    '0.12upgrade:Rewrites pre-0.12 module source code for v0.12'
813 )
814 
815+__012upgrade() {
816+  _arguments \
817+    '-yes[Skip the initial introduction messages and interactive confirmation. This can be used to run this command in batch from a script.]' \
818diff --git a/plugins/thefuck/README.md b/plugins/thefuck/README.md
819index a9b7550d7f3e88dfc6ac2b6acb2b2febb21a9350..bd407b3167d4e8f03d20fedef3bfcedabe920b69 100644
820--- a/plugins/thefuck/README.md
821+++ b/plugins/thefuck/README.md
822@@ -6,4 +6,4 @@
823 Press `ESC` twice to correct previous console command.
824 
825 ## Notes
826-`Esc`-`Esc` key binding conflicts with [sudo](https://github.com/robbyrussell/oh-my-zsh/tree/master/plugins/sudo) plugin.
827+`Esc`-`Esc` key binding conflicts with [sudo](https://github.com/ohmyzsh/ohmyzsh/tree/master/plugins/sudo) plugin.
828diff --git a/plugins/timer/timer.plugin.zsh b/plugins/timer/timer.plugin.zsh
829index 231134e7df60cbc47e3929b5d6a4a5640793875f..728377c5cc5cd99905dd68d8d452182879981ee5 100644
830--- a/plugins/timer/timer.plugin.zsh
831+++ b/plugins/timer/timer.plugin.zsh
832@@ -25,5 +25,6 @@ __timer_display_timer_precmd() {
833   fi
834 }
835 
836-preexec_functions+=(__timer_save_time_preexec)
837-precmd_functions+=(__timer_display_timer_precmd)
838+autoload -U add-zsh-hook
839+add-zsh-hook preexec __timer_save_time_preexec
840+add-zsh-hook precmd __timer_display_timer_precmd
841diff --git a/plugins/tmux/tmux.plugin.zsh b/plugins/tmux/tmux.plugin.zsh
842index 5b5d1b1ba342f726563b83f3009cabba1b163b35..dad3db57838aedf6daba16adfb196684b84521a5 100644
843--- a/plugins/tmux/tmux.plugin.zsh
844+++ b/plugins/tmux/tmux.plugin.zsh
845@@ -46,6 +46,7 @@ fi
846 
847 # Set the correct local config file to use.
848 if [[ "$ZSH_TMUX_ITERM2" == "false" && -e "$ZSH_TMUX_CONFIG" ]]; then
849+  export ZSH_TMUX_CONFIG
850   export _ZSH_TMUX_FIXED_CONFIG="${0:h:a}/tmux.extra.conf"
851 else
852   export _ZSH_TMUX_FIXED_CONFIG="${0:h:a}/tmux.only.conf"
853diff --git a/plugins/urltools/README.md b/plugins/urltools/README.md
854index 548301c72443038f316b5832d406cc58ce3f448b..29c3710707f6ccc0da866fc87fee0eb713f2c266 100644
855--- a/plugins/urltools/README.md
856+++ b/plugins/urltools/README.md
857@@ -21,9 +21,9 @@ Original idea and aliases: [Ruslan Spivak](https://ruslanspivak.wordpress.com/20
858 ## Examples
859 
860 ```zsh
861-urlencode 'https://github.com/robbyrussell/oh-my-zsh/search?q=urltools&type=Code'
862-# returns https%3A%2F%2Fgithub.com%2Frobbyrussell%2Foh-my-zsh%2Fsearch%3Fq%3Durltools%26type%3DCode
863+urlencode 'https://github.com/ohmyzsh/ohmyzsh/search?q=urltools&type=Code'
864+# returns https%3A%2F%2Fgithub.com%2Fohmyzsh%2Fohmyzsh%2Fsearch%3Fq%3Durltools%26type%3DCode
865 
866-urldecode 'https%3A%2F%2Fgithub.com%2Frobbyrussell%2Foh-my-zsh%2Fsearch%3Fq%3Durltools%26type%3DCode'
867-# returns https://github.com/robbyrussell/oh-my-zsh/search?q=urltools&type=Code
868+urldecode 'https%3A%2F%2Fgithub.com%2Fohmyzsh%2Fohmyzsh%2Fsearch%3Fq%3Durltools%26type%3DCode'
869+# returns https://github.com/ohmyzsh/ohmyzsh/search?q=urltools&type=Code
870 ```
871diff --git a/plugins/urltools/urltools.plugin.zsh b/plugins/urltools/urltools.plugin.zsh
872index 47d9a34e449a126544e7562c9892d2de77914e5b..b443e5027bbc21a37150eb175b1f69a0da508e8a 100644
873--- a/plugins/urltools/urltools.plugin.zsh
874+++ b/plugins/urltools/urltools.plugin.zsh
875@@ -12,11 +12,11 @@ if [[ $(whence node) != "" && ( "x$URLTOOLS_METHOD" = "x"  || "x$URLTOOLS_METHOD
876     alias urlencode='node -e "console.log(encodeURIComponent(process.argv[1]))"'
877     alias urldecode='node -e "console.log(decodeURIComponent(process.argv[1]))"'
878 elif [[ $(whence python3) != "" && ( "x$URLTOOLS_METHOD" = "x" || "x$URLTOOLS_METHOD" = "xpython" ) ]]; then
879-    alias urlencode='python3 -c "import sys, urllib.parse as up; print(up.quote_plus(sys.argv[1]))"'
880-    alias urldecode='python3 -c "import sys, urllib.parse as up; print(up.unquote_plus(sys.argv[1]))"'
881+    alias urlencode='python3 -c "import sys; del sys.path[0]; import urllib.parse as up; print(up.quote_plus(sys.argv[1]))"'
882+    alias urldecode='python3 -c "import sys; del sys.path[0]; import urllib.parse as up; print(up.unquote_plus(sys.argv[1]))"'
883 elif [[ $(whence python2) != "" && ( "x$URLTOOLS_METHOD" = "x" || "x$URLTOOLS_METHOD" = "xpython" ) ]]; then
884-    alias urlencode='python2 -c "import sys, urllib as ul; print ul.quote_plus(sys.argv[1])"'
885-    alias urldecode='python2 -c "import sys, urllib as ul; print ul.unquote_plus(sys.argv[1])"'
886+    alias urlencode='python2 -c "import sys; del sys.path[0]; import urllib as ul; print ul.quote_plus(sys.argv[1])"'
887+    alias urldecode='python2 -c "import sys; del sys.path[0]; import urllib as ul; print ul.unquote_plus(sys.argv[1])"'
888 elif [[ $(whence xxd) != "" && ( "x$URLTOOLS_METHOD" = "x" || "x$URLTOOLS_METHOD" = "xshell" ) ]]; then
889     function urlencode() {echo $@ | tr -d "\n" | xxd -plain | sed "s/\(..\)/%\1/g"}
890     function urldecode() {printf $(echo -n $@ | sed 's/\\/\\\\/g;s/\(%\)\([0-9a-fA-F][0-9a-fA-F]\)/\\x\2/g')"\n"}
891diff --git a/plugins/virtualenvwrapper/virtualenvwrapper.plugin.zsh b/plugins/virtualenvwrapper/virtualenvwrapper.plugin.zsh
892index e27c6bb76bda1b012a14a3fdcfda30e7a3ef89a7..2a4b43189518cc55593cf4e787f5d0f9feeb92e4 100644
893--- a/plugins/virtualenvwrapper/virtualenvwrapper.plugin.zsh
894+++ b/plugins/virtualenvwrapper/virtualenvwrapper.plugin.zsh
895@@ -96,7 +96,6 @@ if [[ ! $DISABLE_VENV_CD -eq 1 ]]; then
896 
897   # Append workon_cwd to the chpwd_functions array, so it will be called on cd
898   # http://zsh.sourceforge.net/Doc/Release/Functions.html
899-  if ! (( $chpwd_functions[(I)workon_cwd] )); then
900-    chpwd_functions+=(workon_cwd)
901-  fi
902+  autoload -U add-zsh-hook
903+  add-zsh-hook chpwd workon_cwd
904 fi
905diff --git a/plugins/wd/README.md b/plugins/wd/README.md
906index b1deeffd512add4ce1c1024eb6ad4fdf56a8e9d5..91d5d0ae79c15bd539b2f6071ec8fd8b49d7ce66 100644
907--- a/plugins/wd/README.md
908+++ b/plugins/wd/README.md
909@@ -13,7 +13,7 @@ wd
910 
911 ### oh-my-zsh
912 
913-`wd` comes bundled with [oh-my-zshell](https://github.com/robbyrussell/oh-my-zsh)!
914+`wd` comes bundled with [oh-my-zshell](https://github.com/ohmyzsh/ohmyzsh)!
915 
916 Just add the plugin in your `~/.zshrc` file:
917 
918@@ -53,7 +53,7 @@ Run either in terminal:
919 
920 #### Completion
921 
922diff --git a/templates/zshrc.zsh-template b/templates/zshrc.zsh-template
923index 3cc5ad46c75cfd0cbdce394ea5acf0736e262a2f..d16713ccb2e8794d42fcbd66804e930ff2b94c13 100644
924--- a/templates/zshrc.zsh-template
925+++ b/templates/zshrc.zsh-template
926@@ -7,7 +7,7 @@ export ZSH=$HOME/.oh-my-zsh
927 # Set name of the theme to load --- if set to "random", it will
928 # load a random theme each time oh-my-zsh is loaded, in which case,
929 # to know which specific one was loaded, run: echo $RANDOM_THEME
930-# See https://github.com/robbyrussell/oh-my-zsh/wiki/Themes
931+# See https://github.com/ohmyzsh/ohmyzsh/wiki/Themes
932 ZSH_THEME="robbyrussell"
933 
934 # Set list of themes to pick from when loading at random
935diff --git a/themes/gallifrey.zsh-theme b/themes/gallifrey.zsh-theme
936index 7685470646a3d0082a188e27567b4fc301b37727..47b057fa369c14b982a4b68ff127c1ea084bab1f 100644
937--- a/themes/gallifrey.zsh-theme
938+++ b/themes/gallifrey.zsh-theme
939@@ -1,4 +1,4 @@
940-# ZSH Theme - Preview: https://github.com/robbyrussell/oh-my-zsh/wiki/Themes#gallifrey
941+# ZSH Theme - Preview: https://github.com/ohmyzsh/ohmyzsh/wiki/Themes#gallifrey
942 return_code="%(?..%{$fg[red]%}%? ↵%{$reset_color%})"
943 host_color="%(!.%{$fg[red]%}.%{$fg[green]%})"
944