In the TW I use for taking notes, I modified the link clicking behavior. In my case I wanted the clicked tiddler to always be at the top of the story river. IOW, if the tiddler is already open and a link to that tiddler is clicked, then it should move to the top.
The core tiddler you are looking for is $:/core/ui/PageTemplate
. However, modfying the core tiddler is not the only option and not the one I chose. A recent version of Tiddlywiki introduced the ability to create alternate page layouts.
So I created a copy of the $:/core/ui/PageTemplate
tiddler and made my link changes therein. Then I added the $:/tags/Layout
tag and use ctrl-shift-L to switch to this layout. Be sure to also change the description
field in your copy so you can distinguish between your and the original layout in the layout selector.
My change involved adding a link catcher widget and that should also work for you.
Below are the changes I made. Instead of using action-listops
like I did, you might be able to use action-deletetiddler
with $filter
= [title<navigateTo>addprefix[$:/state/folded/]]
@@ -22,13 +22,17 @@ tc-page-container tc-page-view-$(storyviewTitle)$ tc-language-$(languageTitle)$
<$navigator story="$:/StoryList" history="$:/HistoryList" openLinkFromInsideRiver={{$:/config/Navigation/openLinkFromInsideRiver}} openLinkFromOutsideRiver={{$:/config/Navigation/openLinkFromOutsideRiver}} relinkOnRename={{$:/config/RelinkOnRename}}>
<$dropzone enable=<<tv-enable-drag-and-drop>>>
-
+<$linkcatcher message="tm-navigate" actions="""
+<$action-listops $tiddler="$:/StoryList" $subfilter="[<navigateTo>] +[putfirst[]limit[15]]"/>
+""">
<$list filter="[all[shadows+tiddlers]tag[$:/tags/PageTemplate]!has[draft.of]]" variable="listItem">
<$transclude tiddler=<<listItem>>/>
</$list>
+</$linkcatcher>
+
</$dropzone>
</$navigator>
@@ -36,3 +40,4 @@ tc-page-container tc-page-view-$(storyviewTitle)$ tc-language-$(languageTitle)$
</div>
</$vars>
I’m not sure if there is a better way, but this approach works for me.