Changeset e07c11f643454c1c9f84586502acd0e79bd50904

Show
Ignore:
Timestamp:
01/31/2008 10:37:25 AM (1 year ago)
Author:
Robin Luckey <robin@Tangier.local>
git-committer:
Robin Luckey <robin@Tangier.local> 1201804645 -0800
git-parent:

[5a0bfaf58d09300d9de9dd953d7f1d6702636a94]

git-author:
maciek <maciek@kaminski.(none)> 1201728138 +0100
Message:

Added support for TeX

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • ext/ohcount_native/generator.rb

    r5a0bfaf re07c11f  
    6060      clearsilver_template = ClearsilverTemplate.new("clearsilver_template", html, clearsilver) 
    6161      dmd = DMonoglot.new('dmd') 
     62      tex = CMonoglot.new("tex",             '%',              nil,                false, false) 
    6263 
    6364      polyglots = [ 
     
    102103        rhtml, 
    103104        jsp, 
    104         clearsilver_template 
     105        clearsilver_template, 
     106        tex 
    105107      ] 
    106108      File.open("polyglots.c", "w") do |io| 
  • ext/ohcount_native/polyglots.c

    rf879617 re07c11f  
    396396      EMACSLISP_STATES, 
    397397      EMACSLISP_TRANSITIONS, 
     398  NULL 
     399}; 
     400 
     401/***************************************************************************** 
     402                                    haskell 
     403*****************************************************************************/ 
     404/* States */ 
     405State HASKELL_CODE = { "HASKELL_CODE", "haskell", semantic_code }; 
     406State HASKELL_DQUOTE_STRING = { "HASKELL_DQUOTE_STRING", "haskell", semantic_code }; 
     407State HASKELL_SQUOTE_STRING = { "HASKELL_SQUOTE_STRING", "haskell", semantic_code }; 
     408State HASKELL_LINE_COMMENT = { "HASKELL_LINE_COMMENT", "haskell", semantic_comment }; 
     409State HASKELL_BLOCK_COMMENT = { "HASKELL_BLOCK_COMMENT", "haskell", semantic_comment }; 
     410State *HASKELL_STATES[] = { &HASKELL_CODE, &HASKELL_DQUOTE_STRING, &HASKELL_SQUOTE_STRING, &HASKELL_LINE_COMMENT, &HASKELL_BLOCK_COMMENT, NULL }; 
     411/* Transitions */ 
     412Transition HASKELL_CODE__LINE_COMMENT_0 = { "--", &HASKELL_CODE, &HASKELL_LINE_COMMENT, ToEatsToken, false }; 
     413Transition HASKELL_LINE_COMMENT__RETURN = { "\n", &HASKELL_LINE_COMMENT, RETURN, FromEatsToken, false }; 
     414Transition HASKELL_CODE__BLOCK_COMMENT_0 = { "{\\-", &HASKELL_CODE, &HASKELL_BLOCK_COMMENT, ToEatsToken, false }; 
     415Transition HASKELL_BLOCK_COMMENT__RETURN_0 = { "\\-}", &HASKELL_BLOCK_COMMENT, RETURN, FromEatsToken, false }; 
     416Transition HASKELL_CODE__DQUOTE_STRING = { "\"", &HASKELL_CODE, &HASKELL_DQUOTE_STRING, ToEatsToken, false }; 
     417Transition HASKELL_DQUOTE_STRING__DQUOTE_STRING_ESC_SLASH = { "\\\\\\\\", &HASKELL_DQUOTE_STRING, &HASKELL_DQUOTE_STRING, ToEatsToken, true }; 
     418Transition HASKELL_DQUOTE_STRING__DQUOTE_STRING_ESC = { "\\\\\"", &HASKELL_DQUOTE_STRING, &HASKELL_DQUOTE_STRING, ToEatsToken, true }; 
     419Transition HASKELL_DQUOTE_STRING__RETURN = { "\"", &HASKELL_DQUOTE_STRING, RETURN, FromEatsToken, false }; 
     420Transition *HASKELL_TRANSITIONS[] = { &HASKELL_CODE__LINE_COMMENT_0, &HASKELL_LINE_COMMENT__RETURN, &HASKELL_CODE__BLOCK_COMMENT_0, &HASKELL_BLOCK_COMMENT__RETURN_0, &HASKELL_CODE__DQUOTE_STRING, &HASKELL_DQUOTE_STRING__DQUOTE_STRING_ESC_SLASH, &HASKELL_DQUOTE_STRING__DQUOTE_STRING_ESC, &HASKELL_DQUOTE_STRING__RETURN, NULL}; 
     421Polyglot HASKELL_POLYGLOT = { 
     422  "haskell", 
     423      HASKELL_STATES, 
     424      HASKELL_TRANSITIONS, 
    398425  NULL 
    399426}; 
     
    10051032}; 
    10061033 
     1034/***************************************************************************** 
     1035                                      tex 
     1036*****************************************************************************/ 
     1037/* States */ 
     1038State TEX_CODE = { "TEX_CODE", "tex", semantic_code }; 
     1039State TEX_DQUOTE_STRING = { "TEX_DQUOTE_STRING", "tex", semantic_code }; 
     1040State TEX_SQUOTE_STRING = { "TEX_SQUOTE_STRING", "tex", semantic_code }; 
     1041State TEX_LINE_COMMENT = { "TEX_LINE_COMMENT", "tex", semantic_comment }; 
     1042State TEX_BLOCK_COMMENT = { "TEX_BLOCK_COMMENT", "tex", semantic_comment }; 
     1043State *TEX_STATES[] = { &TEX_CODE, &TEX_DQUOTE_STRING, &TEX_SQUOTE_STRING, &TEX_LINE_COMMENT, &TEX_BLOCK_COMMENT, NULL }; 
     1044/* Transitions */ 
     1045Transition TEX_CODE__LINE_COMMENT_0 = { "%", &TEX_CODE, &TEX_LINE_COMMENT, ToEatsToken, false }; 
     1046Transition TEX_LINE_COMMENT__RETURN = { "\n", &TEX_LINE_COMMENT, RETURN, FromEatsToken, false }; 
     1047Transition *TEX_TRANSITIONS[] = { &TEX_CODE__LINE_COMMENT_0, &TEX_LINE_COMMENT__RETURN, NULL}; 
     1048Polyglot TEX_POLYGLOT = { 
     1049  "tex", 
     1050      TEX_STATES, 
     1051      TEX_TRANSITIONS, 
     1052  NULL 
     1053}; 
     1054 
    10071055 
    10081056/***************************************************************************** 
     
    10251073  &JAVASCRIPT_POLYGLOT, 
    10261074  &EMACSLISP_POLYGLOT, 
     1075  &HASKELL_POLYGLOT, 
    10271076  &LISP_POLYGLOT, 
    10281077  &LUA_POLYGLOT, 
     
    10481097  &JSP_POLYGLOT, 
    10491098  &CLEARSILVER_TEMPLATE_POLYGLOT, 
    1050   NULL 
    1051 }; 
     1099  &TEX_POLYGLOT, 
     1100  NULL 
     1101}; 
  • lib/ohcount/detector.rb

    r5a0bfaf re07c11f  
    165165    '.xml'  => "xml", 
    166166    '.d'    => 'dmd', 
    167     '.di'   => 'dmd' 
     167    '.di'   => 'dmd', 
     168    '.tex'    => 'tex' 
    168169  } 
    169170 
  • lib/ohcount/sloc_info.rb

    rf879617 re07c11f  
    6868      'visualbasic'   => {:nice_name => 'Visual Basic'     , :category => 0}, 
    6969      'xml'           => {:nice_name => 'XML'              , :category => 1}, 
    70       'dmd'           => {:nice_name => 'D'                , :category => 0} 
     70      'dmd'           => {:nice_name => 'D'                , :category => 0}, 
     71      'tex'           => {:nice_name => 'TeX/LaTeX'        , :category => 1} 
    7172  } 
    7273 
  • test/unit/detector_test.rb

    rf879617 re07c11f  
    4040    assert_equal "php", do_detect("upper_case_php") 
    4141    assert_equal "vala", do_detect("foo.vala") 
     42    assert_equal "tex", do_detect("foo.tex") 
    4243    assert_equal "lisp", do_detect("core.lisp") 
    4344    assert_equal "dmd", do_detect("foo.d")