mirror of
https://github.com/MatthewCallis/language-65asm.git
synced 2025-07-03 22:23:55 +00:00
Compare commits
11 Commits
Author | SHA1 | Date | |
---|---|---|---|
db04e4f13b | |||
80c13409ea | |||
13f4c11d05 | |||
d98637d01c | |||
f1bce28b1d | |||
77ae562e5e | |||
bba978ab41 | |||
c02de139a1 | |||
5a713ff273 | |||
0e34ad549b | |||
01dccbb45c |
@ -19,3 +19,7 @@ from the various other TextMate bundles:
|
||||
|
||||
Contributions are greatly appreciated! Please fork this repository and open a
|
||||
pull request to add snippets, make grammar tweaks, etc.
|
||||
|
||||
# Contributors
|
||||
|
||||
- [Matt Tuttle](https://github.com/MattTuttle)
|
||||
|
@ -1,6 +1,6 @@
|
||||
'fileTypes': []
|
||||
'foldingStartMarker': '/\\*\\*|\\{\\s*$'
|
||||
'foldingStopMarker': '\\*\\*/|^\\s*\\}'
|
||||
'fileTypes': [
|
||||
's'
|
||||
]
|
||||
'name': '6502 Assembly (cc65)'
|
||||
'patterns': [
|
||||
{
|
||||
@ -19,11 +19,7 @@
|
||||
'include': '#M65816_alias'
|
||||
}
|
||||
{
|
||||
'begin': '(;)'
|
||||
'beginCaptures':
|
||||
'1':
|
||||
'name': 'punctuation.definition.comment'
|
||||
'end': '\\n'
|
||||
'match': ';.*$'
|
||||
'name': 'comment.line.semicolon'
|
||||
}
|
||||
{
|
||||
@ -37,6 +33,10 @@
|
||||
'name': 'punctuation.definition.string.end'
|
||||
'name': 'string.quoted.double.assembly'
|
||||
}
|
||||
{
|
||||
'match': '\\#(\'.\'|[^\\s\']+)'
|
||||
'name': 'constant.numeric.hex'
|
||||
}
|
||||
{
|
||||
'match': '\\$[A-Fa-f0-9]+'
|
||||
'name': 'constant.numeric.hex'
|
||||
@ -54,7 +54,7 @@
|
||||
'name': 'constant.numeric.decimal'
|
||||
}
|
||||
{
|
||||
'match': '^[A-Za-z_][A-Za-z0-9_]:*'
|
||||
'match': '^[A-Za-z_][A-Za-z0-9_]*:'
|
||||
'name': 'variable.other.readwrite.assembly' # 'entity.name.label'
|
||||
}
|
||||
{
|
||||
|
@ -1,248 +0,0 @@
|
||||
'fileTypes': [
|
||||
'clj'
|
||||
'cljs'
|
||||
'clojure'
|
||||
'edn'
|
||||
]
|
||||
'foldingStartMarker': '\\(\\s*$'
|
||||
'foldingStopMarker': '^\\s*\\)'
|
||||
'name': 'Clojure'
|
||||
'patterns': [
|
||||
{
|
||||
'include': '#comment'
|
||||
}
|
||||
{
|
||||
'include': '#shebang-comment'
|
||||
}
|
||||
{
|
||||
'include': '#quoted-sexp'
|
||||
}
|
||||
{
|
||||
'include': '#sexp'
|
||||
}
|
||||
{
|
||||
'include': '#keyfn'
|
||||
}
|
||||
{
|
||||
'include': '#string'
|
||||
}
|
||||
{
|
||||
'include': '#vector'
|
||||
}
|
||||
{
|
||||
'include': '#set'
|
||||
}
|
||||
{
|
||||
'include': '#map'
|
||||
}
|
||||
{
|
||||
'include': '#regexp'
|
||||
}
|
||||
{
|
||||
'include': '#var'
|
||||
}
|
||||
{
|
||||
'include': '#constants'
|
||||
}
|
||||
{
|
||||
'include': '#symbol'
|
||||
}
|
||||
{
|
||||
'include': '#whitespace'
|
||||
}
|
||||
]
|
||||
'repository':
|
||||
'comment':
|
||||
'captures':
|
||||
'1':
|
||||
'name': 'punctuation.definition.comment.clojure'
|
||||
'match': '(;).*$\\n?'
|
||||
'name': 'comment.line.semicolon.clojure'
|
||||
'constants':
|
||||
'patterns': [
|
||||
{
|
||||
'match': '(nil)(?=(\\s|\\)|\\]|\\}))'
|
||||
'name': 'constant.language.nil.clojure'
|
||||
}
|
||||
{
|
||||
'match': '(true|false)'
|
||||
'name': 'constant.language.boolean.clojure'
|
||||
}
|
||||
{
|
||||
'match': '(\\d+/\\d+)'
|
||||
'name': 'constant.numeric.ratio.clojure'
|
||||
}
|
||||
{
|
||||
'match': '(\\d+r\\d+)'
|
||||
'name': 'constant.numeric.arbitrary-radix.clojure'
|
||||
}
|
||||
{
|
||||
'match': '(0x\\d+)'
|
||||
'name': 'constant.numeric.hexidecimal.clojure'
|
||||
}
|
||||
{
|
||||
'match': '(0\\d+)'
|
||||
'name': 'constant.numeric.octal.clojure'
|
||||
}
|
||||
{
|
||||
'match': '(\\d+)'
|
||||
'name': 'constant.numeric.decimal.clojure'
|
||||
}
|
||||
{
|
||||
'match': '(?<=(\\s|\\(|\\[|\\{)):[a-zA-Z0-9\\#\\.\\-\\_\\:\\+\\=\\>\\<\\/\\!\\?\\*]+(?=(\\s|\\)|\\]|\\}))'
|
||||
'name': 'constant.keyword.clojure'
|
||||
}
|
||||
]
|
||||
'keyfn':
|
||||
'patterns': [
|
||||
{
|
||||
'match': '(?<=(\\s|\\(|\\[|\\{))(if(-[-a-z\\?]*)?|when(-[-a-z]*)?|for(-[-a-z]*)?|cond|do|let(-[-a-z\\?]*)?|binding|loop|recur|fn|throw[a-z\\-]*|try|catch|finally|([a-z]*case))(?=(\\s|\\)|\\]|\\}))'
|
||||
'name': 'storage.control.clojure'
|
||||
}
|
||||
{
|
||||
'match': '(?<=(\\s|\\(|\\[|\\{))(declare-?|(in-)?ns|import|use|require|load|compile|(def[a-z\\-]*))(?=(\\s|\\)|\\]|\\}))'
|
||||
'name': 'keyword.control.clojure'
|
||||
}
|
||||
]
|
||||
'map':
|
||||
'begin': '(\\{)'
|
||||
'end': '(\\})'
|
||||
'name': 'meta.map.clojure'
|
||||
'patterns': [
|
||||
{
|
||||
'include': '$self'
|
||||
}
|
||||
]
|
||||
'quoted-sexp':
|
||||
'begin': '([\'``]\\()'
|
||||
'beginCaptures':
|
||||
'1':
|
||||
'name': 'punctuation.section.expression.begin.clojure'
|
||||
'end': '(\\))(\\n)?'
|
||||
'endCaptures':
|
||||
'1':
|
||||
'name': 'punctuation.section.expression.end.clojure'
|
||||
'2':
|
||||
'name': 'meta.after-expression.clojure'
|
||||
'name': 'meta.quoted-expression.clojure'
|
||||
'patterns': [
|
||||
{
|
||||
'include': '$self'
|
||||
}
|
||||
]
|
||||
'regexp':
|
||||
'begin': '#\\"'
|
||||
'end': '\\"'
|
||||
'name': 'string.regexp.clojure'
|
||||
'patterns': [
|
||||
{
|
||||
'include': '#regexp_escaped_char'
|
||||
}
|
||||
]
|
||||
'regexp_escaped_char':
|
||||
'match': '\\\\(\\")'
|
||||
'name': 'string.regexp.clojure'
|
||||
'set':
|
||||
'begin': '(\\#\\{)'
|
||||
'end': '(\\})'
|
||||
'name': 'meta.set.clojure'
|
||||
'patterns': [
|
||||
{
|
||||
'include': '$self'
|
||||
}
|
||||
]
|
||||
'sexp':
|
||||
'begin': '(\\()'
|
||||
'beginCaptures':
|
||||
'1':
|
||||
'name': 'punctuation.section.expression.begin.clojure'
|
||||
'end': '(\\))(\\n)?'
|
||||
'endCaptures':
|
||||
'1':
|
||||
'name': 'punctuation.section.expression.end.clojure'
|
||||
'2':
|
||||
'name': 'meta.after-expression.clojure'
|
||||
'name': 'meta.expression.clojure'
|
||||
'patterns': [
|
||||
{
|
||||
'begin': '(?<=\\()(ns|def|def-|defn|defn-|defvar|defvar-|defmacro|defmacro-|deftest)\\s+(.+?)(?=\\s)'
|
||||
'beginCaptures':
|
||||
'1':
|
||||
'name': 'keyword.control.clojure'
|
||||
'2':
|
||||
'name': 'entity.global.clojure'
|
||||
'end': '(?=\\))'
|
||||
'name': 'meta.definition.global.clojure'
|
||||
'patterns': [
|
||||
{
|
||||
'include': '$self'
|
||||
}
|
||||
]
|
||||
}
|
||||
{
|
||||
'include': '$self'
|
||||
}
|
||||
]
|
||||
'shebang-comment':
|
||||
'captures':
|
||||
'1':
|
||||
'name': 'punctuation.definition.comment.shebang.clojure'
|
||||
'match': '^(\\#!).*$\\n?'
|
||||
'name': 'comment.line.semicolon.clojure'
|
||||
'string':
|
||||
'begin': '(")'
|
||||
'beginCaptures':
|
||||
'1':
|
||||
'name': 'punctuation.definition.string.begin.clojure'
|
||||
'end': '(")'
|
||||
'endCaptures':
|
||||
'1':
|
||||
'name': 'punctuation.definition.string.end.clojure'
|
||||
'name': 'string.quoted.double.clojure'
|
||||
'patterns': [
|
||||
{
|
||||
'match': '\\\\.'
|
||||
'name': 'constant.character.escape.clojure'
|
||||
}
|
||||
]
|
||||
'symbol':
|
||||
'patterns': [
|
||||
{
|
||||
'match': '(\\w[\\w\\d]+)'
|
||||
'name': 'meta.symbol.clojure'
|
||||
}
|
||||
]
|
||||
'var':
|
||||
'match': '(?<=(\\s|\\(|\\[|\\{)\\#)\'[a-zA-Z0-9\\.\\-\\_\\:\\+\\=\\>\\<\\/\\!\\?\\*]+(?=(\\s|\\)|\\]|\\}))'
|
||||
'name': 'meta.var.clojure'
|
||||
'vector':
|
||||
'begin': '(\\[)'
|
||||
'end': '(\\])'
|
||||
'name': 'meta.vector.clojure'
|
||||
'patterns': [
|
||||
{
|
||||
'include': '$self'
|
||||
}
|
||||
]
|
||||
'whitespace':
|
||||
'match': '\\s+$'
|
||||
'name': 'invalid.trailing-whitespace'
|
||||
'scopeName': 'source.clojure'
|
||||
'smartTypingPairs': [
|
||||
[
|
||||
'"'
|
||||
'"'
|
||||
]
|
||||
[
|
||||
'('
|
||||
')'
|
||||
]
|
||||
[
|
||||
'{'
|
||||
'}'
|
||||
]
|
||||
[
|
||||
'['
|
||||
']'
|
||||
]
|
||||
]
|
@ -75,7 +75,7 @@
|
||||
]
|
||||
'repository':
|
||||
'M6502':
|
||||
'match': '\\b(?i:ADC|AND|ASL|BCC|BCS|BEQ|BIT|BMI|BNE|BPL|BRK|BVC|BVS|CLC|CLD|CLI|CLV|CMP|CPX|CPY|DEC|DEX|DEY|EOR|INC|INX|INY|JMP|JSR|LDA|LDX|LDY|LSR|NOP|ORA|PHA|PHP|PLA|PLP|ROL|ROR|RTI|RTS|SBC|SEC|SED|SEI|STA|STX|STY|TAX|TAY|TSX|TXA|TXS|TYA)\\b'
|
||||
'match': '\\b(?i:ADC|AND|ASL|BCC|BCS|BEQ|BIT|BMI|BNE|BPL|BRK|BVC|BVS|CLC|CLD|CLI|CLV|CMP|CPX|CPY|DEC|DEX|DEY|EOR|INA|INC|INX|INY|JMP|JSR|LDA|LDX|LDY|LSR|NOP|ORA|PHA|PHP|PLA|PLP|ROL|ROR|RTI|RTS|SBC|SEC|SED|SEI|STA|STX|STY|TAX|TAY|TSX|TXA|TXS|TYA)\\b'
|
||||
'name': 'keyword.mnemonic.6502'
|
||||
'M65816':
|
||||
'match': '\\b(?i:BRL|COP|JML|JSL|MVN|MVP|PEA|PEI|PER|PHB|PHD|PHK|PLB|PLD|REP|RTL|SEP|TCD|TCS|TDC|TSC|TXY|TYX|WDM|XBA|XCE)\\b'
|
||||
|
2
package.json
Executable file → Normal file
2
package.json
Executable file → Normal file
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "language-65asm",
|
||||
"version": "0.1.0",
|
||||
"version": "4.0.0",
|
||||
"description": "Adds syntax highlighting to 65816/65C816/65802/6502/65C02 files in Atom, with extra support for various compilers.",
|
||||
"repository": "https://github.com/MatthewCallis/language-65asm",
|
||||
"license": "MIT",
|
||||
|
Reference in New Issue
Block a user