consolidate shebang logic

This commit is contained in:
Brandon Keepers
2014-11-27 12:18:23 -05:00
parent e42ccf0d82
commit fd85f7f112
5 changed files with 69 additions and 45 deletions

View File

@@ -11,7 +11,7 @@ require 'linguist/samples'
require 'linguist/file_blob'
require 'linguist/blob_helper'
require 'linguist/strategy/filename'
require 'linguist/strategy/shebang'
require 'linguist/shebang'
module Linguist
# Language names that are recognizable by GitHub. Defined languages
@@ -95,7 +95,7 @@ module Linguist
STRATEGIES = [
Linguist::Strategy::Filename,
Linguist::Strategy::Shebang,
Linguist::Shebang,
Linguist::Heuristics,
Linguist::Classifier
]
@@ -213,6 +213,21 @@ module Linguist
@interpreter_index[Linguist.interpreter_from_shebang(data)]
end
# Public: Look up Languages by interpreter.
#
# interpreter - String of interpreter name
#
# Examples
#
# Language.find_by_interpreter("bash")
# # => [#<Language name="Bash">]
#
# Returns the matching Language
def self.find_by_interpreter(interpreter)
@interpreter_index[interpreter]
end
# Public: Look up Language by its name or lexer.
#
# name - The String name of the Language