tal.sublime-syntax (2796B)
1 %YAML 1.2 2 --- 3 # See http://www.sublimetext.com/docs/3/syntax.html 4 name: Uxn Assembly 5 scopeName: tal. 6 fileTypes: [tal] 7 file_extensions: 8 - tal 9 scope: source.tal 10 11 contexts: 12 main: 13 14 # get 15 - match: '\.(\S+)\sDEI2' 16 scope: entity.name.type.typedef 17 pop: true 18 - match: '\.(\S+)\sDEI' 19 scope: entity.name.type.typedef 20 pop: true 21 - match: '\.(\S+)\sLDZ2' 22 scope: entity.name.type.typedef 23 pop: true 24 - match: '\.(\S+)\sLDZ' 25 scope: entity.name.type.typedef 26 pop: true 27 - match: '\,(\S+)\sLDR2' 28 scope: entity.name.type.typedef 29 pop: true 30 - match: '\,(\S+)\sLDR' 31 scope: entity.name.type.typedef 32 pop: true 33 - match: '\;(\S+)\sLDA2' 34 scope: entity.name.type.typedef 35 pop: true 36 - match: '\;(\S+)\sLDA' 37 scope: entity.name.type.typedef 38 pop: true 39 # set 40 - match: '\.(\S+)\sDEO2' 41 scope: constant.numeric 42 pop: true 43 - match: '\.(\S+)\sDEO' 44 scope: constant.numeric 45 pop: true 46 - match: '\.(\S+)\sSTZ2' 47 scope: constant.numeric 48 pop: true 49 - match: '\.(\S+)\sSTZ' 50 scope: constant.numeric 51 pop: true 52 - match: '\,(\S+)\sSTR2' 53 scope: constant.numeric 54 pop: true 55 - match: '\,(\S+)\sSTR' 56 scope: constant.numeric 57 pop: true 58 - match: '\;(\S+)\sSTA2' 59 scope: constant.numeric 60 pop: true 61 - match: '\;(\S+)\sSTA' 62 scope: constant.numeric 63 pop: true 64 65 # label 66 - match: '\@(\S+)\s?' 67 scope: string.control 68 pop: true 69 # sublabel 70 - match: '\&(\S+)\s?' 71 scope: string.control 72 pop: true 73 # include 74 - match: 'include' 75 scope: string.control 76 pop: true 77 78 # jump 79 - match: '\|(\S+)\s?' 80 scope: entity.name.tag.structure.any 81 pop: true 82 # pad 83 - match: '\$(\S+)\s?' 84 scope: entity.name.tag.structure.any 85 pop: true 86 87 # Pushing to stack 88 - match: '\"(\S+)\s?' 89 scope: constant.numeric 90 pop: true 91 92 # Addressing 93 - match: '\.(\S+)\s?' # zero-page 94 scope: variable.function.shell 95 pop: true 96 - match: '\,(\S+)\s?' # relative 97 scope: entity.name.tag.yaml 98 pop: true 99 - match: '\;(\S+)\s?' # absolute 100 scope: keyword.control 101 pop: true 102 - match: '\:(\S+)\s?' # raw 103 scope: keyword.control 104 pop: true 105 106 # Blocks 107 - match: '\[\s?' 108 scope: comment 109 pop: true 110 - match: '\]\s?' 111 scope: comment 112 pop: true 113 114 - match: '\{' 115 scope: variable.control 116 push: 117 - meta_scope: variable.control 118 - match: '\}' 119 pop: true 120 121 - match: '\s\(\s' 122 scope: comment 123 push: 124 - meta_scope: comment.line 125 - match: '\s\)\s' 126 pop: true