# Defines all Languages known to GitHub.
#
# All languages have an associated lexer for syntax highlighting. It
# defaults to name.downcase, which covers most cases. Make sure the
# lexer exists in lexers.yml. This is a list of available in our
# version of pygments.
#
# type              - Either data, programming, markup, or nil
# lexer             - An explicit lexer String (defaults to name.downcase)
# aliases           - An Array of additional aliases (implicitly
#                     includes name.downcase)
# ace_mode          - A String name of Ace Mode (if available)
# extension         - An Array of associated extensions
# primary_extension - A String for the main extension associated with
#                     the language. Must be unique. Used when a Language is picked
#                     from a dropdown and we need to automatically choose an
#                     extension.
# searchable        - Boolean flag to enable searching (defaults to true)
# search_term       - Deprecated: Some languages maybe indexed under a
#                     different alias. Avoid defining new exceptions.
# color             - CSS hex color to represent the language.
#
# Any additions or modifications (even trivial) should have corresponding
# test change in `test/test_blob.rb`.
#
# Please keep this list alphabetized.

ASP:
  type: programming
  color: "#6a40fd"
  lexer: aspx-vb
  search_term: aspx-vb
  aliases:
  - aspx
  - aspx-vb
  primary_extension: .asp
  extensions:
  - .asax
  - .ascx
  - .ashx
  - .asmx
  - .asp
  - .aspx
  - .axd

ActionScript:
  type: programming
  lexer: ActionScript 3
  color: "#e3491a"
  search_term: as3
  aliases:
  - as3
  primary_extension: .as
  extensions:
  - .as

Ada:
  type: programming
  color: "#02f88c"
  primary_extension: .adb
  extensions:
  - .adb
  - .ads

Apex:
  type: programming
  lexer: Text only
  primary_extension: .cls

AppleScript:
  type: programming
  aliases:
  - osascript
  primary_extension: .applescript

Arc:
  type: programming
  color: "#ca2afe"
  lexer: Text only
  primary_extension: .arc
  extensions:
  - .arc

Arduino:
  type: programming
  color: "#bd79d1"
  lexer: C++
  primary_extension: .ino

Assembly:
  type: programming
  lexer: NASM
  color: "#a67219"
  search_term: nasm
  aliases:
  - nasm
  primary_extension: .asm
  extensions:
  - .asm

Augeas:
  type: programming
  primary_extension: .aug
  extensions:
  - .aug

AutoHotkey:
  type: programming
  lexer: autohotkey
  color: "#6594b9"
  aliases:
  - ahk
  primary_extension: .ahk

Batchfile:
  type: programming
  group: Shell
  search_term: bat
  aliases:
  - bat
  primary_extension: .bat
  extensions:
  - .bat
  - .cmd

Befunge:
  primary_extension: .befunge
  extensions:
  - .befunge

BlitzMax:
  primary_extension: .bmx
  extensions:
  - .bmx

Boo:
  type: programming
  color: "#d4bec1"
  primary_extension: .boo
  extensions:
  - .boo

Brainfuck:
  primary_extension: .b
  extensions:
  - .b
  - .bf

Bro:
  type: programming
  primary_extension: .bro
  extensions:
  - .bro

C:
  type: programming
  color: "#555"
  primary_extension: .c
  extensions:
  - .w

C#:
  type: programming
  ace_mode: csharp
  search_term: csharp
  color: "#5a25a2"
  aliases:
  - csharp
  primary_extension: .cs
  extensions:
  - .cs

C++:
  type: programming
  ace_mode: c_cpp
  search_term: cpp
  color: "#f34b7d"
  aliases:
  - cpp
  primary_extension: .cpp
  extensions:
  - .c++
  - .cxx
  - .h++
  - .hh
  - .hxx
  - .tcc

C-ObjDump:
  type: data
  lexer: c-objdump
  primary_extension: .c-objdump
  extensions:
  - .c-objdump

C2hs Haskell:
  type: programming
  lexer: Haskell
  group: Haskell
  aliases:
  - c2hs
  primary_extension: .chs
  extensions:
  - .chs

CMake:
  primary_extension: .cmake
  extensions:
  - .cmake
  - .cmake.in
  filenames:
  - CMakeLists.txt

CSS:
  ace_mode: css
  primary_extension: .css
  extensions:
  - .css

Ceylon:
  type: programming
  lexer: Text only
  primary_extension: .ceylon

ChucK:
  lexer: Java
  primary_extension: .ck
  extensions:
  - .ck

Clojure:
  type: programming
  ace_mode: clojure
  color: "#db5855"
  primary_extension: .clj
  extensions:
  - .clj
  - .cljs

