Compare commits

..

17 Commits

Author SHA1 Message Date
Adam Roben
875b3157bf Merge pull request #1757 from github/cut-release-v4.0.3
Bump version to 4.0.3
2014-11-21 12:06:38 -05:00
Adam Roben
4ce9048f8d Bump version to 4.0.3 2014-11-21 11:56:17 -05:00
Adam Roben
04f1b1df48 Merge pull request #1756 from github/test-for-grammars
Test that all languages have grammars
2014-11-21 11:54:46 -05:00
Adam Roben
f9c36345c3 Add some docs for tm_scope 2014-11-21 11:53:52 -05:00
Adam Roben
ec3967d080 Change NONE to none
NONE is a little shouty.
2014-11-21 11:52:29 -05:00
Arfon Smith
05a88b5b7e Merge pull request #1754 from github/chart-js
Chart js
2014-11-21 09:30:20 -06:00
Arfon Smith
b6b2cf04a7 Checking other case for Chart.jS 2014-11-21 09:29:28 -06:00
Adam Roben
49247e9ec2 Test that all languages have grammars
This will make CI fail if someone adds a new language but neglects to
add a new grammar for it. This should make it easier for people to
review PRs, as CI will help them to make sure a new grammar gets added.

However, we currently support some languages that have no grammars, and
we may support more in the future. So you can explicitly mark the
language as having no grammar by setting `tm_scope: NONE` in
languages.yml.
2014-11-21 09:48:52 -05:00
Adam Roben
6629b75aa6 Merge pull request #1755 from github/fix-rhtml-scope
Fix RHTML's tm_scope
2014-11-21 09:31:07 -05:00
Adam Roben
e702b453ec Fix RHTML's tm_scope
I missed this back in 9595e2ba7e.
2014-11-21 09:29:06 -05:00
Arfon Smith
38190d92fc Chart JS is vendored 2014-11-21 08:24:33 -06:00
Adam Roben
109ca5735b Merge pull request #1753 from github/better-bro-grammar
Switch to a better grammar for Bro
2014-11-21 09:23:28 -05:00
Adam Roben
4dde499f51 Switch to a better grammar for Bro
This grammar seems to be replacing the other ones out there and is
maintained by the Bro organization.
2014-11-21 09:17:19 -05:00
Vicent Marti
5fd18a215e Merge pull request #1752 from github/sqf-grammar
Use a SQF grammar for SQF files
2014-11-21 11:31:50 +01:00
Adam Roben
2054afc741 Use a SQF grammar for SQF files
This produces better highlighting than using the C++ grammar.

The grammar is licensed under the Apache 2.0 license.
2014-11-20 17:22:55 -05:00
Brandon Keepers
231ad86176 sync cached gems 2014-11-20 08:51:56 -05:00
Florian Kaiser
9658b02502 add Chart.js as vendor
http://www.chartjs.org
2014-11-20 10:02:45 +01:00
8 changed files with 106 additions and 6 deletions

View File

@@ -38,6 +38,8 @@ https://github.com/Drako/SublimeBrainfuck/raw/master/Brainfuck.tmLanguage:
- source.bf - source.bf
https://github.com/JohnNilsson/awk-sublime/raw/master/AWK.tmLanguage: https://github.com/JohnNilsson/awk-sublime/raw/master/AWK.tmLanguage:
- source.awk - source.awk
https://github.com/JonBons/Sublime-SQF-Language:
- source.sqf
https://github.com/MarioRicalde/SCSS.tmbundle: https://github.com/MarioRicalde/SCSS.tmbundle:
- source.scss - source.scss
https://github.com/Oldes/Sublime-REBOL: https://github.com/Oldes/Sublime-REBOL:
@@ -97,6 +99,8 @@ https://github.com/bholt/chapel-tmbundle:
- source.chapel - source.chapel
https://github.com/brandonwamboldt/sublime-nginx: https://github.com/brandonwamboldt/sublime-nginx:
- source.nginx - source.nginx
https://github.com/bro/bro-sublime:
- source.bro
https://github.com/carsonoid/sublime_man_page_support/raw/master/man-groff.tmLanguage: https://github.com/carsonoid/sublime_man_page_support/raw/master/man-groff.tmLanguage:
- text.groff - text.groff
https://github.com/ccreutzig/sublime-MuPAD: https://github.com/ccreutzig/sublime-MuPAD:
@@ -215,9 +219,6 @@ https://github.com/slavapestov/factor/raw/master/misc/Factor.tmbundle/Syntaxes/F
- source.factor - source.factor
https://github.com/slim-template/ruby-slim.tmbundle: https://github.com/slim-template/ruby-slim.tmbundle:
- text.slim - text.slim
https://github.com/smiledawgg/Bro.tmbundle:
- source.bro
- source.bro.sig
https://github.com/staltz/SublimeXtend: https://github.com/staltz/SublimeXtend:
- source.xtend - source.xtend
https://github.com/statatmbundle/Stata.tmbundle: https://github.com/statatmbundle/Stata.tmbundle:

