mirror of
				https://github.com/Jermolene/TiddlyWiki5
				synced 2025-10-31 15:42:59 +00:00 
			
		
		
		
	Extend TOC macros to allow custom link targets
This commit is contained in:
		| @@ -16,7 +16,7 @@ tags: $:/tags/Macro | ||||
|       <$set name="excluded" filter="""[enlist<__exclude__>] [<__tag__>]"""> | ||||
|         <$set name="toc-item-class" filter=<<__itemClassFilter__>> emptyValue="toc-item-selected" value="toc-item"> | ||||
|           <li class=<<toc-item-class>>> | ||||
|             <$list filter="[all[current]toc-link[no]]" emptyMessage="<$link><$view field='caption'><$view field='title'/></$view></$link>"> | ||||
|             <$list filter="[all[current]toc-link[no]]" emptyMessage="<$link to={{{ [<currentTiddler>get[target]else<currentTiddler>] }}}><$view field='caption'><$view field='title'/></$view></$link>"> | ||||
|               <<toc-caption>> | ||||
|             </$list> | ||||
|             <$macrocall $name="toc-body" tag=<<item>> sort=<<__sort__>> itemClassFilter=<<__itemClassFilter__>> exclude=<<excluded>> path=<<path>>/> | ||||
| @@ -37,7 +37,7 @@ tags: $:/tags/Macro | ||||
| <$qualify name="toc-state" title={{{ [[$:/state/toc]addsuffix<__path__>addsuffix[-]addsuffix<currentTiddler>] }}}> | ||||
|   <$set name="toc-item-class" filter=<<__itemClassFilter__>> emptyValue="toc-item-selected" value="toc-item"> | ||||
|     <li class=<<toc-item-class>>> | ||||
|     <$link> | ||||
|     <$link to={{{ [<currentTiddler>get[target]else<currentTiddler>] }}}> | ||||
|       <$reveal type="nomatch" stateTitle=<<toc-state>> text="open"> | ||||
|         <$button setTitle=<<toc-state>> setTo="open" class="tc-btn-invisible tc-popup-keep"> | ||||
|           {{$:/core/images/right-arrow}} | ||||
| @@ -105,7 +105,7 @@ tags: $:/tags/Macro | ||||
| <$qualify name="toc-state" title={{{ [[$:/state/toc]addsuffix<__path__>addsuffix[-]addsuffix<currentTiddler>] }}}> | ||||
|   <$set name="toc-item-class" filter=<<__itemClassFilter__>> emptyValue="toc-item-selected" value="toc-item" > | ||||
|     <li class=<<toc-item-class>>> | ||||
|       <$link> | ||||
|       <$link to={{{ [<currentTiddler>get[target]else<currentTiddler>] }}}> | ||||
|           <$list filter="[all[current]tagging[]$sort$limit[1]]" variable="ignore" emptyMessage="<$button class='tc-btn-invisible'>{{$:/core/images/blank}}</$button>"> | ||||
|           <$reveal type="nomatch" stateTitle=<<toc-state>> text="open"> | ||||
|             <$button setTitle=<<toc-state>> setTo="open" class="tc-btn-invisible tc-popup-keep"> | ||||
|   | ||||
| @@ -1,5 +1,5 @@ | ||||
| created: 20140919155729620 | ||||
| modified: 20150221224034000 | ||||
| modified: 20201017134038305 | ||||
| tags: Macros [[Core Macros]] | ||||
| title: Table-of-Contents Macros | ||||
| type: text/vnd.tiddlywiki | ||||
| @@ -34,6 +34,8 @@ The tree displays the <<.field caption>> field of a tiddler if it has one, or th | ||||
|  | ||||
| Each tiddler in the tree is normally displayed as a link. To suppress this, give the tiddler a <<.field toc-link>> field with the the value <<.value no>>. In the [[examples|Table-of-Contents Macros (Examples)]], the SecondThree tiddler is set up like this. Clicking such a tiddler in the tree causes its branch to expand or collapse. | ||||
|  | ||||
| <<.from-version "5.1.23">> By default, the links open the tiddlers making up the table of contents. Alternatively, if the tiddler contains a <<.field target>> field then its contents will be used as the target of the link. | ||||
|  | ||||
| The table of contents is generated as an HTML ordered list. The `<ol>` elements always have the class `tc-toc`. Expandable trees have the additional class `tc-toc-expandable`. Selectively expandable trees (including those in the two-panel browser) have `tc-toc-selective-expandable`. | ||||
|  | ||||
| To make a table of contents appear in the sidebar, see [[How to add a new tab to the sidebar]]. | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 jeremy@jermolene.com
					jeremy@jermolene.com