summaryrefslogtreecommitdiff
path: root/underlays/basewiki/directive/cutpaste.mdwn
diff options
context:
space:
mode:
authorWilliam Uther <willu@cse.unsw.edu.au>2008-09-11 17:04:23 -0400
committerJoey Hess <joey@kodama.kitenet.net>2008-09-11 17:05:19 -0400
commit4f0ac7fe59c196a602e07cc6c4abfc248999ec6b (patch)
tree725f523faeb8e8db0efd81be4024257799c93ef8 /underlays/basewiki/directive/cutpaste.mdwn
parent595b0359157d1f57ee5a87c63e665dfa1d2130ec (diff)
add underlay files for listdirectives
As was noted, 'listdirectives' didn't include the underlay files that make it really worthwhile. I've just gone through all the plugin documentation, modified it to remove installation information and renamed the files to match the directives rather than the plugins. This can now serve as useful underlay. I've only gone through plugins in the 'plugins' dir. I did not go through the 'contrib' dir.
Diffstat (limited to 'underlays/basewiki/directive/cutpaste.mdwn')
-rw-r--r--underlays/basewiki/directive/cutpaste.mdwn53
1 files changed, 53 insertions, 0 deletions
diff --git a/underlays/basewiki/directive/cutpaste.mdwn b/underlays/basewiki/directive/cutpaste.mdwn
new file mode 100644
index 000000000..56dd993cb
--- /dev/null
+++ b/underlays/basewiki/directive/cutpaste.mdwn
@@ -0,0 +1,53 @@
+The `copy`, `cut` and `paste` directives are supplied by the [[!iki plugins/cutpaste]] plugin.
+
+With these directives you can store and recall pieces of text:
+
+ * `\[[!cut id=name text="text"]]` memorizes the text allowing to recall it
+ using the given ID. The text being cut is not included in the output.
+ * `\[[!copy id=name text="text"]]` memorizes the text allowing to recall it
+ using the given ID. The text being cut *is* included in the output.
+ * `\[[!paste id=name]]` is replaced by the previously memorized text.
+
+The text being cut, copied and pasted can freely include wiki markup, including
+more calls to cut, copy and paste.
+
+You do not need to memorize the text before using it: a cut directive can
+follow the paste directive that uses its text. In fact, this is quite useful
+to postpone big blocks of text like long annotations and have a more natural
+flow. For example:
+
+ This plugin provides three directives:
+
+ * \[[!toggle id="cut" text="cut"]] that cuts text
+ * \[[!toggle id="copy" text="copy"]] that copies text
+ * \[[!toggle id="paste" text="paste"]] that pastes text
+
+ \[[!toggleable id="cut" text="\[[!paste id=cutlongdesc]]"]]
+ \[[!toggleable id="copy" text="\[[!paste id=copylongdesc]]"]]
+ \[[!toggleable id="paste" text="\[[!paste id=pastelongdesc]]"]]
+
+ \[...some time later...]
+
+ \[[!cut id=cutlongdesc text="""
+ blah blah blah
+ """]]
+ \[[!cut id=copylongdesc text="""
+ blah blah blah
+ """]]
+ \[[!cut id=pastelongdesc text="""
+ blah blah blah
+ """]]
+
+This can potentially be used to create loops, but ikiwiki is clever and breaks
+them.
+
+Since you can paste without using double quotes, copy and paste can be used to
+nest directive that require multiline parameters inside each other:
+
+ \[[!toggleable id=foo text="""
+ \[[!toggleable id=bar text="\[[!paste id=baz]]"]]
+ """]]
+
+ \[[!cut id=baz text="""
+ multiline parameter!
+ """]]