# Author : Sergei Trofimovich <slyfox@inbox.ru>
# Language : shell
# Mode : ebuild
#
# sh.syntax is taken as base.
#
# Note : keep in sync default and " " contexts
#
# 'sh.syntax' header:
# # Since I regulary update ths file, please send any comments
# # to: Michelle Konzack <linux4michelle@freenet.de>
# # Last Update: Thu, 01 Jun 2006 22:10:07 +0200
context default
#.ebuild specific commands/glo vars
# TODO: 1. split keywords by .eclass'es
# 2. grep all exports and place here
keyword whole AT_M4DIR color17
keyword whole BDEPEND color17
keyword whole CABAL_FEATURES color17
keyword whole CHECKREQS_DISK_BUILD color17
keyword whole CHECKREQS_DISK_USR color17
keyword whole CHECKREQS_DISK_VAR color17
keyword whole CHECKREQS_MEMORY color17
keyword whole CONFIG_CHECK color17
keyword whole DEPEND color17
keyword whole DESCRIPTION color17
keyword whole EAPI color17
keyword whole ECONF_SOURCE color17
keyword whole EDARCS_REPOSITORY color17
keyword whole EDARCS_GET_CMD color17
keyword whole EDARCS_LOCALREPO color17
keyword whole EGIT_BRANCH color17
keyword whole EGIT_PROJECT color17
keyword whole EGIT_REPO_URI color17
keyword whole EGIT_SUBMODULES color17
keyword whole EGIT_TREE color17
keyword whole ESVN_REPO_URI color17
keyword whole EXPORT_FUNCTIONS color17
keyword whole HOMEPAGE color17
keyword whole IUSE color17
keyword whole KEYWORDS color17
keyword whole LICENSE color17
keyword whole PATCHES color17
keyword whole PDEPEND color17
keyword whole PROVIDE color17
keyword whole PYTHON_COMPAT color17
keyword whole QA_AM_MAINTAINER_MODE color17
keyword whole QA_CONFIGURE_OPTIONS color17
keyword whole QA_DESKTOP_FILE color17
keyword whole QA_DT_NEEDED color17
keyword whole QA_EXECSTACK color17
keyword whole QA_FLAGS_IGNORED color17
keyword whole QA_MULTILIB_PATHS color17
keyword whole QA_PREBUILT color17
keyword whole QA_PRESTRIPPED color17
keyword whole QA_SONAME color17
keyword whole QA_TEXTRELS color17
keyword whole QA_WX_LOAD color17
keyword whole RDEPEND color17
keyword whole REQUIRED_USE color17
keyword whole RESTRICT color17
keyword whole S color17
keyword whole SITEFILE color17
keyword whole SLOT color17
keyword whole SRC_URI color17
keyword whole WANT_AUTOCONF color17
keyword whole WANT_AUTOMAKE color17
keyword DOCS color17
keyword HTML_DOCS color17
keyword LINGUAS color17
keyword whole addpredict color19
keyword whole best_version color19
keyword whole built_with_use color19
keyword whole check_KV color19
keyword whole default color19
keyword whole die color19
keyword whole diropts color19
keyword whole dobin color19
keyword whole docinto color19
keyword whole docompress color19
keyword whole doconfd color19
keyword whole dodir color19
keyword whole dodoc color19
keyword whole doenvd color19
keyword whole doexe color19
keyword whole dohard color19
keyword whole dohtml color19
keyword whole doinfo color19
keyword whole doinitd color19
keyword whole doins color19
keyword whole dolib color19
keyword whole dolib.a color19
keyword whole dolib.so color19
keyword whole doman color19
keyword whole dosbin color19
keyword whole dosed color19
keyword whole dosym color19
keyword whole eapply color19
keyword whole eapply_user color19
keyword whole ebegin color19
keyword whole econf color19
keyword whole eend color19
keyword whole eerror color19
keyword whole einfo color19
keyword whole einstall color19
keyword whole einstalldocs color19
keyword whole elog color19
keyword whole emake color19
keyword whole epatch color19
keyword whole epatch_user color19
keyword whole ewarn color19
keyword whole exeinto color19
keyword whole exeopts color19
keyword whole enewgroup color19
keyword whole enewuser color19
keyword whole fowners color19
keyword whole fperms color19
keyword whole has color19
keyword whole hasq color19
keyword whole has_version color19
keyword whole insinto color19
keyword whole insopts color19
keyword whole intltoolize color19
keyword whole into color19
keyword whole keepdir color19
keyword whole libopts color19
keyword whole newbin color19
keyword whole newconfd color19
keyword whole newdoc color19
keyword whole newexe color19
keyword whole newins color19
keyword whole newman color19
keyword whole newsbin color19
keyword whole newinitd color19
keyword whole pax-mark color19
keyword whole prepall color19
keyword whole prepalldocs color19
keyword whole prepallinfo color19
keyword whole prepallman color19
keyword whole unpack color19
keyword whole use color19
keyword whole usev color19
keyword whole usex color19
keyword whole use_enable color19
keyword whole use_with color19
#autotools
keyword whole _elibtoolize color19
keyword whole eaclocal color19
keyword whole eautoconf color19
keyword whole eautopoint color19
keyword whole eautoreconf color19
keyword whole eautomake color19
#bashcomp
keyword whole bashcomp_alias color19
keyword whole dobashcomp color19
keyword whole newbashcomp color19
#cvs
keyword whole cvs_src_unpack color19
#darcs
keyword whole darcs_src_unpack color19
#default
keyword whole default_src_unpack color19
#desktop
keyword whole doicon color19
keyword whole domenu color19
keyword whole make_desktop_entry color19
keyword whole make_session_desktop color19
keyword whole newicon color19
keyword whole newmenu color19
#elisp-common
keyword whole elisp-compile color19
keyword whole elisp-install color19
keyword whole elisp-site-file-install color19
keyword whole elisp-site-regen color19
#flag-o-matic
keyword whole append-cflags color19
keyword whole append-cxxflags color19
keyword whole append-flags color19
keyword whole append-ldflags color19
keyword whole append-lfs-flags color19
keyword whole filter-flags color19
keyword whole replace-flags color19
keyword whole strip-flags color19
keyword whole strip-unsupported-flags color19
#git-r3
keyword whole git-r3_checkout color19
keyword whole git-r3_fetch color19
keyword whole git-r3_src_unpack color19
#java-ant-2
keyword whole EANT_BUILD_TARGET color19
#kernel-2
keyword whole kernel-2_src_unpack color19
keyword whole kernel_is color19
#libtool
keyword whole elibtoolize color19
#mercurial
keyword whole mercurial_src_unpack color19
#mozilla
keyword whole mozconfig_annotate color19
keyword whole mozconfig_config color19
keyword whole mozconfig_final color19
keyword whole mozconfig_init color19
keyword whole mozconfig_install_prefs color19
keyword whole mozconfig_use_enable color19
keyword whole mozconfig_use_with color19
keyword whole moz_pkg_setup color19
#multilib
keyword whole multilib_copy_sources color19
keyword whole multilib_env color19
keyword whole multilib_foreach_abi color19
keyword whole multilib_is_native_abi color19
keyword whole multilib_layout color19
keyword whole multilib_parallel_foreach_abi color19
keyword whole multilib_toolchain_setup color19
#ninja-utils
keyword whole eninja color19
#pam
keyword whole cleanpamd color19
keyword whole dopamd color19
keyword whole dopammod color19
keyword whole dopamsecurity color19
keyword whole newpamd color19
keyword whole newpammod color19
keyword whole newpamsecurity color19
keyword whole pamd_mimic color19
keyword whole pamd_mimic_system color19
#prefix
keyword whole eprefixify color19
#preserve-libs
keyword whole preserve_old_lib color19
keyword whole preserve_old_lib_notify color19
#python
keyword whole python_copy_sources color19
keyword whole python_do color19
keyword whole python_doexe color19
keyword whole python_doheader color19
keyword whole python_domodule color19
keyword whole python_doscript color19
keyword whole python_export color19
keyword whole python_export_best color19
keyword whole python_fix_shebang color19
keyword whole python_foreach_impl color19
keyword whole python_is_python3 color19
keyword whole python_moduleinto color19
keyword whole python_newexe color19
keyword whole python_newscript color19
keyword whole python_optimize color19
keyword whole python_replicate_script color19
keyword whole python_scriptinto color19
keyword whole python_setup color19
#rpm
keyword whole rpm_src_unpack color19
keyword whole rpm_unpack color19
#svn
keyword whole subversion_src_unpack color19
#systemd
keyword whole systemd_dotmpfilesd color19
keyword whole systemd_dounit color19
keyword whole systemd_douserunit color19
keyword whole systemd_enable_ntpunit color19
keyword whole systemd_install_serviced color19
keyword whole systemd_logger color19
keyword whole systemd_newtmpfilesd color19
keyword whole systemd_newunit color19
keyword whole systemd_reenable color19
keyword whole systemd_update_catalog color19
#toolchain-funcs
keyword whole gen_usr_ldscript color19
keyword whole tc-check-openmp color19
keyword whole tc-enables-pie color19
keyword whole tc-export color19
keyword whole tc-export_build_env color19
keyword whole tc-has-openmp color19
keyword whole tc-has-tls color19
keyword whole tc-is-clang color19
keyword whole tc-is-cross-compiler color19
keyword whole tc-is-gcc color19
keyword whole tc-is-static-only color19
keyword whole tc-ld-disable-gold color19
#toolchain
keyword whole toolchain_src_unpack color19
#unpacker
keyword whole unpacker_src_unpack color19
#virtualx
keyword whole virtx color19
#xdg
keyword whole xdg_desktop_database_update color19
keyword whole xdg_environment_reset color19
keyword whole xdg_icon_cache_update color19
keyword whole xdg_mimeinfo_database_update color19
#bashism (builtin extended 'test')
keyword whole [[ color17
keyword whole ]] color17
#common Makefile variables
keyword whole AR color26
keyword whole AS color26
keyword whole BINDIR color26
keyword whole CC color26
keyword whole CFLAGS color26
keyword whole CPPFLAGS color26
keyword whole CXX color26
keyword whole CXXFLAGS color26
keyword whole DESTDIR color26
keyword whole DOCDIR color26
keyword whole LD color26
keyword whole LDFLAGS color26
keyword whole LIBDIR color26
keyword whole MANDIR color26
keyword whole NM color26
keyword whole OBJCOPY color26
keyword whole PKG_CONFIG color26
keyword whole PREFIX color26
keyword whole RANLIB color26
keyword whole SBINDIR color26
keyword whole SHELL color26
keyword whole STRIP color26
keyword whole SYSCONFDIR color26
keyword whole YACC color26
####################
# here starts original sh.syntax (with core commands only)
####################
keyword ! color196
keyword ;; color196
keyword \\@ color196
keyword \\$ color196
keyword \\\\ color196
keyword \\" color196
keyword \\' color196
keyword \\` color196
keyword ` color196
keyword ; color17
keyword $(*) color88
keyword ${*} color88
keyword { color17
keyword } color17
keyword whole linestart #!\[\s\]*\n color17 color232
keyword $\* color196
keyword $@ color196
keyword $# color196
keyword $? color196
keyword $- color196
keyword $$ color196
keyword $! color196
keyword $_ color196
keyword whole 2>&1 color196
keyword whole 1>&2 color196
keyword whole 2> color196
keyword whole 1> color196
keyword wholeright $\[0123456789\] color196
keyword wholeright $+ color88
keyword $ color88
keyword wholeleft linestart function*() color90
keyword wholeleft linestart function\[\s\]+ color90
keyword wholeright +() color90
wholechars abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-._
keyword whole break color19
keyword whole case color19
keyword whole clear color19
keyword whole continue color19
keyword whole declare color19
keyword whole done color19
keyword whole do color19
keyword whole elif color19
keyword whole else color19
keyword whole esac color19
keyword whole exit color19
keyword whole export color19
keyword whole fi color19
keyword whole for color19
keyword whole getopts color19
keyword whole if color19
keyword whole in color19
keyword whole local color19
keyword whole read color19
keyword whole return color19
keyword whole select color19
keyword whole shift color19
keyword whole source color19
keyword whole then color19
keyword whole trap color19
keyword whole until color19
keyword whole unset color19
keyword whole wait color19
keyword whole while color19
# here goes usable subset for .ebuild commands
keyword whole awk color26
keyword whole cd color26
keyword whole chown color26
keyword whole chmod color26
keyword whole cmake color26
keyword whole cp color26
keyword whole echo color26
keyword whole egrep color26
keyword whole fgrep color26
keyword whole find color26
keyword whole grep color26
keyword whole ln color26
keyword whole make color26
keyword whole mkdir color26
keyword whole mknod color26
keyword whole mv color26
keyword whole perl color26
keyword whole pod2man color26
keyword whole popd color26
keyword whole printf color26
keyword whole pushd color26
keyword whole rm color26
keyword whole rmdir color26
keyword whole sed color26
keyword whole sh color26
keyword whole shopt color26
keyword whole touch color26
keyword whole xmkmf color26
# some interesting files to copy
keyword whole ANNOUNCEMENT color243
keyword whole AUTHORS color243
keyword whole BUGS color243
keyword whole CHANGES color243
keyword whole COPYING color243
keyword whole COPYRIGHT color243
keyword whole CREDITS color243
keyword whole ChangeLog color243
keyword whole FAQ color243
keyword whole HACKING color243
keyword whole INSTALL color243
keyword whole LICENSE color243
keyword whole NEWS color243
keyword whole README color243
keyword whole THANKS color243
keyword whole TODO color243
keyword whole VERSION color243
keyword whole /dev/audio color63
keyword whole /dev/dsp color63
keyword whole /dev/null color63
keyword whole /dev/mixed color63
keyword whole /dev/stdin color63
keyword whole /dev/stdout color63
keyword whole /dev/stderr color63
keyword whole /dev/zero color63
wholechars abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_
context # \n color30
spellcheck
context exclusive whole <<\[\s\]\[-\]\[\s\]\[\\\]EOF EOF color28
context exclusive whole <<\[\s\]\[-\]\[\s\]\[\\\]END END color28
context ' ' color28
context " " color28
keyword \\* color88
keyword \\@ color88
keyword \\$ color88
keyword \\\\ color88
keyword \\` color88
keyword \\" color88
keyword $(*) color88
keyword ${*} color88
keyword $\* color196
keyword $@ color196
keyword $# color196
keyword $? color196
keyword $- color196
keyword $$ color196
keyword $! color196
keyword $_ color196
keyword wholeright $\[0123456789\] color196
keyword wholeright $+ color88
keyword $ color88
context exclusive ` ` color252 color232
keyword '*' color28
keyword " color28
keyword \\` color28
keyword ; color17
keyword $(*) color88
keyword ${*} color88
keyword { color17
keyword } color17
keyword $\* color196
keyword $@ color196
keyword $# color196
keyword $? color196
keyword $- color196
keyword $$ color196
keyword $! color196
keyword $_ color196
keyword whole 2>&1 color196
keyword whole 2> color196
keyword whole 1> color196
keyword wholeright $\[0123456789\] color196
keyword wholeright $+ color88
keyword $ color88
wholechars abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-._
keyword whole break color19
keyword whole case color19
keyword whole clear color19
keyword whole continue color19
keyword whole declare color19
keyword whole done color19
keyword whole do color19
keyword whole elif color19
keyword whole else color19
keyword whole esac color19
keyword whole exit color19
keyword whole export color19
keyword whole fi color19
keyword whole for color19
keyword whole getopts color19
keyword whole if color19
keyword whole in color19
keyword whole read color19
keyword whole return color19
keyword whole select color19
keyword whole shift color19
keyword whole source color19
keyword whole then color19
keyword whole trap color19
keyword whole until color19
keyword whole unset color19
keyword whole wait color19
keyword whole while color19
# here goes usable subset for .ebuild commands
keyword whole awk color26
keyword whole sed color26
keyword whole /dev/audio color63
keyword whole /dev/dsp color63
keyword whole /dev/null color63
keyword whole /dev/mixed color63
keyword whole /dev/stdin color63
keyword whole /dev/stdout color63
keyword whole /dev/stderr color63
keyword whole /dev/zero color63
context inherit \n color91
keyword whole inherit color19