Doc-macros, styles and documentation overview tiddler (#8037)

This commit is contained in:
Mario Pietsch 2024-03-10 11:41:09 +01:00 committed by GitHub
parent a75d4ca003
commit 24e474bd72
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 360 additions and 307 deletions

View File

@ -1,5 +1,5 @@
created: 20150110182600000 created: 20150110182600000
modified: 20230325161424684 modified: 20240224170607731
tags: [[Improving TiddlyWiki Documentation]] tags: [[Improving TiddlyWiki Documentation]]
title: Documentation Macros title: Documentation Macros
type: text/vnd.tiddlywiki type: text/vnd.tiddlywiki
@ -8,167 +8,192 @@ The following macros are used throughout ~TiddlyWiki's documentation. Their name
! General ! General
|!Macro |!Used for |!Example | |Macro |Used for |Example |Rendered|h
|.def |the defining instance of a term |<<.def widget>> | |.def |the defining instance of a term |`<<.def widget>>` |<<.def widget>> |
|.em |minor emphasis within a sentence |<<.em not>> | |.em |minor emphasis within a sentence |`<<.em not>>` |<<.em not>> |
|.place |a placeholder for the user to fill in |<<.place tagname>> | |.place |a placeholder for the user to fill in |`<<.place tagname>>` |<<.place tagname>> |
|.strong |major emphasis within a tiddler |<<.strong Important!>> | |.strong |major emphasis within a tiddler |`<<.strong Important!>>` |<<.strong Important!>> |
|.word |a mention of an ordinary word or phrase |<<.word "hello world">> | |.word |a mention of an ordinary word or phrase |`<<.word "hello world">>` |<<.word "hello world">> |
|.icon |an icon, sized to match the surrounding text |<<.icon "$:/core/images/globe">> | |.icon |an icon, sized to match the surrounding text |`<<.icon "$:/core/images/globe">>` |<<.icon "$:/core/images/globe">> |
! Textboxes
!! Textbox Parameters
; text
: Text to be shown in the box
; title
: A title shown as an HTML STRONG element
; icon
: Core icons can be found at [[Icon Gallery]]
; class
: An optional custom class can be added to the text block. It will overwrite the defaults. To keep the defaults, ''add them'' to the custom class settings.
: ''.note''-macro defaults to `doc-note`
: ''.tip''-macro defaults to `doc-tip`
: ''.warning''-macro defaults to `doc-warning`
!! Textbox Examples
|Macro |Used for |Example |Renderd |h
|^.infoBox |^Text-box with an icon |`<<.infoBox text:"A generic ...">>` |<<.infoBox "A generic text box, with an optional title and a custom icon">> |
|^.note|^Infos with a title |`<<.note text:"Some text ...">>` |<<.note "Some text in a box with a title by default">> |
|^.tip |^hints and tips |`<<.tip text:"Eg: Turn ...">>` |<<.tip "Eg: Turn your screen on, otherwise<br>you won't be able to see much.">> |
|^.warning |^warning advice |`<<.warning text:"Eg: Make a backup ...">>` |<<.warning "Eg: Make a backup of your file<br>before you upgrade.">> |
!Advice
|!Macro |!Used for |!Example |
|^.tip |^hints and tips |<<.tip "Turn your screen on, otherwise<br>you won't be able to see much.">> |
|^.warning |^warning advice |<<.warning "Make a backup of your file<br>before you upgrade.">> |
! Blocks ! Blocks
|!Macro |!Used for |
|.preamble |an introductory sentence that stands apart from the rest of the tiddler |
!Tiddlers and fields |Macro |Example |Used for |h
|.preamble |`<<.preamble "your text comes here">>` |<<.preamble "an introductory sentence that stands apart from the rest of the tiddler">> |
|!Macro |!Used for |!Example | ! Tiddlers and Fields
|.tid |a tiddler title |<<.tid Example>> |
|.tag |a tag |<<.tag Example>> |
|.field |a field name |<<.field example>> |
|.value |a field value |<<.value "example value">> |
|.op |a filter operator |<<.op backlinks>> |
|.var |a variable or macro name |<<.var currentTiddler>> |
|.wid |a widget name |<<.wid list>> |
|.attr |an attribute name |<<.attr filter>> |
|.param |a macro parameter name |<<.param text>> |
|.tiddler-fields |a list of tiddler fields |<<.tiddler-fields "Monday">> |
|Macro |Used for |Example |Rendered |h
|.tid |a tiddler title |`<<.tid Example>>` |<<.tid Example>> |
|.tag |a tag |`<<.tag Example>>` |<<.tag Example>> |
|.field |a field name |`<<.field example>>` |<<.field example>> |
|.value |a field value |`<<.value "example value">>` |<<.value "example value">> |
|.op |a filter operator |`<<.op backlinks>>` |<<.op backlinks>> |
|.var |a variable or macro name |`<<.var currentTiddler>>` |<<.var currentTiddler>> |
|.wid |a widget name |`<<.wid list>>` |<<.wid list>> |
|.attr |an attribute name |`<<.attr filter>>` |<<.attr filter>> |
|.param |a macro parameter name |`<<.param text>>` |<<.param text>> |
|.tiddler-fields |a list of tiddler fields |`<<.tiddler-fields "Monday">>` |<<.tiddler-fields "Monday">> |
! Links ! Links
|!Macro |!Used for |!Example | |!Macro |Used for |Example |Renderd |h
|.link |a link containing WikiText |<<.link "^^an^^ ~~example~~" Example>> | |.link |link containing WikiText |`<<.link "^^an^^ ~~example~~" Example>>` |<<.link "^^an^^ ~~example~~" Example>> |
|.clink |a code link |<<.clink `<$list>` ListWidget>> | |.clink |code link |``<<.clink `<$list>` ListWidget>>`` |<<.clink `<$list>` ListWidget>> |
|.dlink |a link on a defining instance of a term |<<.dlink widget Widgets>> | |.dlink |definition link for a instance of a term |`<<.dlink widget Widgets>>` |<<.dlink widget Widgets>> |
|.dlink-ex |an external link on a defining instance of a term |<<.dlink-ex Example "http://example.com/">> | |.dlink-ex |external link to a defining instance of a term |`<<.dlink-ex Example "http://example.com/">>` |<<.dlink-ex Example "http://example.com/">> |
|.flink |a link to a field |<<.flink ListField>> | |.flink |field link |`<<.flink ListField>>` |<<.flink ListField>> |
|.mlink |a link to a macro |<<.mlink qualify>> | |.mlink |macro link |`<<.mlink qualify>>` |<<.mlink qualify>> |
|.mlink2 |a link to a macro, with specified target |<<.mlink2 foo "Examples of Macros">> | |.mlink2 |macro link with a specified target |`<<.mlink2 foo "Examples of Macros">>` |<<.mlink2 foo "Examples of Macros">> |
|.olink |a link to an operator |<<.olink prefix>> | |.olink |operator link |`<<.olink prefix>>` |<<.olink prefix>> |
|.olink2 |a link to an operator, with specified target |<<.olink2 foo prefix>> | |.olink2 |operator link with specified target |`<<.olink2 foo prefix>>` |<<.olink2 foo prefix>> |
|.vlink |a link to a variable |<<.vlink currentTiddler>> | |.vlink |variable link |`<<.vlink currentTiddler>>` |<<.vlink currentTiddler>> |
|.vlink2 |a link to a variable, with specified target |<<.vlink2 foo "Examples of Variables">> | |.vlink2 |variable link with specified target |`<<.vlink2 foo "Examples of Variables">>` |<<.vlink2 foo "Examples of Variables">> |
|.wlink |a link to a widget |<<.wlink ButtonWidget>> | |.wlink |widget link |`<<.wlink ButtonWidget>>` |<<.wlink ButtonWidget>> |
|.wlink2 |a link to a widget, with specified text |<<.wlink2 foo ButtonWidget>> | |.wlink2 |widget link with specified text |`<<.wlink2 foo ButtonWidget>>` |<<.wlink2 foo ButtonWidget>> |
!Tabs ! Keyboard Shortcuts
|!Macro |!Used for |!Example |
|Macro |Used for |Example |Rendered |h
|.key |a key on the keyboard |`<<.key Escape>>` |<<.key Escape>> |
|.keys |a key combination |`<<.keys Ctrl+Enter>>` |<<.keys Ctrl+Enter>> |
! Doc-Tabs
See: [[CheckboxWidget]]
|Macro |Used for |Example |h
|.doc-tabs |showing a tab set in a documentation tiddler | -- | |.doc-tabs |showing a tab set in a documentation tiddler | -- |
|.doc-tab-link |button to activate a tab | -- | |.doc-tab-link |button to activate a tab | -- |
|.widget-attr-link |button with a widget attribute name to activate a tab | -- | |.widget-attr-link |button with a widget attribute name to activate a tab | -- |
! Sidebar Tabs
!User interface |Macro |Used for |Example |Rendered |h
|.sidebar-tab |the name of a sidebar tab |`<<.sidebar-tab More>>` |<<.sidebar-tab More>> |
|!Macro |!Used for |!Example | |.more-tab |the name of a subtab of the More tab |`<<.more-tab Shadows>>` |<<.more-tab Shadows>> |
|.key |a key on the keyboard |<<.key Escape>> | |.info-tab |the name of a tiddler info tab |`<<.info-tab Fields>>` |<<.info-tab Fields>> |
|.keycombo |a key combination |<<.keycombo Ctrl Enter>> | |.controlpanel-tab |the name of a Control Panel tab |`<<.controlpanel-tab Settings>>` |<<.controlpanel-tab Settings>> |
|.advancedsearch-tab |the name of an Advanced Search tab |`<<.advancedsearch-tab Filter>>` |<<.advancedsearch-tab Filter>> |
!Tabs |.toc-tab |name of the tw5.com TOC tab |`<<.toc-tab>>` |<<.toc-tab>> |
|.example-tab |an example tab name |`<<.example-tab "Notes">>` |<<.example-tab "Notes">> |
|!Macro |!Used for |!Example |
|.sidebar-tab |the name of a sidebar tab |<<.sidebar-tab More>> |
|.more-tab |the name of a subtab of the More tab |<<.more-tab Shadows>> |
|.info-tab |the name of a tiddler info tab |<<.info-tab Fields>> |
|.controlpanel-tab |the name of a Control Panel tab |<<.controlpanel-tab Settings>> |
|.advancedsearch-tab |the name of an Advanced Search tab |<<.advancedsearch-tab Filter>> |
|.toc-tab |name of the tw5.com TOC tab |<<.toc-tab>> |
|.example-tab |an example tab name |<<.example-tab "Notes">> |
!! Parameters for .sidebar-tab !! Parameters for .sidebar-tab
|Open |<<.sidebar-tab Open>> | |Open |`<<.sidebar-tab Open>>` |<<.sidebar-tab Open>> |
|Recent |<<.sidebar-tab Recent>> | |Recent |`<<.sidebar-tab Recent>>` |<<.sidebar-tab Recent>> |
|Tools |<<.sidebar-tab Tools>> | |Tools |`<<.sidebar-tab Tools>>` |<<.sidebar-tab Tools>> |
|More |<<.sidebar-tab More>> | |More |`<<.sidebar-tab More>>` |<<.sidebar-tab More>> |
!! Parameters for .more-tab !! Parameters for .more-tab
|All |<<.more-tab All>> | |All |`<<.more-tab All>>` |<<.more-tab All>> |
|Recent |<<.more-tab Recent>> | |Recent |`<<.more-tab Recent>>` |<<.more-tab Recent>> |
|Tags |<<.more-tab Tags>> | |Tags |`<<.more-tab Tags>>` |<<.more-tab Tags>> |
|Missing |<<.more-tab Missing>> | |Missing |`<<.more-tab Missing>>` |<<.more-tab Missing>> |
|Drafts |<<.more-tab Drafts>> | |Drafts |`<<.more-tab Drafts>>` |<<.more-tab Drafts>> |
|Orphans |<<.more-tab Orphans>> | |Orphans |`<<.more-tab Orphans>>` |<<.more-tab Orphans>> |
|Types |<<.more-tab Types>> | |Types |`<<.more-tab Types>>` |<<.more-tab Types>> |
|System |<<.more-tab System>> | |System |`<<.more-tab System>>` |<<.more-tab System>> |
|Shadows |<<.more-tab Shadows>> | |Shadows |`<<.more-tab Shadows>>` |<<.more-tab Shadows>> |
!! Parameters for .info-tab !! Parameters for .info-tab
|Tools |<<.info-tab Tools>> | |Tools |`<<.info-tab Tools>>` |<<.info-tab Tools>> |
|References |<<.info-tab References>> | |References |`<<.info-tab References>>` |<<.info-tab References>> |
|Tagging |<<.info-tab Tagging>> | |Tagging |`<<.info-tab Tagging>>` |<<.info-tab Tagging>> |
|List |<<.info-tab List>> | |List |`<<.info-tab List>>` |<<.info-tab List>> |
|Listed |<<.info-tab Listed>> | |Listed |`<<.info-tab Listed>>` |<<.info-tab Listed>> |
|Fields |<<.info-tab Fields>> | |Fields |`<<.info-tab Fields>>` |<<.info-tab Fields>> |
|Advanced |<<.info-tab Advanced>> | |Advanced |`<<.info-tab Advanced>>` |<<.info-tab Advanced>> |
!! Parameters for .controlpanel-tab !! Parameters for .controlpanel-tab
|Info |<<.controlpanel-tab Info>> | |Info |`<<.controlpanel-tab Info>>` |<<.controlpanel-tab Info>> |
|Appearance |<<.controlpanel-tab Appearance>> | |Appearance |`<<.controlpanel-tab Appearance>>` |<<.controlpanel-tab Appearance>> |
|Settings |<<.controlpanel-tab Settings>> | |Settings |`<<.controlpanel-tab Settings>>` |<<.controlpanel-tab Settings>> |
|Saving |<<.controlpanel-tab Saving>> | |Saving |`<<.controlpanel-tab Saving>>` |<<.controlpanel-tab Saving>> |
|Plugins |<<.controlpanel-tab Plugins>> | |Plugins |`<<.controlpanel-tab Plugins>>` |<<.controlpanel-tab Plugins>> |
!! Parameters for .advancedsearch-tab !! Parameters for .advancedsearch-tab
|Standard |<<.advancedsearch-tab Standard>> | |Standard |`<<.advancedsearch-tab Standard>>` |<<.advancedsearch-tab Standard>> |
|System |<<.advancedsearch-tab System>> | |System |`<<.advancedsearch-tab System>>` |<<.advancedsearch-tab System>> |
|Shadows |<<.advancedsearch-tab Shadows>> | |Shadows |`<<.advancedsearch-tab Shadows>>` |<<.advancedsearch-tab Shadows>> |
|Filter |<<.advancedsearch-tab Filter>> | |Filter |`<<.advancedsearch-tab Filter>>` |<<.advancedsearch-tab Filter>> |
! Buttons ! Buttons
|!Macro |!Used for |!Example | |Macro |Used for |Example |Rendered |h
|.button |a standard button name and icon |<<.button "new-tiddler">> | |.button |a standard button name and icon |`<<.button "new-tiddler">>` |<<.button "new-tiddler">> |
!! Parameters for .button !! Parameters for .button
!!! Tiddler toolbar !!! Tiddler toolbar
|clone |<<.button "clone">> | |clone |`<<.button "clone">>` |<<.button "clone">> |
|close |<<.button "close">> | |close |`<<.button "close">>` |<<.button "close">> |
|close-others |<<.button "close-others">> | |close-others |`<<.button "close-others">>` |<<.button "close-others">> |
|edit |<<.button "edit">> | |edit |`<<.button "edit">>` |<<.button "edit">> |
|export-tiddler |<<.button "export-tiddler">> | |export-tiddler |`<<.button "export-tiddler">>` |<<.button "export-tiddler">> |
|info |<<.button "info">> | |info |`<<.button "info">>` |<<.button "info">> |
|more-tiddler-actions |<<.button "more-tiddler-actions">> | |more-tiddler-actions |`<<.button "more-tiddler-actions">>` |<<.button "more-tiddler-actions">> |
|new-here |<<.button "new-here">> | |new-here |`<<.button "new-here">>` |<<.button "new-here">> |
|new-journal-here |<<.button "new-journal-here">> | |new-journal-here |`<<.button "new-journal-here">>` |<<.button "new-journal-here">> |
|permalink |<<.button "permalink">> | |permalink |`<<.button "permalink">>` |<<.button "permalink">> |
!!! Edit-mode toolbar !!! Edit-mode toolbar
|cancel |<<.button "cancel">> | |cancel |`<<.button "cancel">>` |<<.button "cancel">> |
|delete |<<.button "delete">> | |delete |`<<.button "delete">>` |<<.button "delete">> |
|save |<<.button "save">> | |save |`<<.button "save">>` |<<.button "save">> |
!!! Page toolbar !!! Page toolbar
|advanced-search |<<.button "advanced-search">> | |advanced-search |`<<.button "advanced-search">>` |<<.button "advanced-search">> |
|close-all |<<.button "close-all">> | |close-all |`<<.button "close-all">>` |<<.button "close-all">> |
|control-panel |<<.button "control-panel">> | |control-panel |`<<.button "control-panel">>` |<<.button "control-panel">> |
|encryption |<<.button "encryption">> | |encryption |`<<.button "encryption">>` |<<.button "encryption">> |
|export-page |<<.button "export-page">> | |export-page |`<<.button "export-page">>` |<<.button "export-page">> |
|full-screen |<<.button "full-screen">> | |full-screen |`<<.button "full-screen">>` |<<.button "full-screen">> |
|home |<<.button "home">> | |home |`<<.button "home">>` |<<.button "home">> |
|import |<<.button "import">> | |import |`<<.button "import">>` |<<.button "import">> |
|language |<<.button "language">> | |language |`<<.button "language">>` |<<.button "language">> |
|more-page-actions |<<.button "more-page-actions">> | |more-page-actions |`<<.button "more-page-actions">>` |<<.button "more-page-actions">> |
|new-journal |<<.button "new-journal">> | |new-journal |`<<.button "new-journal">>` |<<.button "new-journal">> |
|new-tiddler |<<.button "new-tiddler">> | |new-tiddler |`<<.button "new-tiddler">>` |<<.button "new-tiddler">> |
|permaview |<<.button "permaview">> | |permaview |`<<.button "permaview">>` |<<.button "permaview">> |
|refresh |<<.button "refresh">> | |refresh |`<<.button "refresh">>` |<<.button "refresh">> |
|save-wiki |<<.button "save-wiki">> | |save-wiki |`<<.button "save-wiki">>` |<<.button "save-wiki">> |
|storyview |<<.button "storyview">> | |storyview |`<<.button "storyview">>` |<<.button "storyview">> |
|tag-manager |<<.button "tag-manager">> | |tag-manager |`<<.button "tag-manager">>` |<<.button "tag-manager">> |
|theme |<<.button "theme">> | |theme |`<<.button "theme">>` |<<.button "theme">> |

View File

@ -1,186 +1,33 @@
created: 20150117152607000 created: 20150117152607000
modified: 20230325141733992 modified: 20240229155550000
tags: $:/tags/Macro tags: $:/tags/Macro
title: $:/editions/tw5.com/doc-macros title: $:/editions/tw5.com/doc-macros
code-body: yes
type: text/vnd.tiddlywiki type: text/vnd.tiddlywiki
\define .concat(1,2,3,4,5) $1$$2$$3$$4$$5$ \whitespace trim
\define .def(_) <dfn class="doc-def">$_$</dfn> \function .concat(1,2,3,4,5) [[$(1)$$(2)$$(3)$$(4)$$(5)$]substitute[]]
\define .em(_) <em class="doc-em">$_$</em> \function .word(_) [["]] [<_>] =[["]] +[join[]]
\define .strong(_) <strong class="doc-strong">$_$</strong>
\define .place(_) <code class="doc-place">$_$</code>
\define .word(_) "$_$"
\define .preamble(_) :.doc-preamble $_$ \procedure .def(_) <dfn class="doc-def"><<_>></dfn>
\define .note(_) \procedure .em(_) <em class="doc-em"><<_>></em>
@@.doc-note \procedure .strong(_) <strong class="doc-strong"><<_>></strong>
;Note \procedure .place(_) <code class="doc-place"><<_>></code>
: $_$ \procedure .preamble(_) <dl><dd class="doc-preamble"><<_>></dd></dl>
@@
\end
\define .tid(_) <code class="doc-tiddler">$_$</code> \procedure .tid(_) <code class="doc-tiddler"><<_>></code>
\define .tag(_) <code class="doc-tag">$_$</code> \procedure .tag(_) <code class="doc-tag"><<_>></code>
\define .field(_) <code class="doc-field">$_$</code> \procedure .field(_) <code class="doc-field"><<_>></code>
\define .value(_) <code class="doc-value">$_$</code> \procedure .value(_) <code class="doc-value"><<_>></code>
\define .op(_) <code class="doc-operator">$_$</code> \procedure .op(_) <code class="doc-operator"><<_>></code>
\define .var(_) <code class="doc-var">$_$</code> \procedure .var(_) <code class="doc-var"><<_>></code>
\define .wid(_) <code class="doc-widget">$$_$</code> \procedure .wid(_) <code class="doc-widget"><$macrocall $name=".concat" 1="$" 2=<<_>>/></code>
\define .attr(_) <code class="doc-attr">$_$</code> \procedure .attr(_) <code class="doc-attr"><<_>></code>
\define .param(_) <code class="doc-param">$_$</code> \procedure .param(_) <code class="doc-param"><<_>></code>
\define .mtitle(_) $_$ Macro \procedure .tiddler-fields(tiddler)
\define .otitle(_) $_$ Operator <$tiddler tiddler=<<tiddler>>>
\define .vtitle(_) $_$ Variable
\define .link(_,to) <$link to="$to$">$_$</$link>
\define .clink(_,to) <span class="doc-clink"><<.link """$_$""" "$to$">></span>
\define .dlink(_,to) <$macrocall $name=".link" _=<<.def "$_$">> to="$to$">/>
\define .dlink-ex(_,to) <a href="$to$" class="tc-tiddlylink-external" target="_blank" rel="noopener noreferrer"><<.def "$_$">></a>
\define .flink(to) <$macrocall $name=".link" _=<<.field {{$to$!!caption}}>> to="$to$"/>
\define .mlink(_,to) <$macrocall $name=".link" _=<<.var "$_$">> to=<<.mtitle "$_$">>/>
\define .mlink2(_,to) <$macrocall $name=".link" _=<<.var "$_$">> to="$to$"/>
\define .olink(_) <$macrocall $name=".link" _=<<.op "$_$">> to=<<.otitle "$_$">>/>
\define .olink2(_,to) <$macrocall $name=".link" _=<<.op "$_$">> to=<<.otitle "$to$">>/>
\define .vlink(_,to) <$macrocall $name=".link" _=<<.var "$_$">> to=<<.vtitle "$_$">>/>
\define .vlink2(_,to) <$macrocall $name=".link" _=<<.var "$_$">> to="$to$"/>
\define .wlink(to) <$macrocall $name=".link" _=<<.wid {{$to$!!caption}}>> to="$to$"/>
\define .wlink2(_,to) <$macrocall $name=".link" _="$_$" to="$to$"/>
\define .key(_) <span class="doc-key">$_$</span>
\define .combokey(_) <$macrocall $name=".if" cond="$_$" then=<<.key '$_$'>>/>
\define .keycombo(1,2,3,4) <<.combokey "$1$">><<.if "$2$" +>><<.combokey "$2$">><<.if "$3$" +>><<.combokey "$3$">><<.if "$4$" +>><<.combokey "$4$">>
\define .tab(_) <span class="doc-tab">{{$_$!!caption}}</span>
\define .sidebar-tab(_) <<.tab "$:/core/ui/SideBar/$_$">>
\define .more-tab(_) <<.tab "$:/core/ui/MoreSideBar/$_$">>
\define .info-tab(_) <<.tab "$:/core/ui/TiddlerInfo/$_$">>
\define .controlpanel-tab(_) <<.tab "$:/core/ui/ControlPanel/$_$">>
\define .advancedsearch-tab(_) <<.tab "$:/core/ui/AdvancedSearch/$_$">>
\define .toc-tab() <<.tab "TableOfContents">>
\define .example-tab(_) <span class="doc-tab">$_$</span>
\define .doc-tabs()
<$macrocall $name="tabs"
tabsList="[tag<currentTiddler>description[tab]]"
default={{{ [tag<currentTiddler>first[]] }}}
explicitState={{{ [<currentTiddler>addprefix[$:/state/tab/]] }}}
class={{{ [[doc-tabs]] [<currentTiddler>encodeuricomponent[]escapecss[]addprefix[doc-tabs-]] +[join[ ]] }}} />
\end
\define .doc-tab-link(text, target, tooltip:"", class:"")
<!-- figure out where the addressed doc-tabs are -->
<$tiddler tiddler={{{ [<currentTiddler>search:text[.doc-tabs]] :else[<currentTiddler>tags[]search:text[.doc-tabs]first[]] :else[<currentTiddler>] }}} >
<$button class={{{ [[tc-btn-invisible tc-tiddlylink]] [<__class__>] +[join[ ]] }}}
set={{{ [<currentTiddler>addprefix[$:/state/tab/]] }}}
setTo=<<__target__>>
tooltip=<<__tooltip__>>>
<<__text__>>
<!-- if tiddler with tabs is open, scroll to tabs, otherwise open that tiddler (relevant from within tab subtiddlers) -->
<$list filter="[[$:/StoryList]contains<currentTiddler>]" variable="ignore" emptyMessage="<$action-navigate />">
<$action-sendmessage $message="tm-scroll" selector={{{ [<currentTiddler>encodeuricomponent[]addprefix[.doc-tabs-]] }}} />
</$list>
<$action-sendmessage $message="tm-scroll" selector={{{ [<currentTiddler>encodeuricomponent[]escapecss[]addprefix[.doc-tabs-]] }}} />
</$button>
</$tiddler>
\end
\define .widget-attr-link(text, target)
<$macrocall $name=".doc-tab-link"
text={{{ [[<code class="doc-attr">]] [<__text__>] [[</code>]] +[join[]] }}}
class="doc-tab-link"
target=<<__target__>>
tooltip={{{ [[Show more information about the ']] [<__text__>] [[' attribute]] +[join[]] }}} />
\end
\define .button(_) <span class="doc-button">{{$:/core/ui/Buttons/$_$!!caption}}</span>
\define .icon(_) <span class="doc-icon">{{$_$}}</span>
\define .tip(_) <div class="doc-icon-block"><div class="doc-block-icon">{{$:/core/images/tip}}</div> $_$</div>
\define .warning(_) <div class="doc-icon-block"><div class="doc-block-icon">{{$:/core/images/warning}}</div> $_$</div>
\define .state-prefix() $:/state/editions/tw5.com/
\define .lorem()
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
\end
\define .toc-lorem()
This is an example tiddler. See [[Table-of-Contents Macros (Examples)]].
<<.lorem>>
\end
\define .example(n,eg,egvar:NO-SUCH-VAR)
<div class="doc-example">
<$reveal default="$egvar$" type="match" text="NO-SUCH-VAR">
<$macrocall $name="copy-to-clipboard-above-right" src="""$eg$"""/>
<$codeblock code="""$eg$"""/>
</$reveal>
<$reveal default="$egvar$" type="nomatch" text="NO-SUCH-VAR">
<!-- allow an example to contain """ -->
<$macrocall $name="copy-to-clipboard-above-right" src=<<$egvar$>>/>
<$codeblock code=<<$egvar$>>/>
</$reveal>
<$list filter="[title<.state-prefix>addsuffix{!!title}addsuffix[/]addsuffix[$n$]]" variable=".state">
<$reveal state=<<.state>> type="nomatch" text="show">
<dl>
<dd><$button set=<<.state>> setTo="show">Try it</$button></dd>
</dl>
</$reveal>
<$reveal state=<<.state>> type="match" text="show">
<dl>
<dd><$button set=<<.state>> setTo="">Hide</$button></dd>
</dl>
<blockquote class="doc-example-result">
<$reveal default="$egvar$" type="match" text="NO-SUCH-VAR">
$$$text/vnd.tiddlywiki
$eg$
$$$
</$reveal>
<$reveal default="$egvar$" type="nomatch" text="NO-SUCH-VAR">
<<$egvar$>>
</$reveal>
</blockquote>
</$reveal>
</$list>
\end
\define .bad-example(eg)
<table class="doc-bad-example">
<tbody>
<tr class="evenRow">
<td><span style="font-size:1.5em;">&#9888;</span> Warning:<br> Don't do it this way!</td>
<td>
$eg$
</td>
</tr>
</tbody>
</table>
\end
\define .link-badge(text,link,colour)
<a href=<<__link__>> class="doc-link-badge" style="background-color:$colour$;" target="_blank" rel="noopener noreferrer"><$text text=<<__text__>>/></a>
\end
\define .link-badge-added(link,colour:#ffe246) <<.link-badge "added" """$link$""" """$colour$""">>
\define .link-badge-addendum(link,colour:#fcc84a) <<.link-badge "addendum" """$link$""" """$colour$""">>
\define .link-badge-extended(link,colour:#f9a344) <<.link-badge "extended" """$link$""" """$colour$""">>
\define .link-badge-fixed(link,colour:#ffa86d) <<.link-badge "fixed" """$link$""" """$colour$""">>
\define .link-badge-here(link,colour:#d88e63) <<.link-badge "here" """$link$""" """$colour$""">>
\define .link-badge-hide(link,colour:#9d959f) <<.link-badge "hide" """$link$""" """$colour$""">>
\define .link-badge-improved(link,colour:#7593c7) <<.link-badge "improved" """$link$""" """$colour$""">>
\define .link-badge-modified(link,colour:#7f99c9) <<.link-badge "modified" """$link$""" """$colour$""">>
\define .link-badge-removed(link,colour:#a9aabc) <<.link-badge "removed" """$link$""" """$colour$""">>
\define .link-badge-renamed(link,colour:#b4b995) <<.link-badge "renamed" """$link$""" """$colour$""">>
\define .link-badge-updated(link,colour:#91ba66) <<.link-badge "updated" """$link$""" """$colour$""">>
\define .tiddler-fields(tiddler)
<$tiddler tiddler=<<__tiddler__>>>
<div class="doc-tiddler-fields"> <div class="doc-tiddler-fields">
<h2> <h2>
<$link> <$link>
@ -196,24 +43,188 @@ $eg$
</$tiddler> </$tiddler>
\end \end
\define .banner-credits(credit,url) \function .mtitle(_) [<_>] Macro +[join[ ]]
<img src=<<__url__>> width="140" style="float:left;margin-right:0.5em;"/> \function .otitle(_) [<_>] Operator +[join[ ]]
\function .vtitle(_) [<_>] Variable +[join[ ]]
$credit$ \procedure .link(_,to) <$link to=<<to>> ><<_>></$link>
\procedure .clink(_,to) <span class="doc-clink"><$link to=<<to>>><<_>></$link></span>
<div style="clear:both;"> \procedure .dlink(_,to) <$link to=<<to>>><$macrocall $name=".def" _=<<_>>/></$link>
\procedure .dlink-ex(_,to) <a href=<<to>> class="tc-tiddlylink-external" target="_blank" rel="noopener noreferrer"><$macrocall $name=".def" _=<<_>>/></a>
\procedure .flink(to) <$macrocall $name=".link" _=`<<.field {{$(to)$!!caption}}>>` to=<<to>>/>
\procedure .mlink(_) <$link to={{{ [.mtitle<_>] }}}><$macrocall $name=".var" _=<<_>>/> </$link>
\procedure .mlink2(_,to) <$link to=<<to>>><$macrocall $name=".var" _=<<_>>/> </$link>
\procedure .olink(_) <$link to={{{ [.otitle<_>] }}}><$macrocall $name=".op" _=<<_>>/> </$link>
\procedure .olink2(_,to) <$link to={{{ [.otitle<to>] }}}><$macrocall $name=".op" _=<<_>>/> </$link>
\procedure .vlink(_) <$link to={{{ [.vtitle<_>] }}}><$macrocall $name=".var" _=<<_>>/> </$link>
\procedure .vlink2(_,to) <$link to=<<to>>><$macrocall $name=".var" _=<<_>>/></$link>
\procedure .wlink(to) <$link to=<<to>> > <$macrocall $name=".wid" _={{{ [<to>get[caption]] }}}> </$link>
\procedure .wlink2(_,to) <$link to=<<to>> ><<_>></$link>
\procedure .key(_) <span class="doc-key"><<_>></span>
\procedure .keys(_) <span class="doc-key"><<_>></span>
\procedure .tab(_) <span class="doc-tab"><$transclude $tiddler=<<_>> $field=caption ><<_>></$transclude></span>
\procedure .sidebar-tab(_) <$macrocall $name=".tab" _=`$:/core/ui/SideBar/$(_)$`/>
\procedure .more-tab(_) <$macrocall $name=".tab" _=`$:/core/ui/MoreSideBar/$(_)$`/>
\procedure .info-tab(_) <$macrocall $name=".tab" _=`$:/core/ui/TiddlerInfo/$(_)$`/>
\procedure .controlpanel-tab(_) <$macrocall $name=".tab" _=`$:/core/ui/ControlPanel/$(_)$`/>
\procedure .advancedsearch-tab(_) <$macrocall $name=".tab" _=`$:/core/ui/AdvancedSearch/$(_)$`/>
\procedure .toc-tab() <$macrocall $name=".tab" _="TableOfContents"/>
\procedure .example-tab(_) <span class="doc-tab"><<_>></span>
\procedure .doc-tabs()
<$macrocall $name="tabs"
tabsList="[tag<currentTiddler>description[tab]]"
default={{{ [tag<currentTiddler>first[]] }}}
explicitState={{{ [<currentTiddler>addprefix[$:/state/tab/]] }}}
class={{{ [[doc-tabs]] [<currentTiddler>encodeuricomponent[]escapecss[]addprefix[doc-tabs-]] +[join[ ]] }}} />
\end
\procedure .doc-tab-link(text, target, tooltip:"", class:"")
<!-- figure out where the addressed doc-tabs are -->
<$tiddler tiddler={{{ [<currentTiddler>search:text[.doc-tabs]] :else[<currentTiddler>tags[]search:text[.doc-tabs]first[]] :else[<currentTiddler>] }}} >
<$button class={{{ [[tc-btn-invisible tc-tiddlylink]] [<class>] +[join[ ]] }}}
set={{{ [<currentTiddler>addprefix[$:/state/tab/]] }}}
setTo=<<target>>
tooltip=<<tooltip>>>
<<text>>
<!-- if tiddler with tabs is open, scroll to tabs, otherwise open that tiddler (relevant from within tab subtiddlers) -->
<$list filter="[[$:/StoryList]contains<currentTiddler>]" variable="ignore" emptyMessage="<$action-navigate />">
<$action-sendmessage $message="tm-scroll" selector={{{ [<currentTiddler>encodeuricomponent[]addprefix[.doc-tabs-]] }}} />
</$list>
<$action-sendmessage $message="tm-scroll" selector={{{ [<currentTiddler>encodeuricomponent[]escapecss[]addprefix[.doc-tabs-]] }}} />
</$button>
</$tiddler>
\end
\procedure .widget-attr-link(text, target)
<$macrocall $name=".doc-tab-link"
text={{{ [[<code class="doc-attr">]] [<text>] [[</code>]] +[join[]] }}}
class="doc-tab-link"
target=<<target>>
tooltip={{{ [[Show more information about the ']] [<text>] [[' attribute]] +[join[]] }}} />
\end
\procedure .button(_) <span class="doc-button"><$transclude $tiddler=`$:/core/ui/Buttons/$(_)$` $field="caption" ><<_>></$transclude></span>
\procedure .icon(_) <span class="doc-icon"><$transclude $tiddler=<<_>>/></span>
\procedure .infoBox(text:"", title, icon:"$:/core/images/info-button", class, iconSize:"1.4rem")
\function _f.tipClass() [[doc-icon-block]] [<class>!is[blank]then<class>] +[join[ ]]
<div class=<<_f.tipClass>>>
<%if [<title>!is[blank]] %><div>''<<title>>''</div><% endif %>
<div class="doc-block-icon"><$transclude $tiddler=<<icon>> size=<<iconSize>>/></div>
<<text>>
</div> </div>
\end \end
\define .contributors(usernames) \procedure .note(_:"", title:"Note", icon:"$:/core/images/info-button", class:"doc-note", iconSize:"22pt")
<$macrocall $name=".infoBox" text=<<_>> title=<<title>> icon=<<icon>> class=<<class>> iconSize=<<iconSize>>/>
\end
\procedure .tip(_:"", title:"Tip" , icon:"$:/core/images/tip", class:"doc-tip", iconSize:"22pt")
<$macrocall $name=".infoBox" text=<<_>> title=<<title>> icon=<<icon>> class=<<class>> iconSize=<<iconSize>>/>
\end
\procedure .warning(_:"", title:"Warning", icon:"$:/core/images/warning", class:"doc-warning", iconSize:"22pt")
<$macrocall $name=".infoBox" text=<<_>> title=<<title>> icon=<<icon>> class=<<class>> iconSize=<<iconSize>>/>
\end
\procedure .state-prefix() $:/state/editions/tw5.com/
\procedure .lorem()
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
\end
\procedure .toc-lorem()
This is an example tiddler. See [[Table-of-Contents Macros (Examples)]].
<<.lorem>>
\end
\procedure .example(n,eg,egvar)
<$let eg={{{ [<egvar>!is[blank]getvariable[]] :else[<eg>] }}}>
<div class="doc-example">
<$macrocall $name="copy-to-clipboard-above-right" src=<<eg>>/>
<$codeblock code=<<eg>>/>
<$list filter=`[title<.state-prefix>addsuffix{!!title}addsuffix[/]addsuffix[$(n)$]]` variable=".state">
<$reveal state=<<.state>> type="nomatch" text="show">
<dl>
<dd><$button set=<<.state>> setTo="show">Try it</$button></dd>
</dl>
</$reveal>
<$reveal state=<<.state>> type="match" text="show">
<dl>
<dd><$button set=<<.state>> setTo="">Hide</$button></dd>
</dl>
<blockquote class="doc-example-result">
<<eg>>
</blockquote>
</$reveal>
</$list>
</div>
</$let>
\end
\procedure .bad-example(eg)
<table class="doc-bad-example">
<tbody>
<tr class="evenRow">
<td>
<span class="tc-small-gap-right" style="font-size:1.5em;">&#9888;</span>
Warning:<br> Don't do it this way!
</td>
<td>
<$transclude $variable="eg" $mode="block"/>
</td>
</tr>
</tbody>
</table>
\end
\procedure .link-badge(text,link,colour)
<a href=<<link>> class="doc-link-badge" style.background-color=<<colour>> target="_blank" rel="noopener noreferrer">
<$text text=<<text>>/>
</a>
\end
<!-- TODO use $:/palette colour settings -->
\procedure .link-badge-added(link,colour:#ffe246) <$macrocall $name=".link-badge" text="added" link=<<link>> colour=<<colour>>/>
\procedure .link-badge-addendum(link,colour:#fcc84a) <$macrocall $name=".link-badge" text="addendum" link=<<link>> colour=<<colour>>/>
\procedure .link-badge-extended(link,colour:#f9a344) <$macrocall $name=".link-badge" text="extended" link=<<link>> colour=<<colour>>/>
\procedure .link-badge-fixed(link,colour:#ffa86d) <$macrocall $name=".link-badge" text="fixed" link=<<link>> colour=<<colour>>/>
\procedure .link-badge-here(link,colour:#d88e63) <$macrocall $name=".link-badge" text="here" link=<<link>> colour=<<colour>>/>
\procedure .link-badge-hide(link,colour:#9d959f) <$macrocall $name=".link-badge" text="hide" link=<<link>> colour=<<colour>>/>
\procedure .link-badge-improved(link,colour:#7593c7) <$macrocall $name=".link-badge" text="improved" link=<<link>> colour=<<colour>>/>
\procedure .link-badge-modified(link,colour:#7f99c9) <$macrocall $name=".link-badge" text="modified" link=<<link>> colour=<<colour>>/>
\procedure .link-badge-removed(link,colour:#a9aabc) <$macrocall $name=".link-badge" text="removed" link=<<link>> colour=<<colour>>/>
\procedure .link-badge-renamed(link,colour:#b4b995) <$macrocall $name=".link-badge" text="renamed" link=<<link>> colour=<<colour>>/>
\procedure .link-badge-updated(link,colour:#91ba66) <$macrocall $name=".link-badge" text="updated" link=<<link>> colour=<<colour>>/>
\procedure .banner-credits(credit,url)
<img src=<<url>> width="140" style="float:left;margin-right:0.5em;"/>
<<credit>>
<div style="clear:both;"/>
\end
\procedure .contributors(usernames)
<ol class="doc-github-contributors"> <ol class="doc-github-contributors">
<$list filter="[enlist<__usernames__>sort[]]" variable="username"> <$list filter="[enlist<usernames>sort[]]" variable="username">
<li> <li>
<a href={{{ [[https://github.com/]addsuffix<username>] }}} class="tc-tiddlylink-external" target="_blank" rel="noopener noreferrer"><img src={{{ [[https://github.com/]addsuffix<username>addsuffix[.png?size=64]] }}} width="64" height="64"/><span class="doc-github-contributor-username">@<$text text=<<username>>/></span></a> <a href={{{ [[https://github.com/]addsuffix<username>] }}} class="tc-tiddlylink-external" target="_blank" rel="noopener noreferrer">
<img src={{{ [[https://github.com/]addsuffix<username>addsuffix[.png?size=64]] }}} width="64" height="64"/>
<span class="doc-github-contributor-username">
@<$text text=<<username>>/>
</span>
</a>
</li> </li>
</$list> </$list>
</ol> </ol>
\end \end
<pre><$view field="text"/></pre>

View File

@ -31,6 +31,7 @@ type: text/vnd.tiddlywiki
color: <<color very-muted-foreground>>; color: <<color very-muted-foreground>>;
font-style: normal; font-style: normal;
font-weight: bold; font-weight: bold;
padding: 0;
} }
.doc-button, .doc-button,
@ -85,7 +86,6 @@ td svg {
.doc-preamble { .doc-preamble {
border: 2px solid <<colour code-border>>; border: 2px solid <<colour code-border>>;
color: <<colour very-muted-foreground>>; color: <<colour very-muted-foreground>>;
font-size: 90%;
margin-left: 0; margin-left: 0;
padding: 0.5em 0.7em; padding: 0.5em 0.7em;
} }
@ -164,19 +164,37 @@ tr.doc-table-subheading {
} }
.doc-icon-block { .doc-icon-block {
border-left: 2px solid <<colour code-border>>; border-left: 4px solid <<colour blockquote-bar>>;
margin-left: 3em; margin: 15px 0 15px 3em;
padding-left: 0.6em; padding-left: 0.6em;
position: relative; position: relative;
} }
.doc-block-icon { .doc-block-icon {
position: absolute; position: absolute;
left: -3em; left: -3em;
top: 0.2em; top: 0.2em;
} }
.doc-icon-block.doc-note {
border-left: 4px solid <<colour blockquote-bar>>;
background: <<colour blockquote-bar>>11;
}
.doc-icon-block.doc-tip {
border-left: 4px solid <<colour primary>>;
background: <<colour primary>>11;
}
.doc-icon-block.doc-warning {
border-left: 4px solid <<colour alert-highlight>>;
background: <<colour alert-highlight>>11;
}
.doc-block-icon .tc-image-tip { .doc-block-icon .tc-image-tip {
fill: <<colour primary>>; fill: <<colour primary>>;
} }
.doc-block-icon .tc-image-warning { .doc-block-icon .tc-image-warning {
fill: <<colour alert-highlight>>; fill: <<colour alert-highlight>>;
} }
@ -246,7 +264,6 @@ a.doc-deprecated-version.tc-tiddlylink {
height: 1em; height: 1em;
} }
.doc-tiddler-fields table, .doc-tiddler-fields table,
.doc-tiddler-fields h2 { .doc-tiddler-fields h2 {
margin: 0.5em 0; margin: 0.5em 0;