diff options
Diffstat (limited to 'includes/pear/Text/Diff/Renderer/unified.php')
| -rw-r--r-- | includes/pear/Text/Diff/Renderer/unified.php | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/includes/pear/Text/Diff/Renderer/unified.php b/includes/pear/Text/Diff/Renderer/unified.php new file mode 100644 index 0000000..f990f72 --- /dev/null +++ b/includes/pear/Text/Diff/Renderer/unified.php @@ -0,0 +1,67 @@ +<?php +/** + * "Unified" diff renderer. + * + * This class renders the diff in classic "unified diff" format. + * + * $Horde: framework/Text_Diff/Diff/Renderer/unified.php,v 1.3.10.7 2009/01/06 15:23:42 jan Exp $ + * + * Copyright 2004-2009 The Horde Project (http://www.horde.org/) + * + * See the enclosed file COPYING for license information (LGPL). If you did + * not receive this file, see http://opensource.org/licenses/lgpl-license.php. + * + * @author Ciprian Popovici + * @package Text_Diff + */ + +/** Text_Diff_Renderer */ +require_once 'Text/Diff/Renderer.php'; + +/** + * @package Text_Diff + */ +class Text_Diff_Renderer_unified extends Text_Diff_Renderer { + + /** + * Number of leading context "lines" to preserve. + */ + var $_leading_context_lines = 4; + + /** + * Number of trailing context "lines" to preserve. + */ + var $_trailing_context_lines = 4; + + function _blockHeader($xbeg, $xlen, $ybeg, $ylen) + { + if ($xlen != 1) { + $xbeg .= ',' . $xlen; + } + if ($ylen != 1) { + $ybeg .= ',' . $ylen; + } + return "@@ -$xbeg +$ybeg @@"; + } + + function _context($lines) + { + return $this->_lines($lines, ' '); + } + + function _added($lines) + { + return $this->_lines($lines, '+'); + } + + function _deleted($lines) + { + return $this->_lines($lines, '-'); + } + + function _changed($orig, $final) + { + return $this->_deleted($orig) . $this->_added($final); + } + +} |
