mirror of
https://github.com/Jermolene/TiddlyWiki5
synced 2024-11-05 01:26:18 +00:00
62 lines
2.2 KiB
Plaintext
62 lines
2.2 KiB
Plaintext
|
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>
|
||
|
|
||
|
<$diff-text source={{FirstTiddler}} dest={{SecondTiddler}}>
|
||
|
</$diff-text>
|
||
|
|
||
|
<$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}}/>"""/>
|