caption: diff-text created: 20180316162725329 modified: 20180316162725329 tags: Widgets title: DiffTextWidget type: text/vnd.tiddlywiki ! Introduction <<.from-version "5.1.16">> The diff text widget analyses the differences between a pair of source and destination text strings and displays the results as highlighted insertions and deletions (similar to the "track changes" function of a word processor). For example: <$diff-text source="Hey Jude, don't make it bad. Take a sad song and make it better. Remember to let her into your heart Then you can start to make it better." dest="Hey Jude, don't be afraid. You were made to go out and get her. The minute you let her under your skin. Then you begin to make it better."/> ! Content and Attributes !! Content The content of the `<$diff-text>` widget is rendered immediately before the diffs. Within it, the variable `diff-count` is available, containing the number of differences found. If the widget has no content then it automatically transcludes the tiddler [[$:/language/Diffs/CountMessage]]. <<< In other words, these three invocations are all equivalent: ``` <$diff-text source={{FirstTiddler}} dest={{SecondTiddler}}> {{$:/language/Diffs/CountMessage}} <$diff-text source={{FirstTiddler}} dest={{SecondTiddler}}> <$diff-text source={{FirstTiddler}} dest={{SecondTiddler}}/> ``` <<< !! Attributes |!Attribute |!Description | |source |The source text | |dest |The destination text | |cleanup |See below | The ''cleanup'' attribute determines which optional post-processing should be applied to the diffs: * ''none'': no cleanup is performed * ''semantic'' (default): rewrites the diffs for human readability * ''efficient'': rewrites the diffs to minimise the number of operations for subsequent processing (Note that in many cases the results will be the same regardless of the cleanup option. See the [[docs|https://github.com/google/diff-match-patch/wiki/API]] of the underlying library for more details). ! Examples In this example we compare two texts: <$macrocall $name='wikitext-example-without-html' src="""<$edit-text tiddler="SampleTiddlerFirst"/> <$edit-text tiddler="SampleTiddlerSecond"/> <$diff-text source={{SampleTiddlerFirst}} dest={{SampleTiddlerSecond}}/>"""/>