Spikes
While using the simple text cutting and pasting available in most operating systems is useful for plain text, spikes provide the ability to move complex elements around an article or between articles.
Spike operations△
Using the spike is much like using copy and paste, except that the complexity of elements makes it a little more involved.
Using copy and paste for plain text is simple, as there is only one version of what is being copied to paste. However, when copying a MS Word paragraph with formatting, there are several ways of pasting it back into a document, involving various degrees of stripping back the formatting. Blindly assuming the paragraph will remain intact when pasting it into another document is a huge leap of faith, as it may involve style formatting mismatches and other incompatibilities that aren't readily apparent!
Smallsite Design uses consistent formatting for the same elements so that there should be no surprises when pasting from a spike.
# | Operation | Description |
---|---|---|
a | Add | By clicking on the spike to add to under an element's Actions cell, usually represented like 1:0, being the spike number with the number of items already on it |
b | Append | Add after the last child of the selected element |
c | Insert | Insert after the currently selected element |
d | Replace | Replace the currently selected element with the spike item. Requires confirmation because the current selection contents are overwritten |
Append and Insert function exactly as for an element, but using the selected spike item rather than an empty element. The flexibility of these operations is enhanced when used as described in the Substitutes section.
Adding to a spike copies the element to the spike, but pasting moves the element from the spike. This ensures that there is always a copy of the element in the article while spike operations are being undertaken. Unwanted elements can be deleted after any use of the spikes is complete. If wanting to paste multiple copies of the same element from a spike, add it to the spike the number of times it is needed.
Per user△
Spikes are owned by a user, but they are only available for specific uses, and deleted afterwards.
There are three spikes, with each normally holding up to nine items. An item is a complete element with all its children. When adding an element to a spike, a copy is made, leaving the existing element where it is. This ensures that there is always a copy of the element available, regardless of whether a session gets interrupted or times out.
All three spikes can be used within the current version of the document being edited. However, spike 3 can also be used to collect items from previous versions or from other documents. If intending to copy from other than the current version, focus on using spikes 1 and 2 for the current version.
The items from the current article that are placed on spikes will be deleted when the current editing is complete because access to the current article is discontinued so it makes sense to cease access to any material from it.
When other articles are specified as source for the current article, any items placed on spikes from them will be deleted when access to those source articles is finished, typically along with the end of current editing of the current article. However, if any spike items are from source articles for other articles still being edited by a user, those will remain on their spikes.
Substitutes△
Many elements have the same internal structure but are known by other names. Some of these can be substituted for each other when moving off a spike.
Paragraphs, introductions, list items and table cells are all what is called rich text in that they can contain a variety of inline elements for formatting text. Without substitutions, all the inline text would have to be copied into a new element having a different name. When moving from a spike with substitutions, the outer element is renamed.
A glossary item is a rich text element with a heading. When it is used as a substitute, that heading will be stripped off. Conversely, substituting something else for a glossary item, a heading in need of text will be added.
Here, the table cell can only be appended to the article as a paragraph.
Under Details, if the item is from another article, that article's ID is shown underneath the other details.
With a paragraph selected, there are more opportunities for substitutions, being:
A simple scenario is when having started a paragraph with some formatting, a list using the paragraph as the introduction can be implemented by:
Unwrapping△
Rather than placing all the children of an element on a spike one at a time, some elements allow all their children to be put on a spike at the same time.
Normally a spike can only hold up to nine items, but if spike 3 is empty and the parent element allows it, all children can be deposited on the spike at once, regardless of how many children there are.
In general, most elements can be unwrapped, including whole articles, but some of the elements unwrapped may only be able to replace the same element in another article of the same type. For example, the policies items of a policies article section can only replace policies items in another policies article.