You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
copincha/1--conocer/wiki/copinchapedia-desarrollo.html

13261 lines
5.0 MiB
HTML

1 year ago
<!doctype html>
<!-- The following comment is called a MOTW comment and is necessary for the TiddlyIE Internet Explorer extension -->
<!-- saved from url=(0021)https://tiddlywiki.com -->
1 year ago
<html lang="es-ES">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<!--~~ Raw markup for the top of the head section ~~-->
<meta http-equiv="X-UA-Compatible" content="IE=Edge"/>
<meta name="application-name" content="TiddlyWiki" />
<meta name="generator" content="TiddlyWiki" />
<meta name="tiddlywiki-version" content="5.1.24-prerelease" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="apple-mobile-web-app-capable" content="yes" />
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
<meta name="mobile-web-app-capable" content="yes"/>
<meta name="format-detection" content="telephone=no" />
<meta name="copyright" content="TiddlyWiki created by Jeremy Ruston, (jeremy [at] jermolene [dot] com)
Copyright (c) 2004-2007, Jeremy Ruston
Copyright (c) 2007-2021, UnaMesa Association
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
* Redistributions of source code must retain the above copyright notice, this
list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
* Neither the name of the copyright holder nor the names of its
contributors may be used to endorse or promote products derived from
this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 'AS IS'
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." />
<link id="faviconLink" rel="shortcut icon" href="favicon.ico">
<title>Copinchapedia
— Wiki del Hackerspace Copincha
</title>
<!--~~ This is a Tiddlywiki file. The points of interest in the file are marked with this pattern ~~-->
<!--~~ Raw markup ~~-->
</head>
<body class="tc-body">
<!--~~ Raw markup for the top of the body section ~~-->
<!--~~ Static styles ~~-->
<div id="styleArea">
<style data-tiddler-title="$:/boot/boot.css" data-tiddler-type="text/css" type="text/css">/*
Basic styles used before we boot up the parsing engine
*/
/*
Error message and password prompt
*/
.tc-error-form {
font-family: sans-serif;
color: #fff;
z-index: 20000;
position: fixed;
background-color: rgb(255, 75, 75);
border: 8px solid rgb(255, 0, 0);
border-radius: 8px;
width: 50%;
margin-left: 25%;
margin-top: 4em;
padding: 0 2em 1em 2em;
}
.tc-error-form h1 {
text-align: center;
}
.tc-error-prompt {
text-align: center;
color: #000;
}
.tc-error-message {
overflow: auto;
max-height: 40em;
padding-right: 1em;
margin: 1em 0;
white-space: pre-line;
}
.tc-password-wrapper {
font-family: sans-serif;
z-index: 20000;
position: fixed;
text-align: center;
width: 200px;
top: 4em;
left: 50%;
margin-left: -144px; /* - width/2 - paddingHorz/2 - border */
padding: 16px 16px 16px 16px;
border-radius: 8px;
}
.tc-password-wrapper {
color: #000;
text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
background-color: rgb(197, 235, 183);
border: 8px solid rgb(164, 197, 152);
}
.tc-password-wrapper form {
text-align: left;
}
.tc-password-wrapper h1 {
font-size: 16px;
line-height: 20px;
padding-bottom: 16px;
}
.tc-password-wrapper input {
width: 100%;
}
</style>
</div>
<!--~~ Static content for Google and browsers without JavaScript ~~-->
<noscript>
<div id="splashArea">
<p>This <a class="tc-tiddlylink-external" href="https://tiddlywiki.com" rel="noopener noreferrer" target="_blank">TiddlyWiki</a> contains the following tiddlers:</p><p><ul>
<li>¿Cómo contribuir en Copincha?</li>
<li>¿Qué es Copincha?</li>
<li>✨ Acerca de</li>
<li>$:/config/AnimationDuration</li>
<li>$:/config/AutoSave</li>
<li>$:/config/bimlas/locator/fields/keywords</li>
<li>$:/config/bimlas/locator/fields/responder</li>
<li>$:/config/bimlas/locator/toolbars/search/$:/plugins/bimlas/locator/buttons/toggle-fields-filter</li>
<li>$:/config/bimlas/locator/toolbars/view/$:/plugins/bimlas/locator/buttons/collapse-history</li>
<li>$:/config/bimlas/locator/toolbars/view/$:/plugins/bimlas/locator/buttons/create-new-tiddler</li>
<li>$:/config/bimlas/locator/toolbars/view/$:/plugins/bimlas/locator/buttons/open-in-story-river</li>
<li>$:/config/bimlas/locator/toolbars/view/$:/plugins/bimlas/locator/buttons/search-in-context</li>
<li>$:/config/bimlas/locator/toolbars/view/$:/plugins/bimlas/locator/buttons/toggle-context-settings</li>
<li>$:/config/bimlas/locator/toolbars/view/$:/plugins/bimlas/locator/buttons/toggle-fields-filter</li>
<li>$:/config/bimlas/locator/toolbars/view/$:/plugins/bimlas/locator/buttons/view-toolbar-dropdown</li>
<li>$:/config/codemirror/autoCloseTags</li>
<li>$:/config/codemirror/keyMap</li>
<li>$:/config/codemirror/lineNumbers</li>
<li>$:/config/codemirror/styleActiveLine</li>
<li>$:/config/codemirror/theme</li>
<li>$:/config/DefaultColourMappings/menubar-background</li>
<li>$:/config/DefaultColourMappings/menubar-foreground</li>
<li>$:/config/DefaultSidebarTab</li>
<li>$:/config/EditToolbarButtons/Visibility/$:/core/ui/Buttons/delete</li>
<li>$:/config/field-search/data/Authors</li>
<li>$:/config/field-search/data/Keywords</li>
<li>$:/config/field-search/data/Tags</li>
<li>$:/config/field-search/tab/Any Field</li>
<li>$:/config/field-search/tab/Authors</li>
<li>$:/config/field-search/tab/Keywords</li>
<li>$:/config/field-search/tab/Tags</li>
<li>$:/config/KookmaPluginLibrary</li>
<li>$:/config/Navigation/openLinkFromInsideRiver</li>
<li>$:/config/Navigation/openLinkFromOutsideRiver</li>
<li>$:/config/OfficialPluginLibrary</li>
<li>$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/advanced-search</li>
<li>$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/close-all</li>
<li>$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/control-panel</li>
<li>$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/export-page</li>
<li>$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/home</li>
<li>$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/import</li>
<li>$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/language</li>
<li>$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/manager</li>
<li>$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/more-page-actions</li>
<li>$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/new-tiddler</li>
<li>$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/refresh</li>
<li>$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/save-wiki</li>
<li>$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/storyview</li>
<li>$:/config/PageControlButtons/Visibility/$:/plugins/kookma/commander/buttons/pagecontrol</li>
<li>$:/config/PageControlButtons/Visibility/$:/plugins/kookma/solution/buttons/pagecontrol</li>
<li>$:/config/PageControlButtons/Visibility/$:/plugins/kookma/utility/pagecontrol/view-fields-button</li>
<li>$:/config/PageControlButtons/Visibility/$:/plugins/tiddlywiki/markdown/new-markdown-button</li>
<li>$:/config/PageControlButtons/Visibility/$:/utility/ui/Button/SwitchPalette</li>
<li>$:/config/Plugins/Disabled/$:/plugins/kookma/favorites</li>
<li>$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/contents</li>
<li>$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/hamburger</li>
<li>$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/pagecontrols</li>
<li>$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/search</li>
<li>$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/server</li>
<li>$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/sidebar</li>
<li>$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/toprightbar</li>
<li>$:/config/RelinkOnRename</li>
<li>$:/config/SaveWikiButton/Filename</li>
<li>$:/config/Search/AutoFocus</li>
<li>$:/config/TextEditor/EnableToolbar</li>
<li>$:/config/TimestampDisable</li>
<li>$:/config/toc/admin</li>
<li>$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/clone</li>
<li>$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/close</li>
<li>$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/close-others</li>
<li>$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/delete</li>
<li>$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/edit</li>
<li>$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/more-tiddler-actions</li>
<li>$:/config/ViewToolbarButtons/Visibility/$:/plugins/ajh/favorites/template</li>
<li>$:/config/ViewToolbarButtons/Visibility/$:/plugins/bimlas/locator/viewtemplate/open-in-sidebar</li>
<li>$:/config/ViewToolbarButtons/Visibility/$:/plugins/danielo/encryptTiddler/crypt-button</li>
<li>$:/config/ViewToolbarButtons/Visibility/$:/plugins/felixhayashi/tiddlymap/misc/quickConnectButton</li>
<li>$:/config/ViewToolbarButtons/Visibility/$:/plugins/kookma/favorites/ui/buttons/add-remove</li>
<li>$:/config/wikilabs/PluginLibraryWL/latest</li>
<li>$:/config/WikiParserRules/Inline/wikilink</li>
<li>$:/core</li>
<li>$:/core/images/add-comment</li>
<li>$:/core/images/facebook</li>
<li>$:/core/images/instagram</li>
<li>$:/core/images/telegram</li>
<li>$:/core/images/twitter</li>
<li>$:/core/images/whatsapp</li>
<li>$:/core/templates/server/static.tiddler.html</li>
<li>$:/core/ui/EditorToolbar/rtl</li>
<li>$:/core/ui/MoreSideBar/Recent</li>
<li>$:/core/ui/PageTemplate/sidebar</li>
<li>$:/core/ui/SideBar/More</li>
<li>$:/core/ui/SideBar/Open</li>
<li>$:/core/ui/SideBar/Recent</li>
<li>$:/core/ui/SideBar/Tools</li>
<li>$:/core/ui/SideBarSegments/logo</li>
<li>$:/core/ui/SideBarSegments/page-controls</li>
<li>$:/core/ui/SideBarSegments/search</li>
<li>$:/core/ui/SideBarSegments/site-subtitle</li>
<li>$:/core/ui/SideBarSegments/site-title</li>
<li>$:/core/ui/SideBarSegments/tabs</li>
<li>$:/core/ui/ViewTemplate/title</li>
<li>$:/core/wiki/title</li>
<li>$:/DefaultTiddlers</li>
<li>$:/favicon.ico</li>
<li>$:/favorites/favlist</li>
<li>$:/highlight.js/theme/twdark.css</li>
<li>$:/highlight.js/theme/zenburn-modified.css</li>
<li>$:/isEncrypted</li>
<li>$:/keepstate/dynamictables/your-state-tid/style</li>
<li>$:/keepstate/utility/toggle-view-fields</li>
<li>$:/language</li>
<li>$:/languages/es-ES</li>
<li>$:/layout</li>
<li>$:/palette</li>
<li>$:/palettes/Vanilla</li>
<li>$:/plugins/danielo515/2click2edit</li>
<li>$:/plugins/danielo515/ContextPlugin</li>
<li>$:/plugins/felixhayashi/hotzone</li>
<li>$:/plugins/felixhayashi/respawn</li>
<li>$:/plugins/felixhayashi/tiddlymap</li>
<li>$:/plugins/felixhayashi/tiddlymap/config/sys/user</li>
<li>$:/plugins/felixhayashi/tiddlymap/config/vis/user</li>
<li>$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tmap:unknown</li>
<li>$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tw-body:link</li>
<li>$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tw-list:list</li>
<li>$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tw-list:tags</li>
<li>$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes/Concepto</li>
<li>$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes/Concepto-Mapa</li>
<li>$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes/Encuentros</li>
<li>$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes/Encuentros-Cafe</li>
<li>$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes/Encuentros-Mapa</li>
<li>$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes/Proyectos</li>
<li>$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes/Proyectos-Mapa</li>
<li>$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes/Proyectos-Sub</li>
<li>$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes/tmap:central-topic</li>
<li>$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes/tmap:neighbour</li>
<li>$:/plugins/felixhayashi/tiddlymap/graph/views/Comunidad</li>
<li>$:/plugins/felixhayashi/tiddlymap/graph/views/Comunidad/filter/edges</li>
<li>$:/plugins/felixhayashi/tiddlymap/graph/views/Default/filter/edges</li>
<li>$:/plugins/felixhayashi/tiddlymap/graph/views/Default/filter/nodes</li>
<li>$:/plugins/felixhayashi/tiddlymap/graph/views/Default/map</li>
<li>$:/plugins/felixhayashi/tiddlymap/graph/views/Live View</li>
<li>$:/plugins/felixhayashi/tiddlymap/graph/views/Live View/filter/edges</li>
<li>$:/plugins/felixhayashi/tiddlymap/graph/views/Live View/filter/nodes</li>
<li>$:/plugins/felixhayashi/tiddlymap/graph/views/Live View/map</li>
<li>$:/plugins/felixhayashi/tiddlymap/hook/editor</li>
<li>$:/plugins/felixhayashi/tiddlymap/misc/defaultViewHolder</li>
<li>$:/plugins/felixhayashi/tiddlymap/misc/meta</li>
<li>$:/plugins/felixhayashi/topstoryview</li>
<li>$:/plugins/felixhayashi/vis</li>
<li>$:/plugins/flibbles/relink</li>
<li>$:/plugins/flibbles/relink-titles</li>
<li>$:/plugins/kookma/commander/buttons/pagecontrol</li>
<li>$:/plugins/kookma/favorites/recent</li>
<li>$:/plugins/kookma/favorites/sidebar-tab</li>
<li>$:/plugins/kookma/shiraz</li>
<li>$:/plugins/kookma/shiraz/styles/colorful-sidebar-tab</li>
<li>$:/plugins/kookma/shiraz/styles/misc/tiddler-button-visibility</li>
<li>$:/plugins/kookma/shiraz/styles/misc/ui-buttons</li>
<li>$:/plugins/kookma/solution/ui/search-in-fields</li>
<li>$:/plugins/kookma/toc/styles/main</li>
<li>$:/plugins/kookma/trashbin</li>
<li>$:/plugins/kookma/trashbin/sidebar-tab</li>
<li>$:/plugins/kookma/trashbin/ui/sidebar</li>
<li>$:/plugins/kookma/utility</li>
<li>$:/plugins/kookma/utility/styles/tw-version</li>
<li>$:/plugins/kookma/utility/viewtemplate/view-fields</li>
<li>$:/plugins/sq/streams</li>
<li>$:/plugins/sq/streams-search</li>
<li>$:/plugins/tg/layout/search</li>
<li>$:/plugins/tg/layout/settings-toolbar-up</li>
<li>$:/plugins/tg/layout/toolbar-up/ckeckbox</li>
<li>$:/plugins/tiddlywiki/codemirror</li>
<li>$:/plugins/tiddlywiki/codemirror-autocomplete</li>
<li>$:/plugins/tiddlywiki/codemirror-fullscreen</li>
<li>$:/plugins/tiddlywiki/codemirror-mode-css</li>
<li>$:/plugins/tiddlywiki/codemirror-mode-javascript</li>
<li>$:/plugins/tiddlywiki/highlight</li>
<li>$:/plugins/tiddlywiki/markdown</li>
<li>$:/plugins/tiddlywiki/markdown/new-markdown-button</li>
<li>$:/plugins/tiddlywiki/menubar</li>
<li>$:/plugins/tiddlywiki/railroad</li>
<li>$:/plugins/TWaddle/LeftBar/temp</li>
<li>$:/plugins/wikilabs/link-to-tabs</li>
<li>$:/richlink/.dictionary</li>
<li>$:/richlink/audio</li>
<li>$:/richlink/img</li>
<li>$:/richlink/youtube</li>
<li>$:/sidebar/proyectos</li>
<li>$:/SiteSubtitle</li>
<li>$:/SiteTitle</li>
<li>$:/SpellCheck_EditorPreview</li>
<li>$:/state/advancedsearch/currentTab</li>
<li>$:/state/advancedsearch/standard/currentTab</li>
<li>$:/state/commander/log-tiddler</li>
<li>$:/state/commander/tiddler-addfields-status</li>
<li>$:/state/dynamictables/your-state-tid/expand</li>
<li>$:/state/import/select-all</li>
<li>$:/state/plugin-info--1763372400-$:/plugins/kookma/shiraz--479113107</li>
<li>$:/state/plugin-info--896887961-$:/plugins/kookma/toc</li>
<li>$:/state/plugin-info--896887961-$:/plugins/kookma/toc---1709694187</li>
<li>$:/state/search/currentTab</li>
<li>$:/state/shiraz/slider-macro/Cartografias de bolsillo/Insertar el mapa en otra web</li>
<li>$:/state/shiraz/slider-macro/Cartografias de bolsillo/Mapa con Tiddlywiki</li>
<li>$:/state/shiraz/slider-macro/Copincha/Concepto/Acciones</li>
<li>$:/state/shiraz/slider-macro/Copincha/Concepto/Contacto</li>
<li>$:/state/showeditpreview</li>
<li>$:/state/sidebar</li>
<li>$:/state/tab--1128158915</li>
<li>$:/state/tab--1356423374</li>
<li>$:/state/tab--1498284803</li>
<li>$:/state/tab--1744531714</li>
<li>$:/state/tab--1913893819</li>
<li>$:/state/tab--1963855381</li>
<li>$:/state/tab--2041627287</li>
<li>$:/state/tab--356319527</li>
<li>$:/state/tab--595412856</li>
<li>$:/state/tab--648189706</li>
<li>$:/state/tab--668766041</li>
<li>$:/state/tab--697582678</li>
<li>$:/state/tab--86143343</li>
<li>$:/state/tab-1082749355</li>
<li>$:/state/tab-161607098</li>
<li>$:/state/tab-1749438307</li>
<li>$:/state/tab-1765345818</li>
<li>$:/state/tab-177089240</li>
<li>$:/state/tab-27387430</li>
<li>$:/state/tab-563689003</li>
<li>$:/state/tab-598579191</li>
<li>$:/state/tab-658165082</li>
<li>$:/state/tab-675828809</li>
<li>$:/state/tab/moresidebar-1850697562</li>
<li>$:/state/tab/search-results/advancedsearch</li>
<li>$:/state/tab/search-results/sidebar</li>
<li>$:/state/tab/sidebar--595412856</li>
<li>$:/state/tab1--668766041</li>
<li>$:/state/tabs/controlpanel/toolbars-1345989671</li>
<li>$:/state/tabs/MapElementTypeManager-743493466</li>
<li>$:/state/toc/Contenidos-Copincha-1369173344</li>
<li>$:/state/toc/Contenidos-Copincha-967464839</li>
<li>$:/state/toc/Contenidos/Copincha-Copincha/Concepto-1369173344</li>
<li>$:/state/toc/Contenidos/Copincha-Copincha/Concepto-967464839</li>
<li>$:/state/toc/Copincha/Concepto-Copinchapedia-967464839</li>
<li>$:/state/toc/Copincha/Concepto/Copinchapedia-Contribuir en Copinchapedia-967464839</li>
<li>$:/state/toc/Copincha/Concepto/Copinchapedia-Copinchapedia/Plantillas-967464839</li>
<li>$:/state/toc/Copincha/Concepto/Copinchapedia-Tutorial Copinchapedia-967464839</li>
<li>$:/state/toc/Copincha/Sidebar-¿Qué es Copincha?--1378386848</li>
<li>$:/state/toc/Copincha/Sidebar-¿Qué es Copincha?-1369173344</li>
<li>$:/state/toc/Copincha/Sidebar-¿Qué es Copincha?-967464839</li>
<li>$:/state/toc/Encuentros-Cafe Reparador--829956098</li>
<li>$:/state/toc/Encuentros-Cafe Sopresa--829956098</li>
<li>$:/state/toc/Encuentros-Cafe Sorpresa--829956098</li>
<li>$:/state/toc/Encuentros-Cafe Viaje en Casa--829956098</li>
<li>$:/state/toc/Project-3D a lo cubano--1378386848</li>
<li>$:/state/toc/Project-Archivo informal--1378386848</li>
<li>$:/state/toc/Project-Archivo informal-1568814661</li>
<li>$:/state/toc/Project-Cuba con Impresoras 3D--1378386848</li>
<li>$:/state/toc/Project-DOTS--1378386848</li>
<li>$:/state/toc/Project-Jardines Digitales de Bolsillo--1378386848</li>
<li>$:/state/toc/Project-Jardines Digitales de Bolsillo--652075886</li>
<li>$:/state/toc/Project-Jardines Digitales--1378386848</li>
<li>$:/state/toc/Project-Jardines Digitales-1568814661</li>
<li>$:/state/toc/Project-Plástico Leal--1378386848</li>
<li>$:/state/toc/Project-Plástico Leal-1568814661</li>
<li>$:/state/toc/Project-Precious Plastic La Habana--1378386848</li>
<li>$:/state/toc/Project-Precious Plastic La Habana-1568814661</li>
<li>$:/state/toc/Project-Trapiche--1378386848</li>
<li>$:/state/toc/Project/3D a lo cubano-Impresora Copincha--1378386848</li>
<li>$:/state/toc/Project/Archivo informal-Trapiche--1378386848</li>
<li>$:/state/toc/Project/Cuba con Impresoras 3D-Impresora Copincha--1378386848</li>
<li>$:/state/toc/Project/Jardines Digitales de Bolsillo-Archivo informal--1378386848</li>
<li>$:/state/toc/Project/Jardines Digitales de Bolsillo-Cartografias de bolsillo--1378386848</li>
<li>$:/state/toc/Project/Jardines Digitales de Bolsillo-Copinchapedia--1378386848</li>
<li>$:/state/toc/Project/Jardines Digitales-Archivo informal--1378386848</li>
<li>$:/state/toc/Project/Jardines Digitales-Copinchapedia--1378386848</li>
<li>$:/state/toc/Project/Jardines Digitales-Mapas digitales de bolsillo--1378386848</li>
<li>$:/state/toc/Project/Jardines Digitales/Archivo informal-Trapiche--1378386848</li>
<li>$:/state/toc/Project/Plástico Leal-Plástico Leal - La Conexión--1378386848</li>
<li>$:/state/toc/Project/Plástico Leal-Plástico Leal - La Conexión-1568814661</li>
<li>$:/state/toc/Project/Plástico Leal-Plástico Leal - La Maquinaria--1378386848</li>
<li>$:/state/toc/Project/Plástico Leal/Plástico Leal - La Maquinaria-Extrusora Precious Plastic--1378386848</li>
<li>$:/state/toc/Project/Plástico Leal/Plástico Leal - La Maquinaria-Impresora Copincha--1378386848</li>
<li>$:/state/toc/Project/Precious Plastic La Habana-Mapa digital - reciclaje plástico--1378386848</li>
<li>$:/state/toc/Project/Precious Plastic La Habana-Mapa digital para el reciclaje plástico--1378386848</li>
<li>$:/state/toc/Project/Precious Plastic La Habana-Máquinas para reciclar plásticos--1378386848</li>
<li>$:/state/toc/Project/Precious Plastic La Habana-Máquinas para reciclar plásticos-1568814661</li>
<li>$:/state/toc/Project/Precious Plastic La Habana-Máquinas Precious Plastic--1378386848</li>
<li>$:/state/toc/Project/Precious Plastic La Habana-Plástico Leal--1378386848</li>
<li>$:/state/toc/Project/Precious Plastic La Habana-Plástico Leal-1568814661</li>
<li>$:/state/toc/Project/Precious Plastic La Habana/Máquinas para reciclar plásticos-Máquinas Precious Plastic--1378386848</li>
<li>$:/state/toc/Project/Precious Plastic La Habana/Plástico Leal-Plástico Leal - La Maquinaria--1378386848</li>
<li>$:/state/toc/Project/Precious Plastic La Habana/Plástico Leal/Plástico Leal - La Maquinaria-Impresora Copincha--1378386848</li>
<li>$:/state/toc/Project/Precious Plastic La Habana/Plástico Leal/Plástico Leal - La Maquinaria-Máquinas para reciclar plásticos--1378386848</li>
<li>$:/state/toc/Project/Precious Plastic La Habana/Plástico Leal/Plástico Leal - La Maquinaria/Máquinas para reciclar plásticos-Impresora Copincha--1378386848</li>
<li>$:/state/toc/Project/Precious Plastic La Habana/Plástico Leal/Plástico Leal - La Maquinaria/Máquinas para reciclar plásticos-Máquinas Precious Plastic--1378386848</li>
<li>$:/state/toc/Project/Trapiche-Construir cilindros--1378386848</li>
<li>$:/status/RequireReloadDueToPluginChange</li>
<li>$:/StoryList</li>
<li>$:/tags/AdvancedSearch</li>
<li>$:/tags/PageControls</li>
<li>$:/tags/SearchResults</li>
<li>$:/theme</li>
<li>$:/themes/tiddlywiki/seamless</li>
<li>$:/themes/tiddlywiki/snowwhite</li>
<li>$:/themes/tiddlywiki/vanilla</li>
<li>$:/themes/tiddlywiki/vanilla/metrics/bodyfontsize</li>
<li>$:/themes/tiddlywiki/vanilla/metrics/bodylineheight</li>
<li>$:/themes/tiddlywiki/vanilla/metrics/fontsize</li>
<li>$:/themes/tiddlywiki/vanilla/metrics/lineheight</li>
<li>$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint</li>
<li>$:/themes/tiddlywiki/vanilla/metrics/sidebarwidth</li>
<li>$:/themes/tiddlywiki/vanilla/metrics/storyleft</li>
<li>$:/themes/tiddlywiki/vanilla/metrics/storyright</li>
<li>$:/themes/tiddlywiki/vanilla/metrics/storytop</li>
<li>$:/themes/tiddlywiki/vanilla/metrics/storywidth</li>
<li>$:/themes/tiddlywiki/vanilla/options/codewrapping</li>
<li>$:/themes/tiddlywiki/vanilla/options/sidebarlayout</li>
<li>$:/themes/tiddlywiki/vanilla/options/stickytitles</li>
<li>$:/themes/tiddlywiki/vanilla/settings/backgroundimageattachment</li>
<li>$:/themes/tiddlywiki/vanilla/settings/backgroundimagesize</li>
<li>$:/themes/tiddlywiki/vanilla/settings/codefontfamily</li>
<li>$:/themes/tiddlywiki/vanilla/settings/fontfamily</li>
<li>$:/toc/adminTid</li>
<li>$:/trashbin/$:/plugins/kookma/trashbin/sidebar-tab</li>
<li>$:/utility/images/color-switch</li>
<li>$:/utility/ui/Button/SwitchPalette</li>
<li>$:/view</li>
<li>$:/vote/dataTiddler/votings</li>
<li>3D a lo cubano</li>
<li>acordar precio</li>
<li>adithyab/palettes/SolarizedLight</li>
<li>Agricultura urbana</li>
<li>Aportar en prototipado</li>
<li>Archivo informal</li>
<li>Archivo Informal (iA)</li>
<li>Armar cuerpo impresora</li>
<li>Armar estructura</li>
<li>Autopoiesis</li>
<li>Bluebox</li>
<li>Botones</li>
<li>Botones con imagen en miniaura</li>
<li>Cafe Reparador</li>
<li>Cafe reparador</li>
<li>Cafe Reparador 20/11/20</li>
<li>Cafe Reparador 23/10/20</li>
<li>Cafe Sorpresa</li>
<li>Cafe sorpresa</li>
<li>Cafe Sorpresa - 07/05/21</li>
<li>Cafe Sorpresa - 14 de mayo de 2021</li>
<li>Cafe Sorpresa - 21 de mayo de 2021</li>
<li>Cafe Sorpresa - 21 de mayo de 2021'</li>
<li>Cafe Sorpresa - 21/05/21</li>
<li>Cafe Sorpresa - 30 de abril de 2021</li>
<li>Cafe Sorpresa - 7 de mayo de 2021</li>
<li>Cafe Sorpresa - CNC Camino Corto Camino Largo</li>
<li>Cafe Sorpresa - CNC Gran Formato</li>
<li>Cafe Sorpresa - Resilencia Tecnologica</li>
<li>Cafe Sorpresa - SimbiOS</li>
<li>Cafe Sorpresa 07/05/21</li>
<li>Cafe Sorpresa 09/08/19</li>
<li>Cafe Sorpresa 14/05/21</li>
<li>Cafe Sorpresa 21/05/21</li>
<li>Cafe Sorpresa 27/11/20</li>
<li>Cafe Sorpresa 30/04/21</li>
<li>Cafe Viaje en Casa</li>
<li>Cafe Viaje en Casa 04/10/19</li>
<li>Cafe Viaje en Casa 13/09/19</li>
<li>cafereparador-controlesremotos.jpeg</li>
<li>cafereparador-laptopdemarta.jpeg</li>
<li>cafesorpresa-140521.mp3</li>
<li>cafesorpresa-210521.mp3</li>
<li>Cartografias de bolsillo</li>
<li>Ciclo Copincha</li>
<li>CNC Camino Corto/Camino Largo</li>
<li>CNC DOT</li>
<li>CodeMirror</li>
<li>Código de conducta</li>
<li>codigo de conducta - atribucion</li>
<li>codigo de conducta - atribución</li>
<li>Cómo colaborar</li>
<li>Comprar tornillo de extrusion</li>
<li>Comunidad</li>
<li>Configuración</li>
<li>conseguir motor 2hp</li>
<li>Consola DOT</li>
<li>Construir electronica</li>
<li>Construir impresora Acevedo</li>
<li>Construir impresora Israel</li>
<li>Construir impresora Jonathan</li>
<li>Construir impresora Miguel</li>
<li>Consultar y organizar datos en Pharo</li>
<li>Contacto</li>
<li>contactos</li>
<li>contents</li>
<li>Contribuir</li>
<li>Contribuir en Copincha</li>
<li>Contribuir en Copinchapedia</li>
<li>Copincha</li>
<li>Copincha - Acciones</li>
<li>copincha - descripción</li>
<li>copincha-logo.png</li>
<li>Copincha/Concepto</li>
<li>Copincha/Descripción</li>
<li>copincha/redes</li>
<li>Copinchapedia</li>
<li>copinchapedia - colaborar</li>
<li>Copinchapedia/Plantillas</li>
<li>Cuba con Impresoras 3D - Descripcion</li>
<li>Customizing</li>
<li>Demo</li>
<li>Descripcion</li>
<li>Diagramas de Flujo</li>
<li>Dios no jugó a los dados</li>
<li>Documentacion</li>
<li>documentación</li>
<li>Documentar impresora Ale</li>
<li>Documentar recurso Richlink</li>
<li>Documentar recursos Copinchapedia</li>
<li>DOTS</li>
<li>Draft of 'Cafe Sorpresa - 21 de mayo de 2021'</li>
<li>Encabezado</li>
<li>Encuentros - Calendario</li>
<li>Enlaces enriquecidos</li>
<li>enviar plano</li>
<li>Establecer un favicon</li>
<li>Estilo de pagina</li>
<li>evento</li>
<li>Evento</li>
<li>Examples</li>
<li>Explorer</li>
<li>Extrusor de filamentos</li>
<li>Extrusora Precious Plastic</li>
<li>geoplasticoleal - copincha</li>
<li>grupo</li>
<li>Grupo</li>
<li>GrupoProyectos</li>
<li>Hackerspace</li>
<li>Hackerspace Copincha</li>
<li>Hangprinter</li>
<li>Hangprinter - Descripcion</li>
<li>Hangprinter - Listado de materiales</li>
<li>Have fun with</li>
<li>Hello World Test</li>
<li>Herramientas</li>
<li>HighlightExample</li>
<li>If Plastico them</li>
<li>image/repo</li>
<li>Impresora 3D Radames</li>
<li>Impresora Acevedo</li>
<li>Impresora Ale</li>
<li>Impresora Anycubic</li>
<li>Impresora Copincha</li>
<li>Impresora Israel</li>
<li>Impresora Jonathan</li>
<li>Impresora Miguel</li>
<li>Imprimir piezas 3D</li>
<li>Inbox</li>
<li>Inicio</li>
<li>Instalación</li>
<li>Install</li>
<li>Inyectora Precious Plastic</li>
<li>Jardines Digitales de Bolsillo</li>
<li>John Cage Interpretado</li>
<li>John Cage Interpretado II</li>
<li>La Conexion - Formulario</li>
<li>lamaquinaria.md</li>
<li>Léeme</li>
<li>Lightbox</li>
<li>lista de piezas</li>
<li>Lista de proyectos</li>
<li>Lucerne</li>
<li>Mapa digital para el reciclaje de plástico</li>
<li>mapavista</li>
<li>Maps.Me</li>
<li>Maquina</li>
<li>máquina</li>
<li>Máquinas para reciclar plásticos</li>
<li>Máquinas Precious Plastic</li>
<li>Maykel Rodríguez Ricardo</li>
<li>medios/blogs</li>
<li>Menciones</li>
<li>menciones/prensa</li>
<li>Mensaje de Alerta</li>
<li>Modal Template</li>
<li>Modelado 3D en OpenScad</li>
<li>Modificaciones</li>
<li>New Tiddler</li>
<li>Notebook Mod</li>
<li>Notebook theme</li>
<li>Nuevo Tiddler</li>
<li>Nuevo Tiddler 1</li>
<li>Nuevo Tiddler 2</li>
<li>Nuevo Tiddler 3</li>
<li>Nuevo Tiddler 4</li>
<li>OpenScad</li>
<li>Orangebot</li>
<li>Pa La Minga 1</li>
<li>Palaminga</li>
<li>Palaminga/resumen</li>
<li>ParaEmpezar</li>
<li>Personalización</li>
<li>Personalizar Wiki</li>
<li>Personas</li>
<li>pieza</li>
<li>pieza - cantidad</li>
<li>pieza - detalles</li>
<li>pieza - enlace</li>
<li>pieza - imagen</li>
<li>Plantilla de proyecto</li>
<li>Plástico Leal</li>
<li>Plástico Leal - El Plástico Leal</li>
<li>Plástico Leal - Información</li>
<li>Plástico Leal - Introducción</li>
<li>Plástico Leal - La Conexión</li>
<li>Plástico Leal - La Documentacion</li>
<li>Plástico Leal - La Introducción</li>
<li>Plástico Leal - La Maquinaria</li>
<li>Plástico Leal - Programa</li>
<li>Plástico Leal - Resumen</li>
<li>Plástico Leal - Talleres</li>
<li>Portada</li>
<li>pph/sidebar/contenidos/glosario/ecomadera</li>
<li>pph/sidebar/contenidos/glosario/hackerspace</li>
<li>pph/sidebar/contenidos/glosario/hypothesis</li>
<li>pph/sidebar/contenidos/glosario/infraestructuradebolsillo</li>
<li>Precious Plastic La Habana</li>
<li>Presentaciones</li>
<li>Principios de la Permacultura</li>
<li>Project</li>
<li>Projectify</li>
<li>Projectify Intro</li>
<li>Projects</li>
<li>Proteger tiddlers individuales con contraseña</li>
<li>proyecto reciclaje</li>
<li>Proyectos del colectivo PRUEBAS</li>
<li>Prueba de Markdown</li>
<li>Pruebas</li>
<li>Readme</li>
<li>recoger y pagar</li>
<li>Registro de contribuciones</li>
<li>Renombrar</li>
<li>Respuesta a la Covid 19</li>
<li>Richlinks</li>
<li>Robotica educativa</li>
<li>Seccion ARTE</li>
<li>Servidor pph.cu</li>
<li>sidebar/contenidos</li>
<li>sidebar/encuentros</li>
<li>sidebar/footer</li>
<li>sidebar/mapa</li>
<li>sidebar/papelera</li>
<li>sidebar/recientes</li>
<li>sidebar/tab1</li>
<li>sidebar/tab2</li>
<li>software</li>
<li>Tiddlers</li>
<li>TiddlyMap!!</li>
<li>Trapiche</li>
<li>Trituradora Precious Plastic</li>
<li>Tutorial Copinchapedia</li>
<li>Unificar Proyecto contenidos y proyectos del gestor</li>
<li>Untitled</li>
<li>ventana - proyecto - Cubacreativa</li>
<li>ventana de pieza</li>
<li>ventana-proyecto-Cuba con Impresoras 3D</li>
<li>ventana-proyecto-Plástico Leal</li>
<li>ventana-proyecto-Precious Plastic La Habana</li>
<li>Vestuario de gigantería con plástico reciclado</li>
<li>View demo</li>
</ul>
</p>
<style>
.tc-remove-when-wiki-loaded {display: none;}
</style>
</div>
</noscript>
<!--~~ Ordinary tiddlers ~~-->
<div id="storeArea" style="display:none;">
<div created="20210714175059602" modified="20210714181644275" tags="Inbox todo copincha" title="¿Cómo contribuir en Copincha?" tmap.id="446d1f15-ee22-4683-8a96-954f453c7193">
<pre>Copincha se vale de las colaboraciones voluntarias que hacen crecer el fondo de recursos omunitarios que compartimos.
Este fondo se basa en construir conocimiento compartido y prototipos que nos ayudana a aprender mas rapido sobre una solucion. O materiales disponibles para el prototipado.
Material para el prototipado
Necesidades del espacio
Reflejamos cada contribucion de forma publica y transparente [[aqui|Registro de contribuciones]]
! Donacion monetaria
Resumen
! Donación material
Resumen
! Donación de tiempo
Resumen
! Donación de trabajo
Resumen</pre>
</div>
<div created="20210727124957222" modified="20210808041953929" orden="01" tags="Copincha/Sidebar" title="¿Qué es Copincha?" tmap.id="28986d47-8d59-4793-9d63-6981a31440a2">
<pre>{{copincha - descripción}}</pre>
</div>
<div bag="default" created="20201212165938184" modified="20210413012533468" revision="0" tags="" title="✨ Acerca de" tmap.id="dab9c18d-e430-4003-b3e5-6658010610f0" type="text/vnd.tiddlywiki">
<pre>{{Projectify Intro}}
&lt;$link to="$:/plugins/nico/projectify/LICENSE"&gt;&lt;&lt;shield label:License status:MIT&gt;&gt;&lt;/$link&gt;
&lt;$link to="$:/plugins/nico/projectify"&gt;&lt;&lt;shield label:Release status:{{$:/plugins/nico/projectify!!version}} colour:purple&gt;&gt;&lt;/$link&gt;
&lt;a href="https://tiddlywiki.com"&gt;&lt;&lt;shield label:~TiddlyWiki status:5.1.22+ colour:blue&gt;&gt;&lt;/a&gt;
{{Léeme}}
</pre>
</div>
<div created="20210401073139616" modified="20210401073154986" title="$:/config/AnimationDuration">
<pre>250</pre>
</div>
<div created="20190929073559955" modified="20210416040046012" title="$:/config/AutoSave">
<pre>yes</pre>
</div>
<div created="20200211071837059" field-type="list" modified="20200321121846601" title="$:/config/bimlas/locator/fields/keywords">
<pre>$:/plugins/bimlas/locator/field-templates/text</pre>
</div>
<div created="20200211084008321" field-type="list" modified="20200211084008321" title="$:/config/bimlas/locator/fields/responder">
<pre></pre>
</div>
<div created="20200321122028340" modified="20200321122029487" title="$:/config/bimlas/locator/toolbars/search/$:/plugins/bimlas/locator/buttons/toggle-fields-filter">
<pre>show</pre>
</div>
<div created="20200321121958784" modified="20200321122037121" tags="" title="$:/config/bimlas/locator/toolbars/view/$:/plugins/bimlas/locator/buttons/collapse-history" type="text/vnd.tiddlywiki">
<pre>show</pre>
</div>
<div created="20200321122006825" modified="20200321122007888" tags="" title="$:/config/bimlas/locator/toolbars/view/$:/plugins/bimlas/locator/buttons/create-new-tiddler" type="text/vnd.tiddlywiki">
<pre>hide</pre>
</div>
<div created="20200321122009025" modified="20200321122011752" tags="" title="$:/config/bimlas/locator/toolbars/view/$:/plugins/bimlas/locator/buttons/open-in-story-river" type="text/vnd.tiddlywiki">
<pre>hide</pre>
</div>
<div created="20200321122013345" modified="20200321122018463" tags="" title="$:/config/bimlas/locator/toolbars/view/$:/plugins/bimlas/locator/buttons/search-in-context" type="text/vnd.tiddlywiki">
<pre>hide</pre>
</div>
<div created="20200321122039921" modified="20200321122039921" tags="" title="$:/config/bimlas/locator/toolbars/view/$:/plugins/bimlas/locator/buttons/toggle-context-settings" type="text/vnd.tiddlywiki">
<pre>show</pre>
</div>
<div created="20200321122021054" modified="20200321122021881" title="$:/config/bimlas/locator/toolbars/view/$:/plugins/bimlas/locator/buttons/toggle-fields-filter">
<pre>show</pre>
</div>
<div created="20200321122023178" modified="20200321122023624" title="$:/config/bimlas/locator/toolbars/view/$:/plugins/bimlas/locator/buttons/view-toolbar-dropdown">
<pre>show</pre>
</div>
<div created="20190107170544522" modified="20190107170544522" title="$:/config/codemirror/autoCloseTags" type="bool">
<pre>true</pre>
</div>
<div created="20190316152418234" modified="20190316152418234" title="$:/config/codemirror/keyMap" type="string">
<pre>default</pre>
</div>
<div created="20190107170556210" modified="20190107170556210" title="$:/config/codemirror/lineNumbers" type="bool">
<pre>true</pre>
</div>
<div created="20190107170551106" modified="20191026050256114" title="$:/config/codemirror/styleActiveLine" type="bool">
<pre>true</pre>
</div>
<div created="20190107170548753" modified="20190109041112438" title="$:/config/codemirror/theme" type="string">
<pre>default</pre>
</div>
<div bag="default" created="20201231183449686" modified="20210212140649774" revision="0" tags="rr-TW5 rr-UI-mod" title="$:/config/DefaultColourMappings/menubar-background" type="text/vnd.tiddlywiki">
<pre>transparent</pre>
</div>
<div bag="default" created="20201231183527738" modified="20210213121444611" revision="0" tags="rr-TW5 rr-UI-mod" title="$:/config/DefaultColourMappings/menubar-foreground" type="text/vnd.tiddlywiki">
<pre>&lt;&lt;sidebar-muted-foreground&gt;&gt;</pre>
</div>
<div created="20210725043502819" modified="20210925143059522" title="$:/config/DefaultSidebarTab">
<pre>Sidebar/Contenidos</pre>
</div>
<div created="20200331052054618" modified="20200331052054618" title="$:/config/EditToolbarButtons/Visibility/$:/core/ui/Buttons/delete">
<pre>hide</pre>
</div>
<div caption="Authors" created="20210309035805790" modified="20210309035805790" tags="$:/tags/field-search/data" title="$:/config/field-search/data/Authors" type="application/json">
<pre>{
"author": "comment",
"responder": "comment",
"developer": "comment"
}</pre>
</div>
<div caption="Keywords" created="20210309035831878" modified="20210309035831878" tags="$:/tags/field-search/data" title="$:/config/field-search/data/Keywords" type="application/json">
<pre>{
"keywords": "comment"
}</pre>
</div>
<div caption="Tags" created="20210309035929174" modified="20210309035929174" tags="$:/tags/field-search/data" title="$:/config/field-search/data/Tags" type="application/json">
<pre>{
"tags": "comment"
}</pre>
</div>
<div caption="Any Field" created="20210317190922805" modified="20210317190922805" opt-checked="[all[]]" opt-unchecked="[!is[system]]" search-set="[!is[system]]" search-sort="[sort[title]limit[250]]" tags="" title="$:/config/field-search/tab/Any Field" type="text/vnd.tiddlywiki">
<pre>\define searchTerm() [search:$(field)$&lt;userInput&gt;]
&lt;$list filter="[[$:/config/field-search/data/Any Field]indexes[]sortby{$:/config/field-search/sortby}]" variable=field emptyMessage="[[- configuration needed -|$:/plugins/wikilabs/field-search/readme]]"&gt;
{{||$:/plugins/wikilabs/field-search/templates/Results}}
&lt;/$list&gt;</pre>
</div>
<div caption="Authors" created="20210309035805790" modified="20210309035805790" opt-checked="[all[]]" opt-unchecked="[!is[system]]" search-set="[!is[system]]" search-sort="[sort[title]limit[250]]" tags="$:/tags/SearchResults" title="$:/config/field-search/tab/Authors" type="text/vnd.tiddlywiki">
<pre>\define searchTerm() [search:$(field)$&lt;userInput&gt;]
\define openConfig()
&lt;$button&gt;
&lt;$action-setfield $tiddler="$:/state/tab-1749438307" text="$:/plugins/wikilabs/field-search/CP/Settings/field-search"/&gt;
&lt;$action-navigate $to="$:/ControlPanel"/&gt;
- configuration needed -
&lt;/$button&gt;
\end
&lt;$list filter="[[$:/config/field-search/data/Authors]indexes[]sortby{$:/config/field-search/sortby}]" variable=field emptyMessage="&lt;&lt;openConfig&gt;&gt;"&gt;
{{||$:/plugins/wikilabs/field-search/templates/Results}}
&lt;/$list&gt;
</pre>
</div>
<div caption="Keywords" created="20210309035831878" modified="20210319070235049" opt-checked="[all[]]" opt-unchecked="[!is[system]]" search-set="[!is[system]]" search-sort="[sort[title]limit[250]]" tags="$:/tags/SearchResults" title="$:/config/field-search/tab/Keywords" type="text/vnd.tiddlywiki">
<pre>\define searchTerm() [search:$(field)$&lt;userInput&gt;]
\define openConfig()
&lt;$button&gt;
&lt;$action-setfield $tiddler="$:/state/tab-1749438307" text="$:/plugins/wikilabs/field-search/CP/Settings/field-search"/&gt;
&lt;$action-navigate $to="$:/ControlPanel"/&gt;
- configuration needed -
&lt;/$button&gt;
\end
&lt;$list filter="[[$:/config/field-search/data/Keywords]indexes[]sortby{$:/config/field-search/sortby}]" variable=field emptyMessage="&lt;&lt;openConfig&gt;&gt;"&gt;
{{||$:/plugins/wikilabs/field-search/templates/Results}}
&lt;/$list&gt;
</pre>
</div>
<div caption="Tags" created="20210309035929174" modified="20210317180555530" opt-checked="[all[]]" opt-unchecked="[!is[system]]" search-set="[!is[system]]" search-sort="[sort[title]limit[250]]" tags="$:/tags/SearchResults" title="$:/config/field-search/tab/Tags" type="text/vnd.tiddlywiki">
<pre>\define searchTerm() [search:$(field)$&lt;userInput&gt;]
\define openConfig()
&lt;$button&gt;
&lt;$action-setfield $tiddler="$:/state/tab-1749438307" text="$:/plugins/wikilabs/field-search/CP/Settings/field-search"/&gt;
&lt;$action-navigate $to="$:/ControlPanel"/&gt;
- configuration needed -
&lt;/$button&gt;
\end
&lt;$list filter="[[$:/config/field-search/data/Tags]indexes[]sortby{$:/config/field-search/sortby}]" variable=field emptyMessage="&lt;&lt;openConfig&gt;&gt;"&gt;
{{||$:/plugins/wikilabs/field-search/templates/Results}}
&lt;/$list&gt;
</pre>
</div>
<div bag="default" caption="Kookma Plugin Library" created="20200306121057751" modified="20200307172402266" revision="0" tags="$:/tags/PluginLibrary" title="$:/config/KookmaPluginLibrary" type="text/vnd.tiddlywiki" url="https://kookma.github.io/TW-PluginLibrary/library/index.html">
<pre>Kookma plugin library is a set of plugins developed by [[Mohammad|https://github.com/kookma]]. A good recommendation is to backup your data before installing any plugins. These plugins distributed under MIT license.
To use in other wikis, drag and drop this link to those wikis: [[Kookma Plugin Library|$:/config/KookmaPluginLibrary]]</pre>
</div>
<div title="$:/config/Navigation/openLinkFromInsideRiver">
<pre>above</pre>
</div>
<div title="$:/config/Navigation/openLinkFromOutsideRiver">
<pre>top</pre>
</div>
<div caption="{{$:/language/OfficialPluginLibrary}} (Prerelease)" tags="$:/tags/PluginLibrary" title="$:/config/OfficialPluginLibrary" url="https://tiddlywiki.com/prerelease/library/v5.1.24/index.html">
<pre>The prerelease version of the official ~TiddlyWiki plugin library at tiddlywiki.com. Plugins, themes and language packs are maintained by the core team.
</pre>
</div>
<div created="20210725042345043" modified="20210725042431995" title="$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/advanced-search">
<pre>hide</pre>
</div>
<div created="20190922153139673" modified="20210725042446072" title="$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/close-all">
<pre>hide</pre>
</div>
<div created="20190207033550793" modified="20200318193449380" title="$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/control-panel">
<pre>show</pre>
</div>
<div created="20210725042442856" modified="20210917054038394" title="$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/export-page">
<pre>hide</pre>
</div>
<div created="20190922153134256" modified="20200318193449380" title="$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/home">
<pre>show</pre>
</div>
<div created="20210725042442369" modified="20210917054036209" title="$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/import">
<pre>hide</pre>
</div>
<div created="20210722005107193" modified="20210722005111960" title="$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/language">
<pre>hide</pre>
</div>
<div created="20210722005146187" modified="20210725042309420" title="$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/manager">
<pre>hide</pre>
</div>
<div created="20210725042356357" modified="20210725042356357" title="$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/more-page-actions">
<pre>show</pre>
</div>
<div created="20210725042304452" modified="20210917054056233" title="$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/new-tiddler">
<pre>show</pre>
</div>
<div created="20190107164149737" modified="20190731070931612" title="$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/refresh">
<pre>hide</pre>
</div>
<div created="20210725042320307" modified="20210917054052641" title="$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/save-wiki">
<pre>show</pre>
</div>
<div created="20190706151932299" modified="20190731070938393" title="$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/storyview">
<pre>hide</pre>
</div>
<div created="20210725042402064" modified="20210725042402064" title="$:/config/PageControlButtons/Visibility/$:/plugins/kookma/commander/buttons/pagecontrol">
<pre>hide</pre>
</div>
<div created="20210725042325084" modified="20210725042325084" title="$:/config/PageControlButtons/Visibility/$:/plugins/kookma/solution/buttons/pagecontrol">
<pre>hide</pre>
</div>
<div created="20210917054045625" modified="20210917054045625" title="$:/config/PageControlButtons/Visibility/$:/plugins/kookma/utility/pagecontrol/view-fields-button">
<pre>hide</pre>
</div>
<div created="20210917054031761" modified="20210917054031761" title="$:/config/PageControlButtons/Visibility/$:/plugins/tiddlywiki/markdown/new-markdown-button">
<pre>hide</pre>
</div>
<div created="20210725042330610" modified="20210725042330610" title="$:/config/PageControlButtons/Visibility/$:/utility/ui/Button/SwitchPalette">
<pre>hide</pre>
</div>
<div created="20210420040451351" modified="20210420041607916" title="$:/config/Plugins/Disabled/$:/plugins/kookma/favorites">
<pre>no</pre>
</div>
<div created="20210212142758394" modified="20210506161611596" title="$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/contents">
<pre>hide</pre>
</div>
<div created="20210212142758394" modified="20210506161611596" title="$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/hamburger">
<pre>hide</pre>
</div>
<div created="20210212142842192" modified="20210212195912023" title="$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/pagecontrols">
<pre>hide</pre>
</div>
<div created="20210212142812068" modified="20210212142812068" title="$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/search">
<pre>hide</pre>
</div>
<div created="20210212142839294" modified="20210212142840896" title="$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/server">
<pre>hide</pre>
</div>
<div bag="default" created="20201231174015279" modified="20210212192931366" revision="0" tags="rr-TW5 rr-UI-mod" title="$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/sidebar" type="text/vnd.tiddlywiki">
<pre>hide</pre>
</div>
<div created="20210212142835704" modified="20210212142837070" title="$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/toprightbar">
<pre>show</pre>
</div>
<div created="20191018210522966" modified="20210727141222642" title="$:/config/RelinkOnRename">
<pre>yes</pre>
</div>
<div created="20190207035409451" modified="20190819105112137" title="$:/config/SaveWikiButton/Filename">
<pre>Scripts in Tiddlywiki &lt;&lt;version&gt;&gt;.html</pre>
</div>
<div created="20190226102210221" modified="20190226102215415" title="$:/config/Search/AutoFocus">
<pre>false</pre>
</div>
<div created="20210725044139695" modified="20210725044140697" title="$:/config/TextEditor/EnableToolbar">
<pre>yes</pre>
</div>
<div created="20190110100445496" modified="20190110110223849" title="$:/config/TimestampDisable">
<pre></pre>
</div>
<div created="20200321095241498" modified="20200321095300196" tags="" title="$:/config/toc/admin">
<pre>reader</pre>
</div>
<div created="20190107170014632" modified="20190816174130100" title="$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/clone">
<pre>hide</pre>
</div>
<div created="20190816174125946" modified="20200318193449380" title="$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/close">
<pre>show</pre>
</div>
<div created="20190107170017351" modified="20190816174123458" title="$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/close-others">
<pre>hide</pre>
</div>
<div created="20190121072618804" modified="20190803164714106" title="$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/delete">
<pre>hide</pre>
</div>
<div created="20190816174143776" modified="20200318193449380" title="$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/edit">
<pre>show</pre>
</div>
<div created="20200318193147193" modified="20200318193449380" title="$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/more-tiddler-actions">
<pre>show</pre>
</div>
<div created="20190816174134427" modified="20200318193449380" title="$:/config/ViewToolbarButtons/Visibility/$:/plugins/ajh/favorites/template">
<pre>show</pre>
</div>
<div created="20200211101733436" modified="20200211101733436" title="$:/config/ViewToolbarButtons/Visibility/$:/plugins/bimlas/locator/viewtemplate/open-in-sidebar">
<pre>hide</pre>
</div>
<div created="20190119035702680" modified="20190119035702680" title="$:/config/ViewToolbarButtons/Visibility/$:/plugins/danielo/encryptTiddler/crypt-button">
<pre>hide</pre>
</div>
<div created="20210725043725348" modified="20210725043725348" title="$:/config/ViewToolbarButtons/Visibility/$:/plugins/felixhayashi/tiddlymap/misc/quickConnectButton">
<pre>hide</pre>
</div>
<div created="20210725043622965" modified="20210725043622965" title="$:/config/ViewToolbarButtons/Visibility/$:/plugins/kookma/favorites/ui/buttons/add-remove">
<pre>hide</pre>
</div>
<div caption="Wikilabs Library (latest)" created="20200605142858499" modified="20200611162358611" tags="$:/tags/PluginLibrary" title="$:/config/wikilabs/PluginLibraryWL/latest" type="text/vnd.tiddlywiki" url="https://wikilabs.github.io/editions/pluginlibraryWL/library/latest/index.html">
<pre>~WikiLabs plugin library latest version!
</pre>
</div>
<div created="20190109055339741" modified="20200415211821838" title="$:/config/WikiParserRules/Inline/wikilink">
<pre>enable</pre>
</div>
<div author="JeremyRuston" core-version="&gt;=5.0.0" dependents="" description="TiddlyWiki5 core" list="readme" name="Core" plugin-priority="0" plugin-type="plugin" title="$:/core" type="application/json" version="5.1.24-prerelease">
<pre>{"tiddlers":{"$:/Acknowledgements":{"text":"TiddlyWiki incorporates code from these fine OpenSource projects:\n\n* [[The Stanford Javascript Crypto Library|http://bitwiseshiftleft.github.io/sjcl/]]\n* [[The Jasmine JavaScript Test Framework|http://pivotal.github.io/jasmine/]]\n* [[Normalize.css by Nicolas Gallagher|http://necolas.github.io/normalize.css/]]\n\nAnd media from these projects:\n\n* World flag icons from [[Wikipedia|http://commons.wikimedia.org/wiki/Category:SVG_flags_by_country]]\n"},"$:/core/copyright.txt":{"type":"text/plain","text":"TiddlyWiki created by Jeremy Ruston, (jeremy [at] jermolene [dot] com)\n\nCopyright (c) 2004-2007, Jeremy Ruston\nCopyright (c) 2007-2021, UnaMesa Association\nAll rights reserved.\n\nRedistribution and use in source and binary forms, with or without\nmodification, are permitted provided that the following conditions are met:\n\n* Redistributions of source code must retain the above copyright notice, this\n list of conditions and the following disclaimer.\n\n* Redistributions in binary form must reproduce the above copyright notice,\n this list of conditions and the following disclaimer in the documentation\n and/or other materials provided with the distribution.\n\n* Neither the name of the copyright holder nor the names of its\n contributors may be used to endorse or promote products derived from\n this software without specific prior written permission.\n\nTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 'AS IS'\nAND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\nIMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\nDISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE\nFOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL\nDAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR\nSERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER\nCAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,\nOR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\nOF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."},"$:/core/icon":{"tags":"$:/tags/Image","text":"&lt;svg width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\"&gt;&lt;path d=\"M64 0l54.56 32v64L64 128 9.44 96V32L64 0zm21.127 95.408c-3.578-.103-5.15-.094-6.974-3.152l-1.42.042c-1.653-.075-.964-.04-2.067-.097-1.844-.07-1.548-1.86-1.873-2.8-.52-3.202.687-6.43.65-9.632-.014-1.14-1.593-5.17-2.157-6.61-1.768.34-3.546.406-5.34.497-4.134-.01-8.24-.527-12.317-1.183-.8 3.35-3.16 8.036-1.21 11.44 2.37 3.52 4.03 4.495 6.61 4.707 2.572.212 3.16 3.18 2.53 4.242-.55.73-1.52.864-2.346 1.04l-1.65.08c-1.296-.046-2.455-.404-3.61-.955-1.93-1.097-3.925-3.383-5.406-5.024.345.658.55 1.938.24 2.53-.878 1.27-4.665 1.26-6.4.47-1.97-.89-6.73-7.162-7.468-11.86 1.96-3.78 4.812-7.07 6.255-11.186-3.146-2.05-4.83-5.384-4.61-9.16l.08-.44c-3.097.59-1.49.37-4.82.628-10.608-.032-19.935-7.37-14.68-18.774.34-.673.664-1.287 1.243-.994.466.237.4 1.18.166 2.227-3.005 13.627 11.67 13.732 20.69 11.21.89-.25 2.67-1.936 3.905-2.495 2.016-.91 4.205-1.282 6.376-1.55 5.4-.63 11.893 2.276 15.19 2.37 3.3.096 7.99-.805 10.87-.615 2.09.098 4.143.483 6.16 1.03 1.306-6.49 1.4-11.27 4.492-12.38 1.814.293 3.213 2.818 4.25 4.167 2.112-.086 4.12.46 6.115 1.066 3.61-.522 6.642-2.593 9.833-4.203-3.234 2.69-3.673 7.075-3.303 11.127.138 2.103-.444 4.386-1.164 6.54-1.348 3.507-3.95 7.204-6.97 7.014-1.14-.036-1.805-.695-2.653-1.4-.164 1.427-.81 2.7-1.434 3.96-1.44 2.797-5.203 4.03-8.687 7.016-3.484 2.985 1.114 13.65 2.23 15.594 1.114 1.94 4.226 2.652 3.02 4.406-.37.58-.936.785-1.54 1.01l-.82.11zm-40.097-8.85l.553.14c.694-.27 2.09.15 2.83.353-1.363-1.31-3.417-3.24-4.897-4.46-.485-1.47-.278-2.96-.174-4.46l.02-.123c-.582 1.205-1.322 2.376-1.72 3.645-.465 1.71 2.07 3.557 3.052 4.615l.336.3z\" fill-rule=\"evenodd\"/&gt;&lt;/svg&gt;"},"$:/core/images/add-comment":{"tags":"$:/tags/Image","text":"&lt;svg width=\"22pt\" height=\"22pt\" class=\"tc-image-add-comment tc-image-button\
</div>
<div created="20210613010715480" modified="20210613010715481" tags="$:/tags/Image" title="$:/core/images/add-comment">
<pre>&lt;svg width="22pt" height="22pt" class="tc-image-add-comment tc-image-button" viewBox="0 0 128 128"&gt;&lt;path fill-rule="evenodd" d="M56 56H36a8 8 0 100 16h20v20a8 8 0 1016 0V72h20a8 8 0 100-16H72V36a8 8 0 10-16 0v20zm-12.595 58.362c-6.683 7.659-20.297 12.903-36.006 12.903-2.196 0-4.35-.102-6.451-.3 9.652-3.836 17.356-12.24 21.01-22.874C8.516 94.28 0 79.734 0 63.5 0 33.953 28.206 10 63 10s63 23.953 63 53.5S97.794 117 63 117c-6.841 0-13.428-.926-19.595-2.638z"/&gt;&lt;/svg&gt;</pre>
</div>
<div caption="cib-facebook" collection="Brand" created="20210613065139094" creator="M0" library="CoreUI Icons" library_version="2.0.1" modified="20210831064629511" modifier="M0" tags="$:/tags/Image Icons Images SVG" title="$:/core/images/facebook">
<pre>&lt;svg width="22pt" height="22pt" class="tc-image-cui-cib-facebook tc-image-button" viewBox="0 0 32 32"&gt;&lt;path style="fill:#000000;" d="M32 16c0-8.839-7.167-16-16-16-8.839 0-16 7.161-16 16 0 7.984 5.849 14.604 13.5 15.803v-11.177h-4.063v-4.625h4.063v-3.527c0-4.009 2.385-6.223 6.041-6.223 1.751 0 3.584 0.312 3.584 0.312v3.937h-2.021c-1.984 0-2.604 1.235-2.604 2.5v3h4.437l-0.713 4.625h-3.724v11.177c7.645-1.199 13.5-7.819 13.5-15.803z"/&gt;&lt;/svg&gt;</pre>
</div>
<div caption="cib-instagram" collection="Brand" created="20210613063851924" creator="M0" library="CoreUI Icons" library_version="2.0.1" modified="20210925133128122" modifier="M0" tags="$:/tags/Image Icons Images SVG" title="$:/core/images/instagram">
<pre>&lt;svg width="22pt" height="22pt" class="tc-image-cui-cib-instagram tc-image-button" viewBox="0 0 32 32"&gt;&lt;path style="fill:#000000;" d="M16 0c-4.349 0-4.891 0.021-6.593 0.093-1.709 0.084-2.865 0.349-3.885 0.745-1.052 0.412-1.948 0.959-2.833 1.849-0.891 0.885-1.443 1.781-1.849 2.833-0.396 1.020-0.661 2.176-0.745 3.885-0.077 1.703-0.093 2.244-0.093 6.593s0.021 4.891 0.093 6.593c0.084 1.704 0.349 2.865 0.745 3.885 0.412 1.052 0.959 1.948 1.849 2.833 0.885 0.891 1.781 1.443 2.833 1.849 1.020 0.391 2.181 0.661 3.885 0.745 1.703 0.077 2.244 0.093 6.593 0.093s4.891-0.021 6.593-0.093c1.704-0.084 2.865-0.355 3.885-0.745 1.052-0.412 1.948-0.959 2.833-1.849 0.891-0.885 1.443-1.776 1.849-2.833 0.391-1.020 0.661-2.181 0.745-3.885 0.077-1.703 0.093-2.244 0.093-6.593s-0.021-4.891-0.093-6.593c-0.084-1.704-0.355-2.871-0.745-3.885-0.412-1.052-0.959-1.948-1.849-2.833-0.885-0.891-1.776-1.443-2.833-1.849-1.020-0.396-2.181-0.661-3.885-0.745-1.703-0.077-2.244-0.093-6.593-0.093zM16 2.88c4.271 0 4.781 0.021 6.469 0.093 1.557 0.073 2.405 0.333 2.968 0.553 0.751 0.291 1.276 0.635 1.844 1.197 0.557 0.557 0.901 1.088 1.192 1.839 0.22 0.563 0.48 1.411 0.553 2.968 0.072 1.688 0.093 2.199 0.093 6.469s-0.021 4.781-0.099 6.469c-0.084 1.557-0.344 2.405-0.563 2.968-0.303 0.751-0.641 1.276-1.199 1.844-0.563 0.557-1.099 0.901-1.844 1.192-0.556 0.22-1.416 0.48-2.979 0.553-1.697 0.072-2.197 0.093-6.479 0.093s-4.781-0.021-6.48-0.099c-1.557-0.084-2.416-0.344-2.979-0.563-0.76-0.303-1.281-0.641-1.839-1.199-0.563-0.563-0.921-1.099-1.197-1.844-0.224-0.556-0.48-1.416-0.563-2.979-0.057-1.677-0.084-2.197-0.084-6.459 0-4.26 0.027-4.781 0.084-6.479 0.083-1.563 0.339-2.421 0.563-2.979 0.276-0.761 0.635-1.281 1.197-1.844 0.557-0.557 1.079-0.917 1.839-1.199 0.563-0.219 1.401-0.479 2.964-0.557 1.697-0.061 2.197-0.083 6.473-0.083zM16 7.787c-4.541 0-8.213 3.677-8.213 8.213 0 4.541 3.677 8.213 8.213 8.213 4.541 0 8.213-3.677 8.213-8.213 0-4.541-3.677-8.213-8.213-8.213zM16 21.333c-2.948 0-5.333-2.385-5.333-5.333s2.385-5.333 5.333-5.333c2.948 0 5.333 2.385 5.333 5.333s-2.385 5.333-5.333 5.333zM26.464 7.459c0 1.063-0.865 1.921-1.923 1.921-1.063 0-1.921-0.859-1.921-1.921 0-1.057 0.864-1.917 1.921-1.917s1.923 0.86 1.923 1.917z"/&gt;&lt;/svg&gt;</pre>
</div>
<div caption="telegram-plane" collection="Solid" created="20210613065042962" creator="M0" library="Font Awesome" library_version="5.15.2" modified="20210925133033568" modifier="M0" tags="$:/tags/Image Icons Images SVG" title="$:/core/images/telegram">
<pre>&lt;svg width="22pt" height="22pt" class="tc-image-fa-telegram-plane tc-image-button" viewBox="0 0 448 512"&gt;&lt;path style="fill:#000000;" d="M446.7 98.6l-67.6 318.8c-5.1 22.5-18.4 28.1-37.3 17.5l-103-75.9-49.7 47.8c-5.5 5.5-10.1 10.1-20.7 10.1l7.4-104.9 190.9-172.5c8.3-7.4-1.8-11.5-12.9-4.1L117.8 284 16.2 252.2c-22.1-6.9-22.5-22.1 4.6-32.7L418.2 66.4c18.4-6.9 34.5 4.1 28.5 32.2z"/&gt;&lt;/svg&gt;</pre>
</div>
<div created="20210925043640995" modified="20210925043713338" tags="$:/tags/Image" title="$:/core/images/twitter">
<pre>&lt;svg width="22pt" height="22pt" class="tc-image-twitter tc-image-button" viewBox="0 0 128 128"&gt;&lt;path style="fill:#000000;" d="M41.626 115.803A73.376 73.376 0 012 104.235c2.022.238 4.08.36 6.166.36 12.111 0 23.258-4.117 32.105-11.023-11.312-.208-20.859-7.653-24.148-17.883a25.98 25.98 0 0011.674-.441C15.971 72.881 7.061 62.474 7.061 49.997c0-.108 0-.216.002-.323a25.824 25.824 0 0011.709 3.22c-6.936-4.617-11.5-12.5-11.5-21.433 0-4.719 1.274-9.142 3.5-12.945 12.75 15.579 31.797 25.83 53.281 26.904-.44-1.884-.67-3.85-.67-5.868 0-14.22 11.575-25.75 25.852-25.75a25.865 25.865 0 0118.869 8.132 51.892 51.892 0 0016.415-6.248c-1.93 6.012-6.029 11.059-11.366 14.246A51.844 51.844 0 00128 25.878a52.428 52.428 0 01-12.9 13.33c.05 1.104.075 2.214.075 3.33 0 34.028-26 73.265-73.549 73.265"/&gt;&lt;/svg&gt;</pre>
</div>
<div caption="social-whatsapp" collection="windows" library="svg-icon" tags="$:/tags/Image Icons Images SVG" title="$:/core/images/whatsapp">
<pre>&lt;svg class="tc-image-social-whatsapp tc-image-button" width="22pt" height="22pt" viewBox="0 0 38 38.295997619628906"&gt;&lt;path fill-rule="evenodd" d="M28.092 22.894c-.468-.256-2.766-1.496-3.196-1.671-.43-.175-.745-.267-1.08.199-.336.463-1.289 1.502-1.578 1.81-.29.307-.57.335-1.036.079-.468-.256-1.984-.817-3.741-2.506-1.368-1.315-2.266-2.91-2.526-3.397-.26-.487-.002-.736.245-.964.223-.205.498-.538.746-.807.248-.27.336-.465.506-.776.17-.313.102-.593-.008-.836-.11-.243-.975-2.621-1.336-3.59-.361-.967-.764-.823-1.042-.834-.277-.01-.594-.062-.911-.074-.318-.012-.838.088-1.292.549-.454.459-1.728 1.565-1.815 3.908-.088 2.343 1.533 4.671 1.759 4.997.226.327 3.096 5.405 7.865 7.494 4.77 2.088 4.794 1.452 5.67 1.405.875-.046 2.86-1.047 3.299-2.143.439-1.097.474-2.05.362-2.254-.112-.202-.425-.334-.891-.59zm-8.747 11.29c-3.154 0-6.092-.946-8.544-2.567l-5.968 1.91 1.94-5.767a15.447 15.447 0 0 1-2.957-9.105c0-8.564 6.966-15.53 15.529-15.53 8.563 0 15.53 6.966 15.53 15.53 0 8.563-6.967 15.53-15.53 15.53zm0-34.184C9.042 0 .69 8.352.69 18.655c0 3.525.979 6.82 2.677 9.633L0 38.296l10.329-3.306a18.577 18.577 0 0 0 9.016 2.32C29.647 37.31 38 28.957 38 18.655 38 8.352 29.647 0 19.345 0z"/&gt;&lt;/svg&gt;</pre>
</div>
<div created="20210722051847930" creator="M0" modified="20210722051900961" modifier="M0" title="$:/core/templates/server/static.tiddler.html">
<pre>\whitespace trim
\define tv-wikilink-template() $uri_encoded$
\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]
&lt;html&gt;
&lt;head&gt;
&lt;meta http-equiv="Content-Type" content="text/html;charset=utf-8" /&gt;
&lt;meta name="generator" content="TiddlyWiki" /&gt;
&lt;!--
&lt;meta name="tiddlywiki-version" content={{$:/core/templates/version}} /&gt;
--&gt;
&lt;meta name="viewport" content="width=device-width, initial-scale=1.0" /&gt;
&lt;meta name="apple-mobile-web-app-capable" content="yes" /&gt;
&lt;meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" /&gt;
&lt;meta name="mobile-web-app-capable" content="yes"/&gt;
&lt;meta name="format-detection" content="telephone=no"&gt;
&lt;link id="faviconLink" rel="shortcut icon" href="favicon.ico"&gt;
&lt;link rel="stylesheet" href="%24%3A%2Fcore%2Ftemplates%2Fstatic.template.css"&gt;
&lt;title&gt;&lt;$view field="caption" format="plainwikified"&gt;&lt;$view field="title"/&gt;&lt;/$view&gt;: &lt;$view tiddler="$:/core/wiki/title" format="plainwikified"/&gt;&lt;/title&gt;
&lt;/head&gt;
&lt;body class="tc-body"&gt;
&lt;$transclude tiddler="$:/core/templates/server/static.sidebar.wikitext" mode="inline"/&gt;
&lt;section class="tc-story-river"&gt;
&lt;div class="tc-tiddler-frame"&gt;
&lt;$transclude tiddler="$:/core/templates/server/static.tiddler.wikitext" mode="inline"/&gt;
&lt;/div&gt;
&lt;/section&gt;
&lt;/body&gt;
&lt;/html&gt;</pre>
</div>
<div caption="RTL" condition="[&lt;targetTiddler&gt;!has[type]] [&lt;targetTiddler&gt;type[text/vnd.tiddlywiki]]" created="20200321145709107" description="Toggle Right To Left" icon="$:/core/images/right-arrow" modified="20200406080146540" tags="exmp121" title="$:/core/ui/EditorToolbar/rtl">
<pre>&lt;$list filter="[&lt;targetTiddler&gt;tag[rtl]]" variable="ignore" emptyMessage="""
&lt;$action-listops $tiddler=&lt;&lt;targetTiddler&gt;&gt; $tags="rtl"/&gt;
"""&gt;
&lt;$action-listops $tiddler=&lt;&lt;targetTiddler&gt;&gt; $tags="-rtl"/&gt;
&lt;/$list&gt;</pre>
</div>
<div caption="{{$:/language/SideBar/Recent/Caption}}" created="20210917060459482" modified="20210917060501674" tags="" title="$:/core/ui/MoreSideBar/Recent">
<pre>&lt;$macrocall $name="timeline" format={{$:/language/RecentChanges/DateFormat}}/&gt;
</pre>
</div>
<div created="20210925141843406" modified="20210925142253171" tags="$:/tags/PageTemplate" title="$:/core/ui/PageTemplate/sidebar">
<pre>\whitespace trim
\define config-title()
$:/config/SideBarSegments/Visibility/$(listItem)$
\end
&lt;$scrollable fallthrough="no" class="tc-sidebar-scrollable"&gt;
&lt;div class="tc-sidebar-header"&gt;
&lt;$reveal state="$:/state/sidebar" type="match" text="yes" default="yes" retain="yes" animate="yes"&gt;
&lt;$list filter="[all[shadows+tiddlers]tag[$:/tags/SideBarSegment]!has[draft.of]sort[orden]]" variable="listItem"&gt;
&lt;$reveal type="nomatch" state=&lt;&lt;config-title&gt;&gt; text="hide" tag="div"&gt;
&lt;$transclude tiddler=&lt;&lt;listItem&gt;&gt; mode="block"/&gt;
&lt;/$reveal&gt;
&lt;/$list&gt;
&lt;/$reveal&gt;
&lt;/div&gt;
&lt;/$scrollable&gt;
</pre>
</div>
<div caption="{{$:/language/SideBar/More/Caption}}" created="20210722004646941" modified="20210722004648600" tags="" title="$:/core/ui/SideBar/More">
<pre>&lt;div class="tc-more-sidebar"&gt;
&lt;$macrocall $name="tabs" tabsList="[all[shadows+tiddlers]tag[$:/tags/MoreSideBar]!has[draft.of]]" default={{$:/config/DefaultMoreSidebarTab}} state="$:/state/tab/moresidebar" class="tc-vertical tc-sidebar-tabs-more" explicitState="$:/state/tab/moresidebar-1850697562"/&gt;
&lt;/div&gt;
</pre>
</div>
<div caption="{{$:/language/SideBar/Open/Caption}}" created="20210722044438680" creator="M0" modified="20210722044440433" modifier="M0" tags="" title="$:/core/ui/SideBar/Open">
<pre>\whitespace trim
\define lingo-base() $:/language/CloseAll/
\define drop-actions()
&lt;$action-listops $tiddler=&lt;&lt;tv-story-list&gt;&gt; $subfilter="+[insertbefore:currentTiddler&lt;actionTiddler&gt;]"/&gt;
\end
\define placeholder()
&lt;div class="tc-droppable-placeholder"/&gt;
\end
\define droppable-item(button)
\whitespace trim
&lt;$droppable actions=&lt;&lt;drop-actions&gt;&gt; enable=&lt;&lt;tv-allow-drag-and-drop&gt;&gt;&gt;
&lt;&lt;placeholder&gt;&gt;
&lt;div&gt;
$button$
&lt;/div&gt;
&lt;/$droppable&gt;
\end
&lt;div class="tc-sidebar-tab-open"&gt;
&lt;$list filter="[list&lt;tv-story-list&gt;]" history=&lt;&lt;tv-history-list&gt;&gt; storyview="pop"&gt;
&lt;div class="tc-sidebar-tab-open-item"&gt;
&lt;$macrocall $name="droppable-item" button="""&lt;$button message="tm-close-tiddler" tooltip={{$:/language/Buttons/Close/Hint}} aria-label={{$:/language/Buttons/Close/Caption}} class="tc-btn-invisible tc-btn-mini tc-small-gap-right"&gt;{{$:/core/images/close-button}}&lt;/$button&gt;&lt;$link to={{!!title}}&gt;&lt;$view field="title"/&gt;&lt;/$link&gt;"""/&gt;
&lt;/div&gt;
&lt;/$list&gt;
&lt;$tiddler tiddler=""&gt;
&lt;div&gt;
&lt;$macrocall $name="droppable-item" button="""&lt;$button message="tm-close-all-tiddlers" class="tc-btn-invisible tc-btn-mini"&gt;&lt;&lt;lingo Button&gt;&gt;&lt;/$button&gt;"""/&gt;
&lt;/div&gt;
&lt;/$tiddler&gt;
&lt;/div&gt;
</pre>
</div>
<div caption="{{$:/language/SideBar/Recent/Caption}}" created="20210925211306330" modified="20210925211309499" tags="" title="$:/core/ui/SideBar/Recent">
<pre>&lt;$macrocall $name="timeline" format={{$:/language/RecentChanges/DateFormat}}/&gt;
</pre>
</div>
<div caption="{{$:/language/SideBar/Tools/Caption}}" created="20210722004306425" modified="20210722004308313" tags="" title="$:/core/ui/SideBar/Tools">
<pre>\define lingo-base() $:/language/ControlPanel/
\define config-title()
$:/config/PageControlButtons/Visibility/$(listItem)$
\end
&lt;&lt;lingo Basics/Version/Prompt&gt;&gt; &lt;&lt;version&gt;&gt;
&lt;$set name="tv-config-toolbar-icons" value="yes"&gt;
&lt;$set name="tv-config-toolbar-text" value="yes"&gt;
&lt;$set name="tv-config-toolbar-class" value=""&gt;
&lt;$list filter="[all[shadows+tiddlers]tag[$:/tags/PageControls]!has[draft.of]]" variable="listItem"&gt;
&lt;div style="position:relative;" class={{{ [&lt;listItem&gt;encodeuricomponent[]addprefix[tc-btn-]] }}}&gt;
&lt;$checkbox tiddler=&lt;&lt;config-title&gt;&gt; field="text" checked="show" unchecked="hide" default="show"/&gt; &lt;$transclude tiddler=&lt;&lt;listItem&gt;&gt;/&gt; &lt;i class="tc-muted"&gt;&lt;$transclude tiddler=&lt;&lt;listItem&gt;&gt; field="description"/&gt;&lt;/i&gt;
&lt;/div&gt;
&lt;/$list&gt;
&lt;/$set&gt;
&lt;/$set&gt;
&lt;/$set&gt;
</pre>
</div>
<div created="20210925144012258" modified="20210925144216087" orden="00" tags="$:/tags/SideBarSegment" title="$:/core/ui/SideBarSegments/logo">
<pre>[img height=150px [copincha-logo.png]]</pre>
</div>
<div created="20210925142546726" modified="20210925142546727" orden="04" tags="$:/tags/SideBarSegment" title="$:/core/ui/SideBarSegments/page-controls">
<pre>{{||$:/core/ui/PageTemplate/pagecontrols}}
</pre>
</div>
<div created="20210925142837176" modified="20210925142837176" orden="04" tags="$:/tags/SideBarSegment" title="$:/core/ui/SideBarSegments/search">
<pre>\whitespace trim
\define count-popup-button()
\whitespace trim
&lt;$button popup=&lt;&lt;qualify "$:/state/popup/search-dropdown"&gt;&gt; class="tc-btn-invisible"&gt;
{{$:/core/images/down-arrow}}
&lt;$list filter="[{$(searchTiddler)$}minlength{$:/config/Search/MinLength}limit[1]]" variable="listItem"&gt;
&lt;$vars userInput={{{ [&lt;searchTiddler&gt;get[text]] }}} configTiddler={{{ [[$:/state/search/currentTab]!is[missing]get[text]] ~[{$:/config/SearchResults/Default}] }}} replaceRegexp="limit\[\d+\]"&gt;
&lt;$vars primaryListFilter={{{ [&lt;configTiddler&gt;get[first-search-filter]search-replace:g:regexp&lt;replaceRegexp&gt;,[]] }}} secondaryListFilter={{{ [&lt;configTiddler&gt;get[second-search-filter]search-replace:g:regexp&lt;replaceRegexp&gt;,[]] }}}&gt;
&lt;$set name="resultCount" value="""&lt;$count filter="[subfilter&lt;primaryListFilter&gt;] [subfilter&lt;secondaryListFilter&gt;]"/&gt;"""&gt;
{{$:/language/Search/Matches}}
&lt;/$set&gt;
&lt;/$vars&gt;
&lt;/$vars&gt;
&lt;/$list&gt;
&lt;/$button&gt;
\end
\define search-results-list()
\whitespace trim
&lt;$vars userInput={{$(searchTiddler)$}} configTiddler={{{ [[$:/state/search/currentTab]!is[missing]get[text]] ~[{$:/config/SearchResults/Default}] }}}&gt;
&lt;$list filter="[&lt;userInput&gt;minlength{$:/config/Search/MinLength}limit[1]]" emptyMessage="""&lt;div class="tc-search-results"&gt;{{$:/language/Search/Search/TooShort}}&lt;/div&gt;""" variable="listItem"&gt;
&lt;$tiddler tiddler=&lt;&lt;configTiddler&gt;&gt;&gt;
{{$:/core/ui/SearchResults}}
&lt;/$tiddler&gt;
&lt;/$list&gt;
&lt;/$vars&gt;
\end
\define cancel-search-actions() &lt;$list filter="[&lt;searchTiddler&gt;get[text]!match{$:/temp/search}]" emptyMessage="""&lt;$action-deletetiddler $filter="[[$:/temp/search]] [&lt;searchTiddler&gt;] [&lt;searchListState&gt;]"/&gt;"""&gt;&lt;$action-setfield $tiddler="$:/temp/search" text={{{ [&lt;searchTiddler&gt;get[text]] }}}/&gt;&lt;$action-setfield $tiddler="$:/temp/search/refresh" text="yes"/&gt;&lt;/$list&gt;
\define input-accept-actions() &lt;$list filter="[{$:/config/Search/NavigateOnEnter/enable}match[yes]]" emptyMessage="""&lt;$list filter="[&lt;__tiddler__&gt;get[text]!is[missing]] ~[&lt;__tiddler__&gt;get[text]is[shadow]]"&gt;&lt;$action-navigate $to={{{ [&lt;__tiddler__&gt;get[text]] }}}/&gt;&lt;/$list&gt;"""&gt;&lt;$action-navigate $to={{{ [&lt;__tiddler__&gt;get[text]] }}}/&gt;&lt;/$list&gt;
\define input-accept-variant-actions() &lt;$list filter="[{$:/config/Search/NavigateOnEnter/enable}match[yes]]" emptyMessage="""&lt;$list filter="[&lt;__tiddler__&gt;get[text]!is[missing]] ~[&lt;__tiddler__&gt;get[text]is[shadow]]"&gt;&lt;$list filter="[&lt;__tiddler__&gt;get[text]minlength[1]]"&gt;&lt;$action-sendmessage $message="tm-edit-tiddler" $param={{{ [&lt;__tiddler__&gt;get[text]] }}}/&gt;&lt;/$list&gt;&lt;/$list&gt;"""&gt;&lt;$list filter="[&lt;__tiddler__&gt;get[text]minlength[1]]"&gt;&lt;$action-sendmessage $message="tm-edit-tiddler" $param={{{ [&lt;__tiddler__&gt;get[text]] }}}/&gt;&lt;/$list&gt;&lt;/$list&gt;
\define set-next-input-tab(beforeafter:"after") &lt;$macrocall $name="change-input-tab" stateTitle="$:/state/tab/search-results/sidebar" tag="$:/tags/SearchResults" beforeafter="$beforeafter$" defaultState={{$:/config/SearchResults/Default}} actions="""&lt;$action-setfield $tiddler="$:/state/search/currentTab" text=&lt;&lt;nextTab&gt;&gt;/&gt;"""/&gt;
\define advanced-search-actions() &lt;$action-setfield $tiddler="$:/temp/advancedsearch" text={{$:/temp/search/input}}/&gt;&lt;$action-setfield $tiddler="$:/temp/advancedsearch/input" text={{$:/temp/search/input}}/&gt;&lt;&lt;delete-state-tiddlers&gt;&gt;&lt;$action-navigate $to="$:/AdvancedSearch"/&gt;&lt;$action-setfield $tiddler="$:/temp/advancedsearch/refresh" text="yes"/&gt;&lt;$action-sendmessage $message="tm-focus-selector" $param="""[data-tiddler-title="$:/AdvancedSearch"] .tc-search input""" preventScroll="true"/&gt;&lt;$action-deletetiddler $filter="$:/temp/search $:/temp/search/input $:/temp/search/refresh [&lt;searchListState&gt;]"/&gt;
&lt;div class="tc-sidebar-lists tc-sidebar-search"&gt;
&lt;$vars editTiddler="$:/temp/search" searchTiddler="$:/temp/search/input" searchListState=&lt;&lt;qualify "$:/state/search-list/selected-item"&gt;&gt;&gt;
&lt;div class="tc-search"&gt;
&lt;$keyboard key="((input-tab-right))" actions=&lt;&lt;set-next-input-tab&gt;&gt;&gt;
&lt;$keyboard key="((input-tab-left))" actions=&lt;&lt;set-next-input-tab "before"&gt;&gt;&gt;
&lt;$keyboard key="((advanced-search-sidebar))" actions=&lt;&lt;advanced-search-actions&gt;&gt;&gt;
&lt;$macrocall $name="keyboard-driven-input" tiddler=&lt;&lt;editTiddler&gt;&gt; storeTitle=&lt;&lt;searchTiddler&gt;&gt;
selectionStateTitle=&lt;&lt;searchListState&gt;&gt; refreshTitle="$:/temp/search/refresh" type="search"
tag="input" focus={{$:/config/Search/AutoFocus}} focusPopup=&lt;&lt;qualify "$:/state/popup/search-dropdown"&gt;&gt;
class="tc-popup-handle" filterMinLength={{$:/config/Search/MinLength}} inputCancelActions=&lt;&lt;cancel-search-actions&gt;&gt;
inputAcceptActions=&lt;&lt;input-accept-actions&gt;&gt; inputAcceptVariantActions=&lt;&lt;input-accept-variant-actions&gt;&gt; cancelPopups="yes"
configTiddlerFilter="[[$:/state/search/currentTab]!is[missing]get[text]] ~[{$:/config/SearchResults/Default}]"/&gt;
&lt;/$keyboard&gt;
&lt;/$keyboard&gt;
&lt;/$keyboard&gt;
&lt;$reveal state=&lt;&lt;searchTiddler&gt;&gt; type="nomatch" text=""&gt;
&lt;$button tooltip={{$:/language/Buttons/AdvancedSearch/Hint}} aria-label={{$:/language/Buttons/AdvancedSearch/Caption}} class="tc-btn-invisible"&gt;
&lt;&lt;advanced-search-actions&gt;&gt;
{{$:/core/images/advanced-search-button}}
&lt;/$button&gt;
&lt;$button class="tc-btn-invisible"&gt;
&lt;&lt;cancel-search-actions&gt;&gt;&lt;$action-sendmessage $message="tm-focus-selector" $param=".tc-search input"/&gt;
{{$:/core/images/close-button}}
&lt;/$button&gt;
&lt;&lt;count-popup-button&gt;&gt;
&lt;/$reveal&gt;
&lt;$reveal state=&lt;&lt;searchTiddler&gt;&gt; type="match" text=""&gt;
&lt;$button to="$:/AdvancedSearch" tooltip={{$:/language/Buttons/AdvancedSearch/Hint}} aria-label={{$:/language/Buttons/AdvancedSearch/Caption}} class="tc-btn-invisible"&gt;
{{$:/core/images/advanced-search-button}}
&lt;/$button&gt;
&lt;/$reveal&gt;
&lt;/div&gt;
&lt;$reveal tag="div" class="tc-block-dropdown-wrapper" state=&lt;&lt;searchTiddler&gt;&gt; type="nomatch" text=""&gt;
&lt;$reveal tag="div" class="tc-block-dropdown tc-search-drop-down tc-popup-handle" state=&lt;&lt;qualify "$:/state/popup/search-dropdown"&gt;&gt; type="nomatch" text="" default=""&gt;
&lt;&lt;search-results-list&gt;&gt;
&lt;/$reveal&gt;
&lt;/$reveal&gt;
&lt;/$vars&gt;
&lt;/div&gt;
</pre>
</div>
<div created="20210925143943731" modified="20210925143943731" orden="02" tags="$:/tags/SideBarSegment" title="$:/core/ui/SideBarSegments/site-subtitle">
<pre>&lt;div class="tc-site-subtitle"&gt;
&lt;$transclude tiddler="$:/SiteSubtitle" mode="inline"/&gt;
&lt;/div&gt;
</pre>
</div>
<div created="20210925142455398" modified="20210925142455398" orden="01" tags="$:/tags/SideBarSegment" title="$:/core/ui/SideBarSegments/site-title">
<pre>&lt;h1 class="tc-site-title"&gt;
&lt;$transclude tiddler="$:/SiteTitle" mode="inline"/&gt;
&lt;/h1&gt;
</pre>
</div>
<div bag="default" created="20201028152609385" modified="20210925142702588" orden="06" revision="0" tags="$:/tags/SideBarSegment rr-UI-mod rr-TW5" title="$:/core/ui/SideBarSegments/tabs" type="text/vnd.tiddlywiki">
<pre>&lt;div class="tc-sidebar-lists tc-sidebar-tabs"&gt;
&lt;&lt;tabs "sidebar/tab1 sidebar/tab2"&gt;&gt;
&lt;/div&gt;
</pre>
</div>
<div created="20200314153228277" modified="20210923205944236" tags="$:/tags/ViewTemplate" title="$:/core/ui/ViewTemplate/title">
<pre>\define title-styles()
fill:$(foregroundColor)$;
\end
\define config-title()
$:/config/ViewToolbarButtons/Visibility/$(listItem)$
\end
&lt;div class="tc-tiddler-title"&gt;
&lt;div class="tc-titlebar"&gt;
&lt;span class="tc-tiddler-controls"&gt;
&lt;$list filter="[all[shadows+tiddlers]tag[$:/tags/ViewToolbar]!has[draft.of]]" variable="listItem"&gt;&lt;$reveal type="nomatch" state=&lt;&lt;config-title&gt;&gt; text="hide"&gt;&lt;$set name="tv-config-toolbar-class" filter="[&lt;tv-config-toolbar-class&gt;] [&lt;listItem&gt;encodeuricomponent[]addprefix[tc-btn-]]"&gt;&lt;$transclude tiddler=&lt;&lt;listItem&gt;&gt;/&gt;&lt;/$set&gt;&lt;/$reveal&gt;&lt;/$list&gt;
&lt;/span&gt;
&lt;$set name="tv-wikilinks" value={{$:/config/Tiddlers/TitleLinks}}&gt;
&lt;$link&gt;
&lt;div class="tgc-tiddler-title-space"&gt;&amp;nbsp;&lt;/div&gt;
&lt;$set name="foregroundColor" value={{!!color}}&gt;
&lt;span class="tc-tiddler-title-icon" style=&lt;&lt;title-styles&gt;&gt;&gt;
&lt;$transclude tiddler={{!!icon}}/&gt;
&lt;/span&gt;
&lt;/$set&gt;
&lt;$list filter="[all[current]removeprefix[$:/]]"&gt;
&lt;h2 class="tc-title" title={{$:/language/SystemTiddler/Tooltip}}&gt;
&lt;span class="tc-system-title-prefix"&gt;$:/&lt;/span&gt;&lt;$text text=&lt;&lt;currentTiddler&gt;&gt;/&gt;
&lt;/h2&gt;
&lt;/$list&gt;
&lt;$list filter="[all[current]!prefix[$:/]]"&gt;
&lt;h2 class="tc-title"&gt;
&lt;$view field="title"/&gt;
&lt;/h2&gt;
&lt;/$list&gt;
&lt;/$link&gt;
&lt;/$set&gt;
&lt;/div&gt;
&lt;$reveal type="nomatch" text="" default="" state=&lt;&lt;tiddlerInfoState&gt;&gt; class="tc-tiddler-info tc-popup-handle" animate="yes" retain="yes"&gt;
&lt;$list filter="[all[shadows+tiddlers]tag[$:/tags/TiddlerInfoSegment]!has[draft.of]] [[$:/core/ui/TiddlerInfo]]" variable="listItem"&gt;&lt;$transclude tiddler=&lt;&lt;listItem&gt;&gt; mode="block"/&gt;&lt;/$list&gt;
&lt;/$reveal&gt;
&lt;/div&gt;</pre>
</div>
<div created="20210925143706112" modified="20210925143706112" title="$:/core/wiki/title">
<pre>{{$:/SiteTitle}}
&lt;$list filter="[{$:/SiteSubtitle}trim[]minlength[1]]" variable="ignore"&gt;
--- {{$:/SiteSubtitle}}
&lt;/$list&gt;</pre>
</div>
<div bag="default" created="20201212165857364" modified="20210923171915537" revision="0" title="$:/DefaultTiddlers" type="text/vnd.tiddlywiki">
<pre>[[Inicio]]
</pre>
</div>
<div title="$:/favicon.ico" type="image/x-icon">
<pre>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
</div>
<div created="20200321094757756" list="Tasks exmp138/demo exmp138/stylesheet Links $:/plugins/kookma/utility/macro/show-macro $:/plugins/kookma/shiraz/macros/slider $:/config/toc/admin $:/toc/adminTid viewtemplate/tagging" modified="20210426035836588" title="$:/favorites/favlist">
<pre></pre>
</div>
<div created="20180419120729037" modified="20190613052402148" revision="1" tags="$:/tags/Stylesheet" title="$:/highlight.js/theme/twdark.css" type="text/css">
<pre>/* The customised dark style for TiddlyFor syntax highlighthing
(highlight.js style)
Apr 19, 2018
Mohammad Rahmani
*/
.hljs {
display: block;
overflow-x: auto;
padding: 0.5em;
background: #2e2e2e;
color: #ffffff;
}
.hljs-comment,
.hljs-quote {
color: #C0DD0C;
font-style:normal;
}
.hljs-keyword,
.hljs-selector-tag,
.hljs-literal,
.hljs-type,
.hljs-addition {
color: #FF8000;
font-weight:normal;
}
.hljs-selector-attr,
.hljs-selector-class,
.hljs-selector-pseudo {
color: #ffffff;
}
.hljs-number{
color: #7FB347;
}
.hljs-string,
.hljs-doctag,
.hljs-regexp {
color:#FFC600; /* #8abeb7;*/
}
.hljs-title,
.hljs-name,
.hljs-section {
color: #b5bd68;
}
.hljs-built_in {
color: #66D9EF;
font-weight:normal;
}
.hljs-variable,
.hljs-template-variable,
.hljs-selector-id,
.hljs-class .hljs-title {
color: #ffcc66;
}
.hljs-section,
.hljs-name,
.hljs-strong {
font-weight: bold;
}
.hljs-symbol,
.hljs-bullet,
.hljs-subst,
.hljs-meta,
.hljs-link {
color: #f99157;
}
.hljs-deletion {
color: #dc322f;
}
.hljs-formula {
background: #eee8d5;
}
.hljs-attr,
.hljs-attribute {
color: #81a2be;
}
.hljs-emphasis {
font-style: italic;
}
/*correctio of tex tags*/
.hljs-tag {
color: #b5bd68;
}</pre>
</div>
<div created="20180419212613568" modified="20190613062109020" tags="$:/tags/Stylesheet tiddlyfor" title="$:/highlight.js/theme/zenburn-modified.css" type="text/css">
<pre>/*
Zenburn style from voldmar.ru (c) Vladimir Epifanov &lt;voldmar@voldmar.ru&gt;
based on dark.css by Ivan Sagalaev
Modified by:
Mohammad Rahmani
Apr 20, 2018
*/
.hljs {
display: block;
overflow-x: auto;
padding: 0.5em;
background: #3f3f3f;
color: #dcdcdc;
font-size: 0.90em; /* smaller font */
}
.hljs-keyword,
.hljs-selector-tag,
.hljs-tag {
color: #e3ceab;
font-weight: normal;
}
.hljs-template-tag {
color: #dcdcdc;
}
.hljs-number {
color: #8cd0d3;
}
.hljs-variable,
.hljs-template-variable,
.hljs-attribute {
color: #efdcbc;
}
.hljs-literal {
color: #efefaf;
}
.hljs-subst {
color: #8f8f8f;
}
.hljs-title,
.hljs-name,
.hljs-selector-id,
.hljs-selector-class,
.hljs-section,
.hljs-type {
color: #efef8f;
}
.hljs-symbol,
.hljs-bullet,
.hljs-link {
color: #dca3a3;
}
.hljs-deletion,
.hljs-string,
.hljs-built_in,
.hljs-builtin-name {
color: #cc9393;
}
.hljs-addition,
.hljs-comment,
.hljs-quote,
.hljs-meta {
color: #7f9f7f;
font-style:normal;
}
.hljs-emphasis {
font-style: italic;
}
.hljs-strong {
font-weight: bold;
}
</pre>
</div>
<div title="$:/isEncrypted">
<pre>no</pre>
</div>
<div created="20210426035808612" modified="20210426035808612" title="$:/keepstate/dynamictables/your-state-tid/style" type="application/json">
<pre>{
"10th March 2019": "color:#155724;background-color:#d4edda;"
}</pre>
</div>
<div created="20200420041625301" modified="20210426054147591" title="$:/keepstate/utility/toggle-view-fields">
<pre>hide</pre>
</div>
<div created="20210313001501957" modified="20210725042918095" title="$:/language">
<pre>$:/languages/es-ES</pre>
</div>
<div author="Pau DeLuca" core-version="&gt;=5.0.0" dependents="" description="Castellano. (Spain)" name="es-ES" plugin-type="language" title="$:/languages/es-ES" type="application/json" version="5.1.23">
<pre>{
"tiddlers": {
"$:/language/Buttons/AdvancedSearch/Caption": {
"title": "$:/language/Buttons/AdvancedSearch/Caption",
"text": "Búsqueda avanzada"
},
"$:/language/Buttons/AdvancedSearch/Hint": {
"title": "$:/language/Buttons/AdvancedSearch/Hint",
"text": "Búsqueda avanzada"
},
"$:/language/Buttons/Bold/Caption": {
"title": "$:/language/Buttons/Bold/Caption",
"text": "Negrita"
},
"$:/language/Buttons/Bold/Hint": {
"title": "$:/language/Buttons/Bold/Hint",
"text": "Aplicar formato de negrita a la selección"
},
"$:/language/Buttons/Cancel/Caption": {
"title": "$:/language/Buttons/Cancel/Caption",
"text": "Cancelar"
},
"$:/language/Buttons/Cancel/Hint": {
"title": "$:/language/Buttons/Cancel/Hint",
"text": "Descarta los cambios"
},
"$:/language/Buttons/Clear/Caption": {
"title": "$:/language/Buttons/Clear/Caption",
"text": "*clear"
},
"$:/language/Buttons/Clear/Hint": {
"title": "$:/language/Buttons/Clear/Hint",
"text": "*Clear image to solid colour"
},
"$:/language/Buttons/Clone/Caption": {
"title": "$:/language/Buttons/Clone/Caption",
"text": "Clonar"
},
"$:/language/Buttons/Clone/Hint": {
"title": "$:/language/Buttons/Clone/Hint",
"text": "Hace una copia exacta de este tiddler"
},
"$:/language/Buttons/Close/Caption": {
"title": "$:/language/Buttons/Close/Caption",
"text": "Cerrar"
},
"$:/language/Buttons/Close/Hint": {
"title": "$:/language/Buttons/Close/Hint",
"text": "Cierra este tiddler"
},
"$:/language/Buttons/CloseAll/Caption": {
"title": "$:/language/Buttons/CloseAll/Caption",
"text": "Cerrar todo"
},
"$:/language/Buttons/CloseAll/Hint": {
"title": "$:/language/Buttons/CloseAll/Hint",
"text": "Cierra todos los tiddlers"
},
"$:/language/Buttons/CloseOthers/Caption": {
"title": "$:/language/Buttons/CloseOthers/Caption",
"text": "Cerrar los demás"
},
"$:/language/Buttons/CloseOthers/Hint": {
"title": "$:/language/Buttons/CloseOthers/Hint",
"text": "Cierra todos tiddlers abiertos excepto este"
},
"$:/language/Buttons/ControlPanel/Caption": {
"title": "$:/language/Buttons/ControlPanel/Caption",
"text": "Panel de Control"
},
"$:/language/Buttons/ControlPanel/Hint": {
"title": "$:/language/Buttons/ControlPanel/Hint",
"text": "Abre el Panel de Control"
},
"$:/language/Buttons/Delete/Caption": {
"title": "$:/language/Buttons/Delete/Caption",
"text": "Borrar"
},
"$:/language/Buttons/Delete/Hint": {
"title": "$:/language/Buttons/Delete/Hint",
"text": "Borra este tiddler"
},
"$:/language/Buttons/Edit/Caption": {
"title": "$:/language/Buttons/Edit/Caption",
"text": "Editar"
},
"$:/language/Buttons/Edit/Hint": {
"title": "$:/language/Buttons/Edit/Hint",
"text": "Permite editar este tiddler"
},
"$:/language/Buttons/EditorHeight/Caption": {
"title": "$:/language/Buttons/EditorHeight/Caption",
"text": "Altura del editor"
},
"$:/language/Buttons/EditorHeight/Caption/Auto": {
"title": "$:/language/Buttons/EditorHeight/Caption/Auto",
"text": "Ajustar al contenido"
},
"$:/language/Buttons/EditorHeight/Caption/Fixed": {
"title": "$:/language/Buttons/EditorHeight/Caption/Fixed",
"text": "Altura fija"
},
"$:/language/Buttons/EditorHeight/Hint": {
"title": "$:/language/Buttons/EditorHeight/Hint",
"text": "Determina la altura del cuadro de edición"
},
"$:/language/Buttons/Encryption/Caption": {
"title": "$:/language/Buttons/Encryption/Caption",
"text": "Cifrado"
},
"$:/language/Buttons/Encryption/ClearPassword/Caption": {
"title": "$:/language/Buttons/Encryption/ClearPassword/Caption",
"text": "Borrar contraseña"
},
"$:/language/Buttons/Encryption/ClearPassword/Hint": {
"title": "$:/language/Buttons/Encryption/ClearPassword/Hint",
"text": "Borra la contraseña actual y guarda este wiki sin cifrar"
},
"$:/language/Buttons/Encryption/Hint": {
"title": "$:/language/Buttons/Encryption/Hint",
"text": "Asigna o revoca la contraseña de cifrado para este wiki"
},
"$:/language/Buttons/Encryption/SetPassword/Caption": {
"title": "$:/language/Buttons/Encryption/SetPassword/Caption",
"text": "Asignar contraseña"
},
"$:/language/Buttons/Encryption/SetPassword/Hint": {
"title": "$:/language/Buttons/Encryption/SetPassword/Hint",
"text": "Asigna contraseña de cifrado"
},
"$:/language/Buttons/Excise/Caption": {
"title": "$:/language/Buttons/Excise/Caption",
"text": "Escindir"
},
"$:/language/Buttons/Excise/Caption/Excise": {
"title": "$:/language/Buttons/Excise/Caption/Excise",
"text": "Escindir"
},
"$:/language/Buttons/Excise/Caption/MacroName": {
"title": "$:/language/Buttons/Excise/Caption/MacroName",
"text": "Nombre de la macro"
},
"$:/language/Buttons/Excise/Caption/NewTitle": {
"title": "$:/language/Buttons/Excise/Caption/NewTitle",
"text": "Título del nuevo tiddler"
},
"$:/language/Buttons/Excise/Caption/Replace": {
"title": "$:/language/Buttons/Excise/Caption/Replace",
"text": "Reemplazar texto escindido con:"
},
"$:/language/Buttons/Excise/Caption/Replace/Link": {
"title": "$:/language/Buttons/Excise/Caption/Replace/Link",
"text": "enlace"
},
"$:/language/Buttons/Excise/Caption/Replace/Transclusion": {
"title": "$:/language/Buttons/Excise/Caption/Replace/Transclusion",
"text": "transclusión"
},
"$:/language/Buttons/Excise/Caption/Tag": {
"title": "$:/language/Buttons/Excise/Caption/Tag",
"text": "Etiqueta el nuevo tiddler con el título de este"
},
"$:/language/Buttons/Excise/Caption/TiddlerExists": {
"title": "$:/language/Buttons/Excise/Caption/TiddlerExists",
"text": "¡Atención! El tiddler ya existe"
},
"$:/language/Buttons/Excise/Hint": {
"title": "$:/language/Buttons/Excise/Hint",
"text": "Corta el texto seleccionado y lo pega en un tiddler nuevo"
},
"$:/language/Buttons/ExportPage/Caption": {
"title": "$:/language/Buttons/ExportPage/Caption",
"text": "Exportar todos"
},
"$:/language/Buttons/ExportPage/Hint": {
"title": "$:/language/Buttons/ExportPage/Hint",
"text": "Exporta todos los tiddlers"
},
"$:/language/Buttons/ExportTiddler/Caption": {
"title": "$:/language/Buttons/ExportTiddler/Caption",
"text": "Exportar tiddler"
},
"$:/language/Buttons/ExportTiddler/Hint": {
"title": "$:/language/Buttons/ExportTiddler/Hint",
"text": "Exporta este tiddler"
},
"$:/language/Buttons/ExportTiddlers/Caption": {
"title": "$:/language/Buttons/ExportTiddlers/Caption",
"text": "Exportar tiddlers"
},
"$:/language/Buttons/ExportTiddlers/Hint": {
"title": "$:/language/Buttons/ExportTiddlers/Hint",
"text": "Exporta el grupo de tiddlers"
},
"$:/language/Buttons/Fold/Caption": {
"title": "$:/language/Buttons/Fold/Caption",
"text": "Comprimir tiddler"
},
"$:/language/Buttons/Fold/FoldBar/Caption": {
"title": "$:/language/Buttons/Fold/FoldBar/Caption",
"text": "Barra de vista comprimida"
},
"$:/language/Buttons/Fold/FoldBar/Hint": {
"title": "$:/language/Buttons/Fold/FoldBar/Hint",
"text": "Barras opcionales para comprimir y desplegar tiddlers"
},
"$:/language/Buttons/Fold/Hint": {
"title": "$:/language/Buttons/Fold/Hint",
"text": "Comprime la vista del tiddler ocultando el cuerpo y sólo muestra el título"
},
"$:/language/Buttons/FoldAll/Caption": {
"title": "$:/language/Buttons/FoldAll/Caption",
"text": "Comprimir todos"
},
"$:/language/Buttons/FoldAll/Hint": {
"title": "$:/language/Buttons/FoldAll/Hint",
"text": "Comprime la vista de todos los tiddlers abiertos"
},
"$:/language/Buttons/FoldOthers/Caption": {
"title": "$:/language/Buttons/FoldOthers/Caption",
"text": "Comprimir los demás"
},
"$:/language/Buttons/FoldOthers/Hint": {
"title": "$:/language/Buttons/FoldOthers/Hint",
"text": "Comprime la vista de todos los tiddlers abiertos excepto este"
},
"$:/language/Buttons/FullScreen/Caption": {
"title": "$:/language/Buttons/FullScreen/Caption",
"text": "Pantalla completa"
},
"$:/language/Buttons/FullScreen/Hint": {
"title": "$:/language/Buttons/FullScreen/Hint",
"text": "Entra y sale del modo de pantalla completa"
},
"$:/language/Buttons/Heading1/Caption": {
"title": "$:/language/Buttons/Heading1/Caption",
"text": "Encabezamiento 1"
},
"$:/language/Buttons/Heading1/Hint": {
"title": "$:/language/Buttons/Heading1/Hint",
"text": "Aplica formato de encabezamiento 1 a la selección"
},
"$:/language/Buttons/Heading2/Caption": {
"title": "$:/language/Buttons/Heading2/Caption",
"text": "Encabezamiento 2"
},
"$:/language/Buttons/Heading2/Hint": {
"title": "$:/language/Buttons/Heading2/Hint",
"text": "Aplica formato de encabezamiento 2 a la selección"
},
"$:/language/Buttons/Heading3/Caption": {
"title": "$:/language/Buttons/Heading3/Caption",
"text": "Encabezamiento 3"
},
"$:/language/Buttons/Heading3/Hint": {
"title": "$:/language/Buttons/Heading3/Hint",
"text": "Aplica formato de encabezamiento 3 a la selección"
},
"$:/language/Buttons/Heading4/Caption": {
"title": "$:/language/Buttons/Heading4/Caption",
"text": "Encabezamiento 4"
},
"$:/language/Buttons/Heading4/Hint": {
"title": "$:/language/Buttons/Heading4/Hint",
"text": "Aplica formato de encabezamiento 4 a la selección"
},
"$:/language/Buttons/Heading5/Caption": {
"title": "$:/language/Buttons/Heading5/Caption",
"text": "Encabezamiento 5"
},
"$:/language/Buttons/Heading5/Hint": {
"title": "$:/language/Buttons/Heading5/Hint",
"text": "Aplica formato de encabezamiento 5 a la selección"
},
"$:/language/Buttons/Heading6/Caption": {
"title": "$:/language/Buttons/Heading6/Caption",
"text": "Encabezamiento 6"
},
"$:/language/Buttons/Heading6/Hint": {
"title": "$:/language/Buttons/Heading6/Hint",
"text": "Aplica formato de encabezamiento 6 a la selección"
},
"$:/language/Buttons/Help/Caption": {
"title": "$:/language/Buttons/Help/Caption",
"text": "Ayuda"
},
"$:/language/Buttons/Help/Hint": {
"title": "$:/language/Buttons/Help/Hint",
"text": "Muestra el panel de ayuda"
},
"$:/language/Buttons/HideSideBar/Caption": {
"title": "$:/language/Buttons/HideSideBar/Caption",
"text": "Ocultar barra lateral"
},
"$:/language/Buttons/HideSideBar/Hint": {
"title": "$:/language/Buttons/HideSideBar/Hint",
"text": "Oculta la barra lateral"
},
"$:/language/Buttons/Home/Caption": {
"title": "$:/language/Buttons/Home/Caption",
"text": "Inicio"
},
"$:/language/Buttons/Home/Hint": {
"title": "$:/language/Buttons/Home/Hint",
"text": "Cierra todos los tiddlers abiertos y abre los que se muestran por defecto al inicio"
},
"$:/language/Buttons/Import/Caption": {
"title": "$:/language/Buttons/Import/Caption",
"text": "Importar"
},
"$:/language/Buttons/Import/Hint": {
"title": "$:/language/Buttons/Import/Hint",
"text": "Importa multitud de tipos de archivo, incluyendo textos, imágenes, TiddlyWiki y JSON"
},
"$:/language/Buttons/Info/Caption": {
"title": "$:/language/Buttons/Info/Caption",
"text": "Información"
},
"$:/language/Buttons/Info/Hint": {
"title": "$:/language/Buttons/Info/Hint",
"text": "Muestra información sobre este tiddler"
},
"$:/language/Buttons/Italic/Caption": {
"title": "$:/language/Buttons/Italic/Caption",
"text": "Cursiva"
},
"$:/language/Buttons/Italic/Hint": {
"title": "$:/language/Buttons/Italic/Hint",
"text": "Aplica formato de cursiva a la selección"
},
"$:/language/Buttons/Language/Caption": {
"title": "$:/language/Buttons/Language/Caption",
"text": "Idioma"
},
"$:/language/Buttons/Language/Hint": {
"title": "$:/language/Buttons/Language/Hint",
"text": "Selecciona idioma de la interfaz de usuario"
},
"$:/language/Buttons/LineWidth/Caption": {
"title": "$:/language/Buttons/LineWidth/Caption",
"text": "Ancho del trazo"
},
"$:/language/Buttons/LineWidth/Hint": {
"title": "$:/language/Buttons/LineWidth/Hint",
"text": "Establece el ancho del trazo para pintar"
},
"$:/language/Buttons/ListBullet/Caption": {
"title": "$:/language/Buttons/ListBullet/Caption",
"text": "Lista con viñetas"
},
"$:/language/Buttons/ListBullet/Hint": {
"title": "$:/language/Buttons/ListBullet/Hint",
"text": "Aplica formato de lista con viñetas a la selección"
},
"$:/language/Buttons/ListNumber/Caption": {
"title": "$:/language/Buttons/ListNumber/Caption",
"text": "Lista numerada"
},
"$:/language/Buttons/ListNumber/Hint": {
"title": "$:/language/Buttons/ListNumber/Hint",
"text": "Aplica formato de lista numerada a la selección"
},
"$:/language/Buttons/MonoBlock/Caption": {
"title": "$:/language/Buttons/MonoBlock/Caption",
"text": "Bloque monoespaciado"
},
"$:/language/Buttons/MonoBlock/Hint": {
"title": "$:/language/Buttons/MonoBlock/Hint",
"text": "Aplica formato de bloque monoespaciado a la selección"
},
"$:/language/Buttons/MonoLine/Caption": {
"title": "$:/language/Buttons/MonoLine/Caption",
"text": "Monoespacio"
},
"$:/language/Buttons/MonoLine/Hint": {
"title": "$:/language/Buttons/MonoLine/Hint",
"text": "Aplica formato de monoespacio a la selección"
},
"$:/language/Buttons/More/Caption": {
"title": "$:/language/Buttons/More/Caption",
"text": "Más"
},
"$:/language/Buttons/More/Hint": {
"title": "$:/language/Buttons/More/Hint",
"text": "Otras acciones"
},
"$:/language/Buttons/NewHere/Caption": {
"title": "$:/language/Buttons/NewHere/Caption",
"text": "Nuevo aquí"
},
"$:/language/Buttons/NewHere/Hint": {
"title": "$:/language/Buttons/NewHere/Hint",
"text": "Crea un nuevo tiddler etiquetado con el título de este tiddler"
},
"$:/language/Buttons/NewImage/Caption": {
"title": "$:/language/Buttons/NewImage/Caption",
"text": "Nueva imagen"
},
"$:/language/Buttons/NewImage/Hint": {
"title": "$:/language/Buttons/NewImage/Hint",
"text": "Crea un nuevo tiddler de imagen"
},
"$:/language/Buttons/NewJournal/Caption": {
"title": "$:/language/Buttons/NewJournal/Caption",
"text": "Nueva entrada"
},
"$:/language/Buttons/NewJournal/Hint": {
"title": "$:/language/Buttons/NewJournal/Hint",
"text": "Crea una nueva entrada de diario"
},
"$:/language/Buttons/NewJournalHere/Caption": {
"title": "$:/language/Buttons/NewJournalHere/Caption",
"text": "Entrada nueva aquí"
},
"$:/language/Buttons/NewJournalHere/Hint": {
"title": "$:/language/Buttons/NewJournalHere/Hint",
"text": "Crea una nueva entrada de diario etiquetada con el título de este tiddler"
},
"$:/language/Buttons/NewMarkdown/Caption": {
"title": "$:/language/Buttons/NewMarkdown/Caption",
"text": "Nuevo tiddler en Markdown"
},
"$:/language/Buttons/NewMarkdown/Hint": {
"title": "$:/language/Buttons/NewMarkdown/Hint",
"text": "Crea un nuevo tiddler en Markdown"
},
"$:/language/Buttons/NewTiddler/Caption": {
"title": "$:/language/Buttons/NewTiddler/Caption",
"text": "Nuevo tiddler"
},
"$:/language/Buttons/NewTiddler/Hint": {
"title": "$:/language/Buttons/NewTiddler/Hint",
"text": "Crea un tiddler nuevo"
},
"$:/language/Buttons/OpenWindow/Caption": {
"title": "$:/language/Buttons/OpenWindow/Caption",
"text": "Abrir en ventana nueva"
},
"$:/language/Buttons/OpenWindow/Hint": {
"title": "$:/language/Buttons/OpenWindow/Hint",
"text": "Abre el tiddler en una nueva ventana"
},
"$:/language/Buttons/Opacity/Caption": {
"title": "$:/language/Buttons/Opacity/Caption",
"text": "Opacidad"
},
"$:/language/Buttons/Opacity/Hint": {
"title": "$:/language/Buttons/Opacity/Hint",
"text": "Establece la opacidad del trazo"
},
"$:/language/Buttons/Paint/Caption": {
"title": "$:/language/Buttons/Paint/Caption",
"text": "Color del trazo"
},
"$:/language/Buttons/Paint/Hint": {
"title": "$:/language/Buttons/Paint/Hint",
"text": "Establece el color del trazo"
},
"$:/language/Buttons/Palette/Caption": {
"title": "$:/language/Buttons/Palette/Caption",
"text": "Paleta"
},
"$:/language/Buttons/Palette/Hint": {
"title": "$:/language/Buttons/Palette/Hint",
"text": "Selecciona la paleta de color"
},
"$:/language/Buttons/Permalink/Caption": {
"title": "$:/language/Buttons/Permalink/Caption",
"text": "Permalink"
},
"$:/language/Buttons/Permalink/Hint": {
"title": "$:/language/Buttons/Permalink/Hint",
"text": "Crea en la barra de direcciones del navegador un enlace directo a este tiddler"
},
"$:/language/Buttons/Permaview/Caption": {
"title": "$:/language/Buttons/Permaview/Caption",
"text": "Permaview"
},
"$:/language/Buttons/Permaview/Hint": {
"title": "$:/language/Buttons/Permaview/Hint",
"text": "Crea en la barra de direcciones del navegador un enlace directo a todos los tiddlers abiertos"
},
"$:/language/Buttons/Picture/Caption": {
"title": "$:/language/Buttons/Picture/Caption",
"text": "Imagen"
},
"$:/language/Buttons/Picture/Hint": {
"title": "$:/language/Buttons/Picture/Hint",
"text": "Inserta imagen"
},
"$:/language/Buttons/Preview/Caption": {
"title": "$:/language/Buttons/Preview/Caption",
"text": "Vista previa"
},
"$:/language/Buttons/Preview/Hint": {
"title": "$:/language/Buttons/Preview/Hint",
"text": "Muestra el panel de vista previa"
},
"$:/language/Buttons/PreviewType/Caption": {
"title": "$:/language/Buttons/PreviewType/Caption",
"text": "Tipo de vista previa"
},
"$:/language/Buttons/PreviewType/Hint": {
"title": "$:/language/Buttons/PreviewType/Hint",
"text": "Selecciona el tipo de vista previa"
},
"$:/language/Buttons/Quote/Caption": {
"title": "$:/language/Buttons/Quote/Caption",
"text": "Bloque de cita"
},
"$:/language/Buttons/Quote/Hint": {
"title": "$:/language/Buttons/Quote/Hint",
"text": "Aplica formato de bloque de cita a la selección"
},
"$:/language/Buttons/Refresh/Caption": {
"title": "$:/language/Buttons/Refresh/Caption",
"text": "Recargar"
},
"$:/language/Buttons/Refresh/Hint": {
"title": "$:/language/Buttons/Refresh/Hint",
"text": "Actualiza completamente este wiki"
},
"$:/language/Buttons/Save/Caption": {
"title": "$:/language/Buttons/Save/Caption",
"text": "Ok"
},
"$:/language/Buttons/Save/Hint": {
"title": "$:/language/Buttons/Save/Hint",
"text": "Confirma y guarda los cambios realizados en el tiddler"
},
"$:/language/Buttons/SaveWiki/Caption": {
"title": "$:/language/Buttons/SaveWiki/Caption",
"text": "Guardar cambios"
},
"$:/language/Buttons/SaveWiki/Hint": {
"title": "$:/language/Buttons/SaveWiki/Hint",
"text": "Confirma y guarda todos los cambios realizados en el wiki"
},
"$:/language/Buttons/ShowSideBar/Caption": {
"title": "$:/language/Buttons/ShowSideBar/Caption",
"text": "Mostrar barra lateral"
},
"$:/language/Buttons/ShowSideBar/Hint": {
"title": "$:/language/Buttons/ShowSideBar/Hint",
"text": "Muestra la barra lateral"
},
"$:/language/Buttons/Size/Caption": {
"title": "$:/language/Buttons/Size/Caption",
"text": "Tamaño de imagen"
},
"$:/language/Buttons/Size/Caption/Height": {
"title": "$:/language/Buttons/Size/Caption/Height",
"text": "Altura:"
},
"$:/language/Buttons/Size/Caption/Resize": {
"title": "$:/language/Buttons/Size/Caption/Resize",
"text": "Cambiar tamaño"
},
"$:/language/Buttons/Size/Caption/Width": {
"title": "$:/language/Buttons/Size/Caption/Width",
"text": "Ancho:"
},
"$:/language/Buttons/Size/Hint": {
"title": "$:/language/Buttons/Size/Hint",
"text": "Establece tamaño de la imagen"
},
"$:/language/Buttons/Stamp/Caption": {
"title": "$:/language/Buttons/Stamp/Caption",
"text": "Snippet"
},
"$:/language/Buttons/Stamp/Caption/New": {
"title": "$:/language/Buttons/Stamp/Caption/New",
"text": "Añade el tuyo propio"
},
"$:/language/Buttons/Stamp/Hint": {
"title": "$:/language/Buttons/Stamp/Hint",
"text": "Inserta un snippet o fragmento de texto preconfigurado"
},
"$:/language/Buttons/Stamp/New/Text": {
"title": "$:/language/Buttons/Stamp/New/Text",
"text": "Texto del snippet (Recuerda añadir un título descriptivo en el campo \"caption\" )."
},
"$:/language/Buttons/Stamp/New/Title": {
"title": "$:/language/Buttons/Stamp/New/Title",
"text": "Nombre para mostrar en el menú"
},
"$:/language/Buttons/StoryView/Caption": {
"title": "$:/language/Buttons/StoryView/Caption",
"text": "Vista"
},
"$:/language/Buttons/StoryView/Hint": {
"title": "$:/language/Buttons/StoryView/Hint",
"text": "Selecciona el modo de visualización de los tiddlers"
},
"$:/language/Buttons/Strikethrough/Caption": {
"title": "$:/language/Buttons/Strikethrough/Caption",
"text": "Tachado"
},
"$:/language/Buttons/Strikethrough/Hint": {
"title": "$:/language/Buttons/Strikethrough/Hint",
"text": "Aplica formado de tachado a la selección"
},
"$:/language/Buttons/Subscript/Caption": {
"title": "$:/language/Buttons/Subscript/Caption",
"text": "Subíndice"
},
"$:/language/Buttons/Subscript/Hint": {
"title": "$:/language/Buttons/Subscript/Hint",
"text": "Aplica formato de subíndice a la selección"
},
"$:/language/Buttons/Superscript/Caption": {
"title": "$:/language/Buttons/Superscript/Caption",
"text": "Superíndice"
},
"$:/language/Buttons/Superscript/Hint": {
"title": "$:/language/Buttons/Superscript/Hint",
"text": "Aplica formato de superíndice a la selección"
},
"$:/language/Buttons/TagManager/Caption": {
"title": "$:/language/Buttons/TagManager/Caption",
"text": "Administrador de etiquetas"
},
"$:/language/Buttons/TagManager/Hint": {
"title": "$:/language/Buttons/TagManager/Hint",
"text": "Abre el gestor de etiquetas"
},
"$:/language/Buttons/Theme/Caption": {
"title": "$:/language/Buttons/Theme/Caption",
"text": "Tema"
},
"$:/language/Buttons/Theme/Hint": {
"title": "$:/language/Buttons/Theme/Hint",
"text": "Selecciona un estilo visual para el wiki"
},
"$:/language/Buttons/Underline/Caption": {
"title": "$:/language/Buttons/Underline/Caption",
"text": "Subrayado"
},
"$:/language/Buttons/Underline/Hint": {
"title": "$:/language/Buttons/Underline/Hint",
"text": "Aplica formato de subrayado a la selección"
},
"$:/language/Buttons/Unfold/Caption": {
"title": "$:/language/Buttons/Unfold/Caption",
"text": "Desplegar tiddler"
},
"$:/language/Buttons/Unfold/Hint": {
"title": "$:/language/Buttons/Unfold/Hint",
"text": "Despliega el cuerpo de este tiddler y muestra su contenido"
},
"$:/language/Buttons/UnfoldAll/Caption": {
"title": "$:/language/Buttons/UnfoldAll/Caption",
"text": "Desplegar todos"
},
"$:/language/Buttons/UnfoldAll/Hint": {
"title": "$:/language/Buttons/UnfoldAll/Hint",
"text": "Despliega y muestra el contenido de todos los tiddlers abiertos"
},
"$:/language/ControlPanel/Advanced/Caption": {
"title": "$:/language/ControlPanel/Advanced/Caption",
"text": "Avanzado"
},
"$:/language/ControlPanel/Advanced/Hint": {
"title": "$:/language/ControlPanel/Advanced/Hint",
"text": "Información interna de TiddlyWiki"
},
"$:/language/ControlPanel/Appearance/Caption": {
"title": "$:/language/ControlPanel/Appearance/Caption",
"text": "Aspecto"
},
"$:/language/ControlPanel/Appearance/Hint": {
"title": "$:/language/ControlPanel/Appearance/Hint",
"text": "Personaliza la apariencia de TiddlyWiki"
},
"$:/language/ControlPanel/Basics/AnimDuration/Prompt": {
"title": "$:/language/ControlPanel/Basics/AnimDuration/Prompt",
"text": "Duración de la animación"
},
"$:/language/ControlPanel/Basics/Caption": {
"title": "$:/language/ControlPanel/Basics/Caption",
"text": "Básico"
},
"$:/language/ControlPanel/Basics/DefaultTiddlers/BottomHint": {
"title": "$:/language/ControlPanel/Basics/DefaultTiddlers/BottomHint",
"text": "Usa &amp;#91;&amp;#91;corchetes dobles&amp;#93;&amp;#93; para títulos con espacios. También puedes mostrarlos ordenados &lt;$button set=\"$:/DefaultTiddlers\" setTo=\"[list[$:/StoryList]]\"&gt;de más reciente a más antiguo&lt;/$button&gt;"
},
"$:/language/ControlPanel/Basics/DefaultTiddlers/Prompt": {
"title": "$:/language/ControlPanel/Basics/DefaultTiddlers/Prompt",
"text": "Tiddlers por defecto"
},
"$:/language/ControlPanel/Basics/DefaultTiddlers/TopHint": {
"title": "$:/language/ControlPanel/Basics/DefaultTiddlers/TopHint",
"text": "Escoge qué tiddlers se muestran al inicio"
},
"$:/language/ControlPanel/Basics/Language/Prompt": {
"title": "$:/language/ControlPanel/Basics/Language/Prompt",
"text": "¡Hola! Selecciona idioma actual"
},
"$:/language/ControlPanel/Basics/NewJournal/Tags/Prompt": {
"title": "$:/language/ControlPanel/Basics/NewJournal/Tags/Prompt",
"text": "Etiqueta para las nuevas entradas de diario"
},
"$:/language/ControlPanel/Basics/NewJournal/Title/Prompt": {
"title": "$:/language/ControlPanel/Basics/NewJournal/Title/Prompt",
"text": "Formato de título para las nuevas entradas de diario"
},
"$:/language/ControlPanel/Basics/OverriddenShadowTiddlers/Prompt": {
"title": "$:/language/ControlPanel/Basics/OverriddenShadowTiddlers/Prompt",
"text": "Número de tiddlers ocultos anulados"
},
"$:/language/ControlPanel/Basics/ShadowTiddlers/Prompt": {
"title": "$:/language/ControlPanel/Basics/ShadowTiddlers/Prompt",
"text": "Número de tiddlers ocultos"
},
"$:/language/ControlPanel/Basics/Subtitle/Prompt": {
"title": "$:/language/ControlPanel/Basics/Subtitle/Prompt",
"text": "Subtítulo"
},
"$:/language/ControlPanel/Basics/SystemTiddlers/Prompt": {
"title": "$:/language/ControlPanel/Basics/SystemTiddlers/Prompt",
"text": "Número de tiddlers de sistema"
},
"$:/language/ControlPanel/Basics/Tags/Prompt": {
"title": "$:/language/ControlPanel/Basics/Tags/Prompt",
"text": "Número de etiquetas"
},
"$:/language/ControlPanel/Basics/Tiddlers/Prompt": {
"title": "$:/language/ControlPanel/Basics/Tiddlers/Prompt",
"text": "Número de tiddlers"
},
"$:/language/ControlPanel/Basics/Title/Prompt": {
"title": "$:/language/ControlPanel/Basics/Title/Prompt",
"text": "Título de este ~TiddlyWiki:"
},
"$:/language/ControlPanel/Basics/Username/Prompt": {
"title": "$:/language/ControlPanel/Basics/Username/Prompt",
"text": "Nombre de usuario"
},
"$:/language/ControlPanel/Basics/Version/Prompt": {
"title": "$:/language/ControlPanel/Basics/Version/Prompt",
"text": "Versión de ~TiddlyWiki"
},
"$:/language/ControlPanel/EditorTypes/Caption": {
"title": "$:/language/ControlPanel/EditorTypes/Caption",
"text": "Tipos de editor"
},
"$:/language/ControlPanel/EditorTypes/Editor/Caption": {
"title": "$:/language/ControlPanel/EditorTypes/Editor/Caption",
"text": "Editor"
},
"$:/language/ControlPanel/EditorTypes/Hint": {
"title": "$:/language/ControlPanel/EditorTypes/Hint",
"text": "Editores usados para ciertos tipos específicos de tiddler"
},
"$:/language/ControlPanel/EditorTypes/Type/Caption": {
"title": "$:/language/ControlPanel/EditorTypes/Type/Caption",
"text": "Tipo"
},
"$:/language/ControlPanel/Info/Caption": {
"title": "$:/language/ControlPanel/Info/Caption",
"text": "Información"
},
"$:/language/ControlPanel/Info/Hint": {
"title": "$:/language/ControlPanel/Info/Hint",
"text": "Información acerca de este TiddlyWiki"
},
"$:/language/ControlPanel/KeyboardShortcuts/Add/Caption": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Add/Caption",
"text": "Añadir atajo"
},
"$:/language/ControlPanel/KeyboardShortcuts/Add/Prompt": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Add/Prompt",
"text": "Escribe el atajo"
},
"$:/language/ControlPanel/KeyboardShortcuts/Caption": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Caption",
"text": "Atajos de teclado"
},
"$:/language/ControlPanel/KeyboardShortcuts/Hint": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Hint",
"text": "Administra la asignación de atajos de teclado"
},
"$:/language/ControlPanel/KeyboardShortcuts/NoShortcuts/Caption": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/NoShortcuts/Caption",
"text": "No hay atajo asignado"
},
"$:/language/ControlPanel/KeyboardShortcuts/Platform/All": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/All",
"text": "Cualquier plataforma"
},
"$:/language/ControlPanel/KeyboardShortcuts/Platform/Linux": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/Linux",
"text": "Sólo Linux"
},
"$:/language/ControlPanel/KeyboardShortcuts/Platform/Mac": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/Mac",
"text": "Sólo Macintosh"
},
"$:/language/ControlPanel/KeyboardShortcuts/Platform/NonLinux": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/NonLinux",
"text": "Todas menos Linux"
},
"$:/language/ControlPanel/KeyboardShortcuts/Platform/NonMac": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/NonMac",
"text": "Todas menos Macintosh"
},
"$:/language/ControlPanel/KeyboardShortcuts/Platform/NonWindows": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/NonWindows",
"text": "Todas menos Windows"
},
"$:/language/ControlPanel/KeyboardShortcuts/Platform/Windows": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/Windows",
"text": "Sólo windows"
},
"$:/language/ControlPanel/KeyboardShortcuts/Remove/Hint": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Remove/Hint",
"text": "Eliminar atajo"
},
"$:/language/ControlPanel/LoadedModules/Caption": {
"title": "$:/language/ControlPanel/LoadedModules/Caption",
"text": "Módulos cargados"
},
"$:/language/ControlPanel/LoadedModules/Hint": {
"title": "$:/language/ControlPanel/LoadedModules/Hint",
"text": "Modulos cargados en este momento, enlazados con sus tiddlers de origen. Los módulos en itálica carecen de origen, debido normalmente a que se configuraron durante el inicio."
},
"$:/language/ControlPanel/Palette/Caption": {
"title": "$:/language/ControlPanel/Palette/Caption",
"text": "Paleta"
},
"$:/language/ControlPanel/Palette/Editor/Clone/Caption": {
"title": "$:/language/ControlPanel/Palette/Editor/Clone/Caption",
"text": "Clonar"
},
"$:/language/ControlPanel/Palette/Editor/Clone/Prompt": {
"title": "$:/language/ControlPanel/Palette/Editor/Clone/Prompt",
"text": "Se recomienda clonar esta paleta antes de editarla."
},
"$:/language/ControlPanel/Palette/Editor/Prompt": {
"title": "$:/language/ControlPanel/Palette/Editor/Prompt",
"text": "Editando"
},
"$:/language/ControlPanel/Palette/Editor/Prompt/Modified": {
"title": "$:/language/ControlPanel/Palette/Editor/Prompt/Modified",
"text": "Si te has perdido, no desesperes"
},
"$:/language/ControlPanel/Palette/Editor/Reset/Caption": {
"title": "$:/language/ControlPanel/Palette/Editor/Reset/Caption",
"text": "Restaura la paleta"
},
"$:/language/ControlPanel/Palette/HideEditor/Caption": {
"title": "$:/language/ControlPanel/Palette/HideEditor/Caption",
"text": "Cerrar el editor"
},
"$:/language/ControlPanel/Palette/Prompt": {
"title": "$:/language/ControlPanel/Palette/Prompt",
"text": "Paleta actual"
},
"$:/language/ControlPanel/Palette/ShowEditor/Caption": {
"title": "$:/language/ControlPanel/Palette/ShowEditor/Caption",
"text": "Abrir el editor"
},
"$:/language/ControlPanel/Parsing/Block/Caption": {
"title": "$:/language/ControlPanel/Parsing/Block/Caption",
"text": "Bloquear reglas sintácticas"
},
"$:/language/ControlPanel/Parsing/Caption": {
"title": "$:/language/ControlPanel/Parsing/Caption",
"text": "Interpretación sintáctica"
},
"$:/language/ControlPanel/Parsing/Hint": {
"title": "$:/language/ControlPanel/Parsing/Hint",
"text": "Aquí se pueden deshabilitar globalmente reglas de interpretación sintáctica del wiki. Ten cuidado: deshabilitar ciertas reglas puede hacer que ~TiddlyWiki deje de funcionar correctamente."
},
"$:/language/ControlPanel/En tal caso, puedes recuperar su normal funcionamiento en [[modo seguro|https": {
"title": "$:/language/ControlPanel/En tal caso, puedes recuperar su normal funcionamiento en [[modo seguro|https",
"text": "/tiddlywiki.com/#SafeMode]]."
},
"$:/language/ControlPanel/Parsing/Inline/Caption": {
"title": "$:/language/ControlPanel/Parsing/Inline/Caption",
"text": "Reglas sintácticas de texto"
},
"$:/language/ControlPanel/Parsing/Pragma/Caption": {
"title": "$:/language/ControlPanel/Parsing/Pragma/Caption",
"text": "Reglas sintácticas del compilador"
},
"$:/language/ControlPanel/Plugins/Add/Caption": {
"title": "$:/language/ControlPanel/Plugins/Add/Caption",
"text": "Obten complementos y extensiones"
},
"$:/language/ControlPanel/Plugins/Add/Hint": {
"title": "$:/language/ControlPanel/Plugins/Add/Hint",
"text": "Instala plugins desde la librería oficial"
},
"$:/language/ControlPanel/Plugins/Caption": {
"title": "$:/language/ControlPanel/Plugins/Caption",
"text": "Plugins"
},
"$:/language/ControlPanel/Plugins/Disable/Caption": {
"title": "$:/language/ControlPanel/Plugins/Disable/Caption",
"text": "Desactivar"
},
"$:/language/ControlPanel/Plugins/Disable/Hint": {
"title": "$:/language/ControlPanel/Plugins/Disable/Hint",
"text": "Desactiva el plugin al actualizar la página"
},
"$:/language/ControlPanel/Plugins/Disabled/Status": {
"title": "$:/language/ControlPanel/Plugins/Disabled/Status",
"text": "(Desactivado)"
},
"$:/language/ControlPanel/Plugins/Empty/Hint": {
"title": "$:/language/ControlPanel/Plugins/Empty/Hint",
"text": "No se han instalado"
},
"$:/language/ControlPanel/Plugins/Enable/Caption": {
"title": "$:/language/ControlPanel/Plugins/Enable/Caption",
"text": "Activar"
},
"$:/language/ControlPanel/Plugins/Enable/Hint": {
"title": "$:/language/ControlPanel/Plugins/Enable/Hint",
"text": "Activa este plugin al actualizar la página"
},
"$:/language/ControlPanel/Plugins/Install/Caption": {
"title": "$:/language/ControlPanel/Plugins/Install/Caption",
"text": "Instalar"
},
"$:/language/ControlPanel/Plugins/Installed/Hint": {
"title": "$:/language/ControlPanel/Plugins/Installed/Hint",
"text": "Plugins instalados actualmente"
},
"$:/language/ControlPanel/Plugins/Language/Prompt": {
"title": "$:/language/ControlPanel/Plugins/Language/Prompt",
"text": "Idiomas"
},
"$:/language/ControlPanel/Plugins/Languages/Caption": {
"title": "$:/language/ControlPanel/Plugins/Languages/Caption",
"text": "Idiomas"
},
"$:/language/ControlPanel/Plugins/Languages/Hint": {
"title": "$:/language/ControlPanel/Plugins/Languages/Hint",
"text": "Extensiones de idioma"
},
"$:/language/ControlPanel/Plugins/OpenPluginLibrary": {
"title": "$:/language/ControlPanel/Plugins/OpenPluginLibrary",
"text": "Abrir biblioteca de complementos y extensiones"
},
"$:/language/ControlPanel/Plugins/Plugin/Prompt": {
"title": "$:/language/ControlPanel/Plugins/Plugin/Prompt",
"text": "Plugins"
},
"$:/language/ControlPanel/Plugins/Plugins/Caption": {
"title": "$:/language/ControlPanel/Plugins/Plugins/Caption",
"text": "Plugins"
},
"$:/language/ControlPanel/Plugins/Plugins/Hint": {
"title": "$:/language/ControlPanel/Plugins/Plugins/Hint",
"text": "Complementos y extensiones"
},
"$:/language/ControlPanel/Plugins/Reinstall/Caption": {
"title": "$:/language/ControlPanel/Plugins/Reinstall/Caption",
"text": "Reinstalar"
},
"$:/language/ControlPanel/Plugins/Theme/Prompt": {
"title": "$:/language/ControlPanel/Plugins/Theme/Prompt",
"text": "Temas"
},
"$:/language/ControlPanel/Plugins/Themes/Caption": {
"title": "$:/language/ControlPanel/Plugins/Themes/Caption",
"text": "Temas"
},
"$:/language/ControlPanel/Plugins/Themes/Hint": {
"title": "$:/language/ControlPanel/Plugins/Themes/Hint",
"text": "Extensiones de tema"
},
"$:/language/ControlPanel/Saving/Caption": {
"title": "$:/language/ControlPanel/Saving/Caption",
"text": "Servidor"
},
"$:/language/ControlPanel/Saving/Heading": {
"title": "$:/language/ControlPanel/Saving/Heading",
"text": "Servidor"
},
"$:/language/ControlPanel/Saving/TiddlySpot/Advanced/Heading": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/Advanced/Heading",
"text": "Configuración Avanzada"
},
"$:/language/ControlPanel/Saving/TiddlySpot/BackupDir": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/BackupDir",
"text": "Directorio de copias de seguridad"
},
"$:/language/ControlPanel/Saving/TiddlySpot/Backups": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/Backups",
"text": "Copias de seguridad"
},
"$:/language/ControlPanel/Saving/TiddlySpot/Description": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/Description",
"text": "Esta configuración sólo se usa para guardar el wiki en http://tiddlyspot.com o en otro servidor compatible"
},
"$:/language/ControlPanel/Saving/TiddlySpot/Filename": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/Filename",
"text": "Nombre del archivo"
},
"$:/language/ControlPanel/Saving/TiddlySpot/Heading": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/Heading",
"text": "~TiddlySpot"
},
"$:/language/ControlPanel/Saving/TiddlySpot/Hint": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/Hint",
"text": "//La dirección (URL) por defecto de// TiddlySpot //es `http://&lt;wikiname&gt;.tiddlyspot.com/store.cgi` aunque puede cambiarse a voluntad para usar otro servidor//"
},
"$:/language/ControlPanel/Saving/TiddlySpot/Password": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/Password",
"text": "Contraseña"
},
"$:/language/ControlPanel/Saving/TiddlySpot/ServerURL": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/ServerURL",
"text": "Dirección (URL) del servidor"
},
"$:/language/ControlPanel/Saving/TiddlySpot/UploadDir": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/UploadDir",
"text": "Directorio de almacenamiento"
},
"$:/language/ControlPanel/Saving/TiddlySpot/UserName": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/UserName",
"text": "Nombre del Wiki"
},
"$:/language/ControlPanel/Settings/AutoSave/Caption": {
"title": "$:/language/ControlPanel/Settings/AutoSave/Caption",
"text": "Guardar automáticamente"
},
"$:/language/ControlPanel/Settings/AutoSave/Disabled/Description": {
"title": "$:/language/ControlPanel/Settings/AutoSave/Disabled/Description",
"text": "No guardar cambios automáticamente"
},
"$:/language/ControlPanel/Settings/AutoSave/Enabled/Description": {
"title": "$:/language/ControlPanel/Settings/AutoSave/Enabled/Description",
"text": "Guardar cambios automáticamente"
},
"$:/language/ControlPanel/Settings/AutoSave/Hint": {
"title": "$:/language/ControlPanel/Settings/AutoSave/Hint",
"text": "Guarda automáticamente los cambios durante la edición"
},
"$:/language/ControlPanel/Settings/CamelCase/Caption": {
"title": "$:/language/ControlPanel/Settings/CamelCase/Caption",
"text": "Enlaces wiki mediante ~CamelCase"
},
"$:/language/ControlPanel/Settings/CamelCase/Description": {
"title": "$:/language/ControlPanel/Settings/CamelCase/Description",
"text": "Activar enlaces automáticos mediante ~CamelCase"
},
"$:/language/ControlPanel/Settings/CamelCase/Hint": {
"title": "$:/language/ControlPanel/Settings/CamelCase/Hint",
"text": "Desactiva globalmente la opción de enlace automático mediante CamelCase &lt;br&gt;"
},
"$:/language/ControlPanel/Settings/Caption": {
"title": "$:/language/ControlPanel/Settings/Caption",
"text": "Configuración"
},
"$:/language/ControlPanel/Settings/DefaultSidebarTab/Caption": {
"title": "$:/language/ControlPanel/Settings/DefaultSidebarTab/Caption",
"text": "Pestaña por defecto de la barra lateral"
},
"$:/language/ControlPanel/Settings/DefaultSidebarTab/Hint": {
"title": "$:/language/ControlPanel/Settings/DefaultSidebarTab/Hint",
"text": "Indica qué pestaña de la barra lateral se muestra por defecto al inicio"
},
"$:/language/ControlPanel/Settings/Hint": {
"title": "$:/language/ControlPanel/Settings/Hint",
"text": "La configuración de estos ajustes te permite personalizar el comportamiento de TiddlyWiki."
},
"$:/language/ControlPanel/Settings/LinkToBehaviour/Caption": {
"title": "$:/language/ControlPanel/Settings/LinkToBehaviour/Caption",
"text": "Comportamiento al abrir tiddlers..."
},
"$:/language/ControlPanel/Settings/LinkToBehaviour/InsideRiver/Hint": {
"title": "$:/language/ControlPanel/Settings/LinkToBehaviour/InsideRiver/Hint",
"text": "...dentro del StoryRiver"
},
"$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAbove": {
"title": "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAbove",
"text": "Abrirlo por encima del tiddler actual"
},
"$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAtBottom": {
"title": "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAtBottom",
"text": "Abrirlo al final del StoryRiver"
},
"$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAtTop": {
"title": "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAtTop",
"text": "Abrirlo al principio del StoryRiver"
},
"$:/language/ControlPanel/Settings/LinkToBehaviour/OpenBelow": {
"title": "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenBelow",
"text": "Abrirlo por debajo del tiddler actual"
},
"$:/language/ControlPanel/Settings/LinkToBehaviour/OutsideRiver/Hint": {
"title": "$:/language/ControlPanel/Settings/LinkToBehaviour/OutsideRiver/Hint",
"text": "...desde fuera del StoryRiver"
},
"$:/language/ControlPanel/Settings/NavigationAddressBar/Caption": {
"title": "$:/language/ControlPanel/Settings/NavigationAddressBar/Caption",
"text": "Barra de direcciones"
},
"$:/language/ControlPanel/Settings/NavigationAddressBar/Hint": {
"title": "$:/language/ControlPanel/Settings/NavigationAddressBar/Hint",
"text": "Comportamiento de la barra de dirección del navegador cuando se abre un tiddler"
},
"$:/language/ControlPanel/Settings/NavigationAddressBar/No/Description": {
"title": "$:/language/ControlPanel/Settings/NavigationAddressBar/No/Description",
"text": "No actualizar la barra de dirección"
},
"$:/language/ControlPanel/Settings/NavigationAddressBar/Permalink/Description": {
"title": "$:/language/ControlPanel/Settings/NavigationAddressBar/Permalink/Description",
"text": "Añadir el tiddler de destino a la dirección"
},
"$:/language/ControlPanel/Settings/NavigationAddressBar/Permaview/Description": {
"title": "$:/language/ControlPanel/Settings/NavigationAddressBar/Permaview/Description",
"text": "Añadir el tiddler de destino y la secuencia actual de tiddlers abiertos"
},
"$:/language/ControlPanel/Settings/NavigationHistory/Caption": {
"title": "$:/language/ControlPanel/Settings/NavigationHistory/Caption",
"text": "Historial de navegación"
},
"$:/language/ControlPanel/Settings/NavigationHistory/Hint": {
"title": "$:/language/ControlPanel/Settings/NavigationHistory/Hint",
"text": "Actualiza el historial de navegación al abrir un tiddler"
},
"$:/language/ControlPanel/Settings/NavigationHistory/No/Description": {
"title": "$:/language/ControlPanel/Settings/NavigationHistory/No/Description",
"text": "No actualizar el historial"
},
"$:/language/ControlPanel/Settings/NavigationHistory/Yes/Description": {
"title": "$:/language/ControlPanel/Settings/NavigationHistory/Yes/Description",
"text": "Actualizar el historial"
},
"$:/language/ControlPanel/Settings/PerformanceInstrumentation/Caption": {
"title": "$:/language/ControlPanel/Settings/PerformanceInstrumentation/Caption",
"text": "//Performance Instrumentation//"
},
"$:/language/ControlPanel/Settings/PerformanceInstrumentation/Description": {
"title": "$:/language/ControlPanel/Settings/PerformanceInstrumentation/Description",
"text": "Activar //performance instrumentation//"
},
"$:/language/ControlPanel/Settings/PerformanceInstrumentation/Hint": {
"title": "$:/language/ControlPanel/Settings/PerformanceInstrumentation/Hint",
"text": "Muestra estadísticas de las prestaciones de la página en la consola de desarrollo &lt;br&gt;"
},
"$:/language/ControlPanel/Settings/TitleLinks/Caption": {
"title": "$:/language/ControlPanel/Settings/TitleLinks/Caption",
"text": "Títulos de tiddler"
},
"$:/language/ControlPanel/Settings/TitleLinks/Hint": {
"title": "$:/language/ControlPanel/Settings/TitleLinks/Hint",
"text": "Los títulos de los tiddlers se mostrarán y se comportarán como enlaces"
},
"$:/language/ControlPanel/Settings/TitleLinks/No/Description": {
"title": "$:/language/ControlPanel/Settings/TitleLinks/No/Description",
"text": "No mostrar como enlaces"
},
"$:/language/ControlPanel/Settings/TitleLinks/Yes/Description": {
"title": "$:/language/ControlPanel/Settings/TitleLinks/Yes/Description",
"text": "Mostrar como enlaces"
},
"$:/language/ControlPanel/Settings/ToolbarButtons/Caption": {
"title": "$:/language/ControlPanel/Settings/ToolbarButtons/Caption",
"text": "Botones de la barra de herramientas"
},
"$:/language/ControlPanel/Settings/ToolbarButtons/Hint": {
"title": "$:/language/ControlPanel/Settings/ToolbarButtons/Hint",
"text": "Aspecto por defecto de los botones de la barra de herramientas"
},
"$:/language/ControlPanel/Settings/ToolbarButtons/Icons/Description": {
"title": "$:/language/ControlPanel/Settings/ToolbarButtons/Icons/Description",
"text": "Mostrar icono"
},
"$:/language/ControlPanel/Settings/ToolbarButtons/Text/Description": {
"title": "$:/language/ControlPanel/Settings/ToolbarButtons/Text/Description",
"text": "Mostrar texto"
},
"$:/language/ControlPanel/Settings/ToolbarButtonStyle/Caption": {
"title": "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Caption",
"text": "Estilo de botón"
},
"$:/language/ControlPanel/Settings/ToolbarButtonStyle/Hint": {
"title": "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Hint",
"text": "Selecciona el estilo de los botones de la barra de herramientas"
},
"$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Borderless": {
"title": "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Borderless",
"text": "Sin borde"
},
"$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Boxed": {
"title": "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Boxed",
"text": "Cuadrado"
},
"$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Rounded": {
"title": "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Rounded",
"text": "Redondo"
},
"$:/language/ControlPanel/StoryView/Caption": {
"title": "$:/language/ControlPanel/StoryView/Caption",
"text": "Vista"
},
"$:/language/ControlPanel/StoryView/Prompt": {
"title": "$:/language/ControlPanel/StoryView/Prompt",
"text": "Vista actual"
},
"$:/language/ControlPanel/Theme/Caption": {
"title": "$:/language/ControlPanel/Theme/Caption",
"text": "Tema"
},
"$:/language/ControlPanel/Theme/Prompt": {
"title": "$:/language/ControlPanel/Theme/Prompt",
"text": "Tema actual"
},
"$:/language/ControlPanel/TiddlerFields/Caption": {
"title": "$:/language/ControlPanel/TiddlerFields/Caption",
"text": "Campos de tiddler"
},
"$:/language/ControlPanel/TiddlerFields/Hint": {
"title": "$:/language/ControlPanel/TiddlerFields/Hint",
"text": "Esta es la colección completa de campos de tiddler (TiddlerFields) actualmente en uso en este wiki, que incluye los tiddlers de sistema, pero no los ocultos"
},
"$:/language/ControlPanel/Toolbars/Caption": {
"title": "$:/language/ControlPanel/Toolbars/Caption",
"text": "Barras de herramientas"
},
"$:/language/ControlPanel/Toolbars/EditToolbar/Caption": {
"title": "$:/language/ControlPanel/Toolbars/EditToolbar/Caption",
"text": "Barra de edición"
},
"$:/language/ControlPanel/Toolbars/EditToolbar/Hint": {
"title": "$:/language/ControlPanel/Toolbars/EditToolbar/Hint",
"text": "Selecciona qué botones mostrar en modo de edición"
},
"$:/language/ControlPanel/Toolbars/Hint": {
"title": "$:/language/ControlPanel/Toolbars/Hint",
"text": "Selecciona qué botones mostrar en las diferentes barras de herramientas"
},
"$:/language/ControlPanel/Toolbars/PageControls/Caption": {
"title": "$:/language/ControlPanel/Toolbars/PageControls/Caption",
"text": "Barra de página"
},
"$:/language/ControlPanel/Toolbars/PageControls/Hint": {
"title": "$:/language/ControlPanel/Toolbars/PageControls/Hint",
"text": "Selecciona qué botones mostrar en la barra de página"
},
"$:/language/ControlPanel/Toolbars/ViewToolbar/Caption": {
"title": "$:/language/ControlPanel/Toolbars/ViewToolbar/Caption",
"text": "Barra de visualización"
},
"$:/language/ControlPanel/Toolbars/ViewToolbar/Hint": {
"title": "$:/language/ControlPanel/Toolbars/ViewToolbar/Hint",
"text": "Selecciona qué botones mostrar en modo de visualización"
},
"$:/language/ControlPanel/Tools/Download/Full/Caption": {
"title": "$:/language/ControlPanel/Tools/Download/Full/Caption",
"text": "Descargar el wiki completo"
},
"$:/core/readme": {
"title": "$:/core/readme",
"text": "Este plugin contiene componentes del núcleo de TiddlyWiki que incluyen:\n\n* Módulos de código JavaScript\n* Iconos\n* Plantillas necesarias para crear la interfaz de usuario de TiddlyWiki\n* Traducciones al castellano (ES-es) de las cadenas localizables usadas por el núcleo\n"
},
"$:/language/Date/DaySuffix/1": {
"title": "$:/language/Date/DaySuffix/1",
"text": "º"
},
"$:/language/Date/DaySuffix/10": {
"title": "$:/language/Date/DaySuffix/10",
"text": ""
},
"$:/language/Date/DaySuffix/11": {
"title": "$:/language/Date/DaySuffix/11",
"text": ""
},
"$:/language/Date/DaySuffix/12": {
"title": "$:/language/Date/DaySuffix/12",
"text": ""
},
"$:/language/Date/DaySuffix/13": {
"title": "$:/language/Date/DaySuffix/13",
"text": ""
},
"$:/language/Date/DaySuffix/14": {
"title": "$:/language/Date/DaySuffix/14",
"text": ""
},
"$:/language/Date/DaySuffix/15": {
"title": "$:/language/Date/DaySuffix/15",
"text": ""
},
"$:/language/Date/DaySuffix/16": {
"title": "$:/language/Date/DaySuffix/16",
"text": ""
},
"$:/language/Date/DaySuffix/17": {
"title": "$:/language/Date/DaySuffix/17",
"text": ""
},
"$:/language/Date/DaySuffix/18": {
"title": "$:/language/Date/DaySuffix/18",
"text": ""
},
"$:/language/Date/DaySuffix/19": {
"title": "$:/language/Date/DaySuffix/19",
"text": ""
},
"$:/language/Date/DaySuffix/2": {
"title": "$:/language/Date/DaySuffix/2",
"text": ""
},
"$:/language/Date/DaySuffix/20": {
"title": "$:/language/Date/DaySuffix/20",
"text": ""
},
"$:/language/Date/DaySuffix/21": {
"title": "$:/language/Date/DaySuffix/21",
"text": ""
},
"$:/language/Date/DaySuffix/22": {
"title": "$:/language/Date/DaySuffix/22",
"text": ""
},
"$:/language/Date/DaySuffix/23": {
"title": "$:/language/Date/DaySuffix/23",
"text": ""
},
"$:/language/Date/DaySuffix/24": {
"title": "$:/language/Date/DaySuffix/24",
"text": ""
},
"$:/language/Date/DaySuffix/25": {
"title": "$:/language/Date/DaySuffix/25",
"text": ""
},
"$:/language/Date/DaySuffix/26": {
"title": "$:/language/Date/DaySuffix/26",
"text": ""
},
"$:/language/Date/DaySuffix/27": {
"title": "$:/language/Date/DaySuffix/27",
"text": ""
},
"$:/language/Date/DaySuffix/28": {
"title": "$:/language/Date/DaySuffix/28",
"text": ""
},
"$:/language/Date/DaySuffix/29": {
"title": "$:/language/Date/DaySuffix/29",
"text": ""
},
"$:/language/Date/DaySuffix/3": {
"title": "$:/language/Date/DaySuffix/3",
"text": ""
},
"$:/language/Date/DaySuffix/30": {
"title": "$:/language/Date/DaySuffix/30",
"text": ""
},
"$:/language/Date/DaySuffix/31": {
"title": "$:/language/Date/DaySuffix/31",
"text": ""
},
"$:/language/Date/DaySuffix/4": {
"title": "$:/language/Date/DaySuffix/4",
"text": ""
},
"$:/language/Date/DaySuffix/5": {
"title": "$:/language/Date/DaySuffix/5",
"text": ""
},
"$:/language/Date/DaySuffix/6": {
"title": "$:/language/Date/DaySuffix/6",
"text": ""
},
"$:/language/Date/DaySuffix/7": {
"title": "$:/language/Date/DaySuffix/7",
"text": ""
},
"$:/language/Date/DaySuffix/8": {
"title": "$:/language/Date/DaySuffix/8",
"text": ""
},
"$:/language/Date/DaySuffix/9": {
"title": "$:/language/Date/DaySuffix/9",
"text": ""
},
"$:/language/Date/Long/Day/0": {
"title": "$:/language/Date/Long/Day/0",
"text": "domingo"
},
"$:/language/Date/Long/Day/1": {
"title": "$:/language/Date/Long/Day/1",
"text": "lunes"
},
"$:/language/Date/Long/Day/2": {
"title": "$:/language/Date/Long/Day/2",
"text": "martes"
},
"$:/language/Date/Long/Day/3": {
"title": "$:/language/Date/Long/Day/3",
"text": "miércoles"
},
"$:/language/Date/Long/Day/4": {
"title": "$:/language/Date/Long/Day/4",
"text": "jueves"
},
"$:/language/Date/Long/Day/5": {
"title": "$:/language/Date/Long/Day/5",
"text": "viernes"
},
"$:/language/Date/Long/Day/6": {
"title": "$:/language/Date/Long/Day/6",
"text": "sábado"
},
"$:/language/Date/Long/Month/1": {
"title": "$:/language/Date/Long/Month/1",
"text": "enero"
},
"$:/language/Date/Long/Month/10": {
"title": "$:/language/Date/Long/Month/10",
"text": "octubre"
},
"$:/language/Date/Long/Month/11": {
"title": "$:/language/Date/Long/Month/11",
"text": "noviembre"
},
"$:/language/Date/Long/Month/12": {
"title": "$:/language/Date/Long/Month/12",
"text": "diciembre"
},
"$:/language/Date/Long/Month/2": {
"title": "$:/language/Date/Long/Month/2",
"text": "febrero"
},
"$:/language/Date/Long/Month/3": {
"title": "$:/language/Date/Long/Month/3",
"text": "marzo"
},
"$:/language/Date/Long/Month/4": {
"title": "$:/language/Date/Long/Month/4",
"text": "abril"
},
"$:/language/Date/Long/Month/5": {
"title": "$:/language/Date/Long/Month/5",
"text": "mayo"
},
"$:/language/Date/Long/Month/6": {
"title": "$:/language/Date/Long/Month/6",
"text": "junio"
},
"$:/language/Date/Long/Month/7": {
"title": "$:/language/Date/Long/Month/7",
"text": "julio"
},
"$:/language/Date/Long/Month/8": {
"title": "$:/language/Date/Long/Month/8",
"text": "agosto"
},
"$:/language/Date/Long/Month/9": {
"title": "$:/language/Date/Long/Month/9",
"text": "septiembre"
},
"$:/language/Date/Short/Day/0": {
"title": "$:/language/Date/Short/Day/0",
"text": "Do"
},
"$:/language/Date/Short/Day/1": {
"title": "$:/language/Date/Short/Day/1",
"text": "Lu"
},
"$:/language/Date/Short/Day/2": {
"title": "$:/language/Date/Short/Day/2",
"text": "Ma"
},
"$:/language/Date/Short/Day/3": {
"title": "$:/language/Date/Short/Day/3",
"text": "Mi"
},
"$:/language/Date/Short/Day/4": {
"title": "$:/language/Date/Short/Day/4",
"text": "Ju"
},
"$:/language/Date/Short/Day/5": {
"title": "$:/language/Date/Short/Day/5",
"text": "Vi"
},
"$:/language/Date/Short/Day/6": {
"title": "$:/language/Date/Short/Day/6",
"text": "Sá"
},
"$:/language/Date/Short/Month/1": {
"title": "$:/language/Date/Short/Month/1",
"text": "Ene"
},
"$:/language/Date/Short/Month/12": {
"title": "$:/language/Date/Short/Month/12",
"text": "Dic"
},
"$:/language/Date/Short/Month/4": {
"title": "$:/language/Date/Short/Month/4",
"text": "Abr"
},
"$:/language/Date/Short/Month/8": {
"title": "$:/language/Date/Short/Month/8",
"text": "Ago"
},
"$:/language/RelativeDate/Future/Days": {
"title": "$:/language/RelativeDate/Future/Days",
"text": "dentro de &lt;&lt;period&gt;&gt; días"
},
"$:/language/RelativeDate/Future/Hours": {
"title": "$:/language/RelativeDate/Future/Hours",
"text": "en &lt;&lt;period&gt;&gt; horas"
},
"$:/language/RelativeDate/Future/Minutes": {
"title": "$:/language/RelativeDate/Future/Minutes",
"text": "en &lt;&lt;period&gt;&gt; minutos"
},
"$:/language/RelativeDate/Future/Months": {
"title": "$:/language/RelativeDate/Future/Months",
"text": "dentro de &lt;&lt;period&gt;&gt; meses"
},
"$:/language/RelativeDate/Future/Second": {
"title": "$:/language/RelativeDate/Future/Second",
"text": "en 1 segundo"
},
"$:/language/RelativeDate/Future/Seconds": {
"title": "$:/language/RelativeDate/Future/Seconds",
"text": "en &lt;&lt;period&gt;&gt; segundos"
},
"$:/language/RelativeDate/Future/Years": {
"title": "$:/language/RelativeDate/Future/Years",
"text": "dentro de &lt;&lt;period&gt;&gt; años"
},
"$:/language/RelativeDate/Past/Days": {
"title": "$:/language/RelativeDate/Past/Days",
"text": "hace &lt;&lt;period&gt;&gt; días"
},
"$:/language/RelativeDate/Past/Hours": {
"title": "$:/language/RelativeDate/Past/Hours",
"text": "hace &lt;&lt;period&gt;&gt; horas"
},
"$:/language/RelativeDate/Past/Minutes": {
"title": "$:/language/RelativeDate/Past/Minutes",
"text": "hace &lt;&lt;period&gt;&gt; minutos"
},
"$:/language/RelativeDate/Past/Months": {
"title": "$:/language/RelativeDate/Past/Months",
"text": "hace &lt;&lt;period&gt;&gt; meses"
},
"$:/language/RelativeDate/Past/Second": {
"title": "$:/language/RelativeDate/Past/Second",
"text": "hace 1 segundo"
},
"$:/language/RelativeDate/Past/Seconds": {
"title": "$:/language/RelativeDate/Past/Seconds",
"text": "hace &lt;&lt;period&gt;&gt; segundos"
},
"$:/language/RelativeDate/Past/Years": {
"title": "$:/language/RelativeDate/Past/Years",
"text": "hace &lt;&lt;period&gt;&gt; años"
},
"$:/language/Docs/ModuleTypes/animation": {
"title": "$:/language/Docs/ModuleTypes/animation",
"text": "Animaciones que pueden usarse con RevealWidget"
},
"$:/language/Docs/ModuleTypes/command": {
"title": "$:/language/Docs/ModuleTypes/command",
"text": "Comandos que pueden ejecutarse en Node.js"
},
"$:/language/Docs/ModuleTypes/config": {
"title": "$:/language/Docs/ModuleTypes/config",
"text": "Datos para insertar en `$tw.config`"
},
"$:/language/Docs/ModuleTypes/filteroperator": {
"title": "$:/language/Docs/ModuleTypes/filteroperator",
"text": "Operadores individuales de filtrado"
},
"$:/language/Docs/ModuleTypes/global": {
"title": "$:/language/Docs/ModuleTypes/global",
"text": "Datos globales para insertar en `$tw`"
},
"$:/language/Docs/ModuleTypes/isfilteroperator": {
"title": "$:/language/Docs/ModuleTypes/isfilteroperator",
"text": "Operandos para el operador ''is''"
},
"$:/language/Docs/ModuleTypes/macro": {
"title": "$:/language/Docs/ModuleTypes/macro",
"text": "Definiciones macro de JavaScript."
},
"$:/language/Docs/ModuleTypes/parser": {
"title": "$:/language/Docs/ModuleTypes/parser",
"text": "Reglas sintácticas para diversos tipos de contenido."
},
"$:/language/Docs/ModuleTypes/saver": {
"title": "$:/language/Docs/ModuleTypes/saver",
"text": "Guarda archivos desde el navegador con diferentes métodos."
},
"$:/language/Docs/ModuleTypes/startup": {
"title": "$:/language/Docs/ModuleTypes/startup",
"text": "Funciones de inicio"
},
"$:/language/Docs/ModuleTypes/storyview": {
"title": "$:/language/Docs/ModuleTypes/storyview",
"text": "Personaliza la animación y comportamiento de listas"
},
"$:/language/Docs/ModuleTypes/tiddlerdeserializer": {
"title": "$:/language/Docs/ModuleTypes/tiddlerdeserializer",
"text": "Convierte diferentes tipos de contenido en tiddlers"
},
"$:/language/Docs/ModuleTypes/tiddlerfield": {
"title": "$:/language/Docs/ModuleTypes/tiddlerfield",
"text": "Define el comportamiento de un campo individual"
},
"$:/language/Docs/ModuleTypes/tiddlermethod": {
"title": "$:/language/Docs/ModuleTypes/tiddlermethod",
"text": "Añade métodos al prototipo `$tw.Tiddler`"
},
"$:/language/Docs/ModuleTypes/upgrader": {
"title": "$:/language/Docs/ModuleTypes/upgrader",
"text": "Aplica la actualización a los tiddlers durante el proceso de actualización/importación."
},
"$:/language/Docs/ModuleTypes/utils": {
"title": "$:/language/Docs/ModuleTypes/utils",
"text": "Añade métodos a `$tw.utils`"
},
"$:/language/Docs/ModuleTypes/utils-node": {
"title": "$:/language/Docs/ModuleTypes/utils-node",
"text": "Añade métodos específicos de Node.js a `$tw.utils`"
},
"$:/language/Docs/ModuleTypes/widget": {
"title": "$:/language/Docs/ModuleTypes/widget",
"text": "Encapsula la representación y recarga de ''DOM''"
},
"$:/language/Docs/ModuleTypes/wikimethod": {
"title": "$:/language/Docs/ModuleTypes/wikimethod",
"text": "Añade métodos a `$tw.Wiki`"
},
"$:/language/Docs/ModuleTypes/wikirule": {
"title": "$:/language/Docs/ModuleTypes/wikirule",
"text": "Reglas individuales del intérprete principal de WikiText"
},
"$:/language/EditTemplate/Body/External/Hint": {
"title": "$:/language/EditTemplate/Body/External/Hint",
"text": "Este es un tiddler externo, es decir, guardado fuera del archivo TiddlyWiki principal &lt;br&gt;"
},
"$:/language/EditTemplate/Body/Placeholder": {
"title": "$:/language/EditTemplate/Body/Placeholder",
"text": "Escribe el texto aquí"
},
"$:/language/EditTemplate/Body/Preview/Type/Output": {
"title": "$:/language/EditTemplate/Body/Preview/Type/Output",
"text": "Output"
},
"$:/language/EditTemplate/Field/Remove/Caption": {
"title": "$:/language/EditTemplate/Field/Remove/Caption",
"text": "Eliminar campo"
},
"$:/language/EditTemplate/Field/Remove/Hint": {
"title": "$:/language/EditTemplate/Field/Remove/Hint",
"text": "Elimina el campo y su valor"
},
"$:/language/EditTemplate/Fields/Add/Button": {
"title": "$:/language/EditTemplate/Fields/Add/Button",
"text": "Añadir campo"
},
"$:/language/EditTemplate/Fields/Add/Dropdown/System": {
"title": "$:/language/EditTemplate/Fields/Add/Dropdown/System",
"text": "Campos de sistema"
},
"$:/language/EditTemplate/Fields/Add/Dropdown/User": {
"title": "$:/language/EditTemplate/Fields/Add/Dropdown/User",
"text": "Campos de usuario"
},
"$:/language/EditTemplate/Fields/Add/Name/Placeholder": {
"title": "$:/language/EditTemplate/Fields/Add/Name/Placeholder",
"text": "Nombre"
},
"$:/language/EditTemplate/Fields/Add/Prompt": {
"title": "$:/language/EditTemplate/Fields/Add/Prompt",
"text": "Añadir"
},
"$:/language/EditTemplate/Fields/Add/Value/Placeholder": {
"title": "$:/language/EditTemplate/Fields/Add/Value/Placeholder",
"text": "Valor"
},
"$:/language/EditTemplate/Shadow/OverriddenWarning": {
"title": "$:/language/EditTemplate/Shadow/OverriddenWarning",
"text": "Este es un tiddler oculto modificado&lt;br&gt;"
},
"$:/language/EditTemplate/Shadow/Warning": {
"title": "$:/language/EditTemplate/Shadow/Warning",
"text": "Este es un tiddler oculto&lt;br&gt;"
},
"$:/language/EditTemplate/Tags/Add/Button": {
"title": "$:/language/EditTemplate/Tags/Add/Button",
"text": "Añadir"
},
"$:/language/EditTemplate/Tags/Add/Placeholder": {
"title": "$:/language/EditTemplate/Tags/Add/Placeholder",
"text": "Nombre"
},
"$:/language/EditTemplate/Tags/Dropdown/Caption": {
"title": "$:/language/EditTemplate/Tags/Dropdown/Caption",
"text": "Etiquetas"
},
"$:/language/EditTemplate/Tags/Dropdown/Hint": {
"title": "$:/language/EditTemplate/Tags/Dropdown/Hint",
"text": "Muestra la lista de etiquetas existentes"
},
"$:/language/EditTemplate/Type/Delete/Caption": {
"title": "$:/language/EditTemplate/Type/Delete/Caption",
"text": "Borrar"
},
"$:/language/EditTemplate/Type/Delete/Hint": {
"title": "$:/language/EditTemplate/Type/Delete/Hint",
"text": "Borra el tipo de contenido"
},
"$:/language/EditTemplate/Type/Dropdown/Caption": {
"title": "$:/language/EditTemplate/Type/Dropdown/Caption",
"text": "Tipos de contenido"
},
"$:/language/EditTemplate/Type/Dropdown/Hint": {
"title": "$:/language/EditTemplate/Type/Dropdown/Hint",
"text": "Muestra la lista de tipos disponibles"
},
"$:/language/EditTemplate/Type/Placeholder": {
"title": "$:/language/EditTemplate/Type/Placeholder",
"text": "Nuevo tipo"
},
"$:/language/EditTemplate/Type/Prompt": {
"title": "$:/language/EditTemplate/Type/Prompt",
"text": "Tipo:"
},
"$:/language/Exporters/CsvFile": {
"title": "$:/language/Exporters/CsvFile",
"text": "Archivo de tipo .CSV"
},
"$:/language/Exporters/JsonFile": {
"title": "$:/language/Exporters/JsonFile",
"text": "Archivo de tipo .JSON"
},
"$:/language/Exporters/StaticRiver": {
"title": "$:/language/Exporters/StaticRiver",
"text": "Cadena de tiddlers como .HTML estático"
},
"$:/language/Exporters/TidFile": {
"title": "$:/language/Exporters/TidFile",
"text": "Tiddler individual como archivo \".tid\""
},
"$:/language/Docs/Fields/_canonical_uri": {
"title": "$:/language/Docs/Fields/_canonical_uri",
"text": "Dirección (URI) completa -absoluta o relativa- de un tiddler externo de imagen"
},
"$:/language/Docs/Fields/bag": {
"title": "$:/language/Docs/Fields/bag",
"text": "Nombre de la bolsa de la que procede un tiddler"
},
"$:/language/Docs/Fields/caption": {
"title": "$:/language/Docs/Fields/caption",
"text": "Texto que se muestra en una pestaña o botón, con independencia del título del tiddler que lo define"
},
"$:/language/Docs/Fields/color": {
"title": "$:/language/Docs/Fields/color",
"text": "Valor CSS del color de fondo asociado a un tiddler"
},
"$:/language/Docs/Fields/component": {
"title": "$:/language/Docs/Fields/component",
"text": "Nombre del componente responsable de un [[tiddler de alerta|AlertMechanism]]"
},
"$:/language/Docs/Fields/created": {
"title": "$:/language/Docs/Fields/created",
"text": "Fecha de creación del tiddler"
},
"$:/language/Docs/Fields/creator": {
"title": "$:/language/Docs/Fields/creator",
"text": "Nombre del autor del tiddler"
},
"$:/language/Docs/Fields/current-tiddler": {
"title": "$:/language/Docs/Fields/current-tiddler",
"text": "Usado para incluir el tiddler superior en una [[historia|HistoryMechanism]]"
},
"$:/language/Docs/Fields/dependents": {
"title": "$:/language/Docs/Fields/dependents",
"text": "En un complemento o extensión, lista de sus dependencias"
},
"$:/language/Docs/Fields/description": {
"title": "$:/language/Docs/Fields/description",
"text": "Descripción de un complemento, extensión, o diálogo modal"
},
"$:/language/Docs/Fields/draft.of": {
"title": "$:/language/Docs/Fields/draft.of",
"text": "Título del tiddler del que el actual es borrador"
},
"$:/language/Docs/Fields/draft.title": {
"title": "$:/language/Docs/Fields/draft.title",
"text": "Nuevo título propuesto para el presente borrador"
},
"$:/language/Docs/Fields/footer": {
"title": "$:/language/Docs/Fields/footer",
"text": "Texto al pie que figurará en un asistente"
},
"$:/language/Docs/Fields/icon": {
"title": "$:/language/Docs/Fields/icon",
"text": "Nombre del tiddler que contiene el icono que se quiere asociar al presente tiddler"
},
"$:/language/Docs/Fields/library": {
"title": "$:/language/Docs/Fields/library",
"text": "Si su valor es \"Sí\", indica que el tiddler debe guardarse como librería de JavaScript"
},
"$:/language/Docs/Fields/list": {
"title": "$:/language/Docs/Fields/list",
"text": "Lista ordenada de tiddlers asociados al presente tiddler"
},
"$:/language/Docs/Fields/list-after": {
"title": "$:/language/Docs/Fields/list-after",
"text": "Título del tiddler tras el que el presente será añadido a una lista de tiddlers."
},
"$:/language/Docs/Fields/list-before": {
"title": "$:/language/Docs/Fields/list-before",
"text": "Título del tiddler antes del que el presente será añadido a una lista&lt;br&gt;"
},
"$:/language/Docs/Fields/modified": {
"title": "$:/language/Docs/Fields/modified",
"text": "Fecha y hora de última modificación"
},
"$:/language/Docs/Fields/modifier": {
"title": "$:/language/Docs/Fields/modifier",
"text": "Nombre del tiddler asociado con quien modificó por última vez el presente tiddler"
},
"$:/language/Docs/Fields/name": {
"title": "$:/language/Docs/Fields/name",
"text": "Nombre asociado con un complemento o extensión"
},
"$:/language/Docs/Fields/plugin-priority": {
"title": "$:/language/Docs/Fields/plugin-priority",
"text": "Valor numérico que indica la prioridad de un complemento o extensión"
},
"$:/language/Docs/Fields/plugin-type": {
"title": "$:/language/Docs/Fields/plugin-type",
"text": "Tipo de complemento o extensión"
},
"$:/language/Docs/Fields/released": {
"title": "$:/language/Docs/Fields/released",
"text": "Fecha de la edición de TiddlyWiki"
},
"$:/language/Docs/Fields/revision": {
"title": "$:/language/Docs/Fields/revision",
"text": "Revisión del tiddler existente en el servidor"
},
"$:/language/Docs/Fields/source": {
"title": "$:/language/Docs/Fields/source",
"text": "Dirección de la fuente asociada a un tiddler"
},
"$:/language/Docs/Fields/subtitle": {
"title": "$:/language/Docs/Fields/subtitle",
"text": "Subtítulo que figurará en un asistente"
},
"$:/language/Docs/Fields/tags": {
"title": "$:/language/Docs/Fields/tags",
"text": "Lista de etiquetas asignadas al tiddler"
},
"$:/language/Docs/Fields/text": {
"title": "$:/language/Docs/Fields/text",
"text": "Texto principal de un tiddler"
},
"$:/language/Docs/Fields/title": {
"title": "$:/language/Docs/Fields/title",
"text": "Nombre único de un tiddler"
},
"$:/language/Docs/Fields/type": {
"title": "$:/language/Docs/Fields/type",
"text": "Tipo de contenido en un tiddler"
},
"$:/language/Docs/Fields/version": {
"title": "$:/language/Docs/Fields/version",
"text": "Versión de un complemento o extensión"
},
"$:/language/Filters/AllTags": {
"title": "$:/language/Filters/AllTags",
"text": "Todas las etiquetas, excepto las de sistema"
},
"$:/language/Filters/AllTiddlers": {
"title": "$:/language/Filters/AllTiddlers",
"text": "Todos los tiddlers, excepto los de sistema"
},
"$:/language/Filters/Drafts": {
"title": "$:/language/Filters/Drafts",
"text": "Borradores"
},
"$:/language/Filters/Missing": {
"title": "$:/language/Filters/Missing",
"text": "Tiddlers vacíos"
},
"$:/language/Filters/Orphans": {
"title": "$:/language/Filters/Orphans",
"text": "Tiddlers huérfanos"
},
"$:/language/Filters/OverriddenShadowTiddlers": {
"title": "$:/language/Filters/OverriddenShadowTiddlers",
"text": "Tiddlers ocultos anulados"
},
"$:/language/Filters/RecentSystemTiddlers": {
"title": "$:/language/Filters/RecentSystemTiddlers",
"text": "Tiddlers recientemente modificados, incluidos los de sistema"
},
"$:/language/Filters/RecentTiddlers": {
"title": "$:/language/Filters/RecentTiddlers",
"text": "Tiddlers recientemente modificados"
},
"$:/language/Filters/ShadowTiddlers": {
"title": "$:/language/Filters/ShadowTiddlers",
"text": "Tiddlers ocultos"
},
"$:/language/Filters/SystemTags": {
"title": "$:/language/Filters/SystemTags",
"text": "Etiquetas de sistema"
},
"$:/language/Filters/SystemTiddlers": {
"title": "$:/language/Filters/SystemTiddlers",
"text": "Tiddlers de sistema"
},
"$:/language/Filters/TypedTiddlers": {
"title": "$:/language/Filters/TypedTiddlers",
"text": "Tiddlers que no sonWikiText"
},
"GettingStarted": {
"title": "GettingStarted",
"text": "\\define lingo-base() $:/language/ControlPanel/Basics/\nBienvenido a TiddlyWiki y a su comunidad de usuarios\n\nAntes de guardar información importante en TiddlyWiki, es preciso que te asegures de poder hacerlo de manera fiable\n\nVisita https://tiddlywiki.com/#GettingStarted para más información (en inglés)\n!! Configura este ~TiddlyWiki\n\n&lt;div class=\"tc-control-panel\"&gt;\n\n|&lt;$link to=\"$:/SiteTitle\"&gt;&lt;&lt;lingo Title/Prompt&gt;&gt;&lt;/$link&gt; |&lt;$edit-text tiddler=\"$:/SiteTitle\" default=\"\" tag=\"input\"/&gt; |\n|&lt;$link to=\"$:/SiteSubtitle\"&gt;&lt;&lt;lingo Subtitle/Prompt&gt;&gt;&lt;/$link&gt; |&lt;$edit-text tiddler=\"$:/SiteSubtitle\" default=\"\" tag=\"input\"/&gt; |\n|&lt;$link to=\"$:/DefaultTiddlers\"&gt;&lt;&lt;lingo DefaultTiddlers/Prompt&gt;&gt;&lt;/$link&gt; |&lt;&lt;lingo DefaultTiddlers/TopHint&gt;&gt;&lt;br&gt; &lt;$edit tag=\"textarea\" tiddler=\"$:/DefaultTiddlers\"/&gt;&lt;br&gt;//&lt;&lt;lingo DefaultTiddlers/BottomHint&gt;&gt;// |\n&lt;/div&gt;\n\nConsulta más opciones en el [[panel de control|$:/ControlPanel]]\n"
},
"$:/language/Help/build": {
"title": "$:/language/Help/build",
"description": "Ejecuta automáticamente los comandos configurados",
"text": "Compila los targets que se especifican.&lt;br&gt;\nSi no se especifica ninguno, se incluirán todos los disponibles\n\n```\n--build &lt;target&gt; [&lt;target&gt; ...]\n```\n\nLos targets se definen en el archivo `tiddlywiki.info`\n\n"
},
"$:/language/Help/clearpassword": {
"title": "$:/language/Help/clearpassword",
"description": "Anula la contraseña de las operaciones de cifrado subsiguientes",
"text": "Revoca la contraseña de las operaciones subsiguientes de cifrado\n```\n--clearpassword\n```\n"
},
"$:/language/Help/default": {
"title": "$:/language/Help/default",
"description": "",
"text": "\\define commandTitle()\n$:/language/Help/$(command)$\n\\end\n```\nUso: tiddlywiki [&lt;wikifolder&gt;] [--&lt;command&gt; [&lt;args&gt;...]...]\n```\n\nComandos disponibles:\n\n&lt;ul&gt;\n&lt;$list filter=\"[commands[]sort[title]]\" variable=\"command\"&gt;\n&lt;li&gt;&lt;$link to=&lt;&lt;commandTitle&gt;&gt;&gt;&lt;$macrocall $name=\"command\" $type=\"text/plain\" $output=\"text/plain\"/&gt;&lt;/$link&gt;: &lt;$transclude tiddler=&lt;&lt;commandTitle&gt;&gt; field=\"description\"/&gt;&lt;/li&gt;\n&lt;/$list&gt;\n&lt;/ul&gt;\n\nPara obtener ayuda sobre un comando en particular:\n\n```\ntiddlywiki --help &lt;command&gt;\n```\n"
},
"$:/language/Help/editions": {
"title": "$:/language/Help/editions",
"description": "Devuelve una lista de ediciones disponibles de TiddlyWiki",
"text": "Lista y descripción de las ediciones disponibles.&lt;br&gt;\nPuedes crear una edición específica con el comando `--init`.\n\n```\n--editions\n```\n"
},
"$:/language/Help/help": {
"title": "$:/language/Help/help",
"description": "Muestra texto de ayuda para comandos de TiddlyWiki",
"text": "Muestra ayuda para un comando:\n\n```\n--help [&lt;command&gt;]\n```\n\nSi se omite el comando, se muestra una lista de comandos disponibles\n"
},
"$:/language/Help/init": {
"title": "$:/language/Help/init",
"description": "Inicializa un nuevo WikiFolder",
"text": "Inicializa una [[WikiFolder|WikiFolders]] con una copia en blanco de la edición especificada.\n\n```\n--init &lt;edition&gt; [&lt;edition&gt; ...]\n```\n\nPor ejemplo:\n\n```\ntiddlywiki ./MyWikiFolder --init empty\n```\n\nNota:\n\n* Se creará un directorio para el wiki si es necesario\n\n* La edición por defecto es ''empty''\n\n* El comando `--init` fallará si el directorio no está vacío\n\n* El comando `--init` elimina toda definición de `includeWikis` contenida en el archivo `tiddlywiki.info`\n\n* Cuando se indican varias ediciones para su inicialización, las ediciones //planchan// sucesivamente todo archivo compartido, de modo que el \narchivo `tiddlywiki.info` final será el que corresponda a la última edición que se indique.\n\n* `--editions` muestra una lista de ediciones disponibles\n"
},
"$:/language/Help/load": {
"title": "$:/language/Help/load",
"description": "Carga tiddlers desde un archivo",
"text": "Carga tiddlers de archivos de tipo TiddlyWiki 2.x.x.(`.html`), `.tiddler`, `.tid`, `.json` u otros\n\n```\n--load &lt;filepath&gt;\n```\n\nPara cargar tiddlers de un TiddlyWiki encriptado, primero debes especificar la contraseña con el comando PasswordCommand. Por ejemplo:\n\n```\ntiddlywiki ./MyWiki --password pa55w0rd --load my_encrypted_wiki.html\n```\n\nTen en cuenta que TiddlyWiki no carga complementos o extensiones anteriores a los ya cargados. \n"
},
"$:/language/Help/makelibrary": {
"title": "$:/language/Help/makelibrary",
"description": "Compila la librería de plugins necesaria para actualizar TiddlyWiki",
"text": "\nConstruye el tiddler `$:/UpgradeLibrary`: librería de actualización\n \nLa librería de actualización tiene formato de plugin ordinario, de tipo `library`&lt;br&gt;\nContiene copia de cada uno de los plugins, temas y paquetes de idioma disponibles en el repositorio de TiddlyWiki5\n\nEste comando es, en principio, para uso interno del equipo de TiddlyWiki y sólo es de interés para aquellos usuarios que deseen compilar actualizaciones personalizadas\n\n```\n--makelibrary &lt;title&gt;\n```\n\nEl título por defecto del tiddler resultante es `$:/UpgradeLibrary`.\n"
},
"$:/language/Help/notfound": {
"title": "$:/language/Help/notfound",
"description": "",
"text": "No existe tal elemento"
},
"$:/language/Help/output": {
"title": "$:/language/Help/output",
"description": "Establece el directorio de salida para los comandos siguientes",
"text": "Establece el directorio de salida para los comandos que le siguen &lt;br&gt;\nEl directorio por defecto es el subdirectorio `output`, en el directorio del wiki\n\n```\n--output &lt;pathname&gt;\n```\n\nSi la ruta especificada es relativa, se interpreta como relativa al directorio actual de trabajo&lt;br&gt;\nPor ejemplo: `--output .` establece como directorio de salida el actual directorio de trabajo\n"
},
"$:/language/Help/password": {
"title": "$:/language/Help/password",
"description": "Establece contraseña para operaciones de cifrado subsiguientes",
"text": "Establece contraseña para las operaciones subsiguientes de cifrado\n\n```\n--password &lt;password&gt;\n```\n\n"
},
"$:/language/Help/rendertiddler": {
"title": "$:/language/Help/rendertiddler",
"description": "Genera un tiddler del ContentType que se especifique",
"text": "Genera un tiddler del ContentType que se especifique (por defecto `text/html`) y lo guarda con el nombre de archivo especificado\n\n```\n--rendertiddler &lt;title&gt; &lt;filename&gt; [&lt;type&gt;]\n```\n\nPor defecto, el nombre de archivo es relativo al subdirectorio `output` en el directorio del wiki&lt;br&gt;\nPuede usarse el comando `--output` para dirigir la salida a cualquier otro directorio\n\nLos directorios no existentes en la ruta del nombre de archivo se crean automáticamente.\n"
},
"$:/language/Help/rendertiddlers": {
"title": "$:/language/Help/rendertiddlers",
"description": "Genera tiddlers coincidentes con un determinado ContentType",
"text": "Genera un conjunto de tiddlers de un determinado ContentType (por defecto `text/html`) y extensión de archivo (por defecto, `.html`), coincidentes con el argumento de un filtro\n\n```\n--rendertiddlers &lt;filter&gt; &lt;template&gt; &lt;pathname&gt; [&lt;type&gt;] [&lt;extension&gt;]\n```\n\nPor ejemplo:\n\n```\n--rendertiddlers [!is[system]] $:/core/templates/static.tiddler.html ./static text/plain\n```\n\nPor defecto, la ruta es relativa al subdirectorio `output` del directorio del wiki&lt;br&gt;\nPuede usarse con el comando `--output` para dirigir la salida a un directorio diferente\n\nCualquier archivo existente en el directorio de destino será borrado&lt;br&gt;\nLos directorios no existentes en la ruta del nombre de archivo se crean automáticamente.\n"
},
"$:/language/Help/savetiddler": {
"title": "$:/language/Help/savetiddler",
"description": "Guarda un tiddler en un archivo",
"text": "Guarda un tiddler individual en formato binario o como texto plano con el nombre de archivo especificado.\n\n```\n--savetiddler &lt;title&gt; &lt;filename&gt;\n```\n\nPor defecto, la ruta es relativa al subdirectorio `output` del directorio del wiki&lt;br&gt;\nPuede usarse con el comando `--output` para dirigir la salida a un directorio diferente\n\nLos directorios no existentes en la ruta del nombre de archivo se crean automáticamente.\n"
},
"$:/language/Help/savetiddlers": {
"title": "$:/language/Help/savetiddlers",
"description": "Guarda un grupo de tiddlers de formato plano en un directorio",
"text": "Guarda un grupo de tiddlers en formato binario o como texto plano en el directorio especificado.\n\n```\n--savetiddlers &lt;filter&gt; &lt;pathname&gt;\n```\n\nPor defecto, la ruta es relativa al subdirectorio `output` del directorio del wiki&lt;br&gt;\nPuede usarse con el comando `--output` para dirigir la salida a un directorio diferente\n\nLos directorios no existentes en la ruta del nombre de archivo se crean automáticamente.\n"
},
"$:/language/Help/server": {
"title": "$:/language/Help/server",
"description": "Proporciona interfaz de servidor HTTP a TiddlyWiki",
"text": "El servidor compilado para TiddlyWiki5 es muy simple. Aunque es compatible con TiddlyWeb, no soporta muchas de las características necesarias para un uso robusto en Internet. \n\nEn la raíz, sirve un tiddler específico&lt;br&gt;\nFuera de la raíz, sirve tiddlers individuales codificados en JSON, y soporta operaciones básicas HTTP de `GET`, `PUT` y `DELETE`.\n\n```\n--server &lt;port&gt; &lt;roottiddler&gt; &lt;rendertype&gt; &lt;servetype&gt; &lt;username&gt; &lt;password&gt; &lt;host&gt; &lt;pathprefix&gt;\n```\n\nLos parámetros son\n\n* ''port'' - número de puerto desde el que sirve (por defecto, \"8080\")\n* ''roottiddler'' - tiddler que se sirve desde la raíz (por defecto, \"$:/core/save/all\")\n* ''rendertype'' - tipo de contenido con el que se genera el tiddler raíz (por defecto \"text/plain\")\n* ''servetype'' - tipo de contenido con el que se sirve el tiddler raíz (por defecto \"text/html\")\n* ''username'' - nombre de usuario por defecto que firma la edición\n* ''password'' - contraseña opcional para autenticación básica\n* ''host'' - nombre opcional del servidor desde el que se sirve (por defecto, \"127.0.0.1\" o \"localhost\")\n* ''pathprefix'' - prefijo opcional para rutas\n\nSi se ha definido contraseña, el navegador pedirá que se introduzca nombre y contraseña. &lt;br&gt;Nótese que la contraseña se transmite en modo texto por lo que esta implementación no es apropiada para uso general.\n\nPor ejemplo:\n\n```\n--server 8080 $:/core/save/all text/plain text/html MyUserName passw0rd\n```\n\nEl nombre de usuario y la contraseña pueden ser especificados como cadenas de símbolos vacías si se necesita configurar el nombre del servidor o prefijo de ruta y no se requiere contraseña:\n\n```\n--server 8080 $:/core/save/all text/plain text/html \"\" \"\" 192.168.0.245\n```\n\nPara ejecutar simultáneamente múltiples servidores TiddlyWiki, deberán configurarse cada uno en un puerto diferente\n"
},
"$:/language/Help/setfield": {
"title": "$:/language/Help/setfield",
"description": "Prepara tiddlers externos para su uso",
"text": "//Téngase en cuenta que este comando es experimental y puede cambiar o ser reemplazado//\n\nConfigura el campo especificado de un grupo de tiddlers como resultado de una plantilla con la variable `currentTiddler`\n\n```\n--setfield &lt;filter&gt; &lt;fieldname&gt; &lt;templatetitle&gt; &lt;rendertype&gt;\n```\n\nSus parámetros son:\n\n* ''filter'' - filtro que identifica los tiddlers que se verán afectados\n* ''fieldname'' - el campo que será modificado (por defecto, \"text\")\n* ''templatetitle'' - el tiddler a ''wikify'' en el campo especificado. Si se deja en blanco o está ausente, el campo especificado es borrado. \n* ''rendertype'' - el tipo de texto a generar (por defecto, \"text/plain\"; se puede usar también \"text/html\" para incluir etiquetas HTML)\n"
},
"$:/language/Help/unpackplugin": {
"title": "$:/language/Help/unpackplugin",
"description": "Desenpaqueta los tiddlers de carga de un plugin",
"text": "Extrae los tiddlers de un plugin y los presenta como tiddlers ordinarios\n\n```\n--unpackplugin &lt;title&gt;\n```\n"
},
"$:/language/Help/verbose": {
"title": "$:/language/Help/verbose",
"description": "Activa el modo de salida como texto indefinido",
"text": "Genera texto aleatorio, útil para depurar errores\n\n```\n--verbose\n```\n"
},
"$:/language/Help/version": {
"title": "$:/language/Help/version",
"description": "Muestra el número de versión de TiddlyWiki",
"text": "Muestra el número de versión de TiddlyWiki\n\n```\n--version\n```\n"
},
"$:/language/Import/Imported/Hint": {
"title": "$:/language/Import/Imported/Hint",
"text": "Se importaron los siguientes tiddlers"
},
"$:/language/Import/Listing/Cancel/Caption": {
"title": "$:/language/Import/Listing/Cancel/Caption",
"text": "Cancelar"
},
"$:/language/Import/Listing/Hint": {
"title": "$:/language/Import/Listing/Hint",
"text": "Tiddlers listos para importar"
},
"$:/language/Import/Listing/Import/Caption": {
"title": "$:/language/Import/Listing/Import/Caption",
"text": "Importar"
},
"$:/language/Import/Listing/Select/Caption": {
"title": "$:/language/Import/Listing/Select/Caption",
"text": "Seleccionar"
},
"$:/language/Import/Listing/Status/Caption": {
"title": "$:/language/Import/Listing/Status/Caption",
"text": "Estado"
},
"$:/language/Import/Listing/Title/Caption": {
"title": "$:/language/Import/Listing/Title/Caption",
"text": "Título"
},
"$:/language/Import/Upgrader/Plugins/Suppressed/Incompatible": {
"title": "$:/language/Import/Upgrader/Plugins/Suppressed/Incompatible",
"text": "Plugin bloqueado, incompatible u obsoleto"
},
"$:/language/Import/Upgrader/Plugins/Suppressed/Version": {
"title": "$:/language/Import/Upgrader/Plugins/Suppressed/Version",
"text": "Plugin bloqueado debido a que &lt;&lt;incoming&gt;&gt; es más antiguo que el &lt;&lt;existing&gt;&gt;"
},
"$:/language/Import/Upgrader/Plugins/Upgraded": {
"title": "$:/language/Import/Upgrader/Plugins/Upgraded",
"text": "Plugin actualizado de &lt;&lt;incoming&gt;&gt; a &lt;&lt;upgraded&gt;&gt;"
},
"$:/language/Import/Upgrader/State/Suppressed": {
"title": "$:/language/Import/Upgrader/State/Suppressed",
"text": "Tiddler temporal bloqueado"
},
"$:/language/Import/Upgrader/System/Suppressed": {
"title": "$:/language/Import/Upgrader/System/Suppressed",
"text": "Tiddler de sistema bloqueado"
},
"$:/language/Import/Upgrader/ThemeTweaks/Created": {
"title": "$:/language/Import/Upgrader/ThemeTweaks/Created",
"text": "Ajuste de tema migrado de &lt;$text text=&lt;&lt;from&gt;&gt;/&gt;"
},
"$:/language/AboveStory/ClassicPlugin/Warning": {
"title": "$:/language/AboveStory/ClassicPlugin/Warning",
"text": "Parece que quieres cargar un plugin diseñado para ~TiddlyWiki Classic. &lt;br&gt;"
},
"$:/language/Ten en cuenta que [[estos plugins no funcionan en TiddlyWiki version 5.x.x|https": {
"title": "$:/language/Ten en cuenta que [[estos plugins no funcionan en TiddlyWiki version 5.x.x|https",
"text": "/tiddlywiki.com/#TiddlyWikiClassic]]&lt;br&gt;"
},
"$:/language/BinaryWarning/Prompt": {
"title": "$:/language/BinaryWarning/Prompt",
"text": "Este tiddler contiene datos binarios"
},
"$:/language/ClassicWarning/Hint": {
"title": "$:/language/ClassicWarning/Hint",
"text": "Este tiddler está escrito en formato de texto de una versión de TiddlyWiki Classic que no es totalmente compatible con la versión 5 de TiddlyWiki&lt;br&gt;"
},
"$:/language/Visite https": {
"title": "$:/language/Visite https",
"text": "/tiddlywiki.com/static/Upgrading.html para más información"
},
"$:/language/ClassicWarning/Upgrade/Caption": {
"title": "$:/language/ClassicWarning/Upgrade/Caption",
"text": "Actualizar"
},
"$:/language/CloseAll/Button": {
"title": "$:/language/CloseAll/Button",
"text": "Cerrar todo"
},
"$:/language/ColourPicker/Recent": {
"title": "$:/language/ColourPicker/Recent",
"text": "Recientes:"
},
"$:/language/ConfirmCancelTiddler": {
"title": "$:/language/ConfirmCancelTiddler",
"text": "¿Deseas descartar los cambios efectuados en \"&lt;$text text=&lt;&lt;title&gt;&gt;/&gt;\"?"
},
"$:/language/ConfirmDeleteTiddler": {
"title": "$:/language/ConfirmDeleteTiddler",
"text": "¿Deseas borrar \"&lt;$text text=&lt;&lt;title&gt;&gt;/&gt;\"?"
},
"$:/language/ConfirmEditShadowTiddler": {
"title": "$:/language/ConfirmEditShadowTiddler",
"text": "Estás a punto de editar un tiddler oculto&lt;br&gt;"
},
"$:/language/ConfirmOverwriteTiddler": {
"title": "$:/language/ConfirmOverwriteTiddler",
"text": "¿Deseas sobreescribir \"&lt;$text text=&lt;&lt;title&gt;&gt;/&gt;\"?"
},
"$:/language/Count": {
"title": "$:/language/Count",
"text": "Número"
},
"$:/language/DefaultNewTiddlerTitle": {
"title": "$:/language/DefaultNewTiddlerTitle",
"text": "Nuevo Tiddler"
},
"$:/language/DropMessage": {
"title": "$:/language/DropMessage",
"text": "Suéltalo aquí o pulsa ''ESC'' para cancelar"
},
"$:/language/Encryption/Cancel": {
"title": "$:/language/Encryption/Cancel",
"text": "Cancelar"
},
"$:/language/Encryption/ConfirmClearPassword": {
"title": "$:/language/Encryption/ConfirmClearPassword",
"text": "¿Deseas borrar la contraseña? &lt;br&gt;"
},
"$:/language/Encryption/Password": {
"title": "$:/language/Encryption/Password",
"text": "Contraseña"
},
"$:/language/Encryption/PasswordNoMatch": {
"title": "$:/language/Encryption/PasswordNoMatch",
"text": "Las contraseñas no coinciden"
},
"$:/language/Encryption/PromptSetPassword": {
"title": "$:/language/Encryption/PromptSetPassword",
"text": "Especifica nueva contraseña para este TiddlyWiki"
},
"$:/language/Encryption/RepeatPassword": {
"title": "$:/language/Encryption/RepeatPassword",
"text": "Repite la contraseña"
},
"$:/language/Encryption/SetPassword": {
"title": "$:/language/Encryption/SetPassword",
"text": "Establecer contraseña"
},
"$:/language/Encryption/Username": {
"title": "$:/language/Encryption/Username",
"text": "Usuario"
},
"$:/language/InternalJavaScriptError/Hint": {
"title": "$:/language/InternalJavaScriptError/Hint",
"text": "Tenemos un problema. Se recomienda que reinicies TiddlyWiki"
},
"$:/language/InternalJavaScriptError/Title": {
"title": "$:/language/InternalJavaScriptError/Title",
"text": "Error interno de JavaScript"
},
"$:/language/InvalidFieldName": {
"title": "$:/language/InvalidFieldName",
"text": "Caracteres ilegales en el campo \"&lt;$text text=&lt;&lt;fieldName&gt;&gt;/&gt;\"&lt;br&gt;"
},
"$:/language/LazyLoadingWarning": {
"title": "$:/language/LazyLoadingWarning",
"text": "&lt;p&gt;Cargando texto externo desde ''&lt;$text text={{!!_canonical_uri}}/&gt;''&lt;/p&gt;&lt;p&gt;Si este mensaje no desaparece, puede que se deba a que estás usando un navegador que con esta configuración no permite texto externo&lt;/br&gt;"
},
"$:/language/Vea https": {
"title": "$:/language/Vea https",
"text": "/tiddlywiki.com/#ExternalText&lt;/p&gt;"
},
"$:/language/MissingTiddler/Hint": {
"title": "$:/language/MissingTiddler/Hint",
"text": "El tiddler \"&lt;$text text=&lt;&lt;currentTiddler&gt;&gt;/&gt;\" no existe - haz clic en {{||$:/core/ui/Buttons/edit}} para crearlo"
},
"$:/language/OfficialPluginLibrary": {
"title": "$:/language/OfficialPluginLibrary",
"text": "Librería de plugins oficiales de ~TiddlyWiki"
},
"$:/language/OfficialPluginLibrary/Hint": {
"title": "$:/language/OfficialPluginLibrary/Hint",
"text": "Librería de plugins oficiales de ~TiddlyWiki en tiddlywiki.com&lt;br&gt;"
},
"$:/language/PluginReloadWarning": {
"title": "$:/language/PluginReloadWarning",
"text": "Guarda {{$:/core/ui/Buttons/save-wiki}} y recarga {{$:/core/ui/Buttons/refresh}} para que los cambios surtan efecto."
},
"$:/language/RecentChanges/DateFormat": {
"title": "$:/language/RecentChanges/DateFormat",
"text": "DD MMM YYYY"
},
"$:/language/SystemTiddler/Tooltip": {
"title": "$:/language/SystemTiddler/Tooltip",
"text": "Este es un tiddler de sistema"
},
"$:/language/TagManager/Colour/Heading": {
"title": "$:/language/TagManager/Colour/Heading",
"text": "Color"
},
"$:/language/TagManager/Count/Heading": {
"title": "$:/language/TagManager/Count/Heading",
"text": "Número"
},
"$:/language/TagManager/Icon/Heading": {
"title": "$:/language/TagManager/Icon/Heading",
"text": "Icono"
},
"$:/language/TagManager/Info/Heading": {
"title": "$:/language/TagManager/Info/Heading",
"text": "Información"
},
"$:/language/TagManager/Tag/Heading": {
"title": "$:/language/TagManager/Tag/Heading",
"text": "Etiqueta"
},
"$:/language/Tiddler/DateFormat": {
"title": "$:/language/Tiddler/DateFormat",
"text": "DD MMM YYYY a las hh:0mm"
},
"$:/language/UnsavedChangesWarning": {
"title": "$:/language/UnsavedChangesWarning",
"text": "Tienes cambios sin guardar en TiddlyWiki"
},
"$:/language/Modals/Download": {
"title": "$:/language/Modals/Download",
"type": "text/vnd.tiddlywiki",
"subtitle": "Download changes",
"footer": "&lt;$button message=\"tm-close-tiddler\"&gt;Close&lt;/$button&gt;",
"help": "https://tiddlywiki.com/static/DownloadingChanges.html",
"text": "Tu navegador sólo permite guardar manualmente\n\nPara guardar el wiki, haz clic con el botón derecho en el enlace de más abajo y selecciona \"Descargar archivo\" o \"Guardar enlace como...\" y selecciona a continuación la carpeta y el nombre que quieres darle\n\n//Puedes acelerar ligeramente estas acciones haciendo clic en el enlace conjuntamente con la tecla \"Control\" (Windows) o con la tecla \"Option\" (Mac OS X)&lt;br&gt;\nNo se te pedirán carpeta ni nombre, sino que se asignará automáticamente un nombre probablemente irreconocible -- necesitarás cambiar el nombre y darle extensión `.html` para usarlo//\n\nEn el caso de teléfonos móviles que no permiten la descarga de archivos, puedes marcar el enlace como favorito y luego sincronizar favoritos con tu ordenador y descargarlo normalmente desde ahí\n"
},
"$:/language/Modals/SaveInstructions": {
"title": "$:/language/Modals/SaveInstructions",
"type": "text/vnd.tiddlywiki",
"subtitle": "Save your work",
"footer": "&lt;$button message=\"tm-close-tiddler\"&gt;Close&lt;/$button&gt;",
"help": "https://tiddlywiki.com/static/SavingChanges.html",
"text": "Los cambios realizados a este wiki necesitan ser guardados como archivo ~TiddlyWiki HTML.\n\n!!! Navegadores de ordenador\n\n# Selecciona ''Guardar como'' en el menú ''Archivo''\n# Elige nombre de archivo y directorio\n#* Algunos navegadores también piden que especifiques el formato como ''Página web, sólo HTML'' o similar\n# Cierra esta pestaña\n\n!!! Navegadores en teléfonos o tabletas\n\n# Añade la página a tus favoritos\n#* Si tienes iCloud o Google Sync los favoritos se sincronizarán automáticamente con tu ordenador, desde donde puedes abrirlos o guardarlos como se explica más arriba\n# Cierra esta pestaña\n\n//Si en Mobile Safari vuelves a abrir los favoritos, volverás a ver este mensaje. Si quieres continuar y usar el archivo, simplemente cierra haciendo clic en el boton de cerrar indicado abajo.//\n"
},
"$:/config/NewJournal/Tags": {
"title": "$:/config/NewJournal/Tags",
"text": "Diario"
},
"$:/config/NewJournal/Title": {
"title": "$:/config/NewJournal/Title",
"text": "DD de MMM de YYYY"
},
"$:/language/Notifications/Save/Done": {
"title": "$:/language/Notifications/Save/Done",
"text": "Guardado"
},
"$:/language/Notifications/Save/Starting": {
"title": "$:/language/Notifications/Save/Starting",
"text": "Comenzando a guardar"
},
"$:/language/Search/DefaultResults/Caption": {
"title": "$:/language/Search/DefaultResults/Caption",
"text": "Lista"
},
"$:/language/Search/Filter/Caption": {
"title": "$:/language/Search/Filter/Caption",
"text": "Filtro"
},
"$:/language/Search/Filter/Hint": {
"title": "$:/language/Search/Filter/Hint",
"text": "Búsqueda por medio de [[expresiones de filtrado|https://tiddlywiki.com/static/Filters.html]] &lt;small&gt; (instrucciones en inglés)&lt;/small&gt;"
},
"$:/language/Search/Filter/Matches": {
"title": "$:/language/Search/Filter/Matches",
"text": "//&lt;small&gt;&lt;&lt;resultCount&gt;&gt; coincidencias&lt;/small&gt;//"
},
"$:/language/Search/Matches": {
"title": "$:/language/Search/Matches",
"text": "//&lt;small&gt;&lt;&lt;resultCount&gt;&gt; coincidencias &lt;/small&gt;//"
},
"$:/language/Search/Matches/All": {
"title": "$:/language/Search/Matches/All",
"text": "Cualquier coincidencia"
},
"$:/language/Search/Matches/Title": {
"title": "$:/language/Search/Matches/Title",
"text": "En título"
},
"$:/language/Search/Search": {
"title": "$:/language/Search/Search",
"text": "Búsqueda"
},
"$:/language/Search/Shadows/Caption": {
"title": "$:/language/Search/Shadows/Caption",
"text": "Ocultos"
},
"$:/language/Search/Shadows/Hint": {
"title": "$:/language/Search/Shadows/Hint",
"text": "Busca en los tiddlers ocultos"
},
"$:/language/Search/Shadows/Matches": {
"title": "$:/language/Search/Shadows/Matches",
"text": "//&lt;small&gt;&lt;&lt;resultCount&gt;&gt; coincidencias &lt;/small&gt;//"
},
"$:/language/Search/Standard/Caption": {
"title": "$:/language/Search/Standard/Caption",
"text": "Estándar"
},
"$:/language/Search/Standard/Hint": {
"title": "$:/language/Search/Standard/Hint",
"text": "Busca en los tiddlers estándar"
},
"$:/language/Search/Standard/Matches": {
"title": "$:/language/Search/Standard/Matches",
"text": "//&lt;small&gt;&lt;&lt;resultCount&gt;&gt; coincidencias &lt;/small&gt;//"
},
"$:/language/Search/System/Caption": {
"title": "$:/language/Search/System/Caption",
"text": "Sistema"
},
"$:/language/Search/System/Hint": {
"title": "$:/language/Search/System/Hint",
"text": "Busca en los tiddlers de sistema"
},
"$:/language/Search/System/Matches": {
"title": "$:/language/Search/System/Matches",
"text": "//&lt;small&gt;&lt;&lt;resultCount&gt;&gt; coincidencias &lt;/small&gt;//"
},
"$:/language/SideBar/All/Caption": {
"title": "$:/language/SideBar/All/Caption",
"text": "Todos"
},
"$:/language/SideBar/Contents/Caption": {
"title": "$:/language/SideBar/Contents/Caption",
"text": "Contenido"
},
"$:/language/SideBar/Drafts/Caption": {
"title": "$:/language/SideBar/Drafts/Caption",
"text": "Borradores"
},
"$:/language/SideBar/Missing/Caption": {
"title": "$:/language/SideBar/Missing/Caption",
"text": "Vacíos"
},
"$:/language/SideBar/More/Caption": {
"title": "$:/language/SideBar/More/Caption",
"text": "Más"
},
"$:/language/SideBar/Open/Caption": {
"title": "$:/language/SideBar/Open/Caption",
"text": "Abiertos"
},
"$:/language/SideBar/Orphans/Caption": {
"title": "$:/language/SideBar/Orphans/Caption",
"text": "Huérfanos"
},
"$:/language/SideBar/Recent/Caption": {
"title": "$:/language/SideBar/Recent/Caption",
"text": "Recientes"
},
"$:/language/SideBar/Shadows/Caption": {
"title": "$:/language/SideBar/Shadows/Caption",
"text": "Ocultos"
},
"$:/language/SideBar/System/Caption": {
"title": "$:/language/SideBar/System/Caption",
"text": "Sistema"
},
"$:/language/SideBar/Tags/Caption": {
"title": "$:/language/SideBar/Tags/Caption",
"text": "Etiquetas"
},
"$:/language/SideBar/Tags/Untagged/Caption": {
"title": "$:/language/SideBar/Tags/Untagged/Caption",
"text": "Sin etiqueta"
},
"$:/language/SideBar/Tools/Caption": {
"title": "$:/language/SideBar/Tools/Caption",
"text": "Herramientas"
},
"$:/language/SideBar/Types/Caption": {
"title": "$:/language/SideBar/Types/Caption",
"text": "Tipos"
},
"$:/SiteSubtitle": {
"title": "$:/SiteSubtitle",
"text": "Cuaderno de notas personal no-lineal en la web"
},
"$:/SiteTitle": {
"title": "$:/SiteTitle",
"text": "Mi ~TiddlyWiki"
},
"$:/language/Snippets/ListByTag": {
"title": "$:/language/Snippets/ListByTag",
"tags": "$:/tags/TextEditor/Snippet",
"caption": "Liste de tiddlers par etiqueta",
"text": "&lt;&lt;list-links \"[tag[task]sort[title]]\"&gt;&gt;\n"
},
"$:/language/Snippets/MacroDefinition": {
"title": "$:/language/Snippets/MacroDefinition",
"tags": "$:/tags/TextEditor/Snippet",
"caption": "Macro definition",
"text": "\\define macroName(param1:\"default value\",param2)\nTexto de la macro\n\\end\n"
},
"$:/language/Snippets/Table4x3": {
"title": "$:/language/Snippets/Table4x3",
"tags": "$:/tags/TextEditor/Snippet",
"caption": "Table with 4 columns by 3 rows",
"text": "|! |!Alfa |!Beta |!Gamma |!Delta |\n|!Uno | | | | |\n|!Dos | | | | |\n|!Tres | | | | |\n"
},
"$:/language/Snippets/TableOfContents": {
"title": "$:/language/Snippets/TableOfContents",
"tags": "$:/tags/TextEditor/Snippet",
"caption": "Table of Contents",
"text": "&lt;div class=\"tc-table-of-contents\"&gt;\n\n&lt;&lt;toc-selective-expandable 'TableOfContents'&gt;&gt;\n\n&lt;/div&gt;"
},
"$:/language/TiddlerInfo/Advanced/Caption": {
"title": "$:/language/TiddlerInfo/Advanced/Caption",
"text": "Avanzado"
},
"$:/language/TiddlerInfo/Advanced/PluginInfo/Empty/Hint": {
"title": "$:/language/TiddlerInfo/Advanced/PluginInfo/Empty/Hint",
"text": "No se han instalado"
},
"$:/language/TiddlerInfo/Advanced/PluginInfo/Heading": {
"title": "$:/language/TiddlerInfo/Advanced/PluginInfo/Heading",
"text": "Detalles del plugin"
},
"$:/language/TiddlerInfo/Advanced/PluginInfo/Hint": {
"title": "$:/language/TiddlerInfo/Advanced/PluginInfo/Hint",
"text": "Este plugin contiene los siguientes tiddlers ocultos"
},
"$:/language/TiddlerInfo/Advanced/ShadowInfo/Heading": {
"title": "$:/language/TiddlerInfo/Advanced/ShadowInfo/Heading",
"text": "Oculto"
},
"$:/language/TiddlerInfo/Advanced/ShadowInfo/NotShadow/Hint": {
"title": "$:/language/TiddlerInfo/Advanced/ShadowInfo/NotShadow/Hint",
"text": "El tiddler &lt;$link to=&lt;&lt;infoTiddler&gt;&gt;&gt;&lt;$text text=&lt;&lt;infoTiddler&gt;&gt;/&gt;&lt;/$link&gt; no es de tipo oculto"
},
"$:/language/TiddlerInfo/Advanced/ShadowInfo/OverriddenShadow/Hint": {
"title": "$:/language/TiddlerInfo/Advanced/ShadowInfo/OverriddenShadow/Hint",
"text": "Anulado por un tiddler estándar"
},
"$:/language/TiddlerInfo/Advanced/ShadowInfo/Shadow/Hint": {
"title": "$:/language/TiddlerInfo/Advanced/ShadowInfo/Shadow/Hint",
"text": "El tiddler &lt;$link to=&lt;&lt;infoTiddler&gt;&gt;&gt;&lt;$text text=&lt;&lt;infoTiddler&gt;&gt;/&gt;&lt;/$link&gt; es de tipo oculto"
},
"$:/language/TiddlerInfo/Advanced/ShadowInfo/Shadow/Source": {
"title": "$:/language/TiddlerInfo/Advanced/ShadowInfo/Shadow/Source",
"text": "Definido en el plugin &lt;$link to=&lt;&lt;pluginTiddler&gt;&gt;&gt;&lt;$text text=&lt;&lt;pluginTiddler&gt;&gt;/&gt;&lt;/$link&gt;"
},
"$:/language/TiddlerInfo/Fields/Caption": {
"title": "$:/language/TiddlerInfo/Fields/Caption",
"text": "Campos"
},
"$:/language/TiddlerInfo/List/Caption": {
"title": "$:/language/TiddlerInfo/List/Caption",
"text": "Lista"
},
"$:/language/TiddlerInfo/List/Empty": {
"title": "$:/language/TiddlerInfo/List/Empty",
"text": "Este tiddler no contiene listas"
},
"$:/language/TiddlerInfo/Listed/Caption": {
"title": "$:/language/TiddlerInfo/Listed/Caption",
"text": "En lista de"
},
"$:/language/TiddlerInfo/Listed/Empty": {
"title": "$:/language/TiddlerInfo/Listed/Empty",
"text": "Este tiddler no figura en la lista de ningún otro"
},
"$:/language/TiddlerInfo/References/Caption": {
"title": "$:/language/TiddlerInfo/References/Caption",
"text": "Referencias"
},
"$:/language/TiddlerInfo/References/Empty": {
"title": "$:/language/TiddlerInfo/References/Empty",
"text": "Ningún otro tiddler enlaza a este"
},
"$:/language/TiddlerInfo/Tagging/Caption": {
"title": "$:/language/TiddlerInfo/Tagging/Caption",
"text": "Etiquetado"
},
"$:/language/TiddlerInfo/Tagging/Empty": {
"title": "$:/language/TiddlerInfo/Tagging/Empty",
"text": "Ningún otro tiddler tiene esta misma etiqueta"
},
"$:/language/TiddlerInfo/Tools/Caption": {
"title": "$:/language/TiddlerInfo/Tools/Caption",
"text": "Herramientas"
},
"$:/language/Docs/Types/application/javascript": {
"title": "$:/language/Docs/Types/application/javascript",
"description": "Código JavaScript",
"name": "application/javascript",
"group": "Desarrollador"
},
"$:/language/Docs/Types/application/json": {
"title": "$:/language/Docs/Types/application/json",
"description": "Datos JSON",
"name": "application/json",
"group": "Desarrollador"
},
"$:/language/Docs/Types/application/x-tiddler-dictionary": {
"title": "$:/language/Docs/Types/application/x-tiddler-dictionary",
"description": "Diccionario de datos",
"name": "application/x-tiddler-dictionary",
"group": "Desarrollador"
},
"$:/language/Docs/Types/image/gif": {
"title": "$:/language/Docs/Types/image/gif",
"description": "Imagen .GIF",
"name": "image/gif",
"group": "Imagen"
},
"$:/language/Docs/Types/image/jpeg": {
"title": "$:/language/Docs/Types/image/jpeg",
"description": "Imagen .JPEG",
"name": "image/jpeg",
"group": "Imagen"
},
"$:/language/Docs/Types/image/png": {
"title": "$:/language/Docs/Types/image/png",
"description": "Imagen .PNG",
"name": "image/png",
"group": "Imagen"
},
"$:/language/Docs/Types/image/svg+xml": {
"title": "$:/language/Docs/Types/image/svg+xml",
"description": "Imagen .SVG",
"name": "image/svg+xml",
"group": "Imagen"
},
"$:/language/Docs/Types/image/x-icon": {
"title": "$:/language/Docs/Types/image/x-icon",
"description": "Archivo de icono en formato .ICO",
"name": "image/x-icon",
"group": "Imagen"
},
"$:/language/Docs/Types/text/css": {
"title": "$:/language/Docs/Types/text/css",
"description": "Hoja de estilos estática",
"name": "text/css",
"group": "Desarrollador"
},
"$:/language/Docs/Types/text/html": {
"title": "$:/language/Docs/Types/text/html",
"description": "Lenguaje de marcado HTML",
"name": "text/html",
"group": "Texto"
},
"$:/language/Docs/Types/text/plain": {
"title": "$:/language/Docs/Types/text/plain",
"description": "Texto plano",
"name": "text/plain",
"group": "Texto"
},
"$:/language/Docs/Types/text/vnd.tiddlywiki": {
"title": "$:/language/Docs/Types/text/vnd.tiddlywiki",
"description": "TiddlyWiki 5",
"name": "text/vnd.tiddlywiki",
"group": "Texto"
},
"$:/language/Docs/Types/text/x-tiddlywiki": {
"title": "$:/language/Docs/Types/text/x-tiddlywiki",
"description": "TiddlyWiki Classic",
"name": "text/x-tiddlywiki",
"group": "Texto"
},
"$:/languages/es-ES/icon": {
"title": "$:/languages/es-ES/icon",
"type": "image/svg+xml",
"text": "&lt;?xml version=\"1.0\" encoding=\"UTF-8\"?&gt;\n&lt;svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" height=\"500\" width=\"750\"&gt;\n&lt;rect width=\"750\" height=\"500\" fill=\"#c60b1e\"/&gt;\n&lt;rect width=\"750\" height=\"250\" y=\"125\" fill=\"#ffc400\"/&gt;\n&lt;g id=\"coa\" stroke=\"#000\" stroke-width=\"0.39\"&gt;\n&lt;g id=\"supporters\"&gt;\n&lt;g id=\"crown_left\" stroke-width=\"0.26\"&gt;\n&lt;path fill=\"#ad1519\" stroke-linejoin=\"round\" d=\"m167.99 222.24s-0.51 0-0.79-0.16-1.13-0.96-1.13-0.96l-0.68-0.49-0.62-0.85s-0.73-1.18-0.4-2.09c0.34-0.91 0.91-1.23 1.42-1.5 0.51-0.26 1.58-0.59 1.58-0.59s0.85-0.37 1.13-0.42c0.28-0.06 1.3-0.32 1.3-0.32s0.28-0.16 0.56-0.27c0.29-0.11 0.68-0.11 0.91-0.16 0.22-0.06 0.79-0.24 1.13-0.26 0.52-0.02 1.36 0.1 1.64 0.1s1.24 0.05 1.64 0.05c0.39 0 1.8-0.11 2.2-0.11 0.39 0 0.68-0.05 1.13 0 0.45 0.06 1.24 0.32 1.47 0.43s1.58 0.59 2.09 0.75 1.75 0.37 2.32 0.64c0.56 0.27 0.91 0.72 1.19 1.1 0.28 0.37 0.34 0.78 0.45 1.05 0.11 0.26 0.11 0.84 0 1.11-0.11 0.26-0.51 0.81-0.51 0.81l-0.62 1.02-0.79 0.64s-0.57 0.54-1.02 0.48c-0.45-0.04-5.03-0.86-7.97-0.86s-7.64 0.86-7.64 0.86h0.01z\"/&gt;\n&lt;g fill=\"#c8b100\"&gt;\n&lt;ellipse cx=\"175.66\" cy=\"215.68\" rx=\"1.38\" ry=\"2.5\"/&gt;\n&lt;ellipse cx=\"175.68\" cy=\"215.68\" rx=\"0.64\" ry=\"2.3\"/&gt;\n&lt;ellipse stroke=\"none\" cx=\"175.68\" cy=\"213.04\" rx=\"0.93\" ry=\"0.87\"/&gt;\n&lt;path stroke-width=\"0.3\" d=\"m176.96 212.74v0.58h-2.53v-0.58h0.94v-1.32h-0.62v-0.57h0.62v-0.57h0.6v0.57h0.62v0.57h-0.62v1.32h0.99\"/&gt;\n&lt;path fill=\"none\" d=\"m175.94,212.2a0.93,0.87 0 1,1 -0.5,0\"/&gt;\n&lt;path d=\"m175.68 222.08h-4.81l-0.11-1.18-0.23-1.23-0.23-1.53c-1.33-1.75-2.55-2.9-2.96-2.65 0.1-0.32 0.22-0.56 0.47-0.71 1.18-0.7 3.61 0.98 5.44 3.74 0.16 0.25 0.32 0.5 0.46 0.75h3.97c0.14-0.25 0.3-0.5 0.46-0.75 1.82-2.76 4.26-4.44 5.43-3.74 0.26 0.15 0.37 0.39 0.47 0.71-0.41-0.24-1.62 0.9-2.96 2.65l-0.23 1.53-0.23 1.23-0.1 1.18h-4.84z\"/&gt;\n&lt;path fill=\"none\" d=\"m167.55 215.44c0.91-0.53 3.02 1.14 4.73 3.74m11.55-3.74c-0.91-0.53-3.01 1.14-4.73 3.74\"/&gt;\n&lt;/g&gt;\n&lt;g id=\"crown_pt1\" fill=\"#c8b100\"&gt;\n&lt;path d=\"m168.58 224.25c-0.2-0.57-0.58-1.08-0.58-1.08 1.95-0.57 4.66-0.93 7.67-0.94 3.01 0.01 5.75 0.37 7.69 0.94 0 0-0.22 0.38-0.52 0.91-0.17 0.3-0.39 0.81-0.38 0.81-1.75-0.54-4.02-0.81-6.8-0.82-2.79 0.01-5.46 0.35-6.86 0.86 0.02 0-0.1-0.32-0.23-0.68h0.01\"/&gt;\n&lt;path d=\"m175.67 226.73c2.43-0.01 5.11-0.38 6.1-0.63 0.66-0.2 1.05-0.49 0.98-0.84-0.04-0.16-0.18-0.3-0.37-0.38-1.46-0.47-4.07-0.8-6.71-0.8-2.63 0-5.27 0.33-6.72 0.8-0.19 0.08-0.33 0.22-0.37 0.38-0.07 0.35 0.32 0.64 0.98 0.84 0.99 0.25 3.68 0.62 6.11 0.63z\"/&gt;\n&lt;path d=\"m183.48 222.08l-0.59-0.53s-0.57 0.34-1.28 0.24c-0.7-0.11-0.93-0.97-0.93-0.97s-0.79 0.67-1.44 0.62c-0.65-0.06-1.07-0.62-1.07-0.62s-0.71 0.51-1.33 0.46c-0.62-0.06-1.21-0.83-1.21-0.83s-0.63 0.8-1.25 0.86c-0.62 0.05-1.13-0.54-1.13-0.54s-0.28 0.59-1.07 0.72-1.47-0.62-1.47-0.62-0.45 0.73-0.99 0.92c-0.54 0.18-1.24-0.27-1.24-0.27s-0.12 0.27-0.2 0.43-0.31 0.19-0.31 0.19l0.18 0.47c1.93-0.56 4.56-0.91 7.53-0.91s5.67 0.35 7.61 0.92l0.2-0.54h-0.01z\"/&gt;\n&lt;path d=\"m175.69 219.49l0.28 0.05c-0.05 0.12-0.06 0.24-0.06 0.38 0 0.58 0.5 1.05 1.12 1.05 0.49 0 0.91-0.31 1.06-0.73 0.01 0.01 0.11-0.38 0.15-0.38 0.03 0 0.03 0.41 0.05 0.41 0.07 0.53 0.55 0.89 1.1 0.89 0.62 0 1.11-0.47 1.11-1.06 0-0.04 0-0.08-0.01-0.12l0.35-0.35 0.19 0.44c-0.07 0.14-0.1 0.29-0.1 0.46 0 0.56 0.47 1.01 1.06 1.01 0.37 0 0.69-0.18 0.88-0.45l0.23-0.29v0.36c0 0.34 0.14 0.66 0.49 0.71 0 0 0.38 0.03 0.91-0.38 0.52-0.41 0.8-0.75 0.8-0.75l0.03 0.42s-0.51 0.84-0.97 1.1c-0.25 0.15-0.64 0.31-0.95 0.25-0.32-0.05-0.55-0.31-0.67-0.61-0.23 0.14-0.51 0.22-0.8 0.22-0.63 0-1.2-0.35-1.42-0.86-0.29 0.31-0.69 0.5-1.16 0.5-0.51 0-0.97-0.23-1.26-0.58-0.28 0.27-0.67 0.43-1.09 0.43-0.55 0-1.05-0.28-1.33-0.69-0.29 0.41-0.78 0.69-1.34 0.69-0.42 0-0.81-0.16-1.09-0.43-0.29 0.35-0.75 0.58-1.25 0.58-0.48 0-0.88-0.19-1.17-0.5-0.22 0.51-0.79 0.86-1.42 0.86-0.29 0-0.56-0.08-0.79-0.22-0.12 0.3-0.35 0.56-0.68
}
}
}</pre>
</div>
<div created="20210925143035625" modified="20210925143036858" title="$:/layout">
<pre>$:/core/ui/PageTemplate</pre>
</div>
<div created="20210917055706607" modified="20210917055820142" title="$:/palette">
<pre>$:/palettes/Vanilla</pre>
</div>
<div description="Pale and unobtrusive" name="Vanilla" tags="$:/tags/Palette" title="$:/palettes/Vanilla" type="application/x-tiddler-dictionary">
<pre>alert-background: #ffe476
alert-border: #b99e2f
alert-highlight: #881122
alert-muted-foreground: #b99e2f
background: #ffffff
blockquote-bar: &lt;&lt;colour muted-foreground&gt;&gt;
button-background:
button-foreground:
button-border:
code-background: #f7f7f9
code-border: #e1e1e8
code-foreground: #dd1144
diff-delete-background: #ffc9c9
diff-delete-foreground: &lt;&lt;colour foreground&gt;&gt;
diff-equal-background:
diff-equal-foreground: &lt;&lt;colour foreground&gt;&gt;
diff-insert-background: #aaefad
diff-insert-foreground: &lt;&lt;colour foreground&gt;&gt;
diff-invisible-background:
diff-invisible-foreground: &lt;&lt;colour muted-foreground&gt;&gt;
dirty-indicator: #ff0000
download-background: #34c734
download-foreground: &lt;&lt;colour background&gt;&gt;
dragger-background: &lt;&lt;colour foreground&gt;&gt;
dragger-foreground: &lt;&lt;colour background&gt;&gt;
dropdown-background: &lt;&lt;colour background&gt;&gt;
dropdown-border: &lt;&lt;colour muted-foreground&gt;&gt;
dropdown-tab-background-selected: #fff
dropdown-tab-background: #ececec
dropzone-background: rgba(0,200,0,0.7)
external-link-background-hover: inherit
external-link-background-visited: inherit
external-link-background: inherit
external-link-foreground-hover: inherit
external-link-foreground-visited: #0000aa
external-link-foreground: #0000ee
foreground: #333333
message-background: #ecf2ff
message-border: #cfd6e6
message-foreground: #547599
modal-backdrop: &lt;&lt;colour foreground&gt;&gt;
modal-background: &lt;&lt;colour background&gt;&gt;
modal-border: #999999
modal-footer-background: #f5f5f5
modal-footer-border: #dddddd
modal-header-border: #eeeeee
muted-foreground: #bbb
notification-background: #ffffdd
notification-border: #999999
page-background: #f4f4f4
pre-background: #f5f5f5
pre-border: #cccccc
primary: #5778d8
selection-background:
selection-foreground:
select-tag-background:
select-tag-foreground:
sidebar-button-foreground: &lt;&lt;colour foreground&gt;&gt;
sidebar-controls-foreground-hover: #000000
sidebar-controls-foreground: #aaaaaa
sidebar-foreground-shadow: rgba(255,255,255, 0.8)
sidebar-foreground: #acacac
sidebar-muted-foreground-hover: #444444
sidebar-muted-foreground: #c0c0c0
sidebar-tab-background-selected: #f4f4f4
sidebar-tab-background: #e0e0e0
sidebar-tab-border-selected: &lt;&lt;colour tab-border-selected&gt;&gt;
sidebar-tab-border: &lt;&lt;colour tab-border&gt;&gt;
sidebar-tab-divider: #e4e4e4
sidebar-tab-foreground-selected:
sidebar-tab-foreground: &lt;&lt;colour tab-foreground&gt;&gt;
sidebar-tiddler-link-foreground-hover: #444444
sidebar-tiddler-link-foreground: #999999
site-title-foreground: &lt;&lt;colour tiddler-title-foreground&gt;&gt;
static-alert-foreground: #aaaaaa
tab-background-selected: #ffffff
tab-background: #d8d8d8
tab-border-selected: #d8d8d8
tab-border: #cccccc
tab-divider: #d8d8d8
tab-foreground-selected: &lt;&lt;colour tab-foreground&gt;&gt;
tab-foreground: #666666
table-border: #dddddd
table-footer-background: #a8a8a8
table-header-background: #f0f0f0
tag-background: #ec6
tag-foreground: #ffffff
tiddler-background: &lt;&lt;colour background&gt;&gt;
tiddler-border: &lt;&lt;colour background&gt;&gt;
tiddler-controls-foreground-hover: #888888
tiddler-controls-foreground-selected: #444444
tiddler-controls-foreground: #cccccc
tiddler-editor-background: #f8f8f8
tiddler-editor-border-image: #ffffff
tiddler-editor-border: #cccccc
tiddler-editor-fields-even: #e0e8e0
tiddler-editor-fields-odd: #f0f4f0
tiddler-info-background: #f8f8f8
tiddler-info-border: #dddddd
tiddler-info-tab-background: #f8f8f8
tiddler-link-background: &lt;&lt;colour background&gt;&gt;
tiddler-link-foreground: &lt;&lt;colour primary&gt;&gt;
tiddler-subtitle-foreground: #c0c0c0
tiddler-title-foreground: #182955
toolbar-new-button:
toolbar-options-button:
toolbar-save-button:
toolbar-info-button:
toolbar-edit-button:
toolbar-close-button:
toolbar-delete-button:
toolbar-cancel-button:
toolbar-done-button:
untagged-background: #999999
very-muted-foreground: #888888
wikilist-background: #e5e5e5
wikilist-item: #fff
wikilist-info: #000
wikilist-title: #666
wikilist-title-svg: &lt;&lt;colour wikilist-title&gt;&gt;
wikilist-url: #aaa
wikilist-button-open: #4fb82b
wikilist-button-open-hover: green
wikilist-button-reveal: #5778d8
wikilist-button-reveal-hover: blue
wikilist-button-remove: #d85778
wikilist-button-remove-hover: red
wikilist-toolbar-background: #d3d3d3
wikilist-toolbar-foreground: #888
wikilist-droplink-dragover: rgba(255,192,192,0.5)
wikilist-button-background: #acacac
wikilist-button-foreground: #000
</pre>
</div>
<div author="Danielo Rodriguez" bag="default" core-version="&gt;=5.1.0" dependents="" description="double click to edit tiddlers" list="readme" plugin-type="plugin" revision="0" source="https://github.com/danielo515/TW5-2click2edit" title="$:/plugins/danielo515/2click2edit" type="application/json" version="0.1">
<pre>{
"tiddlers": {
"$:/plugins/danielo515/2click2edit/ClickListener.js": {
"text": "/*\\\ntitle: $:/plugins/danielo515/2click2edit/ClickListener.js\ntype: application/javascript\nmodule-type: widget\n\nThis widgets adds an double click event listener to its parent\n\n\\*/\n\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar ClickListener = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nClickListener.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nClickListener.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.execute();\n\tvar self = this;\n /*Since the event listener have been added to the parent, the \"this\" property is pointing to the\n wrong object, we should call our edit function with our widget object set as the this property.*/\n parent.addEventListener(\"dblclick\",function(event){self.editTiddler.call(self,event)});\n};\n\nClickListener.prototype.editTiddler = function(event) {\n this.dispatchEvent({type: \"tm-edit-tiddler\", param: this.getVariable(\"currentTiddler\")}); \n};\n\n/*\nCompute the internal state of the widget\n*/\nClickListener.prototype.execute = function() {\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nClickListener.prototype.refresh = function(changedTiddlers) {\n\treturn false;\n};\n\nexports.click = ClickListener;\n\n})();",
"title": "$:/plugins/danielo515/2click2edit/ClickListener.js",
"type": "application/javascript",
"module-type": "widget"
},
"$:/plugins/danielo515/2click2edit/readme": {
"title": "$:/plugins/danielo515/2click2edit/readme",
"text": "This plugin adds the ability to edit tiddlers by double clicking on its body.\nJust try to edit any tiddler shown here by double clicking on it.\n\nThis can be considered a fast solution. It is only to fill the gap until TiddlyWiki adds support \nfor it officially.\n"
},
"$:/plugins/danielo515/2click2edit/ui/ViewTemplate": {
"tags": "$:/tags/ViewTemplate",
"title": "$:/plugins/danielo515/2click2edit/ui/ViewTemplate",
"type": "text/vnd.tiddlywiki",
"text": "&lt;$click&gt;"
}
}
}</pre>
</div>
<div author="Danielo Rodrigez" bag="default" core-version="&gt;=5.1.0" created="20201022113249540" dependents="" description="Context search - provides visual highlight of search results" list="readme" modified="20210301140136035" plugin-type="plugin" revision="0" source="https://github.com/danielo515/TW5-contextPlugin" tags="rr-plugins rr-TW5" title="$:/plugins/danielo515/ContextPlugin" type="application/json" version="2.1.0">
<pre>{
"tiddlers": {
"$:/plugins/danielo515/ContextPlugin/widgets/context.js": {
"created": "20140418153435777",
"creator": "danielo",
"modified": "20140530231943517",
"modifier": "danielo",
"module-type": "widget",
"title": "$:/plugins/danielo515/ContextPlugin/widgets/context.js",
"type": "application/javascript",
"text": "/*\\\\\ntitle: $:/core/modules/widgets/danielo/context-widget.js\ntype: application/javascript\nmodule-type: widget\n\nEdit-text widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\nvar contextWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\ncontextWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\ncontextWidget.prototype.render = function(parent,nextSibling) {\n // Save the parent dom node\n\tthis.parentDomNode = parent;\n\t// Compute our attributes\n\tthis.computeAttributes();\n\t// Execute our logic\n\tthis.execute();\n \n if(this.term &amp;&amp; this.term.length&gt;3){\n \n this.createRegexp();\n var matches = this.executeRegexp();\n\t if(matches.length &gt; 0){ \n this.domNode = this.document.createElement(this.element);\n this.domNode.className=\"tw-context\";\n this.composeResults( matches ); //this appends to domNode \n \t// Insert element\n \tparent.insertBefore(this.domNode,nextSibling);\n \tthis.renderChildren(this.domNode,null);\n\t \tthis.domNodes.push(this.domNode);\n }\n }\n\t\n};\n\n/*\nCompute the internal state of the widget\n*/\ncontextWidget.prototype.execute = function() {\n\t// Get the parameters from the attributes\n this.matchedClass = this.getAttribute(\"matchClass\",\"matched\");\n\tthis.tiddler = this.getAttribute( \"tiddler\",this.getVariable(\"currentTiddler\") );\n this.term = this.getAttribute(\"term\",this.getAttribute(\"searchTerm\"));\n\tthis.contextLength = this.getAttribute(\"length\",50);\n this.before = this.getAttribute(\"before\",this.contextLength);\n this.after = this.getAttribute(\"after\",this.contextLength);\n this.maxMatches = this.getAttribute(\"maxMatches\",10);\n this.element = this.getAttribute(\"element\",\"pre\");\n\tthis.makeChildWidgets();\n};\n\n /*Create the regular expression*/\ncontextWidget.prototype.createRegexp = function()\n{\n var regString = \"(\\\\w+[\\\\s\\\\S]{0,#before#})?(#term#)([\\\\s\\\\S]{0,#after#}\\\\w+)?\";\n\n var regString = regString.replace(\"#before#\",this.before).replace(\"#term#\", $tw.utils.escapeRegExp(this.term) ) .replace(\"#after#\",this.after);\n this.regexp = new RegExp(regString,\"ig\");\n //console.log(regString);\n};\n/*\nexecute the regular expresion\n*/\ncontextWidget.prototype.executeRegexp = function()\n{\n var text = this.wiki.getTiddlerText(this.tiddler), match,results = new Array();\n while( (match = this.regexp.exec( text ) ) &amp;&amp; (results.length &lt; this.maxMatches) )\n { results.push(match) }\n //console.log(\"matches\",results);\n return results;\n};\n\n/*\ncompose the results\nmatches : array of match objects from regular expression execute\n*/\ncontextWidget.prototype.composeResults = function(matches){\n var result=[], self=this, node = this.domNode,\n dots = textNode(\"...\\n\"),\n span = matchedNode( this.term );\n\n for(var i=0; i &lt; matches.length; i++){\n processMatch( matches[i] );\n }\n \n function processMatch(match){\n if( match.index !== 0) node.appendChild( dots.cloneNode(true) );\n for( var i=1;i&lt;match.length;i++ ) {//match[0] full matched text (all groups together)\n if( match[i] ) {\n if ( match[i].toLowerCase() == self.term.toLowerCase() ) \n node.appendChild( match[i] == self.term ? span.cloneNode(true) : matchedNode( match[i] ) )\n else\n node.appendChild( textNode( match[i]) )\n }\n }\n if( match.index + match[0].length &lt; match.input.length) node.appendChild( dots.cloneNode(true) );\n }\n \n function textNode(text){ return self.document.createTextNode(text) }\n function matchedNode(text) { \n var node = self.document.createElement(\"span\"); node.appendChild( textNode(text) ); node.className = self.matchedClass;\n return node }\n \n};\n/*\nSelect
},
"$:/plugins/danielo515/ContextPlugin/visualizer": {
"title": "$:/plugins/danielo515/ContextPlugin/visualizer",
"tags": "$:/tags/SearchResults",
"caption": "Context",
"text": "&lt;$list filter=\"[!is[system]search{$:/temp/search}sort[title]limit[250]]\"&gt;\r\n {{!!title||$:/core/ui/ListItemTemplate}}\r\n &lt;$context term={{$:/temp/search}} /&gt;\r\n&lt;/$list&gt;\r\n"
},
"$:/plugins/danielo515/ContextPlugin/Stylesheet/results": {
"created": "20140529162823729",
"tags": "$:/tags/Stylesheet contextPlugin",
"title": "$:/plugins/danielo515/ContextPlugin/Stylesheet/results",
"type": "text/css",
"text": ".matched{background-color:yellow}\n.tw-context {/*border:1px solid;\n /*word-break: break-all; word-wrap: break-word*/}"
},
"$:/plugins/danielo515/ContextPlugin/Caption": {
"created": "20140530174219263",
"tags": "contextPlugin",
"title": "$:/plugins/danielo515/ContextPlugin/Caption",
"type": "text/vnd.tiddlywiki",
"text": "Context search"
},
"Context Search": {
"caption": "{{$:/plugins/danielo515/ContextPlugin/Caption}}",
"created": "20140530173407542",
"tags": "$:/tags/AdvancedSearch",
"title": "Context Search",
"type": "text/vnd.tiddlywiki",
"text": "\\define lingo-base() $:/language/Search/\n&lt;$linkcatcher to=\"$:/temp/advancedsearch\"&gt;\n\n&lt;&lt;lingo Standard/Hint&gt;&gt;\n\n&lt;div class=\"tw-search\"&gt;&lt;$edit-text tiddler=\"$:/temp/advancedsearch\" type=\"search\" tag=\"input\"/&gt;&lt;$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\"&gt; &lt;$link to=\"\" class=\"btn-invisible\"&gt;{{$:/core/images/close-button}}&lt;/$link&gt;&lt;/$reveal&gt;&lt;/div&gt;\n\n&lt;/$linkcatcher&gt;\n\n&lt;$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\"&gt;\n&lt;div class=\"tw-search-results\"&gt;\n\n&lt;&lt;lingo Standard/Matches&gt;&gt;\n\n&lt;$list filter=\"[!is[system]search{$:/temp/advancedsearch}sort[title]limit[250]]\"&gt;\n{{!!title||$:/core/ui/ListItemTemplate}}\n&lt;$context term={{$:/temp/advancedsearch}}/&gt;\n&lt;/$list&gt;\n\n&lt;/div&gt;\n\n&lt;/$reveal&gt;\n\n&lt;$reveal state=\"$:/temp/advancedsearch\" type=\"match\" text=\"\"&gt;\n\n&lt;/$reveal&gt;\n"
},
"$:/plugins/danielo515/ContextPlugin/readme": {
"title": "$:/plugins/danielo515/ContextPlugin/readme",
"text": "!Usage\n\nAfter installing the plugin you will have a new tab in [[$:/AdvancedSearch]] called [[Context Search]]. If you want this functionality in other places you will have to edit the desired tiddler yourself adding the ''context widget''. For more details about using the widget see the section below.\n\n!!Using the widget\n\nThe very basic usage of the widget is the following:\n\n```\r\n&lt;$context term=\"lorem\"/&gt;\r\n```\r\nWhich will render as:\r\n&lt;$context term=\"lorem\"/&gt;\n\nThe widgets will search inside the current tiddler by default. Because that you see the same content twice here. This example is not very useful. Other more meaningful would be:\n\n```\r\n&lt;$list filter=\"[search{$:/temp/advancedsearch}sort[title]limit[250]]\"&gt;\r\n{{!!title||$:/core/ui/ListItemTemplate}}\r\n&lt;$context term={{$:/temp/advancedsearch}}/&gt;\r\n&lt;/$list&gt;\r\n```\n\nThat will search for tiddlers containing the text specified in [[$:/temp/advancedsearch]] and will display a link to the matching tiddlers plus a preview of the matching content. Something very similar is used in [[Context Search]]. Below you can find a complete list of parameters and their default values.\n\n|! parameter |! description | !default |\r\n| term | The term you want to search ||\r\n| searchTerm | An alias for the previous one ||\r\n| tiddler | The tiddler's name to look into | current tiddler |\r\n| length | Number of context characters to show | 50 |\r\n| before | Number of characters before the matched term to show | the value of the length parameter |\r\n| after | Number of characters after the matched term to show | the value of the length parameter |\r\n| maxMatches | maximun number of matched elements to show. Incrementing this can cause several performance issues | 10 |\r\n| element | Node element to create. This element will contain the results of the search. If you want to style it its class is `tw-context` | `&lt;pre&gt;` |\r\n| matchClass | The css class to assign to the matched terms in the results. This is used to highlight the results | matched |\n\n!Customizing the output\r\nThere are not many ways to customize the output of this widget. You can specify ''what type of node you want to create'' to wrap the results (div,span...). The default is `&lt;pre&gt;`. This container is created with the class `tw-context` so you can easily apply styles to it. Something similar happens to the ''highlighted'' words. You can specify the name of the class to assign to it and also you can apply styles to that class.\n\nA very basic example of customization could be:\n\n# Create a tiddler, for example [[$/plugins/danielo515/context/css]]\r\n# Paste the following text or any css rule you want: \"\"\"\n\n&lt;pre&gt;\r\n.matched{background-color:yellow}\r\n.tw-context {\r\n border:1px solid blue;\r\n word-break: break-all; word-wrap: break-word;}\r\n&lt;/pre&gt;\r\n\"\"\"\r\n# Tag it with `$:/tags/stylesheet`\r\n# Save the tiddler"
}
}
}</pre>
</div>
<div author="Felix Küppers" core-version="&gt;=5.1.5" dependents="" description="HotZone Be notified when tiddlers are scrolled into view" list="Configuration License Readme" plugin-type="plugin" released="" source="https://github.com/felixhayashi/TW5-HotZone" title="$:/plugins/felixhayashi/hotzone" type="application/json" version="0.0.3">
<pre>{
"tiddlers": {
"$:/plugins/felixhayashi/hotzone/config.js": {
"title": "$:/plugins/felixhayashi/hotzone/config.js",
"text": "/*\\\n\ntitle: $:/plugins/felixhayashi/hotzone/config.js\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n(function(){\"use strict\";exports.config={classNames:{storyRiver:\"tc-story-river\",tiddlerFrame:\"tc-tiddler-frame\",tiddlerTitle:\"tc-title\"},references:{userConfig:\"$:/config/hotzone/focusOffset\",focussedTiddlerStore:\"$:/temp/focussedTiddler\"},checkbackTime:$tw.utils.getAnimationDuration()}})();",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/hotzone/hotzone.js": {
"title": "$:/plugins/felixhayashi/hotzone/hotzone.js",
"text": "/*\\\n\ntitle: $:/plugins/felixhayashi/hotzone/hotzone.js\ntype: application/javascript\nmodule-type: startup\n\n@preserve\n\n\\*/\n(function(){\"use strict\";exports.name=\"hotzone\";exports.platforms=[\"browser\"];exports.after=[\"story\"];exports.synchronous=true;exports.startup=function(){var t=require(\"$:/plugins/felixhayashi/hotzone/config.js\").config;var e=null;var i=false;var r=document.getElementsByClassName(t.classNames.storyRiver)[0];var s=$tw.wiki.getTiddlerData(t.references.userConfig,{});var a=isNaN(parseInt(s.focusOffset))?150:parseInt(s.focusOffset);var n=function(e,i,r){if(!(e instanceof Element))return;if(!$tw.utils.hasClass(e,t.classNames.tiddlerFrame))return;var s=e.getElementsByClassName(t.classNames.tiddlerTitle)[0];if(s){var a=s.innerText||s.textContent;return a.trim()}};var o=function(t){if(!i){i=true;window.setTimeout(f,t||0)}};var l=function(e,i){$tw.wiki.addTiddler(new $tw.Tiddler({title:t.references.focussedTiddlerStore,text:e},$tw.wiki.getModificationFields()));if(i){var r=document.getElementsByClassName(\"hzone-focus\")[0];if(r){$tw.utils.removeClass(r,\"hzone-focus\")}$tw.utils.addClass(i,\"hzone-focus\")}};var f=function(){i=false;var s=$tw.wiki.getTiddler(\"$:/StoryList\");if(s&amp;&amp;s.fields.list.length){var o=null;var f=Number.MAX_VALUE;var d=r.children;var u=t.classNames.tiddlerFrame;for(var c=d.length;c--;){if($tw.utils.hasClass(d[c],u)){var v=d[c].getBoundingClientRect();var w=Math.min(Math.abs(a-v.top),Math.abs(a-v.bottom));if(w&lt;f){o=d[c];f=w}}}var m=n(o);if(m!==e&amp;&amp;$tw.wiki.getTiddler(m)){e=m;l(e,o);return}}else if(e){e=\"\";l(e)}};var d=function(t){if(t[\"$:/HistoryList\"]){if(!$tw.wiki.tiddlerExists(\"$:/HistoryList\"))return;var e=$tw.wiki.getTiddler(\"$:/HistoryList\").fields[\"current-tiddler\"];var i=$tw.wiki.getTiddlerList(\"$:/StoryList\");var r=i.indexOf(e)&gt;=0;if(!r)return;o($tw.utils.getAnimationDuration()+100)}else if(t[\"$:/StoryList\"]){o($tw.utils.getAnimationDuration()+100)}};var u=function(t){o(250)};$tw.wiki.addEventListener(\"change\",d);window.addEventListener(\"scroll\",u,false);u()}})();",
"type": "application/javascript",
"module-type": "startup"
},
"$:/plugins/felixhayashi/hotzone/Configuration": {
"title": "$:/plugins/felixhayashi/hotzone/Configuration",
"text": "Please see the [[GitHub page|https://github.com/felixhayashi/TW5-HotZone]] for more information on the options.\n\nSave and reload the wiki to activate changes.\n\n&lt;table&gt;\n &lt;tr&gt;\n &lt;th align=\"left\"&gt;Focus offset:&lt;/th&gt;\n &lt;td&gt;&lt;$edit-text tiddler=\"$:/config/hotzone/focusOffset\" tag=\"input\" default=\"71px\" /&gt;&lt;/td&gt;\n &lt;/tr&gt;\n&lt;/table&gt;"
},
"$:/temp/focussedTiddler": {
"title": "$:/temp/focussedTiddler"
},
"$:/plugins/felixhayashi/hotzone/License": {
"title": "$:/plugins/felixhayashi/hotzone/License",
"text": "This code is released under the BSD license. For the exact terms visit:\n\nhttps://github.com/felixhayashi/TW5-HotZone/blob/master/LICENSE"
},
"$:/plugins/felixhayashi/hotzone/Readme": {
"title": "$:/plugins/felixhayashi/hotzone/Readme",
"text": "Please visit the [[GitHub page|https://github.com/felixhayashi/TW5-HotZone]] for more information."
}
}
}</pre>
</div>
<div author="Felix Küppers" core-version="&gt;=5.1.5" dependents="" description="Respawn Open default tiddlers when river is empty" list="Configuration License Readme" plugin-type="plugin" released="" source="https://github.com/felixhayashi/TW5-respawn" title="$:/plugins/felixhayashi/respawn" type="application/json" version="0.0.3">
<pre>{
"tiddlers": {
"$:/plugins/felixhayashi/respawn/respawn.js": {
"title": "$:/plugins/felixhayashi/respawn/respawn.js",
"text": "/*\\\n\ntitle: $:/plugins/felixhayashi/respawn/respawn.js\ntype: application/javascript\nmodule-type: startup\n\n@preserve\n\n\\*/\n\n(function(){\n \n /*jslint node: true, browser: true */\n /*global $tw: false */\n \"use strict\";\n \n var configTRef = \"$:/plugins/felixhayashi/respawn/config\";\n \n var changeListener = function(changedTiddlers) {\n \n if(!changedTiddlers[\"$:/StoryList\"]) return;\n \n var tObj = $tw.wiki.getTiddler(\"$:/StoryList\");\n if(tObj &amp;&amp; !tObj.fields[\"list\"].length) {\n \n var confTObj = $tw.wiki.getTiddler(configTRef);\n var config = confTObj ? confTObj.fields : {};\n \n window.setTimeout(function() {\n $tw.rootWidget.dispatchEvent({\n type: \"tm-home\"\n });\n }, parseInt(config.delay) || 500);\n }\n \n };\n \n exports.name = \"respawn\";\n exports.platforms = [\"browser\"];\n exports.after = [\"story\"];\n exports.synchronous = true;\n \n exports.startup = function() {\n \n $tw.wiki.addEventListener(\"change\", changeListener);\n \n };\n\n})();\n",
"type": "application/javascript",
"module-type": "startup"
},
"$:/plugins/felixhayashi/respawn/Configuration": {
"title": "$:/plugins/felixhayashi/respawn/Configuration",
"text": "&lt;!-- The config output is not written to this tiddler! --&gt;\n\nPlease see the [[GitHub page|https://github.com/felixhayashi/TW5-Respawn]] for more information on the options.\n\nYou may have to save and reload the wiki to activate changes.\n\n&lt;table&gt;\n &lt;tr&gt;\n &lt;th align=\"left\"&gt;Delay (seconds):&lt;/th&gt;\n &lt;td&gt;\n &lt;$edit-text\n tiddler=\"$:/plugins/felixhayashi/respawn/config\"\n field=\"delay\"\n tag=\"input\"\n default=\"500\" /&gt;\n &lt;/td&gt;\n &lt;/tr&gt;\n&lt;/table&gt;"
},
"$:/plugins/felixhayashi/respawn/License": {
"title": "$:/plugins/felixhayashi/respawn/License",
"text": "This code is released under the BSD license. For the exact terms visit:\n\nhttps://github.com/felixhayashi/TW5-Respawn/blob/master/LICENSE"
},
"$:/plugins/felixhayashi/respawn/Readme": {
"title": "$:/plugins/felixhayashi/respawn/Readme",
"text": "Please visit the [[GitHub page|https://github.com/felixhayashi/TW5-Respawn]] for more information."
}
}
}</pre>
</div>
<div author="Felix Küppers" core-version="&gt;=5.1.5" dependents="$:/plugins/felixhayashi/vis" depends="$:/plugins/felixhayashi/vis" description="TiddlyMap Map drawing and topic visualization for your wiki" list="readme license" modified="20210725025902954" plugin-type="plugin" released="Sun, 25 Aug 2019 22:19:25 GMT" source="https://github.com/felixhayashi/TW5-TiddlyMap" suggested="$:/plugins/felixhayashi/topstoryview" title="$:/plugins/felixhayashi/tiddlymap" type="application/json" version="0.16.1+9773">
<pre>{
"tiddlers": {
"$:/plugins/felixhayashi/tiddlymap/layout": {
"text": "\\rules only filteredtranscludeinline transcludeinline macrodef macrocallinline \n\nbody .tc-page-container-wrapper.tc-modal-displayed{-webkit-filter:inherit;-moz-filter:inherit;filter:inherit}body .tc-modal-wrapper{z-index:1010}body .tc-modal-wrapper .tc-modal-header svg{vertical-align:sub}body .tc-modal-wrapper .tc-modal-header h3{line-height:10px}body .tc-modal-wrapper .tc-modal-body{min-height:250px;max-height:70vh;padding-top:0px;padding-bottom:0px;overflow:auto}body .tc-modal-wrapper .tc-modal-footer{padding:8px}body .tc-modal-wrapper .tc-modal-footer .tmap-dialog-button{font-weight:bold}body .tc-modal-wrapper .tc-modal-footer .tmap-hidden-close-button{display:none}table.tmap-table tr:nth-child(odd),.tc-modal-body table.tmap-config-table tr:nth-child(odd){background-color:#F0F0F0}table.tmap-table tr:nth-child(even),.tc-modal-body table.tmap-config-table tr:nth-child(even){background-color:#FFFFFF}.tmap-save-canvas-preview{text-align:center}.tmap-save-canvas-preview img{background-color:white;border:1px solid lightgray;max-width:100%;max-height:100px}.tmap-list-separator{display:block;background-color:#efefef;margin:10px 0 5px 0;cursor:default;border-bottom:1px dotted gray;font-weight:bold;font-size:0.8em}.tmap-unicode-icon{width:1em;display:inline-block;text-align:center;color:black}html .tmap-link{color:#5778D8}html .tmap-link:hover{color:white;background:#5778D8}html .tmap-small-list,html .tmap-smaller-list,html .tmap-very-small-list{overflow:auto;min-height:2em;max-height:9em;display:block}html .tmap-smaller-list{max-height:7em}html .tmap-very-small-list{max-height:5empx}html .tc-tiddler-controls button.tmap-active-button svg{fill:#888888}html #tmap-node-filter-dialog #tmap-filter-tips{font-size:0.8em}html #tmap-node-filter-dialog textarea{height:100px;max-height:300px;overflow:auto;width:100%;font-size:11px;font-family:\"Courier New\", Courier, monospace}@media (max-width: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}}){.tc-sidebar-scrollable .tmap-desktop-editor .tmap-widget:not(.tmap-fullscreen){display:none}}@media (min-width: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}}){.tc-sidebar-scrollable .tmap-mobile-editor{display:none}.tc-modal-wrapper{z-index:1010}.tc-modal-wrapper .tc-modal{boder:1px solid #999999;left:calc(50% - 400px);width:802px}.tc-modal-wrapper .tc-modal-body{left:calc(50% - 400px);width:800px}}@-o-keyframes fadein-keyframes{0%{opacity:0}100%{opacity:1}}@-moz-keyframes fadein-keyframes{0%{opacity:0}100%{opacity:1}}@-webkit-keyframes fadein-keyframes{0%{opacity:0}100%{opacity:1}}@keyframes flash fadein-keyframes{0%{opacity:0}100%{opacity:1}}@-o-keyframes fadeout-keyframes{0%{opacity:1}100%{opacity:0}}@-moz-keyframes fadeout-keyframes{0%{opacity:1}100%{opacity:0}}@-webkit-keyframes fadeout-keyframes{0%{opacity:1}100%{opacity:0}}@keyframes flash fadeout-keyframes{0%{opacity:1}100%{opacity:0}}.tmap-config-widget{background:#F0F0F0;padding:5px;margin:5px 0;box-sizing:border-box;display:block}.tmap-config-widget .vis-network{display:none}.tmap-config-widget .vis-configuration-wrapper{width:100%}.tmap-config-widget .vis-configuration-wrapper .vis-config-rangeinput{height:inherit;margin-left:4px}.tmap-config-widget .vis-configuration-wrapper .vis-configuration.vis-config-item{width:100%;height:inherit;background:none;padding-left:0px;left:0}.tmap-config-widget .vis-configuration-wrapper .vis-configuration.vis-config-item.tmap-vis-config-item-active .vis-config-label::after{content:\"(inherited)\";position:absolute;display:inline-block;margin-left:10px;-o-animation:fadein-keyframes 1s;-moz-animation:fadein-keyframes 1s;-webkit-animation:fadein-keyframes 1s;animation:fadein-keyframes 1s;content:\"✔\";color:green;font-weight:bold;font-size:15px}.tmap-config-widget .vis-configuration-wrapper .vis-configuration.vis-config-item button.tmap-config-item-reset{vertical-align:top;margin-left:5px}.tmap-config-widget .vis-configuration-wrapper .vis-configuration.vis-config-item .vis-config-range{width:150px}.tmap-config-widget .vis-configuration-wrapper .vis-c
"title": "$:/plugins/felixhayashi/tiddlymap/layout",
"type": "text/vnd.tiddlywiki",
"tags": [
"$:/tags/Stylesheet"
]
},
"$:/plugins/felixhayashi/tiddlymap/js/AbstractEdgeTypeSubscriber": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/AbstractEdgeTypeSubscriber",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _createClass=function(){function e(e,r){for(var t=0;t&lt;r.length;t++){var i=r[t];i.enumerable=i.enumerable||false;i.configurable=true;if(\"value\"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(r,t,i){if(t)e(r.prototype,t);if(i)e(r,i);return r}}();/* @preserve TW-Guard */ /* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/AbstractEdgeTypeSubscriber\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */\n/* @preserve TW-Guard */var _EdgeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/EdgeType\");var _EdgeType2=_interopRequireDefault(_EdgeType);var _exception=require(\"$:/plugins/felixhayashi/tiddlymap/js/exception\");function _interopRequireDefault(e){return e&amp;&amp;e.__esModule?e:{default:e}}function _classCallCheck(e,r){if(!(e instanceof r)){throw new TypeError(\"Cannot call a class as a function\")}}var AbstractEdgeTypeSubscriber=function(){function e(r){var t=arguments.length&gt;1&amp;&amp;arguments[1]!==undefined?arguments[1]:{},i=t.priority,n=i===undefined?0:i,a=t.skipOthers,s=a===undefined?true:a,u=t.ignore,l=u===undefined?false:u;_classCallCheck(this,e);this.allEdgeTypes=r;this.priority=n;this.skipOthers=s;this.ignore=l}_createClass(e,[{key:\"setTracker\",value:function e(r){this.tracker=r}},{key:\"loadEdges\",value:function e(r,t,i){throw new _exception.MissingOverrideError(this,\"loadEdges\")}},{key:\"canHandle\",value:function e(r){throw new _exception.MissingOverrideError(this,\"canHandle\")}},{key:\"insertEdge\",value:function e(r,t,i){}},{key:\"deleteEdge\",value:function e(r,t,i){}}]);return e}();exports.default=AbstractEdgeTypeSubscriber;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/AbstractEdgeTypeSubscriber.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/AbstractMagicEdgeTypeSubscriber": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/AbstractMagicEdgeTypeSubscriber",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _createClass=function(){function e(e,r){for(var t=0;t&lt;r.length;t++){var i=r[t];i.enumerable=i.enumerable||false;i.configurable=true;if(\"value\"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(r,t,i){if(t)e(r.prototype,t);if(i)e(r,i);return r}}();var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _Edge=require(\"$:/plugins/felixhayashi/tiddlymap/js/Edge\");var _Edge2=_interopRequireDefault(_Edge);var _exception=require(\"$:/plugins/felixhayashi/tiddlymap/js/exception\");var _AbstractRefEdgeTypeSubscriber=require(\"$:/plugins/felixhayashi/tiddlymap/js/AbstractRefEdgeTypeSubscriber\");var _AbstractRefEdgeTypeSubscriber2=_interopRequireDefault(_AbstractRefEdgeTypeSubscriber);function _interopRequireDefault(e){return e&amp;&amp;e.__esModule?e:{default:e}}function _classCallCheck(e,r){if(!(e instanceof r)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,r){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return r&amp;&amp;(typeof r===\"object\"||typeof r===\"function\")?r:e}function _inherits(e,r){if(typeof r!==\"function\"&amp;&amp;r!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof r)}e.prototype=Object.create(r&amp;&amp;r.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(r)Object.setPrototypeOf?Object.setPrototypeOf(e,r):e.__proto__=r}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/AbstractMagicEdgeTypeSubscriber\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var AbstractMagicEdgeTypeSubscriber=function(e){_inherits(r,e);function r(e,t){_classCallCheck(this,r);var i=_possibleConstructorReturn(this,(r.__proto__||Object.getPrototypeOf(r)).call(this,e,t));i.edgeTypesByFieldName=_utils2.default.makeHashMap();for(var a in e){var n=e[a];if(i.canHandle(n)){i.edgeTypesByFieldName[n.name]=n}}return i}_createClass(r,[{key:\"getReferencesFromField\",value:function e(r,t,i){throw new _exception.MissingOverrideError(this,\"getReferencesFromField\")}},{key:\"getReferences\",value:function e(r,t,i){var a=_utils2.default.makeHashMap();var n=r.fields;for(var s in n){var u=this.edgeTypesByFieldName[s];if(!u||i&amp;&amp;!i[u.id])continue;var o=this.getReferencesFromField(r,s,t);if(o&amp;&amp;o.length){a[u.id]=o}}return a}}]);return r}(_AbstractRefEdgeTypeSubscriber2.default);exports.default=AbstractMagicEdgeTypeSubscriber;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/AbstractMagicEdgeTypeSubscriber.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/AbstractRefEdgeTypeSubscriber": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/AbstractRefEdgeTypeSubscriber",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _createClass=function(){function e(e,t){for(var r=0;r&lt;t.length;r++){var i=t[r];i.enumerable=i.enumerable||false;i.configurable=true;if(\"value\"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(t,r,i){if(r)e(t.prototype,r);if(i)e(t,i);return t}}();var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _Edge=require(\"$:/plugins/felixhayashi/tiddlymap/js/Edge\");var _Edge2=_interopRequireDefault(_Edge);var _exception=require(\"$:/plugins/felixhayashi/tiddlymap/js/exception\");var _AbstractEdgeTypeSubscriber=require(\"$:/plugins/felixhayashi/tiddlymap/js/AbstractEdgeTypeSubscriber\");var _AbstractEdgeTypeSubscriber2=_interopRequireDefault(_AbstractEdgeTypeSubscriber);function _interopRequireDefault(e){return e&amp;&amp;e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&amp;&amp;(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&amp;&amp;t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/AbstractRefEdgeTypeSubscriber\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var AbstractRefEdgeTypeSubscriber=function(e){_inherits(t,e);function t(){_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).apply(this,arguments))}_createClass(t,[{key:\"loadEdges\",value:function e(t,r,i){var a=this.getReferences(t,r,i);if(!a||!_utils2.default.hasElements(a))return;var s=t.fields[\"tmap.id\"];var n=$tm.tracker.getIdsByTiddlers();var u=this.allEdgeTypes;var l=_utils2.default.getTiddlerRef(t);var o=_utils2.default.makeHashMap();for(var f in a){var c=a[f];if(!c){continue}var p=u[f];for(var d=c.length;d--;){var _=c[d];if(!_||!$tw.wiki.tiddlerExists(_)||_utils2.default.isSystemOrDraft(_)||r&amp;&amp;!r[_]){continue}var b=p.id+$tw.utils.hashString(l+_);o[b]=new _Edge2.default(s,n[_],p.id,b)}}return o}},{key:\"getReferences\",value:function e(t,r,i){throw new _exception.MissingOverrideError(this,\"getReferences\")}}]);return t}(_AbstractEdgeTypeSubscriber2.default);exports.default=AbstractRefEdgeTypeSubscriber;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/AbstractRefEdgeTypeSubscriber.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/EdgeTypeSubscriberRegistry": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/EdgeTypeSubscriberRegistry",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _createClass=function(){function e(e,r){for(var t=0;t&lt;r.length;t++){var s=r[t];s.enumerable=s.enumerable||false;s.configurable=true;if(\"value\"in s)s.writable=true;Object.defineProperty(e,s.key,s)}}return function(r,t,s){if(t)e(r.prototype,t);if(s)e(r,s);return r}}();function _classCallCheck(e,r){if(!(e instanceof r)){throw new TypeError(\"Cannot call a class as a function\")}}\n/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/EdgeTypeSubscriberRegistry\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var EdgeTypeSubscriberRegistry=function(){function e(r,t,s){_classCallCheck(this,e);this.subscriberClasses=r;this.tracker=s;this.updateIndex(t)}_createClass(e,[{key:\"getAllForType\",value:function e(r){var t=this.allSubscribers;var s=[];for(var i=0,a=t.length;i&lt;a;i++){if(t[i].canHandle(r)){s.push(t[i]);if(t[i].skipOthers){break}}}return s}},{key:\"getAll\",value:function e(){return this.allSubscribers}},{key:\"updateIndex\",value:function e(r){var t=[];var s=this.subscriberClasses;for(var i in s){var a=new s[i](r);a.setTracker(this.tracker);if(a.ignore===true){continue}t.push(a)}t.sort(function(e,r){return r.priority-e.priority});this.allSubscribers=t}}]);return e}();exports.default=EdgeTypeSubscriberRegistry;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/EdgeTypeSubscriberRegistry.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/tmap": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/tmap",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.TmapEdgeTypeSubscriber=undefined;var _extends=Object.assign||function(e){for(var t=1;t&lt;arguments.length;t++){var r=arguments[t];for(var i in r){if(Object.prototype.hasOwnProperty.call(r,i)){e[i]=r[i]}}}return e};var _createClass=function(){function e(e,t){for(var r=0;r&lt;t.length;r++){var i=t[r];i.enumerable=i.enumerable||false;i.configurable=true;if(\"value\"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(t,r,i){if(r)e(t.prototype,r);if(i)e(t,i);return t}}();var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _Edge=require(\"$:/plugins/felixhayashi/tiddlymap/js/Edge\");var _Edge2=_interopRequireDefault(_Edge);var _AbstractEdgeTypeSubscriber=require(\"$:/plugins/felixhayashi/tiddlymap/js/AbstractEdgeTypeSubscriber\");var _AbstractEdgeTypeSubscriber2=_interopRequireDefault(_AbstractEdgeTypeSubscriber);function _interopRequireDefault(e){return e&amp;&amp;e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&amp;&amp;(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&amp;&amp;t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/tmap\ntype: application/javascript\nmodule-type: tmap.edgetypehandler\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var TmapEdgeTypeSubscriber=function(e){_inherits(t,e);function t(e){var r=arguments.length&gt;1&amp;&amp;arguments[1]!==undefined?arguments[1]:{};_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,_extends({priority:0},r)))}_createClass(t,[{key:\"loadEdges\",value:function e(t,r,i){var a=_utils2.default.parseFieldData(t,\"tmap.edges\");if(!a){return}var n=this.tracker.getTiddlersByIds();var u=t.fields[\"tmap.id\"];var s=_utils2.default.makeHashMap();for(var l in a){var o=a[l];var d=n[o.to];if(d&amp;&amp;(!r||r[d])&amp;&amp;(!i||i[o.type])){s[l]=new _Edge2.default(u,o.to,o.type,l)}}return s}},{key:\"insertEdge\",value:function e(t,r,i){var a=_utils2.default.parseFieldData(t,\"tmap.edges\",{});r.id=r.id||_utils2.default.genUUID();a[r.id]={to:r.to,type:i.id};_utils2.default.writeFieldData(t,\"tmap.edges\",a,$tm.config.sys.jsonIndentation);return r}},{key:\"deleteEdge\",value:function e(t,r,i){if(!r.id)return;var a=_utils2.default.parseFieldData(t,\"tmap.edges\",{});delete a[r.id];_utils2.default.writeFieldData(t,\"tmap.edges\",a,$tm.config.sys.jsonIndentation);return r}},{key:\"canHandle\",value:function e(t){return true}}]);return t}(_AbstractEdgeTypeSubscriber2.default);exports.TmapEdgeTypeSubscriber=TmapEdgeTypeSubscriber;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/TmapEdgeTypeSubscriber.js.map\n",
"type": "application/javascript",
"module-type": "tmap.edgetypehandler"
},
"$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/field": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/field",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.FieldEdgeTypeSubscriber=undefined;var _extends=Object.assign||function(e){for(var t=1;t&lt;arguments.length;t++){var r=arguments[t];for(var i in r){if(Object.prototype.hasOwnProperty.call(r,i)){e[i]=r[i]}}}return e};var _createClass=function(){function e(e,t){for(var r=0;r&lt;t.length;r++){var i=t[r];i.enumerable=i.enumerable||false;i.configurable=true;if(\"value\"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(t,r,i){if(r)e(t.prototype,r);if(i)e(t,i);return t}}();var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _AbstractMagicEdgeTypeSubscriber=require(\"$:/plugins/felixhayashi/tiddlymap/js/AbstractMagicEdgeTypeSubscriber\");var _AbstractMagicEdgeTypeSubscriber2=_interopRequireDefault(_AbstractMagicEdgeTypeSubscriber);function _interopRequireDefault(e){return e&amp;&amp;e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&amp;&amp;(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&amp;&amp;t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/field\ntype: application/javascript\nmodule-type: tmap.edgetypehandler\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var FieldEdgeTypeSubscriber=function(e){_inherits(t,e);function t(e){var r=arguments.length&gt;1&amp;&amp;arguments[1]!==undefined?arguments[1]:{};_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,_extends({priority:10},r)))}_createClass(t,[{key:\"canHandle\",value:function e(t){return t.namespace===\"tw-field\"}},{key:\"getReferencesFromField\",value:function e(t,r,i){return[t.fields[r]]}},{key:\"insertEdge\",value:function e(t,r,i){var n=this.tracker.getTiddlerById(r.to);if(n==null){return}_utils2.default.setField(t,i.name,n);return r}},{key:\"deleteEdge\",value:function e(t,r,i){var n=this.tracker.getTiddlerById(r.to);if(n==null){return}_utils2.default.setField(t,i.name,undefined);return r}}]);return t}(_AbstractMagicEdgeTypeSubscriber2.default);exports.FieldEdgeTypeSubscriber=FieldEdgeTypeSubscriber;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/magicEdgeTypeSubscriber/FieldEdgeTypeSubscriber.js.map\n",
"type": "application/javascript",
"module-type": "tmap.edgetypehandler"
},
"$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/filter": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/filter",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.FilterEdgeTypeSubstriber=undefined;var _extends=Object.assign||function(e){for(var t=1;t&lt;arguments.length;t++){var r=arguments[t];for(var i in r){if(Object.prototype.hasOwnProperty.call(r,i)){e[i]=r[i]}}}return e};var _createClass=function(){function e(e,t){for(var r=0;r&lt;t.length;r++){var i=t[r];i.enumerable=i.enumerable||false;i.configurable=true;if(\"value\"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(t,r,i){if(r)e(t.prototype,r);if(i)e(t,i);return t}}();var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _AbstractMagicEdgeTypeSubscriber=require(\"$:/plugins/felixhayashi/tiddlymap/js/AbstractMagicEdgeTypeSubscriber\");var _AbstractMagicEdgeTypeSubscriber2=_interopRequireDefault(_AbstractMagicEdgeTypeSubscriber);var _widget=require(\"$:/core/modules/widgets/widget.js\");var _widget2=_interopRequireDefault(_widget);function _interopRequireDefault(e){return e&amp;&amp;e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&amp;&amp;(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&amp;&amp;t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/filter\ntype: application/javascript\nmodule-type: tmap.edgetypehandler\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var FilterEdgeTypeSubstriber=function(e){_inherits(t,e);function t(e){var r=arguments.length&gt;1&amp;&amp;arguments[1]!==undefined?arguments[1]:{};_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,_extends({priority:10},r)))}_createClass(t,[{key:\"canHandle\",value:function e(t){return t.namespace===\"tw-filter\"}},{key:\"getReferencesFromField\",value:function e(t,r,i){var n=t.fields[r];var a=new _widget2.default.widget({});a.setVariable(\"currentTiddler\",t.fields.title);var u=new _widget2.default.widget({},{parentWidget:a});var s=_utils2.default.getMatches(n,i,u);return s}},{key:\"insertEdge\",value:function e(t,r,i){if(!r.to){return}var n=i.name;var a=t.fields[n]||\"\";var u=this.tracker.getTiddlerById(r.to);var s=$tw.utils.stringifyList([u]);if(a.length&gt;0){s=\" \"+s}_utils2.default.setField(t,n,a+s);return r}}]);return t}(_AbstractMagicEdgeTypeSubscriber2.default);exports.FilterEdgeTypeSubstriber=FilterEdgeTypeSubstriber;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/magicEdgeTypeSubscriber/FilterEdgeTypeSubscriber.js.map\n",
"type": "application/javascript",
"module-type": "tmap.edgetypehandler"
},
"$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/list": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/list",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.ListEdgeTypeSubscriber=undefined;var _extends=Object.assign||function(e){for(var t=1;t&lt;arguments.length;t++){var r=arguments[t];for(var i in r){if(Object.prototype.hasOwnProperty.call(r,i)){e[i]=r[i]}}}return e};var _createClass=function(){function e(e,t){for(var r=0;r&lt;t.length;r++){var i=t[r];i.enumerable=i.enumerable||false;i.configurable=true;if(\"value\"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(t,r,i){if(r)e(t.prototype,r);if(i)e(t,i);return t}}();var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _AbstractMagicEdgeTypeSubscriber=require(\"$:/plugins/felixhayashi/tiddlymap/js/AbstractMagicEdgeTypeSubscriber\");var _AbstractMagicEdgeTypeSubscriber2=_interopRequireDefault(_AbstractMagicEdgeTypeSubscriber);function _interopRequireDefault(e){return e&amp;&amp;e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&amp;&amp;(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&amp;&amp;t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/list\ntype: application/javascript\nmodule-type: tmap.edgetypehandler\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var ListEdgeTypeSubscriber=function(e){_inherits(t,e);function t(e){var r=arguments.length&gt;1&amp;&amp;arguments[1]!==undefined?arguments[1]:{};_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,_extends({priority:10},r)))}_createClass(t,[{key:\"canHandle\",value:function e(t){return t.namespace===\"tw-list\"}},{key:\"getReferencesFromField\",value:function e(t,r,i){return $tw.utils.parseStringArray(t.fields[r])}},{key:\"insertEdge\",value:function e(t,r,i){if(!r.to){return}var n=i.name;var s=$tw.utils.parseStringArray(t.fields[n]);s=(s||[]).slice();var a=this.tracker.getTiddlerById(r.to);s.push(a);_utils2.default.setField(t,n,$tw.utils.stringifyList(s));return r}},{key:\"deleteEdge\",value:function e(t,r,i){var n=$tw.utils.parseStringArray(t.fields[i.name]);n=(n||[]).slice();var s=this.tracker.getTiddlerById(r.to);var a=n.indexOf(s);if(a&gt;-1){n.splice(a,1)}var u=void 0;if(n.length&gt;0){u=$tw.utils.stringifyList(n)}_utils2.default.setField(t,i.name,u);return r}}]);return t}(_AbstractMagicEdgeTypeSubscriber2.default);exports.ListEdgeTypeSubscriber=ListEdgeTypeSubscriber;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/magicEdgeTypeSubscriber/ListEdgeTypeSubscriber.js.map\n",
"type": "application/javascript",
"module-type": "tmap.edgetypehandler"
},
"$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/body/link": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/body/link",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.LinkEdgeTypeSubscriber=undefined;var _extends=Object.assign||function(e){for(var t=1;t&lt;arguments.length;t++){var r=arguments[t];for(var n in r){if(Object.prototype.hasOwnProperty.call(r,n)){e[n]=r[n]}}}return e};var _createClass=function(){function e(e,t){for(var r=0;r&lt;t.length;r++){var n=t[r];n.enumerable=n.enumerable||false;n.configurable=true;if(\"value\"in n)n.writable=true;Object.defineProperty(e,n.key,n)}}return function(t,r,n){if(r)e(t.prototype,r);if(n)e(t,n);return t}}();var _AbstractRefEdgeTypeSubscriber=require(\"$:/plugins/felixhayashi/tiddlymap/js/AbstractRefEdgeTypeSubscriber\");var _AbstractRefEdgeTypeSubscriber2=_interopRequireDefault(_AbstractRefEdgeTypeSubscriber);function _interopRequireDefault(e){return e&amp;&amp;e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&amp;&amp;(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&amp;&amp;t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/body/link\ntype: application/javascript\nmodule-type: tmap.edgetypehandler\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var LinkEdgeTypeSubscriber=function(e){_inherits(t,e);function t(e){var r=arguments.length&gt;1&amp;&amp;arguments[1]!==undefined?arguments[1]:{};_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,_extends({priority:20},r)))}_createClass(t,[{key:\"canHandle\",value:function e(t){return t.id===\"tw-body:link\"}},{key:\"getReferences\",value:function e(t,r,n){if(n&amp;&amp;!n[\"tw-body:link\"]){return}var i=$tw.wiki.getTiddlerLinks(t.fields.title);if(!i||!i.length){return}return{\"tw-body:link\":i}}}]);return t}(_AbstractRefEdgeTypeSubscriber2.default);exports.LinkEdgeTypeSubscriber=LinkEdgeTypeSubscriber;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/refEdgeTypeSubscriber/LinkEdgeTypeSubscriber.js.map\n",
"type": "application/javascript",
"module-type": "tmap.edgetypehandler"
},
"$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/body/transclude": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/body/transclude",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.TranscludeEdgeTypeSubscriber=undefined;var _extends=Object.assign||function(e){for(var r=1;r&lt;arguments.length;r++){var t=arguments[r];for(var n in t){if(Object.prototype.hasOwnProperty.call(t,n)){e[n]=t[n]}}}return e};var _createClass=function(){function e(e,r){for(var t=0;t&lt;r.length;t++){var n=r[t];n.enumerable=n.enumerable||false;n.configurable=true;if(\"value\"in n)n.writable=true;Object.defineProperty(e,n.key,n)}}return function(r,t,n){if(t)e(r.prototype,t);if(n)e(r,n);return r}}();var _AbstractRefEdgeTypeSubscriber=require(\"$:/plugins/felixhayashi/tiddlymap/js/AbstractRefEdgeTypeSubscriber\");var _AbstractRefEdgeTypeSubscriber2=_interopRequireDefault(_AbstractRefEdgeTypeSubscriber);function _interopRequireDefault(e){return e&amp;&amp;e.__esModule?e:{default:e}}function _classCallCheck(e,r){if(!(e instanceof r)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,r){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return r&amp;&amp;(typeof r===\"object\"||typeof r===\"function\")?r:e}function _inherits(e,r){if(typeof r!==\"function\"&amp;&amp;r!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof r)}e.prototype=Object.create(r&amp;&amp;r.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(r)Object.setPrototypeOf?Object.setPrototypeOf(e,r):e.__proto__=r}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/body/transclude\ntype: application/javascript\nmodule-type: tmap.edgetypehandler\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var TranscludeEdgeTypeSubscriber=function(e){_inherits(r,e);function r(e){var t=arguments.length&gt;1&amp;&amp;arguments[1]!==undefined?arguments[1]:{};_classCallCheck(this,r);return _possibleConstructorReturn(this,(r.__proto__||Object.getPrototypeOf(r)).call(this,e,_extends({priority:20,ignore:typeof $tw.wiki.getTiddlerTranscludes!==\"function\"},t)))}_createClass(r,[{key:\"canHandle\",value:function e(r){return r.id===\"tw-body:transclude\"}},{key:\"getReferences\",value:function e(r,t,n){if(n&amp;&amp;!n[\"tw-body:transclude\"]){return}var i=$tw.wiki.getTiddlerTranscludes(r.fields.title);if(!i||!i.length){return}return{\"tw-body:transclude\":i}}}]);return r}(_AbstractRefEdgeTypeSubscriber2.default);exports.TranscludeEdgeTypeSubscriber=TranscludeEdgeTypeSubscriber;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/refEdgeTypeSubscriber/TranscludeEdgeTypeSubscriber.js.map\n",
"type": "application/javascript",
"module-type": "tmap.edgetypehandler"
},
"$:/plugins/felixhayashi/tiddlymap/js/Edge": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/Edge",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);function _interopRequireDefault(e){return e&amp;&amp;e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/Edge\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var Edge=function e(t,i,s,l){_classCallCheck(this,e);this.from=t;this.to=i;this.type=s;this.id=l||_utils2.default.genUUID()};exports.default=Edge;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/graph/Edge.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/EdgeType": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/EdgeType",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _typeof=typeof Symbol===\"function\"&amp;&amp;typeof Symbol.iterator===\"symbol\"?function(e){return typeof e}:function(e){return e&amp;&amp;typeof Symbol===\"function\"&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?\"symbol\":typeof e};var _extends=Object.assign||function(e){for(var t=1;t&lt;arguments.length;t++){var r=arguments[t];for(var n in r){if(Object.prototype.hasOwnProperty.call(r,n)){e[n]=r[n]}}}return e};var _createClass=function(){function e(e,t){for(var r=0;r&lt;t.length;r++){var n=t[r];n.enumerable=n.enumerable||false;n.configurable=true;if(\"value\"in n)n.writable=true;Object.defineProperty(e,n.key,n)}}return function(t,r,n){if(r)e(t.prototype,r);if(n)e(t,n);return t}}();var _MapElementType2=require(\"$:/plugins/felixhayashi/tiddlymap/js/MapElementType\");var _MapElementType3=_interopRequireDefault(_MapElementType2);var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _environment=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/environment\");var env=_interopRequireWildcard(_environment);function _interopRequireWildcard(e){if(e&amp;&amp;e.__esModule){return e}else{var t={};if(e!=null){for(var r in e){if(Object.prototype.hasOwnProperty.call(e,r))t[r]=e[r]}}t.default=e;return t}}function _interopRequireDefault(e){return e&amp;&amp;e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&amp;&amp;(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&amp;&amp;t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/EdgeType\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var EdgeType=function(e){_inherits(t,e);function t(e,r){_classCallCheck(this,t);var n=t.getIdParts(e),o=n.marker,a=n.namespace,i=n.name;e=t.getId(o,a,i);var l=_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,env.path.edgeTypes,t.fieldMeta,r));l.id=e;l.marker=o;l.name=i;l.namespace=a;var u=(l.style||{}).arrows;if(u){l.invertedArrow=isArrowEnabled(u,\"from\");l.toArrow=isArrowEnabled(u,\"to\")||isArrowEnabled(u,\"middle\");l.biArrow=l.invertedArrow===l.toArrow;if(l.biArrow){l.toArrow=true;l.invertedArrow=true}}else{l.toArrow=true}Object.freeze(l);return l}_createClass(t,[{key:\"getLabel\",value:function e(){return this.label||this.name}}],[{key:\"getIdParts\",value:function e(){var t=arguments.length&gt;0&amp;&amp;arguments[0]!==undefined?arguments[0]:\"\";t=_utils2.default.getWithoutPrefix(t,env.path.edgeTypes+\"/\");var r=t.match(edgeTypeRegex)||[];return{marker:r[1]||\"\",namespace:r[3]&amp;&amp;r[2]||\"\",name:r[3]||r[2]||\"\"}}},{key:\"getId\",value:function e(){var t=arguments.length&gt;0&amp;&amp;arguments[0]!==undefined?arguments[0]:\"\";var r=arguments.length&gt;1&amp;&amp;arguments[1]!==undefined?arguments[1]:\"\";var n=arguments[2];return n?t+(r&amp;&amp;r+\":\")+n:\"tmap:unknown\"}}]);return t}(_MapElementType3.default);EdgeType.getInstance=function(e){return e instanceof EdgeType?e:new EdgeType(e)};EdgeType.fieldMeta=_extends({},_MapElementType3.default.fieldMeta,{label:{},\"show-label\":{}});var isArrowEnabled=function e(t,r){var n=t[r];if(n==null&amp;&amp;r===\"to\"){return true}return(typeof n===\"undefined\"?\"undefined\":_typeof(n))===\"object\"?n.enabled!==false:n===true};var edgeTypeRegex=new RegExp(\"^(_?)([^:_][^:]*):?([^:]*)\");exports.default=EdgeType;\n//# sourceMappingURL=./maps/fe
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/MapElementType": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/MapElementType",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _typeof=typeof Symbol===\"function\"&amp;&amp;typeof Symbol.iterator===\"symbol\"?function(t){return typeof t}:function(t){return t&amp;&amp;typeof Symbol===\"function\"&amp;&amp;t.constructor===Symbol&amp;&amp;t!==Symbol.prototype?\"symbol\":typeof t};var _createClass=function(){function t(t,e){for(var i=0;i&lt;e.length;i++){var l=e[i];l.enumerable=l.enumerable||false;l.configurable=true;if(\"value\"in l)l.writable=true;Object.defineProperty(t,l.key,l)}}return function(e,i,l){if(i)t(e.prototype,i);if(l)t(e,l);return e}}();/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/MapElementType\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);function _interopRequireDefault(t){return t&amp;&amp;t.__esModule?t:{default:t}}function _classCallCheck(t,e){if(!(t instanceof e)){throw new TypeError(\"Cannot call a class as a function\")}}var MapElementType=function(){function t(e,i,l,s){_classCallCheck(this,t);this.id=e;this.root=i;this._fieldMeta=l;this.fullPath=this.root+\"/\"+this.id;this.isShipped=$tw.wiki.getSubTiddler($tm.path.pluginRoot,this.fullPath);this._load(s||this.fullPath)}_createClass(t,[{key:\"_load\",value:function t(e){if(!e){return}if(typeof e===\"string\"){var i=_utils2.default.startsWith(e,this.root);var l=i?e:this.root+\"/\"+e;this._loadFromTiddler(l)}else if(e instanceof $tw.Tiddler){this._loadFromTiddler(e)}else if((typeof e===\"undefined\"?\"undefined\":_typeof(e))===\"object\"){for(var s in this._fieldMeta){this[s]=e[s]}}}},{key:\"_loadFromTiddler\",value:function t(e){var i=_utils2.default.getTiddler(e);if(!i){return}var l=$tw.wiki.getSubTiddler($tm.path.pluginRoot,this.fullPath)||{};var s=$tw.utils.extend({},l.fields,i.fields);for(var r in this._fieldMeta){var a=this._fieldMeta[r].parse;var f=s[r];this[r]=a?a.call(this,f):f}}},{key:\"exists\",value:function t(){return _utils2.default.tiddlerExists(this.fullPath)}},{key:\"setStyle\",value:function t(e,i){if(typeof e===\"string\"){e=_utils2.default.parseJSON(e)}if((typeof e===\"undefined\"?\"undefined\":_typeof(e))===\"object\"){if(i){_utils2.default.merge(this.style,e)}else{this.style=e}}}},{key:\"save\",value:function t(e,i){if(!e){e=this.fullPath}else if(typeof e!==\"string\"){return}var l={title:e,text:\"\"};if(!_utils2.default.startsWith(e,this.root)){l.id=this.id}for(var s in this._fieldMeta){var r=this._fieldMeta[s].stringify;l[s]=r?r.call(this,this[s]):this[s]}if(!this.exists()){Object.assign(l,$tw.wiki.getCreationFields())}if(i!==true){Object.assign(l,$tw.wiki.getModificationFields())}$tw.wiki.addTiddler(new $tw.Tiddler(l))}}]);return t}();MapElementType.fieldMeta={description:{},style:{parse:_utils2.default.parseJSON,stringify:JSON.stringify},modified:{},created:{}};exports.default=MapElementType;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/graph/MapElementType.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/NodeType": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/NodeType",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _extends=Object.assign||function(e){for(var t=1;t&lt;arguments.length;t++){var r=arguments[t];for(var n in r){if(Object.prototype.hasOwnProperty.call(r,n)){e[n]=r[n]}}}return e};var _createClass=function(){function e(e,t){for(var r=0;r&lt;t.length;r++){var n=t[r];n.enumerable=n.enumerable||false;n.configurable=true;if(\"value\"in n)n.writable=true;Object.defineProperty(e,n.key,n)}}return function(t,r,n){if(r)e(t.prototype,r);if(n)e(t,n);return t}}();var _MapElementType2=require(\"$:/plugins/felixhayashi/tiddlymap/js/MapElementType\");var _MapElementType3=_interopRequireDefault(_MapElementType2);var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);function _interopRequireDefault(e){return e&amp;&amp;e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&amp;&amp;(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&amp;&amp;t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/NodeType\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var NodeType=function(e){_inherits(t,e);function t(e,r){_classCallCheck(this,t);e=typeof e===\"string\"?_utils2.default.getWithoutPrefix(e,$tm.path.nodeTypes+\"/\"):\"tmap:unknown\";var n=_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,$tm.path.nodeTypes,t.fieldMeta,r));Object.freeze(n);return n}_createClass(t,[{key:\"getInheritors\",value:function e(t){return this.scope?_utils2.default.getMatches(this.scope,t||$tw.wiki.allTitles()):[]}}]);return t}(_MapElementType3.default);NodeType.getInstance=function(e){return e instanceof NodeType?e:new NodeType(e)};NodeType.fieldMeta=_extends({},_MapElementType3.default.fieldMeta,{view:{},priority:{parse:function e(t){return isNaN(t)?1:parseInt(t)},stringify:function e(t){return _utils2.default.isInteger(t)?t.toString():\"1\"}},scope:{stringify:_utils2.default.getWithoutNewLines},\"fa-icon\":{},\"tw-icon\":{}});exports.default=NodeType;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/graph/NodeType.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/ViewAbstraction": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/ViewAbstraction",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _extends=Object.assign||function(e){for(var t=1;t&lt;arguments.length;t++){var i=arguments[t];for(var r in i){if(Object.prototype.hasOwnProperty.call(i,r)){e[r]=i[r]}}}return e};var _typeof=typeof Symbol===\"function\"&amp;&amp;typeof Symbol.iterator===\"symbol\"?function(e){return typeof e}:function(e){return e&amp;&amp;typeof Symbol===\"function\"&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?\"symbol\":typeof e};var _createClass=function(){function e(e,t){for(var i=0;i&lt;t.length;i++){var r=t[i];r.enumerable=r.enumerable||false;r.configurable=true;if(\"value\"in r)r.writable=true;Object.defineProperty(e,r.key,r)}}return function(t,i,r){if(i)e(t.prototype,i);if(r)e(t,r);return t}}();/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/ViewAbstraction\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _EdgeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/EdgeType\");var _EdgeType2=_interopRequireDefault(_EdgeType);var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _environment=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/environment\");var env=_interopRequireWildcard(_environment);var _exception=require(\"$:/plugins/felixhayashi/tiddlymap/js/exception\");function _interopRequireWildcard(e){if(e&amp;&amp;e.__esModule){return e}else{var t={};if(e!=null){for(var i in e){if(Object.prototype.hasOwnProperty.call(e,i))t[i]=e[i]}}t.default=e;return t}}function _interopRequireDefault(e){return e&amp;&amp;e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}var ViewAbstraction=function(){function e(t){var i=arguments.length&gt;1&amp;&amp;arguments[1]!==undefined?arguments[1]:{};_classCallCheck(this,e);if(t instanceof e){return t}this._registerPaths(t);if(i.isCreate){if(!this.configTRef){var r=_utils2.default.getRandomLabel({plural:true});this.configTRef=$tw.wiki.generateNewTitle($tm.path.views+\"/\"+r)}this._createView(i)}else if(!e.exists(this.getRoot())){throw new ResourceNotFoundException(\"ViewAbstraction\",t)}}_createClass(e,[{key:\"isLocked\",value:function e(){return $tw.wiki.isShadowTiddler(this.configTRef)}},{key:\"update\",value:function e(t){var i=t.changedTiddlers;if(t[env.path.edgeTypes]||_utils2.default.hasKeyWithPrefix(i,this.getRoot())){this._clearCaches();return true}return false}},{key:\"addPlaceholder\",value:function e(t){_utils2.default.cp(_utils2.default.getTiddlerRef(t),this.snapshotTRef,true)}},{key:\"exists\",value:function t(){return e.exists(this)}},{key:\"getRoot\",value:function e(){return this.configTRef}},{key:\"getCreationDate\",value:function e(t){var i=$tw.wiki.getTiddler(this.configTRef).fields[\"created\"];if(t){return i instanceof Date?$tw.utils.formatDateString(i,\"DDth MMM YYYY\"):\"\"}return i}},{key:\"getLabel\",value:function e(){return _utils2.default.getBasename(this.configTRef)}},{key:\"destroy\",value:function e(){_utils2.default.deleteTiddlers(_utils2.default.getMatches(\"[prefix[\"+this.configTRef+\"]]\"))}},{key:\"getOccurrences\",value:function e(){var t=\"[regexp:text[&lt;\\\\$(tiddlymap|tmap).*?view=.\"+this.getLabel()+\"..*?&gt;]]\";return _utils2.default.getMatches(t)}},{key:\"rename\",value:function t(i){if(typeof i!==\"string\"){return false}if(_utils2.default.inArray(\"/\",i)){$tm.notify('A view name must not contain any \"/\"');return false}var r=this.getLabel();var a=env.path.views+\"/\"+i;var n=this.getRoot();_utils2.default.mv(n,a,true);if($tm.config.sys.defaultView===r){_utils2.default.setEntry($tm.ref.sysUserConf,\"defaultView\",i)}if($tm.config.sys.liveTab.fallbackView===r){_utils2.default.setEntry($tm.ref.sysUserConf,\"liveTab.fallbackView\",i)}$tw.wiki.each(function(t,a){if(t.fields[\"tmap.open-view\"]===r){_utils2.default.setField(a,\"tmap.open-view\",i);return}if(e.exists(a)){var n=new e(a);var l=n.getNodeData();for(va
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/Popup": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/Popup",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);function _interopRequireDefault(e){return e&amp;&amp;e.__esModule?e:{default:e}}function Popup(e,t){t=t||{};this._parentDomNode=e;this._domNode=document.createElement(\"div\");this._domNode.style.display=\"none\";this._domNode.className=\"tmap-popup\";this._parentDomNode.appendChild(this._domNode);$tw.utils.addClass(this._domNode,t.className);this._isEnabled=true;this._isPreventShowOrHide=false;this._isHideOnClick=!!t.hideOnClick;this._timeoutShow=null;this._timeoutHide=null;this._isDisplayNoneAfterAnimation=true;var i=parseInt(t.leavingDelay);this._hideDelayLeavingPopup=_utils2.default.isInteger(i)?i:200;i=parseInt(t.hideDelay);this._hideDelay=_utils2.default.isInteger(i)?i:200;i=parseInt(t.showDelay);this._showDelay=_utils2.default.isInteger(i)?i:200;_utils2.default.bindTo(this,[\"_show\",\"_hide\",\"_handleEnter\",\"_handleLeave\",\"_handleAnimationEnd\",\"_handleClick\"]);this._listeners={mouseenter:this._handleEnter,mouseleave:this._handleLeave,click:[this._handleClick,true]};var s=this._handleAnimationEnd;this._listeners[$tw.utils.convertEventName(\"animationEnd\")]=s;this._listeners[$tw.utils.convertEventName(\"transitionEnd\")]=s;_utils2.default.setDomListeners(\"add\",this._domNode,this._listeners,false)}\n/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/Popup\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */Popup.prototype._handleEnter=function(e){this._isPreventShowOrHide=true};Popup.prototype._handleLeave=function(e){this._isPreventShowOrHide=false;this.hide(this._hideDelayLeavingPopup)};Popup.prototype._handleClick=function(e){if(this._isHideOnClick){this._hide(true)}};Popup.prototype._handleAnimationEnd=function(){if(this._isDisplayNoneAfterAnimation){this._domNode.style.display=\"none\"}};Popup.prototype._hide=function(e){if(!e&amp;&amp;this._isPreventShowOrHide)return;this._isDisplayNoneAfterAnimation=true;this._isPreventShowOrHide=false;$tw.utils.removeClass(this._domNode,\"tmap-popup-active\")};Popup.prototype._show=function(e,t){if(this._isPreventShowOrHide||$tm.mouse.ctrlKey||!this._isEnabled){return}this._domNode.style.display=\"none\";$tw.utils.removeClass(this._domNode,\"tmap-popup-active\");this._domNode.removeAttribute(\"style\");_utils2.default.removeDOMChildNodes(this._domNode);var i=this._domNode.appendChild(document.createElement(\"div\"));if(typeof t===\"function\"){t(e,i)}else{i.innerHTML=t}if(!i.childNodes.length)return;var s=this._parentDomNode.getBoundingClientRect();var o=$tm.mouse.clientX;var n=$tm.mouse.clientY;this._domNode.style.display=\"block\";var d=this._domNode.getBoundingClientRect();var l=s.right-(o+d.width);var h=o-d.width-s.left;var a=l&gt;h;var u=s.bottom-(n+d.height);var r=n-d.height-s.top;var p=u&gt;r;var _=a?-15:d.width+15;var m=p?-15:d.height+15;this._domNode.style.left=o-s.left-_+\"px\";this._domNode.style.top=n-s.top-m+\"px\";this._isDisplayNoneAfterAnimation=false;$tw.utils.addClass(this._domNode,\"tmap-popup-active\")};Popup.prototype.show=function(e,t,i){this._clearTimeouts();i=_utils2.default.isInteger(i)?i:this._showDelay;this._timeoutShow=setTimeout(this._show,i,e,t)};Popup.prototype.hide=function(e,t){this._clearTimeouts();e=_utils2.default.isInteger(e)?e:this._hideDelay;if(t||e===0){this._hide(t)}else{this._timeoutHide=setTimeout(this._hide,e,t)}};Popup.prototype.setEnabled=function(e){this._isEnabled=e};Popup.prototype.isShown=function(){return this._domNode.style.display===\"block\"};Popup.prototype._clearTimeouts=function(){clearTimeout(this._timeoutShow);clearTimeout(this._timeoutHide);this._timeoutShow=undefined;this._timeoutHide=undefined};exports.default=Popup;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/Popup.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/lib/SelectionRectangle": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/lib/SelectionRectangle",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _createClass=function(){function t(t,e){for(var i=0;i&lt;e.length;i++){var n=e[i];n.enumerable=n.enumerable||false;n.configurable=true;if(\"value\"in n)n.writable=true;Object.defineProperty(t,n.key,n)}}return function(e,i,n){if(i)t(e.prototype,i);if(n)t(e,n);return e}}();function _classCallCheck(t,e){if(!(t instanceof e)){throw new TypeError(\"Cannot call a class as a function\")}}\n/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/lib/SelectionRectangle\ntype: application/SelectionRectangle\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var SelectionRectangle=function(){function t(e,i){_classCallCheck(this,t);this.x1=e;this.x2=e;this.y1=i;this.y2=i}_createClass(t,[{key:\"span\",value:function t(e,i){this.x2=e;this.y2=i}},{key:\"getWidth\",value:function t(){return this.x2-this.x1}},{key:\"getHeight\",value:function t(){return this.y2-this.y1}},{key:\"getRect\",value:function t(){return[this.x1,this.y1,this.getWidth(),this.getHeight()]}},{key:\"isPointWithin\",value:function t(e){var i=e.x,n=e.y;var a=this.x1,r=this.x2,s=this.y1,u=this.y2;var h=Math.min(a,r);var c=Math.max(a,r);var l=Math.min(s,u);var o=Math.max(s,u);return h&lt;i&amp;&amp;i&lt;c&amp;&amp;l&lt;n&amp;&amp;n&lt;o}}]);return t}();exports.default=SelectionRectangle;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/SelectionRectangle.js.map\n",
"type": "application/SelectionRectangle",
"module-type": "library"
},
"/home/felo/projects/Tiddlywiki/TiddlyWiki5/plugins/felixhayashi/tiddlymap/js/lib/TypeDefs.js": {
"title": "/home/felo/projects/Tiddlywiki/TiddlyWiki5/plugins/felixhayashi/tiddlymap/js/lib/TypeDefs.js",
"text": "\"use strict\";\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/TypeDefs.js.map\n"
},
"$:/plugins/felixhayashi/tiddlymap/js/config/vis": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/config/vis",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});\n/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/config/vis\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var visConfig={locale:\"en_EN\",clickToUse:false,autoResize:false,height:\"100%\",width:\"100%\",configure:{enabled:false},interaction:{dragNodes:true,dragView:true,hideEdgesOnDrag:false,hideNodesOnDrag:false,hover:true,navigationButtons:true,multiselect:true,selectable:true,selectConnectedEdges:true,tooltipDelay:600,zoomView:false,keyboard:{enabled:false,speed:{x:10,y:10,zoom:.02},bindToWindow:false}},manipulation:{initiallyActive:true},nodes:{shape:\"box\",shadow:{enabled:false},color:{border:\"#2B7CE9\",background:\"#97C2FC\"}},edges:{smooth:{enabled:true},color:{color:\"#848484\",inherit:false},arrows:{to:{enabled:true}}},physics:{forceAtlas2Based:{gravitationalConstant:-300,springLength:0,springConstant:.2,centralGravity:.015,damping:.4},solver:\"forceAtlas2Based\",stabilization:{enabled:true,iterations:1e3,updateInterval:10,onlyDynamicEdges:false,fit:false}}};exports.default=visConfig;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/VisConfig.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/lib/environment": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/lib/environment",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _extends=Object.assign||function(e){for(var i=1;i&lt;arguments.length;i++){var a=arguments[i];for(var l in a){if(Object.prototype.hasOwnProperty.call(a,l)){e[l]=a[l]}}}return e};\n/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/lib/environment\ntype: application/javascript\n module-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var path=exports.path={pluginRoot:\"$:/plugins/felixhayashi/tiddlymap\",edgeTypes:\"$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes\",nodeTypes:\"$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes\",views:\"$:/plugins/felixhayashi/tiddlymap/graph/views\",options:\"$:/plugins/felixhayashi/tiddlymap/config\",dialogs:\"$:/plugins/felixhayashi/tiddlymap/dialog\",footers:\"$:/plugins/felixhayashi/tiddlymap/dialogFooter\",tempRoot:\"$:/temp/tmap\",tempStates:\"$:/temp/tmap/state\",tempPopups:\"$:/temp/tmap/state/popup\",localHolders:\"$:/temp/tmap/holders\"};var ref=exports.ref={defaultViewHolder:\"$:/plugins/felixhayashi/tiddlymap/misc/defaultViewHolder\",graphBar:\"$:/plugins/felixhayashi/tiddlymap/misc/advancedEditorBar\",sysUserConf:\"$:/plugins/felixhayashi/tiddlymap/config/sys/user\",visUserConf:\"$:/plugins/felixhayashi/tiddlymap/config/vis/user\",welcomeFlag:\"$:/plugins/felixhayashi/tiddlymap/flag/welcome\",focusButton:\"$:/plugins/felixhayashi/tiddlymap/misc/focusButton\",sysMeta:\"$:/plugins/felixhayashi/tiddlymap/misc/meta\",liveTab:\"$:/plugins/felixhayashi/tiddlymap/hook/liveTab\",mainEditor:\"$:/plugins/felixhayashi/tiddlymap/hook/editor\",sidebarBreakpoint:\"$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint\"};var misc=exports.misc={unknownEdgeLabel:\"tmap:undefined\",liveViewLabel:\"Live View\",defaultViewLabel:\"Default\",mainEditorId:\"main_editor\",arrows:{in:\"⇦\",out:\"➡\",bi:\"⇄\"}};var config=exports.config={sys:{field:{nodeLabel:\"caption\",nodeIcon:\"icon\",nodeInfo:\"description\",viewMarker:\"isview\"},liveTab:{fallbackView:misc.liveViewLabel},suppressedDialogs:{},edgeClickBehaviour:\"manager\",debug:\"false\",notifications:\"true\",popups:{enabled:\"true\",delay:\"600\",width:\"240px\",height:\"140px\"},jsonIndentation:\"1\",alwaysAddNodeIdToViewFilter:\"true\",editNodeOnCreate:\"false\",singleClickMode:\"false\",nodeFilterNeighbours:\"false\",editorMenuBar:{showNeighScopeButton:\"true\",showRasterMenuButton:\"true\",showScreenshotButton:\"true\"}}};var filter=exports.filter={nodeTypes:\"[prefix[\"+path.nodeTypes+\"]]\",edgeTypes:\"[prefix[\"+path.edgeTypes+\"]]\",views:\"[\"+config.sys.field.viewMarker+\"[true]]\",defaultEdgeTypeFilter:\"-[prefix[_]] -[[tw-body:link]] -[[tw-list:tags]] -[[tw-list:list]]\"};var allSelector=\"[all[tiddlers+shadows]!has[draft.of]]\";var s={allEdgeTypes:allSelector+\" +\"+filter.edgeTypes,allNodeTypes:allSelector+\" +\"+filter.nodeTypes,allViews:allSelector+\" +\"+filter.views,allPotentialNodes:\"[all[tiddlers]!is[system]!has[draft.of]]\"};var selector=exports.selector=_extends({},s,{allEdgeTypesById:s.allEdgeTypes+\" +[removeprefix[\"+path.edgeTypes+\"/]]\",allNodeTypesById:s.allNodeTypes+\" +[removeprefix[\"+path.nodeTypes+\"/]]\",allViewsByLabel:s.allViews+\" +[removeprefix[\"+path.views+\"/]]\"});\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/environment.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/exception": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/exception",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _createClass=function(){function r(r,t){for(var e=0;e&lt;t.length;e++){var o=t[e];o.enumerable=o.enumerable||false;o.configurable=true;if(\"value\"in o)o.writable=true;Object.defineProperty(r,o.key,o)}}return function(t,e,o){if(e)r(t.prototype,e);if(o)r(t,o);return t}}();function _classCallCheck(r,t){if(!(r instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(r,t){if(!r){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&amp;&amp;(typeof t===\"object\"||typeof t===\"function\")?t:r}function _inherits(r,t){if(typeof t!==\"function\"&amp;&amp;t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}r.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:r,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(r,t):r.__proto__=t}\n/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/exception\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var TiddlyMapError=function(r){_inherits(t,r);function t(r,e){_classCallCheck(this,t);var o=_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,r));o.payload=e;return o}_createClass(t,[{key:\"getPayload\",value:function r(){return this.payload}}]);return t}(Error);var EnvironmentError=exports.EnvironmentError=function(r){_inherits(t,r);function t(r){_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,\"Critical parts of the underlying system changed: \"+r))}return t}(TiddlyMapError);var DependencyError=exports.DependencyError=function(r){_inherits(t,r);function t(r){_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,\"TiddlyMap cannot run without: : \"+r))}return t}(TiddlyMapError);var MissingOverrideError=exports.MissingOverrideError=function(r){_inherits(t,r);function t(r,e){_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,r.constructor.name+' does not override method \"'+e+'\"'))}return t}(TiddlyMapError);var ResourceNotFoundException=exports.ResourceNotFoundException=function(r){_inherits(t,r);function t(r){_classCallCheck(this,t);for(var e=arguments.length,o=Array(e&gt;1?e-1:0),n=1;n&lt;e;n++){o[n-1]=arguments[n]}return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,\"Cannot resolve \"+r,o))}return t}(TiddlyMapError);var InvalidArgumentException=exports.InvalidArgumentException=function(r){_inherits(t,r);function t(){_classCallCheck(this,t);for(var r=arguments.length,e=Array(r),o=0;o&lt;r;o++){e[o]=arguments[o]}return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,\"Invalid or missing argument provided\",e))}return t}(TiddlyMapError);\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/exceptions.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/URL": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/URL",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});\n/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/URL\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */\n/**\n * &lt;&lt;&lt;\n * Lightweight URL manipulation with JavaScript. This library is\n * independent of any other libraries and has pretty simple interface\n * and lightweight code-base. Some ideas of query string parsing\n * had been taken from Jan Wolter.\"\n *\n * @see http://unixpapa.com/js/querystring.html\n * @license MIT\n * @author Mykhailo Stadnyk &lt;mikhus@gmail.com&gt;\n * &lt;&lt;&lt; https://github.com/Mikhus/jsurl\n *\n * @class\n * @param {string} url\n */function Url(t){this.paths=function(t){var e=\"\",r=0,o;if(t&amp;&amp;t.length&amp;&amp;t+\"\"!==t){if(this.isAbsolute()){e=\"/\"}for(o=t.length;r&lt;o;r++){t[r]=encode(t[r])}this.path=e+t.join(\"/\")}t=(this.path.charAt(0)===\"/\"?this.path.slice(1):this.path).split(\"/\");for(r=0,o=t.length;r&lt;o;r++){t[r]=decode(t[r])}return t};this.encode=encode;this.decode=decode;this.isAbsolute=function(){return this.protocol||this.path.charAt(0)===\"/\"};this.toString=function(){return(this.protocol&amp;&amp;this.protocol+\"://\")+(this.user&amp;&amp;encode(this.user)+(this.pass&amp;&amp;\":\"+encode(this.pass))+\"@\")+(this.host&amp;&amp;this.host)+(this.port&amp;&amp;\":\"+this.port)+(this.path&amp;&amp;this.path)+(this.query.toString()&amp;&amp;\"?\"+this.query)+(this.hash&amp;&amp;\"#\"+encode(this.hash))};parse(this,t)}var map={protocol:\"protocol\",host:\"hostname\",port:\"port\",path:\"pathname\",query:\"search\",hash:\"hash\"},defaultPorts={ftp:21,gopher:70,http:80,https:443,ws:80,wss:443},parse=function t(e,r){var o=document,s=o.createElement(\"a\"),r=r||o.location.href,i=r.match(/\\/\\/(.*?)(?::(.*?))?@/)||[],n;s.href=r;for(n in map){e[n]=s[map[n]]||\"\"}e.protocol=e.protocol.replace(/:$/,\"\");e.query=e.query.replace(/^\\?/,\"\");e.hash=decode(e.hash.replace(/^#/,\"\"));e.user=decode(i[1]||\"\");e.pass=decode(i[2]||\"\");e.port=defaultPorts[e.protocol]==e.port||e.port==0?\"\":e.port;if(!e.protocol&amp;&amp;!/^([a-z]+:)?\\/\\//.test(r)){var h=new Url(o.location.href.match(/(.*\\/)/)[0]),a=h.path.split(\"/\"),p=e.path.split(\"/\"),c=[\"protocol\",\"user\",\"pass\",\"host\",\"port\"],f=c.length;a.pop();for(n=0;n&lt;f;n++){e[c[n]]=h[c[n]]}while(p[0]==\"..\"){a.pop();p.shift()}e.path=(r.charAt(0)!=\"/\"?a.join(\"/\"):\"\")+\"/\"+p.join(\"/\")}else{e.path=e.path.replace(/^\\/?/,\"/\")}e.paths((e.path.charAt(0)==\"/\"?e.path.slice(1):e.path).split(\"/\"));parseQs(e)},encode=function t(e){return encodeURIComponent(e).replace(/'/g,\"%27\")},decode=function t(e){e=e.replace(/\\+/g,\" \");e=e.replace(/%([ef][0-9a-f])%([89ab][0-9a-f])%([89ab][0-9a-f])/gi,function(t,e,r,o){var s=parseInt(e,16)-224,i=parseInt(r,16)-128;if(s==0&amp;&amp;i&lt;32){return t}var n=parseInt(o,16)-128,h=(s&lt;&lt;12)+(i&lt;&lt;6)+n;if(h&gt;65535){return t}return String.fromCharCode(h)});e=e.replace(/%([cd][0-9a-f])%([89ab][0-9a-f])/gi,function(t,e,r){var o=parseInt(e,16)-192;if(o&lt;2){return t}var s=parseInt(r,16)-128;return String.fromCharCode((o&lt;&lt;6)+s)});e=e.replace(/%([0-7][0-9a-f])/gi,function(t,e){return String.fromCharCode(parseInt(e,16))});return e},parseQs=function t(e){var r=e.query;e.query=new function(t){var e=/([^=&amp;]+)(=([^&amp;]*))?/g,r;while(r=e.exec(t)){var o=decodeURIComponent(r[1].replace(/\\+/g,\" \")),s=r[3]?decode(r[3]):\"\";if(this[o]!=null){if(!(this[o]instanceof Array)){this[o]=[this[o]]}this[o].push(s)}else{this[o]=s}}this.clear=function(){for(var t in this){if(!(this[t]instanceof Function)){delete this[t]}}};this.count=function(){var t=0,e;for(e in this){if(!(this[e]instanceof Function)){t++}}return t};this.isEmpty=function(){return this.count()===0};this.toString=function(){var t=\"\",e=encode,r,o;for(r in this){if(this[r]instanceof Function){continue}if(this[r]instanceof Array){var s=this[r].length;if(s){for(o=0;o&lt;s;o++){t+=t?\"&amp;\":\"\";t+=e(r)+\"=\"+e(this[r][o])}}els
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/basic": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/lib/utils/basic",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.bindTo=exports.getNearestRasterPosition=exports.mod=exports.removeDOMChildNodes=exports.setDomListeners=exports.merge=exports.getRandomLabel=exports.getFirstElementByClassName=exports.getImgFromWeb=exports.pickRandom=exports.hasKeyWithPrefix=exports.getWithoutPrefix=exports.getPropertiesByPrefix=exports.removeArrayElement=exports.isTrue=exports.replaceAll=exports.isInteger=exports.findAndRemoveClassNames=exports.getAncestorWithClass=exports.makeHashMap=exports.getWithoutNewLines=exports.joinAndWrap=exports.parseJSON=exports.hasSubString=exports.inArray=exports.getRandomInt=exports.isEqual=exports.identity=exports.base64=exports.startsWith=exports.getBasename=exports.escapeRegex=exports.hasElements=exports.ucFirst=undefined;var _typeof=typeof Symbol===\"function\"&amp;&amp;typeof Symbol.iterator===\"symbol\"?function(e){return typeof e}:function(e){return e&amp;&amp;typeof Symbol===\"function\"&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?\"symbol\":typeof e};/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/lib/utils/basic\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _exception=require(\"$:/plugins/felixhayashi/tiddlymap/js/exception\");var ucFirst=exports.ucFirst=function e(t){return t&amp;&amp;t[0].toUpperCase()+t.slice(1)};var hasElements=exports.hasElements=function e(t){return Object.keys(t).length&gt;0};var escapeRegex=exports.escapeRegex=function e(t){return t.replace(/[-$^?.+*[\\]\\\\(){}|]/g,\"\\\\$&amp;\")};var getBasename=exports.getBasename=function e(t){var r=arguments.length&gt;1&amp;&amp;arguments[1]!==undefined?arguments[1]:\"/\";return t.substring(t.lastIndexOf(r)+1)};var startsWith=exports.startsWith=function e(t,r){return t.substring(0,r.length)===r};var base64=exports.base64=typeof window===\"undefined\"?function(e){return new Buffer(e).toString(\"base64\")}:window.btoa.bind(window);var identity=exports.identity=function e(t){return(typeof t===\"undefined\"?\"undefined\":_typeof(t))===\"object\"&amp;&amp;t!==null?JSON.stringify(Object.keys(t).sort().map(function(e){return[e,t[e]]})):null};var isEqual=exports.isEqual=function e(t,r){return identity(t)===identity(r)};var getRandomInt=exports.getRandomInt=function e(t,r){return Math.floor(Math.random()*(r-t)+t)};var inArray=exports.inArray=function e(t,r){return r.indexOf(t)!==-1};var hasSubString=exports.hasSubString=function e(t,r){return t.indexOf(r)!==-1};var parseJSON=exports.parseJSON=function e(t,r){try{return JSON.parse(t)}catch(e){return r}};var joinAndWrap=exports.joinAndWrap=function e(t,r,n){var o=arguments.length&gt;3&amp;&amp;arguments[3]!==undefined?arguments[3]:\" \";return r+t.join(n+o+r)+n};var getWithoutNewLines=exports.getWithoutNewLines=function e(t){return typeof t===\"string\"?t.replace(/[\\n\\r]/g,\" \"):t};var makeHashMap=exports.makeHashMap=function e(t){var r=Object.create(null);Object.defineProperty(r,\"hasOwnProperty\",{enumerable:false,configurable:false,writable:false,value:Object.prototype.hasOwnProperty.bind(r)});if(t){for(var n in t){if(t.hasOwnProperty(n)){r[n]=t[n]}}}return r};var getAncestorWithClass=exports.getAncestorWithClass=function e(t,r){if((typeof t===\"undefined\"?\"undefined\":_typeof(t))!==\"object\"||typeof r!==\"string\"){return}while(t.parentNode&amp;&amp;t.parentNode!==document){t=t.parentNode;if(t.classList.contains(r)){return t}}};var findAndRemoveClassNames=exports.findAndRemoveClassNames=function e(t){for(var r=t.length;r--;){var n=document.getElementsByClassName(t[r]);for(var o=n.length;o--;){n[o].classList.remove(t[r])}}};var isInteger=exports.isInteger=Number.isInteger||function(e){return typeof e===\"number\"&amp;&amp;isFinite(e)&amp;&amp;Math.floor(e)===e};var replaceAll=exports.replaceAll=function e(t){var r=arguments.length&gt;1&amp;&amp;arguments[1]!==undefined?arguments[1]:\"\";var n=arguments[2];for(var o=n.length;o--;){var s=n[o];var i=r;if(Array.isArray(s)){i=s[1];s=s[0]}t=t.replace(s,
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/thirdParty": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/lib/utils/thirdParty",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});\n/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/lib/utils/thirdParty\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var generateDraftTitle=exports.generateDraftTitle=function e(n){var r=0,t=void 0;do{t=\"Draft \"+(r?r+1+\" \":\"\")+\"of '\"+n+\"'\";r++}while($tw.wiki.tiddlerExists(t));return t};var makeDraftTiddler=exports.makeDraftTiddler=function e(n){var r=$tw.wiki.findDraft(n);if(r){return $tw.wiki.getTiddler(r)}var t=$tw.wiki.getTiddler(n);r=generateDraftTitle(n);var l=new $tw.Tiddler(t,{title:r,\"draft.title\":n,\"draft.of\":n},$tw.wiki.getModificationFields());$tw.wiki.addTiddler(l);return l};var getFullScreenApis=exports.getFullScreenApis=function e(){var n=document,r=n.body,t={_requestFullscreen:r.webkitRequestFullscreen!==undefined?\"webkitRequestFullscreen\":r.mozRequestFullScreen!==undefined?\"mozRequestFullScreen\":r.msRequestFullscreen!==undefined?\"msRequestFullscreen\":r.requestFullscreen!==undefined?\"requestFullscreen\":\"\",_exitFullscreen:n.webkitExitFullscreen!==undefined?\"webkitExitFullscreen\":n.mozCancelFullScreen!==undefined?\"mozCancelFullScreen\":n.msExitFullscreen!==undefined?\"msExitFullscreen\":n.exitFullscreen!==undefined?\"exitFullscreen\":\"\",_fullscreenElement:n.webkitFullscreenElement!==undefined?\"webkitFullscreenElement\":n.mozFullScreenElement!==undefined?\"mozFullScreenElement\":n.msFullscreenElement!==undefined?\"msFullscreenElement\":n.fullscreenElement!==undefined?\"fullscreenElement\":\"\",_fullscreenChange:n.webkitFullscreenElement!==undefined?\"webkitfullscreenchange\":n.mozFullScreenElement!==undefined?\"mozfullscreenchange\":n.msFullscreenElement!==undefined?\"MSFullscreenChange\":n.fullscreenElement!==undefined?\"fullscreenchange\":\"\"};if(!t._requestFullscreen||!t._exitFullscreen||!t._fullscreenElement){return null}else{return t}};var flatten=exports.flatten=function e(n){var r=arguments.length&gt;1&amp;&amp;arguments[1]!==undefined?arguments[1]:{};var t=r.delimiter||\".\";var l=r.prefix||\"\";var i={};function u(e,n){Object.keys(e).forEach(function(f){var s=e[f];var c=r.safe&amp;&amp;Array.isArray(s);var a=Object.prototype.toString.call(s);var d=a===\"[object Object]\"||a===\"[object Array]\";var o=n?n+t+f:l+f;if(!c&amp;&amp;d){return u(s,o)}i[o]=s})}u(n);return i};var unflatten=exports.unflatten=function e(n){var r=arguments.length&gt;1&amp;&amp;arguments[1]!==undefined?arguments[1]:{};var t=r.delimiter||\".\";var l={};if(Object.prototype.toString.call(n)!==\"[object Object]\"){return n}function i(e){var n=Number(e);return isNaN(n)||e.indexOf(\".\")!==-1?e:n}Object.keys(n).forEach(function(u){var f=u.split(t);var s=i(f.shift());var c=i(f[0]);var a=l;while(c!==undefined){if(a[s]===undefined){a[s]=typeof c===\"number\"&amp;&amp;!r.object?[]:{}}a=a[s];if(f.length&gt;0){s=i(f.shift());c=i(f[0])}}a[s]=e(n[u],r)});return l};var genUUID=exports.genUUID=function(){var e=\"0123456789abcdefghijklmnopqrstuvwxyz\".split(\"\");return function(){var n=e,r=new Array(36);var t=0,l;for(var i=0;i&lt;36;i++){if(i==8||i==13||i==18||i==23){r[i]=\"-\"}else if(i==14){r[i]=\"4\"}else{if(t&lt;=2)t=33554432+Math.random()*16777216|0;l=t&amp;15;t=t&gt;&gt;4;r[i]=n[i==19?l&amp;3|8:l]}}return r.join(\"\")}}();\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/utils/thirdParty.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/tmap": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/lib/utils/tmap",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.getSnapshotTitle=exports.getArrayValuesAsHashmapKeys=exports.getLookupTable=exports.keyOfItemWithProperty=exports.keysOfItemsWithProperty=exports.getDublicates=exports.getId=exports.refreshDataSet=exports.drawRaster=exports.getPrettyFilter=exports.groupByProperty=exports.isEdgeTypeMatch=exports.getEdgeTypeMatches=exports.getDataUri=exports.convert=exports.getValues=exports.getIterableCollection=exports.getLabel=undefined;var _typeof=typeof Symbol===\"function\"&amp;&amp;typeof Symbol.iterator===\"symbol\"?function(e){return typeof e}:function(e){return e&amp;&amp;typeof Symbol===\"function\"&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?\"symbol\":typeof e};/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/lib/utils/tmap\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _vis=require(\"$:/plugins/felixhayashi/vis/vis.js\");var _vis2=_interopRequireDefault(_vis);var _exception=require(\"$:/plugins/felixhayashi/tiddlymap/js/exception\");var _basic=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/basic\");var basicUtils=_interopRequireWildcard(_basic);var _wiki=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/wiki\");var wikiUtils=_interopRequireWildcard(_wiki);function _interopRequireWildcard(e){if(e&amp;&amp;e.__esModule){return e}else{var t={};if(e!=null){for(var r in e){if(Object.prototype.hasOwnProperty.call(e,r))t[r]=e[r]}}t.default=e;return t}}function _interopRequireDefault(e){return e&amp;&amp;e.__esModule?e:{default:e}}var getLabel=exports.getLabel=function e(t,r){var i=wikiUtils.getTiddler(t);return(i&amp;&amp;i.fields[r]?i.fields[r]:i.fields.title).replace(\"\\\\n\",\"\\n\")};var getIterableCollection=exports.getIterableCollection=function e(t){return t instanceof _vis2.default.DataSet?t.get():t};var getValues=exports.getValues=function e(t){if(Array.isArray(t)){return t}else if(t instanceof _vis2.default.DataSet){return t.get({returnType:\"Array\"})}var r=[];var i=Object.keys(t);for(var a=i.length;a--;){r.push(t[i[a]])}return r};var convert=exports.convert=function e(t,r){if((typeof t===\"undefined\"?\"undefined\":_typeof(t))!==\"object\"){throw new _exception.InvalidArgumentException(t,r)}if(r===\"object\"){r=\"hashmap\"}var i={array:function e(t){return getValues(t)},hashmap:function e(t){return t instanceof _vis2.default.DataSet?t.get({returnType:\"Object\"}):t},dataset:function e(t){return t instanceof _vis2.default.DataSet?t:!Array.isArray(t)?getValues(t):new _vis2.default.DataSet(t)}};return i[r](t)};var getDataUri=exports.getDataUri=function e(t,r,i){var a=wikiUtils.getTiddler(t);r=r||a.fields.type||\"image/svg+xml\";var s=a.fields.text;var o=$tw.config.contentTypeInfo[r].encoding;if(r===\"image/svg+xml\"){s=s.replace(/\\r?\\n|\\r/g,\" \");if(!basicUtils.hasSubString(\"xmlns\",s)){s=s.replace(/&lt;svg/,'&lt;svg xmlns=\"http://www.w3.org/2000/svg\"')}}if(i&amp;&amp;o!==\"base64\"){o=\"base64\";s=basicUtils.base64(s)}return\"data:\"+r+\";\"+o+\",\"+s};var eTyFiltAutoPrefix=\"[all[]] \";var getEdgeTypeMatches=exports.getEdgeTypeMatches=function e(){var t=arguments.length&gt;0&amp;&amp;arguments[0]!==undefined?arguments[0]:\"\";var r=arguments[1];if(!r){r=wikiUtils.getTiddlersByPrefix($tm.path.edgeTypes+\"/\",{iterator:\"eachTiddlerPlusShadows\",removePrefix:true})}if(r!=null&amp;&amp;!Array.isArray(r)){r=Object.keys(r)}return wikiUtils.getMatches(eTyFiltAutoPrefix+t,r)};var isEdgeTypeMatch=exports.isEdgeTypeMatch=function e(t){var r=arguments.length&gt;1&amp;&amp;arguments[1]!==undefined?arguments[1]:\"\";return wikiUtils.isMatch(t,eTyFiltAutoPrefix+r)};var groupByProperty=exports.groupByProperty=function e(t,r){t=getIterableCollection(t);var i=basicUtils.makeHashMap();var a=Object.keys(t);for(var s in a){var o=t[a[s]];var n=o[r];if(n==null){throw\"Cannot group by property \"+r}else{if(!Array.isArray(i[n])){i[n]=[]}i[n].push(o)}}return i};var getPrettyFilter=exports.getPrettyFilter=function e(t){
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/utils": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/utils",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.utils=undefined;var _extends=Object.assign||function(i){for(var r=1;r&lt;arguments.length;r++){var t=arguments[r];for(var e in t){if(Object.prototype.hasOwnProperty.call(t,e)){i[e]=t[e]}}}return i};/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/utils\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _basic=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/basic\");var basicUtils=_interopRequireWildcard(_basic);var _thirdParty=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/thirdParty\");var thirdPartyUtils=_interopRequireWildcard(_thirdParty);var _wiki=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/wiki\");var wikiUtils=_interopRequireWildcard(_wiki);var _tmap=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/tmap\");var tMapUtils=_interopRequireWildcard(_tmap);function _interopRequireWildcard(i){if(i&amp;&amp;i.__esModule){return i}else{var r={};if(i!=null){for(var t in i){if(Object.prototype.hasOwnProperty.call(i,t))r[t]=i[t]}}r.default=i;return r}}var utils=exports.utils=_extends({},basicUtils,thirdPartyUtils,wikiUtils,tMapUtils);exports.default=utils;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/utils/utils.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/wiki": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/lib/utils/wiki",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.touch=exports.addTiddler=exports.getTiddlersByPrefix=exports.getTiddlerWithField=exports.getTiddlersWithField=exports.deleteByPrefix=exports.cp=exports.mv=exports.addTWlisteners=exports.getChildWidgetByProperty=exports.getMergedTiddlers=exports.isSystemOrDraft=exports.isDraft=exports.setText=exports.getText=exports.isLeftVersionGreater=exports.getEntry=exports.setEntry=exports.clone=exports.writeFieldData=exports.parseFieldData=exports.isPreviewed=exports.notify=exports.registerTransclude=exports.getElementNode=exports.getTiddlerNode=exports.getTranscludeNode=exports.isMatch=exports.getMatches=exports.moveFieldValues=exports.deleteTiddlers=exports.setField=exports.setSidebarTab=exports.tiddlerExists=exports.getField=exports.getTiddler=exports.getTiddlerRef=undefined;var _typeof=typeof Symbol===\"function\"&amp;&amp;typeof Symbol.iterator===\"symbol\"?function(e){return typeof e}:function(e){return e&amp;&amp;typeof Symbol===\"function\"&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?\"symbol\":typeof e};var _exception=require(\"$:/plugins/felixhayashi/tiddlymap/js/exception\");var _basic=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/basic\");var basicUtils=_interopRequireWildcard(_basic);function _interopRequireWildcard(e){if(e&amp;&amp;e.__esModule){return e}else{var t={};if(e!=null){for(var r in e){if(Object.prototype.hasOwnProperty.call(e,r))t[r]=e[r]}}t.default=e;return t}}function _defineProperty(e,t,r){if(t in e){Object.defineProperty(e,t,{value:r,enumerable:true,configurable:true,writable:true})}else{e[t]=r}return e}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/lib/utils/wiki\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var getTiddlerRef=exports.getTiddlerRef=function e(t){if(t instanceof $tw.Tiddler){return t.fields.title}else if(typeof t===\"string\"){return t}else{throw new _exception.InvalidArgumentException(t)}};var getTiddler=exports.getTiddler=function e(t){return $tw.wiki.getTiddler(t instanceof $tw.Tiddler?t.fields.title:t)};var getField=exports.getField=function e(t,r){var i=arguments.length&gt;2&amp;&amp;arguments[2]!==undefined?arguments[2]:\"\";var d=getTiddler(t);return!d?i:d.fields[r]||i};var tiddlerExists=exports.tiddlerExists=function e(t){if(!t){return false}var r=getTiddlerRef(t);return Boolean(r&amp;&amp;($tw.wiki.tiddlerExists(r)||$tw.wiki.isShadowTiddler(r)))};var setSidebarTab=exports.setSidebarTab=function e(t){setText(getTiddlersByPrefix(\"$:/state/tab/sidebar-\")[0],t)};var setField=exports.setField=function e(t,r,i){if(!t||!r){return}var d=getTiddlerRef(t);var s=_defineProperty({title:d},r,i);var n=$tw.wiki.getTiddler(d,true);if(r!==\"text\"&amp;&amp;n&amp;&amp;!n.fields.text){s.text=\"\"}n=new $tw.Tiddler(n,s);$tw.wiki.addTiddler(n);return n};var deleteTiddlers=exports.deleteTiddlers=function e(t){var r=Object.keys(t);var i=$tw.wiki.getTiddlerList(\"$:/StoryList\");for(var d=r.length;d--;){var s=getTiddlerRef(t[r[d]]);if(!$tw.wiki.tiddlerExists(t[r[d]])){continue}var n=i.indexOf(s);if(n!==-1){i.splice(n,1);setField(\"$:/StoryList\",\"list\",i)}$tw.wiki.deleteTiddler(s)}};var moveFieldValues=exports.moveFieldValues=function e(t,r,i,d,s){if(t===r)return;var n=s||$tw.wiki.allTitles();for(var l=n.length;l--;){var a=getTiddler(n[l]);if(a.isDraft()||!a.fields[t]){continue}if(!d&amp;&amp;$tw.wiki.isSystemTiddler(n[l])){continue}var o=_defineProperty({},r,a.fields[t]);if(i){o[t]=undefined}$tw.wiki.addTiddler(new $tw.Tiddler(a,o))}};var getMatches=exports.getMatches=function e(t,r,i){var d=undefined;var s=$tw.wiki;if(typeof t===\"string\"){t=s.compileFilter(t)}if(r!=null&amp;&amp;(typeof r===\"undefined\"?\"undefined\":_typeof(r))===\"object\"){if(!Array.isArray(r)){r=Object.keys(r)}d=function e(t){for(var i=r.length;i--;){var d=s.getTiddler(r[i]);t(d,r[i])}}}return t.call(s,d,i)};var isMatch=exports.isMatch=function e(t,r){return getTiddlerRef(t)===getMatches(r,[getTiddlerRef(t)])[0]
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/macro/tmap": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/macro/tmap",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.params=exports.name=exports.run=undefined;var _typeof=typeof Symbol===\"function\"&amp;&amp;typeof Symbol.iterator===\"symbol\"?function(e){return typeof e}:function(e){return e&amp;&amp;typeof Symbol===\"function\"&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?\"symbol\":typeof e};/* @preserve TW-Guard */\n/*\\\ntitle: $:/plugins/felixhayashi/tiddlymap/js/macro/tmap\ntype: application/javascript\nmodule-type: macro\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _EdgeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/EdgeType\");var _EdgeType2=_interopRequireDefault(_EdgeType);var _ViewAbstraction=require(\"$:/plugins/felixhayashi/tiddlymap/js/ViewAbstraction\");var _ViewAbstraction2=_interopRequireDefault(_ViewAbstraction);var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);function _interopRequireDefault(e){return e&amp;&amp;e.__esModule?e:{default:e}}var name=\"tmap\";var params=getParamSlots(5);function run(){this.substVarRefs=this.substituteVariableReferences;var e=command[arguments[0]];var t=null;if(typeof e===\"function\"){var r=Array.prototype.slice.call(arguments,1);t=e.apply(this,r)}return typeof t===\"string\"?t:\"\"}function getParamSlots(e){var t=[];for(var r=0;r&lt;e;r++){t.push({name:\"arg\"+r})}return t}var command=_utils2.default.makeHashMap();command.basename=function(e){var t=this.getVariable(\"currentTiddler\");return _utils2.default.getBasename(t,e)};command.datauri=function(e,t){return _utils2.default.getDataUri(e,t,true)};command.testJSON=function(e){var t=$tw.wiki.getTiddler(this.getVariable(\"currentTiddler\"));try{JSON.parse(t.fields[e]);return\"valid\"}catch(e){return\"malformed\"}};command.splitAndSelect=function(e,t){var r=this.getVariable(\"currentTiddler\");var a=r.split(e)[t];return a!=null?a:r};command.concat=function(){var e=\"\";for(var t=1,r=arguments.length;t&lt;r;t++){e+=arguments[t]}return e};command.uuid=function(){return _utils2.default.genUUID()};command.regRepl=function(){var e=this.substVarRefs(arguments[0]);var t=arguments[1];var r=this.substVarRefs(arguments[2]);var a=this.substVarRefs(arguments[4]);return e.replace(new RegExp(t,a),r)};command.halfOfString=function(){var e=this.substVarRefs(arguments[0]);if(!e){return\"\"}return e.substr(0,Math.ceil(e.length/2))};command.isETyVisible=function(e,t){e=new _ViewAbstraction2.default(e);var r=command.getETyId.call(this,e,t);return\"\"+e.isEdgeTypeVisible(r)};command.getETyId=function(e,t){e=new _ViewAbstraction2.default(e);var r=_EdgeType2.default.getInstance(t||this.getVariable(\"currentTiddler\"));if(!r.namespace){var a=_EdgeType2.default.getIdParts(r.id),n=a.marker,i=a.name;var u=e.getConfig(\"edge_type_namespace\");r=_EdgeType2.default.getInstance(_EdgeType2.default.getId(n,u,i))}return r.id};command.scale=function(){var e=\"\";for(var t=1,r=parseInt(arguments[0]);t&lt;r;t++){e+=\"[[\"+t+\"]]\"}return e};command.mergeFields=function(){var e=_utils2.default.getTiddler(arguments[0]);var t=arguments[1];var r=arguments[2]||\" \";if(!e)return;var a=_utils2.default.getPropertiesByPrefix(e.fields,t);var n=\"\";for(var i in a){if(typeof a[i]===\"string\"){n+=a[i]+r}}return n};command.option=function(e,t){if(typeof $tm==\"undefined\"){return\"\"}var r=$tm;var a=e.split(\".\");for(var n=0;n&lt;a.length;n++){if((typeof r===\"undefined\"?\"undefined\":_typeof(r))==\"object\"&amp;&amp;r[a[n]]){r=r[a[n]]}}if(t&amp;&amp;typeof r===\"string\"&amp;&amp;_utils2.default.hasSubString(t)&amp;&amp;r.lastIndexOf(t)+t.length===r.length){r=r+t}return r};exports.run=run;exports.name=name;exports.params=params;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/macro/MapMacro.js.map\n",
"type": "application/javascript",
"module-type": "macro"
},
"$:/plugins/felixhayashi/tiddlymap/js/Adapter": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/Adapter",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _typeof=typeof Symbol===\"function\"&amp;&amp;typeof Symbol.iterator===\"symbol\"?function(e){return typeof e}:function(e){return e&amp;&amp;typeof Symbol===\"function\"&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?\"symbol\":typeof e};var _createClass=function(){function e(e,t){for(var i=0;i&lt;t.length;i++){var r=t[i];r.enumerable=r.enumerable||false;r.configurable=true;if(\"value\"in r)r.writable=true;Object.defineProperty(e,r.key,r)}}return function(t,i,r){if(i)e(t.prototype,i);if(r)e(t,r);return t}}();/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/Adapter\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _ViewAbstraction=require(\"$:/plugins/felixhayashi/tiddlymap/js/ViewAbstraction\");var _ViewAbstraction2=_interopRequireDefault(_ViewAbstraction);var _EdgeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/EdgeType\");var _EdgeType2=_interopRequireDefault(_EdgeType);var _NodeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/NodeType\");var _NodeType2=_interopRequireDefault(_NodeType);var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _Edge=require(\"$:/plugins/felixhayashi/tiddlymap/js/Edge\");var _Edge2=_interopRequireDefault(_Edge);var _vis=require(\"$:/plugins/felixhayashi/vis/vis.js\");var _vis2=_interopRequireDefault(_vis);var _environment=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/environment\");var env=_interopRequireWildcard(_environment);var _contrastcolour=require(\"$:/core/modules/macros/contrastcolour.js\");function _interopRequireWildcard(e){if(e&amp;&amp;e.__esModule){return e}else{var t={};if(e!=null){for(var i in e){if(Object.prototype.hasOwnProperty.call(e,i))t[i]=e[i]}}t.default=e;return t}}function _interopRequireDefault(e){return e&amp;&amp;e.__esModule?e:{default:e}}function _defineProperty(e,t,i){if(t in e){Object.defineProperty(e,t,{value:i,enumerable:true,configurable:true,writable:true})}else{e[t]=i}return e}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}var Adapter=function(){function e(t,i){_classCallCheck(this,e);this.getTiddlerById=t.getTiddlerById.bind(t);this.getId=t.getIdByTiddler.bind(t);this.assignId=t.assignId.bind(t);this.edgeTypeSubscriberRegistry=i;this.indeces=$tm.indeces;this.wiki=$tw.wiki;this.visShapesWithTextInside=_utils2.default.getLookupTable([\"ellipse\",\"circle\",\"database\",\"box\",\"text\"])}_createClass(e,[{key:\"deleteEdge\",value:function e(t){return this._processEdge(t,\"delete\")}},{key:\"insertEdge\",value:function e(t){return this._processEdge(t,\"insert\")}},{key:\"deleteEdges\",value:function e(t){t=_utils2.default.convert(t,\"array\");for(var i=t.length;i--;){this.deleteEdge(t[i])}}},{key:\"_processEdge\",value:function e(t,i){$tm.logger(\"debug\",\"Edge\",i,t);var r=this.getTiddlerById(t.from);if(!r||!_utils2.default.tiddlerExists(r)){return}var a=_utils2.default.getTiddler(r);var s=this.indeces.allETy[t.type]||_EdgeType2.default.getInstance(t.type);var l=this.edgeTypeSubscriberRegistry.getAllForType(s);var n=i+\"Edge\";for(var o=l.length;o--;){l[o][n](a,t,s)}if(i===\"insert\"&amp;&amp;!s.exists()){s.save()}return t}},{key:\"getAdjacencyList\",value:function e(t){var i=arguments.length&gt;1&amp;&amp;arguments[1]!==undefined?arguments[1]:{};$tm.start(\"Creating adjacency list\");if(!i.edges){var r=_utils2.default.getMatches(env.selector.allPotentialNodes);i.edges=this.getEdgesForSet(r,i.toWL,i.typeWL)}var a=_utils2.default.groupByProperty(i.edges,t||\"to\");$tm.stop(\"Creating adjacency list\");return a}},{key:\"getNeighbours\",value:function e(t){var i=this;var r=arguments.length&gt;1&amp;&amp;arguments[1]!==undefined?arguments[1]:{};$tm.start(\"Get neighbours\");var a=r.addProperties,s=r.toWL,l=r.typeWL,n=r.steps;var o=this.indeces.allETy;var d=_utils2.default.getArrayValuesAsHashmapKeys(t);var u=_ViewAbstraction2.defaul
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/CallbackManager": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/CallbackManager",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _createClass=function(){function e(e,t){for(var a=0;a&lt;t.length;a++){var l=t[a];l.enumerable=l.enumerable||false;l.configurable=true;if(\"value\"in l)l.writable=true;Object.defineProperty(e,l.key,l)}}return function(t,a,l){if(a)e(t.prototype,a);if(l)e(t,l);return t}}();/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/CallbackManager\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);function _interopRequireDefault(e){return e&amp;&amp;e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}var CallbackManager=function(){function e(){_classCallCheck(this,e);this.callbacks=_utils2.default.makeHashMap();this.logger=$tm.logger;this.wiki=$tw.wiki}_createClass(e,[{key:\"add\",value:function e(t,a){var l=arguments.length&gt;2&amp;&amp;arguments[2]!==undefined?arguments[2]:true;this.logger(\"debug\",'A callback was registered for changes of \"'+t+'\"');this.callbacks[t]={execute:a,isDeleteOnCall:l}}},{key:\"remove\",value:function e(t){if(!t){return}if(typeof t===\"string\"){t=[t]}for(var a=t.length;a--;){var l=t[a];if(this.callbacks[l]){this.logger(\"debug\",'Deleting callback for \"'+l+'\"');delete this.callbacks[l]}}}},{key:\"refresh\",value:function e(t){if(this.callbacks.length==0){return}for(var a in t){if(!this.callbacks[a]){continue}if(this.wiki.getTiddler(a)){this.logger(\"debug\",\"Executing a callback for: \"+a);this.callbacks[a].execute(a);if(!this.callbacks.isDeleteOnCall){continue}}this.remove(a)}}}]);return e}();exports.default=CallbackManager;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/services/CallbackManager.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/startup/caretaker": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/startup/caretaker",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.startup=exports.synchronous=exports.before=exports.after=exports.platforms=exports.name=undefined;var _rebuilders;var _extends=Object.assign||function(e){for(var t=1;t&lt;arguments.length;t++){var r=arguments[t];for(var i in r){if(Object.prototype.hasOwnProperty.call(r,i)){e[i]=r[i]}}}return e};/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/startup/caretaker\ntype: application/javascript\nmodule-type: startup\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _vis=require(\"$:/plugins/felixhayashi/tiddlymap/js/config/vis\");var _vis2=_interopRequireDefault(_vis);var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _Fixer=require(\"$:/plugins/felixhayashi/tiddlymap/js/Fixer\");var _Fixer2=_interopRequireDefault(_Fixer);var _Adapter=require(\"$:/plugins/felixhayashi/tiddlymap/js/Adapter\");var _Adapter2=_interopRequireDefault(_Adapter);var _tracker=require(\"$:/plugins/felixhayashi/tiddlymap/js/services/tracker\");var _tracker2=_interopRequireDefault(_tracker);var _EdgeTypeSubscriberRegistry=require(\"$:/plugins/felixhayashi/tiddlymap/js/EdgeTypeSubscriberRegistry\");var _EdgeTypeSubscriberRegistry2=_interopRequireDefault(_EdgeTypeSubscriberRegistry);var _DialogManager=require(\"$:/plugins/felixhayashi/tiddlymap/js/DialogManager\");var _DialogManager2=_interopRequireDefault(_DialogManager);var _CallbackManager=require(\"$:/plugins/felixhayashi/tiddlymap/js/CallbackManager\");var _CallbackManager2=_interopRequireDefault(_CallbackManager);var _ViewAbstraction=require(\"$:/plugins/felixhayashi/tiddlymap/js/ViewAbstraction\");var _ViewAbstraction2=_interopRequireDefault(_ViewAbstraction);var _EdgeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/EdgeType\");var _EdgeType2=_interopRequireDefault(_EdgeType);var _NodeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/NodeType\");var _NodeType2=_interopRequireDefault(_NodeType);var _vis3=require(\"$:/plugins/felixhayashi/vis/vis.js\");var _vis4=_interopRequireDefault(_vis3);var _environment=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/environment\");var env=_interopRequireWildcard(_environment);var _URL=require(\"$:/plugins/felixhayashi/tiddlymap/js/URL\");var _URL2=_interopRequireDefault(_URL);function _interopRequireWildcard(e){if(e&amp;&amp;e.__esModule){return e}else{var t={};if(e!=null){for(var r in e){if(Object.prototype.hasOwnProperty.call(e,r))t[r]=e[r]}}t.default=e;return t}}function _interopRequireDefault(e){return e&amp;&amp;e.__esModule?e:{default:e}}function _defineProperty(e,t,r){if(t in e){Object.defineProperty(e,t,{value:r,enumerable:true,configurable:true,writable:true})}else{e[t]=r}return e}var init=function e(){window.$tm=_extends({},env,{utils:_utils2.default,url:new _URL2.default(window.location.href)});cleanup();registerPublicClasses($tm);updateGlobals($tm);createMetaFile($tm.logger);var t=attachIndeces($tm);var r=getInitializedServices(t);Object.assign($tm,r);loadDefaultView($tm.config.sys.defaultView);r.fixer.fix();$tm.registry=[];setInterval(routineCheck,5e3);registerChangeListener($tm.callbackManager);registerMousemoveListener();registerClickListener();if($tm.url.query[\"tmap-enlarged\"]){prepareFullscreenStart($tm.url)}$tm.logger(\"warn\",\"TiddlyMap's caretaker successfully started\")};var getInitializedServices=function e(t){var r=new _tracker2.default(d);var i=$tw.modules.applyMethods(\"tmap.edgetypehandler\");var a=new _EdgeTypeSubscriberRegistry2.default(i,t.allETy,r);var s=new _Adapter2.default(r,a);var l=new _CallbackManager2.default;var n=new _DialogManager2.default(l);var d=new _Fixer2.default(s,$tm.logger,t.glNTy);return{edgeTypeSubscriberRegistry:a,tracker:r,adapter:s,callbackManager:l,dialogManager:n,fixer:d}};var registerPublicClasses=function e(t){t.keycharm=_vis4.default.keycharm;t.NodeType=_NodeType2.default;t.EdgeType=_EdgeType2.default;t.ViewAbstraction=_ViewAbstraction2.default};var attachOptions=function e(t){var r=t;if(!r.config)r.co
"type": "application/javascript",
"module-type": "startup"
},
"$:/plugins/felixhayashi/tiddlymap/js/DialogManager": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/DialogManager",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _createClass=function(){function e(e,t){for(var a=0;a&lt;t.length;a++){var l=t[a];l.enumerable=l.enumerable||false;l.configurable=true;if(\"value\"in l)l.writable=true;Object.defineProperty(e,l.key,l)}}return function(t,a,l){if(a)e(t.prototype,a);if(l)e(t,l);return t}}();/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/DialogManager\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _CallbackManager=require(\"$:/plugins/felixhayashi/tiddlymap/js/CallbackManager\");var _CallbackManager2=_interopRequireDefault(_CallbackManager);function _interopRequireDefault(e){return e&amp;&amp;e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}var DialogManager=function(){function e(t,a){_classCallCheck(this,e);this.callbackManager=t;this.context=a}_createClass(e,[{key:\"open\",value:function t(a){var l=arguments.length&gt;1&amp;&amp;arguments[1]!==undefined?arguments[1]:{};var i=arguments[2];if(_utils2.default.isTrue($tm.config.sys.suppressedDialogs[a],false)){$tm.logger(\"warning\",\"Suppressed dialog\",a);return}$tm.logger(\"debug\",\"Dialog param object\",l);if(typeof i===\"function\"&amp;&amp;this.context){i=i.bind(this.context)}var r=$tm.path.tempRoot+\"/dialog-\"+_utils2.default.genUUID();var n=_utils2.default.getTiddler($tm.path.dialogs+\"/\"+a);var u={title:r,buttons:n.fields[\"buttons\"]||\"ok_cancel\",classes:\"tmap-modal-content \"+n.fields[\"classes\"],output:r+\"/output\",result:r+\"/result\",temp:r+\"/temp\",template:n.fields.title,templateId:a,currentTiddler:r+\"/output\",text:_utils2.default.getText($tm.path.dialogs)};_utils2.default.touch(u.output);if(l.dialog){if(l.dialog.preselects){$tw.wiki.addTiddler(new $tw.Tiddler({title:u.output},_utils2.default.flatten(l.dialog.preselects)));delete l.dialog.preselects}_utils2.default.merge(u,l.dialog)}u.footer=_utils2.default.getText($tm.path.footers);u=_utils2.default.flatten(u);l=_utils2.default.flatten(l);var s=function t(a){e.getElement(\"hidden-close-button\").click();var l=$tw.wiki.getTiddler(a);var n=l.fields.text;var s=null;if(n){s=$tw.wiki.getTiddler(u.output)}else{$tm.notify(\"operation cancelled\")}if(typeof i===\"function\"){i(n,s)}_utils2.default.deleteByPrefix(r)};this.callbackManager.add(u.result,s,true);var o=new $tw.Tiddler(n,l,u);$tw.wiki.addTiddler(o);$tm.logger(\"debug\",\"Opening dialog\",o);$tw.rootWidget.dispatchEvent({type:\"tm-modal\",param:o.fields.title,paramObject:o.fields});e.addKeyBindings();return o}}],[{key:\"getElement\",value:function e(t){return _utils2.default.getFirstElementByClassName(\"tmap-\"+t)}},{key:\"addKeyBindings\",value:function t(){var a=$tm.keycharm({container:_utils2.default.getFirstElementByClassName(\"tc-modal\")});var l=/tmap-triggers-(.+?)-on-(.+?)(?:\\s|$)/;var i=document.getElementsByClassName(\"tmap-trigger-field\");var r=function t(r){var n=i[r].className.split(\" \");var u=function t(i){var r=n[i].match(l);if(!r){return\"continue\"}var u=r[1];var s=r[2];var o=e.getElement(u);if(!o){return\"continue\"}a.bind(s,function(){if(document.getElementsByClassName(n[i]).length){o.click()}})};for(var s=n.length;s--;){var o=u(s);if(o===\"continue\")continue}};for(var n=i.length;n--;){r(n)}}}]);return e}();exports.default=DialogManager;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/services/DialogManager.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/Fixer": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/Fixer",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _typeof=typeof Symbol===\"function\"&amp;&amp;typeof Symbol.iterator===\"symbol\"?function(e){return typeof e}:function(e){return e&amp;&amp;typeof Symbol===\"function\"&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?\"symbol\":typeof e};var _createClass=function(){function e(e,t){for(var i=0;i&lt;t.length;i++){var r=t[i];r.enumerable=r.enumerable||false;r.configurable=true;if(\"value\"in r)r.writable=true;Object.defineProperty(e,r.key,r)}}return function(t,i,r){if(i)e(t.prototype,i);if(r)e(t,r);return t}}();/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/Fixer\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _ViewAbstraction=require(\"$:/plugins/felixhayashi/tiddlymap/js/ViewAbstraction\");var _ViewAbstraction2=_interopRequireDefault(_ViewAbstraction);var _EdgeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/EdgeType\");var _EdgeType2=_interopRequireDefault(_EdgeType);var _NodeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/NodeType\");var _NodeType2=_interopRequireDefault(_NodeType);var _environment=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/environment\");var env=_interopRequireWildcard(_environment);function _interopRequireWildcard(e){if(e&amp;&amp;e.__esModule){return e}else{var t={};if(e!=null){for(var i in e){if(Object.prototype.hasOwnProperty.call(e,i))t[i]=e[i]}}t.default=e;return t}}function _interopRequireDefault(e){return e&amp;&amp;e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}var Fixer=function(){function e(t,i,r){_classCallCheck(this,e);this.adapter=t;this.logger=i;this.wiki=$tw.wiki;this.glNTy=r}_createClass(e,[{key:\"moveEdges\",value:function e(t,i){var r=_utils2.default.getTiddlersByPrefix(t);for(var a=0;a&lt;r.length;a++){var u=_utils2.default.getBasename(r[a]);if(u===\"__noname__\"){u=\"tmap:unknown\"}u=_EdgeType2.default.getInstance(u);if(!u.exists()){u.save()}var n=this.wiki.getTiddlerData(r[a]);for(var s=0;s&lt;n.length;s++){n[s].type=(i?i+\":\":\"\")+u.id;this.adapter.insertEdge(n[s])}this.wiki.deleteTiddler(r[a])}}},{key:\"executeUpgrade\",value:function e(t,i,r){if(!_utils2.default.isLeftVersionGreater(t,i)){return}this.logger(\"debug\",\"Upgrading data structure to \"+t);var a=r();_utils2.default.setEntry(env.ref.sysMeta,\"dataStructureState\",t);return a}},{key:\"fixId\",value:function e(){var t=this.wiki.getTiddlerData(env.ref.sysMeta,{});this.executeUpgrade(\"0.9.2\",t.dataStructureState,function(){if(_utils2.default.isLeftVersionGreater(\"0.9.2\",t.originalVersion)){var e=\"$:/plugins/felixhayashi/tiddlymap/config/sys/user\";var i=_utils2.default.getEntry(e,\"field.nodeId\",\"tmap.id\");_utils2.default.moveFieldValues(i,\"tmap.id\",true,false)}})}},{key:\"fix\",value:function e(){var t=this;var i=this.wiki.getTiddlerData(env.ref.sysMeta,{});this.logger(\"debug\",\"Fixer is started\");this.logger(\"debug\",\"Data-structure currently in use: \",i.dataStructureState);this.executeUpgrade(\"0.7.0\",i.dataStructureState,function(){t.moveEdges(\"$:/plugins/felixhayashi/tiddlymap/graph/edges\",null);var e=env.selector.allViews;var i=_utils2.default.getMatches(e);for(var r=0;r&lt;i.length;r++){var a=new _ViewAbstraction2.default(i[r]);t.moveEdges(a.getRoot()+\"/graph/edges\",a)}});this.executeUpgrade(\"0.7.32\",i.dataStructureState,function(){if(!_ViewAbstraction2.default.exists(\"Live View\")){return}var e=new _ViewAbstraction2.default(\"Live View\");e.setNodeFilter(\"[field:title{$:/temp/tmap/currentTiddler}]\",true);e.setConfig({\"refresh-trigger\":null,\"refresh-triggers\":$tw.utils.stringifyList([\"$:/temp/tmap/currentTiddler\"])})});this.executeUpgrade(\"0.9.0\",i.dataStructureState,function(){var e=env.ref.visUserConf;var i=_utils2.default.unflatten(t.wiki.getTiddlerData(e,{}));if(_t
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/startup/listener": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/startup/listener",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.startup=exports.synchronous=exports.before=exports.after=exports.platforms=exports.name=undefined;var _NodeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/NodeType\");var _NodeType2=_interopRequireDefault(_NodeType);var _EdgeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/EdgeType\");var _EdgeType2=_interopRequireDefault(_EdgeType);var _Edge=require(\"$:/plugins/felixhayashi/tiddlymap/js/Edge\");var _Edge2=_interopRequireDefault(_Edge);var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _vis=require(\"$:/plugins/felixhayashi/tiddlymap/js/config/vis\");var _vis2=_interopRequireDefault(_vis);function _interopRequireDefault(e){return e&amp;&amp;e.__esModule?e:{default:e}}var handleCancelDialog=function e(t){var a=t.param;_utils2.default.setField(a,\"text\",\"\")};\n/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/startup/listener\ntype: application/javascript\nmodule-type: startup\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var handleClearTiddler=function e(){var t=arguments.length&gt;0&amp;&amp;arguments[0]!==undefined?arguments[0]:{},a=t.paramObject;var r=a.title,d=a.keep;if(!r)return;var i=_utils2.default.getTiddler(r);var l=i?i.fields:{};var s=d?d.split():[];var n={title:r,text:\"\"};for(var p=s.length;p--;){var o=s[p];n[o]=l[o]}$tw.wiki.deleteTiddler(r);$tw.wiki.addTiddler(new $tw.Tiddler(n))};var handleMixTiddlers=function e(t){var a=t.paramObject,r=a===undefined?{}:a;var d=r.tiddlers,i=r.output;if(!d||!i)return;var l=$tw.utils.parseStringArray(d);var s=_utils2.default.getMergedTiddlers(l,i);$tw.wiki.addTiddler(s)};var handleConfirmDialog=function e(t){var a=t.param;_utils2.default.setField(a,\"text\",\"1\")};var handleSuppressDialog=function e(t){var a=t.paramObject;var r=a.dialog,d=a.suppress;if(_utils2.default.isTrue(d,false)){_utils2.default.setEntry($tm.ref.sysUserConf,\"suppressedDialogs.\"+r,true)}};var handleDownloadGraph=function e(t){var a=t.paramObject;var r=a.view;var d=$tm.adapter.getGraph({view:r});d.nodes=_utils2.default.convert(d.nodes,\"array\");d.edges=_utils2.default.convert(d.edges,\"array\");var i=\"$:/temp/tmap/export\";_utils2.default.setField(i,\"text\",JSON.stringify(d,null,2));$tw.rootWidget.dispatchEvent({type:\"tm-download-file\",param:i,paramObject:{filename:r+\".json\"}})};var handleConfigureSystem=function e(){var t=_utils2.default.getMatches($tm.selector.allPotentialNodes);var a=$tm.adapter.getEdgesForSet(t);var r=$tw.wiki.getTiddler($tm.path.pluginRoot).fields;var d=$tw.wiki.getTiddlerData($tm.ref.sysMeta);var i=_utils2.default.getTiddler($tm.ref.liveTab).hasTag(\"$:/tags/SideBar\");var l={numberOfNodes:\"\"+t.length,numberOfEdges:\"\"+Object.keys(a).length,pluginVersion:\"v\"+r.version,dataStructureVersion:\"v\"+d.dataStructureState,dialog:{preselects:{liveTab:\"\"+i,\"vis-inherited\":JSON.stringify(_vis2.default),\"config.vis\":_utils2.default.getText($tm.ref.visUserConf),\"config.sys\":$tm.config.sys}}};$tm.dialogManager.open(\"globalConfig\",l,function(e,t){if(!e)return;var a=_utils2.default.getPropertiesByPrefix(t.fields,\"config.sys.\",true);$tw.wiki.setTiddlerData($tm.ref.sysUserConf,a);if(_utils2.default.isTrue(t.fields.liveTab,false)){_utils2.default.setField($tm.ref.liveTab,\"tags\",\"$:/tags/SideBar\")}else{$tw.wiki.deleteTiddler($tm.ref.liveTab)}_utils2.default.setField($tm.ref.visUserConf,\"text\",t.fields[\"config.vis\"])})};var handleGenerateWidget=function e(t){var a=t.paramObject,r=a===undefined?{}:a;var d={dialog:{preselects:{\"var.view\":r.view||$tm.misc.defaultViewLabel}}};$tm.dialogManager.open(\"widgetCodeGenerator\",d)};var handleRemoveEdge=function e(t){var a=t.paramObject;$tm.adapter.deleteEdge(a)};var handleCreateEdge=function e(t){var a=t.paramObject;var r=a.from,d=a.to,i=a.force;if(!r||!d)return;if(_utils2.default.tiddlerExists(r)&amp;&amp;_utils2.default.tiddlerExists(d)||i){_utils2.default.addTiddler(d);_utils2.default.addTiddler(r);var l=new _Edge2.defau
"type": "application/javascript",
"module-type": "startup"
},
"$:/plugins/felixhayashi/tiddlymap/js/services/tracker": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/services/tracker",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _createClass=function(){function e(e,t){for(var i=0;i&lt;t.length;i++){var r=t[i];r.enumerable=r.enumerable||false;r.configurable=true;if(\"value\"in r)r.writable=true;Object.defineProperty(e,r.key,r)}}return function(t,i,r){if(i)e(t.prototype,i);if(r)e(t,r);return t}}();/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/services/tracker\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);function _interopRequireDefault(e){return e&amp;&amp;e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}var Tracker=function(){function e(t){_classCallCheck(this,e);this.wiki=$tw.wiki;this.logger=$tm.logger;this._createIndex()}_createClass(e,[{key:\"_createIndex\",value:function e(){var t=this.tById={};var i=this.idByT={};this.wiki.each(function(e,r){if(_utils2.default.isSystemOrDraft(e)){return}var l=e.fields[\"tmap.id\"];if(!l){l=_utils2.default.genUUID();_utils2.default.setField(e,\"tmap.id\",l)}t[l]=r;i[r]=l})}},{key:\"assignId\",value:function e(t,i){var r=_utils2.default.getTiddler(t);if(!r){throw new ResourceNotFoundException(t)}var l=r.fields[\"tmap.id\"];if(!l||i){l=_utils2.default.genUUID();_utils2.default.setField(r,\"tmap.id\",l);this.logger(\"info\",\"Assigning new id to\",r.fields.title)}this.tById[l]=r.fields.title;this.idByT[r.fields.title]=l;return l}},{key:\"getIdByTiddler\",value:function e(t){return this.idByT[_utils2.default.getTiddlerRef(t)]}},{key:\"getIdsByTiddlers\",value:function e(){return this.idByT}},{key:\"getTiddlersByIds\",value:function e(){return this.tById}},{key:\"getTiddlerById\",value:function e(t){return this.tById[t]}}]);return e}();exports.default=Tracker;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/services/Tracker.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/widget/MapConfigWidget": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/widget/MapConfigWidget",
"text": "\"use strict\";var _typeof=typeof Symbol===\"function\"&amp;&amp;typeof Symbol.iterator===\"symbol\"?function(e){return typeof e}:function(e){return e&amp;&amp;typeof Symbol===\"function\"&amp;&amp;e.constructor===Symbol&amp;&amp;e!==Symbol.prototype?\"symbol\":typeof e};/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/widget/MapConfigWidget\ntype: application/javascript\nmodule-type: widget\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _vis=require(\"$:/plugins/felixhayashi/vis/vis.js\");var _vis2=_interopRequireDefault(_vis);var _widget=require(\"$:/core/modules/widgets/widget.js\");function _interopRequireDefault(e){return e&amp;&amp;e.__esModule?e:{default:e}}function MapConfigWidget(e,t){_widget.widget.call(this);this.initialise(e,t);this.computeAttributes()}MapConfigWidget.prototype=Object.create(_widget.widget.prototype);MapConfigWidget.prototype.render=function(e,t){this.parentDomNode=e;if(!this.domNode){this.domNode=this.document.createElement(\"div\");$tw.utils.addClass(this.domNode,\"tmap-config-widget\");e.insertBefore(this.domNode,t)}if(this.network){this.network.destroy()}this.networkContainer=document.createElement(\"div\");this.domNode.appendChild(this.networkContainer);this.refreshTrigger=this.getAttribute(\"refresh-trigger\");this.pipeTRef=this.getVariable(\"currentTiddler\");this.inheritedFields=$tw.utils.parseStringArray(this.getAttribute(\"inherited\"));this.extensionTField=this.getAttribute(\"extension\");this.mode=this.getAttribute(\"mode\");for(var i=0;i&lt;this.inheritedFields.length;i++){var s=this.inheritedFields[i];var n=_utils2.default.parseFieldData(this.pipeTRef,s,{});if(this.mode===\"manage-edge-types\"){if(!n.edges){n={edges:n}}}else if(this.mode===\"manage-node-types\"){if(!n.nodes){n={nodes:n}}}this.inherited=_utils2.default.merge(this.inherited,n)}this.extension=_utils2.default.parseFieldData(this.pipeTRef,this.extensionTField,{});if(this.mode===\"manage-edge-types\"){if(!this.extension.edges){this.extension={edges:this.extension}}}else if(this.mode===\"manage-node-types\"){if(!this.extension.nodes){this.extension={nodes:this.extension}}}var r=_utils2.default.isTrue(this.getAttribute(\"save-only-changes\"));this.changes=r?{}:this.extension;var o={nodes:[],edges:[]};var a=_utils2.default.merge({},this.inherited,this.extension);$tw.utils.extend(a,{configure:{enabled:true,showButton:false,filter:this.getOptionFilter(this.mode)}});this.network=new _vis2.default.Network(this.networkContainer,o,a);this.network.on(\"configChange\",this.handleConfigChange.bind(this));var l=this.parentDomNode.getBoundingClientRect().height;this.parentDomNode.style[\"height\"]=l+\"px\";var h=this.handleResetEvent.bind(this);this.networkContainer.addEventListener(\"reset\",h,false);$tm.registry.push(this);this.enhanceConfigurator()};MapConfigWidget.prototype.handleResetEvent=function(e){var t={};t[e.detail.trigger.path]=null;this.handleConfigChange(t)};MapConfigWidget.prototype.handleConfigChange=function(e){var t=_utils2.default.flatten(this.changes);var i=_utils2.default.flatten(e);var s=Object.keys(_utils2.default.flatten(e))[0];var n=i[s]===null;if(n){t[s]=undefined;this.changes=_utils2.default.unflatten(t)}else{this.changes=_utils2.default.merge(this.changes,e)}var r=_utils2.default.merge({},this.changes);if(this.mode===\"manage-node-types\"){r=r[\"nodes\"]}if(this.mode===\"manage-edge-types\"){r=r[\"edges\"]}_utils2.default.writeFieldData(this.pipeTRef,this.extensionTField,r,$tm.config.sys.jsonIndentation);var o=\"vis-configuration-wrapper\";var a=this.networkContainer.getElementsByClassName(o)[0];a.style.height=a.getBoundingClientRect().height+\"px\";if(n){window.setTimeout(this.refresh.bind(this),0)}else{window.setTimeout(this.enhanceConfigurator.bind(this),50)}};MapConfigWidget.prototype.enhanceConfigurator=function(){var e=\"vis-configuration-wrapper\";var t=this.networkContainer.getElementsByClassName(e)[0].children;var i=[];var s=_utils2.d
"type": "application/javascript",
"module-type": "widget"
},
"$:/plugins/felixhayashi/tiddlymap/js/widget/EdgeListWidgetItem": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/widget/EdgeListWidgetItem",
"text": "\"use strict\";var _createClass=function(){function e(e,t){for(var r=0;r&lt;t.length;r++){var i=t[r];i.enumerable=i.enumerable||false;i.configurable=true;if(\"value\"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(t,r,i){if(r)e(t.prototype,r);if(i)e(t,i);return t}}();var _widget=require(\"$:/core/modules/widgets/widget.js\");var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);function _interopRequireDefault(e){return e&amp;&amp;e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&amp;&amp;(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&amp;&amp;t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/widget/EdgeListWidgetItem\ntype: application/javascript\nmodule-type: widget\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var EdgeListItemWidget=function(e){_inherits(t,e);function t(e,r){_classCallCheck(this,t);var i=_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,r));i.arrows=$tm.misc.arrows;return i}_createClass(t,[{key:\"execute\",value:function e(){var t=this.parseTreeNode;var r=$tm.tracker.getTiddlerById(t.neighbour.id);var i=_utils2.default.flatten(t.edge);for(var o in i){if(typeof i[o]===\"string\"){this.setVariable(\"edge.\"+o,i[o])}}this.setVariable(\"currentTiddler\",r);this.setVariable(\"neighbour\",r);var n=$tm.indeces.allETy[i.type];var s=i.to===t.neighbour.id?\"to\":\"from\";var a=s;if(n.biArrow){a=\"bi\"}else{if(s===\"to\"&amp;&amp;n.invertedArrow){a=\"from\"}else if(s===\"from\"&amp;&amp;n.invertedArrow){a=\"to\"}}this.setVariable(\"direction\",a);this.setVariable(\"directionSymbol\",a===\"bi\"?this.arrows.bi:a===\"from\"?this.arrows.in:this.arrows.out);this.makeChildWidgets()}},{key:\"refresh\",value:function e(t){return this.refreshChildren(t)}}]);return t}(_widget.widget);exports[\"tmap-edgelistitem\"]=EdgeListItemWidget;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/widget/EdgeListItemWidget.js.map\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/plugins/felixhayashi/tiddlymap/js/widget/EdgeListWidget": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/widget/EdgeListWidget",
"text": "\"use strict\";var _createClass=function(){function e(e,t){for(var r=0;r&lt;t.length;r++){var i=t[r];i.enumerable=i.enumerable||false;i.configurable=true;if(\"value\"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(t,r,i){if(r)e(t.prototype,r);if(i)e(t,i);return t}}();var _widget=require(\"$:/core/modules/widgets/widget.js\");var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);function _interopRequireDefault(e){return e&amp;&amp;e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&amp;&amp;(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&amp;&amp;t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/widget/EdgeListWidget\ntype: application/javascript\nmodule-type: widget\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var EdgeListWidget=function(e){_inherits(t,e);function t(e,r){_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,r))}_createClass(t,[{key:\"render\",value:function e(t,r){this.parentDomNode=t;this.computeAttributes();this.execute();this.renderChildren(t,r)}},{key:\"execute\",value:function e(){var t=[this.getVariable(\"currentTiddler\")];var r=this.getAttribute(\"filter\",\"\");var i=this.getAttribute(\"direction\",\"both\");var s=$tm.indeces.allETy;var n=_utils2.default.getEdgeTypeMatches(r,s);var u={typeWL:_utils2.default.getLookupTable(n),direction:i};var o=$tm.adapter.getNeighbours(t,u),a=o.nodes,l=o.edges;var f=[];for(var c in l){var h=l[c];var p=a[h.to]||a[h.from];if(!p){continue}f.push({type:\"tmap-edgelistitem\",edge:h,typeWL:u.typeWL,neighbour:p,children:this.parseTreeNode.children})}if(!f.length){this.wasEmpty=true;f=this.getEmptyMessage()}else if(this.wasEmpty){this.removeChildDomNodes()}this.makeChildWidgets(f)}},{key:\"getEmptyMessage\",value:function e(){var t=this.wiki.parseText(\"text/vnd.tiddlywiki\",this.getAttribute(\"emptyMessage\",\"\"),{parseAsInline:true});return t?t.tree:[]}},{key:\"refresh\",value:function e(t){var r=this.computeAttributes();if(_utils2.default.hasElements(r)){this.refreshSelf();return true}for(var i in t){if(!_utils2.default.isSystemOrDraft(i)){this.refreshSelf();return true}}return this.refreshChildren(t)}}]);return t}(_widget.widget);exports[\"tmap-connections\"]=EdgeListWidget;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/widget/EdgeListWidget.js.map\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/plugins/felixhayashi/tiddlymap/js/widget/MapWidget": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/widget/MapWidget",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.tiddlymap=exports.tmap=undefined;var _extends=Object.assign||function(e){for(var t=1;t&lt;arguments.length;t++){var i=arguments[t];for(var a in i){if(Object.prototype.hasOwnProperty.call(i,a)){e[a]=i[a]}}}return e};var _createClass=function(){function e(e,t){for(var i=0;i&lt;t.length;i++){var a=t[i];a.enumerable=a.enumerable||false;a.configurable=true;if(\"value\"in a)a.writable=true;Object.defineProperty(e,a.key,a)}}return function(t,i,a){if(i)e(t.prototype,i);if(a)e(t,a);return t}}();var _CallbackManager=require(\"$:/plugins/felixhayashi/tiddlymap/js/CallbackManager\");var _CallbackManager2=_interopRequireDefault(_CallbackManager);var _ViewAbstraction=require(\"$:/plugins/felixhayashi/tiddlymap/js/ViewAbstraction\");var _ViewAbstraction2=_interopRequireDefault(_ViewAbstraction);var _EdgeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/EdgeType\");var _EdgeType2=_interopRequireDefault(_EdgeType);var _Popup=require(\"$:/plugins/felixhayashi/tiddlymap/js/Popup\");var _Popup2=_interopRequireDefault(_Popup);var _vis=require(\"$:/plugins/felixhayashi/vis/vis.js\");var _vis2=_interopRequireDefault(_vis);var _widget=require(\"$:/core/modules/widgets/widget.js\");var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _SelectionRectangle=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/SelectionRectangle\");var _SelectionRectangle2=_interopRequireDefault(_SelectionRectangle);var _environment=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/environment\");var env=_interopRequireWildcard(_environment);function _interopRequireWildcard(e){if(e&amp;&amp;e.__esModule){return e}else{var t={};if(e!=null){for(var i in e){if(Object.prototype.hasOwnProperty.call(e,i))t[i]=e[i]}}t.default=e;return t}}function _interopRequireDefault(e){return e&amp;&amp;e.__esModule?e:{default:e}}function _defineProperty(e,t,i){if(t in e){Object.defineProperty(e,t,{value:i,enumerable:true,configurable:true,writable:true})}else{e[t]=i}return e}function _toConsumableArray(e){if(Array.isArray(e)){for(var t=0,i=Array(e.length);t&lt;e.length;t++){i[t]=e[t]}return i}else{return Array.from(e)}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&amp;&amp;(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&amp;&amp;t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&amp;&amp;t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/widget/MapWidget\ntype: application/javascript\nmodule-type: widget\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var MapWidget=function(e){_inherits(t,e);function t(e,i){_classCallCheck(this,t);var a=_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,i));a.getAttr=a.getAttribute;a.isDebug=_utils2.default.isTrue($tm.config.sys.debug,false);_utils2.default.bindTo(a,[\"constructTooltip\",\"handleResizeEvent\",\"handleClickEvent\",\"handleCanvasKeyup\",\"handleCanvasKeydown\",\"handleCanvasScroll\",\"handleCanvasMouseMove\",\"handleWidgetKeyup\",\"handleWidgetKeydown\",\"handleTriggeredRefresh\",\"handleContextMenu\"]);a.callbackManager=new _CallbackManager2.default;a.computeAttributes();a.editorMode=a.getAttr(\"editor\");a.clickToUse=_utils2.default.isTrue(a.getAttr(\"click-to-use\"),false);a.id=a.getAttr(\"object-id\")||a.getStateQualifier();a.widgetPopupsPath=$tm.path.tempPopups+\"/\"+a.id;if(a.editorMode){_utils2.default.addTWlisteners({\"tmap:tm-create-view\":a.handleCreateView,\"tmap:tm-rename-view\":a.handleRenameView,\"tmap:tm-delete-vie
"type": "application/javascript",
"module-type": "widget"
},
"$:/plugins/felixhayashi/tiddlymap/license": {
"title": "$:/plugins/felixhayashi/tiddlymap/license",
"subtitle": "License",
"caption": "License",
"text": "\\rules except wikilink\n\n!! TiddlyMap\n\nCopyright (c) 2014, Felix Küppers\nAll rights reserved.\n\nTiddlyMap is licensed under the [[BSD 2-Clause License|http://opensource.org/licenses/BSD-2-Clause]]. For the exact license terms, please visit [[https://github.com/felixhayashi/TW5-TiddlyMap/blob/master/LICENSE]]. \n\n!! TiddlyWiki\n\nCreated by Jeremy Ruston, (jeremy [at] jermolene [dot] com)\n\nCopyright © Jeremy Ruston 2004-2007 Copyright © UnaMesa Association 2007-2014\n\nPublished under the following [licenses](https://github.com/Jermolene/TiddlyWiki5/tree/master/licenses):\n\n# BSD 3-clause \"New\" or \"Revised\" License (including any right to adopt any future version of a license if permitted)\n# Creative Commons Attribution 3.0 (including any right to adopt any future version of a license if permitted)\n\n!! Vis.js\n\nCopyright (c) 2014 [Almende B.V.](https://github.com/almende/vis)\n\nPublished under the following licenses:\n\n# Apache License Version 2.0, January 2004 http://www.apache.org/licenses/\n# MIT License (MIT)\n"
},
"$:/plugins/felixhayashi/tiddlymap/readme": {
"title": "$:/plugins/felixhayashi/tiddlymap/readme",
"text": "* Please refer to the project-readme hosted at [[https://github.com/felixhayashi/TW5-TiddlyMap]].\n* A demo with several examples and explanations can be found at [[http://tiddlymap.org]]."
},
"$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tmap:unknown": {
"title": "$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tmap:unknown",
"description": "Automatically assigned to an edge that does not have a type assigned",
"style": "{\"color\":\"gray\"}",
"show-label": "false"
},
"$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tw-body:link": {
"title": "$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tw-body:link",
"description": "A link that is contained in the tiddler's body pointing to another resource.",
"style": "{\"color\":\"orange\", \"dashes\":true}",
"label": "links to",
"text": ""
},
"$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tw-list:list": {
"title": "$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tw-list:list",
"description": "Contained in a list of this tiddler",
"style": "{ \"color\": \"red\", \"dashes\":true}",
"label": "listed in",
"text": ""
},
"$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tw-list:tags": {
"title": "$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tw-list:tags",
"description": "A tag that refers to a tiddler of the same name.",
"style": "{ \"color\": \"darkslategray\", \"dashes\":true}",
"label": "tagged with"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/default": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/default",
"caption": "Overview",
"text": "\\rules except wikilink\n\n&lt;div class=\"tmap-flash-message tmap-plain\"&gt;\n Please visit the [[online docs|http://tiddlymap.org/Documentation]]\n for more information about the available global options.\n&lt;/div&gt;\n&lt;table class=\"tmap-key-value-table\"&gt;\n &lt;tr&gt;\n &lt;th align=\"left\"&gt;Plugin version&lt;/th&gt;\n &lt;td&gt;&lt;&lt;pluginVersion&gt;&gt;&lt;/td&gt;\n &lt;/tr&gt;\n&lt;!--\n &lt;tr&gt;\n &lt;th align=\"left\"&gt;Datastructure version&lt;/th&gt;\n &lt;td&gt;&lt;&lt;dataStructureVersion&gt;&gt;&lt;/td&gt;\n &lt;/tr&gt;\n--&gt;\n &lt;tr&gt;\n &lt;th align=\"left\"&gt;Nodes in system&lt;/th&gt;\n &lt;td&gt;&lt;&lt;numberOfNodes&gt;&gt;&lt;/td&gt;\n &lt;/tr&gt;\n &lt;tr&gt;\n &lt;th align=\"left\"&gt;Edges in system&lt;/th&gt;\n &lt;td&gt;&lt;&lt;numberOfEdges&gt;&gt;&lt;/td&gt;\n &lt;/tr&gt;\n&lt;/table&gt;"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/editor": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/editor",
"caption": "Editor",
"text": "\\rules except wikilink\n\n&lt;table class=\"tmap-config-table\"&gt;\n &lt;&lt;tmap-row type:\"input-checkbox\"\n title:\"Show Neighbour&amp;shy;hood menu\"\n field:\"config.sys.editorMenuBar.showNeighScopeButton\"\n descr:\"Show or hide the neighbourhood menu button.\"&gt;&gt;\n &lt;&lt;tmap-row type:\"input-checkbox\"\n title:\"Show Screen&amp;shy;shot menu\"\n field:\"config.sys.editorMenuBar.showScreenshotButton\"\n descr:\"Show or hide the screenshot menu button.\"&gt;&gt;\n &lt;&lt;tmap-row type:\"input-checkbox\"\n title:\"Show Raster&amp;shy; menu\"\n field:\"config.sys.editorMenuBar.showRasterMenuButton\"\n descr:\"Show or hide the raster menu button.\"&gt;&gt;\n&lt;/table&gt;\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/fields": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/fields",
"caption": "Field settings",
"text": "\\rules except wikilink\n\n&lt;table class=\"tmap-config-table\"&gt;\n &lt;&lt;tmap-row type:\"input-text\"\n title:\"Node-icon field\"\n field:\"config.sys.field.nodeIcon\" \n descr:\"Local image used as node image in the graphs.\"&gt;&gt;\n &lt;&lt;tmap-row type:\"input-text\"\n title:\"Node-label field\"\n field:\"config.sys.field.nodeLabel\" \n descr:\"Alternative node label to use instead of the title.\"&gt;&gt;\n &lt;&lt;tmap-row type:\"input-text\"\n title:\"Node-info field\"\n field:\"config.sys.field.nodeInfo\" \n descr:\"Field used as tooltip when hovering over a node in a graph.\"\n note:\"It is prohibited to use the text field here.\"&gt;&gt;\n&lt;/table&gt; \n\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/interaction": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/interaction",
"caption": "Interaction &amp; behaviour",
"text": "\\rules except wikilink\n\n&lt;table class=\"tmap-config-table\"&gt;\n &lt;$macrocall type=\"input-select\"\n $name=\"tmap-row\"\n title=\"Default startup view\"\n field=\"config.sys.defaultView\"\n nochoice=\"Last view used at startup\"\n selectFilter=&lt;&lt;tmap \"option\" \"selector.allViewsByLabel\"&gt;&gt;\n descr=\"The view to display at startup\" /&gt;\n &lt;&lt;tmap-row type:\"input-checkbox\"\n title:\"Show popups\"\n field:\"config.sys.popups.enabled\"\n descr:\"Set this to true if you want to see automatic\n popups in the map.\"&gt;&gt;\n &lt;$list filter=\"[config.sys.popups.enabled[true]]\"&gt;\n &lt;&lt;tmap-row type:\"input-text\"\n title:\"Popup delay\"\n field:\"config.sys.popups.delay\"\n descr:\"The time in miliseconds that needs to pass after\n a tooltip is triggered.\"&gt;&gt;\n &lt;&lt;tmap-row type:\"input-text\"\n title:\"Popup width\"\n field:\"config.sys.popups.width\"\n descr:\"The default max-width of the popup.\"\n note:\"Make sure you added the desired unit (e.g. `px`).\n Requires a wiki refresh.\"&gt;&gt;\n &lt;&lt;tmap-row type:\"input-text\"\n title:\"Popup height\"\n field:\"config.sys.popups.height\"\n descr:\"The default max-height of the popup.\"\n note:\"Make sure you added desired the unit (e.g. `px`).\n Requires a wiki refresh.\"&gt;&gt;\n &lt;/$list&gt;\n &lt;&lt;tmap-row type:\"input-checkbox\"\n title:\"Allow single click mode\"\n field:\"config.sys.singleClickMode\"\n descr:\"A single click on a node is sufficient to open the\n corresponding tiddler.\"\n note:\"Drag and drop will still work and does not cause a\n tiddler to be opened. Single click is never active in\n the map editor.\"&gt;&gt;\n &lt;&lt;tmap-row type:\"input-select\"\n title:\"Edge click behaviour\"\n field:\"config.sys.edgeClickBehaviour\"\n selectFilter:\"[[nothing|Nothing]]\n [[manager|Open edge-type manager]]\"\n descr:\"What should happen when you click on an edge?\"&gt;&gt;\n &lt;&lt;tmap-row type:\"input-select\" title:\"Raster size\" field:\"config.sys.raster\"\n selectFilter:\"[[|disabled]] [[5|5px]] [[10|10px]] [[15|15px]] [[20|20px]] [[30|30px]] [[40|40px]]\"\n descr:\"Snap nodes to an invisible raster of the given size after drag'n'drop.\"\n note:\"Only works when the view is not in floating mode\"&gt;&gt;\n &lt;&lt;tmap-row type:\"input-checkbox\"\n title:\"Apply node-filter to neighbours\"\n field:\"config.sys.nodeFilterNeighbours\"\n descr:\"If checked, neighbours displayed in the map will be filtered\n by the view's node-filter. Otherwise the node-filter will only be used\n to filter the original set of nodes in the map\"&gt;&gt;\n&lt;/table&gt;\n\n!! Suppressed dialogs\n\n&lt;div class=\"tmap-flash-message tmap-plain\"&gt;\n Dialogs that you decided to suppress in the past are listed here.\n Remove the checkmark to enable dialogs again.\n&lt;/div&gt;\n\n&lt;table class=\"tmap-config-table\"&gt;\n &lt;$list\n filter=\"[&lt;output&gt;fields[]prefix[config.sys.suppressedDialogs]]\"\n emptyMessage=\"\"&gt;\n &lt;$set name=\"dialogName\" value=&lt;&lt;tmap basename \".\"&gt;&gt;&gt;\n &lt;$macrocall $name=\"tmap-row\"\n type=\"input-checkbox\"\n title=\"Suppress '$(dialogName)$' dialog\"\n field=&lt;&lt;currentTiddler&gt;&gt; /&gt;\n &lt;/$set&gt;\n &lt;br /&gt;\n &lt;/$list&gt;\n&lt;/table&gt;\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/liveTab": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/liveTab",
"caption": "Live tab",
"text": "\\rules except wikilink\n\n&lt;table class=\"tmap-config-table\"&gt;\n &lt;&lt;tmap-row type:\"input-checkbox\"\n title:\"Show Live tab\"\n field:\"liveTab\" \n descr:\"Show or hide the live tab in the sidebar.\"&gt;&gt;\n &lt;$macrocall type=\"input-select\"\n $name=\"tmap-row\"\n title=\"Fallback view\"\n field=\"config.sys.liveTab.fallbackView\" \n selectFilter=&lt;&lt;tmap \"option\" \"selector.allViewsByLabel\"&gt;&gt;\n descr=\"The view to display in the sidebar's live tab in\n case the current tiddler did not specify a view\n to open.\" /&gt;\n&lt;/table&gt;"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig",
"subtitle": "{{$:/core/images/options-button}} Global configuration of TiddlyMap",
"classes": "tmap-remove-top-space",
"text": "\\rules except wikilink\n\n&lt;$macrocall $name=\"tabs\"\n default=&lt;&lt;concat \"$(template)$/default\"&gt;&gt;\n tabsList=\"[all[shadows]prefix&lt;template&gt;] -[&lt;template&gt;]\"\n/&gt;"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/verbosity": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/verbosity",
"caption": "Verbosity",
"text": "\\rules except wikilink\n\n&lt;div class=\"tmap-flash-message tmap-plain\"&gt;\n Here you can restrict the system's talkativeness.\n&lt;/div&gt;\n\n&lt;table class=\"tmap-config-table\"&gt;\n &lt;&lt;tmap-row type:\"input-checkbox\"\n title:\"Debug output\"\n field:\"config.sys.debug\" \n descr:\"Set this to true if you want debug information to be\n displayed in the browser console.\"&gt;&gt;\n &lt;&lt;tmap-row type:\"input-checkbox\"\n title:\"Show notifications\"\n field:\"config.sys.notifications\" \n descr:\"Set this to true if you want to receive fade-out\n notifications for important events.\"&gt;&gt;\n&lt;/table&gt; "
},
"$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/vis": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/vis",
"classes": "tmap-remove-top-space",
"caption": "Graph",
"text": "\\rules except wikilink\n\n&lt;div class=\"tmap-flash-message tmap-info\"&gt;\n The global vis configurations will affect all views and their\n elements (nodes and edges) unless they are overridden on a lower\n level. All options below are documented at\n [[vis.js.org|http://visjs.org/docs/network]].\n&lt;/div&gt;\n&lt;div class=\"tmap-flash-message tmap-info\"&gt;\n Only config items that you actually changed have an effect on\n the graph. Other options are visible, yet, inactive.\n&lt;/div&gt;\n&lt;$tmap-config\n mode=\"manage-config\"\n inherited=\"vis-inherited\"\n extension=\"config.vis\" /&gt;"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/configureView/default": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/configureView/default",
"caption": "Overview",
"text": "\\rules except wikilink\n\n&lt;div class=\"tmap-flash-message tmap-info\"&gt;\n All configurations __only__ affect this view.\n&lt;/div&gt;\n\n&lt;table class=\"tmap-key-value-table\"&gt;\n &lt;tr&gt;\n &lt;th align=\"left\"&gt;Created on&lt;/th&gt;\n &lt;td&gt;&lt;&lt;createdOn&gt;&gt;&lt;/td&gt;\n &lt;/tr&gt;\n &lt;tr&gt;\n &lt;th align=\"left\"&gt;Nodes contained in graph&lt;/th&gt;\n &lt;td&gt;&lt;&lt;numberOfNodes&gt;&gt;&lt;/td&gt;\n &lt;/tr&gt;\n &lt;tr&gt;\n &lt;th align=\"left\"&gt;Edges contained in graph&lt;/th&gt;\n &lt;td&gt;&lt;&lt;numberOfEdges&gt;&gt;&lt;/td&gt;\n &lt;/tr&gt;\n&lt;/table&gt;"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/configureView/editFilters": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/configureView/editFilters",
"caption": "Edit filters",
"text": "\\rules except wikilink\n\n&lt;div class=\"tmap-flash-message tmap-info\"&gt;\n Completely new to filters? Please read\n [[Introduction to filter notation|http://tiddlywiki.com/#Introduction%20to%20filter%20notation]]\n first.\n&lt;/div&gt;\n\n&lt;fieldset&gt;\n &lt;legend&gt;Filters &lt;sup&gt;[1]&lt;/sup&gt;&lt;/legend&gt;\n &lt;table class=\"tmap-config-table tmap-large-input\"&gt;\n &lt;&lt;tmap-row type:\"input-textarea\"\n title:\"Node filter\"\n field:\"filter.prettyNodeFltr\"\n descr:\"In the map, only those tiddlers that match this filter\n are shown. Drafts and system tiddlers are automatically\n excluded.\"&gt;&gt;\n &lt;&lt;tmap-row type:\"input-textarea\"\n title:\"Edge-type filter\"\n field:\"filter.prettyEdgeFltr\" \n descr:\"Only edges with a type that matches the filter are shown.\"&gt;&gt;\n &lt;/table&gt; \n&lt;/fieldset&gt;\n\n---\n\n&lt;sup&gt;[1]&lt;/sup&gt; In the editors above, a new line is equivalent to a space symbol.&lt;br /&gt;\n&lt;sup&gt;[2]&lt;/sup&gt; It is suggested to read\n[[Node and edge-type filters|http://tiddlymap.org#Node%20and%20edge-type%20filters]]\nand [[Edge-type namespaces|http://tiddlymap.org#Node%20and%20edge-type%20filters]]\nbefore using Tiddlymap's filter editor."
},
"$:/plugins/felixhayashi/tiddlymap/dialog/configureView/layout": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/configureView/layout",
"caption": "Layout",
"text": "\\rules except wikilink\n\n&lt;table class=\"tmap-config-table\"&gt;\n &lt;&lt;tmap-row type:\"input-checkbox\"\n title:\"Floating nodes\"\n field:\"config.physics_mode\" \n descr:\"Set this to true if you want your nodes to freely\n swirl around.\"&gt;&gt;\n &lt;&lt;tmap-row type:\"input-text\"\n title:\"Background image\"\n field:\"config.background_image\" \n descr:\"The title of an image tiddler to be used as background\n in the view.\"\n note:\"You can also use an image url directly, however, the\n image needs be stored under the same domain as your wiki.\n Otherwise, it won't be displayed!\"&gt;&gt;\n&lt;/table&gt;"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/configureView/namespace": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/configureView/namespace",
"caption": "Namespace",
"text": "\\rules except wikilink\n\n&lt;table class=\"tmap-config-table tmap-small-input\"&gt;\n &lt;&lt;tmap-row type:\"input-text\"\n title:\"Edge-type namespace\"\n field:\"config.edge_type_namespace\" \n descr:\"A namespace (like `foaf` in `foaf:knows`) that will be\n automatically added to all edge types you create in\n this view. The namespace is only added if the types\n do not exist yet and do not have a namespace assigned yet.\n Namespaces are always hidden in the graph.\"\n note:\"Most likely, you don't want the edges created with this\n namespace to leak into other views, moreover, you don't\n want edges that do not possess the namespace ever to be\n shown here. In this case, use a private marker (`_`)\n in front of your namespace, e.g. `_mynamespace` and use\n an appropriate edge type filter, i.e. `+[prefix[_mynamespace]]`\n For further information see:\n \n * [[Edge-type namespaces|http://tiddlymap.org/#Edge-type%20namespaces]]\n * [[Private edge types|http://tiddlymap.org/#Private%20edge%20types]]\n \"&gt;&gt;\n&lt;/table&gt;\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/configureView": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/configureView",
"subtitle": "{{$:/core/images/options-button}} View configuration -- &lt;&lt;view&gt;&gt;",
"text": "\\rules except wikilink\n\n\\define privateEdgeTypes() [[private edge-types|http://tiddlymap.org/#Private%20edge%20types]]\n\n&lt;$macrocall $name=\"tabs\"\n default=&lt;&lt;concat \"$(template)$/default\"&gt;&gt;\n tabsList=\"[all[shadows]prefix&lt;template&gt;] -[&lt;template&gt;]\"\n/&gt;"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/configureView/vis": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/configureView/vis",
"caption": "Graph",
"text": "\\rules except wikilink\n\n&lt;div class=\"tmap-flash-message tmap-info\"&gt;\n The local vis configurations will affect all\n elements (nodes and edges) of this view, unless they are\n overridden on a lower level. All options below are documented at\n [[vis.js.org|http://visjs.org/docs/network]].\n&lt;/div&gt;\n&lt;div class=\"tmap-flash-message tmap-info\"&gt;\n Only config items that you actually changed have an effect on the\n graph. Other options are visible, yet, inactive.\n&lt;/div&gt;\n&lt;$tmap-config\n mode=\"manage-config\"\n inherited=\"vis-inherited\"\n extension=\"config.vis\" /&gt;"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/getEdgeType": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/getEdgeType",
"subtitle": "{{$:/plugins/felixhayashi/tiddlymap/icon}} Edge type specification",
"text": "\\rules except wikilink\n\\rules except underscore\n\n\\define filter() $(allEdgeTypes)$ +[search:title[$(term)$]]\n\n\\define badge(color, label, tooltip)\n&lt;span style=\"background: $color$\" title=\"$tooltip$\"&gt;$label$&lt;/span&gt;\n\\end\n\n\\define badges()\n&lt;$tiddler tiddler={{!!text}}&gt;\n&lt;$set name=\"id\" value=&lt;&lt;tmap \"getETyId\" \"$(view)$\"&gt;&gt;&gt;\n&lt;$set name=\"isVisible\" value=&lt;&lt;tmap \"isETyVisible\" \"$(view)$\"&gt;&gt;&gt;\n&lt;div class=\"tmap-badges\"&gt;\n &lt;span\n style=\"background: darkslategray\"\n title=\"Your input translates into this id.\"&gt;\n &lt;&lt;id&gt;&gt;\n &lt;/span&gt;\n &lt;$list filter=\"[&lt;isVisible&gt;regexp[true]]\"&gt;\n &lt;&lt;badge \"green\" \"visible\" \"Matches your view's filter\"&gt;&gt;\n &lt;/$list&gt;\n &lt;$list filter=\"[&lt;isVisible&gt;regexp[false]]\"&gt;\n &lt;&lt;badge \"red\" \"not visible\" \"Doesn't match your view's filter\"&gt;&gt;\n &lt;/$list&gt;\n &lt;$list filter=\"[&lt;id&gt;!regexp[^tmap:unknown$]]\" variable=\"item\"&gt;\n &lt;$list filter=\"[&lt;id&gt;regexp[^_]]\"&gt;\n &lt;&lt;badge \"purple\" \"private\" \"Not shown in other views per default\"&gt;&gt;\n &lt;/$list&gt;\n &lt;$list filter=\"[&lt;id&gt;regexp[.+:.+]]\"&gt;\n &lt;&lt;badge \"orange\" \"namespace\" \"This type is prefixed with a proper namespace\"&gt;&gt;\n &lt;/$list&gt;\n &lt;/$list&gt;\n&lt;/div&gt;\n&lt;/$set&gt;\n&lt;/$set&gt;\n&lt;/$tiddler&gt;\n\\end\n\n\\define search()\n&lt;p&gt;\n You are about to connect \"&lt;$text text=\"$(fromLabel)$\" /&gt;\"\n with \"&lt;$text text=\"$(toLabel)$\" /&gt;\". Please specify a type.\n&lt;/p&gt;\n&lt;table id=\"tmap-search-table\"&gt;\n &lt;tr&gt;\n &lt;td&gt;&lt;b&gt;Type:&lt;/b&gt;&lt;/td&gt;\n &lt;td&gt;\n &lt;$edit-text\n focus=\"true\"\n field=\"text\"\n type=\"text\"\n tag=\"input\"\n default=\"\"\n class=\"tmap-trigger-field\n tmap-triggers-ok-button-on-enter\n tmap-triggers-cancel-button-on-esc\" /&gt;\n &lt;&lt;badges&gt;&gt;\n &lt;/td&gt;\n &lt;/tr&gt;\n &lt;tr&gt;\n &lt;td&gt;&lt;/td&gt;\n &lt;td&gt;\n &lt;$set name=\"term\" value={{!!text}}&gt;\n &lt;$set name=\"allEdgeTypes\" value=&lt;&lt;tmap \"option\" \"selector.allEdgeTypesById\"&gt;&gt;&gt;\n &lt;ul class=\"tmap-small-list\"&gt;\n &lt;$list filter=&lt;&lt;filter&gt;&gt;&gt;\n &lt;li&gt;\n &lt;$button class=\"tc-btn-invisible tmap-link\"&gt;\n &lt;$view field=\"title\" /&gt;\n &lt;$action-setfield $tiddler=&lt;&lt;output&gt;&gt; text={{!!title}} /&gt;\n &lt;/$button&gt;\n &lt;/li&gt;\n &lt;/$list&gt;\n &lt;/ul&gt;\n &lt;/$set&gt;\n &lt;/$set&gt;\n &lt;/td&gt;\n &lt;/tr&gt;\n&lt;/table&gt;\n\\end\n\n&lt;$list filter=\"[&lt;temp&gt;!has[more]]\" variable=\"item\"&gt;&lt;&lt;search&gt;&gt;&lt;/$list&gt;\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/addNodeToMap": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/addNodeToMap",
"subtitle": "{{$:/core/images/tag-button}} Add node",
"classes": "tmap-modal-add-node",
"text": "\\rules except wikilink\n\n\\define backButtonText() back to list\n\\define outputAndTemplate() [[$(output)$]] [[$(template)$]]\n\n\\define editor()\n &lt;$button class=\"tmap-go-back tc-btn-invisible\"&gt;\n {{$:/core/images/chevron-left}} &lt;&lt;backButtonText&gt;&gt;\n &lt;$action-deletefield $tiddler=&lt;&lt;temp&gt;&gt; more template /&gt;\n &lt;$action-sendmessage\n $message=\"tmap:tm-clear-tiddler\"\n keep=\"draft.title\"\n title=&lt;&lt;output&gt;&gt; /&gt;\n &lt;/$button&gt;\n\n &lt;$list filter=\"[&lt;output&gt;get[draft.title]is[tiddler]]\"&gt;\n &lt;div class=\"tmap-flash-message tmap-warning\"&gt;\n Tiddler already exists! Use another title or click\n \"&lt;&lt;backButtonText&gt;&gt;\" to cancel your edit.\n &lt;/div&gt;\n &lt;/$list&gt;\n\n &lt;div class=\"tmap-modal-editor\"&gt;\n &lt;table class=\"tmap-config-table\"&gt;\n &lt;tr class=\"tmap-template-select\"&gt;\n &lt;td&gt;Template&lt;/td&gt;\n &lt;td&gt;\n &lt;$select\n tiddler=&lt;&lt;temp&gt;&gt;\n field=\"template\"&gt;\n &lt;option value=\"\"&gt;&lt;/option&gt;\n &lt;$list filter=&lt;&lt;tmap \"option\" \"selector.allPotentialNodes\"&gt;&gt;&gt;\n &lt;option&gt;&lt;$view field=\"title\" /&gt;&lt;/option&gt;\n &lt;/$list&gt;\n &lt;/$select&gt;\n &lt;$button&gt;Load\n &lt;$action-sendmessage\n $message=\"tmap:tm-clear-tiddler\"\n keep=\"draft.title\"\n title=&lt;&lt;output&gt;&gt; /&gt;\n &lt;$list filter=\"[&lt;temp&gt;get[template]]\" variable=\"template\"&gt;\n &lt;$action-sendmessage\n $message=\"tmap:tm-merge-tiddlers\"\n tiddlers=&lt;&lt;outputAndTemplate&gt;&gt;\n output=&lt;&lt;output&gt;&gt; /&gt;\n &lt;$action-deletefield $tiddler=&lt;&lt;output&gt;&gt; tmap.id tmap.edges /&gt;\n &lt;/$list&gt;\n &lt;/$button&gt;\n &lt;/td&gt;\n &lt;td&gt;Press the \"load\" button to activate the template.&lt;/td&gt;\n &lt;/tr&gt;\n &lt;/table&gt;\n &lt;$importvariables filter=\"[all[tiddlers+shadows]prefix[$:/core/macros/]]\"&gt;\n &lt;$set name=\"currentTiddler\" value=&lt;&lt;output&gt;&gt;&gt;\n &lt;$transclude tiddler=\"$:/core/ui/EditTemplate\" mode=\"block\" /&gt;\n &lt;/$set&gt;\n &lt;/$importvariables&gt;\n &lt;/div&gt;\n\\end\n\n\\define search()\n&lt;p&gt;Add an existing tiddler to the map or create a new one.&lt;/p&gt;\n&lt;table id=\"tmap-search-table\"&gt;\n &lt;tr&gt;\n &lt;td&gt;&lt;b&gt;Title:&lt;/b&gt;&lt;/td&gt;\n &lt;td&gt;\n &lt;$edit-text\n tiddler=&lt;&lt;output&gt;&gt;\n field=\"draft.title\"\n focus=\"true\"\n type=\"text\"\n tag=\"input\"\n default=\"\"\n class=\"tmap-trigger-field\n tmap-triggers-ok-button-on-enter\n tmap-triggers-cancel-button-on-esc\" /&gt;\n &lt;$list filter=\"[&lt;output&gt;get[draft.title]!is[tiddler]]\"&gt;\n &lt;$button\n tooltip=\"The tiddler does not exist yet and you may edit it\n before it is added to the map\"&gt;\n {{$:/core/images/edit-button}}\n &lt;$action-setfield $tiddler=&lt;&lt;temp&gt;&gt; more=\"true\" /&gt;\n &lt;/$button&gt; &lt;sup&gt;[1]&lt;/sup&gt;\n &lt;/$list&gt;\n &lt;/td&gt;\n &lt;/tr&gt;\n &lt;tr&gt;\n &lt;td&gt;&lt;/td&gt;\n &lt;td&gt;\n &lt;$set name=\"term\" value={{!!draft.title}}&gt;\n &lt;ul class=\"tmap-small-list\"&gt;\n &lt;$list filter=\"[search:title&lt;term&gt;!is[system]!has[draft.of]]\"&gt;\n &lt;li&gt;\n &lt;$button class=\"tc-btn-invisible tmap-link\"&gt;\n &lt;$view field=\"title\" /&gt;\n &lt;$action-setfield $tiddler=&lt;&lt;output&gt;&gt; draft.title={{!!title}} /&gt;\n &lt;/$button&gt;\n &lt;/li&gt;\n &lt;/$list&gt;\n &lt;/ul&gt;\
},
"$:/plugins/felixhayashi/tiddlymap/dialog/cannotDeleteViewDialog": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/cannotDeleteViewDialog",
"subtitle": "{{$:/core/images/locked-padlock}} You cannot delete this view!",
"buttons": "ok",
"text": "\\rules except wikilink\n\nIt is not possible to delete the current view as ''&lt;&lt;count&gt;&gt;'' tiddlers\nare referencing it. To delete the view you must first remove the tiddlymap\nwidgets in the tiddlers listed below or change their view attributes.\n\n''References''\n\n&lt;ul&gt;\n&lt;$list filter=&lt;&lt;refFilter&gt;&gt; variable=\"item\"&gt;\n &lt;li&gt;&lt;$link&gt;&lt;&lt;item&gt;&gt;&lt;/$link&gt;&lt;/li&gt;\n&lt;/$list&gt;\n&lt;/ul&gt;\n\nAfter the references are removed, you may delete the view.\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/getConfirmation": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/getConfirmation",
"subtitle": "{{$:/core/images/import-button}} You must confirm in order to proceed!",
"text": "\\rules except wikilink\n\n&lt;&lt;message&gt;&gt;\n\n''Are you really sure you want to do this?''"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/createView": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/createView",
"subtitle": "{{$:/core/images/new-button}} Creating a new view",
"text": "\\rules except wikilink\n\n&lt;table class=\"tmap-config-table\"&gt;\n &lt;&lt;tmap-row type:\"input-text\"\n title:\"View name\"\n field:\"name\"\n focus:\"true\"\n class:\"tmap-trigger-field\n tmap-triggers-ok-button-on-enter\n tmap-triggers-cancel-button-on-esc\"\n descr:\"The name for the new view. If no name is entered,\n the program will invent one for you.\"\n note:\"You cannot override an existing view. In this case,\n you need to delete the old view first! You must no use\n slashes (`/`) in the name.\"&gt;&gt;\n &lt;&lt;tmap-row type:\"input-checkbox\"\n title:\"Clone view\"\n field:\"clone\"\n descr:\"Use the view that is currently displayed in the\n editor as blueprint. The view will be an __exact__\n clone of the current one, only with a different\n name.\"&gt;&gt;\n&lt;/table&gt;\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/deleteNodeDialog": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/deleteNodeDialog",
"subtitle": "{{$:/core/images/delete-button}} You are about to delete &lt;&lt;count&gt;&gt; nodes",
"text": "\\rules except wikilink\n\n''Please choose an option or abort:''\n\n&lt;$radio tiddler=&lt;&lt;output&gt;&gt; field=\"delete-from\" value=\"system\"&gt;\n Delete nodes from system &lt;sup&gt;[1]&lt;/sup&gt;\n&lt;/$radio&gt;&lt;br /&gt;\n&lt;$radio tiddler=&lt;&lt;output&gt;&gt; field=\"delete-from\" value=\"filter\"&gt;\n Delete nodes from graph's filter &lt;sup&gt;[2]&lt;/sup&gt;\n&lt;/$radio&gt;\n\nThe following nodes will be deleted:\n\n&lt;ul&gt;\n&lt;$list filter=&lt;&lt;tiddlers&gt;&gt;&gt;\n &lt;li&gt;&lt;$view tiddler={{!!title}} field=\"title\" /&gt;&lt;/li&gt;\n&lt;/$list&gt;\n&lt;/ul&gt;\n\n---\n\n&lt;sup&gt;[1]&lt;/sup&gt;\n&lt;small&gt;This will delete all nodes, their corresponding tiddlers and all connected edges.&lt;/small&gt;&lt;br/&gt;\n&lt;sup&gt;[2]&lt;/sup&gt;\n&lt;small&gt;''Important:'' Removing a node from the graph's filter only works, if the node has been added in the map editor per double click or via \"Add Node\". If the node hasn't been added as mentioned above, you need to change the underlying tiddler in a way that it doesn't match your filter anymore, if you don't want it to be displayed in the graph.&lt;/small&gt;"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/dublicateIdInfo": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/dublicateIdInfo",
"subtitle": "{{$:/core/images/info-button}} Dublicate id detected",
"buttons": "ok_suppress",
"text": "\\rules except wikilink\n\nTiddlyMap requires the value of the id field (\"tmap.id\") to be\nunique in order to correctly identify nodes and tiddlers.\n\nThe id of the \"&lt;&lt;param.changedTiddler&gt;&gt;\" already exists for these tiddlers:\n\n&lt;ul&gt;\n&lt;$list filter=&lt;&lt;param.filter&gt;&gt; variable=\"item\"&gt;\n &lt;li&gt;&lt;$link&gt;&lt;&lt;item&gt;&gt;&lt;/$link&gt;&lt;/li&gt;\n&lt;/$list&gt;\n&lt;/ul&gt;\n\nTherefore TiddlyMap\n\n* assigned a new id to tiddler \"&lt;&lt;param.changedTiddler&gt;&gt;\"\n* removed all edges from \"&lt;&lt;param.changedTiddler&gt;&gt;\"\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/edgeNotVisible": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/edgeNotVisible",
"subtitle": "{{$:/core/images/info-button}} Edge will not be visible in view \"&lt;&lt;view&gt;&gt;\"",
"buttons": "ok_suppress",
"text": "\\rules except wikilink\n\nYou just created an edge of type\n&lt;code&gt;&lt;$text text=&lt;&lt;type&gt;&gt; /&gt;&lt;/code&gt; that will not be\nvisible in this view because it doesn't match your\nedge-type filter settings.\n\nThe current edge-type filter of view \"&lt;&lt;view&gt;&gt;\" looks like this:\n\n&lt;pre&gt;&lt;code&gt;&lt;$text text=&lt;&lt;eTyFilter&gt;&gt; /&gt;&lt;/code&gt;&lt;/pre&gt;\n\nTo have the newly added type displayed in your view, adjust your\nedge-type filter accordingly. \n\nSome suggestions:\n\n&lt;ul&gt;\n &lt;li&gt;\n Explicitly add the type to the filter:\n &lt;code&gt;&lt;$text text=\"[[\" /&gt;&lt;$text text=&lt;&lt;type&gt;&gt; /&gt;&lt;$text text=\"]]\" /&gt;&lt;/code&gt;\n &lt;/li&gt;\n &lt;li&gt;\n &lt;$set\n filter=\"[&lt;type&gt;regexp[:]splitbefore[:]]\"\n name=\"prefix\"\n emptyValue=&lt;&lt;tmap halfOfString \"$(type)$\"&gt;&gt;&gt;\n Add a filter rule (e.g. a prefix filter) that will match\n your type: &lt;code&gt;[prefix[&lt;&lt;prefix&gt;&gt;]]&lt;/code&gt;\n &lt;/$set&gt;\n &lt;/li&gt;\n &lt;li&gt;Make your current view-filter less restrictive.&lt;/li&gt;\n&lt;/ul&gt;\n\nFor further information, please see:\n[[Node and edge-type filters|http://tiddlymap.org#Node%20and%20edge-type%20filters]]."
},
"$:/plugins/felixhayashi/tiddlymap/dialog/editNode/default": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/editNode/default",
"caption": "Global node style",
"classes": "tmap-remove-top-space",
"text": "\\rules except wikilink\n\n&lt;div class=\"tmap-flash-message tmap-info\"&gt;\n A node's ''global configuration''\n (also referred to as //global individual config//) defines its\n individual appearance and behaviour in all views.\n&lt;/div&gt;\n&lt;&lt;maybeShowTidColorWarning&gt;&gt;\n \n&lt;$macrocall $name=\"sharedSettings\"\n twIconField=&lt;&lt;tidIconField&gt;&gt;\n faIconField=\"global.tmap.fa-icon\"\n labelField=&lt;&lt;tidLabelField&gt;&gt; /&gt;\n\n&lt;$macrocall $name=\"visConfiguration\"\n mode=\"manage-node-types\"\n extensionField=\"global.tmap.style\"\n styleName=\"node's global style\"\n inheritedList=\"[[inherited-global-default-style]]\n [[inherited-local-default-style]]\n [[inherited-group-styles]]\" /&gt;"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/editNode/local": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/editNode/local",
"caption": "Local node style",
"classes": "tmap-remove-top-space",
"text": "\\rules except wikilink\n \n&lt;div class=\"tmap-flash-message tmap-info\"&gt;\n The ''local node configuration'' \n (also referred to as //view-specific node configuration//)\n overrides the //global individual configuration// and only affects\n the node's appearance and behaviour in the current view.\n&lt;/div&gt;\n&lt;&lt;maybeShowTidColorWarning&gt;&gt;\n\n&lt;fieldset&gt;\n &lt;legend&gt;Behaviour&lt;/legend&gt;\n &lt;table class=\"tmap-config-table\"&gt;\n &lt;$macrocall type=\"input-select\"\n $name=\"tmap-row\"\n title=\"Open view\"\n field=\"local.open-view\"\n nochoice=\"Disabled\"\n selectFilter=&lt;&lt;tmap \"option\" \"selector.allViewsByLabel\"&gt;&gt;\n descr=\"Clicking on this node will open the specified\n view instead of the tiddler represented by this node.\" /&gt;\n &lt;/table&gt;\n&lt;/fieldset&gt;\n\n&lt;$macrocall $name=\"sharedSettings\"\n twIconField=\"local.tw-icon\"\n faIconField=\"local.fa-icon\"\n labelField=\"local.label\" /&gt;\n \n&lt;$macrocall $name=\"visConfiguration\"\n mode=\"manage-node-types\"\n extensionField=\"local-node-style\"\n styleName=\"node's local style\"\n inheritedList=\"[[inherited-global-default-style]]\n [[inherited-local-default-style]]\n [[inherited-group-styles]]\n [[global.tmap.style]]\" /&gt;"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/editNode": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/editNode",
"subtitle": "{{$:/core/images/edit-button}} Editing style of node \"&lt;&lt;tiddler&gt;&gt;\"",
"classes": "tmap-remove-top-space",
"text": "\\rules except wikilink\n\n\\define maybeShowTidColorWarning()\n &lt;$list filter=\"[&lt;tidColor&gt;regexp[.+]]\"&gt;\n &lt;div class=\"tmap-flash-message tmap-warning\"&gt;\n You have set the tiddler's color\n field to \"&lt;&lt;tidColor&gt;&gt;\". This value will be completely ignored\n when you change node's color properties in the vis editor below.\n &lt;/div&gt;\n &lt;/$list&gt;\n\\end\n\n\\define iconSettings(twIconField, faIconField)\n &lt;fieldset&gt;\n &lt;legend&gt;Icon Settings&lt;/legend&gt;\n &lt;table class=\"tmap-config-table\"&gt;\n &lt;&lt;tmap-row type:\"input-text\"\n title:\"TW-icon\"\n field:\"$twIconField$\"\n descr:\"A tiddlywiki image reference.\n For example '$:/core/icon' for Movotun Jack.\"&gt;&gt;\n &lt;&lt;tmap-row type:\"input-text\"\n title:\"FA-icon\"\n field:\"$faIconField$\"\n descr:\"A Font Awesome icon code.\n For example 'f206' for the bicycle symbol.\"&gt;&gt;\n &lt;/table&gt;\n &lt;/fieldset&gt;\n\\end\n\n\\define sharedSettings(twIconField, faIconField, labelField)\n &lt;fieldset&gt;\n &lt;legend&gt;General Settings&lt;/legend&gt;\n &lt;table class=\"tmap-config-table\"&gt;\n &lt;&lt;tmap-row type:\"input-text\"\n title:\"Label\"\n field:\"$labelField$\"\n descr:\"Use this value as node label.\"&gt;&gt;\n &lt;/table&gt;\n &lt;/fieldset&gt;\n &lt;!-- display icon fieldset --&gt;\n &lt;&lt;iconSettings \"$twIconField$\" \"$faIconField$\"&gt;&gt; \n\\end\n\n&lt;$macrocall\n $name=\"tabs\"\n default=&lt;&lt;concat \"$(template)$/default\"&gt;&gt;\n tabsList=\"[all[shadows]prefix&lt;template&gt;] -[&lt;template&gt;]\"\n/&gt;"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/draft": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/draft",
"caption": "Draft",
"text": "\\rules except wikilink\n\n&lt;div class=\"tmap-modal-editor\"&gt;\n &lt;$importvariables filter=\"[all[tiddlers+shadows]prefix[$:/core/macros/]]\"&gt;\n &lt;$set name=\"currentTiddler\" value=&lt;&lt;draftTRef&gt;&gt; &gt;\n &lt;$transclude tiddler=\"$:/core/ui/EditTemplate\" field=\"text\" mode=\"block\" /&gt;\n &lt;/$set&gt;\n &lt;/$importvariables&gt;\n&lt;/div&gt;"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/original": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/original",
"caption": "Current Version",
"text": "\\rules except wikilink\n\n&lt;div class=\"tmap-modal-editor\"&gt;\n &lt;$importvariables filter=\"[all[tiddlers+shadows]prefix[$:/core/macros/]]\"&gt;\n &lt;$set name=\"currentTiddler\" value=&lt;&lt;originalTRef&gt;&gt; &gt;\n &lt;$transclude tiddler=\"$:/core/ui/ViewTemplate\" field=\"text\" mode=\"block\" /&gt;\n &lt;/$set&gt;\n &lt;/$importvariables&gt;\n&lt;/div&gt;\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor",
"subtitle": "{{$:/core/images/edit-button}} &lt;&lt;originalTRef&gt;&gt;",
"classes": "tmap-modal-fullscreen-editor tmap-remove-top-space",
"text": "\\rules except wikilink\n\n\\define defaultTab() $:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/original\n\n&lt;$macrocall $name=\"tabs\"\n default=&lt;&lt;defaultTab&gt;&gt;\n tabsList=\"[all[shadows]prefix[$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/]]\" /&gt;"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/fieldChanged": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/fieldChanged",
"subtitle": "{{$:/core/images/info-button}} The field \"&lt;&lt;name&gt;&gt;\" changed",
"text": "\\rules except wikilink\n\nYou changed the field \"&lt;&lt;name&gt;&gt;\" from \"&lt;&lt;oldValue&gt;&gt;\" to \"&lt;&lt;newValue&gt;&gt;\".\n\nIt is recommended to let TiddlyMap copy all values from the former field \"&lt;&lt;oldValue&gt;&gt;\" to the new field \"&lt;&lt;newValue&gt;&gt;\" so the data stored in \"&lt;&lt;oldValue&gt;&gt;\" is not lost. This operation has to be done now or never.\n\nDo you want to move each tiddler's existing \"&lt;&lt;oldValue&gt;&gt;\" value to \"&lt;&lt;newValue&gt;&gt;\"? Please note that any value currently stored in \"&lt;&lt;newValue&gt;&gt;\" would consequently be overridden and the old field \"&lt;&lt;oldValue&gt;&gt;\" would be eventually removed!"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenNotSupported": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenNotSupported",
"subtitle": "{{$:/core/images/info-button}} Your machine does not support fullscreen",
"buttons": "ok_suppress",
"text": "\\rules except wikilink\n\nPlease have a look [[here|http://caniuse.com/#feat=fullscreen]] to see a list of supported devices/browsers.\n\nSorry for this :("
},
"$:/plugins/felixhayashi/tiddlymap/dialog/renameView": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/renameView",
"subtitle": "{{$:/core/images/tag-button}} Please specify a view name",
"text": "\\rules except wikilink\n\n''Name:''\n&lt;$edit-text focus=\"true\" tiddler=&lt;&lt;output&gt;&gt; field=\"text\" type=\"text\" tag=\"input\" default=\"\"\n class=\"tmap-trigger-field tmap-triggers-ok-button-on-enter\" /&gt;\n\nNote that ''&lt;&lt;count&gt;&gt;'' tiddlers are referencing this view.\n\n&lt;$reveal type=\"nomatch\" text=\"0\" default=&lt;&lt;count&gt;&gt;&gt;\n\nRenaming the view will cause the reference to be invalid.\nIt is recommended to first remove the tiddlymap widgets in\nthe tiddlers listed below or change their view attributes\naccordingly.\n\n''References''\n\n&lt;ul&gt;\n&lt;$list filter=&lt;&lt;refFilter&gt;&gt; variable=\"item\"&gt;\n &lt;li&gt;&lt;$text text=&lt;&lt;item&gt;&gt; /&gt;&lt;/li&gt;\n&lt;/$list&gt;\n&lt;/ul&gt;\n\n&lt;/$reveal&gt;\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/saveCanvas": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/saveCanvas",
"subtitle": "{{$:/core/images/options-button}} Save a snapshot image of view \"&lt;&lt;view&gt;&gt;\"",
"text": "\\rules except wikilink\n\n\\define preview()\n&lt;div class=\"tmap-save-canvas-preview\"&gt;\n &lt;$transclude tiddler=&lt;&lt;snapshot&gt;&gt; /&gt;&lt;br /&gt;\n Measures: &lt;&lt;width&gt;&gt; × &lt;&lt;height&gt;&gt;\n&lt;/div&gt;\n\\end\n\n&lt;table class=\"tmap-config-table\"&gt;\n&lt;!--\n &lt;&lt;tmap-row type:\"input-text\"\n title:\"Name\"\n field:\"name\"&gt;\n--&gt;\n&lt;$macrocall $name=\"tmap-row\"\n type=\"input-text\"\n title=\"Name\"\n field=\"name\"\n descr=&lt;&lt;preview&gt;&gt; /&gt;\n&lt;/table&gt;\n\n&lt;fieldset&gt;&lt;legend&gt;Options&lt;/legend&gt;\n &lt;table class=\"tmap-config-table\"&gt;\n &lt;&lt;tmap-row type:\"input-radio\"\n title:\"Action\"\n field:\"action\" \n selectFilter:\"[[download|Download]]\n [[wiki|Save in wiki]]\n [[placeholder|Use as placeholder for this view]]\"\n descr:\"Save the image by downloading it to your computer or\n save it as a tiddler in your wiki.&lt;br /&gt;&lt;br /&gt;\n A third option is to make TiddlyMap use this image as\n placeholder for the current view. Placeholders are used\n when tiddlers are exported in form of static html\n or when editing a tiddler while having the preview\n shown. In this case the title input is ignored.\"&gt;&gt;\n &lt;/table&gt;\n&lt;/fieldset&gt;"
},
"$:/plugins/felixhayashi/tiddlymap/dialog": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog",
"text": "\\rules except wikilink\n\n&lt;div class=&lt;&lt;classes&gt;&gt;&gt;\n&lt;$importvariables\n filter=\"[[$:/plugins/felixhayashi/tiddlymap/misc/macros]]\n [[$:/core/macros/tabs]]\"&gt;\n&lt;$transclude tiddler=&lt;&lt;template&gt;&gt; mode=\"block\" /&gt;\n&lt;/$importvariables&gt;\n&lt;/div&gt;"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/welcome": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/welcome",
"subtitle": "{{$:/core/images/info-button }} Welcome",
"buttons": "ok",
"text": "\\rules except wikilink\n\nIt seems that you freshly installed TiddlyMap.\n\n* In case you need any help, please consult the [[online docs|http://tiddlymap.org#Documentation]] first.\n* You are welcome to create an [[issue|https://github.com/felixhayashi/TW5-TiddlyMap/issues]] at GitHub for any bug you discover.\n* Make sure to revisit the [[demo site|http://tiddlymap.org]] to see whether your version is up-to-date.\n* If you like TiddlyMap, please give it a star at [[GitHub|https://github.com/felixhayashi/TW5-TiddlyMap]] or tell your friends about it :)\n* ''Please note:'' TiddlyMap is distributed under the [[BSD 2-Clause License|http://opensource.org/licenses/BSD-2-Clause]], which belongs to the same license family, as the license used by TiddlyWiki. By using this plugin you agree to the product's [[License Terms|https://github.com/felixhayashi/TW5-TiddlyMap/blob/master/LICENSE]].\n\nEnjoy!\n\n---\n\nTiddlyMap will configure your wiki for optimal use. Everything can be changed back later by you, via the TiddlyWiki configurations panel, so no worries. If you checked some of the options below, please save &amp;amp; restart after closing this dialog.\n\n&lt;table class=\"tmap-config-table\"&gt;\n &lt;&lt;tmap-row type:\"input-checkbox\"\n title:\"Optimize storyview\"\n field:\"config.storyview\"\n descr:\"Sets the storyview to 'top' for optimal scrolling.\"&gt;&gt;\n &lt;&lt;tmap-row type:\"input-checkbox\"\n title:\"Optimize sidebar\"\n field:\"config.sidebar\"\n descr:\"Sets sidebar layout to 'fixed-fluid' for larger editor.\"&gt;&gt;\n &lt;&lt;tmap-row type:\"input-checkbox\"\n title:\"Optimize navigation\"\n field:\"config.navigation\"\n descr:\"Sets navigation style to open tiddlers at top for better map navigation.\"&gt;&gt;\n &lt;&lt;tmap-row type:\"input-checkbox\"\n title:\"Create demo welcome map\"\n field:\"config.demo\"\n descr:\"Creates a little hello world welcome map for you.\"&gt;&gt;\n&lt;/table&gt;\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/widgetCodeGenerator": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/widgetCodeGenerator",
"subtitle": "{{$:/core/images/permalink-button}} Widget Code Generator",
"buttons": "close",
"text": "\\rules except wikilink\n\n&lt;div class=\"tmap-flash-message tmap-info\"&gt;\n Use the code below to embed a view in a tiddler.\n&lt;/div&gt;\n\n&lt;pre style=\"white-space: normal;\"&gt;\n&amp;lt;$tmap\n\n&lt;$list filter=\"[&lt;output&gt;has[var.view]]\"&gt;\n view=\"&lt;$view field='var.view' /&gt;\"&lt;/$list&gt;\n&lt;$list filter=\"[&lt;output&gt;field:var.click-to-use[true]]\"&gt;\n click-to-use=\"true\"&lt;/$list&gt;\n&lt;$list filter=\"[&lt;output&gt;has[var.editor]]\"&gt;\n editor=\"&lt;$view field='var.editor' /&gt;\"&lt;/$list&gt;\n&lt;$list filter=\"[&lt;output&gt;has[var.width]]\"&gt;\n width=\"&lt;$view field='var.width' /&gt;\"&lt;/$list&gt;\n&lt;$list filter=\"[&lt;output&gt;has[var.height]]\"&gt;\n height=\"&lt;$view field='var.height' /&gt;\"&lt;/$list&gt;\n&lt;$list filter=\"[&lt;output&gt;has[var.class]]\"&gt;\n class=\"&lt;$view field='var.class' /&gt;\"&lt;/$list&gt;\n&lt;$list filter=\"[&lt;output&gt;field:var.show-buttons[false]]\"&gt;\n show-buttons=\"false\"&lt;/$list&gt;\n&lt;$list filter=\"[&lt;output&gt;has[var.design]]\"&gt;\n design=\"&lt;$view field='var.design' /&gt;\"&lt;/$list&gt;&amp;gt;&amp;lt;/$tmap&amp;gt;\n&lt;/pre&gt;\n\n&lt;fieldset&gt;\n &lt;legend&gt;Parameters&lt;/legend&gt; \n &lt;table class=\"tmap-config-table\"&gt;\n &lt;$macrocall type=\"input-select\"\n $name=\"tmap-row\"\n title=\"View\"\n field=\"var.view\"\n nochoice=\" \"\n selectFilter=&lt;&lt;tmap \"option\" \"selector.allViewsByLabel\"&gt;&gt;\n descr=\"The view to bind the wiedget to\" /&gt;\n &lt;&lt;tmap-row type:\"input-select\"\n title:\"Editor bar\"\n field:\"var.editor\"\n selectFilter:\"[[|Hidden]]\n [[vis|Simple]]\n [[advanced|Advanced]]\"\n descr:\"Whether the widget should act as an editor or not.\"&gt;&gt;\n &lt;&lt;tmap-row type:\"input-select\"\n title:\"Design\"\n field:\"var.design\"\n selectFilter:\"[[|Normal]]\n [[plain|Plain]]\"\n descr:\"Usually a header is displayed and borders. Plain\n design will only show the mere graph.\"&gt;&gt;\n &lt;&lt;tmap-row type:\"input-text\"\n title:\"Height\"\n field:\"var.height\"\n descr:\"Graph's height in css units. Defaults to '300px'.\"&gt;&gt;\n &lt;&lt;tmap-row type:\"input-text\"\n title:\"Width\"\n field:\"var.width\"\n descr:\"Graph's width in css units. Defaults to '100%'.\"&gt;&gt;\n &lt;&lt;tmap-row type:\"input-text\"\n title:\"Class\"\n field:\"var.class\"\n descr:\"A custom class to apply your own css.\"&gt;&gt;\n &lt;&lt;tmap-row type:\"input-checkbox\"\n title:\"Click to use\"\n field:\"var.click-to-use\"\n default:\"false\"\n descr:\"A click is needed to enable the graph.\"&gt;&gt;\n &lt;&lt;tmap-row type:\"input-checkbox\"\n title:\"Show buttons\"\n field:\"var.show-buttons\"\n default:\"true\"\n descr:\"Show or hide the graph's navigation buttons.\"&gt;&gt;\n &lt;/table&gt;\n&lt;/fieldset&gt;"
},
"$:/plugins/felixhayashi/tiddlymap/dialogFooter/close": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialogFooter/close",
"text": "\\rules except wikilink\n\n&lt;$button class=\"tmap-dialog-button tmap-close-button\" tooltip=\"Close this dialog\"&gt;Close\n\n &lt;!-- trigger dialog callback --&gt;\n &lt;$action-setfield $tiddler=&lt;&lt;result&gt;&gt; text=\"1\" /&gt;\n \n&lt;/$button&gt;\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialogFooter/ok": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialogFooter/ok",
"text": "\\rules except wikilink\n\n&lt;$button class=\"tmap-dialog-button tmap-ok-button\" tooltip=\"Confirm dialog\"&gt;OK\n\n &lt;!-- trigger dialog callback --&gt;\n &lt;$action-setfield $tiddler=&lt;&lt;result&gt;&gt; text=\"1\" /&gt;\n \n&lt;/$button&gt;\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialogFooter/ok_cancel": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialogFooter/ok_cancel",
"text": "\\rules except wikilink\n\n&lt;$transclude tiddler=\"$:/plugins/felixhayashi/tiddlymap/dialogFooter/ok\" mode=\"inline\" /&gt;\n&lt;$button class=\"tmap-dialog-button tmap-cancel-button\" tooltip=\"Close dialog without saving\"&gt;Cancel\n &lt;!-- trigger dialog callback --&gt;\n &lt;$action-setfield $tiddler=&lt;&lt;result&gt;&gt; text=\"\" /&gt;\n&lt;/$button&gt;\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialogFooter/ok_suppress": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialogFooter/ok_suppress",
"text": "\\rules except wikilink\n\n&lt;$set name=\"currentTiddler\" value=&lt;&lt;title&gt;&gt; &gt;\n\n&lt;$checkbox field=\"suppress\" checked=\"1\" unchecked=\"0\" default=\"0\"&gt; Do not show this dialog again&lt;/$checkbox&gt;\n&lt;$button class=\"tmap-dialog-button tmap-ok-button\" tooltip=\"Confirm this dialog\"&gt;OK\n\n &lt;!-- trigger dialog callback --&gt;\n &lt;$action-setfield $tiddler=&lt;&lt;result&gt;&gt; text=\"1\" /&gt;\n \n &lt;!-- suppress dialog in the future --&gt;\n &lt;$action-sendmessage $message=\"tmap:tm-suppress-dialog\"\n dialog=&lt;&lt;templateId&gt;&gt;\n suppress={{!!suppress}} /&gt;\n \n&lt;/$button&gt;\n\n&lt;/$set&gt;"
},
"$:/plugins/felixhayashi/tiddlymap/dialogFooter": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialogFooter",
"text": "\\rules except wikilink\n\n\\define footer() $:/plugins/felixhayashi/tiddlymap/dialogFooter/$(buttons)$\n\n&lt;$transclude tiddler=&lt;&lt;footer&gt;&gt; /&gt;\n\n&lt;!-- we need this button to be able to close a tiddler from outside programmatically --&gt;\n&lt;$button class=\"tmap-hidden-close-button\" message=\"tm-close-tiddler\" /&gt;"
},
"$:/plugins/felixhayashi/tiddlymap/dialogFooter/element_type_manager": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialogFooter/element_type_manager",
"text": "\\rules except wikilink\n\n&lt;$button\n class=\"tmap-dialog-button tmap-save-button\"\n tooltip=\"Save the current changes\"&gt;Save\n &lt;$action-sendmessage\n $message=\"tmap:tm-save-type-form\"\n mode=&lt;&lt;mode&gt;&gt;\n output=&lt;&lt;output&gt;&gt; /&gt;\n&lt;/$button&gt;\n&lt;$button\n class=\"tmap-dialog-button tmap-cancel-button\"\n tooltip=\"Cancel the most resent changes and exit\"&gt;Quit\n &lt;$action-setfield $tiddler=&lt;&lt;result&gt;&gt; text=\"1\" /&gt;\n&lt;/$button&gt;"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/deleteType": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/deleteType",
"caption": "Removal",
"text": "\\rules except wikilink\n\n\\define manage-edge-types()\n &lt;$macrocall $name=\"tmap-row\"\n type=\"input-checkbox\"\n title=\"Delete type\"\n field=\"temp.deleteType\"\n default={{!id}}\n readonly={{!!temp.idImmutable}}\n descr=\"If you want to delete this type, set this to true\n and click the save button afterwards. Predefined system\n types cannot be deleted.\" note=\"Consequently, all edges\n of this type will be deleted.\" /&gt;\n\\end\n\n\\define manage-node-types()\n &lt;$macrocall $name=\"tmap-row\"\n type=\"input-checkbox\"\n title=\"Delete type\"\n field=\"temp.deleteType\"\n default={{!id}}\n readonly={{!!temp.idImmutable}}\n descr=\"If you want to delete this type, set this to true and\n click the save button afterwards. Predefined system\n types cannot be deleted.\" /&gt;\n\\end\n\n&lt;table class=\"tmap-config-table\"&gt;&lt;$macrocall $name=&lt;&lt;mode&gt;&gt; /&gt;&lt;/table&gt;"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/description": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/description",
"caption": "Description",
"text": "\\rules except wikilink\n\n\\define manage-edge-types()\n &lt;&lt;tmap-row type:\"input-textarea\"\n title:\"Description\"\n field:\"description\"\n descr:\"An optional description for this type. The\n description will be displayed as tooltip when\n moving the mouse over an edge of this type.\"&gt;&gt;\n\\end\n\n\\define manage-node-types()\n &lt;&lt;tmap-row type:\"input-textarea\"\n title:\"Description\"\n field:\"description\" \n descr:\"An optional description for this type.\"&gt;&gt;\n\\end\n\n&lt;table class=\"tmap-config-table\"&gt;\n &lt;$macrocall $name=&lt;&lt;mode&gt;&gt; /&gt;\n&lt;/table&gt;\n\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/generalSettings": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/generalSettings",
"caption": "General",
"text": "\\rules except wikilink\n\n\\define manage-edge-types()\n &lt;&lt;tmap-row type:\"input-text\"\n title:\"Label\"\n field:\"label\" \n descr:\"An optional alias used as edge-label.\"&gt;&gt;\n &lt;&lt;tmap-row type:\"input-checkbox\"\n title:\"Show label\"\n field:\"show-label\"\n default:\"true\"\n descr:\"If unchecked, no edge label will be displayed.\"&gt;&gt;\n\\end\n\\define manage-node-types()\n &lt;$list filter=\"[&lt;currentTiddler&gt;!regexp:id[tmap:]]\"&gt;\n &lt;&lt;tmap-row type:\"input-textarea\"\n title:\"Scope\"\n field:\"scope\" \n descr:\"A filter expression that defines, which nodes inherit\n this node-type and its style.\"&gt;&gt;\n &lt;/$list&gt;\n &lt;$macrocall type=\"input-select\"\n $name=\"tmap-row\" \n title=\"Priority\"\n field=\"priority\"\n selectFilter=&lt;&lt;tmap \"scale\" \"100\"&gt;&gt;\n descr=\"When a type has a a higher priority than another type,\n its style will override the other style\" /&gt;\n\\end\n\n&lt;table class=\"tmap-config-table\"&gt;\n &lt;$macrocall\n $name=\"tmap-row\"\n title=\"Identifier\"\n field=\"temp.newId\"\n type=\"input-text\"\n default={{!!id}}\n readonly={{!!temp.idImmutable}}\n descr=\"A unique identifier\"\n /&gt;\n &lt;$macrocall $name=&lt;&lt;mode&gt;&gt; /&gt;\n&lt;/table&gt;"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/overview": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/overview",
"caption": "Overview",
"text": "\\rules except wikilink\n\n\\define date(f) &lt;$view field=$f$ format=\"date\" template=\"DDth mmm hh:mm:ss\"/&gt;\n\n! &lt;$link to={{!!typeTRef}}&gt;&lt;$view field=\"id\" /&gt;&lt;/$link&gt;\n\n&lt;table class=\"tmap-key-value-table\"&gt;\n &lt;tr&gt;\n &lt;th align=\"left\"&gt;Created on&lt;/th&gt;\n &lt;td&gt;\n &lt;&lt;date \"created\"&gt;&gt;\n &lt;/td&gt;\n &lt;/tr&gt;\n &lt;tr&gt;\n &lt;th align=\"left\"&gt;Modified on&lt;/th&gt;\n &lt;td&gt;&lt;&lt;date \"modified\"&gt;&gt;&lt;/td&gt;\n &lt;/tr&gt;\n &lt;tr&gt;\n &lt;th align=\"left\"&gt;Usage count&lt;/th&gt;\n &lt;td&gt;\n &lt;span class=\"tmap-edge-type-specific\"&gt;\n &lt;$view field=\"temp.usageCount\" /&gt;\n &lt;/span&gt;\n &lt;span class=\"tmap-node-type-specific\"&gt;\n &lt;$count filter={{!!scope}}&gt;0&lt;/$count&gt;\n &lt;/span&gt;\n &lt;/td&gt;\n &lt;/tr&gt;\n&lt;/table&gt;\n\n&lt;$view field=\"description\"&gt;//No description available//&lt;/$view&gt;"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/styling": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/styling",
"caption": "Styling",
"text": "\\rules except wikilink\n\n\\define url()\n &lt;$set\n filter=\"[&lt;mode&gt;prefix[manage-edge-types]]\"\n name=\"module\"\n value=\"edges\"\n emptyValue=\"nodes\"&gt;\n [[visjs.org|http://visjs.org/docs/network/$(module)$]]\n &lt;/$set&gt;\n\\end\n\n&lt;fieldset class=\"tmap-node-type-specific\"&gt;\n &lt;legend&gt;Icon Settings&lt;/legend&gt;\n &lt;table class=\"tmap-config-table\"&gt;\n &lt;&lt;tmap-row type:\"input-text\"\n title:\"TW-icon\"\n field:\"tw-icon\"\n descr:\"A tiddlywiki image reference.\n For example '$:/core/icon' for Movotun Jack.\"&gt;&gt;\n &lt;&lt;tmap-row type:\"input-text\"\n title:\"FA-icon\"\n field:\"fa-icon\"\n descr:\"A Font Awesome icon code.\n For example 'f206' for the bicycle symbol.\"&gt;&gt;\n &lt;/table&gt;\n&lt;/fieldset&gt;\n\n&lt;fieldset&gt;&lt;legend&gt;Visjs styles&lt;/legend&gt;\n &lt;div class=\"tmap-flash-message tmap-info\"&gt;\n All visjs options below are documented at &lt;&lt;url&gt;&gt;.\n &lt;/div&gt;\n &lt;div class=\"tmap-flash-message tmap-info\"&gt;\n Only config items that you actually changed have an effect on\n the graph. Other options are visible, yet, inactive.\n &lt;/div&gt;\n &lt;$tmap-config\n mode=&lt;&lt;mode&gt;&gt;\n inherited=\"vis-inherited\"\n extension=\"style\" /&gt;\n&lt;/fieldset&gt;"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager",
"subtitle": "{{$:/core/images/tag-button}} &lt;&lt;topic&gt;&gt;",
"buttons": "element_type_manager",
"classes": "tmap-remove-top-space",
"text": "\\rules except wikilink\n\n\\define defaultTab()\n$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/overview\n\\end\n\n\\define settingsTab()\n$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/generalSettings\n\\end\n\n\\define tabsFilter()\n[all[shadows]prefix[$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/]]\n\\end\n\n\\define searchFilter()\n$(searchSelector)$\n+[sort[title]nsort[priority]]\n+[removeprefix&lt;typeRootPath&gt;removeprefix[/]]\n+[search:title{$:/temp/tmap/MapElementTypeSearch}]\n\\end\n\n\\define managerClass() tmap-$(mode)$\n\n\\define typePath() $(typeRootPath)$/$(id)$\n\n&lt;div id=\"tmap-element-type-manager\" class=&lt;&lt;managerClass&gt;&gt;&gt;\n &lt;div&gt;\n &lt;div class=\"tmap-searchbar\"&gt;\n &lt;$edit-text\n focus=\"true\"\n tiddler=\"$:/temp/tmap/MapElementTypeSearch\"\n type=\"text\"\n tag=\"input\"\n default=\"\" /&gt;\n &lt;$list filter=\"[{$:/temp/tmap/MapElementTypeSearch}regexp[.+]]\n +[addprefix[/]]\n +[addprefix&lt;typeRootPath&gt;]\n +[!is[tiddler]!is[shadow]]\"&gt;\n &lt;$button tooltip=\"Create a new type of this name\"&gt;\n {{$:/core/images/new-button}}\n &lt;$action-sendmessage\n $message=\"tmap:tm-create-type\"\n mode=&lt;&lt;mode&gt;&gt;\n id={{$:/temp/tmap/MapElementTypeSearch}}\n output=&lt;&lt;output&gt;&gt; /&gt;\n &lt;$action-setfield $tiddler=\"$:/temp/tmap/MapElementTypeSearch\" text=\"\" /&gt;\n &lt;/$button&gt;\n &lt;/$list&gt;\n\n &lt;/div&gt;\n &lt;ul&gt;\n &lt;$list\n filter=&lt;&lt;searchFilter&gt;&gt;\n emptyMessage=&lt;&lt;noTypeFound&gt;&gt;\n variable=\"id\"&gt;\n &lt;li&gt;\n &lt;span class=\"tmap-ranking tmap-node-type-specific\"&gt;\n # &lt;$view tiddler=&lt;&lt;typePath&gt;&gt; field=\"priority\"&gt;1&lt;/$view&gt;\n &lt;/span&gt;\n &lt;$button class=\"tc-btn-invisible tmap-link\"&gt;&lt;&lt;id&gt;&gt;\n &lt;$action-setfield\n $tiddler=&lt;&lt;qualify \"$:/state/tabs/MapElementTypeManager\"&gt;&gt;\n text=&lt;&lt;defaultTab&gt;&gt; /&gt;\n &lt;$action-sendmessage\n $message=\"tmap:tm-load-type-form\"\n id=&lt;&lt;id&gt;&gt;\n mode=&lt;&lt;mode&gt;&gt;\n output=&lt;&lt;output&gt;&gt; /&gt;\n &lt;/$button&gt;\n &lt;/li&gt;\n &lt;/$list&gt;\n &lt;/ul&gt;\n &lt;/div&gt;\n &lt;div&gt;\n &lt;$reveal type=\"nomatch\" text=\"\" default={{!!id}} &gt;\n &lt;$macrocall\n $name=\"tabs\"\n default=&lt;&lt;defaultTab&gt;&gt;\n state=\"$:/state/tabs/MapElementTypeManager\"\n tabsList=&lt;&lt;tabsFilter&gt;&gt; /&gt;\n &lt;/$reveal&gt;\n &lt;$reveal type=\"match\" text=\"\" default={{!!id}} &gt;\n &lt;div class=\"tmap-flash-message tmap-info\"&gt;\n Please select a type from the list or create a new one by\n entering the type name in the search field on the left.\n &lt;/div&gt;\n &lt;div class=\"tmap-flash-message tmap-info tmap-node-type-specific\"&gt;\n The number next to the node-type label represents it's priority.\n &lt;/div&gt;\n &lt;/$reveal&gt;\n &lt;/div&gt;\n&lt;/div&gt;\n"
},
"$:/plugins/felixhayashi/tiddlymap/editor/contextMenu/node": {
"title": "$:/plugins/felixhayashi/tiddlymap/editor/contextMenu/node",
"text": "\\define single()\n &lt;$list filter=\"\n [[tmap:tm-toggle-central-topic, $:/core/images/star-filled, Toggle central topic]]\n [[tmap:tm-delete-element, $:/core/images/delete-button, Delete node]]\"&gt;\n &lt;$button class=\"tc-btn-invisible\"&gt;\n &lt;$action-sendmessage $message=&lt;&lt;tmap \"splitAndSelect\" \", \" \"0\"&gt;&gt; /&gt;\n &lt;$transclude tiddler=&lt;&lt;tmap \"splitAndSelect\" \", \" \"1\"&gt;&gt; /&gt;\n &lt;&lt;tmap \"splitAndSelect\" \", \" \"2\"&gt;&gt;\n &lt;/$button&gt;\n &lt;/$list&gt;\n\\end\n\n\\define multi()\n &lt;$list filter=\"\n [[tmap:tm-delete-element, $:/core/images/delete-button, Delete selected nodes]]\"&gt;\n &lt;$button class=\"tc-btn-invisible\"&gt;\n &lt;$action-sendmessage $message=&lt;&lt;tmap \"splitAndSelect\" \", \" \"0\"&gt;&gt; /&gt;\n &lt;$transclude tiddler=&lt;&lt;tmap \"splitAndSelect\" \", \" \"1\"&gt;&gt; /&gt;\n &lt;&lt;tmap \"splitAndSelect\" \", \" \"2\"&gt;&gt;\n &lt;/$button&gt;\n &lt;/$list&gt;\n\\end\n\n&lt;div class=\"tc-drop-down\"&gt;\n &lt;$macrocall $name=&lt;&lt;mode&gt;&gt; /&gt;\n&lt;/div&gt;"
},
"$:/plugins/felixhayashi/tiddlymap/misc/advancedEditorBar": {
"title": "$:/plugins/felixhayashi/tiddlymap/misc/advancedEditorBar",
"text": "\\rules except wikilink\n\\define showEdgeField() show-$(curEdgeId)$\n\n&lt;!-- === View Switcher ========================================== --&gt;\n\n&lt;div class=\"tmap-menu-bar\"&gt;\n View:\n &lt;$reveal type=\"match\" text=\"false\" default=&lt;&lt;isViewBound&gt;&gt; &gt;\n &lt;$select\n tiddler=&lt;&lt;viewHolder&gt;&gt;\n field=\"text\"\n default=&lt;&lt;viewLabel&gt;&gt; &gt;\n &lt;$list filter=&lt;&lt;tmap \"option\" \"selector.allViewsByLabel\"&gt;&gt; &gt;\n &lt;option value={{!!title}}&gt;\n &lt;$view tiddler={{!!title}} field=\"title\" /&gt;\n &lt;/option&gt;\n &lt;/$list&gt;\n &lt;/$select&gt;\n &lt;/$reveal&gt;\n &lt;$reveal type=\"match\" text=\"true\" default=&lt;&lt;isViewBound&gt;&gt; &gt;\n &lt;b&gt;&lt;&lt;viewLabel&gt;&gt;&lt;/b&gt;\n &lt;/$reveal&gt;\n\n&lt;!-- === Menu =================================================== --&gt;\n\n &lt;$button\n popup=&lt;&lt;qualify \"$:/temp/menu\"&gt;&gt;\n tooltip=\"Open the Menu\"&gt;{{$:/core/images/menu-button}}\n &lt;/$button&gt;\n\n &lt;$reveal type=\"popup\" position=\"below\" state=&lt;&lt;qualify \"$:/temp/menu\"&gt;&gt; &gt;\n &lt;div class=\"tc-drop-down\"&gt;\n &lt;a href=\"http://tiddlymap.org#Documentation\" target=\"_blank\"&gt;\n {{$:/core/images/info-button}} Open online help\n &lt;/a&gt;\n &lt;$button class=\"tc-btn-invisible\" message=\"tmap:tm-create-view\"&gt;\n {{$:/core/images/new-button}} Create new view\n &lt;/$button&gt;\n &lt;$button class=\"tc-btn-invisible\" message=\"tmap:tm-generate-widget\"&gt;\n {{$:/core/images/permalink-button}} Grab widget code\n &lt;/$button&gt;\n &lt;div class=\"tmap-list-separator\"&gt;Global configurations:&lt;/div&gt;\n &lt;$button class=\"tc-btn-invisible\" message=\"tmap:tm-configure-system\"&gt;\n {{$:/core/images/options-button}} Configure TiddlyMap\n &lt;/$button&gt;\n &lt;$button class=\"tc-btn-invisible\" message=\"tmap:tm-manage-edge-types\"&gt;\n &lt;span class=\"tmap-unicode-icon\"&gt;&lt;/span&gt; Manage edge-types\n &lt;/$button&gt;\n &lt;$button class=\"tc-btn-invisible\" message=\"tmap:tm-manage-node-types\"&gt;\n &lt;span class=\"tmap-unicode-icon\"&gt;&lt;/span&gt; Manage node-types\n &lt;/$button&gt;\n &lt;div class=\"tmap-view-actions\"&gt;\n &lt;div class=\"tmap-list-separator\"&gt;Actions for this view:&lt;/div&gt;\n &lt;$button class=\"tc-btn-invisible\" message=\"tmap:tm-edit-view\"&gt;\n {{$:/core/images/options-button}} Configure view\n &lt;/$button&gt;\n &lt;$button class=\"tc-btn-invisible\" message=\"tmap:tm-rename-view\"&gt;\n {{$:/core/images/tag-button}} Rename view\n &lt;/$button&gt;\n &lt;$button class=\"tc-btn-invisible\" message=\"tmap:tm-delete-view\"&gt;\n {{$:/core/images/delete-button}} Delete view\n &lt;/$button&gt;\n &lt;/div&gt;\n &lt;/div&gt;\n &lt;/$reveal&gt;\n\n&lt;!-- === Neighbourhood menu ===================================== --&gt;\n\n &lt;$reveal\n type=\"match\"\n text=\"true\"\n default=&lt;&lt;tmap \"option\"\n \"config.sys.editorMenuBar.showNeighScopeButton\"&gt;&gt;&gt;\n &lt;$button\n class=&lt;&lt;neighScopeBtnClass&gt;&gt;\n tooltip=\"Change the neighbourhood scope\"\n popup=&lt;&lt;qualify \"$:/temp/neighScope\"&gt;&gt;&gt;\n ☀\n &lt;/$button&gt;\n &lt;/$reveal&gt;\n\n &lt;$reveal type=\"popup\" position=\"below\" state=&lt;&lt;qualify \"$:/temp/neighScope\"&gt;&gt; &gt;\n &lt;div class=\"tc-drop-down\"&gt;\n &lt;div class=\"tmap-list-separator\"&gt;Neighbourhood scope&lt;/div&gt;\n &lt;$button class=\"tc-btn-invisible\"&gt;None\n &lt;$action-setfield\n $tiddler=&lt;&lt;viewRoot&gt;&gt;\n config.neighbourhood_scope=\"\" /&gt;\n &lt;/$button&gt;\n &lt;$list filter=\"[[1|1 step distance]]\n [[2|2 step d
},
"$:/plugins/felixhayashi/tiddlymap/misc/focusButton": {
"title": "$:/plugins/felixhayashi/tiddlymap/misc/focusButton",
"text": "\\define filter() [list[$:/temp/tmap/nodes/$(viewLabel)$]search:title{$:/temp/tmap/bar/search}]\n\\define concat(str) $str$\n\n\\define state() $(widgetPopupsPath)$/focus\n\n&lt;div class=\"tmap-focus-button\"&gt;\n &lt;$reveal type=\"match\" state=&lt;&lt;state&gt;&gt; text=\"\"&gt;\n &lt;$button\n tooltip=\"Zoom on a specific node\"\n class=&lt;&lt;tv-config-toolbar-class&gt;&gt;&gt;{{$:/core/images/advanced-search-button}}\n &lt;$action-setfield $tiddler=\"$:/temp/tmap/bar/search\" text=\"\" /&gt;\n &lt;$action-setfield $tiddler=&lt;&lt;state&gt;&gt; text=\"1\" /&gt;\n &lt;/$button&gt;\n &lt;/$reveal&gt;\n &lt;$reveal type=\"nomatch\" state=&lt;&lt;state&gt;&gt; text=\"\"&gt;\n &lt;$button\n tooltip=\"Close zoom popup\"\n class=&lt;&lt;tv-config-toolbar-class&gt;&gt;&gt;{{$:/core/images/advanced-search-button}}\n &lt;$action-setfield $tiddler=&lt;&lt;state&gt;&gt; text=\"\" /&gt;\n &lt;/$button&gt;\n &lt;div class=\"tmap-search-dropdown\"&gt;\n &lt;div class=\"tc-drop-down\"&gt;\n &lt;$edit-text\n focus=\"true\"\n tiddler=\"$:/temp/tmap/bar/search\"\n field=\"text\"\n type=\"text\"\n tag=\"input\"\n default=\"\" /&gt;\n &lt;small&gt;&lt;$count filter=&lt;&lt;filter&gt;&gt; /&gt; results&lt;/small&gt;\n &lt;hr /&gt;\n &lt;div class=\"tmap-very-small-list\"&gt;\n &lt;$list filter=&lt;&lt;filter&gt;&gt;\n variable=\"item\"\n emptyMessage=\"//No results//\"&gt;\n &lt;$button\n class=\"tc-btn-invisible\"\n message=\"tmap:tm-focus-node\"\n param=&lt;&lt;item&gt;&gt;&gt;\n &lt;$view tiddler=&lt;&lt;item&gt;&gt; field=\"title\" /&gt;\n &lt;/$button&gt;\n &lt;/$list&gt;\n &lt;/div&gt;\n &lt;/div&gt;\n &lt;/div&gt;\n &lt;/$reveal&gt;\n&lt;/div&gt;"
},
"$:/plugins/felixhayashi/tiddlymap/hook/editor": {
"title": "$:/plugins/felixhayashi/tiddlymap/hook/editor",
"caption": "Map",
"tags": "$:/tags/SideBar",
"text": "\\define width() calc(100% - 15px)\n\n&lt;div class=\"tmap-mobile-editor\"&gt;\n &lt;div class=\"tmap-flash-message tmap-warning\"&gt;\n The editor is not displayed in mobile mode.\n &lt;/div&gt;\n&lt;/div&gt;\n&lt;div class=\"tmap-desktop-editor\"&gt;\n &lt;$tiddlymap\n class=\"tmap-sidebar-map-editor\"\n editor=\"advanced\"\n object-id=\"main_editor\"\n click-to-use=\"false\"&gt;\n &lt;/$tiddlymap&gt;\n&lt;/div&gt;"
},
"$:/plugins/felixhayashi/tiddlymap/hook/liveTab": {
"title": "$:/plugins/felixhayashi/tiddlymap/hook/liveTab",
"caption": "Live",
"text": "\\define width() calc(100% - 15px)\n\n&lt;div class=\"tmap-mobile-editor\"&gt;\n &lt;div class=\"tmap-flash-message tmap-warning\"&gt;\n The live tab is not displayed in mobile mode.\n &lt;/div&gt;\n&lt;/div&gt;\n&lt;div class=\"tmap-desktop-editor\"&gt;\n &lt;$set name=\"view\"\n filter=\"[{$:/temp/tmap/currentTiddler}get[tmap.open-view]]\"\n emptyValue=&lt;&lt;tmap \"option\" \"config.sys.liveTab.fallbackView\"&gt;&gt;&gt;\n &lt;div&gt;\n &lt;$tiddlymap\n view=&lt;&lt;view&gt;&gt;\n click-to-use=\"false\"\n refresh-triggers=\"$:/temp/tmap/currentTiddler\"\n object-id=\"live_tab\"&gt;\n &lt;/$tiddlymap&gt;\n &lt;/div&gt;\n &lt;/$set&gt; \n&lt;/div&gt;"
},
"$:/plugins/felixhayashi/tiddlymap/misc/quickConnectButton": {
"title": "$:/plugins/felixhayashi/tiddlymap/misc/quickConnectButton",
"tags": "$:/tags/ViewToolbar",
"description": "{{$:/language/Buttons/TiddlyMap/Hint}}",
"caption": "{{$:/plugins/felixhayashi/tiddlymap/icon}} {{$:/language/Buttons/TiddlyMap/Caption}}",
"text": "\\define buttonClass() $(tv-config-toolbar-class)$ $(additional-classes)$\n\n\\define nonExistentItem()\n&lt;&lt;item&gt;&gt; &lt;span style=\"color: #9E9E9E\"&gt;(will be created)&lt;/span&gt;\n\\end\n\n\\define noConnectionsMsg()\n&lt;tr&gt;&lt;td colspan=\"4\"&gt;//No connections found!//&lt;/td&gt;&lt;/tr&gt;\n\\end\n\n\\define normalSearchFilter()\n[!is[system]!has[draft.of]search:title{$:/temp/quickConnectSearch}sortcs[title]limit[50]]\n\\end\n\n\\define regexSearchFilter()\n[!is[system]!has[draft.of]regexp{$:/temp/quickConnectSearch}sortcs[title]limit[50]]\n\\end\n\n\\define showButton(state)\n&lt;$button set=\"$:/temp/tmap/state/popup/quickConnect\"\n setTo=\"$state$\" tooltip={{$:/language/Buttons/TiddlyMap/Hint}} \n aria-label={{$:/language/Buttons/TiddlyMap/Caption}}\n class=&lt;&lt;buttonClass&gt;&gt;&gt;\n&lt;$list filter=\"[&lt;tv-config-toolbar-icons&gt;prefix[yes]]\"&gt;{{$:/plugins/felixhayashi/tiddlymap/icon}}&lt;/$list&gt;\n&lt;$list filter=\"[&lt;tv-config-toolbar-text&gt;prefix[yes]]\"&gt;\n&lt;span class=\"tc-btn-text\"&gt;&lt;$text text={{$:/language/Buttons/TiddlyMap/Caption}}/&gt;&lt;/span&gt;\n&lt;/$list&gt;\n&lt;/$button&gt;\n\\end\n\n\\define searchResults()\n&lt;td&gt;\n &lt;$button tooltip=\"Create incoming edge\"&gt;\n &lt;&lt;tmap \"option\" \"misc.arrows.in\"&gt;&gt;\n &lt;$action-sendmessage $message=\"tmap:tm-create-edge\"\n from=&lt;&lt;item&gt;&gt;\n to=&lt;&lt;currentTiddler&gt;&gt;\n force=\"true\"\n label={{$:/temp/quickConnectSearch/type}}\n view={{$:/temp/quickConnectSearch/view}} /&gt;\n &lt;/$button&gt;\n&lt;/td&gt;\n&lt;td&gt;\n &lt;$button tooltip=\"Create outgoing edge\"&gt;\n &lt;&lt;tmap \"option\" \"misc.arrows.out\"&gt;&gt;\n &lt;$action-sendmessage $message=\"tmap:tm-create-edge\"\n from=&lt;&lt;currentTiddler&gt;&gt;\n to=&lt;&lt;item&gt;&gt;\n force=\"true\"\n label={{$:/temp/quickConnectSearch/type}}\n view={{$:/temp/quickConnectSearch/view}} /&gt;\n &lt;/$button&gt;\n&lt;/td&gt;\n&lt;td&gt;\n &lt;$list\n filter=\"[&lt;item&gt;is[tiddler]]\"\n emptyMessage=&lt;&lt;nonExistentItem&gt;&gt;&gt;\n &lt;$view tiddler=&lt;&lt;item&gt;&gt; field=\"title\" /&gt;\n &lt;/$list&gt;\n&lt;/td&gt;\n\\end\n\n\\define hidePopup()\n&lt;$macrocall $name=\"showButton\" state=&lt;&lt;qualify&gt;&gt; /&gt;\n\\end\n\n\\define showPopup()\n&lt;$set name=\"additional-classes\" value=\"tmap-active-button\"&gt;\n &lt;$macrocall $name=\"showButton\" state=\"\" /&gt;\n&lt;/$set&gt;\n&lt;$set\n name=\"searchFilter\"\n filter=\"[field:title[$:/state/tmap/tid-toolbar]has[re-filter]]\"\n value=&lt;&lt;regexSearchFilter&gt;&gt;\n emptyValue=&lt;&lt;normalSearchFilter&gt;&gt;&gt;\n&lt;div class=\"tmap-quick-connect tc-reveal tc-popup\"&gt;\n &lt;div class=\"tc-drop-down\"&gt;\n &lt;div class=\"title\"&gt;Create connection&lt;/div&gt;\n &lt;table class=\"tmap-quick-connect-search-bar\"&gt;\n &lt;tr&gt;\n &lt;td&gt;Type:&lt;/td&gt;\n &lt;td&gt;\n &lt;$edit-text\n tiddler=\"$:/temp/quickConnectSearch/type\"\n field=\"text\"\n type=\"text\"\n tag=\"input\"\n default=\"\" /&gt;\n &lt;$select tiddler=\"$:/temp/quickConnectSearch/type\" default=\"\"&gt;\n &lt;option&gt;&lt;/option&gt;\n &lt;$list filter=&lt;&lt;tmap \"option\" \"selector.allEdgeTypesById\"&gt;&gt;&gt;\n &lt;option&gt;{{!!title}}&lt;/option&gt;\n &lt;/$list&gt;\n &lt;/$select&gt;\n &lt;/td&gt;\n &lt;/tr&gt;\n &lt;tr&gt;\n &lt;td&gt;Search:&lt;/td&gt;\n &lt;td&gt;\n &lt;$edit-text tiddler=\"$:/temp/quickConnectSearch\" type=\"text\" tag=\"input\" default=\"\"&gt;&lt;/$edit-text&gt;\n &lt;$checkbox\n
},
"$:/plugins/felixhayashi/tiddlymap/media/fullscreen.png": {
"title": "$:/plugins/felixhayashi/tiddlymap/media/fullscreen.png",
"type": "image/png",
"text": "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
},
"$:/plugins/felixhayashi/tiddlymap/media/halfscreen.png": {
"title": "$:/plugins/felixhayashi/tiddlymap/media/halfscreen.png",
"type": "image/png",
"text": "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
},
"$:/plugins/felixhayashi/tiddlymap/icon": {
"title": "$:/plugins/felixhayashi/tiddlymap/icon",
"tags": "$:/tags/Image",
"text": "&lt;svg\n xmlns:dc=\"http://purl.org/dc/elements/1.1/\"\n xmlns:cc=\"http://creativecommons.org/ns#\"\n xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\"\n xmlns:svg=\"http://www.w3.org/2000/svg\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:inkscape=\"http://www.inkscape.org/namespaces/inkscape\"\n class=\"tc-image-tiddlymap-button tc-image-button\"\n version=\"1.1\"\n width=\"22pt\"\n height=\"22pt\"\n viewBox=\"0 0 128 128\"&gt;\n &lt;defs\n id=\"defs4\"&gt;\n &lt;marker\n refX=\"0\"\n refY=\"0\"\n orient=\"auto\"\n id=\"Arrow1Lend\"\n style=\"overflow:visible\"&gt;\n &lt;path\n d=\"M 0,0 5,-5 -12.5,0 5,5 0,0 z\"\n transform=\"matrix(-0.8,0,0,-0.8,-10,0)\"\n id=\"path3850\"\n style=\"fill-rule:evenodd;stroke:#000000;stroke-width:1pt\" /&gt;\n &lt;/marker&gt;\n &lt;marker\n refX=\"0\"\n refY=\"0\"\n orient=\"auto\"\n id=\"Arrow1Lstart\"\n style=\"overflow:visible\"&gt;\n &lt;path\n d=\"M 0,0 5,-5 -12.5,0 5,5 0,0 z\"\n transform=\"matrix(0.8,0,0,0.8,10,0)\"\n id=\"path3847\"\n style=\"fill-rule:evenodd;stroke:#000000;stroke-width:1pt\" /&gt;\n &lt;/marker&gt;\n &lt;inkscape:path-effect\n effect=\"skeletal\"\n id=\"path-effect4329\" /&gt;\n &lt;inkscape:path-effect\n effect=\"skeletal\"\n id=\"path-effect4321\" /&gt;\n &lt;inkscape:path-effect\n effect=\"skeletal\"\n id=\"path-effect4315\" /&gt;\n &lt;inkscape:path-effect\n effect=\"skeletal\"\n id=\"path-effect4307\" /&gt;\n &lt;inkscape:path-effect\n effect=\"skeletal\"\n id=\"path-effect4299\" /&gt;\n &lt;inkscape:path-effect\n effect=\"skeletal\"\n id=\"path-effect4293\" /&gt;\n &lt;/defs&gt;\n &lt;g\n transform=\"translate(0,-1024.5289)\"\n id=\"layer1\"&gt;\n &lt;path\n d=\"m 17.867073,4.5821643 a 3.7249374,3.7249374 0 1 1 -7.449875,0 3.7249374,3.7249374 0 1 1 7.449875,0 z\"\n transform=\"matrix(-6.3328802,0,0,6.2775831,193.9581,1100.3667)\"\n id=\"path4139-1-14\"\n style=\"fill-opacity:1;fill-rule:nonzero\" /&gt;\n &lt;path\n d=\"M 77.450496,1064.5069 C 58.849552,1025.9634 15.704158,1023.3858 2.8821873e-7,1034.558 L 0.02388589,1035.2674 C 24.502636,1022.2072 44.810725,1042.1507 60.163934,1074.112 z\"\n id=\"path4337\"\n style=\"fill-opacity:1;stroke-width:0.58181816;stroke-miterlimit:4;stroke-dasharray:none;marker-start:none;marker-end:none\" /&gt;\n &lt;path\n d=\"m 12.878637,11.280739 4.75937,-2.7478243 4.759371,-2.7478236 0,5.4956479 0,5.495648 -4.759371,-2.747824 z\"\n transform=\"matrix(4.6545455,0,0,4.6545455,-13.580429,1027.7638)\"\n id=\"path3004\"\n style=\"fill-opacity:1;fill-rule:nonzero\" /&gt;\n &lt;/g&gt;\n &lt;metadata\n id=\"metadata3772\"&gt;\n &lt;rdf:RDF&gt;\n &lt;cc:Work\n rdf:about=\"\"&gt;\n &lt;dc:title&gt;&lt;/dc:title&gt;\n &lt;dc:format&gt;image/svg+xml&lt;/dc:format&gt;\n &lt;dc:type\n rdf:resource=\"http://purl.org/dc/dcmitype/StillImage\" /&gt;\n &lt;/cc:Work&gt;\n &lt;/rdf:RDF&gt;\n &lt;/metadata&gt;\n&lt;/svg&gt;\n"
},
"$:/plugins/felixhayashi/tiddlymap/media/surface.png": {
"title": "$:/plugins/felixhayashi/tiddlymap/media/surface.png",
"type": "image/png",
"text": "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
},
"$:/language/Buttons/TiddlyMap/Caption": {
"title": "$:/language/Buttons/TiddlyMap/Caption",
"text": "tiddlymap"
},
"$:/language/Buttons/TiddlyMap/Hint": {
"title": "$:/language/Buttons/TiddlyMap/Hint",
"text": "Toggle TiddlyMap actions"
},
"$:/plugins/felixhayashi/tiddlymap/misc/macros": {
"title": "$:/plugins/felixhayashi/tiddlymap/misc/macros",
"text": "\\define concat(str) $str$\n\n\\define input-text(field, index, default, readonly, class, focus)\n &lt;$reveal type=\"match\" text=\"\" default=\"$readonly$\"&gt;\n &lt;$edit-text\n tiddler=&lt;&lt;output&gt;&gt;\n field=\"$field$\"\n index=\"$index$\"\n type=\"text\"\n tag=\"input\"\n default=\"$default$\"\n focus=\"$focus$\"\n class=\"$class$\" /&gt;\n &lt;/$reveal&gt;\n &lt;$reveal type=\"nomatch\" text=\"\" default=\"$readonly$\"&gt;\n &lt;input type=\"text\" value=\"$default$\" readonly=\"true\" disabled=\"true\" /&gt;\n &lt;/$reveal&gt;\n\\end\n\n\\define input-button(field, index, default, default, label:\"Proceed\")\n &lt;div class=\"tmap-button-wrapper\"&gt;\n &lt;$button&gt;$label$\n &lt;$action-setfield $tiddler=&lt;&lt;output&gt;&gt; $field=\"$field$\" index=\"$index$\" $value=\"$default$\" /&gt;\n &lt;/$button&gt;\n &lt;/div&gt;\n\\end\n\n\\define input-textarea(field, index, default, default, class, focus)\n &lt;$edit-text\n tiddler=&lt;&lt;output&gt;&gt;\n field=\"$field$\"\n index=\"$index$\"\n autoHeight=\"no\"\n type=\"text\"\n tag=\"textarea\"\n default=\"$default$\"\n class=\"$class$\"\n focus=\"$focus$\" /&gt;\n\\end\n\n\\define input-checkbox(field, index, readonly, default)\n &lt;$reveal type=\"match\" text=\"\" default=\"$readonly$\"&gt;\n &lt;$checkbox\n tiddler=&lt;&lt;output&gt;&gt;\n field=\"$field$\"\n index=\"$index$\"\n checked=\"true\"\n unchecked=\"false\"\n default=\"$default$\" /&gt;\n &lt;/$reveal&gt;\n &lt;$reveal type=\"nomatch\" text=\"\" default=\"$readonly$\"&gt;\n &lt;input type=\"checkbox\" value=\"$default$\" readonly=\"true\" disabled=\"true\" /&gt;\n &lt;/$reveal&gt;\n\\end\n\n\\define input-multi-checkbox(selectFilter, invert:\"no\", default)\n &lt;div class=\"tmap-no-stretch\"&gt;\n &lt;$list\n filter=\"$selectFilter$\"\n emptyMessage=\" This list contains no items \"&gt;\n &lt;$checkbox\n tiddler=&lt;&lt;output&gt;&gt;\n tag=&lt;&lt;tmap \"splitAndSelect\" \"|\" \"0\"&gt;&gt;&gt;\n &lt;$view\n tiddler=&lt;&lt;tmap \"splitAndSelect\" \"|\" \"1\"&gt;&gt;\n field=\"title\" /&gt;\n &lt;/$checkbox&gt;&lt;br /&gt;\n &lt;/$list&gt;\n &lt;/div&gt;\n\\end\n\n\\define input-select(field, index, selectFilter, default, nochoice)\n &lt;$select\n tiddler=&lt;&lt;output&gt;&gt;\n field=\"$field$\"\n index=\"$index$\"\n default=\"$default$\"&gt;\n &lt;$set name=\"nochoice\" value=\"$nochoice$\"&gt;\n &lt;$list filter=\"[&lt;nochoice&gt;regexp[.+]]\"&gt;\n &lt;option value=\"\"&gt;&lt;b&gt;&lt;&lt;nochoice&gt;&gt;&lt;/b&gt;&lt;/option&gt;\n &lt;/$list&gt;\n &lt;/$set&gt;\n &lt;$list filter=\"$selectFilter$\"&gt;\n &lt;option value=&lt;&lt;tmap \"splitAndSelect\" \"|\" \"0\"&gt;&gt; &gt;\n &lt;$view tiddler=&lt;&lt;tmap \"splitAndSelect\" \"|\" \"1\"&gt;&gt; field=\"title\" /&gt;\n &lt;/option&gt;\n &lt;/$list&gt;\n &lt;/$select&gt;\n\\end\n\n\\define input-radio(field, index, selectFilter, default)\n &lt;$list filter=\"$selectFilter$\"&gt;\n &lt;$radio\n tiddler=&lt;&lt;output&gt;&gt;\n field=\"$field$\"\n index=\"$index$\"\n value=&lt;&lt;tmap \"splitAndSelect\" \"|\" \"0\"&gt;&gt;&gt;\n &lt;&lt;tmap \"splitAndSelect\" \"|\" \"1\"&gt;&gt;\n &lt;/$radio&gt;&lt;br /&gt;\n &lt;/$list&gt;\n\\end\n\n\\define tmap-row(title, field, index, type, descr, note, label, default, readonly, reset, selectFilter, nochoice, invert, class, focus)\n &lt;tr&gt;\n &lt;td class=\"tmap-title\"&gt;$title$:&lt;/td&gt;\n &lt;td&gt;\n &lt;&lt;$type$\n field:\"$field$\"\n index:\"$index$\"\n readonly:\"$readonly$\"\n default:\"$default$\"\n label:\"$label$\"\n invert:\"$invert$\"\n selectFilter:\"$selectFilter$\"\n nochoice:\"$nochoice$\"\n focus:\"$focus$\"\n
},
"$:/plugins/felixhayashi/tiddlymap/misc/defaultViewHolder": {
"title": "$:/plugins/felixhayashi/tiddlymap/misc/defaultViewHolder",
"text": "Default"
},
"$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes/tmap:central-topic": {
"title": "$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes/tmap:central-topic",
"description": "The style is applied to the node that you marked as central topic in a map.",
"style": "{\"font\":{\"size\":22,\"color\":\"rgba(0,0,0,1)\"},\"shape\":\"star\"}"
},
"$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes/tmap:neighbour": {
"title": "$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes/tmap:neighbour",
"description": "Neighbours are all nodes that are not part of the original set of nodes (\"matches\") but are connected (either outgoing or incoming) to a node of the original set.",
"style": "{\"color\":\"#565656\"}"
},
"$:/plugins/felixhayashi/tiddlymap/graph/views/Default/filter/edges": {
"title": "$:/plugins/felixhayashi/tiddlymap/graph/views/Default/filter/edges"
},
"$:/plugins/felixhayashi/tiddlymap/graph/views/Default/filter/nodes": {
"title": "$:/plugins/felixhayashi/tiddlymap/graph/views/Default/filter/nodes"
},
"$:/plugins/felixhayashi/tiddlymap/graph/views/Default": {
"title": "$:/plugins/felixhayashi/tiddlymap/graph/views/Default",
"config.physics_mode": "false",
"isview": "true"
},
"$:/plugins/felixhayashi/tiddlymap/graph/views/Live View/filter/edges": {
"title": "$:/plugins/felixhayashi/tiddlymap/graph/views/Live View/filter/edges",
"filter": "[prefix[$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes]]",
"text": "\n\n"
},
"$:/plugins/felixhayashi/tiddlymap/graph/views/Live View/filter/nodes": {
"title": "$:/plugins/felixhayashi/tiddlymap/graph/views/Live View/filter/nodes",
"filter": "[field:title{$:/temp/tmap/currentTiddler}]"
},
"$:/plugins/felixhayashi/tiddlymap/graph/views/Live View": {
"title": "$:/plugins/felixhayashi/tiddlymap/graph/views/Live View",
"config.neighbourhood_scope": "1",
"config.refresh-triggers": "$:/temp/tmap/currentTiddler",
"config.physics_mode": "true",
"config.vis": "{\"physics\":{\"forceAtlas2Based\":{\"springLength\":0,\"springConstant\":0.09}}}",
"isview": "true"
},
"$:/plugins/felixhayashi/tiddlymap/graph/views/Graph search/filter/nodes": {
"title": "$:/plugins/felixhayashi/tiddlymap/graph/views/Graph search/filter/nodes",
"filter": "[!is[system]search{$:/temp/search}] [!is[system]search:tags{$:/temp/search}] [!is[system]search:text{$:/temp/search}limit[10]]"
},
"$:/plugins/felixhayashi/tiddlymap/graph/views/Graph search": {
"title": "$:/plugins/felixhayashi/tiddlymap/graph/views/Graph search",
"config.refresh-triggers": "$:/temp/search",
"config.neighbourhood_scope": "1",
"config.physics_mode": "true"
}
}
}</pre>
</div>
<div created="20200401113146825" creator="M0" modified="20210923192348544" modifier="M0" title="$:/plugins/felixhayashi/tiddlymap/config/sys/user" type="application/json">
<pre>{
"field.nodeLabel": "caption",
"field.nodeIcon": "icon",
"field.nodeInfo": "title",
"field.viewMarker": "isview",
"liveTab.fallbackView": "Live View",
"suppressedDialogs.dublicateIdInfo": true,
"edgeClickBehaviour": "manager",
"debug": "false",
"notifications": "true",
"popups.enabled": "true",
"popups.delay": "600",
"popups.width": "240px",
"popups.height": "140px",
"jsonIndentation": "1",
"alwaysAddNodeIdToViewFilter": "true",
"editNodeOnCreate": "false",
"singleClickMode": "false",
"nodeFilterNeighbours": "false",
"editorMenuBar.showNeighScopeButton": "true",
"editorMenuBar.showRasterMenuButton": "false",
"editorMenuBar.showScreenshotButton": "false",
"defaultView": "Live View",
"raster": "10"
}</pre>
</div>
<div created="20150627125908877" modified="20161225013508679" tags="" title="$:/plugins/felixhayashi/tiddlymap/config/vis/user" type="application/json">
<pre>{"edges":{"color":{"color":"rgba(132,132,132,0)","inherit":"both","highlight":"rgba(108,132,72,0)","opacity":1,"hover":"rgba(132,132,132,0)"},"arrows":{"to":true,"middle":{"enabled":false},"from":{"enabled":false}},"font":{"background":"rgba(255,51,219,1)","strokeWidth":26,"face":"verdana"}},"nodes":{"font":{"size":15,"color":"#FFFFFF"},"color":{"background":"rgba(212,155,221,1)","border":"rgba(92,255,88,1)"},"borderWidth":0,"borderWidthSelected":0},"physics":{"forceAtlas2Based":{"springLength":130,"centralGravity":0.005,"gravitationalConstant":0,"springConstant":0}}}</pre>
</div>
<div description="Automatically assigned to an edge that does not have a type assigned" modified="20210722082324364" modifier="M0" show-label="false" style="{&quot;color&quot;:{&quot;opacity&quot;:0},&quot;arrows&quot;:{&quot;to&quot;:{&quot;enabled&quot;:false}}}" title="$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tmap:unknown">
<pre></pre>
</div>
<div created="20200401194121025" description="A link that is contained in the tiddler's body pointing to another resource." label="links to" modified="20210722081656894" modifier="M0" show-label="false" style="{&quot;color&quot;:{&quot;opacity&quot;:0},&quot;dashes&quot;:false,&quot;smooth&quot;:{&quot;enabled&quot;:false},&quot;arrows&quot;:{&quot;to&quot;:{&quot;enabled&quot;:false}},&quot;width&quot;:0,&quot;font&quot;:{&quot;strokeWidth&quot;:0,&quot;size&quot;:0}}" title="$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tw-body:link">
<pre></pre>
</div>
<div created="20210719050521122" description="Contained in a list of this tiddler" label="listed in" modified="20210719053421079" show-label="false" style="{&quot;color&quot;:{&quot;opacity&quot;:0},&quot;dashes&quot;:false,&quot;arrows&quot;:{&quot;to&quot;:{&quot;enabled&quot;:false}},&quot;smooth&quot;:{&quot;enabled&quot;:false},&quot;font&quot;:{&quot;size&quot;:0,&quot;strokeWidth&quot;:0},&quot;width&quot;:0}" title="$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tw-list:list">
<pre></pre>
</div>
<div created="20210719050511081" description="A tag that refers to a tiddler of the same name." label="tagged with" modified="20210725041813319" show-label="false" style="{&quot;arrows&quot;:{&quot;to&quot;:{&quot;enabled&quot;:false},&quot;from&quot;:true},&quot;shadow&quot;:{&quot;enabled&quot;:false},&quot;font&quot;:{&quot;strokeColor&quot;:&quot;rgba(255,254,0,1)&quot;,&quot;size&quot;:0,&quot;strokeWidth&quot;:25,&quot;align&quot;:&quot;bottom&quot;,&quot;background&quot;:&quot;rgba(92,255,97,1)&quot;},&quot;color&quot;:{&quot;color&quot;:&quot;rgba(255,247,88,1)&quot;,&quot;opacity&quot;:0.2,&quot;highlight&quot;:&quot;rgba(255,248,32,1)&quot;,&quot;hover&quot;:&quot;rgba(255,252,18,1)&quot;,&quot;inherit&quot;:true},&quot;width&quot;:10,&quot;smooth&quot;:{&quot;type&quot;:&quot;dynamic&quot;,&quot;roundness&quot;:0.65}}" title="$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tw-list:tags">
<pre></pre>
</div>
<div created="20210722065058284" modified="20210724044738406" modifier="M0" priority="1" scope="[caption[Concepto]]" style="{&quot;shape&quot;:&quot;circle&quot;,&quot;font&quot;:{&quot;color&quot;:&quot;rgba(0,0,0,1)&quot;,&quot;size&quot;:50},&quot;color&quot;:{&quot;border&quot;:&quot;rgba(255,237,17,1)&quot;,&quot;background&quot;:&quot;rgba(255,241,5,1)&quot;},&quot;size&quot;:131,&quot;borderWidth&quot;:20,&quot;borderWidthSelected&quot;:20}" title="$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes/Concepto">
<pre></pre>
</div>
<div created="20210722074758717" modified="20210724130452313" modifier="M0" priority="1" scope="[tag[Copincha/Concepto]]" style="{&quot;color&quot;:{&quot;border&quot;:&quot;rgba(255,252,4,1)&quot;,&quot;background&quot;:&quot;rgba(250,255,18,1)&quot;},&quot;font&quot;:{&quot;size&quot;:30},&quot;shape&quot;:&quot;dot&quot;,&quot;size&quot;:40,&quot;borderWidth&quot;:5,&quot;borderWidthSelected&quot;:5}" title="$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes/Concepto-Mapa">
<pre></pre>
</div>
<div created="20210720190419562" modified="20210724044413754" modifier="M0" priority="1" scope=" [caption[Encuentros]] " style="{&quot;color&quot;:{&quot;background&quot;:&quot;rgba(215,252,10,1)&quot;,&quot;border&quot;:&quot;rgba(219,255,11,1)&quot;},&quot;size&quot;:53,&quot;shapeProperties&quot;:{&quot;borderDashes&quot;:false},&quot;shape&quot;:&quot;circle&quot;,&quot;font&quot;:{&quot;size&quot;:40,&quot;color&quot;:&quot;rgba(0,0,0,1)&quot;},&quot;borderWidth&quot;:11,&quot;borderWidthSelected&quot;:11}" title="$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes/Encuentros">
<pre></pre>
</div>
<div created="20210724021532941" modified="20210724125224145" modifier="M0" priority="1" scope="[tag[Cafe Reparador]] [tag[Cafe Sorpresa]] [tag[Cafe Viaje en Casa]]" style="{&quot;color&quot;:{&quot;border&quot;:&quot;rgba(222,255,16,1)&quot;,&quot;background&quot;:&quot;rgba(232,255,9,1)&quot;},&quot;shape&quot;:&quot;dot&quot;,&quot;size&quot;:25,&quot;font&quot;:{&quot;size&quot;:30}}" title="$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes/Encuentros-Cafe">
<pre></pre>
</div>
<div created="20210723235721651" modified="20210724130507497" modifier="M0" priority="1" scope="[tag[Encuentros]]" style="{&quot;color&quot;:{&quot;border&quot;:&quot;rgba(221,255,9,1)&quot;,&quot;background&quot;:&quot;rgba(235,255,10,1)&quot;},&quot;borderWidth&quot;:5,&quot;borderWidthSelected&quot;:5,&quot;shape&quot;:&quot;dot&quot;,&quot;font&quot;:{&quot;size&quot;:30},&quot;size&quot;:40}" title="$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes/Encuentros-Mapa">
<pre></pre>
</div>
<div created="20210722083128201" modified="20210724044648780" modifier="M0" priority="1" scope="[caption[Proyectos]]" style="{&quot;color&quot;:{&quot;border&quot;:&quot;rgba(255,200,13,1)&quot;,&quot;background&quot;:&quot;rgba(255,197,6,1)&quot;},&quot;shape&quot;:&quot;circle&quot;,&quot;font&quot;:{&quot;size&quot;:45},&quot;borderWidth&quot;:20,&quot;borderWidthSelected&quot;:20}" title="$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes/Proyectos">
<pre></pre>
</div>
<div created="20210724005459815" description="" modified="20210724130524472" modifier="M0" priority="1" scope="[tag[Project]]" style="{&quot;color&quot;:{&quot;border&quot;:&quot;rgba(255,206,8,1)&quot;,&quot;background&quot;:&quot;rgba(255,214,8,1)&quot;},&quot;shape&quot;:&quot;dot&quot;,&quot;size&quot;:40,&quot;font&quot;:{&quot;size&quot;:30}}" title="$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes/Proyectos-Mapa">
<pre></pre>
</div>
<div created="20210724023507982" description="" modified="20210724125150513" modifier="M0" priority="1" scope="[tag[SubProject]]" style="{&quot;color&quot;:{&quot;border&quot;:&quot;rgba(255,204,8,1)&quot;,&quot;background&quot;:&quot;rgba(255,199,10,1)&quot;},&quot;shape&quot;:&quot;dot&quot;,&quot;font&quot;:{&quot;color&quot;:&quot;rgba(0,0,0,1)&quot;,&quot;size&quot;:30},&quot;size&quot;:25}" title="$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes/Proyectos-Sub">
<pre></pre>
</div>
<div description="The style is applied to the node that you marked as central topic in a map." modified="20210722060551017" modifier="M0" priority="1" style="{&quot;font&quot;:{&quot;size&quot;:58,&quot;color&quot;:&quot;rgba(0,0,0,1)&quot;},&quot;shape&quot;:&quot;star&quot;}" title="$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes/tmap:central-topic">
<pre></pre>
</div>
<div description="Neighbours are all nodes that are not part of the original set of nodes (&quot;matches&quot;) but are connected (either outgoing or incoming) to a node of the original set." modified="20210724125023169" modifier="M0" priority="1" style="{&quot;color&quot;:{&quot;border&quot;:&quot;rgba(141,252,98,1)&quot;},&quot;shape&quot;:&quot;dot&quot;,&quot;size&quot;:21,&quot;font&quot;:{&quot;size&quot;:25}}" title="$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes/tmap:neighbour">
<pre></pre>
</div>
<div id="8f6091f1-3907-475e-8153-28c3c6ab3164" isview="true" title="$:/plugins/felixhayashi/tiddlymap/graph/views/Comunidad">
<pre></pre>
</div>
<div filter="-[prefix[_]] -[[tw-body:link]] -[[tw-list:tags]] -[[tw-list:list]]" title="$:/plugins/felixhayashi/tiddlymap/graph/views/Comunidad/filter/edges">
<pre></pre>
</div>
<div filter="-[prefix[_]] -[[tw-body:link]] -[[tw-list:tags]] -[[tw-list:list]]" title="$:/plugins/felixhayashi/tiddlymap/graph/views/Default/filter/edges">
<pre></pre>
</div>
<div filter=" [field:tmap.id[1b980021-e833-40f6-bcd0-316d78f4ca6c]] [field:tmap.id[80b14957-7be3-4aac-b46e-bf28c4a86d9a]]" title="$:/plugins/felixhayashi/tiddlymap/graph/views/Default/filter/nodes">
<pre></pre>
</div>
<div title="$:/plugins/felixhayashi/tiddlymap/graph/views/Default/map">
<pre>{
"80b14957-7be3-4aac-b46e-bf28c4a86d9a": {
"x": 0,
"y": 1
},
"1b980021-e833-40f6-bcd0-316d78f4ca6c": {
"x": 0,
"y": 1
}
}</pre>
</div>
<div config.central-topic="fafb88fc-9338-411f-9bfc-2c7d0c0b136f" config.neighbourhood_scope="" config.physics_mode="true" config.refresh-triggers="$:/temp/tmap/currentTiddler" config.vis="{&quot;physics&quot;:{&quot;forceAtlas2Based&quot;:{&quot;springConstant&quot;:0.09,&quot;gravitationalConstant&quot;:-187,&quot;springLength&quot;:245}},&quot;edges&quot;:{&quot;font&quot;:{&quot;align&quot;:&quot;bottom&quot;,&quot;strokeWidth&quot;:40,&quot;background&quot;:&quot;rgba(150,255,110,0)&quot;},&quot;color&quot;:{&quot;color&quot;:&quot;rgba(255,255,255,0)&quot;,&quot;highlight&quot;:&quot;rgba(132,132,132,0)&quot;,&quot;hover&quot;:&quot;rgba(132,132,132,0)&quot;,&quot;opacity&quot;:0},&quot;smooth&quot;:{&quot;type&quot;:&quot;dynamic&quot;,&quot;roundness&quot;:0.2},&quot;width&quot;:6},&quot;nodes&quot;:{&quot;size&quot;:143,&quot;font&quot;:{&quot;size&quot;:25,&quot;color&quot;:&quot;rgba(0,0,0,1)&quot;},&quot;color&quot;:{&quot;background&quot;:&quot;rgba(255,255,255,0)&quot;,&quot;border&quot;:&quot;rgba(255,249,0,1)&quot;},&quot;shape&quot;:&quot;circle&quot;,&quot;shapeProperties&quot;:{&quot;borderDashes&quot;:false}},&quot;manipulation&quot;:{&quot;initiallyActive&quot;:false}}" created="20150331114808577" creator="M0" isview="true" modified="20210728113756415" modifier="M0" title="$:/plugins/felixhayashi/tiddlymap/graph/views/Live View" type="text/vnd.tiddlywiki">
<pre></pre>
</div>
<div filter="-[prefix[_]]" title="$:/plugins/felixhayashi/tiddlymap/graph/views/Live View/filter/edges">
<pre></pre>
</div>
<div filter="[tag[Copincha/Concepto]] [tag[Encuentros]] [tag[Contenidos]] [tag[Copincha]] [caption[Concepto]] [caption[Encuentros]] [caption[Proyectos]] [tag[Project]] [tag[SubProject]] [tag[Cafe Sorpresa]] [tag[Cafe Reparador]] [tag[Cafe Viaje en Casa]]" modified="20210720202424993" title="$:/plugins/felixhayashi/tiddlymap/graph/views/Live View/filter/nodes">
<pre></pre>
</div>
<div title="$:/plugins/felixhayashi/tiddlymap/graph/views/Live View/map">
<pre>{}</pre>
</div>
<div caption="Mapa" created="20210722044510004" creator="M0" list-after="sidebar/contenidos" modified="20210925205552445" modifier="M0" tags="" title="$:/plugins/felixhayashi/tiddlymap/hook/editor">
<pre>\define width() calc(100% - 15px)
&lt;div class="tmap-mobile-editor"&gt;
&lt;/div&gt;
&lt;div class="tmap-desktop-editor"&gt;
&lt;$tiddlymap
class="tmap-sidebar-map-editor"
editor="advanced"
object-id="main_editor"
click-to-use="false"&gt;
&lt;/$tiddlymap&gt;
&lt;/div&gt;</pre>
</div>
<div created="20210923184054723" modified="20210923184141076" title="$:/plugins/felixhayashi/tiddlymap/misc/defaultViewHolder">
<pre>Live View</pre>
</div>
<div created="20210722030303855" modified="20210722030358930" title="$:/plugins/felixhayashi/tiddlymap/misc/meta" type="application/json">
<pre>{
"originalVersion": "0.17.8+10010",
"dataStructureState": "0.11.0",
"showWelcomeMessage": false
}</pre>
</div>
<div author="Felix Küppers" core-version="&gt;=5.1.5" dependents="" description="TopStoryView Always scroll navigated tiddlers to the top" list="Configuration License Readme" plugin-type="plugin" released="" source="https://github.com/felixhayashi/TW5-TopStoryView" title="$:/plugins/felixhayashi/topstoryview" type="application/json" version="0.2.0">
<pre>{
"tiddlers": {
"$:/plugins/felixhayashi/topstoryview/config.js": {
"title": "$:/plugins/felixhayashi/topstoryview/config.js",
"text": "/*\\\n\ntitle: $:/plugins/felixhayashi/topstoryview/config.js\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n(function(){\"use strict\";exports.config={classNames:{storyRiver:\"tc-story-river\",backDrop:\"story-backdrop\",tiddlerFrame:\"tc-tiddler-frame\",tiddlerTitle:\"tc-title\"},references:{userConfig:\"$:/config/topStoryView\",focussedTiddlerStore:\"$:/temp/focussedTiddler\",refreshTrigger:\"$:/temp/focussedTiddler/refresh\"},checkbackTime:$tw.utils.getAnimationDuration()}})();",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/topstoryview/layout": {
"text": "html .tc-story-river:after {\n content: \"\";\n display: block; }\n",
"title": "$:/plugins/felixhayashi/topstoryview/layout",
"type": "text/vnd.tiddlywiki",
"tags": [
"$:/tags/Stylesheet"
]
},
"$:/plugins/felixhayashi/topstoryview/Configuration": {
"title": "$:/plugins/felixhayashi/topstoryview/Configuration",
"text": "Please see the [[GitHub page|https://github.com/felixhayashi/TW5-TopStoryView]] for more information on the options.\n\nSave and reload the wiki to activate changes.\n\n&lt;table&gt;\n &lt;tr&gt;\n &lt;th align=\"left\"&gt;Scroll offset:&lt;/th&gt;\n &lt;td&gt;&lt;$edit-text tiddler=\"$:/config/topStoryView\" field=\"scroll-offset\" tag=\"input\" default=\"150px\" /&gt;&lt;/td&gt;\n &lt;/tr&gt;\n&lt;/table&gt;"
},
"$:/plugins/felixhayashi/topstoryview/License": {
"title": "$:/plugins/felixhayashi/topstoryview/License",
"text": "This code is released under the BSD license. For the exact terms visit:\n\nhttps://github.com/felixhayashi/TW5-TopStoryView/blob/master/LICENSE"
},
"$:/plugins/felixhayashi/topstoryview/Readme": {
"title": "$:/plugins/felixhayashi/topstoryview/Readme",
"text": "Please visit the [[GitHub page|https://github.com/felixhayashi/TW5-TopStoryView]] for more information."
},
"$:/plugins/felixhayashi/topstoryview/top.js": {
"title": "$:/plugins/felixhayashi/topstoryview/top.js",
"text": "/*\\\ntitle: $:/plugins/felixhayashi/topstoryview/top.js\ntype: application/javascript\nmodule-type: storyview\n\nViews the story as a linear sequence\n\n@preserve\n\n\\*/\n(function(){\"use strict\";var t=require(\"$:/plugins/felixhayashi/topstoryview/config.js\").config;var e=\"cubic-bezier(0.645, 0.045, 0.355, 1)\";var i=function(e){this.listWidget=e;this.pageScroller=new $tw.utils.PageScroller;this.pageScroller.scrollIntoView=this.scrollIntoView;this.pageScroller.storyRiverDomNode=document.getElementsByClassName(t.classNames.storyRiver)[0];var i=$tw.wiki.getTiddler(t.references.userConfig);var o=i?i.fields:{};$tw.hooks.addHook(\"th-opening-default-tiddlers-list\",this.hookOpenDefaultTiddlers);var r=parseInt(o[\"scroll-offset\"]);this.pageScroller.scrollOffset=isNaN(r)?71:r;this.recalculateBottomSpace()};i.prototype.refreshStart=function(t,e){};i.prototype.refreshEnd=function(t,e){};i.prototype.hookOpenDefaultTiddlers=function(t){return t};i.prototype.navigateTo=function(t){var e=this.listWidget.findListItem(0,t.title);if(e===undefined)return;var i=this.listWidget.children[e];var o=i.findFirstDomNode();if(!(o instanceof Element))return;this.pageScroller.scrollIntoView(o)};i.prototype.insert=function(t){if(!t)return;var e=t.findFirstDomNode();if(!(e instanceof Element))return;this.startInsertAnimation(e,function(){this.recalculateBottomSpace()}.bind(this))};i.prototype.remove=function(t){if(!t)return;var e=t.findFirstDomNode();if(!(e instanceof Element)){t.removeChildDomNodes();return}var i=this.getLastFrame()===e;this.startRemoveAnimation(t,e,function(){t.removeChildDomNodes();this.recalculateBottomSpace();if(i){this.pageScroller.scrollIntoView(this.getLastFrame())}}.bind(this))};i.prototype.getLastFrame=function(){var t=this.listWidget.children[this.listWidget.children.length-1];return t?t.findFirstDomNode():null};i.prototype.recalculateBottomSpace=function(){var t=this.pageScroller.storyRiverDomNode;if(this.getLastFrame()){var e=this.getLastFrame().getBoundingClientRect();var i=window.innerHeight;if(e.height&lt;i){t.style[\"paddingBottom\"]=i-e.height+\"px\";return}}t.style[\"paddingBottom\"]=\"\"};i.prototype.scrollIntoView=function(t){if(this.preventNextScrollAttempt){this.preventNextScrollAttempt=false}if(!t)return;var e=$tw.utils.getAnimationDuration();this.cancelScroll();this.startTime=Date.now();var i=$tw.utils.getScrollPosition();var o=t.getBoundingClientRect(),r={left:o.left+i.x,top:o.top+i.y,width:o.width,height:o.height};var n=function(t,e,i,o){if(t&lt;=i){return t}else if(e&lt;o&amp;&amp;i&lt;t+e-o){return t+e-o}else if(i&lt;t){return t}else{return i}},s=n(r.left,r.width,i.x,window.innerWidth),a=r.top-this.scrollOffset;if(s!==i.x||a!==i.y){var l=this,c;c=function(){var t;if(e&lt;=0){t=1}else{t=(Date.now()-l.startTime)/e}if(t&gt;=1){l.cancelScroll();t=1}t=$tw.utils.slowInSlowOut(t);window.scrollTo(i.x+(s-i.x)*t,i.y+(a-i.y)*t);if(t&lt;1){l.idRequestFrame=l.requestAnimationFrame.call(window,c)}};c()}};i.prototype.startInsertAnimation=function(t,i){var o=$tw.utils.getAnimationDuration();var r=window.getComputedStyle(t),n=parseInt(r.marginBottom,10),s=parseInt(r.marginTop,10),a=t.offsetHeight+s;setTimeout(function(){$tw.utils.setStyle(t,[{transition:\"none\"},{marginBottom:\"\"}]);i()},o);$tw.utils.setStyle(t,[{transition:\"none\"},{marginBottom:-a+\"px\"},{opacity:\"0.0\"}]);$tw.utils.forceLayout(t);$tw.utils.setStyle(t,[{transition:\"opacity \"+o+\"ms \"+e+\", \"+\"margin-bottom \"+o+\"ms \"+e},{marginBottom:n+\"px\"},{opacity:\"1.0\"}])};i.prototype.startRemoveAnimation=function(t,i,o){var r=$tw.utils.getAnimationDuration();var n=i.offsetWidth,s=window.getComputedStyle(i),a=parseInt(s.marginBottom,10),l=parseInt(s.marginTop,10),c=i.offsetHeight+l;setTimeout(o,r);$tw.utils.setStyle(i,[{transition:\"none\"},{transform:\"translateX(0px)\"},{marginBottom:a+\"px\"},{opacity:\"1.0\"}]);$tw.utils.forceLayout(i);$tw.utils.setStyle(i,[{transition:$tw.utils.roundTripPropertyName(\"transform\")+\" \"+r+\"ms \"+e+\", \"+\"opacity \"+r+\"ms \"+e+\", \"+\"margin-bottom \"+r+\"ms \"+e},{transform:\"t
"type": "application/javascript",
"module-type": "storyview"
}
}
}</pre>
</div>
<div author="Felix Küppers" core-version="&gt;=5.0.0" dependents="" description="Visjs TiddlyWiki5 plugin for the vis.js library" list="readme" plugin-type="plugin" source="https://github.com/felixhayashi/TW5-Vis.js" title="$:/plugins/felixhayashi/vis" type="application/json" version="4.21.0-SNAPSHOT">
<pre>{
"tiddlers": {
"$:/plugins/felixhayashi/vis/img/network/acceptDeleteIcon.png": {
"title": "$:/plugins/felixhayashi/vis/img/network/acceptDeleteIcon.png",
"type": "image/png",
"text": "iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAACXBIWXMAAAsTAAALEwEAmpwYAAAKT2lDQ1BQaG90b3Nob3AgSUNDIHByb2ZpbGUAAHjanVNnVFPpFj333vRCS4iAlEtvUhUIIFJCi4AUkSYqIQkQSoghodkVUcERRUUEG8igiAOOjoCMFVEsDIoK2AfkIaKOg6OIisr74Xuja9a89+bN/rXXPues852zzwfACAyWSDNRNYAMqUIeEeCDx8TG4eQuQIEKJHAAEAizZCFz/SMBAPh+PDwrIsAHvgABeNMLCADATZvAMByH/w/qQplcAYCEAcB0kThLCIAUAEB6jkKmAEBGAYCdmCZTAKAEAGDLY2LjAFAtAGAnf+bTAICd+Jl7AQBblCEVAaCRACATZYhEAGg7AKzPVopFAFgwABRmS8Q5ANgtADBJV2ZIALC3AMDOEAuyAAgMADBRiIUpAAR7AGDIIyN4AISZABRG8lc88SuuEOcqAAB4mbI8uSQ5RYFbCC1xB1dXLh4ozkkXKxQ2YQJhmkAuwnmZGTKBNA/g88wAAKCRFRHgg/P9eM4Ors7ONo62Dl8t6r8G/yJiYuP+5c+rcEAAAOF0ftH+LC+zGoA7BoBt/qIl7gRoXgugdfeLZrIPQLUAoOnaV/Nw+H48PEWhkLnZ2eXk5NhKxEJbYcpXff5nwl/AV/1s+X48/Pf14L7iJIEyXYFHBPjgwsz0TKUcz5IJhGLc5o9H/LcL//wd0yLESWK5WCoU41EScY5EmozzMqUiiUKSKcUl0v9k4t8s+wM+3zUAsGo+AXuRLahdYwP2SycQWHTA4vcAAPK7b8HUKAgDgGiD4c93/+8//UegJQCAZkmScQAAXkQkLlTKsz/HCAAARKCBKrBBG/TBGCzABhzBBdzBC/xgNoRCJMTCQhBCCmSAHHJgKayCQiiGzbAdKmAv1EAdNMBRaIaTcA4uwlW4Dj1wD/phCJ7BKLyBCQRByAgTYSHaiAFiilgjjggXmYX4IcFIBBKLJCDJiBRRIkuRNUgxUopUIFVIHfI9cgI5h1xGupE7yAAygvyGvEcxlIGyUT3UDLVDuag3GoRGogvQZHQxmo8WoJvQcrQaPYw2oefQq2gP2o8+Q8cwwOgYBzPEbDAuxsNCsTgsCZNjy7EirAyrxhqwVqwDu4n1Y8+xdwQSgUXACTYEd0IgYR5BSFhMWE7YSKggHCQ0EdoJNwkDhFHCJyKTqEu0JroR+cQYYjIxh1hILCPWEo8TLxB7iEPENyQSiUMyJ7mQAkmxpFTSEtJG0m5SI+ksqZs0SBojk8naZGuyBzmULCAryIXkneTD5DPkG+Qh8lsKnWJAcaT4U+IoUspqShnlEOU05QZlmDJBVaOaUt2ooVQRNY9aQq2htlKvUYeoEzR1mjnNgxZJS6WtopXTGmgXaPdpr+h0uhHdlR5Ol9BX0svpR+iX6AP0dwwNhhWDx4hnKBmbGAcYZxl3GK+YTKYZ04sZx1QwNzHrmOeZD5lvVVgqtip8FZHKCpVKlSaVGyovVKmqpqreqgtV81XLVI+pXlN9rkZVM1PjqQnUlqtVqp1Q61MbU2epO6iHqmeob1Q/pH5Z/YkGWcNMw09DpFGgsV/jvMYgC2MZs3gsIWsNq4Z1gTXEJrHN2Xx2KruY/R27iz2qqaE5QzNKM1ezUvOUZj8H45hx+Jx0TgnnKKeX836K3hTvKeIpG6Y0TLkxZVxrqpaXllirSKtRq0frvTau7aedpr1Fu1n7gQ5Bx0onXCdHZ4/OBZ3nU9lT3acKpxZNPTr1ri6qa6UbobtEd79up+6Ynr5egJ5Mb6feeb3n+hx9L/1U/W36p/VHDFgGswwkBtsMzhg8xTVxbzwdL8fb8VFDXcNAQ6VhlWGX4YSRudE8o9VGjUYPjGnGXOMk423GbcajJgYmISZLTepN7ppSTbmmKaY7TDtMx83MzaLN1pk1mz0x1zLnm+eb15vft2BaeFostqi2uGVJsuRaplnutrxuhVo5WaVYVVpds0atna0l1rutu6cRp7lOk06rntZnw7Dxtsm2qbcZsOXYBtuutm22fWFnYhdnt8Wuw+6TvZN9un2N/T0HDYfZDqsdWh1+c7RyFDpWOt6azpzuP33F9JbpL2dYzxDP2DPjthPLKcRpnVOb00dnF2e5c4PziIuJS4LLLpc+Lpsbxt3IveRKdPVxXeF60vWdm7Obwu2o26/uNu5p7ofcn8w0nymeWTNz0MPIQ+BR5dE/C5+VMGvfrH5PQ0+BZ7XnIy9jL5FXrdewt6V3qvdh7xc+9j5yn+M+4zw33jLeWV/MN8C3yLfLT8Nvnl+F30N/I/9k/3r/0QCngCUBZwOJgUGBWwL7+Hp8Ib+OPzrbZfay2e1BjKC5QRVBj4KtguXBrSFoyOyQrSH355jOkc5pDoVQfujW0Adh5mGLw34MJ4WHhVeGP45wiFga0TGXNXfR3ENz30T6RJZE3ptnMU85ry1KNSo+qi5qPNo3ujS6P8YuZlnM1VidWElsSxw5LiquNm5svt/87fOH4p3iC+N7F5gvyF1weaHOwvSFpxapLhIsOpZATIhOOJTwQRAqqBaMJfITdyWOCnnCHcJnIi/RNtGI2ENcKh5O8kgqTXqS7JG8NXkkxTOlLOW5hCepkLxMDUzdmzqeFpp2IG0yPTq9MYOSkZBxQqohTZO2Z+pn5mZ2y6xlhbL+xW6Lty8elQfJa7OQrAVZLQq2QqboVFoo1yoHsmdlV2a/zYnKOZarnivN7cyzytuQN5zvn//tEsIS4ZK2pYZLVy0dWOa9rGo5sjxxedsK4xUFK4ZWBqw8uIq2Km3VT6vtV5eufr0mek1rgV7ByoLBtQFr6wtVCuWFfevc1+1dT1gvWd+1YfqGnRs+FYmKrhTbF5cVf9go3HjlG4dvyr+Z3JS0qavEuWTPZtJm6ebeLZ5bDpaql+aXDm4N2dq0Dd9WtO319kXbL5fNKNu7g7ZDuaO/PLi8ZafJzs07P1SkVPRU+lQ27tLdtWHX+G7R7ht7vPY07NXbW7z3/T7JvttVAVVN1WbVZftJ+7P3P66Jqun4lvttXa1ObXHtxwPSA/0HIw6217nU1R3SPVRSj9Yr60cOxx++/p3vdy0NNg1VjZzG4iNwRHnk6fcJ3/ceDTradox7rOEH0x92HWcdL2pCmvKaRptTmvtbYlu6T8w+0dbq3nr8R9sfD5w0PFl5SvNUyWna6YLTk2fyz4ydlZ19fi753GDborZ752PO32oPb++6EHTh0kX/i+c7vDvOXPK4dPKy2+UTV7hXmq86X23qdOo8/pPTT8e7nLuarrlca7nuer21e2b36RueN87d9L158Rb/1tWeOT3dvfN6b/fF9/XfFt1+cif9zsu72Xcn7q28T7xf9EDtQdlD3YfVP1v+3Njv3H9qwHeg89HcR/cGhYPP/pH1jw9DBY+Zj8uGDYbrnjg+OTniP3L96fynQ89kzyaeF/6i/suuFxYvfvjV69fO0ZjRoZfyl5O/bXyl/erA6xmv28bCxh6+yXgzMV70VvvtwXfcdx3vo98PT+R8IH8o/2j5sfVT0Kf7kxmTk/8EA5jz/GMzLdsAAEEOaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLy
},
"$:/plugins/felixhayashi/vis/img/network/addNodeIcon.png": {
"title": "$:/plugins/felixhayashi/vis/img/network/addNodeIcon.png",
"type": "image/png",
"text": "iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAACXBIWXMAAAsTAAALEwEAmpwYAAAKT2lDQ1BQaG90b3Nob3AgSUNDIHByb2ZpbGUAAHjanVNnVFPpFj333vRCS4iAlEtvUhUIIFJCi4AUkSYqIQkQSoghodkVUcERRUUEG8igiAOOjoCMFVEsDIoK2AfkIaKOg6OIisr74Xuja9a89+bN/rXXPues852zzwfACAyWSDNRNYAMqUIeEeCDx8TG4eQuQIEKJHAAEAizZCFz/SMBAPh+PDwrIsAHvgABeNMLCADATZvAMByH/w/qQplcAYCEAcB0kThLCIAUAEB6jkKmAEBGAYCdmCZTAKAEAGDLY2LjAFAtAGAnf+bTAICd+Jl7AQBblCEVAaCRACATZYhEAGg7AKzPVopFAFgwABRmS8Q5ANgtADBJV2ZIALC3AMDOEAuyAAgMADBRiIUpAAR7AGDIIyN4AISZABRG8lc88SuuEOcqAAB4mbI8uSQ5RYFbCC1xB1dXLh4ozkkXKxQ2YQJhmkAuwnmZGTKBNA/g88wAAKCRFRHgg/P9eM4Ors7ONo62Dl8t6r8G/yJiYuP+5c+rcEAAAOF0ftH+LC+zGoA7BoBt/qIl7gRoXgugdfeLZrIPQLUAoOnaV/Nw+H48PEWhkLnZ2eXk5NhKxEJbYcpXff5nwl/AV/1s+X48/Pf14L7iJIEyXYFHBPjgwsz0TKUcz5IJhGLc5o9H/LcL//wd0yLESWK5WCoU41EScY5EmozzMqUiiUKSKcUl0v9k4t8s+wM+3zUAsGo+AXuRLahdYwP2SycQWHTA4vcAAPK7b8HUKAgDgGiD4c93/+8//UegJQCAZkmScQAAXkQkLlTKsz/HCAAARKCBKrBBG/TBGCzABhzBBdzBC/xgNoRCJMTCQhBCCmSAHHJgKayCQiiGzbAdKmAv1EAdNMBRaIaTcA4uwlW4Dj1wD/phCJ7BKLyBCQRByAgTYSHaiAFiilgjjggXmYX4IcFIBBKLJCDJiBRRIkuRNUgxUopUIFVIHfI9cgI5h1xGupE7yAAygvyGvEcxlIGyUT3UDLVDuag3GoRGogvQZHQxmo8WoJvQcrQaPYw2oefQq2gP2o8+Q8cwwOgYBzPEbDAuxsNCsTgsCZNjy7EirAyrxhqwVqwDu4n1Y8+xdwQSgUXACTYEd0IgYR5BSFhMWE7YSKggHCQ0EdoJNwkDhFHCJyKTqEu0JroR+cQYYjIxh1hILCPWEo8TLxB7iEPENyQSiUMyJ7mQAkmxpFTSEtJG0m5SI+ksqZs0SBojk8naZGuyBzmULCAryIXkneTD5DPkG+Qh8lsKnWJAcaT4U+IoUspqShnlEOU05QZlmDJBVaOaUt2ooVQRNY9aQq2htlKvUYeoEzR1mjnNgxZJS6WtopXTGmgXaPdpr+h0uhHdlR5Ol9BX0svpR+iX6AP0dwwNhhWDx4hnKBmbGAcYZxl3GK+YTKYZ04sZx1QwNzHrmOeZD5lvVVgqtip8FZHKCpVKlSaVGyovVKmqpqreqgtV81XLVI+pXlN9rkZVM1PjqQnUlqtVqp1Q61MbU2epO6iHqmeob1Q/pH5Z/YkGWcNMw09DpFGgsV/jvMYgC2MZs3gsIWsNq4Z1gTXEJrHN2Xx2KruY/R27iz2qqaE5QzNKM1ezUvOUZj8H45hx+Jx0TgnnKKeX836K3hTvKeIpG6Y0TLkxZVxrqpaXllirSKtRq0frvTau7aedpr1Fu1n7gQ5Bx0onXCdHZ4/OBZ3nU9lT3acKpxZNPTr1ri6qa6UbobtEd79up+6Ynr5egJ5Mb6feeb3n+hx9L/1U/W36p/VHDFgGswwkBtsMzhg8xTVxbzwdL8fb8VFDXcNAQ6VhlWGX4YSRudE8o9VGjUYPjGnGXOMk423GbcajJgYmISZLTepN7ppSTbmmKaY7TDtMx83MzaLN1pk1mz0x1zLnm+eb15vft2BaeFostqi2uGVJsuRaplnutrxuhVo5WaVYVVpds0atna0l1rutu6cRp7lOk06rntZnw7Dxtsm2qbcZsOXYBtuutm22fWFnYhdnt8Wuw+6TvZN9un2N/T0HDYfZDqsdWh1+c7RyFDpWOt6azpzuP33F9JbpL2dYzxDP2DPjthPLKcRpnVOb00dnF2e5c4PziIuJS4LLLpc+Lpsbxt3IveRKdPVxXeF60vWdm7Obwu2o26/uNu5p7ofcn8w0nymeWTNz0MPIQ+BR5dE/C5+VMGvfrH5PQ0+BZ7XnIy9jL5FXrdewt6V3qvdh7xc+9j5yn+M+4zw33jLeWV/MN8C3yLfLT8Nvnl+F30N/I/9k/3r/0QCngCUBZwOJgUGBWwL7+Hp8Ib+OPzrbZfay2e1BjKC5QRVBj4KtguXBrSFoyOyQrSH355jOkc5pDoVQfujW0Adh5mGLw34MJ4WHhVeGP45wiFga0TGXNXfR3ENz30T6RJZE3ptnMU85ry1KNSo+qi5qPNo3ujS6P8YuZlnM1VidWElsSxw5LiquNm5svt/87fOH4p3iC+N7F5gvyF1weaHOwvSFpxapLhIsOpZATIhOOJTwQRAqqBaMJfITdyWOCnnCHcJnIi/RNtGI2ENcKh5O8kgqTXqS7JG8NXkkxTOlLOW5hCepkLxMDUzdmzqeFpp2IG0yPTq9MYOSkZBxQqohTZO2Z+pn5mZ2y6xlhbL+xW6Lty8elQfJa7OQrAVZLQq2QqboVFoo1yoHsmdlV2a/zYnKOZarnivN7cyzytuQN5zvn//tEsIS4ZK2pYZLVy0dWOa9rGo5sjxxedsK4xUFK4ZWBqw8uIq2Km3VT6vtV5eufr0mek1rgV7ByoLBtQFr6wtVCuWFfevc1+1dT1gvWd+1YfqGnRs+FYmKrhTbF5cVf9go3HjlG4dvyr+Z3JS0qavEuWTPZtJm6ebeLZ5bDpaql+aXDm4N2dq0Dd9WtO319kXbL5fNKNu7g7ZDuaO/PLi8ZafJzs07P1SkVPRU+lQ27tLdtWHX+G7R7ht7vPY07NXbW7z3/T7JvttVAVVN1WbVZftJ+7P3P66Jqun4lvttXa1ObXHtxwPSA/0HIw6217nU1R3SPVRSj9Yr60cOxx++/p3vdy0NNg1VjZzG4iNwRHnk6fcJ3/ceDTradox7rOEH0x92HWcdL2pCmvKaRptTmvtbYlu6T8w+0dbq3nr8R9sfD5w0PFl5SvNUyWna6YLTk2fyz4ydlZ19fi753GDborZ752PO32oPb++6EHTh0kX/i+c7vDvOXPK4dPKy2+UTV7hXmq86X23qdOo8/pPTT8e7nLuarrlca7nuer21e2b36RueN87d9L158Rb/1tWeOT3dvfN6b/fF9/XfFt1+cif9zsu72Xcn7q28T7xf9EDtQdlD3YfVP1v+3Njv3H9qwHeg89HcR/cGhYPP/pH1jw9DBY+Zj8uGDYbrnjg+OTniP3L96fynQ89kzyaeF/6i/suuFxYvfvjV69fO0ZjRoZfyl5O/bXyl/erA6xmv28bCxh6+yXgzMV70VvvtwXfcdx3vo98PT+R8IH8o/2j5sfVT0Kf7kxmTk/8EA5jz/GMzLdsAAEEOaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLy
},
"$:/plugins/felixhayashi/vis/img/network/backIcon.png": {
"title": "$:/plugins/felixhayashi/vis/img/network/backIcon.png",
"type": "image/png",
"text": "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QRVBj4KtguXBrSFoyOyQrSH355jOkc5pDoVQfujW0Adh5mGLw34MJ4WHhVeGP45wiFga0TGXNXfR3ENz30T6RJZE3ptnMU85ry1KNSo+qi5qPNo3ujS6P8YuZlnM1VidWElsSxw5LiquNm5svt/87fOH4p3iC+N7F5gvyF1weaHOwvSFpxapLhIsOpZATIhOOJTwQRAqqBaMJfITdyWOCnnCHcJnIi/RNtGI2ENcKh5O8kgqTXqS7JG8NXkkxTOlLOW5hCepkLxMDUzdmzqeFpp2IG0yPTq9MYOSkZBxQqohTZO2Z+pn5mZ2y6xlhbL+xW6Lty8elQfJa7OQrAVZLQq2QqboVFoo1yoHsmdlV2a/zYnKOZarnivN7cyzytuQN5zvn//tEsIS4ZK2pYZLVy0dWOa9rGo5sjxxedsK4xUFK4ZWBqw8uIq2Km3VT6vtV5eufr0mek1rgV7ByoLBtQFr6wtVCuWFfevc1+1dT1gvWd+1YfqGnRs+FYmKrhTbF5cVf9go3HjlG4dvyr+Z3JS0qavEuWTPZtJm6ebeLZ5bDpaql+aXDm4N2dq0Dd9WtO319kXbL5fNKNu7g7ZDuaO/PLi8ZafJzs07P1SkVPRU+lQ27tLdtWHX+G7R7ht7vPY07NXbW7z3/T7JvttVAVVN1WbVZftJ+7P3P66Jqun4lvttXa1ObXHtxwPSA/0HIw6217nU1R3SPVRSj9Yr60cOxx++/p3vdy0NNg1VjZzG4iNwRHnk6fcJ3/ceDTradox7rOEH0x92HWcdL2pCmvKaRptTmvtbYlu6T8w+0dbq3nr8R9sfD5w0PFl5SvNUyWna6YLTk2fyz4ydlZ19fi753GDborZ752PO32oPb++6EHTh0kX/i+c7vDvOXPK4dPKy2+UTV7hXmq86X23qdOo8/pPTT8e7nLuarrlca7nuer21e2b36RueN87d9L158Rb/1tWeOT3dvfN6b/fF9/XfFt1+cif9zsu72Xcn7q28T7xf9EDtQdlD3YfVP1v+3Njv3H9qwHeg89HcR/cGhYPP/pH1jw9DBY+Zj8uGDYbrnjg+OTniP3L96fynQ89kzyaeF/6i/suuFxYvfvjV69fO0ZjRoZfyl5O/bXyl/erA6xmv28bCxh6+yXgzMV70VvvtwXfcdx3vo98PT+R8IH8o/2j5sfVT0Kf7kxmTk/8EA5jz/GMzLdsAAEEOaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLy
},
"$:/plugins/felixhayashi/vis/img/network/connectIcon.png": {
"title": "$:/plugins/felixhayashi/vis/img/network/connectIcon.png",
"type": "image/png",
"text": "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QRVBj4KtguXBrSFoyOyQrSH355jOkc5pDoVQfujW0Adh5mGLw34MJ4WHhVeGP45wiFga0TGXNXfR3ENz30T6RJZE3ptnMU85ry1KNSo+qi5qPNo3ujS6P8YuZlnM1VidWElsSxw5LiquNm5svt/87fOH4p3iC+N7F5gvyF1weaHOwvSFpxapLhIsOpZATIhOOJTwQRAqqBaMJfITdyWOCnnCHcJnIi/RNtGI2ENcKh5O8kgqTXqS7JG8NXkkxTOlLOW5hCepkLxMDUzdmzqeFpp2IG0yPTq9MYOSkZBxQqohTZO2Z+pn5mZ2y6xlhbL+xW6Lty8elQfJa7OQrAVZLQq2QqboVFoo1yoHsmdlV2a/zYnKOZarnivN7cyzytuQN5zvn//tEsIS4ZK2pYZLVy0dWOa9rGo5sjxxedsK4xUFK4ZWBqw8uIq2Km3VT6vtV5eufr0mek1rgV7ByoLBtQFr6wtVCuWFfevc1+1dT1gvWd+1YfqGnRs+FYmKrhTbF5cVf9go3HjlG4dvyr+Z3JS0qavEuWTPZtJm6ebeLZ5bDpaql+aXDm4N2dq0Dd9WtO319kXbL5fNKNu7g7ZDuaO/PLi8ZafJzs07P1SkVPRU+lQ27tLdtWHX+G7R7ht7vPY07NXbW7z3/T7JvttVAVVN1WbVZftJ+7P3P66Jqun4lvttXa1ObXHtxwPSA/0HIw6217nU1R3SPVRSj9Yr60cOxx++/p3vdy0NNg1VjZzG4iNwRHnk6fcJ3/ceDTradox7rOEH0x92HWcdL2pCmvKaRptTmvtbYlu6T8w+0dbq3nr8R9sfD5w0PFl5SvNUyWna6YLTk2fyz4ydlZ19fi753GDborZ752PO32oPb++6EHTh0kX/i+c7vDvOXPK4dPKy2+UTV7hXmq86X23qdOo8/pPTT8e7nLuarrlca7nuer21e2b36RueN87d9L158Rb/1tWeOT3dvfN6b/fF9/XfFt1+cif9zsu72Xcn7q28T7xf9EDtQdlD3YfVP1v+3Njv3H9qwHeg89HcR/cGhYPP/pH1jw9DBY+Zj8uGDYbrnjg+OTniP3L96fynQ89kzyaeF/6i/suuFxYvfvjV69fO0ZjRoZfyl5O/bXyl/erA6xmv28bCxh6+yXgzMV70VvvtwXfcdx3vo98PT+R8IH8o/2j5sfVT0Kf7kxmTk/8EA5jz/GMzLdsAAEEOaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLy
},
"$:/plugins/felixhayashi/vis/img/network/cross.png": {
"title": "$:/plugins/felixhayashi/vis/img/network/cross.png",
"type": "image/png",
"text": "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QRVBj4KtguXBrSFoyOyQrSH355jOkc5pDoVQfujW0Adh5mGLw34MJ4WHhVeGP45wiFga0TGXNXfR3ENz30T6RJZE3ptnMU85ry1KNSo+qi5qPNo3ujS6P8YuZlnM1VidWElsSxw5LiquNm5svt/87fOH4p3iC+N7F5gvyF1weaHOwvSFpxapLhIsOpZATIhOOJTwQRAqqBaMJfITdyWOCnnCHcJnIi/RNtGI2ENcKh5O8kgqTXqS7JG8NXkkxTOlLOW5hCepkLxMDUzdmzqeFpp2IG0yPTq9MYOSkZBxQqohTZO2Z+pn5mZ2y6xlhbL+xW6Lty8elQfJa7OQrAVZLQq2QqboVFoo1yoHsmdlV2a/zYnKOZarnivN7cyzytuQN5zvn//tEsIS4ZK2pYZLVy0dWOa9rGo5sjxxedsK4xUFK4ZWBqw8uIq2Km3VT6vtV5eufr0mek1rgV7ByoLBtQFr6wtVCuWFfevc1+1dT1gvWd+1YfqGnRs+FYmKrhTbF5cVf9go3HjlG4dvyr+Z3JS0qavEuWTPZtJm6ebeLZ5bDpaql+aXDm4N2dq0Dd9WtO319kXbL5fNKNu7g7ZDuaO/PLi8ZafJzs07P1SkVPRU+lQ27tLdtWHX+G7R7ht7vPY07NXbW7z3/T7JvttVAVVN1WbVZftJ+7P3P66Jqun4lvttXa1ObXHtxwPSA/0HIw6217nU1R3SPVRSj9Yr60cOxx++/p3vdy0NNg1VjZzG4iNwRHnk6fcJ3/ceDTradox7rOEH0x92HWcdL2pCmvKaRptTmvtbYlu6T8w+0dbq3nr8R9sfD5w0PFl5SvNUyWna6YLTk2fyz4ydlZ19fi753GDborZ752PO32oPb++6EHTh0kX/i+c7vDvOXPK4dPKy2+UTV7hXmq86X23qdOo8/pPTT8e7nLuarrlca7nuer21e2b36RueN87d9L158Rb/1tWeOT3dvfN6b/fF9/XfFt1+cif9zsu72Xcn7q28T7xf9EDtQdlD3YfVP1v+3Njv3H9qwHeg89HcR/cGhYPP/pH1jw9DBY+Zj8uGDYbrnjg+OTniP3L96fynQ89kzyaeF/6i/suuFxYvfvjV69fO0ZjRoZfyl5O/bXyl/erA6xmv28bCxh6+yXgzMV70VvvtwXfcdx3vo98PT+R8IH8o/2j5sfVT0Kf7kxmTk/8EA5jz/GMzLdsAADvGaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLy
},
"$:/plugins/felixhayashi/vis/img/network/cross2.png": {
"title": "$:/plugins/felixhayashi/vis/img/network/cross2.png",
"type": "image/png",
"text": "iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAACXBIWXMAAAsTAAALEwEAmpwYAAAKT2lDQ1BQaG90b3Nob3AgSUNDIHByb2ZpbGUAAHjanVNnVFPpFj333vRCS4iAlEtvUhUIIFJCi4AUkSYqIQkQSoghodkVUcERRUUEG8igiAOOjoCMFVEsDIoK2AfkIaKOg6OIisr74Xuja9a89+bN/rXXPues852zzwfACAyWSDNRNYAMqUIeEeCDx8TG4eQuQIEKJHAAEAizZCFz/SMBAPh+PDwrIsAHvgABeNMLCADATZvAMByH/w/qQplcAYCEAcB0kThLCIAUAEB6jkKmAEBGAYCdmCZTAKAEAGDLY2LjAFAtAGAnf+bTAICd+Jl7AQBblCEVAaCRACATZYhEAGg7AKzPVopFAFgwABRmS8Q5ANgtADBJV2ZIALC3AMDOEAuyAAgMADBRiIUpAAR7AGDIIyN4AISZABRG8lc88SuuEOcqAAB4mbI8uSQ5RYFbCC1xB1dXLh4ozkkXKxQ2YQJhmkAuwnmZGTKBNA/g88wAAKCRFRHgg/P9eM4Ors7ONo62Dl8t6r8G/yJiYuP+5c+rcEAAAOF0ftH+LC+zGoA7BoBt/qIl7gRoXgugdfeLZrIPQLUAoOnaV/Nw+H48PEWhkLnZ2eXk5NhKxEJbYcpXff5nwl/AV/1s+X48/Pf14L7iJIEyXYFHBPjgwsz0TKUcz5IJhGLc5o9H/LcL//wd0yLESWK5WCoU41EScY5EmozzMqUiiUKSKcUl0v9k4t8s+wM+3zUAsGo+AXuRLahdYwP2SycQWHTA4vcAAPK7b8HUKAgDgGiD4c93/+8//UegJQCAZkmScQAAXkQkLlTKsz/HCAAARKCBKrBBG/TBGCzABhzBBdzBC/xgNoRCJMTCQhBCCmSAHHJgKayCQiiGzbAdKmAv1EAdNMBRaIaTcA4uwlW4Dj1wD/phCJ7BKLyBCQRByAgTYSHaiAFiilgjjggXmYX4IcFIBBKLJCDJiBRRIkuRNUgxUopUIFVIHfI9cgI5h1xGupE7yAAygvyGvEcxlIGyUT3UDLVDuag3GoRGogvQZHQxmo8WoJvQcrQaPYw2oefQq2gP2o8+Q8cwwOgYBzPEbDAuxsNCsTgsCZNjy7EirAyrxhqwVqwDu4n1Y8+xdwQSgUXACTYEd0IgYR5BSFhMWE7YSKggHCQ0EdoJNwkDhFHCJyKTqEu0JroR+cQYYjIxh1hILCPWEo8TLxB7iEPENyQSiUMyJ7mQAkmxpFTSEtJG0m5SI+ksqZs0SBojk8naZGuyBzmULCAryIXkneTD5DPkG+Qh8lsKnWJAcaT4U+IoUspqShnlEOU05QZlmDJBVaOaUt2ooVQRNY9aQq2htlKvUYeoEzR1mjnNgxZJS6WtopXTGmgXaPdpr+h0uhHdlR5Ol9BX0svpR+iX6AP0dwwNhhWDx4hnKBmbGAcYZxl3GK+YTKYZ04sZx1QwNzHrmOeZD5lvVVgqtip8FZHKCpVKlSaVGyovVKmqpqreqgtV81XLVI+pXlN9rkZVM1PjqQnUlqtVqp1Q61MbU2epO6iHqmeob1Q/pH5Z/YkGWcNMw09DpFGgsV/jvMYgC2MZs3gsIWsNq4Z1gTXEJrHN2Xx2KruY/R27iz2qqaE5QzNKM1ezUvOUZj8H45hx+Jx0TgnnKKeX836K3hTvKeIpG6Y0TLkxZVxrqpaXllirSKtRq0frvTau7aedpr1Fu1n7gQ5Bx0onXCdHZ4/OBZ3nU9lT3acKpxZNPTr1ri6qa6UbobtEd79up+6Ynr5egJ5Mb6feeb3n+hx9L/1U/W36p/VHDFgGswwkBtsMzhg8xTVxbzwdL8fb8VFDXcNAQ6VhlWGX4YSRudE8o9VGjUYPjGnGXOMk423GbcajJgYmISZLTepN7ppSTbmmKaY7TDtMx83MzaLN1pk1mz0x1zLnm+eb15vft2BaeFostqi2uGVJsuRaplnutrxuhVo5WaVYVVpds0atna0l1rutu6cRp7lOk06rntZnw7Dxtsm2qbcZsOXYBtuutm22fWFnYhdnt8Wuw+6TvZN9un2N/T0HDYfZDqsdWh1+c7RyFDpWOt6azpzuP33F9JbpL2dYzxDP2DPjthPLKcRpnVOb00dnF2e5c4PziIuJS4LLLpc+Lpsbxt3IveRKdPVxXeF60vWdm7Obwu2o26/uNu5p7ofcn8w0nymeWTNz0MPIQ+BR5dE/C5+VMGvfrH5PQ0+BZ7XnIy9jL5FXrdewt6V3qvdh7xc+9j5yn+M+4zw33jLeWV/MN8C3yLfLT8Nvnl+F30N/I/9k/3r/0QCngCUBZwOJgUGBWwL7+Hp8Ib+OPzrbZfay2e1BjKC5QRVBj4KtguXBrSFoyOyQrSH355jOkc5pDoVQfujW0Adh5mGLw34MJ4WHhVeGP45wiFga0TGXNXfR3ENz30T6RJZE3ptnMU85ry1KNSo+qi5qPNo3ujS6P8YuZlnM1VidWElsSxw5LiquNm5svt/87fOH4p3iC+N7F5gvyF1weaHOwvSFpxapLhIsOpZATIhOOJTwQRAqqBaMJfITdyWOCnnCHcJnIi/RNtGI2ENcKh5O8kgqTXqS7JG8NXkkxTOlLOW5hCepkLxMDUzdmzqeFpp2IG0yPTq9MYOSkZBxQqohTZO2Z+pn5mZ2y6xlhbL+xW6Lty8elQfJa7OQrAVZLQq2QqboVFoo1yoHsmdlV2a/zYnKOZarnivN7cyzytuQN5zvn//tEsIS4ZK2pYZLVy0dWOa9rGo5sjxxedsK4xUFK4ZWBqw8uIq2Km3VT6vtV5eufr0mek1rgV7ByoLBtQFr6wtVCuWFfevc1+1dT1gvWd+1YfqGnRs+FYmKrhTbF5cVf9go3HjlG4dvyr+Z3JS0qavEuWTPZtJm6ebeLZ5bDpaql+aXDm4N2dq0Dd9WtO319kXbL5fNKNu7g7ZDuaO/PLi8ZafJzs07P1SkVPRU+lQ27tLdtWHX+G7R7ht7vPY07NXbW7z3/T7JvttVAVVN1WbVZftJ+7P3P66Jqun4lvttXa1ObXHtxwPSA/0HIw6217nU1R3SPVRSj9Yr60cOxx++/p3vdy0NNg1VjZzG4iNwRHnk6fcJ3/ceDTradox7rOEH0x92HWcdL2pCmvKaRptTmvtbYlu6T8w+0dbq3nr8R9sfD5w0PFl5SvNUyWna6YLTk2fyz4ydlZ19fi753GDborZ752PO32oPb++6EHTh0kX/i+c7vDvOXPK4dPKy2+UTV7hXmq86X23qdOo8/pPTT8e7nLuarrlca7nuer21e2b36RueN87d9L158Rb/1tWeOT3dvfN6b/fF9/XfFt1+cif9zsu72Xcn7q28T7xf9EDtQdlD3YfVP1v+3Njv3H9qwHeg89HcR/cGhYPP/pH1jw9DBY+Zj8uGDYbrnjg+OTniP3L96fynQ89kzyaeF/6i/suuFxYvfvjV69fO0ZjRoZfyl5O/bXyl/erA6xmv28bCxh6+yXgzMV70VvvtwXfcdx3vo98PT+R8IH8o/2j5sfVT0Kf7kxmTk/8EA5jz/GMzLdsAADoRaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLy
},
"$:/plugins/felixhayashi/vis/img/network/deleteIcon.png": {
"title": "$:/plugins/felixhayashi/vis/img/network/deleteIcon.png",
"type": "image/png",
"text": "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QRVBj4KtguXBrSFoyOyQrSH355jOkc5pDoVQfujW0Adh5mGLw34MJ4WHhVeGP45wiFga0TGXNXfR3ENz30T6RJZE3ptnMU85ry1KNSo+qi5qPNo3ujS6P8YuZlnM1VidWElsSxw5LiquNm5svt/87fOH4p3iC+N7F5gvyF1weaHOwvSFpxapLhIsOpZATIhOOJTwQRAqqBaMJfITdyWOCnnCHcJnIi/RNtGI2ENcKh5O8kgqTXqS7JG8NXkkxTOlLOW5hCepkLxMDUzdmzqeFpp2IG0yPTq9MYOSkZBxQqohTZO2Z+pn5mZ2y6xlhbL+xW6Lty8elQfJa7OQrAVZLQq2QqboVFoo1yoHsmdlV2a/zYnKOZarnivN7cyzytuQN5zvn//tEsIS4ZK2pYZLVy0dWOa9rGo5sjxxedsK4xUFK4ZWBqw8uIq2Km3VT6vtV5eufr0mek1rgV7ByoLBtQFr6wtVCuWFfevc1+1dT1gvWd+1YfqGnRs+FYmKrhTbF5cVf9go3HjlG4dvyr+Z3JS0qavEuWTPZtJm6ebeLZ5bDpaql+aXDm4N2dq0Dd9WtO319kXbL5fNKNu7g7ZDuaO/PLi8ZafJzs07P1SkVPRU+lQ27tLdtWHX+G7R7ht7vPY07NXbW7z3/T7JvttVAVVN1WbVZftJ+7P3P66Jqun4lvttXa1ObXHtxwPSA/0HIw6217nU1R3SPVRSj9Yr60cOxx++/p3vdy0NNg1VjZzG4iNwRHnk6fcJ3/ceDTradox7rOEH0x92HWcdL2pCmvKaRptTmvtbYlu6T8w+0dbq3nr8R9sfD5w0PFl5SvNUyWna6YLTk2fyz4ydlZ19fi753GDborZ752PO32oPb++6EHTh0kX/i+c7vDvOXPK4dPKy2+UTV7hXmq86X23qdOo8/pPTT8e7nLuarrlca7nuer21e2b36RueN87d9L158Rb/1tWeOT3dvfN6b/fF9/XfFt1+cif9zsu72Xcn7q28T7xf9EDtQdlD3YfVP1v+3Njv3H9qwHeg89HcR/cGhYPP/pH1jw9DBY+Zj8uGDYbrnjg+OTniP3L96fynQ89kzyaeF/6i/suuFxYvfvjV69fO0ZjRoZfyl5O/bXyl/erA6xmv28bCxh6+yXgzMV70VvvtwXfcdx3vo98PT+R8IH8o/2j5sfVT0Kf7kxmTk/8EA5jz/GMzLdsAAEEOaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLy
},
"$:/plugins/felixhayashi/vis/img/network/downArrow.png": {
"title": "$:/plugins/felixhayashi/vis/img/network/downArrow.png",
"type": "image/png",
"text": "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
},
"$:/plugins/felixhayashi/vis/img/network/editIcon.png": {
"title": "$:/plugins/felixhayashi/vis/img/network/editIcon.png",
"type": "image/png",
"text": "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QRVBj4KtguXBrSFoyOyQrSH355jOkc5pDoVQfujW0Adh5mGLw34MJ4WHhVeGP45wiFga0TGXNXfR3ENz30T6RJZE3ptnMU85ry1KNSo+qi5qPNo3ujS6P8YuZlnM1VidWElsSxw5LiquNm5svt/87fOH4p3iC+N7F5gvyF1weaHOwvSFpxapLhIsOpZATIhOOJTwQRAqqBaMJfITdyWOCnnCHcJnIi/RNtGI2ENcKh5O8kgqTXqS7JG8NXkkxTOlLOW5hCepkLxMDUzdmzqeFpp2IG0yPTq9MYOSkZBxQqohTZO2Z+pn5mZ2y6xlhbL+xW6Lty8elQfJa7OQrAVZLQq2QqboVFoo1yoHsmdlV2a/zYnKOZarnivN7cyzytuQN5zvn//tEsIS4ZK2pYZLVy0dWOa9rGo5sjxxedsK4xUFK4ZWBqw8uIq2Km3VT6vtV5eufr0mek1rgV7ByoLBtQFr6wtVCuWFfevc1+1dT1gvWd+1YfqGnRs+FYmKrhTbF5cVf9go3HjlG4dvyr+Z3JS0qavEuWTPZtJm6ebeLZ5bDpaql+aXDm4N2dq0Dd9WtO319kXbL5fNKNu7g7ZDuaO/PLi8ZafJzs07P1SkVPRU+lQ27tLdtWHX+G7R7ht7vPY07NXbW7z3/T7JvttVAVVN1WbVZftJ+7P3P66Jqun4lvttXa1ObXHtxwPSA/0HIw6217nU1R3SPVRSj9Yr60cOxx++/p3vdy0NNg1VjZzG4iNwRHnk6fcJ3/ceDTradox7rOEH0x92HWcdL2pCmvKaRptTmvtbYlu6T8w+0dbq3nr8R9sfD5w0PFl5SvNUyWna6YLTk2fyz4ydlZ19fi753GDborZ752PO32oPb++6EHTh0kX/i+c7vDvOXPK4dPKy2+UTV7hXmq86X23qdOo8/pPTT8e7nLuarrlca7nuer21e2b36RueN87d9L158Rb/1tWeOT3dvfN6b/fF9/XfFt1+cif9zsu72Xcn7q28T7xf9EDtQdlD3YfVP1v+3Njv3H9qwHeg89HcR/cGhYPP/pH1jw9DBY+Zj8uGDYbrnjg+OTniP3L96fynQ89kzyaeF/6i/suuFxYvfvjV69fO0ZjRoZfyl5O/bXyl/erA6xmv28bCxh6+yXgzMV70VvvtwXfcdx3vo98PT+R8IH8o/2j5sfVT0Kf7kxmTk/8EA5jz/GMzLdsAAEEOaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLy
},
"$:/plugins/felixhayashi/vis/img/network/leftArrow.png": {
"title": "$:/plugins/felixhayashi/vis/img/network/leftArrow.png",
"type": "image/png",
"text": "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
},
"$:/plugins/felixhayashi/vis/img/network/minus.png": {
"title": "$:/plugins/felixhayashi/vis/img/network/minus.png",
"type": "image/png",
"text": "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
},
"$:/plugins/felixhayashi/vis/img/network/plus.png": {
"title": "$:/plugins/felixhayashi/vis/img/network/plus.png",
"type": "image/png",
"text": "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
},
"$:/plugins/felixhayashi/vis/img/network/rightArrow.png": {
"title": "$:/plugins/felixhayashi/vis/img/network/rightArrow.png",
"type": "image/png",
"text": "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
},
"$:/plugins/felixhayashi/vis/img/network/upArrow.png": {
"title": "$:/plugins/felixhayashi/vis/img/network/upArrow.png",
"type": "image/png",
"text": "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
},
"$:/plugins/felixhayashi/vis/img/network/zoomExtends.png": {
"title": "$:/plugins/felixhayashi/vis/img/network/zoomExtends.png",
"type": "image/png",
"text": "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
},
"$:/plugins/felixhayashi/vis/img/timeline/delete.png": {
"title": "$:/plugins/felixhayashi/vis/img/timeline/delete.png",
"type": "image/png",
"text": "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAl2cEFnAAAAEAAAABAAXMatwwAAAVRJREFUOMt108FKG1EUBuBvYtxbRGwxiGBXeYCW0mVpDSKVvIJ0F/syJsFdn6GCkaZ9gro3G1u0ILQgheJKRUwXPQNnxvTAcGf+c/7/nPvfO8UEKLCFJg5w31aNqGtgG3c4xLSZyP0QgI8Tpu0quQhyPwTgsBnkAVYD3MM9DibVId5GbiW+B+VIt7hJha1IdhPWDayVsBvcFtHlDYZ4mgou8D7e+zXyN/TwuUhjbkSXLHIZ61KNvItxaYyayBDrZsf36DyGdilQE+ngA57UyD+xg08luTSxHvP/wRuRewDm7uV9WJ4hsBy5rczJJm7G/tcS6VesjxN2Hj4c5S10Qj2Tz/AunrOEr0VtB+Z6vMJ+zfkfcVQjnMbRvcRC5B/hBU4auMbVjBFHCRsFdp6wK1yXHjz37xItRuejfFQ1nwb4HXVfs4nPYsQv0p+oKlLgNf7gGP4Cw4ZUK7kMJVEAAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDExLTA1LTE2VDExOjM1OjIxKzAyOjAw9uVF5gAAACV0RVh0ZGF0ZTptb2RpZnkAMjAxMS0wNS0xNlQxMTozNToyMSswMjowMIe4/VoAAAAASUVORK5CYII="
},
"$:/plugins/felixhayashi/vis/readme": {
"title": "$:/plugins/felixhayashi/vis/readme",
"text": "! TW5-Vis.js\n\nA tiddlywiki plugin for the vis.js library.\n\n---\n\n! Notes on Copyright\n\n!! TiddlyWiki\n\nCreated by Jeremy Ruston, (jeremy [at] jermolene [dot] com)\n\nCopyright © Jeremy Ruston 2004-2007 Copyright © UnaMesa Association 2007-2014\n\nPublished under the following [licenses](https://github.com/Jermolene/TiddlyWiki5/tree/master/licenses):\n\n1. BSD 3-clause \"New\" or \"Revised\" License (including any right to adopt any future version of a license if permitted)\n2. Creative Commons Attribution 3.0 (including any right to adopt any future version of a license if permitted)\n\n!! The **vis.js** library\n\nCopyright (c) 2014 [Almende B.V.](https://github.com/almende/vis)\n\nPublished under the following licenses:\n\n1. Apache License Version 2.0, January 2004 http://www.apache.org/licenses/\n2. MIT License (MIT)\n"
},
"$:/plugins/felixhayashi/vis/vis.css": {
"title": "$:/plugins/felixhayashi/vis/vis.css",
"type": "text/vnd.tiddlywiki",
"tags": "$:/tags/Stylesheet",
"text": "\\rules except list\n\n\\define datauri(title)\n&lt;$macrocall $name=\"makedatauri\" type={{$title$!!type}} text={{$title$}}/&gt;\n\\end\n\n.vis .overlay{position:absolute;top:0;left:0;width:100%;height:100%;z-index:10}.vis-active{box-shadow:0 0 10px #86d5f8}.vis [class*=\"span\"]{min-height:0;width:auto}div.vis-configuration{position:relative;display:block;float:left;font-size:12px}div.vis-configuration-wrapper{display:block;width:700px}div.vis-configuration-wrapper::after{clear:both;content:\"\";display:block}div.vis-configuration.vis-config-option-container{display:block;width:495px;background-color:#fff;border:2px solid #f7f8fa;border-radius:4px;margin-top:20px;left:10px;padding-left:5px}div.vis-configuration.vis-config-button{display:block;width:495px;height:25px;vertical-align:middle;line-height:25px;background-color:#f7f8fa;border:2px solid #ceced0;border-radius:4px;margin-top:20px;left:10px;padding-left:5px;cursor:pointer;margin-bottom:30px}div.vis-configuration.vis-config-button.hover{background-color:#4588e6;border:2px solid #214373;color:#fff}div.vis-configuration.vis-config-item{display:block;float:left;width:495px;height:25px;vertical-align:middle;line-height:25px}div.vis-configuration.vis-config-item.vis-config-s2{left:10px;background-color:#f7f8fa;padding-left:5px;border-radius:3px}div.vis-configuration.vis-config-item.vis-config-s3{left:20px;background-color:#e4e9f0;padding-left:5px;border-radius:3px}div.vis-configuration.vis-config-item.vis-config-s4{left:30px;background-color:#cfd8e6;padding-left:5px;border-radius:3px}div.vis-configuration.vis-config-header{font-size:18px;font-weight:bold}div.vis-configuration.vis-config-label{width:120px;height:25px;line-height:25px}div.vis-configuration.vis-config-label.vis-config-s3{width:110px}div.vis-configuration.vis-config-label.vis-config-s4{width:100px}div.vis-configuration.vis-config-colorBlock{top:1px;width:30px;height:19px;border:1px solid #444;border-radius:2px;padding:0;margin:0;cursor:pointer}input.vis-configuration.vis-config-checkbox{left:-5px}input.vis-configuration.vis-config-rangeinput{position:relative;top:-5px;width:60px;padding:1px;margin:0;pointer-events:none}input.vis-configuration.vis-config-range{-webkit-appearance:none;border:0 solid white;background-color:rgba(0,0,0,0);width:300px;height:20px}input.vis-configuration.vis-config-range::-webkit-slider-runnable-track{width:300px;height:5px;background:#dedede;background:-moz-linear-gradient(top,#dedede 0,#c8c8c8 99%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#dedede),color-stop(99%,#c8c8c8));background:-webkit-linear-gradient(top,#dedede 0,#c8c8c8 99%);background:-o-linear-gradient(top,#dedede 0,#c8c8c8 99%);background:-ms-linear-gradient(top,#dedede 0,#c8c8c8 99%);background:linear-gradient(to bottom,#dedede 0,#c8c8c8 99%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#dedede',endColorstr='#c8c8c8',GradientType=0);border:1px solid #999;box-shadow:#aaa 0 0 3px 0;border-radius:3px}input.vis-configuration.vis-config-range::-webkit-slider-thumb{-webkit-appearance:none;border:1px solid #14334b;height:17px;width:17px;border-radius:50%;background:#3876c2;background:-moz-linear-gradient(top,#3876c2 0,#385380 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#3876c2),color-stop(100%,#385380));background:-webkit-linear-gradient(top,#3876c2 0,#385380 100%);background:-o-linear-gradient(top,#3876c2 0,#385380 100%);background:-ms-linear-gradient(top,#3876c2 0,#385380 100%);background:linear-gradient(to bottom,#3876c2 0,#385380 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#3876c2',endColorstr='#385380',GradientType=0);box-shadow:#111927 0 0 1px 0;margin-top:-7px}input.vis-configuration.vis-config-range:focus{outline:0}input.vis-configuration.vis-config-range:focus::-webkit-slider-runnable-track{background:#9d9d9d;background:-moz-linear-gradient(top,#9d9d9d 0,#c8c8c8 99%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#9d9d9d),color-stop(99%,#c8c8c8));background:-webkit-l
},
"$:/plugins/felixhayashi/vis/vis.js": {
"title": "$:/plugins/felixhayashi/vis/vis.js",
"text": "/*\\\ntitle: $:/plugins/felixhayashi/vis/vis.js\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\\*/\n\n/*** TO AVOID STRANGE LIB ERRORS FROM BUBBLING UP *****************/\n\nif($tw.boot.tasks.trapErrors) {\n\n var defaultHandler = window.onerror;\n window.onerror = function(errorMsg, url, lineNumber) {\n \n if(errorMsg.indexOf(\"NS_ERROR_NOT_AVAILABLE\") !== -1\n &amp;&amp; url == \"$:/plugins/felixhayashi/vis/vis.js\") {\n \n var text = \"Strange firefox related vis.js error (see #125)\";\n console.error(text, arguments);\n \n } else if(errorMsg.indexOf(\"Permission denied to access property\") !== -1) {\n \n var text = \"Strange firefox related vis.js error (see #163)\";\n console.error(text, arguments);\n \n } else if(defaultHandler) {\n \n defaultHandler.apply(this, arguments);\n \n }\n \n }\n \n}\n\n/******************************************************************/\n\n/**\n * vis.js\n * https://github.com/almende/vis\n *\n * A dynamic, browser-based visualization library.\n *\n * @version 4.21.0\n * @date 2017-10-12\n *\n * @license\n * Copyright (C) 2011-2017 Almende B.V, http://almende.com\n *\n * Vis.js is dual licensed under both\n *\n * * The Apache 2.0 License\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * and\n *\n * * The MIT License\n * http://opensource.org/licenses/MIT\n *\n * Vis.js may be distributed under either license.\n */\n\"use strict\";(function webpackUniversalModuleDefinition(root,factory){if(typeof exports===\"object\"&amp;&amp;typeof module===\"object\")module.exports=factory();else if(typeof define===\"function\"&amp;&amp;define.amd)define([],factory);else if(typeof exports===\"object\")exports[\"vis\"]=factory();else root[\"vis\"]=factory()})(this,function(){return function(modules){var installedModules={};function __webpack_require__(moduleId){if(installedModules[moduleId]){return installedModules[moduleId].exports}var module=installedModules[moduleId]={i:moduleId,l:false,exports:{}};modules[moduleId].call(module.exports,module,module.exports,__webpack_require__);module.l=true;return module.exports}__webpack_require__.m=modules;__webpack_require__.c=installedModules;__webpack_require__.d=function(exports,name,getter){if(!__webpack_require__.o(exports,name)){Object.defineProperty(exports,name,{configurable:false,enumerable:true,get:getter})}};__webpack_require__.n=function(module){var getter=module&amp;&amp;module.__esModule?function getDefault(){return module[\"default\"]}:function getModuleExports(){return module};__webpack_require__.d(getter,\"a\",getter);return getter};__webpack_require__.o=function(object,property){return Object.prototype.hasOwnProperty.call(object,property)};__webpack_require__.p=\"\";return __webpack_require__(__webpack_require__.s=123)}([function(module,exports,__webpack_require__){\"use strict\";exports.__esModule=true;exports.default=function(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError(\"Cannot call a class as a function\")}}},function(module,exports,__webpack_require__){\"use strict\";exports.__esModule=true;var _defineProperty=__webpack_require__(169);var _defineProperty2=_interopRequireDefault(_defineProperty);function _interopRequireDefault(obj){return obj&amp;&amp;obj.__esModule?obj:{default:obj}}exports.default=function(){function defineProperties(target,props){for(var i=0;i&lt;props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if(\"value\"in descriptor)descriptor.writable=true;(0,_defineProperty2.default)(target,descriptor.key,descriptor)}}return function(Constructor,protoProps,staticProps){if(protoProps)defineProperties(Constructor.prototype,protoProps);if(staticProps)defineProperties(Constructor,staticProps);return Constructor}}()},function(module,exports,__webpack_require__){\"use strict\";var _getIterator2=__webpack_require__(77);var _getIterator3=_interopRequireDefault(_getIterator2);var _create=__webpac
"type": "application/javascript",
"module-type": "library"
}
}
}</pre>
</div>
<div author="Flibbles" bag="default" core-version="&gt;=5.1.22" created="20210324034859173" demo="http://flibbles.github.io/tw5-relink/" dependents="" description="Flexibility when relinking renamed tiddlers" list="readme configuration license" modified="20210502175045375" name="Relink" plugin-type="plugin" revision="0" source="https://github.com/flibbles/tw5-relink" tags="rr-TW5 rr-plugins" title="$:/plugins/flibbles/relink" type="application/json" version="2.0.0">
<pre>{
"tiddlers": {
"$:/plugins/flibbles/relink/js/bulkops.js": {
"text": "/*\\\nmodule-type: startup\n\nReplaces the relinkTiddler defined in $:/core/modules/wiki-bulkops.js\n\nThis is a startup instead of a wikimethods module-type because it's the only\nway to ensure this runs after the old relinkTiddler method is applied.\n\n\\*/\n(function(){\n\n/*jslint node: false, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar language = require('$:/plugins/flibbles/relink/js/language.js');\nvar utils = require(\"$:/plugins/flibbles/relink/js/utils.js\");\n\nexports.name = \"redefine-relinkTiddler\";\nexports.synchronous = true;\n// load-modules is when wikimethods are applied in\n// ``$:/core/modules/startup/load-modules.js``\nexports.after = ['load-modules'];\n\nexports.startup = function() {\n\t$tw.Wiki.prototype.relinkTiddler = relinkTiddler;\n};\n\n/** Walks through all relinkable tiddlers and relinks them.\n * This replaces the existing function in core Tiddlywiki.\n */\nfunction relinkTiddler(fromTitle, toTitle, options) {\n\toptions = options || {};\n\tvar failures = [];\n\tvar indexer = utils.getIndexer(this);\n\tvar records = indexer.relinkLookup(fromTitle, toTitle, options);\n\tfor (var title in records) {\n\t\tvar entries = records[title],\n\t\t\tchanges = Object.create(null),\n\t\t\tupdate = false,\n\t\t\tfails = false;\n\t\tfor (var field in entries) {\n\t\t\tvar entry = entries[field];\n\t\t\tfails = fails || entry.impossible;\n\t\t\tif (entry.output) {\n\t\t\t\tchanges[field] = entry.output;\n\t\t\t\tupdate = true;\n\t\t\t}\n\t\t}\n\t\tif (fails) {\n\t\t\tfailures.push(title);\n\t\t}\n\t\t// If any fields changed, update tiddler\n\t\tif (update) {\n\t\t\tconsole.log(\"Renaming '\"+fromTitle+\"' to '\"+toTitle+\"' in '\" + title + \"'\");\n\n\t\t\tvar tiddler = this.getTiddler(title);\n\t\t\tvar newTiddler = new $tw.Tiddler(tiddler,changes,this.getModificationFields())\n\t\t\tnewTiddler = $tw.hooks.invokeHook(\"th-relinking-tiddler\",newTiddler,tiddler);\n\t\t\tthis.addTiddler(newTiddler);\n\t\t\t// If the title changed, we need to perform a nested rename\n\t\t\tif (newTiddler.fields.title !== title) {\n\t\t\t\tthis.deleteTiddler(title);\n\t\t\t\tthis.relinkTiddler(title, newTiddler.fields.title,options);\n\t\t\t}\n\t\t}\n\t};\n\tif (failures.length &gt; 0) {\n\t\tvar options = $tw.utils.extend(\n\t\t\t{ variables: {to: toTitle, from: fromTitle},\n\t\t\t wiki: this},\n\t\t\toptions );\n\t\tlanguage.reportFailures(failures, options);\n\t}\n};\n\n})();\n",
"module-type": "startup",
"title": "$:/plugins/flibbles/relink/js/bulkops.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/indexer.js": {
"text": "/*\\\nmodule-type: indexer\n\nIndexes results from tiddler reference reports so we don't have to call them\nso much.\n\n\\*/\n\n\"use strict\";\n\nvar utils = require(\"./utils.js\");\nvar TiddlerContext = utils.getContext('tiddler');\n\nfunction Indexer(wiki) {\n\tthis.wiki = wiki;\n};\n\nIndexer.prototype.init = function() {\n\tthis.rebuild();\n};\n\nIndexer.prototype.rebuild = function() {\n\tthis.index = null;\n\tthis.backIndex = null;\n\tthis.contexts = Object.create(null);\n\tthis.changedTiddlers = undefined;\n\tthis.lastRelinkFrom = undefined;\n};\n\nIndexer.prototype.update = function(updateDescriptor) {\n\tif (!this.index) {\n\t\treturn;\n\t}\n\tvar title;\n\tif (!this.changedTiddlers) {\n\t\tthis.changedTiddlers = Object.create(null);\n\t}\n\tif (updateDescriptor.old.exists) {\n\t\ttitle = updateDescriptor.old.tiddler.fields.title;\n\t\tthis.changedTiddlers[title] = {deleted: true};\n\t\tthis._purge(title);\n\t}\n\tif (updateDescriptor['new'].exists) {\n\t\t// If its the same tiddler as old, this overrides the 'deleted' entry\n\t\ttitle = updateDescriptor['new'].tiddler.fields.title;\n\t\tthis.changedTiddlers[title] = {modified: true};\n\t}\n};\n\nIndexer.prototype.lookup = function(title) {\n\tthis._upkeep();\n\treturn this.index[title];\n};\n\nIndexer.prototype.reverseLookup = function(title) {\n\tthis._upkeep();\n\treturn this.backIndex[title] || Object.create(null);\n};\n\nIndexer.prototype.relinkLookup = function(fromTitle, toTitle, options) {\n\tthis._upkeep();\n\tvar shortlist = undefined;\n\tif (this.lastRelinkFrom === fromTitle) {\n\t\tif (this.lastRelinkTo === toTitle) {\n\t\t\t// We need to reintroduce the relink cache, where temporary info\n\t\t\t// was stored.\n\t\t\toptions.cache = this.lastRelinkCache;\n\t\t\treturn this.lastRelinkResult;\n\t\t}\n\t\tshortlist = Object.keys(this.lastRelinkResult);\n\t}\n\tthis.lastRelinkResult = utils.getRelinkResults(this.wiki, fromTitle, toTitle, this.context, shortlist, options);\n\tthis.lastRelinkTo = toTitle;\n\tthis.lastRelinkFrom = fromTitle;\n\tthis.lastRelinkCache = options.cache;\n\treturn this.lastRelinkResult;\n};\n\nIndexer.prototype._upkeep = function() {\n\tvar title;\n\tif (this.changedTiddlers &amp;&amp; (this.context.changed(this.changedTiddlers) || this.context.parent.changed(this.changedTiddlers))) {\n\t\t// If global macro context or whitelist context changed, wipe all\n\t\tthis.rebuild();\n\t}\n\tif (!this.index) {\n\t\tthis.index = Object.create(null);\n\t\tthis.backIndex = Object.create(null);\n\t\tthis.context = utils.getWikiContext(this.wiki);\n\t\tvar titles = this.wiki.getRelinkableTitles();\n\t\tfor (var i = 0; i &lt; titles.length; i++) {\n\t\t\tthis._populate(titles[i]);\n\t\t};\n\t} else if (this.changedTiddlers) {\n\t\t// If there are cached changes, we apply them now.\n\t\tfor (title in this.contexts) {\n\t\t\tvar tiddlerContext = this.contexts[title];\n\t\t\tif (tiddlerContext.changed(this.changedTiddlers)) {\n\t\t\t\tthis._purge(title);\n\t\t\t\tthis._populate(title);\n\t\t\t\tthis._dropResults(title);\n\t\t\t\t// Wipe this change, so we don't risk updating it twice.\n\t\t\t\tthis.changedTiddlers[title] = undefined;\n\t\t\t}\n\t\t}\n\t\tfor (title in this.changedTiddlers) {\n\t\t\tvar change = this.changedTiddlers[title];\n\t\t\tif (change &amp;&amp; change.modified) {\n\t\t\t\tthis._purge(title);\n\t\t\t\tthis._populate(title);\n\t\t\t\tthis._dropResults(title);\n\t\t\t}\n\t\t}\n\t\tthis.changedTiddlers = undefined;\n\t}\n};\n\nIndexer.prototype._purge = function(title) {\n\tfor (var entry in this.index[title]) {\n\t\tdelete this.backIndex[entry][title];\n\t}\n\tdelete this.contexts[title];\n\tdelete this.index[title];\n};\n\n// This drops the cached relink results if unsanctioned tiddlers were changed\nIndexer.prototype._dropResults = function(title) {\n\tvar tiddler = this.wiki.getTiddler(title);\n\tif (title !== this.lastRelinkFrom\n\t&amp;&amp; title !== this.lastRelinkTo\n\t&amp;&amp; (!tiddler\n\t\t|| !$tw.utils.hop(tiddler.fields, 'draft.of') // is a draft\n\t\t|| tiddler.fields['draft.of'] !== thi
"module-type": "indexer",
"title": "$:/plugins/flibbles/relink/js/indexer.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/language.js": {
"text": "/*\\\nmodule-type: library\n\nThis handles all logging and alerts Relink emits.\n\n\\*/\n\nexports.getString = function(title, options) {\n\ttitle = \"$:/plugins/flibbles/relink/language/\" + title;\n\treturn options.wiki.renderTiddler(\"text/plain\", title, options);\n};\n\nvar logger;\n\nexports.reportFailures = function(failureList, options) {\n\tif (!logger) {\n\t\tlogger = new $tw.utils.Logger(\"Relinker\");\n\t}\n\tvar alertString = this.getString(\"Error/ReportFailedRelinks\", options)\n\tvar alreadyReported = Object.create(null);\n\tvar reportList = [];\n\t$tw.utils.each(failureList, function(f) {\n\t\tif (!alreadyReported[f]) {\n\t\t\tif ($tw.browser) {\n\t\t\t\t// This might not make the link if the title is complicated.\n\t\t\t\t// Whatever.\n\t\t\t\treportList.push(\"\\n* [[\" + f + \"]]\");\n\t\t\t} else {\n\t\t\t\treportList.push(\"\\n* \" + f);\n\t\t\t}\n\t\t\talreadyReported[f] = true;\n\t\t}\n\t});\n\tlogger.alert(alertString + \"\\n\" + reportList.join(\"\"));\n};\n",
"module-type": "library",
"title": "$:/plugins/flibbles/relink/js/language.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/mangler.js": {
"text": "/*\\\nmodule-type: widget\n\nCreates a mangler widget for field validation. This isn't meant to be used\nby the user. It's only used in Relink configuration.\n\n\\*/\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\nvar language = require('$:/plugins/flibbles/relink/js/language.js');\nvar utils = require('$:/plugins/flibbles/relink/js/utils.js');\n\nvar RelinkManglerWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n\tthis.addEventListeners([\n\t\t{type: \"relink-add-field\", handler: \"handleAddFieldEvent\"},\n\t\t{type: \"relink-add-operator\", handler: \"handleAddOperatorEvent\"},\n\t\t{type: \"relink-add-parameter\", handler: \"handleAddParameterEvent\"},\n\t\t{type: \"relink-add-attribute\", handler: \"handleAddAttributeEvent\"}\n\t]);\n};\n\nexports.relinkmangler = RelinkManglerWidget;\n\nRelinkManglerWidget.prototype = new Widget();\n\n// This wraps alert so it can be monkeypatched during testing.\nRelinkManglerWidget.prototype.alert = function(message) {\n\talert(message);\n};\n\nRelinkManglerWidget.prototype.handleAddFieldEvent = function(event) {\n\tvar param = event.paramObject;\n\tif (typeof param !== \"object\" || !param.field) {\n\t\t// Can't handle it.\n\t\treturn true;\n\t}\n\tvar trimmedName = param.field.toLowerCase().trim();\n\tif (!trimmedName) {\n\t\t// Still can't handle it, but don't warn.\n\t\treturn true;\n\t}\n\tif(!$tw.utils.isValidFieldName(trimmedName)) {\n\t\tthis.alert($tw.language.getString(\n\t\t\t\"InvalidFieldName\",\n\t\t\t{variables:\n\t\t\t\t{fieldName: trimmedName}\n\t\t\t}\n\t\t));\n\t} else {\n\t\tadd(this.wiki, \"fields\", trimmedName);\n\t}\n\treturn true;\n};\n\n/**Not much validation, even though there are definitely illegal\n * operator names. If you input on, Relink won't relink it, but it\n * won't choke on it either. Tiddlywiki will...\n */\nRelinkManglerWidget.prototype.handleAddOperatorEvent = function(event) {\n\tvar param = event.paramObject;\n\tif (param) {\n\t\tadd(this.wiki, \"operators\", param.operator);\n\t}\n\treturn true;\n};\n\nRelinkManglerWidget.prototype.handleAddParameterEvent = function(event) {\n\tvar param = event.paramObject;\n\tif (param &amp;&amp; param.macro &amp;&amp; param.parameter) {\n\t\tif (/\\s/.test(param.macro.trim())) {\n\t\t\tthis.alert(language.getString(\n\t\t\t\t\"Error/InvalidMacroName\",\n\t\t\t\t{ variables: {macroName: param.macro},\n\t\t\t\t wiki: this.wiki\n\t\t\t\t}\n\t\t\t));\n\t\t} else if (/[ \\/]/.test(param.parameter.trim())) {\n\t\t\tthis.alert(language.getString(\n\t\t\t\t\"Error/InvalidParameterName\",\n\t\t\t\t{ variables: {parameterName: param.parameter},\n\t\t\t\t wiki: this.wiki\n\t\t\t\t}\n\t\t\t));\n\t\t} else {\n\t\t\tadd(this.wiki, \"macros\", param.macro, param.parameter);\n\t\t}\n\t}\n\treturn true;\n};\n\nRelinkManglerWidget.prototype.handleAddAttributeEvent = function(event) {\n\tvar param = event.paramObject;\n\tif (param &amp;&amp; param.element &amp;&amp; param.attribute) {\n\t\tif (/[ \\/]/.test(param.element.trim())) {\n\t\t\tthis.alert(language.getString(\n\t\t\t\t\"Error/InvalidElementName\",\n\t\t\t\t{ variables: {elementName: param.element},\n\t\t\t\t wiki: this.wiki\n\t\t\t\t}\n\t\t\t));\n\t\t} else if (/[ \\/]/.test(param.attribute.trim())) {\n\t\t\tthis.alert(language.getString(\n\t\t\t\t\"Error/InvalidAttributeName\",\n\t\t\t\t{ variables: {attributeName: param.attribute},\n\t\t\t\t wiki: this.wiki\n\t\t\t\t}\n\t\t\t));\n\t\t} else {\n\t\t\tadd(this.wiki, \"attributes\", param.element, param.attribute);\n\t\t}\n\t}\n\treturn true;\n};\n\nfunction add(wiki, category/*, path parts*/) {\n\tvar path = \"$:/config/flibbles/relink/\" + category;\n\tfor (var x = 2; x &lt; arguments.length; x++) {\n\t\tvar part = arguments[x];\n\t\t// Abort if it's falsy, or only whitespace. Also, trim spaces\n\t\tif (!part || !(part = part.trim())) {\n\t\t\treturn;\n\t\t}\n\t\tpath = path + \"/\" + part;\n\t}\n\tvar def = utils.getDefaultType(wiki);\n\twiki.addTiddler({title: path, text: def});\n};\n",
"module-type": "widget",
"title": "$:/plugins/flibbles/relink/js/mangler.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/settings.js": {
"text": "/*\\\nmodule-type: library\n\nThis handles the fetching and distribution of relink settings.\n\n\\*/\n\nvar utils = require('./utils');\n\n///// Legacy. You used to be able to access the type from utils.\nexports.getType = utils.getType;\n/////\n",
"module-type": "library",
"title": "$:/plugins/flibbles/relink/js/settings.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/utils.js": {
"text": "/*\\\nmodule-type: library\n\nUtility methods for relink.\n\n// TODO: The lists of plugins should neither be relinked nor reported.\n\\*/\n\nvar macroFilter = \"[[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\";\n\n/**This works nearly identically to $tw.modules.getModulesByTypeAsHashmap\n * except that this also takes care of migrating V1 relink modules.\n */\nexports.getModulesByTypeAsHashmap = function(moduleType, nameField) {\n\tvar results = Object.create(null);\n\t$tw.modules.forEachModuleOfType(moduleType, function(title, module) {\n\t\tvar key = module[nameField];\n\t\tif (key !== undefined) {\n\t\t\tresults[key] = module;\n\t\t} else {\n\t\t\tfor (var entry in module) {\n\t\t\t\tresults[entry] = {\n\t\t\t\t\trelink: module[entry],\n\t\t\t\t\treport: function() {}};\n\t\t\t}\n\t\t}\n\t});\n\treturn results;\n};\n\nexports.getTiddlerRelinkReferences = function(wiki, title, context) {\n\tvar tiddler = wiki.getTiddler(title),\n\t\treferences = Object.create(null),\n\t\toptions = {settings: context, wiki: wiki};\n\tif (tiddler) {\n\t\ttry {\n\t\t\tfor (var relinker in getRelinkOperators()) {\n\t\t\t\tgetRelinkOperators()[relinker].report(tiddler, function(title, blurb) {\n\t\t\t\t\treferences[title] = references[title] || [];\n\t\t\t\t\treferences[title].push(blurb);\n\t\t\t\t}, options);\n\t\t\t}\n\t\t} catch (e) {\n\t\t\tif (e.message) {\n\t\t\t\te.message = e.message + \"\\nWhen reporting '\" + title + \"' Relink references\";\n\t\t\t}\n\t\t\tthrow e;\n\t\t}\n\t}\n\treturn references;\n};\n\n/** Returns a pair like this,\n * { title: {field: entry, ... }, ... }\n */\nexports.getRelinkResults = function(wiki, fromTitle, toTitle, context, tiddlerList, options) {\n\toptions = options || {};\n\toptions.wiki = options.wiki || wiki;\n\tfromTitle = (fromTitle || \"\").trim();\n\ttoTitle = (toTitle || \"\").trim();\n\tvar changeList = Object.create(null);\n\tif(fromTitle &amp;&amp; toTitle) {\n\t\tif (tiddlerList === undefined) {\n\t\t\ttiddlerList = wiki.getRelinkableTitles();\n\t\t}\n\t\tfor (var i = 0; i &lt; tiddlerList.length; i++) {\n\t\t\tvar title = tiddlerList[i];\n\t\t\tvar tiddler = wiki.getTiddler(title);\n\t\t\tif(tiddler &amp;&amp; !tiddler.fields[\"plugin-type\"]) {\n\t\t\t\ttry {\n\t\t\t\t\tvar entries = Object.create(null),\n\t\t\t\t\t\toperators = getRelinkOperators();\n\t\t\t\t\toptions.settings = new Contexts.tiddler(wiki, context, title);\n\t\t\t\t\tfor (var operation in operators) {\n\t\t\t\t\t\toperators[operation].relink(tiddler, fromTitle, toTitle, entries, options);\n\t\t\t\t\t}\n\t\t\t\t\tfor (var field in entries) {\n\t\t\t\t\t\t// So long as there is one key,\n\t\t\t\t\t\t// add it to the change list.\n\t\t\t\t\t\tchangeList[title] = entries;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t} catch (e) {\n\t\t\t\t\t// Should we test for instanceof Error instead?: yes\n\t\t\t\t\t// Does that work in the testing environment?: no\n\t\t\t\t\tif (e.message) {\n\t\t\t\t\t\te.message = e.message + \"\\nWhen relinking '\" + title + \"'\";\n\t\t\t\t\t}\n\t\t\t\t\tthrow e;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\treturn changeList;\n};\n\nvar Contexts = $tw.modules.applyMethods('relinkcontext');\n\nexports.getContext = function(name) {\n\treturn Contexts[name];\n};\n\nexports.getWikiContext = function(wiki) {\n\t// This gives a fresh context every time. It is up to the indexer or\n\t// the cache to preserve those contexts for as long as needed.\n\tvar whitelist = new Contexts.whitelist(wiki);\n\treturn new Contexts.import(wiki, whitelist, macroFilter);\n};\n\n/** Returns the Relink indexer, or a dummy object which pretends to be one.\n */\nexports.getIndexer = function(wiki) {\n\tif (!wiki._relink_indexer) {\n\t\twiki._relink_indexer = (wiki.getIndexer &amp;&amp; wiki.getIndexer(\"RelinkIndexer\")) || new (require('$:/plugins/flibbles/relink/js/utils/backupIndexer.js'))(wiki);\n\t}\n\treturn wiki._relink_indexer;\n};\n\n/**Relinking supports a cache that persists throughout a whole relink op.\n * This is because the Tiddlywiki caches may get wiped multiple ti
"module-type": "library",
"title": "$:/plugins/flibbles/relink/js/utils.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/wikimethods.js": {
"text": "/*\\\nmodule-type: wikimethod\n\nIntroduces some utility methods used by Relink.\n\n\\*/\n\nvar utils = require(\"./utils.js\");\n\nexports.getTiddlerRelinkReferences = function(title) {\n\treturn utils.getIndexer(this).lookup(title);\n};\n\nexports.getTiddlerRelinkBackreferences = function(title) {\n\treturn utils.getIndexer(this).reverseLookup(title);\n};\n\nexports.getRelinkableTitles = function() {\n\tvar toUpdate = \"$:/config/flibbles/relink/to-update\";\n\tvar wiki = this;\n\treturn this.getCacheForTiddler(toUpdate, \"relink-toUpdate\", function() {\n\t\tvar tiddler = wiki.getTiddler(toUpdate);\n\t\tif (tiddler) {\n\t\t\treturn wiki.compileFilter(tiddler.fields.text);\n\t\t} else {\n\t\t\treturn wiki.allTitles;\n\t\t}\n\t})();\n};\n",
"module-type": "wikimethod",
"title": "$:/plugins/flibbles/relink/js/wikimethods.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/filteroperators/all_relinkable.js": {
"text": "/*\\\nmodule-type: allfilteroperator\n\nFilter function for [all[relinkable]].\nReturns all tiddlers subject to relinking.\n\n\\*/\n\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.relinkable = function(source,prefix,options) {\n\treturn options.wiki.getRelinkableTitles();\n};\n\n})();\n",
"module-type": "allfilteroperator",
"title": "$:/plugins/flibbles/relink/js/filteroperators/all_relinkable.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/filteroperators/references.js": {
"text": "/*\\\nmodule-type: relinkfilteroperator\n\nGiven a title as an operand, returns all non-shadow tiddlers that have any\nsort of updatable reference to it.\n\n`relink:backreferences[]]`\n`relink:references[]]`\n\nReturns all tiddlers that reference `fromTiddler` somewhere inside them.\n\nInput is ignored. Maybe it shouldn't do this.\n\\*/\n\nvar LinkedList = $tw.utils.LinkedList;\n\nif (!LinkedList) {\n\t/* If the linked list isn't available, make a quick crappy version. */\n\tLinkedList = function() {this.array=[];};\n\n\tLinkedList.prototype.pushTop = function(array) {\n\t\t$tw.utils.pushTop(this.array, array);\n\t};\n\n\tLinkedList.prototype.toArray = function() {\n\t\treturn this.array;\n\t};\n};\n\nexports.backreferences = function(source,operator,options) {\n\tvar results = new LinkedList();\n\tsource(function(tiddler,title) {\n\t\tresults.pushTop(Object.keys(options.wiki.getTiddlerRelinkBackreferences(title,options)));\n\t});\n\treturn results.toArray();\n};\n\nexports.references = function(source,operator,options) {\n\tvar results = new LinkedList();\n\tsource(function(tiddler,title) {\n\t\tvar refs = options.wiki.getTiddlerRelinkReferences(title,options);\n\t\tif (refs) {\n\t\t\tresults.pushTop(Object.keys(refs));\n\t\t}\n\t});\n\treturn results.toArray();\n};\n",
"module-type": "relinkfilteroperator",
"title": "$:/plugins/flibbles/relink/js/filteroperators/references.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/filteroperators/relink.js": {
"text": "/*\\\nmodule-type: filteroperator\n\nThis filter acts as a namespace for several small, simple filters, such as\n\n`[relink:impossible[]]`\n\n\\*/\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar language = require('$:/plugins/flibbles/relink/js/language.js');\n\nvar relinkFilterOperators;\n\nfunction getRelinkFilterOperators() {\n\tif(!relinkFilterOperators) {\n\t\trelinkFilterOperators = {};\n\t\t$tw.modules.applyMethods(\"relinkfilteroperator\",\n\t\t relinkFilterOperators);\n\t}\n\treturn relinkFilterOperators;\n}\n\nexports.relink = function(source,operator,options) {\n\tvar suffixPair = parseSuffix(operator.suffix);\n\tvar relinkFilterOperator = getRelinkFilterOperators()[suffixPair[0]];\n\tif (relinkFilterOperator) {\n\t\tvar newOperator = $tw.utils.extend({}, operator);\n\t\tnewOperator.suffix = suffixPair[1];\n\t\treturn relinkFilterOperator(source, newOperator, options);\n\t} else {\n\t\treturn [language.getString(\"Error/RelinkFilterOperator\", options)];\n\t}\n};\n\nfunction parseSuffix(suffix) {\n\tvar index = suffix? suffix.indexOf(\":\"): -1;\n\tif (index &gt;= 0) {\n\t\treturn [suffix.substr(0, index), suffix.substr(index+1)];\n\t} else {\n\t\treturn [suffix];\n\t}\n}\n",
"module-type": "filteroperator",
"title": "$:/plugins/flibbles/relink/js/filteroperators/relink.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/filteroperators/report.js": {
"text": "/*\\\nmodule-type: relinkfilteroperator\n\nGiven a title as an operand, returns a string for each occurrence of that title\nwithin each input title.\n\n[[title]] +[relink:report[fromTiddler]]`\n\nReturns string representation of fromTiddler occurrences in title.\n\\*/\n\nexports.report = function(source,operator,options) {\n\tvar fromTitle = operator.operand,\n\t\tresults = [];\n\tif (fromTitle) {\n\t\tvar blurbs = options.wiki.getTiddlerRelinkBackreferences(fromTitle);\n\t\tsource(function(tiddler, title) {\n\t\t\tif (blurbs[title]) {\n\t\t\t\tresults = results.concat(blurbs[title]);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n",
"module-type": "relinkfilteroperator",
"title": "$:/plugins/flibbles/relink/js/filteroperators/report.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/filteroperators/signatures.js": {
"text": "/*\\\nmodule-type: relinkfilteroperator\n\nThis filter returns all input tiddlers which are a source of\nrelink configuration.\n\n`[all[tiddlers+system]relink:source[macros]]`\n\n\\*/\n\nvar utils = require('$:/plugins/flibbles/relink/js/utils.js');\n\nexports.signatures = function(source,operator,options) {\n\tvar plugin = operator.operand || null;\n\tvar set = getSet(options);\n\tif (plugin === \"$:/core\") {\n\t\t// Core doesn't actually have any settings. We mean Relink\n\t\tplugin = \"$:/plugins/flibbles/relink\";\n\t}\n\tvar signatures = [];\n\tfor (var signature in set) {\n\t\tvar source = set[signature].source;\n\t\tif (options.wiki.getShadowSource(source) === plugin) {\n\t\t\tsignatures.push(signature);\n\t\t}\n\t}\n\treturn signatures;\n};\n\nexports.type = function(source,operator,options) {\n\tvar results = [];\n\tvar set = getSet(options);\n\tsource(function(tiddler, signature) {\n\t\tif (set[signature]) {\n\t\t\tresults.push(set[signature].name);\n\t\t}\n\t});\n\treturn results;\n};\n\nexports.types = function(source,operator,options) {\n\tvar def = utils.getDefaultType(options.wiki);\n\tvar types = Object.keys(utils.getTypes());\n\ttypes.sort();\n\t// move default to front\n\ttypes.sort(function(x,y) { return x === def ? -1 : y === def ? 1 : 0; });\n\treturn types;\n};\n\nexports.source = function(source,operator,options) {\n\tvar results = [];\n\tvar category = operator.suffix;\n\tvar set = getSet(options);\n\tsource(function(tiddler, signature) {\n\t\tif (set[signature]) {\n\t\t\tresults.push(set[signature].source);\n\t\t}\n\t});\n\treturn results;\n};\n\nfunction getSet(options) {\n\treturn options.wiki.getGlobalCache(\"relink-signatures\", function() {\n\t\tvar config = utils.getWikiContext(options.wiki);\n\t\tvar set = Object.create(null);\n\t\tvar categories = {\n\t\t\tattributes: config.getAttributes(),\n\t\t\tfields: config.getFields(),\n\t\t\tmacros: config.getMacros(),\n\t\t\toperators: config.getOperators()};\n\t\t$tw.utils.each(categories, function(list, category) {\n\t\t\t$tw.utils.each(list, function(item, key) {\n\t\t\t\tset[category + \"/\" + key] = item;\n\t\t\t});\n\t\t});\n\t\treturn set;\n\t});\n};\n",
"module-type": "relinkfilteroperator",
"title": "$:/plugins/flibbles/relink/js/filteroperators/signatures.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/filteroperators/splitafter.js": {
"text": "/*\\\ntitle: $:/core/modules/filters/splitbefore.js\ntype: application/javascript\nmodule-type: relinkfilteroperator\n\nFilter operator that splits each result on the last occurance of the specified separator and returns the last bit.\n\nWhat does this have to do with relink? Nothing. I need this so I can render\nthe configuration menu. I //could// use [splitregexp[]], but then I'd be\nlimited to Tiddlywiki v5.1.20 or later.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.splitafter = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tvar index = title.lastIndexOf(operator.operand);\n\t\tif(index &lt; 0) {\n\t\t\t$tw.utils.pushTop(results,title);\n\t\t} else {\n\t\t\t$tw.utils.pushTop(results,title.substr(index+1));\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n\n",
"title": "$:/plugins/flibbles/relink/js/filteroperators/splitafter.js",
"type": "application/javascript",
"module-type": "relinkfilteroperator"
},
"$:/plugins/flibbles/relink/js/filteroperators/wouldchange.js": {
"text": "/*\\\nmodule-type: relinkfilteroperator\n\nwouldchange: Generator.\n\nGiven each input title, it returns all the tiddlers that would be changed if the currentTiddler were to be renamed to the operand.\n\nimpossible: filters all source titles for ones that encounter errors on failure.\n\nTHESE ARE INTERNAL FILTER OPERATOR AND ARE NOT INTENDED TO BE USED BY USERS.\n\n\\*/\n\nvar language = require(\"$:/plugins/flibbles/relink/js/language.js\");\nvar utils = require(\"$:/plugins/flibbles/relink/js/utils.js\");\n\nexports.wouldchange = function(source,operator,options) {\n\tvar from = options.widget &amp;&amp; options.widget.getVariable(\"currentTiddler\"),\n\t\tto = operator.operand,\n\t\tindexer = utils.getIndexer(options.wiki),\n\t\trecords = indexer.relinkLookup(from, to, options);\n\treturn Object.keys(records);\n};\n\nexports.impossible = function(source,operator,options) {\n\tvar from = options.widget &amp;&amp; options.widget.getVariable(\"currentTiddler\"),\n\t\tto = operator.operand,\n\t\tresults = [],\n\t\tindexer = utils.getIndexer(options.wiki),\n\t\trecords = indexer.relinkLookup(from, to, options);\n\tsource(function(tiddler, title) {\n\t\tvar fields = records[title];\n\t\tif (fields) {\n\t\t\tfor (var field in fields) {\n\t\t\t\tif (fields[field].impossible) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t});\n\treturn results;\n};\n",
"module-type": "relinkfilteroperator",
"title": "$:/plugins/flibbles/relink/js/filteroperators/wouldchange.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/fieldtypes/filter.js": {
"text": "/*\\\nThis specifies logic for updating filters to reflect title changes.\n\\*/\n\nvar refHandler = require(\"$:/plugins/flibbles/relink/js/fieldtypes/reference\");\nvar Rebuilder = require(\"$:/plugins/flibbles/relink/js/utils/rebuilder\");\n\nexports.name = \"filter\";\n\nexports.report = function(filter, callback, options) {\n\t// I cheat here for now. Relink handles reporting too in cases where\n\t// fromTitle is undefined. toTitle is the callback in those cases.\n\texports.relink(filter, undefined, callback, options);\n};\n\n/**Returns undefined if no change was made.\n */\nexports.relink = function(filter, fromTitle, toTitle, options) {\n\tvar relinker = new Rebuilder(filter),\n\t\tp = 0, // Current position in the filter string\n\t\tmatch, noPrecedingWordBarrier,\n\t\twordBarrierRequired=false;\n\tvar whitespaceRegExp = /\\s+/mg,\n\t\toperandRegExp = /((?:\\+|\\-|~|=|\\:\\w+)?)(?:(\\[)|(?:\"([^\"]*)\")|(?:'([^']*)')|([^\\s\\[\\]]+))/mg,\n\t\tblurbs = [];\n\twhile(p &lt; filter.length) {\n\t\t// Skip any whitespace\n\t\twhitespaceRegExp.lastIndex = p;\n\t\tmatch = whitespaceRegExp.exec(filter);\n\t\tnoPrecedingWordBarrier = false;\n\t\tif(match &amp;&amp; match.index === p) {\n\t\t\tp = p + match[0].length;\n\t\t} else if (p != 0) {\n\t\t\tif (wordBarrierRequired) {\n\t\t\t\trelinker.add(' ', p, p);\n\t\t\t\twordBarrierRequired = false;\n\t\t\t} else {\n\t\t\t\tnoPrecedingWordBarrier = true;\n\t\t\t}\n\t\t}\n\t\t// Match the start of the operation\n\t\tif(p &lt; filter.length) {\n\t\t\tvar val;\n\t\t\toperandRegExp.lastIndex = p;\n\t\t\tmatch = operandRegExp.exec(filter);\n\t\t\tif(!match || match.index !== p) {\n\t\t\t\t// It's a bad filter\n\t\t\t\treturn undefined;\n\t\t\t}\n\t\t\tif(match[1]) { // prefix\n\t\t\t\tp += match[1].length;\n\t\t\t}\n\t\t\tif(match[2]) { // Opening square bracket\n\t\t\t\t// We check if this is a standalone title,\n\t\t\t\t// like `[[MyTitle]]`. We treat those like\n\t\t\t\t// `\"MyTitle\"` or `MyTitle`. Not like a run.\n\t\t\t\tvar standaloneTitle = /\\[\\[([^\\]]+)\\]\\]/g;\n\t\t\t\tstandaloneTitle.lastIndex = p;\n\t\t\t\tvar alone = standaloneTitle.exec(filter);\n\t\t\t\tif (!alone || alone.index != p) {\n\t\t\t\t\tif (fromTitle === undefined) {\n\t\t\t\t\t\t// toTitle is a callback method in this case.\n\t\t\t\t\t\tp =reportFilterOperation(filter, function(title, blurb){\n\t\t\t\t\t\t\tif (match[1]) {\n\t\t\t\t\t\t\t\tblurbs.push([title, match[1] + (blurb || '')]);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tblurbs.push([title, blurb]);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t},p,options.settings,options);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tp =relinkFilterOperation(relinker,fromTitle,toTitle,filter,p,options.settings,options);\n\t\t\t\t\t}\n\t\t\t\t\t// It's a legit run\n\t\t\t\t\tif (p === undefined) {\n\t\t\t\t\t\t// The filter is malformed\n\t\t\t\t\t\t// We do nothing.\n\t\t\t\t\t\treturn undefined;\n\t\t\t\t\t}\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t\tbracketTitle = alone[1];\n\t\t\t\toperandRegExp.lastIndex = standaloneTitle.lastIndex;\n\t\t\t\tval = alone[1];\n\t\t\t} else {\n\t\t\t\t// standalone Double quoted string, single\n\t\t\t\t// quoted string, or noquote ahead.\n\t\t\t\tval = match[3] || match[4] || match[5];\n\t\t\t}\n\t\t\t// From here on, we're dealing with a standalone title\n\t\t\t// expression. like `\"MyTitle\"` or `[[MyTitle]]`\n\t\t\t// We're much more flexible about relinking these.\n\t\t\tvar preference = undefined;\n\t\t\tif (match[3]) {\n\t\t\t\tpreference = '\"';\n\t\t\t} else if (match[4]) {\n\t\t\t\tpreference = \"'\";\n\t\t\t} else if (match[5]) {\n\t\t\t\tpreference = '';\n\t\t\t}\n\t\t\tif (fromTitle === undefined) {\n\t\t\t\t// Report it\n\t\t\t\tblurbs.push([val, match[1]]);\n\t\t\t} else if (val === fromTitle) {\n\t\t\t\t// Relink it\n\t\t\t\tvar entry = {name: \"title\"};\n\t\t\t\tvar newVal = wrapTitle(toTitle, preference);\n\t\t\t\tif (newVal === undefined || (options.inBraces &amp;&amp; newVal.indexOf('}}}') &gt;= 0)) {\n\t\t\t\t\tif (!options.placeholder) {\n\t\t\t\t\t\trelinker.impossible = true;\n\t\t\t\t\t\tp = operandRegExp.la
"module-type": "relinkfieldtype",
"title": "$:/plugins/flibbles/relink/js/fieldtypes/filter.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/fieldtypes/list.js": {
"text": "/*\\\nThis manages replacing titles that occur within stringLists, like,\n\nTiddlerA [[Tiddler with spaces]] [[Another Title]]\n\\*/\n\nexports.name = \"list\";\n\nexports.report = function(value, callback, options) {\n\tvar list = $tw.utils.parseStringArray(value);\n\tfor (var i = 0; i &lt; list.length; i++) {\n\t\tcallback(list[i]);\n\t}\n};\n\n/**Returns undefined if no change was made.\n * Parameter: value can literally be a list. This can happen for builtin\n * types 'list' and 'tag'. In those cases, we also return list.\n */\nexports.relink = function(value, fromTitle, toTitle, options) {\n\tvar isModified = false,\n\t\tactualList = false,\n\t\tlist;\n\tif (typeof value !== \"string\") {\n\t\t// Not a string. Must be a list.\n\t\t// clone it, since we may make changes to this possibly\n\t\t// frozen list.\n\t\tlist = (value || []).slice(0);\n\t\tactualList = true;\n\t} else {\n\t\tlist = $tw.utils.parseStringArray(value || \"\");\n\t}\n\t$tw.utils.each(list,function (title,index) {\n\t\tif(title === fromTitle) {\n\t\t\tlist[index] = toTitle;\n\t\t\tisModified = true;\n\t\t}\n\t});\n\tif (isModified) {\n\t\tvar entry = {name: \"list\"};\n\t\t// It doesn't parse correctly alone, it won't\n\t\t// parse correctly in any list.\n\t\tif (!canBeListItem(toTitle)) {\n\t\t\tentry.impossible = true;\n\t\t} else if (actualList) {\n\t\t\tentry.output = list;\n\t\t} else {\n\t\t\tentry.output = $tw.utils.stringifyList(list);\n\t\t}\n\t\treturn entry;\n\t}\n\treturn undefined;\n};\n\nfunction canBeListItem(value) {\n\tvar regexp = /\\]\\][^\\S\\xA0]/m;\n\treturn !regexp.test(value);\n};\n",
"module-type": "relinkfieldtype",
"title": "$:/plugins/flibbles/relink/js/fieldtypes/list.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/fieldtypes/reference.js": {
"text": "/*\\\nThis manages replacing titles that occur inside text references,\n\ntiddlerTitle\ntiddlerTitle!!field\n!!field\ntiddlerTitle##propertyIndex\n\\*/\n\nexports.name = \"reference\";\n\nexports.report = function(value, callback, options) {\n\tif (value) {\n\t\tvar reference = $tw.utils.parseTextReference(value),\n\t\t\ttitle = reference.title,\n\t\t\tblurb;\n\t\tif (title) {\n\t\t\tif (reference.field) {\n\t\t\t\tblurb = '!!' + reference.field;\n\t\t\t} else if (reference.index) {\n\t\t\t\tblurb = '##' + reference.index;\n\t\t\t}\n\t\t\tcallback(title, blurb);\n\t\t}\n\t}\n};\n\nexports.relink = function(value, fromTitle, toTitle, options) {\n\tvar entry;\n\tif (value) {\n\t\tvar reference = $tw.utils.parseTextReference(value);\n\t\tif (reference.title === fromTitle) {\n\t\t\tif (!exports.canBePretty(toTitle)) {\n\t\t\t\tentry = {impossible: true};\n\t\t\t} else {\n\t\t\t\treference.title = toTitle;\n\t\t\t\tentry = {output: exports.toString(reference)};\n\t\t\t}\n\t\t}\n\t}\n\treturn entry;\n};\n\n/* Same as this.relink, except this has the added constraint that the return\n * value must be able to be wrapped in curly braces.\n */\nexports.relinkInBraces = function(value, fromTitle, toTitle, options) {\n\tvar log = this.relink(value, fromTitle, toTitle, options);\n\tif (log &amp;&amp; log.output &amp;&amp; toTitle.indexOf(\"}\") &gt;= 0) {\n\t\tdelete log.output;\n\t\tlog.impossible = true;\n\t}\n\treturn log;\n};\n\nexports.toString = function(textReference) {\n\tvar title = textReference.title || '';\n\tif (textReference.field) {\n\t\treturn title + \"!!\" + textReference.field;\n\t} else if (textReference.index) {\n\t\treturn title + \"##\" + textReference.index;\n\t}\n\treturn title;\n};\n\nexports.canBePretty = function(title) {\n\treturn !title || (title.indexOf(\"!!\") &lt; 0 &amp;&amp; title.indexOf(\"##\") &lt; 0);\n};\n",
"module-type": "relinkfieldtype",
"title": "$:/plugins/flibbles/relink/js/fieldtypes/reference.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/fieldtypes/title.js": {
"text": "/*\\\nThis specifies logic for replacing a single-tiddler field. This is the\nsimplest kind of field type. One title swaps out for the other.\n\\*/\n\n// NOTE TO MODDERS: If you're making your own field types, the name must be\n// alpha characters only.\nexports.name = 'title';\n\nexports.report = function(value, callback, options) {\n\tcallback(value);\n};\n\n/**Returns undefined if no change was made.\n */\nexports.relink = function(value, fromTitle, toTitle, options) {\n\tif (value === fromTitle) {\n\t\treturn {output: toTitle};\n\t}\n\treturn undefined;\n};\n\n// This is legacy support for when 'title' was known as 'field'\nexports.aliases = ['field', 'yes'];\n",
"module-type": "relinkfieldtype",
"title": "$:/plugins/flibbles/relink/js/fieldtypes/title.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/fieldtypes/wikitext.js": {
"text": "/*\\\nThis specifies logic for updating filters to reflect title changes.\n\\*/\n\nexports.name = \"wikitext\";\n\nvar type = 'text/vnd.tiddlywiki';\n\nvar WikiParser = require(\"$:/core/modules/parsers/wikiparser/wikiparser.js\")[type];\nvar Rebuilder = require(\"$:/plugins/flibbles/relink/js/utils/rebuilder.js\");\nvar utils = require('$:/plugins/flibbles/relink/js/utils');\nvar WikitextContext = utils.getContext('wikitext');\n\nfunction collectRules() {\n\tvar rules = Object.create(null);\n\t$tw.modules.forEachModuleOfType(\"relinkwikitextrule\", function(title, exports) {\n\t\tvar names = exports.name;\n\t\tif (typeof names === \"string\") {\n\t\t\tnames = [names];\n\t\t}\n\t\tif (names !== undefined) {\n\t\t\tfor (var i = 0; i &lt; names.length; i++) {\n\t\t\t\trules[names[i]] = exports;\n\t\t\t}\n\t\t}\n\t});\n\treturn rules;\n}\n\nfunction WikiWalker(type, text, options) {\n\tthis.options = options;\n\tif (!this.relinkMethodsInjected) {\n\t\tvar rules = collectRules();\n\t\t$tw.utils.each([this.pragmaRuleClasses, this.blockRuleClasses, this.inlineRuleClasses], function(classList) {\n\t\t\tfor (var name in classList) {\n\t\t\t\tif (rules[name]) {\n\t\t\t\t\tdelete rules[name].name;\n\t\t\t\t\t$tw.utils.extend(classList[name].prototype, rules[name]);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t\tWikiWalker.prototype.relinkMethodsInjected = true;\n\t}\n\tthis.context = new WikitextContext(options.settings);\n\tWikiParser.call(this, type, text, options);\n};\n\nWikiWalker.prototype = Object.create(WikiParser.prototype);\n\nWikiWalker.prototype.parsePragmas = function() {\n\tvar entries = this.tree;\n\twhile (true) {\n\t\tthis.skipWhitespace();\n\t\tif (this.pos &gt;= this.sourceLength) {\n\t\t\tbreak;\n\t\t}\n\t\tvar nextMatch = this.findNextMatch(this.pragmaRules, this.pos);\n\t\tif (!nextMatch || nextMatch.matchIndex !== this.pos) {\n\t\t\tbreak;\n\t\t}\n\t\tentries.push.apply(entries, this.handleRule(nextMatch));\n\t}\n\treturn entries;\n};\n\nWikiWalker.prototype.parseInlineRunUnterminated = function(options) {\n\tvar entries = [];\n\tvar nextMatch = this.findNextMatch(this.inlineRules, this.pos);\n\twhile (this.pos &lt; this.sourceLength &amp;&amp; nextMatch) {\n\t\tif (nextMatch.matchIndex &gt; this.pos) {\n\t\t\tthis.pos = nextMatch.matchIndex;\n\t\t}\n\t\tentries.push.apply(entries, this.handleRule(nextMatch));\n\t\tnextMatch = this.findNextMatch(this.inlineRules, this.pos);\n\t}\n\tthis.pos = this.sourceLength;\n\treturn entries;\n};\n\nWikiWalker.prototype.parseInlineRunTerminated = function(terminatorRegExp,options) {\n\tvar entries = [];\n\toptions = options || {};\n\tterminatorRegExp.lastIndex = this.pos;\n\tvar terminatorMatch = terminatorRegExp.exec(this.source);\n\tvar inlineRuleMatch = this.findNextMatch(this.inlineRules,this.pos);\n\twhile(this.pos &lt; this.sourceLength &amp;&amp; (terminatorMatch || inlineRuleMatch)) {\n\t\tif (terminatorMatch) {\n\t\t\tif (!inlineRuleMatch || inlineRuleMatch.matchIndex &gt;= terminatorMatch.index) {\n\t\t\t\tthis.pos = terminatorMatch.index;\n\t\t\t\tif (options.eatTerminator) {\n\t\t\t\t\tthis.pos += terminatorMatch[0].length;\n\t\t\t\t}\n\t\t\t\treturn entries;\n\t\t\t}\n\t\t}\n\t\tif (inlineRuleMatch) {\n\t\t\tif (inlineRuleMatch.matchIndex &gt; this.pos) {\n\t\t\t\tthis.pos = inlineRuleMatch.matchIndex;\n\t\t\t}\n\t\t\tentries.push.apply(entries, this.handleRule(inlineRuleMatch));\n\t\t\tinlineRuleMatch = this.findNextMatch(this.inlineRules, this.pos);\n\t\t\tterminatorRegExp.lastIndex = this.pos;\n\t\t\tterminatorMatch = terminatorRegExp.exec(this.source);\n\t\t}\n\t}\n\tthis.pos = this.sourceLength;\n\treturn entries;\n\n};\n\nWikiWalker.prototype.parseBlock = function(terminatorRegExp) {\n\tvar terminatorRegExp = /(\\r?\\n\\r?\\n)/mg;\n\tthis.skipWhitespace();\n\tif (this.pos &gt;= this.sourceLength) {\n\t\treturn [];\n\t}\n\tvar nextMatch = this.findNextMatch(this.blockRules, this.pos);\n\tif(nextMatch &amp;&amp; nextMatch.matchIndex === this.pos) {\n\t\treturn this.handleRule(nextMatch);\n\t}\n\treturn this.parseInlineRun(terminatorRegExp);\n};\
"module-type": "relinkfieldtype",
"title": "$:/plugins/flibbles/relink/js/fieldtypes/wikitext.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/relinkoperations/fields.js": {
"text": "/*\\\n\nHandles all fields specified in the plugin configuration. Currently, this\nonly supports single-value fields.\n\n\\*/\n\n/*jslint node: false, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = 'fields';\n\nexports.report = function(tiddler, callback, options) {\n\tvar fields = options.settings.getFields();\n\t$tw.utils.each(fields, function(handler, field) {\n\t\tvar input = tiddler.fields[field];\n\t\tif (input) {\n\t\t\thandler.report(input, function(title, blurb) {\n\t\t\t\tif (blurb) {\n\t\t\t\t\tcallback(title, field + ': ' + blurb);\n\t\t\t\t} else {\n\t\t\t\t\tcallback(title, field);\n\t\t\t\t}\n\t\t\t}, options);\n\t\t}\n\t});\n};\n\nexports.relink = function(tiddler, fromTitle, toTitle, changes, options) {\n\tvar fields = options.settings.getFields();\n\t$tw.utils.each(fields, function(handler, field) {\n\t\tvar input = tiddler.fields[field];\n\t\tif (input) {\n\t\t\tvar entry = handler.relink(input, fromTitle, toTitle, options);\n\t\t\tif (entry !== undefined) {\n\t\t\t\tchanges[field] = entry;\n\t\t\t}\n\t\t}\n\t});\n};\n",
"module-type": "relinkoperator",
"title": "$:/plugins/flibbles/relink/js/relinkoperations/fields.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/relinkoperations/text.js": {
"text": "/*\\\n\nDepending on the tiddler type, this will apply textOperators which may\nrelink titles within the body.\n\n\\*/\n\n/*jslint node: false, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar defaultOperator = \"text/vnd.tiddlywiki\";\nvar utils = require('$:/plugins/flibbles/relink/js/utils.js');\n\nexports.name = 'text';\n\nvar textOperators = utils.getModulesByTypeAsHashmap('relinktextoperator', 'type');\n\n// $:/DefaultTiddlers is a tiddler which has type \"text/vnd.tiddlywiki\",\n// but it lies. It doesn't contain wikitext. It contains a filter, so\n// we pretend it has a filter type.\n// If you want to be able to add more exceptions for your plugin, let me know.\nvar exceptions = {\n\t\"$:/DefaultTiddlers\": \"text/x-tiddler-filter\"\n};\n\nexports.report = function(tiddler, callback, options) {\n\tvar fields = tiddler.fields;\n\tif (fields.text) {\n\t\tvar type = exceptions[fields.title] || fields.type || defaultOperator;\n\t\tif (textOperators[type]) {\n\t\t\tvar entry = textOperators[type].report(tiddler, callback, options);\n\t\t}\n\t}\n};\n\nexports.relink = function(tiddler, fromTitle, toTitle, changes, options) {\n\tvar fields = tiddler.fields;\n\tif (fields.text) {\n\t\tvar type = exceptions[fields.title] || fields.type || defaultOperator;\n\t\tif (textOperators[type]) {\n\t\t\tvar entry = textOperators[type].relink(tiddler, fromTitle, toTitle, options);\n\t\t\tif (entry) {\n\t\t\t\tchanges.text = entry;\n\t\t\t}\n\t\t}\n\t}\n};\n",
"module-type": "relinkoperator",
"title": "$:/plugins/flibbles/relink/js/relinkoperations/text.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/relinkoperations/text/filtertext.js": {
"text": "/*\\\n\nThis relinks tiddlers which contain filters in their body, as oppose to\nwikitext.\n\n\\*/\n\n/*jslint node: false, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar filterHandler = require(\"$:/plugins/flibbles/relink/js/utils\").getType('filter');\n\nexports.type = 'text/x-tiddler-filter';\n\nexports.report = function(tiddler, callback, options) {\n\treturn filterHandler.report(tiddler.fields.text, callback, options);\n};\n\nexports.relink = function(tiddler, fromTitle, toTitle, options) {\n\treturn filterHandler.relink(tiddler.fields.text, fromTitle, toTitle, options)\n};\n",
"module-type": "relinktextoperator",
"title": "$:/plugins/flibbles/relink/js/relinkoperations/text/filtertext.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext.js": {
"text": "/*\\\n\nChecks for fromTitle in a tiddler's text. If found, sees if it's relevant,\nand tries to swap it out if it is.\n\n\\*/\n\n/*jslint node: false, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Placeholder = require(\"$:/plugins/flibbles/relink/js/utils/placeholder.js\");\nvar wikitextHandler = require('$:/plugins/flibbles/relink/js/utils.js').getType('wikitext');\n\nexports.type = 'text/vnd.tiddlywiki';\n\nexports.report = function(tiddler, callback, options) {\n\twikitextHandler.report(tiddler.fields.text, callback, options);\n};\n\nexports.relink = function(tiddler, fromTitle, toTitle, options) {\n\tvar placeholder = new Placeholder();\n\tvar currentOptions = Object.create(options);\n\tcurrentOptions.placeholder = placeholder;\n\tvar entry = wikitextHandler.relink(tiddler.fields.text, fromTitle, toTitle, currentOptions);\n\tif (entry &amp;&amp; entry.output) {\n\t\t// If there's output, we've also got to prepend any macros\n\t\t// that the placeholder defined.\n\t\tvar preamble = placeholder.getPreamble();\n\t\tentry.output = preamble + entry.output;\n\t}\n\treturn entry;\n};\n",
"module-type": "relinktextoperator",
"title": "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/code.js": {
"text": "/*\\\nmodule-type: relinkwikitextrule\n\nHandles code blocks. Or rather //doesn't// handle them, since we should\nignore their contents.\n\n\"`` [[Renamed Title]] ``\" will remain unchanged.\n\n\\*/\n\nexports.name = [\"codeinline\", \"codeblock\"];\n\nexports.relink = function(text) {\n\tvar reEnd;\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// I'm lazy. This relink method works for both codeblock and codeinline\n\tif (this.match[0].length &gt; 2) {\n\t\t// Must be a codeblock\n\t\treEnd = /\\r?\\n```$/mg;\n\t} else {\n\t\t// Must be a codeinline\n\t\treEnd = new RegExp(this.match[1], \"mg\");\n\t}\n\treEnd.lastIndex = this.parser.pos;\n\tvar match = reEnd.exec(text);\n\tif (match) {\n\t\tthis.parser.pos = match.index + match[0].length;\n\t} else {\n\t\tthis.parser.pos = this.parser.sourceLength;\n\t}\n\treturn undefined;\n};\n\n// Same thing. Just skip the pos ahead.\nexports.report = exports.relink;\n",
"module-type": "relinkwikitextrule",
"title": "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/code.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/comment.js": {
"text": "/*\\\nmodule-type: relinkwikitextrule\n\nHandles comment blocks. Or rather //doesn't// handle them, since we should\nignore their contents.\n\n\"&lt;!-- [[Renamed Title]] --&gt;\" will remain unchanged.\n\n\\*/\n\nexports.name = [\"commentinline\", \"commentblock\"];\n\nexports.relink = function(text) {\n\tthis.parser.pos = this.endMatchRegExp.lastIndex;\n\treturn undefined;\n};\n\nexports.report = exports.relink;\n",
"module-type": "relinkwikitextrule",
"title": "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/comment.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/filteredtransclude.js": {
"text": "/*\\\nmodule-type: relinkwikitextrule\n\nHandles replacement of filtered transclusions in wiki text like,\n\n{{{ [tag[docs]] }}}\n{{{ [tag[docs]] |tooltip}}}\n{{{ [tag[docs]] ||TemplateTitle}}}\n{{{ [tag[docs]] |tooltip||TemplateTitle}}}\n{{{ [tag[docs]] }}width:40;height:50;}.class.class\n\nThis renames both the list and the template field.\n\n\\*/\n\nexports.name = ['filteredtranscludeinline', 'filteredtranscludeblock'];\n\nvar filterHandler = require(\"$:/plugins/flibbles/relink/js/utils\").getType('filter');\nvar utils = require(\"./utils.js\");\n\nexports.report = function(text, callback, options) {\n\tvar m = this.match,\n\t\tfilter = m[1],\n\t\ttemplate = $tw.utils.trim(m[3]),\n\t\tappend = template ? '||' + template + '}}}' : '}}}';\n\tfilterHandler.report(filter, function(title, blurb) {\n\t\tcallback(title, '{{{' + blurb + append);\n\t}, options);\n\tif (template) {\n\t\tcallback(template, '{{{' + $tw.utils.trim(filter).replace(/\\r?\\n/mg, ' ') + '||}}}');\n\t}\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n};\n\nexports.relink = function(text, fromTitle, toTitle, options) {\n\tvar m = this.match,\n\t\tfilter = m[1],\n\t\ttooltip = m[2],\n\t\ttemplate = m[3],\n\t\tstyle = m[4],\n\t\tclasses = m[5],\n\t\tparser = this.parser,\n\t\tentry = {};\n\tparser.pos = this.matchRegExp.lastIndex;\n\tvar modified = false;\n\n\tvar filterEntry = filterHandler.relink(filter, fromTitle, toTitle, options);\n\tif (filterEntry !== undefined) {\n\t\tif (filterEntry.output) {\n\t\t\tfilter = filterEntry.output;\n\t\t\tmodified = true;\n\t\t}\n\t\tif (filterEntry.impossible) {\n\t\t\tentry.impossible = true;\n\t\t}\n\t}\n\n\tif ($tw.utils.trim(template) === fromTitle) {\n\t\t// preserves user-inputted whitespace\n\t\ttemplate = template.replace(fromTitle, toTitle);\n\t\tmodified = true;\n\t}\n\tif (!modified) {\n\t\tif (!entry.impossible) {\n\t\t\treturn undefined;\n\t\t}\n\t} else {\n\t\tvar output = this.makeFilteredtransclude(this.parser, filter, tooltip, template, style, classes);\n\t\tif (output === undefined) {\n\t\t\tentry.impossible = true;\n\t\t} else {\n\t\t\t// By copying over the ending newline of the original\n\t\t\t// text if present, thisrelink method thus works for\n\t\t\t// both the inline and block rule\n\t\t\tentry.output = output + utils.getEndingNewline(m[0]);\n\t\t}\n\t}\n\treturn entry;\n};\n\nexports.makeFilteredtransclude = function(parser, filter, tooltip, template, style, classes) {\n\tif (canBePretty(filter) &amp;&amp; canBePrettyTemplate(template)) {\n\t\treturn prettyList(filter, tooltip, template, style, classes);\n\t}\n\tif (classes !== undefined) {\n\t\tclasses = classes.split('.').join(' ');\n\t}\n\treturn utils.makeWidget(parser, '$list', {\n\t\tfilter: filter,\n\t\ttooltip: tooltip,\n\t\ttemplate: template,\n\t\tstyle: style || undefined,\n\t\titemClass: classes});\n};\n\nfunction prettyList(filter, tooltip, template, style, classes) {\n\tif (tooltip === undefined) {\n\t\ttooltip = '';\n\t} else {\n\t\ttooltip = \"|\" + tooltip;\n\t}\n\tif (template === undefined) {\n\t\ttemplate = '';\n\t} else {\n\t\ttemplate = \"||\" + template;\n\t}\n\tif (classes === undefined) {\n\t\tclasses = '';\n\t} else {\n\t\tclasses = \".\" + classes;\n\t}\n\tstyle = style || '';\n\treturn \"{{{\"+filter+tooltip+template+\"}}\"+style+\"}\"+classes;\n};\n\nfunction canBePretty(filter) {\n\treturn filter.indexOf('|') &lt; 0 &amp;&amp; filter.indexOf('}}') &lt; 0;\n};\n\nfunction canBePrettyTemplate(template) {\n\treturn !template || (\n\t\ttemplate.indexOf('|') &lt; 0\n\t\t&amp;&amp; template.indexOf('{') &lt; 0\n\t\t&amp;&amp; template.indexOf('}') &lt; 0);\n};\n",
"module-type": "relinkwikitextrule",
"title": "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/filteredtransclude.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/html.js": {
"text": "/*\\\nmodule-type: relinkwikitextrule\n\nHandles replacement in attributes of widgets and html elements\nThis is configurable to select exactly which attributes of which elements\nshould be changed.\n\n&lt;$link to=\"TiddlerTitle\" /&gt;\n\n\\*/\n\nvar utils = require(\"./utils.js\");\nvar Rebuilder = require(\"$:/plugins/flibbles/relink/js/utils/rebuilder\");\nvar relinkUtils = require('$:/plugins/flibbles/relink/js/utils.js');\nvar refHandler = relinkUtils.getType('reference');\nvar filterHandler = relinkUtils.getType('filter');\nvar ImportContext = relinkUtils.getContext('import');\nvar macrocall = require(\"./macrocall.js\");\n\nexports.name = \"html\";\n\nexports.report = function(text, callback, options) {\n\tvar managedElement = this.parser.context.getAttribute(this.nextTag.tag);\n\tvar importFilterAttr;\n\tvar element = this.nextTag.tag;\n\tfor (var attributeName in this.nextTag.attributes) {\n\t\tvar attr = this.nextTag.attributes[attributeName];\n\t\tvar nextEql = text.indexOf('=', attr.start);\n\t\t// This is the rare case of changing tiddler\n\t\t// \"true\" to something else when \"true\" is\n\t\t// implicit, like &lt;$link to /&gt; We ignore those.\n\t\tif (nextEql &lt; 0 || nextEql &gt; attr.end) {\n\t\t\tcontinue;\n\t\t}\n\t\tif (this.nextTag.tag === \"$importvariables\" &amp;&amp; attributeName === \"filter\") {\n\t\t\timportFilterAttr = attr;\n\t\t}\n\t\tvar oldLength, quotedValue = undefined, entry;\n\t\tif (attr.type === \"string\") {\n\t\t\tvar handler = getAttributeHandler(this.parser.context, this.nextTag, attributeName, options);\n\t\t\tif (!handler) {\n\t\t\t\t// We don't manage this attribute. Bye.\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\thandler.report(attr.value, function(title, blurb) {\n\t\t\t\tif (blurb) {\n\t\t\t\t\tcallback(title, '&lt;' + element + ' ' + attributeName + '=\"' + blurb + '\" /&gt;');\n\t\t\t\t} else {\n\t\t\t\t\tcallback(title, '&lt;' + element + ' ' + attributeName + ' /&gt;');\n\t\t\t\t}\n\t\t\t}, options);\n\t\t} else if (attr.type === \"indirect\") {\n\t\t\tentry = refHandler.report(attr.textReference, function(title, blurb) {\n\t\t\t\tcallback(title, '&lt;' + element + ' ' + attributeName + '={{' + (blurb || '') + '}} /&gt;');\n\t\t\t}, options);\n\t\t} else if (attr.type === \"filtered\") {\n\t\t\tentry = filterHandler.report(attr.filter, function(title, blurb) {\n\t\t\t\tcallback(title, '&lt;' + element + ' ' + attributeName + '={{{' + blurb + '}}} /&gt;');\n\t\t\t}, options);\n\t\t} else if (attr.type === \"macro\") {\n\t\t\tvar macro = attr.value;\n\t\t\tentry = macrocall.reportAttribute(this.parser, macro, function(title, blurb) {\n\t\t\t\tcallback(title, '&lt;' + element + ' ' + attributeName + '=' + blurb + ' /&gt;');\n\t\t\t}, options);\n\t\t}\n\t\tif (quotedValue === undefined) {\n\t\t\tcontinue;\n\t\t}\n\t\tif (this.nextTag.tag === \"$importvariables\" &amp;&amp; attributeName === \"filter\") {\n\t\t\t// If this is an import variable filter, we gotta\n\t\t\t// remember this new value when we import lower down.\n\t\t\timportFilterAttr = quotedValue;\n\t\t}\n\t}\n\tif (importFilterAttr) {\n\t\tprocessImportFilter(this.parser, importFilterAttr, options);\n\t}\n\tthis.parse();\n};\n\nexports.relink = function(text, fromTitle, toTitle, options) {\n\tvar managedElement = this.parser.context.getAttribute(this.nextTag.tag),\n\t\tbuilder = new Rebuilder(text, this.nextTag.start);\n\tvar importFilterAttr;\n\tvar widgetEntry = {};\n\twidgetEntry.attributes = Object.create(null);\n\twidgetEntry.element = this.nextTag.tag;\n\tfor (var attributeName in this.nextTag.attributes) {\n\t\tvar attr = this.nextTag.attributes[attributeName];\n\t\tvar nextEql = text.indexOf('=', attr.start);\n\t\t// This is the rare case of changing tiddler\n\t\t// \"true\" to something else when \"true\" is\n\t\t// implicit, like &lt;$link to /&gt; We ignore those.\n\t\tif (nextEql &lt; 0 || nextEql &gt; attr.end) {\n\t\t\tcontinue;\n\t\t}\n\t\tif (this.nextTag.tag === \"$importvariables\" &amp;&amp; attributeName === \"filter\") {\n\t\t\timportFilterAttr = attr;\n\t\t}\n\t\tvar o
"module-type": "relinkwikitextrule",
"title": "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/html.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/image.js": {
"text": "/*\\\nmodule-type: relinkwikitextrule\n\nHandles replacement in wiki text inline rules, like,\n\n[img[tiddler.jpg]]\n\n[img width=23 height=24 [Description|tiddler.jpg]]\n\n\\*/\n\nvar Rebuilder = require(\"$:/plugins/flibbles/relink/js/utils/rebuilder\");\nvar refHandler = require(\"$:/plugins/flibbles/relink/js/fieldtypes/reference\");\nvar filterHandler = require(\"$:/plugins/flibbles/relink/js/utils\").getType('filter');\nvar macrocall = require(\"./macrocall.js\");\nvar utils = require(\"./utils.js\");\n\nexports.name = \"image\";\n\nexports.report = function(text, callback, options) {\n\tvar ptr = this.nextImage.start + 4; //[img\n\tvar inSource = false;\n\tfor (var attributeName in this.nextImage.attributes) {\n\t\tvar attr = this.nextImage.attributes[attributeName];\n\t\tif (attributeName === \"source\" || attributeName === \"tooltip\") {\n\t\t\tif (inSource) {\n\t\t\t\tptr = text.indexOf('|', ptr);\n\t\t\t} else {\n\t\t\t\tptr = text.indexOf('[', ptr);\n\t\t\t\tinSource = true;\n\t\t\t}\n\t\t\tptr += 1;\n\t\t}\n\t\tif (attributeName === \"source\") {\n\t\t\tvar tooltip = this.nextImage.attributes.tooltip;\n\t\t\tvar blurb = '[img[' + (tooltip ? tooltip.value : '') + ']]';\n\t\t\tcallback(attr.value, blurb);\n\t\t\tptr = text.indexOf(attr.value, ptr);\n\t\t\tptr = text.indexOf(']]', ptr) + 2;\n\t\t} else if (attributeName !== \"tooltip\") {\n\t\t\tptr = reportAttribute(this.parser, attr, callback, options);\n\t\t}\n\t}\n\tthis.parser.pos = ptr;\n};\n\nexports.relink = function(text, fromTitle, toTitle, options) {\n\tvar ptr = this.nextImage.start,\n\t\tbuilder = new Rebuilder(text, ptr),\n\t\tmakeWidget = false,\n\t\tskipSource = false,\n\t\timageEntry;\n\tif (this.nextImage.attributes.source.value === fromTitle &amp;&amp; !canBePretty(toTitle, this.nextImage.attributes.tooltip)) {\n\t\tif (this.parser.context.allowWidgets() &amp;&amp; (utils.wrapAttributeValue(toTitle) || options.placeholder)) {\n\t\t\tmakeWidget = true;\n\t\t\tbuilder.add(\"&lt;$image\", ptr, ptr+4);\n\t\t} else {\n\t\t\t// We won't be able to make a placeholder to replace\n\t\t\t// the source attribute. We check now so we don't\n\t\t\t// prematurely convert into a widget.\n\t\t\t// Keep going in case other attributes need replacing.\n\t\t\tskipSource = true;\n\t\t}\n\t}\n\tptr += 4; //[img\n\tvar inSource = false;\n\tfor (var attributeName in this.nextImage.attributes) {\n\t\tvar attr = this.nextImage.attributes[attributeName];\n\t\tif (attributeName === \"source\" || attributeName === \"tooltip\") {\n\t\t\tif (inSource) {\n\t\t\t\tptr = text.indexOf('|', ptr);\n\t\t\t} else {\n\t\t\t\tptr = text.indexOf('[', ptr);\n\t\t\t\tinSource = true;\n\t\t\t}\n\t\t\tif (makeWidget) {\n\t\t\t\tif (\" \\t\\n\".indexOf(text[ptr-1]) &gt;= 0) {\n\t\t\t\t\tbuilder.add('', ptr, ptr+1);\n\t\t\t\t} else {\n\t\t\t\t\tbuilder.add(' ', ptr, ptr+1);\n\t\t\t\t}\n\t\t\t}\n\t\t\tptr += 1;\n\t\t}\n\t\tif (attributeName === \"source\") {\n\t\t\tptr = text.indexOf(attr.value, ptr);\n\t\t\tif (attr.value === fromTitle) {\n\t\t\t\tif (makeWidget) {\n\t\t\t\t\tvar quotedValue = utils.wrapAttributeValue(toTitle);\n\t\t\t\t\tif (quotedValue === undefined) {\n\t\t\t\t\t\tvar key = options.placeholder.getPlaceholderFor(toTitle);\n\t\t\t\t\t\tbuilder.add(\"source=&lt;&lt;\"+key+\"&gt;&gt;\", ptr, ptr+fromTitle.length);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tbuilder.add(\"source=\"+quotedValue, ptr, ptr+fromTitle.length);\n\t\t\t\t\t}\n\t\t\t\t} else if (!skipSource) {\n\t\t\t\t\tbuilder.add(toTitle, ptr, ptr+fromTitle.length);\n\t\t\t\t} else {\n\t\t\t\t\tbuilder.impossible = true;\n\t\t\t\t}\n\t\t\t}\n\t\t\tptr = text.indexOf(']]', ptr);\n\t\t\tif (makeWidget) {\n\t\t\t\tbuilder.add(\"/&gt;\", ptr, ptr+2);\n\t\t\t}\n\t\t\tptr += 2;\n\t\t} else if (attributeName === \"tooltip\") {\n\t\t\tif (makeWidget) {\n\t\t\t\tptr = text.indexOf(attr.value, ptr);\n\t\t\t\tvar quotedValue = utils.wrapAttributeValue(attr.value);\n\t\t\t\tbuilder.add(\"tooltip=\"+quotedValue, ptr, ptr+attr.value.length);\n\t\t\t}\n\t\t} else {\n\t\t\tptr = relinkAttribute(this.parser, attr, build
"module-type": "relinkwikitextrule",
"title": "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/image.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/import.js": {
"text": "/*\\\nmodule-type: relinkwikitextrule\n\nHandles import pragmas\n\n\\import [tag[MyTiddler]]\n\\*/\n\nvar utils = require(\"$:/plugins/flibbles/relink/js/utils.js\");\nvar filterRelinker = utils.getType('filter');\nvar ImportContext = utils.getContext('import');\n\nexports.name = \"import\";\n\nexports.report = function(text, callback, options) {\n\t// This moves the pos for us\n\tvar parseTree = this.parse();\n\tvar filter = parseTree[0].attributes.filter.value || '';\n\tfilterRelinker.report(filter, function(title, blurb) {\n\t\tif (blurb) {\n\t\t\tblurb = '\\\\import ' + blurb;\n\t\t} else {\n\t\t\tblurb = '\\\\import';\n\t\t}\n\t\tcallback(title, blurb);\n\t}, options);\n\t// Before we go, we need to actually import the variables\n\t// it's calling for, and any /relink pragma\n\tthis.parser.context = new ImportContext(options.wiki, this.parser.context, filter);\n};\n\nexports.relink = function(text, fromTitle, toTitle, options) {\n\t// In this one case, I'll let the parser parse out the filter and move\n\t// the ptr.\n\tvar start = this.matchRegExp.lastIndex,\n\t\tparseTree = this.parse(),\n\t\tfilter = parseTree[0].attributes.filter.value || '',\n\t\tentry = filterRelinker.relink(filter, fromTitle, toTitle, options);\n\tif (entry !== undefined &amp;&amp; entry.output) {\n\t\tvar newline = text.substring(start+filter.length, this.parser.pos);\n\t\tfilter = entry.output;\n\t\tentry.output = \"\\\\import \" + filter + newline;\n\t}\n\n\t// Before we go, we need to actually import the variables\n\t// it's calling for, and any /relink pragma\n\tthis.parser.context = new ImportContext(options.wiki, this.parser.context, filter);\n\n\treturn entry;\n};\n",
"module-type": "relinkwikitextrule",
"title": "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/import.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/macrocall.js": {
"text": "/*\\\nmodule-type: relinkwikitextrule\n\nHandles macro calls.\n\n&lt;&lt;myMacro '[[MyFilter]]' 'myTitle'&gt;&gt;\n\n\\*/\n\nvar utils = require(\"./utils.js\");\nvar Rebuilder = require(\"$:/plugins/flibbles/relink/js/utils/rebuilder\");\nvar EntryNode = require('$:/plugins/flibbles/relink/js/utils/entry');\n\nexports.name = [\"macrocallinline\", \"macrocallblock\"];\n\n// Error thrown when a macro's definition is needed, but can't be found.\nfunction CannotFindMacroDef() {};\nCannotFindMacroDef.prototype.impossible = true;\nCannotFindMacroDef.prototype.name = \"macroparam\";\n// Failed relinks due to missing definitions aren't reported for now.\n// I may want to do something special later on.\nCannotFindMacroDef.prototype.report = function() { return []; };\n\nexports.report = function(text, callback, options) {\n\tvar macroInfo = getInfoFromRule(this);\n\tthis.parser.pos = macroInfo.end;\n\tthis.reportAttribute(this.parser, macroInfo, callback, options);\n};\n\nexports.relink = function(text, fromTitle, toTitle, options) {\n\tvar macroInfo = getInfoFromRule(this);\n\tvar managedMacro = this.parser.context.getMacro(macroInfo.name);\n\tthis.parser.pos = macroInfo.end;\n\tif (!managedMacro) {\n\t\t// We don't manage this macro. Bye.\n\t\treturn undefined;\n\t}\n\tvar mayBeWidget = this.parser.context.allowWidgets();\n\tvar names = getParamNames(this.parser, macroInfo.name, macroInfo.params, options);\n\tif (names === undefined) {\n\t\t// Needed the definition, and couldn't find it. So if a single\n\t\t// parameter needs to placeholder, just fail.\n\t\tmayBeWidget = false;\n\t}\n\tvar entry = relinkMacroInvocation(this.parser, macroInfo, text, fromTitle, toTitle, mayBeWidget, options);\n\tif (entry &amp;&amp; entry.output) {\n\t\tentry.output = macroToString(entry.output, text, names, options);\n\t}\n\treturn entry;\n};\n\n/** Relinks macros that occur as attributes, like &lt;$element attr=&lt;&lt;...&gt;&gt; /&gt;\n * Processes the same, except it can't downgrade into a widget if the title\n * is complicated.\n */\nexports.relinkAttribute = function(parser, macro, text, fromTitle, toTitle, options) {\n\tvar entry = relinkMacroInvocation(parser, macro, text, fromTitle, toTitle, false, options);\n\tif (entry &amp;&amp; entry.output) {\n\t\tentry.output = macroToStringMacro(entry.output, text, options);\n\t}\n\treturn entry;\n};\n\n/** As in, report a macrocall invocation that is an html attribute. */\nexports.reportAttribute = function(parser, macro, callback, options) {\n\tvar managedMacro = parser.context.getMacro(macro.name);\n\tif (!managedMacro) {\n\t\t// We don't manage this macro. Bye.\n\t\treturn undefined;\n\t}\n\tfor (var managedArg in managedMacro) {\n\t\tvar index;\n\t\ttry {\n\t\t\tindex = getParamIndexWithinMacrocall(parser, macro.name, managedArg, macro.params, options);\n\t\t} catch (e) {\n\t\t\tcontinue;\n\t\t}\n\t\tif (index &lt; 0) {\n\t\t\t// The argument was not supplied. Move on to next.\n\t\t\tcontinue;\n\t\t}\n\t\tvar param = macro.params[index];\n\t\tvar handler = managedMacro[managedArg];\n\t\tvar nestedOptions = Object.create(options);\n\t\tnestedOptions.settings = parser.context;\n\t\tvar entry = handler.report(param.value, function(title, blurb) {\n\t\t\tvar rtn = managedArg;\n\t\t\tif (blurb) {\n\t\t\t\trtn += ': \"' + blurb + '\"';\n\t\t\t}\n\t\t\tcallback(title, '&lt;&lt;' + macro.name + ' ' + rtn + '&gt;&gt;');\n\t\t}, nestedOptions);\n\t}\n};\n\n/**Processes the given macro,\n * macro: {name:, params:, start:, end:}\n * each parameters: {name:, end:, value:}\n * Macro invocation returned is the same, but relinked, and may have new keys:\n * parameters: {type: macro, start:, newValue: (quoted replacement value)}\n * Output of the returned entry isn't a string, but a macro object. It needs\n * to be converted.\n */\nfunction relinkMacroInvocation(parser, macro, text, fromTitle, toTitle, mayBeWidget, options) {\n\tvar managedMacro = parser.context.getMacro(macro.name);\n\tvar modified = false;\n\tif (!managedMacro) {\n\t\t// We don't manage this macro. Bye.\n\t\treturn
"module-type": "relinkwikitextrule",
"title": "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/macrocall.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/macrodef.js": {
"text": "/*\\\nmodule-type: relinkwikitextrule\n\nHandles pragma macro definitions. Except we only update placeholder macros\nthat we may have previously install.\n\n\\define relink-?() Tough title\n\n\\*/\n\nvar utils = require(\"$:/plugins/flibbles/relink/js/utils\");\nvar VariableContext = utils.getContext('variable');\n\nexports.name = \"macrodef\";\n\nexports.report = function(text, callback, options) {\n\tvar setParseTreeNode = this.parse(),\n\t\tm = this.match,\n\t\tname = m[1];\n\tthis.parser.context = new VariableContext(this.parser.context, setParseTreeNode[0]);\n\t// Parse set the pos pointer, but we don't want to skip the macro body.\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\tvar endMatch = getBodyMatch(text, this.parser.pos, m[3]);\n\tif (endMatch) {\n\t\tvar value = endMatch[2],\n\t\t\thandler = utils.getType(getActiveType(name, m[2]) || 'wikitext');\n\t\tif (handler) {\n\t\t\tvar entry = handler.report(value, function(title, blurb) {\n\t\t\t\tvar macroStr = '\\\\define ' + name + '()';\n\t\t\t\tif (blurb) {\n\t\t\t\t\tmacroStr += ' ' + blurb;\n\t\t\t\t}\n\t\t\t\tcallback(title, macroStr);\n\t\t\t}, options);\n\t\t}\n\t\tthis.parser.pos = endMatch.index + endMatch[0].length;\n\t}\n};\n\nexports.relink = function(text, fromTitle, toTitle, options) {\n\tvar setParseTreeNode = this.parse(),\n\t\tentry,\n\t\tm = this.match,\n\t\tname = m[1],\n\t\tparams = m[2],\n\t\tmultiline = m[3];\n\tthis.parser.context = new VariableContext(this.parser.context, setParseTreeNode[0]);\n\t// Parse set the pos pointer, but we don't want to skip the macro body.\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\tvar endMatch = getBodyMatch(text, this.parser.pos, multiline);\n\tif (endMatch) {\n\t\tvar value = endMatch[2],\n\t\t\ttype = getActiveType(name, params),\n\t\t\thandler = utils.getType(type || 'wikitext');\n\t\tif (handler) {\n\t\t\t// If this is an active relink placeholder, then let's remember it\n\t\t\tif (type &amp;&amp; options.placeholder) {\n\t\t\t\toptions.placeholder.registerExisting(name, value);\n\t\t\t}\n\t\t\t// Relink the contents\n\t\t\tentry = handler.relink(value, fromTitle, toTitle, options);\n\t\t\tif (entry &amp;&amp; entry.output) {\n\t\t\t\tentry.output = m[0] + endMatch[1] + entry.output + endMatch[0];\n\t\t\t}\n\t\t}\n\t\tthis.parser.pos = endMatch.index + endMatch[0].length;\n\t}\n\treturn entry;\n};\n\n// Return another match for the body, but tooled uniquely\n// m[1] = whitespace before body\n// m[2] = body\n// m.index + m[0].length -&gt; end of match\nfunction getBodyMatch(text, pos, isMultiline) {\n\tvar whitespace,\n\t\tvalueRegExp;\n\tif (isMultiline) {\n\t\tvalueRegExp = /\\r?\\n\\\\end[^\\S\\n\\r]*(?:\\r?\\n|$)/mg;\n\t\twhitespace = '';\n\t} else {\n\t\tvalueRegExp = /(?:\\r?\\n|$)/mg;\n\t\tvar newPos = $tw.utils.skipWhiteSpace(text, pos);\n\t\twhitespace = text.substring(pos, newPos);\n\t\tpos = newPos;\n\t}\n\tvalueRegExp.lastIndex = pos;\n\tvar match = valueRegExp.exec(text);\n\tif (match) {\n\t\tmatch[1] = whitespace;\n\t\tmatch[2] = text.substring(pos, match.index);\n\t}\n\treturn match;\n};\n\nfunction getActiveType(macroName, parameters) {\n\tvar placeholder = /^relink-(?:(\\w+)-)?\\d+$/.exec(macroName);\n\t// normal macro or special placeholder?\n\tif (placeholder &amp;&amp; parameters === '') {\n\t\treturn placeholder[1] || 'title';\n\t}\n\treturn undefined;\n};\n",
"module-type": "relinkwikitextrule",
"title": "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/macrodef.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/prettylink.js": {
"text": "/*\\\nmodule-type: relinkwikitextrule\n\nHandles replacement in wiki text inline rules, like,\n\n[[Introduction]]\n\n[[link description|TiddlerTitle]]\n\n\\*/\n\nvar utils = require(\"./utils.js\");\n\nexports.name = \"prettylink\";\n\nexports.report = function(text, callback, options) {\n\tvar text = this.match[1],\n\t\tlink = this.match[2] || text;\n\tif (!$tw.utils.isLinkExternal(link)) {\n\t\tcallback(link, '[[' + text + ']]');\n\t}\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n};\n\nexports.relink = function(text, fromTitle, toTitle, options) {\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\tvar caption, m = this.match;\n\tif (m[2] === fromTitle) {\n\t\t// format is [[caption|MyTiddler]]\n\t\tcaption = m[1];\n\t} else if (m[2] !== undefined || m[1] !== fromTitle) {\n\t\t// format is [[MyTiddler]], and it doesn't match\n\t\treturn undefined;\n\t}\n\tvar entry = { output: utils.makePrettylink(this.parser, toTitle, caption) };\n\tif (entry.output === undefined) {\n\t\tentry.impossible = true;\n\t}\n\treturn entry;\n};\n",
"module-type": "relinkwikitextrule",
"title": "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/prettylink.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/relink.js": {
"text": "/*\\\nmodule-type: wikirule\n\nThis defines the \\relink inline pragma used to locally declare\nrelink rules for macros.\n\nIt takes care of providing its own relink and report rules.\n\n\\*/\n\nvar utils = require('$:/plugins/flibbles/relink/js/utils.js');\nvar language = require('$:/plugins/flibbles/relink/js/language.js');\n\nexports.name = \"relink\";\nexports.types = {pragma: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\tthis.matchRegExp = /^\\\\relink[^\\S\\n]+([^(\\s]+)([^\\r\\n]*)(\\r?\\n)?/mg;\n};\n\n/**This makes the widget that the macro library will later parse to determine\n * new macro relink state.\n *\n * It's a &lt;$set&gt; widget so it can appear BEFORE \\define pragma and not\n * prevent that pragma from being scooped up by importvariables.\n * (importvariables stops scooping as soon as it sees something besides $set) */\nexports.parse = function() {\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\tvar macroName;\n\tvar macroParams = Object.create(null);\n\tvar error = undefined;\n\tvar rtn = [];\n\tvar self = this;\n\tthis.interpretSettings(function(macro, parameter, type) {\n\t\tmacroName = macro;\n\t\tif (type &amp;&amp; !utils.getType(type)) {\n\t\t\terror = language.getString(\"Error/UnrecognizedType\",\n\t\t\t\t{variables: {type: type}, wiki: self.parser.wiki});\n\t\t}\n\t\tmacroParams[parameter] = type;\n\t});\n\t// If no macroname. Return nothing, this rule will be ignored by parsers\n\tif (macroName) {\n\t\tvar relink = Object.create(null);\n\t\trelink[macroName] = macroParams;\n\t\trtn.push({\n\t\t\ttype: \"set\",\n\t\t\tattributes: {\n\t\t\t\tname: {type: \"string\", value: \"\"}\n\t\t\t},\n\t\t\tchildren: [],\n\t\t\tisMacroDefinition: true,\n\t\t\trelink: relink});\n\t}\n\tif (error) {\n\t\trtn.push({\n\t\t\ttype: \"element\", tag: \"span\", attributes: {\n\t\t\t\t\"class\": {\n\t\t\t\t\ttype: \"string\",\n\t\t\t\t\tvalue: \"tc-error tc-relink-error\"\n\t\t\t\t}\n\t\t\t}, children: [\n\t\t\t\t{type: \"text\", text: error}\n\t\t\t]});\n\t}\n\treturn rtn;\n};\n\nexports.relink = function(text, fromTitle, toTitle, options) {\n\tvar parser = this.parser;\n\tvar currentTiddler = parser.context.widget.variables.currentTiddler.value;\n\tparser.pos = this.matchRegExp.lastIndex;\n\tthis.interpretSettings(function(macro, parameter, type) {\n\t\toptions.settings.addSetting(parser.wiki, macro, parameter, type, currentTiddler);\n\t});\n\t// Return nothing, because this rule is ignored by the parser\n\treturn undefined;\n};\n\nexports.interpretSettings = function(block) {\n\tvar paramString = this.match[2];\n\tif (paramString !== \"\") {\n\t\tvar macro = this.match[1];\n\t\tvar reParam = /\\s*([A-Za-z0-9\\-_]+)(?:\\s*:\\s*([^\\s]+))?/mg;\n\t\tvar paramMatch = reParam.exec(paramString);\n\t\twhile (paramMatch) {\n\t\t\tvar parameter = paramMatch[1];\n\t\t\tvar type = paramMatch[2];\n\t\t\tblock(macro, parameter, type);\n\t\t\tparamMatch = reParam.exec(paramString);\n\t\t}\n\t}\n};\n",
"module-type": "wikirule",
"title": "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/relink.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/rules.js": {
"text": "/*\\\nmodule-type: relinkwikitextrule\n\nParses and acknowledges any pragma rules a tiddler has.\n\n\\rules except html wikilink\n\n\\*/\n\nexports.name = \"rules\";\n\n/**This is all we have to do. The rules rule doesn't parse. It just amends\n * the rules, which is exactly what I want it to do too.\n * It also takes care of moving the pos pointer forward.\n */\nexports.relink = function() {\n\tthis.parse();\n\treturn undefined;\n};\n\n// Same deal\nexports.report = exports.relink;\n",
"module-type": "relinkwikitextrule",
"title": "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/rules.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/syslink.js": {
"text": "/*\\\nmodule-type: relinkwikitextrule\n\nHandles sys links\n\n$:/sys/link\n\nbut not:\n\n~$:/sys/link\n\n\\*/\n\nvar utils = require(\"./utils.js\");\n\nexports.name = \"syslink\";\n\nexports.report = function(text, callback, options) {\n\tvar title = this.match[0];\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\tif (title[0] !== \"~\") {\n\t\tcallback(title, '~' + title);\n\t}\n};\n\nexports.relink = function(text, fromTitle, toTitle, options) {\n\tvar entry = undefined;\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\tif (this.match[0] === fromTitle &amp;&amp; this.match[0][0] !== \"~\") {\n\t\tentry = {output: this.makeSyslink(toTitle, options)};\n\t\tif (entry.output === undefined) {\n\t\t\tentry.impossible = true;\n\t\t}\n\t}\n\treturn entry;\n};\n\nexports.makeSyslink = function(title, options) {\n\tvar match = title.match(this.matchRegExp);\n\tif (match &amp;&amp; match[0] === title &amp;&amp; title[0] !== \"~\") {\n\t\treturn title;\n\t} else {\n\t\treturn utils.makePrettylink(this.parser, title);\n\t}\n};\n",
"module-type": "relinkwikitextrule",
"title": "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/syslink.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/transclude.js": {
"text": "/*\\\nmodule-type: relinkwikitextrule\n\nHandles replacement of transclusions in wiki text like,\n\n{{RenamedTiddler}}\n{{RenamedTiddler||TemplateTitle}}\n\nThis renames both the tiddler and the template field.\n\n\\*/\n\nvar refHandler = require(\"$:/plugins/flibbles/relink/js/fieldtypes/reference\");\nvar utils = require(\"./utils.js\");\n\nexports.name = ['transcludeinline', 'transcludeblock'];\n\nexports.report = function(text, callback, options) {\n\tvar m = this.match,\n\t\trefString = $tw.utils.trim(m[1]),\n\t\tref = parseTextReference(refString);\n\t\ttemplate = $tw.utils.trim(m[2]);\n\tif (ref.title) {\n\t\tvar suffix = '';\n\t\tif (ref.index) {\n\t\t\tsuffix = '##' + ref.index;\n\t\t} else if (ref.field) {\n\t\t\tsuffix = '!!' + ref.field;\n\t\t}\n\t\tif (template) {\n\t\t\tsuffix = suffix + '||' + template;\n\t\t}\n\t\tcallback(ref.title, '{{' + suffix + '}}')\n\t}\n\tif (template) {\n\t\tcallback(template, '{{' + refString + '||}}');\n\t}\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n};\n\nexports.relink = function(text, fromTitle, toTitle, options) {\n\tvar m = this.match,\n\t\treference = parseTextReference(m[1]),\n\t\ttemplate = m[2],\n\t\tentry = undefined,\n\t\tmodified = false;\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\tif ($tw.utils.trim(reference.title) === fromTitle) {\n\t\t// preserve user's whitespace\n\t\treference.title = reference.title.replace(fromTitle, toTitle);\n\t\tmodified = true;\n\t}\n\tif ($tw.utils.trim(template) === fromTitle) {\n\t\ttemplate = template.replace(fromTitle, toTitle);\n\t\tmodified = true;\n\t}\n\tif (modified) {\n\t\tvar output = this.makeTransclude(this.parser, reference, template);\n\t\tif (output) {\n\t\t\t// Adding any newline that might have existed is\n\t\t\t// what allows this relink method to work for both\n\t\t\t// the block and inline filter wikitext rule.\n\t\t\tentry = {output: output + utils.getEndingNewline(m[0])};\n\t\t} else {\n\t\t\tentry = {impossible: true}\n\t\t}\n\t}\n\treturn entry;\n};\n\n// I have my own because the core one is deficient for my needs.\nfunction parseTextReference(textRef) {\n\t// Separate out the title, field name and/or JSON indices\n\tvar reTextRef = /^([\\w\\W]*?)(?:!!(\\S[\\w\\W]*)|##(\\S[\\w\\W]*))?$/g;\n\t\tmatch = reTextRef.exec(textRef),\n\t\tresult = {};\n\tif(match) {\n\t\t// Return the parts\n\t\tresult.title = match[1];\n\t\tresult.field = match[2];\n\t\tresult.index = match[3];\n\t} else {\n\t\t// If we couldn't parse it\n\t\tresult.title = textRef\n\t}\n\treturn result;\n};\n\n/** This converts a reference and a template into a string representation\n * of a transclude.\n */\nexports.makeTransclude = function(parser, reference, template) {\n\tvar rtn;\n\tif (!canBePrettyTemplate(template)) {\n\t\tvar widget = utils.makeWidget(parser, '$transclude', {\n\t\t\ttiddler: $tw.utils.trim(template),\n\t\t\tfield: reference.field,\n\t\t\tindex: reference.index});\n\t\tif (reference.title &amp;&amp; widget !== undefined) {\n\t\t\trtn = utils.makeWidget(parser, '$tiddler', {tiddler: $tw.utils.trim(reference.title)}, widget);\n\t\t} else {\n\t\t\trtn = widget;\n\t\t}\n\t} else if (!canBePrettyTitle(reference.title)) {\n\t\t// This block and the next account for the 1%...\n\t\tvar reducedRef = {field: reference.field, index: reference.index};\n\t\trtn = utils.makeWidget(parser, '$tiddler', {tiddler: $tw.utils.trim(reference.title)}, prettyTransclude(reducedRef, template));\n\t} else {\n\t\t// This block takes care of 99% of all cases\n\t\trtn = prettyTransclude(reference, template);\n\t}\n\treturn rtn;\n};\n\nfunction canBePrettyTitle(value) {\n\treturn refHandler.canBePretty(value) &amp;&amp; canBePrettyTemplate(value);\n};\n\nfunction canBePrettyTemplate(value) {\n\treturn !value || (value.indexOf('}') &lt; 0 &amp;&amp; value.indexOf('{') &lt; 0 &amp;&amp; value.indexOf('|') &lt; 0);\n};\n\nfunction prettyTransclude(textReference, template) {\n\tif (typeof textReference !== \"string\") {\n\t\ttextReference = refHandler.toString(textReference);\n\t}\n\tif (!textReference) {\n\t\ttextReference
"module-type": "relinkwikitextrule",
"title": "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/transclude.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/utils.js": {
"text": "/*\\\nmodule-type: library\n\nUtility methods for the wikitext relink rules.\n\n\\*/\n\nexports.makeWidget = function(parser, tag, attributes, body) {\n\tif (!parser.context.allowWidgets()) {\n\t\treturn undefined;\n\t}\n\tvar string = '&lt;' + tag;\n\tfor (var attr in attributes) {\n\t\tvar value = attributes[attr];\n\t\tif (value !== undefined) {\n\t\t\tvar quoted = exports.wrapAttributeValue(value);\n\t\t\tif (!quoted) {\n\t\t\t\tif (!parser.options.placeholder) {\n\t\t\t\t\t// It's not possible to make this widget\n\t\t\t\t\treturn undefined;\n\t\t\t\t}\n\t\t\t\tvar category = getPlaceholderCategory(parser.context, tag, attr);\n\t\t\t\tquoted = '&lt;&lt;' + parser.placeholder.getPlaceholderFor(value, category) + '&gt;&gt;';\n\t\t\t}\n\t\t\tstring += ' ' + attr + '=' + quoted;\n\t\t}\n\t}\n\tif (body !== undefined) {\n\t\tstring += '&gt;' + body + '&lt;/' + tag + '&gt;';\n\t} else {\n\t\tstring += '/&gt;';\n\t}\n\treturn string;\n};\n\nfunction getPlaceholderCategory(context, tag, attribute) {\n\tvar element = context.getAttribute(tag);\n\tvar rule = element &amp;&amp; element[attribute];\n\t// titles go to relink-\\d\n\t// plaintext goes to relink-plaintext-\\d\n\t// because titles are way more common, also legacy\n\tif (rule === undefined) {\n\t\treturn 'plaintext';\n\t} else {\n\t\trule = rule.fields.text;\n\t\tif (rule === 'title') {\n\t\t\trule = undefined;\n\t\t}\n\t\treturn rule;\n\t}\n};\n\nexports.makePrettylink = function(parser, title, caption) {\n\tvar output;\n\tif (parser.context.allowPrettylinks() &amp;&amp; canBePrettylink(title, caption)) {\n\t\tif (caption !== undefined) {\n\t\t\toutput = \"[[\" + caption + \"|\" + title + \"]]\";\n\t\t} else {\n\t\t\toutput = \"[[\" + title + \"]]\";\n\t\t}\n\t} else if (caption !== undefined) {\n\t\tvar safeCaption = sanitizeCaption(parser, caption);\n\t\tif (safeCaption !== undefined) {\n\t\t\toutput = exports.makeWidget(parser, '$link', {to: title}, safeCaption);\n\t\t}\n\t} else if (exports.shorthandPrettylinksSupported(parser.wiki)) {\n\t\toutput = exports.makeWidget(parser, '$link', {to: title});\n\t} else if (parser.context.allowWidgets() &amp;&amp; parser.placeholder) {\n\t\t// If we don't have a caption, we must resort to\n\t\t// placeholders anyway to prevent link/caption desync\n\t\t// from later relinks.\n\t\t// It doesn't matter whether the tiddler is quotable.\n\t\tvar ph = parser.placeholder.getPlaceholderFor(title);\n\t\toutput = \"&lt;$link to=&lt;&lt;\"+ph+\"&gt;&gt;&gt;&lt;$text text=&lt;&lt;\"+ph+\"&gt;&gt;/&gt;&lt;/$link&gt;\";\n\t}\n\treturn output;\n};\n\n/**In version 5.1.20, Tiddlywiki made it so &lt;$link to\"something\" /&gt; would\n * use \"something\" as a caption. This is preferable. However, Relink works\n * going back to 5.1.14, so we need to have different handling for both\n * cases.\n */\nvar _supported;\nexports.shorthandPrettylinksSupported = function(wiki) {\n\tif (_supported === undefined) {\n\t\tvar test = wiki.renderText(\"text/plain\", \"text/vnd.tiddlywiki\", \"&lt;$link to=test/&gt;\");\n\t\t_supported = (test === \"test\");\n\t}\n\treturn _supported;\n};\n\n/**Return true if value can be used inside a prettylink.\n */\nfunction canBePrettylink(value, customCaption) {\n\treturn value.indexOf(\"]]\") &lt; 0 &amp;&amp; value[value.length-1] !== ']' &amp;&amp; (customCaption !== undefined || value.indexOf('|') &lt; 0);\n};\n\nfunction sanitizeCaption(parser, caption) {\n\tvar plaintext = parser.wiki.renderText(\"text/plain\", \"text/vnd.tiddlywiki\", caption);\n\tif (plaintext === caption &amp;&amp; caption.indexOf(\"&lt;/$link&gt;\") &lt;= 0) {\n\t\treturn caption;\n\t} else {\n\t\treturn exports.makeWidget(parser, '$text', {text: caption});\n\t}\n};\n\n/**Finds an appropriate quote mark for a given value.\n *\n *Tiddlywiki doesn't have escape characters for attribute values. Instead,\n * we just have to find the type of quotes that'll work for the given title.\n * There exist titles that simply can't be quoted.\n * If it can stick with the preference, it will.\n *\n * return: Returns the wrapped value,
"module-type": "library",
"title": "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/utils.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/wikilink.js": {
"text": "/*\\\nmodule-type: relinkwikitextrule\n\nHandles CamelCase links\n\nWikiLink\n\nbut not:\n\n~WikiLink\n\n\\*/\n\nvar utils = require(\"./utils.js\");\n\nexports.name = \"wikilink\";\n\nexports.report = function(text, callback, options) {\n\tvar title = this.match[0],\n\t\tunlink = $tw.config.textPrimitives.unWikiLink;\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\tif (title[0] !== unlink) {\n\t\tcallback(title, unlink + title);\n\t}\n};\n\nexports.relink = function(text, fromTitle, toTitle, options) {\n\tvar entry = undefined,\n\t\ttitle = this.match[0];\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\tif (title === fromTitle &amp;&amp; title[0] !== $tw.config.textPrimitives.unWikiLink) {\n\t\tentry = { output: this.makeWikilink(toTitle, options) };\n\t\tif (entry.output === undefined) {\n\t\t\tentry.impossible = true;\n\t\t}\n\t}\n\treturn entry;\n};\n\nexports.makeWikilink = function(title, options) {\n\tif (title.match(this.matchRegExp) &amp;&amp; title[0] !== $tw.config.textPrimitives.unWikiLink) {\n\t\treturn title;\n\t} else {\n\t\treturn utils.makePrettylink(this.parser, title);\n\t}\n};\n",
"module-type": "relinkwikitextrule",
"title": "$:/plugins/flibbles/relink/js/relinkoperations/text/wikitext/wikilink.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/contexts/context.js": {
"text": "/*\\\n\nBase class for relink contexts.\n\n\\*/\n\nfunction Context() {\n};\n\nexports.context = Context;\n\n// This class does no special handling of fields, operators, or attributes.\n// we pass it along to the parent.\nContext.prototype.getFields = function() {\n\treturn this.parent.getFields();\n};\n\nContext.prototype.getOperator = function(name, index) {\n\treturn this.parent.getOperator(name, index);\n};\n\nContext.prototype.getOperators = function() {\n\treturn this.parent.getOperators();\n};\n\nContext.prototype.getAttribute = function(elementName) {\n\treturn this.parent.getAttribute(elementName);\n};\n\nContext.prototype.getAttributes = function() {\n\treturn this.parent.getAttributes();\n};\n\nContext.prototype.getMacro = function(macroName) {\n\treturn this.parent.getMacro(macroName);\n};\n\nContext.prototype.getMacros = function() {\n\treturn this.parent.getMacros();\n};\n\nContext.prototype.allowPrettylinks = function() {\n\treturn this.parent.allowPrettylinks();\n};\n\nContext.prototype.allowWidgets = function() {\n\treturn this.parent.allowWidgets();\n};\n\nContext.prototype.hasImports = function(value) {\n\treturn this.parent.hasImports(value);\n};\n",
"module-type": "relinkcontext",
"title": "$:/plugins/flibbles/relink/js/contexts/context.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/contexts/import.js": {
"text": "/*\\\n\nThis handles the fetching and distribution of relink settings.\n\n\\*/\n\nvar WidgetContext = require('./widget').widget;\n\nfunction ImportContext(wiki, parent, filter) {\n\tthis.parent = parent;\n\tthis.wiki = wiki;\n\tvar importWidget = createImportWidget(filter, this.wiki, this.parent.widget);\n\tthis._compileList(importWidget.tiddlerList);\n\t// This only works if only one filter is imported\n\tthis.widget = this.getBottom(importWidget);\n\t// Trickle this up, so that any containing tiddlercontext knows that this\n\t// tiddler does some importing, and must be checked regularly.\n\tparent.hasImports(true);\n};\n\nexports.import = ImportContext;\n\nImportContext.prototype = new WidgetContext();\n\nImportContext.prototype.changed = function(changes) {\n\treturn this.widget &amp;&amp; this.widget.refresh(changes)\n};\n\nfunction createImportWidget(filter, wiki, parent) {\n\tvar widget = wiki.makeWidget( { tree: [{\n\t\ttype: \"importvariables\",\n\t\tattributes: {\n\t\t\t\"filter\": {\n\t\t\t\ttype: \"string\",\n\t\t\t\tvalue: filter\n\t\t\t}\n\t\t}\n\t}] }, { parentWidget: parent} );\n\tif (parent) {\n\t\tparent.children.push(widget);\n\t}\n\twidget.execute();\n\twidget.renderChildren();\n\tvar importWidget = widget.children[0];\n\treturn importWidget;\n};\n\nImportContext.prototype._compileList = function(titleList) {\n\tfor (var i = 0; i &lt; titleList.length; i++) {\n\t\tvar parser = this.wiki.parseTiddler(titleList[i]);\n\t\tif (parser) {\n\t\t\tvar parseTreeNode = parser.tree[0];\n\t\t\twhile (parseTreeNode &amp;&amp; parseTreeNode.type === \"set\") {\n\t\t\t\tif (parseTreeNode.relink) {\n\t\t\t\t\tfor (var macroName in parseTreeNode.relink) {\n\t\t\t\t\t\tvar parameters = parseTreeNode.relink[macroName];\n\t\t\t\t\t\tfor (paramName in parameters) {\n\t\t\t\t\t\t\tthis.addSetting(this.wiki, macroName, paramName, parameters[paramName], titleList[i]);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tparseTreeNode = parseTreeNode.children &amp;&amp; parseTreeNode.children[0];\n\t\t\t}\n\t\t}\n\t}\n};\n",
"module-type": "relinkcontext",
"title": "$:/plugins/flibbles/relink/js/contexts/import.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/contexts/tiddler.js": {
"text": "/*\\\n\nContext for a tiddler. Defines nothing but makes an entry point to test if\na tiddler must be refreshed.\n\n\\*/\n\nvar WidgetContext = require('./widget.js').widget;\n\nfunction TiddlerContext(wiki, parentContext, title) {\n\tthis.title = title;\n\tthis.parent = parentContext;\n\tvar globalWidget = parentContext &amp;&amp; parentContext.widget;\n\tvar parentWidget = wiki.makeWidget(null, {parentWidget: globalWidget});\n\tparentWidget.setVariable('currentTiddler', title);\n\tthis.widget = wiki.makeWidget(null, {parentWidget: parentWidget});\n};\n\nexports.tiddler = TiddlerContext;\n\nTiddlerContext.prototype = new WidgetContext();\n\nTiddlerContext.prototype.changed = function(changes) {\n\treturn this.widget &amp;&amp; this.widget.refresh(changes);\n};\n\n// By default, a tiddler context does not use imports, unless an import\n// statement is later discovered somewhere in the fields.\nTiddlerContext.prototype.hasImports = function(value) {\n\treturn this._hasImports || (this._hasImports = value);\n};\n",
"module-type": "relinkcontext",
"title": "$:/plugins/flibbles/relink/js/contexts/tiddler.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/contexts/variable.js": {
"text": "/*\\\n\nThis handles the context for variables. Either from $set, $vars, or \\define\n\n\\*/\n\nvar WidgetContext = require('./widget').widget;\n\nfunction VariableContext(parent, setParseTreeNode) {\n\tthis.parent = parent;\n\t// Now create a new widget and attach it.\n\tvar attachPoint = parent.widget;\n\tvar setWidget = attachPoint.makeChildWidget(setParseTreeNode);\n\tattachPoint.children.push(setWidget);\n\tsetWidget.computeAttributes();\n\tsetWidget.execute();\n\t// point our widget to bottom, where any other contexts would attach to\n\tthis.widget = this.getBottom(setWidget);\n};\n\nexports.variable = VariableContext;\n\nVariableContext.prototype = new WidgetContext();\n",
"module-type": "relinkcontext",
"title": "$:/plugins/flibbles/relink/js/contexts/variable.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/contexts/whitelist.js": {
"text": "/*\\\n\nThis top-level context manages settings inside the whitelist. It never has\na parent.\n\n\\*/\n\nvar utils = require('../utils');\nvar Context = require('./context').context;\n\nvar prefix = \"$:/config/flibbles/relink/\";\n\nfunction WhitelistContext(wiki) {\n\tbuild(this, wiki);\n};\n\nexports.whitelist = WhitelistContext;\n\nWhitelistContext.prototype = new Context();\n\n/**Hot directories are directories for which if anything changes inside them,\n * then Relink must completely rebuild its index.\n * By default, this includes the whitelist settings, but relink-titles also\n * includes its rules disabling directory.\n * This is the FIRST solution I came up with to this problem. If you're\n * looking at this, please make a github issue so I have a chance to understand\n * your needs. This is currently a HACK solution.\n */\nWhitelistContext.hotDirectories = [prefix];\n\nWhitelistContext.prototype.getAttribute = function(elementName) {\n\treturn this.attributes[elementName];\n};\n\nWhitelistContext.prototype.getAttributes = function() {\n\treturn flatten(this.attributes);\n};\n\nWhitelistContext.prototype.getFields = function() {\n\treturn this.fields;\n};\n\nWhitelistContext.prototype.getOperator = function(operatorName, operandIndex) {\n\tvar op = this.operators[operatorName];\n\treturn op &amp;&amp; op[operandIndex || 1];\n};\n\nWhitelistContext.prototype.getOperators = function() {\n\tvar signatures = Object.create(null);\n\tfor (var op in this.operators) {\n\t\tvar operandSet = this.operators[op];\n\t\tfor (var index in operandSet) {\n\t\t\tvar entry = operandSet[index];\n\t\t\tsignatures[entry.key] = entry;\n\t\t}\n\t}\n\treturn signatures;\n};\n\nWhitelistContext.prototype.getMacro = function(macroName) {\n\treturn this.macros[macroName];\n};\n\nWhitelistContext.prototype.getMacros = function() {\n\treturn flatten(this.macros);\n};\n\nWhitelistContext.prototype.changed = function(changedTiddlers) {\n\tfor (var i = 0; i &lt; WhitelistContext.hotDirectories.length; i++) {\n\t\tvar dir = WhitelistContext.hotDirectories[i];\n\t\tfor (var title in changedTiddlers) {\n\t\t\tif (title.substr(0, dir.length) === dir) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t}\n\treturn false;\n};\n\nWhitelistContext.prototype.hasImports = function(value) {\n\t// We don't care if imports are used. This is the global level.\n\treturn false;\n};\n\n/**Factories define methods that create settings given config tiddlers.\n * for factory method 'example', it will be called once for each:\n * \"$:/config/flibbles/relink/example/...\" tiddler that exists.\n * the argument \"key\" will be set to the contents of \"...\"\n *\n * The reason I build relink settings in this convoluted way is to minimize\n * the number of times tiddlywiki has to run through EVERY tiddler looking\n * for relink config tiddlers.\n *\n * Also, by exporting \"factories\", anyone who extends relink can patch in\n * their own factory methods to create settings that are generated exactly\n * once per rename.\n */\nvar factories = {\n\tattributes: function(attributes, data, key) {\n\t\tvar elem = root(key);\n\t\tvar attr = key.substr(elem.length+1);\n\t\tattributes[elem] = attributes[elem] || Object.create(null);\n\t\tattributes[elem][attr] = data;\n\t},\n\tfields: function(fields, data, name) {\n\t\tfields[name] = data;\n\t},\n\tmacros: function(macros, data, key) {\n\t\t// We take the last index, not the first, because macro\n\t\t// parameters can't have slashes, but macroNames can.\n\t\tvar name = dir(key);\n\t\tvar arg = key.substr(name.length+1);\n\t\tmacros[name] = macros[name] || Object.create(null);\n\t\tmacros[name][arg] = data;\n\t},\n\toperators: function(operators, data, key) {\n\t\t// We take the last index, not the first, because the operator\n\t\t// may have a slash to indicate parameter number\n\t\tvar pair = key.split('/');\n\t\tvar name = pair[0];\n\t\tdata.key = key;\n\t\toperators[name] = operators[name] || Object.create(null);\n\t\toperators[name][pair[1] || 1] = data;\n\t}\n};\n\nfunction build(settings, wiki) {\n\tfor (var
"module-type": "relinkcontext",
"title": "$:/plugins/flibbles/relink/js/contexts/whitelist.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/contexts/widget.js": {
"text": "/*\\\n\nThis is a virtual subclass of context for contexts that exist within widgets\nof a specific tiddler.\n\nAll widget contexts must have a widget member.\n\n\\*/\n\nvar Context = require('./context.js').context;\nvar utils = require('$:/plugins/flibbles/relink/js/utils.js');\n\nfunction WidgetContext() {};\n\nexports.widget = WidgetContext;\n\nWidgetContext.prototype = new Context();\n\nWidgetContext.prototype.getMacroDefinition = function(variableName) {\n\t// widget.variables is prototyped, so it looks up into all its parents too\n\treturn this.widget.variables[variableName] || $tw.macros[variableName];\n};\n\nWidgetContext.prototype.addSetting = function(wiki, macroName, parameter, type, sourceTitle) {\n\tthis.macros = this.macros || Object.create(null);\n\tvar macro = this.macros[macroName];\n\ttype = type || utils.getDefaultType(wiki);\n\tif (macro === undefined) {\n\t\tmacro = this.macros[macroName] = Object.create(null);\n\t}\n\tvar handler = utils.getType(type);\n\tif (handler) {\n\t\thandler.source = sourceTitle;\n\t\t// We attach the fields of the defining tiddler for the benefit\n\t\t// of any 3rd party field types that want access to them.\n\t\tvar tiddler = wiki.getTiddler(sourceTitle);\n\t\thandler.fields = tiddler.fields;\n\t\tmacro[parameter] = handler;\n\t}\n};\n\nWidgetContext.prototype.getMacros = function() {\n\tvar signatures = this.parent.getMacros();\n\tif (this.macros) {\n\t\tfor (var macroName in this.macros) {\n\t\t\tvar macro = this.macros[macroName];\n\t\t\tfor (var param in macro) {\n\t\t\t\tsignatures[macroName + \"/\" + param] = macro[param];\n\t\t\t}\n\t\t}\n\t}\n\treturn signatures;\n};\n\n/**This does strange handling because it's possible for a macro to have\n * its individual parameters whitelisted in separate places.\n * Don't know WHY someone would do this, but it can happen.\n */\nWidgetContext.prototype.getMacro = function(macroName) {\n\tvar theseSettings = this.macros &amp;&amp; this.macros[macroName];\n\tvar parentSettings;\n\tif (this.parent) {\n\t\tparentSettings = this.parent.getMacro(macroName);\n\t}\n\tif (theseSettings &amp;&amp; parentSettings) {\n\t\t// gotta merge them without changing either. This is expensive,\n\t\t// but it'll happen rarely.\n\t\tvar rtnSettings = $tw.utils.extend(Object.create(null), theseSettings, parentSettings);\n\t\treturn rtnSettings;\n\t}\n\treturn theseSettings || parentSettings;\n};\n\n/**Returns the deepest descendant of the given widget.\n */\nWidgetContext.prototype.getBottom = function(widget) {\n\twhile (widget.children.length &gt; 0) {\n\t\twidget = widget.children[0];\n\t}\n\treturn widget;\n};\n",
"module-type": "relinkcontext",
"title": "$:/plugins/flibbles/relink/js/contexts/widget.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/contexts/wikitext.js": {
"text": "/*\\\n\nContext for wikitext. It can contain rules about what's allowed in this\ncurrent layer of wikitext.\n\n\\*/\n\nvar WidgetContext = require('./widget.js').widget;\n\nfunction WikitextContext(parentContext) {\n\tthis.parent = parentContext;\n\tthis.widget = parentContext.widget;\n};\n\nexports.wikitext = WikitextContext;\n\nWikitextContext.prototype = new WidgetContext();\n\n// Unless this specific context has rules about it, widgets and prettyLInks are allowed.\nWikitextContext.prototype.allowWidgets = enabled;\nWikitextContext.prototype.allowPrettylinks = enabled;\n\nfunction enabled() { return true; };\n",
"module-type": "relinkcontext",
"title": "$:/plugins/flibbles/relink/js/contexts/wikitext.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/utils/backupIndexer.js": {
"text": "/*\\\nmodule-type: library\n\nThis is a backup indexer Relink uses if the real one is disabled, or we're\n&lt;V5.1.23. It's not nearly as good, but it caches some.\n\n\\*/\n\n\"use strict\";\n\nvar utils = require(\"$:/plugins/flibbles/relink/js/utils.js\");\nvar TiddlerContext = utils.getContext('tiddler');\n\n// This is the indexer we use if the current wiki doesn't support indexers.\nfunction BackupIndexer(wiki) {\n\tthis.wiki = wiki;\n};\n\nmodule.exports = BackupIndexer;\n\nBackupIndexer.prototype.lookup = function(title) {\n\treturn getCache(this.wiki).lookup[title];\n};\n\nBackupIndexer.prototype.reverseLookup = function(title) {\n\tvar index = getCache(this.wiki);\n\tif (!index.reverse[title]) {\n\t\tvar record = Object.create(null);\n\t\tfor (var other in index.lookup) {\n\t\t\tif (index.lookup[other][title]) {\n\t\t\t\trecord[other] = index.lookup[other][title];\n\t\t\t}\n\t\t}\n\t\tindex.reverse[title] = record;\n\t}\n\treturn index.reverse[title];\n};\n\n/* The backup indexer doesn't bother caching relink reports. It would always\n * be called after a draft tiddler had changed, which would defeat the point.\n */\nBackupIndexer.prototype.relinkLookup = function(fromTitle, toTitle, options) {\n\tvar cache = getCache(this.wiki);\n\tif (cache.lastRelinkFrom === fromTitle &amp;&amp; cache.lastRelinkTo === toTitle) {\n\t\toptions.cache = cache.lastRelinkCache;\n\t\treturn cache.lastRelink;\n\t}\n\tcache.lastRelink = utils.getRelinkResults(this.wiki, fromTitle, toTitle, cache.context, undefined, options);\n\tcache.lastRelinkFrom = fromTitle;\n\tcache.lastRelinkTo = toTitle;\n\tcache.lastRelinkCache = options.cache;\n\treturn cache.lastRelink;\n};\n\nfunction getCache(wiki) {\n\treturn wiki.getGlobalCache('relink', function() {\n\t\tvar tiddlerList = wiki.getRelinkableTitles();\n\t\tvar index = Object.create(null);\n\t\tvar wikiContext = utils.getWikiContext(wiki);\n\t\tfor (var i = 0; i &lt; tiddlerList.length; i++) {\n\t\t\tvar title = tiddlerList[i];\n\t\t\tvar tiddler = wiki.getTiddler(title);\n\t\t\tif (tiddler &amp;&amp; !tiddler.fields[\"plugin-type\"]) {\n\t\t\t\tvar context = new TiddlerContext(wiki, wikiContext, title);\n\t\t\t\tindex[title] = utils.getTiddlerRelinkReferences(wiki, title, context);\n\t\t\t}\n\t\t}\n\t\treturn {\n\t\t\tlookup: index,\n\t\t\treverse: Object.create(null),\n\t\t\tcontext: wikiContext};\n\t});\n};\n",
"module-type": "library",
"title": "$:/plugins/flibbles/relink/js/utils/backupIndexer.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/utils/entry.js": {
"text": "/*\\\n\nEntries are deprecated. Don't use them. These classes are here just so that\nany 3rd party modules built for Relink V1 don't break.\n\nJust return an object like, {output: \"string\", impossible: true|undefined}\n\n\\*/\n\nfunction EntryNode() {\n\tthis.children = [];\n};\n\nmodule.exports = EntryNode;\n\n/** PURE VIRTUAL\n * EntryNode.prototype.report = function() -&gt; [\"string\", ...]\n */\n\nEntryNode.newType = function() {\n\treturn EntryNode;\n};\n\nEntryNode.prototype.add = function(entry) {\n\tthis.children.push(entry);\n};\n\nfunction EntryCollection() {\n\tthis.children = Object.create(null);\n\tthis.types = Object.create(null);\n};\n\nEntryNode.newCollection = function(name) {\n\treturn EntryCollection;\n};\n\n// Again. I reiterate. Don't use this. All this is just legacy support.\nObject.defineProperty(EntryCollection, 'impossible', {\n\tget: function() {\n\t\tvar imp = this._impossible;\n\t\tthis.eachChild(function(child) { imp = imp || child.impossible; });\n\t\treturn imp;\n\t},\n\tset: function(impossible) {\n\t\tthis._impossible = true;\n\t}\n});\n\nEntryCollection.prototype.eachChild = function(method) {\n\tfor (var child in this.children) {\n\t\tmethod(this.children[child]);\n\t}\n};\n\nEntryCollection.prototype.addChild = function(child, name, type) {\n\tthis.children[name] = child;\n\tthis.types[name] = type;\n};\n\nEntryCollection.prototype.hasChildren = function() {\n\treturn Object.keys(this.children).length &gt; 0;\n};\n",
"module-type": "library",
"title": "$:/plugins/flibbles/relink/js/utils/entry.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/utils/placeholder.js": {
"text": "/*\\\n\nA method which doles out placeholders when requested, and constructs\nthe necessary supporting pragma when requested.\n\n\\*/\n\nvar utils = require('../utils');\n\nfunction Placeholder() {\n\tthis.placeholders = Object.create(null);\n\tthis.reverseMap = {};\n\tthis.used = Object.create(null);\n};\n\nmodule.exports = Placeholder;\n\nPlaceholder.prototype.getPlaceholderFor = function(value, category) {\n\tthis.reverseMap[category] = this.reverseMap[category] || Object.create(null);\n\tvar placeholder = this.reverseMap[category][value];\n\tif (placeholder) {\n\t\treturn placeholder;\n\t}\n\tvar config = (this.parser &amp;&amp; this.parser.context) || utils.getWikiContext(this.parser.wiki);\n\tvar number = 0;\n\tvar prefix = \"relink-\"\n\tif (category &amp;&amp; category !== \"title\") {\n\t\t// I don't like \"relink-title-1\". \"relink-1\" should be for\n\t\t// titles. lists, and filters can have descriptors though.\n\t\tprefix += category + \"-\";\n\t}\n\tdo {\n\t\tnumber += 1;\n\t\tplaceholder = prefix + number;\n\t} while (config.getMacroDefinition(placeholder) || this.used[placeholder]);\n\tthis.placeholders[placeholder] = value;\n\tthis.reverseMap[category][value] = placeholder;\n\tthis.used[placeholder] = true;\n\treturn placeholder;\n};\n\n// For registering placeholders that already existed\nPlaceholder.prototype.registerExisting = function(key, value) {\n\tthis.reverseMap[value] = key;\n\tthis.used[key] = true;\n};\n\nPlaceholder.prototype.getPreamble = function() {\n\tvar results = [];\n\tvar keys = Object.keys(this.placeholders);\n\tif (keys.length &gt; 0) {\n\t\tkeys.sort();\n\t\tfor (var i = 0; i &lt; keys.length; i++) {\n\t\t\tvar name = keys[i];\n\t\t\tvar val = this.placeholders[name];\n\t\t\tresults.push(\"\\\\define \"+name+\"() \"+val+\"\\n\");\n\t\t}\n\t}\n\treturn results.join('');\n};\n\n",
"module-type": "library",
"title": "$:/plugins/flibbles/relink/js/utils/placeholder.js",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink/js/utils/rebuilder.js": {
"text": "/*\\\n\nThis helper class aids in reconstructing an existing string with new parts.\n\n\\*/\n\nfunction Rebuilder(text, start) {\n\tthis.text = text;\n\tthis.index = start || 0;\n\tthis.pieces = [];\n};\n\nmodule.exports = Rebuilder;\n\n/**Pieces must be added consecutively.\n * Start and end are the indices in the old string specifying where to graft\n * in the new piece.\n */\nRebuilder.prototype.add = function(value, start, end) {\n\tthis.pieces.push(this.text.substring(this.index, start), value);\n\tthis.index = end;\n};\n\nRebuilder.prototype.changed = function() {\n\treturn this.pieces.length &gt; 0;\n};\n\nRebuilder.prototype.results = function(end) {\n\tif (this.changed()) {\n\t\tthis.pieces.push(this.text.substring(this.index, end));\n\t\treturn this.pieces.join('');\n\t}\n\treturn undefined;\n};\n",
"module-type": "library",
"title": "$:/plugins/flibbles/relink/js/utils/rebuilder.js",
"type": "application/javascript"
},
"$:/config/flibbles/relink/attributes/$button/set": {
"title": "$:/config/flibbles/relink/attributes/$button/set",
"text": "reference"
},
"$:/config/flibbles/relink/attributes/$button/setTo": {
"title": "$:/config/flibbles/relink/attributes/$button/setTo",
"text": "title"
},
"$:/config/flibbles/relink/attributes/$button/to": {
"title": "$:/config/flibbles/relink/attributes/$button/to",
"text": "title"
},
"$:/config/flibbles/relink/attributes/$checkbox/tiddler": {
"title": "$:/config/flibbles/relink/attributes/$checkbox/tiddler",
"text": "title"
},
"$:/config/flibbles/relink/attributes/$checkbox/tag": {
"title": "$:/config/flibbles/relink/attributes/$checkbox/tag",
"text": "title"
},
"$:/config/flibbles/relink/attributes/$count/filter": {
"title": "$:/config/flibbles/relink/attributes/$count/filter",
"text": "filter"
},
"$:/config/flibbles/relink/attributes/$draggable/tiddler": {
"title": "$:/config/flibbles/relink/attributes/$draggable/tiddler",
"text": "title"
},
"$:/config/flibbles/relink/attributes/$draggable/filter": {
"title": "$:/config/flibbles/relink/attributes/$draggable/filter",
"text": "filter"
},
"$:/config/flibbles/relink/attributes/$edit-bitmap/tiddler": {
"title": "$:/config/flibbles/relink/attributes/$edit-bitmap/tiddler",
"text": "title"
},
"$:/config/flibbles/relink/attributes/$edit-text/tiddler": {
"title": "$:/config/flibbles/relink/attributes/$edit-text/tiddler",
"text": "title"
},
"$:/config/flibbles/relink/attributes/$edit/tiddler": {
"title": "$:/config/flibbles/relink/attributes/$edit/tiddler",
"text": "title"
},
"$:/config/flibbles/relink/attributes/$encrypt/filter": {
"title": "$:/config/flibbles/relink/attributes/$encrypt/filter",
"text": "filter"
},
"$:/config/flibbles/relink/attributes/$fieldmangler/tiddler": {
"title": "$:/config/flibbles/relink/attributes/$fieldmangler/tiddler",
"text": "title"
},
"$:/config/flibbles/relink/attributes/$fields/tiddler": {
"title": "$:/config/flibbles/relink/attributes/$fields/tiddler",
"text": "title"
},
"$:/config/flibbles/relink/attributes/$image/source": {
"title": "$:/config/flibbles/relink/attributes/$image/source",
"text": "title"
},
"$:/config/flibbles/relink/attributes/$importvariables/filter": {
"title": "$:/config/flibbles/relink/attributes/$importvariables/filter",
"text": "filter"
},
"$:/config/flibbles/relink/attributes/$linkcatcher/to": {
"title": "$:/config/flibbles/relink/attributes/$linkcatcher/to",
"text": "title"
},
"$:/config/flibbles/relink/attributes/$linkcatcher/set": {
"title": "$:/config/flibbles/relink/attributes/$linkcatcher/set",
"text": "title"
},
"$:/config/flibbles/relink/attributes/$link/to": {
"title": "$:/config/flibbles/relink/attributes/$link/to",
"text": "title"
},
"$:/config/flibbles/relink/attributes/$list/filter": {
"title": "$:/config/flibbles/relink/attributes/$list/filter",
"text": "filter"
},
"$:/config/flibbles/relink/attributes/$list/template": {
"title": "$:/config/flibbles/relink/attributes/$list/template",
"text": "title"
},
"$:/config/flibbles/relink/attributes/$list/editTemplate": {
"title": "$:/config/flibbles/relink/attributes/$list/editTemplate",
"text": "title"
},
"$:/config/flibbles/relink/attributes/$list/emptyMessage": {
"title": "$:/config/flibbles/relink/attributes/$list/emptyMessage",
"text": "wikitext"
},
"$:/config/flibbles/relink/attributes/$list/history": {
"title": "$:/config/flibbles/relink/attributes/$list/history",
"text": "title"
},
"$:/config/flibbles/relink/attributes/$navigator/story": {
"title": "$:/config/flibbles/relink/attributes/$navigator/story",
"text": "title"
},
"$:/config/flibbles/relink/attributes/$navigator/history": {
"title": "$:/config/flibbles/relink/attributes/$navigator/history",
"text": "title"
},
"$:/config/flibbles/relink/attributes/$radio/tiddler": {
"title": "$:/config/flibbles/relink/attributes/$radio/tiddler",
"text": "title"
},
"$:/config/flibbles/relink/attributes/$range/tiddler": {
"title": "$:/config/flibbles/relink/attributes/$range/tiddler",
"text": "title"
},
"$:/config/flibbles/relink/attributes/$reveal/stateTitle": {
"title": "$:/config/flibbles/relink/attributes/$reveal/stateTitle",
"text": "title"
},
"$:/config/flibbles/relink/attributes/$select/tiddler": {
"title": "$:/config/flibbles/relink/attributes/$select/tiddler",
"text": "title"
},
"$:/config/flibbles/relink/attributes/$setvariable/tiddler": {
"title": "$:/config/flibbles/relink/attributes/$setvariable/tiddler",
"text": "title"
},
"$:/config/flibbles/relink/attributes/$setvariable/subtiddler": {
"title": "$:/config/flibbles/relink/attributes/$setvariable/subtiddler",
"text": "title"
},
"$:/config/flibbles/relink/attributes/$setvariable/filter": {
"title": "$:/config/flibbles/relink/attributes/$setvariable/filter",
"text": "filter"
},
"$:/config/flibbles/relink/attributes/$set/tiddler": {
"title": "$:/config/flibbles/relink/attributes/$set/tiddler",
"text": "title"
},
"$:/config/flibbles/relink/attributes/$set/subtiddler": {
"title": "$:/config/flibbles/relink/attributes/$set/subtiddler",
"text": "title"
},
"$:/config/flibbles/relink/attributes/$set/filter": {
"title": "$:/config/flibbles/relink/attributes/$set/filter",
"text": "filter"
},
"$:/config/flibbles/relink/attributes/$tiddler/tiddler": {
"title": "$:/config/flibbles/relink/attributes/$tiddler/tiddler",
"text": "title"
},
"$:/config/flibbles/relink/attributes/$transclude/tiddler": {
"title": "$:/config/flibbles/relink/attributes/$transclude/tiddler",
"text": "title"
},
"$:/config/flibbles/relink/attributes/$transclude/subtiddler": {
"title": "$:/config/flibbles/relink/attributes/$transclude/subtiddler",
"text": "title"
},
"$:/config/flibbles/relink/attributes/$view/tiddler": {
"title": "$:/config/flibbles/relink/attributes/$view/tiddler",
"text": "title"
},
"$:/config/flibbles/relink/attributes/$view/subtiddler": {
"title": "$:/config/flibbles/relink/attributes/$view/subtiddler",
"text": "title"
},
"$:/plugins/flibbles/relink/configuration": {
"title": "$:/plugins/flibbles/relink/configuration",
"text": "&lt;div class=\"tc-control-panel\"&gt;\n&lt;&lt;tabs \"[all[shadows+tiddlers]tag[$:/tags/flibbles/relink/Configuration]!has[draft.of]]\" \"$:/plugins/flibbles/relink/ui/configuration/Fields\"&gt;&gt;\n&lt;/div&gt;\n"
},
"$:/config/flibbles/relink/fields/caption": {
"title": "$:/config/flibbles/relink/fields/caption",
"text": "wikitext"
},
"$:/config/flibbles/relink/fields/filter": {
"title": "$:/config/flibbles/relink/fields/filter",
"text": "filter"
},
"$:/config/flibbles/relink/fields/list": {
"title": "$:/config/flibbles/relink/fields/list",
"text": "list"
},
"$:/config/flibbles/relink/fields/list-after": {
"title": "$:/config/flibbles/relink/fields/list-after",
"text": "title"
},
"$:/config/flibbles/relink/fields/list-before": {
"title": "$:/config/flibbles/relink/fields/list-before",
"text": "title"
},
"$:/config/flibbles/relink/fields/tags": {
"title": "$:/config/flibbles/relink/fields/tags",
"text": "list"
},
"$:/plugins/flibbles/relink/language/Buttons/Delete/Hint": {
"title": "$:/plugins/flibbles/relink/language/Buttons/Delete/Hint",
"text": "delete"
},
"$:/plugins/flibbles/relink/language/Buttons/LinkToInline/Hint": {
"title": "$:/plugins/flibbles/relink/language/Buttons/LinkToInline/Hint",
"text": "go to defining tiddler"
},
"$:/plugins/flibbles/relink/language/Buttons/NewAttribute/Hint": {
"title": "$:/plugins/flibbles/relink/language/Buttons/NewAttribute/Hint",
"text": "Specify a new widget/element attribute to be updated whenever a tiddler is renamed"
},
"$:/plugins/flibbles/relink/language/Buttons/NewAttribute/Caption": {
"title": "$:/plugins/flibbles/relink/language/Buttons/NewAttribute/Caption",
"text": "add"
},
"$:/plugins/flibbles/relink/language/Buttons/NewField/Hint": {
"title": "$:/plugins/flibbles/relink/language/Buttons/NewField/Hint",
"text": "Specify a new field to be updated whenever a tiddler is renamed"
},
"$:/plugins/flibbles/relink/language/Buttons/NewField/Caption": {
"title": "$:/plugins/flibbles/relink/language/Buttons/NewField/Caption",
"text": "add"
},
"$:/plugins/flibbles/relink/language/Buttons/NewOperator/Hint": {
"title": "$:/plugins/flibbles/relink/language/Buttons/NewOperator/Hint",
"text": "Specify a new filter operator to be considered whenever a tiddler is renamed"
},
"$:/plugins/flibbles/relink/language/Buttons/NewOperator/Caption": {
"title": "$:/plugins/flibbles/relink/language/Buttons/NewOperator/Caption",
"text": "add"
},
"$:/plugins/flibbles/relink/language/Buttons/NewParameter/Hint": {
"title": "$:/plugins/flibbles/relink/language/Buttons/NewParameter/Hint",
"text": "Specify a new macro parameter to be updated whenever a tiddler is renamed"
},
"$:/plugins/flibbles/relink/language/Buttons/NewParameter/Caption": {
"title": "$:/plugins/flibbles/relink/language/Buttons/NewParameter/Caption",
"text": "add"
},
"$:/plugins/flibbles/relink/language/Error/InvalidAttributeName": {
"title": "$:/plugins/flibbles/relink/language/Error/InvalidAttributeName",
"text": "Illegal characters in attribute name \"&lt;$text text=&lt;&lt;attributeName&gt;&gt;/&gt;\". Attributes cannot contain slashes ('/'), closing angle or square brackets ('&gt;' or ']'), quotes or apostrophes ('\"' or \"'\"), equals ('='), or whitespace"
},
"$:/plugins/flibbles/relink/language/Error/InvalidElementName": {
"title": "$:/plugins/flibbles/relink/language/Error/InvalidElementName",
"text": "Illegal characters in element/widget name \"&lt;$text text=&lt;&lt;elementName&gt;&gt;/&gt;\". Element tags can only contain letters and the characters hyphen (`-`) and dollar sign (`$`)"
},
"$:/plugins/flibbles/relink/language/Error/InvalidMacroName": {
"title": "$:/plugins/flibbles/relink/language/Error/InvalidMacroName",
"text": "Illegal characters in macro name \"&lt;$text text=&lt;&lt;macroName&gt;&gt;/&gt;\". Macros cannot contain whitespace"
},
"$:/plugins/flibbles/relink/language/Error/InvalidParameterName": {
"title": "$:/plugins/flibbles/relink/language/Error/InvalidParameterName",
"text": "Illegal characters in parameter name \"&lt;$text text=&lt;&lt;parameterName&gt;&gt;/&gt;\". Parameters can only contain letters, digits, and the characters underscore (`_`) and hyphen (`-`)"
},
"$:/plugins/flibbles/relink/language/Error/RelinkFilterOperator": {
"title": "$:/plugins/flibbles/relink/language/Error/RelinkFilterOperator",
"text": "Filter Error: Unknown suffix for the 'relink' filter operator"
},
"$:/plugins/flibbles/relink/language/Error/ReportFailedRelinks": {
"title": "$:/plugins/flibbles/relink/language/Error/ReportFailedRelinks",
"text": "Relink could not update '&lt;&lt;from&gt;&gt;' to '&lt;&lt;to&gt;&gt;' inside the following tiddlers:"
},
"$:/plugins/flibbles/relink/language/Error/UnrecognizedType": {
"title": "$:/plugins/flibbles/relink/language/Error/UnrecognizedType",
"text": "Relink parse error: Unrecognized field type '&lt;&lt;type&gt;&gt;'"
},
"$:/plugins/flibbles/relink/language/Help/Attributes": {
"title": "$:/plugins/flibbles/relink/language/Help/Attributes",
"text": "See the &lt;a href={{{[{$:/plugins/flibbles/relink!!demo}addsuffix[#Attributes]]}}}&gt;Attributes documentation page&lt;/a&gt; for details."
},
"$:/plugins/flibbles/relink/language/Help/Fields": {
"title": "$:/plugins/flibbles/relink/language/Help/Fields",
"text": "See the &lt;a href={{{[{$:/plugins/flibbles/relink!!demo}addsuffix[#Fields]]}}}&gt;Fields documentation page&lt;/a&gt; for details."
},
"$:/plugins/flibbles/relink/language/Help/Macros": {
"title": "$:/plugins/flibbles/relink/language/Help/Macros",
"text": "See the &lt;a href={{{[{$:/plugins/flibbles/relink!!demo}addsuffix[#Macros]]}}}&gt;Macros documentation page&lt;/a&gt; for details."
},
"$:/plugins/flibbles/relink/language/Help/Operators": {
"title": "$:/plugins/flibbles/relink/language/Help/Operators",
"text": "See the &lt;a href={{{[{$:/plugins/flibbles/relink!!demo}addsuffix[#Operators]]}}}&gt;Operators documentation page&lt;/a&gt; for details."
},
"$:/plugins/flibbles/relink/language/TiddlerInfo/References/Empty": {
"title": "$:/plugins/flibbles/relink/language/TiddlerInfo/References/Empty",
"text": "No tiddlers contain any fields, links, macros, transclusions, or widgets referencing this one"
},
"$:/plugins/flibbles/relink/language/TiddlerInfo/References/Description": {
"title": "$:/plugins/flibbles/relink/language/TiddlerInfo/References/Description",
"text": "The following tiddlers contain fields, links, macros, transclusions, or widgets referencing this one:"
},
"$:/plugins/flibbles/relink/language/TiddlerInfo/References/Caption": {
"title": "$:/plugins/flibbles/relink/language/TiddlerInfo/References/Caption",
"text": "//Relink// References"
},
"$:/plugins/flibbles/relink/language/ui/Attributes/Caption": {
"title": "$:/plugins/flibbles/relink/language/ui/Attributes/Caption",
"text": "Attributes"
},
"$:/plugins/flibbles/relink/language/ui/Fields/Caption": {
"title": "$:/plugins/flibbles/relink/language/ui/Fields/Caption",
"text": "Fields"
},
"$:/plugins/flibbles/relink/language/ui/Macros/Caption": {
"title": "$:/plugins/flibbles/relink/language/ui/Macros/Caption",
"text": "Macros"
},
"$:/plugins/flibbles/relink/language/ui/Operators/Caption": {
"title": "$:/plugins/flibbles/relink/language/ui/Operators/Caption",
"text": "Operators"
},
"$:/plugins/flibbles/relink/license": {
"title": "$:/plugins/flibbles/relink/license",
"type": "text/vnd.tiddlywiki",
"text": "&lt;a href={{$:/plugins/flibbles/relink!!demo}}&gt;Relink Plugin&lt;/a&gt; Copyright (c) 2019-&lt;&lt;now YYYY&gt;&gt; Cameron Fischer\n\n[[BSD 3-Clause License|https://raw.githubusercontent.com/flibbles/tw5-relink/master/LICENSE]]\n"
},
"$:/config/flibbles/relink/macros/csvtiddlers/filter": {
"title": "$:/config/flibbles/relink/macros/csvtiddlers/filter",
"text": "filter"
},
"$:/config/flibbles/relink/macros/datauri/title": {
"title": "$:/config/flibbles/relink/macros/datauri/title",
"text": "title"
},
"$:/config/flibbles/relink/macros/jsontiddler/title": {
"title": "$:/config/flibbles/relink/macros/jsontiddler/title",
"text": "title"
},
"$:/config/flibbles/relink/macros/jsontiddlers/filter": {
"title": "$:/config/flibbles/relink/macros/jsontiddlers/filter",
"text": "filter"
},
"$:/config/flibbles/relink/macros/list-links/filter": {
"title": "$:/config/flibbles/relink/macros/list-links/filter",
"text": "filter"
},
"$:/config/flibbles/relink/macros/list-links-draggable/tiddler": {
"title": "$:/config/flibbles/relink/macros/list-links-draggable/tiddler",
"text": "title"
},
"$:/config/flibbles/relink/macros/list-links-draggable/itemTemplate": {
"title": "$:/config/flibbles/relink/macros/list-links-draggable/itemTemplate",
"text": "title"
},
"$:/config/flibbles/relink/macros/list-tagged-draggable/tag": {
"title": "$:/config/flibbles/relink/macros/list-tagged-draggable/tag",
"text": "title"
},
"$:/config/flibbles/relink/macros/list-tagged-draggable/itemTemplate": {
"title": "$:/config/flibbles/relink/macros/list-tagged-draggable/itemTemplate",
"text": "title"
},
"$:/config/flibbles/relink/macros/tabs/buttonTemplate": {
"title": "$:/config/flibbles/relink/macros/tabs/buttonTemplate",
"text": "title"
},
"$:/config/flibbles/relink/macros/tabs/default": {
"title": "$:/config/flibbles/relink/macros/tabs/default",
"text": "title"
},
"$:/config/flibbles/relink/macros/tabs/tabsList": {
"title": "$:/config/flibbles/relink/macros/tabs/tabsList",
"text": "filter"
},
"$:/config/flibbles/relink/macros/tabs/template": {
"title": "$:/config/flibbles/relink/macros/tabs/template",
"text": "title"
},
"$:/config/flibbles/relink/macros/tag/tag": {
"title": "$:/config/flibbles/relink/macros/tag/tag",
"text": "title"
},
"$:/config/flibbles/relink/macros/tag-pill/tag": {
"title": "$:/config/flibbles/relink/macros/tag-pill/tag",
"text": "title"
},
"$:/config/flibbles/relink/macros/timeline/subfilter": {
"title": "$:/config/flibbles/relink/macros/timeline/subfilter",
"text": "filter"
},
"$:/config/flibbles/relink/macros/toc/tag": {
"title": "$:/config/flibbles/relink/macros/toc/tag",
"text": "title"
},
"$:/config/flibbles/relink/macros/toc/itemClassFilter": {
"title": "$:/config/flibbles/relink/macros/toc/itemClassFilter",
"text": "filter"
},
"$:/config/flibbles/relink/macros/toc-expandable/tag": {
"title": "$:/config/flibbles/relink/macros/toc-expandable/tag",
"text": "title"
},
"$:/config/flibbles/relink/macros/toc-expandable/itemClassFilter": {
"title": "$:/config/flibbles/relink/macros/toc-expandable/itemClassFilter",
"text": "filter"
},
"$:/config/flibbles/relink/macros/toc-expandable/exclude": {
"title": "$:/config/flibbles/relink/macros/toc-expandable/exclude",
"text": "list"
},
"$:/config/flibbles/relink/macros/toc-selective-expandable/tag": {
"title": "$:/config/flibbles/relink/macros/toc-selective-expandable/tag",
"text": "title"
},
"$:/config/flibbles/relink/macros/toc-selective-expandable/itemClassFilter": {
"title": "$:/config/flibbles/relink/macros/toc-selective-expandable/itemClassFilter",
"text": "filter"
},
"$:/config/flibbles/relink/macros/toc-selective-expandable/exclude": {
"title": "$:/config/flibbles/relink/macros/toc-selective-expandable/exclude",
"text": "list"
},
"$:/config/flibbles/relink/macros/toc-tabbed-external-nav/tag": {
"title": "$:/config/flibbles/relink/macros/toc-tabbed-external-nav/tag",
"text": "title"
},
"$:/config/flibbles/relink/macros/toc-tabbed-external-nav/selectedTiddler": {
"title": "$:/config/flibbles/relink/macros/toc-tabbed-external-nav/selectedTiddler",
"text": "title"
},
"$:/config/flibbles/relink/macros/toc-tabbed-external-nav/unselectedText": {
"title": "$:/config/flibbles/relink/macros/toc-tabbed-external-nav/unselectedText",
"text": "wikitext"
},
"$:/config/flibbles/relink/macros/toc-tabbed-external-nav/missingText": {
"title": "$:/config/flibbles/relink/macros/toc-tabbed-external-nav/missingText",
"text": "wikitext"
},
"$:/config/flibbles/relink/macros/toc-tabbed-external-nav/template": {
"title": "$:/config/flibbles/relink/macros/toc-tabbed-external-nav/template",
"text": "title"
},
"$:/config/flibbles/relink/macros/toc-tabbed-internal-nav/tag": {
"title": "$:/config/flibbles/relink/macros/toc-tabbed-internal-nav/tag",
"text": "title"
},
"$:/config/flibbles/relink/macros/toc-tabbed-internal-nav/selectedTiddler": {
"title": "$:/config/flibbles/relink/macros/toc-tabbed-internal-nav/selectedTiddler",
"text": "title"
},
"$:/config/flibbles/relink/macros/toc-tabbed-internal-nav/unselectedText": {
"title": "$:/config/flibbles/relink/macros/toc-tabbed-internal-nav/unselectedText",
"text": "wikitext"
},
"$:/config/flibbles/relink/macros/toc-tabbed-internal-nav/missingText": {
"title": "$:/config/flibbles/relink/macros/toc-tabbed-internal-nav/missingText",
"text": "wikitext"
},
"$:/config/flibbles/relink/macros/toc-tabbed-internal-nav/template": {
"title": "$:/config/flibbles/relink/macros/toc-tabbed-internal-nav/template",
"text": "title"
},
"$:/config/flibbles/relink/operators/list": {
"title": "$:/config/flibbles/relink/operators/list",
"text": "reference"
},
"$:/config/flibbles/relink/operators/tag": {
"title": "$:/config/flibbles/relink/operators/tag",
"text": "title"
},
"$:/config/flibbles/relink/operators/title": {
"title": "$:/config/flibbles/relink/operators/title",
"text": "title"
},
"$:/config/flibbles/relink/operators/field:title": {
"title": "$:/config/flibbles/relink/operators/field:title",
"text": "title"
},
"$:/language/EditTemplate/Title/Impossibles/Prompt": {
"title": "$:/language/EditTemplate/Title/Impossibles/Prompt",
"text": "''Warning:'' Not all references in the following tiddlers can be updated by //Relink// due to the complexity of the new title:"
},
"$:/language/EditTemplate/Title/References/Prompt": {
"title": "$:/language/EditTemplate/Title/References/Prompt",
"text": "The following tiddlers will be updated if relinking:"
},
"$:/language/EditTemplate/Title/Relink/Prompt": {
"title": "$:/language/EditTemplate/Title/Relink/Prompt",
"text": "Use //Relink// to update ''&lt;$text text=&lt;&lt;fromTitle&gt;&gt;/&gt;'' to ''&lt;$text text=&lt;&lt;toTitle&gt;&gt;/&gt;'' across all other tiddlers"
},
"$:/core/ui/EditTemplate/title": {
"title": "$:/core/ui/EditTemplate/title",
"tags": "$:/tags/EditTemplate",
"text": "&lt;$edit-text field=\"draft.title\" class=\"tc-titlebar tc-edit-texteditor\" focus=\"true\" tabindex={{$:/config/EditTabIndex}}/&gt;\n\n&lt;$reveal state=\"!!draft.title\" type=\"nomatch\" text={{!!draft.of}} tag=\"div\"&gt;\n\n&lt;$vars pattern=\"\"\"[\\|\\[\\]{}]\"\"\" bad-chars=\"\"\"`| [ ] { }`\"\"\"&gt;\n\n&lt;$list filter=\"[all[current]regexp:draft.title&lt;pattern&gt;]\" variable=\"listItem\"&gt;\n\n&lt;div class=\"tc-message-box\"&gt;\n\n{{$:/core/images/warning}} {{$:/language/EditTemplate/Title/BadCharacterWarning}}\n\n&lt;/div&gt;\n\n&lt;/$list&gt;\n\n&lt;/$vars&gt;\n\n&lt;$list filter=\"[{!!draft.title}!is[missing]]\" variable=\"listItem\"&gt;\n\n&lt;div class=\"tc-message-box\"&gt;\n\n{{$:/core/images/warning}} {{$:/language/EditTemplate/Title/Exists/Prompt}}\n\n&lt;/div&gt;\n\n&lt;/$list&gt;\n\n&lt;$list filter=\"[{!!draft.of}!is[missing]]\" variable=\"listItem\"&gt;\n\n&lt;$vars fromTitle={{!!draft.of}} toTitle={{!!draft.title}}&gt;\n\n&lt;$checkbox tiddler=\"$:/config/RelinkOnRename\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"no\"&gt; {{$:/language/EditTemplate/Title/Relink/Prompt}}&lt;/$checkbox&gt;\n\n&lt;$tiddler tiddler=&lt;&lt;fromTitle&gt;&gt; &gt;\n\n&lt;$list filter=\"[relink:wouldchange&lt;toTitle&gt;limit[1]]\" variable=\"listItem\"&gt;\n\n&lt;$vars stateTiddler=&lt;&lt;qualify \"$:/state/edit/references\"&gt;&gt; &gt;\n\n&lt;$set\n\tname=\"prompt\"\n\tfilter=\"[relink:wouldchange&lt;toTitle&gt;relink:impossible&lt;toTitle&gt;]\"\n\tvalue=\"EditTemplate/Title/Impossibles/Prompt\"\n\temptyValue=\"EditTemplate/Title/References/Prompt\" &gt;\n&lt;$reveal type=\"nomatch\" state=&lt;&lt;stateTiddler&gt;&gt; text=\"show\"&gt;\n&lt;$button set=&lt;&lt;stateTiddler&gt;&gt; setTo=\"show\" class=\"tc-btn-invisible\"&gt;{{$:/core/images/right-arrow}}\n&lt;$macrocall $name=lingo title=&lt;&lt;prompt&gt;&gt; /&gt;\n&lt;/$button&gt;\n&lt;/$reveal&gt;\n&lt;$reveal type=\"match\" state=&lt;&lt;stateTiddler&gt;&gt; text=\"show\"&gt;\n&lt;$button set=&lt;&lt;stateTiddler&gt;&gt; setTo=\"hide\" class=\"tc-btn-invisible\"&gt;{{$:/core/images/down-arrow}}\n&lt;$macrocall $name=lingo title=&lt;&lt;prompt&gt;&gt; /&gt;\n&lt;/$button&gt;\n&lt;/$reveal&gt;\n&lt;/$set&gt;\n\n&lt;$reveal type=\"match\" state=&lt;&lt;stateTiddler&gt;&gt; text=\"show\"&gt;\n&lt;$list variable=\"listItem\" filter=\"[relink:wouldchange&lt;toTitle&gt;!title[$:/StoryList]sort[title]]\" template=\"$:/plugins/flibbles/relink/ui/ListItemTemplate\"&gt;\n&lt;/$list&gt;\n&lt;/$reveal&gt;\n\n&lt;/$vars&gt;\n\n&lt;/$list&gt;\n\n&lt;/$tiddler&gt;\n\n&lt;/$vars&gt;\n\n&lt;/$list&gt;\n\n&lt;/$reveal&gt;\n"
},
"$:/config/flibbles/relink/PluginLibrary": {
"title": "$:/config/flibbles/relink/PluginLibrary",
"caption": "//Relink// Library",
"url": "https://flibbles.github.io/tw5-relink/library/index.html",
"tags": "$:/tags/PluginLibrary",
"text": "The //Relink// library contains //Relink// as well as its supplemental plugins. It is maintained by Flibbles. See the [[github page|https://github.com/flibbles/tw5-relink]] for more information.\n"
},
"$:/plugins/flibbles/relink/readme": {
"title": "$:/plugins/flibbles/relink/readme",
"type": "text/vnd.tiddlywiki",
"text": "When renaming a tiddler, Relink can update the fields, filters, and widgets\nof all other tiddlers. However, it works through whitelisting.\n\nIt's already configured to update tiddler titles for all core widgets, filters,\nand fields, but the whitelists can be customized for each of this in the\nconfiguration panel.\n\nSee &lt;a href={{$:/plugins/flibbles/relink!!source}}&gt;the tw5-relink website&lt;/a&gt; for more details and examples.\n"
},
"$:/config/flibbles/relink/settings/default-type": {
"title": "$:/config/flibbles/relink/settings/default-type",
"text": "title"
},
"$:/plugins/flibbles/relink/ui/ListItemTemplate": {
"title": "$:/plugins/flibbles/relink/ui/ListItemTemplate",
"text": "&lt;$set\n\tname=\"classes\"\n\tfilter=\"[&lt;listItem&gt;relink:impossible&lt;toTitle&gt;]\"\n\tvalue=\"tc-menu-list-item tc-relink-impossible\"\n\temptyValue=\"tc-menu-list-item\"&gt;\n&lt;div class=&lt;&lt;classes&gt;&gt;&gt;\n&lt;$link to=&lt;&lt;listItem&gt;&gt;&gt;&lt;$text text=&lt;&lt;listItem&gt;&gt; /&gt;&lt;/$link&gt;\n&lt;/div&gt;\n&lt;/$set&gt;\n"
},
"$:/plugins/flibbles/relink/ui/TiddlerInfo/References": {
"title": "$:/plugins/flibbles/relink/ui/TiddlerInfo/References",
"caption": "{{$:/plugins/flibbles/relink/language/TiddlerInfo/References/Caption}}",
"tags": "$:/tags/TiddlerInfo",
"text": "\\define lingo-base() $:/plugins/flibbles/relink/language/TiddlerInfo/\n\\define filter() [all[current]relink:backreferences[]!title[$:/StoryList]!prefix[$:/temp/]sort[title]]\n&lt;$list filter=\"[subfilter&lt;filter&gt;first[]]\"&gt;\n\n&lt;&lt;lingo References/Description&gt;&gt;\n&lt;/$list&gt;\n\n&lt;table class=\"tc-relink-references-table\"&gt;\n&lt;tbody&gt;\n&lt;$list filter=&lt;&lt;filter&gt;&gt; emptyMessage=&lt;&lt;lingo References/Empty&gt;&gt; variable=\"listItem\" template=\"$:/plugins/flibbles/relink/ui/TiddlerInfo/ReferencesTemplate\" /&gt;\n&lt;/tbody&gt;\n&lt;/table&gt;\n"
},
"$:/plugins/flibbles/relink/ui/TiddlerInfo/ReferencesTemplate": {
"title": "$:/plugins/flibbles/relink/ui/TiddlerInfo/ReferencesTemplate",
"text": "&lt;tr class=\"tc-relink-references\"&gt;\n&lt;td class=\"tc-relink-references-title\"&gt;\n&lt;$link to=&lt;&lt;listItem&gt;&gt;/&gt;\n&lt;/td&gt;\n&lt;td class=\"tc-relink-references-report\"&gt;\n&lt;$list filter=\"[&lt;listItem&gt;relink:report&lt;currentTiddler&gt;]\"&gt;\n\n&lt;$text text=&lt;&lt;currentTiddler&gt;&gt; /&gt;\n&lt;/$list&gt;\n\n&lt;/td&gt;\n&lt;/tr&gt;\n"
},
"$:/plugins/flibbles/relink/ui/components/button-delete": {
"title": "$:/plugins/flibbles/relink/ui/components/button-delete",
"text": "\\define lingo-base() $:/plugins/flibbles/relink/language/Buttons/\n\\define prefix() $:/config/flibbles/relink/\n\n&lt;$list filter=\"[all[current]prefix&lt;prefix&gt;]\" &gt;\n&lt;$button class=\"tc-btn-invisible\" tooltip={{$:/plugins/flibbles/relink/language/Buttons/Delete/Hint}}&gt;&lt;$list filter=\"[all[current]is[tiddler]]\"&gt;\n&lt;$action-deletetiddler $tiddler=&lt;&lt;currentTiddler&gt;&gt; /&gt;\n&lt;/$list&gt;&lt;$list filter=\"[all[current]is[shadow]]\"&gt;\n&lt;$action-setfield $tiddler=&lt;&lt;tiddlerName&gt;&gt; text=\"\" /&gt;\n&lt;/$list&gt;\n{{$:/core/images/delete-button}}\n&lt;/$button&gt;\n&lt;/$list&gt;&lt;$list filter=\"[all[current]!prefix&lt;prefix&gt;]\"&gt;\n&lt;$link&gt;&lt;$button class=\"tc-btn-invisible\" tooltip={{$:/plugins/flibbles/relink/language/Buttons/LinkToInline/Hint}}&gt;{{$:/core/images/link}}&lt;/$button&gt;&lt;/$link&gt;\n&lt;/$list&gt;\n"
},
"$:/plugins/flibbles/relink/ui/components/select-fieldtype": {
"title": "$:/plugins/flibbles/relink/ui/components/select-fieldtype",
"text": "\\define prefix() $:/config/flibbles/relink/\n\n&lt;$vars type={{{ [&lt;signature&gt;relink:type[]] }}} &gt;\n&lt;$list filter=\"[all[current]prefix&lt;prefix&gt;]\" &gt;\n&lt;$select tiddler=&lt;&lt;currentTiddler&gt;&gt; &gt;\n&lt;$list variable=\"option\" filter=\"[relink:types[]]\"&gt;\n&lt;option&gt;&lt;$text text=&lt;&lt;option&gt;&gt; /&gt;&lt;/option&gt;\n&lt;/$list&gt;\n&lt;/$select&gt;\n&lt;/$list&gt;&lt;$list filter=\"[all[current]!prefix&lt;prefix&gt;]\"&gt;\n&lt;$text text=&lt;&lt;type&gt;&gt; /&gt;\n&lt;/$list&gt;\n&lt;/$vars&gt;\n"
},
"$:/plugins/flibbles/relink/ui/components/tables": {
"title": "$:/plugins/flibbles/relink/ui/components/tables",
"text": "\\define .make-table(title, plugin, default-table-state:yes)\n\n&lt;$list variable=\"render\" filter=\"[relink:signatures&lt;__plugin__&gt;prefix&lt;__category__&gt;first[]]\"&gt;\n&lt;$set name=\"table-state\" value=&lt;&lt;qualify \"\"\"$:/state/flibbles/relink/tables/$title$\"\"\"&gt;&gt;&gt;\n&lt;tr&gt;&lt;th class=\"tc-relink-header-plugin\" colspan=&lt;&lt;column-count&gt;&gt; &gt;\n&lt;$reveal type=\"nomatch\" state=&lt;&lt;table-state&gt;&gt; text=\"yes\" default=\"\"\"$default-table-state$\"\"\"&gt;\n&lt;$button class=\"tc-btn-invisible tc-btn-dropdown\" set=&lt;&lt;table-state&gt;&gt; setTo=\"yes\"&gt;\n{{$:/core/images/right-arrow}} ''$title$''\n&lt;/$button&gt;\n&lt;/$reveal&gt;\n&lt;$reveal type=\"match\" state=&lt;&lt;table-state&gt;&gt; text=\"yes\" default=\"\"\"$default-table-state$\"\"\"&gt;\n&lt;$button class=\"tc-btn-invisible tc-btn-dropdown\" set=&lt;&lt;table-state&gt;&gt; setTo=\"no\"&gt;\n{{$:/core/images/down-arrow}} ''$title$''\n&lt;/$button&gt;\n&lt;/$reveal&gt;\n&lt;/th&gt;&lt;/tr&gt;\n&lt;$list\n\tvariable=\"signature\"\n\tfilter=\"[relink:signatures&lt;__plugin__&gt;prefix&lt;__category__&gt;sort[]]\"&gt;\n&lt;$vars key={{{ [&lt;signature&gt;removeprefix&lt;__category__&gt;removeprefix[/]] }}} &gt;\n&lt;$tiddler tiddler={{{[&lt;signature&gt;relink:source[]]}}} &gt;\n&lt;$reveal tag=\"tr\" type=\"match\" state=&lt;&lt;table-state&gt;&gt; text=\"yes\" default=\"\"\"$default-table-state$\"\"\"&gt;\n&lt;$macrocall $name=&lt;&lt;__list-row-macro__&gt;&gt; signature=&lt;&lt;signature&gt;&gt; /&gt;\n&lt;td class=\"tc-relink-column-type\"&gt;{{||$:/plugins/flibbles/relink/ui/components/select-fieldtype}}&lt;/td&gt;\n&lt;td class=\"tc-relink-column-delete\"&gt;{{||$:/plugins/flibbles/relink/ui/components/button-delete}}&lt;/td&gt;\n&lt;/$reveal&gt;\n&lt;/$tiddler&gt;\n&lt;/$vars&gt;\n&lt;/$list&gt;\n&lt;/$set&gt;\n&lt;/$list&gt;\n\\end\n\n\\define tables(category, list-row-macro, header-list)\n&lt;$vars\n\tcolumn-count={{{[enlist&lt;__header-list__&gt;] [[DeleteColumn]] +[count[]]}}}&gt;\n\n&lt;table class=\"tc-relink-whitelist\"&gt;&lt;tbody&gt;\n&lt;tr&gt;\n&lt;$list variable=\"header\" filter=\"[enlist&lt;__header-list__&gt;butlast[]]\"&gt;&lt;th&gt;&lt;&lt;header&gt;&gt;&lt;/th&gt;&lt;/$list&gt;\n&lt;!-- We have the last column extend into the delete/link column, which is unlabeled. --&gt;\n&lt;th colspan=2&gt;&lt;$text text={{{ [enlist&lt;__header-list__&gt;last[]] }}} /&gt;&lt;/th&gt;\n&lt;/tr&gt;\n\n&lt;&lt;.make-table Custom \"\" yes&gt;&gt;\n\n&lt;$list\n\tfilter=\"[plugin-type[plugin]![$:/core]![$:/plugins/flibbles/relink]]\"&gt;\n&lt;$set name=\"subtitle\" value={{!!description}} emptyValue={{!!title}} &gt;\n&lt;$macrocall $name=\".make-table\" title=&lt;&lt;subtitle&gt;&gt; plugin=&lt;&lt;currentTiddler&gt;&gt; /&gt;\n&lt;/$set&gt;\n&lt;/$list&gt;\n\n&lt;&lt;.make-table Core \"$:/plugins/flibbles/relink\"&gt;&gt;\n\n&lt;/tbody&gt;&lt;/table&gt;\n&lt;/$vars&gt;\n\\end\n"
},
"$:/plugins/flibbles/relink/ui/configuration/Attributes": {
"title": "$:/plugins/flibbles/relink/ui/configuration/Attributes",
"caption": "{{$:/plugins/flibbles/relink/language/ui/Attributes/Caption}}",
"tags": "$:/tags/flibbles/relink/Configuration",
"text": "\\import $:/plugins/flibbles/relink/ui/components/tables\n\\define prefix-attr() $:/config/flibbles/relink/attributes/\n\\define lingo-base() $:/plugins/flibbles/relink/language/Buttons/\n\\define element-name-tiddler() $:/state/flibbles/relink/element-name\n\\define attribute-name-tiddler() $:/state/flibbles/relink/attribute-name\n\n\\define row()\n&lt;$set name=\"element\"\n filter=\"[&lt;key&gt;splitbefore[/]removesuffix[/]]\"&gt;\n&lt;$set name=\"attribute\"\n filter=\"[&lt;key&gt;removeprefix&lt;element&gt;removeprefix[/]]\"&gt;\n&lt;td&gt;&lt;$text text=&lt;&lt;element&gt;&gt; /&gt;&lt;/td&gt;\n&lt;td&gt;&lt;$text text=&lt;&lt;attribute&gt;&gt; /&gt;&lt;/td&gt;\n&lt;/$set&gt;&lt;/$set&gt;\n\\end\n\\define body()\n\n{{$:/plugins/flibbles/relink/language/Help/Attributes}}\n\n&lt;em class=\"tc-edit\"&gt;Add a new attribute:&lt;/em&gt;\n&lt;$edit-text\n\ttiddler=&lt;&lt;element-name-tiddler&gt;&gt;\n\ttag=\"input\"\n\tdefault=\"\"\n\tplaceholder=\"widget/element\" /&gt;\n&lt;$edit-text\n\ttiddler=&lt;&lt;attribute-name-tiddler&gt;&gt;\n\ttag=\"input\"\n\tdefault=\"\"\n\tplaceholder=\"attribute\" /&gt;\n&lt;$reveal type=\"nomatch\" text=\"\" state=&lt;&lt;element-name-tiddler&gt;&gt; &gt;\n&lt;$reveal type=\"nomatch\" text=\"\" state=&lt;&lt;attribute-name-tiddler&gt;&gt; &gt;\n&lt;$relinkmangler&gt;\n&lt;$button\n\ttooltip={{$(lingo-base)$NewAttribute/Hint}}\n\taria-label={{$(lingo-base)$NewAttribute/Caption}}&gt;\n&lt;$action-sendmessage\n\t$message=\"relink-add-attribute\"\n\telement={{$(element-name-tiddler)$}}\n\tattribute={{$(attribute-name-tiddler)$}} /&gt;\n&lt;$action-deletetiddler $tiddler=&lt;&lt;attribute-name-tiddler&gt;&gt; /&gt;\n&lt;$action-deletetiddler $tiddler=&lt;&lt;element-name-tiddler&gt;&gt; /&gt;\n&lt;$text text={{$(lingo-base)$NewAttribute/Caption}}/&gt;\n&lt;/$button&gt;\n&lt;/$relinkmangler&gt;\n&lt;/$reveal&gt;\n&lt;$reveal type=\"match\" text=\"\" state=&lt;&lt;attribute-name-tiddler&gt;&gt; &gt;\n&lt;$button&gt;\n&lt;$text text={{$(lingo-base)$NewAttribute/Caption}}/&gt;\n&lt;/$button&gt;\n&lt;/$reveal&gt;\n&lt;/$reveal&gt;\n&lt;$reveal type=\"match\" text=\"\" state=&lt;&lt;element-name-tiddler&gt;&gt; &gt;\n&lt;$button&gt;\n&lt;$text text={{$(lingo-base)$NewAttribute/Caption}}/&gt;\n&lt;/$button&gt;\n&lt;/$reveal&gt;\n\n&lt;$macrocall\n\t$name=tables\n\tcategory=\"attributes\"\n\theader-list=\"[[Widget/HTML Element]] Attribute Type\"\n\tlist-row-macro=\"row\" /&gt;\n\\end\n\n&lt;&lt;body&gt;&gt;\n"
},
"$:/plugins/flibbles/relink/ui/configuration/Fields": {
"title": "$:/plugins/flibbles/relink/ui/configuration/Fields",
"caption": "{{$:/plugins/flibbles/relink/language/ui/Fields/Caption}}",
"tags": "$:/tags/flibbles/relink/Configuration",
"text": "\\import $:/plugins/flibbles/relink/ui/components/tables\n\\define lingo-base() $:/plugins/flibbles/relink/language/Buttons/\n\\define field-name-tiddler() $:/state/flibbles/relink/field-name\n\n\\define row()\n&lt;td&gt;&lt;$text text=&lt;&lt;key&gt;&gt; /&gt;&lt;/td&gt;\n\\end\n\\define body()\n\n{{$:/plugins/flibbles/relink/language/Help/Fields}}\n\n&lt;em class=\"tc-edit\"&gt;Add a new field:&lt;/em&gt;\n&lt;$edit-text\n\ttiddler=&lt;&lt;field-name-tiddler&gt;&gt;\n\ttag=\"input\"\n\tdefault=\"\"\n\tplaceholder=\"field name\" /&gt;\n&lt;$reveal type=\"nomatch\" text=\"\" state=&lt;&lt;field-name-tiddler&gt;&gt; &gt;\n&lt;$relinkmangler&gt;\n&lt;$button\n\ttooltip={{$(lingo-base)$NewField/Hint}}\n\taria-label={{$(lingo-base)$NewField/Caption}}&gt;\n&lt;$action-sendmessage\n\t$message=\"relink-add-field\"\n\tfield={{$(field-name-tiddler)$}} /&gt;\n&lt;$action-deletetiddler $tiddler=&lt;&lt;field-name-tiddler&gt;&gt; /&gt;\n&lt;$text text={{$(lingo-base)$NewField/Caption}}/&gt;\n&lt;/$button&gt;\n&lt;/$relinkmangler&gt;\n&lt;/$reveal&gt;\n&lt;$reveal type=\"match\" text=\"\" state=&lt;&lt;field-name-tiddler&gt;&gt; &gt;\n&lt;$button&gt;\n&lt;$text text={{$(lingo-base)$NewField/Caption}}/&gt;\n&lt;/$button&gt;\n&lt;/$reveal&gt;\n\n\n&lt;$macrocall\n\t$name=tables\n\tcategory=\"fields\"\n\theader-list=\"[[Field Name]] [[Field Type]]\"\n\tlist-row-macro=\"row\" /&gt;\n\\end\n\n&lt;&lt;body&gt;&gt;\n"
},
"$:/plugins/flibbles/relink/ui/configuration/Macros": {
"title": "$:/plugins/flibbles/relink/ui/configuration/Macros",
"caption": "{{$:/plugins/flibbles/relink/language/ui/Macros/Caption}}",
"tags": "$:/tags/flibbles/relink/Configuration",
"text": "\\import $:/plugins/flibbles/relink/ui/components/tables\n\\define prefix-macro() $:/config/flibbles/relink/macros/\n\\define lingo-base() $:/plugins/flibbles/relink/language/Buttons/\n\\define macro-name-tiddler() $:/state/flibbles/relink/macro-name\n\\define parameter-name-tiddler() $:/state/flibbles/relink/parameter-name\n\n\\define row()\n&lt;$set name=\"parameter\"\n filter=\"[&lt;key&gt;relink:splitafter[/]]\"&gt;\n&lt;$set name=\"macro\"\n filter=\"[&lt;key&gt;removesuffix&lt;parameter&gt;removesuffix[/]]\"&gt;\n&lt;td&gt;&lt;$text text=&lt;&lt;macro&gt;&gt; /&gt;&lt;/td&gt;\n&lt;td&gt;&lt;$text text=&lt;&lt;parameter&gt;&gt; /&gt;&lt;/td&gt;\n&lt;/$set&gt;&lt;/$set&gt;\n\\end\n\\define body()\n\n{{$:/plugins/flibbles/relink/language/Help/Macros}}\n\n&lt;em class=\"tc-edit\"&gt;Add a new macro parameter:&lt;/em&gt;\n&lt;$edit-text\n\ttiddler=&lt;&lt;macro-name-tiddler&gt;&gt;\n\ttag=\"input\"\n\tdefault=\"\"\n\tplaceholder=\"macro\" /&gt;\n&lt;$edit-text\n\ttiddler=&lt;&lt;parameter-name-tiddler&gt;&gt;\n\ttag=\"input\"\n\tdefault=\"\"\n\tplaceholder=\"parameter\" /&gt;\n&lt;$reveal type=\"nomatch\" text=\"\" state=&lt;&lt;macro-name-tiddler&gt;&gt; &gt;\n&lt;$reveal type=\"nomatch\" text=\"\" state=&lt;&lt;parameter-name-tiddler&gt;&gt; &gt;\n&lt;$relinkmangler&gt;\n&lt;$button\n\ttooltip={{$(lingo-base)$NewParameter/Hint}}\n\taria-label={{$(lingo-base)$NewParameter/Caption}}&gt;\n&lt;$action-sendmessage\n\t$message=\"relink-add-parameter\"\n\tmacro={{$(macro-name-tiddler)$}}\n\tparameter={{$(parameter-name-tiddler)$}} /&gt;\n&lt;$action-deletetiddler $tiddler=&lt;&lt;parameter-name-tiddler&gt;&gt; /&gt;\n&lt;$action-deletetiddler $tiddler=&lt;&lt;macro-name-tiddler&gt;&gt; /&gt;\n&lt;$text text={{$(lingo-base)$NewParameter/Caption}}/&gt;\n&lt;/$button&gt;\n&lt;/$relinkmangler&gt;\n&lt;/$reveal&gt;\n&lt;$reveal type=\"match\" text=\"\" state=&lt;&lt;parameter-name-tiddler&gt;&gt; &gt;\n&lt;$button&gt;\n&lt;$text text={{$(lingo-base)$NewParameter/Caption}}/&gt;\n&lt;/$button&gt;\n&lt;/$reveal&gt;\n&lt;/$reveal&gt;\n&lt;$reveal type=\"match\" text=\"\" state=&lt;&lt;macro-name-tiddler&gt;&gt; &gt;\n&lt;$button&gt;\n&lt;$text text={{$(lingo-base)$NewParameter/Caption}}/&gt;\n&lt;/$button&gt;\n&lt;/$reveal&gt;\n\n\n&lt;$macrocall\n\t$name=tables\n\tcategory=\"macros\"\n\theader-list=\"Macro Parameter Type\"\n\tlist-row-macro=\"row\" /&gt;\n\\end\n\n&lt;&lt;body&gt;&gt;\n"
},
"$:/plugins/flibbles/relink/ui/configuration/Operators": {
"title": "$:/plugins/flibbles/relink/ui/configuration/Operators",
"caption": "{{$:/plugins/flibbles/relink/language/ui/Operators/Caption}}",
"tags": "$:/tags/flibbles/relink/Configuration",
"text": "\\import $:/plugins/flibbles/relink/ui/components/tables\n\\define lingo-base() $:/plugins/flibbles/relink/language/Buttons/\n\\define operator-name-tiddler() $:/state/flibbles/relink/operator-name\n\n\\define row()\n&lt;td&gt;&lt;$text text=&lt;&lt;key&gt;&gt; /&gt;&lt;/td&gt;\n\\end\n\\define body()\n\n{{$:/plugins/flibbles/relink/language/Help/Operators}}\n\n&lt;em class=\"tc-edit\"&gt;Add a new filter operator:&lt;/em&gt;\n&lt;$edit-text\n\ttiddler=&lt;&lt;operator-name-tiddler&gt;&gt;\n\ttag=\"input\"\n\tdefault=\"\"\n\tplaceholder=\"operator name\" /&gt;\n&lt;$reveal type=\"nomatch\" text=\"\" state=&lt;&lt;operator-name-tiddler&gt;&gt;&gt;\n&lt;$relinkmangler&gt;\n&lt;$button\n\ttooltip={{$(lingo-base)$NewOperator/Hint}}\n\taria-label={{$(lingo-base)$NewOperator/Caption}}&gt;\n&lt;$action-sendmessage\n\t$message=\"relink-add-operator\"\n\toperator={{$(operator-name-tiddler)$}} /&gt;\n&lt;$action-deletetiddler $tiddler=&lt;&lt;operator-name-tiddler&gt;&gt; /&gt;\n&lt;$text text={{$(lingo-base)$NewOperator/Caption}}/&gt;\n&lt;/$button&gt;\n&lt;/$relinkmangler&gt;\n&lt;/$reveal&gt;\n&lt;$reveal type=\"match\" text=\"\" state=&lt;&lt;operator-name-tiddler&gt;&gt;&gt;\n&lt;$button&gt;\n&lt;$text text={{$(lingo-base)$NewOperator/Caption}}/&gt;\n&lt;/$button&gt;\n&lt;/$reveal&gt;\n\n&lt;$macrocall\n\t$name=tables\n\tcategory=\"operators\"\n\theader-list=\"[[Filter Operator]] [[Operand Type]]\"\n\tlist-row-macro=\"row\" /&gt;\n\\end\n\n&lt;&lt;body&gt;&gt;\n"
},
"$:/plugins/flibbles/relink/ui/stylesheet.css": {
"title": "$:/plugins/flibbles/relink/ui/stylesheet.css",
"text": ".tc-relink-references {\n}\n\n.tc-relink-references-table {\n\twidth: 100%;\n\tborder: none;\n}\n\n.tc-relink-references-table td {\n\tborder-left: none;\n}\n\n.tc-relink-references-table tr:first-child td {\n\tborder-top: none;\n}\n\n.tc-relink-references-title {\n\ttext-align: left;\n\tvertical-align: top;\n}\n\n.tc-relink-references-occurrence {\n\tfont-style: italic;\n\ttext-align: left;\n\tfont-weight: 200;\n\tpadding-left: 25px;\n\tvertical-align: top;\n}\n\n.tc-relink-header-plugin {\n\ttext-align: left;\n}\n\n.tc-relink-header-plugin button {\n\twidth: 100%\n}\n\n.tc-relink-column-type {\n\twidth: 8em;\n}\n\n.tc-relink-column-type select {\n\twidth: 100%;\n}\n\n.tc-relink-column-delete {\n\tborder-left: none;\n\ttext-align: left;\n}\n\n.tc-relink-column-delete button {\n\tpadding-left: 1em;\n}\n\n.tc-relink-impossible a.tc-tiddlylink {\n\tcolor: red;\n}\n",
"tags": "$:/tags/Stylesheet",
"type": "text/css"
}
}
}</pre>
</div>
<div author="Flibbles" bag="default" core-version="&gt;=5.1.22" created="20210429194134404" demo="http://flibbles.github.io/tw5-relink/" dependents="" description="Renames tiddlers with titles derived from Relinked tiddler" list="readme configuration" modified="20210502175135070" name="Relink Titles" parent-plugin="$:/plugins/flibbles/relink" plugin-type="plugin" revision="0" source="https://github.com/flibbles/tw5-relink" tags="rr-TW5 rr-plugins" title="$:/plugins/flibbles/relink-titles" type="application/json" version="2.0.0">
<pre>{
"tiddlers": {
"$:/plugins/flibbles/relink-titles/configuration": {
"title": "$:/plugins/flibbles/relink-titles/configuration",
"caption": "{{$:/plugins/flibbles/relink-titles/language/Caption}}",
"tags": "$:/tags/flibbles/relink/Configuration",
"text": "\\define lingo-base() $:/plugins/flibbles/relink-titles/language/\n\\define prefix() $:/config/flibbles/relink-titles/relink/\n\n&lt;&lt;lingo Help&gt;&gt;\n\n&lt;table&gt;\n&lt;tbody&gt;\n&lt;$list filter=\"[[relinktitlesrule]modules[]]\"&gt;\n&lt;tr&gt;\n&lt;td&gt;\n&lt;$checkbox\n\ttiddler={{{ [all[current]addprefix&lt;prefix&gt;] }}}\n\tfield=\"text\"\n\tchecked=\"enabled\"\n\tunchecked=\"disabled\"\n\tdefault=\"enabled\"\n&gt; ''{{!!caption}}''&lt;/$checkbox&gt;&lt;/td&gt;&lt;td&gt;\n\n&lt;$transclude field='description' /&gt;\n\n&lt;/td&gt;&lt;/tr&gt;&lt;/$list&gt;\n&lt;/tbody&gt;&lt;/table&gt;\n"
},
"$:/plugins/flibbles/relink-titles/language/Caption": {
"title": "$:/plugins/flibbles/relink-titles/language/Caption",
"text": "Titles"
},
"$:/plugins/flibbles/relink-titles/language/Directory/Caption": {
"title": "$:/plugins/flibbles/relink-titles/language/Directory/Caption",
"text": "Rename subdirectories"
},
"$:/plugins/flibbles/relink-titles/language/Directory/Description": {
"title": "$:/plugins/flibbles/relink-titles/language/Directory/Description",
"text": "For wikis set up hierarchically using `/`, like a filesystem. This option will update all tiddlers nested inside the target tiddler. i.e. `fromTiddler/path/file` becomes `toTiddler/path/file`."
},
"$:/plugins/flibbles/relink-titles/language/Help": {
"title": "$:/plugins/flibbles/relink-titles/language/Help",
"text": "See the &lt;a href={{{ [{$:/plugins/flibbles/relink-titles!!demo}addsuffix[#Plugins/Titles]] }}}&gt;//Relink-titles// documentation page&lt;/a&gt; for details."
},
"$:/plugins/flibbles/relink-titles/readme": {
"title": "$:/plugins/flibbles/relink-titles/readme",
"text": "Highly customizable relinking of tiddler titles //related// to the renamed tiddler.\n\n* Rename a hierarchy of subtiddlers when renaming a root tiddler.\n* Make custom filter rules to rename other tiddlers the way you want when Relinking.\n* Integrates with other plugins for plugin-specific rules.\n\nSee &lt;a href={{$:/plugins/flibbles/relink-titles!!source}}&gt;the tw5-relink website&lt;/a&gt; for more details and examples.\n\n{{$:/core/images/warning}} ''Warning:'' You must use //Relink// v1.10.2 or greater with this, or this plugin may delete some tiddler bodies while trying to relink titles.\n"
},
"$:/plugins/flibbles/relink-titles/relinkoperations/title.js": {
"title": "$:/plugins/flibbles/relink-titles/relinkoperations/title.js",
"text": "/*\\\nmodule-type: relinkoperator\ntitle: $:/plugins/flibbles/relink-titles/relinkoperations/title.js\ntype: application/javascript\n\nRenames tiddlers which have titles derived from fromTitle. Then it makes\nsure that those tiddlers are properly relinked too.\n\n\\*/\n\n/*jslint node: false, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar configPrefix = \"$:/config/flibbles/relink-titles/relink/\";\nvar utils = require('$:/plugins/flibbles/relink/js/utils.js');\nutils.getContext('whitelist').hotDirectories.push(configPrefix);\n\nvar titleRules = Object.create(null);\n$tw.modules.forEachModuleOfType('relinktitlesrule', function(title, module) {\n\ttitleRules[title] = module;\n});\n\nexports.name = 'title';\n\nexports.report = function(tiddler, callback, options) {\n\tvar cache = getCache(options),\n\t\trules = cache.rules;\n\tfor (var i = 0; i &lt; rules.length; i++) {\n\t\trules[i].report(tiddler.fields.title, function(title, blurb) {\n\t\t\tcallback(title, blurb ? ('title: ' + blurb) : 'title');\n\t\t}, options);\n\t}\n};\n\nexports.relink = function(tiddler, fromTitle, toTitle, changes, options) {\n\tvar cache = getCache(options),\n\t\ttitle = tiddler.fields.title;\n\tif (!cache.touched[title]) {\n\t\tvar rules = cache.rules;\n\t\tfor (var i = 0; i &lt; rules.length; i++) {\n\t\t\tvar rule = rules[i];\n\t\t\tvar entry = rule.relink(title, fromTitle, toTitle, options);\n\t\t\tif (entry) {\n\t\t\t\tvar result = entry.output;\n\t\t\t\tif (result &amp;&amp; (result !== title)) {\n\t\t\t\t\tif (options.wiki.getTiddler(result) || cache.touched[result]) {\n\t\t\t\t\t\t// There's already a tiddler there. We won't clobber it.\n\t\t\t\t\t\tentry.impossible = true;\n\t\t\t\t\t\tentry.output = undefined;\n\t\t\t\t\t}\n\t\t\t\t\tcache.touched[result] = true;\n\t\t\t\t}\n\t\t\t\t// Record that we've touched this one, so we only touch it once.\n\t\t\t\t// Both its prior and latter. Neither should be touched again.\n\t\t\t\tcache.touched[title] = true;\n\t\t\t\tchanges.title = entry;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n};\n\nfunction getCache(options) {\n\treturn utils.getCacheForRun(options, 'titles', function() {\n\t\treturn {\n\t\t\trules: getRules(options.wiki),\n\t\t\ttouched: Object.create(null)\n\t\t};\n\t});\n};\n\nfunction getRules(wiki) {\n\tvar activeRules = [];\n\tfor (var rule in titleRules) {\n\t\tvar configTiddler = wiki.getTiddler(configPrefix + rule);\n\t\tif (!configTiddler || configTiddler.fields.text !== \"disabled\") {\n\t\t\tactiveRules.push(titleRules[rule]);\n\t\t}\n\t}\n\treturn activeRules;\n};\n",
"module-type": "relinkoperator",
"type": "application/javascript"
},
"$:/plugins/flibbles/relink-titles/rules/directory": {
"title": "$:/plugins/flibbles/relink-titles/rules/directory",
"text": "/*\\\ncaption: {{$:/plugins/flibbles/relink-titles/language/Directory/Caption}}\ndescription: {{$:/plugins/flibbles/relink-titles/language/Directory/Description}}\nmodule-type: relinktitlesrule\ntitle: $:/plugins/flibbles/relink-titles/rules/directory\ntype: application/javascript\n\nHandles subdirectory renaming.\n\n\\*/\n\n/*jslint node: false, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = 'directory';\n\n/**The report returns all parent directories of a given title which exist.\n */\nexports.report = function(title, callback, options) {\n\tvar index = -1;\n\twhile ((index = title.indexOf('/', index+1)) &gt;= 0) {\n\t\tvar dir = title.substr(0, index);\n\t\tcallback(dir, '.' + title.substr(index));\n\t}\n};\n\n/**The relink returns the new title (if any) derived from title for a given\n * rename of fromTitle to toTitle.\n */\nexports.relink = function(title, fromTitle, toTitle, options) {\n\tvar length = fromTitle.length;\n\tif (title.charAt(length) === '/' &amp;&amp; title.substr(0, length) === fromTitle) {\n\t\treturn {output: toTitle + title.substr(length)};\n\t}\n\treturn undefined;\n};\n",
"caption": "{{$:/plugins/flibbles/relink-titles/language/Directory/Caption}}",
"description": "{{$:/plugins/flibbles/relink-titles/language/Directory/Description}}",
"module-type": "relinktitlesrule",
"type": "application/javascript"
}
}
}</pre>
</div>
<div caption="{{$:/plugins/kookma/commander/images/file-alt}} {{$:/language/Buttons/Commander/Caption}}" created="20190724145015836" description="Open tiddler commander" modified="20210725042406868" tags="$:/tags/PageControls" title="$:/plugins/kookma/commander/buttons/pagecontrol" type="text/vnd.tiddlywiki">
<pre>\whitespace trim
\define commander-button(class)
&lt;$button to="$:/Commander" tooltip={{$:/language/Buttons/Commander/Hint}} aria-label={{$:/language/Buttons/Commander/Caption}} class="""$(tv-config-toolbar-class)$ $class$"""&gt;
&lt;$list filter="[&lt;tv-config-toolbar-icons&gt;match[yes]]"&gt;
{{$:/plugins/kookma/commander/images/commander.svg}}
&lt;/$list&gt;
&lt;$list filter="[&lt;tv-config-toolbar-text&gt;match[yes]]"&gt;
&lt;span class="tc-btn-text"&gt;&lt;$text text={{$:/language/Buttons/Commander/Caption}}/&gt;&lt;/span&gt;
&lt;/$list&gt;
&lt;/$button&gt;
\end
&lt;$list filter="[list[$:/StoryList]] +[field:title[$:/Commander]]" emptyMessage=&lt;&lt;commander-button&gt;&gt;&gt;
&lt;&lt;commander-button "tc-selected"&gt;&gt;
&lt;/$list&gt;
</pre>
</div>
<div caption="Recently added" created="20200103090757281" list="Tasks exmp138/demo exmp138/stylesheet Links $:/plugins/kookma/utility/macro/show-macro $:/plugins/kookma/shiraz/macros/slider $:/config/toc/admin $:/toc/adminTid viewtemplate/tagging [[Favorites Plugin]] $:/plugins/kookma/favorites/viewtoolbar" modified="20210426035836588" tags="$:/tags/Favorites/Folder" title="$:/plugins/kookma/favorites/recent" type="text/vnd.tiddlywiki">
<pre></pre>
</div>
<div caption="Favorites" created="20191226064836102" list-after="$:/core/ui/SideBar/Open" modified="20210722004357754" tags="" title="$:/plugins/kookma/favorites/sidebar-tab" type="text/vnd.tiddlywiki">
<pre>\define show-options()
&lt;$button class="tc-btn-invisible" to="$:/plugins/kookma/favorites/manager"&gt;
{{$:/core/images/options-button}} Manager
&lt;/$button&gt;
\end
&lt;!-- create the sidebar tab --&gt;
&lt;div class="kk-favorites"&gt;
--- &amp;nbsp; &lt;&lt;show-options&gt;&gt; &lt;br&gt;
&lt;$transclude tiddler="$:/plugins/kookma/favorites/macros/sidebar" field=text/&gt;
&lt;/div&gt;</pre>
</div>
<div author="Mohammad Rahmani" core-version="&gt;=5.1.21" dependents="" description="extended markups, styles, images, tables, and macros" list="readme license history" name="Shiraz" plugin-type="plugin" source="https://github.com/kookma/TW-Shiraz" title="$:/plugins/kookma/shiraz" type="application/json" version="2.2.0">
<pre>{"tiddlers":{"$:/plugins/kookma/shiraz/history":{"title":"$:/plugins/kookma/shiraz/history","created":"20210225163850252","modified":"20210226190112050","tags":"","type":"text/vnd.tiddlywiki","text":"Full change log: [[https://kookma.github.io/TW-Shiraz/#ChangeLog]]\n\n* ''2.2.0'' -- 2021.02.26 -- upated to TW 5.1.23 and pagination added to dynamic tables\n* ''2.1.1'' -- 2020.03.25 -- slider macro with initial status\n* ''2.1.0'' -- 2020.03.23 -- stable release on TW-5.1.22pre\n* ''1.0.0'' -- 2018.10.05 -- first public release\n"},"$:/plugins/kookma/shiraz/license":{"title":"$:/plugins/kookma/shiraz/license","created":"20210225163850253","modified":"20210225164033716","tags":"","type":"text/vnd.tiddlywiki","text":"Distributed under an MIT license.\n\nCopyright (c) 2021 [[Mohammad Rahmani|https://github.com/kookma]]\n\n&lt;&lt;&lt;\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n&lt;&lt;&lt;"},"$:/plugins/kookma/shiraz/macros/alerts":{"title":"$:/plugins/kookma/shiraz/macros/alerts","created":"20180821095049685","modified":"20210225164756860","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define alert(type:\"primary\" src:\"\", width:\"100%\", class:\"\")\n&lt;div class=\"alert alert-$type$ $class$\" style=\"width:$width$;\"&gt;\n$src$\n&lt;/div&gt;\n\\end\n\n\\define alert-leftbar(type:\"primary\" src:\"\", width:\"100%\", class:\"\")\n&lt;div class=\"alert alert-$type$ bg-transparent leftbar border-$type$ $class$\" style=\"width:$width$;\"&gt;\n$src$\n&lt;/div&gt;\n\\end\n"},"$:/plugins/kookma/shiraz/macros/badge":{"title":"$:/plugins/kookma/shiraz/macros/badge","created":"20181124042103310","modified":"20210225164756871","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define badge(type:\"primary\" src:\"\")\n&lt;span class=\"badge badge-$type$\"&gt;$src$&lt;/span&gt;\n\\end\n\n\\define badge-pill(type:\"primary\" src:\"\")\n&lt;span class=\"badge badge-pill badge-$type$\"&gt;$src$&lt;/span&gt;\n\\end\n"},"$:/plugins/kookma/shiraz/macros/card":{"title":"$:/plugins/kookma/shiraz/macros/card","created":"20181124111624466","modified":"20210225164756878","tags":"$:/tags/Macro","type":"text/vnd.tiddlywiki","text":"\\define card(header:\"Empty\", title:\"Empty\" subtitle:\"Empty\" text:\"Empty\",footer:\"Empty\", width:\"100%\" class:\"\")\n&lt;div class=\"card mb-3 $class$\" style=\"width:$width$;\"&gt;\n&lt;$reveal tag=\"div\" type=\"nomatch\" default=\"Empty\" text=&lt;&lt;__header__&gt;&gt; &gt;\n &lt;div class=\"card-header\"&gt;$header$&lt;/div&gt;\n&lt;/$reveal&gt;\n&lt;div class=\"card-body\"&gt;\n &lt;$reveal tag=\"div\" type=\"nomatch\" default=\"Empty\" text=&lt;&lt;__title__&gt;&gt; &gt;\n &lt;div class=\"h5 card-title\"&gt;$title$&lt;/div&gt;\n &lt;/$reveal&gt;\n &lt;$reveal tag=\"div\" type=\"nomatch\" default=\"Empty\" text=&lt;&lt;__subtitle__&gt;&gt; &gt;\n &lt;div class=\"h6 card-subtitle mb-2 text-muted\"&gt;$subtitle$&lt;/div&gt;\n &lt;/$reveal&gt;\n &lt;$reveal tag=\"div\" type=\"nomatch\" default=\"Empty\" text=&lt;&lt;__text__&gt;&gt; &gt;\n &lt;div class=\"card-text\"&gt;&lt;&lt;__text__&gt;&
</div>
<div created="20191209105546612" modified="20210725043542530" tags="" title="$:/plugins/kookma/shiraz/styles/colorful-sidebar-tab" type="text/css">
<pre>.tc-sidebar-lists .tc-tab-buttons button.tc-tab-selected {
background: none;
border: none;
border-bottom: solid 1px #737373 !important;
font-weight: bold;
color: #DB4C3F !important;
}</pre>
</div>
<div created="20191029094209435" modified="20210725043523361" tags="$:/tags/Stylesheet" title="$:/plugins/kookma/shiraz/styles/misc/tiddler-button-visibility" type="text/css">
<pre>/* Mouseover toolbar visibility: courtesy from Tobias Beer*/
.tc-tiddler-frame .tc-titlebar button {
opacity: 0;
transition: opacity .5s ease-in-out;
}
.tc-tiddler-frame:hover .tc-titlebar button {
zoom: 1;
filter: alpha(opacity=100);
opacity: 1;
}
</pre>
</div>
<div created="20191029092047069" modified="20210725043541708" tags="" title="$:/plugins/kookma/shiraz/styles/misc/ui-buttons" type="text/css">
<pre>/* These css rules makes TW UI buttons in beatiful color */
/*page control buttons*/
.tc-page-controls .tc-image-new-button { fill: #5EB95E; } /*New tiddler button*/
.tc-page-controls .tc-image-options-button { fill:#8058A5; } /*Open control pannel*/
/*tiddler buttons in beautiful color*/
.tc-tiddler-controls .tc-image-edit-button { fill:#F37B1D; }/*edit tiddler*/
.tc-tiddler-controls .tc-image-info-button { fill: #0e90d2; } /*Info button*/
</pre>
</div>
<div caption="In Fields" created="20141231095518178" modified="20210307120304156" tags="$:/tags/AdvancedSearch" title="$:/plugins/kookma/solution/ui/search-in-fields" type="text/vnd.tiddlywiki">
<pre>\define selectedFields() title caption tags keywords responder
\define searchInField(field, for, ci)
&lt;$list filter="[!is[shadow]!is[system]regexp:$field$[$for$$ci$]limit[1]]"&gt;
&lt;dt&gt;$field$&lt;/dt&gt;
&lt;/$list&gt;
&lt;$list filter="[!is[shadow]!is[system]regexp:$field$[$for$$ci$]]"&gt;
&lt;dd&gt;&lt;$link&gt;&lt;$view field="title"/&gt;&lt;/$link&gt;&lt;/dd&gt;
&lt;/$list&gt;
\end
&lt;style&gt;.tc-advanced-search-check input {width:auto !important;}&lt;/style&gt;
Search in fields... &amp;nbsp; &lt;span class="tc-advanced-search-check"&gt;&lt;$checkbox field="case-insensitive" tiddler="$:/temp/infieldsearch" checked="(?i)"&gt; case insensitive&lt;/$checkbox&gt;&lt;/span&gt;
&lt;div class="tc-search"&gt;
&lt;$edit-text tiddler="$:/temp/infieldsearch" type="search" tag="input" placeholder="search terms" default=""/&gt; &lt;$select field="field" tiddler="$:/temp/infieldsearch" default="*"&gt;
&lt;optgroup label='Selected'&gt;
&lt;$list filter=&lt;&lt;selectedFields&gt;&gt; variable="field"&gt;
&lt;option value=&lt;&lt;field&gt;&gt;&gt;&lt;&lt;field&gt;&gt;&lt;/option&gt;
&lt;/$list&gt;
&lt;/optgroup&gt;
&lt;optgroup label='Other'&gt;
&lt;option value=""&gt;*any&lt;/option&gt;
&lt;$list filter="[!is[shadow]!is[system]fields[]sort[]] -[enlist&lt;selectedFields&gt;]" variable="field"&gt;
&lt;option value=&lt;&lt;field&gt;&gt;&gt;&lt;&lt;field&gt;&gt;&lt;/option&gt;
&lt;/$list&gt;
&lt;/optgroup&gt;
&lt;/$select&gt;
&lt;$reveal state="$:/temp/infieldsearch" type="nomatch" text=""&gt;
&lt;$button class="tc-btn-invisible"&gt;
&lt;$action-setfield $tiddler="$:/temp/infieldsearch" $field="text" $value=""/&gt;
{{$:/core/images/close-button}}
&lt;/$button&gt;
&lt;/$reveal&gt;
&lt;/div&gt;
&lt;$reveal state="$:/temp/infieldsearch" type="nomatch" text=""&gt;
&lt;$reveal state="$:/temp/infieldsearch!!field" type="match" text=""&gt;
&lt;dl&gt;
&lt;$list filter="[!is[shadow]!is[system]fields[]]" variable="field"&gt;
&lt;$reveal type=nomatch text=text default=&lt;&lt;field&gt;&gt;&gt;
&lt;$macrocall $name="searchInField" field=&lt;&lt;field&gt;&gt; for={{$:/temp/infieldsearch}} ci={{$:/temp/infieldsearch!!case-insensitive}}/&gt;
&lt;/$reveal&gt;
&lt;/$list&gt;
&lt;/dl&gt;
&lt;/$reveal&gt;
&lt;$reveal state="$:/temp/infieldsearch!!field" type="nomatch" text=""&gt;
&lt;dl&gt;
&lt;$macrocall $name="searchInField" field={{$:/temp/infieldsearch!!field}} for={{$:/temp/infieldsearch}} ci={{$:/temp/infieldsearch!!case-insensitive}}/&gt;
&lt;/dl&gt;
&lt;/$reveal&gt;
&lt;/$reveal&gt;</pre>
</div>
<div created="20200129072515692" modified="20200321114704117" tags="$:/tags/Stylesheet" title="$:/plugins/kookma/toc/styles/main" type="text/css">
<pre>/* these styles are used to customize the TOC tree and ui */
/* toc tree lists */
.kk-toc ol {
list-style-type: none;
padding-left:0;
}
.kk-toc ol ol{
list-style-type: none;
padding-left:1em;
}
/* bold first level entry and normal weight for other levels */
.kk-toc li .tc-tiddlylink{font-weight: bold;}
.kk-toc ol ol .tc-tiddlylink{font-weight:normal;}
.kk-toc-item { text-align:left; white-space:nowrap; } /* prevent wrapping long entries*/
.kk-toc-item img { height:1em; width:1em; }
.kk-toc-item svg { height:1em; width:1em;}
/* More tools button fade-in */
.kk-toc-item .kk-toc-tools { opacity:0.0; }
.kk-toc-item:hover .kk-toc-tools { opacity:0.5; }
.kk-toc-item:hover .kk-toc-tools:hover { opacity:1.0; }
/* bookmark button fade-in*/
.kk-toc-item .kk-bookmark { opacity:0.0; }
.kk-toc-item:hover .kk-bookmark { opacity:0.5; }
.kk-toc-item:hover .kk-bookmark:hover { opacity:1.0; }
.kk-toc-item .kk-bookmark.show { opacity:1.0 !important; }
/* drag and drop elements */
.kk-toc-placeholder{ position:relative; border:0 !important; border-bottom:1px dotted blue !important; }
.kk-toc-dragtip {
position:absolute; z-index:1; right:0.5em; top:0.5em; padding:0.25em 0.5em;
border:1px solid lightgray; box-shadow: 0.3em 0.3em 0.5em rgba(0,0,0,0.3);
background:white; text-align:center; font-size:80%; line-height:100%;
}
/* set color of links when toc is used in a sidebar tab*/
.tc-sidebar-lists .kk-toc-item .tc-tiddlylink{color:#999999}
.tc-sidebar-lists .kk-toc-item svg { height:1em; width:1em; fill: #acacac;}
/* item when are visited NOT in sidebar*/
/*.kk-toc li .tc-tiddlylink{color:black;} selected or clicked item */
.kk-toc-opened-item{
padding:0;
padding-left:5px;
border-radius: unset;
border-left-width:2px;
border-left-style:solid;}
/* ui buttons on sidebar */
.kk-toc button {outline:none;}
.kk-toc-btn {outline:none;}
.tc-sidebar-lists .kk-toc-btn svg { fill: #acacac;}
.tc-sidebar-lists .kk-toc-btn { color: #acacac;}
/* manager buttons */
.kk-toc-tools-manager { opacity:0.5; }
.kk-toc-tools-manager:hover { opacity:1.0; }</pre>
</div>
<div author="Mohammad Rahmani" core-version="&gt;= 5.1.22" created="20200325113952303" description="A trashbin mechanism for Tiddlywiki" list="readme license history" modified="20200410061123650" name="Trashbin" plugin-type="plugin" source="https://github.com/kookma/TW-Trashbin" tags="" title="$:/plugins/kookma/trashbin" type="application/json" version="1.2.2">
<pre>{"tiddlers":{"$:/plugins/kookma/trashbin/history":{"created":"20200325121105806","modified":"20200410061128665","tags":"","type":"text/vnd.tiddlywiki","text":"Full change log https://kookma.github.io/TW-Trashbin/#ChangeLog\n\n* ''1.2.2'' -- 2020.04.10 -- bug fix in remove draft tiddlers to trashbin\n* ''1.2.1'' -- 2020.03.30 -- bug fix and doc improvement and UI fade correction\n* ''1.1.2'' -- 2020.03.28 -- stable release with new features and bug fixes\n* ''0.1.0'' -- 2019.02.12 -- mature public release\n"},"$:/plugins/kookma/trashbin/images/recycle":{"created":"20190723043410550","modified":"20200325115955820","tags":"","type":"text/vnd.tiddlywiki","text":"&lt;svg class=\"tc-image-recycle tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 512 512\"&gt;&lt;path d=\"M184.561 261.903c3.232 13.997-12.123 24.635-24.068 17.168l-40.736-25.455-50.867 81.402C55.606 356.273 70.96 384 96.012 384H148c6.627 0 12 5.373 12 12v40c0 6.627-5.373 12-12 12H96.115c-75.334 0-121.302-83.048-81.408-146.88l50.822-81.388-40.725-25.448c-12.081-7.547-8.966-25.961 4.879-29.158l110.237-25.45c8.611-1.988 17.201 3.381 19.189 11.99l25.452 110.237zm98.561-182.915l41.289 66.076-40.74 25.457c-12.051 7.528-9 25.953 4.879 29.158l110.237 25.45c8.672 1.999 17.215-3.438 19.189-11.99l25.45-110.237c3.197-13.844-11.99-24.719-24.068-17.168l-40.687 25.424-41.263-66.082c-37.521-60.033-125.209-60.171-162.816 0l-17.963 28.766c-3.51 5.62-1.8 13.021 3.82 16.533l33.919 21.195c5.62 3.512 13.024 1.803 16.536-3.817l17.961-28.743c12.712-20.341 41.973-19.676 54.257-.022zM497.288 301.12l-27.515-44.065c-3.511-5.623-10.916-7.334-16.538-3.821l-33.861 21.159c-5.62 3.512-7.33 10.915-3.818 16.536l27.564 44.112c13.257 21.211-2.057 48.96-27.136 48.96H320V336.02c0-14.213-17.242-21.383-27.313-11.313l-80 79.981c-6.249 6.248-6.249 16.379 0 22.627l80 79.989C302.689 517.308 320 510.3 320 495.989V448h95.88c75.274 0 121.335-82.997 81.408-146.88z\"/&gt;&lt;/svg&gt;"},"$:/plugins/kookma/trashbin/images/sort-alpha-down":{"caption":"sort-alpha-down","created":"20200327153959154","modified":"20200327185043770","tags":"$:/tags/Image","type":"text/vnd.tiddlywiki","text":"&lt;svg class=\"tc-image-sort-alpha-down tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 448 512\"&gt;&lt;path d=\"M176 352h-48V48a16 16 0 0 0-16-16H80a16 16 0 0 0-16 16v304H16c-14.19 0-21.36 17.24-11.29 27.31l80 96a16 16 0 0 0 22.62 0l80-96C197.35 369.26 190.22 352 176 352zm240-64H288a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h56l-61.26 70.45A32 32 0 0 0 272 446.37V464a16 16 0 0 0 16 16h128a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16h-56l61.26-70.45A32 32 0 0 0 432 321.63V304a16 16 0 0 0-16-16zm31.06-85.38l-59.27-160A16 16 0 0 0 372.72 32h-41.44a16 16 0 0 0-15.07 10.62l-59.27 160A16 16 0 0 0 272 224h24.83a16 16 0 0 0 15.23-11.08l4.42-12.92h71l4.41 12.92A16 16 0 0 0 407.16 224H432a16 16 0 0 0 15.06-21.38zM335.61 144L352 96l16.39 48z\"/&gt;&lt;/svg&gt;"},"$:/plugins/kookma/trashbin/images/sort-alpha-up":{"caption":"sort-alpha-up (Solid)","created":"20200327155639132","modified":"20200327162316327","tags":"$:/tags/Image","type":"text/vnd.tiddlywiki","text":"&lt;svg class=\"tc-image-sort-alpha-up-alt tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 448 512\"&gt;&lt;path d=\"M16 160h48v304a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V160h48c14.21 0 21.38-17.24 11.31-27.31l-80-96a16 16 0 0 0-22.62 0l-80 96C-5.35 142.74 1.78 160 16 160zm272 64h128a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16h-56l61.26-70.45A32 32 0 0 0 432 65.63V48a16 16 0 0 0-16-16H288a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h56l-61.26 70.45A32 32 0 0 0 272 190.37V208a16 16 0 0 0 16 16zm159.06 234.62l-59.27-160A16 16 0 0 0 372.72 288h-41.44a16 16 0 0 0-15.07 10.62l-59.27 160A16 16 0 0 0 272 480h24.83a16 16 0 0 0 15.23-11.08l4.42-12.92h71l4.41 12.92A16 16 0 0 0 407.16 480H432a16 16 0 0 0 15.06-21.38zM335.61 400L352 352l16.39 48z\"/&gt;&lt;/svg&gt;"},"$:/plugins/kookma/trashbin/images/sort-numeric-down":{"caption":"sort-numeric-down","created":"20200327153929866","modified":"20200327185052283","tags":"$:/tags/Image","type":"text/vnd.tiddlywiki",
</div>
<div caption="Trashbin" created="20190613131234955" modified="20210925211715962" tags="" title="$:/plugins/kookma/trashbin/sidebar-tab" type="text/vnd.tiddlywiki">
<pre>{{$:/plugins/kookma/trashbin/ui/sidebar}}</pre>
</div>
<div caption="Trashbin" created="20200330082034854" modified="20210925210644633" title="$:/plugins/kookma/trashbin/ui/sidebar" type="text/vnd.tiddlywiki">
<pre>\import $:/plugins/kookma/trashbin/macros/sort
\import $:/plugins/kookma/trashbin/macros/restore
\import $:/plugins/kookma/trashbin/macros/confirm-empty
\import $:/plugins/kookma/trashbin/macros/bulk-operation
\import $:/plugins/kookma/trashbin/macros/preview-option
\define show-link()
&lt;$link to=&lt;&lt;currentTiddler&gt;&gt; &gt;&lt;$text text={{{ [&lt;currentTiddler&gt;removeprefix[$:/trashbin/]] }}} /&gt; &lt;/$link&gt;&amp;nbsp;&lt;span style="float:right;padding-right:10px;font-size:smaller;" title="Date Deleted"&gt;&lt;$view field="modified" format="date" template="0MM/0DD/YYYY 0hh:0mm AM"/&gt;&lt;/span&gt;
\end
\define recycle-button()
{{||$:/plugins/kookma/trashbin/ui/toolbar-button}}
\end
\define delete-button()
&lt;$button class="tc-btn-invisible" tooltip="Delete permanently"&gt;
{{$:/plugins/kookma/trashbin/images/times.svg}}
&lt;$list filter="[list[$:/StoryList]] +[field:title&lt;currentTiddler&gt;&gt;]" variable=ignore&gt;
&lt;$action-sendmessage $message="tm-close-tiddler" $param=&lt;&lt;&lt;currentTiddler&gt;&gt; /&gt;
&lt;/$list&gt;
&lt;$action-deletetiddler $tiddler=&lt;&lt;currentTiddler&gt;&gt; /&gt;
&lt;/$button&gt;
\end
\define trashbin-siderbar-ui()
&lt;div class="kk-trahbin-ui"&gt;
&lt;span class="kk-trahbin-ui-controls kk-trashbin-ui-btn"&gt;
&lt;&lt;trashbin-empty-bin&gt;&gt; &lt;&lt;restore-all&gt;&gt; &lt;&lt;sort-by&gt;&gt; &lt;&lt;preview-option&gt;&gt;
&lt;/span&gt;&amp;nbsp;
&lt;span style="font-size:smaller"&gt;
&lt;$list filter='[tag[$:/tags/trashbin]prefix[$:/trashbin/]limit[1]]' variable=null emptyMessage="Trash bin is empty"&gt;
&lt;$count filter='[tag[$:/tags/trashbin]]'/&gt; items in Trashbin
&lt;/$list&gt;
&lt;/span&gt;
&lt;!-- create the trash items list --&gt;
&lt;$list filter="[tag[$:/tags/trashbin]prefix[$:/trashbin/]$(sortType)$]"&gt;
&lt;div class="kk-trashbin-row"&gt;
&lt;div class="kk-trashbin-link"&gt;&lt;&lt;show-link&gt;&gt;&lt;/div&gt;
&lt;div class="kk-trashbin-recycle kk-trashbin-ui-btn"&gt;&lt;&lt;recycle-button&gt;&gt;&lt;/div&gt;
&lt;div class="kk-trashbin-delete kk-trashbin-ui-btn"&gt;&lt;&lt;delete-button&gt;&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/$list&gt;
&lt;/div&gt;
\end
&lt;$vars sortType={{{[&lt;tempSortTid&gt;get[text]] ~[[]] }}}&gt;
&lt;&lt;trashbin-siderbar-ui&gt;&gt;
&lt;/$vars&gt;</pre>
</div>
<div author="Mohammad Rahmani" core-version="&gt;=5.1.22" created="20190930044030716" description="Utility" list="readme license history" modified="20200403062004371" plugin-type="plugin" source="https://github.com/kookma/TW-Utility" tags="" title="$:/plugins/kookma/utility" type="application/json" version="2.1.2">
<pre>{"tiddlers":{"$:/plugins/kookma/utility/author/author-tools":{"title":"$:/plugins/kookma/utility/author/author-tools","created":"20190912082519234","key":"((author-tools))","modified":"20200316130508400","tags":"$:/tags/KeyboardShortcut","type":"text/vnd.tiddlywiki","text":"&lt;$action-sendmessage $message=\"tm-modal\" $param=\"$:/plugins/kookma/utility/author/modal\" /&gt;"},"$:/plugins/kookma/utility/author/exclude-items":{"title":"$:/plugins/kookma/utility/author/exclude-items","caption":"Exclude items","created":"20200313124437263","modified":"20200322115519909","tags":"","type":"text/vnd.tiddlywiki","text":"\\define showItems(label, filter)\n&lt;h2&gt;$label$&lt;/h2&gt;\n&lt;$list filter=&lt;&lt;__filter__&gt;&gt; &gt;\n&lt;$checkbox tiddler=&lt;&lt;currentTiddler&gt;&gt; tag=\"excluded\"/&gt;&amp;nbsp;&lt;$link to=&lt;&lt;currentTiddler&gt;&gt;&gt;&lt;$text text=&lt;&lt;currentTiddler&gt;&gt;/&gt;&lt;/$link&gt;&lt;br&gt;\n&lt;/$list&gt;\n\\end\n&lt;!-- drag and drop --&gt;\n&lt;&lt;showItems label:\"Disable drag and drop\" filter:\"[title[$:/config/DragAndDrop/Enable]]\"&gt;&gt;\n&lt;!-- side bar items --&gt;\n&lt;&lt;showItems label:\"Sidebar tabs\" filter:\"[all[shadows+tiddlers]]+[tag[$:/tags/SideBar]]\"&gt;&gt;\n&lt;!-- viewtoolbar items --&gt;\n&lt;&lt;showItems label:\"View toolbars\" filter:\"[all[shadows+tiddlers]prefix[$:/config/ViewToolbarButtons/Visibility]]\"&gt;&gt;\n&lt;!-- Page controls --&gt;\n&lt;&lt;showItems label:\"Page controls\" filter:\"[all[shadows+tiddlers]prefix[$:/config/PageControlButtons/Visibility]]\"&gt;&gt;\n&lt;$list filter=\"\"&gt;"},"$:/plugins/kookma/utility/author/individual-items":{"title":"$:/plugins/kookma/utility/author/individual-items","caption":"Hide individual UI element","created":"20200313141533701","modified":"20200322130601872","tags":"","type":"text/vnd.tiddlywiki","text":"Select individual items to hide in reader mode.\n\n! Site options\n&lt;$checkbox tiddler=\"$:/core/ui/SideBarSegments/site-title\" tag=\"$:/tags/SideBarSegment\"/&gt; Show site title&lt;br/&gt;\n&lt;$checkbox tiddler=\"$:/core/ui/SideBarSegments/site-subtitle\" tag=\"$:/tags/SideBarSegment\"/&gt; Show site subtitle&lt;br/&gt;\n&lt;$checkbox tiddler=\"$:/core/ui/SideBarSegments/page-controls\" tag=\"$:/tags/SideBarSegment\"/&gt; Show page controls&lt;br/&gt;\n\n! Right sidebar elements\n&lt;$checkbox tiddler=\"$:/core/ui/TopBar/menu\" tag=\"$:/tags/TopRightBar\"/&gt; Show right sidebar toggle button&lt;br/&gt;\n&lt;$checkbox tiddler=\"$:/core/ui/SideBarSegments/search\" tag=\"$:/tags/SideBarSegment\"/&gt; Show search bar&lt;br/&gt;\n&lt;$checkbox tiddler=\"$:/core/ui/SideBarSegments/tabs\" tag=\"$:/tags/SideBarSegment\"/&gt; Show sidebar tabs&lt;br/&gt;\n&lt;!-- reserved\n&lt;$checkbox tiddler=\"$:/config/custom-segment\" tag=\"$:/tags/SideBarSegment\"/&gt; Show custom menu --&gt;\n\n! Sidebar tabs\n&lt;$checkbox tiddler=\"$:/core/ui/SideBar/Open\" tag=\"$:/tags/SideBar\"/&gt; Show Open tab&lt;br/&gt;\n&lt;$checkbox tiddler=\"$:/core/ui/SideBar/Recent\" tag=\"$:/tags/SideBar\"/&gt; Show Recent tab&lt;br/&gt;\n&lt;$checkbox tiddler=\"$:/core/ui/SideBar/Tools\" tag=\"$:/tags/SideBar\"/&gt; Show Tools tab&lt;br/&gt;\n&lt;$checkbox tiddler=\"$:/core/ui/SideBar/More\" tag=\"$:/tags/SideBar\"/&gt; Show More tab&lt;br/&gt;\n\n! Tiddler options\n&lt;$checkbox tiddler=\"$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/edit\" field=text checked=show unchecked=hide default=show /&gt; Show edit button in the tiddler toolbar&lt;br/&gt;\n&lt;$checkbox tiddler=\"$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/close\" field=text checked=show unchecked=hide default=show /&gt; Show close button in the tiddler toolbar&lt;br/&gt;\n&lt;$checkbox tiddler=\"$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/more-tiddler-actions\" field=text checked=show unchecked=hide default=show /&gt; Show more actions button in the tiddler toolbar\n\n! Other items\n&lt;$checkbox tiddler=\"$:/config/DragAndDrop/Enable\" field=text checked=no unchecked=yes default=yes /&gt; Disable page dropzone\n"},"$
</div>
<div created="20180906042308596" modified="20210725043549297" tags="" title="$:/plugins/kookma/utility/styles/tw-version" type="text/vnd.tiddlywiki">
<pre>&lt;pre&gt;/* TW-version added to site title */
.tc-site-title:before {
content:"TW &lt;&lt;version&gt;&gt;";
position:absolute;
margin-top:-1.9em;
color:silver;
font-size:13px;
}
&lt;/pre&gt;</pre>
</div>
<div created="20181010162537613" description="Toggle field handling in view mode" list-after="$:/core/ui/ViewTemplate/tags" modified="20210426054147590" tags="" title="$:/plugins/kookma/utility/viewtemplate/view-fields" type="text/vnd.tiddlywiki">
<pre>&lt;$vars newFieldNameTiddler=&lt;&lt;qualify "$:/temp/NewFieldName"&gt;&gt;
newFieldValueTiddler=&lt;&lt;qualify "$:/temp/NewFieldValue"&gt;&gt;
searchListState=&lt;&lt;qualify "$:/temp/searchListState"&gt;&gt;
storeTitle=&lt;&lt;qualify "$:/temp/storeTitle"&gt;&gt;
&gt;
&lt;$transclude tiddler="$:/core/ui/EditTemplate/fields"/&gt;
&lt;/$vars&gt;</pre>
</div>
<div author="Saq Imtiaz" bag="default" core-version="&gt;=5.1.23" created="20210502055536223" dependents="" description="Streams - a different way to write" list="Settings" modified="20210502173153901" plugin-priority="1" plugin-type="plugin" revision="1" source="https://saqimtiaz.github.io/streams/" tags="rr-TW5 rr-plugins" title="$:/plugins/sq/streams" type="application/json" version="0.2.12">
<pre>{
"tiddlers": {
"$:/plugins/sq/streams/Settings/config": {
"title": "$:/plugins/sq/streams/Settings/config",
"caption": "Configuration",
"text": "\\define sortBySettingsGroupFilter()\n[get[settings-group]!is[blank]else[!general]] [get[settings-group-header]!is[blank]else[99]] +[join[]]\n\\end\n\n&lt;$edit-text tiddler=\"$:/state/sq/streams/settings/search\" class=\"sq-search-input\" default=\"\" tag=\"input\" type=\"search\" placeholder=\"search...\"/&gt;\n\n&lt;div class=\"sq-list-group sq-list-group-box-shadow sq-list-stream-settings\"&gt;\n&lt;$list filter=\"[all[shadows+tiddlers]prefix[$:/config/sq/streams]has[settings-template]] +[search:title,caption,description{$:/state/sq/streams/settings/search}] +[sortsub&lt;sortBySettingsGroupFilter&gt;]\"&gt;\n&lt;$list filter={{{[{!!condition}!is[blank]] :else[{!!title}]}}} variable=\"list-condition\"&gt;\n&lt;div class=\"sq-list-group-item\"&gt;\n&lt;$transclude tiddler={{!!settings-template}}/&gt;\n&lt;/div&gt;\n&lt;/$list&gt;\n&lt;/$list&gt;\n&lt;/div&gt;"
},
"$:/plugins/sq/streams/Settings/shortcuts": {
"title": "$:/plugins/sq/streams/Settings/shortcuts",
"caption": "Shortcuts",
"text": "\\import $:/core/ui/ControlPanel/KeyboardShortcuts\n\n&lt;table&gt;\n&lt;tbody&gt;\n&lt;$list filter=\"[all[shadows+tiddlers]prefix[$:/config/ShortcutInfo/streams-]removeprefix[$:/config/ShortcutInfo/]]\" variable=\"shortcutName\"&gt;\n&lt;&lt;shortcut-item&gt;&gt;\n&lt;/$list&gt;\n&lt;/tbody&gt;\n&lt;/table&gt;"
},
"$:/plugins/sq/streams/Settings": {
"title": "$:/plugins/sq/streams/Settings",
"tags": "$:/tags/ControlPanel",
"caption": "Streams",
"text": "&lt;&lt;tabs \"$:/plugins/sq/streams/Settings/config $:/plugins/sq/streams/Settings/shortcuts\" \"$:/plugins/sq/streams/Settings/config\" \"$:/state/streams/settings/tabs\"&gt;&gt;"
},
"$:/plugins/sq/streams/action-macros": {
"title": "$:/plugins/sq/streams/action-macros",
"text": "\\whitespace trim\n\n\\define swiped-right-actions()\n&lt;$list filter=\"[{$:/config/sq/streams/swipe-behaviour}match[contextmenu]]\" variable=\"_NULL\"&gt;\n&lt;$action-setfield $tiddler=&lt;&lt;contextmenu-state&gt;&gt; $field=\"current\" $value=&lt;&lt;dom-data-node-title&gt;&gt;/&gt;\n&lt;$action-setfield $tiddler=&lt;&lt;contextmenu-state&gt;&gt; $field=\"position\" $value={{$:/config/sq/streams/swipe-contextmenu-position}}/&gt;\n&lt;$action-popup $coords=&lt;&lt;tv-popup-coords&gt;&gt; $state=&lt;&lt;contextmenu-state&gt;&gt;/&gt;\n&lt;/$list&gt;\n&lt;$list filter=\"[{$:/config/sq/streams/swipe-behaviour}match[indent]]\" variable=\"_NULL\"&gt;\n&lt;$vars currentTiddler=&lt;&lt;dom-data-node-title&gt;&gt;&gt;\n&lt;&lt;indent-node-actions&gt;&gt;\n&lt;/$vars&gt;\n&lt;/$list&gt;\n\\end\n\n\\define swiped-left-actions()\n&lt;$list filter=\"[{$:/config/sq/streams/swipe-behaviour}match[indent]]\" variable=\"_NULL\"&gt;\n&lt;$vars currentTiddler=&lt;&lt;dom-data-node-title&gt;&gt;&gt;\n&lt;&lt;unindent-node-actions&gt;&gt;\n&lt;/$vars&gt;\n&lt;/$list&gt;\n\\end\n\n\n\\define oncontext-menu-actions()\n&lt;$action-setfield $tiddler=&lt;&lt;contextmenu-state&gt;&gt; $field=\"current\" $value=&lt;&lt;dom-data-node-title&gt;&gt;/&gt;\n&lt;$action-setfield $tiddler=&lt;&lt;contextmenu-state&gt;&gt; $field=\"position\" $value=\"left\"/&gt;\n&lt;$action-popup $coords=&lt;&lt;tv-popup-coords&gt;&gt; $state=&lt;&lt;contextmenu-state&gt;&gt;/&gt;\n\\end\n\n\n\\define node-ctrl-btn-actions()\n&lt;$list filter=\"[&lt;dom-data-btn-role&gt;match[stream-node-visibility]]\" variable=\"NULL\"&gt;\n&lt;$action-setfield $tiddler=&lt;&lt;dom-data-rowchildren-visibility-state&gt;&gt; text={{{ [&lt;dom-data-rowchildren-visibility-state&gt;get[text]match[hide]then[show]else[hide]] }}} /&gt;\n&lt;/$list&gt;\n&lt;$list filter=\"[&lt;dom-data-btn-role&gt;match[stream-node-decorator]]\" variable=\"NULL\"&gt;\n&lt;$action-navigate $to=&lt;&lt;dom-data-node-title&gt;&gt;/&gt;\n&lt;/$list&gt;\n\\end\n\n\n\\define toggle-row-edit-state()\n&lt;$action-unselect/&gt;\n&lt;$list filter=\"[&lt;row-edit-state&gt;get[text]else[]!match&lt;dom-data-node-title&gt;]\" variable=\"NULL\"&gt;\n\t&lt;$action-setfield $tiddler=&lt;&lt;row-edit-state&gt;&gt; text=&lt;&lt;dom-data-node-title&gt;&gt; /&gt;\n&lt;!--\t&lt;$action-setfield $tiddler=&lt;&lt;dom-data-node-title&gt;&gt; throttle.refresh=\"yes\"/&gt;--&gt;\n&lt;/$list&gt;\n\\end\n\n\n\\define save-edit-node-actions()\n&lt;!-- handle saving a node being edited --&gt;\n&lt;!-- XXX draft --&gt;\n&lt;!--&lt;$action-deletefield $tiddler={{{ [&lt;dom-data-node-title&gt;!is[blank]else&lt;currentTiddler&gt;] }}} $field=\"throttle.refresh\" /&gt;--&gt;\n&lt;$action-deletetiddler $tiddler=&lt;&lt;row-edit-state&gt;&gt; /&gt;\n\\end\n\n\n\\define indent-node-actions()\n&lt;!-- handle indenting a node --&gt;\n&lt;$vars previous-node={{{ [{!!parent}get[stream-list]enlist-input[]is[tiddler]before&lt;currentTiddler&gt;] }}}&gt;\n&lt;$list filter=\"[&lt;previous-node&gt;minlength[1]]\" variable=\"_NULL\"&gt;\n\t&lt;$action-listops $tiddler=&lt;&lt;previous-node&gt;&gt; $field=\"stream-list\" $subfilter=\"+[is[tiddler]] [&lt;currentTiddler&gt;]\"/&gt;\n\t&lt;$action-listops $tiddler={{!!parent}} $field=\"stream-list\" $subfilter=\"+[is[tiddler]] -[&lt;currentTiddler&gt;]\"/&gt;\n\t&lt;$action-setfield $tiddler=&lt;&lt;currentTiddler&gt;&gt; parent=&lt;&lt;previous-node&gt;&gt; /&gt;\n&lt;/$list&gt;\n&lt;/$vars&gt;\n\\end\n\n\n\\define unindent-node-actions()\n&lt;!-- handle unindenting a node --&gt;\n&lt;$vars new-parent={{{ [{!!parent}get[parent]] }}} new-next-node={{{ [{!!parent}get[parent]get[stream-list]enlist-input[]is[tiddler]after{!!parent}] }}}&gt;\n &lt;$list filter=\"[&lt;new-parent&gt;minlength[1]]\" variable=\"_NULL\"&gt;\n &lt;$action-listops $tiddler=&lt;&lt;new-parent&gt;&gt; $field=\"stream-list\" $subfilter=\"+[is[tiddler]] +[insertbefore:new-next-node&lt;currentTiddler&gt;]\"/&gt;\n &lt;$action-listops $tiddler={{!!parent}} $field=\"stream-list\" $subfilter=\"+[is[tiddler]
},
"$:/plugins/sq/streams/icons/node-expand-arrow": {
"title": "$:/plugins/sq/streams/icons/node-expand-arrow",
"created": "20200526035137040",
"modified": "20200526100520031",
"type": "text/vnd.tiddlywiki",
"text": "&lt;svg width=\"20\" height=\"20\" viewBox=\"0 0 20 20\"&gt;&lt;path d=\"M13.75 9.56879C14.0833 9.76124 14.0833 10.2424 13.75 10.4348L8.5 13.4659C8.16667 13.6584 7.75 13.4178 7.75 13.0329L7.75 6.97072C7.75 6.58582 8.16667 6.34525 8.5 6.5377L13.75 9.56879Z\"&gt;&lt;/path&gt;&lt;/svg&gt;"
},
"$:/config/ShortcutInfo/streams-cancel-edit": {
"title": "$:/config/ShortcutInfo/streams-cancel-edit",
"text": "Cancel and exit editing"
},
"$:/config/ShortcutInfo/streams-delete": {
"title": "$:/config/ShortcutInfo/streams-delete",
"text": "Delete node"
},
"$:/config/ShortcutInfo/streams-demote": {
"title": "$:/config/ShortcutInfo/streams-demote",
"text": "Demote node"
},
"$:/config/ShortcutInfo/streams-focus-higher": {
"title": "$:/config/ShortcutInfo/streams-focus-higher",
"text": "Move focus to higher node"
},
"$:/config/ShortcutInfo/streams-focus-lower": {
"title": "$:/config/ShortcutInfo/streams-focus-lower",
"text": "Move focus to lower node"
},
"$:/config/ShortcutInfo/streams-indent": {
"title": "$:/config/ShortcutInfo/streams-indent",
"text": "Indent node"
},
"$:/config/ShortcutInfo/streams-merge-with-previous": {
"title": "$:/config/ShortcutInfo/streams-merge-with-previous",
"text": "Merge with previous node, if caret is at start of a node"
},
"$:/config/ShortcutInfo/streams-promote": {
"title": "$:/config/ShortcutInfo/streams-promote",
"text": "Promote node"
},
"$:/config/ShortcutInfo/streams-rename": {
"title": "$:/config/ShortcutInfo/streams-rename",
"text": "Rename node"
},
"$:/config/ShortcutInfo/streams-save-and-continue": {
"title": "$:/config/ShortcutInfo/streams-save-and-continue",
"text": "Save and create next node"
},
"$:/config/ShortcutInfo/streams-save-and-exit": {
"title": "$:/config/ShortcutInfo/streams-save-and-exit",
"text": "Save and exit editing"
},
"$:/config/ShortcutInfo/streams-save-multiple": {
"title": "$:/config/ShortcutInfo/streams-save-multiple",
"text": "Split and save as multiple nodes"
},
"$:/config/ShortcutInfo/streams-unindent": {
"title": "$:/config/ShortcutInfo/streams-unindent",
"text": "Unindent node"
},
"$:/config/sq/streams/dnd-modifier-copy-node": {
"title": "$:/config/sq/streams/dnd-modifier-copy-node",
"description": "Modifier key for drag and drop to create a copy of a node.",
"settings-template": "$:/plugins/sq/streams/ui/templates/settings/select",
"option-names": "ctrl alt shift meta",
"option-values": "ctrl alt shift meta",
"caption": "Modifier key to copy a node when dragging.",
"text": "ctrl"
},
"$:/config/sq/streams/dnd-modifier-transclude-node": {
"title": "$:/config/sq/streams/dnd-modifier-transclude-node",
"description": "Modifier key for drag and drop to create a transclusion of a node.",
"settings-template": "$:/plugins/sq/streams/ui/templates/settings/select",
"option-names": "ctrl alt shift meta",
"option-values": "ctrl alt shift meta",
"caption": "Modifier key to transclude a node when dragging.",
"text": "shift"
},
"$:/config/sq/streams/editor-engine": {
"title": "$:/config/sq/streams/editor-engine",
"description": "Editor to use for Streams",
"caption": "Editor to use for Streams",
"settings-template": "$:/plugins/sq/streams/ui/templates/settings/select",
"option-names": "[[Default]] [[CodeMirror]]",
"option-values": "text codemirror",
"condition": "[[widget]modules[]prefix[$:/plugins/tiddlywiki/codemirror/edit-codemirror.js]]",
"text": "text"
},
"$:/config/sq/streams/enable-breadcrumbs": {
"title": "$:/config/sq/streams/enable-breadcrumbs",
"description": "Enable breadcrumbs in nodes",
"caption": "Show breadcrumbs",
"settings-template": "$:/plugins/sq/streams/ui/templates/settings/input-switch",
"text": "yes"
},
"$:/config/sq/streams/enable-edit-toolbar": {
"title": "$:/config/sq/streams/enable-edit-toolbar",
"description": "Enable toolbar in editor",
"caption": "Show toolbar in editor",
"settings-template": "$:/plugins/sq/streams/ui/templates/settings/input-switch",
"text": "no"
},
"$:/config/sq/streams/exit-on-saving-empty-node": {
"title": "$:/config/sq/streams/exit-on-saving-empty-node",
"description": "Enable to exit edit mode on saving an empty node",
"caption": "Exit editing on saving an empty node",
"settings-template": "$:/plugins/sq/streams/ui/templates/settings/input-switch",
"text": "no"
},
"$:/config/sq/streams/new-node-tiddler-template": {
"title": "$:/config/sq/streams/new-node-tiddler-template",
"description": "T iddler to use as a template for new nodes",
"caption": "Tiddler to use as new node template",
"settings-template": "$:/plugins/sq/streams/ui/templates/settings/input"
},
"$:/config/sq/streams/new-node-title": {
"title": "$:/config/sq/streams/new-node-title",
"description": "Wikitext that is wikified to generate the title for new nodes",
"caption": "Template wikified for node title",
"settings-template": "$:/plugins/sq/streams/ui/templates/settings/input",
"text": "&lt;&lt;stream-root-title&gt;&gt;/&lt;&lt;now \"[UTC]YYYY0MM0DD0hh0mm0ssXXX\"&gt;&gt;"
},
"$:/config/sq/streams/node-max-width": {
"title": "$:/config/sq/streams/node-max-width",
"description": "Maximum displayed width of a Stream node",
"caption": "Maximum node width",
"settings-template": "$:/plugins/sq/streams/ui/templates/settings/input",
"text": "550"
},
"$:/config/sq/streams/node-split-regexp": {
"title": "$:/config/sq/streams/node-split-regexp",
"description": "Regular expression that is used to split longform text into multiple tiddlers",
"caption": "Regular expression used to split text",
"settings-template": "$:/plugins/sq/streams/ui/templates/settings/input",
"text": "\\n\\n"
},
"$:/config/sq/streams/prompt-merge-with-previous": {
"title": "$:/config/sq/streams/prompt-merge-with-previous",
"description": "Enable to be prompted before merging a node with the previous node",
"caption": "Prompt before merging with previous",
"settings-template": "$:/plugins/sq/streams/ui/templates/settings/input-switch",
"text": "yes"
},
"$:/config/sq/streams/prompt-split-to-multiple": {
"title": "$:/config/sq/streams/prompt-split-to-multiple",
"description": "Enable to be prompted before splitting a node to multiple nodes",
"caption": "Prompt before creating multiple nodes",
"settings-template": "$:/plugins/sq/streams/ui/templates/settings/input-switch",
"text": "yes"
},
"$:/config/shortcuts/streams-cancel-edit": {
"title": "$:/config/shortcuts/streams-cancel-edit",
"created": "20200914162547334",
"modified": "20200914162547341",
"type": "text/vnd.tiddlywiki",
"text": "Escape"
},
"$:/config/shortcuts/streams-delete": {
"title": "$:/config/shortcuts/streams-delete",
"created": "20200914163552494",
"modified": "20200914163552502",
"type": "text/vnd.tiddlywiki",
"text": "ctrl-Delete"
},
"$:/config/shortcuts/streams-demote": {
"title": "$:/config/shortcuts/streams-demote",
"created": "20200914163104446",
"modified": "20200914163104456",
"type": "text/vnd.tiddlywiki",
"text": "alt-Down"
},
"$:/config/shortcuts/streams-focus-higher": {
"title": "$:/config/shortcuts/streams-focus-higher",
"created": "20200914163342651",
"modified": "20200914163342659",
"type": "text/vnd.tiddlywiki",
"text": "ctrl-Up"
},
"$:/config/shortcuts/streams-focus-lower": {
"title": "$:/config/shortcuts/streams-focus-lower",
"created": "20200914163347755",
"modified": "20200914163347764",
"type": "text/vnd.tiddlywiki",
"text": "ctrl-Down"
},
"$:/config/shortcuts/streams-indent": {
"title": "$:/config/shortcuts/streams-indent",
"created": "20200914162901728",
"modified": "20200914162901735",
"type": "text/vnd.tiddlywiki",
"text": "Tab"
},
"$:/config/shortcuts/streams-merge-with-previous": {
"title": "$:/config/shortcuts/streams-merge-with-previous",
"created": "20200914164323982",
"modified": "20200914164323991",
"type": "text/vnd.tiddlywiki",
"text": "Backspace"
},
"$:/config/shortcuts/streams-promote": {
"title": "$:/config/shortcuts/streams-promote",
"created": "20200914163110776",
"modified": "20200914163110785",
"type": "text/vnd.tiddlywiki",
"text": "alt-Up"
},
"$:/config/shortcuts/streams-rename": {
"title": "$:/config/shortcuts/streams-rename",
"created": "20200914163600676",
"modified": "20200914163600683",
"type": "text/vnd.tiddlywiki",
"text": "alt-R"
},
"$:/config/shortcuts/streams-save-and-continue": {
"title": "$:/config/shortcuts/streams-save-and-continue",
"created": "20200914164329638",
"modified": "20200914164329647",
"type": "text/vnd.tiddlywiki",
"text": "Enter"
},
"$:/config/shortcuts/streams-save-and-exit": {
"title": "$:/config/shortcuts/streams-save-and-exit",
"created": "20200914163850209",
"modified": "20200914163850217",
"type": "text/vnd.tiddlywiki",
"text": "ctrl-Enter"
},
"$:/config/shortcuts/streams-save-multiple": {
"title": "$:/config/shortcuts/streams-save-multiple",
"created": "20200914163843685",
"modified": "20200914163843694",
"type": "text/vnd.tiddlywiki",
"text": "alt-Enter"
},
"$:/config/shortcuts/streams-unindent": {
"title": "$:/config/shortcuts/streams-unindent",
"created": "20200914162907631",
"modified": "20200914162907639",
"type": "text/vnd.tiddlywiki",
"text": "shift-Tab"
},
"$:/config/sq/streams/split-at-caret": {
"title": "$:/config/sq/streams/split-at-caret",
"description": "Enable to split text at caret position on saving a node",
"caption": "Split text at caret position",
"settings-template": "$:/plugins/sq/streams/ui/templates/settings/input-switch",
"text": "yes"
},
"$:/config/sq/streams/stream-enable-filter": {
"title": "$:/config/sq/streams/stream-enable-filter",
"description": "Filter that determines which tiddlers get the add node button at the bottom",
"caption": "Filter to enable Streams",
"settings-template": "$:/plugins/sq/streams/ui/templates/settings/input",
"text": "[!is[shadow]]"
},
"$:/config/sq/streams/swipe-behaviour": {
"title": "$:/config/sq/streams/swipe-behaviour",
"description": "Choose whether swipe should show a contextmenu, or be used to indent/unindent nodes.",
"caption": "Swipe behaviour",
"settings-template": "$:/plugins/sq/streams/ui/templates/settings/select",
"option-names": "[[Show ContextMenu]] [[Indent / Un-indent]]",
"option-values": "contextmenu indent",
"condition": "[[$:/config/sq/streams/swipe-behaviour-animated]!is[missing]]",
"text": "contextmenu"
},
"$:/config/sq/streams/swipe-contextmenu-position": {
"title": "$:/config/sq/streams/swipe-contextmenu-position",
"description": "Position of context menu shown on swiping.",
"caption": "Position of context menu shown on swiping.",
"settings-template": "$:/plugins/sq/streams/ui/templates/settings/select",
"settings-group": "swipe",
"option-names": "[[Right]] [[Left]]",
"option-values": "right left",
"condition": "[[$:/config/sq/streams/swipe-enabled]get[text]match[yes]]",
"text": "right"
},
"$:/config/sq/streams/swipe-enabled": {
"title": "$:/config/sq/streams/swipe-enabled",
"description": "Enable swipe to show context menu on touch devices.",
"caption": "Enable swipe to show context menu on nodes.",
"settings-template": "$:/plugins/sq/streams/ui/templates/settings/input-switch",
"settings-group": "swipe",
"settings-group-header": "0",
"text": "yes"
},
"$:/config/sq/streams/swipe-threshold": {
"title": "$:/config/sq/streams/swipe-threshold",
"description": "Distance in pixels that triggers a swipe, defaults to 100",
"caption": "Swipe threshold in pixels",
"settings-template": "$:/plugins/sq/streams/ui/templates/settings/input",
"settings-group": "swipe",
"condition": "[[$:/config/sq/streams/swipe-enabled]get[text]match[yes]]",
"text": "70"
},
"$:/plugins/sq/streams/contextmenu/contextmenu-styles": {
"title": "$:/plugins/sq/streams/contextmenu/contextmenu-styles",
"text": ".sq-contextmenu {\n\tpadding: 12px 0;\n\tbox-shadow: rgba(0, 0, 0, 0.40) 0px 2px 20px;\n\tfont-family: \"Segoe UI\", Roboto, Helvetica, Arial;\n\tfont-size: 13px;\n\tmargin-top: 4px;\n\tmin-width: 100px;\n\tmax-width: 240px;\n\tleft: -16px;\n\tdisplay: flex;\n\tflex-direction: column;\n\tborder-radius: 6px;\n\tborder: 1px solid #dce0e2;\n\ttransition: opacity 200ms ease 0s, transform 200ms ease 0s;\n\tmargin-top: 30px;\n}\n\n.sq-contextmenu-alignright {\n\ttransform: translate3d(-100%,0,0);\n}\n\n.sq-contextmenu .tc-menu-list-item {\n\tpadding: 0 18px;\n\tline-height: 24px;\n\twhite-space: nowrap;\n\tcolor: #4b5155;\n\tcursor: default !important;\n\ttext-indent: 0;\n}\n\n.sq-contextmenu-itemwrapper {\n\tdisplay: flex;\n\tjustify-content: space-between;\n\talign-items: center;\n\tposition: relative;\t\n}\n\n.sq-contextmenu-itemtext {\n\tdisplay: flex;\n\twhite-space: nowrap;\n\ttext-overflow: ellipsis;\n\tflex-grow: 1;\n\toverflow: hidden;\t\n}\n\n.sq-contextmenu-itemicon {\n\tcolor: #b7bcbf;\n\tmargin-left: 16px;\n\tmin-width: 22px;\t\n}\n\n.sq-contextmenu-divider {\n\tborder-top-width: 1px;\n\tborder-top-color: #eceef0;\n\tborder-top-style: solid;\n\tmargin: 6px 0;\n}",
"created": "20200602120854810",
"modified": "20200603055942655",
"tags": "$:/tags/Stylesheet",
"type": "text/css"
},
"$:/plugins/sq/streams/contextmenu/contextmenu-template": {
"title": "$:/plugins/sq/streams/contextmenu/contextmenu-template",
"created": "20200602163018613",
"modified": "20200603055942658",
"tags": "",
"type": "text/vnd.tiddlywiki",
"text": "\\define menu-item(title,subtitle:\"\",actions:\"\")\n\t\t&lt;$button class=\"tc-menu-list-item tc-btn-invisible\" actions=&lt;&lt;__actions__&gt;&gt; &gt;\n\t\t\t&lt;span class=\"sq-contextmenu-itemwrapper\"&gt;\n\t\t\t\t&lt;span class=\"sq-contextmenu-itemtext\"&gt;$title$&lt;/span&gt;\n\t\t\t\t&lt;span class=\"sq-contextmenu-itemicon\"&gt;&lt;$macrocall $name=\"displayshortcuts\" $output=\"text/plain\" shortcuts=\"$subtitle$\" prefix=\"\" separator=\" \" suffix=\"\"/&gt;&lt;/span&gt;\n\t\t\t&lt;/span&gt;\n\t\t&lt;/$button&gt;\n\\end\n\n\\define menu-divider() &lt;div class=\"sq-contextmenu-divider\"/&gt;\n\n&lt;$reveal type=\"popup\" state=&lt;&lt;contextmenu-state&gt;&gt; position={{{[&lt;contextmenu-state&gt;get[position]]}}} tag=\"div\"&gt;\n\t&lt;div class={{{tc-drop-down sq-contextmenu [&lt;contextmenu-state&gt;get[position]match[right]then[sq-contextmenu-alignright]else[]] +[join[ ]]}}}&gt;\n\t\t&lt;$macrocall $name=\"menu-item\" title=\"Open\" actions=\"\"\"&lt;$action-navigate/&gt;\"\"\"/&gt;\n\t\t&lt;$macrocall $name=\"menu-item\" title=\"Rename\" subtitle=\"((streams-rename))\" actions=&lt;&lt;rename-node-actions&gt;&gt;/&gt;\n\t\t&lt;$macrocall $name=\"menu-item\" title=\"Delete\" subtitle=\"((streams-delete))\" actions=&lt;&lt;delete-node-actions&gt;&gt;/&gt;\n\t\t&lt;$list filter=\"[all[shadows+tiddlers]tag[$:/tags/streams/contextmenu]]\" variable=\"listItem\"&gt;\n\t\t\t&lt;$macrocall $name=\"menu-item\"\n\t\t\t\ttitle={{{[&lt;listItem&gt;get[sq-contextmenu-name]]}}} \n\t\t\t\tsubtitle={{{[&lt;listItem&gt;get[key]] [&lt;listItem&gt;get[sq-contextmenu-subtitle]] +[first[]]}}} \n\t\t\t\tactions={{{[&lt;listItem&gt;get[text]]}}} /&gt;\n\t\t&lt;/$list&gt;\n\t\t&lt;&lt;menu-divider&gt;&gt;\n\t\t&lt;$macrocall $name=\"menu-item\" title=\"Keyboard Shortcuts (?)\" actions=\"\"\"&lt;$action-navigate $to=\"$:/plugins/sq/streams/info/keyboard-shortcuts\"/&gt;\"\"\"/&gt;\n\t&lt;/div&gt;\n&lt;/$reveal&gt;"
},
"$:/plugins/sq/streams/codemirror-tweak": {
"title": "$:/plugins/sq/streams/codemirror-tweak",
"text": "/*\\\n\ntitle: $:/plugins/sq/streams/codemirror-tweak\ntype: application/javascript\nmodule-type: startup\n\n\\*/\n\nexports.platforms = [\"browser\"];\nexports.synchronous = true;\n\nexports.startup = function() {\n\n\tif($tw.wiki.getTiddler(\"$:/plugins/tiddlywiki/codemirror\") &amp;&amp; ($tw.wiki.getTiddlerText(\"$:/config/Plugins/Disabled/$:/plugins/tiddlywiki/codemirror\",\"no\") === \"no\")) {\n\t\tvar CMEngine = require(\"$:/plugins/tiddlywiki/codemirror/engine.js\").CodeMirrorEngine;\n\t\tCMEngine.prototype.focus = function() {\n\t\t\tthis.cm.focus();\n\t\t\tvar caretPosition = this.widget.getAttribute(\"caretPosition\",\"end\");\t\n\t\t\tvar index = (caretPosition === \"end\") ? this.cm.getValue().length : parseInt(caretPosition);\n\t\t\tthis.cm.doc.setSelection(this.cm.doc.posFromIndex(index));\n\t\t}\n\t}\n\n}",
"type": "application/javascript",
"module-type": "startup"
},
"$:/plugins/sq/streams/draggable-tweaks.js": {
"title": "$:/plugins/sq/streams/draggable-tweaks.js",
"text": "/*\\\ntitle: $:/plugins/sq/streams/draggable-tweaks.js\ntype: application/javascript\nmodule-type: widget-subclass\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.baseClass = \"draggable\";\n\nexports.constructor = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\nexports.prototype = {};\n\nexports.prototype.render = function(parent,nextSibling) {\n\t// Call the base class handleChangeEvent function\n\tObject.getPrototypeOf(Object.getPrototypeOf(this)).render.call(this,parent,nextSibling);\n\tvar self = this;\n\t$tw.utils.each(this.attributes,function(v,a) {\n\t\tif(a.substring(0,10) === \"data-node-\") {\n\t\t\ttry {\n\t\t\t\tself.domNodes[0].setAttributeNS(null,a,v);\n\t\t\t} catch(e){\n\t\t\t\t\n\t\t\t}\n\t\t}\n\t});\n};\n\n})();",
"type": "application/javascript",
"module-type": "widget-subclass"
},
"$:/plugins/sq/streams/droppable-tweaks.js": {
"title": "$:/plugins/sq/streams/droppable-tweaks.js",
"text": "/*\\\ntitle: $:/plugins/sq/streams/droppable-tweaks.js\ntype: application/javascript\nmodule-type: widget-subclass\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.baseClass = \"droppable\";\n\nexports.constructor = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\nexports.prototype = {};\n\nexports.prototype.render = function(parent,nextSibling) {\n\t// Call the base class handleChangeEvent function\n\tObject.getPrototypeOf(Object.getPrototypeOf(this)).render.call(this,parent,nextSibling);\n\tvar self = this;\n\t$tw.utils.each(this.attributes,function(v,a) {\n\t\tif(a.substring(0,10) === \"data-node-\") {\n\t\t\ttry {\n\t\t\t\tself.domNode.setAttributeNS(null,a,v);\n\t\t\t} catch(e){\n\t\t\t\t\n\t\t\t}\n\t\t}\n\t});\n};\n\n})();",
"type": "application/javascript",
"module-type": "widget-subclass"
},
"$:/plugins/sq/streams/framed-engine-tweak": {
"title": "$:/plugins/sq/streams/framed-engine-tweak",
"text": "/*\\\n\ntitle: $:/plugins/sq/streams/framed-engine-tweak\ntype: application/javascript\nmodule-type: startup\n\n\\*/\n\nvar FramedEngine = require(\"$:/core/modules/editor/engines/framed.js\").FramedEngine;\n\nFramedEngine.prototype.focus = function() {\n\tif(this.domNode.focus &amp;&amp; this.domNode.select) {\n\t\tthis.domNode.focus();\n\t\tif(this.widget.getAttribute(\"select\")===\"false\") {\n\t\t\tvar caretPosition = this.widget.getAttribute(\"caretPosition\",\"end\");\n\t\t\tcaretPosition = (caretPosition === \"end\") ? this.domNode.value.length : parseInt(caretPosition);\n\t\t\tthis.domNode.setSelectionRange(caretPosition,caretPosition);\n\t\t} else {\n\t\t\tthis.domNode.select();\n\t\t}\n\t}\n\t/*\n\tif(!this.setupDblClick) {\n\t\tthis.domNode.addEventListener(\"dblclick\",this.propagateDblClick.bind(this));\n\t\tthis.setupDblClick = true;\n\t}\n\t*/\n}\n\n/*\nFramedEngine.prototype.propagateDblClick = function(event) {\n\tif(this.widget.wiki.getTiddlerText(\"$:/config/sq/streams/dblclick-editor-to-exit\") === \"yes\") {\n\t\tvar newEvent = this.widget.document.createEventObject ? this.widget.document.createEventObject() : this.widget.document.createEvent(\"Events\");\n\t\tif(newEvent.initEvent) {\n\t\t\tnewEvent.initEvent(\"dblclick\", true, true);\n\t\t}\n\t\tnewEvent.keyCode = event.keyCode;\n\t\tnewEvent.which = event.which;\n\t\tnewEvent.metaKey = event.metaKey;\n\t\tnewEvent.ctrlKey = event.ctrlKey;\n\t\tnewEvent.altKey = event.altKey;\n\t\tnewEvent.shiftKey = event.shiftKey;\n\t\treturn !this.widget.parentDomNode.dispatchEvent(newEvent);\n\t}\n\treturn false;\n}\n*/",
"type": "application/javascript",
"module-type": "startup"
},
"$:/plugins/sq/streams/simple-engine-tweak": {
"title": "$:/plugins/sq/streams/simple-engine-tweak",
"text": "/*\\\n\ntitle: $:/plugins/sq/streams/simple-engine-tweak\ntype: application/javascript\nmodule-type: startup\n\n\\*/\n\nvar SimpleEngine = require(\"$:/core/modules/editor/engines/simple.js\").SimpleEngine;\n\nSimpleEngine.prototype.focus = function() {\n\tif(this.domNode.focus &amp;&amp; this.domNode.select) {\n\t\tthis.domNode.focus();\n\t\tif(this.widget.getAttribute(\"select\")===\"false\") {\n\t\t\tvar caretPosition = this.widget.getAttribute(\"caretPosition\",\"end\");\n\t\t\tcaretPosition = (caretPosition === \"end\") ? this.domNode.value.length : parseInt(caretPosition);\n\t\t\tthis.domNode.setSelectionRange(caretPosition,caretPosition);\n\t\t} else {\n\t\t\tthis.domNode.select();\n\t\t}\n\t}\n}",
"type": "application/javascript",
"module-type": "startup"
},
"$:/plugins/sq/streams/delete-hook/actions": {
"title": "$:/plugins/sq/streams/delete-hook/actions",
"created": "20200527200401408",
"modified": "20200527234136578",
"tags": "$:/tags/deleteTiddlerAction",
"type": "text/vnd.tiddlywiki",
"text": "\\define delete-children()\n\t&lt;$list filter=\"[enlist{!!stream-list}]\"&gt;\n\t\t&lt;&lt;delete-children&gt;&gt;\n\t&lt;/$list&gt;\n\t&lt;&lt;$action-deletetiddler $filter=\"[enlist{!!stream-list}]\"/&gt;\n\\end\n\n&lt;$list filter=\"[&lt;currentTiddler&gt;has[stream-type]]\"&gt;\n\t&lt;$list filter=\"[&lt;currentTiddler&gt;has[parent]]\"&gt;\n\t\t&lt;$action-listops $tiddler={{!!parent}} $field=\"stream-list\" $subfilter=\"-[&lt;currentTiddler&gt;]\" /&gt;\n\t&lt;/$list&gt;\n\t&lt;$list variable=\"count\" filter=\"[enlist{!!stream-list}count[]!match[0]]\"&gt;\n\t\t&lt;$action-confirm $message=\"Do you wish to delete all tiddlers descended from this tiddler?\"&gt;\n\t\t\t&lt;&lt;delete-children&gt;&gt;\n\t\t&lt;/$action-confirm&gt;\n\t&lt;/$list&gt;\n&lt;/$list&gt;"
},
"$:/plugins/sq/streams/delete-hook/hook": {
"title": "$:/plugins/sq/streams/delete-hook/hook",
"text": "/*\\\ntitle: $:/plugins/sq/streams/delete-hook/hook\ntype: application/javascript\nmodule-type: startup\n\n\\*/\n\n$tw.hooks.addHook(\"th-deleting-tiddler\",function(tiddler) {\n\tif(tiddler.fields[\"draft.of\"]) {\n\t\treturn;\n\t}\n\t\n\t$tw.rootWidget.invokeActionsByTag(\"$:/tags/deleteTiddlerAction\",null,{currentTiddler : tiddler.fields.title});\n});",
"type": "application/javascript",
"module-type": "startup"
},
"$:/plugins/sq/streams/filters/get-stream-nodes.js": {
"title": "$:/plugins/sq/streams/filters/get-stream-nodes.js",
"text": "/*\\\ntitle: $:/plugins/sq/streams/filters/get-stream-nodes.js\ntype: application/javascript\nmodule-type: filteroperator\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports[\"get-stream-nodes\"] = function(source,operator,options) {\n\tvar results = [],\n suffixes = (operator.suffixes || []),\n\t\tmatchTitles = (suffixes[0] || []).indexOf(\"matchtitles\") !== -1;\n\n\tsource(function(tiddler,title) {\n\t\t\n\t\tvar processNode = function(node,nodeTitle) {\n\t\t\tif(node &amp;&amp; node.fields[\"stream-list\"] &amp;&amp; node.fields[\"stream-type\"]) {\n\t\t\t\tresults.push(nodeTitle);\n\t\t\t\tvar streamList = $tw.utils.parseStringArray(node.fields[\"stream-list\"]);\n\t\t\t\t$tw.utils.each(streamList,function(streamListNodeTitle) {\n\t\t\t\t\tvar streamListNode = options.wiki.getTiddler(streamListNodeTitle);\n\t\t\t\t\tif(streamListNode) {\n\t\t\t\t\t\tprocessNode(streamListNode,streamListNodeTitle);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tresults.push(nodeTitle);\n\t\t\t}\n\t\t}\n\t\tif(tiddler) {\n\t\t\tprocessNode(tiddler,title);\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/plugins/sq/streams/filters/get-stream-root.js": {
"title": "$:/plugins/sq/streams/filters/get-stream-root.js",
"text": "/*\\\ntitle: $:/plugins/sq/streams/filters/get-stream-root.js\ntype: application/javascript\nmodule-type: filteroperator\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n\n//\t[[xyz]get-stream-root[]]\n//\t[[xyz]get-stream-root:matchtitles[]]\n//\t[[xyz]get-stream-root:includeall,matchtitles[]]\n\n*/\nexports[\"get-stream-root\"] = function(source,operator,options) {\n\tvar results = [],\n suffixes = (operator.suffixes || []),\n\t\tincludeAll = (suffixes[0] || []).indexOf(\"includeall\") !== -1,\n\t\tmatchTitles = (suffixes[0] || []).indexOf(\"matchtitles\") !== -1;\n\n\tsource(function(tiddler,title) {\n\t\tvar ancestors = [];\n\t\tif(tiddler &amp;&amp; tiddler.fields[\"parent\"] &amp;&amp; tiddler.fields[\"stream-type\"]) {\n\t\t\tvar parentTiddler = tiddler;\n\t\t\twhile(parentTiddler) {\n\t\t\t\t\tif(tiddler.fields.title.startsWith(parentTiddler.fields[\"title\"].split(\"/\")[0]) || !matchTitles ) {\n\t\t\t\t\t\tancestors.unshift(parentTiddler.fields.title);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\tif(parentTiddler.fields.parent) {\t\n\t\t\t\t\tparentTiddler = options.wiki.getTiddler(parentTiddler.fields.parent);\n\t\t\t\t} else {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tancestors.unshift(title);\n\t\t}\n\t\tif(!includeAll) {\n\t\t\tancestors.splice(1);\n\t\t}\n\t\t$tw.utils.pushTop(results,ancestors);\n\t});\n\treturn results;\n};\n\n})();\n\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/plugins/sq/streams/info/keyboard-shortcuts": {
"title": "$:/plugins/sq/streams/info/keyboard-shortcuts",
"text": "!! Streams keyboard shortcuts\n\n&lt;table&gt;\n&lt;tbody&gt;\n&lt;$list filter=\"[all[shadows+tiddlers]prefix[$:/config/ShortcutInfo/streams-]]\"&gt;\n&lt;tr&gt;\n&lt;td&gt;{{!!text}}&lt;/td&gt;\n&lt;td&gt;&lt;$macrocall $name=\"displayshortcuts\" $output=\"text/plain\" shortcuts={{{[&lt;currentTiddler&gt;removeprefix[$:/config/ShortcutInfo/]addprefix[((]addsuffix[))]]}}} prefix=\"\" separator=\" \" suffix=\"\"/&gt;&lt;/td&gt;\n&lt;/tr&gt;\n&lt;/$list&gt;\n&lt;/tbody&gt;\n&lt;/table&gt;\n\nShortcuts can be customized in the [[Control Panel|$:/core/ui/ControlPanel/KeyboardShortcuts]]\n\n''Drag and drop''\n\n* hold &lt;kbd&gt;control&lt;/kbd&gt; key to drag and drop and create a copy of the node in another stream tiddler\n* hold &lt;kbd&gt;shift&lt;/kbd&gt; key to drag and drop and create a node that transcludes the contents of this node, in another stream tiddler\n\n''for the moment it is a design decision to disallow copying/transcluding the node inside the same root (story) tiddler''\n\n//Note that it is a known limitation that copying a node or transcluding it does not apply to the children of the node. This is on the [[list of things to implement|Roadmap]].//"
},
"$:/plugins/sq/streams/keyboard-shortcuts/cancel-edit-node": {
"title": "$:/plugins/sq/streams/keyboard-shortcuts/cancel-edit-node",
"tags": "$:/tags/streams/keyboard-shortcuts",
"key": "((streams-cancel-edit))",
"text": "&lt;&lt;cancel-edit-node-actions&gt;&gt;"
},
"$:/plugins/sq/streams/keyboard-shortcuts/delete-node": {
"title": "$:/plugins/sq/streams/keyboard-shortcuts/delete-node",
"tags": "$:/tags/streams/keyboard-shortcuts",
"key": "((streams-delete))",
"text": "&lt;&lt;delete-node-actions&gt;&gt;"
},
"$:/plugins/sq/streams/keyboard-shortcuts/demote-node": {
"title": "$:/plugins/sq/streams/keyboard-shortcuts/demote-node",
"tags": "$:/tags/streams/keyboard-shortcuts",
"key": "((streams-demote))",
"text": "&lt;&lt;demote-node-actions&gt;&gt;"
},
"$:/plugins/sq/streams/keyboard-shortcuts/focus-higher-node": {
"title": "$:/plugins/sq/streams/keyboard-shortcuts/focus-higher-node",
"tags": "$:/tags/streams/keyboard-shortcuts",
"key": "((streams-focus-higher))",
"text": "&lt;&lt;focus-higher-node-actions&gt;&gt;"
},
"$:/plugins/sq/streams/keyboard-shortcuts/focus-lower-node": {
"title": "$:/plugins/sq/streams/keyboard-shortcuts/focus-lower-node",
"tags": "$:/tags/streams/keyboard-shortcuts",
"key": "((streams-focus-lower))",
"text": "&lt;&lt;focus-lower-node-actions&gt;&gt;"
},
"$:/plugins/sq/streams/keyboard-shortcuts/indent-node": {
"title": "$:/plugins/sq/streams/keyboard-shortcuts/indent-node",
"tags": "$:/tags/streams/keyboard-shortcuts $:/tags/streams/contextmenu",
"key": "((streams-indent))",
"sq-contextmenu-name": "Indent",
"sq-contextmenu-subtitle": "",
"text": "&lt;&lt;indent-node-actions&gt;&gt;"
},
"$:/plugins/sq/streams/keyboard-shortcuts/merge-with-previous": {
"title": "$:/plugins/sq/streams/keyboard-shortcuts/merge-with-previous",
"tags": "$:/tags/streams/keyboard-shortcuts",
"key": "((streams-merge-with-previous))",
"prevent-default": "no",
"text": "&lt;&lt;merge-with-previous-node-actions&gt;&gt;"
},
"$:/plugins/sq/streams/keyboard-shortcuts/promote-node": {
"title": "$:/plugins/sq/streams/keyboard-shortcuts/promote-node",
"tags": "$:/tags/streams/keyboard-shortcuts",
"key": "((streams-promote))",
"text": "&lt;&lt;promote-node-actions&gt;&gt;"
},
"$:/plugins/sq/streams/keyboard-shortcuts/rename-node": {
"title": "$:/plugins/sq/streams/keyboard-shortcuts/rename-node",
"tags": "$:/tags/streams/keyboard-shortcuts",
"key": "((streams-rename))",
"text": "&lt;&lt;rename-node-actions&gt;&gt;"
},
"$:/plugins/sq/streams/keyboard-shortcuts/save-and-continue": {
"title": "$:/plugins/sq/streams/keyboard-shortcuts/save-and-continue",
"tags": "$:/tags/streams/keyboard-shortcuts",
"key": "((streams-save-and-continue))",
"text": "&lt;&lt;save-node-actions&gt;&gt;"
},
"$:/plugins/sq/streams/keyboard-shortcuts/save-and-exit": {
"title": "$:/plugins/sq/streams/keyboard-shortcuts/save-and-exit",
"tags": "$:/tags/streams/keyboard-shortcuts",
"key": "((streams-save-and-exit))",
"text": "&lt;&lt;save-edit-node-actions&gt;&gt;"
},
"$:/plugins/sq/streams/keyboard-shortcuts/save-multiple": {
"title": "$:/plugins/sq/streams/keyboard-shortcuts/save-multiple",
"tags": "$:/tags/streams/keyboard-shortcuts",
"key": "((streams-save-multiple))",
"text": "&lt;&lt;save-multiple-actions&gt;&gt;"
},
"$:/plugins/sq/streams/keyboard-shortcuts/unindent-node": {
"title": "$:/plugins/sq/streams/keyboard-shortcuts/unindent-node",
"tags": "$:/tags/streams/keyboard-shortcuts $:/tags/streams/contextmenu",
"key": "((streams-unindent))",
"sq-contextmenu-name": "Un-indent",
"sq-contextmenu-subtitle": "",
"text": "&lt;&lt;unindent-node-actions&gt;&gt;"
},
"$:/plugins/sq/streams/icons/new-node-btn": {
"title": "$:/plugins/sq/streams/icons/new-node-btn",
"created": "20200528160920973",
"modified": "20200528164140128",
"type": "text/vnd.tiddlywiki",
"text": "&lt;svg width=\"20\" height=\"20\" viewBox=\"0 0 20 20\"&gt;\n&lt;style&gt;\n .line{\n stroke:#868c90;\n }\n&lt;/style&gt;\n &lt;circle cx=\"10.5\" cy=\"10.5\" r=\"9\" class=\"circle\" fill=\"#fff\" &gt;&lt;/circle&gt;\n &lt;line x1=\"6\" y1=\"10.5\" x2=\"15\" y2=\"10.5\" class=\"line\"&gt;&lt;/line&gt;\n &lt;line x1=\"10.5\" y1=\"6\" x2=\"10.5\" y2=\"15\" class=\"line\"&gt;&lt;/line&gt;\n&lt;/svg&gt;"
},
"$:/plugins/sq/streams/refresh-hook.js": {
"title": "$:/plugins/sq/streams/refresh-hook.js",
"text": "/*\\\n\ntitle: $:/plugins/sq/streams/refresh-hook.js\ntype: application/javascript\nmodule-type: startup\n\\*/\n\n$tw.hooks.addHook(\"th-page-refreshed\",function handleEvent() {\n\t$tw.wiki.deleteTiddler(\"$:/state/sq/streams/caret-position\");\n});\n\n",
"type": "application/javascript",
"module-type": "startup"
},
"$:/config/flibbles/relink/fields/parent": {
"title": "$:/config/flibbles/relink/fields/parent",
"created": "20200530105147302",
"modified": "20200530105155682",
"type": "text/vnd.tiddlywiki",
"text": "title"
},
"$:/config/flibbles/relink/fields/stream-list": {
"title": "$:/config/flibbles/relink/fields/stream-list",
"created": "20200530105147302",
"modified": "20200530105155682",
"type": "text/vnd.tiddlywiki",
"text": "list"
},
"$:/plugins/sq/streams/styles": {
"title": "$:/plugins/sq/streams/styles",
"created": "20170922203553093",
"modified": "20170927050808722",
"tags": "[[$:/tags/Stylesheet]]",
"text": ".stream-root {\n\tmargin-left: -2.5em;\n}\n\n@media only screen and (max-width: 600px) {\n\t.stream-root {\n\t\tmargin-left: -1em;\n\t}\n}\n\n.stream-row {\n display: flex;\n flex: 0 0 auto;\n\tuser-select: none;\n}\n\n.stream-row-children {\n\tdisplay:flex;\n\tflex: 0 0 auto;\n\tflex-direction: column;\n\t/*padding-left: 0.5em;*/\n\tborder-left: 1px solid &lt;&lt;color message-border&gt;&gt;;\n\tmargin-left: 30px;\n}\n\n.stream-row-nochildren + .stream-row-children {\n\tborder-left: none;\n}\n\n\n.stream-node-disabled,\n.stream-node-disabled + div.stream-row-children{\n\tbackground-color: &lt;&lt;color tiddler-editor-border&gt;&gt;;\n}\n\n.stream-node-disabled + div.stream-row-children + div.stream-node-disabled,\n.stream-node-disabled + div.stream-row-children + div.stream-node-disabled + div.stream-row-children,\n.stream-node-disabled.stream-row-nochildren + div.stream-row-children,\n.stream-node-disabled.stream-row-nochildren + div.stream-row-children &gt; div.stream-node-disabled {\n\tbackground-color: transparent;\n}\n\n/* hide last droppable in a list when the last row is disabled */\n.stream-node-disabled + div.stream-row-children + div.stream-droppable.tc-droppable.stream-droppable-terminal{\n\tdisplay: none;\n\t/*visibility: hidden;*/\n}\n\n.stream-node-disabled + div.stream-row-children + .stream-node-disabled + div.stream-row-children + div.stream-droppable.tc-droppable.stream-droppable-terminal{\n\tdisplay: block;\n}\n\n\n/*\n.stream-node-disabled.stream-row-nochildren + div.stream-row-children {\n\tvisibility: hidden;\n}\n\n.stream-node-disabled.stream-row-nochildren + div.stream-row-children + div + div {\n\tvisibility: visible;\n}\n*/\n\n\n.stream-droppable.tc-droppable.tc-dragover &gt; .tc-droppable-placeholder,\n.stream-droppable.tc-droppable.tc-dragover &gt; div &gt; .tc-droppable-placeholder {\n\tmargin-left: 29px;\n\tline-height: 5px;\n\theight: 5px;\n\tborder: 2px solid &lt;&lt;color dropzone-background&gt;&gt;;\n\tbackground-color: &lt;&lt;color dropzone-background&gt;&gt;;\n}\n\n/*\n.stream-droppable-terminal.tc-drag-over .stream-droppable-spacer {\n\theight: 0;\n}\n*/\n\n.stream-droppable-spacer {\n\theight: 0.3em;\n}\n\n&lt;$vars currentTiddler={{{[prefix[$:/state/sq-context-popup]]}}}&gt;\n[data-node-title=\"{{!!current}}\"],\n[data-node-title=\"{{!!current}}\"] + div{\n\tbackground: &lt;&lt;color notification-background&gt;&gt;;\n\tcolor: &lt;&lt;color message-foreground&gt;&gt;;\n}\n&lt;/$vars&gt;\n\n.stream-node-control {\n\tdisplay: flex;\n flex: 0 0 45px;\n padding-top: 4px;\n padding-left: 4px;\n}\n\n.stream-node-control .stream-node-collapser,\n.stream-node-control .stream-node-handle {\n display: flex;\n height: 13px;\n width: 13px;\n margin-top: 4px;\n border-radius: 50%;\n justify-content: center;\n align-items: center;\n}\n\n.stream-node-control.stream-node-control-addnew .stream-node-handle {\n\twidth: 20px;\n\theight: 20px;\n\tmargin-top: 0;\n}\n\n.stream-node-control.stream-node-control-addnew .stream-node-collapser {\n\twidth: 16px;\n}\n\n.stream-node-control.stream-node-control-addnew div.tc-btn-invisible svg {\n\topacity: 0.8;\n}\n\n\n.stream-node-control.stream-node-control-addnew div.tc-btn-invisible svg circle {\n\tfill: &lt;&lt;color tiddler-controls-foreground&gt;&gt;;\n\topacity: 0.6;\n}\n\n.stream-node-control.stream-node-control-addnew div.tc-btn-invisible svg line.line {\n\tstroke: &lt;&lt;color foreground&gt;&gt;;\n\topacity: 1;\n}\n\n.stream-node-control.stream-node-control-addnew div.tc-btn-invisible:hover svg circle {\n\tfill: &lt;&lt;color tiddler-controls-foreground-hover&gt;&gt;;\n}\n\n.stream-node-control .stream-node-collapser {\n\theight: 13px;\n\twidth: 20px;\n\topacity:0;\n}\n\n.stream-row-nochildren .stream-node-collapser {\n\tvisibility: hidden;\n}\n\n.stream-row:hover .stream-node-collapser,\n.stream-row-children-collapsed.stream-row:hover .stream-node-collapser {\n\topacity: 0.4;\n}\n\n.stream-row:hover .stream-node-collapser:hover,\n.stream-row-children-collapsed.stream-row:hover .stream-node-c
},
"$:/plugins/sq/streams/breadcrumbs-view-template": {
"title": "$:/plugins/sq/streams/breadcrumbs-view-template",
"created": "20200529205858594",
"list-before": "$:/core/ui/ViewTemplate/body",
"modified": "20200530055142652",
"tags": "$:/tags/ViewTemplate",
"type": "text/vnd.tiddlywiki",
"text": "\\whitespace trim\n\\define stream-show-breadcrumbs()\n&lt;$list filter=\"[&lt;currentTiddler&gt;has[stream-type]]\"&gt;\n\t&lt;$list filter=\"[&lt;currentTiddler&gt;has[parent]]\"&gt;\n\t\t&lt;$set name=\"currentTiddler\" filter=\"[{!!parent}]\" select=\"0\"&gt;\n\t\t\t&lt;&lt;stream-show-breadcrumbs&gt;&gt;\n\t\t&lt;/$set&gt;\n\t&lt;/$list&gt;\t\n\t&lt;$list filter=\"[&lt;currentTiddler&gt;!match&lt;storyTiddler&gt;]\"&gt;\n\t\t&lt;$wikify name=\"display-title\" text={{{ [&lt;currentTiddler&gt;get[text]!is[blank]] ~[{!!title}] }}}&gt;\n\t\t\t&lt;span class=\"sq-breadcrumbs-fragment\"&gt;\n\t\t\t&lt;$link to=&lt;&lt;currentTiddler&gt;&gt;&gt;\n\t\t\t\t&lt;$text text={{{ [&lt;display-title&gt;split[]first[50]join[]] }}}/&gt;\n\t\t\t&lt;/$link&gt;&gt;\n\t\t\t&lt;/span&gt;\n\t\t&lt;/$wikify&gt;\n\t&lt;/$list&gt;\n&lt;/$list&gt;\n\\end\n&lt;$list filter=\"[{$:/config/sq/streams/enable-breadcrumbs}match[yes]]\" variable=\"_NULL\"&gt;\n&lt;&lt;stream-show-breadcrumbs&gt;&gt;\n&lt;/$list&gt;\n\n"
},
"$:/plugins/sq/streams/editor-template": {
"title": "$:/plugins/sq/streams/editor-template",
"created": "20200601145424630",
"modified": "20200602053704598",
"tags": "",
"type": "text/vnd.tiddlywiki",
"text": "&lt;$streams-edit tag=\"textarea\" autoHeight=\"yes\" minHeight=\"1em\" focus=\"yes\" select=\"false\" class=\"streams-editor tc-edit-texteditor tc-edit-texteditor-body\" caretPosition={{{[{$:/state/sq/streams/caret-position}!is[blank]else[end]]}}}&gt;&lt;$set name=\"targetTiddler\"value=&lt;&lt;currentTiddler&gt;&gt;&gt;&lt;$list filter=\"[all[shadows+tiddlers]tag[$:/tags/EditorToolbar]!has[draft.of]]\"&gt;&lt;$reveal type=\"nomatch\" state=&lt;&lt;config-visibility-title&gt;&gt; text=\"hide\" class=\"tc-text-editor-toolbar-item-wrapper\"&gt;&lt;$transclude tiddler=\"$:/core/ui/EditTemplate/body/toolbar/button\"\nmode=\"inline\"/&gt;&lt;/$reveal&gt;&lt;/$list&gt;&lt;/$set&gt;&lt;/$streams-edit&gt;"
},
"$:/plugins/sq/streams/nodes-list-template": {
"title": "$:/plugins/sq/streams/nodes-list-template",
"created": "20171022203553093",
"modified": "20171122050808722",
"text": "\\import [[$:/plugins/sq/streams/action-macros]] [all[shadows+tiddlers]tag[$:/tags/streams/actionmacros]] [all[shadows+tiddlers]tag[$:/tags/streams/user-actionmacros]]\n\\whitespace trim\n\n&lt;$vars stream-root-title=&lt;&lt;currentTiddler&gt;&gt;\n\tcontextmenu-state=&lt;&lt;qualify \"$:/state/sq-context-popup\"&gt;&gt;\n\trow-edit-state=&lt;&lt;qualify \"$:/state/sq/streams/current-edit-tiddler\"&gt;&gt;\n\tdrag-title-state=&lt;&lt;qualify \"$:/state/sq/streams/current-drag-title\"&gt;&gt;\n\tdrag-title-nextsibling-state=&lt;&lt;qualify \"$:/state/sq/streams/current-drag-nextsibling\"&gt;&gt; \n&gt;\n\t&lt;$eventcatcher\n\t\tevents=\"click\"\n\t\tselector=\".stream-node-ctrl-btn\"\n\t\tactions-click=&lt;&lt;node-ctrl-btn-actions&gt;&gt;\n\t\ttag=\"div\"\n\t&gt;\n\t&lt;$eventcatcher\n\t\tevents=\"dblclick swiped-right swiped-left\"\n\t\ttag=\"div\"\n\t\tselector=\".stream-row\"\n\t\tactions-dblclick=&lt;&lt;toggle-row-edit-state&gt;&gt;\n\t\tactions-swiped-right=&lt;&lt;swiped-right-actions&gt;&gt;\n\t\tactions-swiped-left=&lt;&lt;swiped-left-actions&gt;&gt;\n\t&gt;\n\t&lt;$eventcatcher\n\t\ttag=\"div\"\n\t\tevents=\"contextmenu\"\n\t\tselector=\".sq-contextmenu-container\"\n\t\tactions-contextmenu=&lt;&lt;oncontext-menu-actions&gt;&gt;\n\t&gt;\n\t&lt;$swiper\n\t\ttag=\"div\"\n\t\tenable={{$:/config/sq/streams/swipe-enabled}}\n\t\tswipethreshold={{$:/config/sq/streams/swipe-threshold}}\n\t&gt;\n\t&lt;div class={{{ stream-root [{$:/state/sq/nodes/global-drag-state}match[yes]then[stream-dragactive]] [&lt;currentTiddler&gt;!has[stream-list]then[stream-newlist]] +[join[ ]] }}}&gt;\n\t\t{{||$:/plugins/sq/streams/templates/stream-root-template}}\n\t\t&lt;$list filter=\"[all[current]match&lt;stream-root-title&gt;]\" variable=\"_NULL\"&gt;\n\t\t\t&lt;!-- if we are the root, add a button to add more nodes--&gt;\n\t\t\t&lt;div class=\"stream-row\"&gt;\n\t\t\t\t&lt;div class=\"stream-node-control stream-node-control-addnew\"&gt;\n\t\t\t\t\t&lt;div class=\"stream-node-collapser\"&gt;\n\t\t\t\t\t&lt;/div&gt;\n\t\t\t\t\t&lt;div class=\"stream-node-handle\"&gt;\n\t\t\t\t\t\t&lt;$button tag=\"div\" class=\"tc-btn-invisible\" tooltip=\"add node\" actions=&lt;&lt;add-node-actions&gt;&gt; &gt;\n\t\t\t\t\t\t\t{{$:/plugins/sq/streams/icons/new-node-btn}}\n\t\t\t\t\t\t&lt;/$button&gt;\n\t\t\t\t\t&lt;/div&gt;\n\t\t\t\t&lt;/div&gt;\n\t\t\t\t&lt;div class=\"stream-node-block\"&gt;\n\t\t\t\t\t&lt;!--consider moving last child dropzone in here, though thats for children too--&gt;\n\t\t\t\t&lt;/div&gt;\n\t\t\t&lt;/div&gt;\t\t\t\t\n\t\t\t&lt;$set name=\"currentTiddler\" filter={{{[&lt;contextmenu-state&gt;get[current]]}}}&gt;\n\t\t\t\t{{||$:/plugins/sq/streams/contextmenu/contextmenu-template}}\n\t\t\t&lt;/$set&gt;\n\t\t&lt;/$list&gt;\t\n\t&lt;/div&gt;\n\t&lt;/$swiper&gt;\n\t&lt;/$eventcatcher&gt;\n\t&lt;/$eventcatcher&gt;\n\t&lt;/$eventcatcher&gt;\n&lt;/$vars&gt;"
},
"$:/plugins/sq/streams/templates/stream-root-template": {
"title": "$:/plugins/sq/streams/templates/stream-root-template",
"text": "\\whitespace trim\n&lt;$vars dropTargetTiddler=&lt;&lt;currentTiddler&gt;&gt; &gt;\n\t&lt;$list filter=\"[list[!!stream-list]!is[missing]]\"&gt;\n\t\t&lt;$set name=\"enable-dnd\" filter=\"[&lt;enable-dnd&gt;match[no]] ~[&lt;drag-title-state&gt;get[text]match&lt;currentTiddler&gt;then[no]]\" select=\"0\"&gt;\n\t\t\t{{||$:/plugins/sq/streams/templates/stream-row-template}}\n\t\t&lt;/$set&gt;\n\t&lt;/$list&gt;\n\t&lt;$tiddler tiddler=\"\"&gt;\n\t\t&lt;!-- to drop after the last child of any list level--&gt;\n\t\t&lt;$droppable\n\t\t\tactions=&lt;&lt;stream-drop-actions&gt;&gt;\n\t\t\ttag=\"div\"\n\t\t\tenable=&lt;&lt;enable-dnd&gt;&gt;\n\t\t\tclass=\"stream-droppable stream-droppable-terminal\"\n\t\t\tdisabledClass=\"stream-node-disabled\"\n\t\t&gt;\n\t\t\t&lt;div class=\"tc-droppable-placeholder\"&gt;\n\t\t\t&amp;nbsp;\n\t\t\t&lt;/div&gt;&lt;!-- idea only want below div with height when its a child with no more children--&gt;\n\t\t\t&lt;$list filter=\"[&lt;currentTiddler&gt;!has[stream-list]]\" variable=\"_NULL\"&gt;&lt;div class=\"stream-droppable-spacer\"/&gt;&lt;/$list&gt;\n\t\t&lt;/$droppable&gt;\n\t&lt;/$tiddler&gt;\n&lt;/$vars&gt;"
},
"$:/plugins/sq/streams/templates/stream-row-template": {
"title": "$:/plugins/sq/streams/templates/stream-row-template",
"text": "\\whitespace trim\n&lt;$qualify\n\tname=\"row-children-visibility-state\"\n\ttitle={{{ [[$:/state/sq/streams/visibility/]addsuffix&lt;currentTiddler&gt;] }}}\n&gt;\n&lt;$droppable \n\tactions=&lt;&lt;stream-drop-actions&gt;&gt;\n\ttag=\"div\"\n\tclass={{{ stream-droppable [list[!!stream-list]is[tiddler]then[]else[stream-row-nochildren]] +[join[ ]]}}}\n\tenable={{{[&lt;drag-title-nextsibling-state&gt;get[text]match&lt;currentTiddler&gt;then[no]] ~[&lt;enable-dnd&gt;]}}}\n\tdisabledClass=\"stream-node-disabled\"\n\tdata-node-title=&lt;&lt;currentTiddler&gt;&gt;\n&gt;\n\t&lt;div class=\"tc-droppable-placeholder\"/&gt;\n\t&lt;div class={{{ stream-row [&lt;row-children-visibility-state&gt;get[text]match[hide]then[stream-row-children-collapsed]] +[join[ ]]}}}\n\t\tdata-node-title=&lt;&lt;currentTiddler&gt;&gt;\n\t&gt;\n\t\t&lt;$draggable\n\t\t\ttag=\"div\"\n\t\t\ttiddler=&lt;&lt;currentTiddler&gt;&gt;\n\t\t\tstartactions=&lt;&lt;node-drag-start-actions&gt;&gt;\n\t\t\tendactions=&lt;&lt;node-drag-end-actions&gt;&gt;\n\t\t\tclass=\"stream-node-control sq-contextmenu-container\"\n\t\t\tdata-node-title=&lt;&lt;currentTiddler&gt;&gt;\n\t\t&gt;\n\t\t\t&lt;button type=\"button\" class=\"tc-btn-invisible stream-node-ctrl-btn stream-node-collapser\" data-btn-role=\"stream-node-visibility\" data-rowchildren-visibility-state=&lt;&lt;row-children-visibility-state&gt;&gt;&gt;\n\t\t\t\t{{$:/plugins/sq/streams/icons/node-expand-arrow}}\n\t\t\t&lt;/button&gt;\n\t\t\t&lt;div class=\"stream-node-handle tc-btn-invisible stream-node-ctrl-btn\" data-btn-role=\"stream-node-decorator\" data-node-title=&lt;&lt;currentTiddler&gt;&gt;&gt;\n\t\t\t\t\t&lt;div class=\"stream-node-handle-inner\"/&gt;\n\t\t\t&lt;/div&gt;\n\t\t&lt;/$draggable&gt;\n\t\t&lt;div class=\"stream-node-block\"&gt;\n\t\t\t&lt;$list filter=\"[&lt;row-edit-state&gt;get[text]!is[blank]else[]match&lt;currentTiddler&gt;]\" variable=\"NULL\" emptyMessage=\"\"\"&lt;$transclude mode=\"block\"/&gt;\"\"\"&gt;\n\t\t\t\t&lt;$keyboard-plus shortcutTag=\"$:/tags/streams/keyboard-shortcuts\"&gt;\n\t\t\t\t\t{{||$:/plugins/sq/streams/editor-template}}\n\t\t\t\t&lt;/$keyboard-plus&gt;\t\t\t\n\t\t\t&lt;/$list&gt;\n\t\t&lt;/div&gt;\n\t&lt;/div&gt;\n&lt;/$droppable&gt;\n&lt;$reveal\n\ttag=\"div\"\n\ttype=\"nomatch\"\n\tstateTitle=&lt;&lt;row-children-visibility-state&gt;&gt;\n\ttext=\"hide\"\n\tclass=\"stream-row-children\"\n&gt;\n\t\t{{||$:/plugins/sq/streams/templates/stream-root-template}}\n&lt;/$reveal&gt;\n&lt;/$qualify&gt;"
},
"$:/plugins/sq/streams/stream-view-template": {
"title": "$:/plugins/sq/streams/stream-view-template",
"created": "20170922203553093",
"modified": "20170929050808722",
"tags": "[[$:/tags/ViewTemplate]]",
"list-after": "$:/core/ui/ViewTemplate/body",
"text": "&lt;$list filter=\"\"\"[&lt;folded-state&gt;get[text]!is[blank]else[show]!match[hide]]\"\"\" variable=\"_NULL\"&gt;\n&lt;$list filter=\"\"\"[all[current]subfilter{$:/config/sq/streams/stream-enable-filter}]\"\"\"&gt;\n{{||$:/plugins/sq/streams/nodes-list-template}}\n&lt;/$list&gt;\n&lt;/$list&gt;"
},
"$:/plugins/sq/streams/sq-ui-styles": {
"title": "$:/plugins/sq/streams/sq-ui-styles",
"tags": "[[$:/tags/Stylesheet]]",
"text": "/** checkbox switches start **/\n/** https://www.w3schools.com/howto/howto_css_switch.asp **/\n/* The switch - the box around the slider */\nlabel.squi-form-switch {\n\tposition: relative;\n\tdisplay: inline-block;\n\twidth: 36px;\n\theight: 12px;\n}\n\n/* Hide default HTML checkbox */\nlabel.squi-form-switch input {\n\topacity: 0;\n\twidth: 0;\n\theight: 0;\n}\n\n/* The slider */\nlabel.squi-form-switch span {\n\tposition: absolute;\n\tcursor: pointer;\n\ttop: 0;\n\tleft: 0;\n\tright: 0;\n\tbottom: 0;\n\tbackground-color: &lt;&lt;color tiddler-controls-foreground&gt;&gt;;\n\t-webkit-transition: .2s;\n\ttransition: .2s;\n}\n\nlabel.squi-form-switch span:before {\n\tposition: absolute;\n\tcontent: \"\";\n\theight: 20px;\n\twidth: 20px;\n\tleft: -1px;\n\ttop: -4px;\n\tbottom: 4px;\n\tbackground-color: &lt;&lt;color background&gt;&gt;;\n\t-webkit-transition: .2s;\n\ttransition: .2s;\n\tbox-shadow: 0 1px 3px 0 rgba(0,0,0,0.7);\n}\n\nlabel.squi-form-switch input:checked + span {\n\tbackground-color: rgba(26,115,232,0.5);\n}\n\nlabel.squi-form-switch input:checked + span:before {\n\tbackground-color: rgb(26,115,232);\n\topacity: 1;\n}\n\nlabel.squi-form-switch input:focus + span {\n\tbox-shadow: 0 0 1px #2196F3;\n}\n\nlabel.squi-form-switch input:checked + span:before {\n\t-webkit-transform: translateX(17px);\n\t-ms-transform: translateX(17px);\n\ttransform: translateX(17px);\n}\n\nlabel.squi-form-switch span {\n\tborder-radius: 12px;\n}\n\nlabel.squi-form-switch span:before {\n\tborder-radius: 50%;\n}\n\ndiv.squi-form-label {\n\t\n}\n\n/*** checkbox switches end ***/\n\n/** form select elements **/\n.squi-form-select {\n\tappearance: none;\n\tbackground: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='12' fill='%235F6368'%3E%3Cpath d='M0 0h24L12 12z'/%3E%3C/svg%3E\") calc(100% - 8px) center no-repeat;\n\tbackground-color: rgb(241,243,244);\n\tbackground-size: 10px;\n\tborder: none;\n\tborder-radius: 4px;\n\tcolor: rgb(32,33,36);\n\tcursor: pointer;\n\tmax-width: 100%;\n\toutline: none;\n\tpadding: 6px 21px 6px 8px;\n/*\twidth: 200px;*/\n}\n\ninput.squi-form-input {\n\tborder: 1px solid &lt;&lt;color tiddler-controls-foreground&gt;&gt;;\n\tborder-radius: 3px;\n\tbackground-color: rgb(241,243,244);\n\tpadding: 6px;\n}\n\ninput.squi-form-input:focus {\n\toutline-color: #ccc;\n}\n\n\n.sq-list-group {\n\tdisplay: flex;\n\tflex-direction: column;\n\tpadding-left: 0;\n\tmargin-bottom: 0;\n\tbox-sizing: border-box;\n}\n\n.sq-list-group-box-shadow {\n\tbox-shadow:1px 1px 5px rgba(0, 0, 0, 0.3);\t\n\tborder-bottom-left-radius: .25rem;\n\tborder-bottom-right-radius: .25rem;\n\tborder-top-left-radius: .25rem;\n\tborder-top-right-radius: .25rem;\t\t\n}\n\t\n.sq-list-group-item\t{\n\tposition: relative;\n\tdisplay: block;\n\tpadding: 0.75rem 1.25rem;\n\tbackground-color: &lt;&lt;color background&gt;&gt;;\n\tborder: 1px solid rgba(0,0,0,.125);\n\twidth: 100%;\n\tcolor: #495057;\n\ttext-align:\tinherit;\t\n\tdisplay: flex;\n\tflex-direction: row;\n\tjustify-content: space-between!important;\n\talign-items: center!important;\n\tword-spacing: 0.1em;\n}\n\n\n.sq-list-group-item+.sq-list-group-item {\n\tborder-top-width: 0;\n}\n\n.sq-list-group-item:first-child {\n\tborder-top-left-radius: .25rem;\n\tborder-top-right-radius: .25rem;\n}\n\n.sq-list-group-item:last-child {\n\tborder-bottom-left-radius: .25rem;\n\tborder-bottom-right-radius: .25rem;\n}\n\n.sq-list-stream-settings {\n\tfont-size: 90%;\n}\n\ninput.sq-search-input {\n display: block;\n width: 100%;\n height: calc(1.5em + .75rem + 2px);\n padding: .375rem .75rem;\n font-size: 0.8rem;\n font-weight: 400;\n line-height: 1.5;\n color: #495057;\n background-color: &lt;&lt;color background&gt;&gt;;\n background-clip: padding-box;\n border: 1px solid #ced4da;\n border-radius: .25rem;\n transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out;\n margin-bottom: 0.75em;\n}\n\ninput.sq-search-input:focus {\ncolor: #495057;\n background-color: &lt;&lt;color background&gt;&gt;;\
},
"$:/plugins/sq/streams/ui/templates/settings/input-switch": {
"title": "$:/plugins/sq/streams/ui/templates/settings/input-switch",
"text": "&lt;label class=\"squi-form-label\"&gt;&lt;$link tooltip={{!!description}}&gt;{{!!caption}}&lt;/$link&gt;&lt;/label&gt;&lt;$checkbox field=\"text\" checked=\"yes\" unchecked=\"no\" class=\"squi-form-switch\"/&gt;"
},
"$:/plugins/sq/streams/ui/templates/settings/input": {
"title": "$:/plugins/sq/streams/ui/templates/settings/input",
"text": "&lt;label class=\"squi-form-label\"&gt;&lt;$link tooltip={{!!description}}&gt;{{!!caption}}&lt;/$link&gt;&lt;/label&gt;\n&lt;$edit-text tag=\"input\" class=\"squi-form-input\"/&gt;"
},
"$:/plugins/sq/streams/ui/templates/settings/select": {
"title": "$:/plugins/sq/streams/ui/templates/settings/select",
"text": "&lt;label class=\"squi-form-label\"&gt;&lt;$link tooltip={{!!description}}&gt;{{!!caption}}&lt;/$link&gt;&lt;/label&gt;\n&lt;$vars cnt={{{[enlist{!!option-names}count[]]}}}&gt;\n&lt;$select class=\"squi-form-select\"&gt;\n&lt;$list filter=\"[range&lt;cnt&gt;]\" variable=\"index\"&gt;\n&lt;option value={{{[enlist{!!option-values}nth&lt;index&gt;]}}}&gt;&lt;$text text={{{[enlist{!!option-names}nth&lt;index&gt;]}}}/&gt;&lt;/option&gt;\n&lt;/$list&gt;\n&lt;/$select&gt;\n&lt;/$vars&gt;"
},
"$:/plugins/sq/lib/swipeevents.js": {
"title": "$:/plugins/sq/lib/swipeevents.js",
"text": "/*\\\ntitle: $:/plugins/sq/lib/swipeevents.js\ntype: application/javascript\nmodule-type: library\nBased on https://github.com/john-doherty/swiped-events\nhttps://github.com/umanghome/swipe-listener\nhttps://github.com/scriptex/touchsweep/blob/master/src/touchsweep.js\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.platforms = [\"browser\"];\n\nfunction SwipeEventsFactory(element,options) {\n\n\tif(typeof window.CustomEvent !== 'function') {\n\t\t\n\t\twindow.CustomEvent = function (event, params) {\n\t\t\tparams = params || { bubbles: false, cancelable: false, detail: undefined };\n\t\t\tvar evt = document.createEvent('CustomEvent');\n\t\t\tevt.initCustomEvent(event, params.bubbles, params.cancelable, params.detail);\n\t\t\treturn evt;\n\t\t};\n\t\twindow.CustomEvent.prototype = window.Event.prototype;\n\t}\n\t\n\tif(!element) {\n\t\treturn;\n\t}\n\telement.addEventListener(\"touchstart\", handleTouchStart, false);\n\telement.addEventListener(\"touchmove\", handleTouchMove, false);\n\telement.addEventListener(\"touchend\", handleTouchEnd, false);\n\t\n\toptions = options || {};\n\t\n\tvar xDown = null,\n\t\tyDown = null,\n\t\txDiff = null,\n\t\tyDiff = null,\n\t\ttimeDown = null,\n\t\tstartEl = null,\n\t\tdefaults = {\n\t\t\t\"swipe-threshold\": 20,\n\t\t\t\"swipe-timeout\": 500\n\t\t};\n\t\t\n\t$tw.utils.extend(defaults,options);\t\n\n\t/**\n\t * Fires swiped event if swipe detected on touchend\n\t * @param {object} e - browser event object\n\t * @returns {void}\n\t */\n\tfunction handleTouchEnd(e) {\n\n\t\t// if the user released on a different target, cancel!\n\t\tif (startEl !== e.target) return;\n\n\t\tvar swipeThreshold = parseInt(getNearestAttribute(startEl, 'data-swipe-threshold', defaults[\"swipe-threshold\"]), 10); // default 20px\n\t\tvar swipeTimeout = parseInt(getNearestAttribute(startEl, 'data-swipe-timeout', defaults[\"swipe-timeout\"]), 10);\t // default 500ms\n\t\tvar timeDiff = Date.now() - timeDown;\n\t\tvar eventType = '';\n\t\tvar changedTouches = e.changedTouches || e.touches || [];\n\n\t\tif (Math.abs(xDiff) &gt; Math.abs(yDiff)) { // most significant\n\t\t\tif (Math.abs(xDiff) &gt; swipeThreshold &amp;&amp; timeDiff &lt; swipeTimeout) {\n\t\t\t\tif (xDiff &gt; 0) {\n\t\t\t\t\teventType = 'swiped-left';\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\teventType = 'swiped-right';\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\telse if (Math.abs(yDiff) &gt; swipeThreshold &amp;&amp; timeDiff &lt; swipeTimeout) {\n\t\t\tif (yDiff &gt; 0) {\n\t\t\t\teventType = 'swiped-up';\n\t\t\t}\n\t\t\telse {\n\t\t\t\teventType = 'swiped-down';\n\t\t\t}\n\t\t}\n\n\t\tif (eventType !== '') {\n\n\t\t\tvar eventData = {\n\t\t\t\tdir: eventType.replace(/swiped-/, ''),\n\t\t\t\txStart: parseInt(xDown, 10),\n\t\t\t\txEnd: parseInt((changedTouches[0] || {}).clientX || -1, 10),\n\t\t\t\tyStart: parseInt(yDown, 10),\n\t\t\t\tyEnd: parseInt((changedTouches[0] || {}).clientY || -1, 10)\n\t\t\t};\n\n\t\t\t// fire `swiped` event event on the element that started the swipe\n\t\t\tstartEl.dispatchEvent(new CustomEvent('swiped', { bubbles: true, cancelable: true, detail: eventData }));\n\n\t\t\t// fire `swiped-dir` event on the element that started the swipe\n\t\t\tstartEl.dispatchEvent(new CustomEvent(eventType, { bubbles: true, cancelable: true, detail: eventData }));\n\t\t}\n\n\t\t// reset values\n\t\txDown = null;\n\t\tyDown = null;\n\t\ttimeDown = null;\n\t}\n\n\t/**\n\t * Records current location on touchstart event\n\t * @param {object} e - browser event object\n\t * @returns {void}\n\t */\n\tfunction handleTouchStart(e) {\n\n\t\t// if the element has data-swipe-ignore=\"true\" we stop listening for swipe events\n\t\tif (e.target.getAttribute('data-swipe-ignore') === 'true') return;\n\n\t\tstartEl = e.target;\n\n\t\ttimeDown = Date.now();\n\t\txDown = e.touches[0].clientX;\n\t\tyDown = e.touches[0].clientY;\n\t\txDiff = 0;\n\t\tyDiff = 0;\n\t}\n\n\t/**\n\t * Records location diff in px on touchmove event\n\t * @param {object} e - browser event object\n\t * @retu
"type": "application/javascript",
"module-type": "library",
"Based on https": "//github.com/john-doherty/swiped-events",
"https": "//github.com/scriptex/touchsweep/blob/master/src/touchsweep.js"
},
"$:/plugins/sq/streams/action-unselect.js": {
"title": "$:/plugins/sq/streams/action-unselect.js",
"text": "/*\\\n\ntitle: $:/plugins/sq/streams/action-unselect.js\ntype: application/javascript\nmodule-type: widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar UnselectWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nUnselectWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nUnselectWidget.prototype.render = function(parent,nextSibling) {\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.parentDomNode = parent;\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nUnselectWidget.prototype.execute = function() {\n\tthis.makeChildWidgets();\n};\n\n/*\nRefresh the widget by ensuring our attributes are up to date\n*/\nUnselectWidget.prototype.refresh = function(changedTiddlers) {\n\treturn this.refreshChildren(changedTiddlers);\n};\n\n/*\nInvoke the action associated with this widget\n*/\nUnselectWidget.prototype.invokeAction = function(triggeringWidget,event) {\n\tif (window.getSelection) {\n\t\twindow.getSelection().removeAllRanges();\n\t} else if (document.selection) {\n\t\tdocument.selection.empty();\n\t}\n\treturn true;\n};\n\nUnselectWidget.prototype.allowActionPropagation = function() {\n\treturn false;\n};\n\nexports[\"action-unselect\"] = UnselectWidget;\n\n})();",
"type": "application/javascript",
"module-type": "widget"
},
"$:/plugins/sq/streams/action-withinput.js": {
"title": "$:/plugins/sq/streams/action-withinput.js",
"text": "/*\\\n\ntitle: $:/plugins/sq/streams/action-withinput.js\ntype: application/javascript\nmodule-type: widget\n\nPrompt user for input before executing actions contained inside the widget.\nThe string entered by the user is available in the variable userInput in the actions contained in the widget.\n\nPrompt user for confirmation before executing actions contained inside the widget.\nIf the user cancels, the actions are not executed.\n\nExample:\n&lt;$button&gt;go\n&lt;$action-withinput message=\"What is your name?\" actions=\"\"\"&lt;$action-setfield $tiddler=\"name\" $value=&lt;&lt;userInput&gt;&gt;/&gt;\"\"\" /&gt;\n&lt;/$button&gt;\n\nParameters:\nmessage : message to display\ndefault: default value, defaults to an empty string\n\n\n\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar WithInputWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nWithInputWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nWithInputWidget.prototype.render = function(parent,nextSibling) {\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.parentDomNode = parent;\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nWithInputWidget.prototype.execute = function() {\n\tthis.message = this.getAttribute(\"message\");\n\tthis.defaultValue = this.getAttribute(\"default\",\"\");\n\tthis.actions = this.getAttribute(\"actions\");\n\tthis.makeChildWidgets();\n};\n\n/*\nRefresh the widget by ensuring our attributes are up to date\n*/\nWithInputWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes[\"message\"] || changedAttributes[\"default\"] || changedAttributes[\"actions\"]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\n/*\nInvoke the action associated with this widget\n*/\nWithInputWidget.prototype.invokeAction = function(triggeringWidget,event) {\n\tif(this.message &amp;&amp; this.actions) {\n\t\tvar userData = prompt(this.message,this.defaultValue);\n\t\tif(userData != null) {\n\t\t\tthis.setVariable(\"userInput\",userData);\n\t\t\tthis.invokeActionString(this.actions,this,event);\n\t\t\treturn true;\n\t\t}\n\t}\n};\n\nWithInputWidget.prototype.allowActionPropagation = function() {\n\treturn false;\n};\n\nexports[\"action-withinput\"] = WithInputWidget;\n\n})();",
"type": "application/javascript",
"module-type": "widget"
},
"$:/plugins/sq/streams/widgets/keyboard-plus.js": {
"title": "$:/plugins/sq/streams/widgets/keyboard-plus.js",
"text": "/*\\\ntitle: $:/plugins/sq/streams/widgets/keyboard-plus.js\ntype: application/javascript\nmodule-type: widget\n\\*/\n(function(){\n\t\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar KeyboardWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nKeyboardWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nKeyboardWidget.prototype.render = function(parent,nextSibling) {\n\tvar self = this;\n\t// Remember parent\n\tthis.parentDomNode = parent;\n\t// Compute attributes and execute state\n\tthis.computeAttributes();\n\tthis.execute();\n\tvar tag = this.parseTreeNode.isBlock ? \"div\" : \"span\";\n\tif(this.tag &amp;&amp; $tw.config.htmlUnsafeElements.indexOf(this.tag) === -1) {\n\t\ttag = this.tag;\n\t}\n\t// Create element\n\tvar domNode = this.document.createElement(tag);\n\t// Assign classes\n\tvar classes = (this[\"class\"] || \"\").split(\" \");\n\tclasses.push(\"tc-keyboard\");\n\tdomNode.className = classes.join(\" \");\n\t\n\t\n\t// Add a keyboard event handler\n\tdomNode.addEventListener(\"keydown\",function (event) {\n\t\t\t// CM triggers two events\n\t\t\t// second event has:\n\t\t\t//\t\tdefaultPrevented : true\n\t\t\t//\t\tdetail: 0\n\t\t\t// \t\teventPhase 3 (instead of 2)\n\t\t\t// \t\tisComposing : false\n\t\t\tif(!event.defaultPrevented) {\n\t\t\t\tvar key, action, preventDefault;\n\t\t\t\tfor(var i=0; i&lt;self.shortcutTiddlers.length; i++) {\n\t\t\t\t\tif(self.shortcutParsedList[i] !== undefined &amp;&amp; $tw.keyboardManager.checkKeyDescriptors(event,self.shortcutParsedList[i])) {\n\t\t\t\t\t\tkey = self.shortcutParsedList[i];\n\t\t\t\t\t\taction = self.shortcutActionList[i];\n\t\t\t\t\t\tpreventDefault = self.shortcutPreventDefaultList[i];\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif(key !== undefined) {\n\t\t\t\t\tif(preventDefault) {\n\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t}\n\t\t\t\t\tObject.defineProperty(event,\"sqHandled\",{value:true});\n\t\t\t\t\t//event.sqHandled = true;\n\t\t\t\t\tevent.stopPropagation();\n\t\t\t\t\t//event.stopImmediatePropagation();\n\t\t\t\t\tself.invokeActionString(action,self,event);\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t\treturn false;\n\t\t}\n\t},false);\n\t\n\t// Insert element\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.renderChildren(domNode,null);\n\tthis.domNodes.push(domNode);\t\n}\t\n\t\nKeyboardWidget.prototype.execute = function() {\n\tvar self = this;\n\t// Get attributes\n\tthis.tag = this.getAttribute(\"tag\",\"\");\n\tthis[\"class\"] = this.getAttribute(\"class\",\"\");\n\tthis.shortcutTiddlerTag = this.getAttribute(\"shortcutTag\");\n\t//var keyInfoArray = [];\n\t\n\tthis.shortcutTiddlers = this.wiki.getTiddlersWithTag(this.shortcutTiddlerTag);\n\tthis.shortcutKeysList = [];\n\tthis.shortcutActionList = [];\n\tthis.shortcutParsedList = [];\n\tthis.shortcutPreventDefaultList = [];\n\t\n\tfor(var i=0; i&lt;this.shortcutTiddlers.length; i++) {\n\t\tvar title = this.shortcutTiddlers[i],\n\t\t\ttiddlerFields = this.wiki.getTiddler(title).fields;\n\t\tthis.shortcutKeysList[i] = tiddlerFields.key !== undefined ? tiddlerFields.key : undefined;\n\t\tthis.shortcutActionList[i] = tiddlerFields.text;\n\t\tthis.shortcutPreventDefaultList[i] = tiddlerFields[\"prevent-default\"] &amp;&amp; tiddlerFields[\"prevent-default\"] === \"no\" ? false : true;\n\t\tthis.shortcutParsedList[i] = this.shortcutKeysList[i] !== undefined ? $tw.keyboardManager.parseKeyDescriptors(this.shortcutKeysList[i]) : undefined;\n\t}\n\t\n\t// Make child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nKeyboardWidget.prototype.refresh = function(changedTiddlers) {\n\t\n\tvar newList = this.wiki.getTiddlersWithTag(this.shortcutTiddlerTag)\n\tvar hasChanged = $tw.utils.hopArray(changedTiddlers,this.shortcutTiddlers) ? true :\n\t\t($tw.utils.hopArray(changedTiddlers,newList) ? true :\n\t\t($tw.keyboardM
"type": "application/javascript",
"module-type": "widget"
},
"$:/plugins/sq/streams/streams-edit": {
"title": "$:/plugins/sq/streams/streams-edit",
"text": "/*\\\n\ntitle: $:/plugins/sq/streams/streams-edit\ntype: application/javascript\nmodule-type: widget-subclass\n\n\\*/\n\nexports.baseClass = \"edit\";\nexports.name = \"streams-edit\";\n\nexports.constructor = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n}\nexports.prototype = {};\n\nexports.prototype.getEditorType = function() {\n\tvar tiddler = this.wiki.getTiddler(this.editTitle);\n\tvar type = tiddler.fields.type || \"text/vnd.tiddlywiki\";\n\tvar editorType;\n\tif(type === \"text/vnd.tiddlywiki\") {\n\t\teditorType = this.wiki.getTiddlerText(\"$:/config/sq/streams/editor-engine\");\n\t\tif((!$tw.wiki.getTiddler(\"$:/plugins/tiddlywiki/codemirror\") || $tw.wiki.getTiddlerText(\"$:/config/Plugins/Disabled/$:/plugins/tiddlywiki/codemirror\",\"no\") === \"yes\" || !$tw.modules.titles[\"$:/plugins/tiddlywiki/codemirror/edit-codemirror.js\"]) &amp;&amp; (editorType === \"codemirror\") ) {\n\t\t\teditorType = \"text\";\n\t\t}\n\t\treturn editorType;\n\t}\n\teditorType = this.wiki.getTiddlerText(EDITOR_MAPPING_PREFIX + type);\n\tif(!editorType) {\n\t\tvar typeInfo = $tw.config.contentTypeInfo[type];\n\t\tif(typeInfo &amp;&amp; typeInfo.encoding === \"base64\") {\n\t\t\teditorType = \"binary\";\n\t\t} else {\n\t\t\teditorType = \"text\";\n\t\t}\n\t}\n\treturn editorType;\n};",
"type": "application/javascript",
"module-type": "widget-subclass"
},
"$:/plugins/sq/streams/widgets/swiper.js": {
"title": "$:/plugins/sq/streams/widgets/swiper.js",
"text": "/*\\\ntitle: $:/plugins/sq/streams/widgets/swiper.js\ntype: application/javascript\nmodule-type: widget\n\nSwipe event handler widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n//var SwipeListener = require(\"$:/sq/lib/swipe-listener\");\nvar SwipeEvents = require(\"$:/plugins/sq/lib/swipeevents.js\").SwipeEvents;\n\nvar SwipeWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nSwipeWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nSwipeWidget.prototype.render = function(parent,nextSibling) {\n\tvar self = this;\n\t// Remember parent\n\tthis.parentDomNode = parent;\n\t// Compute attributes and execute state\n\tthis.computeAttributes();\n\tthis.execute();\n\t// Create element\n\tvar tag = this.parseTreeNode.isBlock ? \"div\" : \"span\";\n\tif(this.swipeTag &amp;&amp; $tw.config.htmlUnsafeElements.indexOf(this.swipeTag) === -1) {\n\t\ttag = this.swipeTag;\n\t}\t\n\tvar domNode = this.document.createElement(tag);\n\tif(this.swipeEnable) {\n\t\tSwipeEvents(domNode,{\"swipe-threshold\": this.swipeThreshold});\n\t}\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.renderChildren(domNode,null);\n\tthis.domNodes.push(domNode);\n}\n\n/*\nCompute the internal state of the widget\n*/\nSwipeWidget.prototype.execute = function() {\n\tvar self = this;\n\tthis.swipeThreshold = parseInt(this.getAttribute(\"swipethreshold\",\"100\"));\n\tthis.swipeEnable = this.getAttribute(\"enable\",\"yes\") === \"yes\";\n\tthis.swipeTag = this.getAttribute(\"tag\");\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nSwipeWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif($tw.utils.count(changedAttributes) &gt; 0) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\n\t}\n};\n\nexports.swiper = SwipeWidget;\n\n})();",
"type": "application/javascript",
"module-type": "widget"
}
}
}</pre>
</div>
<div author="Saq Imtiaz" bag="default" core-version="&gt;=5.1.22" created="20201022113249606" dependents="" description="Streams addon: Search" list="" modified="20210301140136205" plugin-type="plugin" revision="0" source="" tags="rr-plugins rr-TW5" title="$:/plugins/sq/streams-search" type="application/json" version="0.0.02">
<pre>{
"tiddlers": {
"$:/config/SearchResults/Default": {
"title": "$:/config/SearchResults/Default",
"created": "20200820180447855",
"modified": "20200820180500121",
"tags": "",
"type": "text/vnd.tiddlywiki",
"text": "$:/plugins/sq/streams-search/StreamSearchResults"
},
"$:/plugins/sq/streams-search/stream-root-filter.js": {
"title": "$:/plugins/sq/streams-search/stream-root-filter.js",
"text": "/*\\\ntitle: $:/plugins/sq/streams-search/stream-root-filter.js\ntype: application/javascript\nmodule-type: filteroperator\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports[\"stream-root\"] = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tif(tiddler &amp;&amp; tiddler.fields[\"parent\"] &amp;&amp; tiddler.fields[\"stream-type\"]) {\t\t\t\n\n\t\t\tvar parentTiddler = tiddler;\n\t\t\t\n\t\t\twhile(parentTiddler &amp;&amp; parentTiddler.fields.parent) {\n\t\t\t\tparentTiddler = options.wiki.getTiddler(parentTiddler.fields.parent);\n\t\t\t}\n\t\t\tif(parentTiddler &amp;&amp; parentTiddler.fields &amp;&amp; tiddler.fields.title.startsWith(parentTiddler.fields[\"title\"])) {\n\t\t\t\t$tw.utils.pushTop(results,parentTiddler.fields.title);\n\t\t\t} else {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t\t\n\t\t} else {\n\t\t\tresults.push(title);\n\t\t}\n\t});\n\treturn results;\n};\n\n})();",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/plugins/sq/streams-search/StreamSearchResults": {
"title": "$:/plugins/sq/streams-search/StreamSearchResults",
"caption": "Streams",
"created": "20200818210522653",
"modified": "20200818212724254",
"tags": "$:/tags/SearchResults",
"type": "text/vnd.tiddlywiki",
"text": "\\define searchResultList()\n//&lt;small&gt;{{$:/language/Search/Matches/Title}}&lt;/small&gt;//\n\n&lt;$list filter=\"[!is[system]search:title{$(searchTiddler)$}sort[title]stream-root[]limit[250]]\"&gt;\n&lt;span class={{{[&lt;currentTiddler&gt;addsuffix[-primaryList]] -[&lt;searchListState&gt;get[text]] +[then[]else[tc-list-item-selected]] }}}&gt;\n&lt;$transclude tiddler=\"$:/core/ui/ListItemTemplate\"/&gt;\n&lt;/span&gt;\n&lt;/$list&gt;\n\n//&lt;small&gt;{{$:/language/Search/Matches/All}}&lt;/small&gt;//\n\n&lt;$list filter=\"[!is[system]search{$(searchTiddler)$}sort[title]stream-root[]limit[250]]\"&gt;\n&lt;span class={{{[&lt;currentTiddler&gt;addsuffix[-secondaryList]] -[&lt;searchListState&gt;get[text]] +[then[]else[tc-list-item-selected]] }}}&gt;\n&lt;$transclude tiddler=\"$:/core/ui/ListItemTemplate\"/&gt;\n&lt;/span&gt;\n&lt;/$list&gt;\n\n\\end\n&lt;&lt;searchResultList&gt;&gt;"
}
}
}</pre>
</div>
<div created="20181228194403881" modified="20210923205936665" tags="" title="$:/plugins/tg/layout/search">
<pre>{{$:/AdvancedSearch}}</pre>
</div>
<div caption="Toolbar - title" created="20200314154628735" modified="20210923205944236" order="9" tags="$:/tags/plugin-tweaks" title="$:/plugins/tg/layout/settings-toolbar-up">
<pre>!!Tiddler toolbar settings
&lt;table class="tablestyle"&gt;
&lt;&lt;tableRow "Spacing title &amp;harr; toolbar" "$:/plugins/tg/layout/styles" "title-toolbar-spacing"&gt;&gt;
&lt;&lt;tableRow "Size of tiddler buttons" "$:/plugins/tg/layout/styles" "tiddler-button-size"&gt;&gt;
&lt;&lt;tableRow "Button spacing 'Tiddler toolbar'" "$:/plugins/tg/layout/styles" "tiddler-button-spacing"&gt;&gt;
&lt;/table&gt;
&lt;$button tooltip="Help"&gt;
&lt;$action-sendmessage $message="tm-open-window" $param="$:/plugins/tg/layout/settings-toolbar-up-help" height="200px" width="720px"/&gt;Help&lt;/$button&gt;</pre>
</div>
<div created="20200316192402200" modified="20210923205944233" tags="" title="$:/plugins/tg/layout/toolbar-up/ckeckbox" up="yes">
<pre>&lt;$checkbox
field="up"
checked="yes"
unchecked="no"
default="no"
checkactions="""&lt;$action-setfield $tiddler="$:/plugins/tg/layout/toolbar-up" title="$:/core/ui/ViewTemplate/title"/&gt;
&lt;$action-setfield $tiddler="$:/plugins/tg/layout/settings-toolbar-up" tags="$:/tags/plugin-tweaks"/&gt;
&lt;$action-setfield $tiddler="$:/core/ui/ViewTemplate/title" tags="$:/tags/ViewTemplate"/&gt;"""
uncheckactions="""
&lt;$action-deletetiddler $tiddler="$:/core/ui/ViewTemplate/title"/&gt;
&lt;$action-deletefield $tiddler="$:/plugins/tg/layout/settings-toolbar-up" tags/&gt;"""
&gt;
Set tiddler toolbar above the tiddler title
&lt;/$checkbox&gt;
</pre>
</div>
<div dependents="" description="CodeMirror editor" list="readme usage keyboard license" name="CodeMirror" plugin-type="plugin" title="$:/plugins/tiddlywiki/codemirror" type="application/json" version="5.1.23">
<pre>{
"tiddlers": {
"$:/config/EditorTypeMappings/application/javascript": {
"title": "$:/config/EditorTypeMappings/application/javascript",
"text": "codemirror"
},
"$:/config/EditorTypeMappings/application/json": {
"title": "$:/config/EditorTypeMappings/application/json",
"text": "codemirror"
},
"$:/config/EditorTypeMappings/application/x-tiddler-dictionary": {
"title": "$:/config/EditorTypeMappings/application/x-tiddler-dictionary",
"text": "codemirror"
},
"$:/config/EditorTypeMappings/text/css": {
"title": "$:/config/EditorTypeMappings/text/css",
"text": "codemirror"
},
"$:/config/EditorTypeMappings/text/html": {
"title": "$:/config/EditorTypeMappings/text/html",
"text": "codemirror"
},
"$:/config/EditorTypeMappings/text/plain": {
"title": "$:/config/EditorTypeMappings/text/plain",
"text": "codemirror"
},
"$:/config/EditorTypeMappings/text/vnd.tiddlywiki": {
"title": "$:/config/EditorTypeMappings/text/vnd.tiddlywiki",
"text": "codemirror"
},
"$:/config/EditorTypeMappings/text/x-markdown": {
"title": "$:/config/EditorTypeMappings/text/x-markdown",
"text": "codemirror"
},
"$:/config/EditorTypeMappings/text/x-tiddlywiki": {
"title": "$:/config/EditorTypeMappings/text/x-tiddlywiki",
"text": "codemirror"
},
"$:/config/codemirror/cursorBlinkRate": {
"title": "$:/config/codemirror/cursorBlinkRate",
"type": "integer",
"text": "530"
},
"$:/config/codemirror/extraKeysTW": {
"title": "$:/config/codemirror/extraKeysTW",
"extend": "extraKeys",
"type": "json",
"text": "{\n\t\"Ctrl-Esc\": \"singleSelection\",\n\t\"Esc\": \"\",\n\t\"Ctrl-S\": \"\",\n\t\"Ctrl-U\": \"\",\n\t\"Ctrl-T\": \"\",\n\t\"Alt-T\": \"transposeChars\",\n\t\"Alt-U\": \"undoSelection\",\n\t\"Shift-Alt-U\": \"redoSelection\",\n\t\"Cmd-U\": \"\",\n\t\"Tab\": \"indentAuto()\",\n\t\"Enter\": \"newLineAndIndent()\"\n}\n"
},
"$:/config/codemirror/indentUnit": {
"title": "$:/config/codemirror/indentUnit",
"type": "integer",
"text": "2"
},
"$:/config/codemirror/indentWithTabs": {
"title": "$:/config/codemirror/indentWithTabs",
"type": "bool",
"text": "true"
},
"$:/config/codemirror/inputStyle": {
"title": "$:/config/codemirror/inputStyle",
"type": "string",
"text": "textarea"
},
"$:/config/codemirror/keyMap": {
"title": "$:/config/codemirror/keyMap",
"type": "string",
"text": "default"
},
"$:/config/codemirror/lineNumbers": {
"title": "$:/config/codemirror/lineNumbers",
"type": "bool",
"text": "false"
},
"$:/config/codemirror/lineWrapping": {
"title": "$:/config/codemirror/lineWrapping",
"type": "bool",
"text": "true"
},
"$:/config/codemirror/showCursorWhenSelecting": {
"title": "$:/config/codemirror/showCursorWhenSelecting",
"type": "bool",
"text": "true"
},
"$:/config/codemirror/smartIndent": {
"title": "$:/config/codemirror/smartIndent",
"type": "bool",
"text": "true"
},
"$:/config/codemirror/styleActiveLine": {
"title": "$:/config/codemirror/styleActiveLine",
"type": "bool",
"text": "false"
},
"$:/config/codemirror/tabSize": {
"title": "$:/config/codemirror/tabSize",
"type": "integer",
"text": "2"
},
"$:/config/codemirror/theme": {
"title": "$:/config/codemirror/theme",
"type": "string",
"text": "tiddlywiki"
},
"$:/language/codemirror/homeUrl": {
"title": "$:/language/codemirror/homeUrl",
"text": "http://codemirror.net"
},
"$:/language/codemirror/addOnUrl": {
"title": "$:/language/codemirror/addOnUrl",
"text": "http://codemirror.net/doc/manual.html#addons"
},
"$:/language/codemirror/configUrl": {
"title": "$:/language/codemirror/configUrl",
"text": "http://codemirror.net/doc/manual.html#config"
},
"$:/language/codemirror/controlPanel/hint": {
"title": "$:/language/codemirror/controlPanel/hint",
"text": "These settings let you customise the behaviour of [[CodeMirror|$:/plugins/tiddlywiki/codemirror]]."
},
"$:/language/codemirror/controlPanel/keyboard": {
"title": "$:/language/codemirror/controlPanel/keyboard",
"text": "Keyboard shortcuts"
},
"$:/language/codemirror/controlPanel/usage": {
"title": "$:/language/codemirror/controlPanel/usage",
"text": "Usage information"
},
"$:/language/codemirror/cursorBlinkRate/hint": {
"title": "$:/language/codemirror/cursorBlinkRate/hint",
"text": "Cursor blink rate"
},
"$:/language/codemirror/editorFont/hint": {
"title": "$:/language/codemirror/editorFont/hint",
"text": "Editor font family"
},
"$:/language/codemirror/editorFont/info": {
"title": "$:/language/codemirror/editorFont/info",
"text": "Set the font family for the ~CodeMirror text-editor"
},
"$:/language/codemirror/indentUnit/hint": {
"title": "$:/language/codemirror/indentUnit/hint",
"text": "How many spaces a block should be indented"
},
"$:/language/codemirror/indentWithTabs/hint": {
"title": "$:/language/codemirror/indentWithTabs/hint",
"text": "Enable indenting with tabs"
},
"$:/language/codemirror/indentWithTabs/info": {
"title": "$:/language/codemirror/indentWithTabs/info",
"text": "Whether, when indenting, the first N*`tabSize` spaces should be replaced by N tabs."
},
"$:/language/codemirror/keyMap/hint": {
"title": "$:/language/codemirror/keyMap/hint",
"text": "~CodeMirror keymap"
},
"$:/language/codemirror/keyMap/info": {
"title": "$:/language/codemirror/keyMap/info",
"text": "~The Keyboard KeyMap used within the ~CodeMirror text-editor"
},
"$:/language/codemirror/lineNumbers/hint": {
"title": "$:/language/codemirror/lineNumbers/hint",
"text": "Enable line numbers"
},
"$:/language/codemirror/lineNumbers/info": {
"title": "$:/language/codemirror/lineNumbers/info",
"text": "Whether to show line numbers to the left of the editor."
},
"$:/language/codemirror/lineWrapping/hint": {
"title": "$:/language/codemirror/lineWrapping/hint",
"text": "Enable line wrapping"
},
"$:/language/codemirror/lineWrapping/info": {
"title": "$:/language/codemirror/lineWrapping/info",
"text": "Whether CodeMirror should scroll or wrap for long lines. Defaults to `false` (scroll)."
},
"$:/language/codemirror/showCursorWhenSelecting/hint": {
"title": "$:/language/codemirror/showCursorWhenSelecting/hint",
"text": "Show cursor, when selecting"
},
"$:/language/codemirror/showCursorWhenSelecting/info": {
"title": "$:/language/codemirror/showCursorWhenSelecting/info",
"text": "Whether the cursor should be drawn when a selection is active."
},
"$:/language/codemirror/smartIndent/hint": {
"title": "$:/language/codemirror/smartIndent/hint",
"text": "Enable smart indent"
},
"$:/language/codemirror/smartIndent/info": {
"title": "$:/language/codemirror/smartIndent/info",
"text": "Whether to use the context-sensitive indentation that the mode provides (or just indent the same as the line before). Defaults to `true`."
},
"$:/language/codemirror/styleActiveLine/hint": {
"title": "$:/language/codemirror/styleActiveLine/hint",
"text": "Highlight active line"
},
"$:/language/codemirror/styleActiveLine/info": {
"title": "$:/language/codemirror/styleActiveLine/info",
"text": "Whether or not to highlight the active text-editor line"
},
"$:/language/codemirror/tabSize/hint": {
"title": "$:/language/codemirror/tabSize/hint",
"text": "Width of a tab character"
},
"$:/language/codemirror/theme/hint": {
"title": "$:/language/codemirror/theme/hint",
"text": "Select a theme"
},
"$:/language/codemirror/theme/info": {
"title": "$:/language/codemirror/theme/info",
"text": "Choose between ~CodeMirror themes"
},
"$:/plugins/tiddlywiki/codemirror/edit-codemirror.js": {
"title": "$:/plugins/tiddlywiki/codemirror/edit-codemirror.js",
"text": "/*\\\ntitle: $:/plugins/tiddlywiki/codemirror/edit-codemirror.js\ntype: application/javascript\nmodule-type: widget\n\nEdit-codemirror widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar editTextWidgetFactory = require(\"$:/core/modules/editor/factory.js\").editTextWidgetFactory,\n\tCodeMirrorEngine = require(\"$:/plugins/tiddlywiki/codemirror/engine.js\").CodeMirrorEngine;\n\nexports[\"edit-codemirror\"] = editTextWidgetFactory(CodeMirrorEngine,CodeMirrorEngine);\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/plugins/tiddlywiki/codemirror/engine.js": {
"title": "$:/plugins/tiddlywiki/codemirror/engine.js",
"text": "/*\\\ntitle: $:/plugins/tiddlywiki/codemirror/engine.js\ntype: application/javascript\nmodule-type: library\n\nText editor engine based on a CodeMirror instance\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar CODEMIRROR_OPTIONS = \"$:/config/CodeMirror\",\nHEIGHT_VALUE_TITLE = \"$:/config/TextEditor/EditorHeight/Height\",\nCONFIG_FILTER = \"[all[shadows+tiddlers]prefix[$:/config/codemirror/]]\"\n\t\n// Install CodeMirror\nif($tw.browser &amp;&amp; !window.CodeMirror) {\n\n\tvar modules = $tw.modules.types[\"codemirror\"];\n\tvar req = Object.getOwnPropertyNames(modules);\n\n\twindow.CodeMirror = require(\"$:/plugins/tiddlywiki/codemirror/lib/codemirror.js\");\n\t// Install required CodeMirror plugins\n\tif(req) {\n\t\tif($tw.utils.isArray(req)) {\n\t\t\tfor(var index=0; index&lt;req.length; index++) {\n\t\t\t\trequire(req[index]);\n\t\t\t}\n\t\t} else {\n\t\t\trequire(req);\n\t\t}\n\t}\n}\n\nfunction getCmConfig() {\n\tvar type,\n\t\ttest,\n\t\tvalue,\n\t\telement,\n\t\textend,\n\t\ttiddler,\n\t\tconfig = {},\n\t\tconfigTiddlers = $tw.wiki.filterTiddlers(CONFIG_FILTER);\n\n\tif ($tw.utils.isArray(configTiddlers)) {\n\t\tfor (var i=0; i&lt;configTiddlers.length; i++) {\n\t\t\ttiddler = $tw.wiki.getTiddler(configTiddlers[i]);\n\t\t\t\tif (tiddler) {\n\t\t\t\telement = configTiddlers[i].replace(/\\$:\\/config\\/codemirror\\//ig,\"\");\n\t\t\t\t\ttype = (tiddler.fields.type) ? tiddler.fields.type.trim().toLocaleLowerCase() : \"string\";\n\t\t\t\tswitch (type) {\n\t\t\t\t\tcase \"bool\":\n\t\t\t\t\ttest = tiddler.fields.text.trim().toLowerCase();\n\t\t\t\t\tvalue = (test === \"true\") ? true : false;\n\t\t\t\t\tconfig[element] = value;\n\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"string\":\n\t\t\t\t\tvalue = tiddler.fields.text.trim();\n\t\t\t\t\tconfig[element] = value;\n\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"integer\":\n\t\t\t\t\tvalue = parseInt(tiddler.fields.text.trim(), 10);\n\t\t\t\t\tconfig[element] = value;\n\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"json\":\n\t\t\t\t\tvalue = JSON.parse(tiddler.fields.text.trim());\n\t\t\t\t\t\textend = (tiddler.fields.extend) ? tiddler.fields.extend : element;\n\n\t\t\t\t\tif (config[extend]) {\n\t\t\t\t\t\t$tw.utils.extend(config[extend], value);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tconfig[extend] = value;\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\treturn config;\n}\n\nfunction CodeMirrorEngine(options) {\n\n\t// Save our options\n\tvar self = this;\n\toptions = options || {};\n\tthis.widget = options.widget;\n\tthis.value = options.value;\n\tthis.parentNode = options.parentNode;\n\tthis.nextSibling = options.nextSibling;\n\t// Create the wrapper DIV\n\tthis.domNode = this.widget.document.createElement(\"div\");\n\tif(this.widget.editClass) {\n\t\tthis.domNode.className = this.widget.editClass;\n\t}\n\tthis.domNode.style.display = \"inline-block\";\n\tthis.parentNode.insertBefore(this.domNode,this.nextSibling);\n\tthis.widget.domNodes.push(this.domNode);\n\t\n\t// Set all cm-plugin defaults\n\t// Get the configuration options for the CodeMirror object\n\tvar config = getCmConfig();\n\n\tconfig.mode = options.type;\n\tconfig.value = options.value;\n\tif(this.widget.editTabIndex) {\n\t\tconfig[\"tabindex\"] = this.widget.editTabIndex;\n\t}\n\t// Create the CodeMirror instance\n\tthis.cm = window.CodeMirror(function(cmDomNode) {\n\t\t// Note that this is a synchronous callback that is called before the constructor returns\n\t\tif(!self.widget.document.isTiddlyWikiFakeDom) {\n\t\t\tself.domNode.appendChild(cmDomNode);\n\t\t}\n\t},config);\n\n\t// Set up a change event handler\n\tthis.cm.on(\"change\",function() {\n\t\tself.widget.saveChanges(self.getText());\n\t\tif(self.widget.editInputActions) {\n\t\t\tself.widget.invokeActionString(self.widget.editInputActions);\n\t\t}\n\t});\n\tthis.cm.on(\"drop\",function(cm,event) {\n\t\tevent.stopPropagation(); // Otherwise TW's dropzone widget sees the drop event\n\t\treturn false;\n\t});\n\tthis.cm.on(\"keydown\",function(cm,event) {\n\t\treturn self.widget.han
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/tiddlywiki/codemirror/lib/codemirror.js": {
"text": "!function(e,t){\"object\"==typeof exports&amp;&amp;\"undefined\"!=typeof module?module.exports=t():\"function\"==typeof define&amp;&amp;define.amd?define(t):(e=e||self).CodeMirror=t()}(this,function(){\"use strict\";var e=navigator.userAgent,t=navigator.platform,d=/gecko\\/\\d/i.test(e),n=/MSIE \\d/.test(e),r=/Trident\\/(?:[7-9]|\\d{2,})\\..*rv:(\\d+)/.exec(e),i=/Edge\\/(\\d+)/.exec(e),w=n||r||i,v=w&amp;&amp;(n?document.documentMode||6:+(i||r)[1]),f=!i&amp;&amp;/WebKit\\//.test(e),r=f&amp;&amp;/Qt\\/\\d+\\.\\d+/.test(e),o=!i&amp;&amp;/Chrome\\//.test(e),p=/Opera\\//.test(e),c=/Apple Computer/.test(navigator.vendor),l=/Mac OS X 1\\d\\D([8-9]|\\d\\d)\\D/.test(e),u=/PhantomJS/.test(e),s=!i&amp;&amp;/AppleWebKit/.test(e)&amp;&amp;/Mobile\\/\\w+/.test(e),a=/Android/.test(e),h=s||a||/webOS|BlackBerry|Opera Mini|Opera Mobi|IEMobile/i.test(e),g=s||/Mac/.test(t),m=/\\bCrOS\\b/.test(e),y=/win/i.test(t),e=p&amp;&amp;e.match(/Version\\/(\\d*\\.\\d*)/);(e=e&amp;&amp;Number(e[1]))&amp;&amp;15&lt;=e&amp;&amp;(f=!(p=!1));var b=g&amp;&amp;(r||p&amp;&amp;(null==e||e&lt;12.11)),x=d||w&amp;&amp;9&lt;=v;function C(e){return new RegExp(\"(^|\\\\s)\"+e+\"(?:$|\\\\s)\\\\s*\")}var S,L=function(e,t){var n=e.className,r=C(t).exec(n);r&amp;&amp;(t=n.slice(r.index+r[0].length),e.className=n.slice(0,r.index)+(t?r[1]+t:\"\"))};function k(e){for(var t=e.childNodes.length;0&lt;t;--t)e.removeChild(e.firstChild);return e}function T(e,t){return k(e).appendChild(t)}function M(e,t,n,r){var i=document.createElement(e);if(n&amp;&amp;(i.className=n),r&amp;&amp;(i.style.cssText=r),\"string\"==typeof t)i.appendChild(document.createTextNode(t));else if(t)for(var o=0;o&lt;t.length;++o)i.appendChild(t[o]);return i}function N(e,t,n,r){r=M(e,t,n,r);return r.setAttribute(\"role\",\"presentation\"),r}function A(e,t){if(3==t.nodeType&amp;&amp;(t=t.parentNode),e.contains)return e.contains(t);do{if(11==t.nodeType&amp;&amp;(t=t.host),t==e)return!0}while(t=t.parentNode)}function O(){var t;try{t=document.activeElement}catch(e){t=document.body||null}for(;t&amp;&amp;t.shadowRoot&amp;&amp;t.shadowRoot.activeElement;)t=t.shadowRoot.activeElement;return t}function D(e,t){var n=e.className;C(t).test(n)||(e.className+=(n?\" \":\"\")+t)}function W(e,t){for(var n=e.split(\" \"),r=0;r&lt;n.length;r++)n[r]&amp;&amp;!C(n[r]).test(t)&amp;&amp;(t+=\" \"+n[r]);return t}S=document.createRange?function(e,t,n,r){var i=document.createRange();return i.setEnd(r||e,n),i.setStart(e,t),i}:function(e,t,n){var r=document.body.createTextRange();try{r.moveToElementText(e.parentNode)}catch(e){return r}return r.collapse(!0),r.moveEnd(\"character\",n),r.moveStart(\"character\",t),r};var H=function(e){e.select()};function F(e){var t=Array.prototype.slice.call(arguments,1);return function(){return e.apply(null,t)}}function E(e,t,n){for(var r in t=t||{},e)!e.hasOwnProperty(r)||!1===n&amp;&amp;t.hasOwnProperty(r)||(t[r]=e[r]);return t}function P(e,t,n,r,i){null==t&amp;&amp;-1==(t=e.search(/[^\\s\\u00a0]/))&amp;&amp;(t=e.length);for(var o=r||0,l=i||0;;){var s=e.indexOf(\"\\t\",o);if(s&lt;0||t&lt;=s)return l+(t-o);l+=s-o,l+=n-l%n,o=s+1}}s?H=function(e){e.selectionStart=0,e.selectionEnd=e.value.length}:w&amp;&amp;(H=function(e){try{e.select()}catch(e){}});var I=function(){this.id=null,this.f=null,this.time=0,this.handler=F(this.onTimeout,this)};function R(e,t){for(var n=0;n&lt;e.length;++n)if(e[n]==t)return n;return-1}I.prototype.onTimeout=function(e){e.id=0,e.time&lt;=+new Date?e.f():setTimeout(e.handler,e.time-+new Date)},I.prototype.set=function(e,t){this.f=t;t=+new Date+e;(!this.id||t&lt;this.time)&amp;&amp;(clearTimeout(this.id),this.id=setTimeout(this.handler,e),this.time=t)};var z=50,B={toString:function(){return\"CodeMirror.Pass\"}},G={scroll:!1},U={origin:\"*mouse\"},V={origin:\"+move\"};function K(e,t,n){for(var r=0,i=0;;){var o=e.indexOf(\"\\t\",r);-1==o&amp;&amp;(o=e.length);var l=o-r;if(o==e.length||t&lt;=i+l)return r+Math.min(l,t-i);if(i+=o-r,r=o+1,t&lt;=(i+=n-i%n))return r}}var j=[\"\"];function X(e){for(;j.length&lt;=e;)j.push(Y(j)+\" \");return j[e]}function Y(e){return e[e.
"type": "application/javascript",
"title": "$:/plugins/tiddlywiki/codemirror/lib/codemirror.js",
"module-type": "library"
},
"$:/plugins/tiddlywiki/codemirror/lib/codemirror.css": {
"text": ".CodeMirror{font-family:monospace;height:300px;color:#000;direction:ltr}.CodeMirror-lines{padding:4px 0}.CodeMirror pre.CodeMirror-line,.CodeMirror pre.CodeMirror-line-like{padding:0 4px}.CodeMirror-scrollbar-filler,.CodeMirror-gutter-filler{background-color:#fff}.CodeMirror-gutters{border-right:1px solid #ddd;background-color:#f7f7f7;white-space:nowrap}.CodeMirror-linenumber{padding:0 3px 0 5px;min-width:20px;text-align:right;color:#999;white-space:nowrap}.CodeMirror-guttermarker{color:#000}.CodeMirror-guttermarker-subtle{color:#999}.CodeMirror-cursor{border-left:1px solid #000;border-right:none;width:0}.CodeMirror div.CodeMirror-secondarycursor{border-left:1px solid silver}.cm-fat-cursor .CodeMirror-cursor{width:auto;border:0!important;background:#7e7}.cm-fat-cursor div.CodeMirror-cursors{z-index:1}.cm-fat-cursor-mark{background-color:rgba(20,255,20,0.5);-webkit-animation:blink 1.06s steps(1) infinite;-moz-animation:blink 1.06s steps(1) infinite;animation:blink 1.06s steps(1) infinite}.cm-animate-fat-cursor{width:auto;border:0;-webkit-animation:blink 1.06s steps(1) infinite;-moz-animation:blink 1.06s steps(1) infinite;animation:blink 1.06s steps(1) infinite;background-color:#7e7}@-moz-keyframes blink{50%{background-color:transparent}}@-webkit-keyframes blink{50%{background-color:transparent}}@keyframes blink{50%{background-color:transparent}}.cm-tab{display:inline-block;text-decoration:inherit}.CodeMirror-rulers{position:absolute;left:0;right:0;top:-50px;bottom:0;overflow:hidden}.CodeMirror-ruler{border-left:1px solid #ccc;top:0;bottom:0;position:absolute}.cm-s-default .cm-header{color:blue}.cm-s-default .cm-quote{color:#090}.cm-negative{color:#d44}.cm-positive{color:#292}.cm-header,.cm-strong{font-weight:700}.cm-em{font-style:italic}.cm-link{text-decoration:underline}.cm-strikethrough{text-decoration:line-through}.cm-s-default .cm-keyword{color:#708}.cm-s-default .cm-atom{color:#219}.cm-s-default .cm-number{color:#164}.cm-s-default .cm-def{color:#00f}.cm-s-default .cm-variable-2{color:#05a}.cm-s-default .cm-variable-3,.cm-s-default .cm-type{color:#085}.cm-s-default .cm-comment{color:#a50}.cm-s-default .cm-string{color:#a11}.cm-s-default .cm-string-2{color:#f50}.cm-s-default .cm-meta{color:#555}.cm-s-default .cm-qualifier{color:#555}.cm-s-default .cm-builtin{color:#30a}.cm-s-default .cm-bracket{color:#997}.cm-s-default .cm-tag{color:#170}.cm-s-default .cm-attribute{color:#00c}.cm-s-default .cm-hr{color:#999}.cm-s-default .cm-link{color:#00c}.cm-s-default .cm-error{color:red}.cm-invalidchar{color:red}.CodeMirror-composing{border-bottom:2px solid}div.CodeMirror span.CodeMirror-matchingbracket{color:#0b0}div.CodeMirror span.CodeMirror-nonmatchingbracket{color:#a22}.CodeMirror-matchingtag{background:rgba(255,150,0,.3)}.CodeMirror-activeline-background{background:#e8f2ff}.CodeMirror{position:relative;overflow:hidden;background:#fff}.CodeMirror-scroll{overflow:scroll!important;margin-bottom:-50px;margin-right:-50px;padding-bottom:50px;height:100%;outline:none;position:relative}.CodeMirror-sizer{position:relative;border-right:50px solid transparent}.CodeMirror-vscrollbar,.CodeMirror-hscrollbar,.CodeMirror-scrollbar-filler,.CodeMirror-gutter-filler{position:absolute;z-index:6;display:none;outline:none}.CodeMirror-vscrollbar{right:0;top:0;overflow-x:hidden;overflow-y:scroll}.CodeMirror-hscrollbar{bottom:0;left:0;overflow-y:hidden;overflow-x:scroll}.CodeMirror-scrollbar-filler{right:0;bottom:0}.CodeMirror-gutter-filler{left:0;bottom:0}.CodeMirror-gutters{position:absolute;left:0;top:0;min-height:100%;z-index:3}.CodeMirror-gutter{white-space:normal;height:100%;display:inline-block;vertical-align:top;margin-bottom:-50px}.CodeMirror-gutter-wrapper{position:absolute;z-index:4;background:none!important;border:none!important}.CodeMirror-gutter-background{position:absolute;top:0;bottom:0;z-index:4}.CodeMirror-gutter-elt{position:absolute;cursor:default;z-index:4}.CodeMirror-gutter-wrapper ::selection{background-color:transparent}.CodeMirror-gutter-wrapper ::-moz-selection{background-color:transparent}.CodeMirror-l
"type": "text/vnd.tiddlywiki",
"title": "$:/plugins/tiddlywiki/codemirror/lib/codemirror.css",
"tags": "[[$:/tags/Stylesheet]]"
},
"$:/plugins/tiddlywiki/codemirror/addon/dialog/dialog.css": {
"text": ".CodeMirror-dialog {\n position: absolute;\n left: 0; right: 0;\n background: inherit;\n z-index: 15;\n padding: .1em .8em;\n overflow: hidden;\n color: inherit;\n}\n\n.CodeMirror-dialog-top {\n border-bottom: 1px solid #eee;\n top: 0;\n}\n\n.CodeMirror-dialog-bottom {\n border-top: 1px solid #eee;\n bottom: 0;\n}\n\n.CodeMirror-dialog input {\n border: none;\n outline: none;\n background: transparent;\n width: 20em;\n color: inherit;\n font-family: monospace;\n}\n\n.CodeMirror-dialog button {\n font-size: 70%;\n}\n",
"type": "text/css",
"title": "$:/plugins/tiddlywiki/codemirror/addon/dialog/dialog.css",
"tags": "[[$:/tags/Stylesheet]]"
},
"$:/plugins/tiddlywiki/codemirror/addon/dialog/dialog.js": {
"text": "!function(e){\"object\"==typeof exports&amp;&amp;\"object\"==typeof module?e(require(\"../../lib/codemirror\")):\"function\"==typeof define&amp;&amp;define.amd?define([\"../../lib/codemirror\"],e):e(CodeMirror)}(function(s){function f(e,o,n){var t=e.getWrapperElement(),i=t.appendChild(document.createElement(\"div\"));return i.className=n?\"CodeMirror-dialog CodeMirror-dialog-bottom\":\"CodeMirror-dialog CodeMirror-dialog-top\",\"string\"==typeof o?i.innerHTML=o:i.appendChild(o),s.addClass(t,\"dialog-opened\"),i}function p(e,o){e.state.currentNotificationClose&amp;&amp;e.state.currentNotificationClose(),e.state.currentNotificationClose=o}s.defineExtension(\"openDialog\",function(e,o,n){n=n||{},p(this,null);var t=f(this,e,n.bottom),i=!1,r=this;function u(e){if(\"string\"==typeof e)a.value=e;else{if(i)return;i=!0,s.rmClass(t.parentNode,\"dialog-opened\"),t.parentNode.removeChild(t),r.focus(),n.onClose&amp;&amp;n.onClose(t)}}var l,a=t.getElementsByTagName(\"input\")[0];return a?(a.focus(),n.value&amp;&amp;(a.value=n.value,!1!==n.selectValueOnOpen&amp;&amp;a.select()),n.onInput&amp;&amp;s.on(a,\"input\",function(e){n.onInput(e,a.value,u)}),n.onKeyUp&amp;&amp;s.on(a,\"keyup\",function(e){n.onKeyUp(e,a.value,u)}),s.on(a,\"keydown\",function(e){n&amp;&amp;n.onKeyDown&amp;&amp;n.onKeyDown(e,a.value,u)||((27==e.keyCode||!1!==n.closeOnEnter&amp;&amp;13==e.keyCode)&amp;&amp;(a.blur(),s.e_stop(e),u()),13==e.keyCode&amp;&amp;o(a.value,e))}),!1!==n.closeOnBlur&amp;&amp;s.on(t,\"focusout\",function(e){null!==e.relatedTarget&amp;&amp;u()})):(l=t.getElementsByTagName(\"button\")[0])&amp;&amp;(s.on(l,\"click\",function(){u(),r.focus()}),!1!==n.closeOnBlur&amp;&amp;s.on(l,\"blur\",u),l.focus()),u}),s.defineExtension(\"openConfirm\",function(e,o,n){p(this,null);var t=f(this,e,n&amp;&amp;n.bottom),i=t.getElementsByTagName(\"button\"),r=!1,u=this,l=1;function a(){r||(r=!0,s.rmClass(t.parentNode,\"dialog-opened\"),t.parentNode.removeChild(t),u.focus())}i[0].focus();for(var c=0;c&lt;i.length;++c){var d=i[c];!function(o){s.on(d,\"click\",function(e){s.e_preventDefault(e),a(),o&amp;&amp;o(u)})}(o[c]),s.on(d,\"blur\",function(){--l,setTimeout(function(){l&lt;=0&amp;&amp;a()},200)}),s.on(d,\"focus\",function(){++l})}}),s.defineExtension(\"openNotification\",function(e,o){p(this,u);var n,t=f(this,e,o&amp;&amp;o.bottom),i=!1,r=o&amp;&amp;void 0!==o.duration?o.duration:5e3;function u(){i||(i=!0,clearTimeout(n),s.rmClass(t.parentNode,\"dialog-opened\"),t.parentNode.removeChild(t))}return s.on(t,\"click\",function(e){s.e_preventDefault(e),u()}),r&amp;&amp;(n=setTimeout(u,r)),u})});\n",
"type": "application/javascript",
"title": "$:/plugins/tiddlywiki/codemirror/addon/dialog/dialog.js",
"module-type": "codemirror"
},
"$:/plugins/tiddlywiki/codemirror/addon/selection/activeline.js": {
"text": "!function(e){\"object\"==typeof exports&amp;&amp;\"object\"==typeof module?e(require(\"../../lib/codemirror\")):\"function\"==typeof define&amp;&amp;define.amd?define([\"../../lib/codemirror\"],e):e(CodeMirror)}(function(r){\"use strict\";var s=\"CodeMirror-activeline\",c=\"CodeMirror-activeline-background\",l=\"CodeMirror-activeline-gutter\";function f(e){for(var t=0;t&lt;e.state.activeLines.length;t++)e.removeLineClass(e.state.activeLines[t],\"wrap\",s),e.removeLineClass(e.state.activeLines[t],\"background\",c),e.removeLineClass(e.state.activeLines[t],\"gutter\",l)}function o(t,e){for(var n=[],i=0;i&lt;e.length;i++){var r,o=e[i],a=t.getOption(\"styleActiveLine\");(\"object\"==typeof a&amp;&amp;a.nonEmpty?o.anchor.line==o.head.line:o.empty())&amp;&amp;(r=t.getLineHandleVisualStart(o.head.line),n[n.length-1]!=r&amp;&amp;n.push(r))}!function(e,t){if(e.length==t.length){for(var n=0;n&lt;e.length;n++)if(e[n]!=t[n])return;return 1}}(t.state.activeLines,n)&amp;&amp;t.operation(function(){f(t);for(var e=0;e&lt;n.length;e++)t.addLineClass(n[e],\"wrap\",s),t.addLineClass(n[e],\"background\",c),t.addLineClass(n[e],\"gutter\",l);t.state.activeLines=n})}function a(e,t){o(e,t.ranges)}r.defineOption(\"styleActiveLine\",!1,function(e,t,n){var i=n!=r.Init&amp;&amp;n;t!=i&amp;&amp;(i&amp;&amp;(e.off(\"beforeSelectionChange\",a),f(e),delete e.state.activeLines),t&amp;&amp;(e.state.activeLines=[],o(e,e.listSelections()),e.on(\"beforeSelectionChange\",a)))})});\n",
"type": "application/javascript",
"title": "$:/plugins/tiddlywiki/codemirror/addon/selection/activeline.js",
"module-type": "codemirror"
},
"$:/plugins/tiddlywiki/codemirror/mode/tw-meta.js": {
"text": "!function(e){\"object\"==typeof exports&amp;&amp;\"object\"==typeof module?e(require(\"../lib/codemirror\")):\"function\"==typeof define&amp;&amp;define.amd?define([\"../lib/codemirror\"],e):e(CodeMirror)}(function(e){\"use strict\";e.modeInfo=[{name:\"CMake\",mime:\"text/x-cmake\",mode:\"cmake\",ext:[\"cmake\",\"cmake.in\"],file:/^CMakeLists.txt$/},{name:\"Cython\",mime:\"text/x-cython\",mode:\"python\",ext:[\"pyx\",\"pxd\",\"pxi\"]},{name:\"CSS\",mime:\"text/css\",mode:\"css\",ext:[\"css\"]},{name:\"diff\",mime:\"text/x-diff\",mode:\"diff\",ext:[\"diff\",\"patch\"]},{name:\"Embedded Javascript\",mime:\"application/x-ejs\",mode:\"htmlembedded\",ext:[\"ejs\"]},{name:\"Embedded Ruby\",mime:\"application/x-erb\",mode:\"htmlembedded\",ext:[\"erb\"]},{name:\"Erlang\",mime:\"text/x-erlang\",mode:\"erlang\",ext:[\"erl\"]},{name:\"GitHub Flavored Markdown\",mime:\"text/x-gfm\",mode:\"gfm\",file:/^(readme|contributing|history).md$/i},{name:\"Go\",mime:\"text/x-go\",mode:\"go\",ext:[\"go\"]},{name:\"ASP.NET\",mime:\"application/x-aspx\",mode:\"htmlembedded\",ext:[\"aspx\"],alias:[\"asp\",\"aspx\"]},{name:\"HTML\",mime:\"text/html\",mode:\"htmlmixed\",ext:[\"html\",\"htm\",\"handlebars\",\"hbs\"],alias:[\"xhtml\"]},{name:\"HTTP\",mime:\"message/http\",mode:\"http\"},{name:\"JavaScript\",mimes:[\"text/javascript\",\"text/ecmascript\",\"application/javascript\",\"application/x-javascript\",\"application/ecmascript\"],mode:\"javascript\",ext:[\"js\"],alias:[\"ecmascript\",\"js\",\"node\"]},{name:\"JSON\",mimes:[\"application/json\",\"application/x-json\"],mode:\"javascript\",ext:[\"json\",\"map\"],alias:[\"json5\"]},{name:\"JSON-LD\",mime:\"application/ld+json\",mode:\"javascript\",ext:[\"jsonld\"],alias:[\"jsonld\"]},{name:\"Lua\",mime:\"text/x-lua\",mode:\"lua\",ext:[\"lua\"]},{name:\"Markdown\",mime:\"text/x-markdown\",mode:\"markdown\",ext:[\"markdown\",\"md\",\"mkd\"]},{name:\"MySQL\",mime:\"text/x-mysql\",mode:\"sql\"},{name:\"Plain Text\",mime:\"text/plain\",mode:\"null\",ext:[\"txt\",\"text\",\"conf\",\"def\",\"list\",\"log\"]},{name:\"Python\",mime:\"text/x-python\",mode:\"python\",ext:[\"BUILD\",\"bzl\",\"py\",\"pyw\"],file:/^(BUCK|BUILD)$/},{name:\"SCSS\",mime:\"text/x-scss\",mode:\"css\",ext:[\"scss\"]},{name:\"LaTeX\",mime:\"text/x-latex\",mode:\"stex\",ext:[\"text\",\"ltx\",\"tex\"],alias:[\"tex\"]},{name:\"TiddlyWiki \",mime:\"text/x-tiddlywiki\",mode:\"tiddlywiki\"}];for(var t=0;t&lt;e.modeInfo.length;t++){var m=e.modeInfo[t];m.mimes&amp;&amp;(m.mime=m.mimes[0])}e.findModeByMIME=function(t){t=t.toLowerCase();for(var m=0;m&lt;e.modeInfo.length;m++){var i=e.modeInfo[m];if(i.mime==t)return i;if(i.mimes)for(var a=0;a&lt;i.mimes.length;a++)if(i.mimes[a]==t)return i}return/\\+xml$/.test(t)?e.findModeByMIME(\"application/xml\"):/\\+json$/.test(t)?e.findModeByMIME(\"application/json\"):void 0},e.findModeByExtension=function(t){for(var m=0;m&lt;e.modeInfo.length;m++){var i=e.modeInfo[m];if(i.ext)for(var a=0;a&lt;i.ext.length;a++)if(i.ext[a]==t)return i}},e.findModeByFileName=function(t){for(var m=0;m&lt;e.modeInfo.length;m++){var i=e.modeInfo[m];if(i.file&amp;&amp;i.file.test(t))return i}var a=t.lastIndexOf(\".\"),o=a&gt;-1&amp;&amp;t.substring(a+1,t.length);if(o)return e.findModeByExtension(o)},e.findModeByName=function(t){t=t.toLowerCase();for(var m=0;m&lt;e.modeInfo.length;m++){var i=e.modeInfo[m];if(i.name.toLowerCase()==t)return i;if(i.alias)for(var a=0;a&lt;i.alias.length;a++)if(i.alias[a].toLowerCase()==t)return i}}});\n",
"type": "application/javascript",
"title": "$:/plugins/tiddlywiki/codemirror/mode/tw-meta.js",
"module-type": "codemirror"
},
"$:/plugins/tiddlywiki/codemirror/keyboard": {
"title": "$:/plugins/tiddlywiki/codemirror/keyboard",
"text": "\n!!Default keyboard shortcuts\n\n!!!Basic shortcuts\n\n|Shortcut |Function |h\n|Left |goCharLeft |\n|Right |goCharRight |\n|Up |goLineUp |\n|Down |goLineDown |\n|End |goLineEnd |\n|Home |goLineStartSmart |\n|~PageUp |goPageUp |\n|~PageDown |goPageDown |\n|Delete |delCharAfter |\n|Backspace |delCharBefore |\n|Shift-Backspace |delCharBefore |\n|Tab |defaultTab |\n|Shift-Tab |indentAuto |\n|Enter |newlineAndIndent |\n|Insert |toggleOverwrite |\n|Ctrl-Esc |singleSelection |\n\n\n!!!Shortcuts on Windows and Linux\n\n|Shortcut |Function |h\n|Ctrl-A |selectAll |\n|Ctrl-D |deleteLine |\n|Ctrl-Z |undo |\n|Shift-Ctrl-Z |redo |\n|Ctrl-Y |redo |\n|Ctrl-Home |goDocStart |\n|Ctrl-End |goDocEnd |\n|Ctrl-Up |goLineUp |\n|Ctrl-Down |goLineDown |\n|Ctrl-Left |goGroupLeft |\n|Ctrl-Right |goGroupRight |\n|Alt-Left |goLineStart |\n|Alt-Right |goLineEnd |\n|Ctrl-Backspace |delGroupBefore |\n|Ctrl-Delete |delGroupAfter |\n|Ctrl-F |find |\n|Ctrl-G |findNext |\n|Shift-Ctrl-G |findPrev |\n|Shift-Ctrl-F |replace |\n|Shift-Ctrl-R |replaceAll |\n|Ctrl-[ |indentLess |\n|Ctrl-] |indentMore |\n|Alt-U |undoSelection |\n|Shift-Ctrl-U |redoSelection |\n|Shift-Alt-U |redoSelection |\n\n\n!!!Shortcuts on ~MacOs\n\n|Shortcut |Function |h\n|Cmd-A |selectAll |\n|Cmd-D |deleteLine |\n|Cmd-Z |undo |\n|Shift-Cmd-Z |redo |\n|Cmd-Y |redo |\n|Cmd-Home |goDocStart |\n|Cmd-Up |goDocStart |\n|Cmd-End |goDocEnd |\n|Cmd-Down |goDocEnd |\n|Alt-Left |goGroupLeft |\n|Alt-Right |goGroupRight |\n|Cmd-Left |goLineLeft |\n|Cmd-Right |goLineRight |\n|Alt-Backspace |delGroupBefore |\n|Ctrl-Alt-Backspace |delGroupAfter |\n|Alt-Delete |delGroupAfter |\n|Cmd-F |find |\n|Cmd-G |findNext |\n|Shift-Cmd-G |findPrev |\n|Cmd-Alt-F |replace |\n|Shift-Cmd-Alt-F |replaceAll |\n|Cmd-[ |indentLess |\n|Cmd-] |indentMore |\n|Cmd-Backspace |delWrappedLineLeft |\n|Cmd-Delete |delWrappedLineRight |\n|Alt-U |undoSelection |\n|Shift-Alt-U |redoSelection |\n|Ctrl-Up |goDocStart |\n|Ctrl-Down |goDocEnd |\n|Ctrl-F |goCharRight |\n|Ctrl-B |goCharLeft |\n|Ctrl-P |goLineUp |\n|Ctrl-N |goLineDown |\n|Alt-F |goWordRight |\n|Alt-B |goWordLeft |\n|Ctrl-A |goLineStart |\n|Ctrl-E |goLineEnd |\n|Ctrl-V |goPageDown |\n|Shift-Ctrl-V |goPageUp |\n|Ctrl-D |delCharAfter |\n|Ctrl-H |delCharBefore |\n|Alt-D |delWordAfter |\n|Alt-Backspace |delWordBefore |\n|Ctrl-K |killLine |\n|Alt-T |transposeChars |\n|Ctrl-O |openLine |\n\n\n"
},
"$:/plugins/tiddlywiki/codemirror/license": {
"title": "$:/plugins/tiddlywiki/codemirror/license",
"text": "\"\"\"\n~CodeMirror, copyright (c) by Marijn Haverbeke and others\nDistributed under an MIT license: http://codemirror.net/LICENSE\n\nCopyright (c) 2004-2007, Jeremy Ruston\nCopyright (c) 2007-2018, UnaMesa Association\nDistributed under an BSD license: https://tiddlywiki.com/#License\n\"\"\"\n"
},
"$:/plugins/tiddlywiki/codemirror/readme": {
"title": "$:/plugins/tiddlywiki/codemirror/readme",
"text": "This plugin provides an enhanced text editor component based on [[CodeMirror|http://codemirror.net]]. The basic configuration is designed to be as lightweight as possible and is just around 235kb of size. Additional features can be installed with ~CodeMirror ~AddOns from the plugin library.\n\n[[Source code|https://github.com/Jermolene/TiddlyWiki5/blob/master/plugins/tiddlywiki/codemirror]]\n\nBased on ~CodeMirror version 5.58.3\n"
},
"$:/core/ui/ControlPanel/Settings/codemirror/cursorBlinkRate": {
"title": "$:/core/ui/ControlPanel/Settings/codemirror/cursorBlinkRate",
"tags": "$:/tags/ControlPanel/Settings/CodeMirror",
"caption": "{{$:/language/codemirror/cursorBlinkRate/hint}}",
"text": "\\define lingo-base() $:/language/codemirror/cursorBlinkRate/\n\n|&lt;$link to=\"$:/config/codemirror/cursorBlinkRate\"&gt;&lt;&lt;lingo hint&gt;&gt;&lt;/$link&gt; |&lt;$edit-text tiddler=\"$:/config/codemirror/cursorBlinkRate\" default=\"\" placeholder=\"cursorBlinkRate\" tag=\"input\"/&gt; |\n"
},
"$:/core/ui/ControlPanel/Settings/codemirror/editorFont": {
"title": "$:/core/ui/ControlPanel/Settings/codemirror/editorFont",
"tags": "$:/tags/ControlPanel/Settings/CodeMirror",
"caption": "{{$:/language/codemirror/editorFont/hint}}",
"text": "\\define lingo-base() $:/language/ThemeTweaks/\n\n|&lt;$link to=\"$:/themes/tiddlywiki/vanilla/settings/editorfontfamily\"&gt;&lt;&lt;lingo Settings/EditorFontFamily&gt;&gt;&lt;/$link&gt; |&lt;$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/settings/editorfontfamily\" default=\"\" tag=\"input\"/&gt; | |\n"
},
"$:/core/ui/ControlPanel/Settings/codemirror/indentUnit": {
"title": "$:/core/ui/ControlPanel/Settings/codemirror/indentUnit",
"tags": "$:/tags/ControlPanel/Settings/CodeMirror",
"caption": "{{$:/language/codemirror/indentUnit/hint}}",
"text": "\\define lingo-base() $:/language/codemirror/indentUnit/\n\n|&lt;$link to=\"$:/config/codemirror/indentUnit\"&gt;&lt;&lt;lingo hint&gt;&gt;&lt;/$link&gt; |&lt;$edit-text tiddler=\"$:/config/codemirror/indentUnit\" default=\"\" placeholder=\"indentUnit\" tag=\"input\"/&gt; |\n"
},
"$:/core/ui/ControlPanel/Settings/codemirror/indentWithTabs": {
"title": "$:/core/ui/ControlPanel/Settings/codemirror/indentWithTabs",
"tags": "$:/tags/ControlPanel/Settings/CodeMirror",
"caption": "{{$:/language/codemirror/indentWithTabs/hint}}",
"text": "\\define lingo-base() $:/language/codemirror/indentWithTabs/\n&lt;&lt;lingo hint&gt;&gt;\n\n&lt;$checkbox tiddler=\"$:/config/codemirror/indentWithTabs\" field=\"text\" checked=\"true\" unchecked=\"false\" default=\"true\"&gt; &lt;$link to=\"$:/config/codemirror/indentWithTabs\"&gt;&lt;&lt;lingo info&gt;&gt;&lt;/$link&gt; &lt;/$checkbox&gt;\n"
},
"$:/core/ui/ControlPanel/Settings/codemirror/keyMap": {
"title": "$:/core/ui/ControlPanel/Settings/codemirror/keyMap",
"tags": "$:/tags/ControlPanel/Settings/CodeMirror",
"caption": "{{$:/language/codemirror/keyMap/hint}}",
"text": "\\define lingo-base() $:/language/codemirror/keyMap\n\n&lt;$link to=\"$:/config/codemirror/keyMap\"&gt;&lt;&lt;lingo hint&gt;&gt;&lt;/$link&gt;\n\n&lt;$select tiddler=\"$:/config/codemirror/keyMap\" default=\"default\"&gt;\n&lt;option value=\"default\"&gt;default&lt;/option&gt;\n&lt;$list filter=\"[all[shadows+tiddlers]module-type[codemirror-keymap]!has[draft.of]get[text]]\"&gt;\n&lt;option value=&lt;&lt;currentTiddler&gt;&gt;&gt;&lt;$transclude&gt;&lt;$text text=&lt;&lt;currentTiddler&gt;&gt;/&gt;&lt;/$transclude&gt;&lt;/option&gt;\n&lt;/$list&gt;\n&lt;/$select&gt;\n\n"
},
"$:/core/ui/ControlPanel/Settings/codemirror/lineNumbers": {
"title": "$:/core/ui/ControlPanel/Settings/codemirror/lineNumbers",
"tags": "$:/tags/ControlPanel/Settings/CodeMirror",
"caption": "{{$:/language/codemirror/lineNumbers/hint}}",
"text": "\\define lingo-base() $:/language/codemirror/lineNumbers/\n&lt;&lt;lingo hint&gt;&gt;\n\n&lt;$checkbox tiddler=\"$:/config/codemirror/lineNumbers\" field=\"text\" checked=\"true\" unchecked=\"false\" default=\"false\"&gt; &lt;$link to=\"$:/config/codemirror/lineNumbers\"&gt;&lt;&lt;lingo info&gt;&gt;&lt;/$link&gt; &lt;/$checkbox&gt;\n\n"
},
"$:/core/ui/ControlPanel/Settings/codemirror/lineWrapping": {
"title": "$:/core/ui/ControlPanel/Settings/codemirror/lineWrapping",
"tags": "$:/tags/ControlPanel/Settings/CodeMirror",
"caption": "{{$:/language/codemirror/lineWrapping/hint}}",
"text": "\\define lingo-base() $:/language/codemirror/lineWrapping/\n&lt;&lt;lingo hint&gt;&gt;\n\n&lt;$checkbox tiddler=\"$:/config/codemirror/lineWrapping\" field=\"text\" checked=\"true\" unchecked=\"false\" default=\"true\"&gt; &lt;$link to=\"$:/config/codemirror/lineWrapping\"&gt;&lt;&lt;lingo info&gt;&gt;&lt;/$link&gt; &lt;/$checkbox&gt;\n\n"
},
"$:/core/ui/ControlPanel/Settings/codemirror/showCursorWhenSelecting": {
"title": "$:/core/ui/ControlPanel/Settings/codemirror/showCursorWhenSelecting",
"tags": "$:/tags/ControlPanel/Settings/CodeMirror",
"caption": "{{$:/language/codemirror/showCursorWhenSelecting/hint}}",
"text": "\\define lingo-base() $:/language/codemirror/showCursorWhenSelecting/\n&lt;&lt;lingo hint&gt;&gt;\n\n&lt;$checkbox tiddler=\"$:/config/codemirror/showCursorWhenSelecting\" field=\"text\" checked=\"true\" unchecked=\"false\" default=\"true\"&gt; &lt;$link to=\"$:/config/codemirror/showCursorWhenSelecting\"&gt;&lt;&lt;lingo info&gt;&gt;&lt;/$link&gt; &lt;/$checkbox&gt;\n\n"
},
"$:/core/ui/ControlPanel/Settings/codemirror/smartIndent": {
"title": "$:/core/ui/ControlPanel/Settings/codemirror/smartIndent",
"tags": "$:/tags/ControlPanel/Settings/CodeMirror",
"caption": "{{$:/language/codemirror/smartIndent/hint}}",
"text": "\\define lingo-base() $:/language/codemirror/smartIndent/\n&lt;&lt;lingo hint&gt;&gt;\n\n&lt;$checkbox tiddler=\"$:/config/codemirror/smartIndent\" field=\"text\" checked=\"true\" unchecked=\"false\" default=\"true\"&gt; &lt;$link to=\"$:/config/codemirror/smartIndent\"&gt;&lt;&lt;lingo info&gt;&gt;&lt;/$link&gt; &lt;/$checkbox&gt;\n"
},
"$:/core/ui/ControlPanel/Settings/codemirror/styleActiveLine": {
"title": "$:/core/ui/ControlPanel/Settings/codemirror/styleActiveLine",
"tags": "$:/tags/ControlPanel/Settings/CodeMirror",
"caption": "{{$:/language/codemirror/styleActiveLine/hint}}",
"text": "\\define lingo-base() $:/language/codemirror/styleActiveLine/\n&lt;&lt;lingo hint&gt;&gt;\n\n&lt;$checkbox tiddler=\"$:/config/codemirror/styleActiveLine\" field=\"text\" checked=\"true\" unchecked=\"false\" default=\"false\"&gt; &lt;$link to=\"$:/config/codemirror/styleActiveLine\"&gt;&lt;&lt;lingo info&gt;&gt;&lt;/$link&gt; &lt;/$checkbox&gt;\n\n"
},
"$:/core/ui/ControlPanel/Settings/codemirror/tabSize": {
"title": "$:/core/ui/ControlPanel/Settings/codemirror/tabSize",
"tags": "$:/tags/ControlPanel/Settings/CodeMirror",
"caption": "{{$:/language/codemirror/tabSize/hint}}",
"text": "\\define lingo-base() $:/language/codemirror/tabSize/\n\n|&lt;$link to=\"$:/config/codemirror/tabSize\"&gt;&lt;&lt;lingo hint&gt;&gt;&lt;/$link&gt; |&lt;$edit-text tiddler=\"$:/config/codemirror/tabSize\" default=\"\" placeholder=\"tabSize\" tag=\"input\"/&gt; |\n"
},
"$:/core/ui/ControlPanel/Settings/codemirror/theme": {
"title": "$:/core/ui/ControlPanel/Settings/codemirror/theme",
"tags": "$:/tags/ControlPanel/Settings/CodeMirror",
"caption": "{{$:/language/codemirror/theme/hint}}",
"text": "\\define lingo-base() $:/language/codemirror/\n\n&lt;$link to=\"$:/config/codemirror/theme\"&gt;&lt;&lt;lingo hint&gt;&gt;&lt;/$link&gt;\n\n&lt;$select tiddler=\"$:/config/codemirror/theme\" default=\"default\"&gt;\n&lt;option value=\"default\"&gt;default&lt;/option&gt;\n&lt;$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Stylesheet]module-type[codemirror-theme]!has[draft.of]get[name]]\"&gt;\n&lt;option value=&lt;&lt;currentTiddler&gt;&gt;&gt;&lt;$transclude field=\"name\"&gt;&lt;$text text=&lt;&lt;currentTiddler&gt;&gt;/&gt;&lt;/$transclude&gt;&lt;/option&gt;\n&lt;/$list&gt;\n&lt;/$select&gt;\n\n//see the [[CodeMirror Usage|$:/plugins/tiddlywiki/codemirror/usage]] how to add themes//\n"
},
"$:/plugins/tiddlywiki/codemirror/styles": {
"title": "$:/plugins/tiddlywiki/codemirror/styles",
"tags": "[[$:/tags/Stylesheet]]",
"module-type": "codemirror-theme",
"name": "tiddlywiki",
"text": "\\define set-fat-cursor-background-css(colour,colourA,colourB)\n&lt;$set name=\"backgroundColour\" value=&lt;&lt;contrastcolour target:\"\"\"$colour$\"\"\" fallbackTarget:\"\"\"\"\"\" colourA:\"\"\"$colourA$\"\"\" colourB:\"\"\"$colourB$\"\"\"&gt;&gt;&gt;\n.cm-s-tiddlywiki.cm-fat-cursor .CodeMirror-cursor { background: &lt;&lt;backgroundColour&gt;&gt;; }\n.cm-s-tiddlywiki .cm-animate-fat-cursor { background-color: &lt;&lt;backgroundColour&gt;&gt;; }\n&lt;/$set&gt;\n\\end\n\\define set-fat-cursor-background-colours(palette)\n&lt;$macrocall $name=\"set-fat-cursor-background-css\" colour={{$palette$##foreground}} colourA=\"#77ee77\" colourB=\"#586e75\"/&gt;\n\\end\n\\define set-fat-cursor-background()\n&lt;$macrocall $name=\"set-fat-cursor-background-colours\" palette={{$:/palette}}/&gt;\n\\end\n\\define set-selection-background-css(colour,colourA,colourB,tiddlerEditorBackground)\n&lt;$wikify name=\"tiddlerEditorBackground\" text={{{ [[$tiddlerEditorBackground$]lowercase[]] }}}&gt;\n&lt;$set name=\"backgroundColour\" value=&lt;&lt;contrastcolour target:\"\"\"$colour$\"\"\" fallbackTarget:\"\"\"\"\"\" colourA:\"\"\"$colourA$\"\"\" colourB:\"\"\"$colourB$\"\"\"&gt;&gt;&gt;\n&lt;$set name=\"backgroundColour\" value={{{ [&lt;backgroundColour&gt;lowercase[]match&lt;tiddlerEditorBackground&gt;then[]] ~[&lt;backgroundColour&gt;] }}}&gt;\n.cm-s-tiddlywiki div.CodeMirror-selected { background: &lt;&lt;backgroundColour&gt;&gt;; color: &lt;&lt;colour foreground&gt;&gt;; }\n.cm-s-tiddlywiki.CodeMirror ::selection { background: &lt;&lt;backgroundColour&gt;&gt;; color: &lt;&lt;colour foreground&gt;&gt;; }\n.cm-s-tiddlywiki .CodeMirror-line::-moz-selection, .CodeMirror-line &gt; span::-moz-selection, .CodeMirror-line &gt; span &gt; span::-moz-selection { background: &lt;&lt;backgroundColour&gt;&gt;; color: &lt;&lt;colour foreground&gt;&gt;; }\n.cm-s-tiddlywiki .CodeMirror-line::selection, .CodeMirror-line &gt; span::selection, .CodeMirror-line &gt; span &gt; span::selection { background: &lt;&lt;backgroundColour&gt;&gt;; color: &lt;&lt;colour foreground&gt;&gt;; }\n&lt;/$set&gt;\n&lt;/$set&gt;\n&lt;/$wikify&gt;\n\\end\n\\define set-selection-background-colours(palette)\n&lt;$macrocall $name=\"set-selection-background-css\" colour={{$palette$##foreground}} colourA={{{ [{$palette$##selection-background}!match[]!prefix[&lt;&lt;]!suffix[&gt;&gt;]] ~#073642 }}} colourB={{{ [{$palette$##selection-background}!match[]!prefix[&lt;&lt;]!suffix[&gt;&gt;]] ~#eee8d5 }}} tiddlerEditorBackground={{$palette$##tiddler-editor-background}}/&gt;\n\\end\n\\define set-selection-background()\n&lt;$macrocall $name=\"set-selection-background-colours\" palette={{$:/palette}}/&gt;\n\\end\n\n\\rules only filteredtranscludeinline transcludeinline macrodef macrocallinline macrocallblock\n\n/* Make the editor resize to fit its content */\n\n.CodeMirror {\n\theight: auto;\n\tborder: 1px solid &lt;&lt;colour tiddler-editor-border&gt;&gt;;\n\tline-height: 1.5;\n\tfont-family: {{$:/themes/tiddlywiki/vanilla/settings/editorfontfamily}};\n\tfont-size: {{$:/themes/tiddlywiki/vanilla/metrics/bodyfontsize}};\n}\n\n.CodeMirror-scroll {\n\toverflow-x: auto;\n\toverflow-y: hidden;\n}\n\n.cm-s-tiddlywiki {\n color-profile: sRGB;\n rendering-intent: auto;\n}\n\n.cm-s-tiddlywiki.CodeMirror, .cm-s-tiddlywiki .CodeMirror-gutters { background-color: &lt;&lt;colour tiddler-editor-background&gt;&gt;; color: &lt;&lt;colour foreground&gt;&gt;; }\n.cm-s-tiddlywiki .CodeMirror-gutters {background: &lt;&lt;colour tiddler-editor-background&gt;&gt;; border-right: 1px solid &lt;&lt;colour tiddler-editor-border&gt;&gt;;}\n.cm-s-tiddlywiki .CodeMirror-linenumber {color: &lt;&lt;colour foreground&gt;&gt;;}\n.cm-s-tiddlywiki .CodeMirror-cursor { border-left: 2px solid &lt;&lt;colour foreground&gt;&gt;; }\n.cm-s-tiddlywiki span.cm-comment { color: #586e75; font-style:italic; font-weight:normal; }\n.cm-s-tiddlywiki .CodeMirror-activeline-background, .cm-s-tiddlywiki .CodeMirror-activeline-gutter .CodeMirror-linenumber { background: rgba(127,127,127,0.2); }\n.cm-s-tiddlywiki
},
"$:/core/ui/ControlPanel/Settings/CodeMirror": {
"title": "$:/core/ui/ControlPanel/Settings/CodeMirror",
"tags": "$:/tags/ControlPanel/SettingsTab",
"caption": "CodeMirror",
"list-after": "$:/core/ui/ControlPanel/Settings/TiddlyWiki",
"text": "\\define lingo-base() $:/language/codemirror/controlPanel/\n\n&lt;&lt;lingo hint&gt;&gt;\n\n&lt;$link to=\"$:/plugins/tiddlywiki/codemirror/usage\"&gt;&lt;&lt;lingo usage&gt;&gt;&lt;/$link&gt;\n\n&lt;$link to=\"$:/plugins/tiddlywiki/codemirror/keyboard\"&gt;&lt;&lt;lingo keyboard&gt;&gt;&lt;/$link&gt;\n\n&lt;$list filter=\"[all[shadows+tiddlers]tag[$:/tags/ControlPanel/Settings/CodeMirror]]\"&gt;\n\n&lt;div style=\"border-top:1px solid #eee;\"&gt;\n\n!! &lt;$link&gt;&lt;$transclude field=\"caption\"/&gt;&lt;/$link&gt;\n\n&lt;$transclude/&gt;\n\n&lt;/div&gt;\n\n&lt;/$list&gt;\n"
},
"$:/core/ui/ControlPanel/Settings": {
"title": "$:/core/ui/ControlPanel/Settings",
"tags": "$:/tags/ControlPanel",
"caption": "{{$:/language/ControlPanel/Settings/Caption}}",
"text": "&lt;div class=\"tc-control-panel\"&gt;\n&lt;$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/ControlPanel/SettingsTab]!has[draft.of]]\" default=\"$:/core/ui/ControlPanel/Settings/TiddlyWiki\" explicitState=\"$:/state/tab--697582678\"/&gt;\n&lt;/div&gt;\n"
},
"$:/core/ui/ControlPanel/Settings/TiddlyWiki": {
"title": "$:/core/ui/ControlPanel/Settings/TiddlyWiki",
"tags": "$:/tags/ControlPanel/SettingsTab",
"caption": "TiddlyWiki",
"text": "\\define lingo-base() $:/language/ControlPanel/Settings/\n\n&lt;&lt;lingo Hint&gt;&gt;\n\n&lt;$list filter=\"[all[shadows+tiddlers]tag[$:/tags/ControlPanel/Settings]]\"&gt;\n\n&lt;div style=\"border-top:1px solid #eee;\"&gt;\n\n!! &lt;$link&gt;&lt;$transclude field=\"caption\"/&gt;&lt;/$link&gt;\n\n&lt;$transclude/&gt;\n\n&lt;/div&gt;\n\n&lt;/$list&gt;\n"
},
"$:/plugins/tiddlywiki/codemirror/usage": {
"title": "$:/plugins/tiddlywiki/codemirror/usage",
"text": "! Configuration\n\nConfiguration for the ~CodeMirror text-editor can be done from within the CodeMirror Settings Tab in the [[ControlPanel|$:/ControlPanel]] (Settings - ~CodeMirror)\n\n\n!!Setting a different Theme\n\n~CodeMirror themes are available in the [ext[official GitHub repository|https://github.com/codemirror/CodeMirror/tree/master/theme]]\n\nMore themes can be found at https://github.com/FarhadG/code-mirror-themes/tree/master/themes and previewed [ext[here|http://farhadg.github.io/code-mirror-themes/]]\n\n\nTo add a theme to your wiki, follow these four steps:\n\n* choose one of the CSS files and copy its content to a new tiddler\n* remove all comments from the top and tag the tiddler with &lt;&lt;tag-pill \"$:/tags/Stylesheet\"&gt;&gt;\n* add a field \"module-type\" with the value \"codemirror-theme\". add a field \"name\" with the exact ''name'' of the theme as value\n* save the tiddler and go to the Settings tab in $:/ControlPanel - look for the \"theme\" dropdown to select your newly added theme\n\n\n!!Line Numbers\n\nTo show or hide the Line Numbers at the left, go to ~ControlPanel - Settings - ~CodeMirror and look for the \"Line Numbers\" checkbox\n\n\n!!Line Wrapping\n\nControls if long lines get visually wrapped to a new line if they're too long to fit the editor width or if the editor should scroll horizontally\n\nTo change the line-wrapping behaviour, go to ~ControlPanel - Settings - ~CodeMirror and look for the \"Line Wrapping\" checkbox\n\n\n!!Show Cursor when selecting\n\nDefines whether the Mouse cursor should be visually shown or hidden when making a text-selection\n\nTo change the show-cursor-when-selecting behaviour, go to ~ControlPanel - Settings - ~CodeMirror and look for the \"Show cursor when selecting\" checkbox\n\n\n!!~CodeMirror Font Family\n\nThe Font-Family used within the ~CodeMirror text-editor defaults to \"monospace\" which will choose your configured monospace system-font\n\nThat setting can be overridden entering one or more Font-Families in the \"Font Family\" input field at ~ControlPanel - Settings - ~CodeMirror\n\n* The entries must be separated by semicolons ','\n* Font-Family Names that contain spaces must be quoted like \"My Font\"\n* If a list of Font-Families is specified, the last Font-Family found on the user-system gets used, non-existing fonts get ignored\n* If none of the specified Font-Families is available, ~CodeMirror uses the default \"monospace\"\n\n\n!!\"Hidden\" Settings:\n\n!!!Cursor Blink Rate\n\nThe cursor blink-rate defines how fast (in milliseconds) the cursor blinks inside the textarea\n\nYou can change it by editing $:/config/codemirror/cursorBlinkRate\n\"0\" disables blinking\n\n!!!Tabsize\n\nThe Tabsize defines the width of a tab character. Default is 4.\n\nYou can change it by editing $:/config/codemirror/tabSize\n\n!!!Indent Unit\n\nNot enabled for vnd.tiddlywiki and x-tiddlywiki\n\nDefines how many spaces a text-block should be indented. Defaults to 2.\n\nYou can change it by editing $:/config/codemirror/indentUnit\n\n"
}
}
}</pre>
</div>
<div dependents="$:/plugins/tiddlywiki/codemirror-mode-css" description="Autocompletion for CodeMirror" list="readme" name="CodeMirror Autocomplete" parent-plugin="$:/plugins/tiddlywiki/codemirror" plugin-type="plugin" title="$:/plugins/tiddlywiki/codemirror-autocomplete" type="application/json" version="5.1.23">
<pre>{
"tiddlers": {
"$:/config/codemirror/autocomplete": {
"title": "$:/config/codemirror/autocomplete",
"extend": "extraKeys",
"type": "json",
"text": "{\n\t\"Ctrl-Space\": \"autocomplete\"\n}"
},
"$:/plugins/tiddlywiki/codemirror/addon/hint/anyword-hint.js": {
"text": "// CodeMirror, copyright (c) by Marijn Haverbeke and others\n// Distributed under an MIT license: https://codemirror.net/LICENSE\n!function(e){\"object\"==typeof exports&amp;&amp;\"object\"==typeof module?e(require(\"../../lib/codemirror\")):\"function\"==typeof define&amp;&amp;define.amd?define([\"../../lib/codemirror\"],e):e(CodeMirror)}(function(y){\"use strict\";var b=/[\\w$]+/;y.registerHelper(\"hint\",\"anyword\",function(e,r){for(var t=r&amp;&amp;r.word||b,o=r&amp;&amp;r.range||500,i=e.getCursor(),n=e.getLine(i.line),f=i.ch,s=f;s&amp;&amp;t.test(n.charAt(s-1));)--s;for(var a=s!=f&amp;&amp;n.slice(s,f),c=r&amp;&amp;r.list||[],l={},d=new RegExp(t.source,\"g\"),u=-1;u&lt;=1;u+=2)for(var p=i.line,g=Math.min(Math.max(p+u*o,e.firstLine()),e.lastLine())+u;p!=g;p+=u)for(var h,m=e.getLine(p);h=d.exec(m);)p==i.line&amp;&amp;h[0]===a||a&amp;&amp;0!=h[0].lastIndexOf(a,0)||Object.prototype.hasOwnProperty.call(l,h[0])||(l[h[0]]=!0,c.push(h[0]));return{list:c,from:y.Pos(i.line,s),to:y.Pos(i.line,f)}})});\n",
"type": "application/javascript",
"title": "$:/plugins/tiddlywiki/codemirror/addon/hint/anyword-hint.js",
"module-type": "codemirror"
},
"$:/plugins/tiddlywiki/codemirror/addon/hint/css-hint.js": {
"text": "// CodeMirror, copyright (c) by Marijn Haverbeke and others\n// Distributed under an MIT license: https://codemirror.net/LICENSE\n!function(e){\"object\"==typeof exports&amp;&amp;\"object\"==typeof module?e(require(\"../../lib/codemirror\"),require(\"../../mode/css/css\")):\"function\"==typeof define&amp;&amp;define.amd?define([\"../../lib/codemirror\",\"../../mode/css/css\"],e):e(CodeMirror)}(function(f){\"use strict\";var p={active:1,after:1,before:1,checked:1,default:1,disabled:1,empty:1,enabled:1,\"first-child\":1,\"first-letter\":1,\"first-line\":1,\"first-of-type\":1,focus:1,hover:1,\"in-range\":1,indeterminate:1,invalid:1,lang:1,\"last-child\":1,\"last-of-type\":1,link:1,not:1,\"nth-child\":1,\"nth-last-child\":1,\"nth-last-of-type\":1,\"nth-of-type\":1,\"only-of-type\":1,\"only-child\":1,optional:1,\"out-of-range\":1,placeholder:1,\"read-only\":1,\"read-write\":1,required:1,root:1,selection:1,target:1,valid:1,visited:1};f.registerHelper(\"hint\",\"css\",function(e){var t=e.getCursor(),r=e.getTokenAt(t),o=f.innerMode(e.getMode(),r.state);if(\"css\"==o.mode.name){if(\"keyword\"==r.type&amp;&amp;0==\"!important\".indexOf(r.string))return{list:[\"!important\"],from:f.Pos(t.line,r.start),to:f.Pos(t.line,r.end)};var i=r.start,s=t.ch,n=r.string.slice(0,s-i);/[^\\w$_-]/.test(n)&amp;&amp;(n=\"\",i=s=t.ch);var a=f.resolveMode(\"text/css\"),d=[],l=o.state.state;return\"pseudo\"==l||\"variable-3\"==r.type?c(p):\"block\"==l||\"maybeprop\"==l?c(a.propertyKeywords):\"prop\"==l||\"parens\"==l||\"at\"==l||\"params\"==l?(c(a.valueKeywords),c(a.colorKeywords)):\"media\"!=l&amp;&amp;\"media_parens\"!=l||(c(a.mediaTypes),c(a.mediaFeatures)),d.length?{list:d,from:f.Pos(t.line,i),to:f.Pos(t.line,s)}:void 0}function c(e){for(var t in e)n&amp;&amp;0!=t.lastIndexOf(n,0)||d.push(t)}})});\n",
"type": "application/javascript",
"title": "$:/plugins/tiddlywiki/codemirror/addon/hint/css-hint.js",
"module-type": "codemirror"
},
"$:/plugins/tiddlywiki/codemirror/addon/hint/html-hint.js": {
"text": "// CodeMirror, copyright (c) by Marijn Haverbeke and others\n// Distributed under an MIT license: https://codemirror.net/LICENSE\n!function(l){\"object\"==typeof exports&amp;&amp;\"object\"==typeof module?l(require(\"../../lib/codemirror\"),require(\"./xml-hint\")):\"function\"==typeof define&amp;&amp;define.amd?define([\"../../lib/codemirror\",\"./xml-hint\"],l):l(CodeMirror)}(function(n){\"use strict\";var l=\"ab aa af ak sq am ar an hy as av ae ay az bm ba eu be bn bh bi bs br bg my ca ch ce ny zh cv kw co cr hr cs da dv nl dz en eo et ee fo fj fi fr ff gl ka de el gn gu ht ha he hz hi ho hu ia id ie ga ig ik io is it iu ja jv kl kn kr ks kk km ki rw ky kv kg ko ku kj la lb lg li ln lo lt lu lv gv mk mg ms ml mt mi mr mh mn na nv nb nd ne ng nn no ii nr oc oj cu om or os pa pi fa pl ps pt qu rm rn ro ru sa sc sd se sm sg sr gd sn si sk sl so st es su sw ss sv ta te tg th ti bo tk tl tn to tr ts tt tw ty ug uk ur uz ve vi vo wa cy wo fy xh yi yo za zu\".split(\" \"),t=[\"_blank\",\"_self\",\"_top\",\"_parent\"],e=[\"ascii\",\"utf-8\",\"utf-16\",\"latin1\",\"latin1\"],a=[\"get\",\"post\",\"put\",\"delete\"],r=[\"application/x-www-form-urlencoded\",\"multipart/form-data\",\"text/plain\"],o=[\"all\",\"screen\",\"print\",\"embossed\",\"braille\",\"handheld\",\"print\",\"projection\",\"screen\",\"tty\",\"tv\",\"speech\",\"3d-glasses\",\"resolution [&gt;][&lt;][=] [X]\",\"device-aspect-ratio: X/Y\",\"orientation:portrait\",\"orientation:landscape\",\"device-height: [X]\",\"device-width: [X]\"],s={attrs:{}},u={a:{attrs:{href:null,ping:null,type:null,media:o,target:t,hreflang:l}},abbr:s,acronym:s,address:s,applet:s,area:{attrs:{alt:null,coords:null,href:null,target:null,ping:null,media:o,hreflang:l,type:null,shape:[\"default\",\"rect\",\"circle\",\"poly\"]}},article:s,aside:s,audio:{attrs:{src:null,mediagroup:null,crossorigin:[\"anonymous\",\"use-credentials\"],preload:[\"none\",\"metadata\",\"auto\"],autoplay:[\"\",\"autoplay\"],loop:[\"\",\"loop\"],controls:[\"\",\"controls\"]}},b:s,base:{attrs:{href:null,target:t}},basefont:s,bdi:s,bdo:s,big:s,blockquote:{attrs:{cite:null}},body:s,br:s,button:{attrs:{form:null,formaction:null,name:null,value:null,autofocus:[\"\",\"autofocus\"],disabled:[\"\",\"autofocus\"],formenctype:r,formmethod:a,formnovalidate:[\"\",\"novalidate\"],formtarget:t,type:[\"submit\",\"reset\",\"button\"]}},canvas:{attrs:{width:null,height:null}},caption:s,center:s,cite:s,code:s,col:{attrs:{span:null}},colgroup:{attrs:{span:null}},command:{attrs:{type:[\"command\",\"checkbox\",\"radio\"],label:null,icon:null,radiogroup:null,command:null,title:null,disabled:[\"\",\"disabled\"],checked:[\"\",\"checked\"]}},data:{attrs:{value:null}},datagrid:{attrs:{disabled:[\"\",\"disabled\"],multiple:[\"\",\"multiple\"]}},datalist:{attrs:{data:null}},dd:s,del:{attrs:{cite:null,datetime:null}},details:{attrs:{open:[\"\",\"open\"]}},dfn:s,dir:s,div:s,dl:s,dt:s,em:s,embed:{attrs:{src:null,type:null,width:null,height:null}},eventsource:{attrs:{src:null}},fieldset:{attrs:{disabled:[\"\",\"disabled\"],form:null,name:null}},figcaption:s,figure:s,font:s,footer:s,form:{attrs:{action:null,name:null,\"accept-charset\":e,autocomplete:[\"on\",\"off\"],enctype:r,method:a,novalidate:[\"\",\"novalidate\"],target:t}},frame:s,frameset:s,h1:s,h2:s,h3:s,h4:s,h5:s,h6:s,head:{attrs:{},children:[\"title\",\"base\",\"link\",\"style\",\"meta\",\"script\",\"noscript\",\"command\"]},header:s,hgroup:s,hr:s,html:{attrs:{manifest:null},children:[\"head\",\"body\"]},i:s,iframe:{attrs:{src:null,srcdoc:null,name:null,width:null,height:null,sandbox:[\"allow-top-navigation\",\"allow-same-origin\",\"allow-forms\",\"allow-scripts\"],seamless:[\"\",\"seamless\"]}},img:{attrs:{alt:null,src:null,ismap:null,usemap:null,width:null,height:null,crossorigin:[\"anonymous\",\"use-credentials\"]}},input:{attrs:{alt:null,dirname:null,form:null,formaction:null,height:null,list:null,max:null,maxlength:null,min:null,name:null,pattern:null,placeholder:null,size:null,src:null,step:null,value:null,width:null,accept:[\"audio/*\",\"video/*\",\"image/*\"],autoc
"type": "application/javascript",
"title": "$:/plugins/tiddlywiki/codemirror/addon/hint/html-hint.js",
"module-type": "codemirror"
},
"$:/plugins/tiddlywiki/codemirror/addon/hint/javascript-hint.js": {
"text": "// CodeMirror, copyright (c) by Marijn Haverbeke and others\n// Distributed under an MIT license: https://codemirror.net/LICENSE\n!function(t){\"object\"==typeof exports&amp;&amp;\"object\"==typeof module?t(require(\"../../lib/codemirror\")):\"function\"==typeof define&amp;&amp;define.amd?define([\"../../lib/codemirror\"],t):t(CodeMirror)}(function(f){var c=f.Pos;function g(t,e){for(var r=0,n=t.length;r&lt;n;++r)e(t[r])}function r(t,e,r,n){var i=t.getCursor(),o=r(t,i);if(!/\\b(?:string|comment)\\b/.test(o.type)){var s=f.innerMode(t.getMode(),o.state);if(\"json\"!==s.mode.helperType){o.state=s.state,/^[\\w$_]*$/.test(o.string)?o.end&gt;i.ch&amp;&amp;(o.end=i.ch,o.string=o.string.slice(0,i.ch-o.start)):o={start:i.ch,end:i.ch,string:\"\",state:o.state,type:\".\"==o.string?\"property\":null};for(var a=o;\"property\"==a.type;){if(\".\"!=(a=r(t,c(i.line,a.start))).string)return;a=r(t,c(i.line,a.start));var l=l||[];l.push(a)}return{list:function(t,e,r,n){var i=[],o=t.string,s=n&amp;&amp;n.globalScope||window;function a(t){0!=t.lastIndexOf(o,0)||function(t,e){if(Array.prototype.indexOf)return-1!=t.indexOf(e);for(var r=t.length;r--;)if(t[r]===e)return 1}(i,t)||i.push(t)}function l(t){\"string\"==typeof t?g(y,a):t instanceof Array?g(h,a):t instanceof Function&amp;&amp;g(v,a),function(t,e){if(Object.getOwnPropertyNames&amp;&amp;Object.getPrototypeOf)for(var r=t;r;r=Object.getPrototypeOf(r))Object.getOwnPropertyNames(r).forEach(e);else for(var n in t)e(n)}(t,a)}if(e&amp;&amp;e.length){var f,c=e.pop();for(c.type&amp;&amp;0===c.type.indexOf(\"variable\")?(n&amp;&amp;n.additionalContext&amp;&amp;(f=n.additionalContext[c.string]),n&amp;&amp;!1===n.useGlobalScope||(f=f||s[c.string])):\"string\"==c.type?f=\"\":\"atom\"==c.type?f=1:\"function\"==c.type&amp;&amp;(null==s.jQuery||\"$\"!=c.string&amp;&amp;\"jQuery\"!=c.string||\"function\"!=typeof s.jQuery?null!=s._&amp;&amp;\"_\"==c.string&amp;&amp;\"function\"==typeof s._&amp;&amp;(f=s._()):f=s.jQuery());null!=f&amp;&amp;e.length;)f=f[e.pop().string];null!=f&amp;&amp;l(f)}else{for(var p=t.state.localVars;p;p=p.next)a(p.name);for(var u=t.state.context;u;u=u.prev)for(p=u.vars;p;p=p.next)a(p.name);for(p=t.state.globalVars;p;p=p.next)a(p.name);if(n&amp;&amp;null!=n.additionalContext)for(var d in n.additionalContext)a(d);n&amp;&amp;!1===n.useGlobalScope||l(s),g(r,a)}return i}(o,l,e,n),from:c(i.line,o.start),to:c(i.line,o.end)}}}}function n(t,e){var r=t.getTokenAt(e);return e.ch==r.start+1&amp;&amp;\".\"==r.string.charAt(0)?(r.end=r.start,r.string=\".\",r.type=\"property\"):/^\\.[\\w$_]*$/.test(r.string)&amp;&amp;(r.type=\"property\",r.start++,r.string=r.string.replace(/\\./,\"\")),r}f.registerHelper(\"hint\",\"javascript\",function(t,e){return r(t,i,function(t,e){return t.getTokenAt(e)},e)}),f.registerHelper(\"hint\",\"coffeescript\",function(t,e){return r(t,o,n,e)});var y=\"charAt charCodeAt indexOf lastIndexOf substring substr slice trim trimLeft trimRight toUpperCase toLowerCase split concat match replace search\".split(\" \"),h=\"length concat join splice push pop shift unshift slice reverse sort indexOf lastIndexOf every some filter forEach map reduce reduceRight \".split(\" \"),v=\"prototype apply call bind\".split(\" \"),i=\"break case catch class const continue debugger default delete do else export extends false finally for function if in import instanceof new null return super switch this throw true try typeof var void while with yield\".split(\" \"),o=\"and break catch class continue delete do else extends false finally for if in instanceof isnt new no not null of off on or return switch then throw true try typeof until void while with yes\".split(\" \")});\n",
"type": "application/javascript",
"title": "$:/plugins/tiddlywiki/codemirror/addon/hint/javascript-hint.js",
"module-type": "codemirror"
},
"$:/plugins/tiddlywiki/codemirror/addon/hint/show-hint.js": {
"text": "// CodeMirror, copyright (c) by Marijn Haverbeke and others\n// Distributed under an MIT license: https://codemirror.net/LICENSE\n!function(t){\"object\"==typeof exports&amp;&amp;\"object\"==typeof module?t(require(\"../../lib/codemirror\")):\"function\"==typeof define&amp;&amp;define.amd?define([\"../../lib/codemirror\"],t):t(CodeMirror)}(function(W){\"use strict\";var I=\"CodeMirror-hint-active\";function o(t,i){this.cm=t,this.options=i,this.widget=null,this.debounce=0,this.tick=0,this.startPos=this.cm.getCursor(\"start\"),this.startLen=this.cm.getLine(this.startPos.line).length-this.cm.getSelection().length;var e=this;t.on(\"cursorActivity\",this.activityFunc=function(){e.cursorActivity()})}W.showHint=function(t,i,e){if(!i)return t.showHint(e);e&amp;&amp;e.async&amp;&amp;(i.async=!0);var n={hint:i};if(e)for(var o in e)n[o]=e[o];return t.showHint(n)},W.defineExtension(\"showHint\",function(t){t=function(t,i,e){var n=t.options.hintOptions,o={};for(var s in l)o[s]=l[s];if(n)for(var s in n)void 0!==n[s]&amp;&amp;(o[s]=n[s]);if(e)for(var s in e)void 0!==e[s]&amp;&amp;(o[s]=e[s]);o.hint.resolve&amp;&amp;(o.hint=o.hint.resolve(t,i));return o}(this,this.getCursor(\"start\"),t);var i=this.listSelections();if(!(1&lt;i.length)){if(this.somethingSelected()){if(!t.hint.supportsSelection)return;for(var e=0;e&lt;i.length;e++)if(i[e].head.line!=i[e].anchor.line)return}this.state.completionActive&amp;&amp;this.state.completionActive.close();var n=this.state.completionActive=new o(this,t);n.options.hint&amp;&amp;(W.signal(this,\"startCompletion\",this),n.update(!0))}}),W.defineExtension(\"closeHint\",function(){this.state.completionActive&amp;&amp;this.state.completionActive.close()});var s=window.requestAnimationFrame||function(t){return setTimeout(t,1e3/60)},c=window.cancelAnimationFrame||clearTimeout;function B(t){return\"string\"==typeof t?t:t.text}function K(t,i){for(;i&amp;&amp;i!=t;){if(\"LI\"===i.nodeName.toUpperCase()&amp;&amp;i.parentNode==t)return i;i=i.parentNode}}function n(o,t){this.completion=o,this.data=t,this.picked=!1;var e=this,s=o.cm,c=s.getInputField().ownerDocument,r=c.defaultView||c.parentWindow,l=this.hints=c.createElement(\"ul\"),i=o.cm.options.theme;l.className=\"CodeMirror-hints \"+i,this.selectedHint=t.selectedHint||0;for(var n=t.list,h=0;h&lt;n.length;++h){var a=l.appendChild(c.createElement(\"li\")),u=n[h],f=\"CodeMirror-hint\"+(h!=this.selectedHint?\"\":\" \"+I);null!=u.className&amp;&amp;(f=u.className+\" \"+f),a.className=f,u.render?u.render(a,t,u):a.appendChild(c.createTextNode(u.displayText||B(u))),a.hintId=h}var p,d,m,g=o.options.container||c.body,v=s.cursorCoords(o.options.alignWithWord?t.from:null),y=v.left,w=v.bottom,H=!0,C=0,b=0;g!==c.body&amp;&amp;(d=(p=-1!==[\"absolute\",\"relative\",\"fixed\"].indexOf(r.getComputedStyle(g).position)?g:g.offsetParent).getBoundingClientRect(),m=c.body.getBoundingClientRect(),C=d.left-m.left-p.scrollLeft,b=d.top-m.top-p.scrollTop),l.style.left=y-C+\"px\",l.style.top=w-b+\"px\";var k=r.innerWidth||Math.max(c.body.offsetWidth,c.documentElement.offsetWidth),A=r.innerHeight||Math.max(c.body.offsetHeight,c.documentElement.offsetHeight);g.appendChild(l);var x,T,S=l.getBoundingClientRect(),M=S.bottom-A,N=l.scrollHeight&gt;l.clientHeight+1,F=s.getScrollInfo();0&lt;M&amp;&amp;(x=S.bottom-S.top,0&lt;v.top-(v.bottom-S.top)-x?(l.style.top=(w=v.top-x-b)+\"px\",H=!1):A&lt;x&amp;&amp;(l.style.height=A-5+\"px\",l.style.top=(w=v.bottom-S.top-b)+\"px\",T=s.getCursor(),t.from.ch!=T.ch&amp;&amp;(v=s.cursorCoords(T),l.style.left=(y=v.left-C)+\"px\",S=l.getBoundingClientRect())));var E,O=S.right-k;if(0&lt;O&amp;&amp;(S.right-S.left&gt;k&amp;&amp;(l.style.width=k-5+\"px\",O-=S.right-S.left-k),l.style.left=(y=v.left-O-C)+\"px\"),N)for(var P=l.firstChild;P;P=P.nextSibling)P.style.paddingRight=s.display.nativeBarWidth+\"px\";return s.addKeyMap(this.keyMap=function(t,n){var o={Up:function(){n.moveFocus(-1)},Down:function(){n.moveFocus(1)},PageUp:function(){n.moveFocus(1-n.menuSize(),!0)},PageDown:function(){n.moveFocus(n.menuSize()-1,!0)},Home:function(){n.setFocus(0)
"type": "application/javascript",
"title": "$:/plugins/tiddlywiki/codemirror/addon/hint/show-hint.js",
"module-type": "codemirror"
},
"$:/plugins/tiddlywiki/codemirror/addon/hint/show-hint.css": {
"text": ".CodeMirror-hints {\n position: absolute;\n z-index: 10;\n overflow: hidden;\n list-style: none;\n\n margin: 0;\n padding: 2px;\n\n -webkit-box-shadow: 2px 3px 5px rgba(0,0,0,.2);\n -moz-box-shadow: 2px 3px 5px rgba(0,0,0,.2);\n box-shadow: 2px 3px 5px rgba(0,0,0,.2);\n border-radius: 3px;\n border: 1px solid silver;\n\n background: white;\n font-size: 90%;\n font-family: monospace;\n\n max-height: 20em;\n overflow-y: auto;\n}\n\n.CodeMirror-hint {\n margin: 0;\n padding: 0 4px;\n border-radius: 2px;\n white-space: pre;\n color: black;\n cursor: pointer;\n}\n\nli.CodeMirror-hint-active {\n background: #08f;\n color: white;\n}\n",
"type": "text/css",
"title": "$:/plugins/tiddlywiki/codemirror/addon/hint/show-hint.css",
"tags": "[[$:/tags/Stylesheet]]"
},
"$:/plugins/tiddlywiki/codemirror/addon/hint/xml-hint.js": {
"text": "// CodeMirror, copyright (c) by Marijn Haverbeke and others\n// Distributed under an MIT license: https://codemirror.net/LICENSE\n!function(t){\"object\"==typeof exports&amp;&amp;\"object\"==typeof module?t(require(\"../../lib/codemirror\")):\"function\"==typeof define&amp;&amp;define.amd?define([\"../../lib/codemirror\"],t):t(CodeMirror)}(function(H){\"use strict\";var R=H.Pos;function z(t,e,r){return r?0&lt;=t.indexOf(e):0==t.lastIndexOf(e,0)}H.registerHelper(\"hint\",\"xml\",function(t,e){var r=e&amp;&amp;e.schemaInfo,n=e&amp;&amp;e.quoteChar||'\"',s=e&amp;&amp;e.matchInMiddle;if(r){var i=t.getCursor(),o=t.getTokenAt(i);if(o.end&gt;i.ch&amp;&amp;(o.end=i.ch,o.string=o.string.slice(0,i.ch-o.start)),(p=H.innerMode(t.getMode(),o.state)).mode.xmlCurrentTag){var a,l,g,c=[],f=!1,h=/\\btag\\b/.test(o.type)&amp;&amp;!/&gt;$/.test(o.string),u=h&amp;&amp;/^\\w/.test(o.string);u?(M=t.getLine(i.line).slice(Math.max(0,o.start-2),o.start),(g=/&lt;\\/$/.test(M)?\"close\":/&lt;$/.test(M)?\"open\":null)&amp;&amp;(l=o.start-(\"close\"==g?2:1))):h&amp;&amp;\"&lt;\"==o.string?g=\"open\":h&amp;&amp;\"&lt;/\"==o.string&amp;&amp;(g=\"close\");var d=p.mode.xmlCurrentTag(p.state);if(!h&amp;&amp;!d||g){u&amp;&amp;(a=o.string),f=g;var p,m=p.mode.xmlCurrentContext?p.mode.xmlCurrentContext(p.state):[],v=(p=m.length&amp;&amp;m[m.length-1])&amp;&amp;r[p],y=p?v&amp;&amp;v.children:r[\"!top\"];if(y&amp;&amp;\"close\"!=g)for(var x=0;x&lt;y.length;++x)a&amp;&amp;!z(y[x],a,s)||c.push(\"&lt;\"+y[x]);else if(\"close\"!=g)for(var C in r)!r.hasOwnProperty(C)||\"!top\"==C||\"!attrs\"==C||a&amp;&amp;!z(C,a,s)||c.push(\"&lt;\"+C);p&amp;&amp;(!a||\"close\"==g&amp;&amp;z(p,a,s))&amp;&amp;c.push(\"&lt;/\"+p+\"&gt;\")}else{var b=(v=d&amp;&amp;r[d.name])&amp;&amp;v.attrs,O=r[\"!attrs\"];if(!b&amp;&amp;!O)return;if(b){if(O){var w={};for(var A in O)O.hasOwnProperty(A)&amp;&amp;(w[A]=O[A]);for(var A in b)b.hasOwnProperty(A)&amp;&amp;(w[A]=b[A]);b=w}}else b=O;if(\"string\"==o.type||\"=\"==o.string){var M,P,$,I,T,j=(M=t.getRange(R(i.line,Math.max(0,i.ch-60)),R(i.line,\"string\"==o.type?o.start:o.end))).match(/([^\\s\\u00a0=&lt;&gt;\\\"\\']+)=$/);if(!j||!b.hasOwnProperty(j[1])||!(P=b[j[1]]))return;\"function\"==typeof P&amp;&amp;(P=P.call(this,t)),\"string\"==o.type&amp;&amp;(a=o.string,$=0,/['\"]/.test(o.string.charAt(0))&amp;&amp;(n=o.string.charAt(0),a=o.string.slice(1),$++),I=o.string.length,/['\"]/.test(o.string.charAt(I-1))&amp;&amp;(n=o.string.charAt(I-1),a=o.string.substr($,I-2)),!$||(T=t.getLine(i.line)).length&gt;o.end&amp;&amp;T.charAt(o.end)==n&amp;&amp;o.end++,f=!0);var q=function(t){if(t)for(var e=0;e&lt;t.length;++e)a&amp;&amp;!z(t[e],a,s)||c.push(n+t[e]+n);return k()};return P&amp;&amp;P.then?P.then(q):q(P)}for(var L in\"attribute\"==o.type&amp;&amp;(a=o.string,f=!0),b)!b.hasOwnProperty(L)||a&amp;&amp;!z(L,a,s)||c.push(L)}return k()}}function k(){return{list:c,from:f?R(i.line,null==l?o.start:l):i,to:f?R(i.line,o.end):i}}})});\n",
"type": "application/javascript",
"title": "$:/plugins/tiddlywiki/codemirror/addon/hint/xml-hint.js",
"module-type": "codemirror"
},
"$:/plugins/tiddlywiki/codemirror-autocomplete/readme": {
"title": "$:/plugins/tiddlywiki/codemirror-autocomplete/readme",
"text": "This plugin enhances the [[CodeMirror|http://codemirror.net]] text editor with Autocompletion functionality. It needs the latest [[CodeMirror plugin|$:/plugins/tiddlywiki/codemirror]] to be installed\n\nIt adds Autocompletion for ''html'', ''javascript'' and ''xml'' and also for ''already present words'' within a text-editor instance\n\nThe ''Keyboard Shortcut'' for autocompletion is `Ctrl+Space`\n\n"
}
}
}</pre>
</div>
<div dependents="" description="Fullscreen editing for CodeMirror" list="readme" name="CodeMirror Fullscreen" parent-plugin="$:/plugins/tiddlywiki/codemirror" plugin-type="plugin" title="$:/plugins/tiddlywiki/codemirror-fullscreen" type="application/json" version="5.1.23">
<pre>{
"tiddlers": {
"$:/config/codemirror/fullscreen": {
"title": "$:/config/codemirror/fullscreen",
"extend": "extraKeys",
"type": "json",
"text": "{\n\t\"F11\": \"togglefullscreen\"\n}"
},
"$:/plugins/tiddlywiki/codemirror/addon/fullscreen/fullscreen.js": {
"text": "// CodeMirror, copyright (c) by Marijn Haverbeke and others\n// Distributed under an MIT license: https://codemirror.net/LICENSE\n!function(e){\"object\"==typeof exports&amp;&amp;\"object\"==typeof module?e(require(\"../../lib/codemirror\")):\"function\"==typeof define&amp;&amp;define.amd?define([\"../../lib/codemirror\"],e):e(CodeMirror)}(function(i){\"use strict\";i.defineOption(\"fullScreen\",!1,function(e,t,o){var r,l;o==i.Init&amp;&amp;(o=!1),!o!=!t&amp;&amp;(t?(l=(r=e).getWrapperElement(),r.state.fullScreenRestore={scrollTop:window.pageYOffset,scrollLeft:window.pageXOffset,width:l.style.width,height:l.style.height},l.style.width=\"\",l.style.height=\"auto\",l.className+=\" CodeMirror-fullscreen\",document.documentElement.style.overflow=\"hidden\",r.refresh()):function(e){var t=e.getWrapperElement();t.className=t.className.replace(/\\s*CodeMirror-fullscreen\\b/,\"\"),document.documentElement.style.overflow=\"\";var o=e.state.fullScreenRestore;t.style.width=o.width,t.style.height=o.height,window.scrollTo(o.scrollLeft,o.scrollTop),e.refresh()}(e))})});\n",
"type": "application/javascript",
"title": "$:/plugins/tiddlywiki/codemirror/addon/fullscreen/fullscreen.js",
"module-type": "codemirror"
},
"$:/plugins/tiddlywiki/codemirror/addon/fullscreen/fullscreen.css": {
"text": ".CodeMirror-fullscreen {\n position: fixed;\n top: 0; left: 0; right: 0; bottom: 0;\n height: auto;\n z-index: 9;\n}\n",
"type": "text/css",
"title": "$:/plugins/tiddlywiki/codemirror/addon/fullscreen/fullscreen.css",
"tags": "[[$:/tags/Stylesheet]]"
},
"$:/plugins/tiddlywiki/codemirror-fullscreen/readme": {
"title": "$:/plugins/tiddlywiki/codemirror-fullscreen/readme",
"text": "This plugin adds a ''Fullscreen editing Mode'' to the [[CodeMirror|http://codemirror.net]] text editor. It needs the latest [[CodeMirror plugin|$:/plugins/tiddlywiki/codemirror]] to be installed\n\nPressing ''F11'' with the focus within the editor-textarea will make the editor go fullscreen, pressing ''F11'' again leaves fullscreen-mode\n\n"
}
}
}</pre>
</div>
<div dependents="" description="CSS highlighting mode for CodeMirror" list="readme" name="CodeMirror Mode CSS" parent-plugin="$:/plugins/tiddlywiki/codemirror" plugin-type="plugin" title="$:/plugins/tiddlywiki/codemirror-mode-css" type="application/json" version="5.1.23">
<pre>{
"tiddlers": {
"$:/plugins/tiddlywiki/codemirror/mode/css/css.js": {
"text": "// CodeMirror, copyright (c) by Marijn Haverbeke and others\n// Distributed under an MIT license: https://codemirror.net/LICENSE\n!function(e){\"object\"==typeof exports&amp;&amp;\"object\"==typeof module?e(require(\"../../lib/codemirror\")):\"function\"==typeof define&amp;&amp;define.amd?define([\"../../lib/codemirror\"],e):e(CodeMirror)}(function(T){\"use strict\";function e(e){for(var t={},r=0;r&lt;e.length;++r)t[e[r].toLowerCase()]=!0;return t}T.defineMode(\"css\",function(e,t){var r=t.inline;t.propertyKeywords||(t=T.resolveMode(\"text/css\"));var a,i,n=e.indentUnit,l=t.tokenHooks,o=t.documentTypes||{},s=t.mediaTypes||{},d=t.mediaFeatures||{},c=t.mediaValueKeywords||{},p=t.propertyKeywords||{},u=t.nonStandardPropertyKeywords||{},m=t.fontProperties||{},b=t.counterDescriptors||{},g=t.colorKeywords||{},h=t.valueKeywords||{},f=t.allowNested,k=t.lineComment,y=!0===t.supportsAtComponent,w=!1!==e.highlightNonStandardPropertyKeywords;function v(e,t){return a=t,e}function x(i){return function(e,t){for(var r,o=!1;null!=(r=e.next());){if(r==i&amp;&amp;!o){\")\"==i&amp;&amp;e.backUp(1);break}o=!o&amp;&amp;\"\\\\\"==r}return r!=i&amp;&amp;(o||\")\"==i)||(t.tokenize=null),a=\"string\"}}function z(e,t){return e.next(),e.match(/\\s*[\\\"\\')]/,!1)?t.tokenize=null:t.tokenize=x(\")\"),a=\"(\",null}function j(e,t,r){this.type=e,this.indent=t,this.prev=r}function P(e,t,r,o){return e.context=new j(r,t.indentation()+(!1===o?0:n),e.context),r}function K(e){return e.context.prev&amp;&amp;(e.context=e.context.prev),e.context.type}function q(e,t,r){return _[r.context.type](e,t,r)}function C(e,t,r,o){for(var i=o||1;0&lt;i;i--)r.context=r.context.prev;return q(e,t,r)}function B(e){var t=e.current().toLowerCase();i=h.hasOwnProperty(t)?\"atom\":g.hasOwnProperty(t)?\"keyword\":\"variable\"}var _={top:function(e,t,r){if(\"{\"==e)return P(r,t,\"block\");if(\"}\"==e&amp;&amp;r.context.prev)return K(r);if(y&amp;&amp;/@component/i.test(e))return P(r,t,\"atComponentBlock\");if(/^@(-moz-)?document$/i.test(e))return P(r,t,\"documentTypes\");if(/^@(media|supports|(-moz-)?document|import)$/i.test(e))return P(r,t,\"atBlock\");if(/^@(font-face|counter-style)/i.test(e))return r.stateArg=e,\"restricted_atBlock_before\";if(/^@(-(moz|ms|o|webkit)-)?keyframes$/i.test(e))return\"keyframes\";if(e&amp;&amp;\"@\"==e.charAt(0))return P(r,t,\"at\");if(\"hash\"==e)i=\"builtin\";else if(\"word\"==e)i=\"tag\";else{if(\"variable-definition\"==e)return\"maybeprop\";if(\"interpolation\"==e)return P(r,t,\"interpolation\");if(\":\"==e)return\"pseudo\";if(f&amp;&amp;\"(\"==e)return P(r,t,\"parens\")}return r.context.type},block:function(e,t,r){if(\"word\"!=e)return\"meta\"==e?\"block\":f||\"hash\"!=e&amp;&amp;\"qualifier\"!=e?_.top(e,t,r):(i=\"error\",\"block\");var o=t.current().toLowerCase();return p.hasOwnProperty(o)?(i=\"property\",\"maybeprop\"):u.hasOwnProperty(o)?(i=w?\"string-2\":\"property\",\"maybeprop\"):f?(i=t.match(/^\\s*:(?:\\s|$)/,!1)?\"property\":\"tag\",\"block\"):(i+=\" error\",\"maybeprop\")},maybeprop:function(e,t,r){return\":\"==e?P(r,t,\"prop\"):q(e,t,r)},prop:function(e,t,r){if(\";\"==e)return K(r);if(\"{\"==e&amp;&amp;f)return P(r,t,\"propBlock\");if(\"}\"==e||\"{\"==e)return C(e,t,r);if(\"(\"==e)return P(r,t,\"parens\");if(\"hash\"!=e||/^#([0-9a-fA-f]{3,4}|[0-9a-fA-f]{6}|[0-9a-fA-f]{8})$/.test(t.current())){if(\"word\"==e)B(t);else if(\"interpolation\"==e)return P(r,t,\"interpolation\")}else i+=\" error\";return\"prop\"},propBlock:function(e,t,r){return\"}\"==e?K(r):\"word\"==e?(i=\"property\",\"maybeprop\"):r.context.type},parens:function(e,t,r){return\"{\"==e||\"}\"==e?C(e,t,r):\")\"==e?K(r):\"(\"==e?P(r,t,\"parens\"):\"interpolation\"==e?P(r,t,\"interpolation\"):(\"word\"==e&amp;&amp;B(t),\"parens\")},pseudo:function(e,t,r){return\"meta\"==e?\"pseudo\":\"word\"==e?(i=\"variable-3\",r.context.type):q(e,t,r)},documentTypes:function(e,t,r){return\"word\"==e&amp;&amp;o.hasOwnProperty(t.current())?(i=\"tag\",r.context.type):_.atBlock(e,t,r)},atBlock:function(e,t,r){return\"(\"==e?P(r,t,\"atBlock_parens\"):\"}\"==e||\";\"==e?C(e,t,r):\
"type": "application/javascript",
"title": "$:/plugins/tiddlywiki/codemirror/mode/css/css.js",
"module-type": "codemirror"
},
"$:/plugins/tiddlywiki/codemirror-mode-css/readme": {
"title": "$:/plugins/tiddlywiki/codemirror-mode-css/readme",
"text": "This plugin adds Syntax Highlighting for CSS tiddlers (text/css) to the [[CodeMirror|http://codemirror.net]] text editor. It needs the latest [[CodeMirror plugin|$:/plugins/tiddlywiki/codemirror]] to be installed\n\n\n"
}
}
}</pre>
</div>
<div dependents="" description="JavaScript highlighting mode for CodeMirror" list="readme" name="CodeMirror Mode JavaScript" parent-plugin="$:/plugins/tiddlywiki/codemirror" plugin-type="plugin" title="$:/plugins/tiddlywiki/codemirror-mode-javascript" type="application/json" version="5.1.23">
<pre>{
"tiddlers": {
"$:/plugins/tiddlywiki/codemirror/mode/javascript/javascript.js": {
"text": "// CodeMirror, copyright (c) by Marijn Haverbeke and others\n// Distributed under an MIT license: https://codemirror.net/LICENSE\n!function(e){\"object\"==typeof exports&amp;&amp;\"object\"==typeof module?e(require(\"../../lib/codemirror\")):\"function\"==typeof define&amp;&amp;define.amd?define([\"../../lib/codemirror\"],e):e(CodeMirror)}(function(tt){\"use strict\";tt.defineMode(\"javascript\",function(e,l){var t,r,n,a,i,o,d=e.indentUnit,p=l.statementIndent,c=l.jsonld,s=l.json||c,u=l.typescript,f=l.wordCharacters||/[\\w$\\xa1-\\uffff]/,m=(t=v(\"keyword a\"),r=v(\"keyword b\"),n=v(\"keyword c\"),a=v(\"keyword d\"),i=v(\"operator\"),{if:v(\"if\"),while:t,with:t,else:r,do:r,try:r,finally:r,return:a,break:a,continue:a,new:v(\"new\"),delete:n,void:n,throw:n,debugger:v(\"debugger\"),var:v(\"var\"),const:v(\"var\"),let:v(\"var\"),function:v(\"function\"),catch:v(\"catch\"),for:v(\"for\"),switch:v(\"switch\"),case:v(\"case\"),default:v(\"default\"),in:i,typeof:i,instanceof:i,true:o={type:\"atom\",style:\"atom\"},false:o,null:o,undefined:o,NaN:o,Infinity:o,this:v(\"this\"),class:v(\"class\"),super:v(\"atom\"),yield:n,export:v(\"export\"),import:v(\"import\"),extends:n,await:n});function v(e){return{type:e,style:\"keyword\"}}var k,y,w=/[+\\-*&amp;%=&lt;&gt;!?|~^@]/,b=/^@(context|id|value|language|type|container|list|set|reverse|index|base|vocab|graph)\"/;function x(e,t,r){return k=e,y=r,t}function h(e,t){var a,r=e.next();if('\"'==r||\"'\"==r)return t.tokenize=(a=r,function(e,t){var r,n=!1;if(c&amp;&amp;\"@\"==e.peek()&amp;&amp;e.match(b))return t.tokenize=h,x(\"jsonld-keyword\",\"meta\");for(;null!=(r=e.next())&amp;&amp;(r!=a||n);)n=!n&amp;&amp;\"\\\\\"==r;return n||(t.tokenize=h),x(\"string\",\"string\")}),t.tokenize(e,t);if(\".\"==r&amp;&amp;e.match(/^\\d[\\d_]*(?:[eE][+\\-]?[\\d_]+)?/))return x(\"number\",\"number\");if(\".\"==r&amp;&amp;e.match(\"..\"))return x(\"spread\",\"meta\");if(/[\\[\\]{}\\(\\),;\\:\\.]/.test(r))return x(r);if(\"=\"==r&amp;&amp;e.eat(\"&gt;\"))return x(\"=&gt;\",\"operator\");if(\"0\"==r&amp;&amp;e.match(/^(?:x[\\dA-Fa-f_]+|o[0-7_]+|b[01_]+)n?/))return x(\"number\",\"number\");if(/\\d/.test(r))return e.match(/^[\\d_]*(?:n|(?:\\.[\\d_]*)?(?:[eE][+\\-]?[\\d_]+)?)?/),x(\"number\",\"number\");if(\"/\"==r)return e.eat(\"*\")?(t.tokenize=g)(e,t):e.eat(\"/\")?(e.skipToEnd(),x(\"comment\",\"comment\")):et(e,t,1)?(function(e){for(var t,r=!1,n=!1;null!=(t=e.next());){if(!r){if(\"/\"==t&amp;&amp;!n)return;\"[\"==t?n=!0:n&amp;&amp;\"]\"==t&amp;&amp;(n=!1)}r=!r&amp;&amp;\"\\\\\"==t}}(e),e.match(/^\\b(([gimyus])(?![gimyus]*\\2))+\\b/),x(\"regexp\",\"string-2\")):(e.eat(\"=\"),x(\"operator\",\"operator\",e.current()));if(\"`\"==r)return(t.tokenize=j)(e,t);if(\"#\"==r&amp;&amp;\"!\"==e.peek())return e.skipToEnd(),x(\"meta\",\"meta\");if(\"#\"==r&amp;&amp;e.eatWhile(f))return x(\"variable\",\"property\");if(\"&lt;\"==r&amp;&amp;e.match(\"!--\")||\"-\"==r&amp;&amp;e.match(\"-&gt;\")&amp;&amp;!/\\S/.test(e.string.slice(0,e.start)))return e.skipToEnd(),x(\"comment\",\"comment\");if(w.test(r))return\"&gt;\"==r&amp;&amp;t.lexical&amp;&amp;\"&gt;\"==t.lexical.type||(e.eat(\"=\")?\"!\"!=r&amp;&amp;\"=\"!=r||e.eat(\"=\"):/[&lt;&gt;*+\\-|&amp;?]/.test(r)&amp;&amp;(e.eat(r),\"&gt;\"==r&amp;&amp;e.eat(r))),\"?\"==r&amp;&amp;e.eat(\".\")?x(\".\"):x(\"operator\",\"operator\",e.current());if(f.test(r)){e.eatWhile(f);var n=e.current();if(\".\"!=t.lastType){if(m.propertyIsEnumerable(n)){var i=m[n];return x(i.type,i.style,n)}if(\"async\"==n&amp;&amp;e.match(/^(\\s|\\/\\*([^*]|\\*(?!\\/))*?\\*\\/)*[\\[\\(\\w]/,!1))return x(\"async\",\"keyword\",n)}return x(\"variable\",\"variable\",n)}}function g(e,t){for(var r,n=!1;r=e.next();){if(\"/\"==r&amp;&amp;n){t.tokenize=h;break}n=\"*\"==r}return x(\"comment\",\"comment\")}function j(e,t){for(var r,n=!1;null!=(r=e.next());){if(!n&amp;&amp;(\"`\"==r||\"$\"==r&amp;&amp;e.eat(\"{\"))){t.tokenize=h;break}n=!n&amp;&amp;\"\\\\\"==r}return x(\"quasi\",\"string-2\",e.current())}var M=\"([{}])\";function A(e,t){t.fatArrowAt&amp;&amp;(t.fatArrowAt=null);var r,n=e.string.indexOf(\"=
"type": "application/javascript",
"title": "$:/plugins/tiddlywiki/codemirror/mode/javascript/javascript.js",
"module-type": "codemirror"
},
"$:/plugins/tiddlywiki/codemirror-mode-javascript/readme": {
"title": "$:/plugins/tiddlywiki/codemirror-mode-javascript/readme",
"text": "This plugin adds Syntax Highlighting for Javascript tiddlers (application/javascript) to the [[CodeMirror|http://codemirror.net]] text editor. It needs the latest [[CodeMirror plugin|$:/plugins/tiddlywiki/codemirror]] to be installed\n\n"
}
}
}</pre>
</div>
<div author="Joao Bolila" dependents="" description="Highlight.js syntax highlighting" list="readme usage howto license" name="Highlight" plugin-type="plugin" title="$:/plugins/tiddlywiki/highlight" type="application/json" version="5.1.24-prerelease">
<pre>{
"tiddlers": {
"$:/plugins/tiddlywiki/highlight/highlight.js": {
"text": "var hljs = require(\"$:/plugins/tiddlywiki/highlight/highlight.js\");\n/*! highlight.js v9.18.1 | BSD3 License | git.io/hljslicense */\n!function(e){var n=\"object\"==typeof window&amp;&amp;window||\"object\"==typeof self&amp;&amp;self;\"undefined\"==typeof exports||exports.nodeType?n&amp;&amp;(n.hljs=e({}),\"function\"==typeof define&amp;&amp;define.amd&amp;&amp;define([],function(){return n.hljs})):e(exports)}(function(a){var f=[],i=Object.keys,_={},c={},C=!0,n=/^(no-?highlight|plain|text)$/i,l=/\\blang(?:uage)?-([\\w-]+)\\b/i,t=/((^(&lt;[^&gt;]+&gt;|\\t|)+|(?:\\n)))/gm,r={case_insensitive:\"cI\",lexemes:\"l\",contains:\"c\",keywords:\"k\",subLanguage:\"sL\",className:\"cN\",begin:\"b\",beginKeywords:\"bK\",end:\"e\",endsWithParent:\"eW\",illegal:\"i\",excludeBegin:\"eB\",excludeEnd:\"eE\",returnBegin:\"rB\",returnEnd:\"rE\",variants:\"v\",IDENT_RE:\"IR\",UNDERSCORE_IDENT_RE:\"UIR\",NUMBER_RE:\"NR\",C_NUMBER_RE:\"CNR\",BINARY_NUMBER_RE:\"BNR\",RE_STARTERS_RE:\"RSR\",BACKSLASH_ESCAPE:\"BE\",APOS_STRING_MODE:\"ASM\",QUOTE_STRING_MODE:\"QSM\",PHRASAL_WORDS_MODE:\"PWM\",C_LINE_COMMENT_MODE:\"CLCM\",C_BLOCK_COMMENT_MODE:\"CBCM\",HASH_COMMENT_MODE:\"HCM\",NUMBER_MODE:\"NM\",C_NUMBER_MODE:\"CNM\",BINARY_NUMBER_MODE:\"BNM\",CSS_NUMBER_MODE:\"CSSNM\",REGEXP_MODE:\"RM\",TITLE_MODE:\"TM\",UNDERSCORE_TITLE_MODE:\"UTM\",COMMENT:\"C\",beginRe:\"bR\",endRe:\"eR\",illegalRe:\"iR\",lexemesRe:\"lR\",terminators:\"t\",terminator_end:\"tE\"},m=\"&lt;/span&gt;\",O=\"Could not find the language '{}', did you forget to load/include a language module?\",B={classPrefix:\"hljs-\",tabReplace:null,useBR:!1,languages:void 0},o=\"of and for in not or if then\".split(\" \");function x(e){return e.replace(/&amp;/g,\"&amp;amp;\").replace(/&lt;/g,\"&amp;lt;\").replace(/&gt;/g,\"&amp;gt;\")}function g(e){return e.nodeName.toLowerCase()}function u(e){return n.test(e)}function s(e){var n,t={},r=Array.prototype.slice.call(arguments,1);for(n in e)t[n]=e[n];return r.forEach(function(e){for(n in e)t[n]=e[n]}),t}function E(e){var a=[];return function e(n,t){for(var r=n.firstChild;r;r=r.nextSibling)3===r.nodeType?t+=r.nodeValue.length:1===r.nodeType&amp;&amp;(a.push({event:\"start\",offset:t,node:r}),t=e(r,t),g(r).match(/br|hr|img|input/)||a.push({event:\"stop\",offset:t,node:r}));return t}(e,0),a}function d(e,n,t){var r=0,a=\"\",i=[];function o(){return e.length&amp;&amp;n.length?e[0].offset!==n[0].offset?e[0].offset&lt;n[0].offset?e:n:\"start\"===n[0].event?e:n:e.length?e:n}function c(e){a+=\"&lt;\"+g(e)+f.map.call(e.attributes,function(e){return\" \"+e.nodeName+'=\"'+x(e.value).replace(/\"/g,\"&amp;quot;\")+'\"'}).join(\"\")+\"&gt;\"}function l(e){a+=\"&lt;/\"+g(e)+\"&gt;\"}function u(e){(\"start\"===e.event?c:l)(e.node)}for(;e.length||n.length;){var s=o();if(a+=x(t.substring(r,s[0].offset)),r=s[0].offset,s===e){for(i.reverse().forEach(l);u(s.splice(0,1)[0]),(s=o())===e&amp;&amp;s.length&amp;&amp;s[0].offset===r;);i.reverse().forEach(c)}else\"start\"===s[0].event?i.push(s[0].node):i.pop(),u(s.splice(0,1)[0])}return a+x(t.substr(r))}function R(n){return n.v&amp;&amp;!n.cached_variants&amp;&amp;(n.cached_variants=n.v.map(function(e){return s(n,{v:null},e)})),n.cached_variants?n.cached_variants:function e(n){return!!n&amp;&amp;(n.eW||e(n.starts))}(n)?[s(n,{starts:n.starts?s(n.starts):null})]:Object.isFrozen(n)?[s(n)]:[n]}function p(e){if(r&amp;&amp;!e.langApiRestored){for(var n in e.langApiRestored=!0,r)e[n]&amp;&amp;(e[r[n]]=e[n]);(e.c||[]).concat(e.v||[]).forEach(p)}}function v(n,r){var a={};return\"string\"==typeof n?t(\"keyword\",n):i(n).forEach(function(e){t(e,n[e])}),a;function t(t,e){r&amp;&amp;(e=e.toLowerCase()),e.split(\" \").forEach(function(e){var n=e.split(\"|\");a[n[0]]=[t,function(e,n){return n?Number(n):function(e){return-1!=o.indexOf(e.toLowerCase())}(e)?0:1}(n[0],n[1])]})}}function S(r){function s(e){return e&amp;&amp;e.source||e}function f(e,n){return new RegExp(s(e),\"m\"+(r.cI?\"i\":\"\")+(n?\"g\":\"\"))}function a(a){var i,e,o={},c=[],l={},t=1;function n(e,n){o[t]=e,c.push([e,n]),t+=function(e){return new RegExp(e.toS
"type": "application/javascript",
"title": "$:/plugins/tiddlywiki/highlight/highlight.js",
"module-type": "library"
},
"$:/plugins/tiddlywiki/highlight/highlight.css": {
"text": "/*\n\nOriginal highlight.js style (c) Ivan Sagalaev &lt;maniac@softwaremaniacs.org&gt;\n\n*/\n\n.hljs {\n display: block;\n overflow-x: auto;\n padding: 0.5em;\n background: #F0F0F0;\n}\n\n\n/* Base color: saturation 0; */\n\n.hljs,\n.hljs-subst {\n color: #444;\n}\n\n.hljs-comment {\n color: #888888;\n}\n\n.hljs-keyword,\n.hljs-attribute,\n.hljs-selector-tag,\n.hljs-meta-keyword,\n.hljs-doctag,\n.hljs-name {\n font-weight: bold;\n}\n\n\n/* User color: hue: 0 */\n\n.hljs-type,\n.hljs-string,\n.hljs-number,\n.hljs-selector-id,\n.hljs-selector-class,\n.hljs-quote,\n.hljs-template-tag,\n.hljs-deletion {\n color: #880000;\n}\n\n.hljs-title,\n.hljs-section {\n color: #880000;\n font-weight: bold;\n}\n\n.hljs-regexp,\n.hljs-symbol,\n.hljs-variable,\n.hljs-template-variable,\n.hljs-link,\n.hljs-selector-attr,\n.hljs-selector-pseudo {\n color: #BC6060;\n}\n\n\n/* Language color: hue: 90; */\n\n.hljs-literal {\n color: #78A960;\n}\n\n.hljs-built_in,\n.hljs-bullet,\n.hljs-code,\n.hljs-addition {\n color: #397300;\n}\n\n\n/* Meta color: hue: 200 */\n\n.hljs-meta {\n color: #1f7199;\n}\n\n.hljs-meta-string {\n color: #4d99bf;\n}\n\n\n/* Misc effects */\n\n.hljs-emphasis {\n font-style: italic;\n}\n\n.hljs-strong {\n font-weight: bold;\n}\n",
"type": "text/css",
"title": "$:/plugins/tiddlywiki/highlight/highlight.css",
"tags": "[[$:/tags/Stylesheet]]"
},
"$:/plugins/tiddlywiki/highlight/highlightblock.js": {
"title": "$:/plugins/tiddlywiki/highlight/highlightblock.js",
"text": "/*\\\ntitle: $:/plugins/tiddlywiki/highlight/highlightblock.js\ntype: application/javascript\nmodule-type: widget\n\nWraps up the fenced code blocks parser for highlight and use in TiddlyWiki5\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar TYPE_MAPPINGS_BASE = \"$:/config/HighlightPlugin/TypeMappings/\";\n\nvar CodeBlockWidget = require(\"$:/core/modules/widgets/codeblock.js\").codeblock;\n\nvar hljs = require(\"$:/plugins/tiddlywiki/highlight/highlight.js\");\n\nhljs.configure({tabReplace: \" \"});\t\n\nCodeBlockWidget.prototype.postRender = function() {\n\tvar domNode = this.domNodes[0],\n\t\tlanguage = this.language,\n\t\ttiddler = this.wiki.getTiddler(TYPE_MAPPINGS_BASE + language);\n\tif(tiddler) {\n\t\tlanguage = tiddler.fields.text || \"\";\n\t}\n\tif(language &amp;&amp; hljs.getLanguage(language)) {\n\t\tdomNode.className = language.toLowerCase() + \" hljs\";\n\t\tif($tw.browser &amp;&amp; !domNode.isTiddlyWikiFakeDom) {\n\t\t\thljs.highlightBlock(domNode);\t\t\t\n\t\t} else {\n\t\t\tvar text = domNode.textContent;\n\t\t\tdomNode.children[0].innerHTML = hljs.fixMarkup(hljs.highlight(language,text).value);\n\t\t\t// If we're using the fakedom then specially save the original raw text\n\t\t\tif(domNode.isTiddlyWikiFakeDom) {\n\t\t\t\tdomNode.children[0].textInnerHTML = text;\n\t\t\t}\n\t\t}\n\t}\t\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/plugins/tiddlywiki/highlight/howto": {
"title": "$:/plugins/tiddlywiki/highlight/howto",
"text": "! Supporting Additional Languages\n \nThe [[highlight.js|https://github.com/highlightjs/highlight.js]] project supports many languages. Only a subset of these languages are supported by the plugin. It is possible for users to change the set of languages supported by the plugin by following these steps:\n \n# Go to the highlight.js project [[download page|https://highlightjs.org/download/]], select the language definitions to include, and press the Download button to download a zip archive containing customised support files for a highlight.js syntax highlighting server.\n# Locate the `highlight.pack.js` file in the highlight plugin -- on a stock Debian 8 system running Tiddlywiki5 under node-js it is located at `/usr/local/lib/node_modules/tiddlywiki/plugins/tiddlywiki/highlight/files/highlight.pack.js`.\n# Replace the plugin `highlight.pack.js` file located in step 2 with the one from the downloaded archive obtained in step 1.\n# Restart the Tiddlywiki server.\n"
},
"$:/plugins/tiddlywiki/highlight/license": {
"title": "$:/plugins/tiddlywiki/highlight/license",
"type": "text/plain",
"text": "Copyright (c) 2006, Ivan Sagalaev\nAll rights reserved.\nRedistribution and use in source and binary forms, with or without\nmodification, are permitted provided that the following conditions are met:\n\n * Redistributions of source code must retain the above copyright\n notice, this list of conditions and the following disclaimer.\n * Redistributions in binary form must reproduce the above copyright\n notice, this list of conditions and the following disclaimer in the\n documentation and/or other materials provided with the distribution.\n * Neither the name of highlight.js nor the names of its contributors\n may be used to endorse or promote products derived from this software\n without specific prior written permission.\n\nTHIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ANY\nEXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED\nWARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\nDISCLAIMED. IN NO EVENT SHALL THE REGENTS AND CONTRIBUTORS BE LIABLE FOR ANY\nDIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES\n(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;\nLOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND\nON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS\nSOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n"
},
"$:/plugins/tiddlywiki/highlight/readme": {
"title": "$:/plugins/tiddlywiki/highlight/readme",
"text": "This plugin provides syntax highlighting of code blocks using v9.18.1 of [[highlight.js|https://github.com/isagalaev/highlight.js]] from Ivan Sagalaev.\n\n! Usage\n\nWhen the plugin is installed it automatically applies highlighting to all codeblocks defined with triple backticks or with the CodeBlockWidget.\n\nThe language can optionally be specified after the opening triple braces:\n\n&lt;$codeblock code=\"\"\"```css\n * { margin: 0; padding: 0; } /* micro reset */\n\nhtml { font-size: 62.5%; }\nbody { font-size: 14px; font-size: 1.4rem; } /* =14px */\nh1 { font-size: 24px; font-size: 2.4rem; } /* =24px */\n```\"\"\"/&gt;\n\nIf no language is specified highlight.js will attempt to automatically detect the language.\n\n! Built-in Language Brushes\n\nThe plugin includes support for the following languages (referred to as \"brushes\" by highlight.js):\n\n* apache\n* arduino\n* arm assembly\n* asciidoc\n* autohotkey\n* awk\n* bash\n* cmake\n* coffeescript\n* cpp\n* cs\n* css\n* diff\n* dockerfile\n* erlang\n* elixir\n* fortran\n* go\n* gradle\n* haskell\n* html\n* http\n* ini\n* intel x86 assembly\n* java\n* javascript\n* json\n* kotlin\n* less\n* lua\n* makefile\n* markdown\n* mathematica\n* matlab\n* nginx\n* objectivec\n* perl\n* php\n* plaintext\n* powershell\n* properties\n* python\n* R\n* ruby\n* rust\n* scss\n* shell session\n* sql\n* swift\n* toml\n* typescript\n* vala\n* vim script\n* xml\n* yaml\n\nYou can also specify the language as a MIME content type (eg `text/html` or `text/css`). The mapping is accomplished via mapping tiddlers whose titles start with `$:/config/HighlightPlugin/TypeMappings/`.\n"
},
"$:/plugins/tiddlywiki/highlight/styles": {
"title": "$:/plugins/tiddlywiki/highlight/styles",
"tags": "[[$:/tags/Stylesheet]]",
"text": ".hljs {\n display: block;\n overflow-x: auto;\n padding: 0.5em;\n background: &lt;&lt;colour tiddler-editor-background&gt;&gt;;\n color: &lt;&lt;colour foreground&gt;&gt;;\n -webkit-text-size-adjust:none\n}\n\n.hljs-comment,\n.hljs-quote {\n color: #93a1a1;\n}\n\n/* Solarized Green */\n.hljs-keyword,\n.hljs-selector-tag,\n.hljs-addition {\n color: #859900;\n}\n\n/* Solarized Cyan */\n.hljs-number,\n.hljs-string,\n.hljs-meta .hljs-meta-string,\n.hljs-literal,\n.hljs-doctag,\n.hljs-regexp {\n color: #2aa198;\n}\n\n/* Solarized Blue */\n.hljs-title,\n.hljs-section,\n.hljs-name,\n.hljs-selector-id,\n.hljs-selector-class {\n color: #268bd2;\n}\n\n/* Solarized Yellow */\n.hljs-attribute,\n.hljs-attr,\n.hljs-variable,\n.hljs-template-variable,\n.hljs-class .hljs-title,\n.hljs-type {\n color: #b58900;\n}\n\n/* Solarized Orange */\n.hljs-symbol,\n.hljs-bullet,\n.hljs-subst,\n.hljs-meta,\n.hljs-meta .hljs-keyword,\n.hljs-selector-attr,\n.hljs-selector-pseudo,\n.hljs-link {\n color: #cb4b16;\n}\n\n/* Solarized Red */\n.hljs-built_in,\n.hljs-deletion {\n color: #dc322f;\n}\n\n.hljs-formula {\n background: #eee8d5;\n}\n\n.hljs-emphasis {\n font-style: italic;\n}\n\n.hljs-strong {\n font-weight: bold;\n}\n"
},
"$:/config/HighlightPlugin/TypeMappings/application/javascript": {
"title": "$:/config/HighlightPlugin/TypeMappings/application/javascript",
"text": "javascript"
},
"$:/config/HighlightPlugin/TypeMappings/application/json": {
"title": "$:/config/HighlightPlugin/TypeMappings/application/json",
"text": "json"
},
"$:/config/HighlightPlugin/TypeMappings/text/css": {
"title": "$:/config/HighlightPlugin/TypeMappings/text/css",
"text": "css"
},
"$:/config/HighlightPlugin/TypeMappings/text/html": {
"title": "$:/config/HighlightPlugin/TypeMappings/text/html",
"text": "html"
},
"$:/config/HighlightPlugin/TypeMappings/image/svg+xml": {
"title": "$:/config/HighlightPlugin/TypeMappings/image/svg+xml",
"text": "xml"
},
"$:/config/HighlightPlugin/TypeMappings/text/x-markdown": {
"title": "$:/config/HighlightPlugin/TypeMappings/text/x-markdown",
"text": "markdown"
},
"$:/plugins/tiddlywiki/highlight/usage": {
"title": "$:/plugins/tiddlywiki/highlight/usage",
"text": "! Usage\n\nFenced code blocks can have a language specifier added to trigger highlighting in a specific language. Otherwise heuristics are used to detect the language.\n\n```\n ```js\n var a = b + c; // Highlighted as JavaScript\n ```\n```\n! Adding Themes\n\nYou can add themes from highlight.js by copying the CSS to a new tiddler and tagging it with [[$:/tags/Stylesheet]]. The available themes can be found on GitHub:\n\nhttps://github.com/isagalaev/highlight.js/tree/master/src/styles\n"
}
}
}</pre>
</div>
<div dependents="" description="Markdown parser based on remarkable by Jon Schlinkert" list="readme usage" name="Markdown" plugin-type="plugin" title="$:/plugins/tiddlywiki/markdown" type="application/json" version="5.1.23-prerelease">
<pre>{
"tiddlers": {
"$:/plugins/tiddlywiki/markdown/EditorToolbar/bold": {
"title": "$:/plugins/tiddlywiki/markdown/EditorToolbar/bold",
"list-after": "$:/core/ui/EditorToolbar/bold",
"tags": "$:/tags/EditorToolbar",
"icon": "$:/core/images/bold",
"caption": "{{$:/language/Buttons/Bold/Caption}} (Markdown)",
"description": "{{$:/language/Buttons/Bold/Hint}}",
"condition": "[&lt;targetTiddler&gt;type[text/x-markdown]]",
"shortcuts": "((bold))",
"text": "&lt;$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix=\"**\"\n\tsuffix=\"**\"\n/&gt;\n"
},
"$:/plugins/tiddlywiki/markdown/EditorToolbar/heading-1": {
"title": "$:/plugins/tiddlywiki/markdown/EditorToolbar/heading-1",
"list-after": "$:/core/ui/EditorToolbar/heading-1",
"tags": "$:/tags/EditorToolbar",
"icon": "$:/core/images/heading-1",
"caption": "{{$:/language/Buttons/Heading1/Caption}} (Markdown)",
"description": "{{$:/language/Buttons/Heading1/Hint}}",
"condition": "[&lt;targetTiddler&gt;type[text/x-markdown]]",
"shortcuts": "((heading-1))",
"text": "&lt;$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"#\"\n\tcount=\"1\"\n/&gt;\n"
},
"$:/plugins/tiddlywiki/markdown/EditorToolbar/heading-2": {
"title": "$:/plugins/tiddlywiki/markdown/EditorToolbar/heading-2",
"list-after": "$:/core/ui/EditorToolbar/heading-2",
"tags": "$:/tags/EditorToolbar",
"icon": "$:/core/images/heading-2",
"caption": "{{$:/language/Buttons/Heading2/Caption}} (Markdown)",
"description": "{{$:/language/Buttons/Heading2/Hint}}",
"condition": "[&lt;targetTiddler&gt;type[text/x-markdown]]",
"shortcuts": "((heading-2))",
"text": "&lt;$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"#\"\n\tcount=\"2\"\n/&gt;\n"
},
"$:/plugins/tiddlywiki/markdown/EditorToolbar/heading-3": {
"title": "$:/plugins/tiddlywiki/markdown/EditorToolbar/heading-3",
"list-after": "$:/core/ui/EditorToolbar/heading-3",
"tags": "$:/tags/EditorToolbar",
"icon": "$:/core/images/heading-3",
"caption": "{{$:/language/Buttons/Heading3/Caption}} (Markdown)",
"description": "{{$:/language/Buttons/Heading3/Hint}}",
"condition": "[&lt;targetTiddler&gt;type[text/x-markdown]]",
"shortcuts": "((heading-3))",
"text": "&lt;$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"#\"\n\tcount=\"3\"\n/&gt;\n"
},
"$:/plugins/tiddlywiki/markdown/EditorToolbar/heading-4": {
"title": "$:/plugins/tiddlywiki/markdown/EditorToolbar/heading-4",
"list-after": "$:/core/ui/EditorToolbar/heading-4",
"tags": "$:/tags/EditorToolbar",
"icon": "$:/core/images/heading-4",
"caption": "{{$:/language/Buttons/Heading4/Caption}} (Markdown)",
"description": "{{$:/language/Buttons/Heading4/Hint}}",
"condition": "[&lt;targetTiddler&gt;type[text/x-markdown]]",
"shortcuts": "((heading-4))",
"text": "&lt;$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"#\"\n\tcount=\"4\"\n/&gt;\n"
},
"$:/plugins/tiddlywiki/markdown/EditorToolbar/heading-5": {
"title": "$:/plugins/tiddlywiki/markdown/EditorToolbar/heading-5",
"list-after": "$:/core/ui/EditorToolbar/heading-5",
"tags": "$:/tags/EditorToolbar",
"icon": "$:/core/images/heading-5",
"caption": "{{$:/language/Buttons/Heading5/Caption}} (Markdown)",
"description": "{{$:/language/Buttons/Heading5/Hint}}",
"condition": "[&lt;targetTiddler&gt;type[text/x-markdown]]",
"shortcuts": "((heading-5))",
"text": "&lt;$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"#\"\n\tcount=\"5\"\n/&gt;\n"
},
"$:/plugins/tiddlywiki/markdown/EditorToolbar/heading-6": {
"title": "$:/plugins/tiddlywiki/markdown/EditorToolbar/heading-6",
"list-after": "$:/core/ui/EditorToolbar/heading-6",
"tags": "$:/tags/EditorToolbar",
"icon": "$:/core/images/heading-6",
"caption": "{{$:/language/Buttons/Heading6/Caption}} (Markdown)",
"description": "{{$:/language/Buttons/Heading6/Hint}}",
"condition": "[&lt;targetTiddler&gt;type[text/x-markdown]]",
"shortcuts": "((heading-6))",
"text": "&lt;$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"#\"\n\tcount=\"6\"\n/&gt;\n"
},
"$:/plugins/tiddlywiki/markdown/EditorToolbar/italic": {
"title": "$:/plugins/tiddlywiki/markdown/EditorToolbar/italic",
"list-after": "$:/core/ui/EditorToolbar/italic",
"tags": "$:/tags/EditorToolbar",
"icon": "$:/core/images/italic",
"caption": "{{$:/language/Buttons/Italic/Caption}} (Markdown)",
"description": "{{$:/language/Buttons/Italic/Hint}}",
"condition": "[&lt;targetTiddler&gt;type[text/x-markdown]]",
"shortcuts": "((italic))",
"text": "&lt;$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix=\"*\"\n\tsuffix=\"*\"\n/&gt;\n"
},
"$:/plugins/tiddlywiki/markdown/EditorToolbar/list-bullet": {
"title": "$:/plugins/tiddlywiki/markdown/EditorToolbar/list-bullet",
"list-after": "$:/core/ui/EditorToolbar/list-bullet",
"tags": "$:/tags/EditorToolbar",
"icon": "$:/core/images/list-bullet",
"caption": "{{$:/language/Buttons/ListBullet/Caption}} (Markdown)",
"description": "{{$:/language/Buttons/ListBullet/Hint}}",
"condition": "[&lt;targetTiddler&gt;type[text/x-markdown]]",
"shortcuts": "((list-bullet))",
"text": "&lt;$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"*\"\n\tcount=\"1\"\n/&gt;\n"
},
"$:/plugins/tiddlywiki/markdown/EditorToolbar/list-number": {
"title": "$:/plugins/tiddlywiki/markdown/EditorToolbar/list-number",
"list-after": "$:/core/ui/EditorToolbar/list-number",
"tags": "$:/tags/EditorToolbar",
"icon": "$:/core/images/list-number",
"caption": "{{$:/language/Buttons/ListNumber/Caption}} (Markdown)",
"description": "{{$:/language/Buttons/ListNumber/Hint}}",
"condition": "[&lt;targetTiddler&gt;type[text/x-markdown]]",
"shortcuts": "((list-number))",
"text": "&lt;$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"1.\"\n\tcount=\"1\"\n/&gt;\n"
},
"$:/plugins/tiddlywiki/markdown/EditorToolbar/mono-line": {
"title": "$:/plugins/tiddlywiki/markdown/EditorToolbar/mono-line",
"list-after": "$:/core/ui/EditorToolbar/mono-line",
"tags": "$:/tags/EditorToolbar",
"icon": "$:/core/images/mono-line",
"caption": "{{$:/language/Buttons/MonoLine/Caption}} (Markdown)",
"description": "{{$:/language/Buttons/MonoLine/Hint}}",
"condition": "[&lt;targetTiddler&gt;type[text/x-markdown]]",
"shortcuts": "((mono-line))",
"text": "&lt;$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix=\"`\"\n\tsuffix=\"`\"\n/&gt;\n"
},
"$:/plugins/tiddlywiki/markdown/EditorToolbar/quote": {
"title": "$:/plugins/tiddlywiki/markdown/EditorToolbar/quote",
"list-after": "$:/core/ui/EditorToolbar/quote",
"tags": "$:/tags/EditorToolbar",
"icon": "$:/core/images/quote",
"caption": "{{$:/language/Buttons/Quote/Caption}} (Markdown)",
"description": "{{$:/language/Buttons/Quote/Hint}}",
"condition": "[&lt;targetTiddler&gt;type[text/x-markdown]]",
"shortcuts": "((quote))",
"text": "&lt;$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"&gt;\"\n\tcount=\"1\"\n/&gt;\n"
},
"$:/config/markdown/breaks": {
"title": "$:/config/markdown/breaks",
"text": "false"
},
"$:/config/markdown/linkNewWindow": {
"title": "$:/config/markdown/linkNewWindow",
"text": "true"
},
"$:/config/markdown/linkify": {
"title": "$:/config/markdown/linkify",
"text": "false"
},
"$:/config/markdown/quotes": {
"title": "$:/config/markdown/quotes",
"text": "“”‘’"
},
"$:/config/markdown/renderWikiText": {
"title": "$:/config/markdown/renderWikiText",
"text": "true"
},
"$:/config/markdown/renderWikiTextPragma": {
"title": "$:/config/markdown/renderWikiTextPragma",
"text": "\\rules only html image macrocallinline syslink transcludeinline wikilink filteredtranscludeblock macrocallblock transcludeblock"
},
"$:/config/markdown/typographer": {
"title": "$:/config/markdown/typographer",
"text": "false"
},
"$:/language/Docs/Types/text/x-markdown": {
"title": "$:/language/Docs/Types/text/x-markdown",
"description": "Markdown",
"name": "text/x-markdown",
"group": "Text"
},
"$:/plugins/tiddlywiki/markdown/remarkable.js": {
"text": "!function(e,t){\"object\"==typeof exports&amp;&amp;\"undefined\"!=typeof module?t(exports):\"function\"==typeof define&amp;&amp;define.amd?define([\"exports\"],t):t((e=e||self).remarkable={})}(this,function(e){\"use strict\";var t={Aacute:\"Á\",aacute:\"á\",Abreve:\"Ă\",abreve:\"ă\",ac:\"∾\",acd:\"∿\",acE:\"∾̳\",Acirc:\"Â\",acirc:\"â\",acute:\"´\",Acy:\"А\",acy:\"а\",AElig:\"Æ\",aelig:\"æ\",af:\"\",Afr:\"𝔄\",afr:\"𝔞\",Agrave:\"À\",agrave:\"à\",alefsym:\"ℵ\",aleph:\"ℵ\",Alpha:\"Α\",alpha:\"α\",Amacr:\"Ā\",amacr:\"ā\",amalg:\"⨿\",AMP:\"&amp;\",amp:\"&amp;\",And:\"⩓\",and:\"∧\",andand:\"⩕\",andd:\"⩜\",andslope:\"⩘\",andv:\"⩚\",ang:\"∠\",ange:\"⦤\",angle:\"∠\",angmsd:\"∡\",angmsdaa:\"⦨\",angmsdab:\"⦩\",angmsdac:\"⦪\",angmsdad:\"⦫\",angmsdae:\"⦬\",angmsdaf:\"⦭\",angmsdag:\"⦮\",angmsdah:\"⦯\",angrt:\"∟\",angrtvb:\"⊾\",angrtvbd:\"⦝\",angsph:\"∢\",angst:\"Å\",angzarr:\"⍼\",Aogon:\"Ą\",aogon:\"ą\",Aopf:\"𝔸\",aopf:\"𝕒\",ap:\"≈\",apacir:\"⩯\",apE:\"⩰\",ape:\"≊\",apid:\"≋\",apos:\"'\",ApplyFunction:\"\",approx:\"≈\",approxeq:\"≊\",Aring:\"Å\",aring:\"å\",Ascr:\"𝒜\",ascr:\"𝒶\",Assign:\"≔\",ast:\"*\",asymp:\"≈\",asympeq:\"≍\",Atilde:\"Ã\",atilde:\"ã\",Auml:\"Ä\",auml:\"ä\",awconint:\"∳\",awint:\"⨑\",backcong:\"≌\",backepsilon:\"϶\",backprime:\"\",backsim:\"∽\",backsimeq:\"⋍\",Backslash:\"\",Barv:\"⫧\",barvee:\"⊽\",Barwed:\"⌆\",barwed:\"⌅\",barwedge:\"⌅\",bbrk:\"⎵\",bbrktbrk:\"⎶\",bcong:\"≌\",Bcy:\"Б\",bcy:\"б\",bdquo:\"„\",becaus:\"∵\",Because:\"∵\",because:\"∵\",bemptyv:\"⦰\",bepsi:\"϶\",bernou:\"\",Bernoullis:\"\",Beta:\"Β\",beta:\"β\",beth:\"ℶ\",between:\"≬\",Bfr:\"𝔅\",bfr:\"𝔟\",bigcap:\"⋂\",bigcirc:\"◯\",bigcup:\"\",bigodot:\"⨀\",bigoplus:\"⨁\",bigotimes:\"⨂\",bigsqcup:\"⨆\",bigstar:\"★\",bigtriangledown:\"▽\",bigtriangleup:\"△\",biguplus:\"⨄\",bigvee:\"\",bigwedge:\"⋀\",bkarow:\"⤍\",blacklozenge:\"⧫\",blacksquare:\"▪\",blacktriangle:\"▴\",blacktriangledown:\"▾\",blacktriangleleft:\"◂\",blacktriangleright:\"▸\",blank:\"␣\",blk12:\"▒\",blk14:\"░\",blk34:\"▓\",block:\"█\",bne:\"=⃥\",bnequiv:\"≡⃥\",bNot:\"⫭\",bnot:\"⌐\",Bopf:\"𝔹\",bopf:\"𝕓\",bot:\"⊥\",bottom:\"⊥\",bowtie:\"⋈\",boxbox:\"⧉\",boxDL:\"╗\",boxDl:\"╖\",boxdL:\"╕\",boxdl:\"┐\",boxDR:\"╔\",boxDr:\"╓\",boxdR:\"╒\",boxdr:\"┌\",boxH:\"═\",boxh:\"─\",boxHD:\"╦\",boxHd:\"╤\",boxhD:\"╥\",boxhd:\"┬\",boxHU:\"╩\",boxHu:\"╧\",boxhU:\"╨\",boxhu:\"┴\",boxminus:\"⊟\",boxplus:\"⊞\",boxtimes:\"⊠\",boxUL:\"╝\",boxUl:\"╜\",boxuL:\"╛\",boxul:\"┘\",boxUR:\"╚\",boxUr:\"╙\",boxuR:\"╘\",boxur:\"└\",boxV:\"║\",boxv:\"│\",boxVH:\"╬\",boxVh:\"╫\",boxvH:\"╪\",boxvh:\"┼\",boxVL:\"╣\",boxVl:\"╢\",boxvL:\"╡\",boxvl:\"┤\",boxVR:\"╠\",boxVr:\"╟\",boxvR:\"╞\",boxvr:\"├\",bprime:\"\",Breve:\"˘\",breve:\"˘\",brvbar:\"¦\",Bscr:\"\",bscr:\"𝒷\",bsemi:\"⁏\",bsim:\"∽\",bsime:\"⋍\",bsol:\"\\\\\",bsolb:\"⧅\",bsolhsub:\"⟈\",bull:\"•\",bullet:\"•\",bump:\"≎\",bumpE:\"⪮\",bumpe:\"≏\",Bumpeq:\"≎\",bumpeq:\"≏\",Cacute:\"Ć\",cacute:\"ć\",Cap:\"⋒\",cap:\"∩\",capand:\"⩄\",capbrcup:\"⩉\",capcap:\"⩋\",capcup:\"⩇\",capdot:\"⩀\",CapitalDifferentialD:\"\",caps:\"∩︀\",caret:\"\",caron:\"ˇ\",Cayleys:\"\",ccaps:\"⩍\",Ccaron:\"Č\",ccaron:\"č\",Ccedil:\"Ç\",ccedil:\"ç\",Ccirc:\"Ĉ\",ccirc:\"ĉ\",Cconint:\"∰\",ccups:\"⩌\",ccupssm:\"⩐\",Cdot:\"Ċ\",cdot:\"ċ\",cedil:\"¸\",Cedilla:\"¸\",cemptyv:\"⦲\",cent:\"¢\",CenterDot:\"·\",centerdot:\"·\",Cfr:\"\",cfr:\"𝔠\",CHcy:\"Ч\",chcy:\"ч\",check:\"✓\",checkmark:\"✓\",Chi:\"Χ\",chi:\"χ\",cir:\"○\",circ:\"ˆ\",circeq:\"≗\",circlearrowleft:\"↺\",circlearrowright:\"↻\",circledast:\"⊛\",circledcirc:\"⊚\",circleddash:\"⊝\",CircleDot:\"⊙\",circledR:\"®\",circledS:\"Ⓢ\",CircleMinus:\"⊖\",CirclePlus:\"⊕\",Circl
"type": "application/javascript",
"title": "$:/plugins/tiddlywiki/markdown/remarkable.js",
"module-type": "library"
},
"$:/plugins/tiddlywiki/markdown/images/new-markdown-button": {
"title": "$:/plugins/tiddlywiki/markdown/images/new-markdown-button",
"tags": "$:/tags/Image",
"text": "&lt;svg class=\"tc-image-new-markdown-button tc-image-button\" viewBox=\"0 0 128 128\" width=\"22pt\" height=\"22pt\"&gt;\n &lt;g fill-rule=\"evenodd\"&gt;\n &lt;rect x=\"80\" y=\"96\" width=\"48\" height=\"16\" rx=\"8\"&gt;&lt;/rect&gt;\n &lt;rect x=\"96\" y=\"80\" width=\"16\" height=\"48\" rx=\"8\"&gt;&lt;/rect&gt;\n &lt;path d=\"M3.23876972,39.5396716 C3.23876972,35.9653274 6.13586353,33.0691646 9.7141757,33.0691646 L98.1283744,33.0691646 C101.706101,33.0691646 104.60378,35.9646626 104.60378,39.5396716 L104.60378,84.8296213 C104.60378,88.4039654 101.706687,91.3001282 98.1283744,91.3001282 L9.7141757,91.3001282 C6.13644944,91.3001282 3.23876972,88.4046302 3.23876972,84.8296213 L3.23876972,39.5396716 L3.23876972,39.5396716 Z M-2.15298617,39.5396716 L-2.15298617,84.8296213 C-2.15298617,91.3833243 3.15957363,96.6918841 9.7141757,96.6918841 L98.1283744,96.6918841 C104.684083,96.6918841 109.995536,91.382138 109.995536,84.8296213 L109.995536,39.5396716 C109.995536,32.9859686 104.682977,27.6774087 98.1283744,27.6774087 L9.7141757,27.6774087 C3.15846686,27.6774087 -2.15298617,32.9871549 -2.15298617,39.5396716 Z M14.0222815,80.5166164 L14.0222815,43.8526764 L24.8057933,43.8526764 L35.589305,57.3320661 L46.3728168,43.8526764 L57.1563286,43.8526764 L57.1563286,80.5166164 L46.3728168,80.5166164 L46.3728168,59.4887685 L35.589305,72.9681582 L24.8057933,59.4887685 L24.8057933,80.5166164 L14.0222815,80.5166164 Z M81.4192301,80.5166164 L65.2439624,62.723822 L76.0274742,62.723822 L76.0274742,43.8526764 L86.810986,43.8526764 L86.810986,62.723822 L97.5944978,62.723822 L81.4192301,80.5166164 Z\"transform=\"translate(53.921275, 62.184646) rotate(-60.000000) translate(-53.921275, -62.184646) \"&gt;&lt;/path&gt;\n &lt;/g&gt;\n&lt;/svg&gt;"
},
"$:/plugins/tiddlywiki/markdown/new-markdown-button": {
"title": "$:/plugins/tiddlywiki/markdown/new-markdown-button",
"tags": "$:/tags/PageControls",
"caption": "{{$:/plugins/tiddlywiki/markdown/images/new-markdown-button}} {{$:/language/Buttons/NewMarkdown/Caption}}",
"description": "{{$:/language/Buttons/NewMarkdown/Hint}}",
"list-after": "$:/core/ui/Buttons/new-tiddler",
"text": "\\whitespace trim\n&lt;$button tooltip={{$:/language/Buttons/NewMarkdown/Hint}} aria-label={{$:/language/Buttons/NewMarkdown/Caption}} class=&lt;&lt;tv-config-toolbar-class&gt;&gt;&gt;\n&lt;$action-sendmessage $message=\"tm-new-tiddler\" type=\"text/x-markdown\"/&gt;\n&lt;$list filter=\"[&lt;tv-config-toolbar-icons&gt;match[yes]]\"&gt;\n{{$:/plugins/tiddlywiki/markdown/images/new-markdown-button}}\n&lt;/$list&gt;\n&lt;$list filter=\"[&lt;tv-config-toolbar-text&gt;match[yes]]\"&gt;\n&lt;span class=\"tc-btn-text\"&gt;&lt;$text text={{$:/language/Buttons/NewMarkdown/Caption}}/&gt;&lt;/span&gt;\n&lt;/$list&gt;\n&lt;/$button&gt;\n"
},
"$:/plugins/tiddlywiki/markdown/readme": {
"title": "$:/plugins/tiddlywiki/markdown/readme",
"text": "This is a TiddlyWiki plugin for parsing Markdown text, using the [[Remarkable|https://github.com/jonschlinkert/remarkable]] library.\n\nIt is completely self-contained, and doesn't need an Internet connection in order to work. It works both in the browser and under Node.js.\n\n[[Source code|https://github.com/Jermolene/TiddlyWiki5/blob/master/plugins/tiddlywiki/markdown]]\n"
},
"$:/plugins/tiddlywiki/markdown/usage": {
"title": "$:/plugins/tiddlywiki/markdown/usage",
"text": "! Plugin Configuration\n\n|!Config |!Default |!Description |\n| &lt;code&gt;[[breaks|$:/config/markdown/breaks]]&lt;/code&gt;| ``false``|Remarkable library config: Convert '\\n' in paragraphs into ``&lt;br&gt;`` |\n| &lt;code&gt;[[linkify|$:/config/markdown/linkify]]&lt;/code&gt;| ``false``|Remarkable library config: Autoconvert URL-like text to links |\n| &lt;code&gt;[[linkNewWindow|$:/config/markdown/linkNewWindow]]&lt;/code&gt;| ``true``|For external links, should clicking on them open a new window/tab automatically? |\n| &lt;code&gt;[[quotes|$:/config/markdown/quotes]]&lt;/code&gt;| ``“”‘’``|Remarkable library config: Double + single quotes replacement pairs, when ``typographer`` enabled |\n| &lt;code&gt;[[renderWikiText|$:/config/markdown/renderWikiText]]&lt;/code&gt;| ``true``|After Markdown is parsed, should any text elements be handed off to the ~WikiText parser for further processing? |\n| &lt;code&gt;[[renderWikiTextPragma|$:/config/markdown/renderWikiTextPragma]]&lt;/code&gt;| ``\\rules only html image macrocallinline syslink transcludeinline wikilink filteredtranscludeblock macrocallblock transcludeblock``|When handing off to the ~WikiText parser, what pragma rules should it follow? |\n| &lt;code&gt;[[typographer|$:/config/markdown/typographer]]&lt;/code&gt;| ``false``|Remarkable library config: Enable some language-neutral replacement + quotes beautification |\n\n! Creating ~WikiLinks\n\nCreate wiki links with the usual Markdown link syntax targeting `#` and the target tiddler title:\n\n```\n[link text](#TiddlerTitle)\n```\n\nIf the target tiddler has a space in its name, that name must be URL-escaped to be detected as a URL:\n\n```\n[link text](#Test%20Tiddler)\n```\n\n! Images\n\nMarkdown image syntax can be used to reference images by tiddler title or an external URI. For example:\n\n```\n![alt text](/path/to/img.jpg \"Title\")\n\n![alt text](Motovun Jack.jpg \"Title\")\n```\n"
},
"$:/plugins/tiddlywiki/markdown/wrapper.js": {
"title": "$:/plugins/tiddlywiki/markdown/wrapper.js",
"text": "/*\\\ntitle: $:/plugins/tiddlywiki/markdown/wrapper.js\ntype: application/javascript\nmodule-type: parser\n\nWraps up the remarkable parser for use as a Parser in TiddlyWiki\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar r = require(\"$:/plugins/tiddlywiki/markdown/remarkable.js\");\n\nvar Remarkable = r.Remarkable,\n\tlinkify = r.linkify,\n\tutils = r.utils;\n\n///// Set up configuration options /////\nfunction parseAsBoolean(tiddlerName) {\n\treturn $tw.wiki.getTiddlerText(tiddlerName).toLowerCase() === \"true\";\n}\nvar pluginOpts = {\n\tlinkNewWindow: parseAsBoolean(\"$:/config/markdown/linkNewWindow\"),\n\trenderWikiText: parseAsBoolean(\"$:/config/markdown/renderWikiText\"),\n\trenderWikiTextPragma: $tw.wiki.getTiddlerText(\"$:/config/markdown/renderWikiTextPragma\").trim()\n};\nvar remarkableOpts = {\n\tbreaks: parseAsBoolean(\"$:/config/markdown/breaks\"),\n\tquotes: $tw.wiki.getTiddlerText(\"$:/config/markdown/quotes\"),\n\ttypographer: parseAsBoolean(\"$:/config/markdown/typographer\")\n};\n\nvar md = new Remarkable(remarkableOpts);\n\nif (parseAsBoolean(\"$:/config/markdown/linkify\")) {\n\tmd = md.use(linkify);\n}\n\nfunction findTagWithType(nodes, startPoint, type, level) {\n\tfor (var i = startPoint; i &lt; nodes.length; i++) {\n\t\tif (nodes[i].type === type &amp;&amp; nodes[i].level === level) {\n\t\t\treturn i;\n\t\t}\n\t}\n\treturn false;\n}\n\n/**\n * Remarkable creates nodes that look like:\n * [\n * { type: 'paragraph_open'},\n * { type: 'inline', content: 'Hello World', children:[{type: 'text', content: 'Hello World'}]},\n * { type: 'paragraph_close'}\n * ]\n *\n * But TiddlyWiki wants the Parser (https://tiddlywiki.com/dev/static/Parser.html) to emit nodes like:\n *\n * [\n * { type: 'element', tag: 'p', children: [{type: 'text', text: 'Hello World'}]}\n * ]\n */\nfunction convertNodes(remarkableTree, isStartOfInline) {\n\tlet out = [];\n\n\tfunction wrappedElement(elementTag, currentIndex, currentLevel, closingType, nodes) {\n\t\tvar j = findTagWithType(nodes, currentIndex + 1, closingType, currentLevel);\n\t\tif (j === false) {\n\t\t\tconsole.error(\"Failed to find a \" + closingType + \" node after position \" + currentIndex);\n\t\t\tconsole.log(nodes);\n\t\t\treturn currentIndex + 1;\n\t\t}\n\t\tlet children = convertNodes(nodes.slice(currentIndex + 1, j));\n\n\t\tout.push({\n\t\t\ttype: \"element\",\n\t\t\ttag: elementTag,\n\t\t\tchildren: children\n\t\t});\n\t\treturn j;\n\t}\n\n\tfor (var i = 0; i &lt; remarkableTree.length; i++) {\n\t\tvar currentNode = remarkableTree[i];\n\t\tif (currentNode.type === \"paragraph_open\") {\n\t\t\ti = wrappedElement(\"p\", i, currentNode.level, \"paragraph_close\", remarkableTree);\n\t\t} else if (currentNode.type === \"heading_open\") {\n\t\t\ti = wrappedElement(\"h\" + currentNode.hLevel, i, currentNode.level, \"heading_close\", remarkableTree);\n\t\t} else if (currentNode.type === \"bullet_list_open\") {\n\t\t\ti = wrappedElement(\"ul\", i, currentNode.level, \"bullet_list_close\", remarkableTree);\n\t\t} else if (currentNode.type == 'ordered_list_open') {\n\t\t\ti = wrappedElement('ol', i, currentNode.level,'ordered_list_close', remarkableTree);\n\t\t} else if (currentNode.type === \"list_item_open\") {\n\t\t\ti = wrappedElement(\"li\", i, currentNode.level, \"list_item_close\", remarkableTree);\n\t\t} else if (currentNode.type === \"link_open\") {\n\t\t\tvar j = findTagWithType(remarkableTree, i + 1, \"link_close\", currentNode.level);\n\n\t\t\tif (currentNode.href[0] !== \"#\") {\n\t\t\t\t// External link\n\t\t\t\tvar attributes = {\n\t\t\t\t\thref: { type: \"string\", value: currentNode.href }\n\t\t\t\t};\n\t\t\t\tif (pluginOpts.linkNewWindow) {\n\t\t\t\t\tattributes.target = { type: \"string\", value: \"_blank\" };\n\t\t\t\t}\n\t\t\t\tout.push({\n\t\t\t\t\ttype: \"element\",\n\t\t\t\t\ttag: \"a\",\n\t\t\t\t\tattributes: attributes,\n\t\t\t\t\tchildren: convertNodes(remarkableTree.slice(i + 1, j))\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\t// Internal link\n\t\t\t
"type": "application/javascript",
"module-type": "parser"
}
}
}</pre>
</div>
<div caption="{{$:/plugins/tiddlywiki/markdown/images/new-markdown-button}} {{$:/language/Buttons/NewMarkdown/Caption}}" created="20210917054100713" description="{{$:/language/Buttons/NewMarkdown/Hint}}" modified="20210917054100714" tags="$:/tags/PageControls" title="$:/plugins/tiddlywiki/markdown/new-markdown-button">
<pre>\whitespace trim
&lt;$button tooltip={{$:/language/Buttons/NewMarkdown/Hint}} aria-label={{$:/language/Buttons/NewMarkdown/Caption}} class=&lt;&lt;tv-config-toolbar-class&gt;&gt;&gt;
&lt;$action-sendmessage $message="tm-new-tiddler" type="text/x-markdown"/&gt;
&lt;$list filter="[&lt;tv-config-toolbar-icons&gt;match[yes]]"&gt;
{{$:/plugins/tiddlywiki/markdown/images/new-markdown-button}}
&lt;/$list&gt;
&lt;$list filter="[&lt;tv-config-toolbar-text&gt;match[yes]]"&gt;
&lt;span class="tc-btn-text"&gt;&lt;$text text={{$:/language/Buttons/NewMarkdown/Caption}}/&gt;&lt;/span&gt;
&lt;/$list&gt;
&lt;/$button&gt;
</pre>
</div>
<div bag="default" created="20210212140005952" dependents="" description="Menu Bar" list="readme config" modified="20210212140011745" name="Menu Bar" plugin-type="plugin" revision="0" tags="rr-TW5 rr-plugins" title="$:/plugins/tiddlywiki/menubar" type="application/json" version="5.1.23">
<pre>{
"tiddlers": {
"$:/config/DefaultColourMappings/menubar-foreground": {
"title": "$:/config/DefaultColourMappings/menubar-foreground",
"text": "#fff"
},
"$:/config/DefaultColourMappings/menubar-background": {
"title": "$:/config/DefaultColourMappings/menubar-background",
"text": "#5778d8"
},
"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/pagecontrols": {
"title": "$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/pagecontrols",
"text": "hide"
},
"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/server": {
"title": "$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/server",
"text": "hide"
},
"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/sidebar": {
"title": "$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/sidebar",
"text": "hide"
},
"$:/config/plugins/menubar/TableOfContents/Tag": {
"title": "$:/config/plugins/menubar/TableOfContents/Tag",
"text": "TableOfContents"
},
"$:/config/plugins/menubar/breakpoint": {
"title": "$:/config/plugins/menubar/breakpoint",
"text": "620px"
},
"$:/plugins/tiddlywiki/menubar/config": {
"title": "$:/plugins/tiddlywiki/menubar/config",
"tags": "$:/tags/ControlPanel/Toolbars",
"caption": "Menu Bar",
"text": "\\define config-base() $:/config/plugins/menubar/MenuItems/Visibility/\n\n! Menu Bar Configuration\n\n!! Menu Items\n\nSelect which menu items will be shown. You can also drag items to reorder them.\n\n&lt;$set name=\"tv-config-toolbar-icons\" value=\"yes\"&gt;\n\n&lt;$set name=\"tv-config-toolbar-text\" value=\"yes\"&gt;\n\n&lt;$macrocall $name=\"list-tagged-draggable\" tag=\"$:/tags/MenuBar\" itemTemplate=\"$:/core/ui/ControlPanel/Toolbars/ItemTemplate\"/&gt;\n\n&lt;/$set&gt;\n\n&lt;/$set&gt;\n\n!! Breakpoint Position\n\nThe breakpoint position between narrow and wide screens. Should include CSS units (eg. `400px`).\n\n&lt;$edit-text tiddler=\"$:/config/plugins/menubar/breakpoint\" default=\"\" tag=\"input\"/&gt;\n\n!! Contents Tag\n\nThe tag for the ~TableOfContents used in the Contents dropdown\n\n&lt;$edit-text tiddler=\"$:/config/plugins/menubar/TableOfContents/Tag\" default=\"\" tag=\"input\"/&gt;\n\n!! Menu Bar Colours\n\nTo change the colour of the menu bar, define the colours `menubar-foreground` and `menubar-background` in the currently selected palette\n"
},
"$:/plugins/tiddlywiki/menubar/items/contents": {
"title": "$:/plugins/tiddlywiki/menubar/items/contents",
"caption": "Contents",
"description": "Table of Contents",
"is-dropdown": "yes",
"tags": "$:/tags/MenuBar",
"text": "&lt;div class=\"tc-table-of-contents\"&gt;\n\n&lt;$macrocall $name=\"toc-selective-expandable\" tag={{$:/config/plugins/menubar/TableOfContents/Tag}}/&gt;\n\n&lt;/div&gt;\n"
},
"$:/plugins/tiddlywiki/menubar/items/hamburger": {
"title": "$:/plugins/tiddlywiki/menubar/items/hamburger",
"tags": "$:/tags/MenuBar",
"caption": "Hamburger",
"description": "Show the full menu bar on a narrow screen",
"custom-menu-content": "{{$:/plugins/tiddlywiki/menubar/items/hamburger}}",
"show-when": "narrow",
"text": "&lt;$list filter=\"[[$:/state/popup/menubar/hamburger]get[text]else[no]match[no]]\"&gt;\n&lt;$button set=\"$:/state/popup/menubar/hamburger\" setTo=\"yes\"&gt;\n{{$:/core/images/menu-button}}\n&lt;/$button&gt;\n&lt;/$list&gt;\n&lt;$list filter=\"[[$:/state/popup/menubar/hamburger]get[text]else[no]match[yes]]\"&gt;\n&lt;$button set=\"$:/state/popup/menubar/hamburger\" setTo=\"no\"&gt;\n{{$:/core/images/close-button}}\n&lt;/$button&gt;\n&lt;/$list&gt;\n"
},
"$:/plugins/tiddlywiki/menubar/items/pagecontrols": {
"title": "$:/plugins/tiddlywiki/menubar/items/pagecontrols",
"tags": "$:/tags/MenuBar",
"description": "Page controls from the sidebar",
"caption": "Page controls",
"custom-menu-content": "&lt;$transclude tiddler=\"$:/plugins/tiddlywiki/menubar/items/pagecontrols\" mode=\"inline\"/&gt;",
"text": "\\whitespace trim\n\\define config-title()\n$:/config/PageControlButtons/Visibility/$(listItem)$\n\\end\n&lt;$list filter=\"[all[shadows+tiddlers]tag[$:/tags/PageControls]!has[draft.of]]\" variable=\"listItem\"&gt;\n&lt;$set name=\"hidden\" value=&lt;&lt;config-title&gt;&gt;&gt;\n&lt;$list filter=\"[&lt;hidden&gt;!text[hide]]\" storyview=\"pop\" variable=\"ignore\"&gt;\n&lt;$set name=\"tv-config-toolbar-class\" filter=\"[&lt;tv-config-toolbar-class&gt;] [&lt;listItem&gt;encodeuricomponent[]addprefix[tc-btn-]]\"&gt;\n&lt;$transclude tiddler=&lt;&lt;listItem&gt;&gt; mode=\"inline\"/&gt;\n&lt;/$set&gt;\n&lt;/$list&gt;\n&lt;/$set&gt;\n&lt;/$list&gt;\n"
},
"$:/plugins/tiddlywiki/menubar/items/search": {
"title": "$:/plugins/tiddlywiki/menubar/items/search",
"custom-menu-content": "{{$:/plugins/tiddlywiki/menubar/items/search}}",
"description": "Search",
"caption": "Search",
"tags": "$:/tags/MenuBar",
"text": "\\define cancel-search-actions()\n&lt;$set name=\"userInput\" value={{{ [&lt;__storeTitle__&gt;get[text]] }}}&gt;\n&lt;$list filter=\"[&lt;__tiddler__&gt;get[text]!match&lt;userInput&gt;]\" emptyMessage=\"\"\"&lt;$action-deletetiddler $filter=\"[&lt;__storeTitle__&gt;] [&lt;__tiddler__&gt;] [&lt;__selectionStateTitle__&gt;]\"/&gt;\"\"\"&gt;\n&lt;$action-setfield $tiddler=&lt;&lt;__tiddler__&gt;&gt; text=&lt;&lt;userInput&gt;&gt;/&gt;&lt;$action-setfield $tiddler=&lt;&lt;__refreshTitle__&gt;&gt; text=\"yes\"/&gt;\n&lt;/$list&gt;\n&lt;/$set&gt;\n\\end\n\n\\define input-accept-actions() &lt;$list filter=\"[{$:/config/Search/NavigateOnEnter/enable}match[yes]]\" emptyMessage=\"\"\"&lt;$list filter=\"[&lt;__tiddler__&gt;get[text]!is[missing]] ~[&lt;__tiddler__&gt;get[text]is[shadow]]\"&gt;&lt;$action-navigate $to={{{ [&lt;__tiddler__&gt;get[text]] }}}/&gt;&lt;/$list&gt;\"\"\"&gt;&lt;$action-navigate $to={{{ [&lt;__tiddler__&gt;get[text]] }}}/&gt;&lt;/$list&gt;\n\n\\define input-accept-variant-actions() &lt;$list filter=\"[{$:/config/Search/NavigateOnEnter/enable}match[yes]]\" emptyMessage=\"\"\"&lt;$list filter=\"[&lt;__tiddler__&gt;get[text]!is[missing]] ~[&lt;__tiddler__&gt;get[text]is[shadow]]\"&gt;&lt;$list filter=\"[&lt;__tiddler__&gt;get[text]minlength[1]]\"&gt;&lt;$action-sendmessage $message=\"tm-edit-tiddler\" $param={{{ [&lt;__tiddler__&gt;get[text]] }}}/&gt;&lt;/$list&gt;&lt;/$list&gt;\"\"\"&gt;&lt;$list filter=\"[&lt;__tiddler__&gt;get[text]minlength[1]]\"&gt;&lt;$action-sendmessage $message=\"tm-edit-tiddler\" $param={{{ [&lt;__tiddler__&gt;get[text]] }}}/&gt;&lt;/$list&gt;&lt;/$list&gt;\n\n\\define set-next-input-tab(beforeafter:\"after\") &lt;$macrocall $name=\"change-input-tab\" stateTitle=\"$:/state/tab/search-results/sidebar\" tag=\"$:/tags/SearchResults\" beforeafter=\"$beforeafter$\" defaultState={{$:/config/SearchResults/Default}} actions=\"\"\"&lt;$action-setfield $tiddler=\"$:/state/search/currentTab\" text=&lt;&lt;nextTab&gt;&gt;/&gt;\"\"\"/&gt;\n\n\\whitespace trim\n&lt;$vars searchTiddler=\"$:/temp/menubarsearch/input\" searchListState=&lt;&lt;qualify \"$:/state/search-list/selected-item\"&gt;&gt;&gt;\n&lt;span style=\"margin: 0 0.5em;\"&gt;\n&lt;$keyboard key=\"((input-tab-right))\" actions=&lt;&lt;set-next-input-tab&gt;&gt;&gt;\n&lt;$keyboard key=\"((input-tab-left))\" actions=&lt;&lt;set-next-input-tab \"before\"&gt;&gt;&gt;\n&lt;$macrocall $name=\"keyboard-driven-input\" tiddler=\"$:/temp/menubarsearch\" storeTitle=&lt;&lt;searchTiddler&gt;&gt; selectionStateTitle=&lt;&lt;searchListState&gt;&gt; \n\t\trefreshTitle=\"$:/temp/menubarsearch/refresh\" tag=\"input\" type=\"search\" focusPopup=\"$:/state/popup/menubar-search-dropdown\" \n\t\tclass=\"tc-popup-handle tc-menu-show-when-wide\" placeholder=\"Search...\" default=\"\" cancelPopups=\"yes\" \n\t\tinputAcceptActions=&lt;&lt;input-accept-actions&gt;&gt; inputAcceptVariantActions=&lt;&lt;input-accept-variant-actions&gt;&gt; inputCancelActions=&lt;&lt;cancel-search-actions&gt;&gt; \n\t\tfilterMinLength={{$:/config/Search/MinLength}} configTiddlerFilter=\"[[$:/state/search/currentTab]!is[missing]get[text]] ~[{$:/config/SearchResults/Default}]\" /&gt;\n&lt;/$keyboard&gt;\n&lt;/$keyboard&gt;\n&lt;/span&gt;\n&lt;$reveal tag=\"div\" class=\"tc-block-dropdown-wrapper\" state=\"$:/state/popup/menubar-search-dropdown\" type=\"nomatch\" text=\"\" default=\"\"&gt;\n\n&lt;div class=\"tc-block-dropdown tc-search-drop-down\"&gt;\n\n&lt;$list filter=\"[&lt;searchTiddler&gt;get[text]minlength[1]]\" emptyMessage=\"\"\"&lt;div class=\"tc-search-results\"&gt;Type your search terms&lt;/div&gt;\"\"\" variable=\"ignore\"&gt;\n\n&lt;$list filter=\"[&lt;searchTiddler&gt;get[text]minlength{$:/config/Search/MinLength}limit[1]]\" emptyMessage=\"\"\"&lt;div class=\"tc-search-results\"&gt;{{$:/language/Search/Search/TooShort}}&lt;/div&gt;\"\"\" variable=\"listItem\"&gt;\n\n&lt;$vars configTiddler={{{ [[$:/state/search/currentTab]!is[missing]get[text]] ~[{$:/config/SearchResults/Default}] }}} userInput={{{ [&lt;searchTiddler&gt;get[text]] }}}&gt;\n\n{{$
},
"$:/plugins/tiddlywiki/menubar/items/server": {
"title": "$:/plugins/tiddlywiki/menubar/items/server",
"tags": "$:/tags/MenuBar",
"description": "Server options",
"caption": "Server",
"custom-menu-content": "&lt;$transclude tiddler=\"$:/plugins/tiddlywiki/menubar/items/server\" mode=\"inline\"/&gt;",
"text": "&lt;$list filter=\"[[$:/status/IsLoggedIn]get[text]else[no]match[yes]]\" variable=\"ignore\"&gt;\n&lt;$transclude tiddler=\"$:/core/ui/Buttons/save-wiki\" mode=\"inline\"/&gt;\n&lt;/$list&gt;\n&lt;$list filter=\"[[$:/status/IsLoggedIn]get[text]else[no]match[no]]\" variable=\"ignore\"&gt;\n&lt;$button message=\"tm-login\"&gt;\nLogin\n&lt;/$button&gt;\n&lt;/$list&gt;\n"
},
"$:/plugins/tiddlywiki/menubar/items/sidebar": {
"title": "$:/plugins/tiddlywiki/menubar/items/sidebar",
"caption": "Sidebar",
"description": "Sidebar",
"is-dropdown": "yes",
"tags": "$:/tags/MenuBar",
"text": "&lt;$scrollable fallthrough=\"none\" class=\"tc-popup-keep tc-menubar-dropdown-sidebar\"&gt;\n\n&lt;$transclude tiddler=\"$:/core/ui/SideBarSegments/tabs\" mode=\"inline\"/&gt;\n\n&lt;/$scrollable&gt;\n"
},
"$:/plugins/tiddlywiki/menubar/items/topleftbar": {
"title": "$:/plugins/tiddlywiki/menubar/items/topleftbar",
"tags": "$:/tags/MenuBar",
"description": "Items from $:/tags/TopLeftBar",
"caption": "Legacy Top Left Bar",
"custom-menu-content": "&lt;$transclude tiddler=\"$:/plugins/tiddlywiki/menubar/items/topleftbar\" mode=\"inline\"/&gt;",
"text": "&lt;$list filter=\"[all[shadows+tiddlers]tag[$:/tags/TopLeftBar]!has[draft.of]]\" variable=\"listItem\" storyview=\"pop\"&gt;\n\n&lt;$transclude tiddler=&lt;&lt;listItem&gt;&gt; mode=\"inline\"/&gt;\n\n&lt;/$list&gt;"
},
"$:/plugins/tiddlywiki/menubar/items/toprightbar": {
"title": "$:/plugins/tiddlywiki/menubar/items/toprightbar",
"tags": "$:/tags/MenuBar",
"description": "Items from $:/tags/TopRightBar",
"caption": "Legacy Top Right Bar",
"custom-menu-content": "&lt;$transclude tiddler=\"$:/plugins/tiddlywiki/menubar/items/toprightbar\" mode=\"inline\"/&gt;",
"custom-menu-styles-wide": "float: right;",
"text": "&lt;$list filter=\"[all[shadows+tiddlers]tag[$:/tags/TopRightBar]!has[draft.of]reverse[]]\" variable=\"listItem\" storyview=\"pop\"&gt;\n\n&lt;$transclude tiddler=&lt;&lt;listItem&gt;&gt; mode=\"inline\"/&gt;\n\n&lt;/$list&gt;"
},
"$:/plugins/tiddlywiki/menubar/menu": {
"title": "$:/plugins/tiddlywiki/menubar/menu",
"tags": "$:/tags/PageTemplate",
"text": "\\define menubar-inner(size)\n&lt;ul class=\"tc-menubar-list\"&gt;\n&lt;$list filter=\"[all[shadows+tiddlers]tag[$:/tags/MenuBar]!has[draft.of]] -[all[tiddlers+shadows]tag[$:/tags/TopLeftBar]limit[1]then[]else[$:/plugins/tiddlywiki/menubar/items/topleftbar]] -[all[tiddlers+shadows]tag[$:/tags/TopRightBar]limit[1]then[]else[$:/plugins/tiddlywiki/menubar/items/toprightbar]]\"&gt;\n&lt;$list filter=\"[&lt;currentTiddler&gt;addprefix[$:/config/plugins/menubar/MenuItems/Visibility/]get[text]] ~show +[match[show]]\" variable=\"ignore\"&gt;\n&lt;$list filter=\"[[$size$]match[wide]] ~[&lt;currentTiddler&gt;get[show-when]match[$size$]] ~[{$:/state/popup/menubar/hamburger}match[yes]]\" variable=\"ignore\"&gt;\n&lt;li style={{!!custom-menu-styles-$size$}} class={{{ [&lt;currentTiddler&gt;get[show-when]addprefix[tc-menubar-]] tc-menubar-item +[join[ ]] }}}&gt;\n&lt;$list filter=\"[&lt;currentTiddler&gt;!is-dropdown[yes]]\" variable=\"listItem\" emptyMessage=\"\"\"\n\t&lt;!-- Dropdown --&gt;\n\t&lt;$set name=\"dropdown-state\" value=&lt;&lt;qualify \"$:/state/popup/topmenu/dropdown/\"&gt;&gt;&gt;\n\t&lt;$set name=\"dropdown-state\" value={{{ [&lt;dropdown-state&gt;addsuffix&lt;currentTiddler&gt;] }}}&gt;\n\t&lt;$button popup=&lt;&lt;dropdown-state&gt;&gt; selectedClass=\"tc-selected\"&gt;\n\t&lt;$set name=\"tv-wikilinks\" value=\"no\"&gt;\n\t&lt;$transclude field=\"caption\" mode=\"inline\"/&gt;\n\t&lt;$text text=\" \"/&gt;\n\t&lt;span class=\"tc-menubar-dropdown-arrow\"&gt;\n\t&lt;$transclude tiddler=\"$:/core/images/down-arrow\" mode=\"inline\"/&gt;\n\t&lt;/span&gt;\n\t&lt;/$set&gt;\n\t&lt;/$button&gt;\n\t&lt;/$set&gt;\n\t&lt;/$set&gt;\n\"\"\"&gt;\n&lt;$list filter=\"[&lt;currentTiddler&gt;has[custom-menu-content]]\" variable=\"listItem\" emptyMessage=\"\"\"\n\t&lt;!-- Link --&gt;\n\t&lt;$link to={{!!target}}&gt;\n\t&lt;$set name=\"tv-wikilinks\" value=\"no\"&gt;\n\t&lt;$transclude field=\"caption\" mode=\"inline\"/&gt;\n\t&lt;/$set&gt;\n\t&lt;/$link&gt;\n\"\"\"&gt;\n&lt;!-- Custom content --&gt;\n&lt;$transclude field=\"custom-menu-content\" mode=\"inline\"/&gt;\n&lt;/$list&gt;\n&lt;/$list&gt;\n&lt;/li&gt;\n&lt;/$list&gt;\n&lt;/$list&gt;\n&lt;/$list&gt;\n&lt;/ul&gt;\n\\end\n\n&lt;$list filter=\"[all[shadows+tiddlers]tag[$:/tags/MenuBar]!has[draft.of]] -[all[tiddlers+shadows]tag[$:/tags/TopLeftBar]limit[1]then[]else[$:/plugins/tiddlywiki/menubar/items/topleftbar]] -[all[tiddlers+shadows]tag[$:/tags/TopRightBar]limit[1]then[]else[$:/plugins/tiddlywiki/menubar/items/toprightbar]] +[limit[1]]\" variable=\"listItem\"&gt;\n&lt;nav class=\"tc-menubar tc-adjust-top-of-scroll\"&gt;\n&lt;div class=\"tc-menubar-narrow\"&gt;\n&lt;&lt;menubar-inner narrow&gt;&gt;\n&lt;/div&gt;\n&lt;div class=\"tc-menubar-wide\"&gt;\n&lt;&lt;menubar-inner wide&gt;&gt;\n&lt;/div&gt;\n&lt;div style=\"clear:both;\"/&gt;\n&lt;$list filter=\"[all[shadows+tiddlers]tag[$:/tags/MenuBar]!has[draft.of]is-dropdown[yes]]\"&gt;\n&lt;$list filter=\"[&lt;currentTiddler&gt;addprefix[$:/config/plugins/menubar/MenuItems/Visibility/]get[text]] ~show +[match[show]]\" variable=\"ignore\"&gt;\n&lt;$set name=\"dropdown-state\" value=&lt;&lt;qualify \"$:/state/popup/topmenu/dropdown/\"&gt;&gt;&gt;\n&lt;$set name=\"dropdown-state\" value={{{ [&lt;dropdown-state&gt;addsuffix&lt;currentTiddler&gt;] }}}&gt;\n&lt;$reveal type=\"popup\" state=&lt;&lt;dropdown-state&gt;&gt; class={{{ [&lt;currentTiddler&gt;get[dropdown]get[class]] }}} tag=\"div\"&gt;\n&lt;div class=\"tc-drop-down\"&gt;\n&lt;$transclude/&gt;\n&lt;/div&gt;\n&lt;/$reveal&gt;\n&lt;/$set&gt;\n&lt;/$set&gt;\n&lt;/$list&gt;\n&lt;/$list&gt;\n&lt;/nav&gt;\n&lt;/$list&gt;\n"
},
"$:/core/ui/PageTemplate/topleftbar": {
"title": "$:/core/ui/PageTemplate/topleftbar",
"text": "&lt;!-- The menubar plugin overrides this tiddler to remove the core top left menu. The menu items that it would include are instead included in the menubar --&gt;"
},
"$:/core/ui/PageTemplate/toprightbar": {
"title": "$:/core/ui/PageTemplate/toprightbar",
"text": "&lt;!-- The menubar plugin overrides this tiddler to remove the core top right menu. The menu items that it would include are instead included in the menubar --&gt;"
},
"$:/plugins/tiddlywiki/menubar/readme": {
"title": "$:/plugins/tiddlywiki/menubar/readme",
"text": "!! Introduction\n\nThis plugin provides a menu bar with the following features:\n\n* Menu items take the form of simple text links, dropdowns, or entirely custom content\n* Menu items can be individually enabled via the control panel\n* Responds to reduced screen width by abbreviating the menu items to a \"hamburger\" dropdown\n\n!! Menu Item Tiddlers\n\nMenu items are tagged &lt;&lt;tag $:/tags/MenuBar&gt;&gt;. The following fields are used by this plugin:\n\n|!Field Name |!Purpose |\n|title |Each menu item must have a unique title (not shown to the user) |\n|description |Description for use in listings |\n|tags |Must contain `$:/tags/MenuBar` |\n|caption |The text that is displayed for the menu item. Avoid links, using `~` to suppress CamelCase links if required |\n|target |For simple link menu items specifies a tiddler title as the target of the link |\n|is-dropdown |Set to `yes` to indicate a dropdown menu item |\n|text |For dropdown menu items, specifies the body of the dropdown |\n|custom-menu-content |Optional wikitext to be displayed in place of the caption |\n|custom-menu-styles-wide |Optional string of styles to be applied to menu item when the menubar is wide |\n|custom-menu-styles-narrow |Optional string of styles to be applied to menu item when the menubar is narrow |\n\nCustom menu items should make sure that the clickable link or button is an immediate child, and not wrapped in another element.\n\nNote that menu items can be pushed to the right of the menu bar setting the ''custom-menu-styles'' field to `float: right;`.\n"
},
"$:/plugins/tiddlywiki/menubar/styles": {
"title": "$:/plugins/tiddlywiki/menubar/styles",
"tags": "[[$:/tags/Stylesheet]]",
"text": "\\define breakpoint-plus-one()\n&lt;$text text={{{ [{$:/config/plugins/menubar/breakpoint}removesuffix[px]add[1]addsuffix[px]] ~[{$:/config/plugins/menubar/breakpoint}] }}} /&gt;\n\\end\n\n\\define sidebarbreakpoint-minus-one()\n&lt;$text text={{{ [{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}removesuffix[px]subtract[1]addsuffix[px]] ~[{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}] }}} /&gt;\n\\end\n\n\\define set-sidebar-scrollable-top-if-hamburger()\n&lt;$list filter=\"[all[tiddlers+shadows]tag[$:/tags/MenuBar]] -[all[tiddlers+shadows]prefix[$:/config/plugins/menubar/MenuItems/Visibility/]regexp:text[hide]removeprefix[$:/config/plugins/menubar/MenuItems/Visibility/]] -[all[tiddlers+shadows]tag[$:/tags/TopLeftBar]limit[1]then[]else[$:/plugins/tiddlywiki/menubar/items/topleftbar]] -[all[tiddlers+shadows]tag[$:/tags/TopRightBar]limit[1]then[$:/plugins/tiddlywiki/menubar/items/toprightbar]] -$:/plugins/tiddlywiki/menubar/items/hamburger +[limit[1]]\"&gt;\n\n\t.tc-sidebar-scrollable {\n\t\tmargin-top: 2em;\n\t}\n\n&lt;/$list&gt;\n\\end\n\n\\define set-sidebar-scrollable-top()\n&lt;$list filter=\"[all[tiddlers+shadows]tag[$:/tags/MenuBar]] -[all[tiddlers+shadows]prefix[$:/config/plugins/menubar/MenuItems/Visibility/]regexp:text[hide]removeprefix[$:/config/plugins/menubar/MenuItems/Visibility/]] -[all[tiddlers+shadows]tag[$:/tags/TopLeftBar]limit[1]then[]else[$:/plugins/tiddlywiki/menubar/items/topleftbar]] -[all[tiddlers+shadows]tag[$:/tags/TopRightBar]limit[1]then[$:/plugins/tiddlywiki/menubar/items/toprightbar]] +[limit[1]]\"&gt;\n\n\t.tc-sidebar-scrollable {\n\t\tmargin-top: 2em;\n\t}\n\n&lt;/$list&gt;\n&lt;$reveal state=\"$:/state/popup/menubar/hamburger\" type=\"match\" text=\"yes\"&gt;\n\n\t&lt;$set name=\"itemCount\" value={{{ [all[tiddlers+shadows]tag[$:/tags/MenuBar]] -[all[tiddlers+shadows]prefix[$:/config/plugins/menubar/MenuItems/Visibility/]regexp:text[hide]removeprefix[$:/config/plugins/menubar/MenuItems/Visibility/]] -[all[tiddlers+shadows]tag[$:/tags/TopLeftBar]limit[1]then[]else[$:/plugins/tiddlywiki/menubar/items/topleftbar]] -[all[tiddlers+shadows]tag[$:/tags/TopRightBar]limit[1]then[]else[$:/plugins/tiddlywiki/menubar/items/toprightbar]] +[count[]] }}}&gt;\n\n\t\t.tc-sidebar-scrollable {\n\t\t\tmargin-top: calc(&lt;&lt;itemCount&gt;&gt; * 2em);\n\t\t}\n\n\t&lt;/$set&gt;\n\n&lt;/$reveal&gt;\n\\end\n\n\\rules only filteredtranscludeinline transcludeinline macrodef macrocallinline\n\nnav.tc-menubar {\n\tposition: fixed;\n\tz-index: 850;\n\tdisplay: inline-block;\n\ttop: 0;\n\tright: 0;\n\tleft: 0;\n}\n\nnav.tc-menubar ul.tc-menubar-list {\n\tposition: relative;\n\tlist-style-type: none;\n\tmargin: 0;\n\tpadding: 0 0 0 42px;\n\tbackground: &lt;&lt;colour background&gt;&gt;;\n\tbackground: &lt;&lt;colour menubar-background&gt;&gt;;\n\t&lt;&lt;box-shadow \"1px 1px 5px rgba(0, 0, 0, 0.3)\"&gt;&gt;\n}\n\n@media (max-width: &lt;&lt;sidebarbreakpoint-minus-one&gt;&gt;) {\n\n\thtml nav.tc-menubar ul.tc-menubar-list {\n\t\tpadding: 0 0 0 8px;\n\t}\n\n}\n\nnav.tc-menubar li.tc-menubar-item {\n\tdisplay: inline-block;\n\tmargin: 0;\n\tpadding: 0;\n}\n\nnav.tc-menubar .tc-menubar-narrow li.tc-menubar-item {\n\tdisplay: block;\n}\n\nnav.tc-menubar li.tc-menubar-item &gt; a,\nnav.tc-menubar li.tc-menubar-item &gt; button {\n\tdisplay: inline-block;\n/*\ttext-transform: uppercase; */\n\tline-height: 1;\n\tfont-weight: 700;\n\tcolor: &lt;&lt;colour foreground&gt;&gt;;\n\tcolor: &lt;&lt;colour menubar-foreground&gt;&gt;;\n\tfill: &lt;&lt;colour foreground&gt;&gt;;\n\tfill: &lt;&lt;colour menubar-foreground&gt;&gt;;\n\ttext-decoration: none;\n\tpadding: 0.5em;\n\tmargin: 0;\n\tbackground: none;\n\tborder: none;\n\tcursor: pointer;\n\tborder-radius: 0;\n\ttext-decoration: none;\n}\n\nnav.tc-menubar li.tc-menubar-item &gt; a.tc-selected,\nnav.tc-menubar li.tc-menubar-item &gt; button.tc-selected {\n\tbackground: &lt;&lt;colour foreground&gt;&gt;;\n\tbackground: &lt;&lt;colour menubar-foreground&gt;&gt;;\n\tcolor: &lt;&lt;colour background&gt;&gt;;\n\tcolor: &lt;&lt;colour menubar-back
},
"$:/tags/MenuBar": {
"title": "$:/tags/MenuBar",
"list": "$:/plugins/tiddlywiki/menubar/items/hamburger $:/plugins/tiddlywiki/menubar/items/topleftbar $:/plugins/tiddlywiki/menubar/items/contents $:/plugins/tiddlywiki/menubar/items/search $:/plugins/tiddlywiki/menubar/items/pagecontrols $:/plugins/tiddlywiki/menubar/items/server $:/plugins/tiddlywiki/menubar/items/toprightbar"
}
}
}</pre>
</div>
<div author="Astrid Elocson" dependents="" description="Railroad diagram generator" list="readme usage syntax example" name="Railroad" plugin-type="plugin" title="$:/plugins/tiddlywiki/railroad" type="application/json" version="5.1.23">
<pre>{
"tiddlers": {
"$:/plugins/tiddlywiki/railroad/components.js": {
"title": "$:/plugins/tiddlywiki/railroad/components.js",
"text": "/*\\\ntitle: $:/plugins/tiddlywiki/railroad/components.js\ntype: application/javascript\nmodule-type: library\n\nComponents of a railroad diagram.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar railroad = require(\"$:/plugins/tiddlywiki/railroad/railroad-diagrams.js\");\n\n/////////////////////////// Base component\n\nvar Component = function() {\n\tthis.type = \"Component\";\n};\n\n// Set up a leaf component\nComponent.prototype.initialiseLeaf = function(type,text) {\n\tthis.type = type;\n\tthis.text = text;\n};\n\n// Set up a component with a single child\nComponent.prototype.initialiseWithChild = function(type,content) {\n\tthis.type = type;\n\tthis.child = toSingleChild(content);\n};\n\n// Set up a component with an array of children\nComponent.prototype.initialiseWithChildren = function(type,content) {\n\tthis.type = type;\n\t// Force the content to be an array\n\tthis.children = $tw.utils.isArray(content) ? content : [content];\n}\n\n// Return an array of the SVG strings of an array of children\nComponent.prototype.getSvgOfChildren = function() {\n\treturn this.children.map(function(child) {\n\t\treturn child.toSvg();\n\t});\n}\n\nComponent.prototype.toSvg = function() {\n\treturn \"\";\n}\n\nComponent.prototype.debug = function(output,indent) {\n\toutput.push(indent);\n\toutput.push(this.type);\n\t// Add the text of a leaf component\n\tif(this.text &amp;&amp; this.text !== \"\") {\n\t\toutput.push(\": \");\n\t\toutput.push(this.text);\n\t}\n\t// Flag the normal route\n\tif(this.normal !== undefined) {\n\t\tif(this.normal === true) {\n\t\t\toutput.push(\" (normal)\");\n\t\t} else if(this.normal !== false) {\n\t\t\toutput.push(\" (normal: \");\n\t\t\toutput.push(this.normal);\n\t\t\toutput.push(\")\");\n\t\t}\n\t}\n\toutput.push(\"\\n\");\n\tvar contentIndent = indent + \" \";\n\t// Add the one child\n\tif(this.child) {\n\t\tthis.child.debug(output,contentIndent);\n\t}\n\t// Add the array of children\n\tif(this.children) {\n\t\tthis.debugArray(this.children,output,contentIndent);\n\t}\n \t// Add the separator if there is one\n\tif(this.separator) {\n\t\toutput.push(indent);\n\t\toutput.push(\"(separator)\\n\");\n\t\tthis.separator.debug(output,contentIndent);\n\t}\n};\n\nComponent.prototype.debugArray = function(array,output,indent) {\n\tfor(var i=0; i&lt;array.length; i++) {\n\t\tvar item = array[i];\n\t\t// Choice content is a special case: we number the branches\n\t\tif(item.isChoiceBranch) {\n\t\t\toutput.push(indent);\n\t\t\toutput.push(\"(\");\n\t\t\toutput.push(i);\n\t\t\toutput.push(\")\\n\");\n\t\t\titem.debug(output,\" \"+indent);\n\t\t} else {\n\t\t\titem.debug(output,indent);\n\t\t}\n\t}\n}\n\nvar toSingleChild = function(content) {\n\tif($tw.utils.isArray(content)) {\n\t\t// Reduce an array of one child to just the child\n\t\tif(content.length === 1) {\n\t\t\treturn content[0];\n\t\t} else {\n\t\t\t// Never allow an empty sequence\n\t\t \tif(content.length === 0) {\n \t\t\t\tcontent.push(new Dummy());\n\t\t \t}\n\t\t\t// Wrap multiple children into a single sequence component\n\t\t\treturn new Sequence(content);\n\t\t}\n\t} else {\n\t\t// Already single\n\t\treturn content;\n\t}\n}\n\n/////////////////////////// Leaf components\n\nvar Comment = function(text) {\n\tthis.initialiseLeaf(\"Comment\",text);\n};\n\nComment.prototype = new Component();\n\nComment.prototype.toSvg = function() {\n\treturn railroad.Comment(this.text);\n}\n\nvar Dummy = function() {\n\tthis.initialiseLeaf(\"Dummy\");\n};\n\nDummy.prototype = new Component();\n\nDummy.prototype.toSvg = function() {\n\treturn railroad.Skip();\n}\n\nvar Nonterminal = function(text) {\n\tthis.initialiseLeaf(\"Nonterminal\",text);\n};\n\nNonterminal.prototype = new Component();\n\nNonterminal.prototype.toSvg = function() {\n\treturn railroad.NonTerminal(this.text);\n}\n\nvar Terminal = function(text) {\n\tthis.initialiseLeaf(\"Terminal\",text);\n};\n\nTerminal.prototype = new Component();\n\nTerminal.prototype.toSvg = function() {\n\treturn railroad.Terminal(thi
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/tiddlywiki/railroad/example-source": {
"title": "$:/plugins/tiddlywiki/railroad/example-source",
"created": "20150103184022184",
"modified": "20150119214125000",
"tags": "",
"type": "text/vnd.tiddlywiki.railroad",
"text": "[\"+\"]\n({ [[digit|GettingStarted]] } | \"#\" &lt;'escape sequence'&gt;)\n[{(\"@\" name-char | :\"--\" )}]\n"
},
"$:/plugins/tiddlywiki/railroad/example": {
"title": "$:/plugins/tiddlywiki/railroad/example",
"created": "20150102165032410",
"modified": "20150120090735000",
"tags": "",
"text": "Notation:\n\n&lt;pre&gt;&lt;code&gt;&lt;$text text={{$:/plugins/tiddlywiki/railroad/example-source}}/&gt;&lt;/code&gt;&lt;/pre&gt;\n\nDiagram:\n\n{{$:/plugins/tiddlywiki/railroad/example-source}}\n\nDebug mode:\n\n&lt;$railroad debug=\"yes\" text={{$:/plugins/tiddlywiki/railroad/example-source}}/&gt;\n"
},
"$:/plugins/tiddlywiki/railroad/readme": {
"title": "$:/plugins/tiddlywiki/railroad/readme",
"created": "20150102163222184",
"modified": "20150119231005000",
"text": "This plugin provides a `&lt;$railroad&gt;` widget for generating railroad diagrams as SVG images.\n\nAlternatively, the [[diagram notation|$:/plugins/tiddlywiki/railroad/syntax]] can be stored in a dedicated tiddler with its `type` field set to `text/vnd.tiddlywiki.railroad`, and that tiddler can simply be transcluded to wherever it is needed.\n\nThe plugin is based on [[a library by Tab Atkins|https://github.com/tabatkins/railroad-diagrams]], and has been extended to make it more flexible, including allowing components of a diagram to function as links or be transcluded from other tiddlers.\n"
},
"$:/plugins/tiddlywiki/railroad/syntax-string": {
"title": "$:/plugins/tiddlywiki/railroad/syntax-string",
"created": "20150103184022184",
"modified": "20150103184022184",
"text": "('\"' text '\"' | \"'\" text \"'\" | '\"\"\"' text '\"\"\"')"
},
"$:/plugins/tiddlywiki/railroad/syntax": {
"title": "$:/plugins/tiddlywiki/railroad/syntax",
"created": "20150103184022184",
"modified": "20150119220342000",
"text": "The railroad widget uses a special notation to construct the components defined below.\n\n`x` and `y` here stand for any component.\n\nNames (as opposed to quoted strings) are available when a value starts with a letter and contains only letters, digits, underscores, dots and hyphens.\n\n---\n\n; sequence\n: &lt;$railroad text=\"\"\" [\"&lt;-\"] {x} [\"-&gt;\"] \"\"\"/&gt;\n* A sequence of components\n* The `&lt;-` and `-&gt;` delimiters allow you to force a single component to be treated as a sequence. This is occasionally useful for spacing a diagram out\n\n---\n\n; optional\n: &lt;$railroad text=\"\"\" \"[\" [\":\"] x \"]\" \"\"\"/&gt;\n* A component that can be omitted\n* The colon makes `x` appear straight ahead\n\n---\n\n; repeated\n: &lt;$railroad text=\"\"\" \"{\" x [:\"+\" y] \"}\" \"\"\"/&gt;\n* A list of one or more `x`\n* The `+` suffix adds `y` as a separator between each `x` and the next\n\n---\n\n; optional repeated\n: &lt;$railroad text=\"\"\" \"[{\" [\":\"] x [:\"+\" y] \"}]\" \"\"\"/&gt;\n* An optional list of `x`, i.e. a list of zero or more `x`\n\n---\n\n; choice\n: &lt;$railroad text=\"\"\" \"(\" {[:\":\"] x +\"|\"} \")\" \"\"\"/&gt;\n* A set of alternatives\n* The colon indicates which branch appears straight ahead. By default, it's the first branch\n\n---\n\n; string / terminal\n: &lt;$railroad text={{$:/plugins/tiddlywiki/railroad/syntax-string}}/&gt;\n* A literal or terminal component\n* This follows the normal ~TiddlyWiki rules for quoted strings\n\n---\n\n; nonterminal\n: &lt;$railroad text=\"\"\" (name | \"&lt;\" string \"&gt;\") \"\"\"/&gt;\n* A nonterminal component, i.e. the name of another diagram\n\n---\n\n; comment\n: &lt;$railroad text=\"\"\" \"/\" string \"/\" \"\"\"/&gt;\n* A comment\n\n---\n\n; dummy\n: &lt;$railroad text=\"\"\" \"-\" \"\"\"/&gt;\n* The absence of a component\n\n---\n\n; link\n: &lt;$railroad text=\"\"\" \"[[\" x \"|\" (name|string) \"]]\" \"\"\"/&gt;\n* A link to the tiddler title or URI given by the string or name\n\n---\n\n; transclusion\n: &lt;$railroad text=\"\"\" \"{{\" (name|string) \"}}\" \"\"\"/&gt;\n* Treats the content of another tiddler as diagram syntax and transcludes it into the current diagram\n\n---\n\n; arrow pragma\n: &lt;$railroad text=\"\"\" \"\\arrow\" (\"yes\" | \"no\") \"\"\"/&gt;\n* Controls whether repeat paths have an arrow on them\n* Can be toggled on and off in mid-diagram, if desired\n\n---\n\n; debug pragma\n: &lt;$railroad text=\"\"\" \"\\debug\" \"\"\"/&gt;\n* Causes the diagram to display its parse tree\n\n---\n\n; start/end pragma\n: &lt;$railroad text=\"\"\" (\"\\start\" |: \"\\end\") (\"none\" |: \"single\" | \"double\") \"\"\"/&gt;\n* Controls the style of the diagram's startpoint or endpoint\n"
},
"$:/plugins/tiddlywiki/railroad/usage": {
"title": "$:/plugins/tiddlywiki/railroad/usage",
"created": "20150102163222184",
"modified": "20150119231005000",
"text": "The content of the `&lt;$railroad&gt;` widget is ignored.\n\n|!Attribute |!Description |!Default |\n|text |Text in a special notation that defines the diagram's layout |-- |\n|arrow |If set to `no`, repeat paths do not have an arrow on them |`yes` |\n|start |Style of the startpoint: `single`, `double`, `none` |`single` |\n|end |Style of the endpoint: `single`, `double`, `none` |`single` |\n|debug |If set to `yes`, the diagram displays its parse tree |`no` |\n\nThese options can also be specified via pragmas in the diagram notation, or globally via a dictionary tiddler called `$:/config/railroad`:\n\n```\narrow: yes\nstart: single\nend: single\ndebug: no\n```\n"
},
"$:/plugins/tiddlywiki/railroad/railroad-diagrams.css": {
"text": "\\rules only filteredtranscludeinline transcludeinline macrodef macrocallinline macrocallblock\n\n/* CSS modified for TiddlyWiki */\n\nsvg.railroad-diagram {\n\tbackground-color: &lt;&lt;colour background&gt;&gt;;\n\tborder-radius: 5px;\n}\n/*\nsvg.railroad-diagram:hover {\n\tbackground-color: hsl(30,20%,96%);\n}\n*/\nsvg.railroad-diagram path,\nsvg.railroad-diagram rect {\n\tstroke-width: 2;\n\tstroke: &lt;&lt;colour message-border&gt;&gt;;\n}\nsvg.railroad-diagram path {\n\tfill: &lt;&lt;colour background&gt;&gt;;\n}\nsvg.railroad-diagram rect {\n\tfill: &lt;&lt;colour message-background&gt;&gt;;\n}\nsvg.railroad-diagram text {\n\tfont: 14px monospace;\n\ttext-anchor: middle;\n\tfill: &lt;&lt;colour message-foreground&gt;&gt;;\n}\nsvg.railroad-diagram text.label {\n\ttext-anchor: start;\n}\nsvg.railroad-diagram text.comment {\n\tfont: italic 12px monospace;\n}\nsvg.railroad-diagram path.arrow {\n stroke-width: 2;\n}",
"type": "text/vnd.tiddlywiki",
"title": "$:/plugins/tiddlywiki/railroad/railroad-diagrams.css",
"tags": "$:/tags/Stylesheet"
},
"$:/plugins/tiddlywiki/railroad/railroad-diagrams.js": {
"text": "(function(document) {\n/* TiddlyWiki: modifications to the original library are commented like this */\n\n/*\nRailroad Diagrams\nby Tab Atkins Jr. (and others)\nhttp://xanthir.com\nhttp://twitter.com/tabatkins\nhttp://github.com/tabatkins/railroad-diagrams\n\nThis document and all associated files in the github project are licensed under CC0: http://creativecommons.org/publicdomain/zero/1.0/\nThis means you can reuse, remix, or otherwise appropriate this project for your own use WITHOUT RESTRICTION.\n(The actual legal meaning can be found at the above link.)\nDon't ask me for permission to use any part of this project, JUST USE IT.\nI would appreciate attribution, but that is not required by the license.\n*/\n\n/*\nThis file uses a module pattern to avoid leaking names into the global scope.\nThe only accidental leakage is the name \"temp\".\nThe exported names can be found at the bottom of this file;\nsimply change the names in the array of strings to change what they are called in your application.\n\nAs well, several configuration constants are passed into the module function at the bottom of this file.\nAt runtime, these constants can be found on the Diagram class.\n*/\n\nvar temp = (function(options) {\n\tfunction subclassOf(baseClass, superClass) {\n\t\tbaseClass.prototype = Object.create(superClass.prototype);\n\t\tbaseClass.prototype.$super = superClass.prototype;\n\t}\n\n\tfunction unnull(/* children */) {\n\t\treturn [].slice.call(arguments).reduce(function(sofar, x) { return sofar !== undefined ? sofar : x; });\n\t}\n\n\tfunction determineGaps(outer, inner) {\n\t\tvar diff = outer - inner;\n\t\tswitch(Diagram.INTERNAL_ALIGNMENT) {\n\t\t\tcase 'left': return [0, diff]; break;\n\t\t\tcase 'right': return [diff, 0]; break;\n\t\t\tcase 'center':\n\t\t\tdefault: return [diff/2, diff/2]; break;\n\t\t}\n\t}\n\n\tfunction wrapString(value) {\n\t\treturn ((typeof value) == 'string') ? new Terminal(value) : value;\n\t}\n\n\n\tfunction SVG(name, attrs, text) {\n\t\tattrs = attrs || {};\n\t\ttext = text || '';\n\t\tvar el = document.createElementNS(\"http://www.w3.org/2000/svg\",name);\n\t\tfor(var attr in attrs) {\n\t\t\tel.setAttribute(attr, attrs[attr]);\n\t\t}\n\t\tel.textContent = text;\n\t\treturn el;\n\t}\n\n\tfunction FakeSVG(tagName, attrs, text){\n\t\tif(!(this instanceof FakeSVG)) return new FakeSVG(tagName, attrs, text);\n\t\tif(text) this.children = text;\n\t\telse this.children = [];\n\t\tthis.tagName = tagName;\n\t\tthis.attrs = unnull(attrs, {});\n\t\treturn this;\n\t};\n\tFakeSVG.prototype.format = function(x, y, width) {\n\t\t// Virtual\n\t};\n\tFakeSVG.prototype.addTo = function(parent) {\n\t\tif(parent instanceof FakeSVG) {\n\t\t\tparent.children.push(this);\n\t\t\treturn this;\n\t\t} else {\n\t\t\tvar svg = this.toSVG();\n\t\t\tparent.appendChild(svg);\n\t\t\treturn svg;\n\t\t}\n\t};\n\tFakeSVG.prototype.toSVG = function() {\n\t\tvar el = SVG(this.tagName, this.attrs);\n\t\tif(typeof this.children == 'string') {\n\t\t\tel.textContent = this.children;\n\t\t} else {\n\t\t\tthis.children.forEach(function(e) {\n\t\t\t\tel.appendChild(e.toSVG());\n\t\t\t});\n\t\t}\n\t\treturn el;\n\t};\n\tFakeSVG.prototype.toString = function() {\n\t\tvar str = '&lt;' + this.tagName;\n\t\tvar group = this.tagName == \"g\" || this.tagName == \"svg\";\n\t\tfor(var attr in this.attrs) {\n\t\t\tstr += ' ' + attr + '=\"' + (this.attrs[attr]+'').replace(/&amp;/g, '&amp;amp;').replace(/\"/g, '&amp;quot;') + '\"';\n\t\t}\n\t\tstr += '&gt;';\n\t\tif(group) str += \"\\n\";\n\t\tif(typeof this.children == 'string') {\n\t\t\tstr += this.children.replace(/&amp;/g, '&amp;amp;').replace(/&lt;/g, '&amp;lt;');\n\t\t} else {\n\t\t\tthis.children.forEach(function(e) {\n\t\t\t\tstr += e;\n\t\t\t});\n\t\t}\n\t\tstr += '&lt;/' + this.tagName + '&gt;\\n';\n\t\treturn str;\n\t}\n\n\tfunction Path(x,y,attrs) {\n\t\tif(!(this instanceof Path)) return new Path(x,y,attrs);\n\t\tFakeSVG.call(this, 'path', attrs);\n\t\tthis.attrs.d = \"M\"+x+' '+y;\n\t}\n\tsubclassOf(Path, FakeSVG);\n\tPath.prototype.m = function(x,y) {\n\t\tthis.
"type": "application/javascript",
"title": "$:/plugins/tiddlywiki/railroad/railroad-diagrams.js",
"module-type": "library"
},
"$:/plugins/tiddlywiki/railroad/parser.js": {
"title": "$:/plugins/tiddlywiki/railroad/parser.js",
"text": "/*\\\ntitle: $:/plugins/tiddlywiki/railroad/parser.js\ntype: application/javascript\nmodule-type: library\n\nParser for the source of a railroad diagram.\n\n[:x]\t\t\toptional, normally included\n[x]\t\t\t\toptional, normally omitted\n{x}\t\t\t\tone or more\n{x +\",\"}\t\tone or more, comma-separated\n[{:x}]\t\t\tzero or more, normally included\n[{:x +\",\"}]\t\tzero or more, comma-separated, normally included\n[{x}]\t\t\tzero or more, normally omitted\n[{x +\",\"}]\t\tzero or more, comma-separated, normally omitted\nx y z\t\t\tsequence\n&lt;-x y z-&gt;\t\texplicit sequence\n(x|y|z)\t\t\talternatives\n(x|:y|z)\t\talternatives, normally y\n\"x\"\t\t\t\tterminal\n&lt;\"x\"&gt;\t\t\tnonterminal\n/\"blah\"/\t\tcomment\n-\t\t\t\tdummy\n[[x|\"tiddler\"]]\tlink\n{{\"tiddler\"}}\ttransclusion\n\n\"x\" can also be written 'x' or \"\"\"x\"\"\"\n\npragmas:\n\t\\arrow yes|no\n\t\\debug yes|no\n\t\\start single|double|none\n\t\\end single|double|none\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar components = require(\"$:/plugins/tiddlywiki/railroad/components.js\").components;\n\nvar Parser = function(widget,source,options) {\n\tthis.widget = widget;\n\tthis.source = source;\n\tthis.options = options;\n\tthis.tokens = this.tokenise(source);\n\tthis.tokenPos = 0;\n\tthis.advance();\n\tthis.content = this.parseContent();\n\tthis.root = new components.Root(this.content);\n\tthis.checkFinished();\n};\n\n/////////////////////////// Parser dispatch\n\nParser.prototype.parseContent = function() {\n\tvar content = [];\n\t// Parse zero or more components\n\twhile(true) {\n\t\tvar component = this.parseComponent();\n\t\tif(!component) {\n\t\t\tbreak;\n\t\t}\n\t\tif(!component.isPragma) {\n\t\t\tcontent.push(component);\n\t\t}\n\t}\n\treturn content;\n};\n\nParser.prototype.parseComponent = function() {\n\tvar component = null;\n\tif(this.token) {\n\t\tif(this.at(\"string\")) {\n\t\t\tcomponent = this.parseTerminal();\n\t\t} else if(this.at(\"name\")) {\n\t\t\tcomponent = this.parseName();\n\t\t} else if(this.at(\"pragma\")) {\n\t\t\tcomponent = this.parsePragma();\n\t\t} else {\n\t\t\tswitch(this.token.value) {\n\t\t\t\tcase \"[\":\n\t\t\t\t\tcomponent = this.parseOptional();\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"{\":\n\t\t\t\t\tcomponent = this.parseRepeated();\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"&lt;\":\n\t\t\t\t\tcomponent = this.parseNonterminal();\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"(\":\n\t\t\t\t\tcomponent = this.parseChoice();\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"/\":\n\t\t\t\t\tcomponent = this.parseComment();\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"[[\":\n\t\t\t\t\tcomponent = this.parseLink();\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"{{\":\n\t\t\t\t\tcomponent = this.parseTransclusion();\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"&lt;-\":\n\t\t\t\t\tcomponent = this.parseSequence();\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"-\":\n\t\t\t\t\tcomponent = this.parseDummy();\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\treturn component;\n};\n\n/////////////////////////// Specific components\n\nParser.prototype.parseChoice = function() {\n\t// Consume the (\n\tthis.advance();\n\tvar content = [],\n\t\tcolon = -1;\n\tdo {\n\t\t// Allow at most one branch to be prefixed with a colon\n\t\tif(colon === -1 &amp;&amp; this.eat(\":\")) {\n\t\t\tcolon = content.length;\n\t\t}\n\t\t// Parse the next branch\n\t\tcontent.push(this.parseContent());\n\t} while(this.eat(\"|\"));\n\t// Consume the closing bracket\n\tthis.close(\")\");\n\t// Create a component\n\treturn new components.Choice(content,colon === -1 ? 0 : colon);\n};\n\nParser.prototype.parseComment = function() {\n\t// Consume the /\n\tthis.advance();\n\t// The comment's content should be in a string literal\n\tvar content = this.expectString(\"after /\");\n\t// Consume the closing /\n\tthis.close(\"/\");\n\t// Create a component\n\treturn new components.Comment(content);\n};\n\nParser.prototype.parseDummy = function() {\n\t// Consume the -\n\tthis.advance();\n\t// Create a component\n\treturn new components.Dummy();\n};\n\nParser.prototype.parseLi
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/tiddlywiki/railroad/typed-parser.js": {
"title": "$:/plugins/tiddlywiki/railroad/typed-parser.js",
"text": "/*\\\ntitle: $:/plugins/tiddlywiki/railroad/typed-parser.js\ntype: application/javascript\nmodule-type: parser\n\nThis parser wraps unadorned railroad syntax into a railroad widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar RailroadParser = function(type,text,options) {\n\tvar element = {\n\t\t\ttype: \"railroad\",\n\t\t\ttag: \"$railroad\",\n\t\t\ttext: text\n\t\t};\n\tthis.tree = [element];\nconsole.log(text);\n};\n\nexports[\"text/vnd.tiddlywiki.railroad\"] = RailroadParser;\n\n})();\n\n",
"type": "application/javascript",
"module-type": "parser"
},
"$:/plugins/tiddlywiki/railroad/wrapper.js": {
"title": "$:/plugins/tiddlywiki/railroad/wrapper.js",
"text": "/*\\\ntitle: $:/plugins/tiddlywiki/railroad/wrapper.js\ntype: application/javascript\nmodule-type: widget\n\nWrapper for `railroad-diagrams.js` that provides a `&lt;$railroad&gt;` widget.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Parser = require(\"$:/plugins/tiddlywiki/railroad/parser.js\").parser,\n\tWidget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar RailroadWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\nvar RAILROAD_OPTIONS = \"$:/config/railroad\";\n\n/*\nInherit from the base widget class\n*/\nRailroadWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nRailroadWidget.prototype.render = function(parent,nextSibling) {\n\t// Housekeeping\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\t// Get the source text\n\tvar source = this.getAttribute(\"text\",this.parseTreeNode.text || \"\");\n\t// Create a div to contain the SVG or error message\n\tvar div = this.document.createElement(\"div\");\n\ttry {\n\t\t// Initialise options from the config tiddler or widget attributes\n\t\tvar config = this.wiki.getTiddlerData(RAILROAD_OPTIONS,{});\n\t\tvar options = {\n\t\t\tarrow: this.getAttribute(\"arrow\", config.arrow || \"yes\") === \"yes\",\n\t\t\tdebug: this.getAttribute(\"debug\", config.debug || \"no\") === \"yes\",\n\t\t\tstart: this.getAttribute(\"start\", config.start || \"single\"),\n\t\t\tend: this.getAttribute(\"end\", config.end || \"single\")\n\t\t};\n\t\t// Parse the source\n\t\tvar parser = new Parser(this,source,options);\n\t\t// Generate content into the div\n\t\tif(parser.options.debug) {\n\t\t\tthis.renderDebug(parser,div);\n\t\t} else {\n\t\t\tthis.renderSvg(parser,div);\n\t\t}\n\t} catch(ex) {\n\t\tdiv.className = \"tc-error\";\n\t\tdiv.textContent = ex;\n\t}\n\t// Insert the div into the DOM\n\tparent.insertBefore(div,nextSibling);\n\tthis.domNodes.push(div);\n};\n\nRailroadWidget.prototype.renderDebug = function(parser,div) {\n\tvar output = [\"&lt;pre&gt;\"];\n\tparser.root.debug(output, \"\");\n\toutput.push(\"&lt;/pre&gt;\");\n\tdiv.innerHTML = output.join(\"\");\n};\n\nRailroadWidget.prototype.renderSvg = function(parser,div) {\n\t// Generate a model of the diagram\n\tvar fakeSvg = parser.root.toSvg(parser.options);\n\t// Render the model into a tree of SVG DOM nodes\n\tvar svg = fakeSvg.toSVG();\n\t// Fill in the remaining attributes of any link nodes\n\tthis.patchLinks(svg);\n\t// Insert the SVG tree into the div\n\tdiv.appendChild(svg);\n};\n\nRailroadWidget.prototype.patchLinks = function(node) {\n\tvar self = this;\n\tif(!$tw.node &amp;&amp; node.hasChildNodes()) {\n\t\tvar children = node.childNodes;\n\t\tfor(var i=0; i&lt;children.length; i++) {\n\t\t\tvar child = children[i];\n\t\t\tvar attributes = child.attributes;\n\t\t\tif(attributes) {\n\t\t\t\t// Find each element that has a data-tw-target attribute\n\t\t\t\tvar target = child.attributes[\"data-tw-target\"];\n\t\t\t\tif(target !== undefined) {\n\t\t\t\t\ttarget = target.value;\n\t\t\t\t\tif(child.attributes[\"data-tw-external\"]) {\n\t\t\t\t\t\t// External links are straightforward\n\t\t\t\t\t\tchild.setAttribute(\"target\",\"_blank\");\n\t\t\t\t\t\tchild.setAttribute(\"rel\",\"noopener noreferrer\");\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// Each internal link gets its own onclick handler, capturing its own copy of target\n\t\t\t\t\t\t(function(myTarget) {\n\t\t\t\t\t\t\tchild.onclick = function(event) {\n\t\t\t\t\t\t\t\tself.dispatchLink(myTarget,event);\n\t\t\t\t\t\t\t\treturn false;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t})(target);\n\t\t\t\t\t\ttarget = \"#\" + target;\n\t\t\t\t\t}\n\t\t\t\t\tchild.setAttributeNS(\"http://www.w3.org/1999/xlink\",\"href\",target);\n\t\t\t\t}\n\t\t\t}\n\t\t\tthis.patchLinks(child);\n\t\t}\n\t}\n};\n\nRailroadWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.text || changedTiddlers[RAILROAD_OPTIONS]) {\n\t\tthis.refreshSelf();\
"type": "application/javascript",
"module-type": "widget"
}
}
}</pre>
</div>
<div created="20200321081941084" modified="20200321081941084" storyleft="0px" storyright="770px" title="$:/plugins/TWaddle/LeftBar/temp">
<pre></pre>
</div>
<div author="Mario Pietsch" core-version="&gt;=5.1.15" dependents="" description="Internal links are added to tabs if selected" icon="$:/plugins/wikilabs/link-to-tabs/icon" list="readme license history" name="Link to Tabs" plugin-type="plugin" title="$:/plugins/wikilabs/link-to-tabs" type="application/json" version="2.0.1">
<pre>{"tiddlers":{"$:/core/macros/tabs":{"tags":"$:/tags/Macro","text":"\\define tabs(tabsList,default,state:\"$:/state/tab\",class,template,buttonTemplate,retain,actions,explicitState)\n&lt;$set name=\"qualifiedState\" value=&lt;&lt;qualify \"$state$\"&gt;&gt;&gt;\n&lt;$set name=\"tabsState\" filter=\"[&lt;__explicitState__&gt;minlength[1]] ~[&lt;qualifiedState&gt;]\"&gt;\n&lt;div class=\"tc-tab-set $class$\"&gt;\n&lt;div class=\"tc-tab-buttons $class$\"&gt;\n&lt;$list filter=\"$tabsList$\" variable=\"currentTab\" storyview=\"pop\"&gt;&lt;$set name=\"save-currentTiddler\" value=&lt;&lt;currentTiddler&gt;&gt;&gt;&lt;$tiddler tiddler=&lt;&lt;currentTab&gt;&gt;&gt;&lt;$button set=&lt;&lt;tabsState&gt;&gt; setTo=&lt;&lt;currentTab&gt;&gt; default=\"$default$\" selectedClass=\"tc-tab-selected\" tooltip={{!!tooltip}}&gt;\n&lt;$tiddler tiddler=&lt;&lt;save-currentTiddler&gt;&gt;&gt;\n&lt;$set name=\"tv-wikilinks\" value=\"no\"&gt;\n&lt;$transclude tiddler=\"$buttonTemplate$\" mode=\"inline\"&gt;\n&lt;$transclude tiddler=&lt;&lt;currentTab&gt;&gt; field=\"caption\"&gt;\n&lt;$macrocall $name=\"currentTab\" $type=\"text/plain\" $output=\"text/plain\"/&gt;\n&lt;/$transclude&gt;\n&lt;/$transclude&gt;\n&lt;/$set&gt;&lt;/$tiddler&gt;$actions$&lt;/$button&gt;&lt;span class=\"wltc-link-to-tab\"&gt;&lt;$link overrideClass=\"\" to=&lt;&lt;currentTiddler&gt;&gt; &gt;{{$:/core/images/link}}&lt;/$link&gt;&lt;/span&gt;&lt;/$tiddler&gt;&lt;/$set&gt;&lt;/$list&gt;\n&lt;/div&gt;\n&lt;div class=\"tc-tab-divider $class$\"/&gt;\n&lt;div class=\"tc-tab-content $class$\"&gt;\n&lt;$list filter=\"$tabsList$\" variable=\"currentTab\"&gt;\n\n&lt;$reveal type=\"match\" state=&lt;&lt;tabsState&gt;&gt; text=&lt;&lt;currentTab&gt;&gt; default=\"$default$\" retain=\"\"\"$retain$\"\"\"&gt;\n\n&lt;$transclude tiddler=\"$template$\" mode=\"block\"&gt;\n\n&lt;$transclude tiddler=&lt;&lt;currentTab&gt;&gt; mode=\"block\"/&gt;\n\n&lt;/$transclude&gt;\n\n&lt;/$reveal&gt;\n\n&lt;/$list&gt;\n&lt;/div&gt;\n&lt;/div&gt;\n&lt;/$set&gt;\n&lt;/$set&gt;\n\\end\n"},"$:/core/ui/ControlPanel/Settings/link-to-tabs":{"caption":"Link-to-Tabs plugin","created":"20190712133607244","modified":"20190714104631250","tags":"$:/tags/ControlPanel/Settings","type":"text/vnd.tiddlywiki","text":"&lt;$checkbox tiddler=\"$:/plugins/wikilabs/link-to-tabs/config\" field=\"show-all-links\" checked=\"inline-block\" unchecked=\"none\" default=\"none\"&gt; Show internal tab link for ''all tabs''&lt;/$checkbox&gt;\n\n&lt;$checkbox tiddler=\"$:/plugins/wikilabs/link-to-tabs/config\" field=\"show-single-link\" checked=\"inline-block\" unchecked=\"none\" default=\"inline-block\"&gt; Show internal tab link for ''selected tabs''&lt;/$checkbox&gt;\n\n&lt;$checkbox tiddler=\"$:/plugins/wikilabs/link-to-tabs/config\" field=\"initial-opacity\" checked=\"0\" unchecked=\"0.7\" default=\"0.7\"&gt; Tab links are initially hidden and need mouse hover to become visible.&lt;/$checkbox&gt; The transition time in seconds is: &lt;$edit-text tiddler=\"$:/plugins/wikilabs/link-to-tabs/config\" field=\"transition\" default=\"0.3\"/&gt;\n\n&lt;$button message=\"tm-delete-tiddler\" param=\"$:/plugins/wikilabs/link-to-tabs/config\"&gt;\nReset to Default!\n&lt;/$button&gt;"},"$:/plugins/wikilabs/link-to-tabs/config":{"created":"20190712133008077","initial-opacity":"0.7","modified":"20190714104541701","show-all-links":"none","show-single-link":"inline-block","transition":"0.3","type":"text/vnd.tiddlywiki","text":"This tiddler is used to configure the \"Link-to-tabs\" plugin behaviour. \n\nThere are 4 fields, which are used by [[$:/plugins/wikilabs/link-to-tabs/styles]] enable and disable the internal links. \n\n* show-all-links: {{!!show-all-links}}\n* show-single-link: {{!!show-single-link}}\n* initial-opacity: {{!!initial-opacity}}\n* transition time in seconds: {{!!transition}}\n"},"$:/plugins/wikilabs/link-to-tabs/history":{"text":"V 2.0.1 - 2020-12-25\n\n* update license\n\nV 2.0.0 - 2020.12.05\n\n* Update $:/core/macros/tabs to V5.1.23\n\nV 1.1.1 - 2020.01.19\n\n* Update license link/text\n\nV 1.1.0 - 2019.07.14\n\n* A
</div>
<div created="20170510152735336" creator="Mat von TWaddle" modified="20170515062245651" modifier="Mat von TWaddle" tags="" title="$:/richlink/.dictionary" type="application/x-tiddler-dictionary">
<pre>www.youtube.com: richlink/youtube
soundcloud.com: richlink/soundcloud
en.wikipedia.org: richlink/wikipedia
tiddlywiki.com: richlink/docs
twitter.com: richlink/tweet
github.com: richlink/github
jsfiddle.net: richlink/jsfiddle
disq.us: richlink/disqus
pdf: richlink/iframe
txt: richlink/txt
jpg: richlink/img
JPG: richlink/img
png: richlink/img
mp3: richlink/audio
ogg: richlink/audio
wav: richlink/audio
flac: richlink/audio
mp4: richlink/video
ogv: richlink/video
webm: richlink/video</pre>
</div>
<div created="20170512211451944" creator="Mat von TWaddle" modified="20170512214408708" modifier="Mat von TWaddle" tags="" title="$:/richlink/audio">
<pre>&lt;audio src=&lt;&lt;link&gt;&gt; controls preload="auto" class="richlink-audio"/&gt;
&lt;style&gt;
.richlink-audio {width:100%;}
&lt;/style&gt;</pre>
</div>
<div created="20170510173425597" creator="Mat von TWaddle" modified="20170512160152952" modifier="Mat von TWaddle" tags="" title="$:/richlink/img">
<pre>&lt;div class="richlink-img"&gt;
&lt;$image source=&lt;&lt;link&gt;&gt;/&gt;
&lt;span class="richlink-img-caption"&gt;
&lt;&lt;1&gt;&gt;
&lt;/span&gt;
&lt;/div&gt;
&lt;style&gt;
.richlink-img {
display:inline-block;
background: #fff;
margin: 0 0 27px 30px;
padding: 10px 10px 15px;
text-align: center;
font-family: "Marker Felt",sans-serif;
text-decoration: none;
color: #333;
font-size: 18px;
-webkit-box-shadow: 0 3px 6px rgba(0,0,0,.55);
-moz-box-shadow: 0 3px 6px rgba(0,0,0,.55);
-webkit-transform: rotate(-2deg);
-webkit-transition: -webkit-transform .15s linear;
-moz-transform: rotate(-2deg);
}
.richlink-img-caption {
display:block;
text-align:center;
}
&lt;/style&gt;</pre>
</div>
<div created="20170512022223951" creator="Mat von TWaddle" modified="20170512160001092" modifier="Mat von TWaddle" title="$:/richlink/youtube">
<pre>\define rich-youtube(link)
&lt;iframe class=rich-iframe src="$link$" frameborder="0" width=100% allowfullscreen/&gt;
\end
&lt;$set name=link
filter="[&lt;link&gt;search[watch]split:after[=]addprefix[https://www.youtube.com/embed/]]"
emptyValue=&lt;&lt;link&gt;&gt; &gt;
&lt;$macrocall $name=rich-youtube link=&lt;&lt;link&gt;&gt; /&gt;
&lt;/$set&gt;
&lt;style&gt;.rich-iframe {height:calc(0.56 * {{$:/themes/tiddlywiki/vanilla/metrics/tiddlerwidth}}); }
&lt;/style&gt;</pre>
</div>
<div caption="Proyectos" created="20200430123440360" modified="20210925210003831" orden="03" tags="$:/tags/SideBar" title="$:/sidebar/proyectos" type="text/vnd.tiddlywiki">
<pre>&lt;div class="tc-table-of-contents"&gt;
&lt;&lt;toc-selective-expandable 'Project' sort[orden]&gt;&gt;
&lt;/div&gt;</pre>
</div>
<div created="20210925144347695" modified="20210925144355193" title="$:/SiteSubtitle">
<pre>Wiki del Hackerspace Copincha</pre>
</div>
<div bag="default" created="20201210193130921" creator="M0" modified="20210917060400516" modifier="M0" revision="0" title="$:/SiteTitle" type="text/vnd.tiddlywiki">
<pre>Copinchapedia</pre>
</div>
<div caption="Spell check" created="20181114185428659" modified="20181114185743173" tags="$:/tags/EditPreview" title="$:/SpellCheck_EditorPreview" type="application/x-tiddler">
<pre>&lt;$edit-text tiddler=&lt;&lt;currentTiddler&gt;&gt; class="tc-spell-check-preview"/&gt;
&lt;style&gt;
.tc-spell-check-preview {width:100%;}
&lt;/style&gt;</pre>
</div>
<div created="20210426040131298" modified="20210925211936828" title="$:/state/advancedsearch/currentTab">
<pre>$:/core/ui/AdvancedSearch/Shadows</pre>
</div>
<div created="20210426040136105" modified="20210925211015007" title="$:/state/advancedsearch/standard/currentTab">
<pre>$:/plugins/sq/streams-search/StreamSearchResults</pre>
</div>
<div created="20210426045113765" modified="20210426045143163" title="$:/state/commander/log-tiddler">
<pre>$:/temp/commander/logs/tid-2</pre>
</div>
<div created="20210426045035682" modified="20210426045035682" title="$:/state/commander/tiddler-addfields-status">
<pre>addfields</pre>
</div>
<div created="20210426035558738" modified="20210426054257961" title="$:/state/dynamictables/your-state-tid/expand" type="application/json">
<pre>{}</pre>
</div>
<div created="20210725021304134" modified="20210917055302669" title="$:/state/import/select-all">
<pre>unchecked</pre>
</div>
<div created="20210917055218084" modified="20210917055218708" title="$:/state/plugin-info--1763372400-$:/plugins/kookma/shiraz--479113107">
<pre>history</pre>
</div>
<div created="20210923175036847" modified="20210923175036847" title="$:/state/plugin-info--896887961-$:/plugins/kookma/toc">
<pre>yes</pre>
</div>
<div created="20210923175038863" modified="20210923175049792" title="$:/state/plugin-info--896887961-$:/plugins/kookma/toc---1709694187">
<pre>readme</pre>
</div>
<div created="20210425045246707" modified="20210923204200824" title="$:/state/search/currentTab">
<pre>$:/plugins/sq/streams-search/StreamSearchResults</pre>
</div>
<div created="20210917065626016" modified="20210917065627121" title="$:/state/shiraz/slider-macro/Cartografias de bolsillo/Insertar el mapa en otra web">
<pre>closed</pre>
</div>
<div created="20210917065628456" modified="20210917065629616" title="$:/state/shiraz/slider-macro/Cartografias de bolsillo/Mapa con Tiddlywiki">
<pre>closed</pre>
</div>
<div created="20210912145323799" modified="20210912145325406" title="$:/state/shiraz/slider-macro/Copincha/Concepto/Acciones">
<pre>closed</pre>
</div>
<div created="20210912145326110" modified="20210925140049965" title="$:/state/shiraz/slider-macro/Copincha/Concepto/Contacto">
<pre>open</pre>
</div>
<div created="20210425045552298" modified="20210426054743239" title="$:/state/showeditpreview">
<pre>yes</pre>
</div>
<div created="20210425045940776" modified="20210925205353776" title="$:/state/sidebar">
<pre>yes</pre>
</div>
<div created="20210923183913630" modified="20210923183922022" title="$:/state/tab--1128158915">
<pre>$:/plugins/felixhayashi/tiddlymap/dialog/configureView/vis</pre>
</div>
<div created="20210923192345852" modified="20210923192345852" title="$:/state/tab--1356423374">
<pre>$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/liveTab</pre>
</div>
<div created="20210426040131298" modified="20210925211936828" title="$:/state/tab--1498284803">
<pre>$:/core/ui/AdvancedSearch/Shadows</pre>
</div>
<div created="20210725164851848" modified="20210725164852231" title="$:/state/tab--1744531714">
<pre>$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/draft</pre>
</div>
<div created="20210426040657395" modified="20210722004732982" title="$:/state/tab--1913893819">
<pre>Responders Statistics</pre>
</div>
<div created="20210722005026491" modified="20210925212256905" title="$:/state/tab--1963855381">
<pre>$:/core/ui/ControlPanel/StoryView</pre>
</div>
<div created="20210426040625714" modified="20210722013357455" title="$:/state/tab--2041627287">
<pre>Responders Statistics</pre>
</div>
<div created="20210923212748248" modified="20210925140126645" title="$:/state/tab--356319527">
<pre>sidebar/tab1</pre>
</div>
<div created="20210923212756952" modified="20211115195746873" title="$:/state/tab--595412856">
<pre>sidebar/tab2</pre>
</div>
<div created="20210923183759456" modified="20210923183759456" title="$:/state/tab--648189706">
<pre>$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/editor</pre>
</div>
<div created="20210923212704866" modified="20210923212704866" title="$:/state/tab--668766041">
<pre>sidebar/tab1</pre>
</div>
<div created="20210725043417281" modified="20210923175011845" title="$:/state/tab--697582678">
<pre>$:/core/ui/ControlPanel/Settings/TiddlyWiki</pre>
</div>
<div created="20210923165004665" modified="20210925204441298" title="$:/state/tab--86143343">
<pre>$:/core/ui/ControlPanel/Plugins/Installed/Plugins</pre>
</div>
<div created="20210923192255134" modified="20210923192255134" title="$:/state/tab-1082749355">
<pre>$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/liveTab</pre>
</div>
<div created="20210725033558978" modified="20210725033558978" title="$:/state/tab-161607098">
<pre>$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/draft</pre>
</div>
<div created="20210424154523334" modified="20210925212252559" title="$:/state/tab-1749438307">
<pre>$:/core/ui/ControlPanel/Appearance</pre>
</div>
<div created="20210426045133841" modified="20210426045133841" title="$:/state/tab-1765345818">
<pre>$:/plugins/kookma/commander/tiddler/uicomp/delete-tiddlers</pre>
</div>
<div created="20210725164924734" modified="20210725164924734" title="$:/state/tab-177089240">
<pre>$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/draft</pre>
</div>
<div created="20210725164822646" modified="20210725164822646" title="$:/state/tab-27387430">
<pre>$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/draft</pre>
</div>
<div created="20210923193009770" modified="20210923193009770" title="$:/state/tab-563689003">
<pre>$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/draft</pre>
</div>
<div created="20210923183726330" modified="20210923183734826" title="$:/state/tab-598579191">
<pre>$:/plugins/felixhayashi/tiddlymap/dialog/configureView/default</pre>
</div>
<div created="20210923205948101" modified="20210923205948101" title="$:/state/tab-658165082">
<pre>$:/plugins/tg/layout/settings-toolbar-up</pre>
</div>
<div created="20210726120416042" modified="20210726120418987" title="$:/state/tab-675828809">
<pre>$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/original</pre>
</div>
<div created="20210426041043609" modified="20210722004944630" title="$:/state/tab/moresidebar-1850697562">
<pre>$:/plugins/kookma/shiraz/ui/ControlPanel/Settings</pre>
</div>
<div created="20210426040136106" modified="20210925211015008" title="$:/state/tab/search-results/advancedsearch">
<pre>$:/plugins/sq/streams-search/StreamSearchResults</pre>
</div>
<div created="20210425045246707" modified="20210923204200824" title="$:/state/tab/search-results/sidebar">
<pre>$:/plugins/sq/streams-search/StreamSearchResults</pre>
</div>
<div created="20210917061619211" modified="20210925205811243" title="$:/state/tab/sidebar--595412856">
<pre>[[sidebar/encuentros]]</pre>
</div>
<div created="20210923212606449" modified="20210923212638073" title="$:/state/tab1--668766041">
<pre>sidebar/tab1</pre>
</div>
<div created="20210722005029676" modified="20210917054024073" title="$:/state/tabs/controlpanel/toolbars-1345989671">
<pre>$:/core/ui/ControlPanel/Toolbars/PageControls</pre>
</div>
<div created="20210725041759991" modified="20210725041759991" title="$:/state/tabs/MapElementTypeManager-743493466">
<pre>$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/styling</pre>
</div>
<div created="20210725031006438" modified="20210727122156878" title="$:/state/toc/Contenidos-Copincha-1369173344">
<pre>open</pre>
</div>
<div created="20210727122241169" modified="20210727122241169" title="$:/state/toc/Contenidos-Copincha-967464839">
<pre>open</pre>
</div>
<div created="20210727122203429" modified="20210727122203429" title="$:/state/toc/Contenidos/Copincha-Copincha/Concepto-1369173344">
<pre>open</pre>
</div>
<div created="20210727122611809" modified="20210727122611809" title="$:/state/toc/Contenidos/Copincha-Copincha/Concepto-967464839">
<pre>open</pre>
</div>
<div created="20210727122713700" modified="20210727135543268" title="$:/state/toc/Copincha/Concepto-Copinchapedia-967464839">
<pre>close</pre>
</div>
<div created="20210727132309053" modified="20210727132309054" title="$:/state/toc/Copincha/Concepto/Copinchapedia-Contribuir en Copinchapedia-967464839">
<pre>open</pre>
</div>
<div created="20210727132310853" modified="20210727132310854" title="$:/state/toc/Copincha/Concepto/Copinchapedia-Copinchapedia/Plantillas-967464839">
<pre>open</pre>
</div>
<div created="20210727132312069" modified="20210727132312069" title="$:/state/toc/Copincha/Concepto/Copinchapedia-Tutorial Copinchapedia-967464839">
<pre>open</pre>
</div>
<div created="20210917064058347" modified="20210917064058347" title="$:/state/toc/Copincha/Sidebar-¿Qué es Copincha?--1378386848">
<pre>open</pre>
</div>
<div created="20210923181155237" modified="20210923181156403" title="$:/state/toc/Copincha/Sidebar-¿Qué es Copincha?-1369173344">
<pre>close</pre>
</div>
<div created="20210727140220787" modified="20210917073944199" title="$:/state/toc/Copincha/Sidebar-¿Qué es Copincha?-967464839">
<pre>open</pre>
</div>
<div created="20210727122602115" modified="20210727122605518" title="$:/state/toc/Encuentros-Cafe Reparador--829956098">
<pre>close</pre>
</div>
<div created="20210917052811622" modified="20210917052811622" title="$:/state/toc/Encuentros-Cafe Sopresa--829956098">
<pre>open</pre>
</div>
<div created="20210727122606538" modified="20210917052812909" title="$:/state/toc/Encuentros-Cafe Sorpresa--829956098">
<pre>open</pre>
</div>
<div created="20210727122608715" modified="20210727122609442" title="$:/state/toc/Encuentros-Cafe Viaje en Casa--829956098">
<pre>close</pre>
</div>
<div created="20210917065458335" modified="20210923181210138" title="$:/state/toc/Project-3D a lo cubano--1378386848">
<pre>close</pre>
</div>
<div created="20210917064200674" modified="20210917064434484" title="$:/state/toc/Project-Archivo informal--1378386848">
<pre>open</pre>
</div>
<div created="20210917064909286" modified="20210917065105606" title="$:/state/toc/Project-Archivo informal-1568814661">
<pre>open</pre>
</div>
<div created="20210917064157890" modified="20210917064157890" title="$:/state/toc/Project-Cuba con Impresoras 3D--1378386848">
<pre>open</pre>
</div>
<div created="20210917064210012" modified="20210923181211659" title="$:/state/toc/Project-DOTS--1378386848">
<pre>close</pre>
</div>
<div created="20210917071914592" modified="20210917074940506" title="$:/state/toc/Project-Jardines Digitales de Bolsillo--1378386848">
<pre>open</pre>
</div>
<div created="20210923201319683" modified="20210923201322728" title="$:/state/toc/Project-Jardines Digitales de Bolsillo--652075886">
<pre>close</pre>
</div>
<div created="20210917064212947" modified="20210917065537509" title="$:/state/toc/Project-Jardines Digitales--1378386848">
<pre>open</pre>
</div>
<div created="20210917065116351" modified="20210917065118118" title="$:/state/toc/Project-Jardines Digitales-1568814661">
<pre>open</pre>
</div>
<div created="20210917064201891" modified="20210917070129106" title="$:/state/toc/Project-Plástico Leal--1378386848">
<pre>open</pre>
</div>
<div created="20210917064911198" modified="20210917064911198" title="$:/state/toc/Project-Plástico Leal-1568814661">
<pre>open</pre>
</div>
<div created="20210917064203995" modified="20210923181208728" title="$:/state/toc/Project-Precious Plastic La Habana--1378386848">
<pre>close</pre>
</div>
<div created="20210917064913557" modified="20210917064913557" title="$:/state/toc/Project-Precious Plastic La Habana-1568814661">
<pre>open</pre>
</div>
<div created="20210917064206588" modified="20210917064551012" title="$:/state/toc/Project-Trapiche--1378386848">
<pre>open</pre>
</div>
<div created="20210917065500104" modified="20210917065857513" title="$:/state/toc/Project/3D a lo cubano-Impresora Copincha--1378386848">
<pre>open</pre>
</div>
<div created="20210917064435476" modified="20210917064435476" title="$:/state/toc/Project/Archivo informal-Trapiche--1378386848">
<pre>open</pre>
</div>
<div created="20210917064710317" modified="20210917064710317" title="$:/state/toc/Project/Cuba con Impresoras 3D-Impresora Copincha--1378386848">
<pre>open</pre>
</div>
<div created="20210917073954159" modified="20210917081458003" title="$:/state/toc/Project/Jardines Digitales de Bolsillo-Archivo informal--1378386848">
<pre>open</pre>
</div>
<div created="20210917073453878" modified="20210917081500628" title="$:/state/toc/Project/Jardines Digitales de Bolsillo-Cartografias de bolsillo--1378386848">
<pre>open</pre>
</div>
<div created="20210917073654319" modified="20210917081449763" title="$:/state/toc/Project/Jardines Digitales de Bolsillo-Copinchapedia--1378386848">
<pre>close</pre>
</div>
<div created="20210917064318723" modified="20210917065710585" title="$:/state/toc/Project/Jardines Digitales-Archivo informal--1378386848">
<pre>close</pre>
</div>
<div created="20210917065542473" modified="20210917065944274" title="$:/state/toc/Project/Jardines Digitales-Copinchapedia--1378386848">
<pre>open</pre>
</div>
<div created="20210917065601896" modified="20210917065601896" title="$:/state/toc/Project/Jardines Digitales-Mapas digitales de bolsillo--1378386848">
<pre>open</pre>
</div>
<div created="20210917064320772" modified="20210917064320772" title="$:/state/toc/Project/Jardines Digitales/Archivo informal-Trapiche--1378386848">
<pre>open</pre>
</div>
<div created="20210917070138042" modified="20210917070157554" title="$:/state/toc/Project/Plástico Leal-Plástico Leal - La Conexión--1378386848">
<pre>close</pre>
</div>
<div created="20210917065132182" modified="20210917065133327" title="$:/state/toc/Project/Plástico Leal-Plástico Leal - La Conexión-1568814661">
<pre>close</pre>
</div>
<div created="20210917064417700" modified="20210917070202322" title="$:/state/toc/Project/Plástico Leal-Plástico Leal - La Maquinaria--1378386848">
<pre>open</pre>
</div>
<div created="20210917070205354" modified="20210917070205354" title="$:/state/toc/Project/Plástico Leal/Plástico Leal - La Maquinaria-Extrusora Precious Plastic--1378386848">
<pre>open</pre>
</div>
<div created="20210917070225074" modified="20210917072024776" title="$:/state/toc/Project/Plástico Leal/Plástico Leal - La Maquinaria-Impresora Copincha--1378386848">
<pre>open</pre>
</div>
<div created="20210917071018885" modified="20210917071020333" title="$:/state/toc/Project/Precious Plastic La Habana-Mapa digital - reciclaje plástico--1378386848">
<pre>close</pre>
</div>
<div created="20210917071421446" modified="20210917071421446" title="$:/state/toc/Project/Precious Plastic La Habana-Mapa digital para el reciclaje plástico--1378386848">
<pre>open</pre>
</div>
<div created="20210917070434090" modified="20210917072110610" title="$:/state/toc/Project/Precious Plastic La Habana-Máquinas para reciclar plásticos--1378386848">
<pre>open</pre>
</div>
<div created="20210917064917613" modified="20210917064918782" title="$:/state/toc/Project/Precious Plastic La Habana-Máquinas para reciclar plásticos-1568814661">
<pre>close</pre>
</div>
<div created="20210917070437099" modified="20210917071150357" title="$:/state/toc/Project/Precious Plastic La Habana-Máquinas Precious Plastic--1378386848">
<pre>close</pre>
</div>
<div created="20210917064731349" modified="20210917072117481" title="$:/state/toc/Project/Precious Plastic La Habana-Plástico Leal--1378386848">
<pre>open</pre>
</div>
<div created="20210917065126582" modified="20210917065129583" title="$:/state/toc/Project/Precious Plastic La Habana-Plástico Leal-1568814661">
<pre>close</pre>
</div>
<div created="20210917072352690" modified="20210917081758124" title="$:/state/toc/Project/Precious Plastic La Habana/Máquinas para reciclar plásticos-Máquinas Precious Plastic--1378386848">
<pre>open</pre>
</div>
<div created="20210917064733486" modified="20210917081837451" title="$:/state/toc/Project/Precious Plastic La Habana/Plástico Leal-Plástico Leal - La Maquinaria--1378386848">
<pre>open</pre>
</div>
<div created="20210917064735302" modified="20210917064735302" title="$:/state/toc/Project/Precious Plastic La Habana/Plástico Leal/Plástico Leal - La Maquinaria-Impresora Copincha--1378386848">
<pre>open</pre>
</div>
<div created="20210917072413073" modified="20210917081845469" title="$:/state/toc/Project/Precious Plastic La Habana/Plástico Leal/Plástico Leal - La Maquinaria-Máquinas para reciclar plásticos--1378386848">
<pre>open</pre>
</div>
<div created="20210917081852620" modified="20210917081852620" title="$:/state/toc/Project/Precious Plastic La Habana/Plástico Leal/Plástico Leal - La Maquinaria/Máquinas para reciclar plásticos-Impresora Copincha--1378386848">
<pre>open</pre>
</div>
<div created="20210917081901164" modified="20210917081901164" title="$:/state/toc/Project/Precious Plastic La Habana/Plástico Leal/Plástico Leal - La Maquinaria/Máquinas para reciclar plásticos-Máquinas Precious Plastic--1378386848">
<pre>open</pre>
</div>
<div created="20210917064307108" modified="20210917064307108" title="$:/state/toc/Project/Trapiche-Construir cilindros--1378386848">
<pre>open</pre>
</div>
<div title="$:/status/RequireReloadDueToPluginChange">
<pre>no</pre>
</div>
<div created="20211115200014940" list="Copincha/Descripción Copincha Inicio" modified="20211115200026696" title="$:/StoryList">
<pre></pre>
</div>
<div created="20210307120304156" list="$:/core/ui/AdvancedSearch/Standard $:/plugins/HackSearch/tab $:/core/ui/AdvancedSearch/System $:/core/ui/AdvancedSearch/Shadows $:/plugins/kookma/solution/ui/search-in-fields $:/core/ui/AdvancedSearch/Filter" modified="20210307120304156" title="$:/tags/AdvancedSearch">
<pre></pre>
</div>
<div created="20210725042406871" list="$:/core/ui/Buttons/new-tiddler $:/core/ui/Buttons/home $:/core/ui/Buttons/close-all $:/core/ui/Buttons/fold-all $:/core/ui/Buttons/unfold-all $:/core/ui/Buttons/permaview $:/plugins/tiddlywiki/markdown/new-markdown-button $:/core/ui/Buttons/new-journal $:/core/ui/Buttons/new-image $:/core/ui/Buttons/import $:/core/ui/Buttons/export-page $:/core/ui/Buttons/control-panel $:/core/ui/Buttons/advanced-search $:/plugins/kookma/commander/buttons/pagecontrol $:/core/ui/Buttons/manager $:/core/ui/Buttons/tag-manager $:/core/ui/Buttons/language $:/core/ui/Buttons/palette $:/core/ui/Buttons/theme $:/core/ui/Buttons/storyview $:/core/ui/Buttons/encryption $:/core/ui/Buttons/timestamp $:/core/ui/Buttons/full-screen $:/core/ui/Buttons/print $:/core/ui/Buttons/save-wiki $:/core/ui/Buttons/refresh $:/plugins/kookma/utility/pagecontrol/view-fields-button $:/core/ui/Buttons/more-page-actions $:/plugins/nico/projectify/ui/buttons/Scheduled $:/utility/ui/Button/SwitchPalette" modified="20210917054100715" title="$:/tags/PageControls">
<pre></pre>
</div>
<div created="20210309035939992" list="$:/core/ui/DefaultSearchResultList $:/config/field-search/tab/Keywords $:/config/field-search/tab/Tags $:/config/field-search/tab/Authors [[$:/config/field-search/tab/Any Field]]" modified="20210309035945694" title="$:/tags/SearchResults">
<pre></pre>
</div>
<div created="20210917054706690" modified="20210924035147576" title="$:/theme">
<pre>$:/themes/tiddlywiki/seamless</pre>
</div>
<div author="JeremyRuston" bag="default" core-version="&gt;=5.0.0" created="20201227095110795" dependents="$:/themes/tiddlywiki/vanilla" description="Removes borders from tiddlers" modified="20210301164504315" name="Seamless" plugin-type="theme" revision="0" tags="rr-TW5 rr-plugins" title="$:/themes/tiddlywiki/seamless" type="application/json" version="5.1.23">
<pre>{
"tiddlers": {
"$:/themes/tiddlywiki/seamless/base": {
"title": "$:/themes/tiddlywiki/seamless/base",
"tags": "[[$:/tags/Stylesheet]]",
"list-after": "$:/themes/tiddlywiki/vanilla/base",
"text": "\\rules only filteredtranscludeinline transcludeinline macrodef macrocallinline\n\n/*\nRules copied from Snow White\n*/\n\n.tc-page-controls button svg, .tc-tiddler-controls button svg, .tc-topbar button svg {\n\t&lt;&lt;transition \"fill 150ms ease-in-out\"&gt;&gt;\n}\n\n.tc-tiddler-controls button.tc-selected svg {\n\t&lt;&lt;filter \"drop-shadow(0px -1px 2px rgba(0,0,0,0.25))\"&gt;&gt;\n}\n\n.tc-drop-down {\n\tborder-radius: 4px;\n\t&lt;&lt;box-shadow \"2px 2px 10px rgba(0, 0, 0, 0.5)\"&gt;&gt;\n}\n\n.tc-block-dropdown {\n\tborder-radius: 4px;\n\t&lt;&lt;box-shadow \"2px 2px 10px rgba(0, 0, 0, 0.5)\"&gt;&gt;\n}\n\n.tc-modal-displayed {\n\t&lt;&lt;filter \"blur(4px)\"&gt;&gt;\n}\n\n.tc-modal {\n\tborder-radius: 6px;\n\t&lt;&lt;box-shadow \"0 3px 7px rgba(0,0,0,0.3)\"&gt;&gt;\n}\n\n.tc-modal-footer {\n\tborder-radius: 0 0 6px 6px;\n\t&lt;&lt;box-shadow \"inset 0 1px 0 #fff\"&gt;&gt;;\n}\n\n.tc-alert {\n\tborder-radius: 6px;\n\t&lt;&lt;box-shadow \"0 3px 7px rgba(0,0,0,0.6)\"&gt;&gt;\n}\n\n.tc-notification {\n\tborder-radius: 6px;\n\t&lt;&lt;box-shadow \"0 3px 7px rgba(0,0,0,0.3)\"&gt;&gt;\n\ttext-shadow: 0 1px 0 rgba(255,255,255, 0.8);\n}\n\n.tc-message-box img {\n\t&lt;&lt;box-shadow \"1px 1px 3px rgba(0,0,0,0.5)\"&gt;&gt;\n}\n\n/*\nSeamless modifications\n*/\n\n@media (min-width: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}}) {\n\n\t/* Drop the tiddler frame padding */\n\tbody.tc-body .tc-tiddler-frame {\n\t\tpadding: 0;\n\t}\n\n\t/* Move the sidebar up so that the title lines up */\n\tbody.tc-body .tc-sidebar-scrollable {\n\t\tpadding: 43px 0 28px 42px;\n\t}\n\n\t/* Stop the tiddler info panel from bleeding into the tiddler frame padding */\n\tbody.tc-body .tc-tiddler-info {\n\t\tmargin: 0;\n\t}\n\n\t/* Stop message boxes from bleeding into the tiddler frame padding */\n\tbody.tc-body .tc-message-box {\n\t\tmargin: 21px 0 21px 0;\n\t}\n\n}\n\n/* Use the tiddler background colour for the page background */\nhtml body.tc-body {\n\tbackground-color: &lt;&lt;colour background&gt;&gt;;\n}\n\nhtml:-webkit-full-screen {\n\tbackground-color: &lt;&lt;colour background&gt;&gt;;\n}\n\n/* Adjust the colour of the page controls */\nbody.tc-body .tc-page-controls svg {\n\tfill: &lt;&lt;colour muted-foreground&gt;&gt;;\n}\n\n/* Adjust the colour of the sidebar selected tabs */\nbody.tc-body .tc-sidebar-lists .tc-tab-buttons button.tc-tab-selected {\n\tbackground-color: &lt;&lt;colour background&gt;&gt;;\n}\n"
}
}
}</pre>
</div>
<div author="JeremyRuston" core-version="&gt;=5.0.0" dependents="$:/themes/tiddlywiki/vanilla" description="Emphasises individual tiddlers" name="Snow White" plugin-priority="0" plugin-type="theme" title="$:/themes/tiddlywiki/snowwhite" type="application/json" version="5.1.24-prerelease">
<pre>{"tiddlers":{"$:/themes/tiddlywiki/snowwhite/base":{"tags":"[[$:/tags/Stylesheet]]","text":"\\define sidebarbreakpoint-minus-one()\n&lt;$text text={{{ [{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}removesuffix[px]subtract[1]addsuffix[px]] ~[{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}] }}}/&gt;\n\\end\n\n\\rules only filteredtranscludeinline transcludeinline macrodef macrocallinline\n\n.tc-sidebar-header {\n\ttext-shadow: 0 1px 0 &lt;&lt;colour sidebar-foreground-shadow&gt;&gt;;\n}\n\n.tc-tiddler-info {\n\t&lt;&lt;box-shadow \"inset 1px 2px 3px rgba(0,0,0,0.1)\"&gt;&gt;\n}\n\n@media screen {\n\t.tc-tiddler-frame {\n\t\t&lt;&lt;box-shadow \"1px 1px 5px rgba(0, 0, 0, 0.3)\"&gt;&gt;\n\t}\n}\n\n@media (max-width: &lt;&lt;sidebarbreakpoint-minus-one&gt;&gt;) {\n\t.tc-tiddler-frame {\n\t\t&lt;&lt;box-shadow none&gt;&gt;\n\t}\n}\n\n.tc-page-controls button svg, .tc-tiddler-controls button svg, .tc-topbar button svg {\n\t&lt;&lt;transition \"fill 150ms ease-in-out\"&gt;&gt;\n}\n\n.tc-tiddler-controls button.tc-selected,\n.tc-page-controls button.tc-selected {\n\t&lt;&lt;filter \"drop-shadow(0px -1px 2px rgba(0,0,0,0.25))\"&gt;&gt;\n}\n\n.tc-tiddler-frame input.tc-edit-texteditor {\n\t&lt;&lt;box-shadow \"inset 0 1px 8px rgba(0, 0, 0, 0.15)\"&gt;&gt;\n}\n\n.tc-edit-tags {\n\t&lt;&lt;box-shadow \"inset 0 1px 8px rgba(0, 0, 0, 0.15)\"&gt;&gt;\n}\n\n.tc-tiddler-frame .tc-edit-tags input.tc-edit-texteditor {\n\t&lt;&lt;box-shadow \"none\"&gt;&gt;\n\tborder: none;\n\toutline: none;\n}\n\ntextarea.tc-edit-texteditor {\n\tfont-family: {{$:/themes/tiddlywiki/vanilla/settings/editorfontfamily}};\n}\n\ncanvas.tc-edit-bitmapeditor {\n\t&lt;&lt;box-shadow \"2px 2px 5px rgba(0, 0, 0, 0.5)\"&gt;&gt;\n}\n\n.tc-drop-down {\n\tborder-radius: 4px;\n\t&lt;&lt;box-shadow \"2px 2px 10px rgba(0, 0, 0, 0.5)\"&gt;&gt;\n}\n\n.tc-block-dropdown {\n\tborder-radius: 4px;\n\t&lt;&lt;box-shadow \"2px 2px 10px rgba(0, 0, 0, 0.5)\"&gt;&gt;\n}\n\n.tc-modal {\n\tborder-radius: 6px;\n\t&lt;&lt;box-shadow \"0 3px 7px rgba(0,0,0,0.3)\"&gt;&gt;\n}\n\n.tc-modal-footer {\n\tborder-radius: 0 0 6px 6px;\n\t&lt;&lt;box-shadow \"inset 0 1px 0 #fff\"&gt;&gt;;\n}\n\n\n.tc-alert {\n\tborder-radius: 6px;\n\t&lt;&lt;box-shadow \"0 3px 7px rgba(0,0,0,0.6)\"&gt;&gt;\n}\n\n.tc-notification {\n\tborder-radius: 6px;\n\t&lt;&lt;box-shadow \"0 3px 7px rgba(0,0,0,0.3)\"&gt;&gt;\n\ttext-shadow: 0 1px 0 rgba(255,255,255, 0.8);\n}\n\n.tc-sidebar-lists .tc-tab-set .tc-tab-divider {\n\tborder-top: none;\n\theight: 1px;\n\t&lt;&lt;background-linear-gradient \"left, rgba(0,0,0,0.15) 0%, rgba(0,0,0,0.0) 100%\"&gt;&gt;\n}\n\n.tc-more-sidebar &gt; .tc-tab-set &gt; .tc-tab-buttons &gt; button {\n\t&lt;&lt;background-linear-gradient \"left, rgba(0,0,0,0.01) 0%, rgba(0,0,0,0.1) 100%\"&gt;&gt;\n}\n\n.tc-more-sidebar &gt; .tc-tab-set &gt; .tc-tab-buttons &gt; button.tc-tab-selected {\n\t&lt;&lt;background-linear-gradient \"left, rgba(0,0,0,0.05) 0%, rgba(255,255,255,0.05) 100%\"&gt;&gt;\n}\n\n.tc-message-box img {\n\t&lt;&lt;box-shadow \"1px 1px 3px rgba(0,0,0,0.5)\"&gt;&gt;\n}\n\n.tc-plugin-info {\n\t&lt;&lt;box-shadow \"1px 1px 3px rgba(0,0,0,0.5)\"&gt;&gt;\n}\n"}}}</pre>
</div>
<div author="JeremyRuston" core-version="&gt;=5.0.0" dependents="" description="Basic theme" name="Vanilla" plugin-priority="0" plugin-type="theme" title="$:/themes/tiddlywiki/vanilla" type="application/json" version="5.1.24-prerelease">
<pre>{"tiddlers":{"$:/themes/tiddlywiki/vanilla/themetweaks":{"tags":"$:/tags/ControlPanel/Appearance","caption":"{{$:/language/ThemeTweaks/ThemeTweaks}}","text":"\\define lingo-base() $:/language/ThemeTweaks/\n\n\\define replacement-text()\n[img[$(imageTitle)$]]\n\\end\n\n\\define backgroundimage-dropdown()\n&lt;div class=\"tc-drop-down-wrapper\"&gt;\n&lt;$button popup=&lt;&lt;qualify \"$:/state/popup/themetweaks/backgroundimage\"&gt;&gt; class=\"tc-btn-invisible tc-btn-dropdown\"&gt;{{$:/core/images/down-arrow}}&lt;/$button&gt;\n&lt;$reveal state=&lt;&lt;qualify \"$:/state/popup/themetweaks/backgroundimage\"&gt;&gt; type=\"popup\" position=\"belowleft\" text=\"\" default=\"\"&gt;\n&lt;div class=\"tc-drop-down\"&gt;\n&lt;$macrocall $name=\"image-picker\" actions=\"\"\"\n\n&lt;$action-setfield\n\t$tiddler=\"$:/themes/tiddlywiki/vanilla/settings/backgroundimage\"\n\t$value=&lt;&lt;imageTitle&gt;&gt;\n/&gt;\n\n\"\"\"/&gt;\n&lt;/div&gt;\n&lt;/$reveal&gt;\n&lt;/div&gt;\n\\end\n\n\\define backgroundimageattachment-dropdown()\n&lt;$select tiddler=\"$:/themes/tiddlywiki/vanilla/settings/backgroundimageattachment\" default=\"scroll\"&gt;\n&lt;option value=\"scroll\"&gt;&lt;&lt;lingo Settings/BackgroundImageAttachment/Scroll&gt;&gt;&lt;/option&gt;\n&lt;option value=\"fixed\"&gt;&lt;&lt;lingo Settings/BackgroundImageAttachment/Fixed&gt;&gt;&lt;/option&gt;\n&lt;/$select&gt;\n\\end\n\n\\define backgroundimagesize-dropdown()\n&lt;$select tiddler=\"$:/themes/tiddlywiki/vanilla/settings/backgroundimagesize\" default=\"scroll\"&gt;\n&lt;option value=\"auto\"&gt;&lt;&lt;lingo Settings/BackgroundImageSize/Auto&gt;&gt;&lt;/option&gt;\n&lt;option value=\"cover\"&gt;&lt;&lt;lingo Settings/BackgroundImageSize/Cover&gt;&gt;&lt;/option&gt;\n&lt;option value=\"contain\"&gt;&lt;&lt;lingo Settings/BackgroundImageSize/Contain&gt;&gt;&lt;/option&gt;\n&lt;/$select&gt;\n\\end\n\n&lt;&lt;lingo ThemeTweaks/Hint&gt;&gt;\n\n! &lt;&lt;lingo Options&gt;&gt;\n\n|&lt;$link to=\"$:/themes/tiddlywiki/vanilla/options/sidebarlayout\"&gt;&lt;&lt;lingo Options/SidebarLayout&gt;&gt;&lt;/$link&gt; |&lt;$select tiddler=\"$:/themes/tiddlywiki/vanilla/options/sidebarlayout\"&gt;&lt;option value=\"fixed-fluid\"&gt;&lt;&lt;lingo Options/SidebarLayout/Fixed-Fluid&gt;&gt;&lt;/option&gt;&lt;option value=\"fluid-fixed\"&gt;&lt;&lt;lingo Options/SidebarLayout/Fluid-Fixed&gt;&gt;&lt;/option&gt;&lt;/$select&gt; |\n|&lt;$link to=\"$:/themes/tiddlywiki/vanilla/options/stickytitles\"&gt;&lt;&lt;lingo Options/StickyTitles&gt;&gt;&lt;/$link&gt;&lt;br&gt;//&lt;&lt;lingo Options/StickyTitles/Hint&gt;&gt;// |&lt;$select tiddler=\"$:/themes/tiddlywiki/vanilla/options/stickytitles\"&gt;&lt;option value=\"no\"&gt;{{$:/language/No}}&lt;/option&gt;&lt;option value=\"yes\"&gt;{{$:/language/Yes}}&lt;/option&gt;&lt;/$select&gt; |\n|&lt;$link to=\"$:/themes/tiddlywiki/vanilla/options/codewrapping\"&gt;&lt;&lt;lingo Options/CodeWrapping&gt;&gt;&lt;/$link&gt; |&lt;$select tiddler=\"$:/themes/tiddlywiki/vanilla/options/codewrapping\"&gt;&lt;option value=\"pre\"&gt;{{$:/language/No}}&lt;/option&gt;&lt;option value=\"pre-wrap\"&gt;{{$:/language/Yes}}&lt;/option&gt;&lt;/$select&gt; |\n\n! &lt;&lt;lingo Settings&gt;&gt;\n\n|&lt;$link to=\"$:/themes/tiddlywiki/vanilla/settings/fontfamily\"&gt;&lt;&lt;lingo Settings/FontFamily&gt;&gt;&lt;/$link&gt; |&lt;$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/settings/fontfamily\" default=\"\" tag=\"input\"/&gt; | |\n|&lt;$link to=\"$:/themes/tiddlywiki/vanilla/settings/codefontfamily\"&gt;&lt;&lt;lingo Settings/CodeFontFamily&gt;&gt;&lt;/$link&gt; |&lt;$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/settings/codefontfamily\" default=\"\" tag=\"input\"/&gt; | |\n|&lt;$link to=\"$:/themes/tiddlywiki/vanilla/settings/editorfontfamily\"&gt;&lt;&lt;lingo Settings/EditorFontFamily&gt;&gt;&lt;/$link&gt; |&lt;$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/settings/editorfontfamily\" default=\"\" tag=\"input\"/&gt; | |\n|&lt;$link to=\"$:/themes/tiddlywiki/vanilla/settings/backgroundimage\"&gt;&lt;&lt;lingo Settings/BackgroundImage&gt;&gt;&lt;/$link&gt; |&lt;$edi
</div>
<div created="20200401065016843" modified="20201120191059973" title="$:/themes/tiddlywiki/vanilla/metrics/bodyfontsize">
<pre>15px</pre>
</div>
<div created="20200401065016843" modified="20201120191059973" title="$:/themes/tiddlywiki/vanilla/metrics/bodylineheight">
<pre>22px</pre>
</div>
<div title="$:/themes/tiddlywiki/vanilla/metrics/fontsize">
<pre>14px</pre>
</div>
<div title="$:/themes/tiddlywiki/vanilla/metrics/lineheight">
<pre>20px</pre>
</div>
<div title="$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint">
<pre>960px</pre>
</div>
<div created="20200321081309700" modified="20200321081309700" title="$:/themes/tiddlywiki/vanilla/metrics/sidebarwidth">
<pre>550px</pre>
</div>
<div created="20200321081744181" modified="20200321081941084" title="$:/themes/tiddlywiki/vanilla/metrics/storyleft">
<pre>/*LeftBar*/ calc({{$:/plugins/TWaddle/LeftBar/Stylesheet!!width}} + {{$:/plugins/TWaddle/LeftBar/temp!!storyleft}})</pre>
</div>
<div created="20200321081744182" modified="20200321081941084" title="$:/themes/tiddlywiki/vanilla/metrics/storyright">
<pre>/*LeftBar*/ calc({{$:/plugins/TWaddle/LeftBar/temp!!storyright}} + {{$:/themes/tiddlywiki/vanilla/metrics/storyleft}})</pre>
</div>
<div title="$:/themes/tiddlywiki/vanilla/metrics/storytop">
<pre>0px</pre>
</div>
<div title="$:/themes/tiddlywiki/vanilla/metrics/storywidth">
<pre>770px</pre>
</div>
<div title="$:/themes/tiddlywiki/vanilla/options/codewrapping">
<pre>pre-wrap</pre>
</div>
<div created="20200321081306054" modified="20210409043403233" title="$:/themes/tiddlywiki/vanilla/options/sidebarlayout">
<pre>fluid-fixed</pre>
</div>
<div created="20210923205853128" modified="20210923205854024" title="$:/themes/tiddlywiki/vanilla/options/stickytitles">
<pre>no</pre>
</div>
<div title="$:/themes/tiddlywiki/vanilla/settings/backgroundimageattachment">
<pre>fixed</pre>
</div>
<div title="$:/themes/tiddlywiki/vanilla/settings/backgroundimagesize">
<pre>auto</pre>
</div>
<div title="$:/themes/tiddlywiki/vanilla/settings/codefontfamily">
<pre>"SFMono-Regular",Consolas,"Liberation Mono",Menlo,Courier,monospace</pre>
</div>
<div title="$:/themes/tiddlywiki/vanilla/settings/fontfamily">
<pre>system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji"</pre>
</div>
<div created="20200321095206439" modified="20200321095330108" tags="$:/tags/Macro" title="$:/toc/adminTid">
<pre>\define adminTid() $:/config/toc/admin</pre>
</div>
<div created="20210925211649972" modified="20210925211649975" tags="$:/tags/trashbin" title="$:/trashbin/$:/plugins/kookma/trashbin/sidebar-tab" type="application/json">
<pre>{
"created": "20190613131234955",
"text": "{{$:/plugins/kookma/trashbin/ui/sidebar}}",
"caption": "Trashbin",
"modified": "20210925211636087",
"tags": "",
"type": "text/vnd.tiddlywiki",
"title": "$:/plugins/kookma/trashbin/sidebar-tab"
}</pre>
</div>
<div created="20201210170859810" modified="20201214084627258" tags="" title="$:/utility/images/color-switch" type="text/vnd.tiddlywiki">
<pre>&lt;svg width="22pt" height="22pt" viewBox="0 0 16 16" class="tc-image-palette-button tc-image-button" fill="currentColor" xmlns="http://www.w3.org/2000/svg"&gt;
&lt;path fill-rule="evenodd" d="M8 15V1a7 7 0 1 1 0 14zm0 1A8 8 0 1 1 8 0a8 8 0 0 1 0 16z"/&gt;
&lt;/svg
</pre>
</div>
<div created="20201210171047824" dark-palette="$:/palettes/SolarFlare" description="Toggle between light/dark colour palette" light-palette="$:/palettes/Vanilla" modified="20201214210650767" tags="$:/tags/PageControls" title="$:/utility/ui/Button/SwitchPalette" type="text/vnd.tiddlywiki">
<pre>&lt;$vars
darkPalette={{$:/utility/ui/Button/SwitchPalette!!dark-palette}}
lightPalette={{$:/utility/ui/Button/SwitchPalette!!light-palette}}
&gt;
&lt;$button tooltip="Switch colours" aria-label="Switch colours" class=&lt;&lt;tv-config-toolbar-class&gt;&gt;&gt;
&lt;$list filter="[&lt;tv-config-toolbar-icons&gt;match[yes]]"&gt;
{{$:/utility/images/color-switch}}
&lt;/$list&gt;
&lt;$list filter="[&lt;tv-config-toolbar-text&gt;match[yes]]"&gt;
&lt;span class="tc-btn-text"&gt;Switch colours&lt;/span&gt;
&lt;/$list&gt;
&lt;$reveal type="match" state="$:/palette" text=&lt;&lt;darkPalette&gt;&gt; &gt;
&lt;$action-setfield $tiddler="$:/palette" text=&lt;&lt;lightPalette&gt;&gt; /&gt;
&lt;/$reveal&gt;
&lt;$reveal type="nomatch" state="$:/palette" text=&lt;&lt;darkPalette&gt;&gt; &gt;
&lt;$action-setfield $tiddler="$:/palette" text=&lt;&lt;darkPalette&gt;&gt; &gt;
&lt;/$reveal&gt;
&lt;/$button&gt;
&lt;/$vars&gt;
{{$:/utility/ui/Button/SwitchPalette!!dark-palette}}</pre>
</div>
<div created="20210925212301372" modified="20210925212301372" title="$:/view">
<pre>pop</pre>
</div>
<div created="20210321105623243" modified="20210912063757319" title="$:/vote/dataTiddler/votings" type="application/json">
<pre>{
"Edit textbox to append text to another tiddler": "2",
"Compress and Optimize": "3",
"Empty Story": "0",
"TW widget tutorials": "5",
"¡Hola, bienvenido a Copinchapedia!": "0"
}</pre>
</div>
<div category="grupo" created="20210313033752757" list="[[Impresora Anycubic]] [[Impresora Ale]] [[Impresora Jonathan]] Hangprinter [[Impresora Acevedo]] [[Impresora Copincha]]" modified="20210917065235944" tags="Project todo" title="3D a lo cubano" tmap.id="4fb0c24f-ce64-489e-ba68-4b4b27291235">
<pre>{{Cuba con Impresoras 3D - Descripcion}}</pre>
</div>
<div created="20210323160802048" modified="20210323160802053" tags="[[encargar tornillo con tornero en cuba]] todo" title="acordar precio" tmap.id="34e01096-fef8-4980-a4d8-f178280f598e">
<pre></pre>
</div>
<div created="20200810064450648" creator="Adithya_" description="Precision Dark colors for machines and people" license="MIT, Ethan Schoonover, https://github.com/altercation/solarized/blob/master/LICENSE" modified="20200810103104767" modifier="adithyb_tspot" name="SolarizedLight 2" tags="$:/tags/Palette tiddlywiki" title="adithyab/palettes/SolarizedLight" tmap.id="b0400b13-264f-4144-8b34-636dac75303d" type="application/x-tiddler-dictionary">
<pre>alert-background: #eee8d5
alert-border: #586e75
alert-highlight: #d33682
alert-muted-foreground: #d33682
background: #eee8d5
blockquote-bar: #d33682
button-background: #eee8d5
button-border: #93a1a1
button-foreground: #586e75
code-background: #eee8d5
code-border: #93a1a1
code-foreground: #586e75
dirty-indicator: inherit
download-background: #859900
download-foreground: #eee8d5
dragger-background: #eee8d5
dragger-foreground: #657b83
dropdown-background: #eee8d5
dropdown-border: #586e75
dropdown-tab-background: #fdf6e3
dropdown-tab-background-selected: #eee8d5
dropzone-background: #859900
external-link-background: inherit
external-link-background-hover: inherit
external-link-background-visited: inherit
external-link-foreground: #268bd2
external-link-foreground-hover: inherit
external-link-foreground-visited: #268bd2
foreground: #657b83
message-background: #fdf6e3
message-border: #93a1a1
message-foreground: #657b83
modal-backdrop: #839496
modal-background: #fdf6e3
modal-border: #93a1a1
modal-footer-background: #eee8d5
modal-footer-border: #93a1a1
modal-header-border: #93a1a1
muted-foreground: #586e75
notification-background: #fdf6e3
notification-border: #93a1a1
page-background: #eee8d5
pre-background: #eee8d5
pre-border: #839496
primary: #859900
select-tag-background: #fdf6e3
select-tag-foreground: #657b83
sidebar-button-foreground: #586e75
sidebar-controls-foreground: #586e75
sidebar-controls-foreground-hover: #d33682
sidebar-foreground: #586e75
sidebar-foreground-shadow: transparent
sidebar-muted-foreground: #657b83
sidebar-muted-foreground-hover: #586e75
sidebar-tab-background: #fdf6e3
sidebar-tab-background-selected: #eee8d5
sidebar-tab-border: #eee8d5
sidebar-tab-border-selected: #657b83
sidebar-tab-divider: #fdf6e3
sidebar-tab-foreground: #839496
sidebar-tab-foreground-selected: #586e75
sidebar-tiddler-link-foreground: #2aa198
sidebar-tiddler-link-foreground-hover: #002b36
site-title-foreground: #d33682
static-alert-foreground: #586e75
tab-background: #eee8d5
tab-background-selected: #fdf6e3
tab-border: #93a1a1
tab-border-selected: #586e75
tab-divider: #586e75
tab-foreground: #657b83
tab-foreground-selected: #586e75
table-border: #93a1a1
table-footer-background: #eee8d5
table-header-background: #eee8d5
tag-background: #b58900
tag-foreground: #fdf6e3
tiddler-background: #fdf6e3
tiddler-border: #93a1a1
tiddler-controls-foreground: inherit
tiddler-controls-foreground-hover: #d33682
tiddler-controls-foreground-selected: #2aa198
tiddler-editor-background: #fdf6e3
tiddler-editor-border: #eee8d5
tiddler-editor-border-image: #fdf6e3
tiddler-editor-fields-even: #fdf6e3
tiddler-editor-fields-odd: #eee8d5
tiddler-info-background: #eee8d5
tiddler-info-border: #839496
tiddler-info-tab-background: #fdf6e3
tiddler-link-background: #fdf6e3
tiddler-link-foreground: #2aa198
tiddler-subtitle-foreground: #657b83
tiddler-title-foreground: #d33682
toolbar-cancel-button: #657b83
toolbar-close-button: #657b83
toolbar-delete-button: #dc322f
toolbar-done-button: #657b83
toolbar-edit-button: #657b83
toolbar-info-button: #657b83
toolbar-new-button: #657b83
toolbar-options-button: #657b83
toolbar-save-button: inherit
untagged-background: #586e75
very-muted-foreground: #93a1a1</pre>
</div>
<div created="20210323151039491" modified="20210323153548766" tags="" title="Agricultura urbana" tmap.id="ce883951-fe07-4a40-aea4-33bb5be0b147">
<pre>!!Introduccion
A raiz de la covid 19
problema d alimentos
*
*
Necesidades
* favorecer produccion local
* el gobierno ha venido promocion de la agricultura urbana como forma de ...
incremento de la agricultura urbana
! Necesidades:
* insumos para fertilizar el suelo
* insumos para mejorar la calidad del suelo
insumos para
materia organica
mal manejo
desecho organico
gallinaza
problemas de suelo</pre>
</div>
<div created="20210323204716471" modified="20210613224121442" tags="ideas" title="Aportar en prototipado" tmap.id="c6290188-e610-44c7-b8ca-2f5ef6cdceec">
<pre>Colaboracion en el prototipado</pre>
</div>
<div caption="Archivo Informal" category="documentación" created="20210323133658286" description="" list="[[Consegir cilindro central de montacargas]] [[Construir cilindros]]" modified="20210917071908600" tags="[[Jardines Digitales de Bolsillo]] Project" title="Archivo informal" tmap.id="b5df3fb6-ba2d-46c2-a2c7-70dec34a3f0d">
<pre></pre>
</div>
<div created="20210310150256889" creator="Nestor Siré" modified="20210322224510338" modifier="Nestor Siré" orden="1" tags="[[Filter error: Missing [ in filter expression]]" title="Archivo Informal (iA)" tmap.id="fbca2da7-1386-4498-a54c-85494c70b6a2">
<pre>Archivo Informal (iA) es un proyecto artístico que se centra en la creatividad social, el patrimonio vivo, la tradición, la cultura popular y la cultura de la sobrevivencia que se manifiestan en contextos socioeconómicos deprimidos en donde suelen emerger alternativas creativas, así como en otros en que, sin tener una condición económica desfavorable, las prácticas creativas han devenido costumbres.
La creatividad es la capacidad que tenemos todos los seres humanos para generar nuevas ideas y tiende a florecer en situaciones extremas o de crisis, aunque no únicamente. También se resuma creatividad en espacios donde se aboga por un concepto de vida sustentable, en armonía con el medioambiente. Cuando surge como respuesta a emergencias prácticas, adquiere predominancia en todos los órdenes de la organización cultural, económica y social, como es el caso de Cuba.
Este proyecto desarrolla su investigación tomando de base las prácticas y acciones desarrolladas durante la crisis económica
de los años 90' del pasado siglo, conocido con el eufemístico nombre de «Período especial en tiempos de paz». Tras la caída del campo socialista en 1990 y el recrudecimiento del embargo estadounidense a Cuba, se produjo un colapso de la economía, lo que provocó una recesión sin parangón de la cual el país aún no
se recupera. Como resultado, las practicas creativas se acentuaron y se hicieron imprescindibles para garantizar lo básico.
Las habilidades de reparación y de reciclaje se entronizaron en la sociedad, e incluso, se institucionalizó a través de un movimiento
llamado Asociación Nacional de Innovadores y Racionalizadores. En 1992 la revista Verde Olivo, un órgano de las Fuerzas Armadas,
publicó el libro Con nuestros propios esfuerzos, un compendio de hacks de la vida cotidiana para soliviantar la escasez, la precariedad y la ausencia de productos industriales de uso
hogareño por medio de la reparación y la innovación. </pre>
</div>
<div created="20210313040458313" modified="20210719160247622" tags="[[Construir Hangprinter]] todo" title="Armar cuerpo impresora" tmap.id="15a8e0a1-f6d7-4ab5-a5e2-34c34c58b489">
<pre></pre>
</div>
<div created="20210313040458752" modified="20210313040520773" tags="[[Construir Hangprinter]] todo" title="Armar estructura" tmap.id="4c82a264-7f82-4a14-a91e-575d5e0e48af">
<pre></pre>
</div>
<div created="20210720093856849" modified="20210726163903763" tags="[[Yusnier Mentado]] Arte DOTS SubProject" title="Autopoiesis" tmap.id="7050c1c0-f0ae-499a-ab39-1bab1ef289b1">
<pre>La obra consiste en un brazo robótico que reproduce en el espacio expositivo los mismos movimientos realizados por el artista en el momento en que estaba siendo creado; esto es posible gracias a unos sensores instalados en su brazo y en un guante que este llevaba puesto, y que a su vez se encontraba conectado a un ordenador que registraba todas las acciones de su extremidad mientras trabaja.
La posibilidad de auto "replicarse", de multiplicarse, es una de las principales características de esta obra, que nos expone la idea de obsolescencia y decadencia del cuerpo biológico, y la inminencia de un mundo programado.
Realizada con Arduino Mega, servo motores, acrílico y piezas recicladas de otros equipos electrónicos.
&lt;center&gt;
[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/proyectos-autopoiesis1.webp]]
[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/proyectos-autopoiesis2.webp]]
&lt;br&gt;
&lt;br&gt;
[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/proyectos-autopoiesis3.webp]]</pre>
</div>
<div created="20210720100042359" modified="20210726163344077" tags="[[Yusnier Mentado]] Arte DOTS SubProject" title="Bluebox" tmap.id="793a4813-f79c-4c35-850c-76349271f11a">
<pre>&lt;&lt;&lt;
(...)las llamadas gratis no son al principio tan excitantes como la sensación de poder que te da el tener una de estas blue box en la palma de tu mano.(...)
&lt;&lt;&lt;
La reaparición de un artefacto creado para subvertir los mecanismo de poder y control de las comunicaciones (telefónicas en este caso) en los comienzos de una nueva era que se nos viene encima, donde la telefonía móvil y el correo electrónico ya hoy en nuestros celulares, deviene en el mecanismo de control actual con mayor repercusión en la sociedad; constituye una amenaza, sino física al menos conceptual, para todos aquellos sistemas controladores de la individualidad colectiva.
Realizada con Arduino Uno, acrílico y piezas recicladas de otros equipos electrónicos.
&lt;center&gt;
[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/proyectos-bluebox1.webp]]
[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/proyectos-bluebox2.webp]]</pre>
</div>
<div created="20210323013534172" modified="20210323013607036" tags="" title="Botones" tmap.id="f134951f-ab4d-485d-9c2a-d7051e27e32d">
<pre>&lt;$button set="TiddlerA!!caption" setTo={{TiddlerB!!caption}} &gt;
Press me!
&lt;/$button&gt;</pre>
</div>
<div created="20210322231158784" modified="20210719153727558" tags="[[Tutorial Copinchapedia]]" title="Botones con imagen en miniaura" tmap.id="74e0e18c-2a8f-4eb9-a81f-a7746337ed37">
<pre>Creamos un tiddler para la lista de botones de imagen en miniatura
por ejemplo : Lista de Proyectos
y pegamos el siguiente codigo
```
&lt;div style="font-size:0.7em;text-align:center;margin-top:2em;margin-bottom:2em"&gt;
&lt;&lt;list-thumbnails filter:"[tag[Lista de proyectos]]" width:"170" height:"170" padding:"30"&gt;&gt;
&lt;/div&gt;
```
Los tiddlers tienen que compartir el mismo tag, en este caso es " Lista de proyectos"
</pre>
</div>
<div created="20210719132051370" creator="M0" modified="20210722075700366" modifier="M0" tags="Encuentros Encuentros-Mapa" title="Cafe Reparador" tmap.id="94f0c273-32bb-4f73-853b-87ac01304175">
<pre></pre>
</div>
<div created="20210321100249384" modified="20210321100257440" tags="" title="Cafe reparador" tmap.id="c280edd3-c4ac-4530-a619-5f748c4baae6">
<pre></pre>
</div>
<div caption="Controles Remotos" created="20210719132233623" creator="M0" modified="20210724130924307" modifier="M0" tags="[[Cafe Reparador]]" title="Cafe Reparador 20/11/20" tmap.id="f32be86f-e4a5-4991-9846-ee767f124e52">
<pre>&lt;center&gt;
[img[/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/cafereparador-201120.webp]]
{{cafesorpresa-210521.mp3}}</pre>
</div>
<div caption="Laptop de Marta" created="20210720135007581" creator="M0" modified="20210724130846144" modifier="M0" tags="[[Cafe Reparador]]" title="Cafe Reparador 23/10/20" tmap.id="0c71319e-c43d-4f0b-a5f1-9beb4a7ae258">
<pre>&lt;center&gt;
[img[/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/cafereparador-231020.webp]]
{{cafesorpresa-210521.mp3}}
[img[/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/cafereparador-231020-1.webp]]</pre>
</div>
<div created="20210507140856944" modified="20210917052913909" tags="Encuentros" title="Cafe Sorpresa" tmap.id="d6ca6fef-3d5e-4e3a-9b3e-833b7bf304ed">
<pre>!Resumen
Es un espacio para narrar experiencias sobre el uso de tecnologías, sobre las maneras de dar solución a problemas comunes.
!Calendario
{{Encuentros - Calendario}}
! Recomendaciones
!!Para lograr un mejor sonido desde casa:
*Localizar la habitación más alejada de la calle y de otros sonidos fuertes.
* De ser posible habitaciones con alfombras, colchones de espuma y, cortinas.
*Las habitaciones con muebles rompen las paralelas y también mejoran la sonoridad.
* las esteras de yoga, las toallas son fáciles de mover y también ayudarán a reducir los ruidos en la comunicación.
* Nunca se pegue directamente al microfono. Esto produce sonidos un poco molestos como las "P" y las "S" que son sonidos que estan en las bajas y altas frecuencias. Recomendamos hablar hacia la pantalla del teléfono y si necesitan más volumen se acerquen el teléfono en la misma posición.</pre>
</div>
<div created="20210321100259980" modified="20210321100306263" tags="" title="Cafe sorpresa" tmap.id="982d404b-8860-4c9d-874c-32c7ab36e603">
<pre></pre>
</div>
<div caption="Charlas en Telegram" created="20210530064958197" creator="M0" modified="20210725034424199" modifier="M0" orden="02" tags="[[Cafe Sorpresa]]" title="Cafe Sorpresa - 07/05/21" tmap.id="f4fcb855-5265-4124-8285-1f1b58f1a51e">
<pre>&lt;center&gt;
[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/cafesorpresa-070521.webp]]
{{cafesorpresa-210521.mp3}}</pre>
</div>
<div created="20210520154321129" modified="20210917052913916" orden="03" tags="[[Cafe Sorpresa]]" title="Cafe Sorpresa - 14 de mayo de 2021" tmap.id="1977674c-cd81-4bae-8dbe-e4f50a91d1aa">
<pre>[img [Cafe Sorpresa - 14 5 2021.png]]</pre>
</div>
<div created="20210520154359507" modified="20210917052913916" orden="04" tags="[[Cafe Sorpresa]]" title="Cafe Sorpresa - 21 de mayo de 2021" tmap.id="4c156b5a-9327-48de-86ee-29d757f76485">
<pre>&lt;&lt;richlink "https://ia801504.us.archive.org/9/items/cafesorpresa-grafoscopio/record.mp3"&gt;&gt;
[img [Cafe Sorpresa - 21 05 2021.png]]
Hola, Bienvenido al Cafe Sorpesa.
Mi nombre es Mauri, soy cubano, disenador industrial y soy fundador de Copincha, un hackerspace en La habana.
Este Cafe Sorpresa se titula Tiddlywiki pa Copinchapedia. Pero vamos a hablar fundamentalmente sobre cuadernos de notas.
!! Copincha y la necesidad de documentar
Copincha nacio en junio de 2018 con un curso sobre Arduino. En muy breve tiempo ha venido reuniendo conocimientos y experiencias de las personas que les permitan socializar soluciones para el beneficio comun. Siempre con un caracter colaborativo y abierto.
En la busqueda por hacer mas accesible estas experiencias a la comunidad comenzamos a trabajar en la documentacion y archivo, y en su publicacion en una wiki que hemos nombrado Copinchapedia.
En Cuba el acceso de internet crece pero es todavia un servicio muy caro para la mayoria.
En Cuba Existen proyectos de redes redes alternativas como SNET.
O el Paquete semanal, una forma de distribucion de contenidos, como especie de Netflix offline. Tambien la distribucion de contenidos desde negocios llamados casas de copias.
Este contexto es inspirador para hacer de Copinchapedia una wiki que pueda ser distribuida devarias formas. Ya sea online o offline. Y asi garantizar que de alguna forma obtenga su público.
A raiz del en cuentro en GIG hicimos contacto con Offray
y la comunidad Grafoscopio.
que nos sugirio explorar tiddlywiki y tambien otras herramientas como fossil y hedge doc que sirven colateralmente a este proposito.
!! Que es tiddlywiki?
Tiddlywiki es un software contenido en un archivo html.
Este nos permite crear un cuaderno de notas e ir modificandolo y expandiendolo en el tiempo. El uso mas inmediato que podemos darle es crear un cuaderno personal. y puede ser una alternativa a herramientas como Google Keep, u otro software de notas.
Para ejecutarlo solo debemos abrir este archivo html en cualquier explorador de internet, editar lo que queremos del contenido y guardar.
Al contenido se pueden vincular recursos en internet, pero tambien. una caracteristica de tiddlywiki. es que autocontine varios archivos, como imagenes, pequenos audios...
Tiddlywiki es una web en donde puedes crear un sistema de porciones de contenidos , como un sitema de ficas, e ir interconectando este contenido.
para ello posee 3 caracteristicas importantes.
la posibilidad de hacer enlaces entre fichas por hipertexto.
3. La posibilidad
2. La posibilidad de hacer transclusiones. Que permite que una ficha muestre siempre el contenido de otra ficha de manera automatica.
</pre>
</div>
<div created="20210520170902640" modified="20210727141223724" title="Cafe Sorpresa - 21 de mayo de 2021'" tmap.id="375a656e-0c2c-4908-b840-5e9f8f9e09be">
<pre>Hola, Bienvenido al Cafe Sorpesa.
Mi nombre es Mauri, soy cubano, disenador industrial y soy fundador de Copincha, un hackerspace en La habana.
Este Cafe Sorpresa se titula Tiddlywiki pa Copinchapedia. Pero vamos a hablar fundamentalmente sobre cuadernos de notas.
!! Copincha y la necesidad de documentar
Copincha nacio en junio de 2018 con un curso sobre Arduino. En muy breve tiempo ha venido reuniendo conocimientos y experiencias de las personas que les permitan socializar soluciones para el beneficio comun. Siempre con un caracter colaborativo y abierto.
En la busqueda por hacer mas accesible estas experiencias a la comunidad comenzamos a trabajar en la documentacion y archivo, y en su publicacion en una wiki que hemos nombrado Copinchapedia.
En Cuba el acceso de internet crece pero es todavia un servicio muy caro para la mayoria.
En Cuba Existen proyectos de redes redes alternativas como SNET.
O el Paquete semanal, una forma de distribucion de contenidos, como especie de Netflix offline. Tambien la distribucion de contenidos desde negocios llamados casas de copias.
Este contexto es inspirador para hacer de Copinchapedia una wiki que pueda ser distribuida devarias formas. Ya sea online o offline. Y asi garantizar que de alguna forma obtenga su público.
A raiz del en cuentro en GIG hicimos contacto con Offray
y la comunidad Grafoscopio.
que nos sugirio explorar tiddlywiki y tambien otras herramientas como fossil y hedge doc que sirven colateralmente a este proposito.
!! Que es tiddlywiki?
Tiddlywiki es un software contenido en un archivo html.
Este nos permite crear un cuaderno de notas e ir modificandolo y expandiendolo en el tiempo. El uso mas inmediato que podemos darle es crear un cuaderno personal. y puede ser una alternativa a herramientas como Google Keep, u otro software de notas.
Para ejecutarlo solo debemos abrir este archivo html en cualquier explorador de internet, editar lo que queremos del contenido y guardar.
Al contenido se pueden vincular recursos en internet, pero tambien. una caracteristica de tiddlywiki. es que autocontine varios archivos, como imagenes, pequenos audios...
Tiddlywiki es una web en donde puedes crear un sistema de porciones de contenidos , como un sitema de ficas, e ir interconectando este contenido.
para ello posee 3 caracteristicas importantes.
la posibilidad de hacer enlaces entre fichas por hipertexto.
3. La posibilidad
2. La posibilidad de hacer transclusiones. Que permite que una ficha muestre siempre el contenido de otra ficha de manera automatica.
</pre>
</div>
<div caption="Charlas en Telegram" created="20210530064958197" creator="M0" modified="20210912063734618" modifier="M0" orden="02" tags="[[Cafe Sorpresa]]" title="Cafe Sorpresa - 21/05/21" tmap.id="e1cba21f-87a0-4f04-98f9-309a66a2f9fa">
<pre>&lt;center&gt;
[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/cafesorpresa-070521.webp]]
{{cafesorpresa-210521.mp3}}</pre>
</div>
<div created="20210530065347183" modified="20210917052913916" orden="01" tags="[[Cafe Sorpresa]]" title="Cafe Sorpresa - 30 de abril de 2021" tmap.id="b831094e-1569-4658-b1f1-e4f83d6d274d">
<pre>[img [Cafe Sorpresa - 30 04 2021.png]]</pre>
</div>
<div created="20210530064958197" modified="20210917052913916" orden="02" tags="[[Cafe Sorpresa]]" title="Cafe Sorpresa - 7 de mayo de 2021" tmap.id="04a20242-587f-45e4-9eb6-4d45f1660c96">
<pre>[img [Cafe Sorpresa - 7 05 2021.png]]</pre>
</div>
<div created="20210530074146574" modified="20210720193822354" title="Cafe Sorpresa - CNC Camino Corto Camino Largo" tmap.id="acee1498-9b75-4494-a73a-b18fafb8d8e6">
<pre></pre>
</div>
<div caption="CNC Gran Formato" created="20210530074221289" creator="M0" modified="20210724125756844" modifier="M0" tags="[[Cafe Sorpresa]]" title="Cafe Sorpresa - CNC Gran Formato" tmap.id="5331ff43-2c5a-4c52-bc3f-6525a40ddb2b">
<pre></pre>
</div>
<div caption="Resilencia Tecnologica" created="20210530074304374" creator="M0" modified="20210724125911949" modifier="M0" tags="[[Cafe Sorpresa]]" title="Cafe Sorpresa - Resilencia Tecnologica" tmap.id="29fb7cd5-aa9b-472a-a84b-0cec77251252">
<pre></pre>
</div>
<div caption="SimbiOS" created="20210530074048979" creator="M0" modified="20210724125830611" modifier="M0" tags="[[Cafe Sorpresa]]" title="Cafe Sorpresa - SimbiOS" tmap.id="ce6f1e9d-53db-4669-924d-cd31a90bb4de">
<pre></pre>
</div>
<div created="20210530064958197" modified="20210720193822355" orden="02" tags="[[Cafe Sorpresa]]" title="Cafe Sorpresa 07/05/21" tmap.id="014032ec-798d-4ac8-ba8a-21357fc0a531">
<pre>&lt;center&gt;
[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/cafesorpresa-070521.webp]]
{{cafesorpresa-210521.mp3}}</pre>
</div>
<div created="20210720132218438" modified="20210720132909633" title="Cafe Sorpresa 09/08/19" tmap.id="33678ad6-7e2c-41b3-83d0-87239b31d84f" type="text/vnd.tiddlywiki">
<pre>[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/Cafe Sorpresa 090819.webp]]</pre>
</div>
<div caption="El Pimpampunk energético" created="20210720131923517" creator="M0" modified="20210725164942165" modifier="M0" tags="[[Cafe Sorpresa]]" title="Cafe Sorpresa 14/05/21" tmap.id="7e2507b9-9c2e-4961-b8ac-6fb5989fb2a1">
<pre>&lt;center&gt;
[img[/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/cafesorpresa-140521.webp]]
{{cafesorpresa-140521.mp3}}</pre>
</div>
<div caption="Tiddilywiki" created="20210520154359507" creator="M0" modified="20210724130010918" modifier="M0" orden="04" tags="[[Cafe Sorpresa]]" title="Cafe Sorpresa 21/05/21" tmap.id="6982f800-8173-4d04-8ed0-cee801fde490">
<pre>&lt;center&gt;
[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/cafesorpresa 210521.webp]]
{{cafesorpresa-210521.mp3}}
</pre>
</div>
<div caption="Historia del Paquete Semanal" created="20210720131544870" creator="M0" modified="20210724125616643" modifier="M0" tags="[[Cafe Sorpresa]]" title="Cafe Sorpresa 27/11/20" tmap.id="50a552a6-5072-4555-8158-d3ac8a917060">
<pre>&lt;center&gt;
[img[/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/cafesorpresa-271120.webp]]
{{cafesorpresa-210521.mp3}}</pre>
</div>
<div caption="El Solarpunk" created="20210530065347183" creator="M0" modified="20210724125718874" modifier="M0" orden="01" tags="solarpunk [[Cafe Sorpresa]]" title="Cafe Sorpresa 30/04/21" tmap.id="364916b5-5c33-4842-9a92-197280c0d3b8">
<pre>&lt;center&gt;
[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/cafesorpresa-300421.webp]]
{{cafesorpresa-210521.mp3}}</pre>
</div>
<div created="20210720140250724" creator="M0" modified="20210722075638804" modifier="M0" tags="Encuentros Encuentros-Mapa" title="Cafe Viaje en Casa" tmap.id="3d981671-9fa5-4dcf-877a-36d88c7cc569">
<pre></pre>
</div>
<div caption="ViajeNihon" created="20210720145450880" creator="M0" modified="20210724130738664" modifier="M0" tags="[[Cafe Viaje en Casa]]" title="Cafe Viaje en Casa 04/10/19" tmap.id="c5d96fb4-e07a-49dc-871f-c5da387f9fcb" type="text/vnd.tiddlywiki">
<pre>&lt;center
&gt;[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/cafeviajeencasa-041019.webp]]
&lt;br&gt;
&lt;br&gt;
{{cafesorpresa-210521.mp3}}
&lt;br&gt;
&lt;br&gt;
[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/cafeviajeencasa-041019-1.webp]]</pre>
</div>
<div caption="Guyana ¿Cómo llegué?" created="20210720133124420" creator="M0" modified="20210727141738072" modifier="M0" tags="[[Cafe Viaje en Casa]]" title="Cafe Viaje en Casa 13/09/19" tmap.id="c32e102d-e3e7-4775-9e3c-9c3acfe87534" type="text/vnd.tiddlywiki">
<pre>&lt;center
&gt;[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/cafeviajeencasa-130919.webp]]
&lt;br&gt;
&lt;br&gt;
{{cafesorpresa-210521.mp3}}
&lt;br&gt;
&lt;br&gt;
[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/cafeviajeencasa-130919-1.webp]]</pre>
</div>
<div created="20210719133823128" modified="20210719133823128" title="cafereparador-controlesremotos.jpeg" tmap.id="c45d13dc-b59b-4f37-88cf-5c1d54594a2d" type="image/jpeg">
<pre>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
</div>
<div title="cafereparador-laptopdemarta.jpeg" tmap.id="728acdf0-e5d6-4722-a1bc-596aff44e661" type="image/jpeg">
<pre>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
</div>
<div _canonical_uri="/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/cafesorpresa-140521.mp3" created="20210720142536527" modified="20210720142848732" tags="" title="cafesorpresa-140521.mp3" tmap.id="46912dc3-375f-47d9-9ee2-6feefda70d16" type="audio/mp3">
<pre></pre>
</div>
<div _canonical_uri="https://ia801504.us.archive.org/9/items/cafesorpresa-grafoscopio/record.mp3" created="20210720143351232" modified="20210720143541693" tags="" title="cafesorpresa-210521.mp3" tmap.id="278d0934-865e-42f7-b3bd-403594bbf7bd" type="audio/mp3">
<pre></pre>
</div>
<div category="software" created="20210621203739799" description="" list="[[anadir pluggin de leaflet]] [[Nuevo Tiddler]] [[crear estilo de mapas]] [[redondear bordes 12 px]]" modified="20210917071908601" tags="SubProject [[Jardines Digitales de Bolsillo]] todo" title="Cartografias de bolsillo" tmap.id="ec78c525-6216-4d04-8ef6-57828465d097">
<pre>! Descripción
Creamos un mapa digital, como herramienta abierta y colaborativa que permita la inclusión de personas y proyectos interesados en procesos circulares.
!! Interfaz
poder llenar campos sin tener que editar tiddlers directamente
!! Filtro
Construir barra filtro que filtrar categorias.
filtrar campos
!! Categorias
Las categorias se colocan en los campos
Categoria 1
*Subacategoria 1A
*Subacategoria 1B
*Subacategoria 1C
Categoria 2
*Subacategoria 2A
*Subacategoria 2B
*Subacategoria 2C
Categoria 3
* Subacategoria 3A
* Subacategoria 3B
* Subacategoria 3C
&lt;&lt;slider label:"Mapa con Tiddlywiki" src:"
{{mapavirtual/tiddlywiki}}
" status:"close"&gt;&gt;
&lt;&lt;slider label:"Trabajo con Base de datos JSON con Pharo"{{mapavirtual/pharo!!caption}}" src:"
{{mapavirtual/pharo}}
" status:"close"&gt;&gt;
&lt;!--
&lt;&lt;slider label:"{{mapavirtual/umap!!caption}}" src:"
{{mapavirtual/umap}}
" status:"close"&gt;&gt;
--&gt;
&lt;&lt;slider label:"Insertar el mapa en otra web" src:"
{{mapavirtual/insertar-iframe}}
" status:"close"&gt;&gt;
! Descargar Plantilla de mapa vacia
Boton de descrga
!Para Copinchapedia version offline
Descargar "tiles" de mapa en:
!Para Maps.ME
{{Maps.Me}}
#Descargamos el archivo de base de datos para Maps.ME
&lt;div style="font-size:0.7em;text-align:left;margin:3em auto;"&gt;
&lt;a href="https://mapa.com/mapa.kmz" class="tc-btn-big-green" style="border-radius:4px;background-color:gray;" target="_blank" rel="noopener noreferrer"&gt;
&lt;p&gt;
&lt;center&gt;
{{$:/core/images/database}}&lt;h3&gt;Descargar (.KMZ) &lt;/h3&gt;
&lt;/center&gt;
&lt;/p&gt;
&lt;/a&gt;
&lt;/div&gt;
#Copiamos el archivo .KMZ en la carpeta donde tiene los archivos de luegares favoritos de Maps.ME (por defecto, maps.me guarda estos archivos en ...).
#Abrimos Maps.ME y activamos la base de datos. Listo!</pre>
</div>
<div created="20210704161559299" creator="M0" modified="20210727130329125" modifier="M0" tags="Copincha/Concepto" title="Ciclo Copincha" tmap.id="16dd900b-2e4f-448b-a015-7d6f72df2b15" type="text/vnd.tiddlywiki.railroad">
<pre>("Conocer")("Conectar")("Construir")("Colectivizar")("Comprometer")("Coexistir")</pre>
</div>
<div created="20210530074146574" creator="M0" modified="20210724022015535" modifier="M0" tags="[[Cafe Sorpresa]]" title="CNC Camino Corto/Camino Largo" tmap.id="034670aa-ec54-4144-92e8-b39fd83bcd0e">
<pre></pre>
</div>
<div created="20210720111238333" modified="20210726163811296" tags="[[Yusnier Mentado]] DOTS SubProject" title="CNC DOT" tmap.id="26ee5c86-96e5-4acf-82c4-b2c0a3046423">
<pre>CNC realizada con Arduino Mega, tubos de instalación de agua, planchas de teflón, y piezas recicladas de otros equipos electrónicos.
Área útil: 50x80 cm.
&lt;center&gt;
[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/proyectos-cncdot1.webp]]
[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/proyectos-cncdot2.webp]]
[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/proyectos-cncdot3.webp]]
[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/proyectos-cncdot4.webp]]</pre>
</div>
<div created="20210413011048445" modified="20210413015427706" tags="" title="CodeMirror" tmap.id="2ef140a7-9b77-4eee-bf1d-6e42d5dfe5b0">
<pre>~CodeMirrorPlus mejora la experiencia de edición y escritura en ~TiddlyWiki5.
''Referencias'':
* [[CodeMirrorPlus|https://adithya-badidey.github.io/TW5-codemirror-plus/]].
* [[CodeMirrorPlus Demo|https://adithya-badidey.github.io/TW5-codemirror-plus/wiki.html]].
** [[How to Install|https://adithya-badidey.github.io/TW5-codemirror-plus/wiki.html#How%20to%20Install]].
*[[CodeMirror|http://adithyab.tiddlyspot.com/]].
!! Instalación
# Entramos a la sección de "complementos y extensiones" de la configuración.
# &lt;div&gt; Buscamos Code Mirror e instalamos el editor (marcado con 1) y ''no'' instalamos la autocompleción (marcada con 2):
[img [https://i.imgur.com/tCUo4ll.png]]
&lt;/div&gt;
# Arrastramos [[$:/plugins/adithyab/cmplus|https://adithya-badidey.github.io/TW5-codemirror-plus/wiki.html#%24%3A%2Fplugins%2Fadithyab%2Fcmplus]] a nuestro TiddlyWiki.
# Recargamos.
# Vamos a Configuración -&gt; CodeMirror -&gt; Tema
#* Elegimos `tw5plus`.
</pre>
</div>
<div created="20210321075647665" creator="M0" modified="20210727160120824" modifier="M0" orden="02" tags="Copincha/Concepto [[¿Qué es Copincha?]]" title="Código de conducta" tmap.id="0dc27d47-f776-4881-8ecd-b2677254a2b1">
<pre>!Nuestro compromiso
Nosotros como miembros, colaboradores y administradores, nos comprometemos a hacer de la participación en nuestra comunidad [[Copincha]] una experiencia libre de acoso para todos. A actuar e interactuar contribuyendo a una comunidad abierta, acogedora, diversa, inclusiva y saludable.
!Nuestras normas
!!Ejemplos de comportamiento aceptable:
*Demostrar empatía y amabilidad hacia los demás.
*Respetar las diferentes opiniones, puntos de vista y experiencias.
*Dar y aceptar con elegancia comentarios constructivos.
*Aceptar nuestra responsabilidad por nuestros errores y disculparnos con los afectados.
*Aprender de la experiencia.
*Centrarnos en lo que es mejor, no sólo para nosotros como individuos, sino para la comunidad en general.
!!Ejemplos de comportamiento inaceptable:
*El uso de lenguaje o imágenes sexualizadas, acoso sexual o insinuaciones de cualquier tipo.
*Comentarios y burlas insultantes o despectivos.
*Ataques personales o políticos
*Acoso público o privado
*Publicar la información privada de otros, como nombres, datos de contacto, o cualquier otra, sin su permiso explícito.
*Cualquier otra conducta que razonablemente pueda considerarse inapropiada en un entorno profesional y de cooperación.
!Responsabilidades en ejecución
Los administradores son responsables de aclarar y hacer cumplir nuestros estándares de comportamiento aceptable y tomarán medidas correctivas adecuadas y justas en respuesta a cualquier comportamiento que consideren inapropiado, amenazante, ofensivo o dañino.
&gt;En caso de que el infractor se a otro admin corresponde a los demas admins cumplir con lo establecido en este punto.
Los administradores de la comunidad tienen el derecho y la responsabilidad de eliminar, editar o rechazar comentarios, confirmaciones, códigos, ediciones de wiki, problemas y otras contribuciones que no estén alineadas con este CÓDIGO de CONDUCTA, y comunicarán las razones de las decisiones de moderación cuando sea apropiado.
!Alcance
Este CÓDIGO de CONDUCTA se aplica en todos los espacios comunitarios y en las representaciones y/o presentaciones de la comunidad en los espacios públicos.
Ejemplos de representación de nuestra comunidad:
El uso de una dirección de correo electrónico oficial, la publicación a través de una cuenta oficial de redes sociales o la actuación como representante designado en un evento en línea o fuera de línea.
!Aplicación
-Los casos de comportamiento contrarios al presente CÓDIGO de CONDUCTA se pueden y deben informar a los admins comunitarios solamente por privado. Todas las quejas serán revisadas e investigadas con prontitud y de manera justa.
*Todos los administradores comunitarios están obligados a respetar la privacidad y seguridad del informante de cualquier incidente.
!Directrices de aplicación
Los admins de la comunidad seguirán las siguientes PAUTAS de IMPACTO para determinar las consecuencias de cualquier acción que consideren que infringe este Codigo de conducta:
!Corrección
Impacto en la comunidad: uso de lenguaje inapropiado u otro comportamiento considerado poco profesional o no deseado en la comunidad.
Consecuencia: Una advertencia privada por escrito de los admins de la comunidad, que brinda claridad sobre la naturaleza de la violación y una explicación de por qué el comportamiento fue inapropiado. Se puede solicitar una disculpa pública.
!Advertencia
*Impacto en la comunidad: una violación a través de un solo incidente o una serie de acciones.
Consecuencia: Una advertencia con prohibición de interacción con las personas involucradas, incluida la interacción no solicitada con quienes hacen cumplir el CÓDIGO de CONDUCTA, durante un período de tiempo específico. Esto incluye evitar interacciones en espacios comunitarios y canales externos como las redes sociales. La violación de estos términos puede dar lugar a una prohibición temporal o permanente.
!Prohibición temporal
Impacto en la comunidad: una violación grave de los estándares de la comunidad, incluido un comportamiento inadecuado sostenido.
Consecuencia: Prohibición temporal de cualquier tipo de interacción o comunicación pública con la comunidad durante un período de tiempo específico. Durante este período no se permite ninguna interacción pública o privada con las personas involucradas, incluida la interacción no solicitada con quienes hacen cumplir el CÓDIGO de CONDUCTA. La violación de estos términos puede dar lugar a una prohibición permanente.
!Prohibición permanente
Impacto en la comunidad: Presentar un patrón de violación de los estándares de la comunidad, incluido el comportamiento inadecuado sostenido, el acoso o agresión hacia un individuo, o hacia un grupo de individuos.
Consecuencia: Prohibición permanente de cualquier tipo de interacción pública dentro de la comunidad.
&lt;&lt;alert info "{{codigo de conducta - atribución}}" width:100%&gt;&gt;
</pre>
</div>
<div created="20210321084833551" modified="20210912063734689" title="codigo de conducta - atribucion" tmap.id="5e68f3ad-8ba8-4b15-b1b1-6bd9cfddf006">
<pre>El presente CÓDIGO de CONDUCTA es una adaptación del Pacto de Colaboradores, versión 2.0, disponible en https://www.contributor-covenant.org/version/2/0/code_of_conduct.html
Las PAUTAS de IMPACTO se inspiraron en el CÓDIGO de CONDUCTA de la comunidad Mozilla.
Para obtener respuestas a preguntas comunes sobre este CÓDIGO de CONDUCTA, consulte las preguntas frecuentes en https://www.contributor-covenant.org/faq. Las traducciones están disponibles en https://www.contributor-covenant.org/translations.</pre>
</div>
<div created="20210321084833551" modified="20210727160017543" title="codigo de conducta - atribución" tmap.id="155cef81-9b89-4ba9-a3b0-87d02f69562a">
<pre>El presente código de conducta es una adaptación del [[Pacto de Colaboradores, versión 2.0|https://www.contributor-covenant.org/version/2/0/code_of_conduct.html]].</pre>
</div>
<div created="20210613141604441" modified="20210613141629008" tags="Copinchapedia" title="Cómo colaborar" tmap.id="c23719f2-8c0f-462d-b6e8-f4cee43c968a">
<pre></pre>
</div>
<div created="20210323141239577" modified="20210323141239585" tags="[[construir tornillo de extrusion]] todo" title="Comprar tornillo de extrusion" tmap.id="b62b3f14-0726-4e86-bcac-26efd8915377">
<pre></pre>
</div>
<div created="20210723231020892" creator="M0" modified="20210723232427065" modifier="M0" title="Comunidad" tmap.id="9d4af832-c1e1-490d-8b30-a36a73ffb14b">
<pre></pre>
</div>
<div created="20210115160900945" modified="20210323221802054" tags="" title="Configuración" tmap.id="b4bd78a8-1b35-4209-9610-a2220e29512d">
<pre># Una vez descargado este wiki en tu dispositivo, abre su archivo usando:
#* [[TiddlyDesktop|https://github.com/Jermolene/TiddlyDesktop]] ó
#* Firefox con el [[plugin file-backups|https://pmario.github.io/file-backups/]] instalado
# entra a [[ParaEmpezar]] y cambia los parámetros habituales:
#* título del sitio,
#* subtítulo,
#* [[tiddlers|Tiddlers]] por omisión a mostrar.
# ''Opcional'' entrar al Panel de control y cambiar usuario/autora del wiki, etc
# Guarda los cambios al wiki.</pre>
</div>
<div created="20210318123612302" modified="20210318123806025" tags="[[construir maquina extrusora]] todo" title="conseguir motor 2hp" tmap.id="492dfc43-b592-4026-a6d0-92911c731253">
<pre></pre>
</div>
<div created="20210720105619529" modified="20210726164057499" tags="[[Yusnier Mentado]] DOTS SubProject" title="Consola DOT" tmap.id="c0a75306-58e6-4f06-9db1-e5c24b7b88e7">
<pre>Consola inalámbrica para dirección de arte (audiovisual)
La inexistencia en Cuba de un equipo de obturación inalámbrica para la realización de los efectos especiales en las producciones audiovisuales, nos llevo a crear una consola multipropósito para dichos fines. Capaz de programar secuencias y disparos individuales.
Realizada con Arduino Nano, bluetooth, relays, acrílico, y piezas recicladas de otros equipos electrónicos.
&lt;center&gt;
[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/proyectos-consoladot1.webp]]
[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/proyectos-consoladot2.webp]]
[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/proyectos-consoladot3.webp]]
[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/proyectos-consoladot4.webp]]
[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/proyectos-consoladot5.webp]]</pre>
</div>
<div created="20210313040403492" modified="20210313040435406" priority="1" tags="[[Construir Hangprinter]] todo done" title="Construir electronica" tmap.id="d30c2144-4925-4be4-86b0-44018d25acff">
<pre></pre>
</div>
<div created="20210313034341211" modified="20210528223125690" tags="[[- Cuba con Impresoras 3D -]] todo" title="Construir impresora Acevedo" tmap.id="5e52032b-d2e8-4f13-be8b-2608f858dedc">
<pre></pre>
</div>
<div created="20210313034358474" modified="20210528223145256" tags="[[- Cuba con Impresoras 3D -]] todo" title="Construir impresora Israel" tmap.id="7fc76615-6a4c-4915-b41c-6e0c3ec073f6">
<pre></pre>
</div>
<div created="20210528223207107" modified="20210528223207114" tags="[[- Cuba con Impresoras 3D -]] todo" title="Construir impresora Jonathan" tmap.id="c198eb1a-0866-4764-a8a0-9befbefaa799">
<pre></pre>
</div>
<div created="20210528223216518" modified="20210528223216528" tags="[[- Cuba con Impresoras 3D -]] todo" title="Construir impresora Miguel" tmap.id="97b2194c-81a4-4b52-a989-56ce453854d7">
<pre></pre>
</div>
<div created="20210326155034759" creator="Offray Luna" modified="20210326182619941" modifier="Offray Luna" tags="" title="Consultar y organizar datos en Pharo" tmap.id="ce3cf5bb-77dd-4e7b-9573-25e5e129ff57">
<pre>Fuente: [[mensaje en la lista de correo|https://lists.pharo.org/empathy/thread/MCPQG3BHBSUMJDOESOB62Q66E3GH57LY]]:
```smalltalk
(((ProcessorScheduler selectors)
select: [:each | each endsWith: 'Priority'])
collect: [:each | {Processor perform: each. each}])
sorted: [:x :y | x first &lt;= y first]
```
Se seleccionan elementos de una colección, se recolectan unos pares y se organizan.
</pre>
</div>
<div bag="3" created="20210117220926424" modified="20210117221900745" title="Contacto" tmap.id="2617ae9a-9d79-421d-a4fe-cae87e606e64" type="text/vnd.tiddlywiki">
<pre></pre>
</div>
<div created="20210530154142814" modified="20210923172859063" title="contactos" tmap.id="f09a1dec-3bf9-4638-a6bf-093a9ca17a5f">
<pre>a,dhclasdclasjda</pre>
</div>
<div created="20200321083910908" list="Links batch [[Conditional ViewTemplate]] learning mywiki reading search syntax tools [[Coding Procedure]]" modified="20200321083917837" title="contents" tmap.id="af5f7077-3f13-45bd-8f17-6d43c6dcaff4">
<pre></pre>
</div>
<div created="20210714175059602" creator="M0" modified="20210724012849545" modifier="M0" tags="Inbox todo" title="Contribuir" tmap.id="9ec3f4d1-c938-473b-b5ca-f6d9f9742623">
<pre>Copincha se vale de las colaboraciones voluntarias que hacen crecer el fondo de recursos omunitarios que compartimos.
Este fondo se basa en construir conocimiento compartido y prototipos que nos ayudana a aprender mas rapido sobre una solucion. O materiales disponibles para el prototipado.
Material para el prototipado
Necesidades del espacio
Reflejamos cada contribucion de forma publica y transparente [[aqui|Registro de contribuciones]]
! Monetaria
Resumen
! Material
Resumen
! Tiempo
Resumen
! Trabajo
Resumen</pre>
</div>
<div caption="¿Cómo contribuir?" created="20210714175059602" modified="20210727132813142" orden="03" tags="Copincha/Concepto Inbox todo Copincha/Sidebar" title="Contribuir en Copincha" tmap.id="6e2db4dd-e2a6-4b99-9c99-6ffdcdecab11">
<pre>Copincha se vale de las colaboraciones voluntarias que hacen crecer el fondo de recursos omunitarios que compartimos.
Este fondo se basa en construir conocimiento compartido y prototipos que nos ayudana a aprender mas rapido sobre una solucion. O materiales disponibles para el prototipado.
Material para el prototipado
Necesidades del espacio
Reflejamos cada contribucion de forma publica y transparente [[aqui|Registro de contribuciones]]
! Monetaria
Resumen
! Material
Resumen
! Tiempo
Resumen
! Trabajo
Resumen</pre>
</div>
<div caption="¿Cómo contribuir?" created="20210719153537328" modified="20210727132851347" orden="02" tags="Copinchapedia Copinchapedia/Sidebar" title="Contribuir en Copinchapedia" tmap.id="9bfe26c7-5f40-4757-878c-02bb80d1f3f2">
<pre></pre>
</div>
<div caption="Copincha" created="20210720202700420" creator="M0" icon="./medios/copincha-logo-circulo.png" modified="20211115200051888" modifier="M0" tags="Contenidos" title="Copincha" tmap.id="e7941700-9ea1-4b4f-92eb-f26f522dd3fb" type="text/vnd.tiddlywiki">
<pre>{{Copincha/Concepto}}</pre>
</div>
<div created="20210613025348400" modified="20210714044853380" tags="" title="Copincha - Acciones" tmap.id="7bb2d8db-dad0-4d92-aca8-55b2e320fdfe">
<pre>* Mantener un espacio físico comunitario en La Habana donde nos reunimos, compartimos conocimientos y aprendemos.&lt;br&gt;&lt;br&gt;
* Desarrollar y mantener una comunidad digital ajustada a las necesidades comunitarias locales y extendida a través de foros, un repositorio público de proyectos y presencia en la web.&lt;br&gt;&lt;br&gt;
* Educar a través de pedagogías centradas en capacidades específicas de utilidad aplicada.&lt;br&gt;&lt;br&gt;
* Desarrollar proyectos iniciados por personas del colectivo u otras organizaciones que tengan objetivos compatibles.&lt;br&gt;&lt;br&gt;
* Documentar y divulgar, con un tono amable y familiar, las experiencias de trabajo y los conocimientos de la comunidad.&lt;br&gt;&lt;br&gt;
* Facilitar, asesorar y apoyar a otros colectivos en las siguientes materias:
:* Formas de organización abierta&lt;br&gt;&lt;br&gt;
:* Creación de comunidades que respeten la convivencia, la colaboración y la socialización del trabajo.&lt;br&gt;&lt;br&gt;
* Promover el colectivismo, la autogestión y el trabajo voluntario colaborativo tanto en Copincha, como en individuos, y organizaciones afines.&lt;br&gt;&lt;br&gt;
* Mantener una actitud abierta para poder seguir aprendiendo nosotr@s mism@s sobre estos procesos.
&lt;$macrocall $name="alert" type="dark" src="
Preferimos esta manera de operar aunque a veces pueda ser percibida como más lenta.
Preferimos que las cosas lleven algo más de tiempo a motivar dinámicas de trabajo individualistas, o centradas en la capacidad extraordinaria de uno o pocos individuos que se sobre-entienden “expertos”.
Preferimos el caminar colectivo porque entendemos que si uno quiere caminar rápido para llegar a un sitio, quizás sea mejor ir solo, pero si uno quiere llegar lejos ha de caminar siempre con otros que comparten el mismo destino.
" class="bg-transparent"/&gt;</pre>
</div>
<div created="20210325072559497" modified="20210809020144245" title="copincha - descripción" tmap.id="70ac53e1-2573-4322-b7b3-1eb78997b11e">
<pre>@@float:left; [img width=150 [logo-copincha-negro.png]]
@@
''Copincha'' es un [[hackerspace|Hackerspace]] situado en La Habana. Un laboratorio para compartir experiencias tecnológicas a través de la colaboración abierta.
En la jerga local cubana, "pincha" significa trabajo. Copincha así se traduce como trabajo colaborativo.</pre>
</div>
<div title="copincha-logo.png" tmap.id="62abed4d-e002-4711-b821-2b59e2cd1d3d" type="image/png">
<pre>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
</div>
<div caption="Concepto" created="20210310034008565" creator="M0" modified="20210923184858641" modifier="M0" orden="3" tags="Copincha" title="Copincha/Concepto" tmap.id="ada721a5-3c0d-4e04-9c50-b1aeee4a60d2">
<pre>&lt;br&gt;
{{copincha-encabezado.jpg}}
&lt;br&gt;
&lt;br&gt;
{{Copincha/Descripción}}
{{copincha - redes}}
{{Ciclo Copincha}}
&lt;&lt;slider label:"Acciones" src:"
{{Copincha - Acciones}}
" status:"close"&gt;&gt;
&lt;&lt;slider label:"Contacto" src:"
{{Hackerspace Copincha}}
{{Hackerspace Copincha!!mapa}}
" status:"close"&gt;&gt;
</pre>
</div>
<div created="20210325072559497" creator="M0" modified="20211115195905880" modifier="M0" title="Copincha/Descripción" tmap.id="3decbf76-786d-4cfe-9c86-7c84f908b523">
<pre>@@float:left; [img width=150 [./medios/logo-copincha-negro.png]]
@@
''Copincha'' es un [[hackerspace|Hackerspace]] situado en La Habana. Un laboratorio para compartir experiencias tecnológicas a través de la colaboración abierta.
En la jerga local cubana, "pincha" significa trabajo. Copincha así se traduce como trabajo colaborativo.</pre>
</div>
<div created="20210321123311564" list-after="$:/core/ui/SideBarSegments/site-subtitle" modified="20210925142946150" title="copincha/redes" tmap.id="80607098-bdc9-4c36-8df7-f7719f694127">
<pre>&lt;a href="https://t.me/copincha" class="tc-btn-big" &gt;
{{$:/core/images/telegram}}&lt;/a&gt;
&lt;a href="https://chat.whatsapp.com/DcpEPTEFLs1L6Gel8MAtW0" class="tc-btn-big"&gt;
{{$:/core/images/whatsapp}}&lt;/a&gt;
&lt;a href="https://facebook.com/copincha" class="tc-btn-big-"&gt;
{{$:/core/images/facebook}}&lt;/a&gt;
&lt;a href="https://www.instagram.com/c_o_p_i_n_c_h_a/" class="tc-btn-big"&gt;{{$:/core/images/instagram}}&lt;/a&gt;
&lt;a href="https://twitter.com/copincha1" class="tc-btn-big"&gt;
{{$:/core/images/twitter}}&lt;/a&gt;</pre>
</div>
<div caption="Copinchapedia" category="documentación" color="#ffff80" created="20210117143843768" creator="M0" licencia="&lt;a rel=&quot;license&quot; href=&quot;http://creativecommons.org/licenses/by-sa/4.0/&quot;&gt;&lt;img alt=&quot;Licencia Creative Commons&quot; style=&quot;border-width:0&quot; src=&quot;https://i.creativecommons.org/l/by-sa/4.0/88x31.png&quot; /&gt;&lt;/a&gt;&lt;br /&gt;Esta obra está bajo una &lt;a rel=&quot;license&quot; href=&quot;http://creativecommons.org/licenses/by-sa/4.0/&quot;&gt;Licencia Creative Commons Atribución-CompartirIgual 4.0 Internacional&lt;/a&gt;." licencia-short="&lt;center&gt;[img [https://i.creativecommons.org/l/by-sa/4.0/80x15.png]] &lt;br&gt; Esta obra está bajo una &lt;br&gt; [[Licencia Creative Commons Atribución-CompartirIgual 4.0 Internacional|http://creativecommons.org/licenses/by-sa/4.0/]]" modified="20210923180640514" modifier="M0" orden="2" tags="[[Jardines Digitales de Bolsillo]] Copincha/Concepto" title="Copinchapedia" tmap.id="4abe3105-25eb-4853-888d-b11c7160eba1" type="text/vnd.tiddlywiki">
<pre>Copinchapedia es [[wiki]] donde documentamos colaborativamente el conocimiento y las experiencias de [[Copincha]]. Todo el trabajo se publica bajo una [[Licencia Creative Commons Atribución-CompartirIgual 4.0 Internacional|https://creativecommons.org/licenses/by-sa/4.0/]].
Este sitio está cambiando todo el tiempo. A menudo se agregan ligeros ajustes, una sección completamente nueva o se elimina algo que ya no es relevante. Así que espere enlaces rotos y errores de escritura ocasionales en material nuevo. Hacemos lo posible por mantenerlo ordenado.
Al recopilar estos materiales, hemos tomado prestado ocasionalmente muchos recursos en línea (como: textos, imágenes o ideas inspiradoras). Intentamos reunir el crédito de todas las fuentes en cada página; pero por favor, [[contáctenos|mailto:comunidad@copincha.org]] si encuentra alguna omisión o igualmente para brindarnos preguntas o comentarios.</pre>
</div>
<div created="20210318115637462" modified="20210325113219306" tags="" title="copinchapedia - colaborar" tmap.id="8450ecb6-ab2c-435a-9204-1ca0881489bd">
<pre>......</pre>
</div>
<div caption="Plantillas" created="20210323134644669" list="[[ventana de pieza]] [[lista de piezas]] pieza" modified="20210727132455779" tags="SubProject Copinchapedia todo [[Tutorial Copinchapedia]]" title="Copinchapedia/Plantillas" tmap.id="cf3b9c5e-a34c-4c19-8775-2a31bf534555">
<pre></pre>
</div>
<div created="20210318122126240" modified="20210318122500752" tags="" title="Cuba con Impresoras 3D - Descripcion" tmap.id="b7634ae3-bb65-49be-bfbe-9eebff7aab81">
<pre>aaaa
sa
xas
a
sasxsa
x
sax
ax
xs</pre>
</div>
<div bag="default" created="20201211111245754" modified="20201211111414096" revision="0" title="Customizing" tmap.id="6eee8186-6e7b-4703-8a1e-24d8062cb2a2" type="text/vnd.tiddlywiki">
<pre>!! How can I add sections to the left sidebar?
Any tiddler with the system tag &lt;&lt;tag $:/themes/nico/notebook/tags/SidebarSection&gt;&gt; will be displayed as a section in the left sidebar.</pre>
</div>
<div bag="default" created="20200811035931021" modified="20200819153624911" revision="10" tags="" title="Demo" tmap.id="64d13d73-f7b6-42d8-86c7-d0d7c42bcffa" type="text/typewriter">
<pre>!! This is a proof of concept of a visual editor for writing pure text.
Pure text means //''no widgets or macros, no custom HTML''.//
I have a very raw, incomplete and preliminary proof of concept demo of a visual editor for everyone to play with to assess if this is worth pursuing further.
''A few things to understand before we go further:''
* This takes a shortcut approach which means that it cannot be used as the basis of an editor that does support widgets and macros etc
* The idea is to see if this reliable enough to use in situations where we care more about the final presentation of the content than the underlying code
** To test out the feasability of the idea, I have used an existing HTML based editor and re-used it within TW but set it up to output wiki syntax.
** This is in very early days. I have done the bare minimum work on it so far to see if the idea is feasable. As such it is brittle. In other words, this is still far from being reliably usable.
** Therefore, the UI is far from ideal and this is not feature complete. Ignore those aspects as that can be addressed if the overall approach is found to be useful
** configuration options, integration with core editor features etc are all not addressed at the moment
*** on that note do not use the core toolbar in the editor other than the preview button.
* The main questions to answer here are:
** does such a visual editor providing support for very limited formatting offer any value?
** Is the conversion from wiki to HTML and back to wikitext, reliable enough for this subset of formatting options?
** The editor does not do a lossless wikitext-&gt;HTML-&gt;wikitext roundtrip, the aim however is for the product of such a roundtrip to look visually identical to the original text when rendered.
* For the purpose of this demo, the new editor is only active on tiddlers with the type text/typewriter. So if the editor does crash for some reason, you can just delete the type field to get the default editor
* Once in the editor, ''select any text to see formatting options''. (and yes its part of the non ideal UI for now that this needs a selection)
* Formatting is limited to the options provided by the toolbar. If you edit a tiddler that has had extra formatting added with wikitext or html, bad things will happen. Probably you loose that extra formatting or those bits of content. I don't think we can warn users that is happening either.
* the idea is not to use wiki syntax in this editor, but rather use the formatting commands to add formatting
* The editor would best be used to edit tiddlers that were also written in this editor.
* Creating links is very clunky at the moment. To add a tiddler link highlight some text, choose the last button on the toolbar and then type in # followed by the tiddler name.
''//OK, go ahead and edit this tiddler and try selecting some text.//''
''//After that look at [[this|View demo]] tiddler.//''
!! Technical details.
* The editor used is https://github.com/yabwe/medium-editor
* The choice of editor was one of expedience. &lt;br&gt;I have used this library before and it generates HTML consistent with TiddlyWiki, in particular paragraphs. &lt;br&gt;However, this library is no longer maintained and has not been in some time. Furthermore, the floating only toolbar UI is far from ideal.
* Other editors considered but found lacking: ProseMirror (too complex to setup and maintain without a committed maintainer), Trumbowyg (no nested lists and Trix (divs instead of paragraphs). Editors relying on jquery / angular / vue were not considered. Trix is probably worth another look.
* The conversion from HTML to markdown/tiddlywiki is by means of turndown:  https://github.com/domchristie/turndown
* For the purpose of this  demo, this editor is only active for tiddlers with the type: text/typewriter</pre>
</div>
<div created="20210522160306141" creator="M0" modified="20210522160342020" modifier="M0" tags="" title="Descripcion" tmap.id="3c4efb7e-6a0c-4b99-86bd-8aa9c50c7190">
<pre>Este es el wiki del colectivo PRUEBAS</pre>
</div>
<div created="20210720120155524" modified="20210720181533985" tags="Arte [[Maykel Rodríguez Ricardo]]" title="Diagramas de Flujo" tmap.id="8da91e30-cecc-40af-b6cc-f43bb96481f7">
<pre>Me interesa estudiar
la dinámica de la ciudad.
Utilizando herramientas de la ciencia,
organizo experimentos donde obtengo
los patrones de comportamiento
de los usuarios en el espacio público.
Con la serie Diagramas de Flujo
pretendo llevar estos patrones
al ámbito del arte.
&lt;center&gt;
[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/proyectos-diagramasdeflujo1.webp]]
[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/proyectos-diagramasdeflujo2.webp]]
DIAGRAMAS DE FLUJO. Plaza Vieja.
Acrílico sobre pared
Impresión digital
&lt;br&gt;
[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/proyectos-diagramasdeflujo3.webp]]
[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/proyectos-diagramasdeflujo4.webp]]
DIAGRAMAS DE FLUJO. Plaza Vieja.
Óleo sobre lienzo
Cinco piezas de 29 x 29 cm cada una
&lt;br&gt;
[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/proyectos-diagramasdeflujo5.webp]]
DIAGRAMAS DE FLUJO. San Agustín, 250 y 31 (en colaboración con el proyecto LASA)
Impresión digital
&lt;br&gt;
[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/proyectos-diagramasdeflujo6.webp]]
DIAGRAMAS DE FLUJO. San Agustín, 250 y 31
Impresión digital. 9 piezas de 27x 15 cm cada una.
&lt;br&gt;
[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/proyectos-diagramasdeflujo7.webp]]
DIAGRAMAS DE FLUJO. San Agustín, 250 y 31
Grato sobre cartulina. Seis piezas de 48 x 32 cm
</pre>
</div>
<div created="20210720103509802" modified="20210726163408310" tags="[[Yusnier Mentado]] Arte DOTS SubProject" title="Dios no jugó a los dados" tmap.id="b8ba7e12-9987-45e1-91fc-6c92d11257b3">
<pre>La obra consiste en un dado electrónico, con sensores capaces de identificar cuál es la cara superior y así actualizar todas las demás para colocar el número mayor hacia arriba. La relación Arte-Ciencia-Fe, son importante en esta obra, el azar puede ser construido, manipulado, divina o electrónicamente.
Realizada con Arduino Mini Pro, y piezas recicladas de otros equipos electrónicos.
&lt;center&gt;
[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/proyectos-diosnojugoalosdados1.webp]]
[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/proyectos-diosnojugoalosdados2.webp]]
[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/proyectos-diosnojugoalosdados3.webp]]
[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/proyectos-diosnojugoalosdados4.webp]]
[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/proyectos-diosnojugoalosdados5.webp]]</pre>
</div>
<div color="#54daff" created="20210323134054655" modified="20210323134054655" tags="$:/plugins/nico/projectify/tags/Category" title="Documentacion" tmap.id="e7ef221e-4b8f-4d89-a1ac-75bb9bd5534c">
<pre></pre>
</div>
<div color="#d9ffeb" created="20210719141857210" modified="20210719141905400" tags="$:/plugins/nico/projectify/tags/Category" title="documentación" tmap.id="460408f0-2e50-4074-a70c-2489831f4d8f">
<pre></pre>
</div>
<div created="20210313034324455" modified="20210318153722425" tags="[[- Cuba con Impresoras 3D -]] todo" title="Documentar impresora Ale" tmap.id="bed76554-75ee-4746-a99c-43cad6cbe8d0">
<pre></pre>
</div>
<div created="20170510171219303" creator="Mat von TWaddle" modified="20210714055208435" modifier="Mat von TWaddle" tags="Copinchapedia example todo" title="Documentar recurso Richlink" tmap.id="900826c9-def3-4603-8ce4-8a6b83450e1b">
<pre>This uses [[$:/richlink/img]] template to get a //polaroid wth image caption//. The use of this template is triggered by the ´.jpg´ suffix of the link.
In particular, note that this particular template uses one of the //extra parameters//!.
`&lt;&lt;richlink "http..." "blubb blubb"&gt;&gt;`
&lt;br&gt;
&lt;&lt;richlink "https://copinchapedia.copincha.org/proyectos/impresora3drada1.jpg" "Impresora 3D"&gt;&gt;
</pre>
</div>
<div created="20170510171219303" creator="Mat von TWaddle" modified="20210912062940984" modifier="Mat von TWaddle" tags="[[Contribuir en Copinchapedia]] example todo done" title="Documentar recursos Copinchapedia" tmap.id="2dd8a00b-846b-440d-82d5-72363309a3a1">
<pre></pre>
</div>
<div category="grupo" created="20210720034015395" description="Desarrollo de obras tecnologicas" modified="20210726163125643" tags="Arte Project" title="DOTS" tmap.id="68cd4f21-e29a-4b86-accd-d2e8d89dd797">
<pre>&lt;div class="tc-table-of-contents"&gt;
&lt;&lt;toc-selective-expandable 'DOTS' sort[title] ]&gt;&gt;
&lt;/div&gt;</pre>
</div>
<div created="20210520170902640" modified="20210613170955977" title="Draft of 'Cafe Sorpresa - 21 de mayo de 2021'" tmap.id="cd6bcc75-ea21-48ca-93d2-08bc977afba0">
<pre>Hola, Bienvenido al Cafe Sorpesa.
Mi nombre es Mauri, soy cubano, disenador industrial y soy fundador de Copincha, un hackerspace en La habana.
Este Cafe Sorpresa se titula Tiddlywiki pa Copinchapedia. Pero vamos a hablar fundamentalmente sobre cuadernos de notas.
!! Copincha y la necesidad de documentar
Copincha nacio en junio de 2018 con un curso sobre Arduino. En muy breve tiempo ha venido reuniendo conocimientos y experiencias de las personas que les permitan socializar soluciones para el beneficio comun. Siempre con un caracter colaborativo y abierto.
En la busqueda por hacer mas accesible estas experiencias a la comunidad comenzamos a trabajar en la documentacion y archivo, y en su publicacion en una wiki que hemos nombrado Copinchapedia.
En Cuba el acceso de internet crece pero es todavia un servicio muy caro para la mayoria.
En Cuba Existen proyectos de redes redes alternativas como SNET.
O el Paquete semanal, una forma de distribucion de contenidos, como especie de Netflix offline. Tambien la distribucion de contenidos desde negocios llamados casas de copias.
Este contexto es inspirador para hacer de Copinchapedia una wiki que pueda ser distribuida devarias formas. Ya sea online o offline. Y asi garantizar que de alguna forma obtenga su público.
A raiz del en cuentro en GIG hicimos contacto con Offray
y la comunidad Grafoscopio.
que nos sugirio explorar tiddlywiki y tambien otras herramientas como fossil y hedge doc que sirven colateralmente a este proposito.
!! Que es tiddlywiki?
Tiddlywiki es un software contenido en un archivo html.
Este nos permite crear un cuaderno de notas e ir modificandolo y expandiendolo en el tiempo. El uso mas inmediato que podemos darle es crear un cuaderno personal. y puede ser una alternativa a herramientas como Google Keep, u otro software de notas.
Para ejecutarlo solo debemos abrir este archivo html en cualquier explorador de internet, editar lo que queremos del contenido y guardar.
Al contenido se pueden vincular recursos en internet, pero tambien. una caracteristica de tiddlywiki. es que autocontine varios archivos, como imagenes, pequenos audios...
Tiddlywiki es una web en donde puedes crear un sistema de porciones de contenidos , como un sitema de ficas, e ir interconectando este contenido.
para ello posee 3 caracteristicas importantes.
la posibilidad de hacer enlaces entre fichas por hipertexto.
3. La posibilidad
2. La posibilidad de hacer transclusiones. Que permite que una ficha muestre siempre el contenido de otra ficha de manera automatica.
</pre>
</div>
<div created="20210522160233927" creator="M0" modified="20210522160301763" modifier="M0" tags="" title="Encabezado" tmap.id="1323d8c6-513f-4633-afa2-f5cc4a162fc0">
<pre>...
...
...</pre>
</div>
<div created="20210621164245476" modified="20210621164319162" tags="" title="Encuentros - Calendario" tmap.id="c9c6e5b1-f65f-4806-b031-a62f1751397d">
<pre></pre>
</div>
<div created="20210324152711709" modified="20210324154515293" tags="" title="Enlaces enriquecidos" tmap.id="4dd3ec2b-1bc0-46c5-9a97-ec238f9309ae">
<pre>Este tiddler prueba las funcionalidades de la extensión [[RickLink|http://richlinks.tiddlyspot.com/]].
!! Imagen
Escribir:
```
&lt;&lt;richlink "http://freedesignfile.com/upload/2015/10/Cartoon-underwater-world-beautiful-vector-02.jpg" "blubb blubb"&gt;&gt;
```
produce:
&lt;&lt;richlink "http://freedesignfile.com/upload/2015/10/Cartoon-underwater-world-beautiful-vector-02.jpg" "blubb blubb"&gt;&gt;
!! Audio
Escribir:
```
&lt;&lt;richlink "https://archive.org/download/Caruso_part1/Caruso-AveMaria.mp3"&gt;&gt;
```
produce:
&lt;&lt;richlink "https://archive.org/download/Caruso_part1/Caruso-AveMaria.mp3"&gt;&gt;
!! SoundCloud
Escribir:
```
&lt;&lt;richlink "https://soundcloud.com/nadaesoriginal/cultura-hacker-con-irene-soria"&gt;&gt;
```
o:
```
&lt;&lt;soundcloud "https://soundcloud.com/nadaesoriginal/cultura-hacker-con-irene-soria"&gt;&gt;
```
produce:
&lt;&lt;richlink "https://soundcloud.com/nadaesoriginal/cultura-hacker-con-irene-soria"&gt;&gt;
!! YouTube
Escribir:
```
&lt;&lt;richlink "https://www.youtube.com/watch?v=ZMGpAW0z_Bo"&gt;&gt;
```
produce:
&lt;&lt;richlink "https://www.youtube.com/watch?v=ZMGpAW0z_Bo"&gt;&gt;
!! JSFiddle
Muestra experimentos de trozos de código que combinan JavaScript, HTML y CSS, extraídos
del popular sitio [[jsfiddle|http://jsfiddle.net]].
Escribir:
```
&lt;&lt;richlink "http://jsfiddle.net/chriscoyier/Hyg3C/20/" "250px"&gt;&gt;
```
produce:
&lt;&lt;richlink "http://jsfiddle.net/chriscoyier/Hyg3C/20/" "250px"&gt;&gt;</pre>
</div>
<div created="20210323160742321" modified="20210323182812145" tags="[[encargar tornillo con tornero en cuba]] todo done" title="enviar plano" tmap.id="2552823a-6321-437d-89b5-a0019c78fa63">
<pre></pre>
</div>
<div created="20131224074240979" modified="20210719153727558" tags="[[Tutorial Copinchapedia]]" title="Establecer un favicon" tmap.id="9ee16b8c-20f0-4f85-9d9e-8ff83d8d3656" type="text/vnd.tiddlywiki">
<pre>Los "favicons" son pequeños iconos que la mayoría de los navegadores muestran para ayudar a los usuarios a identificar los sitios web. Tenga en cuenta que todos los navegadores admiten imágenes de mapa de bits, pero sólo algunos navegadores modernos admiten iconos en formato SVG.
favicons en el navegador
Cuando TiddlyWiki se inicia en el navegador busca un tiddler llamado $:/favicon.ico y lo utiliza dinámicamente como el favicon de la página. Si modificas la imagen, el favicon cambia instantáneamente para reflejarlo.
Para establecer una imagen externa como favicon, asigna la URL al campo _canonical_uri del tiddler $:/favicon.ico.
favicons en el servidor
En el servidor, el ServerCommand servirá el tiddler $:/favicon.ico en la ruta /favicon.ico.
Traducción realizada con la versión gratuita del traductor www.DeepL.com/Translator</pre>
</div>
<div created="20210318221223054" modified="20210319033318388" tags="$:/tags/Stylesheet" title="Estilo de pagina" tmap.id="d4ae9f15-0f5e-4902-bd1b-9147e0eee705">
<pre>&lt;!--body.tc-body {
background: white;
}
--&gt;</pre>
</div>
<div color="#ff4d00" created="20210323133814155" modified="20210714055729594" tags="$:/plugins/nico/projectify/tags/Category" title="evento" tmap.id="561f5d54-dce2-4105-84a3-02bac15908fe">
<pre></pre>
</div>
<div color="#ff4d00" created="20210323133814155" modified="20210323133814155" tags="$:/plugins/nico/projectify/tags/Category" title="Evento" tmap.id="adff895a-700f-4567-b8fa-649b32bcae4a">
<pre></pre>
</div>
<div created="20141211150741325" creator="Tobias Beer" modified="20210319080409833" modifier="Tobias Beer" tags="" title="Examples" tmap.id="52d1cfbd-f8f2-4883-afd6-45e156e77dec">
<pre>;example image
:[[lights.jpg]]
simple image button using ''caption'' field at the image
`&lt;&lt;ibox lights.jpg&gt;&gt;`
&lt;&lt;ibox lights.jpg&gt;&gt;
image button with custom caption
`&lt;&lt;ibox lights.jpg "amazing ligths"&gt;&gt;`
&lt;&lt;ibox lights.jpg "amazing ligths"&gt;&gt;
just the image — displays image name as modal title, no captions though
`&lt;&lt;ibox lights.jpg direct:yes&gt;&gt;`
&lt;&lt;ibox lights.jpg direct:yes&gt;&gt;
image button with [[custom style classes|$:/.tb/styles/pretty]]
`&lt;&lt;ibox lights.jpg btn-class:"ibox-btn tc-btn-invisible pretty"&gt;&gt;`
&lt;&lt;ibox lights.jpg btn-class:"ibox-btn tc-btn-invisible pretty"&gt;&gt;</pre>
</div>
<div created="20210426040451245" list="[[Responders Statistics]] [[Keywords Statistics]] [[Solutions Statistics]]" modified="20210725032352450" tags="" title="Explorer" tmap.id="fcb16915-cbaf-4a56-af58-8ee69549466a">
<pre>&lt;&lt;tabs class:"tc-vertical" tabsList:"[tag[Explorer]!has[draft.of]]" default:"Responders Statistics"&gt;&gt;</pre>
</div>
<div created="20210313040239500" modified="20210917081946043" tags="[[Máquinas Precious Plastic]] todo" title="Extrusor de filamentos" tmap.id="c6116f7f-c1e5-4271-928a-d3ac3a2a16fb">
<pre></pre>
</div>
<div created="20210225201908234" modified="20210917072201660" tags="SubProject [[Máquinas Precious Plastic]] todo" title="Extrusora Precious Plastic" tmap.id="a7c7ab4c-1ab2-44bb-be5b-554f3fb74ab1">
<pre>! Descripción
La extrusión es un proceso continuo donde las partículas de plástico se insertan en la tolva y se extruyen en una hilo de plástico. Estas hilos se pueden usar para hacer nueva materia prima, plástico granulado, girar alrededor de un molde o usarse de manera creativa.
{{maquina-extrusora-precious-plastic.png}}
! Listado de materiales
| !Elemento | !Descripción | !Cantidad | !Precio (CUP) | !Total (CUP) | !Conseguido | !Enlace |
| Tornillo de extrusión | 26 x 600 mm | 1 | 6250 | 6 250 | ✓ | |
| Tubo | ø interior 25, acero, 63 mm | 1 | 625 | 625 | ✓ | |
| Perfil L | 30 x 30 x 3mm, 320 mm, acero | 1 | 1 250 | 1 250 | ✓ | |
| Tolva | Grosor 1 mm, acero | 1 | 375 | 375 | ✓ | |
| Rodamiento | UCFL 204 | 1 | 25 | 25 | ✓ | [[⛶|https://bazar.preciousplastic.com/machines/shredder/shredder-parts/2pcs-shredder-machine-v2.1-bearing-pair-ucfl204/]] |
| Base | | 1 | | | | |
| Correa | | 1 | | | ✓ | |
| Motor | 2 HP, 1 600 - 1 700 rpm | 1 | 750 | 750 | | |
| Reductor | 1 / 80 - 130 | 1 | 1 000 | 1 000 | | |
| Controlador PID | 0-400 ºC | 2 | 500 | 1 000 | ✓ | |
| SSR | 2 - 24 V | 2 | 200 | 400 | ✓ | |
| Termoacopladores | Tipo K | 2 | 375 | 750 | ✓ | |
| Abrazadera termo-resistencia | 35 x 45 mm | 4 | 500 | 20 000 | ✓ | [[⛶|https://cntronic.com/ljxh-2pcs-lot-mica-band-heater-35x45mm-35x50mm-35x55mm-35x60mm-110v220v380v-150w-160w-180w-200w-stainless-steel-heating-element-23687]] |
| Encendedor de alimentación | | 1 | | | ✓ | |
| Cable de alimentación | 5 000 mm| 1 | | | ✓ | |
''Total:'' 32 425 CUP
&lt;center&gt;
[img[/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/proyectos-pph-extrusora-1.webp]]
[img[/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/proyectos-pph-extrusora-2.webp]] [img[/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/proyectos-pph-extrusora-3.webp]]
</pre>
</div>
<div bag="default" caption="Copincha" color="#000000" comunitario="punto comunitario" created="20210325130657232" creator="Sylvain Comte" modified="20210613024236231" modifier="Sylvain Comte" recoleccion="punto de recoleccion" revision="0" tags="geoplasticoleal" title="geoplasticoleal - copincha" tmap.id="8f3bd11c-853b-4ffa-9cda-7cf9c63596a4" type="text/vnd.tiddlywiki">
<pre>{{Hackerspace Copincha}}
Tipo:
*{{!!comunitario}}
*{{!!recoleccion}}
</pre>
</div>
<div color="#00aeff" created="20210323134005215" modified="20210714055746315" tags="$:/plugins/nico/projectify/tags/Category" title="grupo" tmap.id="ac8c834c-540e-43de-b5a3-d928e7a56d6a">
<pre></pre>
</div>
<div color="#ff64d9" created="20210323134005215" modified="20210323134005215" tags="$:/plugins/nico/projectify/tags/Category" title="Grupo" tmap.id="10c87157-d05a-46ad-9388-ef94310c5f52">
<pre></pre>
</div>
<div created="20210321100655028" modified="20210321100749690" title="GrupoProyectos" tmap.id="ea6f1b00-b531-4d2b-bb2d-1d10b7a0d8bf" type="text/x-markdown">
<pre># Nombre del Proyecto
&gt; ***Pregunta que intenta respoder el proyecto***
![Imagen de Encabezado](images/header.jpg)
Introducción al proyecto
Qué se hace? Quién(es)
lo hacen? Responsable ?
## Contexto
Dónde? Por qué?
## Proceso de Trabajo
¿Cómo?
## Proyectos
| | |
| - | - |
| ![Imagen de Proyecto](proyectos/nombre_proyecto/imagenes/proyecto.jpg) | **Nombre de proyecto** &lt;br&gt; Iniciado por: &lt;br&gt; Descripción |
| ![Imagen de Proyecto](proyectos/nombre_proyecto/imagenes/proyecto.jpg) | **Nombre de proyecto** &lt;br&gt; Iniciado por: &lt;br&gt; Descripción |
&lt;br&gt;
## Participantes
| | |
|-|-|
| ![Imagen del participante]() | Descripción |
</pre>
</div>
<div created="20210304163741217" creator="M0" modified="20210923173014534" modifier="M0" tags="glosario" title="Hackerspace" tmap.id="45ae7ea8-487e-4aae-973e-2ee87dd23a67" type="text/vnd.tiddlywiki">
<pre>Los hackerspaces son lugares físicos gestionados de forma comunitaria, donde las personas se reunen y comparten su interés por la tecnología, trabajan en sus proyectos y aprenden de los demás.</pre>
</div>
<div bag="default" caption="Copincha" color="#000000" created="20210325045828732" creator="Sylvain Comte" direccion="Ánimas 964, apto 101, entre Soledad y Oquendo, Centrohabana, La Habana, Cuba" email="[[comunidad@copincha.org|mailto:comunidad@copincha.org]]" mapa="&lt;$leafmap tile='toner' places='{&quot;filter&quot;:&quot;[tag[geocopincha]]&quot;}' clusterType='tiddler' style='{&quot;color&quot;:&quot;orange&quot;}' marker='marker' height=300px width=100%/&gt;" modified="20210720063642687" modifier="Sylvain Comte" osm="[[23.1391890,82.3735227|https://www.openstreetmap.org/#map=23.1391890,82.3735227]]" point="23.1391890, -82.3735227" revision="0" tags="geocopincha geoplasticoleal" telefono="&lt;a href=&quot;tel: +53 54115734&quot;&gt;+53 54115734&lt;/a&gt;" title="Hackerspace Copincha" tmap.id="43981f03-b629-4576-be77-3546d93bfcd4" type="text/vnd.tiddlywiki">
<pre>Dirección: {{Hackerspace Copincha!!direccion}}
Email: {{Hackerspace Copincha!!email}}
Teléfono: {{Hackerspace Copincha!!telefono}}</pre>
</div>
<div created="20210714050511860" modified="20210917072210212" tags="SubProject [[3D a lo cubano]] todo [[Máquinas para reciclar plásticos]]" title="Hangprinter" tmap.id="7a5c3ad6-1875-4a90-88e3-e9dffc7d26be">
<pre>{{impresora 3D Hangprinter.jpg}}
!Descripción
{{Hangprinter - Descripcion}}
!Listado de materiales
{{Hangprinter - Listado de materiales}}
! Manual
!! Montaje de hardware
[img[small_000.jpg]]
Bienvenido al ensamblaje de hardware Hangprinter versión 3. Haga clic en las imágenes para ver versiones más grandes. Las siguientes instrucciones asumen que ha completado el paso de abastecimiento.
[img[small_001.jpg]]
Hardware para una construcción que no sea SmartStepper, excluyendo el cable USB y los tornillos. Tenga en cuenta que el material de la hoja rectangular es para construir anclajes ABC. Deben ser una pila de tres. Las partes impresas en blanco estarán en contacto con los motores. Imprímalos en un plástico resistente al calor en caso de que sus motores se calienten alguna vez.
[img[small_002.jpg]]
Empuje los carretes y los engranajes del carrete sobre los cojinetes 608.
[img[small_003.jpg]]
Repita para todos los carretes y engranajes de carretes.
[img[small_004.jpg]]
Empuje los carretes con rodamientos 608 en los núcleos de los carretes.
[img[small_005.jpg]
Ahora coge tus espaciadores.
[img[small_006.jpg]]
... y compruebe que encajan perfectamente en los núcleos de los carretes.
&lt;br&gt;
Ahora podría ser un buen momento para medir los radios de sus carretes con un par de calibradores. Tenga en cuenta los radios en los propios carretes. Esto será necesario para la calibración del firmware más adelante.
También podría ser un buen momento para colocar líneas en sus carretes. Se requieren nueve líneas para impulsar la impresora. Por defecto, tres de ellos tienen 4 m de largo, los seis restantes tienen 7,5 m de largo. Coloque los de 4 m en un carrete. Coloque pares de 7.5 m en los tres carretes restantes.
[[Aquí|http://forums.reprap.org/read.php?1,792937,809736#msg-809736]] encontrará una guía más detallada sobre cómo elegir la longitud de las líneas . Si usa longitudes de línea personalizadas o grosor de línea, debe especificar esto en la configuración del firmware más adelante.
Así es como atas tu línea a tu carrete:
[img[small_hangprinter_hitch_0.jpg]]
Pase un bucle a través del orificio de la pared del carrete derecho y sáquelo del orificio izquierdo.
[img[small_hangprinter_hitch_1.jpg]]
Pase su línea a través del agujero derecho nuevamente.
[img[small_hangprinter_hitch_2.jpg]]
Apriete desde el interior. Deja mucho hilo suelto por dentro.
[img[small_hangprinter_hitch_3.jpg]]
Haz un simple tirón alrededor de la pierna izquierda de tu lazo.
[img[small_hangprinter_hitch_4.jpg]]
Primer plano del mismo enganche.
[img[small_hangprinter_hitch_5.jpg]]
Haz otro tirón por encima del anterior. Haz tres tirones en total, así que uno más después de este.
[img[small_hangprinter_hitch_6.jpg]]
Apriete sus enganches tirando de la pierna izquierda del lazo y del extremo suelto de la línea. Luego, tire de los carretes hacia afuera para ver si el nudo se sostiene.
[img[small_hangprinter_hitch_7.jpg]]
El exterior de su carrete ahora debería verse así.
[img[small_008.jpg]]
Compruebe que los engranajes de los carretes encajen bien en los carretes. Tenga en cuenta que los dos engranajes de carrete + carrete están montados al revés en esta imagen. Las escotillas en los radios del engranaje de carrete están ahí para dejar espacio para las cuatro cabezas de los tornillos más adelante.
[img[small_010.jpg]]
Inserte el tubo de PTFE en los rodillos de revestimiento de anclaje y corte al ras con el frente.
[img[small_011.jpg]]
Haga lo mismo con los D-linerollers.
[img[small_012.jpg]]
Los tubos de PTFE deben encajar bien en los rodillos de revestimiento en D. Empújelos así.
[img[small_013.jpg]]
Tubos de PTFE insertados.
[img[small_014.jpg]]
Monte los rodamientos 623 con ranura en V en todos los rodillos de revestimiento.
[img[small_015.jpg]]
Ahora agarre sus motores y engranajes del motor.
[img[small_016.jpg]]
Los engranajes del motor tienen orificios en forma de D y una muesca para ayudarlo a alinearlos con los ejes del motor.
[img[small_017.jpg]]
Golpee suavemente el engranaje del motor en su lugar con muchos golpes pequeños de un objeto ligero, suave y redondeado. No golpees fuerte. Si los orificios del engranaje del motor están demasiado apretados, taladre / lime más ancho o simplemente imprima otros nuevos. Si los orificios del engranaje del motor son demasiado anchos, inserte las tuercas desde abajo y apriételas con tornillos de fijación.
[img[small_018.jpg]]
El espacio entre el engranaje del motor y el motor debe ser de aproximadamente 1 mm.
[img[small_019.jpg]]
Ahora agarra los soportes del motor.
[img[small_020.jpg)
Primero inserte los tres tornillos en sus agujeros. Será más complicado hacerlo más tarde.
[img[small_021.jpg)
Monte los soportes del motor en los motores.
[img[small_022.jpg)
Ahora junta tus aparatos electrónicos. Se recomienda utilizar SmartSteppers en los motores A, B, C y D, aunque en la imagen se muestran los stepsticks. Consulte las &lt;a href="#SmartStepper"&gt;instrucciones de montaje de SmartStepper&lt;/a&gt;
[img[small_023.jpg]]
Inserte el paso / directorio de sus controladores en las salidas paso / directorio de la placa RAMPS.
[img[small_024.jpg]]
Monte su escudo RAMPS firmemente en su Arduino Mega.
[img[small_025.jpg]]
Coge las piezas de tu mudanza.
[img[small_026.jpg]]
Su viga de 40 cm debe empujarse hasta la raíz de la pared separadora. Esto es importante para obtener el ancho correcto de su triángulo de movimiento.
[img[small_027.jpg]]
Adjuntar con cremalleras sin apretar.
[img[small_028.jpg]]
Asegúrese de que las vigas estén alineadas con la raíz de la pared del separador. Luego apriete lo más fuerte que pueda sin romper las cremalleras.
[img[small_029.jpg]]
El triángulo terminado debe sentirse razonablemente rígido. No experimentará grandes fuerzas durante la impresión, pero no debería cambiar las dimensiones fácilmente.
[img[small_030.jpg]]
Deje unos mm de brida, para que pueda ajustarlos más tarde si es necesario.
[img[small_031.jpg]]
Si usa vigas de madera, puede perforar un orificio de montaje a través del lado del triángulo y la viga transversal. Si usa vigas de fibra de carbono, coloque la viga transversal con bridas en su lugar, como se muestra en esta [imagen vinculada.](https://copinchapedia.copincha.org/ziptied_crossbeam.jpg)
[img[small_032.jpg]]
Utilice arandelas en ambos lados del tornillo M3.
[img[small_033.jpg]]
Apriete bastante el tornillo. Si su madera es blanda, la lavadora debe hundirse ligeramente en la madera.
[img[small_034.jpg]]
Ahora agarra tus controles deslizantes de haz.
[img[small_035.jpg]]
Los controles deslizantes de la viga ABC deben estar bien sujetos.
[img[small_036.jpg]]
Los controles deslizantes de la viga D deben estar sueltos al principio.
[img[small_037.jpg]]
Apriete los controles deslizantes de la viga D colocándolos más adentro de la brida, apuntando hacia la esquina más cercana.
[img[small_038.jpg]]
Coloque los controles deslizantes ABC y D en los extremos opuestos de cada lado del triángulo.
[img[small_039.jpg]]
Pase una brida sobre la viga transversal y a través del soporte de la extrusora como se muestra.
[img[small_040.jpg]]
Use dos zipties como se muestra en la imagen, o use un ziptie más largo. Apriete lo más fuerte que pueda.
[img[small_041.jpg]]
Agrega dos cremalleras más, en bucles rectos alrededor de la viga.
[img[small_042.jpg]]
Use la cuña impresa para apretar las correas largas. El soporte de la extrusora ahora debería estar muy ajustado a la viga transversal.
[img[small_043.jpg]]
El cable plano está sujeto con cremallera al soporte de la extrusora para aliviar la tensión.
[img[small_044.jpg]]
Monte su extrusora + extremo caliente de elección y guarde el motor terminado.
[img[small_045.jpg]]
Coge tu plantilla 2d-prints. Verifique que estén impresos al 100% de escala comparando los tamaños de los contornos impresos en 2d con las bases de las piezas impresas en 3D. [Imagen de una doble verificación exitosa.](https://copinchapedia.copincha.org/print_template_to_scale.jpg)
[img[small_046.jpg]]
Colóquelos de modo que las líneas brillen. Idealmente en una ventana o en una mesa de cristal.
[img[small_047.jpg]]
Alinee las superposiciones perfectamente una encima de la otra.
[img[small_048.jpg]]
Pegue juntos.
[img[small_049.jpg]]
Coloque su plantilla 2d terminada en su placa de techo.
[img[small_050.jpg]]
Atornille la plantilla plana sobre la placa de techo.
[img[small_051.jpg]]
Marque las marcas a través de los centros de todos los círculos pequeños.
[img[small_052.jpg]]
La plantilla con todas las marcas martilladas se ve así.
[img[small_053.jpg]]
La placa del techo debajo debe tener marcas visibles como esta.
[img[small_054.jpg]]
Ahora monte sus carretes y rodillos de revestimiento preparados. Tenga en cuenta la orientación de los linerollers para que la línea pueda entrar como se especifica en la plantilla. Es útil marcar los carretes con los nombres A, B, C y D, como se especifica en la plantilla. No olvide los tornillos largos que atraviesan el centro de los núcleos del carrete.
[img[small_055.jpg]]
Un poco de juego en los engranajes es inofensivo porque las líneas pretensarán los engranajes de todos modos. Los engranajes que engranan mal o ruedan de manera desigual debido a un ajuste demasiado apretado pueden causar problemas más adelante.
[img[small_056.jpg]]
Apuntar los cables del motor lejos del centro del carrete es bueno, pero no crítico.
[img[small_057.jpg]]
Sujete los cables del motor lo más cerca posible del soporte del motor.
[Video de montaje de piezas a placa de techo.](https://www.hangprinter.org/doc/v3/media/mounting_parts_onto_ceiling_plate.webm)
&lt;br&gt;
!!!!! SmartStepper y cableado &lt;a name="SmartStepper"&gt;&lt;/a&gt;
Utilice el firmware que se encuentra en el [repositorio de Hangprinter](https://gitlab.com/tobben/hangprinter/tree/Openscad_version_3/firmware/SmartStepper_subtree) . Para saber cómo cargarlo, consulte la propia [documentación de Misfittech.](http://misfittech.net/nema-17-smart-stepper/)
No tenemos un diagrama de cableado completo con SmartSteppers, por lo tanto, consulte el siguiente diagrama de cableado, pero tenga en cuenta que no se necesita el cambiador de nivel externo de 12V -&gt; 5V, ya que este componente está integrado en los SmartSteppers.
[img[small_hangprinter_electronics_diagram_mechaduino_ramps1.4_v2.3.jpg]]
... y conecte los SmartSteppers de esta manera:
[img[small_smartstepperwires.jpeg]]
Cableado SmartStepper.
&lt;br&gt;
!!!!! Montaje
Las únicas fuentes de instrucciones de montaje son videos:
- [HP3 Build With tobben &amp; Thomas Sanladerer (enlace directamente al montaje)](https://www.youtube.com/watch?v=iOwjbu2UMlQ&amp;feature=youtu.be&amp;t=3h54m43s)
- [Vínculos anotados en el video de compilación de HP3 de Tobben y Thomas Sanladerer](https://reprap.org/wiki/Links_Into_Hangprinter_v3_Build_Video#)
- [Compilación de HP3 con Chris Riley](https://www.youtube.com/watch?v=VBc7Zab64do&amp;list=PLB_0YGFjbOnbQ_zPnpLAjwgnE2ryhKScB)
&lt;br&gt;
!!!!! Calibración de anclajes y acumulación de carretes
Si lo está haciendo manualmente (sin SmartStepper), mire [esto](https://reprap.org/wiki/Links_Into_Hangprinter_v3_Build_Video#Now_going_into_an_hour_of_measuring_this). También mire las fuentes de video de [Chris Riley](https://www.youtube.com/watch?v=VBc7Zab64do&amp;list=PLB_0YGFjbOnbQ_zPnpLAjwgnE2ryhKScB) y [Thomas Sanladerer](https://www.youtube.com/watch?v=Jk4fhQvNoaM&amp;list=PLDJMid0lOOYmSWYimgOW-Q9OKyIp0OFyK).
Si está utilizando SmartStepper, entonces tobben ha preparado un script que, con suerte, le permitirá evitar tener que medir las posiciones de los anclajes manualmente: [aquí](https://gitlab.com/tobben/auto-calibration-simulation-for-hangprinter). Es un poco difícil de usar, asegúrese de leer el archivo README y de presentar un problema si encuentra un error o una mejora.
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
Construir, montar, calibrar y ejecutar una HP3 es difícil. No estas solo. Asegúrese de revisar los [recursos](https://www.hangprinter.org/resources) , hay algunos bastante buenos.
- tobben 👷
&lt;br&gt;
---
La fuente de texto sin formato de este manual se publica bajo la licencia GPL-2.0 y se mantiene en el repositorio hangprinter-org . Todas las imágenes y videos también se publican bajo la GPL-2.0, excepto el diagrama de cableado, que se publica bajo la licencia GPLv3.
---
Texto tomado de https://www.hangprinter.org/doc/v3/
!!!! Recursos
!!!!! Social
**[Blog de desarrollo de Tobben](https://torbjornludvigsen.com/blog)**
**[Hilos de Hangprinter en el Foro RepRap](https://reprap.org/forum/list.php?423)**
**[Grupo de Facebook](https://www.facebook.com/groups/hangprinter)**
&lt;br&gt;
!!!!! Repositorios
**[Modelos 3D en STL](https://gitlab.com/tobben/hangprinter/tree/Openscad_version_3/openscad_stl)**
**[Plantilla PDF](https://gitlab.com/tobben/hangprinter/blob/Openscad_version_3/layout_a4.pdf)**
**[Hangprinter](https://gitlab.com/tobben/hangprinter)**
**[Detector de colisión de línea](https://gitlab.com/hangprinter/line-collision-detector)**
**[Hangprinter.org](https://gitlab.com/tobben/hangprinter-org)**
**[Ayudante de calibración experimental para HP3](https://gitlab.com/tobben/auto-calibration-simulation-for-hangprinter)**
**[Ayudante de calibración experimental para el HP4 experimental](https://gitlab.com/tobben/auto-calibration-simulation-for-hangprinter/-/tree/buildup_compensation)**
**[HP4 experimental](https://gitlab.com/tobben/hangprinter/-/tree/version_4_dev)**
**[Marca HP](https://gitlab.com/tobben/hp-mark)**
&lt;br&gt;
!!!!! Construcciones bien documentadas
**[Fablab Chemnitz hizo una construcción HP3 bien documentada](https://wiki.fablabchemnitz.de/display/TH)**
**[El usuario de los foros de Reprap pvsfa ha documentado un poco (compilación HP3)](https://reprap.org/forum/read.php?423,868741)**
**[Compilación HP3 con Chris Riley](https://www.youtube.com/watch?v=VBc7Zab64do&amp;list=PLB_0YGFjbOnbQ_zPnpLAjwgnE2ryhKScB)**
**[Vídeos de Hangprinter de Thomas Sanladerer]()**</pre>
</div>
<div created="20210321114809334" modified="20210321114817866" title="Hangprinter - Descripcion" tmap.id="3426e6a2-5ec7-4365-947e-22eb140d96d2">
<pre>[[Hangprinter|https://www.hangprinter.org]] es un modelo de impresora 3D delta por deposición fundida de código abierto que se destaca por su diseño único sin marco y su bajo costo. Fue creado por Torbjørn Ludvigsen. Muchas de las partes de esta impresora 3D se pueden producir en una impresora 3D (parcialmente autorreplicable), formando parte del proyecto RepRap.
Se instala en un espacio determinado utilizando la propia habitación como marco. El diseño también se puede adaptar para utilizar una mesa en lugar de una habitación completa. La impresora tiene un Efector que se suspende del techo y se mueve mediante motores paso a paso estacionarios con poleas e hilos de sedal.
Uno de los beneficios de perder el marco es, por supuesto, un volumen de construcción mucho mayor, ya que no está restringido a "la caja". Con tres puntos de anclaje que mantienen la máquina en su lugar, la Hangprinter puede colgarse de cables conectados al techo. A continuación, el sistema puede determinar qué movimientos realizar a partir de las ubicaciones configuradas del firmware.</pre>
</div>
<div created="20210528222448069" modified="20210613235123241" tags="" title="Hangprinter - Listado de materiales" tmap.id="be1b6505-0606-457f-b917-d276b726073b">
<pre>[[Listado de materiales original|https://docs.google.com/spreadsheets/d/1lOPZoF1P2OSdJcijZRVrwAEVFh3LLAnf6-s6k-hlbZU]]
|!Partes impresas|!Cantidad|!Detalles|!Conseguido|
| Beam Slider ABC | 3 | | ✓ |
| Beam Slider D | 3 | | ✓ |
| Corner Clamp | 3 | | ✓ |
| Extruder Holder | 1 | Usar plástico resistente al calor | ✓ |
| Lineroller ABC Winch | 3 | | ✓ |
| Lineroller D | 3 | | ✓ |
| Lineroller Anchor Template | 2 | | ✓ |
| Lineroller Anchor | 6 | | ✓ |
| Motor Braket | 4 | Usar plástico resistente al calor | ✓ |
| Motor Gear | 4 | | ✓ |
| Spool | 4 | | ✓ |
| Spool Gear | 4 | | ✓ |
| Spacer | 4 | | ✓ |
| Spool Core | 4 | | ✓ |
| Cable Clamp | 12 | | ✓ |
| Layout | 1 | | ✓ |
| Mechaduino standoff | 32 | Usar plástico resistente al calor | ✓ |
&lt;br&gt;
| !Vitaminas | !Cantidad | !Detalles | !Conseguido |
| Motor Nema 17 | 5 | &gt; 40 N/cm holding torque, flat shaft. Se reduce a 4 por impresora si otro motor es usado para el extrusor. | ✓ |
| FireLine 0.5 mm | 60 m | 0.39 mm también sirve. Es significante cuán largo cortes los hilos. | ✓ |
| Hoja de MDF o Plywood | 50x50 cm | Grosor 10-14 mm | |
| Arduino Mega | 1 | | ✓ |
| RAMPS | 1 | | ✓ |
| Controladores de motor paso a paso (pololu) | 1 | | ✓ |
| Cable USB (tipo B) | 1 | | ✓ |
| Listón de 40 cm de largo | 3 | Perfil cuadrado de 15 mm de grosor | ✓ |
| Listón de 27.5 cm de largo | 1 |~| ✓ |
| Fuente | 1 | 12 V, 12.5 A o mayor | ✓ |
| Brida plástica | 18 | ancho entre 4 y 5 mm | ✓ |
| Tornillo M3, largo 5 mm | 16 | | ✓ |
| Tornillo M3, largo 12 mm | 12 | | ✓ |
| Tornillo M3 largo, 45 mm | 16 | Ca 1 cm longer than your motor body height. For mounting Mechaduino PCB on motor rear. | |
| Tornillo M3/M4, largo 14 - 20 mm | 4 | For attaching PSU to sheet | ✓ |
| Rodamiento 608 | 8 | | ✓ |
| Rodamiento 623 con ranura V | 12 | | ✓ |
| Tubo de PTFE | 10 cm | Standard bowden, 4 mm outer dia, any inner dia | ✓ |
| Tornillo de madera autorroscante ca M3x10 | ca 90 | M[2.5-4.5]x10, head diámetro 8-14 mm, non-countersunk. For fastening to ceiling plate | |
| Tornillo de madera autorroscante M4x45 | 4 | For fastening spool core | |
| Tornillo de madera autorroscante M2x[6-14] | 4 | Head diameter ca 4 mm. For mounting Mega onto sheet material. | |
| Tornillo de madera autorroscante M3x10 | 18 | Head diameter 7 mm, length 10 mm Countersunk head. For attaching linerollers on ABC anchors| |
| Arandela M6 o M8 | 4 | For capping 608 bearings in place on top of spool core | ✓ |
| Cinta de 15 hilos de cable | 5 m | O cinta de 30 hilos de cable 28AWF with quadrupled wires to/from the heater element | ✓ |
| Tuerca M3 Nuts | 12 | | ✓ |
| Extrusor + hot end | 1 | Cualquier configuración que se ajuste a Nema17 debe funcionar | ✓ |
| Cables de alimentación Rojo y Negro | ca 2.5 | Para conectar 12 V a la RAMPS y los Mechaduinos | ✓ |
| Smart Stepper PCB | 4 | Sirve tanto la versión de Mechaduino 0.2 como la 0.1 | ✓ |
| Cable Jumper | ca 50 | Para codificar el sistema con 7 colores | ✓ |
| Regulator 5V | 1 | Para energizar Mechaduino directamente desde el PSU. Recommended for reliable long term operation | |
| 5V -&gt; 3V3 level converter | 1 | para RAMPS i2c &lt;-&gt; Mechaduino. Small breadboard handy for connecting this | |
</pre>
</div>
<div created="20210725025902946" modified="20210725025902946" title="Have fun with" tmap.edges="{&quot;e2266f02-4772-4b4c-a26d-7afd5da2a4b2&quot;:{&quot;to&quot;:&quot;80b14957-7be3-4aac-b46e-bf28c4a86d9a&quot;,&quot;type&quot;:&quot;tmap:unknown&quot;}}" tmap.id="1b980021-e833-40f6-bcd0-316d78f4ca6c">
<pre></pre>
</div>
<div created="20210811040832345" creator="M0" modified="20210811041818043" modifier="M0" tags="" title="Hello World Test" tmap.id="89ad3af9-e687-4fb4-b36c-f5acd2875222">
<pre>&lt;&lt;helloworld Adithya&gt;&gt;</pre>
</div>
<div created="20210629235156319" modified="20210630015306230" tags="" title="Herramientas" tmap.id="0e0ced75-b33d-48a9-95a7-d4c89a23678e" type="text/vnd.tiddlywiki">
<pre>!! Hypotesis
Creación de una cuenta en Hypothesis
&lt;richlinks https://youtu.be/cKf3lptMy7k&gt;
Comentar en Hypothesis
https://youtu.be/DUjjJ5Nhc4k
!! ~CodiMD
Escritura colaborativa en CodiMD.
https://youtu.be/lzzvu0y9Jjs</pre>
</div>
<div created="20210421155312444" modified="20210421160308168" title="HighlightExample" tmap.id="dcc5cc20-e0a7-4d49-a8c9-4e495ecd6224">
<pre>''Javascript'' code:
```javascript
(function(a,b){
var result = a+b;
return result;
})(10,20)
```
''CSS'' code:
```css
* { margin: 0; padding: 0; } /* micro reset */
html { font-size: 62.5%; }
body { font-size: 14px; font-size: 1.4rem; } /* =14px */
h1 { font-size: 24px; font-size: 2.4rem; } /* =24px */
```
''Perl'' code:
```perl
package Name;
my $singleton;
BEGIN {
$singleton = {
attribute =&gt; 'value',
another =&gt; 'something',
};
bless $singleton, "Name";
}
sub new {
my $class = shift;
return $singleton;
}
```
''Python'' code:
```python
class Singleton:
__single = None
def __init__( self ):
if Singleton.__single:
raise Singleton.__single
Singleton.__single = self
```
''Lua'' code:
```lua
function Strong(elem)
return pandoc.SmallCaps(elem.c)
end
```
''Bash'' code:
```bash
echo prueba
```
''Pharo'' code:
{{Consultar y organizar datos en Pharo}}</pre>
</div>
<div created="20210704180242667" modified="20210704180245101" tags="presentacion" title="If Plastico them" tmap.id="9997e66a-72b0-41f7-94c0-eaef3441a28d">
<pre></pre>
</div>
<div created="20210925132331168" library="svg-icon" modified="20210925133323239" tags="$:/tags/Image Icons Images SVG" title="image/repo" tmap.id="83347a58-c8cf-463c-a925-f982b145d3df">
<pre>&lt;svg width="22pt" height="22pt" class="tc-image-repo tc-image-button" viewBox="0 0 12 16"&gt;&lt;path style="fill:#000000;" d="M4 9H3V8h1v1zm0-3H3v1h1V6zm0-2H3v1h1V4zm0-2H3v1h1V2zm8-1v12c0 .55-.45 1-1 1H6v2l-1.5-1.5L3 16v-2H1c-.55 0-1-.45-1-1V1c0-.55.45-1 1-1h10c.55 0 1 .45 1 1zm-1 10H1v2h2v-1h3v1h5v-2zm0-10H2v9h9V1z"/&gt;&lt;/svg&gt;</pre>
</div>
<div created="20210313034006839" modified="20210322230610405" tags="Inbox todo" title="Impresora 3D Radames" tmap.id="55264902-2b8e-456a-9b96-b6e5162b7348">
<pre></pre>
</div>
<div created="20210313034341211" modified="20210719162950798" tags="[[Impresora Copincha]] SubProject todo" title="Impresora Acevedo" tmap.id="203ce79b-be85-4314-bf2e-0f4fec6755e0">
<pre></pre>
</div>
<div created="20210313034324455" modified="20210917065235947" tags="SubProject [[3D a lo cubano]] todo" title="Impresora Ale" tmap.id="9f6fd789-ba7a-4de4-90cc-81a3252f0a3a">
<pre></pre>
</div>
<div created="20210313034221232" modified="20210917065235947" tags="[[3D a lo cubano]] SubProject todo" title="Impresora Anycubic" tmap.id="44f20b2b-60b0-4dec-a608-5bb0a0024b96">
<pre></pre>
</div>
<div created="20210313034006839" list="[[Impresora Jonathan]] [[Impresora Acevedo]] [[Impresora Israel]] [[Impresora Miguel]]" modified="20210917072219597" tags="[[Máquinas para reciclar plásticos]] [[3D a lo cubano]] SubProject todo" title="Impresora Copincha" tmap.id="af502926-b80f-480d-86f6-8c20d5b71773">
<pre></pre>
</div>
<div created="20210313034358474" modified="20210719162950798" tags="[[Impresora Copincha]] SubProject todo" title="Impresora Israel" tmap.id="9fc59ea5-e522-4d94-ba1e-1d224a06a8bc">
<pre></pre>
</div>
<div created="20210528223207107" modified="20210719162950799" tags="[[Impresora Copincha]] SubProject todo" title="Impresora Jonathan" tmap.id="f8aafa5b-bf77-4822-bf62-0baac56aadfe">
<pre></pre>
</div>
<div created="20210528223216518" modified="20210719162950799" tags="[[Impresora Copincha]] SubProject todo" title="Impresora Miguel" tmap.id="68bc926f-411e-4bc0-8ee0-71ca3e8bc15c">
<pre></pre>
</div>
<div created="20210313040844658" modified="20210313040912124" tags="[[Armar cuerpo impresora]] todo" title="Imprimir piezas 3D" tmap.id="6502a07c-f1fb-4342-b2ec-9764a3f5466c">
<pre></pre>
</div>
<div created="20210313034019587" list="[[Plastico Leal]] [[Impresora 3D Radames]]" modified="20210322230610410" title="Inbox" tmap.id="cded78e6-a5c9-47e5-b8bf-d2cc8d45f90b">
<pre></pre>
</div>
<div caption="Inicio" created="20210310150256889" modified="20210925212247304" rank="10" stream-list="" stream-type="default" tags="" title="Inicio" tmap.id="9d3f976b-8ba3-4240-a5b5-0ac3fbececda">
<pre>! ¡Hola, bienvenido a Copinchapedia!
{{Copinchapedia}}
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
{{sidebar/footer}}</pre>
</div>
<div created="20210115160755295" modified="20210421160511933" tags="" title="Instalación" tmap.id="a7cbe8c0-d21e-4ecd-a49d-65c3999040e9">
<pre>{{info style}}
!! Desde el navegador web
* Cliquea el botón el botón &lt;&lt;icon {{$:/core/images/save-button}} ""&gt;&gt; de la barra principal, que puede estar localizada en distintas ubicaciones (a la derecha o abajo o incluso oculta) dependiendo del dispositivo desde donde estés navegando este tema y el tamaño de la ventana.
* Dependiendo de tu configuración del navegador, éste te indicará la ruta donde quieres descargarlo o lo enviará directamente a la carpeta de descargas.
@@.info
Si quieres usar la extensión de Firefox [[File Backups|https://mutabit.com/repos.fossil/indieweb/uv/docs/es/miniwiki/indieweb-brea.html#File%20Backups%20plugin]] para guardar futuros cambios en tu wiki, debes almacenar el wiki en la carpeta de "Descargas" (esta podría llamarse "Downloads" o de otra manera, dependiendo del idioma y otros aspectos de la configuración de nuestro sistema operativo).
@@
!! Desde la consola de comandos
Entra a la carpeta donde quieras hacer la descarga (por ejemplo `Descargas`) y desde allí
ejecuta (debes tener instalado [[wget|https://es.wikipedia.org/wiki/GNU_Wget]] o
[[curl|https://en.wikipedia.org/wiki/CURL]] para esto):
```bash
wget https://mutabit.com/repos.fossil/tiddlywiki/uv/seeds/projectify/projectify-mod.html
```
ó:
```bash
curl -o miwiki.html https://mutabit.com/repos.fossil/tiddlywiki/uv/seeds/projectify/projectify-mod.html
```
en la opción con curl `miwiki.html` puede ser cambiada por el nombre que deseemos.
!! Desde [[Pharo|https://pharo.org]]
Abre un [[Playground|https://github.com/pharo-open-documentation/pharo-wiki/blob/master/General/Playground.md]] y ejecuta:
```smalltalk
'https://mutabit.com/repos.fossil/tiddlywiki/uv/seeds/projectify/projectify-mod.html' asUrl saveContentsToFile: (FileLocator home/'Descargas/miwiki.html')
```
Observa que la última parte es a dónde quieres descargar el wiki y que, consistente con los ejemplos anteriores, la hemos venido colocando en una ruta dentro de la carpeta "Descargas".</pre>
</div>
<div bag="default" created="20201211110738465" modified="20201231135458282" revision="0" title="Install" tmap.id="784e6879-463e-418f-a67a-4284f0431a03" type="text/vnd.tiddlywiki">
<pre>!! Theme and plugin installation
Drag the following tiddlers into your wiki to import them:
{{$:/plugins/nico/notebook-mobile||$:/core/ui/Components/plugin-info}}
{{$:/themes/nico/notebook||$:/core/ui/Components/plugin-info}}
!! Setup
* Set the theme to `Notebook`
* Set the colour palette to either `Notebook grey`, `Notebook beige`, or `Notebook dark`. Alternatively, click the {{$:/themes/nico/notebook/ui/Buttons/SwitchPalette}} button.
</pre>
</div>
<div created="20210225220857912" modified="20210917072227757" tags="SubProject [[Máquinas Precious Plastic]] todo" title="Inyectora Precious Plastic" tmap.id="d7427f92-d36f-49aa-b52c-26a60ae790f4">
<pre>! Descripción
En la inyección, las partículas de plástico se calientan y se inyectan en un molde. Es un proceso relativamente rápido y adecuado para crear producciones de objetos pequeños. Los moldes se pueden hacer utilizando fresadoras o tornos CNC, o simplemente soldando.
{{maquina-inyectora-precious-plastic.png}}
| !Elemento | !Descripción | !Cantidad | !Precio (CUP) | !Total (CUP) | !Conseguido | !Enlace |
| Lámina de acero | 20 mm x 3 mm, 180 mm, acero | 1 | 450 | 450 | | |
| Lámina de acero | 30 mm x 4 mm, 1600 mm, acero | 1 | 125 | 125 | | |
| Base | | 1 | | | | |
| Barra redonda | 26 mm x 680 mm, acero | 1 | | | ✓ | |
| Tubo cuadrado | 30 x 30 x 3 mm, acero | 5700 mm | | | | |
| Tubo | 34 x 26 x 4 mm | 530 mm | | | ✓ | |
| Perfil L | 30 x 30 x 3mm, 160 mm, acero | | | | ✓ | |
| Base de madera | | 1 | | | ✓ | |
| Tolva | Grosor 1 mm, acero | 1 | 250 | 250 | | |
| Controlador PID | 0-400 ºC | 2 | 500 | 1 000 | ✓ | |
| SSR | 2 - 24 V | 2 | 200 | 400 | ✓ | |
| Termoacopladores | Tipo K | 2 | 375 | 750 | ✓ | |
| Abrazadera termo-resistencia | 35 x 45 mm | 4 | 500 | 20 000 | ✓ | [[⛶|https://cntronic.com/ljxh-2pcs-lot-mica-band-heater-35x45mm-35x50mm-35x55mm-35x60mm-110v220v380v-150w-160w-180w-200w-stainless-steel-heating-element-23687]] |
| Encendedor de alimentación | | 1 | | | ✓ | |
| Cable de alimentación | 5 000 mm | 1 | | | ✓ | |
''Total:'' 22 975 CUP</pre>
</div>
<div category="documentación" created="20210620034845971" modified="20210917071908594" tags="Project" title="Jardines Digitales de Bolsillo" tmap.id="d2742ff6-301e-4af9-bd8f-5b1efb154523">
<pre></pre>
</div>
<div created="20210720113738151" modified="20210720181332740" tags="Arte [[Maykel Rodríguez Ricardo]]" title="John Cage Interpretado" tmap.id="e612c762-61af-4794-8465-d0e0eb3c3548">
<pre>Instalación sonora.
La pieza fue una instalación interactiva en la
que la Plaza Vieja se convirtió en un escenario para interpretar la música de John Cage.
Utilizando una cámara de video, un ordenador y un software, transformé este
espacio en una interfaz donde las personas, con su desplazamiento, activaban en tiempo
real los sonidos del compositor guardados en una matriz.
&lt;center&gt;
[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/proyectos-johncageinterpretado1.webp]]
[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/proyectos-johncageinterpretado2.webp]]
[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/proyectos-johncageinterpretado3.webp]]
[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/proyectos-johncageinterpretado4
.webp]]
</pre>
</div>
<div created="20210720115823028" modified="20210720180732204" tags="Arte [[Maykel Rodríguez Ricardo]]" title="John Cage Interpretado II" tmap.id="04f629d3-c051-497d-824b-d66642ee94b8">
<pre>Performance e Intervención Sonora en colaboración
con la bailarina Ana Sofía Polo. Con la pieza buscaba invertir la relación tradicional que existe
entre el ejecutante danzario y la música. En este caso el bailarín improvisa sobre el escenario
y con su movimiento genera en tiempo real el sonido que se escucha en la sala.
La obra es además una apropiación de las obras que realizaran en colaboración el compositor
John Cage y el coreógrafo Merce Cunningham.
&lt;center&gt;
[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/proyectos-johncageinterpretado2-1.webp]]
</pre>
</div>
<div created="20210318105022845" modified="20210530234025795" title="La Conexion - Formulario" tmap.id="69a19174-0b67-4830-a4d5-c44ebea17cbc">
<pre>!!! Quienes son?
!!! Que puntos de contacto tienen con el reciclaje de plastico?
!!! Cómo se realiza la recoleccion?
!!! Cómo se realiza la clasificación?
!!! Cómo se realiza la limpieza?
!!! Cómo se reaiza la Producción?
!!! Cómo se realiza la venta o renta?
!!! Cómo e realiza el consumo?
!!! Cómo se realiza la recuperación de materiales?
!!! Qué acciones necesitan de otros proyectos?
!! Contactos
telefono
Grupo wasap
Direccion
Geoloalizacion
!!</pre>
</div>
<div created="20210321102004548" modified="20210321111535369" title="lamaquinaria.md" tmap.id="b3d4ace0-8e5c-4e59-a92d-98402542abd1" type="text/x-markdown">
<pre>En este taller aprendemos a construir colaborativamente herramientas y máquinas de código abierto para reciclar plástico, usando preferiblemente recursos localmente accesibles.
*Por favor entienda este espacio como un laboratorio vivo donde vamos actualizando el contenido para reflejar las iniciativas e interacciones que participan.*
&lt;br&gt;
# Objetivos:
- Aprender sobre los procesos técnicos y usos prácticos más comunes para reciclar de plásticos.
- Construir colaborativamente máquinas de código abierto para reciclar de plástico usando la mayor cantidad reursos accesibles en Cuba.
- Construir una trituradora de plástico.
- Construir una extrusora. Para hacer filamentos de impresión 3D con el plástico triturado.
- Construir una hangprinter. Para fabricar por impresión 3D objetos de grandes dimensiones con los filamentos plásticos.
- Documentar las experiencias de construcción de máquinas en el repositorio público.
- Exponer Mapear y documentar otras experiencias ya existentes de construcción de máquinas de código abierto para reciclar plástico.
&lt;br&gt;
# Máquinas en construcción
&lt;br&gt;
## Trituradora de plástico
![trituradora.jpeg](/8c2e157f298e40ca9e1de6639ed86665.jpeg)
### Tab {.tabset}
#### Descrpción
Corta artículos de plástico en pequeñas partículas listas para ser convertidas en cosas nuevas por otras máquinas. El plástico triturado puede ser de múltiples tamaños y colores para aumentar su valor.
#### Listado de materiales
Los detalles del costo de una trituradora según lo que el proyecto ya ha conseguido están [aquí](https://docs.google.com/spreadsheets/d/1ArtWWj6Qs_AYpu6C6BTy-PNZvMUTdnTiIenrF_23XxQ/).
&lt;br&gt;
| Partes | Cantidad | Detalles | Conseguido |
|------------------------------------|-----------|----------------------------------|-|
| Cuerpo de Cuchillas | 1 | | ✓ |
| Barra hexagonal | 1 | | ✓ |
| Soporte | 4 | Perfil L 30x30x3 | |
| Malla | 1 | | |
| Rodamientos | 2 | | ✓ |
| Tolva | 1 | | ✓ |
| Base | 1 | Perfil cuadrado x30 | |
| Motor | 1 | Motor monofásico 2Hp, 1600 -1700 RPM | ✓ |
| Reductor | 1 | entre 1-&gt;80 y 1-&gt;130 | ✓ |
| Encendedor de alimentación | 1 | | ✓|
| Indicador LED | 1 | | ✓ |
| Cable de alimentación | 5m | | ✓ |
&lt;br&gt;
#### Enlaces
uu
{.is-info}
&lt;br&gt;
## Extrusor de Filamentos RepRapable Recyclebot
![extrusor de filamentos.jpg](/9449d00fd1ea4ee4b9a050adfea7efec.jpg)
### Tab {.tabset}
#### Descrpción
La extrusión es un proceso continuo donde las partículas de plástico se insertan en la tolva y se extruyen en una hilo de plástico. Estas hilos se pueden usar para hacer nueva materia prima, plástico granulado, girar alrededor de un molde o usarse de manera creativa.
</pre>
</div>
<div bag="default" created="20210316220151557" modified="20210413012806403" revision="0" tags="" title="Léeme" tmap.id="acc6aa86-f788-457d-ab98-790f08749ac5" type="text/vnd.tiddlywiki">
<pre>\define tv-wikilink-template() https://projectify.wiki/demo.html#$uri_encoded$
! Projectify Mod
[[Projectify|https://projectify.wiki/]] es una aplicación para gestión de proyectos basada en [[TiddlyWiki|https://tiddlywiki.com]],
inspirada en proyectos como [[Todoist|https://todoist.com]] y [[Basecamp|https://basecamp.com]].
[[TiddlyWiki|https://tiddlywiki.com]] es una excelente aplicación de toma de notas, base de conocimiento
con [[características únicas|https://tiddlywiki.com/#TiddlyWiki]].
Projectify trae la gestión de proyectos a ~TiddlyWiki extendiéndolo para permitirte
[[capturar pensamientos|$:/plugins/nico/projectify/doc/Inbox]], [[planear proyectos|$:/plugins/nico/projectify/doc/Projects]] y [[programar tareas|$:/plugins/nico/projectify/doc/Schedule]].
//Al unir en Projectify un wiki a la gestión de proyectos se pueden potenciar procesos particulares,
como aquellos relacionados con el aprendizaje entre pares y por proyectos, que será uno de los enfoques de
esta variante de Projectify en español,
llamada ''Proyectify Mod''.
//
Projectify está cuidadosamente confeccionado, con una interfaz intuitiva que se integra a la perfección con el núcleo de~TiddlyWiki.
[[Arrastra y suelta |https://tiddlywiki.com/#Drag%20and%20Drop]] cualquier [[tiddler|Tiddlers]] en un
proyecto para agregarlo como un pendiente, [[transcluye|https://tiddlywiki.com/#Transclusion]] y
[[enlaza|https://tiddlywiki.com/#Linking%20in%20WikiText]] otros tiddlers en proyectos o tareas.
Para saber qué moficaciones particulares se introducen en este wiki revisa el [[tiddler|Tiddlers]] titulado [[Modificaciones]].
Para todos los cambios en la última versión lanzada {{$:/plugins/nico/projectify!!version}}, mira
la [[Bitácora de Cambios|$:/plugins/nico/projectify/changelog]].
!! Demos
Hay demos disponibles:
* en inglés en [[projectify.wiki|https://projectify.wiki]].
* en español en: [[Projectify Mod|https://mutabit.com/repos.fossil/tiddlywiki/uv/seeds/projectify/projectify-mod.html]].
!! Descarga e instalación
Visita [[Instalación]] para descargar e instalar una semilla wiki a pre-configurada.
Alternativamente, mira [[Installation|$:/plugins/nico/projectify/doc/Installation]] para instrucciones
de instalación en un wiki existente.
!! Documentación
* Si eres nueva en ''~TiddlyWiki'', te recomendamos leer los [[enlaces introductorios a TiddlyWiki|https://mutabit.com/repos.fossil/indieweb/uv/docs/es/miniwiki/indieweb-brea.html#TiddlyWiki]]
* La "documentación de Projectify" está disponible [[en línea|$:/plugins/nico/projectify/doc/Help]] así como localmente cuando el plugin está instalado.
!! Paquetes de lenguajes
Projectify está actualmente disponible en inglés, holandés, alemán, francés, español y chino simplificado.
* Para el paquete de lenguaje francés, instala [[$:/plugins/nico/projectify-fr-FR|https://projectify.wiki/demo.html#%24%3A%2Fplugins%2Fnico%2Fprojectify-fr-FR]].
* Para el paquete de lenguaje holandés, instala [[$:/plugins/nico/projectify-nl-NL|https://projectify.wiki/demo.html#%24%3A%2Fplugins%2Fnico%2Fprojectify-nl-NL]].
* Para el paquete de lenguaje alemán, instala [[$:/plugins/nico/projectify-de-DE|https://projectify.wiki/demo.html#%24%3A%2Fplugins%2Fnico%2Fprojectify-de-DE]].
* Para el paquete de lenguaje español, instala [[$:/plugins/nico/projectify-es-ES|https://projectify.wiki/demo.html#%24%3A%2Fplugins%2Fnico%2Fprojectify-es-ES]].
* Para el paquete de lenguaje chino simplificado, instala [[$:/plugins/nico/projectify-zh-Hans|https://projectify.wiki/demo.html#%24%3A%2Fplugins%2Fnico%2Fprojectify-zh-Hans]].
!! Configuración de desarrollo
Si te dedicas al desarrollo del software, esto es lo que debes hacer para trabajar con Projectify:
* Instala [[Node.js|https://nodejs.org/en/]]
* En la carpeta raíz del proyecto ejecuta `npm install`
* Para iniciar el servidor de TiddlyWiki, ejecuta `npm run serve`. El wiki está disponible en http://localhost:8080.
* Para servir o construir una edición en un lenguaje particular, refiérete a `package.json`
* Para construir archivos HTML para todas las ediciones, ejecuta `npm run build`.
!! Contribuyentes
Muchas gracias a las siguientes personas, quienes han contribuido a Projectify:
* [[@OdinJorna|https://github.com/OdinJorna]]
* [[@Kookma|https://github.com/kookma]]
* [[@Joebordes|https://github.com/joebordes]]
* [[@Silvyn|https://github.com/silvyn]]
* [[@HueLiu|https://github.com/HueLiu]]
* [[@gregorfischer|https://github.com/gregorfischer]]
</pre>
</div>
<div created="20141211130114064" creator="Tobias Beer" modified="20141211185743094" modifier="Tobias Beer" summary="the default modal template used with the ibox macro" tags="" title="Lightbox" tmap.id="c78b1c0a-c430-4ffb-a1d0-eed8edf1fb3d">
<pre>&lt;$image source=&lt;&lt;image&gt;&gt; width="100%" height="100%"/&gt;&lt;$reveal type=match text="" default=&lt;&lt;caption&gt;&gt;&gt;&lt;$transclude tiddler=&lt;&lt;image&gt;&gt; field=caption/&gt;&lt;/$reveal&gt;&lt;$reveal type=nomatch text="" default=caption&gt;&lt;&lt;caption&gt;&gt;&lt;/$reveal&gt;</pre>
</div>
<div created="20210323124716180" modified="20210719164240232" tags="Copinchapedia/Plantillas SubProject example todo done" title="lista de piezas" tmap.id="68f44668-7e1f-4943-947f-c60df72e8288">
<pre>[[ventana de pieza]]
[[ventana de pieza]]
[[ventana de pieza]]</pre>
</div>
<div created="20210321233511486" modified="20210613151430229" tags="" title="Lista de proyectos" tmap.id="fdfd1e9e-f7ec-4a71-ac83-aeb7d5d8178a">
<pre>&lt;div style="font-size:0.7em;text-align:center;margin-top:2em;margin-bottom:2em"&gt;
&lt;&lt;list-thumbnails filter:"[tag[Lista de proyectos]]" width:"170" height:"170" padding:"30"&gt;&gt;
&lt;/div&gt;</pre>
</div>
<div created="20210704160309263" modified="20210704175958491" tags="presentacion" title="Lucerne" tmap.id="955343f2-136d-4bf0-9256-e423334790b8">
<pre>Copincha
!! Ciclo Copincha
{{Ciclo Copincha}}
Laboratorio
Abierto, Accesible, Apropiable
Común (Diversidad)
Local
Experimentación y prototipado
Cultura libre
Comunidades de aprendizaje y practica.
Actividades
Cafe Sorpresa
Cafe Reparacion
Poster Mandos
poster taller
Cultivo
Documentacion
Copinchapedia
Aprovechar Paquete Semanal
Jargines Digitales
Tiddlywiki
Infraestructuras de bolsillo
Simplificar las infraestructuras
Fossil
Chatbot
Wikis federadas
</pre>
</div>
<div created="20210318130959675" modified="20210917080048584" tags="[[Precious Plastic La Habana]] [[Cartografias de bolsillo]] SubProject" title="Mapa digital para el reciclaje de plástico" tmap.id="7b83c934-ef19-4dd7-8e46-f10c60af9937">
<pre>&lt;br&gt;
&lt;$leafmap tile='toner' places='{"filter":" [tag[geoplasticoleal]]"}' style='{"color":"orange"}'
marker='marker'clusterType='tiddler'/&gt;
&lt;!--
!Para insertar en su pagina web
Copie y pegue este codigo en su pagina
```
codigo
```
--&gt;
!Para Copinchapedia version offline
Descargar "tiles" de mapa en:
https://data.maptiler.com/downloads/dataset/osm/central-america/cuba/la-habana/#8.82/23.0314/-82.4261
!Para Maps.ME
{{Maps.Me}}
#Descargamos la base de datos (en .KMZ)
#Copiamos el archivo .KMZ en la carpeta donde tiene los archivos de luegares favoritos de Maps.ME (por defecto, maps.me guarda estos archivos en ...).
#Abrimos Maps.ME y activamos la base de datos. Listo!
[[Mapa-Reciclaje-Plastico-Maps.Me|https://mapa.com/mapa.kmz]]
! Descripcion
es un mapa para conectar las iniciativas de reciclaje de plastico y posibilitar encadenamientos que favorezca ciclos donde se mantenga para ser reciclable.</pre>
</div>
<div created="20210923190304358" modified="20210923191755607" tags="" title="mapavista" tmap.id="95ffe99f-59bd-48ff-8dc8-e9fb77c2c0d0">
<pre>&lt;$tmap view="Live View" editor="advanced" height="500px" &gt;&lt;/$tmap&gt;</pre>
</div>
<div created="20210530190952715" modified="20210530191207396" tags="" title="Maps.Me" tmap.id="7e2505ab-ad0d-412e-9187-3da47d516817">
<pre>Es una aplicacion para android que permite ver mapas offline.
Maps.me es una aplicacion muy usada en cuba debido a las dificultades de conexion.</pre>
</div>
<div color="#ffed00" created="20210323135631345" modified="20210323135646222" tags="$:/plugins/nico/projectify/tags/Category" title="Maquina" tmap.id="fbe1b192-dab4-4947-9e0a-9d88b19357c5">
<pre></pre>
</div>
<div color="#f7ff00" created="20210714055630145" modified="20210714055630145" tags="$:/plugins/nico/projectify/tags/Category" title="máquina" tmap.id="624e88b0-8b1a-44ae-a3f3-c59b01c93e82">
<pre></pre>
</div>
<div created="20210118010848855" modified="20210917072409074" tags="SubProject [[Precious Plastic La Habana]] [[Plástico Leal - La Maquinaria]]" title="Máquinas para reciclar plásticos" tmap.id="97dba976-44dc-4be7-a9ae-7376818d3d2c" type="text/vnd.tiddlywiki">
<pre>[[Máquinas Precious Plastic]]
[[Hangprinter]]</pre>
</div>
<div created="20210318161732959" modified="20210917071244959" tags="SubProject [[Máquinas para reciclar plásticos]]" title="Máquinas Precious Plastic" tmap.id="417e4dee-85ad-4fca-9863-bb7cfa0416e2">
<pre>{{maquinas-precious-plastic.png}}
! Resumen
!! Problemática
En La Habana es escaso el conocimiento de acceso abierto para la construcción de máquinas para el reciclado de plástico.
!! Pregunta
&lt;&lt;&lt;.tc-big-quote
''¿Cómo podemos construir, con recursos accesibles en Cuba, máquinas de código abierto para reciclar plástico en La Habana?''
&lt;&lt;&lt; &lt;!-- Autor--&gt;
!!! Hipótesis
Las máquinas de Precious Plastics son ideales para comenzar y entrar al reciclaje local de plástico. Nos permiten&amp;nbsp; jugar, fabricar productos, organizar talleres y educar a las personas. Estas máquinas son pequeñas, amigables y fáciles de entender, lo que las hace perfectas para talleres educativos en eventos o escuelas.
Los materiales y herramientas necesarios para construir estas máquinas están fácilmente disponibles y asequibles en el país.
Todo el conocimiento y material de Precious Plastic está compartido bajo una licencia de fuente abierta.
Aquí listamos algunas ventajas locales, desde el punto de vista social, económico, y ambiental.
* La gente mientras más aprende de los procesos productivos se involucra más.
* Permite probar soluciones de forma más rápida para contextos locales específicos, favoreciendo la autogestión en una pequeña comunidad.
* Genera trabajo mediante la fabricación de las máquinas por fabricantes e industrias locales.
* Genera una fuente de ingreso mediante la venta del plástico procesado o de los productos que se pueden fabricar con estas máquinas.
* Genera puestos de trabajo y dignifica a la persona que realiza la acción de juntar y procesar el plástico.
* Estas máquinas de reciclaje de pequeña escala constituyen la función vital para permitir que las personas en La Habana conviertan el plástico desechado en plástico útil.
* Limpia el medio ambiente.
Podemos construir las máquinas de Precious Plastics colectivizando los recursos que creemos que puedan servirnos. Este proceso nos servirá como punto de partida para desarrollar una base común de construcción de máquinas replicables de código abierto y así además acercar la producción con residuos plásticos a las personas.
Colectivizando recursos entre personas y organizaciones interesadas, podemos construir las máquinas de Precious Plastics. Este proceso nos servirá como punto de partida para desarrollar una base común de conocimientos y producciones basadas en fuentes y colaboraciones abiertas. Lo cual garantizará la accesibilidad, la replicabilidad local y más aprendizaje e inclusión de personas a optar por modos más sostenibles de tratar el plástico.
! Objetivos
Reunir y visualizar una base abierta de conocimientos para construir máquinas de reciclado de plástico.
Reunir y dar visibilidad a la información necesaria para construir las máquinas seccionada en:
* Fabricantes (que puedan producir y armar piezas o conjunto de piezas de máquinas.)
* Repositorios públicos
* Descargas
* Contribuyentes
* Colectivizar recursos para la construcción colaborativa de máquinas para el reciclado de plástico.
Construir colaborativamente las máquinas de Precious Plastic colectivizando recursos.
* Visualizar públicamente el estado de proyecto los recursos colectivizados.
Documentar cada proyecto.
!!Máquinas
Invitamos a todos los interesados en el reciclaje de plásticos a contribuir para juntos tener la experiencia de prototipar y construir colaborativamente estás máquinas.
Reuniendo la experiencia logramos acortar el tiempo de búsqueda en cómo hacer que estas soluciones sean implementadas. Una base común que compartir.
[[Trituradora Precious Plastic]]
[[Inyectora Precious Plastic]]
[[Extrusora Precious Plastic]]</pre>
</div>
<div created="20210720113540421" modified="20210720124018394" tags="Arte" title="Maykel Rodríguez Ricardo" tmap.id="0af615f4-eafa-458f-92a3-1fee5508a998">
<pre>STATEMENT: No pretendo que mi obra se categorice exclusivamente como artística, me interesa
que sea transdisciplinar, que se pueda mover transversalmente entre manifestaciones
humanas como el arte, la ciencia, la ingeniería o el diseño. Más que elaborar metáforas,
intento que mi trabajo proponga soluciones concretas a problemas
de la sociedad contemporánea.
&lt;div class="tc-table-of-contents"&gt;
&lt;&lt;toc-selective-expandable 'Maykel Rodríguez Ricardo' sort[title] ]&gt;&gt;
&lt;/div&gt;</pre>
</div>
<div caption="Blogs" created="20210714072849701" modified="20210714073716862" tags="menciones" title="medios/blogs" tmap.id="25037df1-e40c-44eb-91f1-09f6a9a13ec5">
<pre>[[masharu |https://masha-ru.tumblr.com/page/3]]
[[El Parque Horizontal - Copincha en el Parque|https://www.facebook.com/permalink.php?story_fbid=303376944402839&amp;id=106156304124905]]</pre>
</div>
<div created="20210529221128033" modified="20210727140801197" orden="04" tags="" title="Menciones" tmap.id="3fbefc10-29b0-4a5a-af6d-c233f9461d80">
<pre>Aquí registramos Copincha es visto desde diferentes voces mediáticas.
[[Alma Mater - Cuál es la pincha de Copincha|https://medium.com/revista-alma-mater/cu%C3%A1l-es-la-pincha-de-copincha-beb1750275e1]]
[[IPS - Inventores de Cuba ofrecen soluciones para la pospandemia|http://ipsnoticias.net/2020/05/inventores-cuba-ofrecen-soluciones-la-pospandemia/]]
[[IPS - Emprendimiento cubano recicla plástico y hace fuentes decorativas|https://www.ipscuba.net/medio-ambiente/emprendimiento-cubano-recicla-plastico-y-hace-fuentes-decorativas/]]
[[EL Toque - Tecnologías resilientes para esta y otras crisis|https://eltoque.com/tecnologias-resilientes-para-esta-y-otras-crisis]]
[[El Toque - Máquina de semillas hecha en Cuba|https://eltoque.com/maquina-de-semillas-hecha-en-cuba]]
[[masharu |https://masha-ru.tumblr.com/page/3]]
[[El Parque Horizontal - Copincha en el Parque|https://www.facebook.com/permalink.php?story_fbid=303376944402839&amp;id=106156304124905]]</pre>
</div>
<div caption="Prensa" created="20210529221128033" modified="20210714073409600" orden="04" tags="menciones" title="menciones/prensa" tmap.id="4236ed55-1805-415b-93e5-ab59af61fcb8">
<pre>[[Alma Mater - Cuál es la pincha de Copincha|https://medium.com/revista-alma-mater/cu%C3%A1l-es-la-pincha-de-copincha-beb1750275e1]]
[[IPS - Inventores de Cuba ofrecen soluciones para la pospandemia|http://ipsnoticias.net/2020/05/inventores-cuba-ofrecen-soluciones-la-pospandemia/]]
[[IPS - Emprendimiento cubano recicla plástico y hace fuentes decorativas|https://www.ipscuba.net/medio-ambiente/emprendimiento-cubano-recicla-plastico-y-hace-fuentes-decorativas/]]
[[EL Toque - Tecnologías resilientes para esta y otras crisis|https://eltoque.com/tecnologias-resilientes-para-esta-y-otras-crisis]]
[[El Toque - Máquina de semillas hecha en Cuba|https://eltoque.com/maquina-de-semillas-hecha-en-cuba]]</pre>
</div>
<div created="20210323011336507" modified="20210323013530731" tags="[[Recursos TW]]" title="Mensaje de Alerta" tmap.id="0a0dcefd-00ff-46e5-90df-6c32cdd02717">
<pre>&lt;&lt;alert warning "Tamasha is a presentation app based on Web technology and [[Tiddlywiki|https://tiddlywiki.com/]] and works on any modern browser." width:"50%"&gt;&gt;
&lt;&lt;alert info "Mensaje de alerta gris"&gt;&gt;
&lt;&lt;alert dark "Mensaje de alerta gris"&gt;&gt;
&lt;&lt;alert light "Mensaje de alerta"&gt;&gt;
&lt;&lt;alert danger "Mensaje de alerta"&gt;&gt;
&lt;&lt;alert success "Mensaje de alerta"&gt;&gt;
&lt;&lt;alert success "Mensaje de alerta"&gt;&gt;
&lt;&lt;alert "Mensaje de alerta"&gt;&gt;</pre>
</div>
<div created="20141211151349208" creator="Tobias Beer" modified="20141211151442400" modifier="Tobias Beer" title="Modal Template" tmap.id="0a6281b9-a57b-4bc0-8cbb-3a5782412d01">
<pre>The default template used for the ibox modal.
&lt;&lt;source [[Lightbox]]&gt;&gt;</pre>
</div>
<div created="20210119082446178" modified="20210119094944324" title="Modelado 3D en OpenScad" tmap.id="9c6a927e-696d-456b-820d-4c719e59d264" type="text/vnd.tiddlywiki">
<pre>!! Primeros pasos con OpenScad
!!! Crear un cubo Hola mundo
[[Video Tutorial|http://www.youtube.com/watch?v=xvhbrUSQRTc]]
!!! Programa
```
//-- Cubo Hola Mundo
cube([10,10,10]);
```
!!! Pasos a realizar:
* Abrimos OpenScad.
* Escribimos el código del programa.
* Pulsamos &lt;kbd&gt;F5&lt;/kbd&gt; para visualizar el cubo en pantalla. Hemos creado un cubo de 10mm de arista.
* Con la rueda del ratón hacemos zoom.
* Manteniendo pulsado el &lt;kbd&gt;botón izquierdo&lt;/kbd&gt; del ratón y moviéndolo, rotamos la vista del cubo.
* Manteniendo pulsado el &lt;kbd&gt;botón derecho&lt;/kbd&gt; del ratón y moviéndolo, hacemos la traslación del punto de vista.
* Por último grabamos el programa OpenScad creado.
* Pulsamos &lt;kbd&gt;F6&lt;/kbd&gt; para hacer una visualización con más definición.
* Exportamos la pieza al formato STL (view/export as STL).
De esta forma ya el cubo está listo para ser impreso en una impresora 3D.
</pre>
</div>
<div bag="default" created="20210109162347458" modified="20210413012419285" revision="0" tags="" title="Modificaciones" tmap.id="4c809699-a9a7-40f2-9380-91ec8e4ee6e2" type="text/vnd.tiddlywiki">
<pre>[[Proyectify Mod|✨ Acerca de]] introduce las habituales modificaciones (o mods) alojadas en el [[repositorio de mods|https://mutabit.com/repos.fossil/tiddlywiki/]]:
* Soporte de interfaz para Español e Inglés.
* &lt;div&gt;Soporte para enlaces reversos (//backlinks//), vía [[TWCrossLinks|https://github.com/akhater/TWCrossLinks]],
de modo que se pueda saber cuáles [[tiddlers|Tiddlers]] vinculan al actual.
&lt;/div&gt;
* &lt;div&gt;Renombrado de enlaces, vía [[Relink|https://github.com/flibbles/tw5-relink]], de modo que no hayan enlaces
internos rotos en caso de que los tiddlers cambien de nombre.
&lt;/div&gt;
* Iconos de interfaz web escalados cuando están en el texto de un tiddler.
* Tiddlers en Markdown.
* [[Enlaces enriquecidos]].
* Resaltado sintáctico mejorado vía CodeMirror.
''Importante'': Por convención, esta modificación tiene la misma versión que el tema en el cual está basado y las revisiones son números de letra sucesivos hechos tomando esa versión como base.
!! Contribuciones
* Projectify está hospedado en ~GitHub en https://github.com/NicolasPetton/projectify.
* Notebook Mod está hospedado en Fossil en https://mutabit.com/repos.fossil/tiddlywiki/
!! Licencia
Projectify y Projectify Mod están publicados bajo licencia MIT.
Mira [[LICENSE|$:/themes/nico/notebook/LICENSE]].
</pre>
</div>
<div created="20210327132444301" modified="20210327132625609" tags="" title="New Tiddler" tmap.id="83076d39-8310-45fc-ba1c-02ff32e0549e" type="text/typewriter">
<pre>&lt;h1&gt;Turndown Demo&lt;/h1&gt;
&lt;p&gt;This demonstrates &lt;a href="https://github.com/domchristie/turndown"&gt;turndown&lt;/a&gt; an HTML to Markdown converter in JavaScript.&lt;/p&gt;
&lt;h2&gt;Usage&lt;/h2&gt;
&lt;pre&gt;&lt;code class="language-js"&gt;var turndownService = new TurndownService()
console.log(
turndownService.turndown('&amp;lt;h1&amp;gt;Hello world&amp;lt;/h1&amp;gt;')
)&lt;/code&gt;&lt;/pre&gt;
&lt;hr /&gt;
&lt;p&gt;It aims to be &lt;a href="http://commonmark.org/"&gt;CommonMark&lt;/a&gt;
compliant, and includes options to style the output. These options include:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;headingStyle (setext or atx)&lt;/li&gt;
&lt;li&gt;horizontalRule (*, -, or _)&lt;/li&gt;
&lt;li&gt;bullet (*, -, or +)&lt;/li&gt;
&lt;li&gt;codeBlockStyle (indented or fenced)&lt;/li&gt;
&lt;li&gt;fence (` or ~)&lt;/li&gt;
&lt;li&gt;emDelimiter (_ or *)&lt;/li&gt;
&lt;li&gt;strongDelimiter (** or __)&lt;/li&gt; &lt;li&gt;linkStyle (inlined or referenced)&lt;/li&gt; &lt;li&gt;linkReferenceStyle (full, collapsed, or shortcut)&lt;/li&gt; &lt;/ul&gt;__</pre>
</div>
<div bag="default" created="20210109162347458" modified="20210109184213960" revision="0" tags="" title="Notebook Mod" tmap.id="344b7619-b213-416f-9b62-96361512e53d" type="text/vnd.tiddlywiki">
<pre>&lt;$link to="$:/themes/nico/notebook/LICENSE"&gt;&lt;&lt;shield label:License status:MIT&gt;&gt;&lt;/$link&gt;
&lt;$link to="$:/themes/nico/notebook"&gt;&lt;&lt;shield label:Release status:{{$:/themes/nico/notebook!!version}} colour:purple&gt;&gt;&lt;/$link&gt;
&lt;a href="https://tiddlywiki.com"&gt;&lt;&lt;shield label:~TiddlyWiki status:5.1.22+ colour:blue&gt;&gt;&lt;/a&gt;
Notebook Mod es una modificación al [[tema Notebook|Notebook theme]] para [[TiddlyWiki|https://tiddlywiki.com]],
que preserva varias de sus características:
* Es un tema limpio y despejado.
* Es un tema //responsive// (adaptativo) que viene con soporte para móviles a través del plugin de ~JavaScript [[$:/plugins/nico/notebook-mobile]].
* Barra lateral izquierda personalizada.
* Viene con 3 paletas de color, una gris, otra beige y una oscura. Para cambiar entre ellas, cliquea el botón {{$:/themes/nico/notebook/ui/Buttons/SwitchPalette}} desde la barra superior.
e introduce las habituales modificaciones alojadas en el repositorio:
* Soporte de interfaz para Español e Inglés.
* &lt;div&gt;Soporte para enlaces reversos (//backlinks//), vía [[TWCrossLinks|https://github.com/akhater/TWCrossLinks]],
de modo que se pueda saber cuáles [[tiddlers|Tiddlers]] vinculan al actual.
&lt;/div&gt;
* &lt;div&gt;Soporte para renombrado, vía [[Relink|https://github.com/flibbles/tw5-relink]], de modo que no hayan enlaces
internos rotos en caso de que los tiddlers cambien de nombre.
&lt;/div&gt;
* Soporte para iconos de interfaz web escalados cuando están en el texto de un tiddler.
* Soporte para Markdown (falta mejorar algunos detalles del editor, como números de línea y resaltado sintáctico).
Para todos los cambios en la última versión {{$:/themes/nico/notebook!!version}} mira [[$:/themes/nico/notebook/changelog]].
!! Contribuciones
* Notebook está hospedado en ~GitHub en https://github.com/NicolasPetton/notebook.
* Notebook Mod está hospedado en Fossil en https://mutabit.com/repos.fossil/tiddlywiki/
''Importante'': Por convención, esta modificación tiene la misma versión que el tema en el cual está basado.
!! Licencia
Notebook y Notebook Mod están publicados bajo licencia MIT.
Mira [[LICENSE|$:/themes/nico/notebook/LICENSE]].
</pre>
</div>
<div bag="default" created="20201210210453740" modified="20201231135037214" revision="0" title="Notebook theme" tmap.id="feadb87b-8966-40d9-afbb-674c107d2e8a" type="text/vnd.tiddlywiki">
<pre>&lt;$link to="$:/themes/nico/notebook/LICENSE"&gt;&lt;&lt;shield label:License status:MIT&gt;&gt;&lt;/$link&gt;
&lt;$link to="$:/themes/nico/notebook"&gt;&lt;&lt;shield label:Release status:{{$:/themes/nico/notebook!!version}} colour:purple&gt;&gt;&lt;/$link&gt;
&lt;a href="https://tiddlywiki.com"&gt;&lt;&lt;shield label:~TiddlyWiki status:5.1.22+ colour:blue&gt;&gt;&lt;/a&gt;
Notebook is a clean, uncluttered theme for [[TiddlyWiki|https://tiddlywiki.com]].
* The theme is responsive and comes with mobile support through the ~JavaScript [[$:/plugins/nico/notebook-mobile]].
* Custom left sidebar
* Notebook comes with 3 colour palettes, a grey, a beige and a dark one. To switch between colour palettes, click the {{$:/themes/nico/notebook/ui/Buttons/SwitchPalette}} button from the top bar.
For all changes in the latest {{$:/themes/nico/notebook!!version}} release, see [[$:/themes/nico/notebook/changelog]].
!! Contributing
The project is hosted on ~GitHub at https://github.com/NicolasPetton/notebook.
!! License
Notebook is released under MIT, see [[LICENSE|$:/themes/nico/notebook/LICENSE]].
</pre>
</div>
<div created="20210324044415706" modified="20210324044453341" tags="" title="Nuevo Tiddler" tmap.id="820c1e1c-c673-4dcc-9468-66999e8eb4f1">
<pre></pre>
</div>
<div created="20210324043123604" modified="20210324043141142" tags="" title="Nuevo Tiddler 1" tmap.id="682e029b-d467-46dd-bc22-76c4726a6db8">
<pre>jkjjljljoi
joijoioijoi</pre>
</div>
<div created="20210323002518077" modified="20210323002613568" tags="" title="Nuevo Tiddler 2" tmap.id="b71d19c6-2cde-4287-874d-fa8047e3f22e">
<pre>&lt;&lt;richlink "http://freedesignfile.com/upload/2015/10/Cartoon-underwater-world-beautiful-vector-02.jpg" "blubb blubb"&gt;&gt;</pre>
</div>
<div created="20210613174619388" modified="20210613182341931" tags="" title="Nuevo Tiddler 3" tmap.id="f4ae6033-38bb-4c57-81c7-84a432996379">
<pre>&lt;style&gt;
#frame {
border: 0px dotted;
width: 700px;
height: 700px;
}
&lt;/style&gt;
&lt;iframe scrolling="no" src="https://hackmd.io/pmcQVmCfQpmeIm3uwtKWBA?view"
id="frame"&gt;
&lt;/iframe&gt;</pre>
</div>
<div created="20210621170347886" modified="20210622132126261" tags="" title="Nuevo Tiddler 4" tmap.id="31f056df-be3c-4aa0-a5d1-b333ce7f7346">
<pre> &lt;div class="copincha-welcome"&gt;
&lt;div class="icon"&gt;{{$:/core/images/telegram}}&lt;/div&gt;
&lt;h3&gt;{{$:/language/projectify/EmptyUpcomingTitle}}&lt;/h3&gt;
{{$:/language/projectify/EmptyUpcomingDescription}}
&lt;/div&gt;</pre>
</div>
<div created="20210119094437849" modified="20210119101419224" title="OpenScad" tmap.id="90084ba7-a2b8-4483-b51f-3a5a0f0e412f">
<pre>OpenScad es un programa para crear modelos 3D por computadora (CAD). Es gratuito y está disponible para Linux, Windows y Mac OS.
Los modelos se diseñan escribiendo una serie de instrucciones en texto plano que es compilada y visualizada por el programa en un entorno tridimensional.
Así tenemos un control total sobre el proceso de modelado porque podemos cambiar fácilmente cualquier instrucción y realizar diseños definidos por parámetros configurables.
Dado a su naturaleza textual los archivos son fáciles de compartir.</pre>
</div>
<div created="20210720101714358" modified="20210726163944652" tags="[[Yusnier Mentado]] Arte DOTS SubProject" title="Orangebot" tmap.id="f806e5ee-f8ee-43c5-8b14-b272de7aa94d">
<pre>La obra consiste en un robot creado con materiales reciclados de una vieja cámara de cine de 16 milímetros y consta de diferentes sensores capases de ubicar a las personas en el espacio e interactuar con ellas; presenta un pequeño dispositivo que le brinda la posibilidad de hablar con el público presente en la sala en donde se encuentra, dándole la bienvenida al recinto y en caso de acercarse mucho el espectador a este, como observando sus partes y componentes, él mismo comienza a describirse íntegramente como esta construido electrónicamente.
Realizada con Arduino Nano, servos motores, sensores ultrasónicos, acrílico, cámara de cine obsoleta y piezas recicladas de otros equipos electrónicos.
&lt;center&gt;
[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/proyectos-orangebot1.webp]]
[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/proyectos-orangebot2.webp]]
</pre>
</div>
<div created="20210430203434051" modified="20210917024143397" tags="Taller" title="Pa La Minga 1" tmap.id="06a166bd-8c50-4543-b992-3899fc8d6439">
<pre>!Resumen
{{Portada taller 1.jpg}}
{{Pa La Minga 1 - Resumen}}
* ''Fecha'': 15 de Marzo de 2021
* ''Horario'': 9:00 AM a 4:00 PM
* ''Lugar'': [[Jardín de M0]]
[img width=200 [https://miro.medium.com/max/1200/1*S28NVtFxZR7IQ34AdXKwfQ.gif]]
! Programa
{{Pa La Minga 1 - programa}}
&lt;&lt;alert warning "
''Recomendamos traer: ''
*Herramientas
* Ropa adecuada, (sombrero, zapatos, etc.)
* Agua para tomar
* Plato, cubierto y vaso.
* Algun dispositivo para copiar información" width:100%&gt;&gt;
! Memoria
{{Pa la Minga 1 - Memoria}}
</pre>
</div>
<div category="grupo" created="20210620035307021" modified="20210917075356110" tags="SubProject [[Cartografias de bolsillo]]" title="Palaminga" tmap.id="4199ea62-28be-404a-8446-4be0bc38d02c">
<pre>[img[https://mutabit.com/repos.fossil/copincha/uv/repo/microwikis/palaminga-medios/palaminga-encabezado.webp]]
{{Palaminga/resumen}}
[[Palaminga|https://mutabit.com/repos.fossil/copincha/uv/repo/microwikis/palaminga.html]]
</pre>
</div>
<div created="20210506234047121" modified="20210714173355049" tags="" title="Palaminga/resumen" tmap.id="791d8e92-b472-4d50-86d2-956cae3cdf46">
<pre>''Pa La Minga'' es un espacio de encuentros lúdicos con amigxs para intercambiar la sabiduría y el conocimiento recolectado en el camino de cada unx, con la excusa de comer rico y pasarla lindo mientras aprendemos cómo hacerle frente a modelos insostenibles y más ahora en tiempos de pandemia.
Creemos en la soberanía alimentaria, de los territorios y de los cuerpos como alternativa y sendero posible a la transformación del mundo y de quienes lo habitamos. Es la respuesta al miedo viral que nos imponen por todos lados.
La vida tal y como la impone el consumismo no es sustentable para la Tierra, ni para la flora, ni para la fauna y los seres humanos. Si no cambiamos nuestras formas de interactuar con el hábitat y con lxs demás, agotaremos los recursos naturales y las fuentes renovables de energía, y por tanto la vida misma.
Sembrar, reducir, recolectar, reutilizar, respirar, comunicarse conscientemente, educar desde otros lados y desde otras formas, escuchar y escucharse, bailar, manejar adecuadamente los desechos, construir con la naturaleza y no en contra de ella, organizar desde lo horizontal, el trueque, el silencio, las semillas criollas, la empatía, los círculos, la medicina natural y preventiva, aguas puras, energías limpias, manejo de las emociones, comer vivo, el arte, movimiento, respeto a los pueblos originarios, festivales verdes... son las herramientas para hábitar con intención y amor esta casa.
Pa La Minga vendría a ser el gestor inicial de una comunidad intencional en La Habana, un tejido de personas y por lo tanto de talentos y de conocimientos para enseñarnos en la medida de lo posible como llevar una vida sustentable en la ciudad, bajo las premisas de la [[Permacultura]], de las buenas prácticas agroecológicas y comunidades conscientes, así como usos más responsables de las tecnologias.
La palabra //minga// proviene del quechua //“mink´a”//, expresión usada antiguamente por muchas comunidades andinas, para los momentos en los cuales se realizaban los cultivos colectivos agrícolas que daban beneficios a la tribu. Aquí hacemos un juego de palabras con una expresión coloquial del cubanismo, para nombrar los espacios de talleres y encuentos.
Pa La Minga es un espacio itinerante, es decir, va circulando por lugares y personas, como forma de descentralizar y abarcar varias áreas de provecho, enlazar gente con otra gente, formar tejido, "sembrar semillas" en diferentes espacios y barrios de la Habana y sobre todo pues echarle la mano a compañeras y compañeros que están iniciando proyectos o que ya tienen algún proyecto avanzado.</pre>
</div>
<div created="20210323191022739" modified="20210323191035654" tags="" title="ParaEmpezar" tmap.id="780fcfdf-f89d-4ada-9122-2775e79d6f7a">
<pre>\define lingo-base() $:/language/ControlPanel/Basics/
Bienvenido a TiddlyWiki y a su comunidad de usuarios
Antes de guardar información importante en TiddlyWiki, es preciso que te asegures de poder hacerlo de manera fiable
Visita https://tiddlywiki.com/#GettingStarted para más información (en inglés)
!! Configura este ~TiddlyWiki
&lt;div class="tc-control-panel"&gt;
|&lt;$link to="$:/SiteTitle"&gt;&lt;&lt;lingo Title/Prompt&gt;&gt;&lt;/$link&gt; |&lt;$edit-text tiddler="$:/SiteTitle" default="" tag="input"/&gt; |
|&lt;$link to="$:/SiteSubtitle"&gt;&lt;&lt;lingo Subtitle/Prompt&gt;&gt;&lt;/$link&gt; |&lt;$edit-text tiddler="$:/SiteSubtitle" default="" tag="input"/&gt; |
|&lt;$link to="$:/DefaultTiddlers"&gt;&lt;&lt;lingo DefaultTiddlers/Prompt&gt;&gt;&lt;/$link&gt; |&lt;&lt;lingo DefaultTiddlers/TopHint&gt;&gt;&lt;br&gt; &lt;$edit tag="textarea" tiddler="$:/DefaultTiddlers"/&gt;&lt;br&gt;//&lt;&lt;lingo DefaultTiddlers/BottomHint&gt;&gt;// |
&lt;/div&gt;
Consulta más opciones en el [[panel de control|$:/ControlPanel]]
</pre>
</div>
<div bag="default" created="20210109181528267" modified="20210109183035128" revision="0" tags="" title="Personalización" tmap.id="9ccf514c-2ae2-4e19-b4c2-7e278c46b7ae" type="text/vnd.tiddlywiki">
<pre>!! ¿Cómo puedo adicionar secciones a la barra lateral izquierda?
Cualquier tiddler con la etiqueta de sistema &lt;&lt;tag $:/themes/nico/notebook/tags/SidebarSection&gt;&gt; será mostrado como
una sección en la barra lateral</pre>
</div>
<div created="20210612234724272" modified="20210612234742610" tags="Copinchapedia" title="Personalizar Wiki" tmap.id="209ff114-4a62-417b-b52d-c6ff99928dfe">
<pre></pre>
</div>
<div created="20210321100448002" modified="20210321100453078" tags="" title="Personas" tmap.id="83c67fa0-5190-4dc9-b240-e641da4a4db9">
<pre></pre>
</div>
<div created="20210323124437987" list="[[pieza - enlace]] [[pieza - imagen]] [[pieza - detalles]] [[pieza - cantidad]]" modified="20210719164240233" precio="10" tags="Copinchapedia/Plantillas example todo" title="pieza" tmap.id="6cf1ff25-74f2-4971-9d90-8fe308c4a77a">
<pre>[[pieza - imagen]]
[[pieza - detalles]]
[[pieza - enlace]]
campos de infromacion:
pieza - precio
</pre>
</div>
<div created="20210323130004150" modified="20210323133021760" tags="example pieza todo" title="pieza - cantidad" tmap.id="fb8d3e04-63b6-4528-9bd0-947b1304dd38">
<pre></pre>
</div>
<div created="20210323130045267" modified="20210323133034819" tags="example pieza todo" title="pieza - detalles" tmap.id="c5f8e2cf-f37d-4904-aa00-975a4b9f1cf5">
<pre></pre>
</div>
<div created="20210323130240903" modified="20210323133028311" tags="example pieza todo" title="pieza - enlace" tmap.id="850a5093-b810-43d4-b394-b1f57c640443">
<pre></pre>
</div>
<div created="20210323130119088" modified="20210323133032124" tags="example pieza todo" title="pieza - imagen" tmap.id="51f82940-5b8b-4967-bad7-6f22debedb2c">
<pre></pre>
</div>
<div created="20210321100834777" modified="20210321100912873" title="Plantilla de proyecto" tmap.id="5cf5504a-1001-4a2c-a00e-e95f9dabf8e7" type="text/x-markdown">
<pre># Nombre del Proyecto
![Imagen]()
&lt;br&gt;
&lt;br&gt;
## Resumen
### Problemática
Los **problemas** que existen y las **necesidades** que generan.
&lt;br&gt;
### Pregunta
Una pregunta que surge tras analizar la problemática.
_Ejemplo:_
_¿Cómo se pueden localmente resolver las necesidades con:
recursos más accesibles?
procesos más sostenibles?_
&lt;!--
relaciones más interdependientes**?
**grupos más inclusivos y plurales**
--&gt;
&lt;br&gt;
### Hipótesis
La idea o conjetura que dará respuesta a la pregunta, si es demostrada.
&lt;br&gt;
### Objetivos
Los pasos que se cumplirán en el proceso de investigación para demostrar que la idea planteada como hipótesis responde a la pregunta.
&lt;br&gt;
## Proceso de Investigación
Una explicación detallada de cómo se obtiene la solución siguiendo los pasos planteados como objetivos.
&gt; Solución es una idea con capacidad demostrada para solucionar el problema.
&lt;br&gt;
## Tutorial
Cómo funciona la solución?
Cómo construirla?
Cómo usarla?
## Participantes
| | |
|-|-|
| ![Imagen del participante]() | Descripción |
</pre>
</div>
<div category="evento" created="20210117221946952" creator="M0" list="[[- Construir maquinas Precious Plastic -]] [[Cartografias de bolsillo]]" modified="20210917072331126" modifier="Mo" tags="[[Precious Plastic La Habana]] plástico SubProject" title="Plástico Leal" tmap.id="fafb88fc-9338-411f-9bfc-2c7d0c0b136f">
<pre>&lt;&lt;tabs "[[Plástico Leal - Introducción]] [[Plástico Leal - Resumen]] [[Plástico Leal - Programa]] [[Plástico Leal - Talleres]] [[Plástico Leal - Información]] "&gt;&gt;</pre>
</div>
<div caption="El Plástico Leal" created="20210120050441165" modified="20210917072932493" tags="[[Plástico Leal]]" title="Plástico Leal - El Plástico Leal" tmap.id="fac26094-ef4e-4d63-9690-7478fea39317">
<pre>Para fabricar objetos de utilidad con plástico reciclado en intervenciones públicas, cuyo conjunto denominamos Plástico Leal.
Para aprender cómo crear modelos 3D, fabricarlos en una impresora 3D y compartirlos en un
repositorio público.
!! Sesión 1
[[Modelado 3D en OpenScad]]&lt;br&gt;Por: Maurice Haedo Sanabria
!! Sesión 2
[[Modelado 3D en FreeCAD]]&lt;br&gt;Por: Roberto Espín
[[Edición directa sobre mallas con Meshmixer]]&lt;br&gt;Por: Abel Bajuelos Rizo
!! Sesión 3
[[Flujo de trabajo de fabricación aditiva con Cura]]&lt;br&gt;Por: Abel Bajuelos Rizo</pre>
</div>
<div caption="Información" created="20210318160127242" modified="20210720030548014" title="Plástico Leal - Información" tmap.id="987bab38-3498-4df1-a526-dfe84629feaf">
<pre>!! Horario
Sábados de 10:00 AM a 4:00 PM.
!! Contactos
[[Email|mailto:comunidad@copincha.org]]
[[WhatsApp|https://wa.me/+5354115734]]
[[Telegram|https://t.me/M0_Copincha]]
!! Dirección
Centro Cultural Habana Espacios Creativos.&lt;br&gt; Esquina Teniente Rey y Habana, Habana Vieja
23.136068, -82.352731
&lt;iframe width="700" height="233" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="https://www.openstreetmap.org/export/embed.html?bbox=-82.35379457473756%2C23.135348145796538%2C-82.35174000263214%2C23.13678857628896&amp;amp;layer=mapnik&amp;amp;marker=23.136068362976882%2C-82.35276728868484" style="border: 1px solid black"&gt;&lt;/iframe&gt;&lt;br/&gt;&lt;small&gt;&lt;a href="https://www.openstreetmap.org/?mlat=23.13607&amp;amp;mlon=-82.35277#map=19/23.13607/-82.35277"&gt;View Larger Map&lt;/a&gt;&lt;/small&gt;
Plástico Leal es un proyecto iniciado por Maurice Haedo Sanabria en 2020.
Actualmente merecedor de la Beca de Creación de Nuevos Medios de [[Habana Espacios Creativos|https://facebook.com/HabanaEspaciosCreativos/]] y cuenta con la colaboración de [[Precious Plastic La Habana]]. </pre>
</div>
<div caption="Introducción" created="20210318155343716" modified="20210318155630238" tags="" title="Plástico Leal - Introducción" tmap.id="542e5115-de5e-4f8a-baf8-ef7b631c25b5">
<pre>//A Eusebio Leal Spengler //
Todos conocemos el plástico en mil formas y aplicaciones, y también por desgracia, con muy
pocas vías de escape cuando lo convertimos en desecho. Todo el plástico proveniente de viviendas, restaurantes, hoteles, trabajos y consumidores de todos los gustos y preferencias, suele tener un triste destino: lo podemos encontrar en cada esquina, en las aguas de nuestra bahía, en el verde de nuestros parques, y ocasionalmente, en su obvio lugar de destino: el tanque de basura local. Nos sobrecoge su abundancia, y nos preocupa su permanencia no deseada en tantos rincones de nuestro entorno. Pudiéramos atrevernos a decir que se encuentra tan presente en La Habana Vieja como las casas coloniales y otros tantos detalles que sí deberían resaltar y brillar. Todo ese plástico al descuido y ensuciando nuestro entorno deja de ser leal, para ser letal.
Seguramente cada persona que conocemos, leal a la ciudad, desea que el plástico encuentre
un camino, real y maravilloso, para reinventarse y seguirnos acompañando en muchos ámbitos,
resiliente, perdurable, reutilizable; para que siga brillando como material multifacético y leal a nuestra ciudadanía cubriendo necesidades de
índole diversa.
Aunemos las voluntades para limpiar y reconstruir nuestro patrimonio, partiendo de técnicas de reutilización y reciclaje que se abren paso, en la actualidad y en el mundo entero, como caminos hacia modelos de vida sostenibles.</pre>
</div>
<div caption="La Conexión" created="20210119195256531" modified="20210917080038339" tags="[[Plástico Leal]]" title="Plástico Leal - La Conexión" tmap.id="4502dd56-445c-407c-941d-467b7901be35">
<pre>Para presentar proyectos o ideas afines y desarrollar una red de colaboración en torno al
reciclado de plástico.
Construye una preentacion de tu experiencia o idea respondiendo esta [[guía| La Conexión : Guía para presentaciones]].
!!Sesión 1
[[Precious Plastic La Habana]]&lt;br&gt;Por: Copincha
[[La Mina]]&lt;br&gt;Por: Embajada Rebirth / Tercer Paraíso Cuba
!!Sesión 2
[[Proyecto Desarrollo Local en Mayabeque]]&lt;br&gt;Por: AlaSoluciones
[[Ecomadera]]&lt;br&gt;Por: CNA A3
[[Experiencias reciclando plástico]]&lt;br&gt;Por: Yoel Utria Suárez
!!Sesión 3
[[Construcción de impresoras 3D usando plástico reciclado]]&lt;br&gt;Por: Copincha
[[MPA (Movement Patterns Applications)]]&lt;br&gt;Por: Maykel Rodríguez Ricardo y Oscar Luis
Vera Pérez
[[Reciclado de plásticos en la construcción de maquetas]]&lt;br&gt;Por: Juan Infante
[[Lámparas con plástico reciclado]]&lt;br&gt;Por: ATIVA
[[Vestuario de giganteria con plástico reciclado]]&lt;br&gt;Por: Mumote
!!Sesión 4
[[Mapa digital para el reciclaje de plástico]]&lt;br&gt;Por: Precious Plastic La Habana</pre>
</div>
<div caption="La Documentacion" created="20210917072732900" modified="20210917073124284" tags="[[Plástico Leal]]" title="Plástico Leal - La Documentacion" tmap.id="abc7bdfa-c503-4013-97a2-53ff1642d3e0">
<pre>!! Sesión 4
[[Compartir y colaborar en el repositorio público del proyecto con Git]]&lt;br&gt;Por: Yudivián
Almeida Cruz</pre>
</div>
<div caption="La Introducción" created="20210120050031980" modified="20210720030827855" tags="[[Plástico Leal]]" title="Plástico Leal - La Introducción" tmap.id="71d2b7c8-e54a-44ef-b32f-9ebe70188620">
<pre>Para aprender las innumerables posibilidades y beneficios actuales de reciclar plástico a
pequeña escala.
!!Sesión 1
[[Ética del reciclaje]]&lt;br&gt;Por: Jorge Luis de la Fuente
[[Introducción a los plásticos]]&lt;br&gt;Por: Juan Infante
!!Sesión 2
[[Clasificación e Identificación de los plásticos]]&lt;br&gt;Por: Juan Infante
!!Sesión 3
[[Reciclado de plásticos termoestables]]&lt;br&gt;Por: Juan Infante
[[Procesos de transformación y maquinarias industriales y artesanales]]&lt;br&gt;Por: Juan Infante
!!Sesión 4
[[Especificaciones para el diseño con plástico]]&lt;br&gt;Por: Juan Infante
</pre>
</div>
<div caption="La Maquinaria" created="20210120050227896" modified="20210720030715509" tags="[[Plástico Leal]]" title="Plástico Leal - La Maquinaria" tmap.id="34686043-b6df-48dc-b07e-05bf3cbb3557">
<pre>Para aprender construyendo accesorios y máquinas (de código abierto) para reciclar plástico
!! Sesión 1
[[Construcción de una máquina trituradora Precious Plastic|Trituradora Precious Plastic]]
!! Sesión 2
[[Construcción de una máquina inyectora Precious Plastic|Inyectora Precious Plastic]]
!! Sesión 3
[[Construcción de una máquina extrusora Precious Plastic|Extrusora Precious Plastic]]
[[Construcción de una máquina extrusora de filamentos de impresión 3D|Construcción de una máquina extrusora de filamentos de impresión 3D]]
!! Sesión 4
[[Construcción de una máquina impresora 3D Hangprinter|Hangprinter]]</pre>
</div>
<div caption="Programa" created="20210620055117230" modified="20210620055230208" tags="" title="Plástico Leal - Programa" tmap.id="76319966-ce01-456a-adc9-98971b07ee99">
<pre>Inauguración en Casa Leal
Taller La Introducción
Sábados 1 2 3 4
La Conexión
Sábados 5 6 7 8
El 3D Útil
Sábados 9 10 11 12
La Maquinaria
Sábados 13 14 15 16 17 18 19 20
El Plástico Leal
Sábados 21 22 23 24</pre>
</div>
<div caption="Resumen" created="20210318155709007" modified="20210620060049090" sobre="Plástico Leal es un laboratorio para desarrollar el interés y la participación ciudadana en el reciclaje y reutilización del plástico en La Habana Vieja." tags="" title="Plástico Leal - Resumen" tmap.id="ff857321-0a86-42c6-8cb7-393f7f827fb5">
<pre>{{!!sobre}}.
Queremos mostrar las increíbles oportunidades del reciclaje de plástico para combatir la contaminación plástica, reduciendo la
demanda de nuevo plástico virgen y cerrando su ciclo material mientras se crean mejores medios de vida para las personas.
Compartimos todo en código abierto para que cualquiera lo use y se beneficie. Esto significa que ponemos disponible y de forma gratuita todo el conocimiento, know-how, procesos,
metodologías y herramientas. Creemos que la colaboración es más fuerte que la competencia
y que el problema del plástico sólo se puede resolver de forma colectiva.</pre>
</div>
<div caption="Talleres" created="20210318160345324" modified="20210318160601580" tags="" title="Plástico Leal - Talleres" tmap.id="69b9cc30-d8f6-4808-aecb-65b05c002834">
<pre>&lt;&lt;tabs "[[Plástico Leal - La Introducción]] [[Plástico Leal - La Conexión]] [[Plástico Leal - El 3D Útil]] [[Plástico Leal - La Maquinaria]] [[Plástico Leal - El Plástico Leal]] " &gt;&gt;</pre>
</div>
<div created="20210522155142660" creator="M0" modified="20210522161651678" modifier="M0" tags="" title="Portada" tmap.id="a3d7c06b-d764-453d-957a-9f38a02a8de2">
<pre>{{Encabezado}}
{{Descripcion}}
[[Proyectos del colectivo PRUEBAS]]
</pre>
</div>
<div caption="Ecomadera" created="20210809213959492" creator="M0" modified="20211029232642129" modifier="M0" tags="pph/sidebar/contenidos/glosario" title="pph/sidebar/contenidos/glosario/ecomadera" tmap.id="f52b3ece-0f6b-411d-99c5-cc32b2697cd7">
<pre>La Ecomadera, madera sintética o madera plástica es un material fabricado a partir de residuos de madera y plásticos reciclados seleccionados, resultando en un material de mayor durabilidad y menor mantenimiento. También se conoce por este nombre a compuestos enteramente sintéticos cuyo acabado imita el aspecto de la madera natural. Los productos finales pueden ser empleados de la misma manera que la madera natural, principalmente para uso en exteriores.
En función del uso final, se pueden encontrar dos compuestos de madera de plástico reciclado:
''Madera plástica:'' Madera 100% de plástico reciclado obtenida del reciclaje de HDPE (polietileno de alta densidad) y otros materiales termoplásticos.
''Compuestos de madera plastica (WPC):'' Combinación de restos de madera y plásticos reciclados.
Se usa como sustituto ecológico a la madera en diversas construcciones.
Para su elaboración se mezclan diversos plásticos de uso popular (como bolsas, frascos de champú y cremas, juguetes, entre otros; se trituran y se extruyen en perfiles para ser usados como estructura de edificaciones, techos, muebles, pisos, bancas, y artículos altamente resistentes.
Al estar conformado por todo tipo de plásticos, es resistente al sol, al agua y al paso del tiempo. Dura cinco veces más que la madera tradicional, es de fácil limpieza, manipulación y no requiere mantenimiento. También evita la acumulación de bacterias, parásitos y agentes contaminantes.
Este producto ecológico, reciclable, que no produce hongos, que no penetra la polilla, que es retardante del fuego, con alta duración a la intemperie, maquinable y que no requiere de almacenamiento techado, pincha en alguno de estos enlaces
!! Ecomadera en Cuba
Lo hacen varias organizaciones y con ellas se crean numerosas estructuras. Entre ellas, las de resultados más relevantes son Ecomadera Cubana, [[CNA Atres]] y Plásticos Bahamonde.
</pre>
</div>
<div caption="Hackerspace" created="20210304163741217" creator="M0" modified="20210826033526395" modifier="M0" tags="pph/sidebar/contenidos/glosario" title="pph/sidebar/contenidos/glosario/hackerspace" tmap.id="fa619060-10f5-474e-af2e-c95a86853b84" type="text/vnd.tiddlywiki">
<pre>Los hackerspaces son lugares físicos gestionados de forma comunitaria, donde las personas se reunen y comparten su interés por la tecnología, trabajan en sus proyectos y aprenden de los demás.</pre>
</div>
<div caption="Hypothesis" created="20211017072831765" creator="M0" modified="20211017073014458" modifier="M0" tags="pph/sidebar/contenidos/glosario" title="pph/sidebar/contenidos/glosario/hypothesis" tmap.id="55091c59-9a0c-4392-8027-07b9da6d8781">
<pre>&lt;&lt;hyp&gt;&gt; es una herramienta para hacer anotaciones a lecturas en y fuera de línea, que estén en formatos PDF y HTML.
Dicha herramienta está hecha por una fundación sin ánimo de lucro y su misión es hacer de la lectura anotada algo activo y social, en lugar de únicamente privado como suele ocurrir.</pre>
</div>
<div caption="Infraestructura de bolsillo" created="20210307191047165" creator="Offray Luna" modified="20210830140427848" modifier="M0" tags="pph/sidebar/contenidos/glosario" title="pph/sidebar/contenidos/glosario/infraestructuradebolsillo" tmap.id="7fa7e8bc-1720-40c5-9297-0163abb83359">
<pre>Las infraestructuras de bolsillo es un término con el que denominamos a aaquellas que
El término fue acuñado por Offray Luna con motivo de su investigación doctoral.
''Sencillas''&lt;br&gt;
''Extensibles''&lt;br&gt;
Tiddlers para extender el contenido y la funcionalidad.
''Autocontenidas''&lt;br&gt;
La informacion se guarda en los dispositivos con la menor cantidad de archivos posible.
''Funcionan Offline-Online''&lt;br&gt;
Se Ejecutan con o sn conexion a Internet, incluso con senal baja o intermitente.
''Se adaptan a hardware modesto''&lt;br&gt;
Se ejecutan bien en un amplia variead de hardware, desde memorias USB, computadores de placa única (tipo RasberryPi), portátiles y de escritorio, así como servidores y máquinas de especificaciones intermedias o superiores a las ejemplificada acá.</pre>
</div>
<div caption="Precious Plastic La Habana" category="grupo" created="20210318152229764" modified="20210720210054421" tags="Project" title="Precious Plastic La Habana" tmap.id="d9085896-90a4-462d-b845-dfa6b3a4438a">
<pre>{{logo-precious-plastic-la-habana.jpg}}
''Precious Plastic La Habana'', es un entorno, colaborativo y abierto para encontrar soluciones a las necesidades y los desafíos de contaminación de plástico en el contexto de La Habana.
Reúne a personas y colectivos interesados en el estudio, la construcción y la implementación sostenidas de prácticas de reciclaje y reutilización de plástico, como parte de la iniciativa global Precious Plastic.
Desde el cruce de prácticas tecnológicas (co-creación, fabricación digital, diseño abierto, etc.) con el patrimonio artesanal local, fomentamos en la comunidad el desarrollo de una conciencia innovadora y ecológica, para impulsar redes de recogida de plástico residual y proyectos que utilicen este material para generar todo tipo de productos.
En los últimos años ha surgido un fuerte interés en la reutilización y reciclaje de plásticos en La Habana. Una nueva escena se está forjando a partir de la colaboración entre varios actores, tanto en entornos virtuales como físicos. Hay intercambio de conocimientos y una superposición significativa de diferentes grupos. La escena también está dinámicamente conectada a comunidades internacionales de reciclaje de plástico, la más notable y establecida es la red [[Precious Plastic|http://preciousplastic.com]].
El reciclaje del plástico está en fase emergente y desarrollándose dinámicamente, tanto con máquinas importadas o diseñadas y/o construídas en la isla.
A diferencia de muchos otros materiales en Cuba, los plásticos son un recurso fácilmente disponible, y existe un estado de larga data de producción de artículos básicos para el hogar, tanto en el comercio minorista estatal como en el mercado negro.
La ola actual de reciclaje de plásticos es una nueva desviación de estas prácticas establecidas, con intereses específicos en las prácticas ecológicas y las innovaciones tecnológicas de fuente abierta, conectada con comunidades globales de reciclaje y makers.
!! Objetivos:
* Acercar el reciclaje de plástico a la comunidad de La Habana a través de la innovación de código abierto y las prácticas ecológicas. &lt;br&gt;&lt;br&gt;
* Mantener espacios comunitarios de referencia en cuanto a reciclaje y reutilización de plástico en La Habana; para la capacitación directa y la socialización de conocimientos teórico-prácticos. &lt;br&gt;&lt;br&gt;
* Educar con pedagogías centradas en capacidades específicas de utilidad aplicada, las innumerables posibilidades que poseen los plásticos para la creación de objetos, modelos de trabajo, emprendimientos y soluciones emergentes. &lt;br&gt;&lt;br&gt;
* Concientizar sobre el impacto social y ambiental de las prácticas de reciclado de plástico. &lt;br&gt;&lt;br&gt;
* Desarrollar y mantener una presencia en la web, y un repositorio público para documentar, divulgar, y compartir las experiencias de trabajo y conocimiento generado. &lt;br&gt;&lt;br&gt;
* Dar soporte y asistencia a proyectos (de espacios, construcción de máquinas, organización comunitaria, educación, campañas de concientización, emprendimientos, y desarrollo de productos) iniciados por personas y grupos afines. &lt;br&gt;&lt;br&gt;
* Colectivizar una cultura de reciclaje de plástico capaz de impactar en las formas que tenemos de tratar los desechos en general (orgánicos, e inorgánicos) de manera eficiente y socialmente saludable. &lt;br&gt;&lt;br&gt;
* Crear una red organizada de transporte, distribución y almacenamiento de los residuos plásticos.
!! Principios comunes:
* Aprender haciendo y mejorando variaciones de máquinas, moldes, nuevos productos y proyectos; que respeten la convivencia, (la colaboración,la socialización del trabajo) y el medio ambiente.&lt;br&gt;&lt;br&gt;
* Compartir el conocimiento de forma abierta para que todos lo usen y se beneficien.
!! Acciones:
* Explicar los aspectos significativos de cada paso en la cadena del reciclaje y la reutilización de plástico. &lt;br&gt;&lt;br&gt;
* Asesorar en todo lo relativo a la fabricación de máquinas, gestión de los distintos tipos de plásticos, etc. &lt;br&gt;&lt;br&gt;
* Enseñar a emplear las diferentes técnicas de elaboración de objetos con plástico reciclado (impresión 3D, inyección, prensado, extrusión, compresión, etc.) y a documentar modelos y proyectos en el repositorio público. &lt;br&gt;&lt;br&gt;
* Sumar iniciativas que puedan recrear muchos objetos y piezas de repuesto que satisfagan todo tipo de necesidades y sustituyan importaciones. &lt;br&gt;&lt;br&gt;
!! Enfoques actuales
* Construcción de máquinas, medios, y accesorios para procesar el plástico reciclado. &lt;br&gt;&lt;br&gt;
* Producción de objetos de primera necesidad o alta utilidad. &lt;br&gt;&lt;br&gt;
* Producción de materiales de construcción, madera plástica, estructuras, mobiliario urbano y doméstico. &lt;br&gt;&lt;br&gt;
* Producción de diversos medios de protección para los profesionales de la salud, en respuesta a la Covid-19. &lt;br&gt;&lt;br&gt;
* Producción de medios y accesorios para huertos urbanos, cultivos verticales y agricultura alternativa. &lt;br&gt;&lt;br&gt;
* Diseño de formas de movilidad urbana y medios para facilitar la recolección de plástico. &lt;br&gt;&lt;br&gt;
* Producción de medios de decoración, e iluminación ambientales. &lt;br&gt;&lt;br&gt;
* Producción de pavimentos y suelos.
!! Información
[[Academia Precious Plastic]]
!! Proyectos
[[Máquinas para reciclar plásticos]]
[[Red de movilidad para la recolección de plásticos]]
[[Losas de plástico ABS reciclado]]
[[Kit de conexiones hidráulicas]]
[[De La Fuente]]
[[Protectores faciales de botellas PET]]
[[Plástico Leal]]
!! Colaboradores
[[Copincha/Concepto]]. Comunidad abierta para la experimentación colaborativa, el aprendizaje y la co-creación de tecnologías resilientes. Sede del nodo Precious Plastic La Habana.
[[**Embajada Rebirth \ Tercer Paraíso Cuba - Plasticidas|https://t.me/plasticidas]]. Red abierta para reunir personas e iniciativas interesadas en contribuir en el tema del reciclaje y la reutilización del plástico en Cuba.
[[Embajada Rebirth / Tercer Paraíso Cuba - La Mina|http://www.laminatercerparaiso.org]]. Emprendimiento en la comunidad de Los Pocitos del municipio Marianao, que usa el reciclaje y la trituración de plástico para desarrollar localmente la autosostenibilidad económica, la concientización ambiental y la inclusión social de las mujeres.
[[Estudio 50|http://www.estudio50habana.com]]. Taller social de arte y diseño en el municipio Centro Habana con un molino para triturar plástico.
[[CNA A3|https://www.facebook.com/174561810093443]]. Cooperativa en la provincia Matanzas que produce *Ecomadera*, un material hecho de plástico reciclado para usar como sustituto ecológico a la madera en diversas construcciones.
[[Bits y Átomos|https://t.me/bitsyatomos]] Grupo en Telegram para el aprendizaje y la colaboración en torno a las dinámicas de fabricación digital.
[[De La Fuente|https://www.facebook.com/12114548255333944]]. Emprendimiento en el municipio Cotorro que produce sistemas de hidrodecoración y espectáculos de luces, empleando la reutilización de plástico
AlaSoluciones. Emprendimiento en la provincia de Mayabeque de desarrollo de tecnología aplicada a la producción que buscan producir madera plástica.
!! Salas de conversación
[[Precious Plastics Habana|https://bit.ly/2KGGQx6]]
[[Plasticidas|https://t.me/plasticidas]]</pre>
</div>
<div created="20210704175653012" modified="20210704180438547" tags="" title="Presentaciones" tmap.id="7267debc-4f35-43a0-bd8b-321933ffba66">
<pre>&lt;&lt;list-links filter:"[tag[presentacion]]"&gt;&gt;
</pre>
</div>
<div caption="Principios" created="20210515154236748" modified="20210520182347649" orden="01" tags="Permacultura" title="Principios de la Permacultura" tmap.id="2fbcfa3d-8c20-4120-9dd9-b62a979eba16">
<pre># administracion de la tierra y la naturaleza
# entorno construido
* como construir con materiales alternativos
# Herramientas y tecnologias
* energias limpias
# Cultura y educacion
steiner
*Lectura del Paisaje
* musica y artes participativas
salud y bienestar espiritual
*medicina preventiva
yoga
# finanza y economia
wofing
* comercio justo
* merados de trueque
#tenencia de la tierra y gobernacion comunitaria
ecoaldeas
resolucion de conflictos
cooperativas
asociacion entre vecinos
</pre>
</div>
<div caption="Proyectos" created="20210714073945278" creator="M0" list="Copinchapedia [[Cuba con Impresoras 3D]] [[Archivo informal]] [[Máquinas Precious Plastic]] Palaminga [[Plástico Leal]] [[Precious Plastic La Habana]] Trapiche" modified="20210724010929692" modifier="M0" tags="Copincha" title="Project" tmap.id="aa3e1131-c049-4952-af80-344d267e36b3">
<pre></pre>
</div>
<div created="20210318100020097" modified="20210714064539471" tags="" title="Projectify" tmap.id="6a9853a8-c350-4fa5-9cb9-82b52539ce71">
<pre>{{$:/plugins/nico/projectify/ui/dashboard/Dashboard}}</pre>
</div>
<div bag="default" created="20201218161315664" modified="20210316220015389" revision="0" tags="" title="Projectify Intro" tmap.id="3c0e9546-b0aa-488f-af12-9c7400317dcf" type="text/vnd.tiddlywiki">
<pre>&lt;div class="intro"&gt;
&lt;div class="logo"&gt;{{$:/themes/nico/notebook/images/logo.svg}}&lt;/div&gt;
&lt;h1&gt;Proyectos y wikis personales basados en [[TiddlyWiki|https://tiddlywiki.com]].&lt;/h1&gt;
&lt;/div&gt;
&lt;style&gt;
.intro {
padding: 40px 0;
max-width: 700px;
margin: auto;
text-align: center;
}
.intro a.tc-tiddlylink-external {
text-decoration: none;
color: #7f4bca;
}
.intro .logo img {
max-width: 300px;
margin: 0;
}
.intro h1 {
color: #483355;
font-weight: normal;
margin: 0;
font-size: 1.3em;
}
&lt;/style&gt;
</pre>
</div>
<div created="20200325085743210" modified="20200325132415755" tags="collection" title="Projects" tmap.id="e71593d0-a0fa-42c8-890e-9f935fd4a002">
<pre>We have worked with a range of [[Collaborators]].
Our projects include:
{{{ [tag[project]] }}}
We have given [[Talks]] on topics such as:
{{{ [tag[talk]] }}}</pre>
</div>
<div created="20160321210022634" modified="20160513142726355" orden="700" tags="[[TiddlyWiki, antes de empezar]] [[Trabajar con Tiddlers]]" title="Proteger tiddlers individuales con contraseña" tmap.id="b831b765-2ada-4b02-aa33-de18fb2020fc">
<pre>(Si lo que deseas es proteger todo TiddlyWiki con una única contraseña consulta [[Proteger TiddlyWiki con contraseña]])
Es posible encriptar tiddlers individuales con contraseña (una para cada tiddler) para ello hay que instalar el plugin: [[TW5-EncryptTiddlerPlugin|http://danielorodriguez.com/TW5-EncryptTiddlerPlugin/]]
Para hacer esto:
#Pulsa sobre el enlace anterior.
#Busca el tiddler ''Installation'' que aparece al abrir la web anterior.
#Arrastra el enlace que hay allí sobre tu TiddlyWiki y suéltalo.
#Guarda TiddlyWiki
#Recarga la página y aparecerá un candado al lado de cada tiddler.
#Pulsa el candado para encriptar o desencriptar un tiddler
</pre>
</div>
<div created="20210325135947402" modified="20210330235530423" tags="" title="proyecto reciclaje" tmap.id="6e68f0c9-ac36-4baa-b072-80dff9b469fd">
<pre>necesidades de almacenamiento,.
.. triturado.
!! Buzo Cordovi
presentar a traves del gobierno Centro Habana.
Reciclaje
materias primas,. reciclaje de emresa
materias primas ,. recicla de las casas
plastico postconsumo
y no al plastico industrial
el plastico que vine de las casas vien contaminado y materias primas no recoge el postconsumo.
!! Materias Primas
!!Japon
*les interesa residuos
*japon quiere financiar maquinas
!!Proyecto Espacios
vilma,. fabrica de muebles,.
residuo madera,.
adquirir maquinas para reciclar la madera,.
reciclaje de plasticos,.
traer a cna atres para la habana
!!CNA Atres
para minindustria,. desarrollo local,.
espacio,... gobierno de centrohabana,.
materia prima,. financiamiento,.
documento,. de equipamiento,.
</pre>
</div>
<div created="20210522155700191" creator="M0" modified="20210522161651664" modifier="M0" title="Proyectos del colectivo PRUEBAS" tmap.id="767f2a14-71e8-460f-8005-31b6eba5951d">
<pre></pre>
</div>
<div created="20210109184511864" modified="20210109184803703" tags="" title="Prueba de Markdown" tmap.id="8398c260-b199-4ab4-b6f5-e3e62716fb26" type="text/x-gfm">
<pre># Título
Esta es una prueba de escritura para Markdown
## Subtítulo
```
Código sin formato
```
```html
&lt;h1&gt;Código con formato&lt;/h1&gt;
```</pre>
</div>
<div created="20210103112645247" creator="Offray Luna" modified="20210109181321595" modifier="Offray Luna" tags="" title="Pruebas" tmap.id="35daa443-636a-4a8d-a30e-873bee2afaef">
<pre>Este es un [[tiddler|Tiddlers]] de pruebas.
Si desde acá vinculamos algunos tiddlers, esto quiere decir que en la parte inferior de ellos, deberían haber unos
//backlinks// (enlaces reversos) que se referieran a este tiddler, proveyéndonos así de enlaces internos de doble vía:
un tiddler contiene hiperenlaces a otros, como en el HTML tradicional, y a su vez éste sabe de todos los que le vinculan
como en la idea del hipertexto original.
Haz click en estos enlaces para verificarlo.
* [[Renombrar]]
Entra al enlace [[Renombrar]] y renómbra el tiddler de acuerdo a las instrucciones indicadas en el mismo.
La siguiente es una muestra de un icono de la interfaz gráfica embebido y reescalado dentro de la documentación, con lo
cual vemos esto &lt;&lt;_icon {{$:/core/images/new-button}} "link" "tooltip text"&gt;&gt; en lugar de esto {{$:/core/images/new-button}}.</pre>
</div>
<div bag="default" created="20210112221205605" modified="20210201212652356" revision="0" tags="" title="Readme" tmap.id="34e9b77f-69c7-4689-b34b-829bc7ccbf49" type="text/vnd.tiddlywiki">
<pre>\define tv-wikilink-template() https://projectify.wiki/demo.html#$uri_encoded$
! Projectify
Projectify is a project management app for [[TiddlyWiki|https://tiddlywiki.com]], inspired by products like [[Todoist|https://todoist.com]] and [[Basecamp|https://basecamp.com]].
[[TiddlyWiki|https://tiddlywiki.com]] is an excellent note-taking &amp; knowledge-base app with [[unique features|https://tiddlywiki.com/#TiddlyWiki]]. Projectify brings project management to ~TiddlyWiki, extending it to let you [[capture thoughts|$:/plugins/nico/projectify/doc/Inbox]], [[plan projects|$:/plugins/nico/projectify/doc/Projects]] and [[schedule tasks|$:/plugins/nico/projectify/doc/Schedule]].
Projectify is carefully crafted, with an intuitive interface that integrates seamlessy with the core of ~TiddlyWiki. [[Drag and drop |https://tiddlywiki.com/#Drag%20and%20Drop]] any tiddler into a project to add it as a todo, [[transclude|https://tiddlywiki.com/#Transclusion]] and [[link|https://tiddlywiki.com/#Linking%20in%20WikiText]] other tiddlers into projects or tasks.
For all changes in the latest {{$:/plugins/nico/projectify!!version}} release, see [[ChangeLog|$:/plugins/nico/projectify/changelog]].
!! Demo
A demo is available at [[projectify.wiki|https://projectify.wiki]].
!! Download
Download a pre-configured empty wiki:
&lt;a class="py-btn btn-primary download-link" href="https://projectify.wiki/empty.html" download="empty.html"&gt;
Get Projectify {{$:/core/images/save-button}}
&lt;/a&gt;
Alternatively, see [[Installation|$:/plugins/nico/projectify/doc/Installation]] for installation instructions in an existing wiki.
!! Documentation
* If you are new to ''~TiddlyWiki'', we strongly encourage you to read the [[Getting started|https://tiddlywiki.com/#GettingStarted]] documentation.
* The ''Projectify documentation'' is available [[online|$:/plugins/nico/projectify/doc/Help]] as well as locally when the plugin is installed.
!! Language packs
Projectify is currently available in English, Dutch, German, French, Spanish &amp; Simplified Chinese.
* For the French language pack, install [[$:/plugins/nico/projectify-fr-FR]].
* For the Dutch language pack, install [[$:/plugins/nico/projectify-nl-NL]].
* For the German language pack, install [[$:/plugins/nico/projectify-de-DE]].
* For the Spanish language pack, install [[$:/plugins/nico/projectify-es-ES]].
* For the Simplified Chinese language pack, install [[$:/plugins/nico/projectify-zh-Hans]].
!! Development setup
* Install [[Node.js|https://nodejs.org/en/]]
* In the root folder of the project run `npm install`
* To start the TiddlyWiki server, run `npm run serve`. The wiki is available at http://localhost:8080.
* To serve or build a specific language edition, refer to `package.json`
* To build HTML files for all editions, run `npm run build`
!! Contributors
Many thanks to the following people who have contributed to Projectify:
* [[@OdinJorna|https://github.com/OdinJorna]]
* [[@Kookma|https://github.com/kookma]]
* [[@Joebordes|https://github.com/joebordes]]
* [[@Silvyn|https://github.com/silvyn]]
* [[@HueLiu|https://github.com/HueLiu]]
* [[@gregorfischer|https://github.com/gregorfischer]]
</pre>
</div>
<div created="20210323160822708" modified="20210323160822711" tags="[[encargar tornillo con tornero en cuba]] todo" title="recoger y pagar" tmap.id="faf6491c-c6f9-4b61-ae6d-5f2614de0c8e">
<pre></pre>
</div>
<div created="20210714180523962" modified="20210714181552391" title="Registro de contribuciones" tmap.id="de630348-0bd6-445b-af9b-eb0d808bf1fd">
<pre>|Nombre|Tipo de contribucion|Descripcion|
| --- | --- | --- |
| --- | --- | --- |
| --- | --- | --- |
| --- | --- | --- |</pre>
</div>
<div created="20210103112740883" creator="Offray Luna" modified="20210109181321586" modifier="Offray Luna" tags="" title="Renombrar" tmap.id="d6647b34-e5b7-4343-b4e0-dbdeef5e6740">
<pre>Cambia el título de este tiddler arriba por otro.
Deberías ver cómo cambia en todos los que apuntan a este
(por ejemplo en el tiddler de [[pruebas|Pruebas]].
No más enlaces rotos en nuestro hipertexto! :-).</pre>
</div>
<div created="20210321104753727" modified="20210321111305175" title="Respuesta a la Covid 19" tmap.id="f4343569-dc5b-4369-b9f4-c5a43dd65a14" type="text/x-markdown">
<pre>&gt; Qué soluciones podemos tener de forma local, distribuida y abierta en Cuba, para dar respuesta a la pandemia del Covid-19.
## Protector facial
| | |
| - | - |
| [![Imagen de Proyecto](/proyectos/protectorcubavscovid.jpg)](https://copinchapedia.copincha.org/es/Proyectos/protectorcubavscovid) | [**Protector Cuba vs Covid**](https://copinchapedia.copincha.org/es/Proyectos/protectorcubavscovid) &lt;br&gt; &lt;br&gt; _Iniciado por: 3DprintCuba_ &lt;br&gt; &lt;br&gt; Protector facial hechos a partir de impresion 3D y acetatos |
| [![Imagen de Proyecto](/proyectos/2protectoresfacialesde1pepinoreciclado.jpg)](https://copinchapedia.copincha.org/es/Proyectos/2protectoresfacialesde1pepinoreciclado) | [**Protectores faciales reciclando pepinos**](https://copinchapedia.copincha.org/es/Proyectos/protector_facial_pet) &lt;br&gt; &lt;br&gt; _Iniciado por: Jorge Luis de la Fuente y Mical Romero_ &lt;br&gt; &lt;br&gt; Protectores faciales hechos a partir de botellas de plastico PET |
| [![imagen de Proyecto.jpg](/proyectos/protectorfacialdepomo.jpg)](https://copinchapedia.copincha.org/es/Proyectos/protectorfacialdepomo)| [**Protector facial de pomo**](https://copinchapedia.copincha.org/es/Proyectos/protectorfacialdepomo) &lt;br&gt; &lt;br&gt; _Iniciado por: Carmen Gómez Pozo_ &lt;br&gt; &lt;br&gt; Protector facial hecho a partir de botellas de plastico PET |
| [![Imagen de Proyecto](/proyectos/protectormecanicalg.jpg)](https://copinchapedia.copincha.org/es/Proyectos/protectormecanicalg) | [**Protector Mecánica LG**](https://copinchapedia.copincha.org/es/Proyectos/protectormecanicalg) &lt;br&gt; &lt;br&gt; _Iniciado por: Mecánica LG_ &lt;br&gt; &lt;br&gt; Protector facial hechos a partir de cortar acetatos |
| [![Imagen de Proyecto](/proyectos/caretaorigami.jpg)](https://copinchapedia.copincha.org/es/Proyectos/caretaorigami) | [**Careta origami**](https://copinchapedia.copincha.org/es/Proyectos/caretaorigami) &lt;br&gt; &lt;br&gt; _Iniciado por: Irán Tamayo Salcines_ &lt;br&gt; &lt;br&gt; Protector facial hechos a partir de cortar y doblar acetatos |
| [![Imagen de Proyecto](/proyectos/mascaradeacrilico.jpg)](https://copinchapedia.copincha.org/es/Proyectos/mascaradeacrilico) | [**Máscara de Acrílico**](https://copinchapedia.copincha.org/es/Proyectos/mascaradeacrilico) &lt;br&gt; &lt;br&gt; _Iniciado por: Angel Edel Pino Arocha y Yismani Carrigan_ &lt;br&gt; &lt;br&gt; Protector facial hechos a partir de cortar y doblar acrílico transparente |
&lt;br&gt;
## Mascarilla de Protección
| | |
| - | - |
| [![Imagen de Proyecto](/proyectos/mascarilladeproteccionsimbiosis1f2v-0320.jpeg)](https://copinchapedia.copincha.org/es/Proyectos/mascarilladeproteccionsimbiosis1f2v-0320) | [**Mascarilla de protección SIMBIOSIS 1F2V-0320**](https://copinchapedia.copincha.org/es/Proyectos/mascarilladeproteccionsimbiosis1f2v-0320) &lt;br&gt; &lt;br&gt; _Iniciado por: SIMBIOSIS_ &lt;br&gt; &lt;br&gt; Mascarilla de protección hecha con materiales que podemos encontrar en casa. |
&lt;br&gt;
## Caja aerosol
| | |
| - | - |
| [![Imagen de Proyecto](/proyectos/cajaaereosol.jpg)](https://copinchapedia.copincha.org/es/Proyectos/cajaaereosol) | [**Caja aerosol**](https://copinchapedia.copincha.org/es/Proyectos/cajaaereosol) &lt;br&gt; &lt;br&gt; _Iniciado por: Angel Edel Pino Arocha y Yismani Carrigan_ &lt;br&gt; &lt;br&gt; Caja aereosol hecha a partir de cortar y doblar acrílico transparente |</pre>
</div>
<div created="20190319171257843" description="RichLinks lets you display external links as &quot;objects&quot;." developer="Mat von Twaddle" keywords="empty" modified="20210309042707320" tags="starIt Links" title="Richlinks" tmap.id="73a8ee2e-7ec0-4aa8-8464-49e86051c5f1" url="http://richlinks.tiddlyspot.com/" wiki-name="Richlinks">
<pre></pre>
</div>
<div created="20210321111341795" modified="20210321111419651" tags="" title="Robotica educativa" tmap.id="8ace4af5-4552-420d-bbd0-656dc86ccf65" type="text/x-markdown">
<pre>&gt; ***¿Cómo contribuir a la educación de la robótica con recursos accesibles en Cuba?***
![Imagen de Encabezado](images/header.jpg)
Introducción al proyecto
Este espacio reúne las experiencias de proyectos de robotica educativa, poniendo especial atención en las soluciones que podemos replicar, adaptar y crear con recursos disponibles en Cuba. Pretendemos de esta forma que todos podamos impulsar más fácilmente el desarrollo de cualquier proyecto en este campo.
&lt;br&gt;
## Proyectos
| | |
| - | - |
| [![Imagen de proyecto](/proyectos/imagendeproyecto.jpg)](https://copinchapedia.copincha.org/es/Proyectos/proyecto1) | [**Nombre del proyecto**](https://copinchapedia.copincha.org/es/Proyectos/proyecto1) &lt;br&gt; &lt;br&gt; _Iniciado por: aaa_ &lt;br&gt; &lt;br&gt; Descripción. |
|[![Imagen de proyecto](/proyectos/imagendeproyecto.jpg)](https://copinchapedia.copincha.org/es/Proyectos/proyecto2) | [**Nombre del proyecto**](https://copinchapedia.copincha.org/es/Proyectos/proyecto2) &lt;br&gt; &lt;br&gt; _Iniciado por: bbb_ &lt;br&gt; &lt;br&gt; Descripción. |
## Recursos
### Repositorios
| | |
|-|-|
|[**GRM**](...)| Descripción |
## Participantes
| | |
|-|-|
|![imagen del contribuyente](/grupo-roboticamecatronica.jpg)| **Grupo de Robótica y Mecatrónica de la Cujae (GRM)** es un grupo abierto para debatir, aprender, enseñar, colaborar y desarrollar sobre robótica y mecatrónica, surgido como iniciativa de la Facultad de Automática de la Cujae para ampliar la formación universitaria de sus esrudiantes al tiempo que extendiende la labor educativa universitaria a la comunidad. |
## Salas de conversación
[**Copincha**](https://chat.copincha.org/channel/robotica)
</pre>
</div>
<div caption="!!!Seccion ARTE" category="documentación" created="20210917075544323" modified="20210917075954215" tags="[[Jardines Digitales de Bolsillo]] SubProject" title="Seccion ARTE" tmap.id="d725958e-e421-42e6-9a49-5645bf0e70e1">
<pre></pre>
</div>
<div created="20210917071331756" modified="20210917071350951" tags="SubProject [[Precious Plastic La Habana]]" title="Servidor pph.cu" tmap.id="0e9804f3-d4fb-48d5-83b6-3c7cb2733c21" type="text/vnd.tiddlywiki">
<pre></pre>
</div>
<div caption="Contenidos" created="20190122091411989" creator="M0" list="datatiddler cond-ops regexp-tutorial template saving pluginlibrary Links batch learning mywiki reading search syntax tools svg-image [[Conditional ViewTemplate]] Statistics [[Coding Procedure]]" modified="20210925205702433" modifier="M0" orden="01" tags="$:/tags/SideBar" title="sidebar/contenidos" tmap.id="74464b28-12b0-429b-8f88-cfda73291feb">
<pre>&lt;div class="tc-table-of-contents"&gt;
&lt;&lt;toc-selective-expandable 'Copincha/Sidebar' sort[orden] !tag[todo]&gt;&gt;
&lt;/div&gt;</pre>
</div>
<div caption="Encuentros" created="20210310031826840" creator="M0" modified="20210925205811243" modifier="M0" orden="02" tags="$:/tags/SideBar Copincha" title="sidebar/encuentros" tmap.id="9479f355-ad93-4ea8-b691-c425fe848ef0">
<pre>&lt;div class="tc-table-of-contents"&gt;
&lt;&lt;toc-selective-expandable 'sidebar/encuentros' sort[orden] !tag[todo]&gt;&gt;
&lt;/div&gt;</pre>
</div>
<div created="20210613160723759" modified="20210923180137957" tags="$:/themes/nico/notebook/tags/Sidebar" title="sidebar/footer" tmap.id="a953a531-dd6e-4591-830d-2c8493487f48">
<pre>&lt;center&gt;&lt;small&gt;{{Copinchapedia!!licencia-short}}
&lt;br&gt;&lt;/small&gt;
</pre>
</div>
<div caption="Mapa" created="20210917063259944" modified="20210923213131397" orden="01" tags="" title="sidebar/mapa" tmap.id="bb956615-3de9-48b7-92ac-c2c1a60a14c6">
<pre>{{$:/plugins/felixhayashi/tiddlymap/hook/editor}}</pre>
</div>
<div caption="Papelera" created="20190613131234955" modified="20210925211818177" orden="05" tags="$:/tags/SideBar" title="sidebar/papelera" tmap.id="42db41aa-cd7a-4375-bd53-1459da5a7546" type="text/vnd.tiddlywiki">
<pre>{{$:/plugins/kookma/trashbin/ui/sidebar}}</pre>
</div>
<div caption="{{$:/language/SideBar/Recent/Caption}}" created="20210925211043485" modified="20210925211847525" orden="04" tags="$:/tags/SideBar" title="sidebar/recientes" tmap.id="e009314f-9727-44c8-af21-ce56a40f87de">
<pre>&lt;$macrocall $name="timeline" format={{$:/language/RecentChanges/DateFormat}}/&gt;
</pre>
</div>
<div caption="Contenidos" created="20210923211742884" modified="20210925212028830" tags="" title="sidebar/tab1" tmap.id="da7bb02f-43ef-46a8-b372-decd2859d1e9">
<pre>&lt;div class="tc-sidebar-lists tc-sidebar-tabs"&gt;
&lt;$list filter="[all[shadows+tiddlers]tag[$:/tags/SideBar]!has[draft.of]sort[orden]]" variable="currentTiddler"&gt;
&lt;h3&gt;{{!!caption}}&lt;/h3&gt;
&lt;$transclude/&gt;
&lt;/$list&gt;
&lt;/div&gt;</pre>
</div>
<div caption="Mapa" created="20210923211811895" modified="20210923213308853" tags="" title="sidebar/tab2" tmap.id="ce805505-e551-476b-95d7-c2818ffe5ddc">
<pre> {{sidebar/mapa}} </pre>
</div>
<div color="#a38db1" created="20210714182758705" modified="20210714182912156" tags="$:/plugins/nico/projectify/tags/Category" title="software" tmap.id="0bfb45f0-0ddc-4d07-a8b5-b4bdbddbdc0d">
<pre></pre>
</div>
<div created="20210104172652015" creator="Offray Luna" modified="20210109174905282" modifier="Offray Luna" tags="traducciones" title="Tiddlers" tmap.id="777954f6-f9e3-408d-8b6d-3f0f53393072">
<pre>Si estás usando TiddlyWiki, de seguro ya sabes esto, pero no está de más una introducción a este concepto
ubicuo y potente en TiddlyWiki, en caso de que no lo conozcas o un repaso en español, en caso de que sí,
pues la intensión es que este Tiddler en particular se convierta en un elemento que podemos colocar en
varios wikis personales.
Un tiddler es la unidad minima de información en TiddlyWiki y una de sus aportaciones más ingeniosas,
pues en este wiki se tienen unidades de información más pequeñas que las habituales páginas.
Podemos pensar en un Tiddler como una ficha de anotaciones (de esas que en papel/carton de 9 cm por 15 cm),
pero potenciada por el hipertexto.
Allí escribimos la prosa, los datos y el código que alimentan nuestro wiki personal y debido a su caracter
minimalista y diverso pueden recombinarse de distintas maneras: enlazándolos entre sí, transcluyendo trozos de un
tiddler en otro, agregando funcionalidad específica a medida, arrastrando y soltando plugins entre distintos
wikis, entre otras.
Reciben su nombre [[por la palabra británica asociada a pez pequeño|https://tiddlywiki.com/#Tiddlers]]:
&lt;&lt;&lt;
Un "tiddler es una palabra británica informal que significa pez pequeño [...].
Otros sistemas tienen conceptos análogos con nombres genéricos como "items", "entradas", "entidades", "nodos"
o "registros".
TiddlyWiki asume la postura de que es mejor ser confúsamente distinto que confúsamente genéricio.
&lt;&lt;&lt;
</pre>
</div>
<div created="20210725025902952" modified="20210725025902952" title="TiddlyMap!!" tmap.id="80b14957-7be3-4aac-b46e-bf28c4a86d9a">
<pre></pre>
</div>
<div category="máquina" created="20210323135441964" modified="20210917071737161" tags="[[Archivo informal]] SubProject" title="Trapiche" tmap.id="63c43d11-7e21-4e28-b761-78471b29b9b5">
<pre></pre>
</div>
<div created="20210225185533480" modified="20210917072233858" tags="SubProject [[Máquinas Precious Plastic]] todo" title="Trituradora Precious Plastic" tmap.id="2f3d5f5c-b39f-4052-9a9f-694091ad4a9e" type="text/vnd.tiddlywiki">
<pre>! Descripción
Corta artículos de plástico en pequeñas partículas listas para ser convertidas en cosas nuevas por otras máquinas. El plástico triturado puede ser de múltiples tamaños y colores para aumentar su valor.
&lt;center&gt;
{{maquina-trituradora-precious-plastic.png}}
&lt;/center&gt;
! Listado de materiales
| !Elemento | !Descripción | !Cantidad | !Precio (CUP) | !Total (CUP) | !Conseguido |
| Cuerpo de cuchillas | | 1 | 4 790 | 4 790 | ✓ |
| Barra hexagonal | 32 cm, acero 27M | 1 | 1 750 | 1 750 | ✓ |
| Soporte | Perfil L, 30 x 30 x 3 mm, acero | 4 | | | ✓ |
| Criba | 150 x 180 x 1.5 mm, metal | 1 | | | ✓ |
| Rodamiento | 6204 | 2 | 150 | 300 | ✓ |
| Tolva | Grosor 3 mm, acero | 1 | | | ✓ |
| Base | | 1 | | | ✓ |
| Correa | | 1 | | | ✓ |
| Motor | 2 HP, 1600 - 1700 rpm | 1 | 750 | 750 | ✓ |
| Reductor | 1 / 80 - 130 | 1 | 1 000 | 1 000 | ✓ |
| Encendedor de alimentación | | 1 | 75 | 75 | ✓ |
| Indicador LED | | 1 | 75 | 75 | ✓ |
| Cable de alimentación | 5 000 mm | 1 | 50 | 250 | ✓ |
&lt;center&gt;
''Total:'' 8 990 CUP
&lt;br&gt;
[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/proyectos-pph-trituradora-4.webp]] [img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/proyectos-pph-trituradora-3.webp]]
[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/proyectos-pph-trituradora-2.webp]]
[img [/home/m0/Documents/jardines digitales/Repo/micropedias/copinchapedia/copinchapedia-medios/proyectos-pph-trituradora-1.webp]]</pre>
</div>
<div created="20210612234724272" modified="20210727132851361" tags="SubProject [[Contribuir en Copinchapedia]] Copinchapedia" title="Tutorial Copinchapedia" tmap.id="935e8611-e519-4a78-bc8b-2a087262e5c9">
<pre></pre>
</div>
<div created="20210613151815862" modified="20210714055212453" tags="Copinchapedia todo" title="Unificar Proyecto contenidos y proyectos del gestor" tmap.id="3cf17546-bea2-4870-8774-d8d1df050e32">
<pre></pre>
</div>
<div title="Untitled" tmap.id="b84b9484-0644-45d5-a71d-07dab7744206">
<pre>https://thediveo.github.io/TW5FontAwesome/output/fontawesome.tid</pre>
</div>
<div caption="Cubacreativa" color="#D5B7EA" created="20210318180836676" image="proyecto-indefinido.png" link="Cubacreativa" modified="20210318194715283" tags="[[Lista de proyectos]]" title="ventana - proyecto - Cubacreativa" tmap.id="0c25b928-e6e7-4495-8389-fa057d0af0c3">
<pre></pre>
</div>
<div created="20210323123548323" modified="20210720032258688" tags="example [[lista de piezas]] todo" title="ventana de pieza" tmap.id="6fb0faa8-4b89-49a6-9e87-f847a09fe2d1">
<pre>[[pieza]]
[[pieza-cantidad]]
[[pieza - total]] calcular con el complemento [[formula]] (multiplicar [[pieza - precio]] x [[pieza - cantidad]])
</pre>
</div>
<div caption="Cuba con Impresoras 3D" color="#D5B7EA" created="20210318182125777" image="proyecto-indefinido.png" link="Cuba con Impresoras 3D" modified="20210318194939154" tags="[[Lista de proyectos]]" title="ventana-proyecto-Cuba con Impresoras 3D" tmap.id="32a824f2-e558-4725-9641-76beb2c9c753">
<pre></pre>
</div>
<div caption="Plástico Leal" color="#D5B7EA" created="20210318181751797" image="proyecto-indefinido.png" link="Plástico Leal" modified="20210318195037042" tags="[[Lista de proyectos]]" title="ventana-proyecto-Plástico Leal" tmap.id="d04d5349-6aad-4e10-a972-88086f004ff9">
<pre></pre>
</div>
<div caption="Precious Plastic La Habana" color="#d5b7ea" created="20210318183505348" image="logo-precious-plastic-la-habana.jpg" link="Precious Plastic La Habana" modified="20210318200958364" tags="[[Lista de proyectos]]" title="ventana-proyecto-Precious Plastic La Habana" tmap.id="ba9c8fda-4f35-4411-9e10-25c252490731">
<pre></pre>
</div>
<div created="20210121160735274" creator="M0" modified="20210318152147796" modifier="M0" tags="[[Plástico Leal - La Conexión]]" title="Vestuario de gigantería con plástico reciclado" tmap.id="687be9f0-d247-4278-bf87-2957bf18c958">
<pre></pre>
</div>
<div bag="default" created="20200811101544024" hide-body="yes" modified="20200815042033692" revision="0" tags="" title="View demo" tmap.id="59ead65c-83d7-4b08-9e1e-6f1a01f7b363" type="text/vnd.tiddlywiki" view-typewriter="true">
<pre>''This is a demo of using the same editor in the view template. Go ahead and click on this text and  edit it.''
//The downside of this approach is that your wikitext and html will never be rendered, and currently there is no way to use links.//
Oh, yes. Harmless is just the word: that's why I like it! Doesn't kill, doesn't wound, doesn't maim. But I'll tell you what it does do: it is very good at opening doors! Please, when Torchwood comes to write my complete history, don't tell people I travelled through time and space with her mother! There was a war. A Time War. ''The Last Great Time War''. My people fought a race called the __Daleks__, for the sake of all creation. And they lost. We lost. Everyone lost. They're all gone now. My family. My friends. Even that sky.&lt;br&gt;
Geronimo! You are the only mystery worth solving. Yes, well, it's a brilliant noise. I love that noise. Overconfidence, this, and a small screwdriver. Im absolutely sorted. I know. Dinosaurs! On a spaceship!
It's a fez. I wear a fez now. ''[[Fezzes|Demo]]'' are cool. ''Bow ties are cool''.
Father Christmas. Santa Claus. Or, as Ive always known him, Jeff. I once spent a hell of a long time trying to get a gobby Australian to Heathrow airport. Please tell me I didn't get old. Anything but old. I was young! Oh... is he grey?&lt;br&gt;
* Don't you think she looks tired? You can spend the rest of your life with me, but I can't spend the rest of mine with you.
* I have to live on. Alone. That's the //curse of the Time Lords//.
* Allons-y! You need to get yourself a better dictionary. When you do, look up 'genocide'. You'll find a little picture of me there, and the caption'll read 'Over my dead body'.
* There's something else I've always wanted to say: Allons-y, Alonso! Blimey, trying to make an Ood laugh... Yeah? Well I'm the Lord of Time.</pre>
</div>
</div>
<!--~~ Library modules ~~-->
<div id="libraryModules" style="display:none;">
<script data-tiddler-library="yes" data-tiddler-title="$:/library/sjcl.js" data-tiddler-type="application/javascript" type="text/javascript">"use strict";var sjcl={cipher:{},hash:{},keyexchange:{},mode:{},misc:{},codec:{},exception:{corrupt:function(a){this.toString=function(){return"CORRUPT: "+this.message};this.message=a},invalid:function(a){this.toString=function(){return"INVALID: "+this.message};this.message=a},bug:function(a){this.toString=function(){return"BUG: "+this.message};this.message=a},notReady:function(a){this.toString=function(){return"NOT READY: "+this.message};this.message=a}}};
sjcl.cipher.aes=function(a){this.s[0][0][0]||this.O();var b,c,d,e,f=this.s[0][4],g=this.s[1];b=a.length;var h=1;if(4!==b&&6!==b&&8!==b)throw new sjcl.exception.invalid("invalid aes key size");this.b=[d=a.slice(0),e=[]];for(a=b;a<4*b+28;a++){c=d[a-1];if(0===a%b||8===b&&4===a%b)c=f[c>>>24]<<24^f[c>>16&255]<<16^f[c>>8&255]<<8^f[c&255],0===a%b&&(c=c<<8^c>>>24^h<<24,h=h<<1^283*(h>>7));d[a]=d[a-b]^c}for(b=0;a;b++,a--)c=d[b&3?a:a-4],e[b]=4>=a||4>b?c:g[0][f[c>>>24]]^g[1][f[c>>16&255]]^g[2][f[c>>8&255]]^g[3][f[c&
255]]};
sjcl.cipher.aes.prototype={encrypt:function(a){return t(this,a,0)},decrypt:function(a){return t(this,a,1)},s:[[[],[],[],[],[]],[[],[],[],[],[]]],O:function(){var a=this.s[0],b=this.s[1],c=a[4],d=b[4],e,f,g,h=[],k=[],l,n,m,p;for(e=0;0x100>e;e++)k[(h[e]=e<<1^283*(e>>7))^e]=e;for(f=g=0;!c[f];f^=l||1,g=k[g]||1)for(m=g^g<<1^g<<2^g<<3^g<<4,m=m>>8^m&255^99,c[f]=m,d[m]=f,n=h[e=h[l=h[f]]],p=0x1010101*n^0x10001*e^0x101*l^0x1010100*f,n=0x101*h[m]^0x1010100*m,e=0;4>e;e++)a[e][f]=n=n<<24^n>>>8,b[e][m]=p=p<<24^p>>>8;for(e=
0;5>e;e++)a[e]=a[e].slice(0),b[e]=b[e].slice(0)}};
function t(a,b,c){if(4!==b.length)throw new sjcl.exception.invalid("invalid aes block size");var d=a.b[c],e=b[0]^d[0],f=b[c?3:1]^d[1],g=b[2]^d[2];b=b[c?1:3]^d[3];var h,k,l,n=d.length/4-2,m,p=4,r=[0,0,0,0];h=a.s[c];a=h[0];var q=h[1],v=h[2],w=h[3],x=h[4];for(m=0;m<n;m++)h=a[e>>>24]^q[f>>16&255]^v[g>>8&255]^w[b&255]^d[p],k=a[f>>>24]^q[g>>16&255]^v[b>>8&255]^w[e&255]^d[p+1],l=a[g>>>24]^q[b>>16&255]^v[e>>8&255]^w[f&255]^d[p+2],b=a[b>>>24]^q[e>>16&255]^v[f>>8&255]^w[g&255]^d[p+3],p+=4,e=h,f=k,g=l;for(m=
0;4>m;m++)r[c?3&-m:m]=x[e>>>24]<<24^x[f>>16&255]<<16^x[g>>8&255]<<8^x[b&255]^d[p++],h=e,e=f,f=g,g=b,b=h;return r}
sjcl.bitArray={bitSlice:function(a,b,c){a=sjcl.bitArray.$(a.slice(b/32),32-(b&31)).slice(1);return void 0===c?a:sjcl.bitArray.clamp(a,c-b)},extract:function(a,b,c){var d=Math.floor(-b-c&31);return((b+c-1^b)&-32?a[b/32|0]<<32-d^a[b/32+1|0]>>>d:a[b/32|0]>>>d)&(1<<c)-1},concat:function(a,b){if(0===a.length||0===b.length)return a.concat(b);var c=a[a.length-1],d=sjcl.bitArray.getPartial(c);return 32===d?a.concat(b):sjcl.bitArray.$(b,d,c|0,a.slice(0,a.length-1))},bitLength:function(a){var b=a.length;return 0===
b?0:32*(b-1)+sjcl.bitArray.getPartial(a[b-1])},clamp:function(a,b){if(32*a.length<b)return a;a=a.slice(0,Math.ceil(b/32));var c=a.length;b=b&31;0<c&&b&&(a[c-1]=sjcl.bitArray.partial(b,a[c-1]&2147483648>>b-1,1));return a},partial:function(a,b,c){return 32===a?b:(c?b|0:b<<32-a)+0x10000000000*a},getPartial:function(a){return Math.round(a/0x10000000000)||32},equal:function(a,b){if(sjcl.bitArray.bitLength(a)!==sjcl.bitArray.bitLength(b))return!1;var c=0,d;for(d=0;d<a.length;d++)c|=a[d]^b[d];return 0===
c},$:function(a,b,c,d){var e;e=0;for(void 0===d&&(d=[]);32<=b;b-=32)d.push(c),c=0;if(0===b)return d.concat(a);for(e=0;e<a.length;e++)d.push(c|a[e]>>>b),c=a[e]<<32-b;e=a.length?a[a.length-1]:0;a=sjcl.bitArray.getPartial(e);d.push(sjcl.bitArray.partial(b+a&31,32<b+a?c:d.pop(),1));return d},i:function(a,b){return[a[0]^b[0],a[1]^b[1],a[2]^b[2],a[3]^b[3]]},byteswapM:function(a){var b,c;for(b=0;b<a.length;++b)c=a[b],a[b]=c>>>24|c>>>8&0xff00|(c&0xff00)<<8|c<<24;return a}};
sjcl.codec.utf8String={fromBits:function(a){var b="",c=sjcl.bitArray.bitLength(a),d,e;for(d=0;d<c/8;d++)0===(d&3)&&(e=a[d/4]),b+=String.fromCharCode(e>>>8>>>8>>>8),e<<=8;return decodeURIComponent(escape(b))},toBits:function(a){a=unescape(encodeURIComponent(a));var b=[],c,d=0;for(c=0;c<a.length;c++)d=d<<8|a.charCodeAt(c),3===(c&3)&&(b.push(d),d=0);c&3&&b.push(sjcl.bitArray.partial(8*(c&3),d));return b}};
sjcl.codec.hex={fromBits:function(a){var b="",c;for(c=0;c<a.length;c++)b+=((a[c]|0)+0xf00000000000).toString(16).substr(4);return b.substr(0,sjcl.bitArray.bitLength(a)/4)},toBits:function(a){var b,c=[],d;a=a.replace(/\s|0x/g,"");d=a.length;a=a+"00000000";for(b=0;b<a.length;b+=8)c.push(parseInt(a.substr(b,8),16)^0);return sjcl.bitArray.clamp(c,4*d)}};
sjcl.codec.base32={B:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",X:"0123456789ABCDEFGHIJKLMNOPQRSTUV",BITS:32,BASE:5,REMAINING:27,fromBits:function(a,b,c){var d=sjcl.codec.base32.BASE,e=sjcl.codec.base32.REMAINING,f="",g=0,h=sjcl.codec.base32.B,k=0,l=sjcl.bitArray.bitLength(a);c&&(h=sjcl.codec.base32.X);for(c=0;f.length*d<l;)f+=h.charAt((k^a[c]>>>g)>>>e),g<d?(k=a[c]<<d-g,g+=e,c++):(k<<=d,g-=d);for(;f.length&7&&!b;)f+="=";return f},toBits:function(a,b){a=a.replace(/\s|=/g,"").toUpperCase();var c=sjcl.codec.base32.BITS,
d=sjcl.codec.base32.BASE,e=sjcl.codec.base32.REMAINING,f=[],g,h=0,k=sjcl.codec.base32.B,l=0,n,m="base32";b&&(k=sjcl.codec.base32.X,m="base32hex");for(g=0;g<a.length;g++){n=k.indexOf(a.charAt(g));if(0>n){if(!b)try{return sjcl.codec.base32hex.toBits(a)}catch(p){}throw new sjcl.exception.invalid("this isn't "+m+"!");}h>e?(h-=e,f.push(l^n>>>h),l=n<<c-h):(h+=d,l^=n<<c-h)}h&56&&f.push(sjcl.bitArray.partial(h&56,l,1));return f}};
sjcl.codec.base32hex={fromBits:function(a,b){return sjcl.codec.base32.fromBits(a,b,1)},toBits:function(a){return sjcl.codec.base32.toBits(a,1)}};
sjcl.codec.base64={B:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",fromBits:function(a,b,c){var d="",e=0,f=sjcl.codec.base64.B,g=0,h=sjcl.bitArray.bitLength(a);c&&(f=f.substr(0,62)+"-_");for(c=0;6*d.length<h;)d+=f.charAt((g^a[c]>>>e)>>>26),6>e?(g=a[c]<<6-e,e+=26,c++):(g<<=6,e-=6);for(;d.length&3&&!b;)d+="=";return d},toBits:function(a,b){a=a.replace(/\s|=/g,"");var c=[],d,e=0,f=sjcl.codec.base64.B,g=0,h;b&&(f=f.substr(0,62)+"-_");for(d=0;d<a.length;d++){h=f.indexOf(a.charAt(d));
if(0>h)throw new sjcl.exception.invalid("this isn't base64!");26<e?(e-=26,c.push(g^h>>>e),g=h<<32-e):(e+=6,g^=h<<32-e)}e&56&&c.push(sjcl.bitArray.partial(e&56,g,1));return c}};sjcl.codec.base64url={fromBits:function(a){return sjcl.codec.base64.fromBits(a,1,1)},toBits:function(a){return sjcl.codec.base64.toBits(a,1)}};sjcl.hash.sha256=function(a){this.b[0]||this.O();a?(this.F=a.F.slice(0),this.A=a.A.slice(0),this.l=a.l):this.reset()};sjcl.hash.sha256.hash=function(a){return(new sjcl.hash.sha256).update(a).finalize()};
sjcl.hash.sha256.prototype={blockSize:512,reset:function(){this.F=this.Y.slice(0);this.A=[];this.l=0;return this},update:function(a){"string"===typeof a&&(a=sjcl.codec.utf8String.toBits(a));var b,c=this.A=sjcl.bitArray.concat(this.A,a);b=this.l;a=this.l=b+sjcl.bitArray.bitLength(a);if(0x1fffffffffffff<a)throw new sjcl.exception.invalid("Cannot hash more than 2^53 - 1 bits");if("undefined"!==typeof Uint32Array){var d=new Uint32Array(c),e=0;for(b=512+b-(512+b&0x1ff);b<=a;b+=512)u(this,d.subarray(16*e,
16*(e+1))),e+=1;c.splice(0,16*e)}else for(b=512+b-(512+b&0x1ff);b<=a;b+=512)u(this,c.splice(0,16));return this},finalize:function(){var a,b=this.A,c=this.F,b=sjcl.bitArray.concat(b,[sjcl.bitArray.partial(1,1)]);for(a=b.length+2;a&15;a++)b.push(0);b.push(Math.floor(this.l/0x100000000));for(b.push(this.l|0);b.length;)u(this,b.splice(0,16));this.reset();return c},Y:[],b:[],O:function(){function a(a){return 0x100000000*(a-Math.floor(a))|0}for(var b=0,c=2,d,e;64>b;c++){e=!0;for(d=2;d*d<=c;d++)if(0===c%d){e=
!1;break}e&&(8>b&&(this.Y[b]=a(Math.pow(c,.5))),this.b[b]=a(Math.pow(c,1/3)),b++)}}};
function u(a,b){var c,d,e,f=a.F,g=a.b,h=f[0],k=f[1],l=f[2],n=f[3],m=f[4],p=f[5],r=f[6],q=f[7];for(c=0;64>c;c++)16>c?d=b[c]:(d=b[c+1&15],e=b[c+14&15],d=b[c&15]=(d>>>7^d>>>18^d>>>3^d<<25^d<<14)+(e>>>17^e>>>19^e>>>10^e<<15^e<<13)+b[c&15]+b[c+9&15]|0),d=d+q+(m>>>6^m>>>11^m>>>25^m<<26^m<<21^m<<7)+(r^m&(p^r))+g[c],q=r,r=p,p=m,m=n+d|0,n=l,l=k,k=h,h=d+(k&l^n&(k^l))+(k>>>2^k>>>13^k>>>22^k<<30^k<<19^k<<10)|0;f[0]=f[0]+h|0;f[1]=f[1]+k|0;f[2]=f[2]+l|0;f[3]=f[3]+n|0;f[4]=f[4]+m|0;f[5]=f[5]+p|0;f[6]=f[6]+r|0;f[7]=
f[7]+q|0}
sjcl.mode.ccm={name:"ccm",G:[],listenProgress:function(a){sjcl.mode.ccm.G.push(a)},unListenProgress:function(a){a=sjcl.mode.ccm.G.indexOf(a);-1<a&&sjcl.mode.ccm.G.splice(a,1)},fa:function(a){var b=sjcl.mode.ccm.G.slice(),c;for(c=0;c<b.length;c+=1)b[c](a)},encrypt:function(a,b,c,d,e){var f,g=b.slice(0),h=sjcl.bitArray,k=h.bitLength(c)/8,l=h.bitLength(g)/8;e=e||64;d=d||[];if(7>k)throw new sjcl.exception.invalid("ccm: iv must be at least 7 bytes");for(f=2;4>f&&l>>>8*f;f++);f<15-k&&(f=15-k);c=h.clamp(c,
8*(15-f));b=sjcl.mode.ccm.V(a,b,c,d,e,f);g=sjcl.mode.ccm.C(a,g,c,b,e,f);return h.concat(g.data,g.tag)},decrypt:function(a,b,c,d,e){e=e||64;d=d||[];var f=sjcl.bitArray,g=f.bitLength(c)/8,h=f.bitLength(b),k=f.clamp(b,h-e),l=f.bitSlice(b,h-e),h=(h-e)/8;if(7>g)throw new sjcl.exception.invalid("ccm: iv must be at least 7 bytes");for(b=2;4>b&&h>>>8*b;b++);b<15-g&&(b=15-g);c=f.clamp(c,8*(15-b));k=sjcl.mode.ccm.C(a,k,c,l,e,b);a=sjcl.mode.ccm.V(a,k.data,c,d,e,b);if(!f.equal(k.tag,a))throw new sjcl.exception.corrupt("ccm: tag doesn't match");
return k.data},na:function(a,b,c,d,e,f){var g=[],h=sjcl.bitArray,k=h.i;d=[h.partial(8,(b.length?64:0)|d-2<<2|f-1)];d=h.concat(d,c);d[3]|=e;d=a.encrypt(d);if(b.length)for(c=h.bitLength(b)/8,65279>=c?g=[h.partial(16,c)]:0xffffffff>=c&&(g=h.concat([h.partial(16,65534)],[c])),g=h.concat(g,b),b=0;b<g.length;b+=4)d=a.encrypt(k(d,g.slice(b,b+4).concat([0,0,0])));return d},V:function(a,b,c,d,e,f){var g=sjcl.bitArray,h=g.i;e/=8;if(e%2||4>e||16<e)throw new sjcl.exception.invalid("ccm: invalid tag length");
if(0xffffffff<d.length||0xffffffff<b.length)throw new sjcl.exception.bug("ccm: can't deal with 4GiB or more data");c=sjcl.mode.ccm.na(a,d,c,e,g.bitLength(b)/8,f);for(d=0;d<b.length;d+=4)c=a.encrypt(h(c,b.slice(d,d+4).concat([0,0,0])));return g.clamp(c,8*e)},C:function(a,b,c,d,e,f){var g,h=sjcl.bitArray;g=h.i;var k=b.length,l=h.bitLength(b),n=k/50,m=n;c=h.concat([h.partial(8,f-1)],c).concat([0,0,0]).slice(0,4);d=h.bitSlice(g(d,a.encrypt(c)),0,e);if(!k)return{tag:d,data:[]};for(g=0;g<k;g+=4)g>n&&(sjcl.mode.ccm.fa(g/
k),n+=m),c[3]++,e=a.encrypt(c),b[g]^=e[0],b[g+1]^=e[1],b[g+2]^=e[2],b[g+3]^=e[3];return{tag:d,data:h.clamp(b,l)}}};
sjcl.mode.ocb2={name:"ocb2",encrypt:function(a,b,c,d,e,f){if(128!==sjcl.bitArray.bitLength(c))throw new sjcl.exception.invalid("ocb iv must be 128 bits");var g,h=sjcl.mode.ocb2.S,k=sjcl.bitArray,l=k.i,n=[0,0,0,0];c=h(a.encrypt(c));var m,p=[];d=d||[];e=e||64;for(g=0;g+4<b.length;g+=4)m=b.slice(g,g+4),n=l(n,m),p=p.concat(l(c,a.encrypt(l(c,m)))),c=h(c);m=b.slice(g);b=k.bitLength(m);g=a.encrypt(l(c,[0,0,0,b]));m=k.clamp(l(m.concat([0,0,0]),g),b);n=l(n,l(m.concat([0,0,0]),g));n=a.encrypt(l(n,l(c,h(c))));
d.length&&(n=l(n,f?d:sjcl.mode.ocb2.pmac(a,d)));return p.concat(k.concat(m,k.clamp(n,e)))},decrypt:function(a,b,c,d,e,f){if(128!==sjcl.bitArray.bitLength(c))throw new sjcl.exception.invalid("ocb iv must be 128 bits");e=e||64;var g=sjcl.mode.ocb2.S,h=sjcl.bitArray,k=h.i,l=[0,0,0,0],n=g(a.encrypt(c)),m,p,r=sjcl.bitArray.bitLength(b)-e,q=[];d=d||[];for(c=0;c+4<r/32;c+=4)m=k(n,a.decrypt(k(n,b.slice(c,c+4)))),l=k(l,m),q=q.concat(m),n=g(n);p=r-32*c;m=a.encrypt(k(n,[0,0,0,p]));m=k(m,h.clamp(b.slice(c),p).concat([0,
0,0]));l=k(l,m);l=a.encrypt(k(l,k(n,g(n))));d.length&&(l=k(l,f?d:sjcl.mode.ocb2.pmac(a,d)));if(!h.equal(h.clamp(l,e),h.bitSlice(b,r)))throw new sjcl.exception.corrupt("ocb: tag doesn't match");return q.concat(h.clamp(m,p))},pmac:function(a,b){var c,d=sjcl.mode.ocb2.S,e=sjcl.bitArray,f=e.i,g=[0,0,0,0],h=a.encrypt([0,0,0,0]),h=f(h,d(d(h)));for(c=0;c+4<b.length;c+=4)h=d(h),g=f(g,a.encrypt(f(h,b.slice(c,c+4))));c=b.slice(c);128>e.bitLength(c)&&(h=f(h,d(h)),c=e.concat(c,[-2147483648,0,0,0]));g=f(g,c);
return a.encrypt(f(d(f(h,d(h))),g))},S:function(a){return[a[0]<<1^a[1]>>>31,a[1]<<1^a[2]>>>31,a[2]<<1^a[3]>>>31,a[3]<<1^135*(a[0]>>>31)]}};
sjcl.mode.gcm={name:"gcm",encrypt:function(a,b,c,d,e){var f=b.slice(0);b=sjcl.bitArray;d=d||[];a=sjcl.mode.gcm.C(!0,a,f,d,c,e||128);return b.concat(a.data,a.tag)},decrypt:function(a,b,c,d,e){var f=b.slice(0),g=sjcl.bitArray,h=g.bitLength(f);e=e||128;d=d||[];e<=h?(b=g.bitSlice(f,h-e),f=g.bitSlice(f,0,h-e)):(b=f,f=[]);a=sjcl.mode.gcm.C(!1,a,f,d,c,e);if(!g.equal(a.tag,b))throw new sjcl.exception.corrupt("gcm: tag doesn't match");return a.data},ka:function(a,b){var c,d,e,f,g,h=sjcl.bitArray.i;e=[0,0,
0,0];f=b.slice(0);for(c=0;128>c;c++){(d=0!==(a[Math.floor(c/32)]&1<<31-c%32))&&(e=h(e,f));g=0!==(f[3]&1);for(d=3;0<d;d--)f[d]=f[d]>>>1|(f[d-1]&1)<<31;f[0]>>>=1;g&&(f[0]^=-0x1f000000)}return e},j:function(a,b,c){var d,e=c.length;b=b.slice(0);for(d=0;d<e;d+=4)b[0]^=0xffffffff&c[d],b[1]^=0xffffffff&c[d+1],b[2]^=0xffffffff&c[d+2],b[3]^=0xffffffff&c[d+3],b=sjcl.mode.gcm.ka(b,a);return b},C:function(a,b,c,d,e,f){var g,h,k,l,n,m,p,r,q=sjcl.bitArray;m=c.length;p=q.bitLength(c);r=q.bitLength(d);h=q.bitLength(e);
g=b.encrypt([0,0,0,0]);96===h?(e=e.slice(0),e=q.concat(e,[1])):(e=sjcl.mode.gcm.j(g,[0,0,0,0],e),e=sjcl.mode.gcm.j(g,e,[0,0,Math.floor(h/0x100000000),h&0xffffffff]));h=sjcl.mode.gcm.j(g,[0,0,0,0],d);n=e.slice(0);d=h.slice(0);a||(d=sjcl.mode.gcm.j(g,h,c));for(l=0;l<m;l+=4)n[3]++,k=b.encrypt(n),c[l]^=k[0],c[l+1]^=k[1],c[l+2]^=k[2],c[l+3]^=k[3];c=q.clamp(c,p);a&&(d=sjcl.mode.gcm.j(g,h,c));a=[Math.floor(r/0x100000000),r&0xffffffff,Math.floor(p/0x100000000),p&0xffffffff];d=sjcl.mode.gcm.j(g,d,a);k=b.encrypt(e);
d[0]^=k[0];d[1]^=k[1];d[2]^=k[2];d[3]^=k[3];return{tag:q.bitSlice(d,0,f),data:c}}};sjcl.misc.hmac=function(a,b){this.W=b=b||sjcl.hash.sha256;var c=[[],[]],d,e=b.prototype.blockSize/32;this.w=[new b,new b];a.length>e&&(a=b.hash(a));for(d=0;d<e;d++)c[0][d]=a[d]^909522486,c[1][d]=a[d]^1549556828;this.w[0].update(c[0]);this.w[1].update(c[1]);this.R=new b(this.w[0])};
sjcl.misc.hmac.prototype.encrypt=sjcl.misc.hmac.prototype.mac=function(a){if(this.aa)throw new sjcl.exception.invalid("encrypt on already updated hmac called!");this.update(a);return this.digest(a)};sjcl.misc.hmac.prototype.reset=function(){this.R=new this.W(this.w[0]);this.aa=!1};sjcl.misc.hmac.prototype.update=function(a){this.aa=!0;this.R.update(a)};sjcl.misc.hmac.prototype.digest=function(){var a=this.R.finalize(),a=(new this.W(this.w[1])).update(a).finalize();this.reset();return a};
sjcl.misc.pbkdf2=function(a,b,c,d,e){c=c||1E4;if(0>d||0>c)throw new sjcl.exception.invalid("invalid params to pbkdf2");"string"===typeof a&&(a=sjcl.codec.utf8String.toBits(a));"string"===typeof b&&(b=sjcl.codec.utf8String.toBits(b));e=e||sjcl.misc.hmac;a=new e(a);var f,g,h,k,l=[],n=sjcl.bitArray;for(k=1;32*l.length<(d||1);k++){e=f=a.encrypt(n.concat(b,[k]));for(g=1;g<c;g++)for(f=a.encrypt(f),h=0;h<f.length;h++)e[h]^=f[h];l=l.concat(e)}d&&(l=n.clamp(l,d));return l};
sjcl.prng=function(a){this.c=[new sjcl.hash.sha256];this.m=[0];this.P=0;this.H={};this.N=0;this.U={};this.Z=this.f=this.o=this.ha=0;this.b=[0,0,0,0,0,0,0,0];this.h=[0,0,0,0];this.L=void 0;this.M=a;this.D=!1;this.K={progress:{},seeded:{}};this.u=this.ga=0;this.I=1;this.J=2;this.ca=0x10000;this.T=[0,48,64,96,128,192,0x100,384,512,768,1024];this.da=3E4;this.ba=80};
sjcl.prng.prototype={randomWords:function(a,b){var c=[],d;d=this.isReady(b);var e;if(d===this.u)throw new sjcl.exception.notReady("generator isn't seeded");if(d&this.J){d=!(d&this.I);e=[];var f=0,g;this.Z=e[0]=(new Date).valueOf()+this.da;for(g=0;16>g;g++)e.push(0x100000000*Math.random()|0);for(g=0;g<this.c.length&&(e=e.concat(this.c[g].finalize()),f+=this.m[g],this.m[g]=0,d||!(this.P&1<<g));g++);this.P>=1<<this.c.length&&(this.c.push(new sjcl.hash.sha256),this.m.push(0));this.f-=f;f>this.o&&(this.o=
f);this.P++;this.b=sjcl.hash.sha256.hash(this.b.concat(e));this.L=new sjcl.cipher.aes(this.b);for(d=0;4>d&&(this.h[d]=this.h[d]+1|0,!this.h[d]);d++);}for(d=0;d<a;d+=4)0===(d+1)%this.ca&&y(this),e=z(this),c.push(e[0],e[1],e[2],e[3]);y(this);return c.slice(0,a)},setDefaultParanoia:function(a,b){if(0===a&&"Setting paranoia=0 will ruin your security; use it only for testing"!==b)throw new sjcl.exception.invalid("Setting paranoia=0 will ruin your security; use it only for testing");this.M=a},addEntropy:function(a,
b,c){c=c||"user";var d,e,f=(new Date).valueOf(),g=this.H[c],h=this.isReady(),k=0;d=this.U[c];void 0===d&&(d=this.U[c]=this.ha++);void 0===g&&(g=this.H[c]=0);this.H[c]=(this.H[c]+1)%this.c.length;switch(typeof a){case "number":void 0===b&&(b=1);this.c[g].update([d,this.N++,1,b,f,1,a|0]);break;case "object":c=Object.prototype.toString.call(a);if("[object Uint32Array]"===c){e=[];for(c=0;c<a.length;c++)e.push(a[c]);a=e}else for("[object Array]"!==c&&(k=1),c=0;c<a.length&&!k;c++)"number"!==typeof a[c]&&
(k=1);if(!k){if(void 0===b)for(c=b=0;c<a.length;c++)for(e=a[c];0<e;)b++,e=e>>>1;this.c[g].update([d,this.N++,2,b,f,a.length].concat(a))}break;case "string":void 0===b&&(b=a.length);this.c[g].update([d,this.N++,3,b,f,a.length]);this.c[g].update(a);break;default:k=1}if(k)throw new sjcl.exception.bug("random: addEntropy only supports number, array of numbers or string");this.m[g]+=b;this.f+=b;h===this.u&&(this.isReady()!==this.u&&A("seeded",Math.max(this.o,this.f)),A("progress",this.getProgress()))},
isReady:function(a){a=this.T[void 0!==a?a:this.M];return this.o&&this.o>=a?this.m[0]>this.ba&&(new Date).valueOf()>this.Z?this.J|this.I:this.I:this.f>=a?this.J|this.u:this.u},getProgress:function(a){a=this.T[a?a:this.M];return this.o>=a?1:this.f>a?1:this.f/a},startCollectors:function(){if(!this.D){this.a={loadTimeCollector:B(this,this.ma),mouseCollector:B(this,this.oa),keyboardCollector:B(this,this.la),accelerometerCollector:B(this,this.ea),touchCollector:B(this,this.qa)};if(window.addEventListener)window.addEventListener("load",
this.a.loadTimeCollector,!1),window.addEventListener("mousemove",this.a.mouseCollector,!1),window.addEventListener("keypress",this.a.keyboardCollector,!1),window.addEventListener("devicemotion",this.a.accelerometerCollector,!1),window.addEventListener("touchmove",this.a.touchCollector,!1);else if(document.attachEvent)document.attachEvent("onload",this.a.loadTimeCollector),document.attachEvent("onmousemove",this.a.mouseCollector),document.attachEvent("keypress",this.a.keyboardCollector);else throw new sjcl.exception.bug("can't attach event");
this.D=!0}},stopCollectors:function(){this.D&&(window.removeEventListener?(window.removeEventListener("load",this.a.loadTimeCollector,!1),window.removeEventListener("mousemove",this.a.mouseCollector,!1),window.removeEventListener("keypress",this.a.keyboardCollector,!1),window.removeEventListener("devicemotion",this.a.accelerometerCollector,!1),window.removeEventListener("touchmove",this.a.touchCollector,!1)):document.detachEvent&&(document.detachEvent("onload",this.a.loadTimeCollector),document.detachEvent("onmousemove",
this.a.mouseCollector),document.detachEvent("keypress",this.a.keyboardCollector)),this.D=!1)},addEventListener:function(a,b){this.K[a][this.ga++]=b},removeEventListener:function(a,b){var c,d,e=this.K[a],f=[];for(d in e)e.hasOwnProperty(d)&&e[d]===b&&f.push(d);for(c=0;c<f.length;c++)d=f[c],delete e[d]},la:function(){C(this,1)},oa:function(a){var b,c;try{b=a.x||a.clientX||a.offsetX||0,c=a.y||a.clientY||a.offsetY||0}catch(d){c=b=0}0!=b&&0!=c&&this.addEntropy([b,c],2,"mouse");C(this,0)},qa:function(a){a=
a.touches[0]||a.changedTouches[0];this.addEntropy([a.pageX||a.clientX,a.pageY||a.clientY],1,"touch");C(this,0)},ma:function(){C(this,2)},ea:function(a){a=a.accelerationIncludingGravity.x||a.accelerationIncludingGravity.y||a.accelerationIncludingGravity.z;if(window.orientation){var b=window.orientation;"number"===typeof b&&this.addEntropy(b,1,"accelerometer")}a&&this.addEntropy(a,2,"accelerometer");C(this,0)}};
function A(a,b){var c,d=sjcl.random.K[a],e=[];for(c in d)d.hasOwnProperty(c)&&e.push(d[c]);for(c=0;c<e.length;c++)e[c](b)}function C(a,b){"undefined"!==typeof window&&window.performance&&"function"===typeof window.performance.now?a.addEntropy(window.performance.now(),b,"loadtime"):a.addEntropy((new Date).valueOf(),b,"loadtime")}function y(a){a.b=z(a).concat(z(a));a.L=new sjcl.cipher.aes(a.b)}function z(a){for(var b=0;4>b&&(a.h[b]=a.h[b]+1|0,!a.h[b]);b++);return a.L.encrypt(a.h)}
function B(a,b){return function(){b.apply(a,arguments)}}sjcl.random=new sjcl.prng(6);
a:try{var D,E,F,G;if(G="undefined"!==typeof module&&module.exports){var H;try{H=require("crypto")}catch(a){H=null}G=E=H}if(G&&E.randomBytes)D=E.randomBytes(128),D=new Uint32Array((new Uint8Array(D)).buffer),sjcl.random.addEntropy(D,1024,"crypto['randomBytes']");else if("undefined"!==typeof window&&"undefined"!==typeof Uint32Array){F=new Uint32Array(32);if(window.crypto&&window.crypto.getRandomValues)window.crypto.getRandomValues(F);else if(window.msCrypto&&window.msCrypto.getRandomValues)window.msCrypto.getRandomValues(F);
else break a;sjcl.random.addEntropy(F,1024,"crypto['getRandomValues']")}}catch(a){"undefined"!==typeof window&&window.console&&(console.log("There was an error collecting entropy from the browser:"),console.log(a))}
sjcl.json={defaults:{v:1,iter:1E4,ks:128,ts:64,mode:"ccm",adata:"",cipher:"aes"},ja:function(a,b,c,d){c=c||{};d=d||{};var e=sjcl.json,f=e.g({iv:sjcl.random.randomWords(4,0)},e.defaults),g;e.g(f,c);c=f.adata;"string"===typeof f.salt&&(f.salt=sjcl.codec.base64.toBits(f.salt));"string"===typeof f.iv&&(f.iv=sjcl.codec.base64.toBits(f.iv));if(!sjcl.mode[f.mode]||!sjcl.cipher[f.cipher]||"string"===typeof a&&100>=f.iter||64!==f.ts&&96!==f.ts&&128!==f.ts||128!==f.ks&&192!==f.ks&&0x100!==f.ks||2>f.iv.length||
4<f.iv.length)throw new sjcl.exception.invalid("json encrypt: invalid parameters");"string"===typeof a?(g=sjcl.misc.cachedPbkdf2(a,f),a=g.key.slice(0,f.ks/32),f.salt=g.salt):sjcl.ecc&&a instanceof sjcl.ecc.elGamal.publicKey&&(g=a.kem(),f.kemtag=g.tag,a=g.key.slice(0,f.ks/32));"string"===typeof b&&(b=sjcl.codec.utf8String.toBits(b));"string"===typeof c&&(f.adata=c=sjcl.codec.utf8String.toBits(c));g=new sjcl.cipher[f.cipher](a);e.g(d,f);d.key=a;f.ct="ccm"===f.mode&&sjcl.arrayBuffer&&sjcl.arrayBuffer.ccm&&
b instanceof ArrayBuffer?sjcl.arrayBuffer.ccm.encrypt(g,b,f.iv,c,f.ts):sjcl.mode[f.mode].encrypt(g,b,f.iv,c,f.ts);return f},encrypt:function(a,b,c,d){var e=sjcl.json,f=e.ja.apply(e,arguments);return e.encode(f)},ia:function(a,b,c,d){c=c||{};d=d||{};var e=sjcl.json;b=e.g(e.g(e.g({},e.defaults),b),c,!0);var f,g;f=b.adata;"string"===typeof b.salt&&(b.salt=sjcl.codec.base64.toBits(b.salt));"string"===typeof b.iv&&(b.iv=sjcl.codec.base64.toBits(b.iv));if(!sjcl.mode[b.mode]||!sjcl.cipher[b.cipher]||"string"===
typeof a&&100>=b.iter||64!==b.ts&&96!==b.ts&&128!==b.ts||128!==b.ks&&192!==b.ks&&0x100!==b.ks||!b.iv||2>b.iv.length||4<b.iv.length)throw new sjcl.exception.invalid("json decrypt: invalid parameters");"string"===typeof a?(g=sjcl.misc.cachedPbkdf2(a,b),a=g.key.slice(0,b.ks/32),b.salt=g.salt):sjcl.ecc&&a instanceof sjcl.ecc.elGamal.secretKey&&(a=a.unkem(sjcl.codec.base64.toBits(b.kemtag)).slice(0,b.ks/32));"string"===typeof f&&(f=sjcl.codec.utf8String.toBits(f));g=new sjcl.cipher[b.cipher](a);f="ccm"===
b.mode&&sjcl.arrayBuffer&&sjcl.arrayBuffer.ccm&&b.ct instanceof ArrayBuffer?sjcl.arrayBuffer.ccm.decrypt(g,b.ct,b.iv,b.tag,f,b.ts):sjcl.mode[b.mode].decrypt(g,b.ct,b.iv,f,b.ts);e.g(d,b);d.key=a;return 1===c.raw?f:sjcl.codec.utf8String.fromBits(f)},decrypt:function(a,b,c,d){var e=sjcl.json;return e.ia(a,e.decode(b),c,d)},encode:function(a){var b,c="{",d="";for(b in a)if(a.hasOwnProperty(b)){if(!b.match(/^[a-z0-9]+$/i))throw new sjcl.exception.invalid("json encode: invalid property name");c+=d+'"'+
b+'":';d=",";switch(typeof a[b]){case "number":case "boolean":c+=a[b];break;case "string":c+='"'+escape(a[b])+'"';break;case "object":c+='"'+sjcl.codec.base64.fromBits(a[b],0)+'"';break;default:throw new sjcl.exception.bug("json encode: unsupported type");}}return c+"}"},decode:function(a){a=a.replace(/\s/g,"");if(!a.match(/^\{.*\}$/))throw new sjcl.exception.invalid("json decode: this isn't json!");a=a.replace(/^\{|\}$/g,"").split(/,/);var b={},c,d;for(c=0;c<a.length;c++){if(!(d=a[c].match(/^\s*(?:(["']?)([a-z][a-z0-9]*)\1)\s*:\s*(?:(-?\d+)|"([a-z0-9+\/%*_.@=\-]*)"|(true|false))$/i)))throw new sjcl.exception.invalid("json decode: this isn't json!");
null!=d[3]?b[d[2]]=parseInt(d[3],10):null!=d[4]?b[d[2]]=d[2].match(/^(ct|adata|salt|iv)$/)?sjcl.codec.base64.toBits(d[4]):unescape(d[4]):null!=d[5]&&(b[d[2]]="true"===d[5])}return b},g:function(a,b,c){void 0===a&&(a={});if(void 0===b)return a;for(var d in b)if(b.hasOwnProperty(d)){if(c&&void 0!==a[d]&&a[d]!==b[d])throw new sjcl.exception.invalid("required parameter overridden");a[d]=b[d]}return a},sa:function(a,b){var c={},d;for(d in a)a.hasOwnProperty(d)&&a[d]!==b[d]&&(c[d]=a[d]);return c},ra:function(a,
b){var c={},d;for(d=0;d<b.length;d++)void 0!==a[b[d]]&&(c[b[d]]=a[b[d]]);return c}};sjcl.encrypt=sjcl.json.encrypt;sjcl.decrypt=sjcl.json.decrypt;sjcl.misc.pa={};sjcl.misc.cachedPbkdf2=function(a,b){var c=sjcl.misc.pa,d;b=b||{};d=b.iter||1E3;c=c[a]=c[a]||{};d=c[d]=c[d]||{firstSalt:b.salt&&b.salt.length?b.salt.slice(0):sjcl.random.randomWords(2,0)};c=void 0===b.salt?d.firstSalt:b.salt;d[c]=d[c]||sjcl.misc.pbkdf2(a,c,b.iter);return{key:d[c].slice(0),salt:c.slice(0)}};
"undefined"!==typeof module&&module.exports&&(module.exports=sjcl);"function"===typeof define&&define([],function(){return sjcl});
</script>
</div>
<!--~~ Boot kernel prologue ~~-->
<div id="bootKernelPrefix" style="display:none;">
<script data-tiddler-title="$:/boot/bootprefix.js" data-tiddler-type="application/javascript" type="text/javascript">function e(r){'use strict';return(r=r||Object.create(null)).boot=r.boot||Object.create(null),'browser'in r||(r.browser='undefined'!=typeof window?{}:null),'node'in r||(r.node='object'==typeof process?{}:null),'nodeWebKit'in r||(r.nodeWebKit=r.node&&global.window&&global.window.nwDispatcher?{}:null),r.boot.tasks={trapErrors:!(!r.browser||r.node),readBrowserTiddlers:!(!r.browser||r.node)},r.modules={titles:{},types:{}},r.modules.define=function(e,o,d){var t={moduleType:o,definition:d,exports:void 0};'object'==typeof t.definition&&(t.exports=d),Object.prototype.hasOwnProperty.call(r.modules.titles,e)&&console.log('Warning: Redefined module - '+e),r.modules.titles[e]=t,Object.prototype.hasOwnProperty.call(r.modules.types,o)||(r.modules.types[o]={}),Object.prototype.hasOwnProperty.call(r.modules.types[o],e)&&console.log('Warning: Redefined module - '+e),r.modules.types[o][e]=t},r.preloadTiddlers=r.preloadTiddlers||[],r.preloadTiddler=function(e){r.preloadTiddlers.push(e)},r.preloadTiddlerArray=function(e){r.preloadTiddlers.push.apply(r.preloadTiddlers,e)},r}'undefined'==typeof exports?window.$tw=e(window.$tw):exports.bootprefix=e;</script>
</div>
<!--~~ Boot kernel ~~-->
<div id="bootKernel" style="display:none;">
<script data-tiddler-title="$:/boot/boot.js" data-tiddler-type="application/javascript" type="text/javascript">var o=function(y){'use strict';var x,v,l;(y=y||require('./bootprefix.js').bootprefix()).utils=y.utils||Object.create(null),y.node&&(x=require('fs'),v=require('path'),l=require('vm')),y.boot.log=function(e){y.boot.logMessages=y.boot.logMessages||[],y.boot.logMessages.push(e)},y.utils.hop=function(e,t){return!!e&&Object.prototype.hasOwnProperty.call(e,t)},y.utils.isArray=function(e){return'[object Array]'==Object.prototype.toString.call(e)},y.utils.isArrayEqual=function(e,i){return e===i||(e=e||[]).length===(i=i||[]).length&&e.every(function(e,t){return e===i[t]})},y.utils.pushTop=function(e,t){var i,r;if(y.utils.isArray(t)){if(0!==t.length){if(0!==e.length)if(t.length<e.length)for(i=0;i<t.length;i++)-1!==(r=e.indexOf(t[i]))&&e.splice(r,1);else for(i=e.length-1;0<=i;i--)-1!==(r=t.indexOf(e[i]))&&e.splice(i,1);e.push.apply(e,t)}}else-1!==(r=e.indexOf(t))&&e.splice(r,1),e.push(t);return e},y.utils.isDate=function(e){return'[object Date]'===Object.prototype.toString.call(e)},y.utils.each=function(e,t){if(e)if('[object Array]'==Object.prototype.toString.call(e))for(r=0,s=e.length;r<s&&!1!==t(e[r],r,e);r++);else for(var i=Object.keys(e),r=0,s=i.length;r<s;r++){var l=i[r];if(!1===t(e[l],l,e))break}},y.utils.domMaker=function(e,t){var i=t.document||document,r=i.createElementNS(t.namespace||'http://www.w3.org/1999/xhtml',e);return t.class&&(r.className=t.class),t.text&&r.appendChild(i.createTextNode(t.text)),y.utils.each(t.children,function(e){r.appendChild(e)}),t.innerHTML&&(r.innerHTML=t.innerHTML),y.utils.each(t.attributes,function(e,t){r.setAttribute(t,e)}),y.utils.each(t.style,function(e,t){r.style[t]=e}),t.eventListeners&&y.utils.addEventListeners(r,t.eventListeners),r},y.utils.error=function(e){var t=null==y.language?'Internal JavaScript Error':y.language.getString('InternalJavaScriptError/Title'),i=null==y.language?'Well, this is embarrassing. It is recommended that you restart TiddlyWiki by refreshing your browser':y.language.getString('InternalJavaScriptError/Hint');if(console.error(y.node?''+e+'':e),y.browser&&!y.node){var r=y.utils.domMaker,s=r('h1',{text:t}),t=r('div',{text:i,class:'tc-error-prompt'}),i=r('div',{text:e,class:'tc-error-message'}),e=r('div',{children:[r('button',{text:null==y.language?'close':y.language.getString('Buttons/Close/Caption')})],class:'tc-error-prompt'}),l=r('form',{children:[s,t,i,e],class:'tc-error-form'});return document.body.insertBefore(l,document.body.firstChild),l.addEventListener('submit',function(e){return document.body.removeChild(l),e.preventDefault(),!1},!0),null}y.browser||process.exit(1)},y.boot.tasks.trapErrors&&(window.onerror=function(e,t,i){return y.utils.error(e),!1}),y.utils.extend=function(i){return y.utils.each(Array.prototype.slice.call(arguments,1),function(e){if(e)for(var t in e)i[t]=e[t]}),i},y.utils.deepDefaults=function(i){return y.utils.each(Array.prototype.slice.call(arguments,1),function(e){if(e)for(var t in e)null!==i[t]&&void 0!==i[t]||(i[t]=e[t]),'object'==typeof i[t]&&'object'==typeof e[t]&&y.utils.deepDefaults(i[t],e[t])}),i},y.utils.htmlDecode=function(e){return e.toString().replace(/&lt;/gm,'<').replace(/&nbsp;/gm,' ').replace(/&gt;/gm,'>').replace(/&quot;/gm,'"').replace(/&amp;/gm,'&')},y.utils.getLocationHash=function(){var e=window.location.href,t=e.indexOf('#');return-1===t||t<e.length-1&&'#'===e[t+1]?'#':e.substring(t)},y.utils.pad=function(e,t){t=t||2;e=e.toString();return e.length<t&&(e='000000000000000000000000000'.substr(0,t-e.length)+e),e},y.utils.stringifyDate=function(e){return e.getUTCFullYear()+y.utils.pad(e.getUTCMonth()+1)+y.utils.pad(e.getUTCDate())+y.utils.pad(e.getUTCHours())+y.utils.pad(e.getUTCMinutes())+y.utils.pad(e.getUTCSeconds())+y.utils.pad(e.getUTCMilliseconds(),3)},y.utils.parseDate=function(e){if('string'!=typeof e)return y.utils.isDate(e)?e:null;var t=1;'-'===e.charAt(0)&&(t=-1,e=e.substr(1));t=parseInt(e.substr(0,4),10)*t,e=new Date(Date.UTC(t,parseInt(e.substr(4,2),10)-1,parseInt(e.substr(6,2),10),pa
</div>
<!--~~ Raw markup for the bottom of the body section ~~-->
</body>
</html>