Diff
1diff --git a/plugins/urltools/urltools.plugin.zsh b/plugins/urltools/urltools.plugin.zsh
2index 22327334d369677644d599bb950522d88dd51fa0..fa337acbaa028e2e1f0bc701ce4f97b4bf022f2b 100644
3--- a/plugins/urltools/urltools.plugin.zsh
4+++ b/plugins/urltools/urltools.plugin.zsh
5@@ -11,9 +11,12 @@ fi
6 if [[ $(whence node) != "" && ( "x$URLTOOLS_METHOD" = "x" || "x$URLTOOLS_METHOD" = "xnode" ) ]]; then
7 alias urlencode='node -e "console.log(encodeURIComponent(process.argv[1]))"'
8 alias urldecode='node -e "console.log(decodeURIComponent(process.argv[1]))"'
9-elif [[ $(whence python) != "" && ( "x$URLTOOLS_METHOD" = "x" || "x$URLTOOLS_METHOD" = "xpython" ) ]]; then
10- alias urlencode='python -c "import sys, urllib as ul; print ul.quote_plus(sys.argv[1])"'
11- alias urldecode='python -c "import sys, urllib as ul; print ul.unquote_plus(sys.argv[1])"'
12+elif [[ $(whence python3) != "" && ( "x$URLTOOLS_METHOD" = "x" || "x$URLTOOLS_METHOD" = "xpython" ) ]]; then
13+ alias urlencode='python3 -c "import sys, urllib.parse as up; print(up.quote_plus(sys.argv[1]))"'
14+ alias urldecode='python3 -c "import sys, urllib.parse as up; print(up.unquote_plus(sys.argv[1]))"'
15+elif [[ $(whence python2) != "" && ( "x$URLTOOLS_METHOD" = "x" || "x$URLTOOLS_METHOD" = "xpython" ) ]]; then
16+ alias urlencode='python2 -c "import sys, urllib as ul; print ul.quote_plus(sys.argv[1])"'
17+ alias urldecode='python2 -c "import sys, urllib as ul; print ul.unquote_plus(sys.argv[1])"'
18 elif [[ $(whence xxd) != "" && ( "x$URLTOOLS_METHOD" = "x" || "x$URLTOOLS_METHOD" = "xshell" ) ]]; then
19 function urlencode() {echo $@ | tr -d "\n" | xxd -plain | sed "s/\(..\)/%\1/g"}
20 function urldecode() {printf $(echo -n $@ | sed 's/\\/\\\\/g;s/\(%\)\([0-9a-fA-F][0-9a-fA-F]\)/\\x\2/g')"\n"}