From d06d3f75a5f74ce64801360cfd56c2b432f4df98 Mon Sep 17 00:00:00 2001 From: Shivamgupta1234 <31826133+Shivamgupta1234@users.noreply.github.com> Date: Fri, 31 May 2019 08:14:42 +0530 Subject: [PATCH 1/4] Add completion for nano editor! --- src/_nano | 99 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 99 insertions(+) create mode 100644 src/_nano diff --git a/src/_nano b/src/_nano new file mode 100644 index 0000000..45e2f54 --- /dev/null +++ b/src/_nano @@ -0,0 +1,99 @@ +#compdef nano +# ---------------------------------------------------------- +# Copyright (c) 2019 Github zsh-users - http://github.com/zsh-users +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# * Neither the name of the zsh-users nor the +# names of its contributors may be used to endorse or promote products +# derived from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +# DISCLAIMED. IN NO EVENT SHALL ZSH-USERS BE LIABLE FOR ANY +# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# ------------------------------------------------------------------------------ +# Author +# ------ +# Shivam Gupta +# ------------------------------------------------- +# Description +# ------------ +# Completion function for nano editor(https://www.nano-editor.org/)! +# ----------------------------------------------------------- + +(( $+functions[_nano_files] )) || +_nano_files () { + case $PREFIX in + (*) _files $* ;; + esac +} +_nano() { +integer ret=1 +local curcontext="$curcontext" state line +typeset -A opt_args +_arguments -s -C \ + '(-)'{-A,--smarthome}'[Enable smart home key]'\ + {-B,--backup}'[Save backups of existing files]'\ + {-C+,--backupdir=}'[Directory for saving unique backup files]:dir:_dirs'\ + {-D,--boldtext}'[Use bold instead of reverse video text]'\ + {-E,--tabstospaces}'[Convert typed tabs to spaces]'\ + {-F,--multibuffer}'[Read a file into a new buffer by default]'\ + {-G,--locking}'[Use vim-style lock files]'\ + {-H,--historylog}'[Log & read search replace string history]'\ + {-I,--ignorercfiles}'[Do not look at nanorc files]'\ + {-J+,--guidestripe=}'[Show a guiding bar at this column]:number'\ + {-K,--rawsequences}'[Fix numeric keypad key confusion problem]'\ + {-L,--nonewlines}'[Do not add an automatic newline]'\ + {-M,--trimblanks}'[Trim tail spaces when hard-wrapping]'\ + {-N,--noconvert}'[Do not convert files from DOS/Mac format]'\ + {-P,--positionlog}'[Log & read location of cursor position]'\ + {-Q+,--quotestr=}'[Regular expression to match quoting]:str'\ + {-R,--restricted}'[Restricted mode]'\ + {-T+,--tabsize=}'[Set width of a tab to cols columns]:init'\ + {-U,--quickblank}'[Do quick statusbar blanking]'\ + '(- *)'{-V,--version}'[Print version information and exit]'\ + {-W,--wordbounds}'[Detect word boundaries more accurately]'\ + {-X+,--wordchars=}'[Which other characters are word parts]:str'\ + {-Y+,--syntax=}'[Syntax definition to use for coloring]'\ + {-Z,--zap}'[Let Bsp and Del erase a marked region]'\ + {-a,--atblanks}'[When soft-wrapping, do it at whitespace]'\ + {-b,--breaklonglines}'[Automatically hard-wrap overlong lines]'\ + {-c,--constantshow}'[Constantly show cursor position]'\ + {-d,--rebinddelete}'[Fix Backspace/Delete confusion problem]'\ + {-e,--emptyline}'[Keep the line below the title bar empty]'\ + {-g,--showcursor}'[Show cursor in file browser & help text]'\ + '(- *)'{-h,--help}'[Show help text and exit]'\ + {-i,--autoindent}'[Automatically indent new lines]'\ + {-j,--jumpyscrolling}'[Scroll per half-screen, not per line]'\ + {-k,--cutfromcursor}'[Cut from cursor to end of line]'\ + {-l,--linenumbers}'[Show line numbers in front of the text]'\ + {-m,--mouse}'[Enable the use of the mouse]'\ + {-n,--noread}'[Do not read the file (only write it)]'\ + {-o+,--operatingdir=}'[Set operating directory]:dir:_dirs'\ + {-p,--preserve}'[Preserve XON (^Q) and XOFF (^S) keys]'\ + {-r+,--fill=}'[Set width for hard-wrap and justify]:init'\ + {-s+,--speller=}'[Enable alternate speller]:prog'\ + {-t,--tempfile}'[Auto save on exit, do not prompt]'\ + {-w,--nowrap}'[Do not hard-wrap long lines default]'\ + {-x,--nohelp}'[Do not show the two help lines]'\ + {-y,--afterends}'[Make Ctrl+Right stop at word ends]'\ + {-z,--suspend}'[Enable suspension]'\ + {-$,--softwrap}'[Enable soft line wrapping]'\ + '(-t -q)*:file:_nano_files' +_arguments $arguments && ret=0 +return ret +} +_nano "$@" From 46666e519a57f7d34a809f3480cd18d4a8b79dee Mon Sep 17 00:00:00 2001 From: Shivamgupta1234 <31826133+Shivamgupta1234@users.noreply.github.com> Date: Fri, 31 May 2019 08:16:15 +0530 Subject: [PATCH 2/4] Add completion for nano editor! --- src/_nano | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/_nano b/src/_nano index 45e2f54..c488eee 100644 --- a/src/_nano +++ b/src/_nano @@ -28,11 +28,11 @@ # Author # ------ # Shivam Gupta -# ------------------------------------------------- +# # Description # ------------ # Completion function for nano editor(https://www.nano-editor.org/)! -# ----------------------------------------------------------- +# (( $+functions[_nano_files] )) || _nano_files () { From 3cf94eef3271b02ec6a4b4a04bfe75042d15a877 Mon Sep 17 00:00:00 2001 From: Shivamgupta1234 <31826133+Shivamgupta1234@users.noreply.github.com> Date: Sat, 1 Jun 2019 07:13:44 +0530 Subject: [PATCH 3/4] minor suggested changes 1.remove license header, 2.remove top level nano() function, 3.remove _nano_file_ function. --- src/_nano | 47 ----------------------------------------------- 1 file changed, 47 deletions(-) diff --git a/src/_nano b/src/_nano index c488eee..b9cccbf 100644 --- a/src/_nano +++ b/src/_nano @@ -1,47 +1,4 @@ #compdef nano -# ---------------------------------------------------------- -# Copyright (c) 2019 Github zsh-users - http://github.com/zsh-users -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# * Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# * Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# * Neither the name of the zsh-users nor the -# names of its contributors may be used to endorse or promote products -# derived from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND -# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -# DISCLAIMED. IN NO EVENT SHALL ZSH-USERS BE LIABLE FOR ANY -# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -# ------------------------------------------------------------------------------ -# Author -# ------ -# Shivam Gupta -# -# Description -# ------------ -# Completion function for nano editor(https://www.nano-editor.org/)! -# - -(( $+functions[_nano_files] )) || -_nano_files () { - case $PREFIX in - (*) _files $* ;; - esac -} -_nano() { -integer ret=1 local curcontext="$curcontext" state line typeset -A opt_args _arguments -s -C \ @@ -93,7 +50,3 @@ _arguments -s -C \ {-z,--suspend}'[Enable suspension]'\ {-$,--softwrap}'[Enable soft line wrapping]'\ '(-t -q)*:file:_nano_files' -_arguments $arguments && ret=0 -return ret -} -_nano "$@" From ae17c53a4b8f300ce556cf987b08aa18efc0a2f8 Mon Sep 17 00:00:00 2001 From: Shivamgupta1234 <31826133+Shivamgupta1234@users.noreply.github.com> Date: Sat, 1 Jun 2019 09:29:00 +0530 Subject: [PATCH 4/4] Update _nano --- src/_nano | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/_nano b/src/_nano index b9cccbf..db62fe8 100644 --- a/src/_nano +++ b/src/_nano @@ -49,4 +49,4 @@ _arguments -s -C \ {-y,--afterends}'[Make Ctrl+Right stop at word ends]'\ {-z,--suspend}'[Enable suspension]'\ {-$,--softwrap}'[Enable soft line wrapping]'\ - '(-t -q)*:file:_nano_files' + '(-t -q)*:file:_files'