github-linguist-grammars 4.6.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/grammars/file.lasso.json +713 -0
- data/grammars/module.ceylon.json +54 -0
- data/grammars/objdump.x86asm.json +73 -0
- data/grammars/source.Inform7.json +45 -0
- data/grammars/source.Kotlin.json +774 -0
- data/grammars/source.LS.json +104 -0
- data/grammars/source.MCPOST.json +68 -0
- data/grammars/source.MOD.json +70 -0
- data/grammars/source.abap.json +176 -0
- data/grammars/source.abl.json +138 -0
- data/grammars/source.actionscript.3.json +1571 -0
- data/grammars/source.acucobol.json +16 -0
- data/grammars/source.ada.json +140 -0
- data/grammars/source.agda.json +254 -0
- data/grammars/source.ahk.json +171 -0
- data/grammars/source.alloy.json +44 -0
- data/grammars/source.ampl.json +157 -0
- data/grammars/source.antlr.json +300 -0
- data/grammars/source.apache-config.json +352 -0
- data/grammars/source.apache-config.mod_perl.json +70 -0
- data/grammars/source.apl.json +442 -0
- data/grammars/source.applescript.json +1385 -0
- data/grammars/source.apt.json +25 -0
- data/grammars/source.asm.x86.json +182 -0
- data/grammars/source.asp.json +157 -0
- data/grammars/source.aspectj.json +963 -0
- data/grammars/source.ats.json +170 -0
- data/grammars/source.autoit.3.json +132 -0
- data/grammars/source.awk.json +388 -0
- data/grammars/source.befunge.json +38 -0
- data/grammars/source.bf.json +36 -0
- data/grammars/source.bison.json +59 -0
- data/grammars/source.blitzmax.json +912 -0
- data/grammars/source.boo.json +452 -0
- data/grammars/source.brightauthorproject.json +29 -0
- data/grammars/source.brightscript.json +158 -0
- data/grammars/source.bro.json +409 -0
- data/grammars/source.bsv.json +283 -0
- data/grammars/source.c++.json +364 -0
- data/grammars/source.c++.qt.json +37 -0
- data/grammars/source.c.ec.json +39 -0
- data/grammars/source.c.json +727 -0
- data/grammars/source.c.platform.json +154 -0
- data/grammars/source.cache.cmake.json +75 -0
- data/grammars/source.cake.json +16 -0
- data/grammars/source.camlp4.ocaml.json +63 -0
- data/grammars/source.capnp.json +93 -0
- data/grammars/source.ceylon.json +77 -0
- data/grammars/source.cfscript.cfc.json +170 -0
- data/grammars/source.cfscript.json +744 -0
- data/grammars/source.chapel.json +240 -0
- data/grammars/source.cirru.json +66 -0
- data/grammars/source.clarion.json +159 -0
- data/grammars/source.clips.json +80 -0
- data/grammars/source.clojure.json +397 -0
- data/grammars/source.cm.json +54 -0
- data/grammars/source.cmake.json +181 -0
- data/grammars/source.cobol.json +528 -0
- data/grammars/source.coffee.json +678 -0
- data/grammars/source.compiled-papyrus.json +11 -0
- data/grammars/source.cool.json +103 -0
- data/grammars/source.coq.json +62 -0
- data/grammars/source.crystal.json +2760 -0
- data/grammars/source.cs.json +556 -0
- data/grammars/source.css.json +630 -0
- data/grammars/source.css.less.json +276 -0
- data/grammars/source.css.mss.json +256 -0
- data/grammars/source.csx.json +16 -0
- data/grammars/source.cuda-c++.json +137 -0
- data/grammars/source.cython.json +2108 -0
- data/grammars/source.d.json +722 -0
- data/grammars/source.dart.json +763 -0
- data/grammars/source.desktop.json +90 -0
- data/grammars/source.diff.json +162 -0
- data/grammars/source.dockerfile.json +89 -0
- data/grammars/source.dosbatch.json +70 -0
- data/grammars/source.dot.json +126 -0
- data/grammars/source.dylan.json +217 -0
- data/grammars/source.eiffel.json +138 -0
- data/grammars/source.elixir.json +737 -0
- data/grammars/source.elm.json +355 -0
- data/grammars/source.erazor.json +126 -0
- data/grammars/source.erlang.json +1674 -0
- data/grammars/source.essl.json +50 -0
- data/grammars/source.factor.json +260 -0
- data/grammars/source.fan.json +188 -0
- data/grammars/source.fancy.json +270 -0
- data/grammars/source.fish.json +214 -0
- data/grammars/source.forth.json +101 -0
- data/grammars/source.fortran.json +499 -0
- data/grammars/source.fortran.modern.json +226 -0
- data/grammars/source.fsharp.json +403 -0
- data/grammars/source.gap.json +167 -0
- data/grammars/source.gcode.json +25 -0
- data/grammars/source.gdscript.json +154 -0
- data/grammars/source.gfm.json +1270 -0
- data/grammars/source.glsl.json +71 -0
- data/grammars/source.gnuplot.json +276 -0
- data/grammars/source.go.json +552 -0
- data/grammars/source.golo.json +182 -0
- data/grammars/source.gosu.2.json +163 -0
- data/grammars/source.grace.json +679 -0
- data/grammars/source.groovy.gradle.json +73 -0
- data/grammars/source.groovy.json +1385 -0
- data/grammars/source.harbour.json +450 -0
- data/grammars/source.haskell.json +449 -0
- data/grammars/source.haxe.2.json +1243 -0
- data/grammars/source.hss.1.json +464 -0
- data/grammars/source.httpspec.json +287 -0
- data/grammars/source.hxml.json +26 -0
- data/grammars/source.hy.json +270 -0
- data/grammars/source.idl-dlm.json +112 -0
- data/grammars/source.idl.json +267 -0
- data/grammars/source.idris.json +537 -0
- data/grammars/source.ini.json +113 -0
- data/grammars/source.inno.json +65 -0
- data/grammars/source.io.json +164 -0
- data/grammars/source.ioke.json +272 -0
- data/grammars/source.isabelle.root.json +68 -0
- data/grammars/source.isabelle.theory.json +106 -0
- data/grammars/source.j.json +49 -0
- data/grammars/source.jade.json +1009 -0
- data/grammars/source.jasmin.json +299 -0
- data/grammars/source.java-properties.json +97 -0
- data/grammars/source.java.json +1026 -0
- data/grammars/source.jcl.json +49 -0
- data/grammars/source.jflex.json +490 -0
- data/grammars/source.jq.json +218 -0
- data/grammars/source.js.json +948 -0
- data/grammars/source.js.jsx.json +2937 -0
- data/grammars/source.js.objj.json +424 -0
- data/grammars/source.js.regexp.json +150 -0
- data/grammars/source.js.regexp.replacement.json +30 -0
- data/grammars/source.json.json +149 -0
- data/grammars/source.julia.json +407 -0
- data/grammars/source.lean.json +145 -0
- data/grammars/source.lid.json +23 -0
- data/grammars/source.lilypond.json +623 -0
- data/grammars/source.lisp.json +111 -0
- data/grammars/source.litcoffee.json +669 -0
- data/grammars/source.livescript.json +616 -0
- data/grammars/source.llvm.json +71 -0
- data/grammars/source.logos.json +31 -0
- data/grammars/source.logtalk.json +315 -0
- data/grammars/source.loomscript.json +214 -0
- data/grammars/source.lsl.json +216 -0
- data/grammars/source.lua.json +191 -0
- data/grammars/source.makefile.json +474 -0
- data/grammars/source.makegen.json +13 -0
- data/grammars/source.man.json +53 -0
- data/grammars/source.mask.json +701 -0
- data/grammars/source.mata.json +133 -0
- data/grammars/source.mathematica.json +429 -0
- data/grammars/source.matlab.json +776 -0
- data/grammars/source.mercury.json +251 -0
- data/grammars/source.ml.json +291 -0
- data/grammars/source.modelica.json +142 -0
- data/grammars/source.modula2.json +103 -0
- data/grammars/source.monkey.json +701 -0
- data/grammars/source.moonscript.json +149 -0
- data/grammars/source.mupad.json +149 -0
- data/grammars/source.nant-build.json +86 -0
- data/grammars/source.ncl.json +66 -0
- data/grammars/source.nemerle.json +137 -0
- data/grammars/source.nesc.json +27 -0
- data/grammars/source.netlinx.erb.json +47 -0
- data/grammars/source.netlinx.json +768 -0
- data/grammars/source.nginx.json +797 -0
- data/grammars/source.nim.json +1150 -0
- data/grammars/source.nim_filter.json +133 -0
- data/grammars/source.nimcfg.json +116 -0
- data/grammars/source.ninja.json +66 -0
- data/grammars/source.nit.json +238 -0
- data/grammars/source.nix.json +1200 -0
- data/grammars/source.nmml.json +87 -0
- data/grammars/source.nsis.json +150 -0
- data/grammars/source.objc++.json +19 -0
- data/grammars/source.objc.json +918 -0
- data/grammars/source.objc.platform.json +277 -0
- data/grammars/source.ocaml.json +1426 -0
- data/grammars/source.ocamllex.json +305 -0
- data/grammars/source.ocamlyacc.json +346 -0
- data/grammars/source.octave.json +451 -0
- data/grammars/source.ooc.json +692 -0
- data/grammars/source.opa.json +206 -0
- data/grammars/source.opal.json +415 -0
- data/grammars/source.opalsysdefs.json +70 -0
- data/grammars/source.opencobol.json +65 -0
- data/grammars/source.ox.json +97 -0
- data/grammars/source.oz.json +84 -0
- data/grammars/source.papyrus-assembly.json +266 -0
- data/grammars/source.papyrus.json +231 -0
- data/grammars/source.parrot.pir.json +117 -0
- data/grammars/source.pascal.json +150 -0
- data/grammars/source.perl.6.json +310 -0
- data/grammars/source.perl.json +2413 -0
- data/grammars/source.php.zephir.json +362 -0
- data/grammars/source.pig_latin.json +172 -0
- data/grammars/source.pike.json +62 -0
- data/grammars/source.plsql.oracle.json +642 -0
- data/grammars/source.po.json +232 -0
- data/grammars/source.pogoscript.json +85 -0
- data/grammars/source.postscript.json +231 -0
- data/grammars/source.powershell.json +755 -0
- data/grammars/source.processing.json +885 -0
- data/grammars/source.prolog.eclipse.json +206 -0
- data/grammars/source.prolog.json +292 -0
- data/grammars/source.protobuf.json +395 -0
- data/grammars/source.pubspec.json +13 -0
- data/grammars/source.puppet.json +494 -0
- data/grammars/source.purescript.json +818 -0
- data/grammars/source.pyjade.json +1010 -0
- data/grammars/source.python.django.json +34 -0
- data/grammars/source.python.json +1960 -0
- data/grammars/source.python.salt.json +13 -0
- data/grammars/source.qmake.json +217 -0
- data/grammars/source.qml.json +195 -0
- data/grammars/source.r.json +203 -0
- data/grammars/source.racket.json +119 -0
- data/grammars/source.rebol.json +647 -0
- data/grammars/source.red.json +652 -0
- data/grammars/source.regexp.babel.json +190 -0
- data/grammars/source.regexp.python.json +187 -0
- data/grammars/source.regexp.spin.json +188 -0
- data/grammars/source.ruby.json +1956 -0
- data/grammars/source.ruby.rspec.cucumber.steps.json +274 -0
- data/grammars/source.rust.json +269 -0
- data/grammars/source.sas.json +322 -0
- data/grammars/source.sas_log.json +26 -0
- data/grammars/source.sass.json +248 -0
- data/grammars/source.sbt.json +36 -0
- data/grammars/source.scad.json +152 -0
- data/grammars/source.scala.json +739 -0
- data/grammars/source.scaml.json +466 -0
- data/grammars/source.scheme.json +370 -0
- data/grammars/source.scilab.json +103 -0
- data/grammars/source.scss.json +1321 -0
- data/grammars/source.shell.json +1212 -0
- data/grammars/source.smali.json +1668 -0
- data/grammars/source.smalltalk.json +135 -0
- data/grammars/source.smt.json +173 -0
- data/grammars/source.sp.json +118 -0
- data/grammars/source.sparql.json +23 -0
- data/grammars/source.spin.json +936 -0
- data/grammars/source.sqf.json +112 -0
- data/grammars/source.sql.json +473 -0
- data/grammars/source.stata.json +208 -0
- data/grammars/source.strings.json +53 -0
- data/grammars/source.stylus.json +1021 -0
- data/grammars/source.swift.json +965 -0
- data/grammars/source.systemverilog.json +1050 -0
- data/grammars/source.tcl.json +277 -0
- data/grammars/source.tea.json +180 -0
- data/grammars/source.thrift.json +704 -0
- data/grammars/source.toml.json +327 -0
- data/grammars/source.ts.json +1094 -0
- data/grammars/source.tsx.json +1324 -0
- data/grammars/source.turtle.json +505 -0
- data/grammars/source.txl.json +62 -0
- data/grammars/source.ucfconstraints.json +72 -0
- data/grammars/source.vala.json +814 -0
- data/grammars/source.varnish.vcl.json +343 -0
- data/grammars/source.vbnet.json +338 -0
- data/grammars/source.verilog.json +302 -0
- data/grammars/source.vhdl.json +1349 -0
- data/grammars/source.viml.json +224 -0
- data/grammars/source.webidl.json +814 -0
- data/grammars/source.x10.json +68 -0
- data/grammars/source.x86asm.json +47 -0
- data/grammars/source.xc.json +379 -0
- data/grammars/source.xq.json +241 -0
- data/grammars/source.xquery.json +193 -0
- data/grammars/source.xtend.json +733 -0
- data/grammars/source.yaml.json +334 -0
- data/grammars/source.yaml.salt.json +348 -0
- data/grammars/text.bibtex.json +251 -0
- data/grammars/text.cfml.basic.json +736 -0
- data/grammars/text.dart-analysis-output.json +162 -0
- data/grammars/text.dart-doccomments.json +19 -0
- data/grammars/text.elixir.json +45 -0
- data/grammars/text.gherkin.feature.json +135 -0
- data/grammars/text.groff.json +113 -0
- data/grammars/text.haml.json +299 -0
- data/grammars/text.html.abl.json +24 -0
- data/grammars/text.html.asciidoc.json +492 -0
- data/grammars/text.html.asdoc.json +541 -0
- data/grammars/text.html.asp.json +58 -0
- data/grammars/text.html.basic.json +552 -0
- data/grammars/text.html.cfm.json +811 -0
- data/grammars/text.html.creole.json +329 -0
- data/grammars/text.html.django.json +69 -0
- data/grammars/text.html.elixir.json +18 -0
- data/grammars/text.html.erb.json +157 -0
- data/grammars/text.html.erlang.yaws.json +72 -0
- data/grammars/text.html.factor.json +27 -0
- data/grammars/text.html.handlebars.json +783 -0
- data/grammars/text.html.jsp.json +1203 -0
- data/grammars/text.html.liquid.json +35 -0
- data/grammars/text.html.mako.json +729 -0
- data/grammars/text.html.markdown.source.gfm.apib.json +1297 -0
- data/grammars/text.html.markdown.source.gfm.mson.json +1165 -0
- data/grammars/text.html.mediawiki.json +972 -0
- data/grammars/text.html.php.json +2607 -0
- data/grammars/text.html.slash.json +313 -0
- data/grammars/text.html.smarty.json +216 -0
- data/grammars/text.html.ssp.json +49 -0
- data/grammars/text.html.tcl.json +44 -0
- data/grammars/text.html.twig.json +1353 -0
- data/grammars/text.html.vue.json +642 -0
- data/grammars/text.idl-idldoc.json +14 -0
- data/grammars/text.junit-test-report.json +92 -0
- data/grammars/text.log.latex.json +86 -0
- data/grammars/text.python.console.json +25 -0
- data/grammars/text.python.traceback.json +46 -0
- data/grammars/text.rdoc.json +48 -0
- data/grammars/text.restructuredtext.json +561 -0
- data/grammars/text.robot.json +73 -0
- data/grammars/text.shell-session.json +48 -0
- data/grammars/text.slim.json +527 -0
- data/grammars/text.tex.json +271 -0
- data/grammars/text.tex.latex.beamer.json +63 -0
- data/grammars/text.tex.latex.haskell.json +56 -0
- data/grammars/text.tex.latex.json +1013 -0
- data/grammars/text.tex.latex.memoir.json +99 -0
- data/grammars/text.tex.latex.rd.json +117 -0
- data/grammars/text.xml.ant.json +202 -0
- data/grammars/text.xml.flex-config.json +2634 -0
- data/grammars/text.xml.genshi.json +34 -0
- data/grammars/text.xml.json +364 -0
- data/grammars/text.xml.pom.json +774 -0
- data/grammars/text.xml.xsl.json +94 -0
- data/grammars/text.zone_file.json +72 -0
- data/lib/linguist/grammars.rb +13 -0
- metadata +389 -0
@@ -0,0 +1,451 @@
|
|
1
|
+
{
|
2
|
+
"fileTypes": [
|
3
|
+
"m"
|
4
|
+
],
|
5
|
+
"keyEquivalent": "^~O",
|
6
|
+
"name": "Octave",
|
7
|
+
"patterns": [
|
8
|
+
{
|
9
|
+
"begin": "(?x)\n(?=function\\b) # borrowed from ruby bundle\n(?<=^|\\s)(function)\\s+ # the function keyword\n(?>\\[(.*)\\])?\\t# match various different combination of output arguments\n((?>[a-zA-Z_]\\w*))?\n(?>\\s*=\\s*)?\n((?>[a-zA-Z_]\\w*(?>[?!]|=(?!>))? )) # the function name\n(?=[ \\t]*[^\\s%|#]) # make sure arguments and not a comment follow\n\\s*(\\() # the opening parenthesis for arguments",
|
10
|
+
"beginCaptures": {
|
11
|
+
"1": {
|
12
|
+
"name": "storage.type.octave"
|
13
|
+
},
|
14
|
+
"2": {
|
15
|
+
"name": "variable.parameter.output.function.octave"
|
16
|
+
},
|
17
|
+
"3": {
|
18
|
+
"name": "variable.parameter.output.function.octave"
|
19
|
+
},
|
20
|
+
"4": {
|
21
|
+
"name": "entity.name.function.octave"
|
22
|
+
}
|
23
|
+
},
|
24
|
+
"contentName": "variable.parameter.input.function.octave",
|
25
|
+
"end": "\\)",
|
26
|
+
"endCaptures": {
|
27
|
+
"0": {
|
28
|
+
"name": "punctuation.definition.parameters.octave"
|
29
|
+
}
|
30
|
+
},
|
31
|
+
"name": "meta.function.with-arguments.octave"
|
32
|
+
},
|
33
|
+
{
|
34
|
+
"captures": {
|
35
|
+
"1": {
|
36
|
+
"name": "storage.type.octave"
|
37
|
+
},
|
38
|
+
"2": {
|
39
|
+
"name": "variable.parameter.output.function.octave"
|
40
|
+
},
|
41
|
+
"3": {
|
42
|
+
"name": "variable.parameter.output.function.octave"
|
43
|
+
},
|
44
|
+
"4": {
|
45
|
+
"name": "entity.name.function.octave"
|
46
|
+
}
|
47
|
+
},
|
48
|
+
"match": "(?x)\n(?=function\\b) # borrowed from ruby bundle\n(?<=^|\\s)(function)\\s+ # the function keyword\n(?>\\[(.*)\\])? # match various different combination of output arguments\n((?>[a-zA-Z_]\\w*))?\n(?>\\s*=\\s*)?\n((?>[a-zA-Z_]\\w*(?>[?!]|=(?!>))? )) # the function name",
|
49
|
+
"name": "meta.function.without-arguments.octave"
|
50
|
+
},
|
51
|
+
{
|
52
|
+
"include": "#constants_override"
|
53
|
+
},
|
54
|
+
{
|
55
|
+
"include": "#brackets"
|
56
|
+
},
|
57
|
+
{
|
58
|
+
"include": "#curlybrackets"
|
59
|
+
},
|
60
|
+
{
|
61
|
+
"include": "#parens"
|
62
|
+
},
|
63
|
+
{
|
64
|
+
"include": "#string"
|
65
|
+
},
|
66
|
+
{
|
67
|
+
"include": "#string_double"
|
68
|
+
},
|
69
|
+
{
|
70
|
+
"include": "#transpose"
|
71
|
+
},
|
72
|
+
{
|
73
|
+
"include": "#double_quote"
|
74
|
+
},
|
75
|
+
{
|
76
|
+
"include": "#operators"
|
77
|
+
},
|
78
|
+
{
|
79
|
+
"include": "#all_octave_keywords"
|
80
|
+
},
|
81
|
+
{
|
82
|
+
"include": "#all_octave_comments"
|
83
|
+
},
|
84
|
+
{
|
85
|
+
"include": "#number"
|
86
|
+
},
|
87
|
+
{
|
88
|
+
"include": "#variable"
|
89
|
+
},
|
90
|
+
{
|
91
|
+
"include": "#variable_invalid"
|
92
|
+
},
|
93
|
+
{
|
94
|
+
"include": "#not_equal_invalid"
|
95
|
+
},
|
96
|
+
{
|
97
|
+
"include": "#variable_assignment"
|
98
|
+
}
|
99
|
+
],
|
100
|
+
"repository": {
|
101
|
+
"all_octave_comments": {
|
102
|
+
"patterns": [
|
103
|
+
{
|
104
|
+
"begin": "(^[ \\t]+)?(?=%%)",
|
105
|
+
"beginCaptures": {
|
106
|
+
"1": {
|
107
|
+
"name": "punctuation.whitespace.comment.leading.octave"
|
108
|
+
}
|
109
|
+
},
|
110
|
+
"end": "(?!\\G)",
|
111
|
+
"patterns": [
|
112
|
+
{
|
113
|
+
"begin": "%%",
|
114
|
+
"beginCaptures": {
|
115
|
+
"0": {
|
116
|
+
"name": "punctuation.definition.comment.octave"
|
117
|
+
}
|
118
|
+
},
|
119
|
+
"end": "\\n",
|
120
|
+
"name": "comment.line.double-percentage.octave"
|
121
|
+
}
|
122
|
+
]
|
123
|
+
},
|
124
|
+
{
|
125
|
+
"begin": "%\\{",
|
126
|
+
"captures": {
|
127
|
+
"1": {
|
128
|
+
"name": "punctuation.definition.comment.octave"
|
129
|
+
}
|
130
|
+
},
|
131
|
+
"end": "%\\}",
|
132
|
+
"name": "comment.block.percentage.octave"
|
133
|
+
},
|
134
|
+
{
|
135
|
+
"begin": "(^[ \\t]+)?(?=%)",
|
136
|
+
"beginCaptures": {
|
137
|
+
"1": {
|
138
|
+
"name": "punctuation.whitespace.comment.leading.octave"
|
139
|
+
}
|
140
|
+
},
|
141
|
+
"end": "(?!\\G)",
|
142
|
+
"patterns": [
|
143
|
+
{
|
144
|
+
"begin": "%",
|
145
|
+
"beginCaptures": {
|
146
|
+
"0": {
|
147
|
+
"name": "punctuation.definition.comment.octave"
|
148
|
+
}
|
149
|
+
},
|
150
|
+
"end": "\\n",
|
151
|
+
"name": "comment.line.percentage.octave"
|
152
|
+
}
|
153
|
+
]
|
154
|
+
},
|
155
|
+
{
|
156
|
+
"begin": "(^[ \\t]+)?(?=#)",
|
157
|
+
"beginCaptures": {
|
158
|
+
"1": {
|
159
|
+
"name": "punctuation.whitespace.comment.leading.octave"
|
160
|
+
}
|
161
|
+
},
|
162
|
+
"end": "(?!\\G)",
|
163
|
+
"patterns": [
|
164
|
+
{
|
165
|
+
"begin": "#",
|
166
|
+
"beginCaptures": {
|
167
|
+
"0": {
|
168
|
+
"name": "punctuation.definition.comment.octave"
|
169
|
+
}
|
170
|
+
},
|
171
|
+
"end": "\\n",
|
172
|
+
"name": "comment.line.number-sign.octave"
|
173
|
+
}
|
174
|
+
]
|
175
|
+
}
|
176
|
+
]
|
177
|
+
},
|
178
|
+
"all_octave_keywords": {
|
179
|
+
"patterns": [
|
180
|
+
{
|
181
|
+
"include": "#octave_keyword_control"
|
182
|
+
},
|
183
|
+
{
|
184
|
+
"include": "#octave_constant_language"
|
185
|
+
},
|
186
|
+
{
|
187
|
+
"include": "#octave_storage_control"
|
188
|
+
},
|
189
|
+
{
|
190
|
+
"include": "#octave_support_function"
|
191
|
+
},
|
192
|
+
{
|
193
|
+
"include": "#octave_support_external"
|
194
|
+
}
|
195
|
+
]
|
196
|
+
},
|
197
|
+
"allofem": {
|
198
|
+
"patterns": [
|
199
|
+
{
|
200
|
+
"include": "#parens"
|
201
|
+
},
|
202
|
+
{
|
203
|
+
"include": "#curlybrackets"
|
204
|
+
},
|
205
|
+
{
|
206
|
+
"include": "#end_in_parens"
|
207
|
+
},
|
208
|
+
{
|
209
|
+
"include": "#brackets"
|
210
|
+
},
|
211
|
+
{
|
212
|
+
"include": "#string"
|
213
|
+
},
|
214
|
+
{
|
215
|
+
"include": "#string_double"
|
216
|
+
},
|
217
|
+
{
|
218
|
+
"include": "#transpose"
|
219
|
+
},
|
220
|
+
{
|
221
|
+
"include": "#all_octave_keywords"
|
222
|
+
},
|
223
|
+
{
|
224
|
+
"include": "#all_octave_comments"
|
225
|
+
},
|
226
|
+
{
|
227
|
+
"include": "#variable"
|
228
|
+
},
|
229
|
+
{
|
230
|
+
"include": "#variable_invalid"
|
231
|
+
},
|
232
|
+
{
|
233
|
+
"include": "#number"
|
234
|
+
},
|
235
|
+
{
|
236
|
+
"include": "#operators"
|
237
|
+
}
|
238
|
+
]
|
239
|
+
},
|
240
|
+
"brackets": {
|
241
|
+
"begin": "\\[",
|
242
|
+
"beginCaptures": {
|
243
|
+
"0": {
|
244
|
+
"name": "meta.brackets.octave"
|
245
|
+
}
|
246
|
+
},
|
247
|
+
"contentName": "meta.brackets.octave",
|
248
|
+
"end": "\\]",
|
249
|
+
"endCaptures": {
|
250
|
+
"0": {
|
251
|
+
"name": "meta.brackets.octave"
|
252
|
+
}
|
253
|
+
},
|
254
|
+
"patterns": [
|
255
|
+
{
|
256
|
+
"include": "#allofem"
|
257
|
+
}
|
258
|
+
]
|
259
|
+
},
|
260
|
+
"constants_override": {
|
261
|
+
"comment": "The user is trying to override MATLAB constants and functions.",
|
262
|
+
"match": "(^|\\;)\\s*(i|j|inf|Inf|nan|NaN|eps|end)\\s*=[^=]",
|
263
|
+
"name": "meta.inappropriate.octave"
|
264
|
+
},
|
265
|
+
"curlybrackets": {
|
266
|
+
"begin": "\\{",
|
267
|
+
"beginCaptures": {
|
268
|
+
"0": {
|
269
|
+
"name": "meta.brackets.curly.octave"
|
270
|
+
}
|
271
|
+
},
|
272
|
+
"contentName": "meta.brackets.curly.octave",
|
273
|
+
"end": "\\}",
|
274
|
+
"endCaptures": {
|
275
|
+
"0": {
|
276
|
+
"name": "meta.brackets.curly.octave"
|
277
|
+
}
|
278
|
+
},
|
279
|
+
"patterns": [
|
280
|
+
{
|
281
|
+
"include": "#allofem"
|
282
|
+
},
|
283
|
+
{
|
284
|
+
"include": "#end_in_parens"
|
285
|
+
}
|
286
|
+
]
|
287
|
+
},
|
288
|
+
"end_in_parens": {
|
289
|
+
"comment": "end as operator symbol",
|
290
|
+
"match": "\\bend\\b",
|
291
|
+
"name": "keyword.operator.symbols.octave"
|
292
|
+
},
|
293
|
+
"escaped_quote": {
|
294
|
+
"patterns": [
|
295
|
+
{
|
296
|
+
"match": "''",
|
297
|
+
"name": "constant.character.escape.octave"
|
298
|
+
}
|
299
|
+
]
|
300
|
+
},
|
301
|
+
"not_equal_invalid": {
|
302
|
+
"comment": "Not equal is written ~= not !=.",
|
303
|
+
"match": "\\s*!=\\s*",
|
304
|
+
"name": "invalid.illegal.invalid-inequality.octave"
|
305
|
+
},
|
306
|
+
"number": {
|
307
|
+
"comment": "Valid numbers: 1, .1, 1.1, .1e1, 1.1e1, 1e1, 1i, 1j, 1e2j",
|
308
|
+
"match": "(?<=[\\s\\-\\+\\*\\/\\\\=:\\[\\(\\{,]|^)\\d*\\.?\\d+([eE][+-]?\\d)?([0-9&&[^\\.]])*(i|j)?\\b",
|
309
|
+
"name": "constant.numeric.octave"
|
310
|
+
},
|
311
|
+
"octave_constant_language": {
|
312
|
+
"comment": "MATLAB constants",
|
313
|
+
"match": "\\b(argv|e|eps|false|F_DUPFD|F_GETFD|F_GETFL|filesep|F_SETFD|F_SETFL|i|I|inf|Inf|j|J|NA|nan|NaN|O_APPEND|O_ASYNC|O_CREAT|OCTAVE_HOME|OCTAVE_VERSION|O_EXCL|O_NONBLOCK|O_RDONLY|O_RDWR|O_SYNC|O_TRUNC|O_WRONLY|pi|program_invocation_name|program_name|P_tmpdir|realmax|realmin|SEEK_CUR|SEEK_END|SEEK_SET|SIG|stderr|stdin|stdout|true|ans|automatic_replot|beep_on_error|completion_append_char|crash_dumps_octave_core|current_script_file_name|debug_on_error|debug_on_interrupt|debug_on_warning|debug_symtab_lookups|DEFAULT_EXEC_PATH|DEFAULT_LOADPATH|default_save_format|echo_executing_commands|EDITOR|EXEC_PATH|FFTW_WISDOM_PROGRAM|fixed_point_format|gnuplot_binary|gnuplot_command_axes|gnuplot_command_end|gnuplot_command_plot|gnuplot_command_replot|gnuplot_command_splot|gnuplot_command_title|gnuplot_command_using|gnuplot_command_with|gnuplot_has_frames|history_file|history_size|ignore_function_time_stamp|IMAGEPATH|INFO_FILE|INFO_PROGRAM|__kluge_procbuf_delay__|LOADPATH|MAKEINFO_PROGRAM|max_recursion_depth|octave_core_file_format|octave_core_file_limit|octave_core_file_name|output_max_field_width|output_precision|page_output_immediately|PAGER|page_screen_output|print_answer_id_name|print_empty_dimensions|print_rhs_assign_val|PS1|PS2|PS4|save_header_format_string|save_precision|saving_history|sighup_dumps_octave_core|sigterm_dumps_octave_core|silent_functions|split_long_rows|string_fill_char|struct_levels_to_print|suppress_verbose_help_message|variables_can_hide_functions|warn_assign_as_truth_value|warn_divide_by_zero|warn_empty_list_elements|warn_fortran_indexing|warn_function_name_clash|warn_future_time_stamp|warn_imag_to_real|warn_matlab_incompatible|warn_missing_semicolon|warn_neg_dim_as_zero|warn_num_to_str|warn_precedence_change|warn_reload_forces_clear|warn_resize_on_range_error|warn_separator_insert|warn_single_quote_string|warn_str_to_num|warn_undefined_return_values|warn_variable_switch_label|whos_line_format)\\b",
|
314
|
+
"name": "constant.language.octave"
|
315
|
+
},
|
316
|
+
"octave_keyword_control": {
|
317
|
+
"comment": "Control keywords",
|
318
|
+
"match": "(?<!\\.)\\b(all_va_args|break|case|catch|continue|else|end|for|parfor|elseif|end_try_catch|end_unwind_protect|endfor|endparfor|endfunction|endif|endwhile|global|gplot|gsplot|if|otherwise|persistent|replot|return|static|start|startat|stop|switch|try|until|unwind_protect|unwind_protect_cleanup|varargin|varargout|wait|while)\\b",
|
319
|
+
"name": "keyword.control.octave"
|
320
|
+
},
|
321
|
+
"octave_storage_control": {
|
322
|
+
"comment": "File I/O",
|
323
|
+
"match": "\\b(casesen|cd|chdir|clear|dbclear|dbstatus|dbstop|dbtype|dbwhere|diary|echo|edit_history|__end__|format|gset|gshow|help|history|hold|iskeyword|isvarname|load|ls|mark_as_command|mislocked|mlock|more|munlock|run_history|save|set|show|type|unmark_command|which|who|whos)\\b",
|
324
|
+
"name": "storage.control.octave"
|
325
|
+
},
|
326
|
+
"octave_support_external": {
|
327
|
+
"comment": "External Interfaces",
|
328
|
+
"match": "\\b(airy_Ai|airy_Ai_deriv|airy_Ai_deriv_scaled|airy_Ai_scaled|airy_Bi|airy_Bi_deriv|airy_Bi_deriv_scaled|airy_Bi_scaled|airy_zero_Ai|airy_zero_Ai_deriv|airy_zero_Bi|airy_zero_Bi_deriv|atanint|bchdeco|bchenco|bessel_il_scaled|bessel_In|bessel_In_scaled|bessel_Inu|bessel_Inu_scaled|bessel_jl|bessel_Jn|bessel_Jnu|bessel_kl_scaled|bessel_Kn|bessel_Kn_scaled|bessel_Knu|bessel_Knu_scaled|bessel_lnKnu|bessel_yl|bessel_Yn|bessel_Ynu|bessel_zero_J0|bessel_zero_J1|beta_gsl|bfgsmin|bisectionstep|builtin|bwfill|bwlabel|cell2csv|celleval|Chi|chol|Ci|clausen|conicalP_0|conicalP_1|conicalP_half|conicalP_mhalf|conv2|cordflt2|coupling_3j|coupling_6j|coupling_9j|csv2cell|csvconcat|csvexplode|cyclgen|cyclpoly|dawson|debye_1|debye_2|debye_3|debye_4|deref|dispatch|dispatch_help|display_fixed_operations|dlmread|ellint_Ecomp|ellint_Kcomp|ellipj|erfc_gsl|erf_gsl|erf_Q|erf_Z|_errcore|eta|eta_int|expint_3|expint_E1|expint_E2|expint_Ei|expm1|exp_mult|exprel|exprel_2|exprel_n|fabs|fangle|farg|fatan2|fceil|fconj|fcos|fcosh|fcumprod|fcumsum|fdiag|fermi_dirac_3half|fermi_dirac_half|fermi_dirac_inc_0|fermi_dirac_int|fermi_dirac_mhalf|fexp|ffloor|fimag|finitedifference|fixed|flog|flog10|fprod|freal|freshape|fround|fsin|fsinh|fsqrt|fsum|fsumsq|ftan|ftanh|full|gamma_gsl|gamma_inc|gamma_inc_P|gamma_inc_Q|gammainv_gsl|gammastar|gdet|gdiag|gexp|gf|gfilter|_gfweight|ginv|ginverse|glog|glu|gpick|gprod|grab|grank|graycomatrix|__grcla__|__grclf__|__grcmd__|greshape|__grexit__|__grfigure__|__grgetstat__|__grhold__|__grinit__|__grishold__|__grnewset__|__grsetgraph__|gsl_sf|gsqrt|gsum|gsumsq|gtext|gzoom|hazard|houghtf|hyperg_0F1|hzeta|is_complex_sparse|isfixed|isgalois|isprimitive|is_real_sparse|is_sparse|jpgread|jpgwrite|lambert_W0|lambert_Wm1|legendre_Pl|legendre_Plm|legendre_Ql|legendre_sphPlm|legendre_sphPlm_array|leval|listen|lnbeta|lncosh|lngamma_gsl|lnpoch|lnsinh|log_1plusx|log_1plusx_mx|log_erfc|lp|make_sparse|mark_for_deletion|medfilt1|newtonstep|nnz|numgradient|numhessian|pchip_deriv|pngread|pngwrite|poch|pochrel|pretty|primpoly|psi|psi_1_int|psi_1piy|psi_n|rand|rande|randn|randp|regexp|remez|reset_fixed_operations|rotate_scale|rsdec|rsenc|samin|SBBacksub|SBEig|SBFactor|SBProd|SBSolve|Shi|Si|sinc_gsl|spabs|sparse|spfind|spimag|spinv|splu|spreal|SymBand|synchrotron_1|synchrotron_2|syndtable|taylorcoeff|transport_2|transport_3|transport_4|transport_5|trisolve|waitbar|xmlread|zeta|zeta_int|aar|aarmam|ac2poly|ac2rc|acorf|acovf|addpath|ademodce|adim|adsmax|amodce|anderson_darling_cdf|anderson_darling_test|anovan|apkconst|append_save|applylut|ar2poly|ar2rc|arburg|arcext|arfit2|ar_spa|aryule|assert|au|aucapture|auload|auplot|aurecord|ausave|autumn|average_moments|awgn|azimuth|BandToFull|BandToSparse|base64encode|battery|bchpoly|bestblk|best_dir|best_dir_cov|betaln|bfgs|bfgsmin_example|bi2de|biacovf|bilinear|bisdemo|bispec|biterr|blkdiag|blkproc|bmpwrite|bone|bound_convex|boxcar|boxplot|brighten|bs_gradient|butter|buttord|bwborder|bweuler|bwlabel|bwmorph|bwselect|calendar|cceps|cdiff|cellstr|char|cheb|cheb1ord|cheb2ord|chebwin|cheby1|cheby2|chirp|clf|clip|cmpermute|cmunique|cohere|col2im|colfilt|colorgradient|comms|compand|complex|concat|conndef|content|contents|Contents|contourf|convhull|convmtx|cool|copper|corr2|cosets|count|covm|cplxpair|cquadnd|create_lookup_table|crule|crule2d|crule2dgen|csape|csapi|csd|csvread|csvwrite|ctranspose|cumtrapz|czt|d2_min|datenum|datestr|datevec|dct|dct2|dctmtx|de2bi|deal|decimate|decode|deg2rad|del2|delaunay|delaunay3|delta_method|demo|demodmap|deriv|detrend|dfdp|dftmtx|dhbar|dilate|dispatch|distance|dlmread|dlmwrite|dos|double|drawnow|durlev|dxfwrite|edge|edit|ellip|ellipdemo|ellipj|ellipke|ellipord|__ellip_ws|__ellip_ws_min|encode|eomday|erode|example|ExampleEigenValues|ExampleGenEigenValues|expdemo|expfit|eyediagram|factor|factorial|fail|fcnchk|feedback|fem_test|ff2n|fftconv2|fieldnames|fill|fill3|filter2|filtfilt|filtic|findsym|fir1|fir2|fixedpoint|flag|flag_implicit_samplerate|flattopwin|flix|float|fmin|fminbnd|fmins|fminunc|fnder|fnplt|fnval|fplot|freqs|freqs_plot|fsort|fullfact|FullToBand|funm|fzero|gammaln|gapTest|gaussian|gausswin|gconv|gconvmtx|gdeconv|gdftmtx|gen2par|geomean|getfield|getfields|gfft|gftable|gfweight|gget|gifft|ginput|gmm_estimate|gmm_example|gmm_obj|gmm_results|gmm_variance|gmm_variance_inefficient|gquad|gquad2d|gquad2d6|gquad2dgen|gquad6|gquadnd|grace_octave_path|gradient|grayslice|grep|grid|griddata|groots|grpdelay|grule|grule2d|grule2dgen|hadamard|hammgen|hankel|hann|harmmean|hilbert|histeq|histfit|histo|histo2|histo3|histo4|hot|hsv|hup|idct|idct2|idplot|idsim|ifftshift|im2bw|im2col|imadjust|imginfo|imhist|imnoise|impad|impz|imread|imrotate|imshear|imtranslate|imwrite|innerfun|inputname|interp|interp1|interp2|interpft|intersect|invest0|invest1|invfdemo|invfreq|invfreqs|invfreqz|inz|irsa_act|irsa_actcore|irsa_check|irsa_dft|irsa_dftfp|irsa_genreal|irsa_idft|irsa_isregular|irsa_jitsp|irsa_mdsp|irsa_normalize|irsa_plotdft|irsa_resample|irsa_rgenreal|isa|isbw|isdir|isequal|isfield|isgray|isind|ismember|isprime|isrgb|issparse|isunix|jet|kaiser|kaiserord|lambertw|lattice|lauchli|leasqr|leasqrdemo|legend|legendre|levinson|lin2mu|line_min|lloyds|lookup|lookup_table|lpc|lp_test|mad|magic|makelut|MakeShears|map|mat2gray|mat2str|mdsmax|mean2|medfilt2|meshc|minimize|minpol|mkpp|mktheta|mle_estimate|mle_example|mle_obj|mle_results|mle_variance|modmap|mu2lin|mvaar|mvar|mvfilter|mvfreqz|myfeval|nanmax|nanmean|nanmedian|nanmin|nanstd|nansum|ncauer|nchoosek|ncrule|ndims|nelder_mead_min|newmark|nlfilter|nlnewmark|__nlnewmark_fcn__|nmsmax|nonzeros|normplot|now|nrm|nthroot|nze|OCTAVE_FORGE_VERSION|ode23|ode45|ode78|optimset|ordfilt2|orient|pacf|padarray|parameterize|parcor|pareto|pascal|patch|pburg|pcg|pchip|pcolor|pcr|peaks|penddot|pendulum|perms|pie|pink|plot3|__plt3__|poly2ac|poly2ar|poly_2_ex|poly2mask|poly2rc|poly2sym|poly2th|polyarea|polyconf|polyder|polyderiv|polygcd|polystab|__power|ppval|prctile|prettyprint|prettyprint_c|primes|princomp|print|prism|proplan|pulstran|pwelch|pyulear|qaskdeco|qaskenco|qtdecomp|qtgetblk|qtsetblk|quad2dc|quad2dcgen|quad2dg|quad2dggen|quadc|quadg|quadl|quadndg|quantiz|quiver|rad2deg|rainbow|randerr|randint|randsrc|rat|rats|rc2ac|rc2ar|rc2poly|rceps|read_options|read_pdb|rectpuls|resample|rgb2gray|rk2fixed|rk4fixed|rk8fixed|rmfield|rmle|rmpath|roicolor|rosser|rotparams|rotv|rref|rsdecof|rsencof|rsgenpoly|samin_example|save_vrml|sbispec|scale_data|scatter|scatterplot|select_3D_points|selmo|setdiff|setfield|setfields|setxor|sftrans|sgolay|sgolayfilt|sinvest1|slurp_file|sortrows|sound|soundsc|spdiags|specgram|speed|speye|spfun|sphcat|spline|splot|spones|sprand|sprandn|spring|spstats|spsum|sp_test|sptest|spvcat|spy|std2|stem|str2double|strcmpi|stretchlim|strfind|strmatch|strncmp|strncmpi|strsort|strtok|strtoz|struct|strvcat|summer|sumskipnan|surf|surfc|sym2poly|symerr|symfsolve|tabulate|tar|temp_name|test|test_d2_min_1|test_d2_min_2|test_d2_min_3|test_ellipj|test_fminunc_1|testimio|test_inline_1|test_min_1|test_min_2|test_min_3|test_min_4|test_minimize_1|test_nelder_mead_min_1|test_nelder_mead_min_2|test_sncndn|test_struct|test_vmesh|test_vrml_faces|test_wpolyfit|text|textread|tf2zp|tfe|thfm|tics|toeplitz|toggle_grace_use|transpose|trapz|triang|tril|trimmean|tripuls|trisolve|triu|tsademo|tsearchdemo|ucp|uintlut|unique|unix|unmkpp|unscale_parameters|vec2mat|view|vmesh|voronoi|voronoin|vrml_arrow|vrml_Background|vrml_browse|vrml_cyl|vrml_demo_tutorial_1|vrml_demo_tutorial_2|vrml_demo_tutorial_3|vrml_demo_tutorial_4|vrml_ellipsoid|vrml_faces|vrml_flatten|vrml_frame|vrml_group|vrml_kill|vrml_lines|vrml_material|vrml_parallelogram|vrml_PointLight|vrml_points|vrml_select_points|vrml_surf|vrml_text|vrml_thick_surf|vrml_transfo|wavread|wavwrite|weekday|wgn|white|wilkinson|winter|wpolyfit|wpolyfitdemo|write_pdb|wsolve|xcorr|xcorr2|xcov|xlsread|xmlwrite|y2res|zero_count|zoom|zp2tf|zplane|zscore)\\b",
|
329
|
+
"name": "support.external.octave"
|
330
|
+
},
|
331
|
+
"octave_support_function": {
|
332
|
+
"comment": "Creating Graphical User Interfaces",
|
333
|
+
"match": "\\b(abs|acos|acosh|all|angle|any|append|arg|argnames|asin|asinh|assignin|atan|atan2|atanh|atexit|bitand|bitmax|bitor|bitshift|bitxor|casesen|cat|cd|ceil|cell|cell2struct|cellstr|char|chdir|class|clc|clear|clearplot|clg|closeplot|completion_matches|conj|conv|convmtx|cos|cosh|cumprod|cumsum|dbclear|dbstatus|dbstop|dbtype|dbwhere|deconv|det|dftmtx|diag|diary|disp|document|do_string_escapes|double|dup2|echo|edit_history|__end__|erf|erfc|ERRNO|error|__error_text__|error_text|eval|evalin|exec|exist|exit|exp|eye|fclose|fcntl|fdisp|feof|ferror|feval|fflush|fft|fgetl|fgets|fieldnames|file_in_loadpath|file_in_path|filter|find|find_first_of_in_loadpath|finite|fix|floor|fmod|fnmatch|fopen|fork|format|formula|fprintf|fputs|fread|freport|frewind|fscanf|fseek|ftell|func2str|functions|fwrite|gamma|gammaln|getegid|getenv|geteuid|getgid|getpgrp|getpid|getppid|getuid|glob|graw|gset|gshow|help|history|hold|home|horzcat|ifft|imag|inline|input|input_event_hook|int16|int32|int64|int8|intmax|intmin|inv|inverse|ipermute|isalnum|isalpha|isascii|isbool|iscell|iscellstr|ischar|iscntrl|iscomplex|isdigit|isempty|isfield|isfinite|isglobal|isgraph|ishold|isieee|isinf|iskeyword|islist|islogical|islower|ismatrix|isna|isnan|is_nan_or_na|isnumeric|isprint|ispunct|isreal|isspace|isstream|isstreamoff|isstruct|isupper|isvarname|isxdigit|kbhit|keyboard|kill|lasterr|lastwarn|length|lgamma|link|linspace|list|load|log|log10|ls|lstat|lu|mark_as_command|mislocked|mkdir|mkfifo|mkstemp|mlock|more|munlock|nargin|nargout|native_float_format|ndims|nth|numel|octave_config_info|octave_tmp_file_name|ones|pause|pclose|permute|pipe|popen|printf|__print_symbol_info__|__print_symtab_info__|prod|purge_tmp_files|putenv|puts|pwd|quit|rank|readdir|readlink|read_readline_init_file|real|rehash|rename|reshape|reverse|rmdir|rmfield|roots|round|run_history|save|scanf|set|shell_cmd|show|sign|sin|sinh|size|sizeof|sleep|sort|source|splice|sprintf|sqrt|squeeze|sscanf|stat|str2func|streamoff|struct|struct2cell|sum|sumsq|symlink|system|tan|tanh|tilde_expand|tmpfile|tmpnam|toascii|__token_count__|tolower|toupper|type|typeinfo|uint16|uint32|uint64|uint8|umask|undo_string_escapes|unlink|unmark_command|usage|usleep|va_arg|va_start|vectorize|vertcat|vr_val|waitpid|warning|warranty|which|who|whos|zeros|airy|balance|besselh|besseli|besselj|besselk|bessely|betainc|chol|colloc|daspk|daspk_options|dasrt|dasrt_options|dassl|dassl_options|det|eig|endgrent|endpwent|expm|fft|fft2|fftn|fftw_wisdom|filter|find|fsolve|fsolve_options|gammainc|gcd|getgrent|getgrgid|getgrnam|getpwent|getpwnam|getpwuid|getrusage|givens|gmtime|hess|ifft|ifft2|ifftn|inv|inverse|kron|localtime|lpsolve|lpsolve_options|lsode|lsode_options|lu|max|min|minmax|mktime|odessa|odessa_options|pinv|qr|quad|quad_options|qz|rand|randn|schur|setgrent|setpwent|sort|sqrtm|strftime|strptime|svd|syl|time|abcddim|__abcddims__|acot|acoth|acsc|acsch|analdemo|anova|arch_fit|arch_rnd|arch_test|are|arma_rnd|asctime|asec|asech|autocor|autocov|autoreg_matrix|axis|axis2dlim|__axis_label__|bar|bartlett|bartlett_test|base2dec|bddemo|beep|bessel|beta|beta_cdf|betai|beta_inv|beta_pdf|beta_rnd|bin2dec|bincoeff|binomial_cdf|binomial_inv|binomial_pdf|binomial_rnd|bitcmp|bitget|bitset|blackman|blanks|bode|bode_bounds|__bodquist__|bottom_title|bug_report|buildssic|c2d|cart2pol|cart2sph|cauchy_cdf|cauchy_inv|cauchy_pdf|cauchy_rnd|cellidx|center|chisquare_cdf|chisquare_inv|chisquare_pdf|chisquare_rnd|chisquare_test_homogeneity|chisquare_test_independence|circshift|clock|cloglog|close|colormap|columns|com2str|comma|common_size|commutation_matrix|compan|complement|computer|cond|contour|controldemo|conv|cor|corrcoef|cor_test|cot|coth|cov|cputime|create_set|cross|csc|csch|ctime|ctrb|cut|d2c|damp|dare|date|dcgain|deal|deblank|dec2base|dec2bin|dec2hex|deconv|delete|DEMOcontrol|demoquat|detrend|dezero|dgkfdemo|dgram|dhinfdemo|diff|diffpara|dir|discrete_cdf|discrete_inv|discrete_pdf|discrete_rnd|dkalman|dlqe|dlqg|dlqr|dlyap|dmr2d|dmult|dot|dre|dump_prefs|duplication_matrix|durbinlevinson|empirical_cdf|empirical_inv|empirical_pdf|empirical_rnd|erfinv|__errcomm__|errorbar|__errplot__|etime|exponential_cdf|exponential_inv|exponential_pdf|exponential_rnd|f_cdf|fftconv|fftfilt|fftshift|figure|fileparts|findstr|f_inv|fir2sys|flipdim|fliplr|flipud|flops|f_pdf|fractdiff|frdemo|freqchkw|__freqresp__|freqz|freqz_plot|f_rnd|f_test_regression|fullfile|fv|fvl|gamma_cdf|gammai|gamma_inv|gamma_pdf|gamma_rnd|geometric_cdf|geometric_inv|geometric_pdf|geometric_rnd|gls|gram|gray|gray2ind|grid|h2norm|h2syn|hamming|hankel|hanning|hex2dec|hilb|hinf_ctr|hinfdemo|hinfnorm|hinfsyn|hinfsyn_chk|hinfsyn_ric|hist|hotelling_test|hotelling_test_2|housh|hsv2rgb|hurst|hypergeometric_cdf|hypergeometric_inv|hypergeometric_pdf|hypergeometric_rnd|image|imagesc|impulse|imshow|ind2gray|ind2rgb|ind2sub|index|int2str|intersection|invhilb|iqr|irr|isa|is_abcd|is_bool|is_complex|is_controllable|isdefinite|is_detectable|is_dgkf|is_digital|is_duplicate_entry|is_global|is_leap_year|isletter|is_list|is_matrix|is_observable|ispc|is_sample|is_scalar|isscalar|is_signal_list|is_siso|is_square|issquare|is_stabilizable|is_stable|isstr|is_stream|is_struct|is_symmetric|issymmetric|isunix|is_vector|isvector|jet707|kendall|kolmogorov_smirnov_cdf|kolmogorov_smirnov_test|kolmogorov_smirnov_test_2|kruskal_wallis_test|krylov|krylovb|kurtosis|laplace_cdf|laplace_inv|laplace_pdf|laplace_rnd|lcm|lin2mu|listidx|list_primes|loadaudio|loadimage|log2|logical|logistic_cdf|logistic_inv|logistic_pdf|logistic_regression|logistic_regression_derivatives|logistic_regression_likelihood|logistic_rnd|logit|loglog|loglogerr|logm|lognormal_cdf|lognormal_inv|lognormal_pdf|lognormal_rnd|logspace|lower|lqe|lqg|lqr|lsim|ltifr|lyap|mahalanobis|manova|mcnemar_test|mean|meansq|median|menu|mesh|meshdom|meshgrid|minfo|mod|moddemo|moment|mplot|mu2lin|multiplot|nargchk|nextpow2|nichols|norm|normal_cdf|normal_inv|normal_pdf|normal_rnd|not|nper|npv|ntsc2rgb|null|num2str|nyquist|obsv|ocean|ols|oneplot|ord2|orth|__outlist__|pack|packedform|packsys|parallel|paren|pascal_cdf|pascal_inv|pascal_pdf|pascal_rnd|path|periodogram|perror|place|playaudio|plot|plot_border|__plr__|__plr1__|__plr2__|__plt__|__plt1__|__plt2__|__plt2mm__|__plt2mv__|__plt2ss__|__plt2vm__|__plt2vv__|__pltopt__|__pltopt1__|pmt|poisson_cdf|poisson_inv|poisson_pdf|poisson_rnd|pol2cart|polar|poly|polyder|polyderiv|polyfit|polyinteg|polyout|polyreduce|polyval|polyvalm|popen2|postpad|pow2|ppplot|prepad|probit|prompt|prop_test_2|pv|pvl|pzmap|qconj|qcoordinate_plot|qderiv|qderivmat|qinv|qmult|qqplot|qtrans|qtransv|qtransvmat|quaternion|qzhess|qzval|randperm|range|rank|ranks|rate|record|rectangle_lw|rectangle_sw|rem|repmat|residue|rgb2hsv|rgb2ind|rgb2ntsc|rindex|rldemo|rlocus|roots|rot90|rotdim|rotg|rows|run_cmd|run_count|run_test|saveaudio|saveimage|sec|sech|semicolon|semilogx|semilogxerr|semilogy|semilogyerr|series|setaudio|setstr|shg|shift|shiftdim|sign_test|sinc|sinetone|sinewave|skewness|sombrero|sortcom|spearman|spectral_adf|spectral_xdf|spencer|sph2cart|split|ss|ss2sys|ss2tf|ss2zp|stairs|starp|statistics|std|stdnormal_cdf|stdnormal_inv|stdnormal_pdf|stdnormal_rnd|step|__stepimp__|stft|str2mat|str2num|strappend|strcat|strcmp|strerror|strjust|strrep|struct_contains|struct_elements|studentize|sub2ind|subplot|substr|subwindow|swap|swapcols|swaprows|sylvester_matrix|synthesis|sys2fir|sys2ss|sys2tf|sys2zp|sysadd|sysappend|syschnames|__syschnamesl__|syschtsam|__sysconcat__|sysconnect|syscont|__syscont_disc__|__sysdefioname__|__sysdefstname__|sysdimensions|sysdisc|sysdup|sysgetsignals|sysgettsam|sysgettype|sysgroup|__sysgroupn__|sysidx|sysmin|sysmult|sysout|sysprune|sysreorder|sysrepdemo|sysscale|syssetsignals|syssub|sysupdate|table|t_cdf|tempdir|tempname|texas_lotto|tf|tf2ss|tf2sys|__tf2sysl__|tf2zp|__tfl__|tfout|tic|t_inv|title|toc|toeplitz|top_title|t_pdf|trace|triangle_lw|triangle_sw|tril|triu|t_rnd|t_test|t_test_2|t_test_regression|tzero|tzero2|ugain|uniform_cdf|uniform_inv|uniform_pdf|uniform_rnd|union|unix|unpacksys|unwrap|upper|u_test|values|vander|var|var_test|vec|vech|version|vol|weibull_cdf|weibull_inv|weibull_pdf|weibull_rnd|welch_test|wgt1o|wiener_rnd|wilcoxon_test|xlabel|xor|ylabel|yulewalker|zgfmul|zgfslv|zginit|__zgpbal__|zgreduce|zgrownorm|zgscal|zgsgiv|zgshsr|zlabel|zp|zp2ss|__zp2ssg2__|zp2sys|zp2tf|zpout|z_test|z_test_2)\\b",
|
334
|
+
"name": "support.function.octave"
|
335
|
+
},
|
336
|
+
"operators": {
|
337
|
+
"comment": "Operator symbols",
|
338
|
+
"match": "\\s*(\\+\\+|--|\\+=|-=|\\*=|\\/=|\\^=|\\.\\*=|\\.\\/=|\\.\\^=|==|~=|>|>=|<|<=|&|&&|:|\\||\\|\\||\\+|-|\\*|\\.\\*|/|\\./|\\\\|\\.\\\\|\\^|\\.\\^|!)\\s*",
|
339
|
+
"name": "keyword.operator.symbols.octave"
|
340
|
+
},
|
341
|
+
"parens": {
|
342
|
+
"begin": "\\(",
|
343
|
+
"beginCaptures": {
|
344
|
+
"0": {
|
345
|
+
"name": "meta.parens.octave"
|
346
|
+
}
|
347
|
+
},
|
348
|
+
"contentName": "meta.parens.octave",
|
349
|
+
"end": "\\)",
|
350
|
+
"endCaptures": {
|
351
|
+
"0": {
|
352
|
+
"name": "meta.parens.octave"
|
353
|
+
}
|
354
|
+
},
|
355
|
+
"patterns": [
|
356
|
+
{
|
357
|
+
"include": "#allofem"
|
358
|
+
},
|
359
|
+
{
|
360
|
+
"include": "#end_in_parens"
|
361
|
+
}
|
362
|
+
]
|
363
|
+
},
|
364
|
+
"special_characters": {
|
365
|
+
"comment": "Operator symbols",
|
366
|
+
"match": "((\\%([\\+\\-0]?\\d{0,3}(\\.\\d{1,3})?)(c|d|e|E|f|g|G|s|((b|t)?(o|u|x|X))))|\\%\\%|\\\\(b|f|n|r|t|\\\\))",
|
367
|
+
"name": "constant.character.escape.octave"
|
368
|
+
},
|
369
|
+
"string": {
|
370
|
+
"begin": "((?<=(\\[|\\(|\\{|=|\\s|,|;))|^)'",
|
371
|
+
"beginCaptures": {
|
372
|
+
"0": {
|
373
|
+
"name": "punctuation.definition.string.begin.octave"
|
374
|
+
}
|
375
|
+
},
|
376
|
+
"end": "'(?=(\\]|\\)|\\}|=|~|<|>|&|\\||-|\\+|\\*|\\.|\\^|\\||\\s|;|,))",
|
377
|
+
"endCaptures": {
|
378
|
+
"0": {
|
379
|
+
"name": "punctuation.definition.string.end.octave"
|
380
|
+
}
|
381
|
+
},
|
382
|
+
"name": "string.quoted.single.octave",
|
383
|
+
"patterns": [
|
384
|
+
{
|
385
|
+
"include": "#escaped_quote"
|
386
|
+
},
|
387
|
+
{
|
388
|
+
"include": "#unescaped_quote"
|
389
|
+
},
|
390
|
+
{
|
391
|
+
"include": "#special_characters"
|
392
|
+
}
|
393
|
+
]
|
394
|
+
},
|
395
|
+
"string_double": {
|
396
|
+
"begin": "((?<=(\\[|\\(|\\{|=|\\s|;|:|,))|^)\"",
|
397
|
+
"beginCaptures": {
|
398
|
+
"0": {
|
399
|
+
"name": "punctuation.definition.string.begin.octave"
|
400
|
+
}
|
401
|
+
},
|
402
|
+
"end": "\"(?=(\\]|\\)|\\}|=|~|<|>|&|\\||-|\\+|\\*|\\.|\\^|\\||\\s|;|:|,))",
|
403
|
+
"endCaptures": {
|
404
|
+
"0": {
|
405
|
+
"name": "punctuation.definition.string.end.octave"
|
406
|
+
}
|
407
|
+
},
|
408
|
+
"name": "string.quoted.double.octave",
|
409
|
+
"patterns": [
|
410
|
+
{
|
411
|
+
"include": "#escaped_quote"
|
412
|
+
},
|
413
|
+
{
|
414
|
+
"include": "#unescaped_quote"
|
415
|
+
},
|
416
|
+
{
|
417
|
+
"include": "#special_characters"
|
418
|
+
}
|
419
|
+
]
|
420
|
+
},
|
421
|
+
"transpose": {
|
422
|
+
"match": "((\\w+)|(?<=\\])|(?<=\\)))\\.?'",
|
423
|
+
"name": "keyword.operator.transpose.octave"
|
424
|
+
},
|
425
|
+
"unescaped_quote": {
|
426
|
+
"patterns": [
|
427
|
+
{
|
428
|
+
"match": "'(?=.)",
|
429
|
+
"name": "invalid.illegal.unescaped-quote.octave"
|
430
|
+
}
|
431
|
+
]
|
432
|
+
},
|
433
|
+
"variable": {
|
434
|
+
"comment": "Valid variable.",
|
435
|
+
"match": "\\b[a-zA-Z]\\w*\\b",
|
436
|
+
"name": "variable.other.valid.octave"
|
437
|
+
},
|
438
|
+
"variable_assignment": {
|
439
|
+
"comment": "Incomplete variable assignment.",
|
440
|
+
"match": "=\\s*\\.{0,2}\\s*;?\\s*$\\n?",
|
441
|
+
"name": "invalid.illegal.incomplete-variable-assignment.octave"
|
442
|
+
},
|
443
|
+
"variable_invalid": {
|
444
|
+
"comment": "No variables or function names can start with a number or an underscore.",
|
445
|
+
"match": "\\b(_\\w|\\d+[_a-df-zA-DF-Z])\\w*\\b",
|
446
|
+
"name": "invalid.illegal.invalid-variable-name.octave"
|
447
|
+
}
|
448
|
+
},
|
449
|
+
"scopeName": "source.octave",
|
450
|
+
"uuid": "236A240E-F4DA-45BA-905C-4046055E6247"
|
451
|
+
}
|
@@ -0,0 +1,692 @@
|
|
1
|
+
{
|
2
|
+
"fileTypes": [
|
3
|
+
"ooc"
|
4
|
+
],
|
5
|
+
"foldingStartMarker": "/\\*\\*|\\{\\s*$",
|
6
|
+
"foldingStopMarker": "\\*\\*/|^\\s*\\}",
|
7
|
+
"keyEquivalent": "^~O",
|
8
|
+
"name": "ooc",
|
9
|
+
"patterns": [
|
10
|
+
{
|
11
|
+
"include": "#comments"
|
12
|
+
},
|
13
|
+
{
|
14
|
+
"include": "#keywords"
|
15
|
+
},
|
16
|
+
{
|
17
|
+
"include": "#imports"
|
18
|
+
},
|
19
|
+
{
|
20
|
+
"include": "#literals"
|
21
|
+
},
|
22
|
+
{
|
23
|
+
"include": "#block"
|
24
|
+
},
|
25
|
+
{
|
26
|
+
"include": "#function_decl"
|
27
|
+
},
|
28
|
+
{
|
29
|
+
"include": "#class_decl"
|
30
|
+
},
|
31
|
+
{
|
32
|
+
"include": "#interface_decl"
|
33
|
+
},
|
34
|
+
{
|
35
|
+
"include": "#cover_decl"
|
36
|
+
},
|
37
|
+
{
|
38
|
+
"include": "#function_call"
|
39
|
+
},
|
40
|
+
{
|
41
|
+
"include": "#variable_decl"
|
42
|
+
},
|
43
|
+
{
|
44
|
+
"include": "#member_access"
|
45
|
+
}
|
46
|
+
],
|
47
|
+
"repository": {
|
48
|
+
"block": {
|
49
|
+
"begin": "\\{",
|
50
|
+
"end": "}",
|
51
|
+
"name": "meta.block.ooc",
|
52
|
+
"patterns": [
|
53
|
+
{
|
54
|
+
"include": "#comments"
|
55
|
+
},
|
56
|
+
{
|
57
|
+
"include": "#keywords"
|
58
|
+
},
|
59
|
+
{
|
60
|
+
"include": "#literals"
|
61
|
+
},
|
62
|
+
{
|
63
|
+
"include": "#block"
|
64
|
+
},
|
65
|
+
{
|
66
|
+
"include": "#function_decl"
|
67
|
+
},
|
68
|
+
{
|
69
|
+
"include": "#variable_decl"
|
70
|
+
},
|
71
|
+
{
|
72
|
+
"include": "#function_call"
|
73
|
+
},
|
74
|
+
{
|
75
|
+
"include": "#member_access"
|
76
|
+
}
|
77
|
+
]
|
78
|
+
},
|
79
|
+
"class_decl": {
|
80
|
+
"captures": {
|
81
|
+
"1": {
|
82
|
+
"name": "entity.name.type.class.ooc"
|
83
|
+
},
|
84
|
+
"2": {
|
85
|
+
"name": "storage.modifier.abstract.ooc"
|
86
|
+
},
|
87
|
+
"3": {
|
88
|
+
"name": "storage.type.class.ooc"
|
89
|
+
},
|
90
|
+
"4": {
|
91
|
+
"name": "support.type.generic.ooc"
|
92
|
+
},
|
93
|
+
"5": {
|
94
|
+
"name": "storage.modifier.extends.class.ooc"
|
95
|
+
},
|
96
|
+
"6": {
|
97
|
+
"name": "entity.other.inherited-class.ooc"
|
98
|
+
}
|
99
|
+
},
|
100
|
+
"match": "(?mx)\n ([_A-Z]\\w* \\s*) : \\s* (abstract\\s+)? (class)\n (?:\n \\s*<\\s*([^<]+)\\s*>\\s*\n )?\n\t\t (?:\n \\s* (extends)\n )?\n ",
|
101
|
+
"name": "meta.class.ooc"
|
102
|
+
},
|
103
|
+
"comments": {
|
104
|
+
"patterns": [
|
105
|
+
{
|
106
|
+
"captures": {
|
107
|
+
"1": {
|
108
|
+
"name": "meta.toc-list.banner.block.ooc"
|
109
|
+
}
|
110
|
+
},
|
111
|
+
"match": "^/\\* =(\\s*.*?)\\s*= \\*/$\\n?",
|
112
|
+
"name": "comment.block.ooc"
|
113
|
+
},
|
114
|
+
{
|
115
|
+
"begin": "/\\*",
|
116
|
+
"captures": {
|
117
|
+
"0": {
|
118
|
+
"name": "punctuation.definition.comment.ooc"
|
119
|
+
}
|
120
|
+
},
|
121
|
+
"end": "\\*/",
|
122
|
+
"name": "comment.block.ooc"
|
123
|
+
},
|
124
|
+
{
|
125
|
+
"match": "\\*/.*\\n",
|
126
|
+
"name": "invalid.illegal.stray-comment-end.ooc"
|
127
|
+
},
|
128
|
+
{
|
129
|
+
"captures": {
|
130
|
+
"1": {
|
131
|
+
"name": "meta.toc-list.banner.line.ooc"
|
132
|
+
}
|
133
|
+
},
|
134
|
+
"match": "^// =(\\s*.*?)\\s*=\\s*$\\n?",
|
135
|
+
"name": "comment.line.banner.ooc"
|
136
|
+
},
|
137
|
+
{
|
138
|
+
"begin": "//",
|
139
|
+
"beginCaptures": {
|
140
|
+
"0": {
|
141
|
+
"name": "punctuation.definition.comment.ooc"
|
142
|
+
}
|
143
|
+
},
|
144
|
+
"end": "$\\n?",
|
145
|
+
"name": "comment.line.double-slash.ooc",
|
146
|
+
"patterns": [
|
147
|
+
{
|
148
|
+
"match": "(?>\\\\\\s*\\n)",
|
149
|
+
"name": "punctuation.separator.continuation.ooc"
|
150
|
+
}
|
151
|
+
]
|
152
|
+
}
|
153
|
+
]
|
154
|
+
},
|
155
|
+
"cover_decl": {
|
156
|
+
"captures": {
|
157
|
+
"1": {
|
158
|
+
"name": "entity.name.type.cover.ooc"
|
159
|
+
},
|
160
|
+
"2": {
|
161
|
+
"name": "storage.type.cover.ooc"
|
162
|
+
},
|
163
|
+
"3": {
|
164
|
+
"name": "storage.modifier.extends.from.ooc"
|
165
|
+
},
|
166
|
+
"4": {
|
167
|
+
"name": "entity.other.inherited-class.overtype.ooc"
|
168
|
+
},
|
169
|
+
"5": {
|
170
|
+
"name": "storage.modifier.extends.cover.ooc"
|
171
|
+
},
|
172
|
+
"6": {
|
173
|
+
"name": "entity.other.inherited-class.supertype.ooc"
|
174
|
+
}
|
175
|
+
},
|
176
|
+
"match": "(?mx)\n ([_A-Z]\\w* \\s*) : \\s* (cover)\n (?:\n (?:\n \\s+(from)\\s+(?:([\\s\\w\\d_\\*]+?)\\s*(?= \\s extends | [/{;] | $) )\n )\n |\n (?:\n \\s+(extends)\\s+([_A-Z]\\w*)\\s*\n )\n )*\n ",
|
177
|
+
"name": "meta.definition.cover.ooc"
|
178
|
+
},
|
179
|
+
"escaped_char": {
|
180
|
+
"match": "\\\\.",
|
181
|
+
"name": "constant.character.escape.ooc"
|
182
|
+
},
|
183
|
+
"function_call": {
|
184
|
+
"begin": "(?:((?:\\.[a-z_]\\w*)|(?:[a-z_]\\w*)(?:~[a-z_]\\w*)?))\\(",
|
185
|
+
"beginCaptures": {
|
186
|
+
"1": {
|
187
|
+
"name": "support.function.any-method.ooc"
|
188
|
+
},
|
189
|
+
"2": {
|
190
|
+
"name": "support.function.any-method.ooc"
|
191
|
+
}
|
192
|
+
},
|
193
|
+
"end": "\\)",
|
194
|
+
"name": "meta.function.call.ooc",
|
195
|
+
"patterns": [
|
196
|
+
{
|
197
|
+
"include": "#comments"
|
198
|
+
},
|
199
|
+
{
|
200
|
+
"include": "#keywords"
|
201
|
+
},
|
202
|
+
{
|
203
|
+
"include": "#literals"
|
204
|
+
},
|
205
|
+
{
|
206
|
+
"include": "#block"
|
207
|
+
},
|
208
|
+
{
|
209
|
+
"include": "#function_call"
|
210
|
+
},
|
211
|
+
{
|
212
|
+
"include": "#member_access"
|
213
|
+
}
|
214
|
+
]
|
215
|
+
},
|
216
|
+
"function_decl": {
|
217
|
+
"patterns": [
|
218
|
+
{
|
219
|
+
"begin": "(?mx)\n \t (operator\\s+(?:(?:[+\\-/\\*=!<>]|\\[\\])=?|\\[\\]|[<>=]|=|as))\n \t [\\s\\w~]*?\n \t \\(",
|
220
|
+
"beginCaptures": {
|
221
|
+
"1": {
|
222
|
+
"name": "entity.name.function.ooc"
|
223
|
+
}
|
224
|
+
},
|
225
|
+
"end": "(?mx)\\)\n\n \t\t\t(?:\\s*(->) \\s*\n \t\t (?:\n\t\t\t\t\t\t(?:(This) |\n \t\t ([A-Z_]\\w*))\n \t\t ([@*]*)\n \t\t ))?",
|
226
|
+
"endCaptures": {
|
227
|
+
"1": {
|
228
|
+
"name": "keyword.other.return-type.ooc"
|
229
|
+
},
|
230
|
+
"2": {
|
231
|
+
"name": "storage.type.class.this.ooc"
|
232
|
+
},
|
233
|
+
"3": {
|
234
|
+
"name": "storage.type.ooc"
|
235
|
+
},
|
236
|
+
"4": {
|
237
|
+
"name": "storage.modifier.pointer-arith.ooc"
|
238
|
+
}
|
239
|
+
},
|
240
|
+
"name": "meta.function.operator.ooc",
|
241
|
+
"patterns": [
|
242
|
+
{
|
243
|
+
"include": "#comments"
|
244
|
+
},
|
245
|
+
{
|
246
|
+
"include": "#keywords"
|
247
|
+
},
|
248
|
+
{
|
249
|
+
"include": "#parameters"
|
250
|
+
}
|
251
|
+
]
|
252
|
+
},
|
253
|
+
{
|
254
|
+
"begin": "(?mx)\n \t\t ([_a-z]\\w*) \\s* : \\s*\n \t\t ((?:(?:static|proto|inline|final|abstract)\\s+)*)\n \t\t (?:(extern|unmangled)(?:\\s*\\(([^\\)]+)\\))?\\s+\n \t\t ((?:(?:static|proto|inline|final|abstract)\\s+)*)\n \t\t )?\n \t\t \n \t\t (func)\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t(?:\\s*@)?\n\t\t\t\t\t\t\t\n \t\t (?:\\s*(~[A-Za-z_]\\w*))?\n \n (?:\n \\s*<\\s*([^<]+)\\s*>\n )?\n \n \t\t \\s* \\(",
|
255
|
+
"beginCaptures": {
|
256
|
+
"1": {
|
257
|
+
"name": "entity.name.function.ooc"
|
258
|
+
},
|
259
|
+
"10": {
|
260
|
+
"name": "storage.type.ooc"
|
261
|
+
},
|
262
|
+
"11": {
|
263
|
+
"name": "storage.modifier.pointer-arith.ooc"
|
264
|
+
},
|
265
|
+
"2": {
|
266
|
+
"name": "keyword.other.ooc"
|
267
|
+
},
|
268
|
+
"3": {
|
269
|
+
"name": "keyword.other.extern.ooc"
|
270
|
+
},
|
271
|
+
"4": {
|
272
|
+
"name": "support.function.c"
|
273
|
+
},
|
274
|
+
"5": {
|
275
|
+
"name": "keyword.other.ooc"
|
276
|
+
},
|
277
|
+
"6": {
|
278
|
+
"name": "storage.type.function.ooc"
|
279
|
+
},
|
280
|
+
"7": {
|
281
|
+
"name": "storage.modifier.func-tag.ooc"
|
282
|
+
},
|
283
|
+
"8": {
|
284
|
+
"name": "support.type.generic.ooc"
|
285
|
+
},
|
286
|
+
"9": {
|
287
|
+
"name": "keyword.other.return-type.ooc"
|
288
|
+
}
|
289
|
+
},
|
290
|
+
"end": "(?mx)\\)\n\t\t\t\t\t(?:\\s*(->) \\s*\n \t\t (?:\n\t\t\t\t\t\t(?:(This) | \n \t\t ([A-Z_]\\w*))\n \t\t ([@*]*)\n \t\t ))?",
|
291
|
+
"endCaptures": {
|
292
|
+
"1": {
|
293
|
+
"name": "keyword.other.ooc"
|
294
|
+
},
|
295
|
+
"2": {
|
296
|
+
"name": "storage.type.class.this.ooc"
|
297
|
+
},
|
298
|
+
"3": {
|
299
|
+
"name": "storage.type.ooc"
|
300
|
+
},
|
301
|
+
"4": {
|
302
|
+
"name": "storage.modifier.pointer-arith.ooc"
|
303
|
+
}
|
304
|
+
},
|
305
|
+
"name": "meta.function.params.ooc",
|
306
|
+
"patterns": [
|
307
|
+
{
|
308
|
+
"include": "#comments"
|
309
|
+
},
|
310
|
+
{
|
311
|
+
"include": "#keywords"
|
312
|
+
},
|
313
|
+
{
|
314
|
+
"include": "#parameters"
|
315
|
+
}
|
316
|
+
]
|
317
|
+
},
|
318
|
+
{
|
319
|
+
"captures": {
|
320
|
+
"1": {
|
321
|
+
"name": "entity.name.function.ooc"
|
322
|
+
},
|
323
|
+
"10": {
|
324
|
+
"name": "storage.type.class.this.ooc"
|
325
|
+
},
|
326
|
+
"11": {
|
327
|
+
"name": "storage.type.ooc"
|
328
|
+
},
|
329
|
+
"12": {
|
330
|
+
"name": "storage.modifier.pointer-arith.ooc"
|
331
|
+
},
|
332
|
+
"2": {
|
333
|
+
"name": "keyword.other.ooc"
|
334
|
+
},
|
335
|
+
"3": {
|
336
|
+
"name": "keyword.other.extern.ooc"
|
337
|
+
},
|
338
|
+
"4": {
|
339
|
+
"name": "support.function.c"
|
340
|
+
},
|
341
|
+
"5": {
|
342
|
+
"name": "keyword.other.ooc"
|
343
|
+
},
|
344
|
+
"6": {
|
345
|
+
"name": "storage.type.function.ooc"
|
346
|
+
},
|
347
|
+
"7": {
|
348
|
+
"name": "storage.modifier.func-tag.ooc"
|
349
|
+
},
|
350
|
+
"8": {
|
351
|
+
"name": "support.type.generic.ooc"
|
352
|
+
},
|
353
|
+
"9": {
|
354
|
+
"name": "keyword.other.return-type.ooc"
|
355
|
+
}
|
356
|
+
},
|
357
|
+
"match": "(?mx)\n \t\t ([_a-z]\\w*) \\s* : \\s*\n \t\t \n \t\t ((?:(?:static|proto|inline|final|abstract)\\s+)*)\n \t\t (?:(extern|unmangled)(?:\\s*\\(([^\\)]+)\\))?\\s+\n \t\t ((?:(?:static|proto|inline|final|abstract)\\s+)*)\n \t\t )?\n \t\t \n \t\t (func)\n\n \t\t (?:\\s*(~[A-Za-z_]\\w*))?\n \n (?:\n \\s*<\\s*([^<]+)\\s*>\n )?\n \n (?:\\s*(->) \\s*\n \t\t (?:\n\t\t\t\t\t\t\t\t(?:(This) |\n \t\t ([A-Z_]\\w*))\n \t\t ([@*]*)\n \t\t ))?\n \t\t ",
|
358
|
+
"name": "meta.function.noparams.ooc"
|
359
|
+
}
|
360
|
+
]
|
361
|
+
},
|
362
|
+
"imports": {
|
363
|
+
"begin": "\\b(?:use|include|import)\\b",
|
364
|
+
"end": ";|$",
|
365
|
+
"name": "keyword.control.import.ooc",
|
366
|
+
"patterns": [
|
367
|
+
{
|
368
|
+
"include": "#comments"
|
369
|
+
}
|
370
|
+
]
|
371
|
+
},
|
372
|
+
"interface_decl": {
|
373
|
+
"captures": {
|
374
|
+
"1": {
|
375
|
+
"name": "entity.name.type.class.ooc"
|
376
|
+
},
|
377
|
+
"2": {
|
378
|
+
"name": "storage.modifier.abstract.ooc"
|
379
|
+
},
|
380
|
+
"3": {
|
381
|
+
"name": "storage.type.class.ooc"
|
382
|
+
},
|
383
|
+
"4": {
|
384
|
+
"name": "support.type.generic.ooc"
|
385
|
+
},
|
386
|
+
"5": {
|
387
|
+
"name": "storage.modifier.extends.class.ooc"
|
388
|
+
},
|
389
|
+
"6": {
|
390
|
+
"name": "entity.other.inherited-class.ooc"
|
391
|
+
}
|
392
|
+
},
|
393
|
+
"match": "(?mx)\n ([_A-Z]\\w* \\s*) : \\s* (interface)\n (?:\n \\s*<\\s*([^<]+)\\s*>\\s*\n )?\n ",
|
394
|
+
"name": "meta.interface.ooc"
|
395
|
+
},
|
396
|
+
"keywords": {
|
397
|
+
"patterns": [
|
398
|
+
{
|
399
|
+
"match": "\\b(?:if|else|while|do|for|in|switch|match|case|return|break|continue|default)\\b",
|
400
|
+
"name": "keyword.control.ooc"
|
401
|
+
},
|
402
|
+
{
|
403
|
+
"match": "\\bthis\\b",
|
404
|
+
"name": "variable.language.this.ooc"
|
405
|
+
},
|
406
|
+
{
|
407
|
+
"captures": {
|
408
|
+
"1": {
|
409
|
+
"name": "storage.type.class.this.ooc"
|
410
|
+
},
|
411
|
+
"2": {
|
412
|
+
"name": "storage.modifier.pointer-arith.ooc"
|
413
|
+
}
|
414
|
+
},
|
415
|
+
"match": "\\b(This)([@&*]*|\\b)",
|
416
|
+
"name": "meta.type.class.this.ooc"
|
417
|
+
},
|
418
|
+
{
|
419
|
+
"match": "(?:&&|\\|\\||\\#|!)",
|
420
|
+
"name": "keyword.operator.logical.ooc"
|
421
|
+
},
|
422
|
+
{
|
423
|
+
"include": "#return_type"
|
424
|
+
},
|
425
|
+
{
|
426
|
+
"match": "(?:[<>!=]=|=>|[><])",
|
427
|
+
"name": "keyword.operator.comparison.ooc"
|
428
|
+
},
|
429
|
+
{
|
430
|
+
"match": "(?:[\\*+\\-/|&:]|<{2,3}|>{2,3})?=",
|
431
|
+
"name": "keyword.operator.assignment.ooc"
|
432
|
+
},
|
433
|
+
{
|
434
|
+
"match": "(?:[\\*\\-\\+/|&]|<{2,3}|>{2,3})",
|
435
|
+
"name": "keyword.operator.arithmetic.ooc"
|
436
|
+
},
|
437
|
+
{
|
438
|
+
"match": "\\b(?:true|false)\\b",
|
439
|
+
"name": "constant.language.boolean.ooc"
|
440
|
+
},
|
441
|
+
{
|
442
|
+
"match": "\\bnull\\b",
|
443
|
+
"name": "constant.language.null.ooc"
|
444
|
+
},
|
445
|
+
{
|
446
|
+
"match": "\\bconst\\b",
|
447
|
+
"name": "keyword.other.directive.const.ooc"
|
448
|
+
},
|
449
|
+
{
|
450
|
+
"match": "\\bstatic\\b",
|
451
|
+
"name": "keyword.other.directive.static.ooc"
|
452
|
+
},
|
453
|
+
{
|
454
|
+
"captures": {
|
455
|
+
"1": {
|
456
|
+
"name": "keyword.operator.logical.as.ooc"
|
457
|
+
},
|
458
|
+
"2": {
|
459
|
+
"name": "storage.type.ooc"
|
460
|
+
},
|
461
|
+
"3": {
|
462
|
+
"name": "storage.modifier.pointer-arith.ooc"
|
463
|
+
}
|
464
|
+
},
|
465
|
+
"match": "\\b(as)\\s*([A-Z_]\\w*)([@&]*)",
|
466
|
+
"name": "meta.operator.as.ooc"
|
467
|
+
},
|
468
|
+
{
|
469
|
+
"begin": "\\b(Func)\\s*\\(",
|
470
|
+
"beginCaptures": {
|
471
|
+
"1": {
|
472
|
+
"name": "storage.type.function.pointer.ooc"
|
473
|
+
}
|
474
|
+
},
|
475
|
+
"end": "\\)",
|
476
|
+
"name": "meta.function.pointer.ooc",
|
477
|
+
"patterns": [
|
478
|
+
{
|
479
|
+
"include": "#keywords"
|
480
|
+
},
|
481
|
+
{
|
482
|
+
"include": "#parameters"
|
483
|
+
}
|
484
|
+
]
|
485
|
+
},
|
486
|
+
{
|
487
|
+
"captures": {
|
488
|
+
"1": {
|
489
|
+
"name": "storage.type.function.pointer.ooc"
|
490
|
+
}
|
491
|
+
},
|
492
|
+
"match": "(?mx)\\bFunc\\b",
|
493
|
+
"name": "meta.function.pointer.ooc"
|
494
|
+
}
|
495
|
+
]
|
496
|
+
},
|
497
|
+
"literals": {
|
498
|
+
"patterns": [
|
499
|
+
{
|
500
|
+
"include": "#ooc_numbers"
|
501
|
+
},
|
502
|
+
{
|
503
|
+
"include": "#ooc_char"
|
504
|
+
},
|
505
|
+
{
|
506
|
+
"include": "#ooc_string"
|
507
|
+
}
|
508
|
+
]
|
509
|
+
},
|
510
|
+
"member_access": {
|
511
|
+
"match": "([a-zA-Z_]\\w*)\\s+(?=[a-zA-Z_])",
|
512
|
+
"name": "variable.other.accessed.ooc"
|
513
|
+
},
|
514
|
+
"ooc_char": {
|
515
|
+
"begin": "'",
|
516
|
+
"end": "'",
|
517
|
+
"name": "string.quoted.single.ooc",
|
518
|
+
"patterns": [
|
519
|
+
{
|
520
|
+
"include": "#escaped_char"
|
521
|
+
}
|
522
|
+
]
|
523
|
+
},
|
524
|
+
"ooc_numbers": {
|
525
|
+
"patterns": [
|
526
|
+
{
|
527
|
+
"match": "(0c[0-7]+)",
|
528
|
+
"name": "constant.numeric.integer.octal.ooc"
|
529
|
+
},
|
530
|
+
{
|
531
|
+
"match": "(0x[0-9a-fA-F]+)",
|
532
|
+
"name": "constant.numeric.integer.hexadecimal.ooc"
|
533
|
+
},
|
534
|
+
{
|
535
|
+
"match": "(0b[01]+)",
|
536
|
+
"name": "constant.numeric.integer.binary.ooc"
|
537
|
+
},
|
538
|
+
{
|
539
|
+
"match": "(?x) (?<! 0[bcx] ) (\n (?: (?:[0-9]*)\\.(?:[0-9]+) | (?:[0-9]+)\\.(?:[0-9]*) )\n (?: [eE][+\\-]?\\d+)?\n )",
|
540
|
+
"name": "constant.numeric.float.ooc"
|
541
|
+
},
|
542
|
+
{
|
543
|
+
"match": "(?x)\\b([0-9]+)(?: [eE][+\\-]?\\d+)?",
|
544
|
+
"name": "constant.numeric.integer.ooc"
|
545
|
+
}
|
546
|
+
]
|
547
|
+
},
|
548
|
+
"ooc_string": {
|
549
|
+
"begin": "\"",
|
550
|
+
"end": "\"",
|
551
|
+
"name": "string.quoted.double.ooc",
|
552
|
+
"patterns": [
|
553
|
+
{
|
554
|
+
"include": "#escaped_char"
|
555
|
+
}
|
556
|
+
]
|
557
|
+
},
|
558
|
+
"parameters": {
|
559
|
+
"patterns": [
|
560
|
+
{
|
561
|
+
"include": "#comments"
|
562
|
+
},
|
563
|
+
{
|
564
|
+
"include": "#keywords"
|
565
|
+
},
|
566
|
+
{
|
567
|
+
"captures": {
|
568
|
+
"1": {
|
569
|
+
"name": "storage.type.ooc"
|
570
|
+
},
|
571
|
+
"2": {
|
572
|
+
"name": "storage.modifier.pointer-arith.ooc"
|
573
|
+
}
|
574
|
+
},
|
575
|
+
"match": "([_A-Z]\\w*)([&@*]*)",
|
576
|
+
"name": "meta.function.nameless-typed.ooc"
|
577
|
+
},
|
578
|
+
{
|
579
|
+
"captures": {
|
580
|
+
"1": {
|
581
|
+
"name": "storage.type.ooc"
|
582
|
+
},
|
583
|
+
"2": {
|
584
|
+
"name": "storage.modifier.pointer-arith.ooc"
|
585
|
+
}
|
586
|
+
},
|
587
|
+
"match": ":\\s*([A-Z_]\\w*([@&*]*))",
|
588
|
+
"name": "meta.function.parameter.type.ooc"
|
589
|
+
},
|
590
|
+
{
|
591
|
+
"captures": {
|
592
|
+
"1": {
|
593
|
+
"name": "keyword.operator.assignment.parameter.ooc"
|
594
|
+
},
|
595
|
+
"2": {
|
596
|
+
"name": "variable.parameter.ooc"
|
597
|
+
}
|
598
|
+
},
|
599
|
+
"match": "([=.])?([a-zA-Z_]\\w*)",
|
600
|
+
"name": "meta.function.parameter.name.ooc"
|
601
|
+
}
|
602
|
+
]
|
603
|
+
},
|
604
|
+
"return_type": {
|
605
|
+
"captures": {
|
606
|
+
"1": {
|
607
|
+
"name": "keyword.other.return-type.ooc"
|
608
|
+
},
|
609
|
+
"2": {
|
610
|
+
"name": "storage.type.class.this.ooc"
|
611
|
+
},
|
612
|
+
"3": {
|
613
|
+
"name": "storage.type.ooc"
|
614
|
+
},
|
615
|
+
"4": {
|
616
|
+
"name": "storage.modifier.pointer-arith.ooc"
|
617
|
+
}
|
618
|
+
},
|
619
|
+
"match": "(?mx)\n\t\t (\\-\\>) \\s*\n\t\t (?:\n\t\t\t\t(?:(This) |\n\t\t ([A-Z_]\\w*))\n\t\t ([@*]*)\n\t\t )",
|
620
|
+
"name": "meta.function.return-type.ooc"
|
621
|
+
},
|
622
|
+
"var_explicit_decl": {
|
623
|
+
"begin": "[_a-zA-Z]\\w*\\s*(?=,|:[^=])",
|
624
|
+
"beginCaptures": {
|
625
|
+
"0": {
|
626
|
+
"name": "variable.other.ooc"
|
627
|
+
}
|
628
|
+
},
|
629
|
+
"end": "(?mx)(?:\n\t\t\t(?:\n\t\t\t :\\s*\n\t\t\t (?:\n\t\t\t (?:\n\t\t\t (?:\n\t\t\t (static) |\n\t\t\t (const) |\n\t\t\t (extern) (?:\\s* \\( \\s* ([^\\)]+) \\s* \\) )?\n\t\t\t ) \\s+\n\t\t\t )*\n )\n\t\t\t (?: (?: (This) | ([A-Z_]\\w*)) ([@&]*) )\n\t\t\t\t(?: \\s* \\<\\s*([A-Z_]\\w*)\\s*\\> )?\n\t\t\t) | ; | $ )",
|
630
|
+
"endCaptures": {
|
631
|
+
"1": {
|
632
|
+
"name": "keyword.other.ooc"
|
633
|
+
},
|
634
|
+
"2": {
|
635
|
+
"name": "keyword.other.ooc"
|
636
|
+
},
|
637
|
+
"3": {
|
638
|
+
"name": "keyword.other.ooc"
|
639
|
+
},
|
640
|
+
"4": {
|
641
|
+
"name": "storage.type.c"
|
642
|
+
},
|
643
|
+
"5": {
|
644
|
+
"name": "storage.type.class.this.ooc"
|
645
|
+
},
|
646
|
+
"6": {
|
647
|
+
"name": "storage.type.ooc"
|
648
|
+
},
|
649
|
+
"7": {
|
650
|
+
"name": "storage.modifier.pointer-arith.ooc"
|
651
|
+
},
|
652
|
+
"8": {
|
653
|
+
"name": "support.type.generic.ooc"
|
654
|
+
}
|
655
|
+
},
|
656
|
+
"name": "meta.definition.variable.explicit.ooc",
|
657
|
+
"patterns": [
|
658
|
+
{
|
659
|
+
"include": "#comments"
|
660
|
+
},
|
661
|
+
{
|
662
|
+
"match": "[_a-zA-Z]\\w*",
|
663
|
+
"name": "variable.other.ooc"
|
664
|
+
}
|
665
|
+
]
|
666
|
+
},
|
667
|
+
"var_inferred_decl": {
|
668
|
+
"captures": {
|
669
|
+
"1": {
|
670
|
+
"name": "variable.other.ooc"
|
671
|
+
},
|
672
|
+
"2": {
|
673
|
+
"name": "storage.type.ooc"
|
674
|
+
}
|
675
|
+
},
|
676
|
+
"match": "(?x)([a-zA-Z_]\\w*)\\s*(?= := )",
|
677
|
+
"name": "meta.definition.variable.inferred.ooc"
|
678
|
+
},
|
679
|
+
"variable_decl": {
|
680
|
+
"patterns": [
|
681
|
+
{
|
682
|
+
"include": "#var_inferred_decl"
|
683
|
+
},
|
684
|
+
{
|
685
|
+
"include": "#var_explicit_decl"
|
686
|
+
}
|
687
|
+
]
|
688
|
+
}
|
689
|
+
},
|
690
|
+
"scopeName": "source.ooc",
|
691
|
+
"uuid": "EECF47FE-041D-4F42-B64C-414A1EFD807F"
|
692
|
+
}
|