ebuild.syntax 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566
  1. # Author : Sergei Trofimovich <slyfox@inbox.ru>
  2. # Language : shell
  3. # Mode : ebuild
  4. #
  5. # sh.syntax is taken as base.
  6. #
  7. # Note : keep in sync default and " " contexts
  8. #
  9. # 'sh.syntax' header:
  10. # # Since I regulary update ths file, please send any comments
  11. # # to: Michelle Konzack <linux4michelle@freenet.de>
  12. # # Last Update: Thu, 01 Jun 2006 22:10:07 +0200
  13. context default
  14. #.ebuild specific commands/glo vars
  15. # TODO: 1. split keywords by .eclass'es
  16. # 2. grep all exports and place here
  17. keyword whole AT_M4DIR brightcyan
  18. keyword whole BDEPEND brightcyan
  19. keyword whole CABAL_FEATURES brightcyan
  20. keyword whole CHECKREQS_DISK_BUILD brightcyan
  21. keyword whole CHECKREQS_DISK_USR brightcyan
  22. keyword whole CHECKREQS_DISK_VAR brightcyan
  23. keyword whole CHECKREQS_MEMORY brightcyan
  24. keyword whole CONFIG_CHECK brightcyan
  25. keyword whole DEPEND brightcyan
  26. keyword whole DESCRIPTION brightcyan
  27. keyword whole EAPI brightcyan
  28. keyword whole ECONF_SOURCE brightcyan
  29. keyword whole EDARCS_REPOSITORY brightcyan
  30. keyword whole EDARCS_GET_CMD brightcyan
  31. keyword whole EDARCS_LOCALREPO brightcyan
  32. keyword whole EGIT_BRANCH brightcyan
  33. keyword whole EGIT_PROJECT brightcyan
  34. keyword whole EGIT_REPO_URI brightcyan
  35. keyword whole EGIT_SUBMODULES brightcyan
  36. keyword whole EGIT_TREE brightcyan
  37. keyword whole ESVN_REPO_URI brightcyan
  38. keyword whole EXPORT_FUNCTIONS brightcyan
  39. keyword whole HOMEPAGE brightcyan
  40. keyword whole IUSE brightcyan
  41. keyword whole KEYWORDS brightcyan
  42. keyword whole LICENSE brightcyan
  43. keyword whole PATCHES brightcyan
  44. keyword whole PDEPEND brightcyan
  45. keyword whole PROVIDE brightcyan
  46. keyword whole PYTHON_COMPAT brightcyan
  47. keyword whole QA_AM_MAINTAINER_MODE brightcyan
  48. keyword whole QA_CONFIGURE_OPTIONS brightcyan
  49. keyword whole QA_DESKTOP_FILE brightcyan
  50. keyword whole QA_DT_NEEDED brightcyan
  51. keyword whole QA_EXECSTACK brightcyan
  52. keyword whole QA_FLAGS_IGNORED brightcyan
  53. keyword whole QA_MULTILIB_PATHS brightcyan
  54. keyword whole QA_PREBUILT brightcyan
  55. keyword whole QA_PRESTRIPPED brightcyan
  56. keyword whole QA_SONAME brightcyan
  57. keyword whole QA_TEXTRELS brightcyan
  58. keyword whole QA_WX_LOAD brightcyan
  59. keyword whole RDEPEND brightcyan
  60. keyword whole REQUIRED_USE brightcyan
  61. keyword whole RESTRICT brightcyan
  62. keyword whole S brightcyan
  63. keyword whole SITEFILE brightcyan
  64. keyword whole SLOT brightcyan
  65. keyword whole SRC_URI brightcyan
  66. keyword whole WANT_AUTOCONF brightcyan
  67. keyword whole WANT_AUTOMAKE brightcyan
  68. keyword DOCS brightcyan
  69. keyword HTML_DOCS brightcyan
  70. keyword LINGUAS brightcyan
  71. keyword whole addpredict yellow
  72. keyword whole best_version yellow
  73. keyword whole built_with_use yellow
  74. keyword whole check_KV yellow
  75. keyword whole default yellow
  76. keyword whole die yellow
  77. keyword whole diropts yellow
  78. keyword whole dobin yellow
  79. keyword whole docinto yellow
  80. keyword whole docompress yellow
  81. keyword whole doconfd yellow
  82. keyword whole dodir yellow
  83. keyword whole dodoc yellow
  84. keyword whole doenvd yellow
  85. keyword whole doexe yellow
  86. keyword whole dohard yellow
  87. keyword whole dohtml yellow
  88. keyword whole doinfo yellow
  89. keyword whole doinitd yellow
  90. keyword whole doins yellow
  91. keyword whole dolib yellow
  92. keyword whole dolib.a yellow
  93. keyword whole dolib.so yellow
  94. keyword whole doman yellow
  95. keyword whole dosbin yellow
  96. keyword whole dosed yellow
  97. keyword whole dosym yellow
  98. keyword whole eapply yellow
  99. keyword whole eapply_user yellow
  100. keyword whole ebegin yellow
  101. keyword whole econf yellow
  102. keyword whole eend yellow
  103. keyword whole eerror yellow
  104. keyword whole einfo yellow
  105. keyword whole einstall yellow
  106. keyword whole einstalldocs yellow
  107. keyword whole elog yellow
  108. keyword whole emake yellow
  109. keyword whole epatch yellow
  110. keyword whole epatch_user yellow
  111. keyword whole ewarn yellow
  112. keyword whole exeinto yellow
  113. keyword whole exeopts yellow
  114. keyword whole enewgroup yellow
  115. keyword whole enewuser yellow
  116. keyword whole fowners yellow
  117. keyword whole fperms yellow
  118. keyword whole has yellow
  119. keyword whole hasq yellow
  120. keyword whole has_version yellow
  121. keyword whole insinto yellow
  122. keyword whole insopts yellow
  123. keyword whole intltoolize yellow
  124. keyword whole into yellow
  125. keyword whole keepdir yellow
  126. keyword whole libopts yellow
  127. keyword whole newbin yellow
  128. keyword whole newconfd yellow
  129. keyword whole newdoc yellow
  130. keyword whole newexe yellow
  131. keyword whole newins yellow
  132. keyword whole newman yellow
  133. keyword whole newsbin yellow
  134. keyword whole newinitd yellow
  135. keyword whole pax-mark yellow
  136. keyword whole prepall yellow
  137. keyword whole prepalldocs yellow
  138. keyword whole prepallinfo yellow
  139. keyword whole prepallman yellow
  140. keyword whole unpack yellow
  141. keyword whole use yellow
  142. keyword whole usev yellow
  143. keyword whole usex yellow
  144. keyword whole use_enable yellow
  145. keyword whole use_with yellow
  146. #autotools
  147. keyword whole _elibtoolize yellow
  148. keyword whole eaclocal yellow
  149. keyword whole eautoconf yellow
  150. keyword whole eautopoint yellow
  151. keyword whole eautoreconf yellow
  152. keyword whole eautomake yellow
  153. #bashcomp
  154. keyword whole bashcomp_alias yellow
  155. keyword whole dobashcomp yellow
  156. keyword whole newbashcomp yellow
  157. #cvs
  158. keyword whole cvs_src_unpack yellow
  159. #darcs
  160. keyword whole darcs_src_unpack yellow
  161. #default
  162. keyword whole default_src_unpack yellow
  163. #desktop
  164. keyword whole doicon yellow
  165. keyword whole domenu yellow
  166. keyword whole make_desktop_entry yellow
  167. keyword whole make_session_desktop yellow
  168. keyword whole newicon yellow
  169. keyword whole newmenu yellow
  170. #elisp-common
  171. keyword whole elisp-compile yellow
  172. keyword whole elisp-install yellow
  173. keyword whole elisp-site-file-install yellow
  174. keyword whole elisp-site-regen yellow
  175. #flag-o-matic
  176. keyword whole append-cflags yellow
  177. keyword whole append-cxxflags yellow
  178. keyword whole append-flags yellow
  179. keyword whole append-ldflags yellow
  180. keyword whole append-lfs-flags yellow
  181. keyword whole filter-flags yellow
  182. keyword whole replace-flags yellow
  183. keyword whole strip-flags yellow
  184. keyword whole strip-unsupported-flags yellow
  185. #git-r3
  186. keyword whole git-r3_checkout yellow
  187. keyword whole git-r3_fetch yellow
  188. keyword whole git-r3_src_unpack yellow
  189. #java-ant-2
  190. keyword whole EANT_BUILD_TARGET yellow
  191. #kernel-2
  192. keyword whole kernel-2_src_unpack yellow
  193. keyword whole kernel_is yellow
  194. #libtool
  195. keyword whole elibtoolize yellow
  196. #mercurial
  197. keyword whole mercurial_src_unpack yellow
  198. #mozilla
  199. keyword whole mozconfig_annotate yellow
  200. keyword whole mozconfig_config yellow
  201. keyword whole mozconfig_final yellow
  202. keyword whole mozconfig_init yellow
  203. keyword whole mozconfig_install_prefs yellow
  204. keyword whole mozconfig_use_enable yellow
  205. keyword whole mozconfig_use_with yellow
  206. keyword whole moz_pkg_setup yellow
  207. #multilib
  208. keyword whole multilib_copy_sources yellow
  209. keyword whole multilib_env yellow
  210. keyword whole multilib_foreach_abi yellow
  211. keyword whole multilib_is_native_abi yellow
  212. keyword whole multilib_layout yellow
  213. keyword whole multilib_parallel_foreach_abi yellow
  214. keyword whole multilib_toolchain_setup yellow
  215. #ninja-utils
  216. keyword whole eninja yellow
  217. #pam
  218. keyword whole cleanpamd yellow
  219. keyword whole dopamd yellow
  220. keyword whole dopammod yellow
  221. keyword whole dopamsecurity yellow
  222. keyword whole newpamd yellow
  223. keyword whole newpammod yellow
  224. keyword whole newpamsecurity yellow
  225. keyword whole pamd_mimic yellow
  226. keyword whole pamd_mimic_system yellow
  227. #prefix
  228. keyword whole eprefixify yellow
  229. #preserve-libs
  230. keyword whole preserve_old_lib yellow
  231. keyword whole preserve_old_lib_notify yellow
  232. #python
  233. keyword whole python_copy_sources yellow
  234. keyword whole python_do yellow
  235. keyword whole python_doexe yellow
  236. keyword whole python_doheader yellow
  237. keyword whole python_domodule yellow
  238. keyword whole python_doscript yellow
  239. keyword whole python_export yellow
  240. keyword whole python_export_best yellow
  241. keyword whole python_fix_shebang yellow
  242. keyword whole python_foreach_impl yellow
  243. keyword whole python_is_python3 yellow
  244. keyword whole python_moduleinto yellow
  245. keyword whole python_newexe yellow
  246. keyword whole python_newscript yellow
  247. keyword whole python_optimize yellow
  248. keyword whole python_replicate_script yellow
  249. keyword whole python_scriptinto yellow
  250. keyword whole python_setup yellow
  251. #rpm
  252. keyword whole rpm_src_unpack yellow
  253. keyword whole rpm_unpack yellow
  254. #svn
  255. keyword whole subversion_src_unpack yellow
  256. #systemd
  257. keyword whole systemd_dotmpfilesd yellow
  258. keyword whole systemd_dounit yellow
  259. keyword whole systemd_douserunit yellow
  260. keyword whole systemd_enable_ntpunit yellow
  261. keyword whole systemd_install_serviced yellow
  262. keyword whole systemd_logger yellow
  263. keyword whole systemd_newtmpfilesd yellow
  264. keyword whole systemd_newunit yellow
  265. keyword whole systemd_reenable yellow
  266. keyword whole systemd_update_catalog yellow
  267. #toolchain-funcs
  268. keyword whole gen_usr_ldscript yellow
  269. keyword whole tc-check-openmp yellow
  270. keyword whole tc-enables-pie yellow
  271. keyword whole tc-export yellow
  272. keyword whole tc-export_build_env yellow
  273. keyword whole tc-has-openmp yellow
  274. keyword whole tc-has-tls yellow
  275. keyword whole tc-is-clang yellow
  276. keyword whole tc-is-cross-compiler yellow
  277. keyword whole tc-is-gcc yellow
  278. keyword whole tc-is-static-only yellow
  279. keyword whole tc-ld-disable-gold yellow
  280. #toolchain
  281. keyword whole toolchain_src_unpack yellow
  282. #unpacker
  283. keyword whole unpacker_src_unpack yellow
  284. #virtualx
  285. keyword whole virtx yellow
  286. #xdg
  287. keyword whole xdg_desktop_database_update yellow
  288. keyword whole xdg_environment_reset yellow
  289. keyword whole xdg_icon_cache_update yellow
  290. keyword whole xdg_mimeinfo_database_update yellow
  291. #bashism (builtin extended 'test')
  292. keyword whole [[ brightcyan
  293. keyword whole ]] brightcyan
  294. #common Makefile variables
  295. keyword whole AR cyan
  296. keyword whole AS cyan
  297. keyword whole BINDIR cyan
  298. keyword whole CC cyan
  299. keyword whole CFLAGS cyan
  300. keyword whole CPPFLAGS cyan
  301. keyword whole CXX cyan
  302. keyword whole CXXFLAGS cyan
  303. keyword whole DESTDIR cyan
  304. keyword whole DOCDIR cyan
  305. keyword whole LD cyan
  306. keyword whole LDFLAGS cyan
  307. keyword whole LIBDIR cyan
  308. keyword whole MANDIR cyan
  309. keyword whole NM cyan
  310. keyword whole OBJCOPY cyan
  311. keyword whole PKG_CONFIG cyan
  312. keyword whole PREFIX cyan
  313. keyword whole RANLIB cyan
  314. keyword whole SBINDIR cyan
  315. keyword whole SHELL cyan
  316. keyword whole STRIP cyan
  317. keyword whole SYSCONFDIR cyan
  318. keyword whole YACC cyan
  319. ####################
  320. # here starts original sh.syntax (with core commands only)
  321. ####################
  322. keyword ! brightred
  323. keyword ;; brightred
  324. keyword \\@ brightred
  325. keyword \\$ brightred
  326. keyword \\\\ brightred
  327. keyword \\" brightred
  328. keyword \\' brightred
  329. keyword \\` brightred
  330. keyword ` brightred
  331. keyword ; brightcyan
  332. keyword $(*) brightgreen
  333. keyword ${*} brightgreen
  334. keyword { brightcyan
  335. keyword } brightcyan
  336. keyword whole linestart #!\[\s\]*\n brightcyan black
  337. keyword $\* brightred
  338. keyword $@ brightred
  339. keyword $# brightred
  340. keyword $? brightred
  341. keyword $- brightred
  342. keyword $$ brightred
  343. keyword $! brightred
  344. keyword $_ brightred
  345. keyword whole 2>&1 brightred
  346. keyword whole 1>&2 brightred
  347. keyword whole 2> brightred
  348. keyword whole 1> brightred
  349. keyword wholeright $\[0123456789\] brightred
  350. keyword wholeright $+ brightgreen
  351. keyword $ brightgreen
  352. keyword wholeleft linestart function*() brightmagenta
  353. keyword wholeleft linestart function\[\s\]+ brightmagenta
  354. keyword wholeright +() brightmagenta
  355. wholechars abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-._
  356. keyword whole break yellow
  357. keyword whole case yellow
  358. keyword whole clear yellow
  359. keyword whole continue yellow
  360. keyword whole declare yellow
  361. keyword whole done yellow
  362. keyword whole do yellow
  363. keyword whole elif yellow
  364. keyword whole else yellow
  365. keyword whole esac yellow
  366. keyword whole exit yellow
  367. keyword whole export yellow
  368. keyword whole fi yellow
  369. keyword whole for yellow
  370. keyword whole getopts yellow
  371. keyword whole if yellow
  372. keyword whole in yellow
  373. keyword whole local yellow
  374. keyword whole read yellow
  375. keyword whole return yellow
  376. keyword whole select yellow
  377. keyword whole shift yellow
  378. keyword whole source yellow
  379. keyword whole then yellow
  380. keyword whole trap yellow
  381. keyword whole until yellow
  382. keyword whole unset yellow
  383. keyword whole wait yellow
  384. keyword whole while yellow
  385. # here goes usable subset for .ebuild commands
  386. keyword whole awk cyan
  387. keyword whole cd cyan
  388. keyword whole chown cyan
  389. keyword whole chmod cyan
  390. keyword whole cmake cyan
  391. keyword whole cp cyan
  392. keyword whole echo cyan
  393. keyword whole egrep cyan
  394. keyword whole fgrep cyan
  395. keyword whole find cyan
  396. keyword whole grep cyan
  397. keyword whole ln cyan
  398. keyword whole make cyan
  399. keyword whole mkdir cyan
  400. keyword whole mknod cyan
  401. keyword whole mv cyan
  402. keyword whole perl cyan
  403. keyword whole pod2man cyan
  404. keyword whole popd cyan
  405. keyword whole printf cyan
  406. keyword whole pushd cyan
  407. keyword whole rm cyan
  408. keyword whole rmdir cyan
  409. keyword whole sed cyan
  410. keyword whole sh cyan
  411. keyword whole shopt cyan
  412. keyword whole touch cyan
  413. keyword whole xmkmf cyan
  414. # some interesting files to copy
  415. keyword whole ANNOUNCEMENT white
  416. keyword whole AUTHORS white
  417. keyword whole BUGS white
  418. keyword whole CHANGES white
  419. keyword whole COPYING white
  420. keyword whole COPYRIGHT white
  421. keyword whole CREDITS white
  422. keyword whole ChangeLog white
  423. keyword whole FAQ white
  424. keyword whole HACKING white
  425. keyword whole INSTALL white
  426. keyword whole LICENSE white
  427. keyword whole NEWS white
  428. keyword whole README white
  429. keyword whole THANKS white
  430. keyword whole TODO white
  431. keyword whole VERSION white
  432. keyword whole /dev/audio brightblue
  433. keyword whole /dev/dsp brightblue
  434. keyword whole /dev/null brightblue
  435. keyword whole /dev/mixed brightblue
  436. keyword whole /dev/stdin brightblue
  437. keyword whole /dev/stdout brightblue
  438. keyword whole /dev/stderr brightblue
  439. keyword whole /dev/zero brightblue
  440. wholechars abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_
  441. context # \n brown
  442. spellcheck
  443. context exclusive whole <<\[\s\]\[-\]\[\s\]\[\\\]EOF EOF green
  444. context exclusive whole <<\[\s\]\[-\]\[\s\]\[\\\]END END green
  445. context ' ' green
  446. context " " green
  447. keyword \\* brightgreen
  448. keyword \\@ brightgreen
  449. keyword \\$ brightgreen
  450. keyword \\\\ brightgreen
  451. keyword \\` brightgreen
  452. keyword \\" brightgreen
  453. keyword $(*) brightgreen
  454. keyword ${*} brightgreen
  455. keyword $\* brightred
  456. keyword $@ brightred
  457. keyword $# brightred
  458. keyword $? brightred
  459. keyword $- brightred
  460. keyword $$ brightred
  461. keyword $! brightred
  462. keyword $_ brightred
  463. keyword wholeright $\[0123456789\] brightred
  464. keyword wholeright $+ brightgreen
  465. keyword $ brightgreen
  466. context exclusive ` ` lightgray black
  467. keyword '*' green
  468. keyword " green
  469. keyword \\` green
  470. keyword ; brightcyan
  471. keyword $(*) brightgreen
  472. keyword ${*} brightgreen
  473. keyword { brightcyan
  474. keyword } brightcyan
  475. keyword $\* brightred
  476. keyword $@ brightred
  477. keyword $# brightred
  478. keyword $? brightred
  479. keyword $- brightred
  480. keyword $$ brightred
  481. keyword $! brightred
  482. keyword $_ brightred
  483. keyword whole 2>&1 brightred
  484. keyword whole 2> brightred
  485. keyword whole 1> brightred
  486. keyword wholeright $\[0123456789\] brightred
  487. keyword wholeright $+ brightgreen
  488. keyword $ brightgreen
  489. wholechars abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-._
  490. keyword whole break yellow
  491. keyword whole case yellow
  492. keyword whole clear yellow
  493. keyword whole continue yellow
  494. keyword whole declare yellow
  495. keyword whole done yellow
  496. keyword whole do yellow
  497. keyword whole elif yellow
  498. keyword whole else yellow
  499. keyword whole esac yellow
  500. keyword whole exit yellow
  501. keyword whole export yellow
  502. keyword whole fi yellow
  503. keyword whole for yellow
  504. keyword whole getopts yellow
  505. keyword whole if yellow
  506. keyword whole in yellow
  507. keyword whole read yellow
  508. keyword whole return yellow
  509. keyword whole select yellow
  510. keyword whole shift yellow
  511. keyword whole source yellow
  512. keyword whole then yellow
  513. keyword whole trap yellow
  514. keyword whole until yellow
  515. keyword whole unset yellow
  516. keyword whole wait yellow
  517. keyword whole while yellow
  518. # here goes usable subset for .ebuild commands
  519. keyword whole awk cyan
  520. keyword whole sed cyan
  521. keyword whole /dev/audio brightblue
  522. keyword whole /dev/dsp brightblue
  523. keyword whole /dev/null brightblue
  524. keyword whole /dev/mixed brightblue
  525. keyword whole /dev/stdin brightblue
  526. keyword whole /dev/stdout brightblue
  527. keyword whole /dev/stderr brightblue
  528. keyword whole /dev/zero brightblue
  529. context inherit \n magenta
  530. keyword whole inherit yellow