Skip to content
Open
Changes from 1 commit
Commits
Show all changes
47 commits
Select commit Hold shift + click to select a range
1d5e938
Auto TAB completion for bash using alias for occ.
RonaldBarnes Nov 27, 2022
18f445d
Updated copyright per Contribution guidelines.
RonaldBarnes Nov 27, 2022
102052e
Resolved requested changes to PR.
RonaldBarnes Nov 28, 2022
8e87648
Resolved one more comment deletion, per PR change request(s).
RonaldBarnes Nov 28, 2022
56dfa43
Changed getHttpdUser to searchHttpdUser through-out, per PR change re…
RonaldBarnes Nov 28, 2022
8de4ac1
Revised per pull request comment https://github.com/nextcloud/server/…
RonaldBarnes Dec 1, 2022
8e99a60
Reset COMP_WORDBREAKS to original value when finished.
RonaldBarnes Dec 1, 2022
2d091e2
Add quotes around COMP_WORDBREAKS, else unexpected behaviour.
RonaldBarnes Dec 1, 2022
2aa4940
Fixed adding '-vv' option to array: remnant overlooked in commit a86a…
RonaldBarnes Dec 2, 2022
2751eaa
Added more web server user names.
RonaldBarnes Dec 2, 2022
8ea5a98
Add user_id to completions.
RonaldBarnes Dec 5, 2022
7825a8f
Web server lighthttp user name is fixed to lighttpd.
RonaldBarnes Dec 5, 2022
aed5edd
Added Usage: and remove unused debugging.
RonaldBarnes Dec 5, 2022
c3a8470
Added user_id, app, lang, and file system completions.
RonaldBarnes Dec 5, 2022
d9ae83d
Changed all functions to have '_occ_' prefix.
RonaldBarnes Dec 5, 2022
3955590
Specify type of entity being 'unset'.
RonaldBarnes Dec 6, 2022
e8e8e78
Changed ownership test to file config/config.php, not ./occ
RonaldBarnes Dec 6, 2022
7eaeb9d
Added colour to filename when ownership mis-match.
RonaldBarnes Dec 6, 2022
0d650f7
If no ~/.bash_aliases, then offer to create /etc/profile.d/occ instead.
RonaldBarnes Dec 6, 2022
6ddaf0f
Offer to add alias to /etc/bash.bashrc as well as ~/.bash_aliases
RonaldBarnes Dec 6, 2022
efa1dc3
Option to add completion script to ~/.local/share/bash-completion/com…
RonaldBarnes Dec 7, 2022
3fa70e7
If no ~/.bash_aliases, offer to append to ~/.bashrc instead of /etc/b…
RonaldBarnes Dec 7, 2022
b23f709
Updated documentation / usage.
RonaldBarnes Dec 7, 2022
b9a4081
Added more web server user names, per https://docs.nextcloud.com/serv…
RonaldBarnes Dec 7, 2022
161c000
Added @author, reformatted @copyright.
RonaldBarnes Dec 7, 2022
f720c72
Refactored: removed all global persistence options, stores alias to ~…
RonaldBarnes Dec 10, 2022
f6bbefa
Changed completion script destination directory to /etc/bash_completi…
RonaldBarnes Dec 10, 2022
a3c98c0
Renamed complete.occ to occ.bash
RonaldBarnes Dec 10, 2022
23fb524
Typo in usage section.
RonaldBarnes Dec 11, 2022
c78dc3c
Restored chown and chmod on /etc/bash_completion.d/occ.bash
RonaldBarnes Dec 11, 2022
0faf097
NextCloud to Nextcloud, camel case to snake case: phpFound to php_found
RonaldBarnes Dec 11, 2022
7eb851a
Switched back to ~/.local/share/bash-completion/completions/ as the t…
RonaldBarnes Dec 13, 2022
191e1d9
Cleaned up TRAPs; works better with 'read' aka 'readline'.
RonaldBarnes Dec 13, 2022
4b302d1
Added support for 'occ config:...': handles 'app' and 'system', 'get'…
RonaldBarnes Dec 13, 2022
653ded6
Option to regenerate alias if existing one found (helpful if multiple…
RonaldBarnes Dec 25, 2022
cfb1720
Consistent use of double vs single quotes.
RonaldBarnes Dec 27, 2022
525f737
Changed target for occ.bash to user's ~/.local/share/bash-completion/…
RonaldBarnes Jan 4, 2023
f53b3d6
Allow occ.bash to operate from multiple aliases for admins with multi…
RonaldBarnes Jan 19, 2023
8be0fbc
Check for uid as well as user_id (dav:list-calendars: uid; files-scan…
RonaldBarnes Jan 19, 2023
0074f5b
Removed line of debug code.
RonaldBarnes Jan 19, 2023
a8248da
Changed mode to non-executable: must be sourced for alias to persist …
RonaldBarnes Jan 29, 2023
295dfc7
Renamed script to more descriptive name and updated internal usage.
RonaldBarnes Jan 29, 2023
06761f4
Handle 'dav:move-calendar name sourceuid destinationuid'.
RonaldBarnes Feb 3, 2023
0f4dcb1
Added two script files to build/files-checker.php
RonaldBarnes Feb 14, 2023
5b6b3c3
Changed references to 'bash-add-alias.sh' to 'bash-tab-completion-occ…
RonaldBarnes Feb 14, 2023
a9eba83
Indentation was off; spaces not tabs.
RonaldBarnes Feb 15, 2023
aa0962d
Updated documentation for multi-host, multi-alias environments.
RonaldBarnes Mar 1, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Cleaned up TRAPs; works better with 'read' aka 'readline'.
Signed-off-by: Ronald Barnes <[email protected]>
  • Loading branch information
RonaldBarnes authored and nickvergessen committed Mar 1, 2023
commit 191e1d94faeddfe210367da383571d5aaa17cba4
32 changes: 13 additions & 19 deletions bash-add-alias.sh
Original file line number Diff line number Diff line change
Expand Up @@ -76,18 +76,19 @@ function cleanup_vars()
trap - SIGKILL
trap - EXIT
trap - QUIT
## If param was passed, i.e. "ALL", cleanup EVERYTHING, we're done:
if [[ ${#@} -ge 1 ]]; then
trap - RETURN
unset -f cleanup_vars
## Reset unbound var checking to original state:
if [[ ! _occ_orig_set_u -eq 0 ]] ; then
set +u
fi
unset -v _occ_orig_set_u
unset -f _occ_define_colours
unset -f _occ_bash_aliases
unset -f cleanup_vars
## Reset unbound var checking to original state:
if [[ ! _occ_orig_set_u -eq 0 ]] ; then
set +u
fi
unset -v _occ_orig_set_u
unset -f _occ_define_colours
unset -f _occ_bash_aliases

## End this program:
kill -s SIGINT $$
## End this program, second time if CTRL+C pressed in `read` / `readline`:
kill -s SIGINT $$
}


Expand Down Expand Up @@ -146,7 +147,7 @@ function _occ_bash_aliases()


## Capture exit conditions to clean up all variables:
trap 'cleanup_vars ALL' RETURN EXIT QUIT SIGINT SIGKILL SIGTERM
trap 'cleanup_vars ALL' EXIT QUIT SIGINT SIGKILL SIGTERM


## Handy red / yellow / green / default colour defs:
Expand Down Expand Up @@ -234,12 +235,8 @@ if [[ -f ${_occ_nc_path}/${_occ_completion_script} ]] ; then
else
echo "Y"
echo -n "Running ${_occ_nc_path}/${_occ_completion_script} ... "
## Do not run cleanup_vars() when ${_occ_completion_script} returns:
trap - RETURN
source ${_occ_nc_path}/${_occ_completion_script}
_occ_status=$?
## Reset trap:
trap 'cleanup_vars ALL' RETURN
if [[ ${_occ_status} -eq 0 ]] ; then
echo -e "${green}success${default_colour}."
else
Expand Down Expand Up @@ -290,9 +287,6 @@ fi



## Cannot remove trap on RETURN inside a return trap catch, so do it here:
trap - RETURN
## Now clean all vars and remove all traps
cleanup_vars ALL
trap -p RETURN
echo "DONE."