%YAML 1.2
---
# See http://www.sublimetext.com/docs/3/syntax.html
name: Uxn Assembly
scopeName: usm.
fileTypes: [usm]
file_extensions:
  - usm
scope: source.usm

contexts:
  prototype:
    - include: comments

  main:
    - include: keywords
    - include: numbers
    - include: strings

  numbers:
    - match: '\|(\S+)\s?'
      scope: punctuation.definition
      pop: true

  strings:
    - match: '\:(\S+)\s?'
      scope: string.control
      pop: true
    - match: '\;(\S+)\s?'
      scope: string.control
      pop: true
    - match: '\@(\S+)\s?'
      scope: string.control
      pop: true
    - match: '\,(\S+)\s?'
      scope: keyword.control
      pop: true
    - match: '\.(\S+)\s?'
      scope: keyword.control
      pop: true
    - match: '\"(\S+)\s?'
      scope: keyword.control
      pop: true

  comments:
    - match: '\('
      scope: punctuation.definition.comment.tome
      push:
        - meta_scope: comment.line.double-slash.tome
        - match: '\)'
          pop: true