CoffeeScript:
  type: programming
  ace_mode: coffee
  color: "#244776"
  aliases:
  - coffee
  primary_extension: .coffee
  extensions:
  - ._coffee
  filenames:
  - Cakefile

ColdFusion:
  type: programming
  lexer: Coldfusion HTML
  ace_mode: coldfusion
  color: "#ed2cd6"
  search_term: cfm
  aliases:
  - cfm
  primary_extension: .cfm
  extensions:
  - .cfc
  - .cfm

Common Lisp:
  type: programming
  color: "#3fb68b"
  aliases:
  - lisp
  primary_extension: .lisp
  extensions:
  - .lisp
  - .lsp
  - .ny

Coq:
  type: programming
  primary_extension: .coq

Cpp-ObjDump:
  type: data
  lexer: cpp-objdump
  primary_extension: .cppobjdump
  extensions:
  - .cppobjdump
  - .c++objdump
  - .cxx-objdump

Cucumber:
  lexer: Gherkin
  primary_extension: .feature
  extensions:
  - .feature

Cython:
  type: programming
  group: Python
  primary_extension: .pyx
  extensions:
  - .pxd
  - .pxi
  - .pyx

D:
  type: programming
  color: "#fcd46d"
  primary_extension: .d
  extensions:
  - .d
  - .di

D-ObjDump:
  type: data
  lexer: d-objdump
  primary_extension: .d-objdump
  extensions:
  - .d-objdump

Darcs Patch:
  search_term: dpatch
  aliases:
  - dpatch
  primary_extension: .darcspatch
  extensions:
  - .darcspatch
  - .dpatch

Dart:
  type: programming
  primary_extension: .dart

Delphi:
  type: programming
  color: "#b0ce4e"
  primary_extension: .pas
  extensions:
  - .lpr
  - .pas

DCPU-16 ASM:
  type: programming
  lexer: dasm16
  primary_extension: .dasm16
  extensions:
  - .dasm
  - .dasm16
  aliases:
  - dasm16

Diff:
  primary_extension: .diff
  extensions:
  - .diff

Dylan:
  type: programming
  color: "#3ebc27"
  primary_extension: .dylan
  extensions:
  - .dylan

Ecere Projects:
  type: data
  group: JavaScript
  lexer: JSON
  primary_extension: .epj
  extensions:
  - .epj

Eiffel:
  type: programming
  lexer: Text only
  color: "#946d57"
  primary_extension: .e
  extensions:
  - .e

Elixir:
  type: programming
  color: "#6e4a7e"
  primary_extension: .ex
  extensions:
  - .ex
  - .exs

Emacs Lisp:
  type: programming
  lexer: Scheme
  color: "#c065db"
  aliases:
  - elisp
  - emacs
  primary_extension: .el
  extensions:
  - .emacs

Erlang:
  type: programming
  color: "#949e0e"
  primary_extension: .erl
  extensions:
  - .erl
  - .hrl

F#:
  type: programming
  lexer: FSharp
  color: "#b845fc"
  search_term: ocaml
  primary_extension: .fs
  extensions:
  - .fs
  - .fsi
  - .fsx

FORTRAN:
  type: programming
  lexer: Fortran
  color: "#4d41b1"
  primary_extension: .f90
  extensions:
  - .F
  - .F03
  - .F08
  - .F77
  - .F90
  - .F95
  - .FOR
  - .FPP
  - .f
  - .f03
  - .f08
  - .f77
  - .f90
  - .f95
  - .for
  - .fpp

Factor:
  type: programming
  color: "#636746"
  primary_extension: .factor
  extensions:
  - .factor

Fancy:
  type: programming
  color: "#7b9db4"
  primary_extension: .fy
  extensions:
  - .fancypack
  - .fy
  filenames:
  - Fakefile

Fantom:
  type: programming
  color: "#dbded5"
  primary_extension: .fan
  extensions:
  - .fan

GAS:
  type: programming
  group: Assembly
  primary_extension: .s
  extensions:
  - .S

Genshi:
  primary_extension: .kid
  extensions:
  - .kid

Gentoo Ebuild:
  group: Shell
  lexer: Bash
  primary_extension: .ebuild
  extensions:
  - .ebuild

Gentoo Eclass:
  group: Shell
  lexer: Bash
  primary_extension: .eclass
  extensions:
  - .eclass

Gettext Catalog:
  search_term: pot
  searchable: false
  aliases:
  - pot
  primary_extension: .po
  extensions:
  - .po
  - .pot

Go:
  type: programming
  color: "#8d04eb"
  primary_extension: .go
  extensions:
  - .go

