mirror of
				https://github.com/KevinMidboe/linguist.git
				synced 2025-10-29 17:50:22 +00:00 
			
		
		
		
	prefer to load from languages.json if it exists
This commit is contained in:
		
							
								
								
									
										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,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'] ||= []
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user