View File

@@ -12,6 +12,10 @@
# search_term - Deprecated: Some languages maybe indexed under a # search_term - Deprecated: Some languages maybe indexed under a
# different alias. Avoid defining new exceptions. # different alias. Avoid defining new exceptions.
# color - CSS hex color to represent the language. # color - CSS hex color to represent the language.
# tm_scope - The TextMate scope that represents this programming
# language. This should match one of the scopes listed in
# the grammars.yml file. Use "none" if there is no grammar
# for this language.
# #
# Any additions or modifications (even trivial) should have corresponding # Any additions or modifications (even trivial) should have corresponding
# test change in `test/test_blob.rb`. # test change in `test/test_blob.rb`.
@@ -45,6 +49,7 @@ APL:
extensions: extensions:
- .apl - .apl
- .dyalog - .dyalog
tm_scope: none
ASP: ASP:
type: programming type: programming
@@ -146,6 +151,7 @@ Arc:
color: "#ca2afe" color: "#ca2afe"
extensions: extensions:
- .arc - .arc
tm_scope: none
Arduino: Arduino:
type: programming type: programming
@@ -162,12 +168,14 @@ AsciiDoc:
- .asciidoc - .asciidoc
- .adoc - .adoc
- .asc - .asc
tm_scope: none
AspectJ: AspectJ:
type: programming type: programming
color: "#1957b0" color: "#1957b0"
extensions: extensions:
- .aj - .aj
tm_scope: none
Assembly: Assembly:
type: programming type: programming
@@ -185,6 +193,7 @@ Augeas:
type: programming type: programming
extensions: extensions:
- .aug - .aug
tm_scope: none
AutoHotkey: AutoHotkey:
type: programming type: programming
@@ -194,6 +203,7 @@ AutoHotkey:
extensions: extensions:
- .ahk - .ahk
- .ahkl - .ahkl
tm_scope: none
AutoIt: AutoIt:
type: programming type: programming
@@ -286,6 +296,7 @@ Brightscript:
type: programming type: programming
extensions: extensions:
- .brs - .brs
tm_scope: none
Bro: Bro:
type: programming type: programming
@@ -359,6 +370,7 @@ CLIPS:
type: programming type: programming
extensions: extensions:
- .clp - .clp
tm_scope: none
CMake: CMake:
extensions: extensions:
@@ -421,6 +433,7 @@ Clean:
extensions: extensions:
- .icl - .icl
- .dcl - .dcl
tm_scope: none
Clojure: Clojure:
type: programming type: programming
@@ -537,6 +550,7 @@ Creole:
wrap: true wrap: true
extensions: extensions:
- .creole - .creole
tm_scope: none
Crystal: Crystal:
type: programming type: programming
@@ -604,6 +618,7 @@ Darcs Patch:
extensions: extensions:
- .darcspatch - .darcspatch
- .dpatch - .dpatch
tm_scope: none
Dart: Dart:
type: programming type: programming
@@ -631,6 +646,7 @@ Dogescript:
color: "#cca760" color: "#cca760"
extensions: extensions:
- .djs - .djs
tm_scope: none
Dylan: Dylan:
type: programming type: programming
@@ -646,6 +662,7 @@ E:
color: "#ccce35" color: "#ccce35"
extensions: extensions:
- .E - .E
tm_scope: none
ECL: ECL:
type: programming type: programming
@@ -653,6 +670,7 @@ ECL:
extensions: extensions:
- .ecl - .ecl
- .eclxml - .eclxml
tm_scope: none
Eagle: Eagle:
type: markup type: markup
@@ -736,6 +754,7 @@ FLUX:
extensions: extensions:
- .fx - .fx
- .flux - .flux
tm_scope: none
FORTRAN: FORTRAN:
type: programming type: programming
@@ -809,11 +828,13 @@ G-code:
- .g - .g
- .gco - .gco
- .gcode - .gcode
tm_scope: none
GAMS: GAMS:
type: programming type: programming
extensions: extensions:
- .gms - .gms
tm_scope: none
GAP: GAP:
type: programming type: programming
@@ -822,6 +843,7 @@ GAP:
- .gap - .gap
- .gd - .gd
- .gi - .gi
tm_scope: none
GAS: GAS:
type: programming type: programming
@@ -835,6 +857,7 @@ GDScript:
type: programming type: programming
extensions: extensions:
- .gd - .gd
tm_scope: none
GLSL: GLSL:
group: C group: C
@@ -919,6 +942,7 @@ Golo:
color: "#f6a51f" color: "#f6a51f"
extensions: extensions:
- .golo - .golo
tm_scope: none
Gosu: Gosu:
type: programming type: programming
@@ -934,6 +958,7 @@ Grace:
type: programming type: programming
extensions: extensions:
- .grace - .grace
tm_scope: none
Grammatical Framework: Grammatical Framework:
type: programming type: programming
@@ -950,6 +975,7 @@ Graph Modeling Language:
type: data type: data
extensions: extensions:
- .gml - .gml
tm_scope: none
Graphviz (DOT): Graphviz (DOT):
type: data type: data
@@ -1039,6 +1065,7 @@ HTTP:
type: data type: data
extensions: extensions:
- .http - .http
tm_scope: none
Hack: Hack:
type: programming type: programming
@@ -1046,6 +1073,7 @@ Hack:
extensions: extensions:
- .hh - .hh
- .php - .php
tm_scope: none
Haml: Haml:
group: HTML group: HTML
@@ -1068,6 +1096,7 @@ Harbour:
color: "#0e60e3" color: "#0e60e3"
extensions: extensions:
- .hb - .hb
tm_scope: none
Haskell: Haskell:
type: programming type: programming
@@ -1093,6 +1122,7 @@ Hy:
- .hy - .hy
aliases: aliases:
- hylang - hylang
tm_scope: none
IDL: IDL:
type: programming type: programming
@@ -1108,6 +1138,7 @@ IGOR Pro:
aliases: aliases:
- igor - igor
- igorpro - igorpro
tm_scope: none
INI: INI:
type: data type: data
@@ -1128,6 +1159,7 @@ IRC log:
extensions: extensions:
- .irclog - .irclog
- .weechatlog - .weechatlog
tm_scope: none
Idris: Idris:
type: programming type: programming
@@ -1149,6 +1181,7 @@ Inform 7:
Inno Setup: Inno Setup:
extensions: extensions:
- .iss - .iss
tm_scope: none
Io: Io:
type: programming type: programming
@@ -1167,11 +1200,13 @@ Isabelle:
color: "#fdcd00" color: "#fdcd00"
extensions: extensions:
- .thy - .thy
tm_scope: none
J: J:
type: programming type: programming
extensions: extensions:
- .ijs - .ijs
tm_scope: none
JSON: JSON:
type: data type: data
@@ -1279,6 +1314,7 @@ KRL:
color: "#f5c800" color: "#f5c800"
extensions: extensions:
- .krl - .krl
tm_scope: none
Kit: Kit:
type: markup type: markup
@@ -1312,6 +1348,7 @@ LOLCODE:
extensions: extensions:
- .lol - .lol
color: "#cc9900" color: "#cc9900"
tm_scope: none
LSL: LSL:
type: programming type: programming
@@ -1326,6 +1363,7 @@ LabVIEW:
type: programming type: programming
extensions: extensions:
- .lvproj - .lvproj
tm_scope: none
Lasso: Lasso:
type: programming type: programming
@@ -1364,12 +1402,14 @@ Liquid:
type: markup type: markup
extensions: extensions:
- .liquid - .liquid
tm_scope: none
Literate Agda: Literate Agda:
type: programming type: programming
group: Agda group: Agda
extensions: extensions:
- .lagda - .lagda
tm_scope: none
Literate CoffeeScript: Literate CoffeeScript:
type: programming type: programming
@@ -1546,6 +1586,7 @@ MediaWiki:
wrap: true wrap: true
extensions: extensions:
- .mediawiki - .mediawiki
tm_scope: none
Mercury: Mercury:
type: programming type: programming
@@ -1560,6 +1601,7 @@ MiniD: # Legacy
searchable: false searchable: false
extensions: extensions:
- .minid # Dummy extension - .minid # Dummy extension
tm_scope: none
Mirah: Mirah:
type: programming type: programming
@@ -1581,6 +1623,7 @@ Moocode:
type: programming type: programming
extensions: extensions:
- .moo - .moo
tm_scope: none
MoonScript: MoonScript:
type: programming type: programming
@@ -1592,6 +1635,7 @@ MoonScript:
Myghty: Myghty:
extensions: extensions:
- .myt - .myt
tm_scope: none
NSIS: NSIS:
extensions: extensions:
@@ -1637,6 +1681,7 @@ Nit:
color: "#0d8921" color: "#0d8921"
extensions: extensions:
- .nit - .nit
tm_scope: none
Nix: Nix:
type: programming type: programming
@@ -1644,6 +1689,7 @@ Nix:
- .nix - .nix
aliases: aliases:
- nixos - nixos
tm_scope: none
Nu: Nu:
type: programming type: programming
@@ -1662,6 +1708,7 @@ NumPy:
- .numpy - .numpy
- .numpyw - .numpyw
- .numsc - .numsc
tm_scope: none
OCaml: OCaml:
type: programming type: programming
@@ -1722,6 +1769,7 @@ Omgrofl:
extensions: extensions:
- .omgrofl - .omgrofl
color: "#cabbff" color: "#cabbff"
tm_scope: none
Opa: Opa:
type: programming type: programming
@@ -1733,6 +1781,7 @@ Opal:
color: "#f7ede0" color: "#f7ede0"
extensions: extensions:
- .opal - .opal
tm_scope: none
OpenCL: OpenCL:
type: programming type: programming
@@ -1757,12 +1806,14 @@ OpenSCAD:
type: programming type: programming
extensions: extensions:
- .scad - .scad
tm_scope: none
Org: Org:
type: prose type: prose
wrap: true wrap: true
extensions: extensions:
- .org - .org
tm_scope: none
Ox: Ox:
type: programming type: programming
@@ -1770,12 +1821,14 @@ Ox:
- .ox - .ox
- .oxh - .oxh
- .oxo - .oxo
tm_scope: none
Oxygene: Oxygene:
type: programming type: programming
color: "#5a63a3" color: "#5a63a3"
extensions: extensions:
- .oxygene - .oxygene
tm_scope: none
PAWN: PAWN:
type: programming type: programming
@@ -1811,18 +1864,21 @@ Pan:
color: '#cc0000' color: '#cc0000'
extensions: extensions:
- .pan - .pan
tm_scope: none
Papyrus: Papyrus:
type: programming type: programming
color: "#6600cc" color: "#6600cc"
extensions: extensions:
- .psc - .psc
tm_scope: none
Parrot: Parrot:
type: programming type: programming
color: "#f3ca0a" color: "#f3ca0a"
extensions: extensions:
- .parrot # Dummy extension - .parrot # Dummy extension
tm_scope: none
Parrot Assembly: Parrot Assembly:
group: Parrot group: Parrot
@@ -1831,6 +1887,7 @@ Parrot Assembly:
- pasm - pasm
extensions: extensions:
- .pasm - .pasm
tm_scope: none
Parrot Internal Representation: Parrot Internal Representation:
group: Parrot group: Parrot
@@ -1882,12 +1939,14 @@ Perl6:
- .p6m - .p6m
- .pl6 - .pl6
- .pm6 - .pm6
tm_scope: none
PigLatin: PigLatin:
type: programming type: programming
color: "#fcd7de" color: "#fcd7de"
extensions: extensions:
- .pig - .pig
tm_scope: none
Pike: Pike:
type: programming type: programming
@@ -1902,12 +1961,14 @@ Pod:
wrap: true wrap: true
extensions: extensions:
- .pod - .pod
tm_scope: none
PogoScript: PogoScript:
type: programming type: programming
color: "#d80074" color: "#d80074"
extensions: extensions:
- .pogo - .pogo
tm_scope: none
PostScript: PostScript:
type: markup type: markup
@@ -1948,6 +2009,7 @@ Propeller Spin:
color: "#2b446d" color: "#2b446d"
extensions: extensions:
- .spin - .spin
tm_scope: none
Protocol Buffer: Protocol Buffer:
type: markup type: markup
@@ -1971,6 +2033,7 @@ Pure Data:
color: "#91de79" color: "#91de79"
extensions: extensions:
- .pd - .pd
tm_scope: none
PureScript: PureScript:
type: programming type: programming
@@ -2066,7 +2129,7 @@ RHTML:
group: HTML group: HTML
extensions: extensions:
- .rhtml - .rhtml
tm_scope: text.html.ruby tm_scope: text.html.erb
aliases: aliases:
- html+ruby - html+ruby
@@ -2077,6 +2140,7 @@ RMarkdown:
extensions: extensions:
- .rmd - .rmd
- .Rmd - .Rmd
tm_scope: none
Racket: Racket:
type: programming type: programming
@@ -2096,6 +2160,7 @@ Ragel in Ruby Host:
aliases: aliases:
- ragel-rb - ragel-rb
- ragel-ruby - ragel-ruby
tm_scope: none
Raw token data: Raw token data:
search_term: raw search_term: raw
@@ -2103,6 +2168,7 @@ Raw token data:
- raw - raw
extensions: extensions:
- .raw - .raw
tm_scope: none
Rebol: Rebol:
type: programming type: programming
@@ -2122,10 +2188,12 @@ Red:
- .reds - .reds
aliases: aliases:
- red/system - red/system
tm_scope: none
Redcode: Redcode:
extensions: extensions:
- .cw - .cw
tm_scope: none
RobotFramework: RobotFramework:
type: programming type: programming
@@ -2199,6 +2267,7 @@ SAS:
color: "#1E90FF" color: "#1E90FF"
extensions: extensions:
- .sas - .sas
tm_scope: none
SCSS: SCSS:
type: markup type: markup
@@ -2214,7 +2283,7 @@ SQF:
extensions: extensions:
- .sqf - .sqf
- .hqf - .hqf
tm_scope: source.c++ tm_scope: source.sqf
SQL: SQL:
type: data type: data
@@ -2292,6 +2361,7 @@ Self:
color: "#0579aa" color: "#0579aa"
extensions: extensions:
- .self - .self
tm_scope: none
Shell: Shell:
type: programming type: programming
@@ -2330,6 +2400,7 @@ Shen:
color: "#120F14" color: "#120F14"
extensions: extensions:
- .shen - .shen
tm_scope: none
Slash: Slash:
type: programming type: programming
@@ -2400,6 +2471,7 @@ Stylus:
group: CSS group: CSS
extensions: extensions:
- .styl - .styl
tm_scope: none
SuperCollider: SuperCollider:
type: programming type: programming
@@ -2407,6 +2479,7 @@ SuperCollider:
extensions: extensions:
- .scd - .scd
- .sc - .sc
tm_scope: none
Swift: Swift:
type: programming type: programming
@@ -2432,6 +2505,7 @@ TXL:
type: programming type: programming
extensions: extensions:
- .txl - .txl
tm_scope: none
Tcl: Tcl:
type: programming type: programming
@@ -2488,6 +2562,7 @@ Textile:
wrap: true wrap: true
extensions: extensions:
- .textile - .textile
tm_scope: none
Thrift: Thrift:
type: programming type: programming
@@ -2501,6 +2576,7 @@ Turing:
extensions: extensions:
- .t - .t
- .tu - .tu
tm_scope: none
Twig: Twig:
type: markup type: markup
@@ -2761,6 +2837,7 @@ Zimpl:
- .zimpl - .zimpl
- .zmpl - .zmpl
- .zpl - .zpl
tm_scope: none
eC: eC:
type: programming type: programming
@@ -2768,6 +2845,7 @@ eC:
extensions: extensions:
- .ec - .ec
- .eh - .eh
tm_scope: none
edn: edn:
type: data type: data
@@ -2782,6 +2860,7 @@ fish:
group: Shell group: Shell
extensions: extensions:
- .fish - .fish
tm_scope: none
mupad: mupad:
extensions: extensions:
@@ -2822,3 +2901,4 @@ xBase:
color: "#3a4040" color: "#3a4040"
extensions: extensions:
- .prg - .prg
tm_scope: none