Gosu:
  type: programming
  color: "#82937f"
  primary_extension: .gs

Groff:
  primary_extension: .man
  extensions:
  - '.1'
  - '.2'
  - '.3'
  - '.4'
  - '.5'
  - '.6'
  - '.7'
  - .man

Groovy:
  type: programming
  ace_mode: groovy
  color: "#e69f56"
  primary_extension: .groovy

Groovy Server Pages:
  group: Groovy
  lexer: Java Server Page
  aliases:
  - gsp
  primary_extension: .gsp

HTML:
  type: markup
  ace_mode: html
  primary_extension: .html
  extensions:
  - .htm
  - .html
  - .xhtml

HTML+Django:
  type: markup
  group: HTML
  lexer: HTML+Django/Jinja
  primary_extension: .mustache # TODO: This is incorrect
  extensions:
  - .mustache

HTML+ERB:
  type: markup
  group: HTML
  lexer: RHTML
  primary_extension: .erb
  extensions:
  - .erb
  - .html.erb

HTML+PHP:
  type: markup
  group: HTML
  primary_extension: .phtml
  extensions:
  - .phtml

HaXe:
  type: programming
  lexer: haXe
  ace_mode: haxe
  color: "#346d51"
  primary_extension: .hx
  extensions:
  - .hx
  - .hxml
  - .mtt

Haml:
  group: HTML
  type: markup
  primary_extension: .haml

Haskell:
  type: programming
  color: "#29b544"
  primary_extension: .hs
  extensions:
  - .hs
  - .hsc

INI:
  type: data
  extensions:
  - .cfg
  - .ini
  - .prefs
  - .properties
  primary_extension: .ini

IRC log:
  lexer: IRC logs
  search_term: irc
  aliases:
  - irc
  primary_extension: .irclog
  extensions:
  - .weechatlog

Io:
  type: programming
  color: "#a9188d"
  primary_extension: .io
  extensions:
  - .io

Ioke:
  type: programming
  color: "#078193"
  primary_extension: .ik

JSON:
  type: data
  group: JavaScript
  ace_mode: json
  searchable: false
  primary_extension: .json

Java:
  type: programming
  ace_mode: java
  color: "#b07219"
  primary_extension: .java
  extensions:
  - .pde

Java Server Pages:
  group: Java
  lexer: Java Server Page
  search_term: jsp
  aliases:
  - jsp
  primary_extension: .jsp
  extensions:
  - .jsp

JavaScript:
  type: programming
  ace_mode: javascript
  color: "#f15501"
  aliases:
  - js
  - node
  primary_extension: .js
  extensions:
  - ._js
  - .bones
  - .jake
  - .jsfl
  - .jsm
  - .jss
  - .jsx
  - .pac
  - .sjs
  - .ssjs
  filenames:
  - Jakefile

Julia:
  type: programming
  primary_extension: .jl

Kotlin:
  type: programming
  primary_extension: .kt
  extensions:
  - .ktm
  - .kts

LLVM:
  primary_extension: .ll
  extensions:
  - .ll

LilyPond:
  lexer: Text only
  primary_extension: .ly
  extensions:
  - .ily
  - .ly

Literate Haskell:
  type: programming
  group: Haskell
  search_term: lhs
  aliases:
  - lhs
  primary_extension: .lhs
  extensions:
  - .lhs

Logtalk:
  type: programming
  primary_extension: .lgt

Lua:
  type: programming
  ace_mode: lua
  color: "#fa1fa1"
  primary_extension: .lua
  extensions:
  - .lua
  - .nse

Makefile:
  extensions:
  - .mak
  - .mk
  primary_extension: .mak
  filenames:
  - makefile
  - Makefile
  - GNUmakefile

Mako:
  primary_extension: .mako
  extensions:
  - .mako
  - .mao

Markdown:
  type: markup
  lexer: Text only
  ace_mode: markdown
  primary_extension: .md
  extensions:
  - .markdown
  - .mkd
  - .mkdown
  - .ron

Matlab:
  type: programming
  color: "#bb92ac"
  primary_extension: .matlab
  extensions:
  - .matlab

Max:
  type: programming
  color: "#ce279c"
  lexer: Text only
  aliases:
  - max/msp
  - maxmsp
  search_term: max/msp
  primary_extension: .mxt

MiniD: # Legacy
  searchable: false
  primary_extension: .minid # Dummy extension

Mirah:
  type: programming
  lexer: Ruby
  search_term: ruby
  color: "#c7a938"
  primary_extension: .druby
  extensions:
  - .duby
  - .mir
  - .mirah

Moocode:
  lexer: MOOCode
  primary_extension: .moo
  extensions:
  - .moo

