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. --- test/scanners/diff/example.expected.raydebug | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 test/scanners/diff/example.expected.raydebug (limited to 'test/scanners/diff/example.expected.raydebug') diff --git a/test/scanners/diff/example.expected.raydebug b/test/scanners/diff/example.expected.raydebug new file mode 100644 index 0000000..3e836fa --- /dev/null +++ b/test/scanners/diff/example.expected.raydebug @@ -0,0 +1,27 @@ +head[head(===================================================================)] +head[head(--- )plain(/Users/jgoebel/rails/pastie/app/controllers/pastes_controller.rb (revision 1431\))] +head[head(+++ )plain(/Users/jgoebel/rails/pastie/app/controllers/pastes_controller.rb (revision 1437\))] +change[change(@@)plain( -1,6 +1,10 )change(@@)] +insert[insert(+)plain(require 'login_system')] +comment( require 'coderay') +comment( ) +comment( class PastesController < ApplicationController) +insert[insert(+)plain( include LoginSystem)] +insert[insert(+)] +insert[insert(+)plain( before_filter :attempt_cookie_login)] +comment( ) +comment( # caches_action :recent) +comment( ) +change[change(@@)plain( -10,11 +14,7 )change(@@)] +comment( ) +comment( def show) +comment( @paste = Paste.find(params[:id]\)) +delete[delete(-)plain( if params[:key] and params[:key]==User.new(@paste.nick\).magic_mojo)] +delete[delete(-)plain( session[:login]=@paste.nick)] +delete[delete(-)plain( return redirect_to(:action => 'show', :id => @paste.id\))] +delete[delete(-)plain( end)] +delete[delete(-)plain( )] +insert[insert(+)plain( attempt_key_login if not logged_in?)] +comment( unless @paste.asset or not @paste.body.blank?) +comment( render :action => "edit") +comment( end) \ No newline at end of file -- cgit v1.2.1