bump(main/zsh): 5.9.1#30006
Conversation
|
This is gonna need more testing. termux-packages/packages/zsh/build.sh Line 17 in 00cdd17 nor the previous hunk in configure.ac.patch,termux-packages/packages/zsh/configure.ac.patch Lines 1 to 13 in f2a1bd1 actually worked to disable the version specific site directory at $TERMUX_PREFIX/usr/share/zsh/$ZSH_VERSION/functions.
What we want is a structure similar to what's present in e.g. Arch Linux. /usr/share/zsh//
├── 5.9/
│ └── help/
├── functions/
├── scripts/
└── site-functions/With only the data/data/com.termux/files/usr/share/zsh/
└── 5.9.1/
├── functions/
├── help/
└── scripts/(This is also the case for 5.9, at least as far back as 5.9-7, I need to do some earlier builds to confirm.) |
|
Okay, what was missing here was; --enable-function-subdirs
--enable-fndir=$TERMUX_PREFIX/share/zsh/functions
--enable-scriptdir=$TERMUX_PREFIX/share/zsh/scriptsThat way The |
|
/data/data/com.termux/files/usr/share/zsh/5.9/functionsAfter enabling it (with newlines inserted between entries for separation) /data/data/com.termux/files/usr/share/zsh/site-functions
/data/data/com.termux/files/usr/share/zsh/functions/Calendar
/data/data/com.termux/files/usr/share/zsh/functions/Chpwd
/data/data/com.termux/files/usr/share/zsh/functions/Completion
/data/data/com.termux/files/usr/share/zsh/functions/Completion/AIX
/data/data/com.termux/files/usr/share/zsh/functions/Completion/Base
/data/data/com.termux/files/usr/share/zsh/functions/Completion/BSD
/data/data/com.termux/files/usr/share/zsh/functions/Completion/Cygwin
/data/data/com.termux/files/usr/share/zsh/functions/Completion/Darwin
/data/data/com.termux/files/usr/share/zsh/functions/Completion/Debian
/data/data/com.termux/files/usr/share/zsh/functions/Completion/Linux
/data/data/com.termux/files/usr/share/zsh/functions/Completion/Mandriva
/data/data/com.termux/files/usr/share/zsh/functions/Completion/openSUSE
/data/data/com.termux/files/usr/share/zsh/functions/Completion/Redhat
/data/data/com.termux/files/usr/share/zsh/functions/Completion/Solaris
/data/data/com.termux/files/usr/share/zsh/functions/Completion/Unix
/data/data/com.termux/files/usr/share/zsh/functions/Completion/X
/data/data/com.termux/files/usr/share/zsh/functions/Completion/Zsh
/data/data/com.termux/files/usr/share/zsh/functions/Exceptions
/data/data/com.termux/files/usr/share/zsh/functions/Math
/data/data/com.termux/files/usr/share/zsh/functions/MIME
/data/data/com.termux/files/usr/share/zsh/functions/Misc
/data/data/com.termux/files/usr/share/zsh/functions/Newuser
/data/data/com.termux/files/usr/share/zsh/functions/Prompts
/data/data/com.termux/files/usr/share/zsh/functions/VCS_Info
/data/data/com.termux/files/usr/share/zsh/functions/VCS_Info/Backends
/data/data/com.termux/files/usr/share/zsh/functions/ZleI don't know if keeping that distinction is all that useful. /data/data/com.termux/files/usr/share/zsh/site-functions
/data/data/com.termux/files/usr/share/zsh/functionsWhich still covers the I don't have a preference here one way or the other. |
|
Eh in case I buried the lead on this in the above comment. |
Also port the ability to pass PS1 to the shell on invocation from bash. And fix some missing helper functions for the Debian completions.
| # This becomes $TERMUX_PREFIX/share/zsh/functions/Completion/Unix/ after compilation. | ||
| # Command and Type are not differentiated in the final directory structure. | ||
| local compdef | ||
| local -a used_on_termux=( | ||
| 'Debian/Command/_apt' # packages/apt | ||
| 'Debian/Command/_apt-file' # packages/apt-file | ||
| 'Debian/Command/_apt-show-versions' # packages/apt-show-versions | ||
| 'Debian/Command/_dpkg' # packages/dpkg | ||
| 'Debian/Type/_deb_files' # Used by _apt | ||
| 'Debian/Type/_deb_packages' # Used by _apt, _apt-file, _apt-show-versions, _dpkg | ||
| 'Debian/Command/_update-alternatives' # packages/dpkg | ||
| 'Redhat/Command/_rpm' # packages/rpm | ||
| ) |
There was a problem hiding this comment.
This is actually pretty important and I should have caught this earlier.
I missed two of the needed files with library functions for the _apt completions and related.
I only noticed the problem after testing the completions with no ~/.zshrc since I apparently had another copy of them in my ${fpath[@]}.
This PR updates Zsh to version 5.9.1
The PCRE2 patch is now part of upstream.
A couple other patches needed regenerating.
And I've renamed a few other patches for consistency.
I'm currently working on another commit to enable completions by default,
similarly to what we do for Bash.