mirror of
https://github.com/KevinMidboe/linguist.git
synced 2026-02-11 10:49:33 +00:00
Merge branch 'master' into brightscript_support
Conflicts: lib/linguist/samples.json
This commit is contained in:
5
Gemfile
5
Gemfile
@@ -1,2 +1,7 @@
|
|||||||
source 'https://rubygems.org'
|
source 'https://rubygems.org'
|
||||||
gemspec
|
gemspec
|
||||||
|
|
||||||
|
if RUBY_VERSION < "1.9.3"
|
||||||
|
# escape_utils 1.0.0 requires 1.9.3 and above
|
||||||
|
gem "escape_utils", "0.3.2"
|
||||||
|
end
|
||||||
|
|||||||
9
Rakefile
9
Rakefile
@@ -1,5 +1,7 @@
|
|||||||
require 'rake/clean'
|
require 'rake/clean'
|
||||||
require 'rake/testtask'
|
require 'rake/testtask'
|
||||||
|
require 'yaml'
|
||||||
|
require 'json'
|
||||||
|
|
||||||
task :default => :test
|
task :default => :test
|
||||||
|
|
||||||
@@ -13,6 +15,13 @@ task :samples do
|
|||||||
File.open('lib/linguist/samples.json', 'w') { |io| io.write json }
|
File.open('lib/linguist/samples.json', 'w') { |io| io.write json }
|
||||||
end
|
end
|
||||||
|
|
||||||
|
task :build_gem do
|
||||||
|
languages = YAML.load_file("lib/linguist/languages.yml")
|
||||||
|
File.write("lib/linguist/languages.json", JSON.dump(languages))
|
||||||
|
`gem build github-linguist.gemspec`
|
||||||
|
File.delete("lib/linguist/languages.json")
|
||||||
|
end
|
||||||
|
|
||||||
namespace :classifier do
|
namespace :classifier do
|
||||||
LIMIT = 1_000
|
LIMIT = 1_000
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
Gem::Specification.new do |s|
|
Gem::Specification.new do |s|
|
||||||
s.name = 'github-linguist'
|
s.name = 'github-linguist'
|
||||||
s.version = '2.9.8'
|
s.version = '2.10.0'
|
||||||
s.summary = "GitHub Language detection"
|
s.summary = "GitHub Language detection"
|
||||||
|
|
||||||
s.authors = "GitHub"
|
s.authors = "GitHub"
|
||||||
@@ -10,9 +10,9 @@ Gem::Specification.new do |s|
|
|||||||
s.executables << 'linguist'
|
s.executables << 'linguist'
|
||||||
|
|
||||||
s.add_dependency 'charlock_holmes', '~> 0.6.6'
|
s.add_dependency 'charlock_holmes', '~> 0.6.6'
|
||||||
s.add_dependency 'escape_utils', '~> 0.3.1'
|
s.add_dependency 'escape_utils', '>= 0.3.1'
|
||||||
s.add_dependency 'mime-types', '~> 1.19'
|
s.add_dependency 'mime-types', '~> 1.19'
|
||||||
s.add_dependency 'pygments.rb', '~> 0.5.2'
|
s.add_dependency 'pygments.rb', '~> 0.5.4'
|
||||||
|
|
||||||
s.add_development_dependency 'json'
|
s.add_development_dependency 'json'
|
||||||
s.add_development_dependency 'mocha'
|
s.add_development_dependency 'mocha'
|
||||||
|
|||||||
@@ -1,6 +1,10 @@
|
|||||||
require 'escape_utils'
|
require 'escape_utils'
|
||||||
require 'pygments'
|
require 'pygments'
|
||||||
require 'yaml'
|
require 'yaml'
|
||||||
|
begin
|
||||||
|
require 'json'
|
||||||
|
rescue LoadError
|
||||||
|
end
|
||||||
|
|
||||||
require 'linguist/classifier'
|
require 'linguist/classifier'
|
||||||
require 'linguist/samples'
|
require 'linguist/samples'
|
||||||
@@ -455,7 +459,16 @@ module Linguist
|
|||||||
filenames = Samples::DATA['filenames']
|
filenames = Samples::DATA['filenames']
|
||||||
popular = YAML.load_file(File.expand_path("../popular.yml", __FILE__))
|
popular = YAML.load_file(File.expand_path("../popular.yml", __FILE__))
|
||||||
|
|
||||||
YAML.load_file(File.expand_path("../languages.yml", __FILE__)).each do |name, options|
|
languages_yml = File.expand_path("../languages.yml", __FILE__)
|
||||||
|
languages_json = File.expand_path("../languages.json", __FILE__)
|
||||||
|
|
||||||
|
if File.exist?(languages_json) && defined?(JSON)
|
||||||
|
languages = JSON.load(File.read(languages_json))
|
||||||
|
else
|
||||||
|
languages = YAML.load_file(languages_yml)
|
||||||
|
end
|
||||||
|
|
||||||
|
languages.each do |name, options|
|
||||||
options['extensions'] ||= []
|
options['extensions'] ||= []
|
||||||
options['filenames'] ||= []
|
options['filenames'] ||= []
|
||||||
|
|
||||||
|
|||||||
@@ -70,6 +70,7 @@ Ada:
|
|||||||
|
|
||||||
Agda:
|
Agda:
|
||||||
type: programming
|
type: programming
|
||||||
|
color: "#467C91"
|
||||||
primary_extension: .agda
|
primary_extension: .agda
|
||||||
|
|
||||||
ApacheConf:
|
ApacheConf:
|
||||||
@@ -384,7 +385,7 @@ D-ObjDump:
|
|||||||
DM:
|
DM:
|
||||||
type: programming
|
type: programming
|
||||||
color: "#075ff1"
|
color: "#075ff1"
|
||||||
lexer: Text only
|
lexer: C++
|
||||||
primary_extension: .dm
|
primary_extension: .dm
|
||||||
aliases:
|
aliases:
|
||||||
- byond
|
- byond
|
||||||
@@ -752,6 +753,8 @@ JSON:
|
|||||||
- .sublime_session
|
- .sublime_session
|
||||||
- .sublime-settings
|
- .sublime-settings
|
||||||
- .sublime-workspace
|
- .sublime-workspace
|
||||||
|
filenames:
|
||||||
|
- composer.lock
|
||||||
|
|
||||||
Jade:
|
Jade:
|
||||||
group: HTML
|
group: HTML
|
||||||
@@ -947,15 +950,17 @@ Matlab:
|
|||||||
Max:
|
Max:
|
||||||
type: programming
|
type: programming
|
||||||
color: "#ce279c"
|
color: "#ce279c"
|
||||||
lexer: Text only
|
lexer: JSON
|
||||||
aliases:
|
aliases:
|
||||||
- max/msp
|
- max/msp
|
||||||
- maxmsp
|
- maxmsp
|
||||||
search_term: max/msp
|
search_term: max/msp
|
||||||
primary_extension: .mxt
|
primary_extension: .maxpat
|
||||||
extensions:
|
extensions:
|
||||||
- .maxhelp
|
- .maxhelp
|
||||||
- .maxpat
|
- .maxproj
|
||||||
|
- .mxt
|
||||||
|
- .pat
|
||||||
|
|
||||||
MiniD: # Legacy
|
MiniD: # Legacy
|
||||||
searchable: false
|
searchable: false
|
||||||
@@ -1478,6 +1483,7 @@ Tcsh:
|
|||||||
|
|
||||||
TeX:
|
TeX:
|
||||||
type: markup
|
type: markup
|
||||||
|
color: "#3D6117"
|
||||||
ace_mode: latex
|
ace_mode: latex
|
||||||
aliases:
|
aliases:
|
||||||
- latex
|
- latex
|
||||||
@@ -1545,6 +1551,14 @@ VHDL:
|
|||||||
lexer: vhdl
|
lexer: vhdl
|
||||||
color: "#543978"
|
color: "#543978"
|
||||||
primary_extension: .vhdl
|
primary_extension: .vhdl
|
||||||
|
extensions:
|
||||||
|
- .vhd
|
||||||
|
- .vhf
|
||||||
|
- .vhi
|
||||||
|
- .vho
|
||||||
|
- .vhs
|
||||||
|
- .vht
|
||||||
|
- .vhw
|
||||||
|
|
||||||
Vala:
|
Vala:
|
||||||
type: programming
|
type: programming
|
||||||
@@ -1616,6 +1630,7 @@ XML:
|
|||||||
- .grxml
|
- .grxml
|
||||||
- .jelly
|
- .jelly
|
||||||
- .kml
|
- .kml
|
||||||
|
- .launch
|
||||||
- .mxml
|
- .mxml
|
||||||
- .plist
|
- .plist
|
||||||
- .pluginspec
|
- .pluginspec
|
||||||
@@ -1625,6 +1640,7 @@ XML:
|
|||||||
- .rdf
|
- .rdf
|
||||||
- .rss
|
- .rss
|
||||||
- .scxml
|
- .scxml
|
||||||
|
- .srdf
|
||||||
- .svg
|
- .svg
|
||||||
- .tmCommand
|
- .tmCommand
|
||||||
- .tmLanguage
|
- .tmLanguage
|
||||||
@@ -1633,12 +1649,14 @@ XML:
|
|||||||
- .tmTheme
|
- .tmTheme
|
||||||
- .tml
|
- .tml
|
||||||
- .ui
|
- .ui
|
||||||
|
- .urdf
|
||||||
- .vxml
|
- .vxml
|
||||||
- .wsdl
|
- .wsdl
|
||||||
- .wxi
|
- .wxi
|
||||||
- .wxl
|
- .wxl
|
||||||
- .wxs
|
- .wxs
|
||||||
- .x3d
|
- .x3d
|
||||||
|
- .xacro
|
||||||
- .xaml
|
- .xaml
|
||||||
- .xlf
|
- .xlf
|
||||||
- .xliff
|
- .xliff
|
||||||
@@ -1691,6 +1709,7 @@ YAML:
|
|||||||
primary_extension: .yml
|
primary_extension: .yml
|
||||||
extensions:
|
extensions:
|
||||||
- .reek
|
- .reek
|
||||||
|
- .rviz
|
||||||
- .yaml
|
- .yaml
|
||||||
|
|
||||||
eC:
|
eC:
|
||||||
|
|||||||
@@ -152,9 +152,7 @@
|
|||||||
".script!"
|
".script!"
|
||||||
],
|
],
|
||||||
"JSON": [
|
"JSON": [
|
||||||
".json",
|
".json"
|
||||||
".maxhelp",
|
|
||||||
".maxpat"
|
|
||||||
],
|
],
|
||||||
"Julia": [
|
"Julia": [
|
||||||
".jl"
|
".jl"
|
||||||
@@ -208,6 +206,8 @@
|
|||||||
".m"
|
".m"
|
||||||
],
|
],
|
||||||
"Max": [
|
"Max": [
|
||||||
|
".maxhelp",
|
||||||
|
".maxpat",
|
||||||
".mxt"
|
".mxt"
|
||||||
],
|
],
|
||||||
"Monkey": [
|
"Monkey": [
|
||||||
@@ -23186,10 +23186,10 @@
|
|||||||
"logger": 2
|
"logger": 2
|
||||||
},
|
},
|
||||||
"JSON": {
|
"JSON": {
|
||||||
"{": 143,
|
"{": 17,
|
||||||
"}": 143,
|
"}": 17,
|
||||||
"[": 165,
|
"[": 2,
|
||||||
"]": 165,
|
"]": 2,
|
||||||
"true": 3
|
"true": 3
|
||||||
},
|
},
|
||||||
"Julia": {
|
"Julia": {
|
||||||
@@ -28521,6 +28521,10 @@
|
|||||||
"contents.colheaders": 1
|
"contents.colheaders": 1
|
||||||
},
|
},
|
||||||
"Max": {
|
"Max": {
|
||||||
|
"{": 126,
|
||||||
|
"}": 126,
|
||||||
|
"[": 163,
|
||||||
|
"]": 163,
|
||||||
"max": 1,
|
"max": 1,
|
||||||
"v2": 1,
|
"v2": 1,
|
||||||
";": 39,
|
";": 39,
|
||||||
@@ -43668,7 +43672,7 @@
|
|||||||
"Jade": 3,
|
"Jade": 3,
|
||||||
"Java": 8987,
|
"Java": 8987,
|
||||||
"JavaScript": 76934,
|
"JavaScript": 76934,
|
||||||
"JSON": 619,
|
"JSON": 41,
|
||||||
"Julia": 247,
|
"Julia": 247,
|
||||||
"Kotlin": 155,
|
"Kotlin": 155,
|
||||||
"KRL": 25,
|
"KRL": 25,
|
||||||
@@ -43685,7 +43689,7 @@
|
|||||||
"Makefile": 50,
|
"Makefile": 50,
|
||||||
"Markdown": 1,
|
"Markdown": 1,
|
||||||
"Matlab": 11942,
|
"Matlab": 11942,
|
||||||
"Max": 136,
|
"Max": 714,
|
||||||
"Monkey": 207,
|
"Monkey": 207,
|
||||||
"MoonScript": 1718,
|
"MoonScript": 1718,
|
||||||
"Nemerle": 17,
|
"Nemerle": 17,
|
||||||
@@ -43795,7 +43799,7 @@
|
|||||||
"Jade": 1,
|
"Jade": 1,
|
||||||
"Java": 6,
|
"Java": 6,
|
||||||
"JavaScript": 20,
|
"JavaScript": 20,
|
||||||
"JSON": 5,
|
"JSON": 3,
|
||||||
"Julia": 1,
|
"Julia": 1,
|
||||||
"Kotlin": 1,
|
"Kotlin": 1,
|
||||||
"KRL": 1,
|
"KRL": 1,
|
||||||
@@ -43812,7 +43816,7 @@
|
|||||||
"Makefile": 2,
|
"Makefile": 2,
|
||||||
"Markdown": 1,
|
"Markdown": 1,
|
||||||
"Matlab": 39,
|
"Matlab": 39,
|
||||||
"Max": 1,
|
"Max": 3,
|
||||||
"Monkey": 1,
|
"Monkey": 1,
|
||||||
"MoonScript": 1,
|
"MoonScript": 1,
|
||||||
"Nemerle": 1,
|
"Nemerle": 1,
|
||||||
@@ -43877,5 +43881,5 @@
|
|||||||
"Xtend": 2,
|
"Xtend": 2,
|
||||||
"YAML": 1
|
"YAML": 1
|
||||||
},
|
},
|
||||||
"md5": "d77910fe214f3654d7538485c7388f89"
|
"md5": "647da23cd1eb02653f50ff9bfbb6e70d"
|
||||||
}
|
}
|
||||||
@@ -1,4 +1,8 @@
|
|||||||
require 'yaml'
|
begin
|
||||||
|
require 'json'
|
||||||
|
rescue LoadError
|
||||||
|
require 'yaml'
|
||||||
|
end
|
||||||
|
|
||||||
require 'linguist/md5'
|
require 'linguist/md5'
|
||||||
require 'linguist/classifier'
|
require 'linguist/classifier'
|
||||||
@@ -14,7 +18,8 @@ module Linguist
|
|||||||
|
|
||||||
# Hash of serialized samples object
|
# Hash of serialized samples object
|
||||||
if File.exist?(PATH)
|
if File.exist?(PATH)
|
||||||
DATA = YAML.load_file(PATH)
|
serializer = defined?(JSON) ? JSON : YAML
|
||||||
|
DATA = serializer.load(File.read(PATH))
|
||||||
end
|
end
|
||||||
|
|
||||||
# Public: Iterate over each sample.
|
# Public: Iterate over each sample.
|
||||||
|
|||||||
Reference in New Issue
Block a user