From fe27e57de6af93bf8ebc0905c5c926c12e783ed9 Mon Sep 17 00:00:00 2001 From: brettm12345 Date: Sat, 15 Feb 2020 19:51:11 -0500 Subject: [PATCH 1/8] Added the `__p9k_readonly_zsh` variable --- internal/configure.zsh | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/internal/configure.zsh b/internal/configure.zsh index 8a21c63..da20d34 100644 --- a/internal/configure.zsh +++ b/internal/configure.zsh @@ -10,6 +10,8 @@ typeset -gr __p9k_zshrc=${${:-$__p9k_zd/.zshrc}:A} typeset -gr __p9k_zshrc_u=$__p9k_zd_u/.zshrc typeset -gr __p9k_root_dir_u=${${${(q)__p9k_root_dir}/#(#b)${(q)HOME}(|\/*)/'~'$match[1]}//\%/%%} +typeset -gr __p9k_readonly_zsh=$(test ! -e $__p9k_zshrc || test -w $__p9k_zshrc) + function _p9k_can_configure() { [[ $1 == '-q' ]] && local -i q=1 || local -i q=0 function $0_error() { @@ -43,10 +45,7 @@ function _p9k_can_configure() { $0_error "$__p9k_zshrc_u is not readable" return 1 } - [[ ! -e $__p9k_zshrc || -w $__p9k_zshrc ]] || { - $0_error "$__p9k_zshrc_u is not writable" - return 1 - } + (( LINES >= __p9k_wizard_lines && COLUMNS >= __p9k_wizard_columns )) || { $0_error "terminal size too small; must be at least $__p9k_wizard_columns x $__p9k_wizard_lines" return 1 From 9cd3bfdea144f395794231d223666eff17e91306 Mon Sep 17 00:00:00 2001 From: brettm12345 Date: Sat, 15 Feb 2020 19:51:31 -0500 Subject: [PATCH 2/8] Warn user if they try to modify their `.zshrc` --- internal/wizard.zsh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/internal/wizard.zsh b/internal/wizard.zsh index 8162b7c..9546037 100755 --- a/internal/wizard.zsh +++ b/internal/wizard.zsh @@ -1506,6 +1506,7 @@ function ask_zshrc_edit() { r) return 1;; n) return 0;; y) + test $__p9k_readonly_zsh echo "Zshrc is readonly ignoring..."; return write_zshrc=1 if [[ -n $zshrc_content ]]; then zshrc_backup="$(mktemp ${TMPDIR:-/tmp}/.zshrc.XXXXXXXXXX)" || quit -c @@ -1911,6 +1912,7 @@ if [[ -n $zshrc_backup ]]; then fi generate_config || return + change_zshrc || return print -rP "" From cb6351436a6c5026f4bc695485a56542d5323ce6 Mon Sep 17 00:00:00 2001 From: brettm12345 Date: Sat, 15 Feb 2020 20:06:08 -0500 Subject: [PATCH 3/8] Change variable name and fix warning --- internal/configure.zsh | 2 +- internal/wizard.zsh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/internal/configure.zsh b/internal/configure.zsh index da20d34..b07aa06 100644 --- a/internal/configure.zsh +++ b/internal/configure.zsh @@ -10,7 +10,7 @@ typeset -gr __p9k_zshrc=${${:-$__p9k_zd/.zshrc}:A} typeset -gr __p9k_zshrc_u=$__p9k_zd_u/.zshrc typeset -gr __p9k_root_dir_u=${${${(q)__p9k_root_dir}/#(#b)${(q)HOME}(|\/*)/'~'$match[1]}//\%/%%} -typeset -gr __p9k_readonly_zsh=$(test ! -e $__p9k_zshrc || test -w $__p9k_zshrc) +typeset -gr __p9k_writeable_zsh=$(test ! -e $__p9k_zshrc || test -w $__p9k_zshrc) function _p9k_can_configure() { [[ $1 == '-q' ]] && local -i q=1 || local -i q=0 diff --git a/internal/wizard.zsh b/internal/wizard.zsh index 9546037..38c9a73 100755 --- a/internal/wizard.zsh +++ b/internal/wizard.zsh @@ -1506,7 +1506,7 @@ function ask_zshrc_edit() { r) return 1;; n) return 0;; y) - test $__p9k_readonly_zsh echo "Zshrc is readonly ignoring..."; return + test $__p9k_writeable_zsh || echo "Zshrc is readonly ignoring..."; return write_zshrc=1 if [[ -n $zshrc_content ]]; then zshrc_backup="$(mktemp ${TMPDIR:-/tmp}/.zshrc.XXXXXXXXXX)" || quit -c From ae4650b40d2f12cb3759de8ac52c7fb427f02f85 Mon Sep 17 00:00:00 2001 From: brettm12345 Date: Sat, 15 Feb 2020 20:07:42 -0500 Subject: [PATCH 4/8] Use `[[ ]]` instead of `test` --- internal/wizard.zsh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/internal/wizard.zsh b/internal/wizard.zsh index 38c9a73..bcfdadc 100755 --- a/internal/wizard.zsh +++ b/internal/wizard.zsh @@ -1506,7 +1506,7 @@ function ask_zshrc_edit() { r) return 1;; n) return 0;; y) - test $__p9k_writeable_zsh || echo "Zshrc is readonly ignoring..."; return + [[ $__p9k_writeable_zsh ]] || echo "Zshrc is readonly ignoring..."; return write_zshrc=1 if [[ -n $zshrc_content ]]; then zshrc_backup="$(mktemp ${TMPDIR:-/tmp}/.zshrc.XXXXXXXXXX)" || quit -c From 9017e5815cb2b6a0c238d1386620199c49b458a0 Mon Sep 17 00:00:00 2001 From: brettm12345 Date: Sat, 15 Feb 2020 20:10:18 -0500 Subject: [PATCH 5/8] Remove the extra variable and inline the test --- internal/configure.zsh | 2 -- internal/wizard.zsh | 2 +- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/internal/configure.zsh b/internal/configure.zsh index b07aa06..39429f9 100644 --- a/internal/configure.zsh +++ b/internal/configure.zsh @@ -10,8 +10,6 @@ typeset -gr __p9k_zshrc=${${:-$__p9k_zd/.zshrc}:A} typeset -gr __p9k_zshrc_u=$__p9k_zd_u/.zshrc typeset -gr __p9k_root_dir_u=${${${(q)__p9k_root_dir}/#(#b)${(q)HOME}(|\/*)/'~'$match[1]}//\%/%%} -typeset -gr __p9k_writeable_zsh=$(test ! -e $__p9k_zshrc || test -w $__p9k_zshrc) - function _p9k_can_configure() { [[ $1 == '-q' ]] && local -i q=1 || local -i q=0 function $0_error() { diff --git a/internal/wizard.zsh b/internal/wizard.zsh index bcfdadc..f521e92 100755 --- a/internal/wizard.zsh +++ b/internal/wizard.zsh @@ -1506,7 +1506,7 @@ function ask_zshrc_edit() { r) return 1;; n) return 0;; y) - [[ $__p9k_writeable_zsh ]] || echo "Zshrc is readonly ignoring..."; return + [[ ! -e $__p9k_zshrc || -w $__p9k_zshrc ]] || echo "Zshrc is readonly ignoring..."; return write_zshrc=1 if [[ -n $zshrc_content ]]; then zshrc_backup="$(mktemp ${TMPDIR:-/tmp}/.zshrc.XXXXXXXXXX)" || quit -c From ea95789078bd15b2be10cdfadfa78577413219ba Mon Sep 17 00:00:00 2001 From: brettm12345 Date: Sat, 15 Feb 2020 20:12:08 -0500 Subject: [PATCH 6/8] Return an error --- internal/wizard.zsh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/internal/wizard.zsh b/internal/wizard.zsh index f521e92..3479253 100755 --- a/internal/wizard.zsh +++ b/internal/wizard.zsh @@ -1506,7 +1506,7 @@ function ask_zshrc_edit() { r) return 1;; n) return 0;; y) - [[ ! -e $__p9k_zshrc || -w $__p9k_zshrc ]] || echo "Zshrc is readonly ignoring..."; return + [[ ! -e $__p9k_zshrc || -w $__p9k_zshrc ]] || echo "Zshrc is readonly ignoring..."; return 1 write_zshrc=1 if [[ -n $zshrc_content ]]; then zshrc_backup="$(mktemp ${TMPDIR:-/tmp}/.zshrc.XXXXXXXXXX)" || quit -c From fdef2c08d4151b886a5ee6856f1e01fe649dccdb Mon Sep 17 00:00:00 2001 From: brettm12345 Date: Sat, 15 Feb 2020 20:34:28 -0500 Subject: [PATCH 7/8] Remove extra line --- internal/wizard.zsh | 1 - 1 file changed, 1 deletion(-) diff --git a/internal/wizard.zsh b/internal/wizard.zsh index 3479253..41cd5de 100755 --- a/internal/wizard.zsh +++ b/internal/wizard.zsh @@ -1912,7 +1912,6 @@ if [[ -n $zshrc_backup ]]; then fi generate_config || return - change_zshrc || return print -rP "" From cc796d9cda9afef87455fe35e9c984cf0e97e3f4 Mon Sep 17 00:00:00 2001 From: brettm12345 Date: Sat, 15 Feb 2020 22:56:23 -0500 Subject: [PATCH 8/8] Oop --- internal/wizard.zsh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/internal/wizard.zsh b/internal/wizard.zsh index 41cd5de..a479009 100755 --- a/internal/wizard.zsh +++ b/internal/wizard.zsh @@ -1506,7 +1506,7 @@ function ask_zshrc_edit() { r) return 1;; n) return 0;; y) - [[ ! -e $__p9k_zshrc || -w $__p9k_zshrc ]] || echo "Zshrc is readonly ignoring..."; return 1 + [[ ! -e $__p9k_zshrc || -w $__p9k_zshrc ]] || (echo "Zshrc is readonly ignoring..."; return 1) write_zshrc=1 if [[ -n $zshrc_content ]]; then zshrc_backup="$(mktemp ${TMPDIR:-/tmp}/.zshrc.XXXXXXXXXX)" || quit -c