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