Myghty:
  primary_extension: .myt
  extensions:
  - .myt

Nemerle:
  type: programming
  color: "#0d3c6e"
  primary_extension: .n

Nimrod:
  type: programming
  color: "#37775b"
  primary_extension: .nim
  extensions:
  - .nimrod

Nu:
  type: programming
  lexer: Scheme
  color: "#c9df40"
  aliases:
  - nush
  primary_extension: .nu
  filenames:
  - Nukefile

NumPy:
  group: Python
  primary_extension: .numpy
  extensions:
  - .numpy
  - .numpyw
  - .numsc

OCaml:
  type: programming
  ace_mode: ocaml
  color: "#3be133"
  primary_extension: .ml
  extensions:
  - .mli
  - .mll
  - .mly

ObjDump:
  type: data
  lexer: objdump
  primary_extension: .objdump
  extensions:
  - .objdump

Objective-C:
  type: programming
  color: "#438eff"
  primary_extension: .m
  extensions:
  - .mm

Objective-J:
  type: programming
  color: "#ff0c5a"
  primary_extension: .j
  extensions:
  - .j
  - .sj

Opa:
  type: programming
  primary_extension: .opa

OpenCL:
  type: programming
  group: C
  lexer: C
  primary_extension: .cl

OpenEdge ABL:
  type: programming
  aliases:
  - progress
  - openedge
  - abl
  primary_extension: .p

PHP:
  type: programming
  ace_mode: php
  color: "#6e03c1"
  primary_extension: .php
  extensions:
  - .aw
  - .ctp
  - .php3
  - .php4
  - .php5
  - .phpt
  filenames:
  - Phakefile

Parrot:
  type: programming
  color: "#f3ca0a"
  lexer: Text only
  primary_extension: .parrot # Dummy extension

Parrot Internal Representation:
  group: Parrot
  type: programming
  lexer: Text only
  aliases:
  - pir
  primary_extension: .pir

Parrot Assembly:
  group: Parrot
  type: programming
  lexer: Text only
  aliases:
  - pasm
  primary_extension: .pasm

Perl:
  type: programming
  ace_mode: perl
  color: "#0298c3"
  primary_extension: .pl
  extensions:
  - .PL
  - .perl
  - .ph
  - .plx
  - .pm6
  - .pod
  - .psgi

PowerShell:
  type: programming
  ace_mode: powershell
  aliases:
  - posh
  primary_extension: .ps1

Prolog:
  type: programming
  color: "#74283c"
  primary_extension: .prolog
  extensions:
  - .pro
  - .prolog

Puppet:
  type: programming
  color: "#cc5555"
  primary_extension: .pp
  extensions:
  - .pp
  filenames:
  - Modulefile

Pure Data:
  type: programming
  color: "#91de79"
  lexer: Text only
  primary_extension: .pd
  extensions:
  - .pd

Python:
  type: programming
  ace_mode: python
  color: "#3581ba"
  primary_extension: .py
  extensions:
  - .pyw
  - .wsgi
  - .xpy
  filenames:
  - wscript

Python traceback:
  type: data
  group: Python
  lexer: Python Traceback
  searchable: false
  primary_extension: .pytb
  extensions:
  - .pytb

R:
  type: programming
  color: "#198ce7"
  lexer: S
  primary_extension: .r
  extensions:
  - .r

RHTML:
  type: markup
  group: HTML
  primary_extension: .rhtml
  extensions:
  - .rhtml

Racket:
  type: programming
  lexer: Scheme
  color: "#ae17ff"
  primary_extension: .rkt
  extensions:
  - .rktd
  - .rktl

Raw token data:
  search_term: raw
  aliases:
  - raw
  primary_extension: .raw
  extensions:
  - .raw

Rebol:
  type: programming
  lexer: REBOL
  color: "#358a5b"
  primary_extension: .rebol
  extensions:
  - .r2
  - .r3
  - .rebol

Redcode:
  primary_extension: .cw
  extensions:
  - .cw

Ruby:
  type: programming
  ace_mode: ruby
  color: "#701516"
  aliases:
  - jruby
  - macruby
  - rake
  - rb
  - rbx
  primary_extension: .rb
  extensions:
  - .builder
  - .gemspec
  - .god
  - .irbrc
  - .podspec
  - .rbuild
  - .rbw
  - .rbx
  - .ru
  - .thor
  - .watchr
  filenames:
  - Gemfile
  - Guardfile
  - Podfile
  - Thorfile
  - Vagrantfile

Rust:
  type: programming
  color: "#dea584"
  lexer: Text only
  primary_extension: .rs

