├── mode ├── text.js ├── plain_text.js ├── gitignore.js ├── properties.js ├── lucene.js ├── ada.js ├── gcode.js ├── sql.js └── cobol.js ├── .npmignore ├── example ├── .gitignore ├── node_modules │ ├── brace │ └── browserify ├── css-editor.js ├── json-editor.js ├── package.json ├── build.js ├── lua-editor.js ├── README.md ├── javascript-editor.js ├── coffee-editor.js ├── index.html └── index.css ├── test ├── .gitignore ├── index.html ├── fixtures │ ├── json-editor.js │ ├── javascript-editor.js │ ├── coffee-editor.js │ ├── lua-editor.js │ └── xml-editor.js ├── stringified │ └── style.js └── error-annotations.js ├── assets └── brace.png ├── snippets ├── d.js ├── red.js ├── bro.js ├── jssm.js ├── nsis.js ├── abap.js ├── ada.js ├── dot.js ├── ejs.js ├── elixir.js ├── elm.js ├── ftl.js ├── glsl.js ├── haxe.js ├── hjson.js ├── ini.js ├── jack.js ├── jade.js ├── json.js ├── jsx.js ├── kotlin.js ├── lean.js ├── less.js ├── lisp.js ├── mask.js ├── mel.js ├── nix.js ├── pig.js ├── rdoc.js ├── rust.js ├── sass.js ├── scad.js ├── scss.js ├── sjs.js ├── sparql.js ├── svg.js ├── swig.js ├── text.js ├── toml.js ├── tsx.js ├── turtle.js ├── twig.js ├── vhdl.js ├── xml.js ├── yaml.js ├── cirru.js ├── cobol.js ├── csharp.js ├── curly.js ├── eiffel.js ├── forth.js ├── gcode.js ├── golang.js ├── groovy.js ├── julia.js ├── latex.js ├── liquid.js ├── logiql.js ├── lucene.js ├── matlab.js ├── mysql.js ├── ocaml.js ├── pascal.js ├── pgsql.js ├── praat.js ├── prolog.js ├── protobuf.js ├── rhtml.js ├── scala.js ├── scheme.js ├── smarty.js ├── space.js ├── stylus.js ├── swift.js ├── fortran.js ├── gherkin.js ├── live_script.js ├── luapage.js ├── verilog.js ├── asciidoc.js ├── batchfile.js ├── c9search.js ├── gitignore.js ├── html_ruby.js ├── mipsassembler.js ├── mushcode.js ├── vbscript.js ├── apache_conf.js ├── applescript.js ├── autohotkey.js ├── coldfusion.js ├── dockerfile.js ├── handlebars.js ├── html_elixir.js ├── livescript.js ├── objectivec.js ├── plain_text.js ├── powershell.js ├── properties.js ├── typescript.js ├── assembly_x86.js ├── csound_score.js ├── soy_template.js ├── haskell_cabal.js ├── mips_assembler.js ├── razor.js ├── makefile.js ├── maze.js ├── snippets.js ├── csound_document.js ├── drools.js ├── rst.js ├── haml.js ├── lua.js ├── textile.js ├── diff.js ├── gobstones.js ├── velocity.js ├── graphqlschema.js ├── sql.js ├── abc.js ├── csound_orchestra.js ├── io.js ├── wollok.js ├── dart.js ├── tcl.js ├── jsoniq.js ├── xquery.js ├── markdown.js ├── haskell.js ├── clojure.js ├── sh.js ├── sqlserver.js ├── coffee.js ├── r.js ├── c_cpp.js ├── jsp.js ├── actionscript.js ├── vala.js ├── erlang.js ├── tex.js ├── python.js └── javascript.js ├── ext ├── error_marker.js ├── statusbar.js ├── linking.js ├── spellcheck.js └── themelist.js ├── .gitignore ├── LICENSE ├── package.json └── theme ├── gruvbox.js ├── kuroir.js ├── xcode.js ├── clouds.js ├── eclipse.js ├── vibrant_ink.js ├── merbivore.js ├── idle_fingers.js ├── solarized_dark.js ├── solarized_light.js ├── github.js ├── dawn.js ├── clouds_midnight.js ├── merbivore_soft.js ├── kr_theme.js ├── monokai.js ├── cobalt.js ├── dracula.js ├── gob.js ├── twilight.js ├── tomorrow.js ├── pastel_on_dark.js ├── textmate.js ├── mono_industrial.js ├── tomorrow_night.js ├── chrome.js └── crimson_editor.js /mode/text.js: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /.npmignore: -------------------------------------------------------------------------------- 1 | build 2 | -------------------------------------------------------------------------------- /example/.gitignore: -------------------------------------------------------------------------------- 1 | bundle.js 2 | -------------------------------------------------------------------------------- /example/node_modules/brace: -------------------------------------------------------------------------------- 1 | ../../ -------------------------------------------------------------------------------- /test/.gitignore: -------------------------------------------------------------------------------- 1 | bundle.js 2 | -------------------------------------------------------------------------------- /example/node_modules/browserify: -------------------------------------------------------------------------------- 1 | ../../node_modules/browserify -------------------------------------------------------------------------------- /assets/brace.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/datacamp/brace/master/assets/brace.png -------------------------------------------------------------------------------- /snippets/d.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/d",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="d"}) -------------------------------------------------------------------------------- /snippets/red.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/red",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=" ",t.scope="red"}) -------------------------------------------------------------------------------- /snippets/bro.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/bro",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope=""}) -------------------------------------------------------------------------------- /snippets/jssm.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/jssm",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope=""}) -------------------------------------------------------------------------------- /snippets/nsis.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/nsis",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope=""}) -------------------------------------------------------------------------------- /snippets/abap.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/abap",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="abap"}) -------------------------------------------------------------------------------- /snippets/ada.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/ada",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="ada"}) -------------------------------------------------------------------------------- /snippets/dot.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/dot",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="dot"}) -------------------------------------------------------------------------------- /snippets/ejs.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/ejs",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="ejs"}) -------------------------------------------------------------------------------- /snippets/elixir.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/elixir",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope=""}) -------------------------------------------------------------------------------- /snippets/elm.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/elm",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="elm"}) -------------------------------------------------------------------------------- /snippets/ftl.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/ftl",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="ftl"}) -------------------------------------------------------------------------------- /snippets/glsl.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/glsl",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="glsl"}) -------------------------------------------------------------------------------- /snippets/haxe.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/haxe",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="haxe"}) -------------------------------------------------------------------------------- /snippets/hjson.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/hjson",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope=""}) -------------------------------------------------------------------------------- /snippets/ini.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/ini",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="ini"}) -------------------------------------------------------------------------------- /snippets/jack.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/jack",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="jack"}) -------------------------------------------------------------------------------- /snippets/jade.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/jade",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="jade"}) -------------------------------------------------------------------------------- /snippets/json.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/json",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="json"}) -------------------------------------------------------------------------------- /snippets/jsx.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/jsx",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="jsx"}) -------------------------------------------------------------------------------- /snippets/kotlin.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/kotlin",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope=""}) -------------------------------------------------------------------------------- /snippets/lean.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/lean",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="lean"}) -------------------------------------------------------------------------------- /snippets/less.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/less",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="less"}) -------------------------------------------------------------------------------- /snippets/lisp.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/lisp",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="lisp"}) -------------------------------------------------------------------------------- /snippets/mask.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/mask",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="mask"}) -------------------------------------------------------------------------------- /snippets/mel.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/mel",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="mel"}) -------------------------------------------------------------------------------- /snippets/nix.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/nix",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="nix"}) -------------------------------------------------------------------------------- /snippets/pig.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/pig",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="pig"}) -------------------------------------------------------------------------------- /snippets/rdoc.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/rdoc",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="rdoc"}) -------------------------------------------------------------------------------- /snippets/rust.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/rust",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="rust"}) -------------------------------------------------------------------------------- /snippets/sass.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/sass",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="sass"}) -------------------------------------------------------------------------------- /snippets/scad.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/scad",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="scad"}) -------------------------------------------------------------------------------- /snippets/scss.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/scss",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="scss"}) -------------------------------------------------------------------------------- /snippets/sjs.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/sjs",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="sjs"}) -------------------------------------------------------------------------------- /snippets/sparql.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/sparql",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope=""}) -------------------------------------------------------------------------------- /snippets/svg.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/svg",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="svg"}) -------------------------------------------------------------------------------- /snippets/swig.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/swig",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="swig"}) -------------------------------------------------------------------------------- /snippets/text.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/text",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="text"}) -------------------------------------------------------------------------------- /snippets/toml.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/toml",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="toml"}) -------------------------------------------------------------------------------- /snippets/tsx.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/tsx",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="tsx"}) -------------------------------------------------------------------------------- /snippets/turtle.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/turtle",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope=""}) -------------------------------------------------------------------------------- /snippets/twig.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/twig",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="twig"}) -------------------------------------------------------------------------------- /snippets/vhdl.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/vhdl",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="vhdl"}) -------------------------------------------------------------------------------- /snippets/xml.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/xml",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="xml"}) -------------------------------------------------------------------------------- /snippets/yaml.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/yaml",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="yaml"}) -------------------------------------------------------------------------------- /snippets/cirru.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/cirru",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="cirru"}) -------------------------------------------------------------------------------- /snippets/cobol.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/cobol",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="cobol"}) -------------------------------------------------------------------------------- /snippets/csharp.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/csharp",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="csharp"}) -------------------------------------------------------------------------------- /snippets/curly.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/curly",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="curly"}) -------------------------------------------------------------------------------- /snippets/eiffel.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/eiffel",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="eiffel"}) -------------------------------------------------------------------------------- /snippets/forth.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/forth",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="forth"}) -------------------------------------------------------------------------------- /snippets/gcode.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/gcode",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="gcode"}) -------------------------------------------------------------------------------- /snippets/golang.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/golang",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="golang"}) -------------------------------------------------------------------------------- /snippets/groovy.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/groovy",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="groovy"}) -------------------------------------------------------------------------------- /snippets/julia.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/julia",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="julia"}) -------------------------------------------------------------------------------- /snippets/latex.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/latex",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="latex"}) -------------------------------------------------------------------------------- /snippets/liquid.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/liquid",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="liquid"}) -------------------------------------------------------------------------------- /snippets/logiql.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/logiql",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="logiql"}) -------------------------------------------------------------------------------- /snippets/lucene.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/lucene",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="lucene"}) -------------------------------------------------------------------------------- /snippets/matlab.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/matlab",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="matlab"}) -------------------------------------------------------------------------------- /snippets/mysql.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/mysql",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="mysql"}) -------------------------------------------------------------------------------- /snippets/ocaml.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/ocaml",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="ocaml"}) -------------------------------------------------------------------------------- /snippets/pascal.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/pascal",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="pascal"}) -------------------------------------------------------------------------------- /snippets/pgsql.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/pgsql",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="pgsql"}) -------------------------------------------------------------------------------- /snippets/praat.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/praat",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="praat"}) -------------------------------------------------------------------------------- /snippets/prolog.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/prolog",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="prolog"}) -------------------------------------------------------------------------------- /snippets/protobuf.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/protobuf",["require","exports","module"],function(e,t,n){"use strict";t.snippetText="",t.scope="protobuf"}) -------------------------------------------------------------------------------- /snippets/rhtml.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/rhtml",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="rhtml"}) -------------------------------------------------------------------------------- /snippets/scala.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/scala",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="scala"}) -------------------------------------------------------------------------------- /snippets/scheme.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/scheme",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="scheme"}) -------------------------------------------------------------------------------- /snippets/smarty.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/smarty",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="smarty"}) -------------------------------------------------------------------------------- /snippets/space.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/space",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="space"}) -------------------------------------------------------------------------------- /snippets/stylus.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/stylus",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="stylus"}) -------------------------------------------------------------------------------- /snippets/swift.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/swift",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="swift"}) -------------------------------------------------------------------------------- /snippets/fortran.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/fortran",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="fortran"}) -------------------------------------------------------------------------------- /snippets/gherkin.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/gherkin",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="gherkin"}) -------------------------------------------------------------------------------- /snippets/live_script.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/live_script",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope=""}) -------------------------------------------------------------------------------- /snippets/luapage.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/luapage",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="luapage"}) -------------------------------------------------------------------------------- /snippets/verilog.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/verilog",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="verilog"}) -------------------------------------------------------------------------------- /snippets/asciidoc.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/asciidoc",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="asciidoc"}) -------------------------------------------------------------------------------- /snippets/batchfile.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/batchfile",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="batchfile"}) -------------------------------------------------------------------------------- /snippets/c9search.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/c9search",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="c9search"}) -------------------------------------------------------------------------------- /snippets/gitignore.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/gitignore",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="gitignore"}) -------------------------------------------------------------------------------- /snippets/html_ruby.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/html_ruby",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="html_ruby"}) -------------------------------------------------------------------------------- /snippets/mipsassembler.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/mipsassembler",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope=""}) -------------------------------------------------------------------------------- /snippets/mushcode.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/mushcode",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="mushcode"}) -------------------------------------------------------------------------------- /snippets/vbscript.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/vbscript",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="vbscript"}) -------------------------------------------------------------------------------- /snippets/apache_conf.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/apache_conf",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="apache_conf"}) -------------------------------------------------------------------------------- /snippets/applescript.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/applescript",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="applescript"}) -------------------------------------------------------------------------------- /snippets/autohotkey.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/autohotkey",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="autohotkey"}) -------------------------------------------------------------------------------- /snippets/coldfusion.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/coldfusion",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="coldfusion"}) -------------------------------------------------------------------------------- /snippets/dockerfile.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/dockerfile",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="dockerfile"}) -------------------------------------------------------------------------------- /snippets/handlebars.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/handlebars",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="handlebars"}) -------------------------------------------------------------------------------- /snippets/html_elixir.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/html_elixir",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="html_elixir"}) -------------------------------------------------------------------------------- /snippets/livescript.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/livescript",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="livescript"}) -------------------------------------------------------------------------------- /snippets/objectivec.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/objectivec",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="objectivec"}) -------------------------------------------------------------------------------- /snippets/plain_text.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/plain_text",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="plain_text"}) -------------------------------------------------------------------------------- /snippets/powershell.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/powershell",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="powershell"}) -------------------------------------------------------------------------------- /snippets/properties.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/properties",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="properties"}) -------------------------------------------------------------------------------- /snippets/typescript.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/typescript",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="typescript"}) -------------------------------------------------------------------------------- /snippets/assembly_x86.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/assembly_x86",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="assembly_x86"}) -------------------------------------------------------------------------------- /snippets/csound_score.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/csound_score",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="csound_score"}) -------------------------------------------------------------------------------- /snippets/soy_template.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/soy_template",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="soy_template"}) -------------------------------------------------------------------------------- /snippets/haskell_cabal.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/haskell_cabal",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="haskell_cabal"}) -------------------------------------------------------------------------------- /snippets/mips_assembler.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/mips_assembler",["require","exports","module"],function(e,t,n){"use strict";t.snippetText=undefined,t.scope="mips_assembler"}) -------------------------------------------------------------------------------- /ext/error_marker.js: -------------------------------------------------------------------------------- 1 | 2 | ; 3 | (function() { 4 | ace.acequire(["ace/ext/error_marker"], function() {}); 5 | })(); 6 | -------------------------------------------------------------------------------- /snippets/razor.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/razor",["require","exports","module"],function(e,t,n){"use strict";t.snippetText="snippet if\n(${1} == ${2}) {\n ${3}\n}",t.scope="razor"}) -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | lib-cov 2 | *.seed 3 | *.log 4 | *.csv 5 | *.dat 6 | *.out 7 | *.pid 8 | *.gz 9 | 10 | pids 11 | logs 12 | results 13 | 14 | npm-debug.log 15 | node_modules 16 | 17 | workersrc 18 | -------------------------------------------------------------------------------- /snippets/makefile.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/makefile",["require","exports","module"],function(e,t,n){"use strict";t.snippetText="snippet ifeq\n ifeq (${1:cond0},${2:cond1})\n ${3:code}\n endif\n",t.scope="makefile"}) -------------------------------------------------------------------------------- /test/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | brace tests 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /example/css-editor.js: -------------------------------------------------------------------------------- 1 | var ace = require('brace'); 2 | require('brace/mode/css'); 3 | require('brace/theme/solarized_light'); 4 | 5 | var editor = ace.edit('css-editor'); 6 | editor.setTheme('ace/theme/solarized_light'); 7 | editor.getSession().setMode('ace/mode/css'); 8 | -------------------------------------------------------------------------------- /snippets/maze.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/maze",["require","exports","module"],function(e,t,n){"use strict";t.snippetText="snippet >\ndescription assignment\nscope maze\n -> ${1}= ${2}\n\nsnippet >\ndescription if\nscope maze\n -> IF ${2:**} THEN %${3:L} ELSE %${4:R}\n",t.scope="maze"}) -------------------------------------------------------------------------------- /snippets/snippets.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/snippets",["require","exports","module"],function(e,t,n){"use strict";t.snippetText="# snippets for making snippets :)\nsnippet snip\n snippet ${1:trigger}\n ${2}\nsnippet msnip\n snippet ${1:trigger} ${2:description}\n ${3}\nsnippet v\n {VISUAL}\n",t.scope="snippets"}) -------------------------------------------------------------------------------- /snippets/csound_document.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/csound_document",["require","exports","module"],function(e,t,n){"use strict";t.snippetText="# \nsnippet synth\n \n \n ${1}\n \n \n e\n \n \n",t.scope="csound_document"}) -------------------------------------------------------------------------------- /snippets/drools.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/drools",["require","exports","module"],function(e,t,n){"use strict";t.snippetText='\nsnippet rule\n rule "${1?:rule_name}"\n when\n ${2:// when...} \n then\n ${3:// then...}\n end\n\nsnippet query\n query ${1?:query_name}\n ${2:// find} \n end\n \nsnippet declare\n declare ${1?:type_name}\n ${2:// attributes} \n end\n\n',t.scope="drools"}) -------------------------------------------------------------------------------- /snippets/rst.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/rst",["require","exports","module"],function(e,t,n){"use strict";t.snippetText="# rst\n\nsnippet :\n :${1:field name}: ${2:field body}\nsnippet *\n *${1:Emphasis}*\nsnippet **\n **${1:Strong emphasis}**\nsnippet _\n \\`${1:hyperlink-name}\\`_\n .. _\\`$1\\`: ${2:link-block}\nsnippet =\n ${1:Title}\n =====${2:=}\n ${3}\nsnippet -\n ${1:Title}\n -----${2:-}\n ${3}\nsnippet cont:\n .. contents::\n \n",t.scope="rst"}) -------------------------------------------------------------------------------- /snippets/haml.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/haml",["require","exports","module"],function(e,t,n){"use strict";t.snippetText="snippet t\n %table\n %tr\n %th\n ${1:headers}\n %tr\n %td\n ${2:headers}\nsnippet ul\n %ul\n %li\n ${1:item}\n %li\nsnippet =rp\n = render :partial => '${1:partial}'\nsnippet =rpl\n = render :partial => '${1:partial}', :locals => {}\nsnippet =rpc\n = render :partial => '${1:partial}', :collection => @$1\n\n",t.scope="haml"}) -------------------------------------------------------------------------------- /example/json-editor.js: -------------------------------------------------------------------------------- 1 | var ace = require('brace'); 2 | require('brace/mode/json'); 3 | require('brace/theme/solarized_light'); 4 | 5 | var editor = ace.edit('json-editor'); 6 | editor.getSession().setMode('ace/mode/json'); 7 | editor.setTheme('ace/theme/solarized_light'); 8 | editor.setValue([ 9 | '{' 10 | , ' "language": "JSON",' 11 | , ' "foo": "bar",' 12 | , ' "trailing": "comma",' 13 | , '}' 14 | ].join('\n') 15 | ); 16 | editor.clearSelection(); 17 | -------------------------------------------------------------------------------- /example/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "example", 3 | "description": "example showing off how to use brace with browserify to include an ace editor in a page", 4 | "main": "example.js", 5 | "dependencies": { 6 | "browserify": "~2.13.2", 7 | "brace": "~0.1.1" 8 | }, 9 | "devDependencies": {}, 10 | "keywords": [], 11 | "author": { 12 | "name": "Thorsten Lorenz", 13 | "email": "thlorenz@gmx.de", 14 | "url": "http://thlorenz.com" 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /test/fixtures/json-editor.js: -------------------------------------------------------------------------------- 1 | var ace = require('../..'); 2 | require('../../mode/json'); 3 | require('../../theme/solarized_light'); 4 | 5 | var editor = ace.edit('json-editor'); 6 | editor.getSession().setMode('ace/mode/json'); 7 | editor.setTheme('ace/theme/solarized_light'); 8 | editor.setValue([ 9 | '{' 10 | , ' "language": "JSON",' 11 | , ' "foo": "bar",' 12 | , ' "trailing": "comma",' 13 | , '}' 14 | ].join('\n') 15 | ); 16 | editor.clearSelection(); 17 | -------------------------------------------------------------------------------- /example/build.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | var browserify = require('browserify') 3 | , fs = require('fs'); 4 | 5 | browserify() 6 | .require(require.resolve('./javascript-editor'), { entry: true }) 7 | .require(require.resolve('./coffee-editor'), { entry: true }) 8 | .require(require.resolve('./json-editor'), { entry: true }) 9 | .require(require.resolve('./lua-editor'), { entry: true }) 10 | .bundle({ debug: true }) 11 | .pipe(fs.createWriteStream(__dirname + '/bundle.js')); 12 | -------------------------------------------------------------------------------- /example/lua-editor.js: -------------------------------------------------------------------------------- 1 | var ace = require('brace'); 2 | require('brace/mode/lua'); 3 | require('brace/theme/solarized_dark'); 4 | 5 | var editor = ace.edit('lua-editor'); 6 | editor.setTheme('ace/theme/solarized_dark'); 7 | editor.getSession().setMode('ace/mode/lua'); 8 | editor.setValue([ 9 | '--- Lua' 10 | , 'for i = 5, 11, 0.5 do' 11 | , ' print(i)' 12 | , 'end' 13 | , '--- error below should be marked' 14 | , 'for i =' 15 | ].join('\n') 16 | ); 17 | editor.clearSelection(); 18 | -------------------------------------------------------------------------------- /test/fixtures/javascript-editor.js: -------------------------------------------------------------------------------- 1 | var ace = require('../..'); 2 | require('../../mode/javascript'); 3 | require('../../theme/monokai'); 4 | 5 | var editor = ace.edit('javascript-editor'); 6 | editor.getSession().setMode('ace/mode/javascript'); 7 | editor.setTheme('ace/theme/monokai'); 8 | editor.setValue([ 9 | '// JavaScript' 10 | , 'var a = 3;' 11 | , '' 12 | , '// below line has an error which is annotated' 13 | , 'var b =' 14 | ].join('\n') 15 | ); 16 | editor.clearSelection(); 17 | -------------------------------------------------------------------------------- /snippets/lua.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/lua",["require","exports","module"],function(e,t,n){"use strict";t.snippetText="snippet #!\n #!/usr/bin/env lua\n $1\nsnippet local\n local ${1:x} = ${2:1}\nsnippet fun\n function ${1:fname}(${2:...})\n ${3:-- body}\n end\nsnippet for\n for ${1:i}=${2:1},${3:10} do\n ${4:print(i)}\n end\nsnippet forp\n for ${1:i},${2:v} in pairs(${3:table_name}) do\n ${4:-- body}\n end\nsnippet fori\n for ${1:i},${2:v} in ipairs(${3:table_name}) do\n ${4:-- body}\n end\n",t.scope="lua"}) -------------------------------------------------------------------------------- /test/fixtures/coffee-editor.js: -------------------------------------------------------------------------------- 1 | var ace = require('../..'); 2 | require('../../mode/coffee'); 3 | require('../../theme/vibrant_ink'); 4 | 5 | var editor = ace.edit('coffee-editor'); 6 | editor.setTheme('ace/theme/vibrant_ink'); 7 | editor.getSession().setMode('ace/mode/coffee'); 8 | editor.setValue([ 9 | '# Coffee' 10 | , 'square = (x) -> x * x' 11 | , '' 12 | , '# below line has an error which is annotated' 13 | , 'square = x -> x * ' 14 | ].join('\n') 15 | ); 16 | editor.clearSelection(); 17 | -------------------------------------------------------------------------------- /test/fixtures/lua-editor.js: -------------------------------------------------------------------------------- 1 | var ace = require('../..'); 2 | require('../../mode/lua'); 3 | require('../../theme/solarized_dark'); 4 | 5 | var editor = ace.edit('lua-editor'); 6 | editor.setTheme('ace/theme/solarized_dark'); 7 | editor.getSession().setMode('ace/mode/lua'); 8 | editor.setValue([ 9 | '--- Lua' 10 | , 'for i = 5, 11, 0.5 do' 11 | , ' print(i)' 12 | , 'end' 13 | , '--- error below should be marked' 14 | , 'for i =' 15 | ].join('\n') 16 | ); 17 | editor.clearSelection(); 18 | -------------------------------------------------------------------------------- /test/fixtures/xml-editor.js: -------------------------------------------------------------------------------- 1 | var ace = require('../..'); 2 | require('../../mode/xml'); 3 | require('../../theme/tomorrow_night_bright'); 4 | 5 | var editor = ace.edit('xml-editor'); 6 | editor.getSession().setMode('ace/mode/xml'); 7 | editor.setTheme('ace/theme/tomorrow_night_bright'); 8 | editor.setValue([ 9 | '' 10 | , ' content' 11 | , ' ' 12 | , ' tagname<>' 13 | , '' 14 | ].join('\n') 15 | ); 16 | editor.clearSelection(); 17 | -------------------------------------------------------------------------------- /snippets/textile.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/textile",["require","exports","module"],function(e,t,n){"use strict";t.snippetText='# Jekyll post header\nsnippet header\n ---\n title: ${1:title}\n layout: post\n date: ${2:date} ${3:hour:minute:second} -05:00\n ---\n\n# Image\nsnippet img\n !${1:url}(${2:title}):${3:link}!\n\n# Table\nsnippet |\n |${1}|${2}\n\n# Link\nsnippet link\n "${1:link text}":${2:url}\n\n# Acronym\nsnippet (\n (${1:Expand acronym})${2}\n\n# Footnote\nsnippet fn\n [${1:ref number}] ${3}\n\n fn$1. ${2:footnote}\n \n',t.scope="textile"}) -------------------------------------------------------------------------------- /snippets/diff.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/diff",["require","exports","module"],function(e,t,n){"use strict";t.snippetText='# DEP-3 (http://dep.debian.net/deps/dep3/) style patch header\nsnippet header DEP-3 style header\n Description: ${1}\n Origin: ${2:vendor|upstream|other}, ${3:url of the original patch}\n Bug: ${4:url in upstream bugtracker}\n Forwarded: ${5:no|not-needed|url}\n Author: ${6:`g:snips_author`}\n Reviewed-by: ${7:name and email}\n Last-Update: ${8:`strftime("%Y-%m-%d")`}\n Applied-Upstream: ${9:upstream version|url|commit}\n\n',t.scope="diff"}) -------------------------------------------------------------------------------- /example/README.md: -------------------------------------------------------------------------------- 1 | # brace example 2 | 3 | Please investigate the following to understand how to use brace: 4 | - the page itself containing `
` place holders for the editors: **index.html** 5 | - styles to position the editors: **index.css** 6 | - the browserify build script: **build.js** 7 | - the editor initialization scripts: **coffee-editor.js**, **javascript-editor.js**, **json-editor.js**, 8 | **lua-editor.js** and **css-editor.js** (currently not used) 9 | - **coffee-editor.js** and **javascript-editor.js** also demonstrate Ace's Vim keybinding feature 10 | -------------------------------------------------------------------------------- /example/javascript-editor.js: -------------------------------------------------------------------------------- 1 | var ace = require('brace'); 2 | require('brace/mode/javascript'); 3 | require('brace/theme/monokai'); 4 | require('brace/keybinding/vim'); 5 | 6 | var editor = ace.edit('javascript-editor'); 7 | editor.getSession().setMode('ace/mode/javascript'); 8 | editor.setTheme('ace/theme/monokai'); 9 | editor.setKeyboardHandler('ace/keyboard/vim'); 10 | editor.setValue([ 11 | '// JavaScript' 12 | , 'var a = 3;' 13 | , '' 14 | , '// below line has an error which is annotated' 15 | , 'var b =' 16 | ].join('\n') 17 | ); 18 | editor.clearSelection(); 19 | -------------------------------------------------------------------------------- /example/coffee-editor.js: -------------------------------------------------------------------------------- 1 | var ace = require('brace'); 2 | require('brace/mode/coffee'); 3 | require('brace/theme/vibrant_ink'); 4 | require('brace/keybinding/vim'); 5 | 6 | var editor = ace.edit('coffee-editor'); 7 | editor.setTheme('ace/theme/vibrant_ink'); 8 | editor.setKeyboardHandler('ace/keyboard/vim'); 9 | editor.getSession().setMode('ace/mode/coffee'); 10 | editor.setValue([ 11 | '# Coffee' 12 | , 'square = (x) -> x * x' 13 | , '' 14 | , '# below line has an error which is annotated' 15 | , 'square = x -> x * ' 16 | ].join('\n') 17 | ); 18 | editor.clearSelection(); 19 | -------------------------------------------------------------------------------- /snippets/gobstones.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/gobstones",["require","exports","module"],function(e,t,n){"use strict";t.snippetText="# Procedure\nsnippet proc\n procedure ${1?:name}(${2:argument}) {\n ${3:// body...}\n }\n\n# Function\nsnippet fun\n function ${1?:name}(${2:argument}) {\n return ${3:// body...}\n }\n\n# Repeat\nsnippet rep\n repeat ${1?:times} {\n ${2:// body...}\n }\n\n# For\nsnippet for\n foreach ${1?:e} in ${2?:list} {\n ${3:// body...} \n }\n\n# If\nsnippet if\n if (${1?:condition}) {\n ${3:// body...} \n }\n\n# While\n while (${1?:condition}) {\n ${2:// body...} \n }\n",t.scope="gobstones"}) -------------------------------------------------------------------------------- /example/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | brace example 6 | 7 | 8 | 9 | 10 |

Ace Editors provided by brace

11 |
12 |
13 |
14 |
15 |
16 |
17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /snippets/velocity.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/velocity",["require","exports","module"],function(e,t,n){"use strict";t.snippetText='# macro\nsnippet #macro\n #macro ( ${1:macroName} ${2:\\$var1, [\\$var2, ...]} )\n ${3:## macro code}\n #end\n# foreach\nsnippet #foreach\n #foreach ( ${1:\\$item} in ${2:\\$collection} )\n ${3:## foreach code}\n #end\n# if\nsnippet #if\n #if ( ${1:true} )\n ${0}\n #end\n# if ... else\nsnippet #ife\n #if ( ${1:true} )\n ${2}\n #else\n ${0}\n #end\n#import\nsnippet #import\n #import ( "${1:path/to/velocity/format}" )\n# set\nsnippet #set\n #set ( $${1:var} = ${0} )\n',t.scope="velocity",t.includeScopes=["html","javascript","css"]}) -------------------------------------------------------------------------------- /snippets/graphqlschema.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/graphqlschema",["require","exports","module"],function(e,t,n){"use strict";t.snippetText="# Type Snippet\ntrigger type\nsnippet type\n type ${1:type_name} {\n ${2:type_siblings}\n }\n\n# Input Snippet\ntrigger input\nsnippet input\n input ${1:input_name} {\n ${2:input_siblings}\n }\n\n# Interface Snippet\ntrigger interface\nsnippet interface\n interface ${1:interface_name} {\n ${2:interface_siblings}\n }\n\n# Interface Snippet\ntrigger union\nsnippet union\n union ${1:union_name} = ${2:type} | ${3: type}\n\n# Enum Snippet\ntrigger enum\nsnippet enum\n enum ${1:enum_name} {\n ${2:enum_siblings}\n }\n",t.scope="graphqlschema"}) -------------------------------------------------------------------------------- /example/index.css: -------------------------------------------------------------------------------- 1 | #wrapper { 2 | position: absolute; 3 | top: 50px; 4 | bottom: 0; 5 | left: 0; 6 | right: 0; 7 | } 8 | 9 | div.editor { 10 | position: absolute; 11 | width: 50%; 12 | height: 50%; 13 | } 14 | 15 | #javascript-editor { 16 | left: 0; 17 | top: 0; 18 | } 19 | 20 | #coffee-editor { 21 | left: 0; 22 | bottom: 0; 23 | } 24 | 25 | #json-editor { 26 | top: 0; 27 | left: 50%; 28 | bottom: 0; 29 | } 30 | 31 | #lua-editor { 32 | left: 50%; 33 | bottom: 0; 34 | } 35 | 36 | h1 { 37 | position: absolute; 38 | top: 0; 39 | left: 0; 40 | right: 0; 41 | margin: auto; 42 | background-color: #272822; 43 | color: antiquewhite; 44 | border: 2px solid black; 45 | text-align: center; 46 | } 47 | -------------------------------------------------------------------------------- /mode/plain_text.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/mode/plain_text",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/text_highlight_rules","ace/mode/behaviour"], function(acequire, exports, module) { 2 | "use strict"; 3 | 4 | var oop = acequire("../lib/oop"); 5 | var TextMode = acequire("./text").Mode; 6 | var TextHighlightRules = acequire("./text_highlight_rules").TextHighlightRules; 7 | var Behaviour = acequire("./behaviour").Behaviour; 8 | 9 | var Mode = function() { 10 | this.HighlightRules = TextHighlightRules; 11 | this.$behaviour = new Behaviour(); 12 | }; 13 | 14 | oop.inherits(Mode, TextMode); 15 | 16 | (function() { 17 | this.type = "text"; 18 | this.getNextLineIndent = function(state, line, tab) { 19 | return ''; 20 | }; 21 | this.$id = "ace/mode/plain_text"; 22 | }).call(Mode.prototype); 23 | 24 | exports.Mode = Mode; 25 | }); 26 | -------------------------------------------------------------------------------- /snippets/sql.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/sql",["require","exports","module"],function(e,t,n){"use strict";t.snippetText="snippet tbl\n create table ${1:table} (\n ${2:columns}\n );\nsnippet col\n ${1:name} ${2:type} ${3:default ''} ${4:not null}\nsnippet ccol\n ${1:name} varchar2(${2:size}) ${3:default ''} ${4:not null}\nsnippet ncol\n ${1:name} number ${3:default 0} ${4:not null}\nsnippet dcol\n ${1:name} date ${3:default sysdate} ${4:not null}\nsnippet ind\n create index ${3:$1_$2} on ${1:table}(${2:column});\nsnippet uind\n create unique index ${1:name} on ${2:table}(${3:column});\nsnippet tblcom\n comment on table ${1:table} is '${2:comment}';\nsnippet colcom\n comment on column ${1:table}.${2:column} is '${3:comment}';\nsnippet addcol\n alter table ${1:table} add (${2:column} ${3:type});\nsnippet seq\n create sequence ${1:name} start with ${2:1} increment by ${3:1} minvalue ${4:1};\nsnippet s*\n select * from ${1:table}\n",t.scope="sql"}) -------------------------------------------------------------------------------- /snippets/abc.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/abc",["require","exports","module"],function(e,t,n){"use strict";t.snippetText='\nsnippet zupfnoter.print\n %%%%hn.print {"startpos": ${1:pos_y}, "t":"${2:title}", "v":[${3:voices}], "s":[[${4:syncvoices}1,2]], "f":[${5:flowlines}], "sf":[${6:subflowlines}], "j":[${7:jumplines}]}\n\nsnippet zupfnoter.note\n %%%%hn.note {"pos": [${1:pos_x},${2:pos_y}], "text": "${3:text}", "style": "${4:style}"}\n\nsnippet zupfnoter.annotation\n %%%%hn.annotation {"id": "${1:id}", "pos": [${2:pos}], "text": "${3:text}"}\n\nsnippet zupfnoter.lyrics\n %%%%hn.lyrics {"pos": [${1:x_pos},${2:y_pos}]}\n\nsnippet zupfnoter.legend\n %%%%hn.legend {"pos": [${1:x_pos},${2:y_pos}]}\n\n\n\nsnippet zupfnoter.target\n "^:${1:target}"\n\nsnippet zupfnoter.goto\n "^@${1:target}@${2:distance}"\n\nsnippet zupfnoter.annotationref\n "^#${1:target}"\n\nsnippet zupfnoter.annotation\n "^!${1:text}@${2:x_offset},${3:y_offset}"\n\n\n',t.scope="abc"}) -------------------------------------------------------------------------------- /snippets/csound_orchestra.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/csound_orchestra",["require","exports","module"],function(e,t,n){"use strict";t.snippetText="# else\nsnippet else\n else\n ${1:/* statements */}\n# elseif\nsnippet elseif\n elseif ${1:/* condition */} then\n ${2:/* statements */}\n# if\nsnippet if\n if ${1:/* condition */} then\n ${2:/* statements */}\n endif\n# instrument block\nsnippet instr\n instr ${1:name}\n ${2:/* statements */}\n endin\n# i-time while loop\nsnippet iwhile\n i${1:Index} = ${2:0}\n while i${1:Index} < ${3:/* count */} do\n ${4:/* statements */}\n i${1:Index} += 1\n od\n# k-rate while loop\nsnippet kwhile\n k${1:Index} = ${2:0}\n while k${1:Index} < ${3:/* count */} do\n ${4:/* statements */}\n k${1:Index} += 1\n od\n# opcode\nsnippet opcode\n opcode ${1:name}, ${2:/* output types */ 0}, ${3:/* input types */ 0}\n ${4:/* statements */}\n endop\n# until loop\nsnippet until\n until ${1:/* condition */} do\n ${2:/* statements */}\n od\n# while loop\nsnippet while\n while ${1:/* condition */} do\n ${2:/* statements */}\n od\n",t.scope="csound_orchestra"}) -------------------------------------------------------------------------------- /test/stringified/style.js: -------------------------------------------------------------------------------- 1 | module.exports = [ 2 | '#wrapper {' 3 | , ' position: absolute;' 4 | , ' top: 50px;' 5 | , ' bottom: 0;' 6 | , ' left: 0;' 7 | , ' right: 0;' 8 | , '}' 9 | , '' 10 | , 'div.editor { ' 11 | , ' position: absolute;' 12 | , ' width: 50%;' 13 | , ' height: 50%;' 14 | , '}' 15 | , '' 16 | , '#javascript-editor {' 17 | , ' left: 0;' 18 | , ' top: 0;' 19 | , '}' 20 | , '' 21 | , '#coffee-editor {' 22 | , ' left: 0;' 23 | , ' bottom: 0;' 24 | , '}' 25 | , '' 26 | , '#json-editor {' 27 | , ' top: 0;' 28 | , ' left: 50%;' 29 | , ' bottom: 0;' 30 | , '}' 31 | , '' 32 | , '#lua-editor {' 33 | , ' left: 50%;' 34 | , ' bottom: 0;' 35 | , '}' 36 | , '#xml-editor {' 37 | , ' left: 0;' 38 | , ' bottom: -50%;' 39 | , '}' 40 | , '' 41 | , 'h1 {' 42 | , ' position: absolute;' 43 | , ' top: 0;' 44 | , ' left: 0;' 45 | , ' right: 0;' 46 | , ' margin: auto;' 47 | , ' background-color: #272822;' 48 | , ' color: antiquewhite;' 49 | , ' border: 2px solid black;' 50 | , ' text-align: center;' 51 | , '}' 52 | ].join('\n'); 53 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Copyright 2013 Thorsten Lorenz. 2 | All rights reserved. 3 | 4 | Permission is hereby granted, free of charge, to any person 5 | obtaining a copy of this software and associated documentation 6 | files (the "Software"), to deal in the Software without 7 | restriction, including without limitation the rights to use, 8 | copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the 10 | Software is furnished to do so, subject to the following 11 | conditions: 12 | 13 | The above copyright notice and this permission notice shall be 14 | included in all copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 17 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 18 | OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 19 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 20 | HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 21 | WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 22 | FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 23 | OTHER DEALINGS IN THE SOFTWARE. 24 | -------------------------------------------------------------------------------- /snippets/io.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/io",["require","exports","module"],function(e,t,n){"use strict";t.snippets=[{content:"assertEquals(${1:expected}, ${2:expr})",name:"assertEquals",scope:"io",tabTrigger:"ae"},{content:"${1:${2:newValue} := ${3:Object} }clone do(\n $0\n)",name:"clone do",scope:"io",tabTrigger:"cdo"},{content:'docSlot("${1:slotName}", "${2:documentation}")',name:"docSlot",scope:"io",tabTrigger:"ds"},{content:"(${1:header,}\n ${2:body}\n)$0",keyEquivalent:"@(",name:"Indented Bracketed Line",scope:"io",tabTrigger:"("},{content:"\n $0\n",keyEquivalent:"\r",name:"Special: Return Inside Empty Parenthesis",scope:"io meta.empty-parenthesis.io, io meta.comma-parenthesis.io"},{content:"${1:methodName} := method(${2:args,}\n $0\n)",name:"method",scope:"io",tabTrigger:"m"},{content:'newSlot("${1:slotName}", ${2:defaultValue}, "${3:docString}")$0',name:"newSlot",scope:"io",tabTrigger:"ns"},{content:"${1:name} := Object clone do(\n $0\n)",name:"Object clone do",scope:"io",tabTrigger:"ocdo"},{content:"test${1:SomeFeature} := method(\n $0\n)",name:"testMethod",scope:"io",tabTrigger:"ts"},{content:"${1:Something}Test := ${2:UnitTest} clone do(\n $0\n)",name:"UnitTest",scope:"io",tabTrigger:"ut"}],t.scope="io"}) -------------------------------------------------------------------------------- /snippets/wollok.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/wollok",["require","exports","module"],function(e,t,n){"use strict";t.snippetText='##\n## Basic Java packages and import\nsnippet im\n import\nsnippet w.l\n wollok.lang\nsnippet w.i\n wollok.lib\n\n## Class and object\nsnippet cl\n class ${1:`Filename("", "untitled")`} ${2}\nsnippet obj\n object ${1:`Filename("", "untitled")`} ${2:inherits Parent}${3}\nsnippet te\n test ${1:`Filename("", "untitled")`}\n\n##\n## Enhancements\nsnippet inh\n inherits\n\n##\n## Comments\nsnippet /*\n /*\n * ${1}\n */\n\n##\n## Control Statements\nsnippet el\n else\nsnippet if\n if (${1}) ${2}\n\n##\n## Create a Method\nsnippet m\n method ${1:method}(${2}) ${5}\n\n## \n## Tests\nsnippet as\n assert.equals(${1:expected}, ${2:actual})\n\n##\n## Exceptions\nsnippet ca\n catch ${1:e} : (${2:Exception} ) ${3}\nsnippet thr\n throw\nsnippet try\n try {\n ${3}\n } catch ${1:e} : ${2:Exception} {\n }\n\n##\n## Javadocs\nsnippet /**\n /**\n * ${1}\n */\n\n##\n## Print Methods\nsnippet print\n console.println("${1:Message}")\n\n##\n## Setter and Getter Methods\nsnippet set\n method set${1:}(${2:}) {\n $1 = $2\n }\nsnippet get\n method get${1:}() {\n return ${1:};\n }\n\n##\n## Terminate Methods or Loops\nsnippet re\n return',t.scope="wollok"}) -------------------------------------------------------------------------------- /snippets/dart.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/dart",["require","exports","module"],function(e,t,n){"use strict";t.snippetText="snippet lib\n library ${1};\n ${2}\nsnippet im\n import '${1}';\n ${2}\nsnippet pa\n part '${1}';\n ${2}\nsnippet pao\n part of ${1};\n ${2}\nsnippet main\n void main() {\n ${1:/* code */}\n }\nsnippet st\n static ${1}\nsnippet fi\n final ${1}\nsnippet re\n return ${1}\nsnippet br\n break;\nsnippet th\n throw ${1}\nsnippet cl\n class ${1:`Filename(\"\", \"untitled\")`} ${2}\nsnippet imp\n implements ${1}\nsnippet ext\n extends ${1}\nsnippet if\n if (${1:true}) {\n ${2}\n }\nsnippet ife\n if (${1:true}) {\n ${2}\n } else {\n ${3}\n }\nsnippet el\n else\nsnippet sw\n switch (${1}) {\n ${2}\n }\nsnippet cs\n case ${1}:\n ${2}\nsnippet de\n default:\n ${1}\nsnippet for\n for (var ${2:i} = 0, len = ${1:things}.length; $2 < len; ${3:++}$2) {\n ${4:$1[$2]}\n }\nsnippet fore\n for (final ${2:item} in ${1:itemList}) {\n ${3:/* code */}\n }\nsnippet wh\n while (${1:/* condition */}) {\n ${2:/* code */}\n }\nsnippet dowh\n do {\n ${2:/* code */}\n } while (${1:/* condition */});\nsnippet as\n assert(${1:/* condition */});\nsnippet try\n try {\n ${2}\n } catch (${1:Exception e}) {\n }\nsnippet tryf\n try {\n ${2}\n } catch (${1:Exception e}) {\n } finally {\n }\n",t.scope="dart"}) -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "brace", 3 | "version": "0.10.0", 4 | "description": "browserify compatible version of the ace editor.", 5 | "main": "index.js", 6 | "typings": "index.d.ts", 7 | "scripts": { 8 | "update": "(cd build && node ./update && node ./update-ts)", 9 | "test": "browserify test/*.js > test/bundle.js --debug && opener test/index.html" 10 | }, 11 | "repository": { 12 | "type": "git", 13 | "url": "git://github.com/thlorenz/brace.git" 14 | }, 15 | "homepage": "https://github.com/thlorenz/brace", 16 | "dependencies": { 17 | "w3c-blob": "0.0.1" 18 | }, 19 | "devDependencies": { 20 | "browserify": "~4.2.0", 21 | "opener": "~1.3.0", 22 | "shelljs": "~0.2.6", 23 | "tape": "~4.0.0", 24 | "uglify-js": "~2.2.5" 25 | }, 26 | "keywords": [ 27 | "ace", 28 | "editor", 29 | "browser", 30 | "package", 31 | "bundle", 32 | "inline", 33 | "browserify" 34 | ], 35 | "author": { 36 | "name": "Thorsten Lorenz", 37 | "email": "thlorenz@gmx.de", 38 | "url": "http://thlorenz.com" 39 | }, 40 | "license": "MIT", 41 | "engine": { 42 | "node": ">=0.6" 43 | }, 44 | "testling": { 45 | "files": "test/*.js", 46 | "browsers": [ 47 | "ie/8..latest", 48 | "firefox/21..latest", 49 | "firefox/nightly", 50 | "chrome/26..latest", 51 | "chrome/canary", 52 | "opera/12..latest", 53 | "opera/next", 54 | "safari/5.1..latest", 55 | "ipad/6.0..latest", 56 | "iphone/6.0..latest", 57 | "android-browser/4.2..latest" 58 | ] 59 | } 60 | } 61 | -------------------------------------------------------------------------------- /snippets/tcl.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/tcl",["require","exports","module"],function(e,t,n){"use strict";t.snippetText="# #!/usr/bin/env tclsh\nsnippet #!\n #!/usr/bin/env tclsh\n \n# Process\nsnippet pro\n proc ${1:function_name} {${2:args}} {\n ${3:#body ...}\n }\n#xif\nsnippet xif\n ${1:expr}? ${2:true} : ${3:false}\n# Conditional\nsnippet if\n if {${1}} {\n ${2:# body...}\n }\n# Conditional if..else\nsnippet ife\n if {${1}} {\n ${2:# body...}\n } else {\n ${3:# else...}\n }\n# Conditional if..elsif..else\nsnippet ifee\n if {${1}} {\n ${2:# body...}\n } elseif {${3}} {\n ${4:# elsif...}\n } else {\n ${5:# else...}\n }\n# If catch then\nsnippet ifc\n if { [catch {${1:#do something...}} ${2:err}] } {\n ${3:# handle failure...}\n }\n# Catch\nsnippet catch\n catch {${1}} ${2:err} ${3:options}\n# While Loop\nsnippet wh\n while {${1}} {\n ${2:# body...}\n }\n# For Loop\nsnippet for\n for {set ${2:var} 0} {$$2 < ${1:count}} {${3:incr} $2} {\n ${4:# body...}\n }\n# Foreach Loop\nsnippet fore\n foreach ${1:x} {${2:#list}} {\n ${3:# body...}\n }\n# after ms script...\nsnippet af\n after ${1:ms} ${2:#do something}\n# after cancel id\nsnippet afc\n after cancel ${1:id or script}\n# after idle\nsnippet afi\n after idle ${1:script}\n# after info id\nsnippet afin\n after info ${1:id}\n# Expr\nsnippet exp\n expr {${1:#expression here}}\n# Switch\nsnippet sw\n switch ${1:var} {\n ${3:pattern 1} {\n ${4:#do something}\n }\n default {\n ${2:#do something}\n }\n }\n# Case\nsnippet ca\n ${1:pattern} {\n ${2:#do something}\n }${3}\n# Namespace eval\nsnippet ns\n namespace eval ${1:path} {${2:#script...}}\n# Namespace current\nsnippet nsc\n namespace current\n",t.scope="tcl"}) -------------------------------------------------------------------------------- /snippets/jsoniq.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/jsoniq",["require","exports","module"],function(e,t,n){"use strict";t.snippetText='snippet for\n for $${1:item} in ${2:expr}\nsnippet return\n return ${1:expr}\nsnippet import\n import module namespace ${1:ns} = "${2:http://www.example.com/}";\nsnippet some\n some $${1:varname} in ${2:expr} satisfies ${3:expr}\nsnippet every\n every $${1:varname} in ${2:expr} satisfies ${3:expr}\nsnippet if\n if(${1:true}) then ${2:expr} else ${3:true}\nsnippet switch\n switch(${1:"foo"})\n case ${2:"foo"}\n return ${3:true}\n default return ${4:false}\nsnippet try\n try { ${1:expr} } catch ${2:*} { ${3:expr} }\nsnippet tumbling\n for tumbling window $${1:varname} in ${2:expr}\n start at $${3:start} when ${4:expr}\n end at $${5:end} when ${6:expr}\n return ${7:expr}\nsnippet sliding\n for sliding window $${1:varname} in ${2:expr}\n start at $${3:start} when ${4:expr}\n end at $${5:end} when ${6:expr}\n return ${7:expr}\nsnippet let\n let $${1:varname} := ${2:expr}\nsnippet group\n group by $${1:varname} := ${2:expr}\nsnippet order\n order by ${1:expr} ${2:descending}\nsnippet stable\n stable order by ${1:expr}\nsnippet count\n count $${1:varname}\nsnippet ordered\n ordered { ${1:expr} }\nsnippet unordered\n unordered { ${1:expr} }\nsnippet treat \n treat as ${1:expr}\nsnippet castable\n castable as ${1:atomicType}\nsnippet cast\n cast as ${1:atomicType}\nsnippet typeswitch\n typeswitch(${1:expr})\n case ${2:type} return ${3:expr}\n default return ${4:expr}\nsnippet var\n declare variable $${1:varname} := ${2:expr};\nsnippet fn\n declare function ${1:ns}:${2:name}(){\n ${3:expr}\n };\nsnippet module\n module namespace ${1:ns} = "${2:http://www.example.com}";\n',t.scope="jsoniq"}) -------------------------------------------------------------------------------- /snippets/xquery.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/xquery",["require","exports","module"],function(e,t,n){"use strict";t.snippetText='snippet for\n for $${1:item} in ${2:expr}\nsnippet return\n return ${1:expr}\nsnippet import\n import module namespace ${1:ns} = "${2:http://www.example.com/}";\nsnippet some\n some $${1:varname} in ${2:expr} satisfies ${3:expr}\nsnippet every\n every $${1:varname} in ${2:expr} satisfies ${3:expr}\nsnippet if\n if(${1:true}) then ${2:expr} else ${3:true}\nsnippet switch\n switch(${1:"foo"})\n case ${2:"foo"}\n return ${3:true}\n default return ${4:false}\nsnippet try\n try { ${1:expr} } catch ${2:*} { ${3:expr} }\nsnippet tumbling\n for tumbling window $${1:varname} in ${2:expr}\n start at $${3:start} when ${4:expr}\n end at $${5:end} when ${6:expr}\n return ${7:expr}\nsnippet sliding\n for sliding window $${1:varname} in ${2:expr}\n start at $${3:start} when ${4:expr}\n end at $${5:end} when ${6:expr}\n return ${7:expr}\nsnippet let\n let $${1:varname} := ${2:expr}\nsnippet group\n group by $${1:varname} := ${2:expr}\nsnippet order\n order by ${1:expr} ${2:descending}\nsnippet stable\n stable order by ${1:expr}\nsnippet count\n count $${1:varname}\nsnippet ordered\n ordered { ${1:expr} }\nsnippet unordered\n unordered { ${1:expr} }\nsnippet treat \n treat as ${1:expr}\nsnippet castable\n castable as ${1:atomicType}\nsnippet cast\n cast as ${1:atomicType}\nsnippet typeswitch\n typeswitch(${1:expr})\n case ${2:type} return ${3:expr}\n default return ${4:expr}\nsnippet var\n declare variable $${1:varname} := ${2:expr};\nsnippet fn\n declare function ${1:ns}:${2:name}(){\n ${3:expr}\n };\nsnippet module\n module namespace ${1:ns} = "${2:http://www.example.com}";\n',t.scope="xquery"}) -------------------------------------------------------------------------------- /mode/gitignore.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/mode/gitignore_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"], function(acequire, exports, module) { 2 | "use strict"; 3 | 4 | var oop = acequire("../lib/oop"); 5 | var TextHighlightRules = acequire("./text_highlight_rules").TextHighlightRules; 6 | 7 | var GitignoreHighlightRules = function() { 8 | this.$rules = { 9 | "start" : [ 10 | { 11 | token : "comment", 12 | regex : /^\s*#.*$/ 13 | }, { 14 | token : "keyword", // negated patterns 15 | regex : /^\s*!.*$/ 16 | } 17 | ] 18 | }; 19 | 20 | this.normalizeRules(); 21 | }; 22 | 23 | GitignoreHighlightRules.metaData = { 24 | fileTypes: ['gitignore'], 25 | name: 'Gitignore' 26 | }; 27 | 28 | oop.inherits(GitignoreHighlightRules, TextHighlightRules); 29 | 30 | exports.GitignoreHighlightRules = GitignoreHighlightRules; 31 | }); 32 | 33 | ace.define("ace/mode/gitignore",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/gitignore_highlight_rules"], function(acequire, exports, module) { 34 | "use strict"; 35 | 36 | var oop = acequire("../lib/oop"); 37 | var TextMode = acequire("./text").Mode; 38 | var GitignoreHighlightRules = acequire("./gitignore_highlight_rules").GitignoreHighlightRules; 39 | 40 | var Mode = function() { 41 | this.HighlightRules = GitignoreHighlightRules; 42 | this.$behaviour = this.$defaultBehaviour; 43 | }; 44 | oop.inherits(Mode, TextMode); 45 | 46 | (function() { 47 | this.lineCommentStart = "#"; 48 | this.$id = "ace/mode/gitignore"; 49 | }).call(Mode.prototype); 50 | 51 | exports.Mode = Mode; 52 | }); 53 | -------------------------------------------------------------------------------- /snippets/markdown.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/markdown",["require","exports","module"],function(e,t,n){"use strict";t.snippetText='# Markdown\n\n# Includes octopress (http://octopress.org/) snippets\n\nsnippet [\n [${1:text}](http://${2:address} "${3:title}")\nsnippet [*\n [${1:link}](${2:`@*`} "${3:title}")${4}\n\nsnippet [:\n [${1:id}]: http://${2:url} "${3:title}"\nsnippet [:*\n [${1:id}]: ${2:`@*`} "${3:title}"\n\nsnippet ![\n ![${1:alttext}](${2:/images/image.jpg} "${3:title}")\nsnippet ![*\n ![${1:alt}](${2:`@*`} "${3:title}")${4}\n\nsnippet ![:\n ![${1:id}]: ${2:url} "${3:title}"\nsnippet ![:*\n ![${1:id}]: ${2:`@*`} "${3:title}"\n\nsnippet ===\nregex /^/=+/=*//\n ${PREV_LINE/./=/g}\n \n ${0}\nsnippet ---\nregex /^/-+/-*//\n ${PREV_LINE/./-/g}\n \n ${0}\nsnippet blockquote\n {% blockquote %}\n ${1:quote}\n {% endblockquote %}\n\nsnippet blockquote-author\n {% blockquote ${1:author}, ${2:title} %}\n ${3:quote}\n {% endblockquote %}\n\nsnippet blockquote-link\n {% blockquote ${1:author} ${2:URL} ${3:link_text} %}\n ${4:quote}\n {% endblockquote %}\n\nsnippet bt-codeblock-short\n ```\n ${1:code_snippet}\n ```\n\nsnippet bt-codeblock-full\n ``` ${1:language} ${2:title} ${3:URL} ${4:link_text}\n ${5:code_snippet}\n ```\n\nsnippet codeblock-short\n {% codeblock %}\n ${1:code_snippet}\n {% endcodeblock %}\n\nsnippet codeblock-full\n {% codeblock ${1:title} lang:${2:language} ${3:URL} ${4:link_text} %}\n ${5:code_snippet}\n {% endcodeblock %}\n\nsnippet gist-full\n {% gist ${1:gist_id} ${2:filename} %}\n\nsnippet gist-short\n {% gist ${1:gist_id} %}\n\nsnippet img\n {% img ${1:class} ${2:URL} ${3:width} ${4:height} ${5:title_text} ${6:alt_text} %}\n\nsnippet youtube\n {% youtube ${1:video_id} %}\n\n# The quote should appear only once in the text. It is inherently part of it.\n# See http://octopress.org/docs/plugins/pullquote/ for more info.\n\nsnippet pullquote\n {% pullquote %}\n ${1:text} {" ${2:quote} "} ${3:text}\n {% endpullquote %}\n',t.scope="markdown"}) -------------------------------------------------------------------------------- /snippets/haskell.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/haskell",["require","exports","module"],function(e,t,n){"use strict";t.snippetText="snippet lang\n {-# LANGUAGE ${1:OverloadedStrings} #-}\nsnippet info\n -- |\n -- Module : ${1:Module.Namespace}\n -- Copyright : ${2:Author} ${3:2011-2012}\n -- License : ${4:BSD3}\n --\n -- Maintainer : ${5:email@something.com}\n -- Stability : ${6:experimental}\n -- Portability : ${7:unknown}\n --\n -- ${8:Description}\n --\nsnippet import\n import ${1:Data.Text}\nsnippet import2\n import ${1:Data.Text} (${2:head})\nsnippet importq\n import qualified ${1:Data.Text} as ${2:T}\nsnippet inst\n instance ${1:Monoid} ${2:Type} where\n ${3}\nsnippet type\n type ${1:Type} = ${2:Type}\nsnippet data\n data ${1:Type} = ${2:$1} ${3:Int}\nsnippet newtype\n newtype ${1:Type} = ${2:$1} ${3:Int}\nsnippet class\n class ${1:Class} a where\n ${2}\nsnippet module\n module `substitute(substitute(expand('%:r'), '[/\\\\]','.','g'),'^\\%(\\l*\\.\\)\\?','','')` (\n ) where\n `expand('%') =~ 'Main' ? \"\\n\\nmain = do\\n print \\\"hello world\\\"\" : \"\"`\n\nsnippet const\n ${1:name} :: ${2:a}\n $1 = ${3:undefined}\nsnippet fn\n ${1:fn} :: ${2:a} -> ${3:a}\n $1 ${4} = ${5:undefined}\nsnippet fn2\n ${1:fn} :: ${2:a} -> ${3:a} -> ${4:a}\n $1 ${5} = ${6:undefined}\nsnippet ap\n ${1:map} ${2:fn} ${3:list}\nsnippet do\n do\n \nsnippet \u03bb\n \\${1:x} -> ${2}\nsnippet \\\n \\${1:x} -> ${2}\nsnippet <-\n ${1:a} <- ${2:m a}\nsnippet \u2190\n ${1:a} <- ${2:m a}\nsnippet ->\n ${1:m a} -> ${2:a}\nsnippet \u2192\n ${1:m a} -> ${2:a}\nsnippet tup\n (${1:a}, ${2:b})\nsnippet tup2\n (${1:a}, ${2:b}, ${3:c})\nsnippet tup3\n (${1:a}, ${2:b}, ${3:c}, ${4:d})\nsnippet rec\n ${1:Record} { ${2:recFieldA} = ${3:undefined}\n , ${4:recFieldB} = ${5:undefined}\n }\nsnippet case\n case ${1:something} of\n ${2} -> ${3}\nsnippet let\n let ${1} = ${2}\n in ${3}\nsnippet where\n where\n ${1:fn} = ${2:undefined}\n",t.scope="haskell"}) -------------------------------------------------------------------------------- /ext/statusbar.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/ext/statusbar",["require","exports","module","ace/lib/dom","ace/lib/lang"], function(acequire, exports, module) { 2 | "use strict"; 3 | var dom = acequire("ace/lib/dom"); 4 | var lang = acequire("ace/lib/lang"); 5 | 6 | var StatusBar = function(editor, parentNode) { 7 | this.element = dom.createElement("div"); 8 | this.element.className = "ace_status-indicator"; 9 | this.element.style.cssText = "display: inline-block;"; 10 | parentNode.appendChild(this.element); 11 | 12 | var statusUpdate = lang.delayedCall(function(){ 13 | this.updateStatus(editor); 14 | }.bind(this)).schedule.bind(null, 100); 15 | 16 | editor.on("changeStatus", statusUpdate); 17 | editor.on("changeSelection", statusUpdate); 18 | editor.on("keyboardActivity", statusUpdate); 19 | }; 20 | 21 | (function(){ 22 | this.updateStatus = function(editor) { 23 | var status = []; 24 | function add(str, separator) { 25 | str && status.push(str, separator || "|"); 26 | } 27 | 28 | add(editor.keyBinding.getStatusText(editor)); 29 | if (editor.commands.recording) 30 | add("REC"); 31 | 32 | var sel = editor.selection; 33 | var c = sel.lead; 34 | 35 | if (!sel.isEmpty()) { 36 | var r = editor.getSelectionRange(); 37 | add("(" + (r.end.row - r.start.row) + ":" +(r.end.column - r.start.column) + ")", " "); 38 | } 39 | add(c.row + ":" + c.column, " "); 40 | if (sel.rangeCount) 41 | add("[" + sel.rangeCount + "]", " "); 42 | status.pop(); 43 | this.element.textContent = status.join(""); 44 | }; 45 | }).call(StatusBar.prototype); 46 | 47 | exports.StatusBar = StatusBar; 48 | 49 | }); 50 | (function() { 51 | ace.acequire(["ace/ext/statusbar"], function() {}); 52 | })(); 53 | -------------------------------------------------------------------------------- /snippets/clojure.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/clojure",["require","exports","module"],function(e,t,n){"use strict";t.snippetText='snippet comm\n (comment\n ${1}\n )\nsnippet condp\n (condp ${1:pred} ${2:expr}\n ${3})\nsnippet def\n (def ${1})\nsnippet defm\n (defmethod ${1:multifn} "${2:doc-string}" ${3:dispatch-val} [${4:args}]\n ${5})\nsnippet defmm\n (defmulti ${1:name} "${2:doc-string}" ${3:dispatch-fn})\nsnippet defma\n (defmacro ${1:name} "${2:doc-string}" ${3:dispatch-fn})\nsnippet defn\n (defn ${1:name} "${2:doc-string}" [${3:arg-list}]\n ${4})\nsnippet defp\n (defprotocol ${1:name}\n ${2})\nsnippet defr\n (defrecord ${1:name} [${2:fields}]\n ${3:protocol}\n ${4})\nsnippet deft\n (deftest ${1:name}\n (is (= ${2:assertion})))\n ${3})\nsnippet is\n (is (= ${1} ${2}))\nsnippet defty\n (deftype ${1:Name} [${2:fields}]\n ${3:Protocol}\n ${4})\nsnippet doseq\n (doseq [${1:elem} ${2:coll}]\n ${3})\nsnippet fn\n (fn [${1:arg-list}] ${2})\nsnippet if\n (if ${1:test-expr}\n ${2:then-expr}\n ${3:else-expr})\nsnippet if-let \n (if-let [${1:result} ${2:test-expr}]\n (${3:then-expr} $1)\n (${4:else-expr}))\nsnippet imp\n (:import [${1:package}])\n & {:keys [${1:keys}] :or {${2:defaults}}}\nsnippet let\n (let [${1:name} ${2:expr}]\n ${3})\nsnippet letfn\n (letfn [(${1:name) [${2:args}]\n ${3})])\nsnippet map\n (map ${1:func} ${2:coll})\nsnippet mapl\n (map #(${1:lambda}) ${2:coll})\nsnippet met\n (${1:name} [${2:this} ${3:args}]\n ${4})\nsnippet ns\n (ns ${1:name}\n ${2})\nsnippet dotimes\n (dotimes [_ 10]\n (time\n (dotimes [_ ${1:times}]\n ${2})))\nsnippet pmethod\n (${1:name} [${2:this} ${3:args}])\nsnippet refer\n (:refer-clojure :exclude [${1}])\nsnippet require\n (:require [${1:namespace} :as [${2}]])\nsnippet use\n (:use [${1:namespace} :only [${2}]])\nsnippet print\n (println ${1})\nsnippet reduce\n (reduce ${1:(fn [p n] ${3})} ${2})\nsnippet when\n (when ${1:test} ${2:body})\nsnippet when-let\n (when-let [${1:result} ${2:test}]\n ${3:body})\n',t.scope="clojure"}) -------------------------------------------------------------------------------- /snippets/sh.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/sh",["require","exports","module"],function(e,t,n){"use strict";t.snippetText='# Shebang. Executing bash via /usr/bin/env makes scripts more portable.\nsnippet #!\n #!/usr/bin/env bash\n \nsnippet if\n if [[ ${1:condition} ]]; then\n ${2:#statements}\n fi\nsnippet elif\n elif [[ ${1:condition} ]]; then\n ${2:#statements}\nsnippet for\n for (( ${2:i} = 0; $2 < ${1:count}; $2++ )); do\n ${3:#statements}\n done\nsnippet fori\n for ${1:needle} in ${2:haystack} ; do\n ${3:#statements}\n done\nsnippet wh\n while [[ ${1:condition} ]]; do\n ${2:#statements}\n done\nsnippet until\n until [[ ${1:condition} ]]; do\n ${2:#statements}\n done\nsnippet case\n case ${1:word} in\n ${2:pattern})\n ${3};;\n esac\nsnippet go \n while getopts \'${1:o}\' ${2:opts} \n do \n case $$2 in\n ${3:o0})\n ${4:#staments};;\n esac\n done\n# Set SCRIPT_DIR variable to directory script is located.\nsnippet sdir\n SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"\n# getopt\nsnippet getopt\n __ScriptVersion="${1:version}"\n\n #=== FUNCTION ================================================================\n # NAME: usage\n # DESCRIPTION: Display usage information.\n #===============================================================================\n function usage ()\n {\n cat <<- EOT\n\n Usage : $${0:0} [options] [--] \n\n Options: \n -h|help Display this message\n -v|version Display script version\n\n EOT\n } # ---------- end of function usage ----------\n\n #-----------------------------------------------------------------------\n # Handle command line arguments\n #-----------------------------------------------------------------------\n\n while getopts ":hv" opt\n do\n case $opt in\n\n h|help ) usage; exit 0 ;;\n\n v|version ) echo "$${0:0} -- Version $__ScriptVersion"; exit 0 ;;\n\n \\? ) echo -e "\\n Option does not exist : $OPTARG\\n"\n usage; exit 1 ;;\n\n esac # --- end of case ---\n done\n shift $(($OPTIND-1))\n\n',t.scope="sh"}) -------------------------------------------------------------------------------- /ext/linking.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/ext/linking",["require","exports","module","ace/editor","ace/config"], function(acequire, exports, module) { 2 | 3 | var Editor = acequire("ace/editor").Editor; 4 | 5 | acequire("../config").defineOptions(Editor.prototype, "editor", { 6 | enableLinking: { 7 | set: function(val) { 8 | if (val) { 9 | this.on("click", onClick); 10 | this.on("mousemove", onMouseMove); 11 | } else { 12 | this.off("click", onClick); 13 | this.off("mousemove", onMouseMove); 14 | } 15 | }, 16 | value: false 17 | } 18 | }); 19 | 20 | exports.previousLinkingHover = false; 21 | 22 | function onMouseMove(e) { 23 | var editor = e.editor; 24 | var ctrl = e.getAccelKey(); 25 | 26 | if (ctrl) { 27 | var editor = e.editor; 28 | var docPos = e.getDocumentPosition(); 29 | var session = editor.session; 30 | var token = session.getTokenAt(docPos.row, docPos.column); 31 | 32 | if (exports.previousLinkingHover && exports.previousLinkingHover != token) { 33 | editor._emit("linkHoverOut"); 34 | } 35 | editor._emit("linkHover", {position: docPos, token: token}); 36 | exports.previousLinkingHover = token; 37 | } else if (exports.previousLinkingHover) { 38 | editor._emit("linkHoverOut"); 39 | exports.previousLinkingHover = false; 40 | } 41 | } 42 | 43 | function onClick(e) { 44 | var ctrl = e.getAccelKey(); 45 | var button = e.getButton(); 46 | 47 | if (button == 0 && ctrl) { 48 | var editor = e.editor; 49 | var docPos = e.getDocumentPosition(); 50 | var session = editor.session; 51 | var token = session.getTokenAt(docPos.row, docPos.column); 52 | 53 | editor._emit("linkClick", {position: docPos, token: token}); 54 | } 55 | } 56 | 57 | }); 58 | (function() { 59 | ace.acequire(["ace/ext/linking"], function() {}); 60 | })(); 61 | -------------------------------------------------------------------------------- /snippets/sqlserver.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/sqlserver",["require","exports","module"],function(e,t,n){"use strict";t.snippetText="# ISNULL\nsnippet isnull\n ISNULL(${1:check_expression}, ${2:replacement_value})\n# FORMAT\nsnippet format\n FORMAT(${1:value}, ${2:format})\n# CAST\nsnippet cast\n CAST(${1:expression} AS ${2:data_type})\n# CONVERT\nsnippet convert\n CONVERT(${1:data_type}, ${2:expression})\n# DATEPART\nsnippet datepart\n DATEPART(${1:datepart}, ${2:date})\n# DATEDIFF\nsnippet datediff\n DATEDIFF(${1:datepart}, ${2:startdate}, ${3:enddate})\n# DATEADD\nsnippet dateadd\n DATEADD(${1:datepart}, ${2:number}, ${3:date})\n# DATEFROMPARTS \nsnippet datefromparts\n DATEFROMPARTS(${1:year}, ${2:month}, ${3:day})\n# OBJECT_DEFINITION\nsnippet objectdef\n SELECT OBJECT_DEFINITION(OBJECT_ID('${1:sys.server_permissions /*object name*/}'))\n# STUFF XML\nsnippet stuffxml\n STUFF((SELECT ', ' + ${1:ColumnName}\n FROM ${2:TableName}\n WHERE ${3:WhereClause}\n FOR XML PATH('')), 1, 1, '') AS ${4:Alias}\n ${5:/*https://msdn.microsoft.com/en-us/library/ms188043.aspx*/}\n# Create Procedure\nsnippet createproc\n -- =============================================\n -- Author: ${1:Author}\n -- Create date: ${2:Date}\n -- Description: ${3:Description}\n -- =============================================\n CREATE PROCEDURE ${4:Procedure_Name}\n ${5:/*Add the parameters for the stored procedure here*/}\n AS\n BEGIN\n -- SET NOCOUNT ON added to prevent extra result sets from interfering with SELECT statements.\n SET NOCOUNT ON;\n \n ${6:/*Add the T-SQL statements to compute the return value here*/}\n \n END\n GO\n# Create Scalar Function\nsnippet createfn\n -- =============================================\n -- Author: ${1:Author}\n -- Create date: ${2:Date}\n -- Description: ${3:Description}\n -- =============================================\n CREATE FUNCTION ${4:Scalar_Function_Name}\n -- Add the parameters for the function here\n RETURNS ${5:Function_Data_Type}\n AS\n BEGIN\n DECLARE @Result ${5:Function_Data_Type}\n \n ${6:/*Add the T-SQL statements to compute the return value here*/}\n \n END\n GO",t.scope="sqlserver"}) -------------------------------------------------------------------------------- /snippets/coffee.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/coffee",["require","exports","module"],function(e,t,n){"use strict";t.snippetText="# Closure loop\nsnippet forindo\n for ${1:name} in ${2:array}\n do ($1) ->\n ${3:// body}\n# Array comprehension\nsnippet fora\n for ${1:name} in ${2:array}\n ${3:// body...}\n# Object comprehension\nsnippet foro\n for ${1:key}, ${2:value} of ${3:object}\n ${4:// body...}\n# Range comprehension (inclusive)\nsnippet forr\n for ${1:name} in [${2:start}..${3:finish}]\n ${4:// body...}\nsnippet forrb\n for ${1:name} in [${2:start}..${3:finish}] by ${4:step}\n ${5:// body...}\n# Range comprehension (exclusive)\nsnippet forrex\n for ${1:name} in [${2:start}...${3:finish}]\n ${4:// body...}\nsnippet forrexb\n for ${1:name} in [${2:start}...${3:finish}] by ${4:step}\n ${5:// body...}\n# Function\nsnippet fun\n (${1:args}) ->\n ${2:// body...}\n# Function (bound)\nsnippet bfun\n (${1:args}) =>\n ${2:// body...}\n# Class\nsnippet cla class ..\n class ${1:`substitute(Filename(), '\\(_\\|^\\)\\(.\\)', '\\u\\2', 'g')`}\n ${2}\nsnippet cla class .. constructor: ..\n class ${1:`substitute(Filename(), '\\(_\\|^\\)\\(.\\)', '\\u\\2', 'g')`}\n constructor: (${2:args}) ->\n ${3}\n\n ${4}\nsnippet cla class .. extends ..\n class ${1:`substitute(Filename(), '\\(_\\|^\\)\\(.\\)', '\\u\\2', 'g')`} extends ${2:ParentClass}\n ${3}\nsnippet cla class .. extends .. constructor: ..\n class ${1:`substitute(Filename(), '\\(_\\|^\\)\\(.\\)', '\\u\\2', 'g')`} extends ${2:ParentClass}\n constructor: (${3:args}) ->\n ${4}\n\n ${5}\n# If\nsnippet if\n if ${1:condition}\n ${2:// body...}\n# If __ Else\nsnippet ife\n if ${1:condition}\n ${2:// body...}\n else\n ${3:// body...}\n# Else if\nsnippet elif\n else if ${1:condition}\n ${2:// body...}\n# Ternary If\nsnippet ifte\n if ${1:condition} then ${2:value} else ${3:other}\n# Unless\nsnippet unl\n ${1:action} unless ${2:condition}\n# Switch\nsnippet swi\n switch ${1:object}\n when ${2:value}\n ${3:// body...}\n\n# Log\nsnippet log\n console.log ${1}\n# Try __ Catch\nsnippet try\n try\n ${1}\n catch ${2:error}\n ${3}\n# Require\nsnippet req\n ${2:$1} = require '${1:sys}'${3}\n# Export\nsnippet exp\n ${1:root} = exports ? this\n",t.scope="coffee"}) -------------------------------------------------------------------------------- /theme/gruvbox.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/theme/gruvbox",["require","exports","module","ace/lib/dom"], function(acequire, exports, module) { 2 | 3 | exports.isDark = true; 4 | exports.cssClass = "ace-gruvbox"; 5 | exports.cssText = ".ace-gruvbox .ace_gutter-active-line {\ 6 | background-color: #3C3836;\ 7 | }\ 8 | .ace-gruvbox {\ 9 | color: #EBDAB4;\ 10 | background-color: #1D2021;\ 11 | }\ 12 | .ace-gruvbox .ace_invisible {\ 13 | color: #504945;\ 14 | }\ 15 | .ace-gruvbox .ace_marker-layer .ace_selection {\ 16 | background: rgba(179, 101, 57, 0.75)\ 17 | }\ 18 | .ace-gruvbox.ace_multiselect .ace_selection.ace_start {\ 19 | box-shadow: 0 0 3px 0px #002240;\ 20 | }\ 21 | .ace-gruvbox .ace_keyword {\ 22 | color: #8ec07c;\ 23 | }\ 24 | .ace-gruvbox .ace_comment {\ 25 | font-style: italic;\ 26 | color: #928375;\ 27 | }\ 28 | .ace-gruvbox .ace-statement {\ 29 | color: red;\ 30 | }\ 31 | .ace-gruvbox .ace_variable {\ 32 | color: #84A598;\ 33 | }\ 34 | .ace-gruvbox .ace_variable.ace_language {\ 35 | color: #D2879B;\ 36 | }\ 37 | .ace-gruvbox .ace_constant {\ 38 | color: #C2859A;\ 39 | }\ 40 | .ace-gruvbox .ace_constant.ace_language {\ 41 | color: #C2859A;\ 42 | }\ 43 | .ace-gruvbox .ace_constant.ace_numeric {\ 44 | color: #C2859A;\ 45 | }\ 46 | .ace-gruvbox .ace_string {\ 47 | color: #B8BA37;\ 48 | }\ 49 | .ace-gruvbox .ace_support {\ 50 | color: #F9BC41;\ 51 | }\ 52 | .ace-gruvbox .ace_support.ace_function {\ 53 | color: #F84B3C;\ 54 | }\ 55 | .ace-gruvbox .ace_storage {\ 56 | color: #8FBF7F;\ 57 | }\ 58 | .ace-gruvbox .ace_keyword.ace_operator {\ 59 | color: #EBDAB4;\ 60 | }\ 61 | .ace-gruvbox .ace_punctuation.ace_operator {\ 62 | color: yellow;\ 63 | }\ 64 | .ace-gruvbox .ace_marker-layer .ace_active-line {\ 65 | background: #3C3836;\ 66 | }\ 67 | .ace-gruvbox .ace_marker-layer .ace_selected-word {\ 68 | border-radius: 4px;\ 69 | border: 8px solid #3f475d;\ 70 | }\ 71 | .ace-gruvbox .ace_print-margin {\ 72 | width: 5px;\ 73 | background: #3C3836;\ 74 | }\ 75 | .ace-gruvbox .ace_indent-guide {\ 76 | background: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWNQUFD4z6Crq/sfAAuYAuYl+7lfAAAAAElFTkSuQmCC\") right repeat-y;\ 77 | }"; 78 | 79 | var dom = acequire("../lib/dom"); 80 | dom.importCssString(exports.cssText, exports.cssClass); 81 | 82 | }); 83 | -------------------------------------------------------------------------------- /mode/properties.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/mode/properties_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"], function(acequire, exports, module) { 2 | "use strict"; 3 | 4 | var oop = acequire("../lib/oop"); 5 | var TextHighlightRules = acequire("./text_highlight_rules").TextHighlightRules; 6 | 7 | var PropertiesHighlightRules = function() { 8 | 9 | var escapeRe = /\\u[0-9a-fA-F]{4}|\\/; 10 | 11 | this.$rules = { 12 | "start" : [ 13 | { 14 | token : "comment", 15 | regex : /[!#].*$/ 16 | }, { 17 | token : "keyword", 18 | regex : /[=:]$/ 19 | }, { 20 | token : "keyword", 21 | regex : /[=:]/, 22 | next : "value" 23 | }, { 24 | token : "constant.language.escape", 25 | regex : escapeRe 26 | }, { 27 | defaultToken: "variable" 28 | } 29 | ], 30 | "value" : [ 31 | { 32 | regex : /\\$/, 33 | token : "string", 34 | next : "value" 35 | }, { 36 | regex : /$/, 37 | token : "string", 38 | next : "start" 39 | }, { 40 | token : "constant.language.escape", 41 | regex : escapeRe 42 | }, { 43 | defaultToken: "string" 44 | } 45 | ] 46 | }; 47 | 48 | }; 49 | 50 | oop.inherits(PropertiesHighlightRules, TextHighlightRules); 51 | 52 | exports.PropertiesHighlightRules = PropertiesHighlightRules; 53 | }); 54 | 55 | ace.define("ace/mode/properties",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/properties_highlight_rules"], function(acequire, exports, module) { 56 | "use strict"; 57 | 58 | var oop = acequire("../lib/oop"); 59 | var TextMode = acequire("./text").Mode; 60 | var PropertiesHighlightRules = acequire("./properties_highlight_rules").PropertiesHighlightRules; 61 | 62 | var Mode = function() { 63 | this.HighlightRules = PropertiesHighlightRules; 64 | this.$behaviour = this.$defaultBehaviour; 65 | }; 66 | oop.inherits(Mode, TextMode); 67 | 68 | (function() { 69 | this.$id = "ace/mode/properties"; 70 | }).call(Mode.prototype); 71 | 72 | exports.Mode = Mode; 73 | }); 74 | -------------------------------------------------------------------------------- /mode/lucene.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/mode/lucene_highlight_rules",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/mode/text_highlight_rules"], function(acequire, exports, module) { 2 | "use strict"; 3 | 4 | var oop = acequire("../lib/oop"); 5 | var lang = acequire("../lib/lang"); 6 | var TextHighlightRules = acequire("./text_highlight_rules").TextHighlightRules; 7 | 8 | var LuceneHighlightRules = function() { 9 | this.$rules = { 10 | "start" : [ 11 | { 12 | token : "constant.character.negation", 13 | regex : "[\\-]" 14 | }, { 15 | token : "constant.character.interro", 16 | regex : "[\\?]" 17 | }, { 18 | token : "constant.character.asterisk", 19 | regex : "[\\*]" 20 | }, { 21 | token: 'constant.character.proximity', 22 | regex: '~[0-9]+\\b' 23 | }, { 24 | token : 'keyword.operator', 25 | regex: '(?:AND|OR|NOT)\\b' 26 | }, { 27 | token : "paren.lparen", 28 | regex : "[\\(]" 29 | }, { 30 | token : "paren.rparen", 31 | regex : "[\\)]" 32 | }, { 33 | token : "keyword", 34 | regex : "[\\S]+:" 35 | }, { 36 | token : "string", // " string 37 | regex : '".*?"' 38 | }, { 39 | token : "text", 40 | regex : "\\s+" 41 | } 42 | ] 43 | }; 44 | }; 45 | 46 | oop.inherits(LuceneHighlightRules, TextHighlightRules); 47 | 48 | exports.LuceneHighlightRules = LuceneHighlightRules; 49 | }); 50 | 51 | ace.define("ace/mode/lucene",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/lucene_highlight_rules"], function(acequire, exports, module) { 52 | 'use strict'; 53 | 54 | var oop = acequire("../lib/oop"); 55 | var TextMode = acequire("./text").Mode; 56 | var LuceneHighlightRules = acequire("./lucene_highlight_rules").LuceneHighlightRules; 57 | 58 | var Mode = function() { 59 | this.HighlightRules = LuceneHighlightRules; 60 | this.$behaviour = this.$defaultBehaviour; 61 | }; 62 | 63 | oop.inherits(Mode, TextMode); 64 | 65 | (function() { 66 | this.$id = "ace/mode/lucene"; 67 | }).call(Mode.prototype); 68 | 69 | exports.Mode = Mode; 70 | }); 71 | -------------------------------------------------------------------------------- /theme/kuroir.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/theme/kuroir",["require","exports","module","ace/lib/dom"], function(acequire, exports, module) { 2 | 3 | exports.isDark = false; 4 | exports.cssClass = "ace-kuroir"; 5 | exports.cssText = "\ 6 | .ace-kuroir .ace_gutter {\ 7 | background: #e8e8e8;\ 8 | color: #333;\ 9 | }\ 10 | .ace-kuroir .ace_print-margin {\ 11 | width: 1px;\ 12 | background: #e8e8e8;\ 13 | }\ 14 | .ace-kuroir {\ 15 | background-color: #E8E9E8;\ 16 | color: #363636;\ 17 | }\ 18 | .ace-kuroir .ace_cursor {\ 19 | color: #202020;\ 20 | }\ 21 | .ace-kuroir .ace_marker-layer .ace_selection {\ 22 | background: rgba(245, 170, 0, 0.57);\ 23 | }\ 24 | .ace-kuroir.ace_multiselect .ace_selection.ace_start {\ 25 | box-shadow: 0 0 3px 0px #E8E9E8;\ 26 | }\ 27 | .ace-kuroir .ace_marker-layer .ace_step {\ 28 | background: rgb(198, 219, 174);\ 29 | }\ 30 | .ace-kuroir .ace_marker-layer .ace_bracket {\ 31 | margin: -1px 0 0 -1px;\ 32 | border: 1px solid rgba(0, 0, 0, 0.29);\ 33 | }\ 34 | .ace-kuroir .ace_marker-layer .ace_active-line {\ 35 | background: rgba(203, 220, 47, 0.22);\ 36 | }\ 37 | .ace-kuroir .ace_gutter-active-line {\ 38 | background-color: rgba(203, 220, 47, 0.22);\ 39 | }\ 40 | .ace-kuroir .ace_marker-layer .ace_selected-word {\ 41 | border: 1px solid rgba(245, 170, 0, 0.57);\ 42 | }\ 43 | .ace-kuroir .ace_invisible {\ 44 | color: #BFBFBF\ 45 | }\ 46 | .ace-kuroir .ace_fold {\ 47 | border-color: #363636;\ 48 | }\ 49 | .ace-kuroir .ace_constant{color:#CD6839;}.ace-kuroir .ace_constant.ace_numeric{color:#9A5925;}.ace-kuroir .ace_support{color:#104E8B;}.ace-kuroir .ace_support.ace_function{color:#005273;}.ace-kuroir .ace_support.ace_constant{color:#CF6A4C;}.ace-kuroir .ace_storage{color:#A52A2A;}.ace-kuroir .ace_invalid.ace_illegal{color:#FD1224;\ 50 | background-color:rgba(255, 6, 0, 0.15);}.ace-kuroir .ace_invalid.ace_deprecated{text-decoration:underline;\ 51 | font-style:italic;\ 52 | color:#FD1732;\ 53 | background-color:#E8E9E8;}.ace-kuroir .ace_string{color:#639300;}.ace-kuroir .ace_string.ace_regexp{color:#417E00;\ 54 | background-color:#C9D4BE;}.ace-kuroir .ace_comment{color:rgba(148, 148, 148, 0.91);\ 55 | background-color:rgba(220, 220, 220, 0.56);}.ace-kuroir .ace_variable{color:#009ACD;}.ace-kuroir .ace_meta.ace_tag{color:#005273;}.ace-kuroir .ace_markup.ace_heading{color:#B8012D;\ 56 | background-color:rgba(191, 97, 51, 0.051);}.ace-kuroir .ace_markup.ace_list{color:#8F5B26;}\ 57 | "; 58 | 59 | var dom = acequire("../lib/dom"); 60 | dom.importCssString(exports.cssText, exports.cssClass); 61 | }); 62 | -------------------------------------------------------------------------------- /theme/xcode.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/theme/xcode",["require","exports","module","ace/lib/dom"], function(acequire, exports, module) { 2 | 3 | exports.isDark = false; 4 | exports.cssClass = "ace-xcode"; 5 | exports.cssText = "\ 6 | .ace-xcode .ace_gutter {\ 7 | background: #e8e8e8;\ 8 | color: #333\ 9 | }\ 10 | .ace-xcode .ace_print-margin {\ 11 | width: 1px;\ 12 | background: #e8e8e8\ 13 | }\ 14 | .ace-xcode {\ 15 | background-color: #FFFFFF;\ 16 | color: #000000\ 17 | }\ 18 | .ace-xcode .ace_cursor {\ 19 | color: #000000\ 20 | }\ 21 | .ace-xcode .ace_marker-layer .ace_selection {\ 22 | background: #B5D5FF\ 23 | }\ 24 | .ace-xcode.ace_multiselect .ace_selection.ace_start {\ 25 | box-shadow: 0 0 3px 0px #FFFFFF;\ 26 | }\ 27 | .ace-xcode .ace_marker-layer .ace_step {\ 28 | background: rgb(198, 219, 174)\ 29 | }\ 30 | .ace-xcode .ace_marker-layer .ace_bracket {\ 31 | margin: -1px 0 0 -1px;\ 32 | border: 1px solid #BFBFBF\ 33 | }\ 34 | .ace-xcode .ace_marker-layer .ace_active-line {\ 35 | background: rgba(0, 0, 0, 0.071)\ 36 | }\ 37 | .ace-xcode .ace_gutter-active-line {\ 38 | background-color: rgba(0, 0, 0, 0.071)\ 39 | }\ 40 | .ace-xcode .ace_marker-layer .ace_selected-word {\ 41 | border: 1px solid #B5D5FF\ 42 | }\ 43 | .ace-xcode .ace_constant.ace_language,\ 44 | .ace-xcode .ace_keyword,\ 45 | .ace-xcode .ace_meta,\ 46 | .ace-xcode .ace_variable.ace_language {\ 47 | color: #C800A4\ 48 | }\ 49 | .ace-xcode .ace_invisible {\ 50 | color: #BFBFBF\ 51 | }\ 52 | .ace-xcode .ace_constant.ace_character,\ 53 | .ace-xcode .ace_constant.ace_other {\ 54 | color: #275A5E\ 55 | }\ 56 | .ace-xcode .ace_constant.ace_numeric {\ 57 | color: #3A00DC\ 58 | }\ 59 | .ace-xcode .ace_entity.ace_other.ace_attribute-name,\ 60 | .ace-xcode .ace_support.ace_constant,\ 61 | .ace-xcode .ace_support.ace_function {\ 62 | color: #450084\ 63 | }\ 64 | .ace-xcode .ace_fold {\ 65 | background-color: #C800A4;\ 66 | border-color: #000000\ 67 | }\ 68 | .ace-xcode .ace_entity.ace_name.ace_tag,\ 69 | .ace-xcode .ace_support.ace_class,\ 70 | .ace-xcode .ace_support.ace_type {\ 71 | color: #790EAD\ 72 | }\ 73 | .ace-xcode .ace_storage {\ 74 | color: #C900A4\ 75 | }\ 76 | .ace-xcode .ace_string {\ 77 | color: #DF0002\ 78 | }\ 79 | .ace-xcode .ace_comment {\ 80 | color: #008E00\ 81 | }\ 82 | .ace-xcode .ace_indent-guide {\ 83 | background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==) right repeat-y\ 84 | }"; 85 | 86 | var dom = acequire("../lib/dom"); 87 | dom.importCssString(exports.cssText, exports.cssClass); 88 | }); 89 | -------------------------------------------------------------------------------- /snippets/r.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/r",["require","exports","module"],function(e,t,n){"use strict";t.snippetText='snippet #!\n #!/usr/bin/env Rscript\n\n# includes\nsnippet lib\n library(${1:package})\nsnippet req\n require(${1:package})\nsnippet source\n source(\'${1:file}\')\n\n# conditionals\nsnippet if\n if (${1:condition}) {\n ${2:code}\n }\nsnippet el\n else {\n ${1:code}\n }\nsnippet ei\n else if (${1:condition}) {\n ${2:code}\n }\n\n# functions\nsnippet fun\n ${1:name} = function (${2:variables}) {\n ${3:code}\n }\nsnippet ret\n return(${1:code})\n\n# dataframes, lists, etc\nsnippet df\n ${1:name}[${2:rows}, ${3:cols}]\nsnippet c\n c(${1:items})\nsnippet li\n list(${1:items})\nsnippet mat\n matrix(${1:data}, nrow=${2:rows}, ncol=${3:cols})\n\n# apply functions\nsnippet apply\n apply(${1:array}, ${2:margin}, ${3:function})\nsnippet lapply\n lapply(${1:list}, ${2:function})\nsnippet sapply\n sapply(${1:list}, ${2:function})\nsnippet vapply\n vapply(${1:list}, ${2:function}, ${3:type})\nsnippet mapply\n mapply(${1:function}, ${2:...})\nsnippet tapply\n tapply(${1:vector}, ${2:index}, ${3:function})\nsnippet rapply\n rapply(${1:list}, ${2:function})\n\n# plyr functions\nsnippet dd\n ddply(${1:frame}, ${2:variables}, ${3:function})\nsnippet dl\n dlply(${1:frame}, ${2:variables}, ${3:function})\nsnippet da\n daply(${1:frame}, ${2:variables}, ${3:function})\nsnippet d_\n d_ply(${1:frame}, ${2:variables}, ${3:function})\n\nsnippet ad\n adply(${1:array}, ${2:margin}, ${3:function})\nsnippet al\n alply(${1:array}, ${2:margin}, ${3:function})\nsnippet aa\n aaply(${1:array}, ${2:margin}, ${3:function})\nsnippet a_\n a_ply(${1:array}, ${2:margin}, ${3:function})\n\nsnippet ld\n ldply(${1:list}, ${2:function})\nsnippet ll\n llply(${1:list}, ${2:function})\nsnippet la\n laply(${1:list}, ${2:function})\nsnippet l_\n l_ply(${1:list}, ${2:function})\n\nsnippet md\n mdply(${1:matrix}, ${2:function})\nsnippet ml\n mlply(${1:matrix}, ${2:function})\nsnippet ma\n maply(${1:matrix}, ${2:function})\nsnippet m_\n m_ply(${1:matrix}, ${2:function})\n\n# plot functions\nsnippet pl\n plot(${1:x}, ${2:y})\nsnippet ggp\n ggplot(${1:data}, aes(${2:aesthetics}))\nsnippet img\n ${1:(jpeg,bmp,png,tiff)}(filename="${2:filename}", width=${3}, height=${4}, unit="${5}")\n ${6:plot}\n dev.off()\n\n# statistical test functions\nsnippet fis\n fisher.test(${1:x}, ${2:y})\nsnippet chi\n chisq.test(${1:x}, ${2:y})\nsnippet tt\n t.test(${1:x}, ${2:y})\nsnippet wil\n wilcox.test(${1:x}, ${2:y})\nsnippet cor\n cor.test(${1:x}, ${2:y})\nsnippet fte\n var.test(${1:x}, ${2:y})\nsnippet kvt \n kv.test(${1:x}, ${2:y})\n',t.scope="r"}) -------------------------------------------------------------------------------- /snippets/c_cpp.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/c_cpp",["require","exports","module"],function(e,t,n){"use strict";t.snippetText="## STL Collections\n# std::array\nsnippet array\n std::array<${1:T}, ${2:N}> ${3};${4}\n# std::vector\nsnippet vector\n std::vector<${1:T}> ${2};${3}\n# std::deque\nsnippet deque\n std::deque<${1:T}> ${2};${3}\n# std::forward_list\nsnippet flist\n std::forward_list<${1:T}> ${2};${3}\n# std::list\nsnippet list\n std::list<${1:T}> ${2};${3}\n# std::set\nsnippet set\n std::set<${1:T}> ${2};${3}\n# std::map\nsnippet map\n std::map<${1:Key}, ${2:T}> ${3};${4}\n# std::multiset\nsnippet mset\n std::multiset<${1:T}> ${2};${3}\n# std::multimap\nsnippet mmap\n std::multimap<${1:Key}, ${2:T}> ${3};${4}\n# std::unordered_set\nsnippet uset\n std::unordered_set<${1:T}> ${2};${3}\n# std::unordered_map\nsnippet umap\n std::unordered_map<${1:Key}, ${2:T}> ${3};${4}\n# std::unordered_multiset\nsnippet umset\n std::unordered_multiset<${1:T}> ${2};${3}\n# std::unordered_multimap\nsnippet ummap\n std::unordered_multimap<${1:Key}, ${2:T}> ${3};${4}\n# std::stack\nsnippet stack\n std::stack<${1:T}> ${2};${3}\n# std::queue\nsnippet queue\n std::queue<${1:T}> ${2};${3}\n# std::priority_queue\nsnippet pqueue\n std::priority_queue<${1:T}> ${2};${3}\n##\n## Access Modifiers\n# private\nsnippet pri\n private\n# protected\nsnippet pro\n protected\n# public\nsnippet pub\n public\n# friend\nsnippet fr\n friend\n# mutable\nsnippet mu\n mutable\n## \n## Class\n# class\nsnippet cl\n class ${1:`Filename('$1', 'name')`} \n {\n public:\n $1(${2});\n ~$1();\n\n private:\n ${3:/* data */}\n };\n# member function implementation\nsnippet mfun\n ${4:void} ${1:`Filename('$1', 'ClassName')`}::${2:memberFunction}(${3}) {\n ${5:/* code */}\n }\n# namespace\nsnippet ns\n namespace ${1:`Filename('', 'my')`} {\n ${2}\n } /* namespace $1 */\n##\n## Input/Output\n# std::cout\nsnippet cout\n std::cout << ${1} << std::endl;${2}\n# std::cin\nsnippet cin\n std::cin >> ${1};${2}\n##\n## Iteration\n# for i \nsnippet fori\n for (int ${2:i} = 0; $2 < ${1:count}; $2${3:++}) {\n ${4:/* code */}\n }${5}\n\n# foreach\nsnippet fore\n for (${1:auto} ${2:i} : ${3:container}) {\n ${4:/* code */}\n }${5}\n# iterator\nsnippet iter\n for (${1:std::vector}<${2:type}>::${3:const_iterator} ${4:i} = ${5:container}.begin(); $4 != $5.end(); ++$4) {\n ${6}\n }${7}\n\n# auto iterator\nsnippet itera\n for (auto ${1:i} = $1.begin(); $1 != $1.end(); ++$1) {\n ${2:std::cout << *$1 << std::endl;}\n }${3}\n##\n## Lambdas\n# lamda (one line)\nsnippet ld\n [${1}](${2}){${3:/* code */}}${4}\n# lambda (multi-line)\nsnippet lld\n [${1}](${2}){\n ${3:/* code */}\n }${4}\n",t.scope="c_cpp"}) -------------------------------------------------------------------------------- /ext/spellcheck.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/ext/spellcheck",["require","exports","module","ace/lib/event","ace/editor","ace/config"], function(acequire, exports, module) { 2 | "use strict"; 3 | var event = acequire("../lib/event"); 4 | 5 | exports.contextMenuHandler = function(e){ 6 | var host = e.target; 7 | var text = host.textInput.getElement(); 8 | if (!host.selection.isEmpty()) 9 | return; 10 | var c = host.getCursorPosition(); 11 | var r = host.session.getWordRange(c.row, c.column); 12 | var w = host.session.getTextRange(r); 13 | 14 | host.session.tokenRe.lastIndex = 0; 15 | if (!host.session.tokenRe.test(w)) 16 | return; 17 | var PLACEHOLDER = "\x01\x01"; 18 | var value = w + " " + PLACEHOLDER; 19 | text.value = value; 20 | text.setSelectionRange(w.length, w.length + 1); 21 | text.setSelectionRange(0, 0); 22 | text.setSelectionRange(0, w.length); 23 | 24 | var afterKeydown = false; 25 | event.addListener(text, "keydown", function onKeydown() { 26 | event.removeListener(text, "keydown", onKeydown); 27 | afterKeydown = true; 28 | }); 29 | 30 | host.textInput.setInputHandler(function(newVal) { 31 | console.log(newVal , value, text.selectionStart, text.selectionEnd); 32 | if (newVal == value) 33 | return ''; 34 | if (newVal.lastIndexOf(value, 0) === 0) 35 | return newVal.slice(value.length); 36 | if (newVal.substr(text.selectionEnd) == value) 37 | return newVal.slice(0, -value.length); 38 | if (newVal.slice(-2) == PLACEHOLDER) { 39 | var val = newVal.slice(0, -2); 40 | if (val.slice(-1) == " ") { 41 | if (afterKeydown) 42 | return val.substring(0, text.selectionEnd); 43 | val = val.slice(0, -1); 44 | host.session.replace(r, val); 45 | return ""; 46 | } 47 | } 48 | 49 | return newVal; 50 | }); 51 | }; 52 | var Editor = acequire("../editor").Editor; 53 | acequire("../config").defineOptions(Editor.prototype, "editor", { 54 | spellcheck: { 55 | set: function(val) { 56 | var text = this.textInput.getElement(); 57 | text.spellcheck = !!val; 58 | if (!val) 59 | this.removeListener("nativecontextmenu", exports.contextMenuHandler); 60 | else 61 | this.on("nativecontextmenu", exports.contextMenuHandler); 62 | }, 63 | value: true 64 | } 65 | }); 66 | 67 | }); 68 | (function() { 69 | ace.acequire(["ace/ext/spellcheck"], function() {}); 70 | })(); 71 | -------------------------------------------------------------------------------- /snippets/jsp.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/jsp",["require","exports","module"],function(e,t,n){"use strict";t.snippetText='snippet @page\n <%@page contentType="text/html" pageEncoding="UTF-8"%>\nsnippet jstl\n <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>\n <%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>\nsnippet jstl:c\n <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>\nsnippet jstl:fn\n <%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>\nsnippet cpath\n ${pageContext.request.contextPath}\nsnippet cout\n \nsnippet cset\n \nsnippet cremove\n \nsnippet ccatch\n \nsnippet cif\n \n ${2}\n \nsnippet cchoose\n \n ${1}\n \nsnippet cwhen\n \n ${2}\n \nsnippet cother\n \n ${1}\n \nsnippet cfore\n \n ${4:}\n \nsnippet cfort\n ${2:item1,item2,item3}\n \n ${5:}\n \nsnippet cparam\n \nsnippet cparam+\n \n cparam+${3}\nsnippet cimport\n \nsnippet cimport+\n \n \n cparam+${4}\n \nsnippet curl\n \n ${3}\nsnippet curl+\n \n \n cparam+${6}\n \n ${3}\nsnippet credirect\n \nsnippet contains\n ${fn:contains(${1:string}, ${2:substr})}\nsnippet contains:i\n ${fn:containsIgnoreCase(${1:string}, ${2:substr})}\nsnippet endswith\n ${fn:endsWith(${1:string}, ${2:suffix})}\nsnippet escape\n ${fn:escapeXml(${1:string})}\nsnippet indexof\n ${fn:indexOf(${1:string}, ${2:substr})}\nsnippet join\n ${fn:join(${1:collection}, ${2:delims})}\nsnippet length\n ${fn:length(${1:collection_or_string})}\nsnippet replace\n ${fn:replace(${1:string}, ${2:substr}, ${3:replace})}\nsnippet split\n ${fn:split(${1:string}, ${2:delims})}\nsnippet startswith\n ${fn:startsWith(${1:string}, ${2:prefix})}\nsnippet substr\n ${fn:substring(${1:string}, ${2:begin}, ${3:end})}\nsnippet substr:a\n ${fn:substringAfter(${1:string}, ${2:substr})}\nsnippet substr:b\n ${fn:substringBefore(${1:string}, ${2:substr})}\nsnippet lc\n ${fn:toLowerCase(${1:string})}\nsnippet uc\n ${fn:toUpperCase(${1:string})}\nsnippet trim\n ${fn:trim(${1:string})}\n',t.scope="jsp"}) -------------------------------------------------------------------------------- /ext/themelist.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/ext/themelist",["require","exports","module","ace/lib/fixoldbrowsers"], function(acequire, exports, module) { 2 | "use strict"; 3 | acequire("ace/lib/fixoldbrowsers"); 4 | 5 | var themeData = [ 6 | ["Chrome" ], 7 | ["Clouds" ], 8 | ["Crimson Editor" ], 9 | ["Dawn" ], 10 | ["Dreamweaver" ], 11 | ["Eclipse" ], 12 | ["GitHub" ], 13 | ["IPlastic" ], 14 | ["Solarized Light"], 15 | ["TextMate" ], 16 | ["Tomorrow" ], 17 | ["XCode" ], 18 | ["Kuroir"], 19 | ["KatzenMilch"], 20 | ["SQL Server" ,"sqlserver" , "light"], 21 | ["Ambiance" ,"ambiance" , "dark"], 22 | ["Chaos" ,"chaos" , "dark"], 23 | ["Clouds Midnight" ,"clouds_midnight" , "dark"], 24 | ["Cobalt" ,"cobalt" , "dark"], 25 | ["Gruvbox" ,"gruvbox" , "dark"], 26 | ["Green on Black" ,"gob" , "dark"], 27 | ["idle Fingers" ,"idle_fingers" , "dark"], 28 | ["krTheme" ,"kr_theme" , "dark"], 29 | ["Merbivore" ,"merbivore" , "dark"], 30 | ["Merbivore Soft" ,"merbivore_soft" , "dark"], 31 | ["Mono Industrial" ,"mono_industrial" , "dark"], 32 | ["Monokai" ,"monokai" , "dark"], 33 | ["Pastel on dark" ,"pastel_on_dark" , "dark"], 34 | ["Solarized Dark" ,"solarized_dark" , "dark"], 35 | ["Terminal" ,"terminal" , "dark"], 36 | ["Tomorrow Night" ,"tomorrow_night" , "dark"], 37 | ["Tomorrow Night Blue" ,"tomorrow_night_blue" , "dark"], 38 | ["Tomorrow Night Bright","tomorrow_night_bright" , "dark"], 39 | ["Tomorrow Night 80s" ,"tomorrow_night_eighties" , "dark"], 40 | ["Twilight" ,"twilight" , "dark"], 41 | ["Vibrant Ink" ,"vibrant_ink" , "dark"] 42 | ]; 43 | 44 | 45 | exports.themesByName = {}; 46 | exports.themes = themeData.map(function(data) { 47 | var name = data[1] || data[0].replace(/ /g, "_").toLowerCase(); 48 | var theme = { 49 | caption: data[0], 50 | theme: "ace/theme/" + name, 51 | isDark: data[2] == "dark", 52 | name: name 53 | }; 54 | exports.themesByName[name] = theme; 55 | return theme; 56 | }); 57 | 58 | }); 59 | (function() { 60 | ace.acequire(["ace/ext/themelist"], function() {}); 61 | })(); 62 | -------------------------------------------------------------------------------- /theme/clouds.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/theme/clouds",["require","exports","module","ace/lib/dom"], function(acequire, exports, module) { 2 | 3 | exports.isDark = false; 4 | exports.cssClass = "ace-clouds"; 5 | exports.cssText = ".ace-clouds .ace_gutter {\ 6 | background: #ebebeb;\ 7 | color: #333\ 8 | }\ 9 | .ace-clouds .ace_print-margin {\ 10 | width: 1px;\ 11 | background: #e8e8e8\ 12 | }\ 13 | .ace-clouds {\ 14 | background-color: #FFFFFF;\ 15 | color: #000000\ 16 | }\ 17 | .ace-clouds .ace_cursor {\ 18 | color: #000000\ 19 | }\ 20 | .ace-clouds .ace_marker-layer .ace_selection {\ 21 | background: #BDD5FC\ 22 | }\ 23 | .ace-clouds.ace_multiselect .ace_selection.ace_start {\ 24 | box-shadow: 0 0 3px 0px #FFFFFF;\ 25 | }\ 26 | .ace-clouds .ace_marker-layer .ace_step {\ 27 | background: rgb(255, 255, 0)\ 28 | }\ 29 | .ace-clouds .ace_marker-layer .ace_bracket {\ 30 | margin: -1px 0 0 -1px;\ 31 | border: 1px solid #BFBFBF\ 32 | }\ 33 | .ace-clouds .ace_marker-layer .ace_active-line {\ 34 | background: #FFFBD1\ 35 | }\ 36 | .ace-clouds .ace_gutter-active-line {\ 37 | background-color : #dcdcdc\ 38 | }\ 39 | .ace-clouds .ace_marker-layer .ace_selected-word {\ 40 | border: 1px solid #BDD5FC\ 41 | }\ 42 | .ace-clouds .ace_invisible {\ 43 | color: #BFBFBF\ 44 | }\ 45 | .ace-clouds .ace_keyword,\ 46 | .ace-clouds .ace_meta,\ 47 | .ace-clouds .ace_support.ace_constant.ace_property-value {\ 48 | color: #AF956F\ 49 | }\ 50 | .ace-clouds .ace_keyword.ace_operator {\ 51 | color: #484848\ 52 | }\ 53 | .ace-clouds .ace_keyword.ace_other.ace_unit {\ 54 | color: #96DC5F\ 55 | }\ 56 | .ace-clouds .ace_constant.ace_language {\ 57 | color: #39946A\ 58 | }\ 59 | .ace-clouds .ace_constant.ace_numeric {\ 60 | color: #46A609\ 61 | }\ 62 | .ace-clouds .ace_constant.ace_character.ace_entity {\ 63 | color: #BF78CC\ 64 | }\ 65 | .ace-clouds .ace_invalid {\ 66 | background-color: #FF002A\ 67 | }\ 68 | .ace-clouds .ace_fold {\ 69 | background-color: #AF956F;\ 70 | border-color: #000000\ 71 | }\ 72 | .ace-clouds .ace_storage,\ 73 | .ace-clouds .ace_support.ace_class,\ 74 | .ace-clouds .ace_support.ace_function,\ 75 | .ace-clouds .ace_support.ace_other,\ 76 | .ace-clouds .ace_support.ace_type {\ 77 | color: #C52727\ 78 | }\ 79 | .ace-clouds .ace_string {\ 80 | color: #5D90CD\ 81 | }\ 82 | .ace-clouds .ace_comment {\ 83 | color: #BCC8BA\ 84 | }\ 85 | .ace-clouds .ace_entity.ace_name.ace_tag,\ 86 | .ace-clouds .ace_entity.ace_other.ace_attribute-name {\ 87 | color: #606060\ 88 | }\ 89 | .ace-clouds .ace_indent-guide {\ 90 | background: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==\") right repeat-y\ 91 | }"; 92 | 93 | var dom = acequire("../lib/dom"); 94 | dom.importCssString(exports.cssText, exports.cssClass); 95 | }); 96 | -------------------------------------------------------------------------------- /theme/eclipse.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/theme/eclipse",["require","exports","module","ace/lib/dom"], function(acequire, exports, module) { 2 | "use strict"; 3 | 4 | exports.isDark = false; 5 | exports.cssText = ".ace-eclipse .ace_gutter {\ 6 | background: #ebebeb;\ 7 | border-right: 1px solid rgb(159, 159, 159);\ 8 | color: rgb(136, 136, 136);\ 9 | }\ 10 | .ace-eclipse .ace_print-margin {\ 11 | width: 1px;\ 12 | background: #ebebeb;\ 13 | }\ 14 | .ace-eclipse {\ 15 | background-color: #FFFFFF;\ 16 | color: black;\ 17 | }\ 18 | .ace-eclipse .ace_fold {\ 19 | background-color: rgb(60, 76, 114);\ 20 | }\ 21 | .ace-eclipse .ace_cursor {\ 22 | color: black;\ 23 | }\ 24 | .ace-eclipse .ace_storage,\ 25 | .ace-eclipse .ace_keyword,\ 26 | .ace-eclipse .ace_variable {\ 27 | color: rgb(127, 0, 85);\ 28 | }\ 29 | .ace-eclipse .ace_constant.ace_buildin {\ 30 | color: rgb(88, 72, 246);\ 31 | }\ 32 | .ace-eclipse .ace_constant.ace_library {\ 33 | color: rgb(6, 150, 14);\ 34 | }\ 35 | .ace-eclipse .ace_function {\ 36 | color: rgb(60, 76, 114);\ 37 | }\ 38 | .ace-eclipse .ace_string {\ 39 | color: rgb(42, 0, 255);\ 40 | }\ 41 | .ace-eclipse .ace_comment {\ 42 | color: rgb(113, 150, 130);\ 43 | }\ 44 | .ace-eclipse .ace_comment.ace_doc {\ 45 | color: rgb(63, 95, 191);\ 46 | }\ 47 | .ace-eclipse .ace_comment.ace_doc.ace_tag {\ 48 | color: rgb(127, 159, 191);\ 49 | }\ 50 | .ace-eclipse .ace_constant.ace_numeric {\ 51 | color: darkblue;\ 52 | }\ 53 | .ace-eclipse .ace_tag {\ 54 | color: rgb(25, 118, 116);\ 55 | }\ 56 | .ace-eclipse .ace_type {\ 57 | color: rgb(127, 0, 127);\ 58 | }\ 59 | .ace-eclipse .ace_xml-pe {\ 60 | color: rgb(104, 104, 91);\ 61 | }\ 62 | .ace-eclipse .ace_marker-layer .ace_selection {\ 63 | background: rgb(181, 213, 255);\ 64 | }\ 65 | .ace-eclipse .ace_marker-layer .ace_bracket {\ 66 | margin: -1px 0 0 -1px;\ 67 | border: 1px solid rgb(192, 192, 192);\ 68 | }\ 69 | .ace-eclipse .ace_meta.ace_tag {\ 70 | color:rgb(25, 118, 116);\ 71 | }\ 72 | .ace-eclipse .ace_invisible {\ 73 | color: #ddd;\ 74 | }\ 75 | .ace-eclipse .ace_entity.ace_other.ace_attribute-name {\ 76 | color:rgb(127, 0, 127);\ 77 | }\ 78 | .ace-eclipse .ace_marker-layer .ace_step {\ 79 | background: rgb(255, 255, 0);\ 80 | }\ 81 | .ace-eclipse .ace_active-line {\ 82 | background: rgb(232, 242, 254);\ 83 | }\ 84 | .ace-eclipse .ace_gutter-active-line {\ 85 | background-color : #DADADA;\ 86 | }\ 87 | .ace-eclipse .ace_marker-layer .ace_selected-word {\ 88 | border: 1px solid rgb(181, 213, 255);\ 89 | }\ 90 | .ace-eclipse .ace_indent-guide {\ 91 | background: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==\") right repeat-y;\ 92 | }"; 93 | 94 | exports.cssClass = "ace-eclipse"; 95 | 96 | var dom = acequire("../lib/dom"); 97 | dom.importCssString(exports.cssText, exports.cssClass); 98 | }); 99 | -------------------------------------------------------------------------------- /theme/vibrant_ink.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/theme/vibrant_ink",["require","exports","module","ace/lib/dom"], function(acequire, exports, module) { 2 | 3 | exports.isDark = true; 4 | exports.cssClass = "ace-vibrant-ink"; 5 | exports.cssText = ".ace-vibrant-ink .ace_gutter {\ 6 | background: #1a1a1a;\ 7 | color: #BEBEBE\ 8 | }\ 9 | .ace-vibrant-ink .ace_print-margin {\ 10 | width: 1px;\ 11 | background: #1a1a1a\ 12 | }\ 13 | .ace-vibrant-ink {\ 14 | background-color: #0F0F0F;\ 15 | color: #FFFFFF\ 16 | }\ 17 | .ace-vibrant-ink .ace_cursor {\ 18 | color: #FFFFFF\ 19 | }\ 20 | .ace-vibrant-ink .ace_marker-layer .ace_selection {\ 21 | background: #6699CC\ 22 | }\ 23 | .ace-vibrant-ink.ace_multiselect .ace_selection.ace_start {\ 24 | box-shadow: 0 0 3px 0px #0F0F0F;\ 25 | }\ 26 | .ace-vibrant-ink .ace_marker-layer .ace_step {\ 27 | background: rgb(102, 82, 0)\ 28 | }\ 29 | .ace-vibrant-ink .ace_marker-layer .ace_bracket {\ 30 | margin: -1px 0 0 -1px;\ 31 | border: 1px solid #404040\ 32 | }\ 33 | .ace-vibrant-ink .ace_marker-layer .ace_active-line {\ 34 | background: #333333\ 35 | }\ 36 | .ace-vibrant-ink .ace_gutter-active-line {\ 37 | background-color: #333333\ 38 | }\ 39 | .ace-vibrant-ink .ace_marker-layer .ace_selected-word {\ 40 | border: 1px solid #6699CC\ 41 | }\ 42 | .ace-vibrant-ink .ace_invisible {\ 43 | color: #404040\ 44 | }\ 45 | .ace-vibrant-ink .ace_keyword,\ 46 | .ace-vibrant-ink .ace_meta {\ 47 | color: #FF6600\ 48 | }\ 49 | .ace-vibrant-ink .ace_constant,\ 50 | .ace-vibrant-ink .ace_constant.ace_character,\ 51 | .ace-vibrant-ink .ace_constant.ace_character.ace_escape,\ 52 | .ace-vibrant-ink .ace_constant.ace_other {\ 53 | color: #339999\ 54 | }\ 55 | .ace-vibrant-ink .ace_constant.ace_numeric {\ 56 | color: #99CC99\ 57 | }\ 58 | .ace-vibrant-ink .ace_invalid,\ 59 | .ace-vibrant-ink .ace_invalid.ace_deprecated {\ 60 | color: #CCFF33;\ 61 | background-color: #000000\ 62 | }\ 63 | .ace-vibrant-ink .ace_fold {\ 64 | background-color: #FFCC00;\ 65 | border-color: #FFFFFF\ 66 | }\ 67 | .ace-vibrant-ink .ace_entity.ace_name.ace_function,\ 68 | .ace-vibrant-ink .ace_support.ace_function,\ 69 | .ace-vibrant-ink .ace_variable {\ 70 | color: #FFCC00\ 71 | }\ 72 | .ace-vibrant-ink .ace_variable.ace_parameter {\ 73 | font-style: italic\ 74 | }\ 75 | .ace-vibrant-ink .ace_string {\ 76 | color: #66FF00\ 77 | }\ 78 | .ace-vibrant-ink .ace_string.ace_regexp {\ 79 | color: #44B4CC\ 80 | }\ 81 | .ace-vibrant-ink .ace_comment {\ 82 | color: #9933CC\ 83 | }\ 84 | .ace-vibrant-ink .ace_entity.ace_other.ace_attribute-name {\ 85 | font-style: italic;\ 86 | color: #99CC99\ 87 | }\ 88 | .ace-vibrant-ink .ace_indent-guide {\ 89 | background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWNgYGBgYNDTc/oPAALPAZ7hxlbYAAAAAElFTkSuQmCC) right repeat-y\ 90 | }"; 91 | 92 | var dom = acequire("../lib/dom"); 93 | dom.importCssString(exports.cssText, exports.cssClass); 94 | }); 95 | -------------------------------------------------------------------------------- /theme/merbivore.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/theme/merbivore",["require","exports","module","ace/lib/dom"], function(acequire, exports, module) { 2 | 3 | exports.isDark = true; 4 | exports.cssClass = "ace-merbivore"; 5 | exports.cssText = ".ace-merbivore .ace_gutter {\ 6 | background: #202020;\ 7 | color: #E6E1DC\ 8 | }\ 9 | .ace-merbivore .ace_print-margin {\ 10 | width: 1px;\ 11 | background: #555651\ 12 | }\ 13 | .ace-merbivore {\ 14 | background-color: #161616;\ 15 | color: #E6E1DC\ 16 | }\ 17 | .ace-merbivore .ace_cursor {\ 18 | color: #FFFFFF\ 19 | }\ 20 | .ace-merbivore .ace_marker-layer .ace_selection {\ 21 | background: #454545\ 22 | }\ 23 | .ace-merbivore.ace_multiselect .ace_selection.ace_start {\ 24 | box-shadow: 0 0 3px 0px #161616;\ 25 | }\ 26 | .ace-merbivore .ace_marker-layer .ace_step {\ 27 | background: rgb(102, 82, 0)\ 28 | }\ 29 | .ace-merbivore .ace_marker-layer .ace_bracket {\ 30 | margin: -1px 0 0 -1px;\ 31 | border: 1px solid #404040\ 32 | }\ 33 | .ace-merbivore .ace_marker-layer .ace_active-line {\ 34 | background: #333435\ 35 | }\ 36 | .ace-merbivore .ace_gutter-active-line {\ 37 | background-color: #333435\ 38 | }\ 39 | .ace-merbivore .ace_marker-layer .ace_selected-word {\ 40 | border: 1px solid #454545\ 41 | }\ 42 | .ace-merbivore .ace_invisible {\ 43 | color: #404040\ 44 | }\ 45 | .ace-merbivore .ace_entity.ace_name.ace_tag,\ 46 | .ace-merbivore .ace_keyword,\ 47 | .ace-merbivore .ace_meta,\ 48 | .ace-merbivore .ace_meta.ace_tag,\ 49 | .ace-merbivore .ace_storage,\ 50 | .ace-merbivore .ace_support.ace_function {\ 51 | color: #FC6F09\ 52 | }\ 53 | .ace-merbivore .ace_constant,\ 54 | .ace-merbivore .ace_constant.ace_character,\ 55 | .ace-merbivore .ace_constant.ace_character.ace_escape,\ 56 | .ace-merbivore .ace_constant.ace_other,\ 57 | .ace-merbivore .ace_support.ace_type {\ 58 | color: #1EDAFB\ 59 | }\ 60 | .ace-merbivore .ace_constant.ace_character.ace_escape {\ 61 | color: #519F50\ 62 | }\ 63 | .ace-merbivore .ace_constant.ace_language {\ 64 | color: #FDC251\ 65 | }\ 66 | .ace-merbivore .ace_constant.ace_library,\ 67 | .ace-merbivore .ace_string,\ 68 | .ace-merbivore .ace_support.ace_constant {\ 69 | color: #8DFF0A\ 70 | }\ 71 | .ace-merbivore .ace_constant.ace_numeric {\ 72 | color: #58C554\ 73 | }\ 74 | .ace-merbivore .ace_invalid {\ 75 | color: #FFFFFF;\ 76 | background-color: #990000\ 77 | }\ 78 | .ace-merbivore .ace_fold {\ 79 | background-color: #FC6F09;\ 80 | border-color: #E6E1DC\ 81 | }\ 82 | .ace-merbivore .ace_comment {\ 83 | font-style: italic;\ 84 | color: #AD2EA4\ 85 | }\ 86 | .ace-merbivore .ace_entity.ace_other.ace_attribute-name {\ 87 | color: #FFFF89\ 88 | }\ 89 | .ace-merbivore .ace_indent-guide {\ 90 | background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWMQFxf3ZXB1df0PAAdsAmERTkEHAAAAAElFTkSuQmCC) right repeat-y\ 91 | }"; 92 | 93 | var dom = acequire("../lib/dom"); 94 | dom.importCssString(exports.cssText, exports.cssClass); 95 | }); 96 | -------------------------------------------------------------------------------- /snippets/actionscript.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/actionscript",["require","exports","module"],function(e,t,n){"use strict";t.snippetText='snippet main\n package {\n import flash.display.*;\n import flash.Events.*;\n \n public class Main extends Sprite {\n public function Main ( ) {\n trace("start");\n stage.scaleMode = StageScaleMode.NO_SCALE;\n stage.addEventListener(Event.RESIZE, resizeListener);\n }\n \n private function resizeListener (e:Event):void {\n trace("The application window changed size!");\n trace("New width: " + stage.stageWidth);\n trace("New height: " + stage.stageHeight);\n }\n \n }\n \n }\nsnippet class\n ${1:public|internal} class ${2:name} ${3:extends } {\n public function $2 ( ) {\n ("start");\n }\n }\nsnippet all\n package name {\n\n ${1:public|internal|final} class ${2:name} ${3:extends } {\n private|public| static const FOO = "abc";\n private|public| static var BAR = "abc";\n\n // class initializer - no JIT !! one time setup\n if Cababilities.os == "Linux|MacOS" {\n FOO = "other";\n }\n\n // constructor:\n public function $2 ( ){\n super2();\n trace("start");\n }\n public function name (a, b...){\n super.name(..);\n lable:break\n }\n }\n }\n\n function A(){\n // A can only be accessed within this file\n }\nsnippet switch\n switch(${1}){\n case ${2}:\n ${3}\n break;\n default:\n }\nsnippet case\n case ${1}:\n ${2}\n break;\nsnippet package\n package ${1:package}{\n ${2}\n }\nsnippet wh\n while ${1:cond}{\n ${2}\n }\nsnippet do\n do {\n ${2}\n } while (${1:cond})\nsnippet while\n while ${1:cond}{\n ${2}\n }\nsnippet for enumerate names\n for (${1:var} in ${2:object}){\n ${3}\n }\nsnippet for enumerate values\n for each (${1:var} in ${2:object}){\n ${3}\n }\nsnippet get_set\n function get ${1:name} {\n return ${2}\n }\n function set $1 (newValue) {\n ${3}\n }\nsnippet interface\n interface name {\n function method(${1}):${2:returntype};\n }\nsnippet try\n try {\n ${1}\n } catch (error:ErrorType) {\n ${2}\n } finally {\n ${3}\n }\n# For Loop (same as c.snippet)\nsnippet for for (..) {..}\n for (${2:i} = 0; $2 < ${1:count}; $2${3:++}) {\n ${4:/* code */}\n }\n# Custom For Loop\nsnippet forr\n for (${1:i} = ${2:0}; ${3:$1 < 10}; $1${4:++}) {\n ${5:/* code */}\n }\n# If Condition\nsnippet if\n if (${1:/* condition */}) {\n ${2:/* code */}\n }\nsnippet el\n else {\n ${1}\n }\n# Ternary conditional\nsnippet t\n ${1:/* condition */} ? ${2:a} : ${3:b}\nsnippet fun\n function ${1:function_name}(${2})${3}\n {\n ${4:/* code */}\n }\n# FlxSprite (usefull when using the flixel library)\nsnippet FlxSprite\n package\n {\n import org.flixel.*\n\n public class ${1:ClassName} extends ${2:FlxSprite}\n {\n public function $1(${3: X:Number, Y:Number}):void\n {\n super(X,Y);\n ${4: //code...}\n }\n\n override public function update():void\n {\n super.update();\n ${5: //code...}\n }\n }\n }\n\n',t.scope="actionscript"}) -------------------------------------------------------------------------------- /theme/idle_fingers.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/theme/idle_fingers",["require","exports","module","ace/lib/dom"], function(acequire, exports, module) { 2 | 3 | exports.isDark = true; 4 | exports.cssClass = "ace-idle-fingers"; 5 | exports.cssText = ".ace-idle-fingers .ace_gutter {\ 6 | background: #3b3b3b;\ 7 | color: rgb(153,153,153)\ 8 | }\ 9 | .ace-idle-fingers .ace_print-margin {\ 10 | width: 1px;\ 11 | background: #3b3b3b\ 12 | }\ 13 | .ace-idle-fingers {\ 14 | background-color: #323232;\ 15 | color: #FFFFFF\ 16 | }\ 17 | .ace-idle-fingers .ace_cursor {\ 18 | color: #91FF00\ 19 | }\ 20 | .ace-idle-fingers .ace_marker-layer .ace_selection {\ 21 | background: rgba(90, 100, 126, 0.88)\ 22 | }\ 23 | .ace-idle-fingers.ace_multiselect .ace_selection.ace_start {\ 24 | box-shadow: 0 0 3px 0px #323232;\ 25 | }\ 26 | .ace-idle-fingers .ace_marker-layer .ace_step {\ 27 | background: rgb(102, 82, 0)\ 28 | }\ 29 | .ace-idle-fingers .ace_marker-layer .ace_bracket {\ 30 | margin: -1px 0 0 -1px;\ 31 | border: 1px solid #404040\ 32 | }\ 33 | .ace-idle-fingers .ace_marker-layer .ace_active-line {\ 34 | background: #353637\ 35 | }\ 36 | .ace-idle-fingers .ace_gutter-active-line {\ 37 | background-color: #353637\ 38 | }\ 39 | .ace-idle-fingers .ace_marker-layer .ace_selected-word {\ 40 | border: 1px solid rgba(90, 100, 126, 0.88)\ 41 | }\ 42 | .ace-idle-fingers .ace_invisible {\ 43 | color: #404040\ 44 | }\ 45 | .ace-idle-fingers .ace_keyword,\ 46 | .ace-idle-fingers .ace_meta {\ 47 | color: #CC7833\ 48 | }\ 49 | .ace-idle-fingers .ace_constant,\ 50 | .ace-idle-fingers .ace_constant.ace_character,\ 51 | .ace-idle-fingers .ace_constant.ace_character.ace_escape,\ 52 | .ace-idle-fingers .ace_constant.ace_other,\ 53 | .ace-idle-fingers .ace_support.ace_constant {\ 54 | color: #6C99BB\ 55 | }\ 56 | .ace-idle-fingers .ace_invalid {\ 57 | color: #FFFFFF;\ 58 | background-color: #FF0000\ 59 | }\ 60 | .ace-idle-fingers .ace_fold {\ 61 | background-color: #CC7833;\ 62 | border-color: #FFFFFF\ 63 | }\ 64 | .ace-idle-fingers .ace_support.ace_function {\ 65 | color: #B83426\ 66 | }\ 67 | .ace-idle-fingers .ace_variable.ace_parameter {\ 68 | font-style: italic\ 69 | }\ 70 | .ace-idle-fingers .ace_string {\ 71 | color: #A5C261\ 72 | }\ 73 | .ace-idle-fingers .ace_string.ace_regexp {\ 74 | color: #CCCC33\ 75 | }\ 76 | .ace-idle-fingers .ace_comment {\ 77 | font-style: italic;\ 78 | color: #BC9458\ 79 | }\ 80 | .ace-idle-fingers .ace_meta.ace_tag {\ 81 | color: #FFE5BB\ 82 | }\ 83 | .ace-idle-fingers .ace_entity.ace_name {\ 84 | color: #FFC66D\ 85 | }\ 86 | .ace-idle-fingers .ace_collab.ace_user1 {\ 87 | color: #323232;\ 88 | background-color: #FFF980\ 89 | }\ 90 | .ace-idle-fingers .ace_indent-guide {\ 91 | background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWMwMjLyZYiPj/8PAAreAwAI1+g0AAAAAElFTkSuQmCC) right repeat-y\ 92 | }"; 93 | 94 | var dom = acequire("../lib/dom"); 95 | dom.importCssString(exports.cssText, exports.cssClass); 96 | }); 97 | -------------------------------------------------------------------------------- /theme/solarized_dark.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/theme/solarized_dark",["require","exports","module","ace/lib/dom"], function(acequire, exports, module) { 2 | 3 | exports.isDark = true; 4 | exports.cssClass = "ace-solarized-dark"; 5 | exports.cssText = ".ace-solarized-dark .ace_gutter {\ 6 | background: #01313f;\ 7 | color: #d0edf7\ 8 | }\ 9 | .ace-solarized-dark .ace_print-margin {\ 10 | width: 1px;\ 11 | background: #33555E\ 12 | }\ 13 | .ace-solarized-dark {\ 14 | background-color: #002B36;\ 15 | color: #93A1A1\ 16 | }\ 17 | .ace-solarized-dark .ace_entity.ace_other.ace_attribute-name,\ 18 | .ace-solarized-dark .ace_storage {\ 19 | color: #93A1A1\ 20 | }\ 21 | .ace-solarized-dark .ace_cursor,\ 22 | .ace-solarized-dark .ace_string.ace_regexp {\ 23 | color: #D30102\ 24 | }\ 25 | .ace-solarized-dark .ace_marker-layer .ace_active-line,\ 26 | .ace-solarized-dark .ace_marker-layer .ace_selection {\ 27 | background: rgba(255, 255, 255, 0.1)\ 28 | }\ 29 | .ace-solarized-dark.ace_multiselect .ace_selection.ace_start {\ 30 | box-shadow: 0 0 3px 0px #002B36;\ 31 | }\ 32 | .ace-solarized-dark .ace_marker-layer .ace_step {\ 33 | background: rgb(102, 82, 0)\ 34 | }\ 35 | .ace-solarized-dark .ace_marker-layer .ace_bracket {\ 36 | margin: -1px 0 0 -1px;\ 37 | border: 1px solid rgba(147, 161, 161, 0.50)\ 38 | }\ 39 | .ace-solarized-dark .ace_gutter-active-line {\ 40 | background-color: #0d3440\ 41 | }\ 42 | .ace-solarized-dark .ace_marker-layer .ace_selected-word {\ 43 | border: 1px solid #073642\ 44 | }\ 45 | .ace-solarized-dark .ace_invisible {\ 46 | color: rgba(147, 161, 161, 0.50)\ 47 | }\ 48 | .ace-solarized-dark .ace_keyword,\ 49 | .ace-solarized-dark .ace_meta,\ 50 | .ace-solarized-dark .ace_support.ace_class,\ 51 | .ace-solarized-dark .ace_support.ace_type {\ 52 | color: #859900\ 53 | }\ 54 | .ace-solarized-dark .ace_constant.ace_character,\ 55 | .ace-solarized-dark .ace_constant.ace_other {\ 56 | color: #CB4B16\ 57 | }\ 58 | .ace-solarized-dark .ace_constant.ace_language {\ 59 | color: #B58900\ 60 | }\ 61 | .ace-solarized-dark .ace_constant.ace_numeric {\ 62 | color: #D33682\ 63 | }\ 64 | .ace-solarized-dark .ace_fold {\ 65 | background-color: #268BD2;\ 66 | border-color: #93A1A1\ 67 | }\ 68 | .ace-solarized-dark .ace_entity.ace_name.ace_function,\ 69 | .ace-solarized-dark .ace_entity.ace_name.ace_tag,\ 70 | .ace-solarized-dark .ace_support.ace_function,\ 71 | .ace-solarized-dark .ace_variable,\ 72 | .ace-solarized-dark .ace_variable.ace_language {\ 73 | color: #268BD2\ 74 | }\ 75 | .ace-solarized-dark .ace_string {\ 76 | color: #2AA198\ 77 | }\ 78 | .ace-solarized-dark .ace_comment {\ 79 | font-style: italic;\ 80 | color: #657B83\ 81 | }\ 82 | .ace-solarized-dark .ace_indent-guide {\ 83 | background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWNg0Db1ZVCxc/sPAAd4AlUHlLenAAAAAElFTkSuQmCC) right repeat-y\ 84 | }"; 85 | 86 | var dom = acequire("../lib/dom"); 87 | dom.importCssString(exports.cssText, exports.cssClass); 88 | }); 89 | -------------------------------------------------------------------------------- /theme/solarized_light.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/theme/solarized_light",["require","exports","module","ace/lib/dom"], function(acequire, exports, module) { 2 | 3 | exports.isDark = false; 4 | exports.cssClass = "ace-solarized-light"; 5 | exports.cssText = ".ace-solarized-light .ace_gutter {\ 6 | background: #fbf1d3;\ 7 | color: #333\ 8 | }\ 9 | .ace-solarized-light .ace_print-margin {\ 10 | width: 1px;\ 11 | background: #e8e8e8\ 12 | }\ 13 | .ace-solarized-light {\ 14 | background-color: #FDF6E3;\ 15 | color: #586E75\ 16 | }\ 17 | .ace-solarized-light .ace_cursor {\ 18 | color: #000000\ 19 | }\ 20 | .ace-solarized-light .ace_marker-layer .ace_selection {\ 21 | background: rgba(7, 54, 67, 0.09)\ 22 | }\ 23 | .ace-solarized-light.ace_multiselect .ace_selection.ace_start {\ 24 | box-shadow: 0 0 3px 0px #FDF6E3;\ 25 | }\ 26 | .ace-solarized-light .ace_marker-layer .ace_step {\ 27 | background: rgb(255, 255, 0)\ 28 | }\ 29 | .ace-solarized-light .ace_marker-layer .ace_bracket {\ 30 | margin: -1px 0 0 -1px;\ 31 | border: 1px solid rgba(147, 161, 161, 0.50)\ 32 | }\ 33 | .ace-solarized-light .ace_marker-layer .ace_active-line {\ 34 | background: #EEE8D5\ 35 | }\ 36 | .ace-solarized-light .ace_gutter-active-line {\ 37 | background-color : #EDE5C1\ 38 | }\ 39 | .ace-solarized-light .ace_marker-layer .ace_selected-word {\ 40 | border: 1px solid #073642\ 41 | }\ 42 | .ace-solarized-light .ace_invisible {\ 43 | color: rgba(147, 161, 161, 0.50)\ 44 | }\ 45 | .ace-solarized-light .ace_keyword,\ 46 | .ace-solarized-light .ace_meta,\ 47 | .ace-solarized-light .ace_support.ace_class,\ 48 | .ace-solarized-light .ace_support.ace_type {\ 49 | color: #859900\ 50 | }\ 51 | .ace-solarized-light .ace_constant.ace_character,\ 52 | .ace-solarized-light .ace_constant.ace_other {\ 53 | color: #CB4B16\ 54 | }\ 55 | .ace-solarized-light .ace_constant.ace_language {\ 56 | color: #B58900\ 57 | }\ 58 | .ace-solarized-light .ace_constant.ace_numeric {\ 59 | color: #D33682\ 60 | }\ 61 | .ace-solarized-light .ace_fold {\ 62 | background-color: #268BD2;\ 63 | border-color: #586E75\ 64 | }\ 65 | .ace-solarized-light .ace_entity.ace_name.ace_function,\ 66 | .ace-solarized-light .ace_entity.ace_name.ace_tag,\ 67 | .ace-solarized-light .ace_support.ace_function,\ 68 | .ace-solarized-light .ace_variable,\ 69 | .ace-solarized-light .ace_variable.ace_language {\ 70 | color: #268BD2\ 71 | }\ 72 | .ace-solarized-light .ace_storage {\ 73 | color: #073642\ 74 | }\ 75 | .ace-solarized-light .ace_string {\ 76 | color: #2AA198\ 77 | }\ 78 | .ace-solarized-light .ace_string.ace_regexp {\ 79 | color: #D30102\ 80 | }\ 81 | .ace-solarized-light .ace_comment,\ 82 | .ace-solarized-light .ace_entity.ace_other.ace_attribute-name {\ 83 | color: #93A1A1\ 84 | }\ 85 | .ace-solarized-light .ace_indent-guide {\ 86 | background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWNgYGBgYHjy8NJ/AAjgA5fzQUmBAAAAAElFTkSuQmCC) right repeat-y\ 87 | }"; 88 | 89 | var dom = acequire("../lib/dom"); 90 | dom.importCssString(exports.cssText, exports.cssClass); 91 | }); 92 | -------------------------------------------------------------------------------- /theme/github.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/theme/github",["require","exports","module","ace/lib/dom"], function(acequire, exports, module) { 2 | 3 | exports.isDark = false; 4 | exports.cssClass = "ace-github"; 5 | exports.cssText = "\ 6 | .ace-github .ace_gutter {\ 7 | background: #e8e8e8;\ 8 | color: #AAA;\ 9 | }\ 10 | .ace-github {\ 11 | background: #fff;\ 12 | color: #000;\ 13 | }\ 14 | .ace-github .ace_keyword {\ 15 | font-weight: bold;\ 16 | }\ 17 | .ace-github .ace_string {\ 18 | color: #D14;\ 19 | }\ 20 | .ace-github .ace_variable.ace_class {\ 21 | color: teal;\ 22 | }\ 23 | .ace-github .ace_constant.ace_numeric {\ 24 | color: #099;\ 25 | }\ 26 | .ace-github .ace_constant.ace_buildin {\ 27 | color: #0086B3;\ 28 | }\ 29 | .ace-github .ace_support.ace_function {\ 30 | color: #0086B3;\ 31 | }\ 32 | .ace-github .ace_comment {\ 33 | color: #998;\ 34 | font-style: italic;\ 35 | }\ 36 | .ace-github .ace_variable.ace_language {\ 37 | color: #0086B3;\ 38 | }\ 39 | .ace-github .ace_paren {\ 40 | font-weight: bold;\ 41 | }\ 42 | .ace-github .ace_boolean {\ 43 | font-weight: bold;\ 44 | }\ 45 | .ace-github .ace_string.ace_regexp {\ 46 | color: #009926;\ 47 | font-weight: normal;\ 48 | }\ 49 | .ace-github .ace_variable.ace_instance {\ 50 | color: teal;\ 51 | }\ 52 | .ace-github .ace_constant.ace_language {\ 53 | font-weight: bold;\ 54 | }\ 55 | .ace-github .ace_cursor {\ 56 | color: black;\ 57 | }\ 58 | .ace-github.ace_focus .ace_marker-layer .ace_active-line {\ 59 | background: rgb(255, 255, 204);\ 60 | }\ 61 | .ace-github .ace_marker-layer .ace_active-line {\ 62 | background: rgb(245, 245, 245);\ 63 | }\ 64 | .ace-github .ace_marker-layer .ace_selection {\ 65 | background: rgb(181, 213, 255);\ 66 | }\ 67 | .ace-github.ace_multiselect .ace_selection.ace_start {\ 68 | box-shadow: 0 0 3px 0px white;\ 69 | }\ 70 | .ace-github.ace_nobold .ace_line > span {\ 71 | font-weight: normal !important;\ 72 | }\ 73 | .ace-github .ace_marker-layer .ace_step {\ 74 | background: rgb(252, 255, 0);\ 75 | }\ 76 | .ace-github .ace_marker-layer .ace_stack {\ 77 | background: rgb(164, 229, 101);\ 78 | }\ 79 | .ace-github .ace_marker-layer .ace_bracket {\ 80 | margin: -1px 0 0 -1px;\ 81 | border: 1px solid rgb(192, 192, 192);\ 82 | }\ 83 | .ace-github .ace_gutter-active-line {\ 84 | background-color : rgba(0, 0, 0, 0.07);\ 85 | }\ 86 | .ace-github .ace_marker-layer .ace_selected-word {\ 87 | background: rgb(250, 250, 255);\ 88 | border: 1px solid rgb(200, 200, 250);\ 89 | }\ 90 | .ace-github .ace_invisible {\ 91 | color: #BFBFBF\ 92 | }\ 93 | .ace-github .ace_print-margin {\ 94 | width: 1px;\ 95 | background: #e8e8e8;\ 96 | }\ 97 | .ace-github .ace_indent-guide {\ 98 | background: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==\") right repeat-y;\ 99 | }"; 100 | 101 | var dom = acequire("../lib/dom"); 102 | dom.importCssString(exports.cssText, exports.cssClass); 103 | }); 104 | -------------------------------------------------------------------------------- /snippets/vala.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/vala",["require","exports","module"],function(e,t,n){"use strict";t.snippets=[{content:"case ${1:condition}:\n $0\n break;\n",name:"case",scope:"vala",tabTrigger:"case"},{content:"/**\n * ${6}\n */\n${1:public} class ${2:MethodName}${3: : GLib.Object} {\n\n /**\n * ${7}\n */\n public ${2}(${4}) {\n ${5}\n }\n\n $0\n}",name:"class",scope:"vala",tabTrigger:"class"},{content:"(${1}) => {\n ${0}\n}\n",name:"closure",scope:"vala",tabTrigger:"=>"},{content:"/*\n * $0\n */",name:"Comment (multiline)",scope:"vala",tabTrigger:"/*"},{content:"Console.WriteLine($1);\n$0",name:"Console.WriteLine (writeline)",scope:"vala",tabTrigger:"writeline"},{content:'[DBus(name = "$0")]',name:"DBus annotation",scope:"vala",tabTrigger:"[DBus"},{content:"delegate ${1:void} ${2:DelegateName}($0);",name:"delegate",scope:"vala",tabTrigger:"delegate"},{content:"do {\n $0\n} while ($1);\n",name:"do while",scope:"vala",tabTrigger:"dowhile"},{content:"/**\n * $0\n */",name:"DocBlock",scope:"vala",tabTrigger:"/**"},{content:"else if ($1) {\n $0\n}\n",name:"else if (elseif)",scope:"vala",tabTrigger:"elseif"},{content:"else {\n $0\n}",name:"else",scope:"vala",tabTrigger:"else"},{content:"enum {$1:EnumName} {\n $0\n}",name:"enum",scope:"vala",tabTrigger:"enum"},{content:"public errordomain ${1:Error} {\n $0\n}",name:"error domain",scope:"vala",tabTrigger:"errordomain"},{content:"for ($1;$2;$3) {\n $0\n}",name:"for",scope:"vala",tabTrigger:"for"},{content:"foreach ($1 in $2) {\n $0\n}",name:"foreach",scope:"vala",tabTrigger:"foreach"},{content:"Gee.ArrayList<${1:G}>($0);",name:"Gee.ArrayList",scope:"vala",tabTrigger:"ArrayList"},{content:"Gee.HashMap<${1:K},${2:V}>($0);",name:"Gee.HashMap",scope:"vala",tabTrigger:"HashMap"},{content:"Gee.HashSet<${1:G}>($0);",name:"Gee.HashSet",scope:"vala",tabTrigger:"HashSet"},{content:"if ($1) {\n $0\n}",name:"if",scope:"vala",tabTrigger:"if"},{content:"interface ${1:InterfaceName}{$2: : SuperInterface} {\n $0\n}",name:"interface",scope:"vala",tabTrigger:"interface"},{content:"public static int main(string [] argv) {\n ${0}\n return 0;\n}",name:"Main function",scope:"vala",tabTrigger:"main"},{content:"namespace $1 {\n $0\n}\n",name:"namespace (ns)",scope:"vala",tabTrigger:"ns"},{content:"stdout.printf($0);",name:"printf",scope:"vala",tabTrigger:"printf"},{content:"${1:public} ${2:Type} ${3:Name} {\n set {\n $0\n }\n get {\n\n }\n}",name:"property (prop)",scope:"vala",tabTrigger:"prop"},{content:"${1:public} ${2:Type} ${3:Name} {\n get {\n $0\n }\n}",name:"read-only property (roprop)",scope:"vala",tabTrigger:"roprop"},{content:'@"${1:\\$var}"',name:"String template (@)",scope:"vala",tabTrigger:"@"},{content:"struct ${1:StructName} {\n $0\n}",name:"struct",scope:"vala",tabTrigger:"struct"},{content:"switch ($1) {\n $0\n}",name:"switch",scope:"vala",tabTrigger:"switch"},{content:"try {\n $2\n} catch (${1:Error} e) {\n $0\n}",name:"try/catch",scope:"vala",tabTrigger:"try"},{content:'"""$0""";',name:'Verbatim string (""")',scope:"vala",tabTrigger:"verbatim"},{content:"while ($1) {\n $0\n}",name:"while",scope:"vala",tabTrigger:"while"}],t.scope=""}) -------------------------------------------------------------------------------- /theme/dawn.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/theme/dawn",["require","exports","module","ace/lib/dom"], function(acequire, exports, module) { 2 | 3 | exports.isDark = false; 4 | exports.cssClass = "ace-dawn"; 5 | exports.cssText = ".ace-dawn .ace_gutter {\ 6 | background: #ebebeb;\ 7 | color: #333\ 8 | }\ 9 | .ace-dawn .ace_print-margin {\ 10 | width: 1px;\ 11 | background: #e8e8e8\ 12 | }\ 13 | .ace-dawn {\ 14 | background-color: #F9F9F9;\ 15 | color: #080808\ 16 | }\ 17 | .ace-dawn .ace_cursor {\ 18 | color: #000000\ 19 | }\ 20 | .ace-dawn .ace_marker-layer .ace_selection {\ 21 | background: rgba(39, 95, 255, 0.30)\ 22 | }\ 23 | .ace-dawn.ace_multiselect .ace_selection.ace_start {\ 24 | box-shadow: 0 0 3px 0px #F9F9F9;\ 25 | }\ 26 | .ace-dawn .ace_marker-layer .ace_step {\ 27 | background: rgb(255, 255, 0)\ 28 | }\ 29 | .ace-dawn .ace_marker-layer .ace_bracket {\ 30 | margin: -1px 0 0 -1px;\ 31 | border: 1px solid rgba(75, 75, 126, 0.50)\ 32 | }\ 33 | .ace-dawn .ace_marker-layer .ace_active-line {\ 34 | background: rgba(36, 99, 180, 0.12)\ 35 | }\ 36 | .ace-dawn .ace_gutter-active-line {\ 37 | background-color : #dcdcdc\ 38 | }\ 39 | .ace-dawn .ace_marker-layer .ace_selected-word {\ 40 | border: 1px solid rgba(39, 95, 255, 0.30)\ 41 | }\ 42 | .ace-dawn .ace_invisible {\ 43 | color: rgba(75, 75, 126, 0.50)\ 44 | }\ 45 | .ace-dawn .ace_keyword,\ 46 | .ace-dawn .ace_meta {\ 47 | color: #794938\ 48 | }\ 49 | .ace-dawn .ace_constant,\ 50 | .ace-dawn .ace_constant.ace_character,\ 51 | .ace-dawn .ace_constant.ace_character.ace_escape,\ 52 | .ace-dawn .ace_constant.ace_other {\ 53 | color: #811F24\ 54 | }\ 55 | .ace-dawn .ace_invalid.ace_illegal {\ 56 | text-decoration: underline;\ 57 | font-style: italic;\ 58 | color: #F8F8F8;\ 59 | background-color: #B52A1D\ 60 | }\ 61 | .ace-dawn .ace_invalid.ace_deprecated {\ 62 | text-decoration: underline;\ 63 | font-style: italic;\ 64 | color: #B52A1D\ 65 | }\ 66 | .ace-dawn .ace_support {\ 67 | color: #691C97\ 68 | }\ 69 | .ace-dawn .ace_support.ace_constant {\ 70 | color: #B4371F\ 71 | }\ 72 | .ace-dawn .ace_fold {\ 73 | background-color: #794938;\ 74 | border-color: #080808\ 75 | }\ 76 | .ace-dawn .ace_list,\ 77 | .ace-dawn .ace_markup.ace_list,\ 78 | .ace-dawn .ace_support.ace_function {\ 79 | color: #693A17\ 80 | }\ 81 | .ace-dawn .ace_storage {\ 82 | font-style: italic;\ 83 | color: #A71D5D\ 84 | }\ 85 | .ace-dawn .ace_string {\ 86 | color: #0B6125\ 87 | }\ 88 | .ace-dawn .ace_string.ace_regexp {\ 89 | color: #CF5628\ 90 | }\ 91 | .ace-dawn .ace_comment {\ 92 | font-style: italic;\ 93 | color: #5A525F\ 94 | }\ 95 | .ace-dawn .ace_heading,\ 96 | .ace-dawn .ace_markup.ace_heading {\ 97 | color: #19356D\ 98 | }\ 99 | .ace-dawn .ace_variable {\ 100 | color: #234A97\ 101 | }\ 102 | .ace-dawn .ace_indent-guide {\ 103 | background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWNgYGBgYLh/5+x/AAizA4hxNNsZAAAAAElFTkSuQmCC) right repeat-y\ 104 | }"; 105 | 106 | var dom = acequire("../lib/dom"); 107 | dom.importCssString(exports.cssText, exports.cssClass); 108 | }); 109 | -------------------------------------------------------------------------------- /theme/clouds_midnight.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/theme/clouds_midnight",["require","exports","module","ace/lib/dom"], function(acequire, exports, module) { 2 | 3 | exports.isDark = true; 4 | exports.cssClass = "ace-clouds-midnight"; 5 | exports.cssText = ".ace-clouds-midnight .ace_gutter {\ 6 | background: #232323;\ 7 | color: #929292\ 8 | }\ 9 | .ace-clouds-midnight .ace_print-margin {\ 10 | width: 1px;\ 11 | background: #232323\ 12 | }\ 13 | .ace-clouds-midnight {\ 14 | background-color: #191919;\ 15 | color: #929292\ 16 | }\ 17 | .ace-clouds-midnight .ace_cursor {\ 18 | color: #7DA5DC\ 19 | }\ 20 | .ace-clouds-midnight .ace_marker-layer .ace_selection {\ 21 | background: #000000\ 22 | }\ 23 | .ace-clouds-midnight.ace_multiselect .ace_selection.ace_start {\ 24 | box-shadow: 0 0 3px 0px #191919;\ 25 | }\ 26 | .ace-clouds-midnight .ace_marker-layer .ace_step {\ 27 | background: rgb(102, 82, 0)\ 28 | }\ 29 | .ace-clouds-midnight .ace_marker-layer .ace_bracket {\ 30 | margin: -1px 0 0 -1px;\ 31 | border: 1px solid #BFBFBF\ 32 | }\ 33 | .ace-clouds-midnight .ace_marker-layer .ace_active-line {\ 34 | background: rgba(215, 215, 215, 0.031)\ 35 | }\ 36 | .ace-clouds-midnight .ace_gutter-active-line {\ 37 | background-color: rgba(215, 215, 215, 0.031)\ 38 | }\ 39 | .ace-clouds-midnight .ace_marker-layer .ace_selected-word {\ 40 | border: 1px solid #000000\ 41 | }\ 42 | .ace-clouds-midnight .ace_invisible {\ 43 | color: #666\ 44 | }\ 45 | .ace-clouds-midnight .ace_keyword,\ 46 | .ace-clouds-midnight .ace_meta,\ 47 | .ace-clouds-midnight .ace_support.ace_constant.ace_property-value {\ 48 | color: #927C5D\ 49 | }\ 50 | .ace-clouds-midnight .ace_keyword.ace_operator {\ 51 | color: #4B4B4B\ 52 | }\ 53 | .ace-clouds-midnight .ace_keyword.ace_other.ace_unit {\ 54 | color: #366F1A\ 55 | }\ 56 | .ace-clouds-midnight .ace_constant.ace_language {\ 57 | color: #39946A\ 58 | }\ 59 | .ace-clouds-midnight .ace_constant.ace_numeric {\ 60 | color: #46A609\ 61 | }\ 62 | .ace-clouds-midnight .ace_constant.ace_character.ace_entity {\ 63 | color: #A165AC\ 64 | }\ 65 | .ace-clouds-midnight .ace_invalid {\ 66 | color: #FFFFFF;\ 67 | background-color: #E92E2E\ 68 | }\ 69 | .ace-clouds-midnight .ace_fold {\ 70 | background-color: #927C5D;\ 71 | border-color: #929292\ 72 | }\ 73 | .ace-clouds-midnight .ace_storage,\ 74 | .ace-clouds-midnight .ace_support.ace_class,\ 75 | .ace-clouds-midnight .ace_support.ace_function,\ 76 | .ace-clouds-midnight .ace_support.ace_other,\ 77 | .ace-clouds-midnight .ace_support.ace_type {\ 78 | color: #E92E2E\ 79 | }\ 80 | .ace-clouds-midnight .ace_string {\ 81 | color: #5D90CD\ 82 | }\ 83 | .ace-clouds-midnight .ace_comment {\ 84 | color: #3C403B\ 85 | }\ 86 | .ace-clouds-midnight .ace_entity.ace_name.ace_tag,\ 87 | .ace-clouds-midnight .ace_entity.ace_other.ace_attribute-name {\ 88 | color: #606060\ 89 | }\ 90 | .ace-clouds-midnight .ace_indent-guide {\ 91 | background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWNgYGBgYHB3d/8PAAOIAdULw8qMAAAAAElFTkSuQmCC) right repeat-y\ 92 | }"; 93 | 94 | var dom = acequire("../lib/dom"); 95 | dom.importCssString(exports.cssText, exports.cssClass); 96 | }); 97 | -------------------------------------------------------------------------------- /test/error-annotations.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | /*jshint asi: true, browser: true */ 3 | 4 | var test = require('tape'); 5 | 6 | +function setup() { 7 | 8 | function createEditorElem(lang) { 9 | var elem = document.createElement('div') 10 | elem.setAttribute('id', lang + '-editor') 11 | elem.setAttribute('class', 'editor') 12 | document.body.appendChild(elem) 13 | } 14 | 15 | function loadStyle() { 16 | var css = require('./stringified/style'); 17 | var head = document.getElementsByTagName('head')[0]; 18 | var style = document.createElement('style'); 19 | 20 | style.type = 'text/css'; 21 | 22 | if (style.styleSheet){ 23 | style.styleSheet.cssText = css; 24 | } else { 25 | style.appendChild(document.createTextNode(css)); 26 | } 27 | head.appendChild(style); 28 | } 29 | 30 | ['javascript', 'coffee', 'json', 'lua', 'xml'].forEach(createEditorElem); 31 | loadStyle(); 32 | 33 | require('./fixtures/javascript-editor'); 34 | require('./fixtures/coffee-editor'); 35 | require('./fixtures/json-editor'); 36 | require('./fixtures/lua-editor'); 37 | require('./fixtures/xml-editor'); 38 | }() 39 | 40 | test('error annotations provided by inlined worker', function (t) { 41 | function getError(lang) { 42 | var editor = document.getElementById(lang + '-editor'); 43 | var errors = editor.getElementsByClassName('ace_error') 44 | return { length: errors.length, line: errors[0] && errors[0].textContent } 45 | } 46 | 47 | // give editors time to initialize and workers to do the annotations 48 | var jsCount = 0 49 | , coffeeCount = 0 50 | , jsonCount = 0 51 | , luaCount = 0 52 | , xmlCount = 0; 53 | 54 | var max = 10; // give it a max of 10 seconds 55 | 56 | +function javascript() { 57 | var err = getError('javascript') 58 | if (!err.length && ++jsCount < max) return setTimeout(javascript, 1000) 59 | 60 | t.equal(err.length, 1, 'javascript editor shows one error') 61 | t.equal(err.line, '5', 'on line 5') 62 | }() 63 | 64 | +function coffee() { 65 | var err = getError('coffee') 66 | if (!err.length && ++coffeeCount < max) return setTimeout(coffee, 1000) 67 | 68 | t.equal(err.length, 1, 'coffee editor shows one error') 69 | t.equal(err.line, '5', 'on line 5') 70 | }() 71 | 72 | +function json() { 73 | var err = getError('json') 74 | if (!err.length && ++jsonCount < max) return setTimeout(json, 1000) 75 | 76 | t.equal(err.length, 1, 'json editor shows one error') 77 | t.equal(err.line, '5', 'on line 5') 78 | }() 79 | 80 | +function lua() { 81 | var err = getError('lua') 82 | if (!err.length && ++luaCount < max) return setTimeout(lua, 1000) 83 | 84 | t.equal(err.length, 1, 'lua editor shows one error') 85 | t.equal(err.line, '6', 'on line 6') 86 | 87 | t.end() 88 | }() 89 | +function xml() { 90 | var err = getError('xml') 91 | if (!err.length && ++xmlCount < max) return setTimeout(xml, 1000) 92 | 93 | t.equal(err.length, 1, 'xml editor shows one error') 94 | t.equal(err.line, '5', 'on line 5') 95 | }() 96 | }) 97 | -------------------------------------------------------------------------------- /theme/merbivore_soft.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/theme/merbivore_soft",["require","exports","module","ace/lib/dom"], function(acequire, exports, module) { 2 | 3 | exports.isDark = true; 4 | exports.cssClass = "ace-merbivore-soft"; 5 | exports.cssText = ".ace-merbivore-soft .ace_gutter {\ 6 | background: #262424;\ 7 | color: #E6E1DC\ 8 | }\ 9 | .ace-merbivore-soft .ace_print-margin {\ 10 | width: 1px;\ 11 | background: #262424\ 12 | }\ 13 | .ace-merbivore-soft {\ 14 | background-color: #1C1C1C;\ 15 | color: #E6E1DC\ 16 | }\ 17 | .ace-merbivore-soft .ace_cursor {\ 18 | color: #FFFFFF\ 19 | }\ 20 | .ace-merbivore-soft .ace_marker-layer .ace_selection {\ 21 | background: #494949\ 22 | }\ 23 | .ace-merbivore-soft.ace_multiselect .ace_selection.ace_start {\ 24 | box-shadow: 0 0 3px 0px #1C1C1C;\ 25 | }\ 26 | .ace-merbivore-soft .ace_marker-layer .ace_step {\ 27 | background: rgb(102, 82, 0)\ 28 | }\ 29 | .ace-merbivore-soft .ace_marker-layer .ace_bracket {\ 30 | margin: -1px 0 0 -1px;\ 31 | border: 1px solid #404040\ 32 | }\ 33 | .ace-merbivore-soft .ace_marker-layer .ace_active-line {\ 34 | background: #333435\ 35 | }\ 36 | .ace-merbivore-soft .ace_gutter-active-line {\ 37 | background-color: #333435\ 38 | }\ 39 | .ace-merbivore-soft .ace_marker-layer .ace_selected-word {\ 40 | border: 1px solid #494949\ 41 | }\ 42 | .ace-merbivore-soft .ace_invisible {\ 43 | color: #404040\ 44 | }\ 45 | .ace-merbivore-soft .ace_entity.ace_name.ace_tag,\ 46 | .ace-merbivore-soft .ace_keyword,\ 47 | .ace-merbivore-soft .ace_meta,\ 48 | .ace-merbivore-soft .ace_meta.ace_tag,\ 49 | .ace-merbivore-soft .ace_storage {\ 50 | color: #FC803A\ 51 | }\ 52 | .ace-merbivore-soft .ace_constant,\ 53 | .ace-merbivore-soft .ace_constant.ace_character,\ 54 | .ace-merbivore-soft .ace_constant.ace_character.ace_escape,\ 55 | .ace-merbivore-soft .ace_constant.ace_other,\ 56 | .ace-merbivore-soft .ace_support.ace_type {\ 57 | color: #68C1D8\ 58 | }\ 59 | .ace-merbivore-soft .ace_constant.ace_character.ace_escape {\ 60 | color: #B3E5B4\ 61 | }\ 62 | .ace-merbivore-soft .ace_constant.ace_language {\ 63 | color: #E1C582\ 64 | }\ 65 | .ace-merbivore-soft .ace_constant.ace_library,\ 66 | .ace-merbivore-soft .ace_string,\ 67 | .ace-merbivore-soft .ace_support.ace_constant {\ 68 | color: #8EC65F\ 69 | }\ 70 | .ace-merbivore-soft .ace_constant.ace_numeric {\ 71 | color: #7FC578\ 72 | }\ 73 | .ace-merbivore-soft .ace_invalid,\ 74 | .ace-merbivore-soft .ace_invalid.ace_deprecated {\ 75 | color: #FFFFFF;\ 76 | background-color: #FE3838\ 77 | }\ 78 | .ace-merbivore-soft .ace_fold {\ 79 | background-color: #FC803A;\ 80 | border-color: #E6E1DC\ 81 | }\ 82 | .ace-merbivore-soft .ace_comment,\ 83 | .ace-merbivore-soft .ace_meta {\ 84 | font-style: italic;\ 85 | color: #AC4BB8\ 86 | }\ 87 | .ace-merbivore-soft .ace_entity.ace_other.ace_attribute-name {\ 88 | color: #EAF1A3\ 89 | }\ 90 | .ace-merbivore-soft .ace_indent-guide {\ 91 | background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWOQkpLyZfD09PwPAAfYAnaStpHRAAAAAElFTkSuQmCC) right repeat-y\ 92 | }"; 93 | 94 | var dom = acequire("../lib/dom"); 95 | dom.importCssString(exports.cssText, exports.cssClass); 96 | }); 97 | -------------------------------------------------------------------------------- /theme/kr_theme.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/theme/kr_theme",["require","exports","module","ace/lib/dom"], function(acequire, exports, module) { 2 | 3 | exports.isDark = true; 4 | exports.cssClass = "ace-kr-theme"; 5 | exports.cssText = ".ace-kr-theme .ace_gutter {\ 6 | background: #1c1917;\ 7 | color: #FCFFE0\ 8 | }\ 9 | .ace-kr-theme .ace_print-margin {\ 10 | width: 1px;\ 11 | background: #1c1917\ 12 | }\ 13 | .ace-kr-theme {\ 14 | background-color: #0B0A09;\ 15 | color: #FCFFE0\ 16 | }\ 17 | .ace-kr-theme .ace_cursor {\ 18 | color: #FF9900\ 19 | }\ 20 | .ace-kr-theme .ace_marker-layer .ace_selection {\ 21 | background: rgba(170, 0, 255, 0.45)\ 22 | }\ 23 | .ace-kr-theme.ace_multiselect .ace_selection.ace_start {\ 24 | box-shadow: 0 0 3px 0px #0B0A09;\ 25 | }\ 26 | .ace-kr-theme .ace_marker-layer .ace_step {\ 27 | background: rgb(102, 82, 0)\ 28 | }\ 29 | .ace-kr-theme .ace_marker-layer .ace_bracket {\ 30 | margin: -1px 0 0 -1px;\ 31 | border: 1px solid rgba(255, 177, 111, 0.32)\ 32 | }\ 33 | .ace-kr-theme .ace_marker-layer .ace_active-line {\ 34 | background: #38403D\ 35 | }\ 36 | .ace-kr-theme .ace_gutter-active-line {\ 37 | background-color : #38403D\ 38 | }\ 39 | .ace-kr-theme .ace_marker-layer .ace_selected-word {\ 40 | border: 1px solid rgba(170, 0, 255, 0.45)\ 41 | }\ 42 | .ace-kr-theme .ace_invisible {\ 43 | color: rgba(255, 177, 111, 0.32)\ 44 | }\ 45 | .ace-kr-theme .ace_keyword,\ 46 | .ace-kr-theme .ace_meta {\ 47 | color: #949C8B\ 48 | }\ 49 | .ace-kr-theme .ace_constant,\ 50 | .ace-kr-theme .ace_constant.ace_character,\ 51 | .ace-kr-theme .ace_constant.ace_character.ace_escape,\ 52 | .ace-kr-theme .ace_constant.ace_other {\ 53 | color: rgba(210, 117, 24, 0.76)\ 54 | }\ 55 | .ace-kr-theme .ace_invalid {\ 56 | color: #F8F8F8;\ 57 | background-color: #A41300\ 58 | }\ 59 | .ace-kr-theme .ace_support {\ 60 | color: #9FC28A\ 61 | }\ 62 | .ace-kr-theme .ace_support.ace_constant {\ 63 | color: #C27E66\ 64 | }\ 65 | .ace-kr-theme .ace_fold {\ 66 | background-color: #949C8B;\ 67 | border-color: #FCFFE0\ 68 | }\ 69 | .ace-kr-theme .ace_support.ace_function {\ 70 | color: #85873A\ 71 | }\ 72 | .ace-kr-theme .ace_storage {\ 73 | color: #FFEE80\ 74 | }\ 75 | .ace-kr-theme .ace_string {\ 76 | color: rgba(164, 161, 181, 0.8)\ 77 | }\ 78 | .ace-kr-theme .ace_string.ace_regexp {\ 79 | color: rgba(125, 255, 192, 0.65)\ 80 | }\ 81 | .ace-kr-theme .ace_comment {\ 82 | font-style: italic;\ 83 | color: #706D5B\ 84 | }\ 85 | .ace-kr-theme .ace_variable {\ 86 | color: #D1A796\ 87 | }\ 88 | .ace-kr-theme .ace_list,\ 89 | .ace-kr-theme .ace_markup.ace_list {\ 90 | background-color: #0F0040\ 91 | }\ 92 | .ace-kr-theme .ace_variable.ace_language {\ 93 | color: #FF80E1\ 94 | }\ 95 | .ace-kr-theme .ace_meta.ace_tag {\ 96 | color: #BABD9C\ 97 | }\ 98 | .ace-kr-theme .ace_indent-guide {\ 99 | background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWNgYGBgYFBXV/8PAAJoAXX4kT2EAAAAAElFTkSuQmCC) right repeat-y\ 100 | }"; 101 | 102 | var dom = acequire("../lib/dom"); 103 | dom.importCssString(exports.cssText, exports.cssClass); 104 | }); 105 | -------------------------------------------------------------------------------- /mode/ada.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/mode/ada_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"], function(acequire, exports, module) { 2 | "use strict"; 3 | 4 | var oop = acequire("../lib/oop"); 5 | var TextHighlightRules = acequire("./text_highlight_rules").TextHighlightRules; 6 | 7 | var AdaHighlightRules = function() { 8 | var keywords = "abort|else|new|return|abs|elsif|not|reverse|abstract|end|null|accept|entry|select|" + 9 | "access|exception|of|separate|aliased|exit|or|some|all|others|subtype|and|for|out|synchronized|" + 10 | "array|function|overriding|at|tagged|generic|package|task|begin|goto|pragma|terminate|" + 11 | "body|private|then|if|procedure|type|case|in|protected|constant|interface|until|" + 12 | "|is|raise|use|declare|range|delay|limited|record|when|delta|loop|rem|while|digits|renames|with|do|mod|requeue|xor"; 13 | 14 | var builtinConstants = ( 15 | "true|false|null" 16 | ); 17 | 18 | var builtinFunctions = ( 19 | "count|min|max|avg|sum|rank|now|coalesce|main" 20 | ); 21 | 22 | var keywordMapper = this.createKeywordMapper({ 23 | "support.function": builtinFunctions, 24 | "keyword": keywords, 25 | "constant.language": builtinConstants 26 | }, "identifier", true); 27 | 28 | this.$rules = { 29 | "start" : [ { 30 | token : "comment", 31 | regex : "--.*$" 32 | }, { 33 | token : "string", // " string 34 | regex : '".*?"' 35 | }, { 36 | token : "string", // ' string 37 | regex : "'.*?'" 38 | }, { 39 | token : "constant.numeric", // float 40 | regex : "[+-]?\\d+(?:(?:\\.\\d*)?(?:[eE][+-]?\\d+)?)?\\b" 41 | }, { 42 | token : keywordMapper, 43 | regex : "[a-zA-Z_$][a-zA-Z0-9_$]*\\b" 44 | }, { 45 | token : "keyword.operator", 46 | regex : "\\+|\\-|\\/|\\/\\/|%|<@>|@>|<@|&|\\^|~|<|>|<=|=>|==|!=|<>|=" 47 | }, { 48 | token : "paren.lparen", 49 | regex : "[\\(]" 50 | }, { 51 | token : "paren.rparen", 52 | regex : "[\\)]" 53 | }, { 54 | token : "text", 55 | regex : "\\s+" 56 | } ] 57 | }; 58 | }; 59 | 60 | oop.inherits(AdaHighlightRules, TextHighlightRules); 61 | 62 | exports.AdaHighlightRules = AdaHighlightRules; 63 | }); 64 | 65 | ace.define("ace/mode/ada",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/ada_highlight_rules"], function(acequire, exports, module) { 66 | "use strict"; 67 | 68 | var oop = acequire("../lib/oop"); 69 | var TextMode = acequire("./text").Mode; 70 | var AdaHighlightRules = acequire("./ada_highlight_rules").AdaHighlightRules; 71 | 72 | var Mode = function() { 73 | this.HighlightRules = AdaHighlightRules; 74 | this.$behaviour = this.$defaultBehaviour; 75 | }; 76 | oop.inherits(Mode, TextMode); 77 | 78 | (function() { 79 | 80 | this.lineCommentStart = "--"; 81 | 82 | this.$id = "ace/mode/ada"; 83 | }).call(Mode.prototype); 84 | 85 | exports.Mode = Mode; 86 | 87 | }); 88 | -------------------------------------------------------------------------------- /mode/gcode.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/mode/gcode_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"], function(acequire, exports, module) { 2 | "use strict"; 3 | 4 | var oop = acequire("../lib/oop"); 5 | var TextHighlightRules = acequire("./text_highlight_rules").TextHighlightRules; 6 | 7 | var GcodeHighlightRules = function() { 8 | 9 | var keywords = ( 10 | "IF|DO|WHILE|ENDWHILE|CALL|ENDIF|SUB|ENDSUB|GOTO|REPEAT|ENDREPEAT|CALL" 11 | ); 12 | 13 | var builtinConstants = ( 14 | "PI" 15 | ); 16 | 17 | var builtinFunctions = ( 18 | "ATAN|ABS|ACOS|ASIN|SIN|COS|EXP|FIX|FUP|ROUND|LN|TAN" 19 | ); 20 | var keywordMapper = this.createKeywordMapper({ 21 | "support.function": builtinFunctions, 22 | "keyword": keywords, 23 | "constant.language": builtinConstants 24 | }, "identifier", true); 25 | 26 | this.$rules = { 27 | "start" : [ { 28 | token : "comment", 29 | regex : "\\(.*\\)" 30 | }, { 31 | token : "comment", // block number 32 | regex : "([N])([0-9]+)" 33 | }, { 34 | token : "string", // " string 35 | regex : "([G])([0-9]+\\.?[0-9]?)" 36 | }, { 37 | token : "string", // ' string 38 | regex : "([M])([0-9]+\\.?[0-9]?)" 39 | }, { 40 | token : "constant.numeric", // float 41 | regex : "([-+]?([0-9]*\\.?[0-9]+\\.?))|(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)" 42 | }, { 43 | token : keywordMapper, 44 | regex : "[A-Z]" 45 | }, { 46 | token : "keyword.operator", 47 | regex : "EQ|LT|GT|NE|GE|LE|OR|XOR" 48 | }, { 49 | token : "paren.lparen", 50 | regex : "[\\[]" 51 | }, { 52 | token : "paren.rparen", 53 | regex : "[\\]]" 54 | }, { 55 | token : "text", 56 | regex : "\\s+" 57 | } ] 58 | }; 59 | }; 60 | 61 | oop.inherits(GcodeHighlightRules, TextHighlightRules); 62 | 63 | exports.GcodeHighlightRules = GcodeHighlightRules; 64 | }); 65 | 66 | ace.define("ace/mode/gcode",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/gcode_highlight_rules","ace/range"], function(acequire, exports, module) { 67 | "use strict"; 68 | 69 | var oop = acequire("../lib/oop"); 70 | var TextMode = acequire("./text").Mode; 71 | var GcodeHighlightRules = acequire("./gcode_highlight_rules").GcodeHighlightRules; 72 | var Range = acequire("../range").Range; 73 | 74 | var Mode = function() { 75 | this.HighlightRules = GcodeHighlightRules; 76 | this.$behaviour = this.$defaultBehaviour; 77 | }; 78 | oop.inherits(Mode, TextMode); 79 | 80 | (function() { 81 | this.$id = "ace/mode/gcode"; 82 | }).call(Mode.prototype); 83 | 84 | exports.Mode = Mode; 85 | 86 | }); 87 | -------------------------------------------------------------------------------- /theme/monokai.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/theme/monokai",["require","exports","module","ace/lib/dom"], function(acequire, exports, module) { 2 | 3 | exports.isDark = true; 4 | exports.cssClass = "ace-monokai"; 5 | exports.cssText = ".ace-monokai .ace_gutter {\ 6 | background: #2F3129;\ 7 | color: #8F908A\ 8 | }\ 9 | .ace-monokai .ace_print-margin {\ 10 | width: 1px;\ 11 | background: #555651\ 12 | }\ 13 | .ace-monokai {\ 14 | background-color: #272822;\ 15 | color: #F8F8F2\ 16 | }\ 17 | .ace-monokai .ace_cursor {\ 18 | color: #F8F8F0\ 19 | }\ 20 | .ace-monokai .ace_marker-layer .ace_selection {\ 21 | background: #49483E\ 22 | }\ 23 | .ace-monokai.ace_multiselect .ace_selection.ace_start {\ 24 | box-shadow: 0 0 3px 0px #272822;\ 25 | }\ 26 | .ace-monokai .ace_marker-layer .ace_step {\ 27 | background: rgb(102, 82, 0)\ 28 | }\ 29 | .ace-monokai .ace_marker-layer .ace_bracket {\ 30 | margin: -1px 0 0 -1px;\ 31 | border: 1px solid #49483E\ 32 | }\ 33 | .ace-monokai .ace_marker-layer .ace_active-line {\ 34 | background: #202020\ 35 | }\ 36 | .ace-monokai .ace_gutter-active-line {\ 37 | background-color: #272727\ 38 | }\ 39 | .ace-monokai .ace_marker-layer .ace_selected-word {\ 40 | border: 1px solid #49483E\ 41 | }\ 42 | .ace-monokai .ace_invisible {\ 43 | color: #52524d\ 44 | }\ 45 | .ace-monokai .ace_entity.ace_name.ace_tag,\ 46 | .ace-monokai .ace_keyword,\ 47 | .ace-monokai .ace_meta.ace_tag,\ 48 | .ace-monokai .ace_storage {\ 49 | color: #F92672\ 50 | }\ 51 | .ace-monokai .ace_punctuation,\ 52 | .ace-monokai .ace_punctuation.ace_tag {\ 53 | color: #fff\ 54 | }\ 55 | .ace-monokai .ace_constant.ace_character,\ 56 | .ace-monokai .ace_constant.ace_language,\ 57 | .ace-monokai .ace_constant.ace_numeric,\ 58 | .ace-monokai .ace_constant.ace_other {\ 59 | color: #AE81FF\ 60 | }\ 61 | .ace-monokai .ace_invalid {\ 62 | color: #F8F8F0;\ 63 | background-color: #F92672\ 64 | }\ 65 | .ace-monokai .ace_invalid.ace_deprecated {\ 66 | color: #F8F8F0;\ 67 | background-color: #AE81FF\ 68 | }\ 69 | .ace-monokai .ace_support.ace_constant,\ 70 | .ace-monokai .ace_support.ace_function {\ 71 | color: #66D9EF\ 72 | }\ 73 | .ace-monokai .ace_fold {\ 74 | background-color: #A6E22E;\ 75 | border-color: #F8F8F2\ 76 | }\ 77 | .ace-monokai .ace_storage.ace_type,\ 78 | .ace-monokai .ace_support.ace_class,\ 79 | .ace-monokai .ace_support.ace_type {\ 80 | font-style: italic;\ 81 | color: #66D9EF\ 82 | }\ 83 | .ace-monokai .ace_entity.ace_name.ace_function,\ 84 | .ace-monokai .ace_entity.ace_other,\ 85 | .ace-monokai .ace_entity.ace_other.ace_attribute-name,\ 86 | .ace-monokai .ace_variable {\ 87 | color: #A6E22E\ 88 | }\ 89 | .ace-monokai .ace_variable.ace_parameter {\ 90 | font-style: italic;\ 91 | color: #FD971F\ 92 | }\ 93 | .ace-monokai .ace_string {\ 94 | color: #E6DB74\ 95 | }\ 96 | .ace-monokai .ace_comment {\ 97 | color: #75715E\ 98 | }\ 99 | .ace-monokai .ace_indent-guide {\ 100 | background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWPQ0FD0ZXBzd/wPAAjVAoxeSgNeAAAAAElFTkSuQmCC) right repeat-y\ 101 | }"; 102 | 103 | var dom = acequire("../lib/dom"); 104 | dom.importCssString(exports.cssText, exports.cssClass); 105 | }); 106 | -------------------------------------------------------------------------------- /theme/cobalt.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/theme/cobalt",["require","exports","module","ace/lib/dom"], function(acequire, exports, module) { 2 | 3 | exports.isDark = true; 4 | exports.cssClass = "ace-cobalt"; 5 | exports.cssText = ".ace-cobalt .ace_gutter {\ 6 | background: #011e3a;\ 7 | color: rgb(128,145,160)\ 8 | }\ 9 | .ace-cobalt .ace_print-margin {\ 10 | width: 1px;\ 11 | background: #555555\ 12 | }\ 13 | .ace-cobalt {\ 14 | background-color: #002240;\ 15 | color: #FFFFFF\ 16 | }\ 17 | .ace-cobalt .ace_cursor {\ 18 | color: #FFFFFF\ 19 | }\ 20 | .ace-cobalt .ace_marker-layer .ace_selection {\ 21 | background: rgba(179, 101, 57, 0.75)\ 22 | }\ 23 | .ace-cobalt.ace_multiselect .ace_selection.ace_start {\ 24 | box-shadow: 0 0 3px 0px #002240;\ 25 | }\ 26 | .ace-cobalt .ace_marker-layer .ace_step {\ 27 | background: rgb(127, 111, 19)\ 28 | }\ 29 | .ace-cobalt .ace_marker-layer .ace_bracket {\ 30 | margin: -1px 0 0 -1px;\ 31 | border: 1px solid rgba(255, 255, 255, 0.15)\ 32 | }\ 33 | .ace-cobalt .ace_marker-layer .ace_active-line {\ 34 | background: rgba(0, 0, 0, 0.35)\ 35 | }\ 36 | .ace-cobalt .ace_gutter-active-line {\ 37 | background-color: rgba(0, 0, 0, 0.35)\ 38 | }\ 39 | .ace-cobalt .ace_marker-layer .ace_selected-word {\ 40 | border: 1px solid rgba(179, 101, 57, 0.75)\ 41 | }\ 42 | .ace-cobalt .ace_invisible {\ 43 | color: rgba(255, 255, 255, 0.15)\ 44 | }\ 45 | .ace-cobalt .ace_keyword,\ 46 | .ace-cobalt .ace_meta {\ 47 | color: #FF9D00\ 48 | }\ 49 | .ace-cobalt .ace_constant,\ 50 | .ace-cobalt .ace_constant.ace_character,\ 51 | .ace-cobalt .ace_constant.ace_character.ace_escape,\ 52 | .ace-cobalt .ace_constant.ace_other {\ 53 | color: #FF628C\ 54 | }\ 55 | .ace-cobalt .ace_invalid {\ 56 | color: #F8F8F8;\ 57 | background-color: #800F00\ 58 | }\ 59 | .ace-cobalt .ace_support {\ 60 | color: #80FFBB\ 61 | }\ 62 | .ace-cobalt .ace_support.ace_constant {\ 63 | color: #EB939A\ 64 | }\ 65 | .ace-cobalt .ace_fold {\ 66 | background-color: #FF9D00;\ 67 | border-color: #FFFFFF\ 68 | }\ 69 | .ace-cobalt .ace_support.ace_function {\ 70 | color: #FFB054\ 71 | }\ 72 | .ace-cobalt .ace_storage {\ 73 | color: #FFEE80\ 74 | }\ 75 | .ace-cobalt .ace_entity {\ 76 | color: #FFDD00\ 77 | }\ 78 | .ace-cobalt .ace_string {\ 79 | color: #3AD900\ 80 | }\ 81 | .ace-cobalt .ace_string.ace_regexp {\ 82 | color: #80FFC2\ 83 | }\ 84 | .ace-cobalt .ace_comment {\ 85 | font-style: italic;\ 86 | color: #0088FF\ 87 | }\ 88 | .ace-cobalt .ace_heading,\ 89 | .ace-cobalt .ace_markup.ace_heading {\ 90 | color: #C8E4FD;\ 91 | background-color: #001221\ 92 | }\ 93 | .ace-cobalt .ace_list,\ 94 | .ace-cobalt .ace_markup.ace_list {\ 95 | background-color: #130D26\ 96 | }\ 97 | .ace-cobalt .ace_variable {\ 98 | color: #CCCCCC\ 99 | }\ 100 | .ace-cobalt .ace_variable.ace_language {\ 101 | color: #FF80E1\ 102 | }\ 103 | .ace-cobalt .ace_meta.ace_tag {\ 104 | color: #9EFFFF\ 105 | }\ 106 | .ace-cobalt .ace_indent-guide {\ 107 | background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWNgYGBgYHCLSvkPAAP3AgSDTRd4AAAAAElFTkSuQmCC) right repeat-y\ 108 | }\ 109 | "; 110 | 111 | var dom = acequire("../lib/dom"); 112 | dom.importCssString(exports.cssText, exports.cssClass); 113 | }); 114 | -------------------------------------------------------------------------------- /theme/dracula.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/theme/dracula",["require","exports","module","ace/lib/dom"], function(acequire, exports, module) { 2 | 3 | exports.isDark = true; 4 | exports.cssClass = "ace-dracula"; 5 | exports.cssText = "\ 6 | ace-dracula .ace_gutter {\ 7 | background: #282a36;\ 8 | color: rgb(144,145,148)\ 9 | }\ 10 | .ace-dracula .ace_print-margin {\ 11 | width: 1px;\ 12 | background: #e8e8e8\ 13 | }\ 14 | .ace-dracula {\ 15 | background-color: #282a36;\ 16 | color: #f8f8f2\ 17 | }\ 18 | .ace-dracula .ace_cursor {\ 19 | color: #f8f8f0\ 20 | }\ 21 | .ace-dracula .ace_marker-layer .ace_selection {\ 22 | background: #44475a\ 23 | }\ 24 | .ace-dracula.ace_multiselect .ace_selection.ace_start {\ 25 | box-shadow: 0 0 3px 0px #282a36;\ 26 | border-radius: 2px\ 27 | }\ 28 | .ace-dracula .ace_marker-layer .ace_step {\ 29 | background: rgb(198, 219, 174)\ 30 | }\ 31 | .ace-dracula .ace_marker-layer .ace_bracket {\ 32 | margin: -1px 0 0 -1px;\ 33 | border: 1px solid #3B3A32\ 34 | }\ 35 | .ace-dracula .ace_marker-layer .ace_active-line {\ 36 | background: #44475a\ 37 | }\ 38 | .ace-dracula .ace_gutter-active-line {\ 39 | background-color: #44475a\ 40 | }\ 41 | .ace-dracula .ace_marker-layer .ace_selected-word {\ 42 | border: 1px solid #44475a\ 43 | }\ 44 | .ace-dracula .ace_fold {\ 45 | background-color: #50fa7b;\ 46 | border-color: #f8f8f2\ 47 | }\ 48 | .ace-dracula .ace_keyword {\ 49 | color: #ff79c6\ 50 | }\ 51 | .ace-dracula .ace_constant.ace_language {\ 52 | color: #bd93f9\ 53 | }\ 54 | .ace-dracula .ace_constant.ace_numeric {\ 55 | color: #bd93f9\ 56 | }\ 57 | .ace-dracula .ace_constant.ace_character {\ 58 | color: #bd93f9\ 59 | }\ 60 | .ace-dracula .ace_constant.ace_character.ace_escape {\ 61 | color: #ff79c6\ 62 | }\ 63 | .ace-dracula .ace_constant.ace_other {\ 64 | color: #bd93f9\ 65 | }\ 66 | .ace-dracula .ace_support.ace_function {\ 67 | color: #8be9fd\ 68 | }\ 69 | .ace-dracula .ace_support.ace_constant {\ 70 | color: #6be5fd\ 71 | }\ 72 | .ace-dracula .ace_support.ace_class {\ 73 | font-style: italic;\ 74 | color: #66d9ef\ 75 | }\ 76 | .ace-dracula .ace_support.ace_type {\ 77 | font-style: italic;\ 78 | color: #66d9ef\ 79 | }\ 80 | .ace-dracula .ace_storage {\ 81 | color: #ff79c6\ 82 | }\ 83 | .ace-dracula .ace_storage.ace_type {\ 84 | font-style: italic;\ 85 | color: #8be9fd\ 86 | }\ 87 | .ace-dracula .ace_invalid {\ 88 | color: #F8F8F0;\ 89 | background-color: #ff79c6\ 90 | }\ 91 | .ace-dracula .ace_invalid.ace_deprecated {\ 92 | color: #F8F8F0;\ 93 | background-color: #bd93f9\ 94 | }\ 95 | .ace-dracula .ace_string {\ 96 | color: #f1fa8c\ 97 | }\ 98 | .ace-dracula .ace_comment {\ 99 | color: #6272a4\ 100 | }\ 101 | .ace-dracula .ace_variable {\ 102 | color: #50fa7b\ 103 | }\ 104 | .ace-dracula .ace_variable.ace_parameter {\ 105 | font-style: italic;\ 106 | color: #ffb86c\ 107 | }\ 108 | .ace-dracula .ace_entity.ace_other.ace_attribute-name {\ 109 | color: #50fa7b\ 110 | }\ 111 | .ace-dracula .ace_entity.ace_name.ace_function {\ 112 | color: #50fa7b\ 113 | }\ 114 | .ace-dracula .ace_entity.ace_name.ace_tag {\ 115 | color: #ff79c6\ 116 | }\ 117 | "; 118 | 119 | var dom = acequire("../lib/dom"); 120 | dom.importCssString(exports.cssText, exports.cssClass); 121 | }); 122 | -------------------------------------------------------------------------------- /theme/gob.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/theme/gob",["require","exports","module","ace/lib/dom"], function(acequire, exports, module) { 2 | 3 | exports.isDark = true; 4 | exports.cssClass = "ace-gob"; 5 | exports.cssText = ".ace-gob .ace_gutter {\ 6 | background: #0B1818;\ 7 | color: #03EE03\ 8 | }\ 9 | .ace-gob .ace_print-margin {\ 10 | width: 1px;\ 11 | background: #131313\ 12 | }\ 13 | .ace-gob {\ 14 | background-color: #0B0B0B;\ 15 | color: #00FF00\ 16 | }\ 17 | .ace-gob .ace_cursor {\ 18 | border-color: rgba(16, 248, 255, 0.90);\ 19 | background-color: rgba(16, 240, 248, 0.70);\ 20 | opacity: 0.4;\ 21 | }\ 22 | .ace-gob .ace_marker-layer .ace_selection {\ 23 | background: rgba(221, 240, 255, 0.20)\ 24 | }\ 25 | .ace-gob.ace_multiselect .ace_selection.ace_start {\ 26 | box-shadow: 0 0 3px 0px #141414;\ 27 | }\ 28 | .ace-gob .ace_marker-layer .ace_step {\ 29 | background: rgb(16, 128, 0)\ 30 | }\ 31 | .ace-gob .ace_marker-layer .ace_bracket {\ 32 | margin: -1px 0 0 -1px;\ 33 | border: 1px solid rgba(64, 255, 255, 0.25)\ 34 | }\ 35 | .ace-gob .ace_marker-layer .ace_active-line {\ 36 | background: rgba(255, 255, 255, 0.04)\ 37 | }\ 38 | .ace-gob .ace_gutter-active-line {\ 39 | background-color: rgba(255, 255, 255, 0.04)\ 40 | }\ 41 | .ace-gob .ace_marker-layer .ace_selected-word {\ 42 | border: 1px solid rgba(192, 240, 255, 0.20)\ 43 | }\ 44 | .ace-gob .ace_invisible {\ 45 | color: rgba(255, 255, 255, 0.25)\ 46 | }\ 47 | .ace-gob .ace_keyword,\ 48 | .ace-gob .ace_meta {\ 49 | color: #10D8E8\ 50 | }\ 51 | .ace-gob .ace_constant,\ 52 | .ace-gob .ace_constant.ace_character,\ 53 | .ace-gob .ace_constant.ace_character.ace_escape,\ 54 | .ace-gob .ace_constant.ace_other,\ 55 | .ace-gob .ace_heading,\ 56 | .ace-gob .ace_markup.ace_heading,\ 57 | .ace-gob .ace_support.ace_constant {\ 58 | color: #10F0A0\ 59 | }\ 60 | .ace-gob .ace_invalid.ace_illegal {\ 61 | color: #F8F8F8;\ 62 | background-color: rgba(86, 45, 86, 0.75)\ 63 | }\ 64 | .ace-gob .ace_invalid.ace_deprecated {\ 65 | text-decoration: underline;\ 66 | font-style: italic;\ 67 | color: #20F8C0\ 68 | }\ 69 | .ace-gob .ace_support {\ 70 | color: #20E8B0\ 71 | }\ 72 | .ace-gob .ace_fold {\ 73 | background-color: #50B8B8;\ 74 | border-color: #70F8F8\ 75 | }\ 76 | .ace-gob .ace_support.ace_function {\ 77 | color: #00F800\ 78 | }\ 79 | .ace-gob .ace_list,\ 80 | .ace-gob .ace_markup.ace_list,\ 81 | .ace-gob .ace_storage {\ 82 | color: #10FF98\ 83 | }\ 84 | .ace-gob .ace_entity.ace_name.ace_function,\ 85 | .ace-gob .ace_meta.ace_tag,\ 86 | .ace-gob .ace_variable {\ 87 | color: #00F868\ 88 | }\ 89 | .ace-gob .ace_string {\ 90 | color: #10F060\ 91 | }\ 92 | .ace-gob .ace_string.ace_regexp {\ 93 | color: #20F090;\ 94 | }\ 95 | .ace-gob .ace_comment {\ 96 | font-style: italic;\ 97 | color: #00E060;\ 98 | }\ 99 | .ace-gob .ace_variable {\ 100 | color: #00F888;\ 101 | }\ 102 | .ace-gob .ace_xml-pe {\ 103 | color: #488858;\ 104 | }\ 105 | .ace-gob .ace_indent-guide {\ 106 | background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWMQERFpYLC1tf0PAAgOAnPnhxyiAAAAAElFTkSuQmCC) right repeat-y\ 107 | }\ 108 | "; 109 | 110 | var dom = acequire("../lib/dom"); 111 | dom.importCssString(exports.cssText, exports.cssClass); 112 | }); 113 | -------------------------------------------------------------------------------- /theme/twilight.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/theme/twilight",["require","exports","module","ace/lib/dom"], function(acequire, exports, module) { 2 | 3 | exports.isDark = true; 4 | exports.cssClass = "ace-twilight"; 5 | exports.cssText = ".ace-twilight .ace_gutter {\ 6 | background: #232323;\ 7 | color: #E2E2E2\ 8 | }\ 9 | .ace-twilight .ace_print-margin {\ 10 | width: 1px;\ 11 | background: #232323\ 12 | }\ 13 | .ace-twilight {\ 14 | background-color: #141414;\ 15 | color: #F8F8F8\ 16 | }\ 17 | .ace-twilight .ace_cursor {\ 18 | color: #A7A7A7\ 19 | }\ 20 | .ace-twilight .ace_marker-layer .ace_selection {\ 21 | background: rgba(221, 240, 255, 0.20)\ 22 | }\ 23 | .ace-twilight.ace_multiselect .ace_selection.ace_start {\ 24 | box-shadow: 0 0 3px 0px #141414;\ 25 | }\ 26 | .ace-twilight .ace_marker-layer .ace_step {\ 27 | background: rgb(102, 82, 0)\ 28 | }\ 29 | .ace-twilight .ace_marker-layer .ace_bracket {\ 30 | margin: -1px 0 0 -1px;\ 31 | border: 1px solid rgba(255, 255, 255, 0.25)\ 32 | }\ 33 | .ace-twilight .ace_marker-layer .ace_active-line {\ 34 | background: rgba(255, 255, 255, 0.031)\ 35 | }\ 36 | .ace-twilight .ace_gutter-active-line {\ 37 | background-color: rgba(255, 255, 255, 0.031)\ 38 | }\ 39 | .ace-twilight .ace_marker-layer .ace_selected-word {\ 40 | border: 1px solid rgba(221, 240, 255, 0.20)\ 41 | }\ 42 | .ace-twilight .ace_invisible {\ 43 | color: rgba(255, 255, 255, 0.25)\ 44 | }\ 45 | .ace-twilight .ace_keyword,\ 46 | .ace-twilight .ace_meta {\ 47 | color: #CDA869\ 48 | }\ 49 | .ace-twilight .ace_constant,\ 50 | .ace-twilight .ace_constant.ace_character,\ 51 | .ace-twilight .ace_constant.ace_character.ace_escape,\ 52 | .ace-twilight .ace_constant.ace_other,\ 53 | .ace-twilight .ace_heading,\ 54 | .ace-twilight .ace_markup.ace_heading,\ 55 | .ace-twilight .ace_support.ace_constant {\ 56 | color: #CF6A4C\ 57 | }\ 58 | .ace-twilight .ace_invalid.ace_illegal {\ 59 | color: #F8F8F8;\ 60 | background-color: rgba(86, 45, 86, 0.75)\ 61 | }\ 62 | .ace-twilight .ace_invalid.ace_deprecated {\ 63 | text-decoration: underline;\ 64 | font-style: italic;\ 65 | color: #D2A8A1\ 66 | }\ 67 | .ace-twilight .ace_support {\ 68 | color: #9B859D\ 69 | }\ 70 | .ace-twilight .ace_fold {\ 71 | background-color: #AC885B;\ 72 | border-color: #F8F8F8\ 73 | }\ 74 | .ace-twilight .ace_support.ace_function {\ 75 | color: #DAD085\ 76 | }\ 77 | .ace-twilight .ace_list,\ 78 | .ace-twilight .ace_markup.ace_list,\ 79 | .ace-twilight .ace_storage {\ 80 | color: #F9EE98\ 81 | }\ 82 | .ace-twilight .ace_entity.ace_name.ace_function,\ 83 | .ace-twilight .ace_meta.ace_tag,\ 84 | .ace-twilight .ace_variable {\ 85 | color: #AC885B\ 86 | }\ 87 | .ace-twilight .ace_string {\ 88 | color: #8F9D6A\ 89 | }\ 90 | .ace-twilight .ace_string.ace_regexp {\ 91 | color: #E9C062\ 92 | }\ 93 | .ace-twilight .ace_comment {\ 94 | font-style: italic;\ 95 | color: #5F5A60\ 96 | }\ 97 | .ace-twilight .ace_variable {\ 98 | color: #7587A6\ 99 | }\ 100 | .ace-twilight .ace_xml-pe {\ 101 | color: #494949\ 102 | }\ 103 | .ace-twilight .ace_indent-guide {\ 104 | background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWMQERFpYLC1tf0PAAgOAnPnhxyiAAAAAElFTkSuQmCC) right repeat-y\ 105 | }"; 106 | 107 | var dom = acequire("../lib/dom"); 108 | dom.importCssString(exports.cssText, exports.cssClass); 109 | }); 110 | -------------------------------------------------------------------------------- /theme/tomorrow.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/theme/tomorrow",["require","exports","module","ace/lib/dom"], function(acequire, exports, module) { 2 | 3 | exports.isDark = false; 4 | exports.cssClass = "ace-tomorrow"; 5 | exports.cssText = ".ace-tomorrow .ace_gutter {\ 6 | background: #f6f6f6;\ 7 | color: #4D4D4C\ 8 | }\ 9 | .ace-tomorrow .ace_print-margin {\ 10 | width: 1px;\ 11 | background: #f6f6f6\ 12 | }\ 13 | .ace-tomorrow {\ 14 | background-color: #FFFFFF;\ 15 | color: #4D4D4C\ 16 | }\ 17 | .ace-tomorrow .ace_cursor {\ 18 | color: #AEAFAD\ 19 | }\ 20 | .ace-tomorrow .ace_marker-layer .ace_selection {\ 21 | background: #D6D6D6\ 22 | }\ 23 | .ace-tomorrow.ace_multiselect .ace_selection.ace_start {\ 24 | box-shadow: 0 0 3px 0px #FFFFFF;\ 25 | }\ 26 | .ace-tomorrow .ace_marker-layer .ace_step {\ 27 | background: rgb(255, 255, 0)\ 28 | }\ 29 | .ace-tomorrow .ace_marker-layer .ace_bracket {\ 30 | margin: -1px 0 0 -1px;\ 31 | border: 1px solid #D1D1D1\ 32 | }\ 33 | .ace-tomorrow .ace_marker-layer .ace_active-line {\ 34 | background: #EFEFEF\ 35 | }\ 36 | .ace-tomorrow .ace_gutter-active-line {\ 37 | background-color : #dcdcdc\ 38 | }\ 39 | .ace-tomorrow .ace_marker-layer .ace_selected-word {\ 40 | border: 1px solid #D6D6D6\ 41 | }\ 42 | .ace-tomorrow .ace_invisible {\ 43 | color: #D1D1D1\ 44 | }\ 45 | .ace-tomorrow .ace_keyword,\ 46 | .ace-tomorrow .ace_meta,\ 47 | .ace-tomorrow .ace_storage,\ 48 | .ace-tomorrow .ace_storage.ace_type,\ 49 | .ace-tomorrow .ace_support.ace_type {\ 50 | color: #8959A8\ 51 | }\ 52 | .ace-tomorrow .ace_keyword.ace_operator {\ 53 | color: #3E999F\ 54 | }\ 55 | .ace-tomorrow .ace_constant.ace_character,\ 56 | .ace-tomorrow .ace_constant.ace_language,\ 57 | .ace-tomorrow .ace_constant.ace_numeric,\ 58 | .ace-tomorrow .ace_keyword.ace_other.ace_unit,\ 59 | .ace-tomorrow .ace_support.ace_constant,\ 60 | .ace-tomorrow .ace_variable.ace_parameter {\ 61 | color: #F5871F\ 62 | }\ 63 | .ace-tomorrow .ace_constant.ace_other {\ 64 | color: #666969\ 65 | }\ 66 | .ace-tomorrow .ace_invalid {\ 67 | color: #FFFFFF;\ 68 | background-color: #C82829\ 69 | }\ 70 | .ace-tomorrow .ace_invalid.ace_deprecated {\ 71 | color: #FFFFFF;\ 72 | background-color: #8959A8\ 73 | }\ 74 | .ace-tomorrow .ace_fold {\ 75 | background-color: #4271AE;\ 76 | border-color: #4D4D4C\ 77 | }\ 78 | .ace-tomorrow .ace_entity.ace_name.ace_function,\ 79 | .ace-tomorrow .ace_support.ace_function,\ 80 | .ace-tomorrow .ace_variable {\ 81 | color: #4271AE\ 82 | }\ 83 | .ace-tomorrow .ace_support.ace_class,\ 84 | .ace-tomorrow .ace_support.ace_type {\ 85 | color: #C99E00\ 86 | }\ 87 | .ace-tomorrow .ace_heading,\ 88 | .ace-tomorrow .ace_markup.ace_heading,\ 89 | .ace-tomorrow .ace_string {\ 90 | color: #718C00\ 91 | }\ 92 | .ace-tomorrow .ace_entity.ace_name.ace_tag,\ 93 | .ace-tomorrow .ace_entity.ace_other.ace_attribute-name,\ 94 | .ace-tomorrow .ace_meta.ace_tag,\ 95 | .ace-tomorrow .ace_string.ace_regexp,\ 96 | .ace-tomorrow .ace_variable {\ 97 | color: #C82829\ 98 | }\ 99 | .ace-tomorrow .ace_comment {\ 100 | color: #8E908C\ 101 | }\ 102 | .ace-tomorrow .ace_indent-guide {\ 103 | background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bdu3f/BwAlfgctduB85QAAAABJRU5ErkJggg==) right repeat-y\ 104 | }"; 105 | 106 | var dom = acequire("../lib/dom"); 107 | dom.importCssString(exports.cssText, exports.cssClass); 108 | }); 109 | -------------------------------------------------------------------------------- /snippets/erlang.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/erlang",["require","exports","module"],function(e,t,n){"use strict";t.snippetText="# module and export all\nsnippet mod\n -module(${1:`Filename('', 'my')`}).\n \n -compile([export_all]).\n \n start() ->\n ${2}\n \n stop() ->\n ok.\n# define directive\nsnippet def\n -define(${1:macro}, ${2:body}).${3}\n# export directive\nsnippet exp\n -export([${1:function}/${2:arity}]).\n# include directive\nsnippet inc\n -include(\"${1:file}\").${2}\n# behavior directive\nsnippet beh\n -behaviour(${1:behaviour}).${2}\n# if expression\nsnippet if\n if\n ${1:guard} ->\n ${2:body}\n end\n# case expression\nsnippet case\n case ${1:expression} of\n ${2:pattern} ->\n ${3:body};\n end\n# anonymous function\nsnippet fun\n fun (${1:Parameters}) -> ${2:body} end${3}\n# try...catch\nsnippet try\n try\n ${1}\n catch\n ${2:_:_} -> ${3:got_some_exception}\n end\n# record directive\nsnippet rec\n -record(${1:record}, {\n ${2:field}=${3:value}}).${4}\n# todo comment\nsnippet todo\n %% TODO: ${1}\n## Snippets below (starting with '%') are in EDoc format.\n## See http://www.erlang.org/doc/apps/edoc/chapter.html#id56887 for more details\n# doc comment\nsnippet %d\n %% @doc ${1}\n# end of doc comment\nsnippet %e\n %% @end\n# specification comment\nsnippet %s\n %% @spec ${1}\n# private function marker\nsnippet %p\n %% @private\n# OTP application\nsnippet application\n -module(${1:`Filename('', 'my')`}).\n\n -behaviour(application).\n\n -export([start/2, stop/1]).\n\n start(_Type, _StartArgs) ->\n case ${2:root_supervisor}:start_link() of\n {ok, Pid} ->\n {ok, Pid};\n Other ->\n {error, Other}\n end.\n\n stop(_State) ->\n ok. \n# OTP supervisor\nsnippet supervisor\n -module(${1:`Filename('', 'my')`}).\n\n -behaviour(supervisor).\n\n %% API\n -export([start_link/0]).\n\n %% Supervisor callbacks\n -export([init/1]).\n\n -define(SERVER, ?MODULE).\n\n start_link() ->\n supervisor:start_link({local, ?SERVER}, ?MODULE, []).\n\n init([]) ->\n Server = {${2:my_server}, {$2, start_link, []},\n permanent, 2000, worker, [$2]},\n Children = [Server],\n RestartStrategy = {one_for_one, 0, 1},\n {ok, {RestartStrategy, Children}}.\n# OTP gen_server\nsnippet gen_server\n -module(${1:`Filename('', 'my')`}).\n\n -behaviour(gen_server).\n\n %% API\n -export([\n start_link/0\n ]).\n\n %% gen_server callbacks\n -export([init/1, handle_call/3, handle_cast/2, handle_info/2,\n terminate/2, code_change/3]).\n\n -define(SERVER, ?MODULE).\n\n -record(state, {}).\n\n %%%===================================================================\n %%% API\n %%%===================================================================\n\n start_link() ->\n gen_server:start_link({local, ?SERVER}, ?MODULE, [], []).\n\n %%%===================================================================\n %%% gen_server callbacks\n %%%===================================================================\n\n init([]) ->\n {ok, #state{}}.\n\n handle_call(_Request, _From, State) ->\n Reply = ok,\n {reply, Reply, State}.\n\n handle_cast(_Msg, State) ->\n {noreply, State}.\n\n handle_info(_Info, State) ->\n {noreply, State}.\n\n terminate(_Reason, _State) ->\n ok.\n\n code_change(_OldVsn, State, _Extra) ->\n {ok, State}.\n\n %%%===================================================================\n %%% Internal functions\n %%%===================================================================\n\n",t.scope="erlang"}) -------------------------------------------------------------------------------- /theme/pastel_on_dark.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/theme/pastel_on_dark",["require","exports","module","ace/lib/dom"], function(acequire, exports, module) { 2 | 3 | exports.isDark = true; 4 | exports.cssClass = "ace-pastel-on-dark"; 5 | exports.cssText = ".ace-pastel-on-dark .ace_gutter {\ 6 | background: #353030;\ 7 | color: #8F938F\ 8 | }\ 9 | .ace-pastel-on-dark .ace_print-margin {\ 10 | width: 1px;\ 11 | background: #353030\ 12 | }\ 13 | .ace-pastel-on-dark {\ 14 | background-color: #2C2828;\ 15 | color: #8F938F\ 16 | }\ 17 | .ace-pastel-on-dark .ace_cursor {\ 18 | color: #A7A7A7\ 19 | }\ 20 | .ace-pastel-on-dark .ace_marker-layer .ace_selection {\ 21 | background: rgba(221, 240, 255, 0.20)\ 22 | }\ 23 | .ace-pastel-on-dark.ace_multiselect .ace_selection.ace_start {\ 24 | box-shadow: 0 0 3px 0px #2C2828;\ 25 | }\ 26 | .ace-pastel-on-dark .ace_marker-layer .ace_step {\ 27 | background: rgb(102, 82, 0)\ 28 | }\ 29 | .ace-pastel-on-dark .ace_marker-layer .ace_bracket {\ 30 | margin: -1px 0 0 -1px;\ 31 | border: 1px solid rgba(255, 255, 255, 0.25)\ 32 | }\ 33 | .ace-pastel-on-dark .ace_marker-layer .ace_active-line {\ 34 | background: rgba(255, 255, 255, 0.031)\ 35 | }\ 36 | .ace-pastel-on-dark .ace_gutter-active-line {\ 37 | background-color: rgba(255, 255, 255, 0.031)\ 38 | }\ 39 | .ace-pastel-on-dark .ace_marker-layer .ace_selected-word {\ 40 | border: 1px solid rgba(221, 240, 255, 0.20)\ 41 | }\ 42 | .ace-pastel-on-dark .ace_invisible {\ 43 | color: rgba(255, 255, 255, 0.25)\ 44 | }\ 45 | .ace-pastel-on-dark .ace_keyword,\ 46 | .ace-pastel-on-dark .ace_meta {\ 47 | color: #757aD8\ 48 | }\ 49 | .ace-pastel-on-dark .ace_constant,\ 50 | .ace-pastel-on-dark .ace_constant.ace_character,\ 51 | .ace-pastel-on-dark .ace_constant.ace_character.ace_escape,\ 52 | .ace-pastel-on-dark .ace_constant.ace_other {\ 53 | color: #4FB7C5\ 54 | }\ 55 | .ace-pastel-on-dark .ace_keyword.ace_operator {\ 56 | color: #797878\ 57 | }\ 58 | .ace-pastel-on-dark .ace_constant.ace_character {\ 59 | color: #AFA472\ 60 | }\ 61 | .ace-pastel-on-dark .ace_constant.ace_language {\ 62 | color: #DE8E30\ 63 | }\ 64 | .ace-pastel-on-dark .ace_constant.ace_numeric {\ 65 | color: #CCCCCC\ 66 | }\ 67 | .ace-pastel-on-dark .ace_invalid,\ 68 | .ace-pastel-on-dark .ace_invalid.ace_illegal {\ 69 | color: #F8F8F8;\ 70 | background-color: rgba(86, 45, 86, 0.75)\ 71 | }\ 72 | .ace-pastel-on-dark .ace_invalid.ace_deprecated {\ 73 | text-decoration: underline;\ 74 | font-style: italic;\ 75 | color: #D2A8A1\ 76 | }\ 77 | .ace-pastel-on-dark .ace_fold {\ 78 | background-color: #757aD8;\ 79 | border-color: #8F938F\ 80 | }\ 81 | .ace-pastel-on-dark .ace_support.ace_function {\ 82 | color: #AEB2F8\ 83 | }\ 84 | .ace-pastel-on-dark .ace_string {\ 85 | color: #66A968\ 86 | }\ 87 | .ace-pastel-on-dark .ace_string.ace_regexp {\ 88 | color: #E9C062\ 89 | }\ 90 | .ace-pastel-on-dark .ace_comment {\ 91 | color: #A6C6FF\ 92 | }\ 93 | .ace-pastel-on-dark .ace_variable {\ 94 | color: #BEBF55\ 95 | }\ 96 | .ace-pastel-on-dark .ace_variable.ace_language {\ 97 | color: #C1C144\ 98 | }\ 99 | .ace-pastel-on-dark .ace_xml-pe {\ 100 | color: #494949\ 101 | }\ 102 | .ace-pastel-on-dark .ace_indent-guide {\ 103 | background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWNgYGBgYIiPj/8PAARgAh2NTMh8AAAAAElFTkSuQmCC) right repeat-y\ 104 | }"; 105 | 106 | var dom = acequire("../lib/dom"); 107 | dom.importCssString(exports.cssText, exports.cssClass); 108 | }); 109 | -------------------------------------------------------------------------------- /snippets/tex.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/tex",["require","exports","module"],function(e,t,n){"use strict";t.snippetText="#PREAMBLE\n#newcommand\nsnippet nc\n \\newcommand{\\${1:cmd}}[${2:opt}]{${3:realcmd}}${4}\n#usepackage\nsnippet up\n \\usepackage[${1:[options}]{${2:package}}\n#newunicodechar\nsnippet nuc\n \\newunicodechar{${1}}{${2:\\ensuremath}${3:tex-substitute}}}\n#DeclareMathOperator\nsnippet dmo\n \\DeclareMathOperator{${1}}{${2}}\n\n#DOCUMENT\n# \\begin{}...\\end{}\nsnippet begin\n \\begin{${1:env}}\n ${2}\n \\end{$1}\n# Tabular\nsnippet tab\n \\begin{${1:tabular}}{${2:c}}\n ${3}\n \\end{$1}\nsnippet thm\n \\begin[${1:author}]{${2:thm}}\n ${3}\n \\end{$1}\nsnippet center\n \\begin{center}\n ${1}\n \\end{center}\n# Align(ed)\nsnippet ali\n \\begin{align${1:ed}}\n ${2}\n \\end{align$1}\n# Gather(ed)\nsnippet gat\n \\begin{gather${1:ed}}\n ${2}\n \\end{gather$1}\n# Equation\nsnippet eq\n \\begin{equation}\n ${1}\n \\end{equation}\n# Equation\nsnippet eq*\n \\begin{equation*}\n ${1}\n \\end{equation*}\n# Unnumbered Equation\nsnippet \\\n \\[\n ${1}\n \\]\n# Enumerate\nsnippet enum\n \\begin{enumerate}\n \\item ${1}\n \\end{enumerate}\n# Itemize\nsnippet itemize\n \\begin{itemize}\n \\item ${1}\n \\end{itemize}\n# Description\nsnippet desc\n \\begin{description}\n \\item[${1}] ${2}\n \\end{description}\n# Matrix\nsnippet mat\n \\begin{${1:p/b/v/V/B/small}matrix}\n ${2}\n \\end{$1matrix}\n# Cases\nsnippet cas\n \\begin{cases}\n ${1:equation}, &\\text{ if }${2:case}\\\\\n ${3}\n \\end{cases}\n# Split\nsnippet spl\n \\begin{split}\n ${1}\n \\end{split}\n# Part\nsnippet part\n \\part{${1:part name}} % (fold)\n \\label{prt:${2:$1}}\n ${3}\n % part $2 (end)\n# Chapter\nsnippet cha\n \\chapter{${1:chapter name}}\n \\label{cha:${2:$1}}\n ${3}\n# Section\nsnippet sec\n \\section{${1:section name}}\n \\label{sec:${2:$1}}\n ${3}\n# Sub Section\nsnippet sub\n \\subsection{${1:subsection name}}\n \\label{sub:${2:$1}}\n ${3}\n# Sub Sub Section\nsnippet subs\n \\subsubsection{${1:subsubsection name}}\n \\label{ssub:${2:$1}}\n ${3}\n# Paragraph\nsnippet par\n \\paragraph{${1:paragraph name}}\n \\label{par:${2:$1}}\n ${3}\n# Sub Paragraph\nsnippet subp\n \\subparagraph{${1:subparagraph name}}\n \\label{subp:${2:$1}}\n ${3}\n#References\nsnippet itd\n \\item[${1:description}] ${2:item}\nsnippet figure\n ${1:Figure}~\\ref{${2:fig:}}${3}\nsnippet table\n ${1:Table}~\\ref{${2:tab:}}${3}\nsnippet listing\n ${1:Listing}~\\ref{${2:list}}${3}\nsnippet section\n ${1:Section}~\\ref{${2:sec:}}${3}\nsnippet page\n ${1:page}~\\pageref{${2}}${3}\nsnippet index\n \\index{${1:index}}${2}\n#Citations\nsnippet cite\n \\cite[${1}]{${2}}${3}\nsnippet fcite\n \\footcite[${1}]{${2}}${3}\n#Formating text: italic, bold, underline, small capital, emphase ..\nsnippet it\n \\textit{${1:text}}\nsnippet bf\n \\textbf{${1:text}}\nsnippet under\n \\underline{${1:text}}\nsnippet emp\n \\emph{${1:text}}\nsnippet sc\n \\textsc{${1:text}}\n#Choosing font\nsnippet sf\n \\textsf{${1:text}}\nsnippet rm\n \\textrm{${1:text}}\nsnippet tt\n \\texttt{${1:text}}\n#misc\nsnippet ft\n \\footnote{${1:text}}\nsnippet fig\n \\begin{figure}\n \\begin{center}\n \\includegraphics[scale=${1}]{Figures/${2}}\n \\end{center}\n \\caption{${3}}\n \\label{fig:${4}}\n \\end{figure}\nsnippet tikz\n \\begin{figure}\n \\begin{center}\n \\begin{tikzpicture}[scale=${1:1}]\n ${2}\n \\end{tikzpicture}\n \\end{center}\n \\caption{${3}}\n \\label{fig:${4}}\n \\end{figure}\n#math\nsnippet stackrel\n \\stackrel{${1:above}}{${2:below}} ${3}\nsnippet frac\n \\frac{${1:num}}{${2:denom}}\nsnippet sum\n \\sum^{${1:n}}_{${2:i=1}}{${3}}",t.scope="tex"}) -------------------------------------------------------------------------------- /snippets/python.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/python",["require","exports","module"],function(e,t,n){"use strict";t.snippetText='snippet #!\n #!/usr/bin/env python\nsnippet imp\n import ${1:module}\nsnippet from\n from ${1:package} import ${2:module}\n# Module Docstring\nsnippet docs\n \'\'\'\n File: ${1:FILENAME:file_name}\n Author: ${2:author}\n Description: ${3}\n \'\'\'\nsnippet wh\n while ${1:condition}:\n ${2:# TODO: write code...}\n# dowh - does the same as do...while in other languages\nsnippet dowh\n while True:\n ${1:# TODO: write code...}\n if ${2:condition}:\n break\nsnippet with\n with ${1:expr} as ${2:var}:\n ${3:# TODO: write code...}\n# New Class\nsnippet cl\n class ${1:ClassName}(${2:object}):\n """${3:docstring for $1}"""\n def __init__(self, ${4:arg}):\n ${5:super($1, self).__init__()}\n self.$4 = $4\n ${6}\n# New Function\nsnippet def\n def ${1:fname}(${2:`indent(\'.\') ? \'self\' : \'\'`}):\n """${3:docstring for $1}"""\n ${4:# TODO: write code...}\nsnippet deff\n def ${1:fname}(${2:`indent(\'.\') ? \'self\' : \'\'`}):\n ${3:# TODO: write code...}\n# New Method\nsnippet defs\n def ${1:mname}(self, ${2:arg}):\n ${3:# TODO: write code...}\n# New Property\nsnippet property\n def ${1:foo}():\n doc = "${2:The $1 property.}"\n def fget(self):\n ${3:return self._$1}\n def fset(self, value):\n ${4:self._$1 = value}\n# Ifs\nsnippet if\n if ${1:condition}:\n ${2:# TODO: write code...}\nsnippet el\n else:\n ${1:# TODO: write code...}\nsnippet ei\n elif ${1:condition}:\n ${2:# TODO: write code...}\n# For\nsnippet for\n for ${1:item} in ${2:items}:\n ${3:# TODO: write code...}\n# Encodes\nsnippet cutf8\n # -*- coding: utf-8 -*-\nsnippet clatin1\n # -*- coding: latin-1 -*-\nsnippet cascii\n # -*- coding: ascii -*-\n# Lambda\nsnippet ld\n ${1:var} = lambda ${2:vars} : ${3:action}\nsnippet .\n self.\nsnippet try Try/Except\n try:\n ${1:# TODO: write code...}\n except ${2:Exception}, ${3:e}:\n ${4:raise $3}\nsnippet try Try/Except/Else\n try:\n ${1:# TODO: write code...}\n except ${2:Exception}, ${3:e}:\n ${4:raise $3}\n else:\n ${5:# TODO: write code...}\nsnippet try Try/Except/Finally\n try:\n ${1:# TODO: write code...}\n except ${2:Exception}, ${3:e}:\n ${4:raise $3}\n finally:\n ${5:# TODO: write code...}\nsnippet try Try/Except/Else/Finally\n try:\n ${1:# TODO: write code...}\n except ${2:Exception}, ${3:e}:\n ${4:raise $3}\n else:\n ${5:# TODO: write code...}\n finally:\n ${6:# TODO: write code...}\n# if __name__ == \'__main__\':\nsnippet ifmain\n if __name__ == \'__main__\':\n ${1:main()}\n# __magic__\nsnippet _\n __${1:init}__${2}\n# python debugger (pdb)\nsnippet pdb\n import pdb; pdb.set_trace()\n# ipython debugger (ipdb)\nsnippet ipdb\n import ipdb; ipdb.set_trace()\n# ipython debugger (pdbbb)\nsnippet pdbbb\n import pdbpp; pdbpp.set_trace()\nsnippet pprint\n import pprint; pprint.pprint(${1})${2}\nsnippet "\n """\n ${1:doc}\n """\n# test function/method\nsnippet test\n def test_${1:description}(${2:self}):\n ${3:# TODO: write code...}\n# test case\nsnippet testcase\n class ${1:ExampleCase}(unittest.TestCase):\n \n def test_${2:description}(self):\n ${3:# TODO: write code...}\nsnippet fut\n from __future__ import ${1}\n#getopt\nsnippet getopt\n try:\n # Short option syntax: "hv:"\n # Long option syntax: "help" or "verbose="\n opts, args = getopt.getopt(sys.argv[1:], "${1:short_options}", [${2:long_options}])\n \n except getopt.GetoptError, err:\n # Print debug info\n print str(err)\n ${3:error_action}\n\n for option, argument in opts:\n if option in ("-h", "--help"):\n ${4}\n elif option in ("-v", "--verbose"):\n verbose = argument\n',t.scope="python"}) -------------------------------------------------------------------------------- /theme/textmate.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/theme/textmate",["require","exports","module","ace/lib/dom"], function(acequire, exports, module) { 2 | "use strict"; 3 | 4 | exports.isDark = false; 5 | exports.cssClass = "ace-tm"; 6 | exports.cssText = ".ace-tm .ace_gutter {\ 7 | background: #f0f0f0;\ 8 | color: #333;\ 9 | }\ 10 | .ace-tm .ace_print-margin {\ 11 | width: 1px;\ 12 | background: #e8e8e8;\ 13 | }\ 14 | .ace-tm .ace_fold {\ 15 | background-color: #6B72E6;\ 16 | }\ 17 | .ace-tm {\ 18 | background-color: #FFFFFF;\ 19 | color: black;\ 20 | }\ 21 | .ace-tm .ace_cursor {\ 22 | color: black;\ 23 | }\ 24 | .ace-tm .ace_invisible {\ 25 | color: rgb(191, 191, 191);\ 26 | }\ 27 | .ace-tm .ace_storage,\ 28 | .ace-tm .ace_keyword {\ 29 | color: blue;\ 30 | }\ 31 | .ace-tm .ace_constant {\ 32 | color: rgb(197, 6, 11);\ 33 | }\ 34 | .ace-tm .ace_constant.ace_buildin {\ 35 | color: rgb(88, 72, 246);\ 36 | }\ 37 | .ace-tm .ace_constant.ace_language {\ 38 | color: rgb(88, 92, 246);\ 39 | }\ 40 | .ace-tm .ace_constant.ace_library {\ 41 | color: rgb(6, 150, 14);\ 42 | }\ 43 | .ace-tm .ace_invalid {\ 44 | background-color: rgba(255, 0, 0, 0.1);\ 45 | color: red;\ 46 | }\ 47 | .ace-tm .ace_support.ace_function {\ 48 | color: rgb(60, 76, 114);\ 49 | }\ 50 | .ace-tm .ace_support.ace_constant {\ 51 | color: rgb(6, 150, 14);\ 52 | }\ 53 | .ace-tm .ace_support.ace_type,\ 54 | .ace-tm .ace_support.ace_class {\ 55 | color: rgb(109, 121, 222);\ 56 | }\ 57 | .ace-tm .ace_keyword.ace_operator {\ 58 | color: rgb(104, 118, 135);\ 59 | }\ 60 | .ace-tm .ace_string {\ 61 | color: rgb(3, 106, 7);\ 62 | }\ 63 | .ace-tm .ace_comment {\ 64 | color: rgb(76, 136, 107);\ 65 | }\ 66 | .ace-tm .ace_comment.ace_doc {\ 67 | color: rgb(0, 102, 255);\ 68 | }\ 69 | .ace-tm .ace_comment.ace_doc.ace_tag {\ 70 | color: rgb(128, 159, 191);\ 71 | }\ 72 | .ace-tm .ace_constant.ace_numeric {\ 73 | color: rgb(0, 0, 205);\ 74 | }\ 75 | .ace-tm .ace_variable {\ 76 | color: rgb(49, 132, 149);\ 77 | }\ 78 | .ace-tm .ace_xml-pe {\ 79 | color: rgb(104, 104, 91);\ 80 | }\ 81 | .ace-tm .ace_entity.ace_name.ace_function {\ 82 | color: #0000A2;\ 83 | }\ 84 | .ace-tm .ace_heading {\ 85 | color: rgb(12, 7, 255);\ 86 | }\ 87 | .ace-tm .ace_list {\ 88 | color:rgb(185, 6, 144);\ 89 | }\ 90 | .ace-tm .ace_meta.ace_tag {\ 91 | color:rgb(0, 22, 142);\ 92 | }\ 93 | .ace-tm .ace_string.ace_regex {\ 94 | color: rgb(255, 0, 0)\ 95 | }\ 96 | .ace-tm .ace_marker-layer .ace_selection {\ 97 | background: rgb(181, 213, 255);\ 98 | }\ 99 | .ace-tm.ace_multiselect .ace_selection.ace_start {\ 100 | box-shadow: 0 0 3px 0px white;\ 101 | }\ 102 | .ace-tm .ace_marker-layer .ace_step {\ 103 | background: rgb(252, 255, 0);\ 104 | }\ 105 | .ace-tm .ace_marker-layer .ace_stack {\ 106 | background: rgb(164, 229, 101);\ 107 | }\ 108 | .ace-tm .ace_marker-layer .ace_bracket {\ 109 | margin: -1px 0 0 -1px;\ 110 | border: 1px solid rgb(192, 192, 192);\ 111 | }\ 112 | .ace-tm .ace_marker-layer .ace_active-line {\ 113 | background: rgba(0, 0, 0, 0.07);\ 114 | }\ 115 | .ace-tm .ace_gutter-active-line {\ 116 | background-color : #dcdcdc;\ 117 | }\ 118 | .ace-tm .ace_marker-layer .ace_selected-word {\ 119 | background: rgb(250, 250, 255);\ 120 | border: 1px solid rgb(200, 200, 250);\ 121 | }\ 122 | .ace-tm .ace_indent-guide {\ 123 | background: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==\") right repeat-y;\ 124 | }\ 125 | "; 126 | 127 | var dom = acequire("../lib/dom"); 128 | dom.importCssString(exports.cssText, exports.cssClass); 129 | }); 130 | -------------------------------------------------------------------------------- /mode/sql.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/mode/sql_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"], function(acequire, exports, module) { 2 | "use strict"; 3 | 4 | var oop = acequire("../lib/oop"); 5 | var TextHighlightRules = acequire("./text_highlight_rules").TextHighlightRules; 6 | 7 | var SqlHighlightRules = function() { 8 | 9 | var keywords = ( 10 | "select|insert|update|delete|from|where|and|or|group|by|order|limit|offset|having|as|case|" + 11 | "when|else|end|type|left|right|join|on|outer|desc|asc|union|create|table|primary|key|if|" + 12 | "foreign|not|references|default|null|inner|cross|natural|database|drop|grant" 13 | ); 14 | 15 | var builtinConstants = ( 16 | "true|false" 17 | ); 18 | 19 | var builtinFunctions = ( 20 | "avg|count|first|last|max|min|sum|ucase|lcase|mid|len|round|rank|now|format|" + 21 | "coalesce|ifnull|isnull|nvl" 22 | ); 23 | 24 | var dataTypes = ( 25 | "int|numeric|decimal|date|varchar|char|bigint|float|double|bit|binary|text|set|timestamp|" + 26 | "money|real|number|integer" 27 | ); 28 | 29 | var keywordMapper = this.createKeywordMapper({ 30 | "support.function": builtinFunctions, 31 | "keyword": keywords, 32 | "constant.language": builtinConstants, 33 | "storage.type": dataTypes 34 | }, "identifier", true); 35 | 36 | this.$rules = { 37 | "start" : [ { 38 | token : "comment", 39 | regex : "--.*$" 40 | }, { 41 | token : "comment", 42 | start : "/\\*", 43 | end : "\\*/" 44 | }, { 45 | token : "string", // " string 46 | regex : '".*?"' 47 | }, { 48 | token : "string", // ' string 49 | regex : "'.*?'" 50 | }, { 51 | token : "string", // ` string (apache drill) 52 | regex : "`.*?`" 53 | }, { 54 | token : "constant.numeric", // float 55 | regex : "[+-]?\\d+(?:(?:\\.\\d*)?(?:[eE][+-]?\\d+)?)?\\b" 56 | }, { 57 | token : keywordMapper, 58 | regex : "[a-zA-Z_$][a-zA-Z0-9_$]*\\b" 59 | }, { 60 | token : "keyword.operator", 61 | regex : "\\+|\\-|\\/|\\/\\/|%|<@>|@>|<@|&|\\^|~|<|>|<=|=>|==|!=|<>|=" 62 | }, { 63 | token : "paren.lparen", 64 | regex : "[\\(]" 65 | }, { 66 | token : "paren.rparen", 67 | regex : "[\\)]" 68 | }, { 69 | token : "text", 70 | regex : "\\s+" 71 | } ] 72 | }; 73 | this.normalizeRules(); 74 | }; 75 | 76 | oop.inherits(SqlHighlightRules, TextHighlightRules); 77 | 78 | exports.SqlHighlightRules = SqlHighlightRules; 79 | }); 80 | 81 | ace.define("ace/mode/sql",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/sql_highlight_rules"], function(acequire, exports, module) { 82 | "use strict"; 83 | 84 | var oop = acequire("../lib/oop"); 85 | var TextMode = acequire("./text").Mode; 86 | var SqlHighlightRules = acequire("./sql_highlight_rules").SqlHighlightRules; 87 | 88 | var Mode = function() { 89 | this.HighlightRules = SqlHighlightRules; 90 | this.$behaviour = this.$defaultBehaviour; 91 | }; 92 | oop.inherits(Mode, TextMode); 93 | 94 | (function() { 95 | 96 | this.lineCommentStart = "--"; 97 | 98 | this.$id = "ace/mode/sql"; 99 | }).call(Mode.prototype); 100 | 101 | exports.Mode = Mode; 102 | 103 | }); 104 | -------------------------------------------------------------------------------- /theme/mono_industrial.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/theme/mono_industrial",["require","exports","module","ace/lib/dom"], function(acequire, exports, module) { 2 | 3 | exports.isDark = true; 4 | exports.cssClass = "ace-mono-industrial"; 5 | exports.cssText = ".ace-mono-industrial .ace_gutter {\ 6 | background: #1d2521;\ 7 | color: #C5C9C9\ 8 | }\ 9 | .ace-mono-industrial .ace_print-margin {\ 10 | width: 1px;\ 11 | background: #555651\ 12 | }\ 13 | .ace-mono-industrial {\ 14 | background-color: #222C28;\ 15 | color: #FFFFFF\ 16 | }\ 17 | .ace-mono-industrial .ace_cursor {\ 18 | color: #FFFFFF\ 19 | }\ 20 | .ace-mono-industrial .ace_marker-layer .ace_selection {\ 21 | background: rgba(145, 153, 148, 0.40)\ 22 | }\ 23 | .ace-mono-industrial.ace_multiselect .ace_selection.ace_start {\ 24 | box-shadow: 0 0 3px 0px #222C28;\ 25 | }\ 26 | .ace-mono-industrial .ace_marker-layer .ace_step {\ 27 | background: rgb(102, 82, 0)\ 28 | }\ 29 | .ace-mono-industrial .ace_marker-layer .ace_bracket {\ 30 | margin: -1px 0 0 -1px;\ 31 | border: 1px solid rgba(102, 108, 104, 0.50)\ 32 | }\ 33 | .ace-mono-industrial .ace_marker-layer .ace_active-line {\ 34 | background: rgba(12, 13, 12, 0.25)\ 35 | }\ 36 | .ace-mono-industrial .ace_gutter-active-line {\ 37 | background-color: rgba(12, 13, 12, 0.25)\ 38 | }\ 39 | .ace-mono-industrial .ace_marker-layer .ace_selected-word {\ 40 | border: 1px solid rgba(145, 153, 148, 0.40)\ 41 | }\ 42 | .ace-mono-industrial .ace_invisible {\ 43 | color: rgba(102, 108, 104, 0.50)\ 44 | }\ 45 | .ace-mono-industrial .ace_string {\ 46 | background-color: #151C19;\ 47 | color: #FFFFFF\ 48 | }\ 49 | .ace-mono-industrial .ace_keyword,\ 50 | .ace-mono-industrial .ace_meta {\ 51 | color: #A39E64\ 52 | }\ 53 | .ace-mono-industrial .ace_constant,\ 54 | .ace-mono-industrial .ace_constant.ace_character,\ 55 | .ace-mono-industrial .ace_constant.ace_character.ace_escape,\ 56 | .ace-mono-industrial .ace_constant.ace_numeric,\ 57 | .ace-mono-industrial .ace_constant.ace_other {\ 58 | color: #E98800\ 59 | }\ 60 | .ace-mono-industrial .ace_entity.ace_name.ace_function,\ 61 | .ace-mono-industrial .ace_keyword.ace_operator,\ 62 | .ace-mono-industrial .ace_variable {\ 63 | color: #A8B3AB\ 64 | }\ 65 | .ace-mono-industrial .ace_invalid {\ 66 | color: #FFFFFF;\ 67 | background-color: rgba(153, 0, 0, 0.68)\ 68 | }\ 69 | .ace-mono-industrial .ace_support.ace_constant {\ 70 | color: #C87500\ 71 | }\ 72 | .ace-mono-industrial .ace_fold {\ 73 | background-color: #A8B3AB;\ 74 | border-color: #FFFFFF\ 75 | }\ 76 | .ace-mono-industrial .ace_support.ace_function {\ 77 | color: #588E60\ 78 | }\ 79 | .ace-mono-industrial .ace_entity.ace_name,\ 80 | .ace-mono-industrial .ace_support.ace_class,\ 81 | .ace-mono-industrial .ace_support.ace_type {\ 82 | color: #5778B6\ 83 | }\ 84 | .ace-mono-industrial .ace_storage {\ 85 | color: #C23B00\ 86 | }\ 87 | .ace-mono-industrial .ace_variable.ace_language,\ 88 | .ace-mono-industrial .ace_variable.ace_parameter {\ 89 | color: #648BD2\ 90 | }\ 91 | .ace-mono-industrial .ace_comment {\ 92 | color: #666C68;\ 93 | background-color: #151C19\ 94 | }\ 95 | .ace-mono-industrial .ace_entity.ace_other.ace_attribute-name {\ 96 | color: #909993\ 97 | }\ 98 | .ace-mono-industrial .ace_entity.ace_name.ace_tag {\ 99 | color: #A65EFF\ 100 | }\ 101 | .ace-mono-industrial .ace_indent-guide {\ 102 | background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWNQ1NbwZfALD/4PAAlTArlEC4r/AAAAAElFTkSuQmCC) right repeat-y\ 103 | }"; 104 | 105 | var dom = acequire("../lib/dom"); 106 | dom.importCssString(exports.cssText, exports.cssClass); 107 | }); 108 | -------------------------------------------------------------------------------- /theme/tomorrow_night.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/theme/tomorrow_night",["require","exports","module","ace/lib/dom"], function(acequire, exports, module) { 2 | 3 | exports.isDark = true; 4 | exports.cssClass = "ace-tomorrow-night"; 5 | exports.cssText = ".ace-tomorrow-night .ace_gutter {\ 6 | background: #25282c;\ 7 | color: #C5C8C6\ 8 | }\ 9 | .ace-tomorrow-night .ace_print-margin {\ 10 | width: 1px;\ 11 | background: #25282c\ 12 | }\ 13 | .ace-tomorrow-night {\ 14 | background-color: #1D1F21;\ 15 | color: #C5C8C6\ 16 | }\ 17 | .ace-tomorrow-night .ace_cursor {\ 18 | color: #AEAFAD\ 19 | }\ 20 | .ace-tomorrow-night .ace_marker-layer .ace_selection {\ 21 | background: #373B41\ 22 | }\ 23 | .ace-tomorrow-night.ace_multiselect .ace_selection.ace_start {\ 24 | box-shadow: 0 0 3px 0px #1D1F21;\ 25 | }\ 26 | .ace-tomorrow-night .ace_marker-layer .ace_step {\ 27 | background: rgb(102, 82, 0)\ 28 | }\ 29 | .ace-tomorrow-night .ace_marker-layer .ace_bracket {\ 30 | margin: -1px 0 0 -1px;\ 31 | border: 1px solid #4B4E55\ 32 | }\ 33 | .ace-tomorrow-night .ace_marker-layer .ace_active-line {\ 34 | background: #282A2E\ 35 | }\ 36 | .ace-tomorrow-night .ace_gutter-active-line {\ 37 | background-color: #282A2E\ 38 | }\ 39 | .ace-tomorrow-night .ace_marker-layer .ace_selected-word {\ 40 | border: 1px solid #373B41\ 41 | }\ 42 | .ace-tomorrow-night .ace_invisible {\ 43 | color: #4B4E55\ 44 | }\ 45 | .ace-tomorrow-night .ace_keyword,\ 46 | .ace-tomorrow-night .ace_meta,\ 47 | .ace-tomorrow-night .ace_storage,\ 48 | .ace-tomorrow-night .ace_storage.ace_type,\ 49 | .ace-tomorrow-night .ace_support.ace_type {\ 50 | color: #B294BB\ 51 | }\ 52 | .ace-tomorrow-night .ace_keyword.ace_operator {\ 53 | color: #8ABEB7\ 54 | }\ 55 | .ace-tomorrow-night .ace_constant.ace_character,\ 56 | .ace-tomorrow-night .ace_constant.ace_language,\ 57 | .ace-tomorrow-night .ace_constant.ace_numeric,\ 58 | .ace-tomorrow-night .ace_keyword.ace_other.ace_unit,\ 59 | .ace-tomorrow-night .ace_support.ace_constant,\ 60 | .ace-tomorrow-night .ace_variable.ace_parameter {\ 61 | color: #DE935F\ 62 | }\ 63 | .ace-tomorrow-night .ace_constant.ace_other {\ 64 | color: #CED1CF\ 65 | }\ 66 | .ace-tomorrow-night .ace_invalid {\ 67 | color: #CED2CF;\ 68 | background-color: #DF5F5F\ 69 | }\ 70 | .ace-tomorrow-night .ace_invalid.ace_deprecated {\ 71 | color: #CED2CF;\ 72 | background-color: #B798BF\ 73 | }\ 74 | .ace-tomorrow-night .ace_fold {\ 75 | background-color: #81A2BE;\ 76 | border-color: #C5C8C6\ 77 | }\ 78 | .ace-tomorrow-night .ace_entity.ace_name.ace_function,\ 79 | .ace-tomorrow-night .ace_support.ace_function,\ 80 | .ace-tomorrow-night .ace_variable {\ 81 | color: #81A2BE\ 82 | }\ 83 | .ace-tomorrow-night .ace_support.ace_class,\ 84 | .ace-tomorrow-night .ace_support.ace_type {\ 85 | color: #F0C674\ 86 | }\ 87 | .ace-tomorrow-night .ace_heading,\ 88 | .ace-tomorrow-night .ace_markup.ace_heading,\ 89 | .ace-tomorrow-night .ace_string {\ 90 | color: #B5BD68\ 91 | }\ 92 | .ace-tomorrow-night .ace_entity.ace_name.ace_tag,\ 93 | .ace-tomorrow-night .ace_entity.ace_other.ace_attribute-name,\ 94 | .ace-tomorrow-night .ace_meta.ace_tag,\ 95 | .ace-tomorrow-night .ace_string.ace_regexp,\ 96 | .ace-tomorrow-night .ace_variable {\ 97 | color: #CC6666\ 98 | }\ 99 | .ace-tomorrow-night .ace_comment {\ 100 | color: #969896\ 101 | }\ 102 | .ace-tomorrow-night .ace_indent-guide {\ 103 | background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWNgYGBgYHB3d/8PAAOIAdULw8qMAAAAAElFTkSuQmCC) right repeat-y\ 104 | }"; 105 | 106 | var dom = acequire("../lib/dom"); 107 | dom.importCssString(exports.cssText, exports.cssClass); 108 | }); 109 | -------------------------------------------------------------------------------- /theme/chrome.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/theme/chrome",["require","exports","module","ace/lib/dom"], function(acequire, exports, module) { 2 | 3 | exports.isDark = false; 4 | exports.cssClass = "ace-chrome"; 5 | exports.cssText = ".ace-chrome .ace_gutter {\ 6 | background: #ebebeb;\ 7 | color: #333;\ 8 | overflow : hidden;\ 9 | }\ 10 | .ace-chrome .ace_print-margin {\ 11 | width: 1px;\ 12 | background: #e8e8e8;\ 13 | }\ 14 | .ace-chrome {\ 15 | background-color: #FFFFFF;\ 16 | color: black;\ 17 | }\ 18 | .ace-chrome .ace_cursor {\ 19 | color: black;\ 20 | }\ 21 | .ace-chrome .ace_invisible {\ 22 | color: rgb(191, 191, 191);\ 23 | }\ 24 | .ace-chrome .ace_constant.ace_buildin {\ 25 | color: rgb(88, 72, 246);\ 26 | }\ 27 | .ace-chrome .ace_constant.ace_language {\ 28 | color: rgb(88, 92, 246);\ 29 | }\ 30 | .ace-chrome .ace_constant.ace_library {\ 31 | color: rgb(6, 150, 14);\ 32 | }\ 33 | .ace-chrome .ace_invalid {\ 34 | background-color: rgb(153, 0, 0);\ 35 | color: white;\ 36 | }\ 37 | .ace-chrome .ace_fold {\ 38 | }\ 39 | .ace-chrome .ace_support.ace_function {\ 40 | color: rgb(60, 76, 114);\ 41 | }\ 42 | .ace-chrome .ace_support.ace_constant {\ 43 | color: rgb(6, 150, 14);\ 44 | }\ 45 | .ace-chrome .ace_support.ace_type,\ 46 | .ace-chrome .ace_support.ace_class\ 47 | .ace-chrome .ace_support.ace_other {\ 48 | color: rgb(109, 121, 222);\ 49 | }\ 50 | .ace-chrome .ace_variable.ace_parameter {\ 51 | font-style:italic;\ 52 | color:#FD971F;\ 53 | }\ 54 | .ace-chrome .ace_keyword.ace_operator {\ 55 | color: rgb(104, 118, 135);\ 56 | }\ 57 | .ace-chrome .ace_comment {\ 58 | color: #236e24;\ 59 | }\ 60 | .ace-chrome .ace_comment.ace_doc {\ 61 | color: #236e24;\ 62 | }\ 63 | .ace-chrome .ace_comment.ace_doc.ace_tag {\ 64 | color: #236e24;\ 65 | }\ 66 | .ace-chrome .ace_constant.ace_numeric {\ 67 | color: rgb(0, 0, 205);\ 68 | }\ 69 | .ace-chrome .ace_variable {\ 70 | color: rgb(49, 132, 149);\ 71 | }\ 72 | .ace-chrome .ace_xml-pe {\ 73 | color: rgb(104, 104, 91);\ 74 | }\ 75 | .ace-chrome .ace_entity.ace_name.ace_function {\ 76 | color: #0000A2;\ 77 | }\ 78 | .ace-chrome .ace_heading {\ 79 | color: rgb(12, 7, 255);\ 80 | }\ 81 | .ace-chrome .ace_list {\ 82 | color:rgb(185, 6, 144);\ 83 | }\ 84 | .ace-chrome .ace_marker-layer .ace_selection {\ 85 | background: rgb(181, 213, 255);\ 86 | }\ 87 | .ace-chrome .ace_marker-layer .ace_step {\ 88 | background: rgb(252, 255, 0);\ 89 | }\ 90 | .ace-chrome .ace_marker-layer .ace_stack {\ 91 | background: rgb(164, 229, 101);\ 92 | }\ 93 | .ace-chrome .ace_marker-layer .ace_bracket {\ 94 | margin: -1px 0 0 -1px;\ 95 | border: 1px solid rgb(192, 192, 192);\ 96 | }\ 97 | .ace-chrome .ace_marker-layer .ace_active-line {\ 98 | background: rgba(0, 0, 0, 0.07);\ 99 | }\ 100 | .ace-chrome .ace_gutter-active-line {\ 101 | background-color : #dcdcdc;\ 102 | }\ 103 | .ace-chrome .ace_marker-layer .ace_selected-word {\ 104 | background: rgb(250, 250, 255);\ 105 | border: 1px solid rgb(200, 200, 250);\ 106 | }\ 107 | .ace-chrome .ace_storage,\ 108 | .ace-chrome .ace_keyword,\ 109 | .ace-chrome .ace_meta.ace_tag {\ 110 | color: rgb(147, 15, 128);\ 111 | }\ 112 | .ace-chrome .ace_string.ace_regex {\ 113 | color: rgb(255, 0, 0)\ 114 | }\ 115 | .ace-chrome .ace_string {\ 116 | color: #1A1AA6;\ 117 | }\ 118 | .ace-chrome .ace_entity.ace_other.ace_attribute-name {\ 119 | color: #994409;\ 120 | }\ 121 | .ace-chrome .ace_indent-guide {\ 122 | background: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==\") right repeat-y;\ 123 | }\ 124 | "; 125 | 126 | var dom = acequire("../lib/dom"); 127 | dom.importCssString(exports.cssText, exports.cssClass); 128 | }); 129 | -------------------------------------------------------------------------------- /theme/crimson_editor.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/theme/crimson_editor",["require","exports","module","ace/lib/dom"], function(acequire, exports, module) { 2 | exports.isDark = false; 3 | exports.cssText = ".ace-crimson-editor .ace_gutter {\ 4 | background: #ebebeb;\ 5 | color: #333;\ 6 | overflow : hidden;\ 7 | }\ 8 | .ace-crimson-editor .ace_gutter-layer {\ 9 | width: 100%;\ 10 | text-align: right;\ 11 | }\ 12 | .ace-crimson-editor .ace_print-margin {\ 13 | width: 1px;\ 14 | background: #e8e8e8;\ 15 | }\ 16 | .ace-crimson-editor {\ 17 | background-color: #FFFFFF;\ 18 | color: rgb(64, 64, 64);\ 19 | }\ 20 | .ace-crimson-editor .ace_cursor {\ 21 | color: black;\ 22 | }\ 23 | .ace-crimson-editor .ace_invisible {\ 24 | color: rgb(191, 191, 191);\ 25 | }\ 26 | .ace-crimson-editor .ace_identifier {\ 27 | color: black;\ 28 | }\ 29 | .ace-crimson-editor .ace_keyword {\ 30 | color: blue;\ 31 | }\ 32 | .ace-crimson-editor .ace_constant.ace_buildin {\ 33 | color: rgb(88, 72, 246);\ 34 | }\ 35 | .ace-crimson-editor .ace_constant.ace_language {\ 36 | color: rgb(255, 156, 0);\ 37 | }\ 38 | .ace-crimson-editor .ace_constant.ace_library {\ 39 | color: rgb(6, 150, 14);\ 40 | }\ 41 | .ace-crimson-editor .ace_invalid {\ 42 | text-decoration: line-through;\ 43 | color: rgb(224, 0, 0);\ 44 | }\ 45 | .ace-crimson-editor .ace_fold {\ 46 | }\ 47 | .ace-crimson-editor .ace_support.ace_function {\ 48 | color: rgb(192, 0, 0);\ 49 | }\ 50 | .ace-crimson-editor .ace_support.ace_constant {\ 51 | color: rgb(6, 150, 14);\ 52 | }\ 53 | .ace-crimson-editor .ace_support.ace_type,\ 54 | .ace-crimson-editor .ace_support.ace_class {\ 55 | color: rgb(109, 121, 222);\ 56 | }\ 57 | .ace-crimson-editor .ace_keyword.ace_operator {\ 58 | color: rgb(49, 132, 149);\ 59 | }\ 60 | .ace-crimson-editor .ace_string {\ 61 | color: rgb(128, 0, 128);\ 62 | }\ 63 | .ace-crimson-editor .ace_comment {\ 64 | color: rgb(76, 136, 107);\ 65 | }\ 66 | .ace-crimson-editor .ace_comment.ace_doc {\ 67 | color: rgb(0, 102, 255);\ 68 | }\ 69 | .ace-crimson-editor .ace_comment.ace_doc.ace_tag {\ 70 | color: rgb(128, 159, 191);\ 71 | }\ 72 | .ace-crimson-editor .ace_constant.ace_numeric {\ 73 | color: rgb(0, 0, 64);\ 74 | }\ 75 | .ace-crimson-editor .ace_variable {\ 76 | color: rgb(0, 64, 128);\ 77 | }\ 78 | .ace-crimson-editor .ace_xml-pe {\ 79 | color: rgb(104, 104, 91);\ 80 | }\ 81 | .ace-crimson-editor .ace_marker-layer .ace_selection {\ 82 | background: rgb(181, 213, 255);\ 83 | }\ 84 | .ace-crimson-editor .ace_marker-layer .ace_step {\ 85 | background: rgb(252, 255, 0);\ 86 | }\ 87 | .ace-crimson-editor .ace_marker-layer .ace_stack {\ 88 | background: rgb(164, 229, 101);\ 89 | }\ 90 | .ace-crimson-editor .ace_marker-layer .ace_bracket {\ 91 | margin: -1px 0 0 -1px;\ 92 | border: 1px solid rgb(192, 192, 192);\ 93 | }\ 94 | .ace-crimson-editor .ace_marker-layer .ace_active-line {\ 95 | background: rgb(232, 242, 254);\ 96 | }\ 97 | .ace-crimson-editor .ace_gutter-active-line {\ 98 | background-color : #dcdcdc;\ 99 | }\ 100 | .ace-crimson-editor .ace_meta.ace_tag {\ 101 | color:rgb(28, 2, 255);\ 102 | }\ 103 | .ace-crimson-editor .ace_marker-layer .ace_selected-word {\ 104 | background: rgb(250, 250, 255);\ 105 | border: 1px solid rgb(200, 200, 250);\ 106 | }\ 107 | .ace-crimson-editor .ace_string.ace_regex {\ 108 | color: rgb(192, 0, 192);\ 109 | }\ 110 | .ace-crimson-editor .ace_indent-guide {\ 111 | background: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==\") right repeat-y;\ 112 | }"; 113 | 114 | exports.cssClass = "ace-crimson-editor"; 115 | 116 | var dom = acequire("../lib/dom"); 117 | dom.importCssString(exports.cssText, exports.cssClass); 118 | }); 119 | -------------------------------------------------------------------------------- /mode/cobol.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/mode/cobol_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"], function(acequire, exports, module) { 2 | "use strict"; 3 | 4 | var oop = acequire("../lib/oop"); 5 | var TextHighlightRules = acequire("./text_highlight_rules").TextHighlightRules; 6 | 7 | var CobolHighlightRules = function() { 8 | var keywords = "ACCEPT|MERGE|SUM|ADD||MESSAGE|TABLE|ADVANCING|MODE|TAPE|" + 9 | "AFTER|MULTIPLY|TEST|ALL|NEGATIVE|TEXT|ALPHABET|NEXT|THAN|" + 10 | "ALSO|NO|THEN|ALTERNATE|NOT|THROUGH|AND|NUMBER|THRU|ANY|OCCURS|" + 11 | "TIME|ARE|OF|TO|AREA|OFF|TOP||ASCENDING|OMITTED|TRUE|ASSIGN|ON|TYPE|AT|OPEN|" + 12 | "UNIT|AUTHOR|OR|UNTIL|BEFORE|OTHER|UP|BLANK|OUTPUT|USE|BLOCK|PAGE|USING|BOTTOM|" + 13 | "PERFORM|VALUE|BY|PIC|VALUES|CALL|PICTURE|WHEN|CANCEL|PLUS|WITH|CD|POINTER|WRITE|" + 14 | "CHARACTER|POSITION||ZERO|CLOSE|POSITIVE|ZEROS|COLUMN|PROCEDURE|ZEROES|COMMA|PROGRAM|" + 15 | "COMMON|PROGRAM-ID|COMMUNICATION|QUOTE|COMP|RANDOM|COMPUTE|READ|CONTAINS|RECEIVE|CONFIGURATION|" + 16 | "RECORD|CONTINUE|REDEFINES|CONTROL|REFERENCE|COPY|REMAINDER|COUNT|REPLACE|DATA|REPORT|DATE|RESERVE|" + 17 | "DAY|RESET|DELETE|RETURN|DESTINATION|REWIND|DISABLE|REWRITE|DISPLAY|RIGHT|DIVIDE|RUN|DOWN|SAME|" + 18 | "ELSE|SEARCH|ENABLE|SECTION|END|SELECT|ENVIRONMENT|SENTENCE|EQUAL|SET|ERROR|SIGN|EXIT|SEQUENTIAL|" + 19 | "EXTERNAL|SIZE|FLASE|SORT|FILE|SOURCE|LENGTH|SPACE|LESS|STANDARD|LIMIT|START|LINE|STOP|LOCK|STRING|LOW-VALUE|SUBTRACT"; 20 | 21 | var builtinConstants = ( 22 | "true|false|null" 23 | ); 24 | 25 | var builtinFunctions = ( 26 | "count|min|max|avg|sum|rank|now|coalesce|main" 27 | ); 28 | 29 | var keywordMapper = this.createKeywordMapper({ 30 | "support.function": builtinFunctions, 31 | "keyword": keywords, 32 | "constant.language": builtinConstants 33 | }, "identifier", true); 34 | 35 | this.$rules = { 36 | "start" : [ { 37 | token : "comment", 38 | regex : "\\*.*$" 39 | }, { 40 | token : "string", // " string 41 | regex : '".*?"' 42 | }, { 43 | token : "string", // ' string 44 | regex : "'.*?'" 45 | }, { 46 | token : "constant.numeric", // float 47 | regex : "[+-]?\\d+(?:(?:\\.\\d*)?(?:[eE][+-]?\\d+)?)?\\b" 48 | }, { 49 | token : keywordMapper, 50 | regex : "[a-zA-Z_$][a-zA-Z0-9_$]*\\b" 51 | }, { 52 | token : "keyword.operator", 53 | regex : "\\+|\\-|\\/|\\/\\/|%|<@>|@>|<@|&|\\^|~|<|>|<=|=>|==|!=|<>|=" 54 | }, { 55 | token : "paren.lparen", 56 | regex : "[\\(]" 57 | }, { 58 | token : "paren.rparen", 59 | regex : "[\\)]" 60 | }, { 61 | token : "text", 62 | regex : "\\s+" 63 | } ] 64 | }; 65 | }; 66 | 67 | oop.inherits(CobolHighlightRules, TextHighlightRules); 68 | 69 | exports.CobolHighlightRules = CobolHighlightRules; 70 | }); 71 | 72 | ace.define("ace/mode/cobol",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/cobol_highlight_rules"], function(acequire, exports, module) { 73 | "use strict"; 74 | 75 | var oop = acequire("../lib/oop"); 76 | var TextMode = acequire("./text").Mode; 77 | var CobolHighlightRules = acequire("./cobol_highlight_rules").CobolHighlightRules; 78 | 79 | var Mode = function() { 80 | this.HighlightRules = CobolHighlightRules; 81 | this.$behaviour = this.$defaultBehaviour; 82 | }; 83 | oop.inherits(Mode, TextMode); 84 | 85 | (function() { 86 | 87 | this.lineCommentStart = "*"; 88 | 89 | this.$id = "ace/mode/cobol"; 90 | }).call(Mode.prototype); 91 | 92 | exports.Mode = Mode; 93 | 94 | }); 95 | -------------------------------------------------------------------------------- /snippets/javascript.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/javascript",["require","exports","module"],function(e,t,n){"use strict";t.snippetText='# Prototype\nsnippet proto\n ${1:class_name}.prototype.${2:method_name} = function(${3:first_argument}) {\n ${4:// body...}\n };\n# Function\nsnippet fun\n function ${1?:function_name}(${2:argument}) {\n ${3:// body...}\n }\n# Anonymous Function\nregex /((=)\\s*|(:)\\s*|(\\()|\\b)/f/(\\))?/\nsnippet f\n function${M1?: ${1:functionName}}($2) {\n ${0:$TM_SELECTED_TEXT}\n }${M2?;}${M3?,}${M4?)}\n# Immediate function\ntrigger \\(?f\\(\nendTrigger \\)?\nsnippet f(\n (function(${1}) {\n ${0:${TM_SELECTED_TEXT:/* code */}}\n }(${1}));\n# if\nsnippet if\n if (${1:true}) {\n ${0}\n }\n# if ... else\nsnippet ife\n if (${1:true}) {\n ${2}\n } else {\n ${0}\n }\n# tertiary conditional\nsnippet ter\n ${1:/* condition */} ? ${2:a} : ${3:b}\n# switch\nsnippet switch\n switch (${1:expression}) {\n case \'${3:case}\':\n ${4:// code}\n break;\n ${5}\n default:\n ${2:// code}\n }\n# case\nsnippet case\n case \'${1:case}\':\n ${2:// code}\n break;\n ${3}\n\n# while (...) {...}\nsnippet wh\n while (${1:/* condition */}) {\n ${0:/* code */}\n }\n# try\nsnippet try\n try {\n ${0:/* code */}\n } catch (e) {}\n# do...while\nsnippet do\n do {\n ${2:/* code */}\n } while (${1:/* condition */});\n# Object Method\nsnippet :f\nregex /([,{[])|^\\s*/:f/\n ${1:method_name}: function(${2:attribute}) {\n ${0}\n }${3:,}\n# setTimeout function\nsnippet setTimeout\nregex /\\b/st|timeout|setTimeo?u?t?/\n setTimeout(function() {${3:$TM_SELECTED_TEXT}}, ${1:10});\n# Get Elements\nsnippet gett\n getElementsBy${1:TagName}(\'${2}\')${3}\n# Get Element\nsnippet get\n getElementBy${1:Id}(\'${2}\')${3}\n# console.log (Firebug)\nsnippet cl\n console.log(${1});\n# return\nsnippet ret\n return ${1:result}\n# for (property in object ) { ... }\nsnippet fori\n for (var ${1:prop} in ${2:Things}) {\n ${0:$2[$1]}\n }\n# hasOwnProperty\nsnippet has\n hasOwnProperty(${1})\n# docstring\nsnippet /**\n /**\n * ${1:description}\n *\n */\nsnippet @par\nregex /^\\s*\\*\\s*/@(para?m?)?/\n @param {${1:type}} ${2:name} ${3:description}\nsnippet @ret\n @return {${1:type}} ${2:description}\n# JSON.parse\nsnippet jsonp\n JSON.parse(${1:jstr});\n# JSON.stringify\nsnippet jsons\n JSON.stringify(${1:object});\n# self-defining function\nsnippet sdf\n var ${1:function_name} = function(${2:argument}) {\n ${3:// initial code ...}\n\n $1 = function($2) {\n ${4:// main code}\n };\n }\n# singleton\nsnippet sing\n function ${1:Singleton} (${2:argument}) {\n // the cached instance\n var instance;\n\n // rewrite the constructor\n $1 = function $1($2) {\n return instance;\n };\n \n // carry over the prototype properties\n $1.prototype = this;\n\n // the instance\n instance = new $1();\n\n // reset the constructor pointer\n instance.constructor = $1;\n\n ${3:// code ...}\n\n return instance;\n }\n# class\nsnippet class\nregex /^\\s*/clas{0,2}/\n var ${1:class} = function(${20}) {\n $40$0\n };\n \n (function() {\n ${60:this.prop = ""}\n }).call(${1:class}.prototype);\n \n exports.${1:class} = ${1:class};\n# \nsnippet for-\n for (var ${1:i} = ${2:Things}.length; ${1:i}--; ) {\n ${0:${2:Things}[${1:i}];}\n }\n# for (...) {...}\nsnippet for\n for (var ${1:i} = 0; $1 < ${2:Things}.length; $1++) {\n ${3:$2[$1]}$0\n }\n# for (...) {...} (Improved Native For-Loop)\nsnippet forr\n for (var ${1:i} = ${2:Things}.length - 1; $1 >= 0; $1--) {\n ${3:$2[$1]}$0\n }\n\n\n#modules\nsnippet def\n define(function(require, exports, module) {\n "use strict";\n var ${1/.*\\///} = require("${1}");\n \n $TM_SELECTED_TEXT\n });\nsnippet req\nguard ^\\s*\n var ${1/.*\\///} = require("${1}");\n $0\nsnippet requ\nguard ^\\s*\n var ${1/.*\\/(.)/\\u$1/} = require("${1}").${1/.*\\/(.)/\\u$1/};\n $0\n',t.scope="javascript"}) --------------------------------------------------------------------------------