From 8561ece4d7ed77eda86e3286215ed912ab654828 Mon Sep 17 00:00:00 2001 From: Ted Nyman Date: Mon, 20 Jan 2014 23:33:04 -0800 Subject: [PATCH 1/4] Minor README --- README.md | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 667dafa1..958df8d5 100644 --- a/README.md +++ b/README.md @@ -6,12 +6,9 @@ We use this library at GitHub to detect blob languages, highlight code, ignore b ### Language detection -Linguist defines a list of all languages known to GitHub in a [yaml file](https://github.com/github/linguist/blob/master/lib/linguist/languages.yml). In order for a file to be highlighted, a language and lexer must be defined there. +Linguist defines a list of all languages known to GitHub in a [yaml file](https://github.com/github/linguist/blob/master/lib/linguist/languages.yml). In order for a file to be highlighted, a language and a lexer must be defined there. -Most languages are detected by their file extension. This is the fastest and most common situation. - -For disambiguating between files with common extensions, we first apply -some common-sense heuristics to pick out obvious languages. After that, we use a +Most languages are detected by their file extension. For disambiguating between files with common extensions, we first apply some common-sense heuristics to pick out obvious languages. After that, we use a [statistical classifier](https://github.com/github/linguist/blob/master/lib/linguist/classifier.rb). This process can help us tell the difference between, for example, `.h` files which could be either C, C++, or Obj-C. From 42912141c55a2eeef7121871035336aca10f3c5e Mon Sep 17 00:00:00 2001 From: jiyinyiyong Date: Thu, 23 Jan 2014 19:39:23 +0800 Subject: [PATCH 2/4] add Cirru with some samples --- lib/linguist/languages.yml | 10 +++++++ samples/Cirru/array.cirru | 12 ++++++++ samples/Cirru/block.cirru | 7 +++++ samples/Cirru/bool.cirru | 7 +++++ samples/Cirru/map.cirru | 14 ++++++++++ samples/Cirru/number.cirru | 3 ++ samples/Cirru/require.cirru | 2 ++ samples/Cirru/scope.cirru | 23 ++++++++++++++++ samples/Cirru/stdio.cirru | 55 +++++++++++++++++++++++++++++++++++++ samples/Cirru/string.cirru | 3 ++ 10 files changed, 136 insertions(+) create mode 100644 samples/Cirru/array.cirru create mode 100644 samples/Cirru/block.cirru create mode 100644 samples/Cirru/bool.cirru create mode 100644 samples/Cirru/map.cirru create mode 100644 samples/Cirru/number.cirru create mode 100644 samples/Cirru/require.cirru create mode 100644 samples/Cirru/scope.cirru create mode 100644 samples/Cirru/stdio.cirru create mode 100644 samples/Cirru/string.cirru diff --git a/lib/linguist/languages.yml b/lib/linguist/languages.yml index 340c7682..44ecc1f6 100644 --- a/lib/linguist/languages.yml +++ b/lib/linguist/languages.yml @@ -296,6 +296,16 @@ ChucK: lexer: Java primary_extension: .ck +Cirru: + type: programming + color: "#aaaaff" + primary_extension: .cirru + # ace_mode: cirru + # lexer: Cirru + lexer: Text only + extensions: + - .cr + Clean: type: programming color: "#3a81ad" diff --git a/samples/Cirru/array.cirru b/samples/Cirru/array.cirru new file mode 100644 index 00000000..9375c650 --- /dev/null +++ b/samples/Cirru/array.cirru @@ -0,0 +1,12 @@ + +print $ array + int 1 + string 2 + +print $ array + int 1 + array + int 2 + string 3 + array + string 4 \ No newline at end of file diff --git a/samples/Cirru/block.cirru b/samples/Cirru/block.cirru new file mode 100644 index 00000000..a9bf0c83 --- /dev/null +++ b/samples/Cirru/block.cirru @@ -0,0 +1,7 @@ + +set f $ block (a b c) + print a b c + +call f (int 1) (int 2) (int 3) + +f (int 1) (int 2) (int 3) \ No newline at end of file diff --git a/samples/Cirru/bool.cirru b/samples/Cirru/bool.cirru new file mode 100644 index 00000000..686d132e --- /dev/null +++ b/samples/Cirru/bool.cirru @@ -0,0 +1,7 @@ + +print $ bool true +print $ bool false +print $ bool yes +print $ bool no +print $ bool 1 +print $ bool 0 \ No newline at end of file diff --git a/samples/Cirru/map.cirru b/samples/Cirru/map.cirru new file mode 100644 index 00000000..5f445668 --- /dev/null +++ b/samples/Cirru/map.cirru @@ -0,0 +1,14 @@ + +print $ map + a $ int 5 + b $ array (int 1) (int 2) + c $ map + int 1 + array (int 4) + +set m $ map + a $ int 1 + +set m b $ int 2 + +print m \ No newline at end of file diff --git a/samples/Cirru/number.cirru b/samples/Cirru/number.cirru new file mode 100644 index 00000000..56e0ac7d --- /dev/null +++ b/samples/Cirru/number.cirru @@ -0,0 +1,3 @@ + +print $ int 1 +print $ float 1.2 \ No newline at end of file diff --git a/samples/Cirru/require.cirru b/samples/Cirru/require.cirru new file mode 100644 index 00000000..53283468 --- /dev/null +++ b/samples/Cirru/require.cirru @@ -0,0 +1,2 @@ + +require ./stdio.cr diff --git a/samples/Cirru/scope.cirru b/samples/Cirru/scope.cirru new file mode 100644 index 00000000..9a6512c9 --- /dev/null +++ b/samples/Cirru/scope.cirru @@ -0,0 +1,23 @@ + +set a (int 2) + +print (self) + +set c (child) + +under c + under parent + print a + +print $ get c a + +set c x (int 3) +print $ get c x + +set just-print $ code + print a + +print just-print + +eval (self) just-print +eval just-print \ No newline at end of file diff --git a/samples/Cirru/stdio.cirru b/samples/Cirru/stdio.cirru new file mode 100644 index 00000000..ef5400e6 --- /dev/null +++ b/samples/Cirru/stdio.cirru @@ -0,0 +1,55 @@ + +set a $ string 1 +print a + +print (string 1) + +print nothing + +print + map + a (int 4) + b $ map + a $ int 5 + b $ int 6 + c $ map + int 7 + +print + array + int 1 + int 2 + array + int 3 + int 4 + +print + array + int 1 + map + a $ int 2 + b $ array + int 3 + +print + int 1 + int 2 + +print $ code + set a 1 + print (get a) + print $ array + int a + array + int a + +set container (map) +set container code $ code + set a 1 + print (get a) + print $ array + int a + array + int a + +print container \ No newline at end of file diff --git a/samples/Cirru/string.cirru b/samples/Cirru/string.cirru new file mode 100644 index 00000000..d4c4331b --- /dev/null +++ b/samples/Cirru/string.cirru @@ -0,0 +1,3 @@ + +print $ string a +print $ string "a b" \ No newline at end of file From 83513977a47be77755cc7077ea7e276d98e16b0c Mon Sep 17 00:00:00 2001 From: Ivan Zuzak Date: Fri, 24 Jan 2014 11:42:55 +0100 Subject: [PATCH 3/4] add interpreter for groovy language --- lib/linguist/languages.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lib/linguist/languages.yml b/lib/linguist/languages.yml index 340c7682..73534d09 100644 --- a/lib/linguist/languages.yml +++ b/lib/linguist/languages.yml @@ -653,6 +653,8 @@ Groovy: ace_mode: groovy color: "#e69f56" primary_extension: .groovy + interpreters: + - groovy Groovy Server Pages: group: Groovy From dc76ca7e37e145a914ab400aa241caf58197ab7d Mon Sep 17 00:00:00 2001 From: Ted Nyman Date: Fri, 24 Jan 2014 08:49:17 -0800 Subject: [PATCH 4/4] Travis settings --- .travis.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.travis.yml b/.travis.yml index bfbf9fdf..943c1b12 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,5 +1,6 @@ before_install: - sudo apt-get install libicu-dev -y + - gem update --system 2.1.11 rvm: - 1.8.7 - 1.9.2