SCSS:
  type: markup
  group: CSS
  ace_mode: scss
  primary_extension: .scss

SQL:
  type: data
  ace_mode: sql
  searchable: false
  primary_extension: .sql
  extensions:
  - .sql

Sage:
  type: programming
  lexer: Python
  group: Python
  primary_extension: .sage
  extensions:
  - .sage

Sass:
  type: markup
  group: CSS
  primary_extension: .sass

Scala:
  type: programming
  ace_mode: scala
  color: "#7dd3b0"
  primary_extension: .scala

Scheme:
  type: programming
  color: "#1e4aec"
  primary_extension: .scm
  extensions:
  - .scm
  - .sls
  - .ss

Scilab:
  type: programming
  primary_extension: .sci

Self:
  type: programming
  color: "#0579aa"
  lexer: Text only
  primary_extension: .self
  extensions:
  - .self

Shell:
  type: programming
  lexer: Bash
  search_term: bash
  color: "#5861ce"
  aliases:
  - sh
  - bash
  - zsh
  primary_extension: .sh
  filenames:
  - .zsh
  - bashrc
  - zshrc

Smalltalk:
  type: programming
  color: "#596706"
  primary_extension: .st
  extensions:
  - .st

Smarty:
  primary_extension: .tpl
  extensions:
  - .tpl

Standard ML:
  type: programming
  color: "#dc566d"
  aliases:
  - sml
  primary_extension: .sml

SuperCollider:
  type: programming
  color: "#46390b"
  lexer: Text only
  primary_extension: .sc

Tcl:
  type: programming
  color: "#e4cc98"
  primary_extension: .tcl
  extensions:
  - .tcl

Tcsh:
  type: programming
  group: Shell
  primary_extension: .tcsh
  extensions:
  - .csh
  - .tcsh

TeX:
  type: markup
  ace_mode: latex
  primary_extension: .tex
  extensions:
  - .aux
  - .dtx
  - .ins
  - .ltx
  - .sty
  - .tex
  - .toc

Tea:
  type: markup
  primary_extension: .tea

Textile:
  type: markup
  lexer: Text only
  ace_mode: textile
  primary_extension: .textile
  extensions:
  - .textile

Turing:
  type: programming
  color: "#45f715"
  lexer: Text only
  primary_extension: .t
  extensions:
  - .tu

Twig:
  type: markup
  group: PHP
  lexer: HTML+Django/Jinja
  primary_extension: .twig
  extensions:
  - .twig

VHDL:
  type: programming
  lexer: vhdl
  color: "#543978"
  primary_extension: .vhdl
  extensions:
  - .vhdl

Vala:
  type: programming
  color: "#ee7d06"
  primary_extension: .vala
  extensions:
  - .vala
  - .vapi

Verilog:
  type: programming
  lexer: verilog
  color: "#848bf3"
  primary_extension: .v

VimL:
  type: programming
  color: "#199c4b"
  search_term: vim
  aliases:
  - vim
  primary_extension: .vim
  extensions:
  - .vim
  filenames:
  - vimrc
  - gvimrc

Visual Basic:
  type: programming
  lexer: VB.net
  color: "#945db7"
  primary_extension: .vb
  extensions:
  - .bas
  - .frx
  - .vb
  - .vba
  - .vbs

XML:
  type: markup
  ace_mode: xml
  primary_extension: .xml
  extensions:
  - .glade
  - .kml
  - .mxml
  - .plist
  - .rdf
  - .rss
  - .svg
  - .wsdl
  - .wxi
  - .wxl
  - .wxs
  - .xaml
  - .xlf
  - .xliff
  - .xsd
  - .xsl
  - .xul
  filenames:
  - .classpath
  - .project

XQuery:
  type: programming
  color: "#2700e2"
  primary_extension: .xquery
  extensions:
  - .xq
  - .xquery
  - .xqy

XS:
  lexer: C
  primary_extension: .xs
  extensions:
  - .xs

XSLT:
  type: markup
  group: XML
  primary_extension: .xslt

YAML:
  type: markup
  primary_extension: .yml
  extensions:
  - .yaml
  - .yml

eC:
  type: programming
  search_term: ec
  primary_extension: .ec
  extensions:
  - .ec
  - .eh

mupad:
  lexer: MuPAD
  primary_extension: .mu
  extensions:
  - .mu

ooc:
  type: programming
  lexer: Ooc
  color: "#b0b77e"
  primary_extension: .ooc
  extensions:
  - .ooc

reStructuredText:
  type: markup
  search_term: rst
  aliases:
  - rst
  primary_extension: .rst
  extensions:
  - .rst
  - .rest
