mirror of
https://github.com/KevinMidboe/linguist.git
synced 2025-10-29 17:50:22 +00:00
Make search term explicit
This commit is contained in:
@@ -7,7 +7,6 @@ module Linguist
|
|||||||
@languages = []
|
@languages = []
|
||||||
@name_index = {}
|
@name_index = {}
|
||||||
@alias_index = {}
|
@alias_index = {}
|
||||||
@lexer_index = {}
|
|
||||||
@extension_index = {}
|
@extension_index = {}
|
||||||
|
|
||||||
# Internal: Create a new Language object
|
# Internal: Create a new Language object
|
||||||
@@ -37,17 +36,6 @@ module Linguist
|
|||||||
@alias_index[name] = language
|
@alias_index[name] = language
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
# Set langauge as the default for reverse lexer lookup if
|
|
||||||
# :default_lexer is set or the language is the same name as its
|
|
||||||
# lexer.
|
|
||||||
if attributes[:default_lexer] || language.default_lexer?
|
|
||||||
@lexer_index[language.lexer_name.downcase] = language
|
|
||||||
end
|
|
||||||
|
|
||||||
# Case-insensitive lexer name index
|
|
||||||
@lexer_index[language.lexer_name.downcase] ||= language
|
|
||||||
|
|
||||||
language.extensions.each do |extension|
|
language.extensions.each do |extension|
|
||||||
# All Language extensions should be unique. Warn if there is a
|
# All Language extensions should be unique. Warn if there is a
|
||||||
# duplicate.
|
# duplicate.
|
||||||
@@ -165,11 +153,11 @@ module Linguist
|
|||||||
# Set aliases
|
# Set aliases
|
||||||
@aliases = [default_alias_name] + (attributes[:aliases] || [])
|
@aliases = [default_alias_name] + (attributes[:aliases] || [])
|
||||||
|
|
||||||
# Use :lexer_name or fallback to `@name.downcase`
|
|
||||||
@lexer_name = attributes[:lexer_name] || default_alias_name
|
|
||||||
|
|
||||||
# Lookup Lexer object
|
# Lookup Lexer object
|
||||||
@lexer = Lexer.find_by_alias(@lexer_name)
|
@lexer = Lexer.find_by_alias(attributes[:lexer] || default_alias_name)
|
||||||
|
|
||||||
|
# Set legacy search term
|
||||||
|
@search_term = attributes[:search_term] || default_alias_name
|
||||||
|
|
||||||
# Set extensions or default to [].
|
# Set extensions or default to [].
|
||||||
# Consider using `@lexer.extensions`
|
# Consider using `@lexer.extensions`
|
||||||
@@ -201,7 +189,7 @@ module Linguist
|
|||||||
# Returns an Array of String names
|
# Returns an Array of String names
|
||||||
attr_reader :aliases
|
attr_reader :aliases
|
||||||
|
|
||||||
# Deprecated: Get lexer name
|
# Deprecated: Get code search term
|
||||||
#
|
#
|
||||||
# Examples
|
# Examples
|
||||||
#
|
#
|
||||||
@@ -210,7 +198,7 @@ module Linguist
|
|||||||
# # => "perl"
|
# # => "perl"
|
||||||
#
|
#
|
||||||
# Returns the name String
|
# Returns the name String
|
||||||
attr_reader :lexer_name
|
attr_reader :search_term
|
||||||
|
|
||||||
# Public: Get Lexer
|
# Public: Get Lexer
|
||||||
#
|
#
|
||||||
@@ -233,17 +221,6 @@ module Linguist
|
|||||||
name.downcase.gsub(/\s/, '-')
|
name.downcase.gsub(/\s/, '-')
|
||||||
end
|
end
|
||||||
|
|
||||||
# Internal: Is the language using the default lexer
|
|
||||||
#
|
|
||||||
# Returns true or false
|
|
||||||
def default_lexer?
|
|
||||||
lexer_name == default_alias_name
|
|
||||||
end
|
|
||||||
|
|
||||||
def search_term
|
|
||||||
lexer_name
|
|
||||||
end
|
|
||||||
|
|
||||||
# Public: Is it popular?
|
# Public: Is it popular?
|
||||||
#
|
#
|
||||||
# Returns true or false
|
# Returns true or false
|
||||||
@@ -309,8 +286,8 @@ module Linguist
|
|||||||
Language.create(
|
Language.create(
|
||||||
:name => name,
|
:name => name,
|
||||||
:aliases => options[:aliases],
|
:aliases => options[:aliases],
|
||||||
:lexer_name => options[:lexer],
|
:lexer => options[:lexer],
|
||||||
:default_lexer => options[:default_lexer],
|
:search_term => options[:search_term],
|
||||||
:extensions => options[:ext],
|
:extensions => options[:ext],
|
||||||
:popular => popular.include?(name),
|
:popular => popular.include?(name),
|
||||||
:common => common.include?(name)
|
:common => common.include?(name)
|
||||||
|
|||||||
@@ -1,11 +1,15 @@
|
|||||||
# Defines all Lanaguges known to GitHub
|
# Defines all Lanaguges known to GitHub
|
||||||
#
|
#
|
||||||
# lexer - An explicit lexer String (defaults to name.downcase)
|
# lexer - An explicit lexer String (defaults to name.downcase)
|
||||||
# aliases - An Array of additional aliases (implicitly includes name.downcase)
|
# aliases - An Array of additional aliases (implicitly
|
||||||
|
# includes name.downcase)
|
||||||
# ext - An Array of associated extensions
|
# ext - An Array of associated extensions
|
||||||
|
# search_term - Deprecated: Some langauges maybe indexed under a
|
||||||
|
# different alias. Avoid defining new exceptions.
|
||||||
|
|
||||||
ASP:
|
ASP:
|
||||||
:lexer: aspx-vb
|
:lexer: aspx-vb
|
||||||
|
:search_term: aspx-vb
|
||||||
:aliases:
|
:aliases:
|
||||||
- aspx
|
- aspx
|
||||||
- aspx-vb
|
- aspx-vb
|
||||||
@@ -19,6 +23,7 @@ ASP:
|
|||||||
- .asp
|
- .asp
|
||||||
ActionScript:
|
ActionScript:
|
||||||
:lexer: as3
|
:lexer: as3
|
||||||
|
:search_term: as3
|
||||||
:aliases:
|
:aliases:
|
||||||
- as3
|
- as3
|
||||||
:ext:
|
:ext:
|
||||||
@@ -35,12 +40,14 @@ Arc:
|
|||||||
- .arc
|
- .arc
|
||||||
Assembly:
|
Assembly:
|
||||||
:lexer: nasm
|
:lexer: nasm
|
||||||
|
:search_term: nasm
|
||||||
:aliases:
|
:aliases:
|
||||||
- nasm
|
- nasm
|
||||||
:ext:
|
:ext:
|
||||||
- .asm
|
- .asm
|
||||||
Batchfile:
|
Batchfile:
|
||||||
:lexer: bat
|
:lexer: bat
|
||||||
|
:search_term: bat
|
||||||
:aliases:
|
:aliases:
|
||||||
- bat
|
- bat
|
||||||
:ext:
|
:ext:
|
||||||
@@ -65,12 +72,14 @@ C:
|
|||||||
- .h
|
- .h
|
||||||
C#:
|
C#:
|
||||||
:lexer: csharp
|
:lexer: csharp
|
||||||
|
:search_term: csharp
|
||||||
:aliases:
|
:aliases:
|
||||||
- csharp
|
- csharp
|
||||||
:ext:
|
:ext:
|
||||||
- .cs
|
- .cs
|
||||||
C++:
|
C++:
|
||||||
:lexer: cpp
|
:lexer: cpp
|
||||||
|
:search_term: cpp
|
||||||
:aliases:
|
:aliases:
|
||||||
- cpp
|
- cpp
|
||||||
:ext:
|
:ext:
|
||||||
@@ -88,6 +97,7 @@ CSS:
|
|||||||
- .css
|
- .css
|
||||||
ChucK:
|
ChucK:
|
||||||
:lexer: java
|
:lexer: java
|
||||||
|
:search_term: java
|
||||||
:ext:
|
:ext:
|
||||||
- .ck
|
- .ck
|
||||||
Clojure:
|
Clojure:
|
||||||
@@ -99,6 +109,7 @@ CoffeeScript:
|
|||||||
- Cakefile
|
- Cakefile
|
||||||
ColdFusion:
|
ColdFusion:
|
||||||
:lexer: cfm
|
:lexer: cfm
|
||||||
|
:search_term: cfm
|
||||||
:aliases:
|
:aliases:
|
||||||
- cfm
|
- cfm
|
||||||
:ext:
|
:ext:
|
||||||
@@ -125,6 +136,7 @@ D:
|
|||||||
- .di
|
- .di
|
||||||
Darcs Patch:
|
Darcs Patch:
|
||||||
:lexer: dpatch
|
:lexer: dpatch
|
||||||
|
:search_term: dpatch
|
||||||
:aliases:
|
:aliases:
|
||||||
- dpatch
|
- dpatch
|
||||||
:ext:
|
:ext:
|
||||||
@@ -148,6 +160,7 @@ Eiffel:
|
|||||||
- .e
|
- .e
|
||||||
Emacs Lisp:
|
Emacs Lisp:
|
||||||
:lexer: scheme
|
:lexer: scheme
|
||||||
|
:search_term: scheme
|
||||||
:aliases:
|
:aliases:
|
||||||
- elisp
|
- elisp
|
||||||
:ext:
|
:ext:
|
||||||
@@ -159,6 +172,7 @@ Erlang:
|
|||||||
- .erl
|
- .erl
|
||||||
F#:
|
F#:
|
||||||
:lexer: ocaml
|
:lexer: ocaml
|
||||||
|
:search_term: ocaml
|
||||||
:ext:
|
:ext:
|
||||||
- .fs
|
- .fs
|
||||||
- .fsi
|
- .fsi
|
||||||
@@ -181,14 +195,17 @@ Genshi:
|
|||||||
- .kid
|
- .kid
|
||||||
Gentoo Ebuild:
|
Gentoo Ebuild:
|
||||||
:lexer: bash
|
:lexer: bash
|
||||||
|
:search_term: bash
|
||||||
:ext:
|
:ext:
|
||||||
- .ebuild
|
- .ebuild
|
||||||
Gentoo Eclass:
|
Gentoo Eclass:
|
||||||
:lexer: bash
|
:lexer: bash
|
||||||
|
:search_term: bash
|
||||||
:ext:
|
:ext:
|
||||||
- .eclass
|
- .eclass
|
||||||
Gettext Catalog:
|
Gettext Catalog:
|
||||||
:lexer: pot
|
:lexer: pot
|
||||||
|
:search_term: pot
|
||||||
:aliases:
|
:aliases:
|
||||||
- pot
|
- pot
|
||||||
:ext:
|
:ext:
|
||||||
@@ -236,6 +253,7 @@ INI:
|
|||||||
- .properties
|
- .properties
|
||||||
IRC log:
|
IRC log:
|
||||||
:lexer: irc
|
:lexer: irc
|
||||||
|
:search_term: irc
|
||||||
:aliases:
|
:aliases:
|
||||||
- irc
|
- irc
|
||||||
:ext:
|
:ext:
|
||||||
@@ -249,6 +267,7 @@ Java:
|
|||||||
- .pde
|
- .pde
|
||||||
Groovy:
|
Groovy:
|
||||||
:lexer: java
|
:lexer: java
|
||||||
|
:search_term: java
|
||||||
:ext:
|
:ext:
|
||||||
- .groovy
|
- .groovy
|
||||||
JavaScript:
|
JavaScript:
|
||||||
@@ -264,10 +283,12 @@ JavaScript:
|
|||||||
- .jake
|
- .jake
|
||||||
JSON:
|
JSON:
|
||||||
:lexer: javascript
|
:lexer: javascript
|
||||||
|
:search_term: javascript
|
||||||
:ext:
|
:ext:
|
||||||
- .json
|
- .json
|
||||||
Literate Haskell:
|
Literate Haskell:
|
||||||
:lexer: lhs
|
:lexer: lhs
|
||||||
|
:search_term: lhs
|
||||||
:aliases:
|
:aliases:
|
||||||
- lhs
|
- lhs
|
||||||
:ext:
|
:ext:
|
||||||
@@ -301,6 +322,7 @@ Max/MSP:
|
|||||||
- .mxt
|
- .mxt
|
||||||
Mirah:
|
Mirah:
|
||||||
:lexer: ruby
|
:lexer: ruby
|
||||||
|
:search_term: ruby
|
||||||
:ext:
|
:ext:
|
||||||
- .duby
|
- .duby
|
||||||
- .mir
|
- .mir
|
||||||
@@ -313,6 +335,7 @@ Myghty:
|
|||||||
- .myt
|
- .myt
|
||||||
Nu:
|
Nu:
|
||||||
:lexer: scheme
|
:lexer: scheme
|
||||||
|
:search_term: scheme
|
||||||
:ext:
|
:ext:
|
||||||
- .nu
|
- .nu
|
||||||
- Nukefile
|
- Nukefile
|
||||||
@@ -356,6 +379,7 @@ PHP:
|
|||||||
- .php5
|
- .php5
|
||||||
Parrot Internal Representation:
|
Parrot Internal Representation:
|
||||||
:lexer: pir
|
:lexer: pir
|
||||||
|
:search_term: pir
|
||||||
:aliases:
|
:aliases:
|
||||||
- pir
|
- pir
|
||||||
:ext:
|
:ext:
|
||||||
@@ -381,6 +405,7 @@ Python:
|
|||||||
- .pyw
|
- .pyw
|
||||||
Python traceback:
|
Python traceback:
|
||||||
:lexer: pytb
|
:lexer: pytb
|
||||||
|
:search_term: pytb
|
||||||
:aliases:
|
:aliases:
|
||||||
- pytb
|
- pytb
|
||||||
:ext:
|
:ext:
|
||||||
@@ -399,6 +424,7 @@ RHTML:
|
|||||||
- .rhtml
|
- .rhtml
|
||||||
Raw token data:
|
Raw token data:
|
||||||
:lexer: raw
|
:lexer: raw
|
||||||
|
:search_term: raw
|
||||||
:aliases:
|
:aliases:
|
||||||
- raw
|
- raw
|
||||||
:ext:
|
:ext:
|
||||||
@@ -447,7 +473,7 @@ Self:
|
|||||||
- .self
|
- .self
|
||||||
Shell:
|
Shell:
|
||||||
:lexer: bash
|
:lexer: bash
|
||||||
:default_lexer: true
|
:search_term: bash
|
||||||
:aliases:
|
:aliases:
|
||||||
- sh
|
- sh
|
||||||
- bash
|
- bash
|
||||||
@@ -497,6 +523,7 @@ Verilog:
|
|||||||
- .v
|
- .v
|
||||||
VimL:
|
VimL:
|
||||||
:lexer: vim
|
:lexer: vim
|
||||||
|
:search_term: vim
|
||||||
:aliases:
|
:aliases:
|
||||||
- vim
|
- vim
|
||||||
:ext:
|
:ext:
|
||||||
@@ -527,6 +554,7 @@ XQuery:
|
|||||||
- .xquery
|
- .xquery
|
||||||
XS:
|
XS:
|
||||||
:lexer: c
|
:lexer: c
|
||||||
|
:search_term: c
|
||||||
:ext:
|
:ext:
|
||||||
- .xs
|
- .xs
|
||||||
YAML:
|
YAML:
|
||||||
@@ -535,6 +563,7 @@ YAML:
|
|||||||
- .yaml
|
- .yaml
|
||||||
Java Server Pages:
|
Java Server Pages:
|
||||||
:lexer: jsp
|
:lexer: jsp
|
||||||
|
:search_term: jsp
|
||||||
:aliases:
|
:aliases:
|
||||||
- jsp
|
- jsp
|
||||||
:ext:
|
:ext:
|
||||||
@@ -547,6 +576,7 @@ ooc:
|
|||||||
- .ooc
|
- .ooc
|
||||||
reStructuredText:
|
reStructuredText:
|
||||||
:lexer: rst
|
:lexer: rst
|
||||||
|
:search_term: rst
|
||||||
:aliases:
|
:aliases:
|
||||||
- rst
|
- rst
|
||||||
:ext:
|
:ext:
|
||||||
|
|||||||
Reference in New Issue
Block a user