From a4bd413ca4e835fd3d1fdc24eebce67cd54231ca Mon Sep 17 00:00:00 2001 From: murphy Date: Tue, 30 Sep 2008 16:42:53 +0000 Subject: New: *Simple Diff Scanner* (closes #22). * Highlights unified diffs, especially like the ones svn diff outputs. * Changes to make highlighting of whole lines were necessary. * I added two example files. More changes: * Added token classes :head, :delete, :insert, and :change along with styles. * Added two new special token types: :begin_line and :end_line. They mark token groups that explicitly span whole lines and should be highlighted as such. * The HTML encoder converts these new tokens to DIVs. May need more work. * The Debug Encoder uses square brackets for line tokens. * Some cleanups. --- lib/coderay/encoders/html/numerization.rb | 4 +++- lib/coderay/encoders/html/output.rb | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) (limited to 'lib/coderay/encoders/html') diff --git a/lib/coderay/encoders/html/numerization.rb b/lib/coderay/encoders/html/numerization.rb index d784bbe..9f1667f 100644 --- a/lib/coderay/encoders/html/numerization.rb +++ b/lib/coderay/encoders/html/numerization.rb @@ -71,6 +71,7 @@ module Encoders line_numbers.gsub!(/\n/) { "\n" } line_numbers_table_tpl = TABLE.apply('LINE_NUMBERS', line_numbers) + gsub!(/<\/div>\n/) { '' } gsub!(/\n/) { "\n" } wrap_in! line_numbers_table_tpl @wrapped_in = :div @@ -90,8 +91,9 @@ module Encoders end close = '' * opened_tags.size - "
  • #{open}#{line}#{close}
  • " + "
  • #{open}#{line}#{close}
  • \n" end + chomp!("\n") wrap_in! LIST @wrapped_in = :div diff --git a/lib/coderay/encoders/html/output.rb b/lib/coderay/encoders/html/output.rb index e74e55e..8def95e 100644 --- a/lib/coderay/encoders/html/output.rb +++ b/lib/coderay/encoders/html/output.rb @@ -166,7 +166,9 @@ module Encoders # title="double click to expand" LIST = <<-`LIST` -
      <%CONTENT%>
    +
      +<%CONTENT%> +
    LIST PAGE = <<-`PAGE` -- cgit v1.2.1