name: Shell Script (Bash) fileTypes:

firstLineMatch: ^#!.*(bash|zsh|sh|tcsh) scopeName: source.shell repository:

interpolation: 
  patterns: 
  - name: string.interpolated.backtick.shell
    endCaptures: 
      "0": 
        name: punctuation.definition.string.end.shell
    begin: "`"
    beginCaptures: 
      "0": 
        name: punctuation.definition.string.begin.shell
    end: "`"
    patterns: 
    - name: constant.character.escape.shell
      match: \\[`\\$]
  - name: string.interpolated.dollar.shell
    endCaptures: 
      "0": 
        name: punctuation.definition.string.end.shell
    begin: \$\(
    beginCaptures: 
      "0": 
        name: punctuation.definition.string.begin.shell
    end: \)
    patterns: 
    - include: $self
variable: 
  patterns: 
  - name: variable.other.special.shell
    captures: 
      "1": 
        name: punctuation.definition.variable.shell
    match: (\$)[-*@#?$!0_]
  - name: variable.other.positional.shell
    captures: 
      "1": 
        name: punctuation.definition.variable.shell
    match: (\$)[1-9]
  - name: variable.other.normal.shell
    captures: 
      "1": 
        name: punctuation.definition.variable.shell
    match: (\$)[a-zA-Z_][a-zA-Z0-9_]*
  - name: variable.other.bracket.shell
    captures: 
      "0": 
        name: punctuation.definition.variable.shell
    begin: \$\{
    end: \}

uuid: DDEEA3ED-6B1C-11D9-8B10-000D93589AF6 foldingStartMarker: { patterns:

foldingStopMarker: } keyEquivalent: ^~S