├── .gitignore ├── .DS_Store ├── assets ├── icon.ico ├── icon.png ├── .DS_Store ├── icon.icns ├── colon-screenshots │ ├── 1.png │ ├── 2.png │ ├── 3.png │ ├── 4.png │ └── 5.png ├── img │ └── themes │ │ ├── ambiance.png │ │ ├── darcula.png │ │ ├── dracula.png │ │ ├── eclipse.png │ │ ├── monokai.png │ │ ├── one-dark.png │ │ ├── hopscotch.png │ │ └── gruvbox-dark.png ├── fonts │ ├── fontawesome-webfont.ttf │ ├── fontawesome-webfont.woff │ └── fontawesome-webfont.woff2 ├── icons │ ├── credits.svg │ ├── markdown.svg │ ├── mdx.svg │ ├── exe.svg │ ├── favicon.svg │ ├── readme.svg │ ├── routing.svg │ ├── email.svg │ ├── java.svg │ ├── ruby.svg │ ├── coffee.svg │ ├── file.svg │ ├── wallaby.svg │ ├── virtual.svg │ ├── document.svg │ ├── todo.svg │ ├── zip.svg │ ├── css.svg │ ├── lib.svg │ ├── xaml.svg │ ├── angular.svg │ ├── font.svg │ ├── angular-guard.svg │ ├── angular-pipe.svg │ ├── angular-service.svg │ ├── angular-component.svg │ ├── angular-directive.svg │ ├── angular-resolver.svg │ ├── key.svg │ ├── video.svg │ ├── html.svg │ ├── word.svg │ ├── database.svg │ ├── table.svg │ ├── powerpoint.svg │ ├── certificate.svg │ ├── console.svg │ ├── lock.svg │ ├── url.svg │ ├── mxml.svg │ ├── nim.svg │ ├── vue.svg │ ├── shaderlab.svg │ ├── elixir.svg │ ├── audio.svg │ ├── solidity.svg │ ├── diff.svg │ ├── changelog.svg │ ├── julia.svg │ ├── xml.svg │ ├── conduct.svg │ ├── contributing.svg │ ├── npm.svg │ ├── css-map.svg │ ├── nunjucks.svg │ ├── merlin.svg │ ├── visualstudio.svg │ ├── h.svg │ ├── fsharp.svg │ ├── yang.svg │ ├── stop-button.svg │ ├── cmake.svg │ ├── firebase.svg │ ├── slim.svg │ ├── c.svg │ ├── gemfile.svg │ ├── log.svg │ ├── code-climate.svg │ ├── wepy.svg │ ├── code-climate_light.svg │ ├── gulp.svg │ ├── swift.svg │ ├── karma.svg │ ├── test-js.svg │ ├── test-ts.svg │ ├── folder-font-open.svg │ ├── folder-font.svg │ ├── cpp.svg │ ├── json.svg │ ├── raml.svg │ ├── yaml.svg │ ├── applescript.svg │ ├── haskell.svg │ ├── image.svg │ ├── drone.svg │ ├── perl.svg │ ├── drone_light.svg │ ├── hpp.svg │ ├── hcl.svg │ ├── javascript.svg │ ├── stencil.svg │ ├── hcl_light.svg │ ├── stencil_light.svg │ ├── verilog.svg │ ├── folder-coverage-open.svg │ ├── folder-components-open.svg │ ├── folder-components.svg │ ├── folder-coverage.svg │ ├── folder-vscode.svg │ ├── folder-class-open.svg │ ├── folder-markdown.svg │ ├── folder-class.svg │ ├── folder-docs.svg │ ├── folder-test.svg │ ├── test-jsx.svg │ ├── folder-markdown-open.svg │ ├── dotjs.svg │ ├── ejs.svg │ ├── folder-vscode-open.svg │ ├── folder-import-open.svg │ ├── folder-import.svg │ ├── folder-css.svg │ ├── git.svg │ ├── lua.svg │ ├── folder-docs-open.svg │ ├── folder-test-open.svg │ ├── folder-views.svg │ ├── csharp.svg │ ├── puppet.svg │ ├── folder-aws-open.svg │ ├── folder-aws.svg │ ├── vscode.svg │ ├── folder-images.svg │ ├── folder-routes-open.svg │ ├── folder-include-open.svg │ ├── folder-include.svg │ ├── folder-routes.svg │ ├── folder-scripts.svg │ ├── folder-css-open.svg │ ├── folder-vue-open.svg │ ├── folder-video-open.svg │ ├── folder-video.svg │ ├── folder-views-open.svg │ ├── folder-vue.svg │ ├── folder-dist.svg │ ├── folder-images-open.svg │ ├── razor.svg │ ├── folder-log-open.svg │ ├── folder-log.svg │ ├── i18n.svg │ ├── folder-scripts-open.svg │ ├── stylus.svg │ ├── tex.svg │ ├── flow.svg │ ├── erlang.svg │ ├── folder-lib-open.svg │ ├── folder-lib.svg │ ├── kivy.svg │ ├── terraform.svg │ ├── folder-jinja.svg │ ├── folder-jinja_light.svg │ ├── ballerina.svg │ ├── folder-audio-open.svg │ ├── folder-audio.svg │ ├── folder-jinja-open.svg │ ├── folder-phpmailer.svg │ ├── heroku.svg │ ├── folder-jinja-open_light.svg │ ├── settings.svg │ ├── tune.svg │ ├── apiblueprint.svg │ ├── folder-dist-open.svg │ ├── folder-sublime.svg │ ├── smarty.svg │ ├── folder-export.svg │ ├── folder-messages-open.svg │ ├── folder-phpmailer-open.svg │ ├── folder-resource-open.svg │ ├── folder-resource.svg │ ├── sbt.svg │ ├── webassembly.svg │ ├── folder-messages.svg │ ├── san.svg │ ├── arduino.svg │ ├── folder-export-open.svg │ ├── folder-sublime-open.svg │ ├── folder-temp-open.svg │ ├── folder-temp.svg │ ├── hack.svg │ ├── folder-ci-open.svg │ ├── folder-ci.svg │ ├── scala.svg │ ├── appveyor.svg │ ├── reason.svg │ ├── jinja_light.svg │ ├── crystal_light.svg │ ├── folder-git.svg │ ├── coldfusion.svg │ ├── crystal.svg │ ├── jinja.svg │ ├── folder-git-open.svg │ ├── sublime.svg │ ├── folder-database-open.svg │ ├── folder-database.svg │ ├── folder-i18n-open.svg │ ├── folder-i18n.svg │ ├── racket.svg │ ├── folder-node.svg │ ├── robot.svg │ ├── run-button.svg │ ├── folder-plugin-open.svg │ ├── folder-plugin.svg │ ├── gatsby.svg │ ├── javascript-map.svg │ ├── folder-node-open.svg │ ├── processing.svg │ ├── processing_light.svg │ ├── folder-other-open.svg │ ├── folder-other.svg │ ├── django.svg │ ├── pdf.svg │ ├── jupyter.svg │ ├── cake.svg │ ├── gradle.svg │ ├── matlab.svg │ ├── kotlin.svg │ ├── folder-global-open.svg │ ├── folder-global.svg │ ├── cabal.svg │ ├── dart.svg │ ├── r.svg │ ├── refresh-button.svg │ ├── folder-circleci.svg │ ├── handlebars.svg │ ├── webpack.svg │ ├── folder-ansible.svg │ ├── folder-debug-open.svg │ ├── folder-debug.svg │ ├── mjml.svg │ ├── folder-benchmark-open.svg │ ├── folder-benchmark.svg │ ├── mocha.svg │ ├── storybook.svg │ ├── autoit.svg │ ├── elm.svg │ ├── folder-ansible-open.svg │ ├── nodejs.svg │ └── purescript.svg ├── css │ └── loading-bar.css └── js │ └── console.js ├── menu ├── .DS_Store ├── help_menu.js ├── templates_menu.js ├── goto_menu.js ├── selection_menu.js └── view_menu.js ├── src └── editor │ ├── .travis.yml │ ├── doc │ ├── logo.png │ └── yinyang.png │ ├── bin │ ├── lint │ ├── authors.sh │ └── upload-release.js │ ├── src │ ├── codemirror.js │ ├── edit │ │ └── utils.js │ ├── line │ │ └── saw_special_spans.js │ ├── display │ │ └── mode_state.js │ └── input │ │ └── keynames.js │ ├── .editorconfig │ ├── theme │ ├── ambiance-mobile.css │ ├── neat.css │ ├── ssms.css │ ├── elegant.css │ └── neo.css │ ├── addon │ ├── display │ │ └── fullscreen.css │ ├── search │ │ └── matchesonscrollbar.css │ ├── fold │ │ └── foldgutter.css │ ├── dialog │ │ └── dialog.css │ ├── hint │ │ └── show-hint.css │ ├── mode │ │ └── multiplex_test.js │ └── edit │ │ └── trailingspace.js │ ├── .gitattributes │ ├── .npmignore │ ├── mode │ ├── tiddlywiki │ │ └── tiddlywiki.css │ ├── d │ │ └── test.js │ ├── css │ │ └── gss_test.js │ ├── tiki │ │ └── tiki.css │ └── ruby │ │ └── test.js │ ├── test │ ├── mode_test.css │ ├── lint.js │ ├── run.js │ └── phantom_driver.js │ └── rollup.config.js ├── _config.yml ├── dev-app-update.yml ├── CHANGELOG.md └── views └── about.html /.gitignore: -------------------------------------------------------------------------------- 1 | # dependencies 2 | /node_modules 3 | /dist -------------------------------------------------------------------------------- /.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chhekur/colon-ide/HEAD/.DS_Store -------------------------------------------------------------------------------- /assets/icon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chhekur/colon-ide/HEAD/assets/icon.ico -------------------------------------------------------------------------------- /assets/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chhekur/colon-ide/HEAD/assets/icon.png -------------------------------------------------------------------------------- /menu/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chhekur/colon-ide/HEAD/menu/.DS_Store -------------------------------------------------------------------------------- /assets/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chhekur/colon-ide/HEAD/assets/.DS_Store -------------------------------------------------------------------------------- /assets/icon.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chhekur/colon-ide/HEAD/assets/icon.icns -------------------------------------------------------------------------------- /src/editor/.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | node_js: 3 | - stable 4 | sudo: false 5 | -------------------------------------------------------------------------------- /_config.yml: -------------------------------------------------------------------------------- 1 | theme: jekyll-theme-cayman 2 | future: true 3 | timezone: Asia/Kolkata 4 | -------------------------------------------------------------------------------- /dev-app-update.yml: -------------------------------------------------------------------------------- 1 | owner: chhekur 2 | repo: colon-ide 3 | provider: github 4 | identity: null 5 | -------------------------------------------------------------------------------- /src/editor/doc/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chhekur/colon-ide/HEAD/src/editor/doc/logo.png -------------------------------------------------------------------------------- /src/editor/bin/lint: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env node 2 | 3 | process.exit(require("../test/lint").ok ? 0 : 1); 4 | -------------------------------------------------------------------------------- /src/editor/doc/yinyang.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chhekur/colon-ide/HEAD/src/editor/doc/yinyang.png -------------------------------------------------------------------------------- /assets/colon-screenshots/1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chhekur/colon-ide/HEAD/assets/colon-screenshots/1.png -------------------------------------------------------------------------------- /assets/colon-screenshots/2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chhekur/colon-ide/HEAD/assets/colon-screenshots/2.png -------------------------------------------------------------------------------- /assets/colon-screenshots/3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chhekur/colon-ide/HEAD/assets/colon-screenshots/3.png -------------------------------------------------------------------------------- /assets/colon-screenshots/4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chhekur/colon-ide/HEAD/assets/colon-screenshots/4.png -------------------------------------------------------------------------------- /assets/colon-screenshots/5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chhekur/colon-ide/HEAD/assets/colon-screenshots/5.png -------------------------------------------------------------------------------- /assets/img/themes/ambiance.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chhekur/colon-ide/HEAD/assets/img/themes/ambiance.png -------------------------------------------------------------------------------- /assets/img/themes/darcula.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chhekur/colon-ide/HEAD/assets/img/themes/darcula.png -------------------------------------------------------------------------------- /assets/img/themes/dracula.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chhekur/colon-ide/HEAD/assets/img/themes/dracula.png -------------------------------------------------------------------------------- /assets/img/themes/eclipse.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chhekur/colon-ide/HEAD/assets/img/themes/eclipse.png -------------------------------------------------------------------------------- /assets/img/themes/monokai.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chhekur/colon-ide/HEAD/assets/img/themes/monokai.png -------------------------------------------------------------------------------- /assets/img/themes/one-dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chhekur/colon-ide/HEAD/assets/img/themes/one-dark.png -------------------------------------------------------------------------------- /src/editor/src/codemirror.js: -------------------------------------------------------------------------------- 1 | import { CodeMirror } from "./edit/main.js" 2 | 3 | export default CodeMirror 4 | -------------------------------------------------------------------------------- /assets/img/themes/hopscotch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chhekur/colon-ide/HEAD/assets/img/themes/hopscotch.png -------------------------------------------------------------------------------- /assets/img/themes/gruvbox-dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chhekur/colon-ide/HEAD/assets/img/themes/gruvbox-dark.png -------------------------------------------------------------------------------- /assets/fonts/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chhekur/colon-ide/HEAD/assets/fonts/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /assets/fonts/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chhekur/colon-ide/HEAD/assets/fonts/fontawesome-webfont.woff -------------------------------------------------------------------------------- /assets/fonts/fontawesome-webfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Chhekur/colon-ide/HEAD/assets/fonts/fontawesome-webfont.woff2 -------------------------------------------------------------------------------- /src/editor/.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | indent_style = space 5 | indent_size = 2 6 | end_of_line = lf 7 | charset = utf-8 8 | -------------------------------------------------------------------------------- /src/editor/theme/ambiance-mobile.css: -------------------------------------------------------------------------------- 1 | .cm-s-ambiance.CodeMirror { 2 | -webkit-box-shadow: none; 3 | -moz-box-shadow: none; 4 | box-shadow: none; 5 | } 6 | -------------------------------------------------------------------------------- /src/editor/addon/display/fullscreen.css: -------------------------------------------------------------------------------- 1 | .CodeMirror-fullscreen { 2 | position: fixed; 3 | top: 0; left: 0; right: 0; bottom: 0; 4 | height: auto; 5 | z-index: 9; 6 | } 7 | -------------------------------------------------------------------------------- /assets/icons/credits.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/editor/.gitattributes: -------------------------------------------------------------------------------- 1 | *.txt text eol=lf 2 | *.js text eol=lf 3 | *.html text eol=lf 4 | *.md text eol=lf 5 | *.json text eol=lf 6 | *.yml text eol=lf 7 | *.css text eol=lf 8 | *.svg text eol=lf 9 | -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- 1 | ## Changelog 2 | - New: Integrated Terminal 3 | - Fixed: HTML Preview, When you link css files in your HTML page 4 | - Improvement: App size 5 | - Improvement: UI 6 | - Fixed: Short cut keys for zoomin and zoomout -------------------------------------------------------------------------------- /assets/icons/markdown.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/icons/mdx.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/exe.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/icons/favicon.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/icons/readme.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/icons/routing.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/icons/email.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/icons/java.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/icons/ruby.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/icons/coffee.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/icons/file.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/icons/wallaby.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/virtual.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/editor/addon/search/matchesonscrollbar.css: -------------------------------------------------------------------------------- 1 | .CodeMirror-search-match { 2 | background: gold; 3 | border-top: 1px solid orange; 4 | border-bottom: 1px solid orange; 5 | -moz-box-sizing: border-box; 6 | box-sizing: border-box; 7 | opacity: .5; 8 | } 9 | -------------------------------------------------------------------------------- /assets/icons/document.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/icons/todo.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /src/editor/.npmignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /demo 3 | /doc 4 | /test 5 | /test*.html 6 | /index.html 7 | /mode/*/*test.js 8 | /mode/*/*.html 9 | /mode/index.html 10 | .* 11 | /bin/authors.sh 12 | /bin/lint 13 | /bin/release 14 | /bin/upload-release.js 15 | -------------------------------------------------------------------------------- /assets/icons/zip.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/icons/css.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/icons/lib.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/icons/xaml.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/icons/angular.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/icons/font.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/icons/angular-guard.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/icons/angular-pipe.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/icons/angular-service.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/css/loading-bar.css: -------------------------------------------------------------------------------- 1 | .ldBar{position:relative;}.ldBar.label-center > .ldBar-label{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);text-shadow:0 0 3px #fff}.ldBar-label:after{content:"%";display:inline}.ldBar.no-percent .ldBar-label:after{content:""} -------------------------------------------------------------------------------- /assets/icons/angular-component.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/icons/angular-directive.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/icons/angular-resolver.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/icons/key.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/icons/video.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /src/editor/src/edit/utils.js: -------------------------------------------------------------------------------- 1 | import { clearCaches } from "../measurement/position_measurement.js" 2 | 3 | export function themeChanged(cm) { 4 | cm.display.wrapper.className = cm.display.wrapper.className.replace(/\s*cm-s-\S+/g, "") + 5 | cm.options.theme.replace(/(^|\s)\s*/g, " cm-s-") 6 | clearCaches(cm) 7 | } 8 | -------------------------------------------------------------------------------- /assets/icons/html.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/icons/word.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/editor/mode/tiddlywiki/tiddlywiki.css: -------------------------------------------------------------------------------- 1 | span.cm-underlined { 2 | text-decoration: underline; 3 | } 4 | span.cm-strikethrough { 5 | text-decoration: line-through; 6 | } 7 | span.cm-brace { 8 | color: #170; 9 | font-weight: bold; 10 | } 11 | span.cm-table { 12 | color: blue; 13 | font-weight: bold; 14 | } 15 | -------------------------------------------------------------------------------- /assets/icons/database.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/js/console.js: -------------------------------------------------------------------------------- 1 | var sys = require('sys') 2 | var exec = require('child_process').exec; 3 | 4 | dir = exec("ls -la", function(err, stdout, stderr) { 5 | if (err) { 6 | console.log(err); 7 | } 8 | console.log(stdout); 9 | }); 10 | 11 | dir.on('exit', function (code) { 12 | // exit code is code 13 | }); -------------------------------------------------------------------------------- /assets/icons/table.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/editor/src/line/saw_special_spans.js: -------------------------------------------------------------------------------- 1 | // Optimize some code when these features are not used. 2 | export let sawReadOnlySpans = false, sawCollapsedSpans = false 3 | 4 | export function seeReadOnlySpans() { 5 | sawReadOnlySpans = true 6 | } 7 | 8 | export function seeCollapsedSpans() { 9 | sawCollapsedSpans = true 10 | } 11 | -------------------------------------------------------------------------------- /assets/icons/powerpoint.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/icons/certificate.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/icons/console.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/icons/lock.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/icons/url.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/editor/bin/authors.sh: -------------------------------------------------------------------------------- 1 | # Combine existing list of authors with everyone known in git, sort, add header. 2 | tail --lines=+3 AUTHORS > AUTHORS.tmp 3 | git log --format='%aN' | grep -v "Piët Delport" >> AUTHORS.tmp 4 | echo -e "List of CodeMirror contributors. Updated before every release.\n" > AUTHORS 5 | sort -u AUTHORS.tmp >> AUTHORS 6 | rm -f AUTHORS.tmp 7 | -------------------------------------------------------------------------------- /assets/icons/mxml.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/icons/nim.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/vue.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/shaderlab.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /menu/help_menu.js: -------------------------------------------------------------------------------- 1 | const fun = require('./functions.js'); 2 | 3 | module.exports = [ 4 | // { 5 | // label: 'Check For Updates...', 6 | // click:function(){ 7 | // fun.checkForUpdates(); 8 | // } 9 | // }, 10 | { 11 | label:'About Colon', 12 | click:function(){ 13 | fun.openAbout(); 14 | } 15 | } 16 | ] -------------------------------------------------------------------------------- /assets/icons/elixir.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/audio.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /assets/icons/solidity.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /assets/icons/diff.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/changelog.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/julia.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /assets/icons/xml.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /assets/icons/conduct.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /assets/icons/contributing.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /assets/icons/npm.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | n 7 | 8 | 9 | -------------------------------------------------------------------------------- /assets/icons/css-map.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/nunjucks.svg: -------------------------------------------------------------------------------- 1 | 4 | -------------------------------------------------------------------------------- /assets/icons/merlin.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /assets/icons/visualstudio.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /assets/icons/h.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /assets/icons/fsharp.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /src/editor/mode/d/test.js: -------------------------------------------------------------------------------- 1 | // CodeMirror, copyright (c) by Marijn Haverbeke and others 2 | // Distributed under an MIT license: http://codemirror.net/LICENSE 3 | 4 | (function() { 5 | var mode = CodeMirror.getMode({indentUnit: 2}, "d"); 6 | function MT(name) { test.mode(name, mode, Array.prototype.slice.call(arguments, 1)); } 7 | 8 | MT("nested_comments", 9 | "[comment /+]","[comment comment]","[comment +/]","[variable void] [variable main](){}"); 10 | 11 | })(); 12 | -------------------------------------------------------------------------------- /assets/icons/yang.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/stop-button.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/cmake.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /assets/icons/firebase.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /src/editor/test/mode_test.css: -------------------------------------------------------------------------------- 1 | .mt-output .mt-token { 2 | border: 1px solid #ddd; 3 | white-space: pre; 4 | font-family: "Consolas", monospace; 5 | text-align: center; 6 | } 7 | 8 | .mt-output .mt-style { 9 | font-size: x-small; 10 | } 11 | 12 | .mt-output .mt-state { 13 | font-size: x-small; 14 | vertical-align: top; 15 | } 16 | 17 | .mt-output .mt-state-row { 18 | display: none; 19 | } 20 | 21 | .mt-state-unhide .mt-output .mt-state-row { 22 | display: table-row; 23 | } 24 | -------------------------------------------------------------------------------- /assets/icons/slim.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /assets/icons/c.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/gemfile.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/log.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /assets/icons/code-climate.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /assets/icons/wepy.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /src/editor/test/lint.js: -------------------------------------------------------------------------------- 1 | var blint = require("blint"); 2 | 3 | ["mode", "lib", "addon", "keymap"].forEach(function(dir) { 4 | blint.checkDir(dir, { 5 | browser: true, 6 | allowedGlobals: ["CodeMirror", "define", "test", "requirejs"], 7 | ecmaVersion: 5, 8 | tabs: dir == "lib" 9 | }); 10 | }); 11 | 12 | ["src"].forEach(function(dir) { 13 | blint.checkDir(dir, { 14 | browser: true, 15 | ecmaVersion: 6, 16 | semicolons: false 17 | }); 18 | }); 19 | 20 | module.exports = {ok: blint.success()}; 21 | -------------------------------------------------------------------------------- /assets/icons/code-climate_light.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /assets/icons/gulp.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/icons/swift.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/karma.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /assets/icons/test-js.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/test-ts.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/folder-font-open.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /src/editor/addon/fold/foldgutter.css: -------------------------------------------------------------------------------- 1 | .CodeMirror-foldmarker { 2 | color: #fff; 3 | /*text-shadow: #b9f 1px 1px 2px, #b9f -1px -1px 2px, #b9f 1px -1px 2px, #b9f -1px 1px 2px;*/ 4 | font-family: arial; 5 | line-height: .3; 6 | cursor: pointer; 7 | } 8 | .CodeMirror-foldgutter { 9 | width: .7em; 10 | } 11 | .CodeMirror-foldgutter-open, 12 | .CodeMirror-foldgutter-folded { 13 | cursor: pointer; 14 | } 15 | .CodeMirror-foldgutter-open:after { 16 | content: "\25BE"; 17 | } 18 | .CodeMirror-foldgutter-folded:after { 19 | content: "\25B8"; 20 | } 21 | -------------------------------------------------------------------------------- /src/editor/mode/css/gss_test.js: -------------------------------------------------------------------------------- 1 | // CodeMirror, copyright (c) by Marijn Haverbeke and others 2 | // Distributed under an MIT license: http://codemirror.net/LICENSE 3 | 4 | (function() { 5 | "use strict"; 6 | 7 | var mode = CodeMirror.getMode({indentUnit: 2}, "text/x-gss"); 8 | function MT(name) { test.mode(name, mode, Array.prototype.slice.call(arguments, 1), "gss"); } 9 | 10 | MT("atComponent", 11 | "[def @component] {", 12 | "[tag foo] {", 13 | " [property color]: [keyword black];", 14 | "}", 15 | "}"); 16 | 17 | })(); 18 | -------------------------------------------------------------------------------- /assets/icons/folder-font.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/cpp.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/json.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/raml.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/yaml.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /src/editor/mode/tiki/tiki.css: -------------------------------------------------------------------------------- 1 | .cm-tw-syntaxerror { 2 | color: #FFF; 3 | background-color: #900; 4 | } 5 | 6 | .cm-tw-deleted { 7 | text-decoration: line-through; 8 | } 9 | 10 | .cm-tw-header5 { 11 | font-weight: bold; 12 | } 13 | .cm-tw-listitem:first-child { /*Added first child to fix duplicate padding when highlighting*/ 14 | padding-left: 10px; 15 | } 16 | 17 | .cm-tw-box { 18 | border-top-width: 0px !important; 19 | border-style: solid; 20 | border-width: 1px; 21 | border-color: inherit; 22 | } 23 | 24 | .cm-tw-underline { 25 | text-decoration: underline; 26 | } -------------------------------------------------------------------------------- /assets/icons/applescript.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/icons/haskell.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /assets/icons/image.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/icons/drone.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /assets/icons/perl.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/icons/drone_light.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /assets/icons/hpp.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /assets/icons/hcl.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/javascript.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/icons/stencil.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/hcl_light.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/stencil_light.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/verilog.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/icons/folder-coverage-open.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/folder-components-open.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/folder-components.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/folder-coverage.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/folder-vscode.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/folder-class-open.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/folder-markdown.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/folder-class.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/folder-docs.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/folder-test.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/test-jsx.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /assets/icons/folder-markdown-open.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/dotjs.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /assets/icons/ejs.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /assets/icons/folder-vscode-open.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/folder-import-open.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/folder-import.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/folder-css.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/git.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /assets/icons/lua.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /src/editor/addon/dialog/dialog.css: -------------------------------------------------------------------------------- 1 | .CodeMirror-dialog { 2 | position: absolute; 3 | left: 0; right: 0; 4 | background: inherit; 5 | z-index: 15; 6 | padding: .1em .8em; 7 | overflow: hidden; 8 | color: inherit; 9 | } 10 | 11 | .CodeMirror-dialog-top { 12 | border-bottom: 1px solid #eee; 13 | top: 0; 14 | } 15 | 16 | .CodeMirror-dialog-bottom { 17 | border-top: 1px solid #eee; 18 | bottom: 0; 19 | } 20 | 21 | .CodeMirror-dialog input { 22 | border: none; 23 | outline: none; 24 | background: transparent; 25 | width: 20em; 26 | color: inherit; 27 | font-family: monospace; 28 | } 29 | 30 | .CodeMirror-dialog button { 31 | font-size: 70%; 32 | } 33 | -------------------------------------------------------------------------------- /assets/icons/folder-docs-open.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/folder-test-open.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/folder-views.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/csharp.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/icons/puppet.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /assets/icons/folder-aws-open.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/folder-aws.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/vscode.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | BrandVisualStudioCode 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /assets/icons/folder-images.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/folder-routes-open.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/folder-include-open.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/folder-include.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/folder-routes.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /src/editor/rollup.config.js: -------------------------------------------------------------------------------- 1 | import buble from 'rollup-plugin-buble'; 2 | 3 | export default { 4 | banner: `// CodeMirror, copyright (c) by Marijn Haverbeke and others 5 | // Distributed under an MIT license: http://codemirror.net/LICENSE 6 | 7 | // This is CodeMirror (http://codemirror.net), a code editor 8 | // implemented in JavaScript on top of the browser's DOM. 9 | // 10 | // You can find some technical background for some of the code below 11 | // at http://marijnhaverbeke.nl/blog/#cm-internals . 12 | `, 13 | entry: "src/codemirror.js", 14 | format: "umd", 15 | dest: "lib/codemirror.js", 16 | moduleName: "CodeMirror", 17 | plugins: [ buble({namedFunctionExpressions: false}) ] 18 | }; 19 | -------------------------------------------------------------------------------- /assets/icons/folder-scripts.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/folder-css-open.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/folder-vue-open.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/folder-video-open.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/folder-video.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/folder-views-open.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/folder-vue.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/folder-dist.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/folder-images-open.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/razor.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/icons/folder-log-open.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/folder-log.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/i18n.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /src/editor/src/display/mode_state.js: -------------------------------------------------------------------------------- 1 | import { getMode } from "../modes.js" 2 | 3 | import { startWorker } from "./highlight_worker.js" 4 | import { regChange } from "./view_tracking.js" 5 | 6 | // Used to get the editor into a consistent state again when options change. 7 | 8 | export function loadMode(cm) { 9 | cm.doc.mode = getMode(cm.options, cm.doc.modeOption) 10 | resetModeState(cm) 11 | } 12 | 13 | export function resetModeState(cm) { 14 | cm.doc.iter(line => { 15 | if (line.stateAfter) line.stateAfter = null 16 | if (line.styles) line.styles = null 17 | }) 18 | cm.doc.modeFrontier = cm.doc.highlightFrontier = cm.doc.first 19 | startWorker(cm, 100) 20 | cm.state.modeGen++ 21 | if (cm.curOp) regChange(cm) 22 | } 23 | -------------------------------------------------------------------------------- /assets/icons/folder-scripts-open.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/stylus.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/tex.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /src/editor/theme/neat.css: -------------------------------------------------------------------------------- 1 | .cm-s-neat span.cm-comment { color: #a86; } 2 | .cm-s-neat span.cm-keyword { line-height: 1em; font-weight: bold; color: blue; } 3 | .cm-s-neat span.cm-string { color: #a22; } 4 | .cm-s-neat span.cm-builtin { line-height: 1em; font-weight: bold; color: #077; } 5 | .cm-s-neat span.cm-special { line-height: 1em; font-weight: bold; color: #0aa; } 6 | .cm-s-neat span.cm-variable { color: black; } 7 | .cm-s-neat span.cm-number, .cm-s-neat span.cm-atom { color: #3a3; } 8 | .cm-s-neat span.cm-meta { color: #555; } 9 | .cm-s-neat span.cm-link { color: #3a3; } 10 | 11 | .cm-s-neat .CodeMirror-activeline-background { background: #e8f2ff; } 12 | .cm-s-neat .CodeMirror-matchingbracket { outline:1px solid grey; color:black !important; } 13 | -------------------------------------------------------------------------------- /src/editor/mode/ruby/test.js: -------------------------------------------------------------------------------- 1 | // CodeMirror, copyright (c) by Marijn Haverbeke and others 2 | // Distributed under an MIT license: http://codemirror.net/LICENSE 3 | 4 | (function() { 5 | var mode = CodeMirror.getMode({indentUnit: 2}, "ruby"); 6 | function MT(name) { test.mode(name, mode, Array.prototype.slice.call(arguments, 1)); } 7 | 8 | MT("divide_equal_operator", 9 | "[variable bar] [operator /=] [variable foo]"); 10 | 11 | MT("divide_equal_operator_no_spacing", 12 | "[variable foo][operator /=][number 42]"); 13 | 14 | MT("complex_regexp", 15 | "[keyword if] [variable cr] [operator =~] [string-2 /(?: \\( #{][tag RE_NOT][string-2 }\\( | #{][tag RE_NOT_PAR_OR][string-2 }* #{][tag RE_OPA_OR][string-2 } )/][variable x]") 16 | })(); 17 | -------------------------------------------------------------------------------- /assets/icons/flow.svg: -------------------------------------------------------------------------------- 1 | 2 | 8 | -------------------------------------------------------------------------------- /menu/templates_menu.js: -------------------------------------------------------------------------------- 1 | const fun = require('./functions.js'); 2 | const path = require('path'); 3 | const fs = require('fs'); 4 | 5 | let templates_menu = [] 6 | 7 | let files = fs.readdirSync(path.join(fun.getUserDataPath(), 'templates')); 8 | // fs.readdir(path.join(fun.getUserDataPath(), 'templates'), function(err, items) { 9 | // console.log(items); 10 | 11 | // for (var i=0; i 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /assets/icons/folder-lib-open.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/folder-lib.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/kivy.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /assets/icons/terraform.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /assets/icons/folder-jinja.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/folder-jinja_light.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/ballerina.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/folder-audio-open.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/folder-audio.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/folder-jinja-open.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/folder-phpmailer.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/heroku.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/folder-jinja-open_light.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/settings.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/icons/tune.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /menu/goto_menu.js: -------------------------------------------------------------------------------- 1 | const fun = require('./functions.js'); 2 | 3 | module.exports = [ 4 | { 5 | label:'Go Word Left', 6 | accelerator:'Alt+Left', 7 | click:function(){ 8 | fun.goSubwordLeft(); 9 | } 10 | }, 11 | { 12 | label:'Go Word Right', 13 | accelerator:'Alt+Right', 14 | click:function(){ 15 | fun.goSubwordRight(); 16 | } 17 | }, 18 | { 19 | label: 'Goto Line', 20 | accelerator:'CmdOrCtrl+G', 21 | click:function(){ 22 | fun.jumpToLine(); 23 | } 24 | }, 25 | { 26 | label: 'Goto Bracket', 27 | accelerator:'CmdOrCtrl+M', 28 | click:function(){ 29 | fun.goToBracket(); 30 | } 31 | } 32 | ] -------------------------------------------------------------------------------- /src/editor/addon/hint/show-hint.css: -------------------------------------------------------------------------------- 1 | .CodeMirror-hints { 2 | position: absolute; 3 | z-index: 10; 4 | overflow: hidden; 5 | list-style: none; 6 | 7 | margin: 0; 8 | padding: 2px; 9 | 10 | -webkit-box-shadow: 2px 3px 5px rgba(0,0,0,.2); 11 | -moz-box-shadow: 2px 3px 5px rgba(0,0,0,.2); 12 | box-shadow: 2px 3px 5px rgba(0,0,0,.2); 13 | border-radius: 3px; 14 | border: 1px solid silver; 15 | 16 | background: white; 17 | font-size: 90%; 18 | font-family: monospace; 19 | 20 | max-height: 20em; 21 | overflow-y: auto; 22 | } 23 | 24 | .CodeMirror-hint { 25 | margin: 0; 26 | padding: 0 4px; 27 | border-radius: 2px; 28 | white-space: pre; 29 | color: black; 30 | cursor: pointer; 31 | } 32 | 33 | li.CodeMirror-hint-active { 34 | background: #08f; 35 | color: white; 36 | } 37 | -------------------------------------------------------------------------------- /assets/icons/apiblueprint.svg: -------------------------------------------------------------------------------- 1 | 2 | api-blueprint 3 | Created with Sketch. 4 | 5 | 6 | -------------------------------------------------------------------------------- /assets/icons/folder-dist-open.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/folder-sublime.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/smarty.svg: -------------------------------------------------------------------------------- 1 | 4 | -------------------------------------------------------------------------------- /assets/icons/folder-export.svg: -------------------------------------------------------------------------------- 1 | 6 | -------------------------------------------------------------------------------- /assets/icons/folder-messages-open.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/folder-phpmailer-open.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/folder-resource-open.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/folder-resource.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/sbt.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /assets/icons/webassembly.svg: -------------------------------------------------------------------------------- 1 | web-assembly-logo-black 2 | -------------------------------------------------------------------------------- /src/editor/theme/ssms.css: -------------------------------------------------------------------------------- 1 | .cm-s-ssms span.cm-keyword { color: blue; } 2 | .cm-s-ssms span.cm-comment { color: darkgreen; } 3 | .cm-s-ssms span.cm-string { color: red; } 4 | .cm-s-ssms span.cm-def { color: black; } 5 | .cm-s-ssms span.cm-variable { color: black; } 6 | .cm-s-ssms span.cm-variable-2 { color: black; } 7 | .cm-s-ssms span.cm-atom { color: darkgray; } 8 | .cm-s-ssms .CodeMirror-linenumber { color: teal; } 9 | .cm-s-ssms .CodeMirror-activeline-background { background: #ffffff; } 10 | .cm-s-ssms span.cm-string-2 { color: #FF00FF; } 11 | .cm-s-ssms span.cm-operator, 12 | .cm-s-ssms span.cm-bracket, 13 | .cm-s-ssms span.cm-punctuation { color: darkgray; } 14 | .cm-s-ssms .CodeMirror-gutters { border-right: 3px solid #ffee62; background-color: #ffffff; } 15 | .cm-s-ssms div.CodeMirror-selected { background: #ADD6FF; } 16 | 17 | -------------------------------------------------------------------------------- /assets/icons/folder-messages.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/san.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/arduino.svg: -------------------------------------------------------------------------------- 1 | Layer 1 -------------------------------------------------------------------------------- /assets/icons/folder-export-open.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/folder-sublime-open.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /src/editor/theme/elegant.css: -------------------------------------------------------------------------------- 1 | .cm-s-elegant span.cm-number, .cm-s-elegant span.cm-string, .cm-s-elegant span.cm-atom { color: #762; } 2 | .cm-s-elegant span.cm-comment { color: #262; font-style: italic; line-height: 1em; } 3 | .cm-s-elegant span.cm-meta { color: #555; font-style: italic; line-height: 1em; } 4 | .cm-s-elegant span.cm-variable { color: black; } 5 | .cm-s-elegant span.cm-variable-2 { color: #b11; } 6 | .cm-s-elegant span.cm-qualifier { color: #555; } 7 | .cm-s-elegant span.cm-keyword { color: #730; } 8 | .cm-s-elegant span.cm-builtin { color: #30a; } 9 | .cm-s-elegant span.cm-link { color: #762; } 10 | .cm-s-elegant span.cm-error { background-color: #fdd; } 11 | 12 | .cm-s-elegant .CodeMirror-activeline-background { background: #e8f2ff; } 13 | .cm-s-elegant .CodeMirror-matchingbracket { outline:1px solid grey; color:black !important; } 14 | -------------------------------------------------------------------------------- /assets/icons/folder-temp-open.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/folder-temp.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/hack.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/folder-ci-open.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/folder-ci.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/scala.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/appveyor.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /menu/selection_menu.js: -------------------------------------------------------------------------------- 1 | const fun = require('./functions.js'); 2 | 3 | module.exports = [ 4 | { 5 | label : 'Split Into Lines', 6 | accelerator : 'CmdOrCtrl+Shift+L', 7 | click:function(){ 8 | fun.splitSelectionByLine(); 9 | } 10 | }, 11 | { 12 | label: 'Add Previous Line', 13 | accelerator : 'CmdOrCtrl+Alt+Up', 14 | click:function(){ 15 | fun.addCursorToPrevLine(); 16 | } 17 | }, 18 | { 19 | label: 'Add Next Line', 20 | accelerator : 'CmdOrCtrl+Alt+Down', 21 | click:function(){ 22 | fun.addCursorToNextLine(); 23 | } 24 | }, 25 | { 26 | label: 'Single Selection', 27 | accelerator: 'Escape', 28 | click:function(){ 29 | fun.singleSelectionTop(); 30 | } 31 | } 32 | ] -------------------------------------------------------------------------------- /assets/icons/reason.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /views/about.html: -------------------------------------------------------------------------------- 1 | 14 | 15 | 22 |
23 |
24 | 25 |

