├── .babelrc
├── .gitignore
├── LICENSE
├── README.md
├── package.json
├── postcss.config.js
├── src
├── __tests__
│ └── graph-helper.test.js
├── assets
│ └── css
│ │ ├── tailwind.css
│ │ └── visualization.css
├── git-handler.js
├── graph-helper.js
├── index.html
├── index.js
├── language-data.js
├── languages.yml
└── visualization.js
└── tailwind.config.js
/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": ["@babel/preset-env"]
3 | }
4 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # Logs
2 | logs
3 | *.log
4 | npm-debug.log*
5 | yarn-debug.log*
6 | yarn-error.log*
7 | lerna-debug.log*
8 |
9 | # Diagnostic reports (https://nodejs.org/api/report.html)
10 | report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
11 |
12 | # Runtime data
13 | pids
14 | *.pid
15 | *.seed
16 | *.pid.lock
17 |
18 | # Directory for instrumented libs generated by jscoverage/JSCover
19 | lib-cov
20 |
21 | # Coverage directory used by tools like istanbul
22 | coverage
23 | *.lcov
24 |
25 | # nyc test coverage
26 | .nyc_output
27 |
28 | # Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
29 | .grunt
30 |
31 | # Bower dependency directory (https://bower.io/)
32 | bower_components
33 |
34 | # node-waf configuration
35 | .lock-wscript
36 |
37 | # Compiled binary addons (https://nodejs.org/api/addons.html)
38 | build/Release
39 |
40 | # Dependency directories
41 | node_modules/
42 | jspm_packages/
43 |
44 | # TypeScript v1 declaration files
45 | typings/
46 |
47 | # TypeScript cache
48 | *.tsbuildinfo
49 |
50 | # Optional npm cache directory
51 | .npm
52 |
53 | # Optional eslint cache
54 | .eslintcache
55 |
56 | # Optional REPL history
57 | .node_repl_history
58 |
59 | # Output of 'npm pack'
60 | *.tgz
61 |
62 | # Yarn Integrity file
63 | .yarn-integrity
64 |
65 | # dotenv environment variables file
66 | .env
67 | .env.test
68 |
69 | # parcel-bundler cache (https://parceljs.org/)
70 | .cache
71 |
72 | # next.js build output
73 | .next
74 |
75 | # nuxt.js build output
76 | .nuxt
77 |
78 | # gatsby files
79 | .cache/
80 | public
81 |
82 | # vuepress build output
83 | .vuepress/dist
84 |
85 | # Serverless directories
86 | .serverless/
87 |
88 | # FuseBox cache
89 | .fusebox/
90 |
91 | # DynamoDB Local files
92 | .dynamodb/
93 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2021 Kim Philipp Jablonski
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # GitViz
2 |
3 | Visualize the evolution of a git repository.
4 | Inspired by [Gource](https://gource.io/).
5 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "gitviz",
3 | "version": "0.0.1",
4 | "description": "Visualizae the evolution of a git repository",
5 | "repository": "https://github.com/kpj/GitViz/",
6 | "main": "index.js",
7 | "scripts": {
8 | "dev": "parcel ./src/index.html",
9 | "build": "parcel build ./src/index.html --public-url /GitViz",
10 | "test": "jest",
11 | "deploy": "npm run test && git worktree add -f dist gh-pages && npm run build && cd ./dist && git add . && git commit -m \"Update gh-pages (ref-commit: $(git log '--format=format:%H' master -1))\" && git push origin gh-pages && cd .. && rm -rf dist"
12 | },
13 | "author": "kpj",
14 | "license": "ISC",
15 | "devDependencies": {
16 | "@babel/preset-env": "^7.4.4",
17 | "babel-core": "^6.26.3",
18 | "babel-jest": "^24.8.0",
19 | "babel-plugin-transform-runtime": "^6.23.0",
20 | "babel-runtime": "^6.26.0",
21 | "jest": "^24.8.0",
22 | "parcel-bundler": "^1.12.3",
23 | "tailwindcss": "^1.1.2"
24 | },
25 | "dependencies": {
26 | "@isomorphic-git/lightning-fs": "^3.2.1",
27 | "babel-polyfill": "^6.26.0",
28 | "cytoscape": "^3.6.0",
29 | "cytoscape-cola": "^2.3.0",
30 | "isomorphic-git": "^0.54.2",
31 | "vue": "^2.6.10",
32 | "vuex": "^3.1.1",
33 | "vuex-forms": "0.0.7"
34 | },
35 | "alias": {
36 | "vue": "./node_modules/vue/dist/vue.common.js"
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/postcss.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | 'plugins': {
3 | 'tailwindcss': 'tailwind.config.js',
4 | 'autoprefixer': {}
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/src/__tests__/graph-helper.test.js:
--------------------------------------------------------------------------------
1 | import 'babel-polyfill'
2 | import { convertFilesToTree } from '../graph-helper'
3 |
4 | // deal with jest being unable to handle yaml files
5 | // parcel normally bundles them for us
6 | jest.mock('../languages.yml', () => 1)
7 |
8 | // tests
9 | test('construct basic tree', async () => {
10 | expect(await convertFilesToTree([
11 | { path: 'setup.py' },
12 | { path: 'project/main.py' },
13 | { path: 'project/utils.py' },
14 | { path: 'project/core/handler.py' }
15 | ])).toStrictEqual({
16 | nodes: [
17 | { id: '/', label: '/', type: 'directory', extension: undefined },
18 | { id: '/setup.py', label: 'setup.py', type: 'file', extension: 'py' },
19 | { id: '/project', label: 'project', type: 'directory', extension: undefined },
20 | { id: '/project/main.py', label: 'main.py', type: 'file', extension: 'py' },
21 | { id: '/project/utils.py', label: 'utils.py', type: 'file', extension: 'py' },
22 | { id: '/project/core', label: 'core', type: 'directory', extension: undefined },
23 | { id: '/project/core/handler.py', label: 'handler.py', type: 'file', extension: 'py' }
24 | ],
25 | edges: [
26 | { id: undefined, source: '/', target: '/setup.py' },
27 | { id: undefined, source: '/', target: '/project' },
28 | { id: undefined, source: '/project', target: '/project/main.py' },
29 | { id: undefined, source: '/project', target: '/project/utils.py' },
30 | { id: undefined, source: '/project', target: '/project/core' },
31 | { id: undefined, source: '/project/core', target: '/project/core/handler.py' }
32 | ]
33 | })
34 | })
35 |
--------------------------------------------------------------------------------
/src/assets/css/tailwind.css:
--------------------------------------------------------------------------------
1 | @tailwind base;
2 |
3 | form {
4 | @apply m-auto w-full max-w-lg;
5 | }
6 |
7 | div.form-group {
8 | @apply pb-4;
9 | }
10 |
11 | div.form-group > label {
12 | @apply block uppercase tracking-wide text-gray-700 text-xs font-bold mb-1;
13 | }
14 |
15 | div.form-group > input {
16 | @apply appearance-none block w-full bg-gray-200 text-gray-700 border border-gray-200 rounded py-3 px-4 leading-tight;
17 | }
18 | div.form-group > input:focus {
19 | @apply outline-none bg-white border-gray-500;
20 | }
21 |
22 | form > div > button {
23 | @apply bg-blue-500 text-white font-bold py-2 px-4 rounded;
24 | }
25 | form > div > button:hover {
26 | @apply bg-blue-700;
27 | }
28 | form > div > button:focus {
29 | @apply outline-none shadow-outline;
30 | }
31 |
32 | @tailwind components;
33 |
34 | @tailwind utilities;
35 |
--------------------------------------------------------------------------------
/src/assets/css/visualization.css:
--------------------------------------------------------------------------------
1 | #setup {
2 | display: block;
3 | }
4 |
5 | #header {
6 | display: fixed;
7 | font-family: monospace, monospace;
8 | }
9 |
10 | #container {
11 | width: 100%;
12 | height: 100%;
13 | margin: auto;
14 | }
15 |
16 | #commitView {
17 | position: absolute;
18 | bottom: 0;
19 | width: 100%;
20 | max-height: 10%;
21 | overflow-y: hidden;
22 | white-space: nowrap;
23 | font-family: monospace, monospace;
24 | }
25 |
26 | #commitView > .commit:after {
27 | content: '\A';
28 | white-space: pre;
29 | }
30 |
31 | #commitView > .active {
32 | font-size: large;
33 | }
34 |
35 | #commitView > .inactive {
36 | color: grey;
37 | opacity: 0.4;
38 | }
39 |
--------------------------------------------------------------------------------
/src/git-handler.js:
--------------------------------------------------------------------------------
1 | import 'babel-polyfill' // ReferenceError: regeneratorRuntime is not defined
2 |
3 | import FS from '@isomorphic-git/lightning-fs'
4 | import EventEmitter from 'events'
5 | const git = require('isomorphic-git')
6 |
7 | self.onmessage = e => {
8 | parseGitRepository(e.data.repoUrl, e.data.gitBranch).then(data => {
9 | postMessage({ type: 'result', data: data, state: e.data })
10 | })
11 | }
12 |
13 | let log = text => {
14 | postMessage({
15 | type: 'progress',
16 | text: text
17 | })
18 | }
19 |
20 | export async function parseGitRepository (repoUrl, branch) {
21 | const emitter = new EventEmitter()
22 |
23 | // prepare filesystem
24 | const fs = new FS('fs', { wipe: true })
25 | git.plugins.set('fs', fs)
26 | git.plugins.set('emitter', emitter)
27 |
28 | const pfs = fs.promises
29 |
30 | // prepare repo directory
31 | const dir = '/repo'
32 | await pfs.mkdir(dir)
33 |
34 | // clone repo
35 | console.log('Cloning repository')
36 | log('Cloning repository')
37 |
38 | const onProgress = async progress => {
39 | // console.log(progress)
40 | log(`${progress.phase} [${progress.loaded}/${progress.total}]`)
41 | }
42 |
43 | emitter.on('progress', onProgress)
44 | await git.clone({
45 | dir,
46 | corsProxy: 'https://cors.isomorphic-git.org',
47 | url: repoUrl,
48 | ref: branch,
49 | singleBranch: true,
50 | noCheckout: true
51 | })
52 | emitter.off('progress', onProgress)
53 |
54 | // get data from repo
55 | console.log('Parsing commits')
56 | log('Parsing commits')
57 | const commitList = await git.log({ dir })
58 | commitList.reverse()
59 |
60 | let data = []
61 |
62 | let firstCommit = commitList[0]
63 | data.push({
64 | commit: firstCommit,
65 | files: await git.listFiles(
66 | { dir: dir, ref: firstCommit.oid }
67 | ).then(data => {
68 | return data.map(e => ({
69 | path: `/${e}`,
70 | type: 'equal'
71 | }))
72 | })
73 | })
74 |
75 | for (let i = 0; i < commitList.length - 1; i++) {
76 | let curCommit = commitList[i]
77 | let nextCommit = commitList[i + 1]
78 |
79 | const files = await getFileStateChanges(curCommit.oid, nextCommit.oid, dir)
80 |
81 | data.push({
82 | commit: nextCommit,
83 | files
84 | })
85 |
86 | // update progress display
87 | log(`Comparing commits [${i + 1}/${commitList.length - 1}]`)
88 | }
89 |
90 | return data
91 | }
92 |
93 | async function getFileStateChanges (commitHash1, commitHash2, dir) {
94 | return git.walkBeta1({
95 | trees: [
96 | git.TREE({ dir: dir, ref: commitHash1 }),
97 | git.TREE({ dir: dir, ref: commitHash2 })
98 | ],
99 | map: async function ([A, B]) {
100 | // ignore directories
101 | if (A.fullpath === '.') {
102 | return
103 | }
104 | await A.populateStat()
105 | if (A.type === 'tree') {
106 | return
107 | }
108 | await B.populateStat()
109 | if (B.type === 'tree') {
110 | return
111 | }
112 |
113 | // generate ids
114 | await Promise.all([A.populateHash(), B.populateHash()])
115 |
116 | // determine modification type
117 | let type = 'equal'
118 | if (A.oid !== B.oid) {
119 | type = 'modify'
120 | }
121 | if (A.oid === undefined) {
122 | type = 'add'
123 | }
124 | if (B.oid === undefined) {
125 | type = 'remove'
126 | }
127 | if (A.oid === undefined && B.oid === undefined) {
128 | console.log('Something weird happened:')
129 | console.log(A)
130 | console.log(B)
131 | }
132 |
133 | return {
134 | path: `/${A.fullpath}`,
135 | type: type
136 | }
137 | }
138 | })
139 | }
140 |
--------------------------------------------------------------------------------
/src/graph-helper.js:
--------------------------------------------------------------------------------
1 | import cytoscape from 'cytoscape'
2 | import cola from 'cytoscape-cola'
3 |
4 | import { languageStyles, languageStylesDict } from './language-data'
5 |
6 | export class Graph {
7 | constructor (repoUrl) {
8 | cytoscape.use(cola)
9 |
10 | this.cy = cytoscape({
11 | container: document.getElementById('container'),
12 | style: [...[
13 | {
14 | selector: 'node',
15 | style: {
16 | label: 'data(label)',
17 | backgroundColor: 'gray'
18 | }
19 | },
20 | {
21 | selector: 'node[type="file"]',
22 | style: {
23 | shape: 'ellipse'
24 | }
25 | },
26 | {
27 | selector: 'node[type="directory"]',
28 | style: {
29 | shape: 'rectangle'
30 | }
31 | }
32 | ], ...languageStyles]
33 | })
34 |
35 | this.layout = undefined
36 | }
37 |
38 | blinkColor (nodeId, color, blinkDuration) {
39 | // set highlight color
40 | this.cy.getElementById(nodeId).style({
41 | backgroundColor: color
42 | })
43 |
44 | // revert to original color
45 | let origColor = languageStylesDict[this.cy.getElementById(nodeId).data('extension')] || 'gray' // this.cy.getElementById(nodeId).style('background-color')
46 |
47 | this.cy.getElementById(nodeId).animate({
48 | style: { backgroundColor: origColor }
49 | }, {
50 | duration: blinkDuration
51 | })
52 | }
53 |
54 | render () {
55 | // stop old layout if necessary
56 | if (this.layout !== undefined) {
57 | this.layout.stop()
58 | }
59 |
60 | // create new layout
61 | this.layout = this.cy.layout({
62 | name: 'cola',
63 | fit: true, // false
64 | infinite: true,
65 | randomize: false,
66 | ungrabifyWhileSimulating: true,
67 | nodeDimensionsIncludeLabels: false,
68 | // ready: () => {
69 | // this.cy.fit()
70 | // }
71 | })
72 | this.layout.run()
73 | }
74 |
75 | addNodes (nodes) {
76 | this.cy.startBatch()
77 |
78 | for (let entry of nodes) {
79 | this.cy.add({
80 | group: 'nodes',
81 | data: {
82 | id: entry.id,
83 | label: entry.label,
84 | type: entry.type,
85 | extension: entry.extension
86 | },
87 | position: entry.position || { x: 0, y: 0 }
88 | })
89 | }
90 |
91 | this.cy.endBatch()
92 | }
93 |
94 | addEdges (edges) {
95 | this.cy.startBatch()
96 |
97 | for (let entry of edges) {
98 | this.cy.add({
99 | group: 'edges',
100 | data: {
101 | id: entry.id,
102 | source: entry.source,
103 | target: entry.target
104 | },
105 | position: { x: 0, y: 0 }
106 | })
107 | }
108 |
109 | this.cy.endBatch()
110 | }
111 |
112 | /**
113 | * Add new nodes/edges and remove stale ones
114 | */
115 | changeState (proposedNodes, edges) {
116 | // extract ids
117 | let existingNodesIds = new Set(this.cy.nodes().map(n => n.id()))
118 | let proposedNodeIds = new Set(proposedNodes.map(n => n.id))
119 |
120 | // check which nodes were added/removed
121 | let addedNodes = proposedNodes.filter(x => !existingNodesIds.has(x.id))
122 | let removedNodeIds = new Set(
123 | [...existingNodesIds].filter(x => !proposedNodeIds.has(x)))
124 |
125 | // check which edges were added
126 | let addedNodesIds = new Set(addedNodes.map(n => n.id))
127 | let newEdges = new Set(edges)
128 | let addedEdges = [...newEdges].filter(
129 | x => addedNodesIds.has(x.source) || addedNodesIds.has(x.target))
130 |
131 | // add starting position to nodes with parent
132 | for (let n of addedNodes) {
133 | let parentId
134 | let parts = n.id.split('/')
135 |
136 | while (!existingNodesIds.has(parentId)) {
137 | parts.pop()
138 | parentId = parts.join('/') || '/'
139 | }
140 |
141 | n.position = Object.assign({}, this.cy.getElementById(parentId).position())
142 | }
143 |
144 | console.log(addedNodes, addedEdges)
145 | console.log(removedNodeIds)
146 |
147 | // apply changes
148 | let somethingChanged = false
149 |
150 | // add new entities
151 | if (addedNodes.length) {
152 | this.addNodes(addedNodes)
153 | this.addEdges(addedEdges)
154 |
155 | somethingChanged = true
156 | }
157 |
158 | // remove old nodes
159 | this.cy.startBatch()
160 | for (let nodeId of removedNodeIds) {
161 | // edges are removed automatically
162 | this.cy.getElementById(nodeId).remove()
163 | somethingChanged = true
164 | }
165 | this.cy.endBatch()
166 |
167 | return [somethingChanged, addedNodes]
168 | }
169 |
170 | clear () {
171 | if (this.layout !== undefined) {
172 | this.layout.stop()
173 | }
174 |
175 | this.cy.elements().remove()
176 | }
177 | }
178 |
179 | export async function convertFilesToTree (files) {
180 | let allNodeIds = []
181 | let graphData = {
182 | nodes: [],
183 | edges: []
184 | }
185 |
186 | // add root node
187 | graphData.nodes.push({
188 | id: '/',
189 | label: '/',
190 | type: 'directory',
191 | extension: undefined
192 | })
193 |
194 | // add each file from commit as node
195 | for (let entry of files) {
196 | let fname = entry.path
197 |
198 | let prevRoot = ''
199 | let root = ''
200 |
201 | let parts = fname.split('/')
202 | for (let idx in parts) {
203 | let comp = parts[idx]
204 |
205 | if (comp.length === 0) {
206 | continue
207 | }
208 |
209 | root += '/' + comp
210 | if (allNodeIds.includes(root)) {
211 | prevRoot = root
212 | continue
213 | }
214 | allNodeIds.push(root)
215 |
216 | // parse file extension (undefined if no extension)
217 | let ext = comp.split('.').slice(1).pop()
218 |
219 | // store generated data
220 | graphData.nodes.push({
221 | id: root,
222 | label: comp,
223 | type: (parseInt(idx) === parts.length - 1) ? 'file' : 'directory',
224 | extension: ext
225 | })
226 | graphData.edges.push({
227 | id: undefined,
228 | source: prevRoot === '' ? '/' : prevRoot,
229 | target: root
230 | })
231 |
232 | prevRoot = root
233 | }
234 | }
235 |
236 | return graphData
237 | }
238 |
--------------------------------------------------------------------------------
/src/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | GitViz
4 |
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/src/index.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue'
2 | import Vuex from 'vuex'
3 | import VuexForms, { Form } from 'vuex-forms'
4 |
5 | import { createVisualization } from './visualization'
6 |
7 | import './assets/css/tailwind.css'
8 | import './assets/css/visualization.css'
9 |
10 | Vue.use(Vuex)
11 | Vue.use(VuexForms)
12 |
13 | const store = new Vuex.Store({
14 | state: {
15 | inSetupState: true,
16 | config: {
17 | repoUrl: 'https://github.com/kpj/GitViz',
18 | iterationDuration: 1000,
19 | gitBranch: 'master'
20 | },
21 | commitList: []
22 | },
23 | mutations: {
24 | updateConfig: (state, value) => {
25 | state.config = value
26 | },
27 | finishSetup: state => {
28 | state.inSetupState = false
29 | },
30 | addCommit: (state, value) => {
31 | state.commitList.push(value)
32 | }
33 | }
34 | })
35 |
36 | const SetupDialog = {
37 | data: function () {
38 | return {
39 | form: new Form(this, {
40 | repoUrl: this.$store.state.config.repoUrl,
41 | gitBranch: this.$store.state.config.gitBranch,
42 | iterationDuration: this.$store.state.config.iterationDuration
43 | })
44 | }
45 | },
46 | template: `
47 |
73 | `,
74 | methods: {
75 | submitConfig: function () {
76 | this.$store.commit('updateConfig', {
77 | repoUrl: this.form.repoUrl,
78 | gitBranch: this.form.gitBranch,
79 | iterationDuration: this.form.iterationDuration
80 | })
81 | this.$store.commit('finishSetup')
82 |
83 | createVisualization(this.$store)
84 | }
85 | }
86 | }
87 |
88 | let formatCommit = commit => {
89 | let date = new Date(commit.committer.timestamp * 1000)
90 |
91 | var year = date.getFullYear()
92 | var month = (date.getMonth() + 1).toString().padStart(2, '0') // lol@+1
93 | var day = date.getDate().toString().padStart(2, '0')
94 | var hours = date.getHours().toString().padStart(2, '0')
95 | var minutes = date.getMinutes().toString().padStart(2, '0')
96 | var seconds = date.getSeconds().toString().padStart(2, '0')
97 |
98 | let dateStr = `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`
99 |
100 | return `${dateStr} -- ${commit.message}`
101 | }
102 |
103 | const CommitView = {
104 | template: `
105 |
106 |
109 | {{ commit }}
110 |
111 |
112 | `,
113 | computed: {
114 | commitList: {
115 | get () {
116 | return this.$store.state.commitList.map(formatCommit).reverse()
117 | }
118 | }
119 | }
120 | }
121 |
122 | const NetworkView = {
123 | components: { CommitView },
124 | template: `
125 |
130 | `
131 | }
132 |
133 | const app = new Vue({
134 | el: '#app',
135 | store,
136 | components: { SetupDialog, NetworkView },
137 | template: `
138 |
139 |
140 |
141 |
142 | `,
143 | computed: {
144 | inSetupState: {
145 | get () {
146 | return this.$store.state.inSetupState
147 | }
148 | }
149 | }
150 | })
151 |
--------------------------------------------------------------------------------
/src/language-data.js:
--------------------------------------------------------------------------------
1 | import languageData from './languages.yml'
2 |
3 | export let languageStyles = []
4 | export let languageStylesDict = {}
5 |
6 | for (const [language, metaData] of Object.entries(languageData)) {
7 | // console.log(language, metaData.color, metaData.extensions)
8 |
9 | if (!('color' in metaData) || !('extensions' in metaData)) {
10 | continue
11 | }
12 |
13 | let curColor = metaData.color
14 | for (let curExtension of metaData.extensions) {
15 | let ext = curExtension.substr(1) // remove leading dot
16 |
17 | // append to selector list
18 | let tmp = {
19 | selector: `node[extension="${ext}"]`,
20 | style: {
21 | backgroundColor: curColor
22 | }
23 | }
24 | languageStyles.push(tmp)
25 |
26 | // add to basic dictionary
27 | languageStylesDict[ext] = curColor
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/src/languages.yml:
--------------------------------------------------------------------------------
1 | # Defines all Languages known to GitHub.
2 | #
3 | # fs_name - Optional field. Only necessary as a replacement for the sample directory name if the
4 | # language name is not a valid filename under the Windows filesystem (e.g., if it
5 | # contains an asterisk).
6 | # type - Either data, programming, markup, prose, or nil
7 | # aliases - An Array of additional aliases (implicitly
8 | # includes name.downcase)
9 | # ace_mode - A String name of the Ace Mode used for highlighting whenever
10 | # a file is edited. This must match one of the filenames in http://git.io/3XO_Cg.
11 | # Use "text" if a mode does not exist.
12 | # codemirror_mode - A String name of the CodeMirror Mode used for highlighting whenever a file is edited.
13 | # This must match a mode from https://git.io/vi9Fx
14 | # codemirror_mime_type - A String name of the file mime type used for highlighting whenever a file is edited.
15 | # This should match the `mime` associated with the mode from https://git.io/f4SoQ
16 | # wrap - Boolean wrap to enable line wrapping (default: false)
17 | # extensions - An Array of associated extensions (the first one is
18 | # considered the primary extension, the others should be
19 | # listed alphabetically)
20 | # filenames - An Array of filenames commonly associated with the language
21 | # interpreters - An Array of associated interpreters
22 | # searchable - Boolean flag to enable searching (defaults to true)
23 | # language_id - Integer used as a language-name-independent indexed field so that we can rename
24 | # languages in Linguist without reindexing all the code on GitHub. Must not be
25 | # changed for existing languages without the explicit permission of GitHub staff.
26 | # color - CSS hex color to represent the language. Only used if type is "programming" or "markup".
27 | # tm_scope - The TextMate scope that represents this programming
28 | # language. This should match one of the scopes listed in
29 | # the grammars.yml file. Use "none" if there is no grammar
30 | # for this language.
31 | # group - Name of the parent language. Languages in a group are counted
32 | # in the statistics as the parent language.
33 | #
34 | # Any additions or modifications (even trivial) should have corresponding
35 | # test changes in `test/test_blob.rb`.
36 | #
37 | # Please keep this list alphabetized. Capitalization comes before lowercase.
38 |
39 | ---
40 | 1C Enterprise:
41 | type: programming
42 | color: "#814CCC"
43 | extensions:
44 | - ".bsl"
45 | - ".os"
46 | tm_scope: source.bsl
47 | ace_mode: text
48 | language_id: 0
49 | ABAP:
50 | type: programming
51 | color: "#E8274B"
52 | extensions:
53 | - ".abap"
54 | ace_mode: abap
55 | language_id: 1
56 | ABNF:
57 | type: data
58 | ace_mode: text
59 | extensions:
60 | - ".abnf"
61 | tm_scope: source.abnf
62 | language_id: 429
63 | AGS Script:
64 | type: programming
65 | color: "#B9D9FF"
66 | aliases:
67 | - ags
68 | extensions:
69 | - ".asc"
70 | - ".ash"
71 | tm_scope: source.c++
72 | ace_mode: c_cpp
73 | codemirror_mode: clike
74 | codemirror_mime_type: text/x-c++src
75 | language_id: 2
76 | AMPL:
77 | type: programming
78 | color: "#E6EFBB"
79 | extensions:
80 | - ".ampl"
81 | - ".mod"
82 | tm_scope: source.ampl
83 | ace_mode: text
84 | language_id: 3
85 | ANTLR:
86 | type: programming
87 | color: "#9DC3FF"
88 | extensions:
89 | - ".g4"
90 | ace_mode: text
91 | language_id: 4
92 | API Blueprint:
93 | type: markup
94 | color: "#2ACCA8"
95 | ace_mode: markdown
96 | extensions:
97 | - ".apib"
98 | tm_scope: text.html.markdown.source.gfm.apib
99 | language_id: 5
100 | APL:
101 | type: programming
102 | color: "#5A8164"
103 | extensions:
104 | - ".apl"
105 | - ".dyalog"
106 | interpreters:
107 | - apl
108 | - aplx
109 | - dyalog
110 | tm_scope: source.apl
111 | ace_mode: text
112 | codemirror_mode: apl
113 | codemirror_mime_type: text/apl
114 | language_id: 6
115 | ASN.1:
116 | type: data
117 | extensions:
118 | - ".asn"
119 | - ".asn1"
120 | tm_scope: source.asn
121 | ace_mode: text
122 | codemirror_mode: asn.1
123 | codemirror_mime_type: text/x-ttcn-asn
124 | language_id: 7
125 | ASP:
126 | type: programming
127 | color: "#6a40fd"
128 | tm_scope: text.html.asp
129 | aliases:
130 | - aspx
131 | - aspx-vb
132 | extensions:
133 | - ".asp"
134 | - ".asax"
135 | - ".ascx"
136 | - ".ashx"
137 | - ".asmx"
138 | - ".aspx"
139 | - ".axd"
140 | ace_mode: text
141 | codemirror_mode: htmlembedded
142 | codemirror_mime_type: application/x-aspx
143 | language_id: 8
144 | ATS:
145 | type: programming
146 | color: "#1ac620"
147 | aliases:
148 | - ats2
149 | extensions:
150 | - ".dats"
151 | - ".hats"
152 | - ".sats"
153 | tm_scope: source.ats
154 | ace_mode: ocaml
155 | language_id: 9
156 | ActionScript:
157 | type: programming
158 | tm_scope: source.actionscript.3
159 | color: "#882B0F"
160 | aliases:
161 | - actionscript 3
162 | - actionscript3
163 | - as3
164 | extensions:
165 | - ".as"
166 | ace_mode: actionscript
167 | language_id: 10
168 | Ada:
169 | type: programming
170 | color: "#02f88c"
171 | extensions:
172 | - ".adb"
173 | - ".ada"
174 | - ".ads"
175 | aliases:
176 | - ada95
177 | - ada2005
178 | ace_mode: ada
179 | language_id: 11
180 | Adobe Font Metrics:
181 | type: data
182 | tm_scope: source.afm
183 | extensions:
184 | - ".afm"
185 | aliases:
186 | - acfm
187 | - adobe composite font metrics
188 | - adobe multiple font metrics
189 | - amfm
190 | ace_mode: text
191 | language_id: 147198098
192 | Agda:
193 | type: programming
194 | color: "#315665"
195 | extensions:
196 | - ".agda"
197 | ace_mode: text
198 | language_id: 12
199 | Alloy:
200 | type: programming
201 | color: "#64C800"
202 | extensions:
203 | - ".als"
204 | ace_mode: text
205 | language_id: 13
206 | Alpine Abuild:
207 | type: programming
208 | group: Shell
209 | aliases:
210 | - abuild
211 | - apkbuild
212 | filenames:
213 | - APKBUILD
214 | tm_scope: source.shell
215 | ace_mode: sh
216 | codemirror_mode: shell
217 | codemirror_mime_type: text/x-sh
218 | language_id: 14
219 | Altium Designer:
220 | type: data
221 | aliases:
222 | - altium
223 | extensions:
224 | - ".OutJob"
225 | - ".PcbDoc"
226 | - ".PrjPCB"
227 | - ".SchDoc"
228 | tm_scope: source.ini
229 | ace_mode: ini
230 | language_id: 187772328
231 | AngelScript:
232 | type: programming
233 | color: "#C7D7DC"
234 | extensions:
235 | - ".as"
236 | - ".angelscript"
237 | tm_scope: source.angelscript
238 | ace_mode: text
239 | codemirror_mode: clike
240 | codemirror_mime_type: text/x-c++src
241 | language_id: 389477596
242 | Ant Build System:
243 | type: data
244 | tm_scope: text.xml.ant
245 | filenames:
246 | - ant.xml
247 | - build.xml
248 | ace_mode: xml
249 | codemirror_mode: xml
250 | codemirror_mime_type: application/xml
251 | language_id: 15
252 | ApacheConf:
253 | type: data
254 | aliases:
255 | - aconf
256 | - apache
257 | extensions:
258 | - ".apacheconf"
259 | - ".vhost"
260 | filenames:
261 | - ".htaccess"
262 | - apache2.conf
263 | - httpd.conf
264 | tm_scope: source.apache-config
265 | ace_mode: apache_conf
266 | language_id: 16
267 | Apex:
268 | type: programming
269 | extensions:
270 | - ".cls"
271 | tm_scope: source.java
272 | ace_mode: java
273 | codemirror_mode: clike
274 | codemirror_mime_type: text/x-java
275 | language_id: 17
276 | Apollo Guidance Computer:
277 | type: programming
278 | group: Assembly
279 | extensions:
280 | - ".agc"
281 | tm_scope: source.agc
282 | ace_mode: assembly_x86
283 | language_id: 18
284 | AppleScript:
285 | type: programming
286 | aliases:
287 | - osascript
288 | extensions:
289 | - ".applescript"
290 | - ".scpt"
291 | interpreters:
292 | - osascript
293 | ace_mode: applescript
294 | color: "#101F1F"
295 | language_id: 19
296 | Arc:
297 | type: programming
298 | color: "#aa2afe"
299 | extensions:
300 | - ".arc"
301 | tm_scope: none
302 | ace_mode: text
303 | language_id: 20
304 | AsciiDoc:
305 | type: prose
306 | ace_mode: asciidoc
307 | wrap: true
308 | extensions:
309 | - ".asciidoc"
310 | - ".adoc"
311 | - ".asc"
312 | tm_scope: text.html.asciidoc
313 | language_id: 22
314 | AspectJ:
315 | type: programming
316 | color: "#a957b0"
317 | extensions:
318 | - ".aj"
319 | tm_scope: source.aspectj
320 | ace_mode: text
321 | language_id: 23
322 | Assembly:
323 | type: programming
324 | color: "#6E4C13"
325 | aliases:
326 | - asm
327 | - nasm
328 | extensions:
329 | - ".asm"
330 | - ".a51"
331 | - ".inc"
332 | - ".nasm"
333 | tm_scope: source.assembly
334 | ace_mode: assembly_x86
335 | language_id: 24
336 | Asymptote:
337 | type: programming
338 | color: "#4a0c0c"
339 | extensions:
340 | - ".asy"
341 | interpreters:
342 | - asy
343 | tm_scope: source.c++
344 | ace_mode: c_cpp
345 | codemirror_mode: clike
346 | codemirror_mime_type: text/x-kotlin
347 | language_id: 591605007
348 | Augeas:
349 | type: programming
350 | extensions:
351 | - ".aug"
352 | tm_scope: none
353 | ace_mode: text
354 | language_id: 25
355 | AutoHotkey:
356 | type: programming
357 | color: "#6594b9"
358 | aliases:
359 | - ahk
360 | extensions:
361 | - ".ahk"
362 | - ".ahkl"
363 | tm_scope: source.ahk
364 | ace_mode: autohotkey
365 | language_id: 26
366 | AutoIt:
367 | type: programming
368 | color: "#1C3552"
369 | aliases:
370 | - au3
371 | - AutoIt3
372 | - AutoItScript
373 | extensions:
374 | - ".au3"
375 | tm_scope: source.autoit
376 | ace_mode: autohotkey
377 | language_id: 27
378 | Awk:
379 | type: programming
380 | extensions:
381 | - ".awk"
382 | - ".auk"
383 | - ".gawk"
384 | - ".mawk"
385 | - ".nawk"
386 | interpreters:
387 | - awk
388 | - gawk
389 | - mawk
390 | - nawk
391 | ace_mode: text
392 | language_id: 28
393 | Ballerina:
394 | type: programming
395 | extensions:
396 | - ".bal"
397 | tm_scope: source.ballerina
398 | ace_mode: text
399 | color: "#FF5000"
400 | language_id: 720859680
401 | Batchfile:
402 | type: programming
403 | aliases:
404 | - bat
405 | - batch
406 | - dosbatch
407 | - winbatch
408 | extensions:
409 | - ".bat"
410 | - ".cmd"
411 | tm_scope: source.batchfile
412 | ace_mode: batchfile
413 | color: "#C1F12E"
414 | language_id: 29
415 | Befunge:
416 | type: programming
417 | extensions:
418 | - ".befunge"
419 | ace_mode: text
420 | language_id: 30
421 | Bison:
422 | type: programming
423 | group: Yacc
424 | tm_scope: source.bison
425 | extensions:
426 | - ".bison"
427 | ace_mode: text
428 | language_id: 31
429 | BitBake:
430 | type: programming
431 | tm_scope: none
432 | extensions:
433 | - ".bb"
434 | ace_mode: text
435 | language_id: 32
436 | Blade:
437 | type: markup
438 | group: HTML
439 | extensions:
440 | - ".blade"
441 | - ".blade.php"
442 | tm_scope: text.html.php.blade
443 | ace_mode: text
444 | language_id: 33
445 | BlitzBasic:
446 | type: programming
447 | aliases:
448 | - b3d
449 | - blitz3d
450 | - blitzplus
451 | - bplus
452 | extensions:
453 | - ".bb"
454 | - ".decls"
455 | tm_scope: source.blitzmax
456 | ace_mode: text
457 | language_id: 34
458 | BlitzMax:
459 | type: programming
460 | color: "#cd6400"
461 | extensions:
462 | - ".bmx"
463 | aliases:
464 | - bmax
465 | ace_mode: text
466 | language_id: 35
467 | Bluespec:
468 | type: programming
469 | extensions:
470 | - ".bsv"
471 | tm_scope: source.bsv
472 | ace_mode: verilog
473 | language_id: 36
474 | Boo:
475 | type: programming
476 | color: "#d4bec1"
477 | extensions:
478 | - ".boo"
479 | ace_mode: text
480 | tm_scope: source.boo
481 | language_id: 37
482 | Brainfuck:
483 | type: programming
484 | color: "#2F2530"
485 | extensions:
486 | - ".b"
487 | - ".bf"
488 | tm_scope: source.bf
489 | ace_mode: text
490 | codemirror_mode: brainfuck
491 | codemirror_mime_type: text/x-brainfuck
492 | language_id: 38
493 | Brightscript:
494 | type: programming
495 | extensions:
496 | - ".brs"
497 | tm_scope: source.brightscript
498 | ace_mode: text
499 | language_id: 39
500 | C:
501 | type: programming
502 | color: "#555555"
503 | extensions:
504 | - ".c"
505 | - ".cats"
506 | - ".h"
507 | - ".idc"
508 | interpreters:
509 | - tcc
510 | ace_mode: c_cpp
511 | codemirror_mode: clike
512 | codemirror_mime_type: text/x-csrc
513 | language_id: 41
514 | C#:
515 | type: programming
516 | ace_mode: csharp
517 | codemirror_mode: clike
518 | codemirror_mime_type: text/x-csharp
519 | tm_scope: source.cs
520 | color: "#178600"
521 | aliases:
522 | - csharp
523 | extensions:
524 | - ".cs"
525 | - ".cake"
526 | - ".csx"
527 | language_id: 42
528 | C++:
529 | type: programming
530 | ace_mode: c_cpp
531 | codemirror_mode: clike
532 | codemirror_mime_type: text/x-c++src
533 | color: "#f34b7d"
534 | aliases:
535 | - cpp
536 | extensions:
537 | - ".cpp"
538 | - ".c++"
539 | - ".cc"
540 | - ".cp"
541 | - ".cxx"
542 | - ".h"
543 | - ".h++"
544 | - ".hh"
545 | - ".hpp"
546 | - ".hxx"
547 | - ".inc"
548 | - ".inl"
549 | - ".ino"
550 | - ".ipp"
551 | - ".re"
552 | - ".tcc"
553 | - ".tpp"
554 | language_id: 43
555 | C-ObjDump:
556 | type: data
557 | extensions:
558 | - ".c-objdump"
559 | tm_scope: objdump.x86asm
560 | ace_mode: assembly_x86
561 | language_id: 44
562 | C2hs Haskell:
563 | type: programming
564 | group: Haskell
565 | aliases:
566 | - c2hs
567 | extensions:
568 | - ".chs"
569 | tm_scope: source.haskell
570 | ace_mode: haskell
571 | codemirror_mode: haskell
572 | codemirror_mime_type: text/x-haskell
573 | language_id: 45
574 | CLIPS:
575 | type: programming
576 | extensions:
577 | - ".clp"
578 | tm_scope: source.clips
579 | ace_mode: text
580 | language_id: 46
581 | CMake:
582 | type: programming
583 | extensions:
584 | - ".cmake"
585 | - ".cmake.in"
586 | filenames:
587 | - CMakeLists.txt
588 | ace_mode: text
589 | codemirror_mode: cmake
590 | codemirror_mime_type: text/x-cmake
591 | language_id: 47
592 | COBOL:
593 | type: programming
594 | extensions:
595 | - ".cob"
596 | - ".cbl"
597 | - ".ccp"
598 | - ".cobol"
599 | - ".cpy"
600 | ace_mode: cobol
601 | codemirror_mode: cobol
602 | codemirror_mime_type: text/x-cobol
603 | language_id: 48
604 | COLLADA:
605 | type: data
606 | extensions:
607 | - ".dae"
608 | tm_scope: text.xml
609 | ace_mode: xml
610 | codemirror_mode: xml
611 | codemirror_mime_type: text/xml
612 | language_id: 49
613 | CSON:
614 | type: data
615 | tm_scope: source.coffee
616 | ace_mode: coffee
617 | codemirror_mode: coffeescript
618 | codemirror_mime_type: text/x-coffeescript
619 | extensions:
620 | - ".cson"
621 | language_id: 424
622 | CSS:
623 | type: markup
624 | tm_scope: source.css
625 | ace_mode: css
626 | codemirror_mode: css
627 | codemirror_mime_type: text/css
628 | color: "#563d7c"
629 | extensions:
630 | - ".css"
631 | language_id: 50
632 | CSV:
633 | type: data
634 | ace_mode: text
635 | tm_scope: none
636 | extensions:
637 | - ".csv"
638 | language_id: 51
639 | CWeb:
640 | type: programming
641 | extensions:
642 | - ".w"
643 | tm_scope: none
644 | ace_mode: text
645 | language_id: 657332628
646 | Cabal Config:
647 | type: data
648 | aliases:
649 | - Cabal
650 | extensions:
651 | - ".cabal"
652 | filenames:
653 | - cabal.config
654 | - cabal.project
655 | ace_mode: haskell
656 | codemirror_mode: haskell
657 | codemirror_mime_type: text/x-haskell
658 | tm_scope: source.cabal
659 | language_id: 677095381
660 | Cap'n Proto:
661 | type: programming
662 | tm_scope: source.capnp
663 | extensions:
664 | - ".capnp"
665 | ace_mode: text
666 | language_id: 52
667 | CartoCSS:
668 | type: programming
669 | aliases:
670 | - Carto
671 | extensions:
672 | - ".mss"
673 | ace_mode: text
674 | tm_scope: source.css.mss
675 | language_id: 53
676 | Ceylon:
677 | type: programming
678 | color: "#dfa535"
679 | extensions:
680 | - ".ceylon"
681 | tm_scope: source.ceylon
682 | ace_mode: text
683 | language_id: 54
684 | Chapel:
685 | type: programming
686 | color: "#8dc63f"
687 | aliases:
688 | - chpl
689 | extensions:
690 | - ".chpl"
691 | ace_mode: text
692 | language_id: 55
693 | Charity:
694 | type: programming
695 | extensions:
696 | - ".ch"
697 | tm_scope: none
698 | ace_mode: text
699 | language_id: 56
700 | ChucK:
701 | type: programming
702 | extensions:
703 | - ".ck"
704 | tm_scope: source.java
705 | ace_mode: java
706 | codemirror_mode: clike
707 | codemirror_mime_type: text/x-java
708 | language_id: 57
709 | Cirru:
710 | type: programming
711 | color: "#ccccff"
712 | ace_mode: cirru
713 | extensions:
714 | - ".cirru"
715 | language_id: 58
716 | Clarion:
717 | type: programming
718 | color: "#db901e"
719 | ace_mode: text
720 | extensions:
721 | - ".clw"
722 | tm_scope: source.clarion
723 | language_id: 59
724 | Clean:
725 | type: programming
726 | color: "#3F85AF"
727 | extensions:
728 | - ".icl"
729 | - ".dcl"
730 | tm_scope: source.clean
731 | ace_mode: text
732 | language_id: 60
733 | Click:
734 | type: programming
735 | color: "#E4E6F3"
736 | extensions:
737 | - ".click"
738 | tm_scope: source.click
739 | ace_mode: text
740 | language_id: 61
741 | Clojure:
742 | type: programming
743 | ace_mode: clojure
744 | codemirror_mode: clojure
745 | codemirror_mime_type: text/x-clojure
746 | color: "#db5855"
747 | extensions:
748 | - ".clj"
749 | - ".boot"
750 | - ".cl2"
751 | - ".cljc"
752 | - ".cljs"
753 | - ".cljs.hl"
754 | - ".cljscm"
755 | - ".cljx"
756 | - ".hic"
757 | filenames:
758 | - riemann.config
759 | language_id: 62
760 | Closure Templates:
761 | type: markup
762 | group: HTML
763 | ace_mode: soy_template
764 | codemirror_mode: soy
765 | codemirror_mime_type: text/x-soy
766 | aliases:
767 | - soy
768 | extensions:
769 | - ".soy"
770 | tm_scope: text.html.soy
771 | language_id: 357046146
772 | Cloud Firestore Security Rules:
773 | type: data
774 | ace_mode: less
775 | codemirror_mode: css
776 | codemirror_mime_type: text/css
777 | tm_scope: source.firestore
778 | filenames:
779 | - firestore.rules
780 | language_id: 407996372
781 | CoNLL-U:
782 | type: data
783 | extensions:
784 | - ".conllu"
785 | - ".conll"
786 | tm_scope: text.conllu
787 | ace_mode: text
788 | aliases:
789 | - CoNLL
790 | - CoNLL-X
791 | language_id: 421026389
792 | CoffeeScript:
793 | type: programming
794 | tm_scope: source.coffee
795 | ace_mode: coffee
796 | codemirror_mode: coffeescript
797 | codemirror_mime_type: text/x-coffeescript
798 | color: "#244776"
799 | aliases:
800 | - coffee
801 | - coffee-script
802 | extensions:
803 | - ".coffee"
804 | - "._coffee"
805 | - ".cake"
806 | - ".cjsx"
807 | - ".iced"
808 | filenames:
809 | - Cakefile
810 | interpreters:
811 | - coffee
812 | language_id: 63
813 | ColdFusion:
814 | type: programming
815 | ace_mode: coldfusion
816 | color: "#ed2cd6"
817 | aliases:
818 | - cfm
819 | - cfml
820 | - coldfusion html
821 | extensions:
822 | - ".cfm"
823 | - ".cfml"
824 | tm_scope: text.html.cfm
825 | language_id: 64
826 | ColdFusion CFC:
827 | type: programming
828 | group: ColdFusion
829 | ace_mode: coldfusion
830 | aliases:
831 | - cfc
832 | extensions:
833 | - ".cfc"
834 | tm_scope: source.cfscript
835 | language_id: 65
836 | Common Lisp:
837 | type: programming
838 | tm_scope: source.lisp
839 | color: "#3fb68b"
840 | aliases:
841 | - lisp
842 | extensions:
843 | - ".lisp"
844 | - ".asd"
845 | - ".cl"
846 | - ".l"
847 | - ".lsp"
848 | - ".ny"
849 | - ".podsl"
850 | - ".sexp"
851 | interpreters:
852 | - lisp
853 | - sbcl
854 | - ccl
855 | - clisp
856 | - ecl
857 | ace_mode: lisp
858 | codemirror_mode: commonlisp
859 | codemirror_mime_type: text/x-common-lisp
860 | language_id: 66
861 | Common Workflow Language:
862 | aliases:
863 | - cwl
864 | type: programming
865 | ace_mode: yaml
866 | codemirror_mode: yaml
867 | codemirror_mime_type: text/x-yaml
868 | extensions:
869 | - ".cwl"
870 | interpreters:
871 | - cwl-runner
872 | color: "#B5314C"
873 | tm_scope: source.cwl
874 | language_id: 988547172
875 | Component Pascal:
876 | type: programming
877 | color: "#B0CE4E"
878 | extensions:
879 | - ".cp"
880 | - ".cps"
881 | tm_scope: source.pascal
882 | aliases:
883 | - delphi
884 | - objectpascal
885 | ace_mode: pascal
886 | codemirror_mode: pascal
887 | codemirror_mime_type: text/x-pascal
888 | language_id: 67
889 | Cool:
890 | type: programming
891 | extensions:
892 | - ".cl"
893 | tm_scope: source.cool
894 | ace_mode: text
895 | language_id: 68
896 | Coq:
897 | type: programming
898 | extensions:
899 | - ".coq"
900 | - ".v"
901 | ace_mode: text
902 | language_id: 69
903 | Cpp-ObjDump:
904 | type: data
905 | extensions:
906 | - ".cppobjdump"
907 | - ".c++-objdump"
908 | - ".c++objdump"
909 | - ".cpp-objdump"
910 | - ".cxx-objdump"
911 | tm_scope: objdump.x86asm
912 | aliases:
913 | - c++-objdump
914 | ace_mode: assembly_x86
915 | language_id: 70
916 | Creole:
917 | type: prose
918 | wrap: true
919 | extensions:
920 | - ".creole"
921 | tm_scope: text.html.creole
922 | ace_mode: text
923 | language_id: 71
924 | Crystal:
925 | type: programming
926 | color: "#000100"
927 | extensions:
928 | - ".cr"
929 | ace_mode: ruby
930 | codemirror_mode: crystal
931 | codemirror_mime_type: text/x-crystal
932 | tm_scope: source.crystal
933 | interpreters:
934 | - crystal
935 | language_id: 72
936 | Csound:
937 | type: programming
938 | aliases:
939 | - csound-orc
940 | extensions:
941 | - ".orc"
942 | - ".udo"
943 | tm_scope: source.csound
944 | ace_mode: csound_orchestra
945 | language_id: 73
946 | Csound Document:
947 | type: programming
948 | aliases:
949 | - csound-csd
950 | extensions:
951 | - ".csd"
952 | tm_scope: source.csound-document
953 | ace_mode: csound_document
954 | language_id: 74
955 | Csound Score:
956 | type: programming
957 | aliases:
958 | - csound-sco
959 | extensions:
960 | - ".sco"
961 | tm_scope: source.csound-score
962 | ace_mode: csound_score
963 | language_id: 75
964 | Cuda:
965 | type: programming
966 | extensions:
967 | - ".cu"
968 | - ".cuh"
969 | tm_scope: source.cuda-c++
970 | ace_mode: c_cpp
971 | codemirror_mode: clike
972 | codemirror_mime_type: text/x-c++src
973 | color: "#3A4E3A"
974 | language_id: 77
975 | Cycript:
976 | type: programming
977 | extensions:
978 | - ".cy"
979 | tm_scope: source.js
980 | ace_mode: javascript
981 | codemirror_mode: javascript
982 | codemirror_mime_type: text/javascript
983 | language_id: 78
984 | Cython:
985 | type: programming
986 | group: Python
987 | extensions:
988 | - ".pyx"
989 | - ".pxd"
990 | - ".pxi"
991 | aliases:
992 | - pyrex
993 | ace_mode: text
994 | codemirror_mode: python
995 | codemirror_mime_type: text/x-cython
996 | language_id: 79
997 | D:
998 | type: programming
999 | color: "#ba595e"
1000 | extensions:
1001 | - ".d"
1002 | - ".di"
1003 | ace_mode: d
1004 | codemirror_mode: d
1005 | codemirror_mime_type: text/x-d
1006 | language_id: 80
1007 | D-ObjDump:
1008 | type: data
1009 | extensions:
1010 | - ".d-objdump"
1011 | tm_scope: objdump.x86asm
1012 | ace_mode: assembly_x86
1013 | language_id: 81
1014 | DIGITAL Command Language:
1015 | type: programming
1016 | aliases:
1017 | - dcl
1018 | extensions:
1019 | - ".com"
1020 | tm_scope: none
1021 | ace_mode: text
1022 | language_id: 82
1023 | DM:
1024 | type: programming
1025 | color: "#447265"
1026 | extensions:
1027 | - ".dm"
1028 | aliases:
1029 | - byond
1030 | tm_scope: source.dm
1031 | ace_mode: c_cpp
1032 | language_id: 83
1033 | DNS Zone:
1034 | type: data
1035 | extensions:
1036 | - ".zone"
1037 | - ".arpa"
1038 | tm_scope: text.zone_file
1039 | ace_mode: text
1040 | language_id: 84
1041 | DTrace:
1042 | type: programming
1043 | aliases:
1044 | - dtrace-script
1045 | extensions:
1046 | - ".d"
1047 | interpreters:
1048 | - dtrace
1049 | tm_scope: source.c
1050 | ace_mode: c_cpp
1051 | codemirror_mode: clike
1052 | codemirror_mime_type: text/x-csrc
1053 | language_id: 85
1054 | Darcs Patch:
1055 | type: data
1056 | aliases:
1057 | - dpatch
1058 | extensions:
1059 | - ".darcspatch"
1060 | - ".dpatch"
1061 | tm_scope: none
1062 | ace_mode: text
1063 | language_id: 86
1064 | Dart:
1065 | type: programming
1066 | color: "#00B4AB"
1067 | extensions:
1068 | - ".dart"
1069 | interpreters:
1070 | - dart
1071 | ace_mode: dart
1072 | codemirror_mode: dart
1073 | codemirror_mime_type: application/dart
1074 | language_id: 87
1075 | DataWeave:
1076 | type: programming
1077 | color: "#003a52"
1078 | extensions:
1079 | - ".dwl"
1080 | ace_mode: text
1081 | tm_scope: source.data-weave
1082 | language_id: 974514097
1083 | Dhall:
1084 | type: programming
1085 | color: "#dfafff"
1086 | extensions:
1087 | - ".dhall"
1088 | tm_scope: source.haskell
1089 | ace_mode: haskell
1090 | codemirror_mode: haskell
1091 | codemirror_mime_type: text/x-haskell
1092 | language_id: 793969321
1093 | Diff:
1094 | type: data
1095 | extensions:
1096 | - ".diff"
1097 | - ".patch"
1098 | aliases:
1099 | - udiff
1100 | tm_scope: source.diff
1101 | ace_mode: diff
1102 | codemirror_mode: diff
1103 | codemirror_mime_type: text/x-diff
1104 | language_id: 88
1105 | Dockerfile:
1106 | type: programming
1107 | color: "#384d54"
1108 | tm_scope: source.dockerfile
1109 | extensions:
1110 | - ".dockerfile"
1111 | filenames:
1112 | - Dockerfile
1113 | ace_mode: dockerfile
1114 | codemirror_mode: dockerfile
1115 | codemirror_mime_type: text/x-dockerfile
1116 | language_id: 89
1117 | Dogescript:
1118 | type: programming
1119 | color: "#cca760"
1120 | extensions:
1121 | - ".djs"
1122 | tm_scope: none
1123 | ace_mode: text
1124 | language_id: 90
1125 | Dylan:
1126 | type: programming
1127 | color: "#6c616e"
1128 | extensions:
1129 | - ".dylan"
1130 | - ".dyl"
1131 | - ".intr"
1132 | - ".lid"
1133 | ace_mode: text
1134 | codemirror_mode: dylan
1135 | codemirror_mime_type: text/x-dylan
1136 | language_id: 91
1137 | E:
1138 | type: programming
1139 | color: "#ccce35"
1140 | extensions:
1141 | - ".E"
1142 | interpreters:
1143 | - rune
1144 | tm_scope: none
1145 | ace_mode: text
1146 | language_id: 92
1147 | EBNF:
1148 | type: data
1149 | extensions:
1150 | - ".ebnf"
1151 | tm_scope: source.ebnf
1152 | ace_mode: text
1153 | codemirror_mode: ebnf
1154 | codemirror_mime_type: text/x-ebnf
1155 | language_id: 430
1156 | ECL:
1157 | type: programming
1158 | color: "#8a1267"
1159 | extensions:
1160 | - ".ecl"
1161 | - ".eclxml"
1162 | tm_scope: none
1163 | ace_mode: text
1164 | codemirror_mode: ecl
1165 | codemirror_mime_type: text/x-ecl
1166 | language_id: 93
1167 | ECLiPSe:
1168 | type: programming
1169 | group: prolog
1170 | extensions:
1171 | - ".ecl"
1172 | tm_scope: source.prolog.eclipse
1173 | ace_mode: prolog
1174 | language_id: 94
1175 | EJS:
1176 | type: markup
1177 | group: HTML
1178 | extensions:
1179 | - ".ejs"
1180 | tm_scope: text.html.js
1181 | ace_mode: ejs
1182 | language_id: 95
1183 | EML:
1184 | type: data
1185 | extensions:
1186 | - ".eml"
1187 | - ".mbox"
1188 | tm_scope: text.eml.basic
1189 | ace_mode: text
1190 | language_id: 529653389
1191 | EQ:
1192 | type: programming
1193 | color: "#a78649"
1194 | extensions:
1195 | - ".eq"
1196 | tm_scope: source.cs
1197 | ace_mode: csharp
1198 | codemirror_mode: clike
1199 | codemirror_mime_type: text/x-csharp
1200 | language_id: 96
1201 | Eagle:
1202 | type: data
1203 | extensions:
1204 | - ".sch"
1205 | - ".brd"
1206 | tm_scope: text.xml
1207 | ace_mode: xml
1208 | codemirror_mode: xml
1209 | codemirror_mime_type: text/xml
1210 | language_id: 97
1211 | Easybuild:
1212 | type: data
1213 | group: Python
1214 | ace_mode: python
1215 | codemirror_mode: python
1216 | codemirror_mime_type: text/x-python
1217 | tm_scope: source.python
1218 | extensions:
1219 | - ".eb"
1220 | language_id: 342840477
1221 | Ecere Projects:
1222 | type: data
1223 | group: JavaScript
1224 | extensions:
1225 | - ".epj"
1226 | tm_scope: source.json
1227 | ace_mode: json
1228 | codemirror_mode: javascript
1229 | codemirror_mime_type: application/json
1230 | language_id: 98
1231 | EditorConfig:
1232 | type: data
1233 | group: INI
1234 | filenames:
1235 | - ".editorconfig"
1236 | aliases:
1237 | - editor-config
1238 | ace_mode: ini
1239 | codemirror_mode: properties
1240 | codemirror_mime_type: text/x-properties
1241 | tm_scope: source.editorconfig
1242 | language_id: 96139566
1243 | Edje Data Collection:
1244 | type: data
1245 | extensions:
1246 | - ".edc"
1247 | tm_scope: source.json
1248 | ace_mode: json
1249 | codemirror_mode: javascript
1250 | codemirror_mime_type: application/json
1251 | language_id: 342840478
1252 | Eiffel:
1253 | type: programming
1254 | color: "#946d57"
1255 | extensions:
1256 | - ".e"
1257 | ace_mode: eiffel
1258 | codemirror_mode: eiffel
1259 | codemirror_mime_type: text/x-eiffel
1260 | language_id: 99
1261 | Elixir:
1262 | type: programming
1263 | color: "#6e4a7e"
1264 | extensions:
1265 | - ".ex"
1266 | - ".exs"
1267 | ace_mode: elixir
1268 | filenames:
1269 | - mix.lock
1270 | interpreters:
1271 | - elixir
1272 | language_id: 100
1273 | Elm:
1274 | type: programming
1275 | color: "#60B5CC"
1276 | extensions:
1277 | - ".elm"
1278 | tm_scope: source.elm
1279 | ace_mode: elm
1280 | codemirror_mode: elm
1281 | codemirror_mime_type: text/x-elm
1282 | language_id: 101
1283 | Emacs Lisp:
1284 | type: programming
1285 | tm_scope: source.emacs.lisp
1286 | color: "#c065db"
1287 | aliases:
1288 | - elisp
1289 | - emacs
1290 | filenames:
1291 | - ".abbrev_defs"
1292 | - ".emacs"
1293 | - ".emacs.desktop"
1294 | - ".gnus"
1295 | - ".spacemacs"
1296 | - ".viper"
1297 | - Cask
1298 | - Project.ede
1299 | - _emacs
1300 | - abbrev_defs
1301 | extensions:
1302 | - ".el"
1303 | - ".emacs"
1304 | - ".emacs.desktop"
1305 | ace_mode: lisp
1306 | codemirror_mode: commonlisp
1307 | codemirror_mime_type: text/x-common-lisp
1308 | language_id: 102
1309 | EmberScript:
1310 | type: programming
1311 | color: "#FFF4F3"
1312 | extensions:
1313 | - ".em"
1314 | - ".emberscript"
1315 | tm_scope: source.coffee
1316 | ace_mode: coffee
1317 | codemirror_mode: coffeescript
1318 | codemirror_mime_type: text/x-coffeescript
1319 | language_id: 103
1320 | Erlang:
1321 | type: programming
1322 | color: "#B83998"
1323 | extensions:
1324 | - ".erl"
1325 | - ".app.src"
1326 | - ".es"
1327 | - ".escript"
1328 | - ".hrl"
1329 | - ".xrl"
1330 | - ".yrl"
1331 | filenames:
1332 | - Emakefile
1333 | - rebar.config
1334 | - rebar.config.lock
1335 | - rebar.lock
1336 | ace_mode: erlang
1337 | codemirror_mode: erlang
1338 | codemirror_mime_type: text/x-erlang
1339 | interpreters:
1340 | - escript
1341 | language_id: 104
1342 | F#:
1343 | type: programming
1344 | color: "#b845fc"
1345 | aliases:
1346 | - fsharp
1347 | extensions:
1348 | - ".fs"
1349 | - ".fsi"
1350 | - ".fsx"
1351 | tm_scope: source.fsharp
1352 | ace_mode: text
1353 | codemirror_mode: mllike
1354 | codemirror_mime_type: text/x-fsharp
1355 | language_id: 105
1356 | F*:
1357 | fs_name: Fstar
1358 | type: programming
1359 | color: "#572e30"
1360 | aliases:
1361 | - fstar
1362 | extensions:
1363 | - ".fst"
1364 | tm_scope: source.fstar
1365 | ace_mode: text
1366 | language_id: 336943375
1367 | FIGlet Font:
1368 | type: data
1369 | aliases:
1370 | - FIGfont
1371 | extensions:
1372 | - ".flf"
1373 | tm_scope: source.figfont
1374 | ace_mode: text
1375 | language_id: 686129783
1376 | FLUX:
1377 | type: programming
1378 | color: "#88ccff"
1379 | extensions:
1380 | - ".fx"
1381 | - ".flux"
1382 | tm_scope: none
1383 | ace_mode: text
1384 | language_id: 106
1385 | Factor:
1386 | type: programming
1387 | color: "#636746"
1388 | extensions:
1389 | - ".factor"
1390 | filenames:
1391 | - ".factor-boot-rc"
1392 | - ".factor-rc"
1393 | ace_mode: text
1394 | codemirror_mode: factor
1395 | codemirror_mime_type: text/x-factor
1396 | language_id: 108
1397 | Fancy:
1398 | type: programming
1399 | color: "#7b9db4"
1400 | extensions:
1401 | - ".fy"
1402 | - ".fancypack"
1403 | filenames:
1404 | - Fakefile
1405 | ace_mode: text
1406 | language_id: 109
1407 | Fantom:
1408 | type: programming
1409 | color: "#14253c"
1410 | extensions:
1411 | - ".fan"
1412 | tm_scope: source.fan
1413 | ace_mode: text
1414 | language_id: 110
1415 | Filebench WML:
1416 | type: programming
1417 | extensions:
1418 | - ".f"
1419 | tm_scope: none
1420 | ace_mode: text
1421 | language_id: 111
1422 | Filterscript:
1423 | type: programming
1424 | group: RenderScript
1425 | extensions:
1426 | - ".fs"
1427 | tm_scope: none
1428 | ace_mode: text
1429 | language_id: 112
1430 | Formatted:
1431 | type: data
1432 | extensions:
1433 | - ".for"
1434 | - ".eam.fs"
1435 | tm_scope: none
1436 | ace_mode: text
1437 | language_id: 113
1438 | Forth:
1439 | type: programming
1440 | color: "#341708"
1441 | extensions:
1442 | - ".fth"
1443 | - ".4th"
1444 | - ".f"
1445 | - ".for"
1446 | - ".forth"
1447 | - ".fr"
1448 | - ".frt"
1449 | - ".fs"
1450 | ace_mode: forth
1451 | codemirror_mode: forth
1452 | codemirror_mime_type: text/x-forth
1453 | language_id: 114
1454 | Fortran:
1455 | type: programming
1456 | color: "#4d41b1"
1457 | extensions:
1458 | - ".f90"
1459 | - ".f"
1460 | - ".f03"
1461 | - ".f08"
1462 | - ".f77"
1463 | - ".f95"
1464 | - ".for"
1465 | - ".fpp"
1466 | tm_scope: source.fortran.modern
1467 | ace_mode: text
1468 | codemirror_mode: fortran
1469 | codemirror_mime_type: text/x-fortran
1470 | language_id: 107
1471 | FreeMarker:
1472 | type: programming
1473 | color: "#0050b2"
1474 | aliases:
1475 | - ftl
1476 | extensions:
1477 | - ".ftl"
1478 | tm_scope: text.html.ftl
1479 | ace_mode: ftl
1480 | language_id: 115
1481 | Frege:
1482 | type: programming
1483 | color: "#00cafe"
1484 | extensions:
1485 | - ".fr"
1486 | tm_scope: source.haskell
1487 | ace_mode: haskell
1488 | language_id: 116
1489 | G-code:
1490 | type: programming
1491 | color: "#D08CF2"
1492 | extensions:
1493 | - ".g"
1494 | - ".cnc"
1495 | - ".gco"
1496 | - ".gcode"
1497 | tm_scope: source.gcode
1498 | ace_mode: gcode
1499 | language_id: 117
1500 | GAMS:
1501 | type: programming
1502 | extensions:
1503 | - ".gms"
1504 | tm_scope: none
1505 | ace_mode: text
1506 | language_id: 118
1507 | GAP:
1508 | type: programming
1509 | extensions:
1510 | - ".g"
1511 | - ".gap"
1512 | - ".gd"
1513 | - ".gi"
1514 | - ".tst"
1515 | tm_scope: source.gap
1516 | ace_mode: text
1517 | language_id: 119
1518 | GCC Machine Description:
1519 | type: programming
1520 | extensions:
1521 | - ".md"
1522 | tm_scope: source.lisp
1523 | ace_mode: lisp
1524 | codemirror_mode: commonlisp
1525 | codemirror_mime_type: text/x-common-lisp
1526 | language_id: 121
1527 | GDB:
1528 | type: programming
1529 | extensions:
1530 | - ".gdb"
1531 | - ".gdbinit"
1532 | tm_scope: source.gdb
1533 | ace_mode: text
1534 | language_id: 122
1535 | GDScript:
1536 | type: programming
1537 | color: "#355570"
1538 | extensions:
1539 | - ".gd"
1540 | tm_scope: source.gdscript
1541 | ace_mode: text
1542 | language_id: 123
1543 | GLSL:
1544 | type: programming
1545 | extensions:
1546 | - ".glsl"
1547 | - ".fp"
1548 | - ".frag"
1549 | - ".frg"
1550 | - ".fs"
1551 | - ".fsh"
1552 | - ".fshader"
1553 | - ".geo"
1554 | - ".geom"
1555 | - ".glslv"
1556 | - ".gshader"
1557 | - ".shader"
1558 | - ".tesc"
1559 | - ".tese"
1560 | - ".vert"
1561 | - ".vrx"
1562 | - ".vsh"
1563 | - ".vshader"
1564 | ace_mode: glsl
1565 | language_id: 124
1566 | GN:
1567 | type: data
1568 | extensions:
1569 | - ".gn"
1570 | - ".gni"
1571 | interpreters:
1572 | - gn
1573 | filenames:
1574 | - ".gn"
1575 | tm_scope: source.gn
1576 | ace_mode: python
1577 | codemirror_mode: python
1578 | codemirror_mime_type: text/x-python
1579 | language_id: 302957008
1580 | Game Maker Language:
1581 | type: programming
1582 | color: "#71b417"
1583 | extensions:
1584 | - ".gml"
1585 | tm_scope: source.c++
1586 | ace_mode: c_cpp
1587 | codemirror_mode: clike
1588 | codemirror_mime_type: text/x-c++src
1589 | language_id: 125
1590 | Genie:
1591 | type: programming
1592 | ace_mode: text
1593 | extensions:
1594 | - ".gs"
1595 | color: "#fb855d"
1596 | tm_scope: none
1597 | language_id: 792408528
1598 | Genshi:
1599 | type: programming
1600 | extensions:
1601 | - ".kid"
1602 | tm_scope: text.xml.genshi
1603 | aliases:
1604 | - xml+genshi
1605 | - xml+kid
1606 | ace_mode: xml
1607 | codemirror_mode: xml
1608 | codemirror_mime_type: text/xml
1609 | language_id: 126
1610 | Gentoo Ebuild:
1611 | type: programming
1612 | group: Shell
1613 | extensions:
1614 | - ".ebuild"
1615 | tm_scope: source.shell
1616 | ace_mode: sh
1617 | codemirror_mode: shell
1618 | codemirror_mime_type: text/x-sh
1619 | language_id: 127
1620 | Gentoo Eclass:
1621 | type: programming
1622 | group: Shell
1623 | extensions:
1624 | - ".eclass"
1625 | tm_scope: source.shell
1626 | ace_mode: sh
1627 | codemirror_mode: shell
1628 | codemirror_mime_type: text/x-sh
1629 | language_id: 128
1630 | Gerber Image:
1631 | type: data
1632 | aliases:
1633 | - rs-274x
1634 | extensions:
1635 | - ".gbr"
1636 | - ".gbl"
1637 | - ".gbo"
1638 | - ".gbp"
1639 | - ".gbs"
1640 | - ".gko"
1641 | - ".gml"
1642 | - ".gpb"
1643 | - ".gpt"
1644 | - ".gtl"
1645 | - ".gto"
1646 | - ".gtp"
1647 | - ".gts"
1648 | interpreters:
1649 | - gerbv
1650 | - gerbview
1651 | tm_scope: source.gerber
1652 | ace_mode: text
1653 | language_id: 404627610
1654 | Gettext Catalog:
1655 | type: prose
1656 | searchable: false
1657 | aliases:
1658 | - pot
1659 | extensions:
1660 | - ".po"
1661 | - ".pot"
1662 | tm_scope: source.po
1663 | ace_mode: text
1664 | language_id: 129
1665 | Gherkin:
1666 | type: programming
1667 | extensions:
1668 | - ".feature"
1669 | tm_scope: text.gherkin.feature
1670 | aliases:
1671 | - cucumber
1672 | ace_mode: text
1673 | color: "#5B2063"
1674 | language_id: 76
1675 | Git Attributes:
1676 | type: data
1677 | group: INI
1678 | aliases:
1679 | - gitattributes
1680 | filenames:
1681 | - ".gitattributes"
1682 | tm_scope: source.gitattributes
1683 | ace_mode: gitignore
1684 | codemirror_mode: shell
1685 | codemirror_mime_type: text/x-sh
1686 | language_id: 956324166
1687 | Git Config:
1688 | type: data
1689 | group: INI
1690 | aliases:
1691 | - gitconfig
1692 | - gitmodules
1693 | extensions:
1694 | - ".gitconfig"
1695 | filenames:
1696 | - ".gitconfig"
1697 | - ".gitmodules"
1698 | ace_mode: ini
1699 | codemirror_mode: properties
1700 | codemirror_mime_type: text/x-properties
1701 | tm_scope: source.gitconfig
1702 | language_id: 807968997
1703 | Glyph:
1704 | type: programming
1705 | color: "#c1ac7f"
1706 | extensions:
1707 | - ".glf"
1708 | tm_scope: source.tcl
1709 | ace_mode: tcl
1710 | codemirror_mode: tcl
1711 | codemirror_mime_type: text/x-tcl
1712 | language_id: 130
1713 | Glyph Bitmap Distribution Format:
1714 | type: data
1715 | extensions:
1716 | - ".bdf"
1717 | tm_scope: source.bdf
1718 | ace_mode: text
1719 | language_id: 997665271
1720 | Gnuplot:
1721 | type: programming
1722 | color: "#f0a9f0"
1723 | extensions:
1724 | - ".gp"
1725 | - ".gnu"
1726 | - ".gnuplot"
1727 | - ".plot"
1728 | - ".plt"
1729 | interpreters:
1730 | - gnuplot
1731 | ace_mode: text
1732 | language_id: 131
1733 | Go:
1734 | type: programming
1735 | color: "#00ADD8"
1736 | aliases:
1737 | - golang
1738 | extensions:
1739 | - ".go"
1740 | ace_mode: golang
1741 | codemirror_mode: go
1742 | codemirror_mime_type: text/x-go
1743 | language_id: 132
1744 | Golo:
1745 | type: programming
1746 | color: "#88562A"
1747 | extensions:
1748 | - ".golo"
1749 | tm_scope: source.golo
1750 | ace_mode: text
1751 | language_id: 133
1752 | Gosu:
1753 | type: programming
1754 | color: "#82937f"
1755 | extensions:
1756 | - ".gs"
1757 | - ".gst"
1758 | - ".gsx"
1759 | - ".vark"
1760 | tm_scope: source.gosu.2
1761 | ace_mode: text
1762 | language_id: 134
1763 | Grace:
1764 | type: programming
1765 | extensions:
1766 | - ".grace"
1767 | tm_scope: source.grace
1768 | ace_mode: text
1769 | language_id: 135
1770 | Gradle:
1771 | type: data
1772 | extensions:
1773 | - ".gradle"
1774 | tm_scope: source.groovy.gradle
1775 | ace_mode: text
1776 | language_id: 136
1777 | Grammatical Framework:
1778 | type: programming
1779 | aliases:
1780 | - gf
1781 | extensions:
1782 | - ".gf"
1783 | color: "#79aa7a"
1784 | tm_scope: source.gf
1785 | ace_mode: haskell
1786 | codemirror_mode: haskell
1787 | codemirror_mime_type: text/x-haskell
1788 | language_id: 137
1789 | Graph Modeling Language:
1790 | type: data
1791 | extensions:
1792 | - ".gml"
1793 | tm_scope: none
1794 | ace_mode: text
1795 | language_id: 138
1796 | GraphQL:
1797 | type: data
1798 | extensions:
1799 | - ".graphql"
1800 | - ".gql"
1801 | - ".graphqls"
1802 | tm_scope: source.graphql
1803 | ace_mode: text
1804 | language_id: 139
1805 | Graphviz (DOT):
1806 | type: data
1807 | tm_scope: source.dot
1808 | extensions:
1809 | - ".dot"
1810 | - ".gv"
1811 | ace_mode: text
1812 | language_id: 140
1813 | Groovy:
1814 | type: programming
1815 | ace_mode: groovy
1816 | codemirror_mode: groovy
1817 | codemirror_mime_type: text/x-groovy
1818 | color: "#e69f56"
1819 | extensions:
1820 | - ".groovy"
1821 | - ".grt"
1822 | - ".gtpl"
1823 | - ".gvy"
1824 | interpreters:
1825 | - groovy
1826 | filenames:
1827 | - Jenkinsfile
1828 | language_id: 142
1829 | Groovy Server Pages:
1830 | type: programming
1831 | group: Groovy
1832 | aliases:
1833 | - gsp
1834 | - java server page
1835 | extensions:
1836 | - ".gsp"
1837 | tm_scope: text.html.jsp
1838 | ace_mode: jsp
1839 | codemirror_mode: htmlembedded
1840 | codemirror_mime_type: application/x-jsp
1841 | language_id: 143
1842 | HAProxy:
1843 | type: data
1844 | extensions:
1845 | - ".cfg"
1846 | filenames:
1847 | - haproxy.cfg
1848 | tm_scope: source.haproxy-config
1849 | ace_mode: text
1850 | language_id: 366607477
1851 | HCL:
1852 | type: programming
1853 | extensions:
1854 | - ".hcl"
1855 | - ".tf"
1856 | - ".tfvars"
1857 | - ".workflow"
1858 | aliases:
1859 | - terraform
1860 | ace_mode: ruby
1861 | codemirror_mode: ruby
1862 | codemirror_mime_type: text/x-ruby
1863 | tm_scope: source.terraform
1864 | language_id: 144
1865 | HLSL:
1866 | type: programming
1867 | extensions:
1868 | - ".hlsl"
1869 | - ".cginc"
1870 | - ".fx"
1871 | - ".fxh"
1872 | - ".hlsli"
1873 | ace_mode: text
1874 | tm_scope: source.hlsl
1875 | language_id: 145
1876 | HTML:
1877 | type: markup
1878 | tm_scope: text.html.basic
1879 | ace_mode: html
1880 | codemirror_mode: htmlmixed
1881 | codemirror_mime_type: text/html
1882 | color: "#e34c26"
1883 | aliases:
1884 | - xhtml
1885 | extensions:
1886 | - ".html"
1887 | - ".htm"
1888 | - ".html.hl"
1889 | - ".inc"
1890 | - ".st"
1891 | - ".xht"
1892 | - ".xhtml"
1893 | language_id: 146
1894 | HTML+Django:
1895 | type: markup
1896 | tm_scope: text.html.django
1897 | group: HTML
1898 | extensions:
1899 | - ".jinja"
1900 | - ".jinja2"
1901 | - ".mustache"
1902 | - ".njk"
1903 | aliases:
1904 | - django
1905 | - html+django/jinja
1906 | - html+jinja
1907 | - htmldjango
1908 | - njk
1909 | - nunjucks
1910 | ace_mode: django
1911 | codemirror_mode: django
1912 | codemirror_mime_type: text/x-django
1913 | language_id: 147
1914 | HTML+ECR:
1915 | type: markup
1916 | tm_scope: text.html.ecr
1917 | group: HTML
1918 | aliases:
1919 | - ecr
1920 | extensions:
1921 | - ".ecr"
1922 | ace_mode: text
1923 | codemirror_mode: htmlmixed
1924 | codemirror_mime_type: text/html
1925 | language_id: 148
1926 | HTML+EEX:
1927 | type: markup
1928 | tm_scope: text.html.elixir
1929 | group: HTML
1930 | aliases:
1931 | - eex
1932 | extensions:
1933 | - ".eex"
1934 | ace_mode: text
1935 | codemirror_mode: htmlmixed
1936 | codemirror_mime_type: text/html
1937 | language_id: 149
1938 | HTML+ERB:
1939 | type: markup
1940 | tm_scope: text.html.erb
1941 | group: HTML
1942 | aliases:
1943 | - erb
1944 | extensions:
1945 | - ".erb"
1946 | - ".erb.deface"
1947 | ace_mode: text
1948 | codemirror_mode: htmlembedded
1949 | codemirror_mime_type: application/x-erb
1950 | language_id: 150
1951 | HTML+PHP:
1952 | type: markup
1953 | tm_scope: text.html.php
1954 | group: HTML
1955 | extensions:
1956 | - ".phtml"
1957 | ace_mode: php
1958 | codemirror_mode: php
1959 | codemirror_mime_type: application/x-httpd-php
1960 | language_id: 151
1961 | HTML+Razor:
1962 | type: markup
1963 | tm_scope: text.html.cshtml
1964 | group: HTML
1965 | aliases:
1966 | - razor
1967 | extensions:
1968 | - ".cshtml"
1969 | - ".razor"
1970 | ace_mode: razor
1971 | codemirror_mode: htmlmixed
1972 | codemirror_mime_type: text/html
1973 | language_id: 479039817
1974 | HTTP:
1975 | type: data
1976 | extensions:
1977 | - ".http"
1978 | tm_scope: source.httpspec
1979 | ace_mode: text
1980 | codemirror_mode: http
1981 | codemirror_mime_type: message/http
1982 | language_id: 152
1983 | HXML:
1984 | type: data
1985 | ace_mode: text
1986 | extensions:
1987 | - ".hxml"
1988 | tm_scope: source.hxml
1989 | language_id: 786683730
1990 | Hack:
1991 | type: programming
1992 | ace_mode: php
1993 | codemirror_mode: php
1994 | codemirror_mime_type: application/x-httpd-php
1995 | extensions:
1996 | - ".hh"
1997 | - ".php"
1998 | tm_scope: source.hack
1999 | color: "#878787"
2000 | language_id: 153
2001 | Haml:
2002 | group: HTML
2003 | type: markup
2004 | extensions:
2005 | - ".haml"
2006 | - ".haml.deface"
2007 | ace_mode: haml
2008 | codemirror_mode: haml
2009 | codemirror_mime_type: text/x-haml
2010 | language_id: 154
2011 | Handlebars:
2012 | type: markup
2013 | group: HTML
2014 | aliases:
2015 | - hbs
2016 | - htmlbars
2017 | extensions:
2018 | - ".handlebars"
2019 | - ".hbs"
2020 | tm_scope: text.html.handlebars
2021 | ace_mode: handlebars
2022 | language_id: 155
2023 | Harbour:
2024 | type: programming
2025 | color: "#0e60e3"
2026 | extensions:
2027 | - ".hb"
2028 | tm_scope: source.harbour
2029 | ace_mode: text
2030 | language_id: 156
2031 | Haskell:
2032 | type: programming
2033 | color: "#5e5086"
2034 | extensions:
2035 | - ".hs"
2036 | - ".hsc"
2037 | interpreters:
2038 | - runhaskell
2039 | ace_mode: haskell
2040 | codemirror_mode: haskell
2041 | codemirror_mime_type: text/x-haskell
2042 | language_id: 157
2043 | Haxe:
2044 | type: programming
2045 | ace_mode: haxe
2046 | codemirror_mode: haxe
2047 | codemirror_mime_type: text/x-haxe
2048 | color: "#df7900"
2049 | extensions:
2050 | - ".hx"
2051 | - ".hxsl"
2052 | tm_scope: source.hx
2053 | language_id: 158
2054 | HiveQL:
2055 | type: programming
2056 | extensions:
2057 | - ".q"
2058 | color: "#dce200"
2059 | tm_scope: source.hql
2060 | ace_mode: sql
2061 | language_id: 931814087
2062 | HolyC:
2063 | type: programming
2064 | color: "#ffefaf"
2065 | extensions:
2066 | - ".hc"
2067 | tm_scope: source.hc
2068 | ace_mode: c_cpp
2069 | codemirror_mode: clike
2070 | codemirror_mime_type: text/x-csrc
2071 | language_id: 928121743
2072 | Hy:
2073 | type: programming
2074 | ace_mode: text
2075 | color: "#7790B2"
2076 | extensions:
2077 | - ".hy"
2078 | interpreters:
2079 | - hy
2080 | aliases:
2081 | - hylang
2082 | tm_scope: source.hy
2083 | language_id: 159
2084 | HyPhy:
2085 | type: programming
2086 | ace_mode: text
2087 | extensions:
2088 | - ".bf"
2089 | tm_scope: none
2090 | language_id: 160
2091 | IDL:
2092 | type: programming
2093 | color: "#a3522f"
2094 | extensions:
2095 | - ".pro"
2096 | - ".dlm"
2097 | ace_mode: text
2098 | codemirror_mode: idl
2099 | codemirror_mime_type: text/x-idl
2100 | language_id: 161
2101 | IGOR Pro:
2102 | type: programming
2103 | extensions:
2104 | - ".ipf"
2105 | aliases:
2106 | - igor
2107 | - igorpro
2108 | tm_scope: none
2109 | ace_mode: text
2110 | language_id: 162
2111 | INI:
2112 | type: data
2113 | extensions:
2114 | - ".ini"
2115 | - ".cfg"
2116 | - ".lektorproject"
2117 | - ".prefs"
2118 | - ".pro"
2119 | - ".properties"
2120 | filenames:
2121 | - buildozer.spec
2122 | tm_scope: source.ini
2123 | aliases:
2124 | - dosini
2125 | ace_mode: ini
2126 | codemirror_mode: properties
2127 | codemirror_mime_type: text/x-properties
2128 | language_id: 163
2129 | IRC log:
2130 | type: data
2131 | aliases:
2132 | - irc
2133 | - irc logs
2134 | extensions:
2135 | - ".irclog"
2136 | - ".weechatlog"
2137 | tm_scope: none
2138 | ace_mode: text
2139 | codemirror_mode: mirc
2140 | codemirror_mime_type: text/mirc
2141 | language_id: 164
2142 | Idris:
2143 | type: programming
2144 | color: "#b30000"
2145 | extensions:
2146 | - ".idr"
2147 | - ".lidr"
2148 | ace_mode: text
2149 | tm_scope: source.idris
2150 | language_id: 165
2151 | Ignore List:
2152 | type: data
2153 | group: INI
2154 | aliases:
2155 | - ignore
2156 | - gitignore
2157 | - git-ignore
2158 | extensions:
2159 | - ".gitignore"
2160 | filenames:
2161 | - ".atomignore"
2162 | - ".babelignore"
2163 | - ".bzrignore"
2164 | - ".coffeelintignore"
2165 | - ".cvsignore"
2166 | - ".dockerignore"
2167 | - ".eslintignore"
2168 | - ".gitignore"
2169 | - ".nodemonignore"
2170 | - ".npmignore"
2171 | - ".prettierignore"
2172 | - ".stylelintignore"
2173 | - ".vscodeignore"
2174 | - gitignore-global
2175 | - gitignore_global
2176 | ace_mode: gitignore
2177 | tm_scope: source.gitignore
2178 | codemirror_mode: shell
2179 | codemirror_mime_type: text/x-sh
2180 | language_id: 74444240
2181 | Inform 7:
2182 | type: programming
2183 | wrap: true
2184 | extensions:
2185 | - ".ni"
2186 | - ".i7x"
2187 | tm_scope: source.inform7
2188 | aliases:
2189 | - i7
2190 | - inform7
2191 | ace_mode: text
2192 | language_id: 166
2193 | Inno Setup:
2194 | type: programming
2195 | extensions:
2196 | - ".iss"
2197 | tm_scope: none
2198 | ace_mode: text
2199 | language_id: 167
2200 | Io:
2201 | type: programming
2202 | color: "#a9188d"
2203 | extensions:
2204 | - ".io"
2205 | interpreters:
2206 | - io
2207 | ace_mode: io
2208 | language_id: 168
2209 | Ioke:
2210 | type: programming
2211 | color: "#078193"
2212 | extensions:
2213 | - ".ik"
2214 | interpreters:
2215 | - ioke
2216 | ace_mode: text
2217 | language_id: 169
2218 | Isabelle:
2219 | type: programming
2220 | color: "#FEFE00"
2221 | extensions:
2222 | - ".thy"
2223 | tm_scope: source.isabelle.theory
2224 | ace_mode: text
2225 | language_id: 170
2226 | Isabelle ROOT:
2227 | type: programming
2228 | group: Isabelle
2229 | filenames:
2230 | - ROOT
2231 | tm_scope: source.isabelle.root
2232 | ace_mode: text
2233 | language_id: 171
2234 | J:
2235 | type: programming
2236 | color: "#9EEDFF"
2237 | extensions:
2238 | - ".ijs"
2239 | interpreters:
2240 | - jconsole
2241 | tm_scope: source.j
2242 | ace_mode: text
2243 | language_id: 172
2244 | JFlex:
2245 | type: programming
2246 | group: Lex
2247 | extensions:
2248 | - ".flex"
2249 | - ".jflex"
2250 | tm_scope: source.jflex
2251 | ace_mode: text
2252 | language_id: 173
2253 | JSON:
2254 | type: data
2255 | tm_scope: source.json
2256 | ace_mode: json
2257 | codemirror_mode: javascript
2258 | codemirror_mime_type: application/json
2259 | searchable: false
2260 | extensions:
2261 | - ".json"
2262 | - ".avsc"
2263 | - ".geojson"
2264 | - ".gltf"
2265 | - ".har"
2266 | - ".ice"
2267 | - ".JSON-tmLanguage"
2268 | - ".jsonl"
2269 | - ".mcmeta"
2270 | - ".tfstate"
2271 | - ".tfstate.backup"
2272 | - ".topojson"
2273 | - ".webapp"
2274 | - ".webmanifest"
2275 | - ".yy"
2276 | - ".yyp"
2277 | filenames:
2278 | - ".arcconfig"
2279 | - ".htmlhintrc"
2280 | - ".tern-config"
2281 | - ".tern-project"
2282 | - ".watchmanconfig"
2283 | - composer.lock
2284 | - mcmod.info
2285 | language_id: 174
2286 | JSON with Comments:
2287 | type: data
2288 | group: JSON
2289 | tm_scope: source.js
2290 | ace_mode: javascript
2291 | codemirror_mode: javascript
2292 | codemirror_mime_type: text/javascript
2293 | aliases:
2294 | - jsonc
2295 | extensions:
2296 | - ".sublime-build"
2297 | - ".sublime-commands"
2298 | - ".sublime-completions"
2299 | - ".sublime-keymap"
2300 | - ".sublime-macro"
2301 | - ".sublime-menu"
2302 | - ".sublime-mousemap"
2303 | - ".sublime-project"
2304 | - ".sublime-settings"
2305 | - ".sublime-theme"
2306 | - ".sublime-workspace"
2307 | - ".sublime_metrics"
2308 | - ".sublime_session"
2309 | filenames:
2310 | - ".babelrc"
2311 | - ".eslintrc.json"
2312 | - ".jscsrc"
2313 | - ".jshintrc"
2314 | - ".jslintrc"
2315 | - jsconfig.json
2316 | - language-configuration.json
2317 | - tsconfig.json
2318 | language_id: 423
2319 | JSON5:
2320 | type: data
2321 | extensions:
2322 | - ".json5"
2323 | tm_scope: source.js
2324 | ace_mode: javascript
2325 | codemirror_mode: javascript
2326 | codemirror_mime_type: application/json
2327 | language_id: 175
2328 | JSONLD:
2329 | type: data
2330 | extensions:
2331 | - ".jsonld"
2332 | tm_scope: source.js
2333 | ace_mode: javascript
2334 | codemirror_mode: javascript
2335 | codemirror_mime_type: application/json
2336 | language_id: 176
2337 | JSONiq:
2338 | color: "#40d47e"
2339 | type: programming
2340 | ace_mode: jsoniq
2341 | codemirror_mode: javascript
2342 | codemirror_mime_type: application/json
2343 | extensions:
2344 | - ".jq"
2345 | tm_scope: source.jq
2346 | language_id: 177
2347 | JSX:
2348 | type: programming
2349 | group: JavaScript
2350 | extensions:
2351 | - ".jsx"
2352 | tm_scope: source.js.jsx
2353 | ace_mode: javascript
2354 | codemirror_mode: jsx
2355 | codemirror_mime_type: text/jsx
2356 | language_id: 178
2357 | Jasmin:
2358 | type: programming
2359 | ace_mode: java
2360 | extensions:
2361 | - ".j"
2362 | tm_scope: source.jasmin
2363 | language_id: 180
2364 | Java:
2365 | type: programming
2366 | ace_mode: java
2367 | codemirror_mode: clike
2368 | codemirror_mime_type: text/x-java
2369 | color: "#b07219"
2370 | extensions:
2371 | - ".java"
2372 | language_id: 181
2373 | Java Properties:
2374 | type: data
2375 | extensions:
2376 | - ".properties"
2377 | tm_scope: source.java-properties
2378 | ace_mode: properties
2379 | codemirror_mode: properties
2380 | codemirror_mime_type: text/x-properties
2381 | language_id: 519377561
2382 | Java Server Pages:
2383 | type: programming
2384 | group: Java
2385 | aliases:
2386 | - jsp
2387 | extensions:
2388 | - ".jsp"
2389 | tm_scope: text.html.jsp
2390 | ace_mode: jsp
2391 | codemirror_mode: htmlembedded
2392 | codemirror_mime_type: application/x-jsp
2393 | language_id: 182
2394 | JavaScript:
2395 | type: programming
2396 | tm_scope: source.js
2397 | ace_mode: javascript
2398 | codemirror_mode: javascript
2399 | codemirror_mime_type: text/javascript
2400 | color: "#f1e05a"
2401 | aliases:
2402 | - js
2403 | - node
2404 | extensions:
2405 | - ".js"
2406 | - "._js"
2407 | - ".bones"
2408 | - ".es"
2409 | - ".es6"
2410 | - ".frag"
2411 | - ".gs"
2412 | - ".jake"
2413 | - ".jsb"
2414 | - ".jscad"
2415 | - ".jsfl"
2416 | - ".jsm"
2417 | - ".jss"
2418 | - ".mjs"
2419 | - ".njs"
2420 | - ".pac"
2421 | - ".sjs"
2422 | - ".ssjs"
2423 | - ".xsjs"
2424 | - ".xsjslib"
2425 | filenames:
2426 | - Jakefile
2427 | interpreters:
2428 | - chakra
2429 | - d8
2430 | - js
2431 | - node
2432 | - rhino
2433 | - v8
2434 | - v8-shell
2435 | language_id: 183
2436 | JavaScript+ERB:
2437 | type: programming
2438 | tm_scope: source.js
2439 | group: JavaScript
2440 | extensions:
2441 | - ".js.erb"
2442 | ace_mode: javascript
2443 | codemirror_mode: javascript
2444 | codemirror_mime_type: application/javascript
2445 | language_id: 914318960
2446 | Jison:
2447 | type: programming
2448 | group: Yacc
2449 | extensions:
2450 | - ".jison"
2451 | tm_scope: source.jison
2452 | ace_mode: text
2453 | language_id: 284531423
2454 | Jison Lex:
2455 | type: programming
2456 | group: Lex
2457 | extensions:
2458 | - ".jisonlex"
2459 | tm_scope: source.jisonlex
2460 | ace_mode: text
2461 | language_id: 406395330
2462 | Jolie:
2463 | type: programming
2464 | extensions:
2465 | - ".ol"
2466 | - ".iol"
2467 | interpreters:
2468 | - jolie
2469 | color: "#843179"
2470 | ace_mode: text
2471 | tm_scope: source.jolie
2472 | language_id: 998078858
2473 | Jsonnet:
2474 | color: "#0064bd"
2475 | type: programming
2476 | ace_mode: text
2477 | extensions:
2478 | - ".jsonnet"
2479 | - ".libsonnet"
2480 | tm_scope: source.jsonnet
2481 | language_id: 664885656
2482 | Julia:
2483 | type: programming
2484 | extensions:
2485 | - ".jl"
2486 | interpreters:
2487 | - julia
2488 | color: "#a270ba"
2489 | ace_mode: julia
2490 | codemirror_mode: julia
2491 | codemirror_mime_type: text/x-julia
2492 | language_id: 184
2493 | Jupyter Notebook:
2494 | type: markup
2495 | ace_mode: json
2496 | codemirror_mode: javascript
2497 | codemirror_mime_type: application/json
2498 | tm_scope: source.json
2499 | color: "#DA5B0B"
2500 | extensions:
2501 | - ".ipynb"
2502 | filenames:
2503 | - Notebook
2504 | aliases:
2505 | - IPython Notebook
2506 | language_id: 185
2507 | KRL:
2508 | type: programming
2509 | color: "#28430A"
2510 | extensions:
2511 | - ".krl"
2512 | tm_scope: none
2513 | ace_mode: text
2514 | language_id: 186
2515 | KiCad Layout:
2516 | type: data
2517 | aliases:
2518 | - pcbnew
2519 | extensions:
2520 | - ".kicad_pcb"
2521 | - ".kicad_mod"
2522 | - ".kicad_wks"
2523 | filenames:
2524 | - fp-lib-table
2525 | tm_scope: source.pcb.sexp
2526 | ace_mode: lisp
2527 | codemirror_mode: commonlisp
2528 | codemirror_mime_type: text/x-common-lisp
2529 | language_id: 187
2530 | KiCad Legacy Layout:
2531 | type: data
2532 | extensions:
2533 | - ".brd"
2534 | tm_scope: source.pcb.board
2535 | ace_mode: text
2536 | language_id: 140848857
2537 | KiCad Schematic:
2538 | type: data
2539 | aliases:
2540 | - eeschema schematic
2541 | extensions:
2542 | - ".sch"
2543 | tm_scope: source.pcb.schematic
2544 | ace_mode: text
2545 | language_id: 622447435
2546 | Kit:
2547 | type: markup
2548 | ace_mode: html
2549 | codemirror_mode: htmlmixed
2550 | codemirror_mime_type: text/html
2551 | extensions:
2552 | - ".kit"
2553 | tm_scope: text.html.basic
2554 | language_id: 188
2555 | Kotlin:
2556 | type: programming
2557 | color: "#F18E33"
2558 | extensions:
2559 | - ".kt"
2560 | - ".ktm"
2561 | - ".kts"
2562 | tm_scope: source.kotlin
2563 | ace_mode: text
2564 | codemirror_mode: clike
2565 | codemirror_mime_type: text/x-kotlin
2566 | language_id: 189
2567 | LFE:
2568 | type: programming
2569 | color: "#4C3023"
2570 | extensions:
2571 | - ".lfe"
2572 | tm_scope: source.lisp
2573 | ace_mode: lisp
2574 | codemirror_mode: commonlisp
2575 | codemirror_mime_type: text/x-common-lisp
2576 | language_id: 190
2577 | LLVM:
2578 | type: programming
2579 | extensions:
2580 | - ".ll"
2581 | ace_mode: text
2582 | color: "#185619"
2583 | language_id: 191
2584 | LOLCODE:
2585 | type: programming
2586 | extensions:
2587 | - ".lol"
2588 | color: "#cc9900"
2589 | tm_scope: none
2590 | ace_mode: text
2591 | language_id: 192
2592 | LSL:
2593 | type: programming
2594 | ace_mode: lsl
2595 | extensions:
2596 | - ".lsl"
2597 | - ".lslp"
2598 | interpreters:
2599 | - lsl
2600 | color: "#3d9970"
2601 | language_id: 193
2602 | LTspice Symbol:
2603 | type: data
2604 | extensions:
2605 | - ".asy"
2606 | tm_scope: source.ltspice.symbol
2607 | ace_mode: text
2608 | codemirror_mode: spreadsheet
2609 | codemirror_mime_type: text/x-spreadsheet
2610 | language_id: 1013566805
2611 | LabVIEW:
2612 | type: programming
2613 | extensions:
2614 | - ".lvproj"
2615 | tm_scope: text.xml
2616 | ace_mode: xml
2617 | codemirror_mode: xml
2618 | codemirror_mime_type: text/xml
2619 | language_id: 194
2620 | Lasso:
2621 | type: programming
2622 | color: "#999999"
2623 | extensions:
2624 | - ".lasso"
2625 | - ".las"
2626 | - ".lasso8"
2627 | - ".lasso9"
2628 | - ".ldml"
2629 | tm_scope: file.lasso
2630 | aliases:
2631 | - lassoscript
2632 | ace_mode: text
2633 | language_id: 195
2634 | Latte:
2635 | type: markup
2636 | group: HTML
2637 | extensions:
2638 | - ".latte"
2639 | tm_scope: text.html.smarty
2640 | ace_mode: smarty
2641 | codemirror_mode: smarty
2642 | codemirror_mime_type: text/x-smarty
2643 | language_id: 196
2644 | Lean:
2645 | type: programming
2646 | extensions:
2647 | - ".lean"
2648 | - ".hlean"
2649 | ace_mode: text
2650 | language_id: 197
2651 | Less:
2652 | type: markup
2653 | group: CSS
2654 | extensions:
2655 | - ".less"
2656 | tm_scope: source.css.less
2657 | ace_mode: less
2658 | codemirror_mode: css
2659 | codemirror_mime_type: text/css
2660 | language_id: 198
2661 | Lex:
2662 | type: programming
2663 | color: "#DBCA00"
2664 | aliases:
2665 | - flex
2666 | extensions:
2667 | - ".l"
2668 | - ".lex"
2669 | tm_scope: none
2670 | ace_mode: text
2671 | language_id: 199
2672 | LilyPond:
2673 | type: programming
2674 | extensions:
2675 | - ".ly"
2676 | - ".ily"
2677 | ace_mode: text
2678 | language_id: 200
2679 | Limbo:
2680 | type: programming
2681 | extensions:
2682 | - ".b"
2683 | - ".m"
2684 | tm_scope: none
2685 | ace_mode: text
2686 | language_id: 201
2687 | Linker Script:
2688 | type: data
2689 | extensions:
2690 | - ".ld"
2691 | - ".lds"
2692 | - ".x"
2693 | filenames:
2694 | - ld.script
2695 | tm_scope: none
2696 | ace_mode: text
2697 | language_id: 202
2698 | Linux Kernel Module:
2699 | type: data
2700 | extensions:
2701 | - ".mod"
2702 | tm_scope: none
2703 | ace_mode: text
2704 | language_id: 203
2705 | Liquid:
2706 | type: markup
2707 | extensions:
2708 | - ".liquid"
2709 | tm_scope: text.html.liquid
2710 | ace_mode: liquid
2711 | language_id: 204
2712 | Literate Agda:
2713 | type: programming
2714 | group: Agda
2715 | extensions:
2716 | - ".lagda"
2717 | tm_scope: none
2718 | ace_mode: text
2719 | language_id: 205
2720 | Literate CoffeeScript:
2721 | type: programming
2722 | tm_scope: source.litcoffee
2723 | group: CoffeeScript
2724 | ace_mode: text
2725 | wrap: true
2726 | aliases:
2727 | - litcoffee
2728 | extensions:
2729 | - ".litcoffee"
2730 | language_id: 206
2731 | Literate Haskell:
2732 | type: programming
2733 | group: Haskell
2734 | aliases:
2735 | - lhaskell
2736 | - lhs
2737 | extensions:
2738 | - ".lhs"
2739 | tm_scope: text.tex.latex.haskell
2740 | ace_mode: text
2741 | codemirror_mode: haskell-literate
2742 | codemirror_mime_type: text/x-literate-haskell
2743 | language_id: 207
2744 | LiveScript:
2745 | type: programming
2746 | color: "#499886"
2747 | aliases:
2748 | - live-script
2749 | - ls
2750 | extensions:
2751 | - ".ls"
2752 | - "._ls"
2753 | filenames:
2754 | - Slakefile
2755 | ace_mode: livescript
2756 | codemirror_mode: livescript
2757 | codemirror_mime_type: text/x-livescript
2758 | language_id: 208
2759 | Logos:
2760 | type: programming
2761 | extensions:
2762 | - ".xm"
2763 | - ".x"
2764 | - ".xi"
2765 | ace_mode: text
2766 | tm_scope: source.logos
2767 | language_id: 209
2768 | Logtalk:
2769 | type: programming
2770 | extensions:
2771 | - ".lgt"
2772 | - ".logtalk"
2773 | ace_mode: text
2774 | language_id: 210
2775 | LookML:
2776 | type: programming
2777 | ace_mode: yaml
2778 | codemirror_mode: yaml
2779 | codemirror_mime_type: text/x-yaml
2780 | color: "#652B81"
2781 | extensions:
2782 | - ".lookml"
2783 | - ".model.lkml"
2784 | - ".view.lkml"
2785 | tm_scope: source.yaml
2786 | language_id: 211
2787 | LoomScript:
2788 | type: programming
2789 | extensions:
2790 | - ".ls"
2791 | tm_scope: source.loomscript
2792 | ace_mode: text
2793 | language_id: 212
2794 | Lua:
2795 | type: programming
2796 | ace_mode: lua
2797 | codemirror_mode: lua
2798 | codemirror_mime_type: text/x-lua
2799 | color: "#000080"
2800 | extensions:
2801 | - ".lua"
2802 | - ".fcgi"
2803 | - ".nse"
2804 | - ".p8"
2805 | - ".pd_lua"
2806 | - ".rbxs"
2807 | - ".wlua"
2808 | interpreters:
2809 | - lua
2810 | language_id: 213
2811 | M:
2812 | type: programming
2813 | aliases:
2814 | - mumps
2815 | extensions:
2816 | - ".mumps"
2817 | - ".m"
2818 | ace_mode: text
2819 | codemirror_mode: mumps
2820 | codemirror_mime_type: text/x-mumps
2821 | language_id: 214
2822 | tm_scope: none
2823 | M4:
2824 | type: programming
2825 | extensions:
2826 | - ".m4"
2827 | tm_scope: none
2828 | ace_mode: text
2829 | language_id: 215
2830 | M4Sugar:
2831 | type: programming
2832 | group: M4
2833 | aliases:
2834 | - autoconf
2835 | extensions:
2836 | - ".m4"
2837 | filenames:
2838 | - configure.ac
2839 | tm_scope: none
2840 | ace_mode: text
2841 | language_id: 216
2842 | MATLAB:
2843 | type: programming
2844 | color: "#e16737"
2845 | aliases:
2846 | - octave
2847 | extensions:
2848 | - ".matlab"
2849 | - ".m"
2850 | ace_mode: matlab
2851 | codemirror_mode: octave
2852 | codemirror_mime_type: text/x-octave
2853 | language_id: 225
2854 | MAXScript:
2855 | type: programming
2856 | color: "#00a6a6"
2857 | extensions:
2858 | - ".ms"
2859 | - ".mcr"
2860 | tm_scope: source.maxscript
2861 | ace_mode: text
2862 | language_id: 217
2863 | MQL4:
2864 | type: programming
2865 | color: "#62A8D6"
2866 | extensions:
2867 | - ".mq4"
2868 | - ".mqh"
2869 | tm_scope: source.mql5
2870 | ace_mode: c_cpp
2871 | language_id: 426
2872 | MQL5:
2873 | type: programming
2874 | color: "#4A76B8"
2875 | extensions:
2876 | - ".mq5"
2877 | - ".mqh"
2878 | tm_scope: source.mql5
2879 | ace_mode: c_cpp
2880 | language_id: 427
2881 | MTML:
2882 | type: markup
2883 | color: "#b7e1f4"
2884 | extensions:
2885 | - ".mtml"
2886 | tm_scope: text.html.basic
2887 | ace_mode: html
2888 | codemirror_mode: htmlmixed
2889 | codemirror_mime_type: text/html
2890 | language_id: 218
2891 | MUF:
2892 | type: programming
2893 | group: Forth
2894 | extensions:
2895 | - ".muf"
2896 | - ".m"
2897 | tm_scope: none
2898 | ace_mode: forth
2899 | codemirror_mode: forth
2900 | codemirror_mime_type: text/x-forth
2901 | language_id: 219
2902 | Makefile:
2903 | type: programming
2904 | color: "#427819"
2905 | aliases:
2906 | - bsdmake
2907 | - make
2908 | - mf
2909 | extensions:
2910 | - ".mak"
2911 | - ".d"
2912 | - ".make"
2913 | - ".mk"
2914 | - ".mkfile"
2915 | filenames:
2916 | - BSDmakefile
2917 | - GNUmakefile
2918 | - Kbuild
2919 | - Makefile
2920 | - Makefile.am
2921 | - Makefile.boot
2922 | - Makefile.frag
2923 | - Makefile.in
2924 | - Makefile.inc
2925 | - Makefile.wat
2926 | - makefile
2927 | - makefile.sco
2928 | - mkfile
2929 | interpreters:
2930 | - make
2931 | ace_mode: makefile
2932 | codemirror_mode: cmake
2933 | codemirror_mime_type: text/x-cmake
2934 | language_id: 220
2935 | Mako:
2936 | type: programming
2937 | extensions:
2938 | - ".mako"
2939 | - ".mao"
2940 | tm_scope: text.html.mako
2941 | ace_mode: text
2942 | language_id: 221
2943 | Markdown:
2944 | type: prose
2945 | aliases:
2946 | - pandoc
2947 | ace_mode: markdown
2948 | codemirror_mode: gfm
2949 | codemirror_mime_type: text/x-gfm
2950 | wrap: true
2951 | extensions:
2952 | - ".md"
2953 | - ".markdown"
2954 | - ".mdown"
2955 | - ".mdwn"
2956 | - ".mdx"
2957 | - ".mkd"
2958 | - ".mkdn"
2959 | - ".mkdown"
2960 | - ".ronn"
2961 | - ".workbook"
2962 | filenames:
2963 | - contents.lr
2964 | tm_scope: source.gfm
2965 | language_id: 222
2966 | Marko:
2967 | group: HTML
2968 | type: markup
2969 | tm_scope: text.marko
2970 | extensions:
2971 | - ".marko"
2972 | aliases:
2973 | - markojs
2974 | ace_mode: text
2975 | codemirror_mode: htmlmixed
2976 | codemirror_mime_type: text/html
2977 | language_id: 932782397
2978 | Mask:
2979 | type: markup
2980 | color: "#f97732"
2981 | ace_mode: mask
2982 | extensions:
2983 | - ".mask"
2984 | tm_scope: source.mask
2985 | language_id: 223
2986 | Mathematica:
2987 | type: programming
2988 | extensions:
2989 | - ".mathematica"
2990 | - ".cdf"
2991 | - ".m"
2992 | - ".ma"
2993 | - ".mt"
2994 | - ".nb"
2995 | - ".nbp"
2996 | - ".wl"
2997 | - ".wlt"
2998 | aliases:
2999 | - mma
3000 | ace_mode: text
3001 | codemirror_mode: mathematica
3002 | codemirror_mime_type: text/x-mathematica
3003 | language_id: 224
3004 | Maven POM:
3005 | type: data
3006 | tm_scope: text.xml.pom
3007 | filenames:
3008 | - pom.xml
3009 | ace_mode: xml
3010 | codemirror_mode: xml
3011 | codemirror_mime_type: text/xml
3012 | language_id: 226
3013 | Max:
3014 | type: programming
3015 | color: "#c4a79c"
3016 | aliases:
3017 | - max/msp
3018 | - maxmsp
3019 | extensions:
3020 | - ".maxpat"
3021 | - ".maxhelp"
3022 | - ".maxproj"
3023 | - ".mxt"
3024 | - ".pat"
3025 | tm_scope: source.json
3026 | ace_mode: json
3027 | codemirror_mode: javascript
3028 | codemirror_mime_type: application/json
3029 | language_id: 227
3030 | MediaWiki:
3031 | type: prose
3032 | wrap: true
3033 | extensions:
3034 | - ".mediawiki"
3035 | - ".wiki"
3036 | tm_scope: text.html.mediawiki
3037 | ace_mode: text
3038 | language_id: 228
3039 | Mercury:
3040 | type: programming
3041 | color: "#ff2b2b"
3042 | ace_mode: prolog
3043 | interpreters:
3044 | - mmi
3045 | extensions:
3046 | - ".m"
3047 | - ".moo"
3048 | tm_scope: source.mercury
3049 | language_id: 229
3050 | Meson:
3051 | type: programming
3052 | color: "#007800"
3053 | filenames:
3054 | - meson.build
3055 | - meson_options.txt
3056 | tm_scope: source.meson
3057 | ace_mode: text
3058 | language_id: 799141244
3059 | Metal:
3060 | type: programming
3061 | color: "#8f14e9"
3062 | extensions:
3063 | - ".metal"
3064 | tm_scope: source.c++
3065 | ace_mode: c_cpp
3066 | codemirror_mode: clike
3067 | codemirror_mime_type: text/x-c++src
3068 | language_id: 230
3069 | MiniD:
3070 | type: programming
3071 | searchable: false
3072 | extensions:
3073 | - ".minid"
3074 | tm_scope: none
3075 | ace_mode: text
3076 | language_id: 231
3077 | Mirah:
3078 | type: programming
3079 | color: "#c7a938"
3080 | extensions:
3081 | - ".druby"
3082 | - ".duby"
3083 | - ".mirah"
3084 | tm_scope: source.ruby
3085 | ace_mode: ruby
3086 | codemirror_mode: ruby
3087 | codemirror_mime_type: text/x-ruby
3088 | language_id: 232
3089 | Modelica:
3090 | type: programming
3091 | extensions:
3092 | - ".mo"
3093 | tm_scope: source.modelica
3094 | ace_mode: text
3095 | codemirror_mode: modelica
3096 | codemirror_mime_type: text/x-modelica
3097 | language_id: 233
3098 | Modula-2:
3099 | type: programming
3100 | extensions:
3101 | - ".mod"
3102 | tm_scope: source.modula2
3103 | ace_mode: text
3104 | language_id: 234
3105 | Modula-3:
3106 | type: programming
3107 | extensions:
3108 | - ".i3"
3109 | - ".ig"
3110 | - ".m3"
3111 | - ".mg"
3112 | color: "#223388"
3113 | ace_mode: text
3114 | tm_scope: source.modula-3
3115 | language_id: 564743864
3116 | Module Management System:
3117 | type: programming
3118 | extensions:
3119 | - ".mms"
3120 | - ".mmk"
3121 | filenames:
3122 | - descrip.mmk
3123 | - descrip.mms
3124 | tm_scope: none
3125 | ace_mode: text
3126 | language_id: 235
3127 | Monkey:
3128 | type: programming
3129 | extensions:
3130 | - ".monkey"
3131 | - ".monkey2"
3132 | ace_mode: text
3133 | tm_scope: source.monkey
3134 | language_id: 236
3135 | Moocode:
3136 | type: programming
3137 | extensions:
3138 | - ".moo"
3139 | tm_scope: none
3140 | ace_mode: text
3141 | language_id: 237
3142 | MoonScript:
3143 | type: programming
3144 | extensions:
3145 | - ".moon"
3146 | interpreters:
3147 | - moon
3148 | ace_mode: text
3149 | language_id: 238
3150 | Motorola 68K Assembly:
3151 | type: programming
3152 | group: Assembly
3153 | extensions:
3154 | - ".X68"
3155 | tm_scope: source.m68k
3156 | ace_mode: assembly_x86
3157 | language_id: 477582706
3158 | Myghty:
3159 | type: programming
3160 | extensions:
3161 | - ".myt"
3162 | tm_scope: none
3163 | ace_mode: text
3164 | language_id: 239
3165 | NCL:
3166 | type: programming
3167 | color: "#28431f"
3168 | extensions:
3169 | - ".ncl"
3170 | tm_scope: source.ncl
3171 | ace_mode: text
3172 | language_id: 240
3173 | NL:
3174 | type: data
3175 | extensions:
3176 | - ".nl"
3177 | tm_scope: none
3178 | ace_mode: text
3179 | language_id: 241
3180 | NSIS:
3181 | type: programming
3182 | extensions:
3183 | - ".nsi"
3184 | - ".nsh"
3185 | ace_mode: text
3186 | codemirror_mode: nsis
3187 | codemirror_mime_type: text/x-nsis
3188 | language_id: 242
3189 | Nearley:
3190 | type: programming
3191 | ace_mode: text
3192 | color: "#990000"
3193 | extensions:
3194 | - ".ne"
3195 | - ".nearley"
3196 | tm_scope: source.ne
3197 | language_id: 521429430
3198 | Nemerle:
3199 | type: programming
3200 | color: "#3d3c6e"
3201 | extensions:
3202 | - ".n"
3203 | ace_mode: text
3204 | language_id: 243
3205 | NetLinx:
3206 | type: programming
3207 | color: "#0aa0ff"
3208 | extensions:
3209 | - ".axs"
3210 | - ".axi"
3211 | tm_scope: source.netlinx
3212 | ace_mode: text
3213 | language_id: 244
3214 | NetLinx+ERB:
3215 | type: programming
3216 | color: "#747faa"
3217 | extensions:
3218 | - ".axs.erb"
3219 | - ".axi.erb"
3220 | tm_scope: source.netlinx.erb
3221 | ace_mode: text
3222 | language_id: 245
3223 | NetLogo:
3224 | type: programming
3225 | color: "#ff6375"
3226 | extensions:
3227 | - ".nlogo"
3228 | tm_scope: source.lisp
3229 | ace_mode: lisp
3230 | codemirror_mode: commonlisp
3231 | codemirror_mime_type: text/x-common-lisp
3232 | language_id: 246
3233 | NewLisp:
3234 | type: programming
3235 | color: "#87AED7"
3236 | extensions:
3237 | - ".nl"
3238 | - ".lisp"
3239 | - ".lsp"
3240 | interpreters:
3241 | - newlisp
3242 | tm_scope: source.lisp
3243 | ace_mode: lisp
3244 | codemirror_mode: commonlisp
3245 | codemirror_mime_type: text/x-common-lisp
3246 | language_id: 247
3247 | Nextflow:
3248 | type: programming
3249 | ace_mode: groovy
3250 | tm_scope: source.nextflow
3251 | color: "#3ac486"
3252 | extensions:
3253 | - ".nf"
3254 | filenames:
3255 | - nextflow.config
3256 | interpreters:
3257 | - nextflow
3258 | language_id: 506780613
3259 | Nginx:
3260 | type: data
3261 | extensions:
3262 | - ".nginxconf"
3263 | - ".vhost"
3264 | filenames:
3265 | - nginx.conf
3266 | tm_scope: source.nginx
3267 | aliases:
3268 | - nginx configuration file
3269 | ace_mode: text
3270 | codemirror_mode: nginx
3271 | codemirror_mime_type: text/x-nginx-conf
3272 | language_id: 248
3273 | Nim:
3274 | type: programming
3275 | color: "#37775b"
3276 | extensions:
3277 | - ".nim"
3278 | - ".nim.cfg"
3279 | - ".nimble"
3280 | - ".nimrod"
3281 | - ".nims"
3282 | filenames:
3283 | - nim.cfg
3284 | ace_mode: text
3285 | tm_scope: source.nim
3286 | language_id: 249
3287 | Ninja:
3288 | type: data
3289 | tm_scope: source.ninja
3290 | extensions:
3291 | - ".ninja"
3292 | ace_mode: text
3293 | language_id: 250
3294 | Nit:
3295 | type: programming
3296 | color: "#009917"
3297 | extensions:
3298 | - ".nit"
3299 | tm_scope: source.nit
3300 | ace_mode: text
3301 | language_id: 251
3302 | Nix:
3303 | type: programming
3304 | color: "#7e7eff"
3305 | extensions:
3306 | - ".nix"
3307 | aliases:
3308 | - nixos
3309 | tm_scope: source.nix
3310 | ace_mode: nix
3311 | language_id: 252
3312 | Nu:
3313 | type: programming
3314 | color: "#c9df40"
3315 | aliases:
3316 | - nush
3317 | extensions:
3318 | - ".nu"
3319 | filenames:
3320 | - Nukefile
3321 | tm_scope: source.nu
3322 | ace_mode: scheme
3323 | codemirror_mode: scheme
3324 | codemirror_mime_type: text/x-scheme
3325 | interpreters:
3326 | - nush
3327 | language_id: 253
3328 | NumPy:
3329 | type: programming
3330 | group: Python
3331 | extensions:
3332 | - ".numpy"
3333 | - ".numpyw"
3334 | - ".numsc"
3335 | tm_scope: none
3336 | ace_mode: text
3337 | codemirror_mode: python
3338 | codemirror_mime_type: text/x-python
3339 | language_id: 254
3340 | OCaml:
3341 | type: programming
3342 | ace_mode: ocaml
3343 | codemirror_mode: mllike
3344 | codemirror_mime_type: text/x-ocaml
3345 | color: "#3be133"
3346 | extensions:
3347 | - ".ml"
3348 | - ".eliom"
3349 | - ".eliomi"
3350 | - ".ml4"
3351 | - ".mli"
3352 | - ".mll"
3353 | - ".mly"
3354 | interpreters:
3355 | - ocaml
3356 | - ocamlrun
3357 | - ocamlscript
3358 | tm_scope: source.ocaml
3359 | language_id: 255
3360 | ObjDump:
3361 | type: data
3362 | extensions:
3363 | - ".objdump"
3364 | tm_scope: objdump.x86asm
3365 | ace_mode: assembly_x86
3366 | language_id: 256
3367 | ObjectScript:
3368 | type: programming
3369 | extensions:
3370 | - ".cls"
3371 | language_id: 202735509
3372 | tm_scope: source.objectscript
3373 | color: "#424893"
3374 | ace_mode: text
3375 | Objective-C:
3376 | type: programming
3377 | tm_scope: source.objc
3378 | color: "#438eff"
3379 | aliases:
3380 | - obj-c
3381 | - objc
3382 | - objectivec
3383 | extensions:
3384 | - ".m"
3385 | - ".h"
3386 | ace_mode: objectivec
3387 | codemirror_mode: clike
3388 | codemirror_mime_type: text/x-objectivec
3389 | language_id: 257
3390 | Objective-C++:
3391 | type: programming
3392 | tm_scope: source.objc++
3393 | color: "#6866fb"
3394 | aliases:
3395 | - obj-c++
3396 | - objc++
3397 | - objectivec++
3398 | extensions:
3399 | - ".mm"
3400 | ace_mode: objectivec
3401 | codemirror_mode: clike
3402 | codemirror_mime_type: text/x-objectivec
3403 | language_id: 258
3404 | Objective-J:
3405 | type: programming
3406 | color: "#ff0c5a"
3407 | aliases:
3408 | - obj-j
3409 | - objectivej
3410 | - objj
3411 | extensions:
3412 | - ".j"
3413 | - ".sj"
3414 | tm_scope: source.js.objj
3415 | ace_mode: text
3416 | language_id: 259
3417 | Omgrofl:
3418 | type: programming
3419 | extensions:
3420 | - ".omgrofl"
3421 | color: "#cabbff"
3422 | tm_scope: none
3423 | ace_mode: text
3424 | language_id: 260
3425 | Opa:
3426 | type: programming
3427 | extensions:
3428 | - ".opa"
3429 | ace_mode: text
3430 | language_id: 261
3431 | Opal:
3432 | type: programming
3433 | color: "#f7ede0"
3434 | extensions:
3435 | - ".opal"
3436 | tm_scope: source.opal
3437 | ace_mode: text
3438 | language_id: 262
3439 | OpenCL:
3440 | type: programming
3441 | group: C
3442 | extensions:
3443 | - ".cl"
3444 | - ".opencl"
3445 | tm_scope: source.c
3446 | ace_mode: c_cpp
3447 | codemirror_mode: clike
3448 | codemirror_mime_type: text/x-csrc
3449 | language_id: 263
3450 | OpenEdge ABL:
3451 | type: programming
3452 | aliases:
3453 | - progress
3454 | - openedge
3455 | - abl
3456 | extensions:
3457 | - ".p"
3458 | - ".cls"
3459 | - ".w"
3460 | tm_scope: source.abl
3461 | ace_mode: text
3462 | language_id: 264
3463 | OpenRC runscript:
3464 | type: programming
3465 | group: Shell
3466 | aliases:
3467 | - openrc
3468 | interpreters:
3469 | - openrc-run
3470 | tm_scope: source.shell
3471 | ace_mode: sh
3472 | codemirror_mode: shell
3473 | codemirror_mime_type: text/x-sh
3474 | language_id: 265
3475 | OpenSCAD:
3476 | type: programming
3477 | extensions:
3478 | - ".scad"
3479 | tm_scope: source.scad
3480 | ace_mode: scad
3481 | language_id: 266
3482 | OpenType Feature File:
3483 | type: data
3484 | aliases:
3485 | - AFDKO
3486 | extensions:
3487 | - ".fea"
3488 | tm_scope: source.opentype
3489 | ace_mode: text
3490 | language_id: 374317347
3491 | Org:
3492 | type: prose
3493 | wrap: true
3494 | extensions:
3495 | - ".org"
3496 | tm_scope: none
3497 | ace_mode: text
3498 | language_id: 267
3499 | Ox:
3500 | type: programming
3501 | extensions:
3502 | - ".ox"
3503 | - ".oxh"
3504 | - ".oxo"
3505 | tm_scope: source.ox
3506 | ace_mode: text
3507 | language_id: 268
3508 | Oxygene:
3509 | type: programming
3510 | color: "#cdd0e3"
3511 | extensions:
3512 | - ".oxygene"
3513 | tm_scope: none
3514 | ace_mode: text
3515 | language_id: 269
3516 | Oz:
3517 | type: programming
3518 | color: "#fab738"
3519 | extensions:
3520 | - ".oz"
3521 | tm_scope: source.oz
3522 | ace_mode: text
3523 | codemirror_mode: oz
3524 | codemirror_mime_type: text/x-oz
3525 | language_id: 270
3526 | P4:
3527 | type: programming
3528 | color: "#7055b5"
3529 | extensions:
3530 | - ".p4"
3531 | tm_scope: source.p4
3532 | ace_mode: text
3533 | language_id: 348895984
3534 | PHP:
3535 | type: programming
3536 | tm_scope: text.html.php
3537 | ace_mode: php
3538 | codemirror_mode: php
3539 | codemirror_mime_type: application/x-httpd-php
3540 | color: "#4F5D95"
3541 | extensions:
3542 | - ".php"
3543 | - ".aw"
3544 | - ".ctp"
3545 | - ".fcgi"
3546 | - ".inc"
3547 | - ".php3"
3548 | - ".php4"
3549 | - ".php5"
3550 | - ".phps"
3551 | - ".phpt"
3552 | filenames:
3553 | - ".php"
3554 | - ".php_cs"
3555 | - ".php_cs.dist"
3556 | - Phakefile
3557 | interpreters:
3558 | - php
3559 | aliases:
3560 | - inc
3561 | language_id: 272
3562 | PLSQL:
3563 | type: programming
3564 | ace_mode: sql
3565 | codemirror_mode: sql
3566 | codemirror_mime_type: text/x-plsql
3567 | tm_scope: none
3568 | color: "#dad8d8"
3569 | extensions:
3570 | - ".pls"
3571 | - ".bdy"
3572 | - ".ddl"
3573 | - ".fnc"
3574 | - ".pck"
3575 | - ".pkb"
3576 | - ".pks"
3577 | - ".plb"
3578 | - ".plsql"
3579 | - ".prc"
3580 | - ".spc"
3581 | - ".sql"
3582 | - ".tpb"
3583 | - ".tps"
3584 | - ".trg"
3585 | - ".vw"
3586 | language_id: 273
3587 | PLpgSQL:
3588 | type: programming
3589 | ace_mode: pgsql
3590 | codemirror_mode: sql
3591 | codemirror_mime_type: text/x-sql
3592 | tm_scope: source.sql
3593 | extensions:
3594 | - ".pgsql"
3595 | - ".sql"
3596 | language_id: 274
3597 | POV-Ray SDL:
3598 | type: programming
3599 | aliases:
3600 | - pov-ray
3601 | - povray
3602 | extensions:
3603 | - ".pov"
3604 | - ".inc"
3605 | ace_mode: text
3606 | language_id: 275
3607 | Pan:
3608 | type: programming
3609 | color: "#cc0000"
3610 | extensions:
3611 | - ".pan"
3612 | tm_scope: source.pan
3613 | ace_mode: text
3614 | language_id: 276
3615 | Papyrus:
3616 | type: programming
3617 | color: "#6600cc"
3618 | extensions:
3619 | - ".psc"
3620 | tm_scope: source.papyrus.skyrim
3621 | ace_mode: text
3622 | language_id: 277
3623 | Parrot:
3624 | type: programming
3625 | color: "#f3ca0a"
3626 | extensions:
3627 | - ".parrot"
3628 | tm_scope: none
3629 | ace_mode: text
3630 | language_id: 278
3631 | Parrot Assembly:
3632 | group: Parrot
3633 | type: programming
3634 | aliases:
3635 | - pasm
3636 | extensions:
3637 | - ".pasm"
3638 | interpreters:
3639 | - parrot
3640 | tm_scope: none
3641 | ace_mode: text
3642 | language_id: 279
3643 | Parrot Internal Representation:
3644 | group: Parrot
3645 | tm_scope: source.parrot.pir
3646 | type: programming
3647 | aliases:
3648 | - pir
3649 | extensions:
3650 | - ".pir"
3651 | interpreters:
3652 | - parrot
3653 | ace_mode: text
3654 | language_id: 280
3655 | Pascal:
3656 | type: programming
3657 | color: "#E3F171"
3658 | extensions:
3659 | - ".pas"
3660 | - ".dfm"
3661 | - ".dpr"
3662 | - ".inc"
3663 | - ".lpr"
3664 | - ".pascal"
3665 | - ".pp"
3666 | interpreters:
3667 | - instantfpc
3668 | ace_mode: pascal
3669 | codemirror_mode: pascal
3670 | codemirror_mime_type: text/x-pascal
3671 | language_id: 281
3672 | Pawn:
3673 | type: programming
3674 | color: "#dbb284"
3675 | extensions:
3676 | - ".pwn"
3677 | - ".inc"
3678 | - ".sma"
3679 | tm_scope: source.pawn
3680 | ace_mode: text
3681 | language_id: 271
3682 | Pep8:
3683 | type: programming
3684 | color: "#C76F5B"
3685 | extensions:
3686 | - ".pep"
3687 | ace_mode: text
3688 | tm_scope: source.pep8
3689 | language_id: 840372442
3690 | Perl:
3691 | type: programming
3692 | tm_scope: source.perl
3693 | ace_mode: perl
3694 | codemirror_mode: perl
3695 | codemirror_mime_type: text/x-perl
3696 | color: "#0298c3"
3697 | extensions:
3698 | - ".pl"
3699 | - ".al"
3700 | - ".cgi"
3701 | - ".fcgi"
3702 | - ".perl"
3703 | - ".ph"
3704 | - ".plx"
3705 | - ".pm"
3706 | - ".psgi"
3707 | - ".t"
3708 | filenames:
3709 | - Makefile.PL
3710 | - Rexfile
3711 | - ack
3712 | - cpanfile
3713 | interpreters:
3714 | - cperl
3715 | - perl
3716 | aliases:
3717 | - cperl
3718 | language_id: 282
3719 | Perl 6:
3720 | type: programming
3721 | color: "#0000fb"
3722 | extensions:
3723 | - ".6pl"
3724 | - ".6pm"
3725 | - ".nqp"
3726 | - ".p6"
3727 | - ".p6l"
3728 | - ".p6m"
3729 | - ".pl"
3730 | - ".pl6"
3731 | - ".pm"
3732 | - ".pm6"
3733 | - ".t"
3734 | interpreters:
3735 | - perl6
3736 | aliases:
3737 | - perl6
3738 | tm_scope: source.perl6fe
3739 | ace_mode: perl
3740 | codemirror_mode: perl
3741 | codemirror_mime_type: text/x-perl
3742 | language_id: 283
3743 | Pic:
3744 | type: markup
3745 | group: Roff
3746 | tm_scope: source.pic
3747 | extensions:
3748 | - ".pic"
3749 | - ".chem"
3750 | ace_mode: text
3751 | codemirror_mode: troff
3752 | codemirror_mime_type: text/troff
3753 | language_id: 425
3754 | Pickle:
3755 | type: data
3756 | extensions:
3757 | - ".pkl"
3758 | tm_scope: none
3759 | ace_mode: text
3760 | language_id: 284
3761 | PicoLisp:
3762 | type: programming
3763 | extensions:
3764 | - ".l"
3765 | interpreters:
3766 | - picolisp
3767 | - pil
3768 | tm_scope: source.lisp
3769 | ace_mode: lisp
3770 | language_id: 285
3771 | PigLatin:
3772 | type: programming
3773 | color: "#fcd7de"
3774 | extensions:
3775 | - ".pig"
3776 | tm_scope: source.pig_latin
3777 | ace_mode: text
3778 | language_id: 286
3779 | Pike:
3780 | type: programming
3781 | color: "#005390"
3782 | extensions:
3783 | - ".pike"
3784 | - ".pmod"
3785 | interpreters:
3786 | - pike
3787 | ace_mode: text
3788 | language_id: 287
3789 | Pod:
3790 | type: prose
3791 | ace_mode: perl
3792 | codemirror_mode: perl
3793 | codemirror_mime_type: text/x-perl
3794 | wrap: true
3795 | extensions:
3796 | - ".pod"
3797 | interpreters:
3798 | - perl
3799 | tm_scope: none
3800 | language_id: 288
3801 | Pod 6:
3802 | type: prose
3803 | ace_mode: perl
3804 | tm_scope: source.perl6fe
3805 | wrap: true
3806 | extensions:
3807 | - ".pod"
3808 | - ".pod6"
3809 | interpreters:
3810 | - perl6
3811 | language_id: 155357471
3812 | PogoScript:
3813 | type: programming
3814 | color: "#d80074"
3815 | extensions:
3816 | - ".pogo"
3817 | tm_scope: source.pogoscript
3818 | ace_mode: text
3819 | language_id: 289
3820 | Pony:
3821 | type: programming
3822 | extensions:
3823 | - ".pony"
3824 | tm_scope: source.pony
3825 | ace_mode: text
3826 | language_id: 290
3827 | PostCSS:
3828 | type: markup
3829 | tm_scope: source.postcss
3830 | group: CSS
3831 | extensions:
3832 | - ".pcss"
3833 | ace_mode: text
3834 | language_id: 262764437
3835 | PostScript:
3836 | type: markup
3837 | color: "#da291c"
3838 | extensions:
3839 | - ".ps"
3840 | - ".eps"
3841 | - ".pfa"
3842 | tm_scope: source.postscript
3843 | aliases:
3844 | - postscr
3845 | ace_mode: text
3846 | language_id: 291
3847 | PowerBuilder:
3848 | type: programming
3849 | color: "#8f0f8d"
3850 | extensions:
3851 | - ".pbt"
3852 | - ".sra"
3853 | - ".sru"
3854 | - ".srw"
3855 | tm_scope: none
3856 | ace_mode: text
3857 | language_id: 292
3858 | PowerShell:
3859 | type: programming
3860 | color: "#012456"
3861 | ace_mode: powershell
3862 | codemirror_mode: powershell
3863 | codemirror_mime_type: application/x-powershell
3864 | aliases:
3865 | - posh
3866 | - pwsh
3867 | extensions:
3868 | - ".ps1"
3869 | - ".psd1"
3870 | - ".psm1"
3871 | interpreters:
3872 | - pwsh
3873 | language_id: 293
3874 | Processing:
3875 | type: programming
3876 | color: "#0096D8"
3877 | extensions:
3878 | - ".pde"
3879 | ace_mode: text
3880 | language_id: 294
3881 | Prolog:
3882 | type: programming
3883 | color: "#74283c"
3884 | extensions:
3885 | - ".pl"
3886 | - ".pro"
3887 | - ".prolog"
3888 | - ".yap"
3889 | interpreters:
3890 | - swipl
3891 | - yap
3892 | tm_scope: source.prolog
3893 | ace_mode: prolog
3894 | language_id: 295
3895 | Propeller Spin:
3896 | type: programming
3897 | color: "#7fa2a7"
3898 | extensions:
3899 | - ".spin"
3900 | tm_scope: source.spin
3901 | ace_mode: text
3902 | language_id: 296
3903 | Protocol Buffer:
3904 | type: data
3905 | aliases:
3906 | - protobuf
3907 | - Protocol Buffers
3908 | extensions:
3909 | - ".proto"
3910 | tm_scope: source.protobuf
3911 | ace_mode: protobuf
3912 | codemirror_mode: protobuf
3913 | codemirror_mime_type: text/x-protobuf
3914 | language_id: 297
3915 | Public Key:
3916 | type: data
3917 | extensions:
3918 | - ".asc"
3919 | - ".pub"
3920 | tm_scope: none
3921 | ace_mode: text
3922 | codemirror_mode: asciiarmor
3923 | codemirror_mime_type: application/pgp
3924 | language_id: 298
3925 | Pug:
3926 | group: HTML
3927 | type: markup
3928 | extensions:
3929 | - ".jade"
3930 | - ".pug"
3931 | tm_scope: text.jade
3932 | ace_mode: jade
3933 | codemirror_mode: pug
3934 | codemirror_mime_type: text/x-pug
3935 | language_id: 179
3936 | Puppet:
3937 | type: programming
3938 | color: "#302B6D"
3939 | extensions:
3940 | - ".pp"
3941 | filenames:
3942 | - Modulefile
3943 | ace_mode: text
3944 | codemirror_mode: puppet
3945 | codemirror_mime_type: text/x-puppet
3946 | tm_scope: source.puppet
3947 | language_id: 299
3948 | Pure Data:
3949 | type: data
3950 | extensions:
3951 | - ".pd"
3952 | tm_scope: none
3953 | ace_mode: text
3954 | language_id: 300
3955 | PureBasic:
3956 | type: programming
3957 | color: "#5a6986"
3958 | extensions:
3959 | - ".pb"
3960 | - ".pbi"
3961 | tm_scope: none
3962 | ace_mode: text
3963 | language_id: 301
3964 | PureScript:
3965 | type: programming
3966 | color: "#1D222D"
3967 | extensions:
3968 | - ".purs"
3969 | tm_scope: source.purescript
3970 | ace_mode: haskell
3971 | codemirror_mode: haskell
3972 | codemirror_mime_type: text/x-haskell
3973 | language_id: 302
3974 | Python:
3975 | type: programming
3976 | ace_mode: python
3977 | codemirror_mode: python
3978 | codemirror_mime_type: text/x-python
3979 | color: "#3572A5"
3980 | extensions:
3981 | - ".py"
3982 | - ".bzl"
3983 | - ".cgi"
3984 | - ".fcgi"
3985 | - ".gyp"
3986 | - ".gypi"
3987 | - ".lmi"
3988 | - ".py3"
3989 | - ".pyde"
3990 | - ".pyi"
3991 | - ".pyp"
3992 | - ".pyt"
3993 | - ".pyw"
3994 | - ".rpy"
3995 | - ".spec"
3996 | - ".tac"
3997 | - ".wsgi"
3998 | - ".xpy"
3999 | filenames:
4000 | - ".gclient"
4001 | - BUCK
4002 | - BUILD
4003 | - BUILD.bazel
4004 | - DEPS
4005 | - SConscript
4006 | - SConstruct
4007 | - Snakefile
4008 | - WORKSPACE
4009 | - wscript
4010 | interpreters:
4011 | - python
4012 | - python2
4013 | - python3
4014 | aliases:
4015 | - rusthon
4016 | - python3
4017 | language_id: 303
4018 | Python console:
4019 | type: programming
4020 | group: Python
4021 | searchable: false
4022 | aliases:
4023 | - pycon
4024 | tm_scope: text.python.console
4025 | ace_mode: text
4026 | language_id: 428
4027 | Python traceback:
4028 | type: data
4029 | group: Python
4030 | searchable: false
4031 | extensions:
4032 | - ".pytb"
4033 | tm_scope: text.python.traceback
4034 | ace_mode: text
4035 | language_id: 304
4036 | QML:
4037 | type: programming
4038 | color: "#44a51c"
4039 | extensions:
4040 | - ".qml"
4041 | - ".qbs"
4042 | tm_scope: source.qml
4043 | ace_mode: text
4044 | language_id: 305
4045 | QMake:
4046 | type: programming
4047 | extensions:
4048 | - ".pro"
4049 | - ".pri"
4050 | interpreters:
4051 | - qmake
4052 | ace_mode: text
4053 | language_id: 306
4054 | Quake:
4055 | type: programming
4056 | filenames:
4057 | - m3makefile
4058 | - m3overrides
4059 | color: "#882233"
4060 | ace_mode: text
4061 | tm_scope: source.quake
4062 | language_id: 375265331
4063 | R:
4064 | type: programming
4065 | color: "#198CE7"
4066 | aliases:
4067 | - R
4068 | - Rscript
4069 | - splus
4070 | extensions:
4071 | - ".r"
4072 | - ".rd"
4073 | - ".rsx"
4074 | filenames:
4075 | - ".Rprofile"
4076 | - expr-dist
4077 | interpreters:
4078 | - Rscript
4079 | ace_mode: r
4080 | codemirror_mode: r
4081 | codemirror_mime_type: text/x-rsrc
4082 | language_id: 307
4083 | RAML:
4084 | type: markup
4085 | ace_mode: yaml
4086 | codemirror_mode: yaml
4087 | codemirror_mime_type: text/x-yaml
4088 | tm_scope: source.yaml
4089 | color: "#77d9fb"
4090 | extensions:
4091 | - ".raml"
4092 | language_id: 308
4093 | RDoc:
4094 | type: prose
4095 | ace_mode: rdoc
4096 | wrap: true
4097 | extensions:
4098 | - ".rdoc"
4099 | tm_scope: text.rdoc
4100 | language_id: 309
4101 | REALbasic:
4102 | type: programming
4103 | extensions:
4104 | - ".rbbas"
4105 | - ".rbfrm"
4106 | - ".rbmnu"
4107 | - ".rbres"
4108 | - ".rbtbar"
4109 | - ".rbuistate"
4110 | tm_scope: source.vbnet
4111 | ace_mode: text
4112 | language_id: 310
4113 | REXX:
4114 | type: programming
4115 | aliases:
4116 | - arexx
4117 | extensions:
4118 | - ".rexx"
4119 | - ".pprx"
4120 | - ".rex"
4121 | interpreters:
4122 | - regina
4123 | - rexx
4124 | tm_scope: source.rexx
4125 | ace_mode: text
4126 | language_id: 311
4127 | RHTML:
4128 | type: markup
4129 | group: HTML
4130 | extensions:
4131 | - ".rhtml"
4132 | tm_scope: text.html.erb
4133 | aliases:
4134 | - html+ruby
4135 | ace_mode: rhtml
4136 | codemirror_mode: htmlembedded
4137 | codemirror_mime_type: application/x-erb
4138 | language_id: 312
4139 | RMarkdown:
4140 | type: prose
4141 | wrap: true
4142 | ace_mode: markdown
4143 | codemirror_mode: gfm
4144 | codemirror_mime_type: text/x-gfm
4145 | extensions:
4146 | - ".rmd"
4147 | tm_scope: source.gfm
4148 | language_id: 313
4149 | RPC:
4150 | type: programming
4151 | aliases:
4152 | - rpcgen
4153 | - oncrpc
4154 | - xdr
4155 | ace_mode: c_cpp
4156 | extensions:
4157 | - ".x"
4158 | tm_scope: source.c
4159 | language_id: 1031374237
4160 | RPM Spec:
4161 | type: data
4162 | tm_scope: source.rpm-spec
4163 | extensions:
4164 | - ".spec"
4165 | aliases:
4166 | - specfile
4167 | ace_mode: text
4168 | codemirror_mode: rpm
4169 | codemirror_mime_type: text/x-rpm-spec
4170 | language_id: 314
4171 | RUNOFF:
4172 | type: markup
4173 | color: "#665a4e"
4174 | extensions:
4175 | - ".rnh"
4176 | - ".rno"
4177 | tm_scope: text.runoff
4178 | ace_mode: text
4179 | language_id: 315
4180 | Racket:
4181 | type: programming
4182 | color: "#3c5caa"
4183 | extensions:
4184 | - ".rkt"
4185 | - ".rktd"
4186 | - ".rktl"
4187 | - ".scrbl"
4188 | interpreters:
4189 | - racket
4190 | tm_scope: source.racket
4191 | ace_mode: lisp
4192 | language_id: 316
4193 | Ragel:
4194 | type: programming
4195 | color: "#9d5200"
4196 | extensions:
4197 | - ".rl"
4198 | aliases:
4199 | - ragel-rb
4200 | - ragel-ruby
4201 | tm_scope: none
4202 | ace_mode: text
4203 | language_id: 317
4204 | Rascal:
4205 | type: programming
4206 | color: "#fffaa0"
4207 | extensions:
4208 | - ".rsc"
4209 | tm_scope: source.rascal
4210 | ace_mode: text
4211 | language_id: 173616037
4212 | Raw token data:
4213 | type: data
4214 | aliases:
4215 | - raw
4216 | extensions:
4217 | - ".raw"
4218 | tm_scope: none
4219 | ace_mode: text
4220 | language_id: 318
4221 | Reason:
4222 | type: programming
4223 | group: OCaml
4224 | ace_mode: rust
4225 | codemirror_mode: rust
4226 | codemirror_mime_type: text/x-rustsrc
4227 | extensions:
4228 | - ".re"
4229 | - ".rei"
4230 | interpreters:
4231 | - ocaml
4232 | tm_scope: source.reason
4233 | language_id: 869538413
4234 | Rebol:
4235 | type: programming
4236 | color: "#358a5b"
4237 | extensions:
4238 | - ".reb"
4239 | - ".r"
4240 | - ".r2"
4241 | - ".r3"
4242 | - ".rebol"
4243 | ace_mode: text
4244 | tm_scope: source.rebol
4245 | language_id: 319
4246 | Red:
4247 | type: programming
4248 | color: "#f50000"
4249 | extensions:
4250 | - ".red"
4251 | - ".reds"
4252 | aliases:
4253 | - red/system
4254 | tm_scope: source.red
4255 | ace_mode: text
4256 | language_id: 320
4257 | Redcode:
4258 | type: programming
4259 | extensions:
4260 | - ".cw"
4261 | tm_scope: none
4262 | ace_mode: text
4263 | language_id: 321
4264 | Regular Expression:
4265 | type: data
4266 | extensions:
4267 | - ".regexp"
4268 | - ".regex"
4269 | aliases:
4270 | - regexp
4271 | - regex
4272 | ace_mode: text
4273 | tm_scope: source.regexp
4274 | language_id: 363378884
4275 | Ren'Py:
4276 | type: programming
4277 | aliases:
4278 | - renpy
4279 | color: "#ff7f7f"
4280 | extensions:
4281 | - ".rpy"
4282 | tm_scope: source.renpy
4283 | ace_mode: python
4284 | language_id: 322
4285 | RenderScript:
4286 | type: programming
4287 | extensions:
4288 | - ".rs"
4289 | - ".rsh"
4290 | tm_scope: none
4291 | ace_mode: text
4292 | language_id: 323
4293 | Rich Text Format:
4294 | type: markup
4295 | extensions:
4296 | - ".rtf"
4297 | tm_scope: text.rtf
4298 | ace_mode: text
4299 | language_id: 51601661
4300 | Ring:
4301 | type: programming
4302 | color: "#2D54CB"
4303 | extensions:
4304 | - ".ring"
4305 | tm_scope: source.ring
4306 | ace_mode: text
4307 | language_id: 431
4308 | RobotFramework:
4309 | type: programming
4310 | extensions:
4311 | - ".robot"
4312 | tm_scope: text.robot
4313 | ace_mode: text
4314 | language_id: 324
4315 | Roff:
4316 | type: markup
4317 | color: "#ecdebe"
4318 | extensions:
4319 | - ".roff"
4320 | - ".1"
4321 | - ".1in"
4322 | - ".1m"
4323 | - ".1x"
4324 | - ".2"
4325 | - ".3"
4326 | - ".3in"
4327 | - ".3m"
4328 | - ".3p"
4329 | - ".3pm"
4330 | - ".3qt"
4331 | - ".3x"
4332 | - ".4"
4333 | - ".5"
4334 | - ".6"
4335 | - ".7"
4336 | - ".8"
4337 | - ".9"
4338 | - ".l"
4339 | - ".man"
4340 | - ".mdoc"
4341 | - ".me"
4342 | - ".ms"
4343 | - ".n"
4344 | - ".nr"
4345 | - ".rno"
4346 | - ".tmac"
4347 | filenames:
4348 | - mmn
4349 | - mmt
4350 | tm_scope: text.roff
4351 | aliases:
4352 | - groff
4353 | - man
4354 | - manpage
4355 | - man page
4356 | - man-page
4357 | - mdoc
4358 | - nroff
4359 | - troff
4360 | ace_mode: text
4361 | codemirror_mode: troff
4362 | codemirror_mime_type: text/troff
4363 | language_id: 141
4364 | Roff Manpage:
4365 | type: markup
4366 | group: Roff
4367 | extensions:
4368 | - ".1"
4369 | - ".1in"
4370 | - ".1m"
4371 | - ".1x"
4372 | - ".2"
4373 | - ".3"
4374 | - ".3in"
4375 | - ".3m"
4376 | - ".3p"
4377 | - ".3pm"
4378 | - ".3qt"
4379 | - ".3x"
4380 | - ".4"
4381 | - ".5"
4382 | - ".6"
4383 | - ".7"
4384 | - ".8"
4385 | - ".9"
4386 | - ".man"
4387 | - ".mdoc"
4388 | tm_scope: text.roff
4389 | ace_mode: text
4390 | codemirror_mode: troff
4391 | codemirror_mime_type: text/troff
4392 | language_id: 612669833
4393 | Rouge:
4394 | type: programming
4395 | ace_mode: clojure
4396 | codemirror_mode: clojure
4397 | codemirror_mime_type: text/x-clojure
4398 | color: "#cc0088"
4399 | extensions:
4400 | - ".rg"
4401 | tm_scope: source.clojure
4402 | language_id: 325
4403 | Ruby:
4404 | type: programming
4405 | ace_mode: ruby
4406 | codemirror_mode: ruby
4407 | codemirror_mime_type: text/x-ruby
4408 | color: "#701516"
4409 | aliases:
4410 | - jruby
4411 | - macruby
4412 | - rake
4413 | - rb
4414 | - rbx
4415 | extensions:
4416 | - ".rb"
4417 | - ".builder"
4418 | - ".eye"
4419 | - ".fcgi"
4420 | - ".gemspec"
4421 | - ".god"
4422 | - ".jbuilder"
4423 | - ".mspec"
4424 | - ".pluginspec"
4425 | - ".podspec"
4426 | - ".rabl"
4427 | - ".rake"
4428 | - ".rbuild"
4429 | - ".rbw"
4430 | - ".rbx"
4431 | - ".ru"
4432 | - ".ruby"
4433 | - ".spec"
4434 | - ".thor"
4435 | - ".watchr"
4436 | interpreters:
4437 | - ruby
4438 | - macruby
4439 | - rake
4440 | - jruby
4441 | - rbx
4442 | filenames:
4443 | - ".irbrc"
4444 | - ".pryrc"
4445 | - Appraisals
4446 | - Berksfile
4447 | - Brewfile
4448 | - Buildfile
4449 | - Capfile
4450 | - Dangerfile
4451 | - Deliverfile
4452 | - Fastfile
4453 | - Gemfile
4454 | - Gemfile.lock
4455 | - Guardfile
4456 | - Jarfile
4457 | - Mavenfile
4458 | - Podfile
4459 | - Puppetfile
4460 | - Rakefile
4461 | - Snapfile
4462 | - Thorfile
4463 | - Vagrantfile
4464 | - buildfile
4465 | language_id: 326
4466 | Rust:
4467 | type: programming
4468 | color: "#dea584"
4469 | extensions:
4470 | - ".rs"
4471 | - ".rs.in"
4472 | ace_mode: rust
4473 | codemirror_mode: rust
4474 | codemirror_mime_type: text/x-rustsrc
4475 | language_id: 327
4476 | SAS:
4477 | type: programming
4478 | color: "#B34936"
4479 | extensions:
4480 | - ".sas"
4481 | tm_scope: source.sas
4482 | ace_mode: text
4483 | codemirror_mode: sas
4484 | codemirror_mime_type: text/x-sas
4485 | language_id: 328
4486 | SCSS:
4487 | type: markup
4488 | tm_scope: source.css.scss
4489 | group: CSS
4490 | ace_mode: scss
4491 | codemirror_mode: css
4492 | codemirror_mime_type: text/x-scss
4493 | extensions:
4494 | - ".scss"
4495 | language_id: 329
4496 | SMT:
4497 | type: programming
4498 | extensions:
4499 | - ".smt2"
4500 | - ".smt"
4501 | interpreters:
4502 | - boolector
4503 | - cvc4
4504 | - mathsat5
4505 | - opensmt
4506 | - smtinterpol
4507 | - smt-rat
4508 | - stp
4509 | - verit
4510 | - yices2
4511 | - z3
4512 | tm_scope: source.smt
4513 | ace_mode: text
4514 | language_id: 330
4515 | SPARQL:
4516 | type: data
4517 | tm_scope: source.sparql
4518 | ace_mode: text
4519 | codemirror_mode: sparql
4520 | codemirror_mime_type: application/sparql-query
4521 | extensions:
4522 | - ".sparql"
4523 | - ".rq"
4524 | language_id: 331
4525 | SQF:
4526 | type: programming
4527 | color: "#3F3F3F"
4528 | extensions:
4529 | - ".sqf"
4530 | - ".hqf"
4531 | tm_scope: source.sqf
4532 | ace_mode: text
4533 | language_id: 332
4534 | SQL:
4535 | type: data
4536 | tm_scope: source.sql
4537 | ace_mode: sql
4538 | codemirror_mode: sql
4539 | codemirror_mime_type: text/x-sql
4540 | extensions:
4541 | - ".sql"
4542 | - ".cql"
4543 | - ".ddl"
4544 | - ".inc"
4545 | - ".mysql"
4546 | - ".prc"
4547 | - ".tab"
4548 | - ".udf"
4549 | - ".viw"
4550 | language_id: 333
4551 | SQLPL:
4552 | type: programming
4553 | ace_mode: sql
4554 | codemirror_mode: sql
4555 | codemirror_mime_type: text/x-sql
4556 | tm_scope: source.sql
4557 | extensions:
4558 | - ".sql"
4559 | - ".db2"
4560 | language_id: 334
4561 | SRecode Template:
4562 | type: markup
4563 | color: "#348a34"
4564 | tm_scope: source.lisp
4565 | ace_mode: lisp
4566 | codemirror_mode: commonlisp
4567 | codemirror_mime_type: text/x-common-lisp
4568 | extensions:
4569 | - ".srt"
4570 | language_id: 335
4571 | SSH Config:
4572 | type: data
4573 | group: INI
4574 | filenames:
4575 | - ssh-config
4576 | - ssh_config
4577 | - sshconfig
4578 | - sshconfig.snip
4579 | - sshd-config
4580 | - sshd_config
4581 | ace_mode: text
4582 | tm_scope: source.ssh-config
4583 | language_id: 554920715
4584 | STON:
4585 | type: data
4586 | group: Smalltalk
4587 | extensions:
4588 | - ".ston"
4589 | tm_scope: source.smalltalk
4590 | ace_mode: text
4591 | language_id: 336
4592 | SVG:
4593 | type: data
4594 | extensions:
4595 | - ".svg"
4596 | tm_scope: text.xml
4597 | ace_mode: xml
4598 | codemirror_mode: xml
4599 | codemirror_mime_type: text/xml
4600 | language_id: 337
4601 | Sage:
4602 | type: programming
4603 | group: Python
4604 | extensions:
4605 | - ".sage"
4606 | - ".sagews"
4607 | tm_scope: source.python
4608 | ace_mode: python
4609 | codemirror_mode: python
4610 | codemirror_mime_type: text/x-python
4611 | language_id: 338
4612 | SaltStack:
4613 | type: programming
4614 | color: "#646464"
4615 | aliases:
4616 | - saltstate
4617 | - salt
4618 | extensions:
4619 | - ".sls"
4620 | tm_scope: source.yaml.salt
4621 | ace_mode: yaml
4622 | codemirror_mode: yaml
4623 | codemirror_mime_type: text/x-yaml
4624 | language_id: 339
4625 | Sass:
4626 | type: markup
4627 | tm_scope: source.sass
4628 | group: CSS
4629 | extensions:
4630 | - ".sass"
4631 | ace_mode: sass
4632 | codemirror_mode: sass
4633 | codemirror_mime_type: text/x-sass
4634 | language_id: 340
4635 | Scala:
4636 | type: programming
4637 | ace_mode: scala
4638 | codemirror_mode: clike
4639 | codemirror_mime_type: text/x-scala
4640 | color: "#c22d40"
4641 | extensions:
4642 | - ".scala"
4643 | - ".kojo"
4644 | - ".sbt"
4645 | - ".sc"
4646 | interpreters:
4647 | - scala
4648 | language_id: 341
4649 | Scaml:
4650 | group: HTML
4651 | type: markup
4652 | extensions:
4653 | - ".scaml"
4654 | tm_scope: source.scaml
4655 | ace_mode: text
4656 | language_id: 342
4657 | Scheme:
4658 | type: programming
4659 | color: "#1e4aec"
4660 | extensions:
4661 | - ".scm"
4662 | - ".sch"
4663 | - ".sld"
4664 | - ".sls"
4665 | - ".sps"
4666 | - ".ss"
4667 | interpreters:
4668 | - scheme
4669 | - guile
4670 | - bigloo
4671 | - chicken
4672 | - csi
4673 | - gosh
4674 | - r6rs
4675 | ace_mode: scheme
4676 | codemirror_mode: scheme
4677 | codemirror_mime_type: text/x-scheme
4678 | language_id: 343
4679 | Scilab:
4680 | type: programming
4681 | extensions:
4682 | - ".sci"
4683 | - ".sce"
4684 | - ".tst"
4685 | ace_mode: text
4686 | language_id: 344
4687 | Self:
4688 | type: programming
4689 | color: "#0579aa"
4690 | extensions:
4691 | - ".self"
4692 | tm_scope: none
4693 | ace_mode: text
4694 | language_id: 345
4695 | ShaderLab:
4696 | type: programming
4697 | extensions:
4698 | - ".shader"
4699 | ace_mode: text
4700 | tm_scope: source.shaderlab
4701 | language_id: 664257356
4702 | Shell:
4703 | type: programming
4704 | color: "#89e051"
4705 | aliases:
4706 | - sh
4707 | - shell-script
4708 | - bash
4709 | - zsh
4710 | extensions:
4711 | - ".sh"
4712 | - ".bash"
4713 | - ".bats"
4714 | - ".cgi"
4715 | - ".command"
4716 | - ".fcgi"
4717 | - ".ksh"
4718 | - ".sh.in"
4719 | - ".tmux"
4720 | - ".tool"
4721 | - ".zsh"
4722 | filenames:
4723 | - ".bash_aliases"
4724 | - ".bash_history"
4725 | - ".bash_logout"
4726 | - ".bash_profile"
4727 | - ".bashrc"
4728 | - ".cshrc"
4729 | - ".login"
4730 | - ".profile"
4731 | - ".zlogin"
4732 | - ".zlogout"
4733 | - ".zprofile"
4734 | - ".zshenv"
4735 | - ".zshrc"
4736 | - 9fs
4737 | - PKGBUILD
4738 | - bash_aliases
4739 | - bash_logout
4740 | - bash_profile
4741 | - bashrc
4742 | - cshrc
4743 | - gradlew
4744 | - login
4745 | - man
4746 | - profile
4747 | - zlogin
4748 | - zlogout
4749 | - zprofile
4750 | - zshenv
4751 | - zshrc
4752 | interpreters:
4753 | - ash
4754 | - bash
4755 | - dash
4756 | - ksh
4757 | - mksh
4758 | - pdksh
4759 | - rc
4760 | - sh
4761 | - zsh
4762 | ace_mode: sh
4763 | codemirror_mode: shell
4764 | codemirror_mime_type: text/x-sh
4765 | language_id: 346
4766 | ShellSession:
4767 | type: programming
4768 | extensions:
4769 | - ".sh-session"
4770 | aliases:
4771 | - bash session
4772 | - console
4773 | tm_scope: text.shell-session
4774 | ace_mode: sh
4775 | codemirror_mode: shell
4776 | codemirror_mime_type: text/x-sh
4777 | language_id: 347
4778 | Shen:
4779 | type: programming
4780 | color: "#120F14"
4781 | extensions:
4782 | - ".shen"
4783 | tm_scope: source.shen
4784 | ace_mode: text
4785 | language_id: 348
4786 | Slash:
4787 | type: programming
4788 | color: "#007eff"
4789 | extensions:
4790 | - ".sl"
4791 | tm_scope: text.html.slash
4792 | ace_mode: text
4793 | language_id: 349
4794 | Slice:
4795 | type: programming
4796 | color: "#003fa2"
4797 | tm_scope: source.slice
4798 | ace_mode: text
4799 | extensions:
4800 | - ".ice"
4801 | language_id: 894641667
4802 | Slim:
4803 | group: HTML
4804 | type: markup
4805 | extensions:
4806 | - ".slim"
4807 | tm_scope: text.slim
4808 | ace_mode: text
4809 | codemirror_mode: slim
4810 | codemirror_mime_type: text/x-slim
4811 | language_id: 350
4812 | Smali:
4813 | type: programming
4814 | extensions:
4815 | - ".smali"
4816 | ace_mode: text
4817 | tm_scope: source.smali
4818 | language_id: 351
4819 | Smalltalk:
4820 | type: programming
4821 | color: "#596706"
4822 | extensions:
4823 | - ".st"
4824 | - ".cs"
4825 | aliases:
4826 | - squeak
4827 | ace_mode: text
4828 | codemirror_mode: smalltalk
4829 | codemirror_mime_type: text/x-stsrc
4830 | language_id: 352
4831 | Smarty:
4832 | type: programming
4833 | extensions:
4834 | - ".tpl"
4835 | ace_mode: smarty
4836 | codemirror_mode: smarty
4837 | codemirror_mime_type: text/x-smarty
4838 | tm_scope: text.html.smarty
4839 | language_id: 353
4840 | Solidity:
4841 | type: programming
4842 | color: "#AA6746"
4843 | ace_mode: text
4844 | tm_scope: source.solidity
4845 | language_id: 237469032
4846 | SourcePawn:
4847 | type: programming
4848 | color: "#5c7611"
4849 | aliases:
4850 | - sourcemod
4851 | extensions:
4852 | - ".sp"
4853 | - ".inc"
4854 | tm_scope: source.sp
4855 | ace_mode: text
4856 | language_id: 354
4857 | Spline Font Database:
4858 | type: data
4859 | extensions:
4860 | - ".sfd"
4861 | tm_scope: text.sfd
4862 | ace_mode: yaml
4863 | language_id: 767169629
4864 | Squirrel:
4865 | type: programming
4866 | color: "#800000"
4867 | extensions:
4868 | - ".nut"
4869 | tm_scope: source.c++
4870 | ace_mode: c_cpp
4871 | codemirror_mode: clike
4872 | codemirror_mime_type: text/x-c++src
4873 | language_id: 355
4874 | Stan:
4875 | type: programming
4876 | color: "#b2011d"
4877 | extensions:
4878 | - ".stan"
4879 | ace_mode: text
4880 | tm_scope: source.stan
4881 | language_id: 356
4882 | Standard ML:
4883 | type: programming
4884 | color: "#dc566d"
4885 | aliases:
4886 | - sml
4887 | extensions:
4888 | - ".ML"
4889 | - ".fun"
4890 | - ".sig"
4891 | - ".sml"
4892 | tm_scope: source.ml
4893 | ace_mode: text
4894 | codemirror_mode: mllike
4895 | codemirror_mime_type: text/x-ocaml
4896 | language_id: 357
4897 | Stata:
4898 | type: programming
4899 | extensions:
4900 | - ".do"
4901 | - ".ado"
4902 | - ".doh"
4903 | - ".ihlp"
4904 | - ".mata"
4905 | - ".matah"
4906 | - ".sthlp"
4907 | ace_mode: text
4908 | language_id: 358
4909 | Stylus:
4910 | type: markup
4911 | group: CSS
4912 | extensions:
4913 | - ".styl"
4914 | tm_scope: source.stylus
4915 | ace_mode: stylus
4916 | language_id: 359
4917 | SubRip Text:
4918 | type: data
4919 | extensions:
4920 | - ".srt"
4921 | ace_mode: text
4922 | tm_scope: text.srt
4923 | language_id: 360
4924 | SugarSS:
4925 | type: markup
4926 | tm_scope: source.css.postcss.sugarss
4927 | group: CSS
4928 | extensions:
4929 | - ".sss"
4930 | ace_mode: text
4931 | language_id: 826404698
4932 | SuperCollider:
4933 | type: programming
4934 | color: "#46390b"
4935 | extensions:
4936 | - ".sc"
4937 | - ".scd"
4938 | interpreters:
4939 | - sclang
4940 | - scsynth
4941 | tm_scope: source.supercollider
4942 | ace_mode: text
4943 | language_id: 361
4944 | Svelte:
4945 | type: markup
4946 | tm_scope: source.svelte
4947 | group: HTML
4948 | ace_mode: html
4949 | codemirror_mode: htmlmixed
4950 | codemirror_mime_type: text/html
4951 | extensions:
4952 | - ".svelte"
4953 | language_id: 928734530
4954 | Swift:
4955 | type: programming
4956 | color: "#ffac45"
4957 | extensions:
4958 | - ".swift"
4959 | ace_mode: text
4960 | codemirror_mode: swift
4961 | codemirror_mime_type: text/x-swift
4962 | language_id: 362
4963 | SystemVerilog:
4964 | type: programming
4965 | color: "#DAE1C2"
4966 | extensions:
4967 | - ".sv"
4968 | - ".svh"
4969 | - ".vh"
4970 | ace_mode: verilog
4971 | codemirror_mode: verilog
4972 | codemirror_mime_type: text/x-systemverilog
4973 | language_id: 363
4974 | TI Program:
4975 | type: programming
4976 | ace_mode: text
4977 | color: "#A0AA87"
4978 | extensions:
4979 | - ".8xp"
4980 | - ".8xk"
4981 | - ".8xk.txt"
4982 | - ".8xp.txt"
4983 | language_id: 422
4984 | tm_scope: none
4985 | TLA:
4986 | type: programming
4987 | extensions:
4988 | - ".tla"
4989 | tm_scope: source.tla
4990 | ace_mode: text
4991 | language_id: 364
4992 | TOML:
4993 | type: data
4994 | extensions:
4995 | - ".toml"
4996 | filenames:
4997 | - Cargo.lock
4998 | - Gopkg.lock
4999 | tm_scope: source.toml
5000 | ace_mode: toml
5001 | codemirror_mode: toml
5002 | codemirror_mime_type: text/x-toml
5003 | language_id: 365
5004 | TSQL:
5005 | type: programming
5006 | extensions:
5007 | - ".sql"
5008 | ace_mode: sql
5009 | tm_scope: source.tsql
5010 | language_id: 918334941
5011 | TSX:
5012 | type: programming
5013 | group: TypeScript
5014 | extensions:
5015 | - ".tsx"
5016 | tm_scope: source.tsx
5017 | ace_mode: javascript
5018 | codemirror_mode: jsx
5019 | codemirror_mime_type: text/jsx
5020 | language_id: 94901924
5021 | TXL:
5022 | type: programming
5023 | extensions:
5024 | - ".txl"
5025 | tm_scope: source.txl
5026 | ace_mode: text
5027 | language_id: 366
5028 | Tcl:
5029 | type: programming
5030 | color: "#e4cc98"
5031 | extensions:
5032 | - ".tcl"
5033 | - ".adp"
5034 | - ".tm"
5035 | filenames:
5036 | - owh
5037 | - starfield
5038 | interpreters:
5039 | - tclsh
5040 | - wish
5041 | ace_mode: tcl
5042 | codemirror_mode: tcl
5043 | codemirror_mime_type: text/x-tcl
5044 | language_id: 367
5045 | Tcsh:
5046 | type: programming
5047 | group: Shell
5048 | extensions:
5049 | - ".tcsh"
5050 | - ".csh"
5051 | tm_scope: source.shell
5052 | ace_mode: sh
5053 | codemirror_mode: shell
5054 | codemirror_mime_type: text/x-sh
5055 | language_id: 368
5056 | TeX:
5057 | type: markup
5058 | color: "#3D6117"
5059 | ace_mode: tex
5060 | codemirror_mode: stex
5061 | codemirror_mime_type: text/x-stex
5062 | wrap: true
5063 | aliases:
5064 | - latex
5065 | extensions:
5066 | - ".tex"
5067 | - ".aux"
5068 | - ".bbx"
5069 | - ".bib"
5070 | - ".cbx"
5071 | - ".cls"
5072 | - ".dtx"
5073 | - ".ins"
5074 | - ".lbx"
5075 | - ".ltx"
5076 | - ".mkii"
5077 | - ".mkiv"
5078 | - ".mkvi"
5079 | - ".sty"
5080 | - ".toc"
5081 | language_id: 369
5082 | Tea:
5083 | type: markup
5084 | extensions:
5085 | - ".tea"
5086 | tm_scope: source.tea
5087 | ace_mode: text
5088 | language_id: 370
5089 | Terra:
5090 | type: programming
5091 | extensions:
5092 | - ".t"
5093 | color: "#00004c"
5094 | ace_mode: lua
5095 | codemirror_mode: lua
5096 | codemirror_mime_type: text/x-lua
5097 | interpreters:
5098 | - lua
5099 | language_id: 371
5100 | Text:
5101 | type: prose
5102 | wrap: true
5103 | aliases:
5104 | - fundamental
5105 | extensions:
5106 | - ".txt"
5107 | - ".fr"
5108 | - ".nb"
5109 | - ".ncl"
5110 | - ".no"
5111 | filenames:
5112 | - COPYING
5113 | - COPYING.regex
5114 | - COPYRIGHT.regex
5115 | - FONTLOG
5116 | - INSTALL
5117 | - INSTALL.mysql
5118 | - LICENSE
5119 | - LICENSE.mysql
5120 | - NEWS
5121 | - README.1ST
5122 | - README.me
5123 | - README.mysql
5124 | - click.me
5125 | - delete.me
5126 | - go.mod
5127 | - go.sum
5128 | - keep.me
5129 | - read.me
5130 | - readme.1st
5131 | - test.me
5132 | tm_scope: none
5133 | ace_mode: text
5134 | language_id: 372
5135 | Textile:
5136 | type: prose
5137 | ace_mode: textile
5138 | codemirror_mode: textile
5139 | codemirror_mime_type: text/x-textile
5140 | wrap: true
5141 | extensions:
5142 | - ".textile"
5143 | tm_scope: none
5144 | language_id: 373
5145 | Thrift:
5146 | type: programming
5147 | tm_scope: source.thrift
5148 | extensions:
5149 | - ".thrift"
5150 | ace_mode: text
5151 | language_id: 374
5152 | Turing:
5153 | type: programming
5154 | color: "#cf142b"
5155 | extensions:
5156 | - ".t"
5157 | - ".tu"
5158 | tm_scope: source.turing
5159 | ace_mode: text
5160 | language_id: 375
5161 | Turtle:
5162 | type: data
5163 | extensions:
5164 | - ".ttl"
5165 | tm_scope: source.turtle
5166 | ace_mode: text
5167 | codemirror_mode: turtle
5168 | codemirror_mime_type: text/turtle
5169 | language_id: 376
5170 | Twig:
5171 | type: markup
5172 | group: HTML
5173 | extensions:
5174 | - ".twig"
5175 | tm_scope: text.html.twig
5176 | ace_mode: twig
5177 | codemirror_mode: twig
5178 | codemirror_mime_type: text/x-twig
5179 | language_id: 377
5180 | Type Language:
5181 | type: data
5182 | aliases:
5183 | - tl
5184 | extensions:
5185 | - ".tl"
5186 | tm_scope: source.tl
5187 | ace_mode: text
5188 | language_id: 632765617
5189 | TypeScript:
5190 | type: programming
5191 | color: "#2b7489"
5192 | aliases:
5193 | - ts
5194 | interpreters:
5195 | - deno
5196 | - ts-node
5197 | extensions:
5198 | - ".ts"
5199 | tm_scope: source.ts
5200 | ace_mode: typescript
5201 | codemirror_mode: javascript
5202 | codemirror_mime_type: application/typescript
5203 | language_id: 378
5204 | Unified Parallel C:
5205 | type: programming
5206 | group: C
5207 | ace_mode: c_cpp
5208 | codemirror_mode: clike
5209 | codemirror_mime_type: text/x-csrc
5210 | extensions:
5211 | - ".upc"
5212 | tm_scope: source.c
5213 | language_id: 379
5214 | Unity3D Asset:
5215 | type: data
5216 | ace_mode: yaml
5217 | codemirror_mode: yaml
5218 | codemirror_mime_type: text/x-yaml
5219 | extensions:
5220 | - ".anim"
5221 | - ".asset"
5222 | - ".mat"
5223 | - ".meta"
5224 | - ".prefab"
5225 | - ".unity"
5226 | tm_scope: source.yaml
5227 | language_id: 380
5228 | Unix Assembly:
5229 | type: programming
5230 | group: Assembly
5231 | extensions:
5232 | - ".s"
5233 | - ".ms"
5234 | tm_scope: source.x86
5235 | ace_mode: assembly_x86
5236 | language_id: 120
5237 | Uno:
5238 | type: programming
5239 | extensions:
5240 | - ".uno"
5241 | ace_mode: csharp
5242 | codemirror_mode: clike
5243 | codemirror_mime_type: text/x-csharp
5244 | tm_scope: source.cs
5245 | language_id: 381
5246 | UnrealScript:
5247 | type: programming
5248 | color: "#a54c4d"
5249 | extensions:
5250 | - ".uc"
5251 | tm_scope: source.java
5252 | ace_mode: java
5253 | codemirror_mode: clike
5254 | codemirror_mime_type: text/x-java
5255 | language_id: 382
5256 | UrWeb:
5257 | type: programming
5258 | aliases:
5259 | - Ur/Web
5260 | - Ur
5261 | extensions:
5262 | - ".ur"
5263 | - ".urs"
5264 | tm_scope: source.ur
5265 | ace_mode: text
5266 | language_id: 383
5267 | VCL:
5268 | type: programming
5269 | color: "#148AA8"
5270 | extensions:
5271 | - ".vcl"
5272 | tm_scope: source.varnish.vcl
5273 | ace_mode: text
5274 | language_id: 384
5275 | VHDL:
5276 | type: programming
5277 | color: "#adb2cb"
5278 | extensions:
5279 | - ".vhdl"
5280 | - ".vhd"
5281 | - ".vhf"
5282 | - ".vhi"
5283 | - ".vho"
5284 | - ".vhs"
5285 | - ".vht"
5286 | - ".vhw"
5287 | ace_mode: vhdl
5288 | codemirror_mode: vhdl
5289 | codemirror_mime_type: text/x-vhdl
5290 | language_id: 385
5291 | Vala:
5292 | type: programming
5293 | color: "#fbe5cd"
5294 | extensions:
5295 | - ".vala"
5296 | - ".vapi"
5297 | ace_mode: vala
5298 | language_id: 386
5299 | Verilog:
5300 | type: programming
5301 | color: "#b2b7f8"
5302 | extensions:
5303 | - ".v"
5304 | - ".veo"
5305 | ace_mode: verilog
5306 | codemirror_mode: verilog
5307 | codemirror_mime_type: text/x-verilog
5308 | language_id: 387
5309 | Vim script:
5310 | type: programming
5311 | color: "#199f4b"
5312 | tm_scope: source.viml
5313 | aliases:
5314 | - vim
5315 | - viml
5316 | - nvim
5317 | extensions:
5318 | - ".vim"
5319 | - ".vba"
5320 | - ".vmb"
5321 | filenames:
5322 | - ".gvimrc"
5323 | - ".nvimrc"
5324 | - ".vimrc"
5325 | - _vimrc
5326 | - gvimrc
5327 | - nvimrc
5328 | - vimrc
5329 | ace_mode: text
5330 | language_id: 388
5331 | Visual Basic:
5332 | type: programming
5333 | color: "#945db7"
5334 | extensions:
5335 | - ".vb"
5336 | - ".bas"
5337 | - ".cls"
5338 | - ".frm"
5339 | - ".frx"
5340 | - ".vba"
5341 | - ".vbhtml"
5342 | - ".vbs"
5343 | tm_scope: source.vbnet
5344 | aliases:
5345 | - vb.net
5346 | - vbnet
5347 | ace_mode: text
5348 | codemirror_mode: vb
5349 | codemirror_mime_type: text/x-vb
5350 | language_id: 389
5351 | Volt:
5352 | type: programming
5353 | color: "#1F1F1F"
5354 | extensions:
5355 | - ".volt"
5356 | tm_scope: source.d
5357 | ace_mode: d
5358 | codemirror_mode: d
5359 | codemirror_mime_type: text/x-d
5360 | language_id: 390
5361 | Vue:
5362 | type: markup
5363 | color: "#2c3e50"
5364 | extensions:
5365 | - ".vue"
5366 | tm_scope: text.html.vue
5367 | ace_mode: html
5368 | language_id: 391
5369 | Wavefront Material:
5370 | type: data
5371 | extensions:
5372 | - ".mtl"
5373 | tm_scope: source.wavefront.mtl
5374 | ace_mode: text
5375 | language_id: 392
5376 | Wavefront Object:
5377 | type: data
5378 | extensions:
5379 | - ".obj"
5380 | tm_scope: source.wavefront.obj
5381 | ace_mode: text
5382 | language_id: 393
5383 | Web Ontology Language:
5384 | type: data
5385 | extensions:
5386 | - ".owl"
5387 | tm_scope: text.xml
5388 | ace_mode: xml
5389 | language_id: 394
5390 | WebAssembly:
5391 | type: programming
5392 | color: "#04133b"
5393 | extensions:
5394 | - ".wast"
5395 | - ".wat"
5396 | aliases:
5397 | - wast
5398 | - wasm
5399 | tm_scope: source.webassembly
5400 | ace_mode: lisp
5401 | codemirror_mode: commonlisp
5402 | codemirror_mime_type: text/x-common-lisp
5403 | language_id: 956556503
5404 | WebIDL:
5405 | type: programming
5406 | extensions:
5407 | - ".webidl"
5408 | tm_scope: source.webidl
5409 | ace_mode: text
5410 | codemirror_mode: webidl
5411 | codemirror_mime_type: text/x-webidl
5412 | language_id: 395
5413 | WebVTT:
5414 | type: data
5415 | wrap: true
5416 | extensions:
5417 | - ".vtt"
5418 | tm_scope: source.vtt
5419 | ace_mode: text
5420 | language_id: 658679714
5421 | Windows Registry Entries:
5422 | type: data
5423 | extensions:
5424 | - ".reg"
5425 | tm_scope: source.reg
5426 | ace_mode: ini
5427 | codemirror_mode: properties
5428 | codemirror_mime_type: text/x-properties
5429 | language_id: 969674868
5430 | Wollok:
5431 | type: programming
5432 | color: "#a23738"
5433 | extensions:
5434 | - ".wlk"
5435 | ace_mode: text
5436 | tm_scope: source.wollok
5437 | language_id: 632745969
5438 | World of Warcraft Addon Data:
5439 | type: data
5440 | extensions:
5441 | - ".toc"
5442 | tm_scope: source.toc
5443 | ace_mode: text
5444 | language_id: 396
5445 | X BitMap:
5446 | type: data
5447 | group: C
5448 | aliases:
5449 | - xbm
5450 | extensions:
5451 | - ".xbm"
5452 | ace_mode: c_cpp
5453 | tm_scope: source.c
5454 | codemirror_mode: clike
5455 | codemirror_mime_type: text/x-csrc
5456 | language_id: 782911107
5457 | X Font Directory Index:
5458 | type: data
5459 | filenames:
5460 | - encodings.dir
5461 | - fonts.alias
5462 | - fonts.dir
5463 | - fonts.scale
5464 | tm_scope: source.fontdir
5465 | ace_mode: text
5466 | language_id: 208700028
5467 | X PixMap:
5468 | type: data
5469 | group: C
5470 | aliases:
5471 | - xpm
5472 | extensions:
5473 | - ".xpm"
5474 | - ".pm"
5475 | ace_mode: c_cpp
5476 | tm_scope: source.c
5477 | codemirror_mode: clike
5478 | codemirror_mime_type: text/x-csrc
5479 | language_id: 781846279
5480 | X10:
5481 | type: programming
5482 | aliases:
5483 | - xten
5484 | ace_mode: text
5485 | extensions:
5486 | - ".x10"
5487 | color: "#4B6BEF"
5488 | tm_scope: source.x10
5489 | language_id: 397
5490 | XC:
5491 | type: programming
5492 | color: "#99DA07"
5493 | extensions:
5494 | - ".xc"
5495 | tm_scope: source.xc
5496 | ace_mode: c_cpp
5497 | codemirror_mode: clike
5498 | codemirror_mime_type: text/x-csrc
5499 | language_id: 398
5500 | XCompose:
5501 | type: data
5502 | filenames:
5503 | - ".XCompose"
5504 | - XCompose
5505 | - xcompose
5506 | tm_scope: config.xcompose
5507 | ace_mode: text
5508 | language_id: 225167241
5509 | XML:
5510 | type: data
5511 | ace_mode: xml
5512 | codemirror_mode: xml
5513 | codemirror_mime_type: text/xml
5514 | aliases:
5515 | - rss
5516 | - xsd
5517 | - wsdl
5518 | extensions:
5519 | - ".xml"
5520 | - ".adml"
5521 | - ".admx"
5522 | - ".ant"
5523 | - ".axml"
5524 | - ".builds"
5525 | - ".ccproj"
5526 | - ".ccxml"
5527 | - ".clixml"
5528 | - ".cproject"
5529 | - ".cscfg"
5530 | - ".csdef"
5531 | - ".csl"
5532 | - ".csproj"
5533 | - ".ct"
5534 | - ".depproj"
5535 | - ".dita"
5536 | - ".ditamap"
5537 | - ".ditaval"
5538 | - ".dll.config"
5539 | - ".dotsettings"
5540 | - ".filters"
5541 | - ".fsproj"
5542 | - ".fxml"
5543 | - ".glade"
5544 | - ".gml"
5545 | - ".gmx"
5546 | - ".grxml"
5547 | - ".iml"
5548 | - ".ivy"
5549 | - ".jelly"
5550 | - ".jsproj"
5551 | - ".kml"
5552 | - ".launch"
5553 | - ".mdpolicy"
5554 | - ".mjml"
5555 | - ".mm"
5556 | - ".mod"
5557 | - ".mxml"
5558 | - ".natvis"
5559 | - ".ncl"
5560 | - ".ndproj"
5561 | - ".nproj"
5562 | - ".nuspec"
5563 | - ".odd"
5564 | - ".osm"
5565 | - ".pkgproj"
5566 | - ".plist"
5567 | - ".pluginspec"
5568 | - ".proj"
5569 | - ".props"
5570 | - ".ps1xml"
5571 | - ".psc1"
5572 | - ".pt"
5573 | - ".rdf"
5574 | - ".resx"
5575 | - ".rss"
5576 | - ".sch"
5577 | - ".scxml"
5578 | - ".sfproj"
5579 | - ".shproj"
5580 | - ".srdf"
5581 | - ".storyboard"
5582 | - ".stTheme"
5583 | - ".sublime-snippet"
5584 | - ".targets"
5585 | - ".tmCommand"
5586 | - ".tml"
5587 | - ".tmLanguage"
5588 | - ".tmPreferences"
5589 | - ".tmSnippet"
5590 | - ".tmTheme"
5591 | - ".ts"
5592 | - ".tsx"
5593 | - ".ui"
5594 | - ".urdf"
5595 | - ".ux"
5596 | - ".vbproj"
5597 | - ".vcxproj"
5598 | - ".vsixmanifest"
5599 | - ".vssettings"
5600 | - ".vstemplate"
5601 | - ".vxml"
5602 | - ".wixproj"
5603 | - ".workflow"
5604 | - ".wsdl"
5605 | - ".wsf"
5606 | - ".wxi"
5607 | - ".wxl"
5608 | - ".wxs"
5609 | - ".x3d"
5610 | - ".xacro"
5611 | - ".xaml"
5612 | - ".xib"
5613 | - ".xlf"
5614 | - ".xliff"
5615 | - ".xmi"
5616 | - ".xml.dist"
5617 | - ".xproj"
5618 | - ".xsd"
5619 | - ".xspec"
5620 | - ".xul"
5621 | - ".zcml"
5622 | filenames:
5623 | - ".classpath"
5624 | - ".cproject"
5625 | - ".project"
5626 | - App.config
5627 | - NuGet.config
5628 | - Settings.StyleCop
5629 | - Web.Debug.config
5630 | - Web.Release.config
5631 | - Web.config
5632 | - packages.config
5633 | language_id: 399
5634 | XPages:
5635 | type: data
5636 | extensions:
5637 | - ".xsp-config"
5638 | - ".xsp.metadata"
5639 | tm_scope: text.xml
5640 | ace_mode: xml
5641 | codemirror_mode: xml
5642 | codemirror_mime_type: text/xml
5643 | language_id: 400
5644 | XProc:
5645 | type: programming
5646 | extensions:
5647 | - ".xpl"
5648 | - ".xproc"
5649 | tm_scope: text.xml
5650 | ace_mode: xml
5651 | codemirror_mode: xml
5652 | codemirror_mime_type: text/xml
5653 | language_id: 401
5654 | XQuery:
5655 | type: programming
5656 | color: "#5232e7"
5657 | extensions:
5658 | - ".xquery"
5659 | - ".xq"
5660 | - ".xql"
5661 | - ".xqm"
5662 | - ".xqy"
5663 | ace_mode: xquery
5664 | codemirror_mode: xquery
5665 | codemirror_mime_type: application/xquery
5666 | tm_scope: source.xq
5667 | language_id: 402
5668 | XS:
5669 | type: programming
5670 | extensions:
5671 | - ".xs"
5672 | tm_scope: source.c
5673 | ace_mode: c_cpp
5674 | codemirror_mode: clike
5675 | codemirror_mime_type: text/x-csrc
5676 | language_id: 403
5677 | XSLT:
5678 | type: programming
5679 | aliases:
5680 | - xsl
5681 | extensions:
5682 | - ".xslt"
5683 | - ".xsl"
5684 | tm_scope: text.xml.xsl
5685 | ace_mode: xml
5686 | codemirror_mode: xml
5687 | codemirror_mime_type: text/xml
5688 | color: "#EB8CEB"
5689 | language_id: 404
5690 | Xojo:
5691 | type: programming
5692 | extensions:
5693 | - ".xojo_code"
5694 | - ".xojo_menu"
5695 | - ".xojo_report"
5696 | - ".xojo_script"
5697 | - ".xojo_toolbar"
5698 | - ".xojo_window"
5699 | tm_scope: source.xojo
5700 | ace_mode: text
5701 | language_id: 405
5702 | Xtend:
5703 | type: programming
5704 | extensions:
5705 | - ".xtend"
5706 | ace_mode: text
5707 | language_id: 406
5708 | YAML:
5709 | type: data
5710 | tm_scope: source.yaml
5711 | aliases:
5712 | - yml
5713 | extensions:
5714 | - ".yml"
5715 | - ".mir"
5716 | - ".reek"
5717 | - ".rviz"
5718 | - ".sublime-syntax"
5719 | - ".syntax"
5720 | - ".yaml"
5721 | - ".yaml-tmlanguage"
5722 | - ".yml.mysql"
5723 | filenames:
5724 | - ".clang-format"
5725 | - ".clang-tidy"
5726 | - ".gemrc"
5727 | - glide.lock
5728 | ace_mode: yaml
5729 | codemirror_mode: yaml
5730 | codemirror_mime_type: text/x-yaml
5731 | language_id: 407
5732 | YANG:
5733 | type: data
5734 | extensions:
5735 | - ".yang"
5736 | tm_scope: source.yang
5737 | ace_mode: text
5738 | language_id: 408
5739 | YARA:
5740 | type: programming
5741 | color: "#220000"
5742 | ace_mode: text
5743 | extensions:
5744 | - ".yar"
5745 | - ".yara"
5746 | tm_scope: source.yara
5747 | language_id: 805122868
5748 | YASnippet:
5749 | type: markup
5750 | aliases:
5751 | - snippet
5752 | - yas
5753 | color: "#32AB90"
5754 | extensions:
5755 | - ".yasnippet"
5756 | tm_scope: source.yasnippet
5757 | ace_mode: text
5758 | language_id: 378760102
5759 | Yacc:
5760 | type: programming
5761 | extensions:
5762 | - ".y"
5763 | - ".yacc"
5764 | - ".yy"
5765 | tm_scope: source.bison
5766 | ace_mode: text
5767 | color: "#4B6C4B"
5768 | language_id: 409
5769 | ZAP:
5770 | type: programming
5771 | color: "#0d665e"
5772 | extensions:
5773 | - ".zap"
5774 | - ".xzap"
5775 | tm_scope: source.zap
5776 | ace_mode: text
5777 | language_id: 952972794
5778 | ZIL:
5779 | type: programming
5780 | color: "#dc75e5"
5781 | extensions:
5782 | - ".zil"
5783 | - ".mud"
5784 | tm_scope: source.zil
5785 | ace_mode: text
5786 | language_id: 973483626
5787 | Zeek:
5788 | type: programming
5789 | aliases:
5790 | - bro
5791 | extensions:
5792 | - ".zeek"
5793 | - ".bro"
5794 | tm_scope: source.zeek
5795 | ace_mode: text
5796 | language_id: 40
5797 | ZenScript:
5798 | type: programming
5799 | color: "#00BCD1"
5800 | extensions:
5801 | - ".zs"
5802 | tm_scope: source.zenscript
5803 | ace_mode: text
5804 | language_id: 494938890
5805 | Zephir:
5806 | type: programming
5807 | color: "#118f9e"
5808 | extensions:
5809 | - ".zep"
5810 | tm_scope: source.php.zephir
5811 | ace_mode: php
5812 | language_id: 410
5813 | Zig:
5814 | type: programming
5815 | color: "#ec915c"
5816 | extensions:
5817 | - ".zig"
5818 | tm_scope: source.zig
5819 | ace_mode: text
5820 | language_id: 646424281
5821 | Zimpl:
5822 | type: programming
5823 | extensions:
5824 | - ".zimpl"
5825 | - ".zmpl"
5826 | - ".zpl"
5827 | tm_scope: none
5828 | ace_mode: text
5829 | language_id: 411
5830 | desktop:
5831 | type: data
5832 | extensions:
5833 | - ".desktop"
5834 | - ".desktop.in"
5835 | tm_scope: source.desktop
5836 | ace_mode: text
5837 | language_id: 412
5838 | eC:
5839 | type: programming
5840 | color: "#913960"
5841 | extensions:
5842 | - ".ec"
5843 | - ".eh"
5844 | tm_scope: source.c.ec
5845 | ace_mode: text
5846 | language_id: 413
5847 | edn:
5848 | type: data
5849 | ace_mode: clojure
5850 | codemirror_mode: clojure
5851 | codemirror_mime_type: text/x-clojure
5852 | extensions:
5853 | - ".edn"
5854 | tm_scope: source.clojure
5855 | language_id: 414
5856 | fish:
5857 | type: programming
5858 | group: Shell
5859 | interpreters:
5860 | - fish
5861 | extensions:
5862 | - ".fish"
5863 | tm_scope: source.fish
5864 | ace_mode: text
5865 | language_id: 415
5866 | mcfunction:
5867 | type: programming
5868 | color: "#E22837"
5869 | extensions:
5870 | - ".mcfunction"
5871 | tm_scope: source.mcfunction
5872 | ace_mode: text
5873 | language_id: 462488745
5874 | mupad:
5875 | type: programming
5876 | extensions:
5877 | - ".mu"
5878 | ace_mode: text
5879 | language_id: 416
5880 | nanorc:
5881 | type: data
5882 | group: INI
5883 | extensions:
5884 | - ".nanorc"
5885 | filenames:
5886 | - ".nanorc"
5887 | - nanorc
5888 | tm_scope: source.nanorc
5889 | ace_mode: text
5890 | language_id: 775996197
5891 | nesC:
5892 | type: programming
5893 | color: "#94B0C7"
5894 | extensions:
5895 | - ".nc"
5896 | ace_mode: text
5897 | tm_scope: source.nesc
5898 | language_id: 417
5899 | ooc:
5900 | type: programming
5901 | color: "#b0b77e"
5902 | extensions:
5903 | - ".ooc"
5904 | ace_mode: text
5905 | language_id: 418
5906 | q:
5907 | type: programming
5908 | extensions:
5909 | - ".q"
5910 | tm_scope: source.q
5911 | ace_mode: text
5912 | color: "#0040cd"
5913 | language_id: 970539067
5914 | reStructuredText:
5915 | type: prose
5916 | wrap: true
5917 | aliases:
5918 | - rst
5919 | extensions:
5920 | - ".rst"
5921 | - ".rest"
5922 | - ".rest.txt"
5923 | - ".rst.txt"
5924 | ace_mode: text
5925 | codemirror_mode: rst
5926 | codemirror_mime_type: text/x-rst
5927 | language_id: 419
5928 | sed:
5929 | type: programming
5930 | color: "#64b970"
5931 | extensions:
5932 | - ".sed"
5933 | interpreters:
5934 | - gsed
5935 | - minised
5936 | - sed
5937 | - ssed
5938 | ace_mode: text
5939 | tm_scope: source.sed
5940 | language_id: 847830017
5941 | wdl:
5942 | type: programming
5943 | color: "#42f1f4"
5944 | extensions:
5945 | - ".wdl"
5946 | tm_scope: source.wdl
5947 | ace_mode: text
5948 | language_id: 374521672
5949 | wisp:
5950 | type: programming
5951 | ace_mode: clojure
5952 | codemirror_mode: clojure
5953 | codemirror_mime_type: text/x-clojure
5954 | color: "#7582D1"
5955 | extensions:
5956 | - ".wisp"
5957 | tm_scope: source.clojure
5958 | language_id: 420
5959 | xBase:
5960 | type: programming
5961 | color: "#403a40"
5962 | aliases:
5963 | - advpl
5964 | - clipper
5965 | - foxpro
5966 | extensions:
5967 | - ".prg"
5968 | - ".ch"
5969 | - ".prw"
5970 | tm_scope: source.harbour
5971 | ace_mode: text
5972 | language_id: 421
5973 |
--------------------------------------------------------------------------------
/src/visualization.js:
--------------------------------------------------------------------------------
1 | import 'babel-polyfill' // ReferenceError: regeneratorRuntime is not defined
2 |
3 | import { convertFilesToTree, Graph } from './graph-helper'
4 |
5 | function timer (ms) {
6 | return new Promise(resolve => setTimeout(resolve, ms))
7 | }
8 |
9 | // parsing
10 | const gitWorker = new Worker('git-handler.js')
11 |
12 | gitWorker.onmessage = e => {
13 | if (e.data.type === 'result') {
14 | buildNetwork(e.data.data, e.data.state)
15 | } else if (e.data.type === 'progress') {
16 | document.getElementById('progress').textContent = e.data.text
17 | } else {
18 | console.log('Unknown data:', e.data)
19 | }
20 | }
21 |
22 | function buildNetwork (data, state) {
23 | Promise.all(data.map(async entry => {
24 | return {
25 | commit: entry['commit'],
26 | tree: await convertFilesToTree(
27 | entry['files'].filter(e => e.type !== 'remove')),
28 | changedFiles: entry['files'].filter(e => e.type === 'modify')
29 | }
30 | })).then(data => render(data, state))
31 | }
32 |
33 | function render (data, state) {
34 | console.log(data, state)
35 | console.log('Creating graph')
36 | document.getElementById('header').textContent = `${state.repoUrl} @ ${state.gitBranch}`
37 |
38 | // setup network
39 | let g = new Graph()
40 | console.log(g)
41 |
42 | // construct graph for first commit
43 | let cur = data.shift()
44 | g.addNodes(cur.tree.nodes)
45 | g.addEdges(cur.tree.edges)
46 |
47 | g.render()
48 |
49 | store.commit('addCommit', cur.commit)
50 |
51 | // iterate over following commits
52 | let delay = state.iterationDuration
53 | const iterate = async () => {
54 | await timer(delay)
55 | for (let cur of data) {
56 | console.log(cur.commit.oid)
57 | store.commit('addCommit', cur.commit)
58 |
59 | // change state of graph
60 | let [somethingChanged, addedNodes] = g.changeState(cur.tree.nodes, cur.tree.edges)
61 |
62 | // restart layout
63 | if (somethingChanged) {
64 | g.render()
65 | }
66 |
67 | // highlight changes
68 | for (let n of addedNodes) {
69 | g.blinkColor(n.id, 'red', state.iterationDuration)
70 | }
71 | for (let file of cur.changedFiles) {
72 | g.blinkColor(file.path, 'red', state.iterationDuration)
73 | }
74 |
75 | await timer(delay)
76 | }
77 | }
78 | iterate()
79 | }
80 |
81 | var store // weird global variable to access state of GUI
82 | export function createVisualization (localStore) {
83 | // TODO: how to properly pass store? Webworkers make things difficult...
84 | store = localStore
85 |
86 | let state = store.state.config
87 | console.log('State:', store.state.config)
88 | gitWorker.postMessage(state)
89 | }
90 |
--------------------------------------------------------------------------------
/tailwind.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | theme: {
3 | extend: {}
4 | },
5 | variants: {},
6 | plugins: []
7 | }
8 |
--------------------------------------------------------------------------------