Mercurial > hg > soundsoftware-site
view vendor/gems/coderay-1.0.0/lib/coderay/encoders/lines_of_code.rb @ 947:be4106d14a35 bibplugin_bibtex
Parses a pasted bibtex entry and correctly adds its fields *except* the author names/institutions. Todo: Parse the author names/institutions and show the errors (flashing on the top of the page).
author | luisf <luis.figueira@eecs.qmul.ac.uk> |
---|---|
date | Wed, 18 Jul 2012 16:57:54 +0100 |
parents | cbb26bc654de |
children |
line wrap: on
line source
module CodeRay module Encoders # Counts the LoC (Lines of Code). Returns an Integer >= 0. # # Alias: +loc+ # # Everything that is not comment, markup, doctype/shebang, or an empty line, # is considered to be code. # # For example, # * HTML files not containing JavaScript have 0 LoC # * in a Java class without comments, LoC is the number of non-empty lines # # A Scanner class should define the token kinds that are not code in the # KINDS_NOT_LOC constant, which defaults to [:comment, :doctype]. class LinesOfCode < TokenKindFilter register_for :lines_of_code NON_EMPTY_LINE = /^\s*\S.*$/ protected def setup options if scanner kinds_not_loc = scanner.class::KINDS_NOT_LOC else warn "Tokens have no associated scanner, counting all nonempty lines." if $VERBOSE kinds_not_loc = CodeRay::Scanners::Scanner::KINDS_NOT_LOC end options[:exclude] = kinds_not_loc super options end def finish options output @tokens.text.scan(NON_EMPTY_LINE).size end end end end