View File

@@ -110,6 +110,9 @@
# MathJax # MathJax
- (^|/)MathJax/ - (^|/)MathJax/
# Chart.js
- (^|/)Chart\.js$
# Codemirror # Codemirror
- (^|/)[Cc]ode[Mm]irror/(lib|mode|theme|addon|keymap) - (^|/)[Cc]ode[Mm]irror/(lib|mode|theme|addon|keymap)

View File

@@ -1,3 +1,3 @@
module Linguist module Linguist
VERSION = "4.0.2" VERSION = "4.0.3"
end end

View File

@@ -297,6 +297,10 @@ class TestBlob < Test::Unit::TestCase
assert blob("deps/http_parser/http_parser.c").vendored? assert blob("deps/http_parser/http_parser.c").vendored?
assert blob("deps/v8/src/v8.h").vendored? assert blob("deps/v8/src/v8.h").vendored?
# Chart.js
assert blob("some/vendored/path/Chart.js").vendored?
assert !blob("some/vendored/path/chart.js").vendored?
# Codemirror deps # Codemirror deps
assert blob("codemirror/mode/blah.js").vendored? assert blob("codemirror/mode/blah.js").vendored?

View File

@@ -1,5 +1,6 @@
require 'linguist/language' require 'linguist/language'
require 'test/unit' require 'test/unit'
require 'yaml'
class TestLanguage < Test::Unit::TestCase class TestLanguage < Test::Unit::TestCase
include Linguist include Linguist
@@ -359,4 +360,15 @@ class TestLanguage < Test::Unit::TestCase
def test_by_type def test_by_type
assert !Language.by_type(:prose).nil? assert !Language.by_type(:prose).nil?
end end
def test_all_languages_have_grammars
scopes = YAML.load(File.read(File.expand_path("../../grammars.yml", __FILE__))).values.flatten
missing = Language.all.reject { |language| language.tm_scope == "none" || scopes.include?(language.tm_scope) }
message = "The following languages' scopes are not listed in grammars.yml. Please add grammars for all new languages.\n"
message << "If no grammar exists for a language, mark the language with `tm_scope: none` in lib/linguist/languages.yml.\n"
width = missing.map { |language| language.name.length }.max
message << missing.map { |language| sprintf("%-#{width}s %s", language.name, language.tm_scope) }.sort.join("\n")
assert missing.empty?, message
end
end end

BIN
vendor/cache/mime-types-2.4.3.gem vendored Normal file

Binary file not shown.

BIN
vendor/cache/yajl-ruby-1.2.1.gem vendored Normal file

Binary file not shown.