From ab61b06c343387f434470713dc91f6d41cff9010 Mon Sep 17 00:00:00 2001 From: Garen Torikian Date: Fri, 5 Dec 2014 16:25:14 +0200 Subject: [PATCH 1/7] Reject Ace modes that are lacking a mode --- lib/linguist/language.rb | 2 +- test/test_language.rb | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/linguist/language.rb b/lib/linguist/language.rb index 78aee90b..65fe603e 100644 --- a/lib/linguist/language.rb +++ b/lib/linguist/language.rb @@ -271,7 +271,7 @@ module Linguist # # Returns an Array of Languages. def self.ace_modes - @ace_modes ||= all.select(&:ace_mode).sort_by { |lang| lang.name.downcase } + @ace_modes ||= all.select(&:ace_mode).sort_by { |lang| lang.name.downcase }.reject { |h| h.ace_mode == 'none' } end # Internal: Initialize a new Language diff --git a/test/test_language.rb b/test/test_language.rb index 2bfec9fa..393cc780 100644 --- a/test/test_language.rb +++ b/test/test_language.rb @@ -308,11 +308,11 @@ class TestLanguage < Test::Unit::TestCase assert_equal 'css', Language['CSS'].ace_mode assert_equal 'lsl', Language['LSL'].ace_mode assert_equal 'javascript', Language['JavaScript'].ace_mode - assert_equal 'none', Language['FORTRAN'].ace_mode end def test_ace_modes assert Language.ace_modes.include?(Language['Ruby']) + assert !Language.ace_modes.include?(Language['FORTRAN']) end def test_wrap From bb12b8644521c3c4f2e3da91a0d4e00f1437d8e6 Mon Sep 17 00:00:00 2001 From: Garen Torikian Date: Fri, 5 Dec 2014 16:56:55 +0200 Subject: [PATCH 2/7] Set missing `ace_mode` values to `text` This makes it much easier to deal with when iterating over all the languages, since `text` is a valid, non-highlighting lexer. --- lib/linguist/languages.yml | 306 ++++++++++++++++++------------------- test/test_language.rb | 3 +- 2 files changed, 155 insertions(+), 154 deletions(-) diff --git a/lib/linguist/languages.yml b/lib/linguist/languages.yml index 80adba13..e0b82960 100644 --- a/lib/linguist/languages.yml +++ b/lib/linguist/languages.yml @@ -46,7 +46,7 @@ ANTLR: color: "#9DC3FF" extensions: - .g4 - ace_mode: none + ace_mode: text APL: type: programming @@ -55,7 +55,7 @@ APL: - .apl - .dyalog tm_scope: none - ace_mode: none + ace_mode: text ASP: type: programming @@ -72,7 +72,7 @@ ASP: - .asmx - .aspx - .axd - ace_mode: none + ace_mode: text ATS: type: programming @@ -116,14 +116,14 @@ Agda: color: "#467C91" extensions: - .agda - ace_mode: none + ace_mode: text Alloy: type: programming # 'modeling' would be more appropiate color: "#cc5c24" extensions: - .als - ace_mode: none + ace_mode: text Ant Build System: type: data @@ -168,7 +168,7 @@ Arc: extensions: - .arc tm_scope: none - ace_mode: none + ace_mode: text Arduino: type: programming @@ -194,7 +194,7 @@ AspectJ: extensions: - .aj tm_scope: none - ace_mode: none + ace_mode: text Assembly: type: programming @@ -214,7 +214,7 @@ Augeas: extensions: - .aug tm_scope: none - ace_mode: none + ace_mode: text AutoHotkey: type: programming @@ -252,7 +252,7 @@ Awk: - gawk - mawk - nawk - ace_mode: none + ace_mode: text Batchfile: type: programming @@ -272,14 +272,14 @@ Batchfile: Befunge: extensions: - .befunge - ace_mode: none + ace_mode: text Bison: type: programming tm_scope: source.bison extensions: - .y - ace_mode: none + ace_mode: text BlitzBasic: type: programming @@ -292,7 +292,7 @@ BlitzBasic: - .bb - .decls tm_scope: source.blitzmax - ace_mode: none + ace_mode: text BlitzMax: type: programming @@ -301,7 +301,7 @@ BlitzMax: - .bmx aliases: - bmax - ace_mode: none + ace_mode: text Bluespec: type: programming @@ -315,27 +315,27 @@ Boo: color: "#d4bec1" extensions: - .boo - ace_mode: none + ace_mode: text Brainfuck: extensions: - .b - .bf tm_scope: source.bf - ace_mode: none + ace_mode: text Brightscript: type: programming extensions: - .brs tm_scope: none - ace_mode: none + ace_mode: text Bro: type: programming extensions: - .bro - ace_mode: none + ace_mode: text C: type: programming @@ -407,7 +407,7 @@ CLIPS: extensions: - .clp tm_scope: none - ace_mode: none + ace_mode: text CMake: extensions: @@ -415,7 +415,7 @@ CMake: - .in filenames: - CMakeLists.txt - ace_mode: none + ace_mode: text COBOL: type: programming @@ -440,13 +440,13 @@ Cap'n Proto: tm_scope: source.capnp extensions: - .capnp - ace_mode: none + ace_mode: text Ceylon: type: programming extensions: - .ceylon - ace_mode: none + ace_mode: text Chapel: type: programming @@ -455,7 +455,7 @@ Chapel: - chpl extensions: - .chpl - ace_mode: none + ace_mode: text ChucK: extensions: @@ -477,7 +477,7 @@ Clean: - .icl - .dcl tm_scope: none - ace_mode: none + ace_mode: text Clojure: type: programming @@ -579,14 +579,14 @@ Cool: extensions: - .cl tm_scope: source.cool - ace_mode: none + ace_mode: text Coq: type: programming extensions: - .coq - .v - ace_mode: none + ace_mode: text Cpp-ObjDump: type: data @@ -607,7 +607,7 @@ Creole: extensions: - .creole tm_scope: none - ace_mode: none + ace_mode: text Crystal: type: programming @@ -624,7 +624,7 @@ Cucumber: tm_scope: text.gherkin.feature aliases: - gherkin - ace_mode: none + ace_mode: text Cuda: type: programming @@ -650,7 +650,7 @@ Cython: - .pxi aliases: - pyrex - ace_mode: none + ace_mode: text D: type: programming @@ -685,7 +685,7 @@ Darcs Patch: - .darcspatch - .dpatch tm_scope: none - ace_mode: none + ace_mode: text Dart: type: programming @@ -717,7 +717,7 @@ Dogescript: extensions: - .djs tm_scope: none - ace_mode: none + ace_mode: text Dylan: type: programming @@ -727,7 +727,7 @@ Dylan: - .dyl - .intr - .lid - ace_mode: none + ace_mode: text E: type: programming @@ -735,7 +735,7 @@ E: extensions: - .E tm_scope: none - ace_mode: none + ace_mode: text ECL: type: programming @@ -744,7 +744,7 @@ ECL: - .ecl - .eclxml tm_scope: none - ace_mode: none + ace_mode: text Eagle: type: markup @@ -831,7 +831,7 @@ F#: - .fsi - .fsx tm_scope: source.fsharp - ace_mode: none + ace_mode: text FLUX: type: programming @@ -840,7 +840,7 @@ FLUX: - .fx - .flux tm_scope: none - ace_mode: none + ace_mode: text FORTRAN: type: programming @@ -863,7 +863,7 @@ FORTRAN: - .for - .fpp tm_scope: source.fortran.modern - ace_mode: none + ace_mode: text Factor: type: programming @@ -873,7 +873,7 @@ Factor: filenames: - .factor-boot-rc - .factor-rc - ace_mode: none + ace_mode: text Fancy: type: programming @@ -883,7 +883,7 @@ Fancy: - .fancypack filenames: - Fakefile - ace_mode: none + ace_mode: text Fantom: type: programming @@ -891,7 +891,7 @@ Fantom: extensions: - .fan tm_scope: source.fan - ace_mode: none + ace_mode: text Forth: type: programming @@ -929,7 +929,7 @@ GAMS: extensions: - .gms tm_scope: none - ace_mode: none + ace_mode: text GAP: type: programming @@ -939,7 +939,7 @@ GAP: - .gd - .gi tm_scope: none - ace_mode: none + ace_mode: text GAS: type: programming @@ -955,7 +955,7 @@ GDScript: extensions: - .gd tm_scope: none - ace_mode: none + ace_mode: text GLSL: group: C @@ -1017,7 +1017,7 @@ Gettext Catalog: - .po - .pot tm_scope: source.po - ace_mode: none + ace_mode: text Glyph: type: programming @@ -1038,7 +1038,7 @@ Gnuplot: - .plt interpreters: - gnuplot - ace_mode: none + ace_mode: text Go: type: programming @@ -1053,7 +1053,7 @@ Golo: extensions: - .golo tm_scope: none - ace_mode: none + ace_mode: text Gosu: type: programming @@ -1064,21 +1064,21 @@ Gosu: - .gsx - .vark tm_scope: source.gosu.2 - ace_mode: none + ace_mode: text Grace: type: programming extensions: - .grace tm_scope: none - ace_mode: none + ace_mode: text Gradle: type: data extensions: - .gradle tm_scope: source.groovy.gradle - ace_mode: none + ace_mode: text Grammatical Framework: type: programming @@ -1097,7 +1097,7 @@ Graph Modeling Language: extensions: - .gml tm_scope: none - ace_mode: none + ace_mode: text Graphviz (DOT): type: data @@ -1106,7 +1106,7 @@ Graphviz (DOT): - .dot - .DOT - .gv - ace_mode: none + ace_mode: text Groff: extensions: @@ -1121,7 +1121,7 @@ Groff: tm_scope: text.groff aliases: - nroff - ace_mode: none + ace_mode: text Groovy: type: programming @@ -1195,7 +1195,7 @@ HTTP: extensions: - .http tm_scope: none - ace_mode: none + ace_mode: text Hack: type: programming @@ -1229,7 +1229,7 @@ Harbour: extensions: - .hb tm_scope: none - ace_mode: none + ace_mode: text Haskell: type: programming @@ -1264,7 +1264,7 @@ IDL: extensions: - .pro - .dlm - ace_mode: none + ace_mode: text IGOR Pro: type: programming @@ -1274,7 +1274,7 @@ IGOR Pro: - igor - igorpro tm_scope: none - ace_mode: none + ace_mode: text INI: type: data @@ -1297,14 +1297,14 @@ IRC log: - .irclog - .weechatlog tm_scope: none - ace_mode: none + ace_mode: text Idris: type: programming extensions: - .idr - .lidr - ace_mode: none + ace_mode: text Inform 7: type: programming @@ -1316,13 +1316,13 @@ Inform 7: aliases: - i7 - inform7 - ace_mode: none + ace_mode: text Inno Setup: extensions: - .iss tm_scope: none - ace_mode: none + ace_mode: text Io: type: programming @@ -1338,7 +1338,7 @@ Ioke: - .ik interpreters: - ioke - ace_mode: none + ace_mode: text Isabelle: type: programming @@ -1346,14 +1346,14 @@ Isabelle: extensions: - .thy tm_scope: source.isabelle.theory - ace_mode: none + ace_mode: text J: type: programming extensions: - .ijs tm_scope: none - ace_mode: none + ace_mode: text JSON: type: data @@ -1467,7 +1467,7 @@ KRL: extensions: - .krl tm_scope: none - ace_mode: none + ace_mode: text Kit: type: markup @@ -1483,7 +1483,7 @@ Kotlin: - .ktm - .kts tm_scope: source.Kotlin - ace_mode: none + ace_mode: text LFE: type: programming @@ -1497,7 +1497,7 @@ LFE: LLVM: extensions: - .ll - ace_mode: none + ace_mode: text LOLCODE: type: programming @@ -1505,7 +1505,7 @@ LOLCODE: - .lol color: "#cc9900" tm_scope: none - ace_mode: none + ace_mode: text LSL: type: programming @@ -1521,7 +1521,7 @@ LabVIEW: extensions: - .lvproj tm_scope: none - ace_mode: none + ace_mode: text Lasso: type: programming @@ -1535,7 +1535,7 @@ Lasso: tm_scope: file.lasso aliases: - lassoscript - ace_mode: none + ace_mode: text Latte: type: markup @@ -1558,7 +1558,7 @@ LilyPond: extensions: - .ly - .ily - ace_mode: none + ace_mode: text Liquid: type: markup @@ -1573,7 +1573,7 @@ Literate Agda: extensions: - .lagda tm_scope: none - ace_mode: none + ace_mode: text Literate CoffeeScript: type: programming @@ -1586,7 +1586,7 @@ Literate CoffeeScript: - litcoffee extensions: - .litcoffee - ace_mode: none + ace_mode: text Literate Haskell: type: programming @@ -1598,7 +1598,7 @@ Literate Haskell: extensions: - .lhs tm_scope: text.tex.latex.haskell - ace_mode: none + ace_mode: text LiveScript: type: programming @@ -1619,14 +1619,14 @@ Logos: - .xm - .x - .xi - ace_mode: none + ace_mode: text Logtalk: type: programming extensions: - .lgt - .logtalk - ace_mode: none + ace_mode: text LookML: type: programming @@ -1641,7 +1641,7 @@ LoomScript: extensions: - .ls tm_scope: source.loomscript - ace_mode: none + ace_mode: text Lua: type: programming @@ -1697,7 +1697,7 @@ Mako: - .mako - .mao tm_scope: text.html.mako - ace_mode: none + ace_mode: text Markdown: type: prose @@ -1731,7 +1731,7 @@ Mathematica: - .nbp aliases: - mma - ace_mode: none + ace_mode: text Matlab: type: programming @@ -1770,7 +1770,7 @@ MediaWiki: extensions: - .mediawiki tm_scope: none - ace_mode: none + ace_mode: text Mercury: type: programming @@ -1789,7 +1789,7 @@ MiniD: # Legacy extensions: - .minid # Dummy extension tm_scope: none - ace_mode: none + ace_mode: text Mirah: type: programming @@ -1807,14 +1807,14 @@ Monkey: type: programming extensions: - .monkey - ace_mode: none + ace_mode: text Moocode: type: programming extensions: - .moo tm_scope: none - ace_mode: none + ace_mode: text MoonScript: type: programming @@ -1822,26 +1822,26 @@ MoonScript: - .moon interpreters: - moon - ace_mode: none + ace_mode: text Myghty: extensions: - .myt tm_scope: none - ace_mode: none + ace_mode: text NSIS: extensions: - .nsi - .nsh - ace_mode: none + ace_mode: text Nemerle: type: programming color: "#0d3c6e" extensions: - .n - ace_mode: none + ace_mode: text NetLogo: type: programming @@ -1858,7 +1858,7 @@ Nginx: tm_scope: source.nginx aliases: - nginx configuration file - ace_mode: none + ace_mode: text Nimrod: type: programming @@ -1866,14 +1866,14 @@ Nimrod: extensions: - .nim - .nimrod - ace_mode: none + ace_mode: text Ninja: type: data tm_scope: source.ninja extensions: - .ninja - ace_mode: none + ace_mode: text Nit: type: programming @@ -1881,7 +1881,7 @@ Nit: extensions: - .nit tm_scope: none - ace_mode: none + ace_mode: text Nix: type: programming @@ -1914,7 +1914,7 @@ NumPy: - .numpyw - .numsc tm_scope: none - ace_mode: none + ace_mode: text OCaml: type: programming @@ -1972,7 +1972,7 @@ Objective-J: - .j - .sj tm_scope: source.js.objj - ace_mode: none + ace_mode: text Omgrofl: type: programming @@ -1980,13 +1980,13 @@ Omgrofl: - .omgrofl color: "#cabbff" tm_scope: none - ace_mode: none + ace_mode: text Opa: type: programming extensions: - .opa - ace_mode: none + ace_mode: text Opal: type: programming @@ -1994,7 +1994,7 @@ Opal: extensions: - .opal tm_scope: none - ace_mode: none + ace_mode: text OpenCL: type: programming @@ -2015,14 +2015,14 @@ OpenEdge ABL: - .p - .cls tm_scope: source.abl - ace_mode: none + ace_mode: text OpenSCAD: type: programming extensions: - .scad tm_scope: none - ace_mode: none + ace_mode: text Org: type: prose @@ -2030,7 +2030,7 @@ Org: extensions: - .org tm_scope: none - ace_mode: none + ace_mode: text Ox: type: programming @@ -2039,7 +2039,7 @@ Ox: - .oxh - .oxo tm_scope: none - ace_mode: none + ace_mode: text Oxygene: type: programming @@ -2047,7 +2047,7 @@ Oxygene: extensions: - .oxygene tm_scope: none - ace_mode: none + ace_mode: text Oz: type: programming @@ -2055,7 +2055,7 @@ Oz: extensions: - .oz tm_scope: source.oz - ace_mode: none + ace_mode: text PAWN: type: programming @@ -2092,7 +2092,7 @@ Pan: extensions: - .pan tm_scope: none - ace_mode: none + ace_mode: text Papyrus: type: programming @@ -2100,7 +2100,7 @@ Papyrus: extensions: - .psc tm_scope: none - ace_mode: none + ace_mode: text Parrot: type: programming @@ -2108,7 +2108,7 @@ Parrot: extensions: - .parrot # Dummy extension tm_scope: none - ace_mode: none + ace_mode: text Parrot Assembly: group: Parrot @@ -2120,7 +2120,7 @@ Parrot Assembly: interpreters: - parrot tm_scope: none - ace_mode: none + ace_mode: text Parrot Internal Representation: group: Parrot @@ -2132,7 +2132,7 @@ Parrot Internal Representation: - .pir interpreters: - parrot - ace_mode: none + ace_mode: text Pascal: type: programming @@ -2190,7 +2190,7 @@ PigLatin: extensions: - .pig tm_scope: none - ace_mode: none + ace_mode: text Pike: type: programming @@ -2198,7 +2198,7 @@ Pike: extensions: - .pike - .pmod - ace_mode: none + ace_mode: text Pod: type: prose @@ -2214,7 +2214,7 @@ PogoScript: extensions: - .pogo tm_scope: none - ace_mode: none + ace_mode: text PostScript: type: markup @@ -2224,7 +2224,7 @@ PostScript: tm_scope: source.postscript aliases: - postscr - ace_mode: none + ace_mode: text PowerShell: type: programming @@ -2241,7 +2241,7 @@ Processing: color: "#2779ab" extensions: - .pde - ace_mode: none + ace_mode: text Prolog: type: programming @@ -2261,7 +2261,7 @@ Propeller Spin: extensions: - .spin tm_scope: none - ace_mode: none + ace_mode: text Protocol Buffer: type: markup @@ -2280,7 +2280,7 @@ Puppet: - .pp filenames: - Modulefile - ace_mode: none + ace_mode: text Pure Data: type: programming @@ -2288,7 +2288,7 @@ Pure Data: extensions: - .pd tm_scope: none - ace_mode: none + ace_mode: text PureScript: type: programming @@ -2332,7 +2332,7 @@ Python traceback: extensions: - .pytb tm_scope: text.python.traceback - ace_mode: none + ace_mode: text QML: type: markup @@ -2340,7 +2340,7 @@ QML: extensions: - .qml tm_scope: source.qml - ace_mode: none + ace_mode: text QMake: extensions: @@ -2348,7 +2348,7 @@ QMake: - .pri interpreters: - qmake - ace_mode: none + ace_mode: text R: type: programming @@ -2396,7 +2396,7 @@ REALbasic: - .rbtbar - .rbuistate tm_scope: source.vbnet - ace_mode: none + ace_mode: text RHTML: type: markup @@ -2437,7 +2437,7 @@ Ragel in Ruby Host: - ragel-rb - ragel-ruby tm_scope: none - ace_mode: none + ace_mode: text Raw token data: search_term: raw @@ -2446,7 +2446,7 @@ Raw token data: extensions: - .raw tm_scope: none - ace_mode: none + ace_mode: text Rebol: type: programming @@ -2457,7 +2457,7 @@ Rebol: - .r2 - .r3 - .rebol - ace_mode: none + ace_mode: text Red: type: programming @@ -2468,13 +2468,13 @@ Red: aliases: - red/system tm_scope: none - ace_mode: none + ace_mode: text Redcode: extensions: - .cw tm_scope: none - ace_mode: none + ace_mode: text RobotFramework: type: programming @@ -2482,7 +2482,7 @@ RobotFramework: - .robot # - .txt tm_scope: text.robot - ace_mode: none + ace_mode: text Rouge: type: programming @@ -2553,7 +2553,7 @@ SAS: extensions: - .sas tm_scope: none - ace_mode: none + ace_mode: text SCSS: type: markup @@ -2570,7 +2570,7 @@ SQF: - .sqf - .hqf tm_scope: source.sqf - ace_mode: none + ace_mode: text SQL: type: data @@ -2624,7 +2624,7 @@ Scaml: extensions: - .scaml tm_scope: source.scaml - ace_mode: none + ace_mode: text Scheme: type: programming @@ -2648,7 +2648,7 @@ Scilab: - .sci - .sce - .tst - ace_mode: none + ace_mode: text Self: type: programming @@ -2656,7 +2656,7 @@ Self: extensions: - .self tm_scope: none - ace_mode: none + ace_mode: text Shell: type: programming @@ -2698,7 +2698,7 @@ Shen: extensions: - .shen tm_scope: none - ace_mode: none + ace_mode: text Slash: type: programming @@ -2706,7 +2706,7 @@ Slash: extensions: - .sl tm_scope: text.html.slash - ace_mode: none + ace_mode: text Slim: group: HTML @@ -2714,7 +2714,7 @@ Slim: color: "#ff8877" extensions: - .slim - ace_mode: none + ace_mode: text Smalltalk: type: programming @@ -2723,7 +2723,7 @@ Smalltalk: - .st aliases: - squeak - ace_mode: none + ace_mode: text Smarty: extensions: @@ -2738,7 +2738,7 @@ SourcePawn: extensions: - .sp tm_scope: source.sp - ace_mode: none + ace_mode: text Squirrel: type: programming @@ -2758,7 +2758,7 @@ Standard ML: - .sig - .sml tm_scope: source.ml - ace_mode: none + ace_mode: text Stata: type: programming @@ -2770,7 +2770,7 @@ Stata: - .mata - .matah - .sthlp - ace_mode: none + ace_mode: text Stylus: type: markup @@ -2787,14 +2787,14 @@ SuperCollider: - .scd - .sc tm_scope: none - ace_mode: none + ace_mode: text Swift: type: programming color: "#ffac45" extensions: - .swift - ace_mode: none + ace_mode: text SystemVerilog: type: programming @@ -2817,7 +2817,7 @@ TXL: extensions: - .txl tm_scope: none - ace_mode: none + ace_mode: text Tcl: type: programming @@ -2869,7 +2869,7 @@ Tea: extensions: - .tea tm_scope: source.tea - ace_mode: none + ace_mode: text Textile: type: prose @@ -2884,7 +2884,7 @@ Thrift: tm_scope: source.thrift extensions: - .thrift - ace_mode: none + ace_mode: text Turing: type: programming @@ -2893,7 +2893,7 @@ Turing: - .t - .tu tm_scope: none - ace_mode: none + ace_mode: text Twig: type: markup @@ -2981,7 +2981,7 @@ VimL: - _vimrc - gvimrc - vimrc - ace_mode: none + ace_mode: text Visual Basic: type: programming @@ -2999,7 +2999,7 @@ Visual Basic: aliases: - vb.net - vbnet - ace_mode: none + ace_mode: text Volt: type: programming @@ -3139,13 +3139,13 @@ Xojo: - .xojo_toolbar - .xojo_window tm_scope: source.vbnet - ace_mode: none + ace_mode: text Xtend: type: programming extensions: - .xtend - ace_mode: none + ace_mode: text YAML: type: data @@ -3174,7 +3174,7 @@ Zimpl: - .zmpl - .zpl tm_scope: none - ace_mode: none + ace_mode: text eC: type: programming @@ -3183,7 +3183,7 @@ eC: - .ec - .eh tm_scope: none - ace_mode: none + ace_mode: text edn: type: data @@ -3199,26 +3199,26 @@ fish: extensions: - .fish tm_scope: none - ace_mode: none + ace_mode: text mupad: extensions: - .mu - ace_mode: none + ace_mode: text nesC: type: programming color: "#ffce3b" extensions: - .nc - ace_mode: none + ace_mode: text ooc: type: programming color: "#b0b77e" extensions: - .ooc - ace_mode: none + ace_mode: text reStructuredText: type: prose @@ -3229,7 +3229,7 @@ reStructuredText: extensions: - .rst - .rest - ace_mode: none + ace_mode: text wisp: type: programming @@ -3245,4 +3245,4 @@ xBase: extensions: - .prg tm_scope: none - ace_mode: none + ace_mode: text diff --git a/test/test_language.rb b/test/test_language.rb index 393cc780..d1a44b82 100644 --- a/test/test_language.rb +++ b/test/test_language.rb @@ -308,11 +308,12 @@ class TestLanguage < Test::Unit::TestCase assert_equal 'css', Language['CSS'].ace_mode assert_equal 'lsl', Language['LSL'].ace_mode assert_equal 'javascript', Language['JavaScript'].ace_mode + assert_equal 'text', Language['FORTRAN'].ace_mode end def test_ace_modes assert Language.ace_modes.include?(Language['Ruby']) - assert !Language.ace_modes.include?(Language['FORTRAN']) + assert Language.ace_modes.include?(Language['FORTRAN']) end def test_wrap From ad778571a24101aaccb60e5807a65a84970269af Mon Sep 17 00:00:00 2001 From: Garen Torikian Date: Fri, 5 Dec 2014 16:57:55 +0200 Subject: [PATCH 3/7] This `reject` is no longer necessary --- lib/linguist/language.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/linguist/language.rb b/lib/linguist/language.rb index 65fe603e..78aee90b 100644 --- a/lib/linguist/language.rb +++ b/lib/linguist/language.rb @@ -271,7 +271,7 @@ module Linguist # # Returns an Array of Languages. def self.ace_modes - @ace_modes ||= all.select(&:ace_mode).sort_by { |lang| lang.name.downcase }.reject { |h| h.ace_mode == 'none' } + @ace_modes ||= all.select(&:ace_mode).sort_by { |lang| lang.name.downcase } end # Internal: Initialize a new Language From 348dab4b9f388bce98d77faf8383587f97e4f71d Mon Sep 17 00:00:00 2001 From: Garen Torikian Date: Sat, 6 Dec 2014 11:59:31 +0200 Subject: [PATCH 4/7] Update test to account for using `text` --- lib/linguist/languages.yml | 2 +- test/test_language.rb | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/linguist/languages.yml b/lib/linguist/languages.yml index e0b82960..8c884300 100644 --- a/lib/linguist/languages.yml +++ b/lib/linguist/languages.yml @@ -5,7 +5,7 @@ # includes name.downcase) # ace_mode - A String name of the Ace Mode used for highlighting whenever # a file is edited. This must match one of the filenames in http://git.io/3XO_Cg. -# Use "none" if a mode does not exist. +# Use "text" if a mode does not exist. # wrap - Boolean wrap to enable line wrapping (default: false) # extensions - An Array of associated extensions (the first one is # considered the primary extension) diff --git a/test/test_language.rb b/test/test_language.rb index d1a44b82..10b714c8 100644 --- a/test/test_language.rb +++ b/test/test_language.rb @@ -367,9 +367,9 @@ class TestLanguage < Test::Unit::TestCase File.basename(ace_github_mode["name"], ".js") if ace_github_mode["name"] !~ /_highlight_rules|_test|_worker/ end.compact.uniq.sort.map(&:downcase) - missing = Language.all.reject { |language| language.ace_mode == "none" || existing_ace_modes.include?(language.ace_mode) } + missing = Language.all.reject { |language| language.ace_mode == "text" || existing_ace_modes.include?(language.ace_mode) } message = "The following languages do not have an Ace mode listed in languages.yml. Please add an Ace mode for all new languages.\n" - message << "If no Ace mode exists for a language, mark the language with `ace_mode: none` in lib/linguist/languages.yml.\n" + message << "If no Ace mode exists for a language, mark the language with `ace_mode: text` in lib/linguist/languages.yml.\n" width = missing.map { |language| language.name.length }.max message << missing.map { |language| sprintf("%-#{width}s %s", language.name, language.ace_mode) }.sort.join("\n") From b6427fa05ace1d98c188ef564d359c243c386d12 Mon Sep 17 00:00:00 2001 From: Garen Torikian Date: Sun, 7 Dec 2014 14:48:36 +0200 Subject: [PATCH 5/7] Set text's ace_mode to text --- lib/linguist/languages.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/linguist/languages.yml b/lib/linguist/languages.yml index abc28c72..9099b9b0 100644 --- a/lib/linguist/languages.yml +++ b/lib/linguist/languages.yml @@ -3241,7 +3241,7 @@ text: - .txt - .fr tm_scope: none - ace_mode: none + ace_mode: text wisp: type: programming From 4e5da23474a998a77d7c942f5ac842f7eb11e7c2 Mon Sep 17 00:00:00 2001 From: Garen Torikian Date: Tue, 9 Dec 2014 08:20:15 -0800 Subject: [PATCH 6/7] Add `warn` message indicating deprecation --- lib/linguist/language.rb | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/lib/linguist/language.rb b/lib/linguist/language.rb index 78aee90b..210b244d 100644 --- a/lib/linguist/language.rb +++ b/lib/linguist/language.rb @@ -269,8 +269,12 @@ module Linguist # Public: A List of languages compatible with Ace. # + # TODO: Remove this method in a 5.x release. Every language now needs an ace_mode + # key, so this function isn't doing anything unique anymore. + # # Returns an Array of Languages. def self.ace_modes + warn "This method will be deprecated in a future 5.x release. Every language now has an `ace_mode` set." @ace_modes ||= all.select(&:ace_mode).sort_by { |lang| lang.name.downcase } end From 0cbcbd461499508f3a7a31bc5fc7c4f653f4f255 Mon Sep 17 00:00:00 2001 From: Garen Torikian Date: Tue, 9 Dec 2014 09:16:51 -0800 Subject: [PATCH 7/7] Set Public Key ace_mode to text --- lib/linguist/languages.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/linguist/languages.yml b/lib/linguist/languages.yml index f6ba19bb..21ca139f 100644 --- a/lib/linguist/languages.yml +++ b/lib/linguist/languages.yml @@ -2280,7 +2280,7 @@ Public Key: - .asc - .pub tm_scope: none - ace_mode: none + ace_mode: text Puppet: type: programming