26 | Colon 27 |

28 |

29 | A flexible text editor or ide 30 |

31 |
32 | By: Chhekur 33 |
34 |
35 |
-------------------------------------------------------------------------------- /assets/icons/jinja_light.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /assets/icons/crystal_light.svg: -------------------------------------------------------------------------------- 1 | 2 | 5 | -------------------------------------------------------------------------------- /assets/icons/folder-git.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/coldfusion.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /assets/icons/crystal.svg: -------------------------------------------------------------------------------- 1 | 2 | 5 | -------------------------------------------------------------------------------- /assets/icons/jinja.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /assets/icons/folder-git-open.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/sublime.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /assets/icons/folder-database-open.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/folder-database.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/folder-i18n-open.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/folder-i18n.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/racket.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/folder-node.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/robot.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/run-button.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /menu/view_menu.js: -------------------------------------------------------------------------------- 1 | const fun = require('./functions.js'); 2 | 3 | module.exports = [ 4 | { 5 | label:'Console', 6 | accelerator:'Shift+Enter', 7 | click:function(){ 8 | fun.openConsole(); 9 | } 10 | }, 11 | { 12 | label:'Html Preview', 13 | accelerator:'CmdOrCtrl+Shift+P', 14 | click:function(){ 15 | fun.openHtmlPreview(); 16 | } 17 | }, 18 | { 19 | label:'Markdown Preview', 20 | accelerator:'CmdOrCtrl+Alt+P', 21 | click:function(){ 22 | fun.openMarkdownPreview(); 23 | } 24 | }, 25 | { 26 | label : 'Project Structure', 27 | click:function(){ 28 | fun.openProjectStructure(); 29 | } 30 | } 31 | // { 32 | // label : 'Change Theme', 33 | // click:function(){ 34 | // fun.changeTheme(); 35 | // } 36 | // } 37 | ] -------------------------------------------------------------------------------- /assets/icons/folder-plugin-open.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/folder-plugin.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/gatsby.svg: -------------------------------------------------------------------------------- 1 | 2 | 6 | -------------------------------------------------------------------------------- /assets/icons/javascript-map.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /assets/icons/folder-node-open.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/processing.svg: -------------------------------------------------------------------------------- 1 | 6 | -------------------------------------------------------------------------------- /assets/icons/processing_light.svg: -------------------------------------------------------------------------------- 1 | 6 | -------------------------------------------------------------------------------- /src/editor/addon/mode/multiplex_test.js: -------------------------------------------------------------------------------- 1 | // CodeMirror, copyright (c) by Marijn Haverbeke and others 2 | // Distributed under an MIT license: http://codemirror.net/LICENSE 3 | 4 | (function() { 5 | CodeMirror.defineMode("markdown_with_stex", function(){ 6 | var inner = CodeMirror.getMode({}, "stex"); 7 | var outer = CodeMirror.getMode({}, "markdown"); 8 | 9 | var innerOptions = { 10 | open: '$', 11 | close: '$', 12 | mode: inner, 13 | delimStyle: 'delim', 14 | innerStyle: 'inner' 15 | }; 16 | 17 | return CodeMirror.multiplexingMode(outer, innerOptions); 18 | }); 19 | 20 | var mode = CodeMirror.getMode({}, "markdown_with_stex"); 21 | 22 | function MT(name) { 23 | test.mode( 24 | name, 25 | mode, 26 | Array.prototype.slice.call(arguments, 1), 27 | 'multiplexing'); 28 | } 29 | 30 | MT( 31 | "stexInsideMarkdown", 32 | "[strong **Equation:**] [delim&delim-open $][inner&tag \\pi][delim&delim-close $]"); 33 | })(); 34 | -------------------------------------------------------------------------------- /assets/icons/folder-other-open.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/folder-other.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/django.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/pdf.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/jupyter.svg: -------------------------------------------------------------------------------- 1 | logo.svgCreated using Figma 0.90 2 | -------------------------------------------------------------------------------- /src/editor/test/run.js: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env node 2 | 3 | var ok = require("./lint").ok; 4 | 5 | var files = new (require('node-static').Server)(); 6 | 7 | var server = require('http').createServer(function (req, res) { 8 | req.addListener('end', function () { 9 | files.serve(req, res, function (err/*, result */) { 10 | if (err) { 11 | console.error(err); 12 | process.exit(1); 13 | } 14 | }); 15 | }).resume(); 16 | }).addListener('error', function (err) { 17 | throw err; 18 | }).listen(3000, function () { 19 | var childProcess = require('child_process'); 20 | var phantomjs = require("phantomjs-prebuilt"); 21 | var childArgs = [ 22 | require("path").join(__dirname, 'phantom_driver.js') 23 | ]; 24 | childProcess.execFile(phantomjs.path, childArgs, function (err, stdout, stderr) { 25 | server.close(); 26 | console.log(stdout); 27 | if (err) console.error(err); 28 | if (stderr) console.error(stderr); 29 | process.exit(err || stderr || !ok ? 1 : 0); 30 | }); 31 | }); 32 | -------------------------------------------------------------------------------- /assets/icons/cake.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/gradle.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/icons/matlab.svg: -------------------------------------------------------------------------------- 1 | 2 | Layer 1 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /assets/icons/kotlin.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /assets/icons/folder-global-open.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/folder-global.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /assets/icons/cabal.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /assets/icons/dart.svg: -------------------------------------------------------------------------------- 1 | 2 | Dart 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /assets/icons/r.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /src/editor/test/phantom_driver.js: -------------------------------------------------------------------------------- 1 | var page = require('webpage').create(); 2 | 3 | page.open("http://localhost:3000/test/index.html", function (status) { 4 | if (status != "success") { 5 | console.log("page couldn't be loaded successfully"); 6 | phantom.exit(1); 7 | } 8 | waitFor(function () { 9 | return page.evaluate(function () { 10 | var output = document.getElementById('status'); 11 | if (!output) { return false; } 12 | return (/^(\d+ failures?|all passed)/i).test(output.innerText); 13 | }); 14 | }, function () { 15 | var failed = page.evaluate(function () { return window.failed; }); 16 | var output = page.evaluate(function () { 17 | return document.getElementById('output').innerText + "\n" + 18 | document.getElementById('status').innerText; 19 | }); 20 | console.log(output); 21 | phantom.exit(failed > 0 ? 1 : 0); 22 | }); 23 | }); 24 | 25 | function waitFor (test, cb) { 26 | if (test()) { 27 | cb(); 28 | } else { 29 | setTimeout(function () { waitFor(test, cb); }, 250); 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /assets/icons/refresh-button.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/editor/src/input/keynames.js: -------------------------------------------------------------------------------- 1 | export let keyNames = { 2 | 3: "Pause", 8: "Backspace", 9: "Tab", 13: "Enter", 16: "Shift", 17: "Ctrl", 18: "Alt", 3 | 19: "Pause", 20: "CapsLock", 27: "Esc", 32: "Space", 33: "PageUp", 34: "PageDown", 35: "End", 4 | 36: "Home", 37: "Left", 38: "Up", 39: "Right", 40: "Down", 44: "PrintScrn", 45: "Insert", 5 | 46: "Delete", 59: ";", 61: "=", 91: "Mod", 92: "Mod", 93: "Mod", 6 | 106: "*", 107: "=", 109: "-", 110: ".", 111: "/", 127: "Delete", 145: "ScrollLock", 7 | 173: "-", 186: ";", 187: "=", 188: ",", 189: "-", 190: ".", 191: "/", 192: "`", 219: "[", 220: "\\", 8 | 221: "]", 222: "'", 63232: "Up", 63233: "Down", 63234: "Left", 63235: "Right", 63272: "Delete", 9 | 63273: "Home", 63275: "End", 63276: "PageUp", 63277: "PageDown", 63302: "Insert" 10 | } 11 | 12 | // Number keys 13 | for (let i = 0; i < 10; i++) keyNames[i + 48] = keyNames[i + 96] = String(i) 14 | // Alphabetic keys 15 | for (let i = 65; i <= 90; i++) keyNames[i] = String.fromCharCode(i) 16 | // Function keys 17 | for (let i = 1; i <= 12; i++) keyNames[i + 111] = keyNames[i + 63235] = "F" + i 18 | -------------------------------------------------------------------------------- /assets/icons/folder-circleci.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /src/editor/bin/upload-release.js: -------------------------------------------------------------------------------- 1 | "use strict" 2 | 3 | let version = process.argv[2] 4 | let auth = process.argv[3] 5 | 6 | if (!auth) { 7 | console.log("Usage: upload-release.js [TAG] [github-user:password]") 8 | process.exit(1) 9 | } 10 | 11 | require('child_process').exec("git --no-pager show -s --format='%s' " + version, (error, stdout) => { 12 | if (error) throw error 13 | let message = stdout.split("\n").slice(2) 14 | message = message.slice(0, message.indexOf("-----BEGIN PGP SIGNATURE-----")).join("\n") 15 | 16 | let req = require("https").request({ 17 | host: "api.github.com", 18 | auth: auth, 19 | headers: {"user-agent": "Release uploader"}, 20 | path: "/repos/codemirror/codemirror/releases", 21 | method: "POST" 22 | }, res => { 23 | if (res.statusCode >= 300) { 24 | console.error(res.statusMessage) 25 | res.on("data", d => console.log(d.toString())) 26 | res.on("end", process.exit(1)) 27 | } 28 | }) 29 | req.write(JSON.stringify({ 30 | tag_name: version, 31 | name: version, 32 | body: message 33 | })) 34 | req.end() 35 | }) 36 | -------------------------------------------------------------------------------- /assets/icons/handlebars.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /assets/icons/webpack.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /assets/icons/folder-ansible.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/folder-debug-open.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/folder-debug.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/mjml.svg: -------------------------------------------------------------------------------- 1 | 5 | -------------------------------------------------------------------------------- /assets/icons/folder-benchmark-open.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/folder-benchmark.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/mocha.svg: -------------------------------------------------------------------------------- 1 | 2 | Mocha Logo 3 | -------------------------------------------------------------------------------- /assets/icons/storybook.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/autoit.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 10 | 17 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /assets/icons/elm.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/icons/folder-ansible-open.svg: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /src/editor/addon/edit/trailingspace.js: -------------------------------------------------------------------------------- 1 | // CodeMirror, copyright (c) by Marijn Haverbeke and others 2 | // Distributed under an MIT license: http://codemirror.net/LICENSE 3 | 4 | (function(mod) { 5 | if (typeof exports == "object" && typeof module == "object") // CommonJS 6 | mod(require("../../lib/codemirror")); 7 | else if (typeof define == "function" && define.amd) // AMD 8 | define(["../../lib/codemirror"], mod); 9 | else // Plain browser env 10 | mod(CodeMirror); 11 | })(function(CodeMirror) { 12 | CodeMirror.defineOption("showTrailingSpace", false, function(cm, val, prev) { 13 | if (prev == CodeMirror.Init) prev = false; 14 | if (prev && !val) 15 | cm.removeOverlay("trailingspace"); 16 | else if (!prev && val) 17 | cm.addOverlay({ 18 | token: function(stream) { 19 | for (var l = stream.string.length, i = l; i && /\s/.test(stream.string.charAt(i - 1)); i -= 1) {} 20 | if (i > stream.pos) { stream.pos = i; return null; } 21 | stream.pos = l; 22 | return "trailingspace"; 23 | }, 24 | name: "trailingspace" 25 | }); 26 | }); 27 | }); 28 | -------------------------------------------------------------------------------- /assets/icons/nodejs.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/editor/theme/neo.css: -------------------------------------------------------------------------------- 1 | /* neo theme for codemirror */ 2 | 3 | /* Color scheme */ 4 | 5 | .cm-s-neo.CodeMirror { 6 | background-color:#ffffff; 7 | color:#2e383c; 8 | line-height:1.4375; 9 | } 10 | .cm-s-neo .cm-comment { color:#75787b; } 11 | .cm-s-neo .cm-keyword, .cm-s-neo .cm-property { color:#1d75b3; } 12 | .cm-s-neo .cm-atom,.cm-s-neo .cm-number { color:#75438a; } 13 | .cm-s-neo .cm-node,.cm-s-neo .cm-tag { color:#9c3328; } 14 | .cm-s-neo .cm-string { color:#b35e14; } 15 | .cm-s-neo .cm-variable,.cm-s-neo .cm-qualifier { color:#047d65; } 16 | 17 | 18 | /* Editor styling */ 19 | 20 | .cm-s-neo pre { 21 | padding:0; 22 | } 23 | 24 | .cm-s-neo .CodeMirror-gutters { 25 | border:none; 26 | border-right:10px solid transparent; 27 | background-color:transparent; 28 | } 29 | 30 | .cm-s-neo .CodeMirror-linenumber { 31 | padding:0; 32 | color:#e0e2e5; 33 | } 34 | 35 | .cm-s-neo .CodeMirror-guttermarker { color: #1d75b3; } 36 | .cm-s-neo .CodeMirror-guttermarker-subtle { color: #e0e2e5; } 37 | 38 | .cm-s-neo .CodeMirror-cursor { 39 | width: auto; 40 | border: 0; 41 | background: rgba(155,157,162,0.37); 42 | z-index: 1; 43 | } 44 | -------------------------------------------------------------------------------- /assets/icons/purescript.svg: -------------------------------------------------------------------------------- 1 | 2 | --------------------------------------------------------------------------------