From 67ced04c7f6abb61bd790e4db0b78b77a2cde227 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Kugland?= Date: Sat, 24 Apr 2021 02:45:29 -0300 Subject: [PATCH] completions for lilypond --- src/_lilypond | 124 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 124 insertions(+) create mode 100644 src/_lilypond diff --git a/src/_lilypond b/src/_lilypond new file mode 100644 index 0000000..e7a31e1 --- /dev/null +++ b/src/_lilypond @@ -0,0 +1,124 @@ +#compdef lilypond +# ------------------------------------------------------------------------------ +# Copyright (c) 2021 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. +# ------------------------------------------------------------------------------ +# Description +# ----------- +# +# Completion script for lilypond (https://lilypond.org/) +# +# ------------------------------------------------------------------------------ +# Authors +# ------- +# +# * Andre Kugland (https://github.com/kugland) +# +# ------------------------------------------------------------------------------ + +_arguments -S -A "-*" \ + '(- 1 *)-d help[show help for scheme options]' \ + '(- 1 *)'{-h,--help}'[show usage information]' \ + '(- 1 *)'{-v,--version}'[show version number]' \ + '(- 1 *)'{-w,--warranty}'[show warranty and copyright]' \ + '(-f --formats)'{-f,--formats=}'[select format(s) to generate]:format(s) to generate:_sequence compadd - pdf svg png ps eps' \ + '--pdf[generate .pdf files]' \ + '--svg[generate .svg files]' \ + '--png[generate .png files]' \ + '--ps[generate .ps files]' \ + '(-E --eps)'{-E,--eps}'[generate .eps files]' \ + '(-O --pspdfopt)'{-O,--pspdfopt=}'[set .ps/.pdf optimization]:.ps/.pdf optimization:(size TeX TeX-GS)' \ + '*'{-d,--define-default=}'[set scheme option]:scheme option:->scheme_opt' \ + '(-e --evaluate)'{-e,--evaluate=}'[evaluate scheme code]:scheme code' \ + '(-H --header)'{-H,--header=}'[dump header field to file]:field' \ + '*'{-I,--include=}'[append directory to include search path]:directory:_files -/' \ + '(-i --init)'{-i,--init=}'[use file as init file]:file:_files -g "*.(#i)ly(-.)"' \ + '(-j --jail)'{-j,--jail=}'[chroot to jail, become user:group and cd into dir]:jail arg (user,group,jail,dir)' \ + '(-o --output)'{-o,--output=}'[set output base filename or folder]:output base filename or folder:_files' \ + '(-l --loglevel -s --silent -V --verbose)'{-l,--loglevel=}'[set level of the log]:log level [INFO]:(NONE ERROR WARNING BASIC PROGRESS INFO DEBUG)' \ + '(-l --loglevel -s --silent -V --verbose)'{-s,--silent}'[no progress, only error messages (same as --loglevel=ERROR)]' \ + '(-l --loglevel -s --silent -V --verbose)'{-V,--verbose}'[be verbose (same as --loglevel=DEBUG)]' \ + '*:input file:_files -g "*.(#i)ly(-.)"' + +case $state in + scheme_opt) + _values 'scheme option' \ + 'anti-alias-factor[set anti-alias factor]:anti-alias-factor (1-8)' \ + 'aux-files[create .tex, .texi, .count files in the EPS backend]:aux-files:(\#t \#f)' \ + 'backend[select backend]:backend:(eps null ps scm svg)' \ + 'check-internal-types[check every property assignment for types]:check-internal-types:(\#t \#f)' \ + 'clip-systems[generate cut-out snippets of a score]:clip-systems:(\#t \#f)' \ + 'crop[match the size of the normal output to the typeset image]:crop:(\#t \#f)' \ + 'debug-gc-assert-parsed-dead[ensure that all references to parsed objects are dead]:debug-gc-assert-parsed-dead:(\#t \#f)' \ + 'debug-gc[dump memory debugging statistics]:debug-gc:(\#t \#f)' \ + 'debug-lexer[debug the flex lexer]:debug-lexer:(\#t \#f)' \ + 'debug-page-breaking-scoring[dump scores for many different page breaking configurations]:debug-page-breaking-scoring:(\#t \#f)' \ + 'debug-parser[debug the bison parser]:debug-parser:(\#t \#f)' \ + 'debug-property-callbacks[debug cyclic callback chains]:debug-property-callbacks:(\#t \#f)' \ + 'debug-skylines[debug skylines]:debug-skylines:(\#t \#f)' \ + 'delete-intermediate-files[delete unusable, intermediate PostScript files]:delete-intermediate-files:(\#t \#f)' \ + 'dump-signatures[dump output signatures of each system]:dump-signatures:(\#t \#f)' \ + 'embed-source-code[embed the source files inside the generated PDF document]:embed-source-code:(\#t \#f)' \ + 'eps-box-padding[pad left edge of the output EPS bounding box by given amount]:eps-box-padding (mm)' \ + 'font-export-dir[directory for exporting fonts as PostScript files]:font-export-dir:_files -/' \ + 'font-ps-resdir[build a subset of PostScript resource directory for embedding fonts]:font-ps-resdir' \ + 'gs-api[whether to use the Ghostscript API (read-only if not available)]:gs-api:(\#t \#f)' \ + 'gs-load-fonts[load fonts via Ghostscript]:gs-load-fonts:(\#t \#f)' \ + 'gs-load-lily-fonts[load only LilyPond fonts via Ghostscript]:gs-load-lily-fonts:(\#t \#f)' \ + 'gs-never-embed-fonts[make Ghostscript embed only TrueType fonts and no other font format]:gs-never-embed-fonts:(\#t \#f)' \ + 'gui[run LilyPond from a GUI and redirect stderr to a log file]:gui:(\#t \#f)' \ + 'help[show this help]:help:(\#t \#f)' \ + 'include-book-title-preview[include book titles in preview images]:include-book-title-preview:(\#t \#f)' \ + 'include-eps-fonts[include fonts in separate-system EPS files]:include-eps-fonts:(\#t \#f)' \ + 'include-settings[included file before the score is processed]:include-settings:_files -g "*.(#i)ly(-.)"' \ + 'job-count[process in parallel, using the given number of jobs]:job-count' \ + 'log-file[output log to file (.log will be appended)]:log-file' \ + 'max-markup-depth[maximum depth for the markup tree]:max-markup-depth' \ + 'midi-extension[set the default file extension for MIDI output]:midi-extension:(mid midi)' \ + 'music-font-encodings[use font encodings and the PostScript "show" operator with music fonts]:music-font-encodings:(\#t \#f)' \ + 'music-strings-to-paths[convert text strings to paths when glyphs belong to a music font]:music-strings-to-paths:(\#t \#f)' \ + 'outline-bookmarks[use bookmarks in table of contents metadata]:outline-bookmarks:(\#t \#f)' \ + 'paper-size[set default paper size]:paper-size:(\"a1\" \"a2\" \"a3\" \"a4\" \"a5\" \"a6\" \"b1\" \"b2\" \"b3\" \"b4\" \"b5\" \"b6\" \"c1\" \"c2\" \"c3\" \"c4\" \"c5\" \"c6\" \"f4\" \"government-legal\" \"government-letter\" \"imperial\" \"junior-legal\" \"ledger\" \"legal\" \"letter\" \"folio\" \"octavo\" \"quarto\" \"tabloid\")' \ + 'pixmap-format[set GhostScript'\''s output format for pixel images]:pixmap-format:(fpng jpeg jpegcmyk jpeggray png16m pngalpha pnggray pngmonod)' \ + 'png-height[image height for PNG output]:png-height (pixels)' \ + 'png-width[image width for PNG output]:png-width (pixels)' \ + 'point-and-click[add point & click links to PDF and SVG output]:point-and-click:(\#t \#f)' \ + 'preview[create preview images also]:preview:(\#t \#f)' \ + 'print-pages[print pages in the normal way]:print-pages:(\#t \#f)' \ + 'profile-property-accesses[keep statistics of get_property() calls]:profile-property-accesses:(\#t \#f)' \ + 'protected-scheme-parsing[continue when errors in inline Scheme are caught in the parser]:protected-scheme-parsing:(\#t \#f)' \ + 'read-file-list[specify file which contains a list of input files]:read-file-list:(\#t \#f)' \ + 'relative-includes[look for the included file relative to the current file]:relative-includes:(\#t \#f)' \ + 'resolution[set resolution for generating PNG pixmaps to given value]:resolution (dpi)' \ + 'safe[run in safer mode]:safe:(\#t \#f)' \ + 'separate-log-files[use separate log files for each input]:separate-log-files:(\#t \#f)' \ + 'show-available-fonts[list available font names]:show-available-fonts:(\#t \#f)' \ + 'strict-infinity-checking[force a crash on encountering Inf and NaN floating point exceptions]:strict-infinity-checking:(\#t \#f)' \ + 'strip-output-dir[don'\''t use directories from input files while constructing output file names]:strip-output-dir:(\#t \#f)' \ + 'strokeadjust[set the PostScript '\''strokeadjust'\'' operator explicitly]:strokeadjust:(\#t \#f)' \ + 'svg-woff[use woff font files in SVG backend]:svg-woff:(\#t \#f)' \ + 'warning-as-error[change all warning and programming_error messages into errors]:warning-as-error:(\#t \#f)' + ;; +esac