Add completion for nano editor!
This commit is contained in:
parent
cf565254e2
commit
d06d3f75a5
|
@ -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 <shivam98.tkg@gmail.com>
|
||||||
|
# -------------------------------------------------
|
||||||
|
# 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 "$@"
|
Loading…
Reference in New Issue