mirror of
				https://github.com/Jermolene/TiddlyWiki5
				synced 2025-10-30 23:23:02 +00:00 
			
		
		
		
	Merge branch 'master' into multi-wiki-support
This commit is contained in:
		| @@ -5,7 +5,7 @@ | ||||
| # Default to the current version number for building the plugin library | ||||
|  | ||||
| if [  -z "$TW5_BUILD_VERSION" ]; then | ||||
|     TW5_BUILD_VERSION=v5.3.3 | ||||
|     TW5_BUILD_VERSION=v5.3.5 | ||||
| fi | ||||
|  | ||||
| echo "Using TW5_BUILD_VERSION as [$TW5_BUILD_VERSION]" | ||||
|   | ||||
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							| @@ -104,6 +104,8 @@ ShowSideBar/Caption: show sidebar | ||||
| ShowSideBar/Hint: Show sidebar | ||||
| TagManager/Caption: tag manager | ||||
| TagManager/Hint: Open tag manager | ||||
| TestCaseImport/Caption: import tiddlers | ||||
| TestCaseImport/Hint: Import tiddlers | ||||
| Timestamp/Caption: timestamps | ||||
| Timestamp/Hint: Choose whether modifications update timestamps | ||||
| Timestamp/On/Caption: timestamps are on | ||||
|   | ||||
| @@ -95,6 +95,7 @@ function SaverHandler(options) { | ||||
| 	if($tw.browser) { | ||||
| 		$tw.rootWidget.addEventListener("tm-save-wiki",function(event) { | ||||
| 			self.saveWiki({ | ||||
| 				wiki: event.widget.wiki, | ||||
| 				template: event.param, | ||||
| 				downloadType: "text/plain", | ||||
| 				variables: event.paramObject | ||||
| @@ -102,6 +103,7 @@ function SaverHandler(options) { | ||||
| 		}); | ||||
| 		$tw.rootWidget.addEventListener("tm-download-file",function(event) { | ||||
| 			self.saveWiki({ | ||||
| 				wiki: event.widget.wiki, | ||||
| 				method: "download", | ||||
| 				template: event.param, | ||||
| 				downloadType: "text/plain", | ||||
| @@ -147,20 +149,22 @@ Save the wiki contents. Options are: | ||||
| 	method: "save", "autosave" or "download" | ||||
| 	template: the tiddler containing the template to save | ||||
| 	downloadType: the content type for the saved file | ||||
| 	wiki: optional wiki, overriding the default wiki specified in the constructor | ||||
| */ | ||||
| SaverHandler.prototype.saveWiki = function(options) { | ||||
| 	options = options || {}; | ||||
| 	var self = this, | ||||
| 		wiki = options.wiki || this.wiki, | ||||
| 		method = options.method || "save"; | ||||
| 	// Ignore autosave if disabled | ||||
| 	if(method === "autosave" && ($tw.config.disableAutoSave || this.wiki.getTiddlerText(this.titleAutoSave,"yes") !== "yes")) { | ||||
| 	if(method === "autosave" && ($tw.config.disableAutoSave || wiki.getTiddlerText(this.titleAutoSave,"yes") !== "yes")) { | ||||
| 		return false; | ||||
| 	} | ||||
| 	var	variables = options.variables || {}, | ||||
| 		template = (options.template ||  | ||||
| 		           this.wiki.getTiddlerText("$:/config/SaveWikiButton/Template","$:/core/save/all")).trim(), | ||||
| 		           wiki.getTiddlerText("$:/config/SaveWikiButton/Template","$:/core/save/all")).trim(), | ||||
| 		downloadType = options.downloadType || "text/plain", | ||||
| 		text = this.wiki.renderTiddler(downloadType,template,options), | ||||
| 		text = wiki.renderTiddler(downloadType,template,options), | ||||
| 		callback = function(err) { | ||||
| 			if(err) { | ||||
| 				alert($tw.language.getString("Error/WhileSaving") + ":\n\n" + err); | ||||
|   | ||||
| @@ -99,7 +99,7 @@ table-footer-background: #a8a8a8 | ||||
| table-header-background: #f0f0f0 | ||||
| tag-background: #ec6 | ||||
| tag-foreground: #ffffff | ||||
| testcase-accent-level-1: #84C5E6 | ||||
| testcase-accent-level-1: #c1eaff | ||||
| testcase-accent-level-2: #E3B740 | ||||
| testcase-accent-level-3: #5FD564 | ||||
| tiddler-background: <<colour background>> | ||||
|   | ||||
| @@ -27,6 +27,31 @@ title: $:/core/ui/testcases/DefaultTemplate | ||||
| 					<%endif%> | ||||
| 					<$view tiddler="Description" mode="inline"/> | ||||
| 				</$genesis> | ||||
| 				<span class="tc-test-case-toolbar"> | ||||
| 					<$button popup=`$(state)$-more` | ||||
| 						tooltip={{$:/language/Buttons/More/Hint}} | ||||
| 						aria-label={{$:/language/Buttons/More/Caption}} | ||||
| 						class="tc-btn-invisible" | ||||
| 						selectedClass="tc-selected" | ||||
| 					> | ||||
| 						{{$:/core/images/down-arrow}} | ||||
| 					</$button> | ||||
| 					<$let  | ||||
| 						tv-config-toolbar-icons="yes" | ||||
| 						tv-config-toolbar-text="yes" | ||||
| 						tv-config-toolbar-class="tc-btn-invisible" | ||||
| 					> | ||||
| 						<$reveal state=`$(state)$-more` type="popup" position="belowleft" animate="yes"> | ||||
| 							<div class="tc-drop-down"> | ||||
| 								<$list filter="[all[shadows+tiddlers]tag[$:/tags/TestCase/Actions]!has[draft.of]]" | ||||
| 									variable="listItem" | ||||
| 								> | ||||
| 									<$transclude tiddler=<<listItem>> mode="inline"/> | ||||
| 								</$list> | ||||
| 							</div> | ||||
| 						</$reveal> | ||||
| 					</$let> | ||||
| 				</span> | ||||
| 			</h2> | ||||
| 		</div> | ||||
| 		<%if [[Narrative]is[tiddler]] %> | ||||
| @@ -46,7 +71,7 @@ title: $:/core/ui/testcases/DefaultTemplate | ||||
| 		<%endif%> | ||||
| 		<div class="tc-test-case-panes"> | ||||
| 			<div class="tc-test-case-source"> | ||||
| 				<$macrocall $name="tabs" tabsList="[all[tiddlers]sort[]] -[prefix<state>] -Description -Narrative -ExpectedResult -Output Output +[putfirst[]] -[has[plugin-type]]" state=<<state>> default="Output" template="$:/core/ui/testcases/DefaultTemplate/SourceTabs"/> | ||||
| 				<$macrocall $name="tabs" tabsList="[all[tiddlers]sort[]] -[prefix<state>] -Description -Narrative -Output Output +[putfirst[]] -[has[plugin-type]]" state=<<state>> default="Output" template="$:/core/ui/testcases/DefaultTemplate/SourceTabs"/> | ||||
| 			</div> | ||||
| 			<div class="tc-test-case-divider"> | ||||
| 			</div> | ||||
|   | ||||
| @@ -19,6 +19,9 @@ title: $:/core/ui/testcases/DefaultTemplate/SourceTabs | ||||
| 	</table> | ||||
| </$list> | ||||
| <$edit class="tc-edit-texteditor" tiddler=<<currentTab>>/> | ||||
| <div class="tc-test-case-footer-toolbar"> | ||||
| <$macrocall $name="copy-to-clipboard" src={{{ [<currentTab>get[text]] }}}/> | ||||
| </div> | ||||
| \end | ||||
|  | ||||
| <$transclude $variable="body" $mode="inline"/> | ||||
|   | ||||
							
								
								
									
										4
									
								
								core/ui/TestCases/actions/Export.tid
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								core/ui/TestCases/actions/Export.tid
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | ||||
| title: $:/core/ui/testcases/actions/Export | ||||
| tags: $:/tags/TestCase/Actions | ||||
|  | ||||
| <$macrocall $name="exportButton" exportFilter="[all[tiddlers]sort[]] -[prefix[$:/state/]] -Description -Narrative -ExpectedResult -Output Output +[putfirst[]] -[has[plugin-type]]" lingoBase="$:/language/Buttons/ExportTiddlers/"/> | ||||
							
								
								
									
										11
									
								
								core/ui/TestCases/actions/Import.tid
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								core/ui/TestCases/actions/Import.tid
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,11 @@ | ||||
| title: $:/core/ui/testcases/actions/Import | ||||
| tags: $:/tags/TestCase/Actions | ||||
|  | ||||
| \whitespace trim | ||||
| <$button tooltip={{$:/language/Buttons/TestCaseImport/Hint}} aria-label={{$:/language/Buttons/TestCaseImport/Caption}} class=<<tv-config-toolbar-class>>> | ||||
| <$action-sendmessage $message="tm-import-tiddlers" $param=<<payloadTiddlers>>/> | ||||
| {{$:/core/images/permalink-button}} | ||||
| <span class="tc-btn-text"> | ||||
| <$text text={{$:/language/Buttons/TestCaseImport/Caption}}/> | ||||
| </span> | ||||
| </$button> | ||||
| @@ -1,6 +1,6 @@ | ||||
| title: $:/config/OfficialPluginLibrary | ||||
| tags: $:/tags/PluginLibrary | ||||
| url: https://tiddlywiki.com/library/v5.3.4/index.html | ||||
| url: https://tiddlywiki.com/library/v5.3.5/index.html | ||||
| caption: {{$:/language/OfficialPluginLibrary}} | ||||
|  | ||||
| {{$:/language/OfficialPluginLibrary/Hint}} | ||||
|   | ||||
							
								
								
									
										2
									
								
								core/wiki/tags/TestCaseActions.tid
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								core/wiki/tags/TestCaseActions.tid
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,2 @@ | ||||
| title: $:/tags/TestCase/Actions | ||||
| list: | ||||
							
								
								
									
										64
									
								
								editions/prerelease/tiddlers/Release 5.3.5.tid
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										64
									
								
								editions/prerelease/tiddlers/Release 5.3.5.tid
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,64 @@ | ||||
| caption: 5.3.5 | ||||
| created: 20240627165523990 | ||||
| modified: 20240627165523990 | ||||
| tags: ReleaseNotes | ||||
| title: Release 5.3.5 | ||||
| type: text/vnd.tiddlywiki | ||||
| description: Under development | ||||
|  | ||||
| //[[See GitHub for detailed change history of this release|https://github.com/Jermolene/TiddlyWiki5/compare/v5.3.4...master]]// | ||||
|  | ||||
| ! Major Improvements | ||||
|  | ||||
| ! Translation improvements | ||||
|  | ||||
| This release also includes improvements to the following translations: | ||||
|  | ||||
| *  | ||||
|  | ||||
| ! Plugin Improvements | ||||
|  | ||||
| *  | ||||
|  | ||||
| ! Widget Improvements | ||||
|  | ||||
| *  | ||||
|  | ||||
| ! Filter Improvements | ||||
|  | ||||
| *  | ||||
|  | ||||
| ! Usability Improvements | ||||
|  | ||||
| *  | ||||
|  | ||||
| ! Hackability Improvements | ||||
|  | ||||
| *  | ||||
|  | ||||
| ! Bug Fixes | ||||
|  | ||||
| *  | ||||
|  | ||||
| ! Node.js Improvements | ||||
|  | ||||
| * | ||||
|  | ||||
| ! Performance Improvements | ||||
|  | ||||
| *  | ||||
|  | ||||
| ! Developer Improvements | ||||
|  | ||||
| *  | ||||
|  | ||||
| ! Infrastructure Improvements | ||||
|  | ||||
| *  | ||||
|  | ||||
| ! Acknowledgements | ||||
|  | ||||
| [[@Jermolene|https://github.com/Jermolene]] would like to thank the contributors to this release who have generously given their time to help improve TiddlyWiki: | ||||
|  | ||||
| <<.contributors """ | ||||
| """>> | ||||
| @@ -1,6 +1,6 @@ | ||||
| title: $:/config/LocalPluginLibrary | ||||
| tags: $:/tags/PluginLibrary | ||||
| url: http://127.0.0.1:8080/prerelease/library/v5.3.2/index.html | ||||
| url: http://127.0.0.1:8080/prerelease/library/v5.3.5/index.html | ||||
| caption: {{$:/language/OfficialPluginLibrary}} (Prerelease Local) | ||||
|  | ||||
| A locally installed version of the official ~TiddlyWiki plugin library at tiddlywiki.com for testing and debugging. //Requires a local web server to share the library// | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| title: $:/config/OfficialPluginLibrary | ||||
| tags: $:/tags/PluginLibrary | ||||
| url: https://tiddlywiki.com/prerelease/library/v5.3.4/index.html | ||||
| url: https://tiddlywiki.com/prerelease/library/v5.3.5/index.html | ||||
| caption: {{$:/language/OfficialPluginLibrary}} (Prerelease) | ||||
|  | ||||
| The prerelease version of the official ~TiddlyWiki plugin library at tiddlywiki.com. Plugins, themes and language packs are maintained by the core team. | ||||
|   | ||||
| @@ -1,5 +1,5 @@ | ||||
| created: 20201123172925848 | ||||
| modified: 20230803052005116 | ||||
| modified: 20240627060629394 | ||||
| tags: [[Customise TiddlyWiki]] | ||||
| title: Alternative page layouts | ||||
| type: text/vnd.tiddlywiki | ||||
| @@ -8,8 +8,39 @@ type: text/vnd.tiddlywiki | ||||
|  | ||||
| ! Creating an alternative page layout | ||||
|  | ||||
| Creating an alternative layout goes beyond [[adding or removing features|Customising TiddlyWiki's user interface]] from the default interface and allows you to create an entirely new layout from scratch. | ||||
| Creating an alternative layout goes beyond [[adding or removing features|Customising TiddlyWiki's user interface]] from the default interface, which also known as [[standard layout|$:/core/ui/PageTemplate]], and allows you to create an entirely new layout from scratch. | ||||
|  | ||||
| To create an alternative page layout and have the ability to switch to it, you need to create an alternative page template tiddler with the [[SystemTag: $:/tags/Layout]]. | ||||
|  | ||||
| This alternative page template can either be a tweaked and modified version of the [[default page template|$:/core/ui/PageTemplate]], or something entirely different. The layout switching mechanism requires that your page template tiddler has the fields `name` and `description`, which are used in the listing in the switching user interface. | ||||
| This alternative page template can either be a tweaked and modified version of the [[default page template|$:/core/ui/PageTemplate]], or something entirely different. The layout switching mechanism requires that your page template tiddler has the fields `name` and `description`, which are used in the listing in the switching user interface. | ||||
|  | ||||
| !! Common layout setup | ||||
|  | ||||
| ```tid | ||||
| \whitespace trim | ||||
| \import [subfilter{$:/core/config/GlobalImportFilter}] | ||||
| \define containerClasses() | ||||
| tc-page-container tc-language-$(languageTitle)$ your-plugin-name-container | ||||
| \end | ||||
| \procedure redirected-navigate-actions() | ||||
|   <$action-setfield $tiddler="$:/layout" text="" $timestamp="no"> | ||||
|     <$action-navigate $to=<<event-navigateTo>> $scroll="yes" /> | ||||
|   </$action-setfield> | ||||
| \end | ||||
|  | ||||
| <$navigator story="$:/StoryList" history="$:/HistoryList" openLinkFromInsideRiver={{$:/config/Navigation/openLinkFromInsideRiver}} openLinkFromOutsideRiver={{$:/config/Navigation/openLinkFromOutsideRiver}} relinkOnRename={{$:/config/RelinkOnRename}}> | ||||
| 	<$messagecatcher $tm-navigate=<<redirected-navigate-actions>>> | ||||
| 		{{$:/core/ui/CommandPaletteTemplate}} | ||||
| 		<div class=<<containerClasses>>> | ||||
| 			<!-- Your layout content here --> | ||||
| 		</div> | ||||
| 	</$messagecatcher> | ||||
| </$navigator> | ||||
| ``` | ||||
|  | ||||
| It includes | ||||
|  | ||||
| # Import macros that is globally available in standard layout, so wikitext that works on standard layout also works on your layout. | ||||
| # Define the top-level css class, some style may depends on them. You can add your plugin's name in css class here. | ||||
| # Handle navigation when click on links. If your layout does not contains a story view (for example, you are writing a calendar or whiteboard layout), then the combination of `redirected-navigate-actions` `$navigator` and `$messagecatcher` will redirect user back to standard layout, and open the tiddler there. | ||||
| # Add some [[PageTemplate|$:/tags/PageTemplate]] back, for example the `$:/core/ui/CommandPaletteTemplate` or `$:/core/ui/PageTemplate/sidebar`, if you want them exist on your layout. | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| created: 20130822170200000 | ||||
| list: [[A Gentle Guide to TiddlyWiki]] [[Discover TiddlyWiki]] [[Some of the things you can do with TiddlyWiki]] [[Ten reasons to switch to TiddlyWiki]] Examples [[What happened to the original TiddlyWiki?]] | ||||
| modified: 20231223102201587 | ||||
| modified: 20240627165458407 | ||||
| tags: TableOfContents | ||||
| title: HelloThere | ||||
| type: text/vnd.tiddlywiki | ||||
|   | ||||
										
											Binary file not shown.
										
									
								
							| Before Width: | Height: | Size: 102 KiB After Width: | Height: | Size: 107 KiB | 
| @@ -1,12 +1,19 @@ | ||||
| caption: 5.3.4 | ||||
| created: 20240529100240232 | ||||
| modified: 20240529100240232 | ||||
| created: 20240627165458407 | ||||
| modified: 20240627165458407 | ||||
| released: 20240627165458407 | ||||
| tags: ReleaseNotes | ||||
| title: Release 5.3.4 | ||||
| type: text/vnd.tiddlywiki | ||||
| description: Under development | ||||
| 
 | ||||
| //[[See GitHub for detailed change history of this release|https://github.com/Jermolene/TiddlyWiki5/compare/v5.3.3...master]]// | ||||
| //[[See GitHub for detailed change history of this release|https://github.com/Jermolene/TiddlyWiki5/compare/v5.3.3...v5.3.4]]// | ||||
| 
 | ||||
| <<.banner-credits | ||||
| 	credit:"""Congratulations to [[duarte.framos|https://talk.tiddlywiki.org/u/duarte.framos]] for their winning design for the banner for this release (here is the [[competition thread|https://talk.tiddlywiki.org/t/banner-image-competition-for-v5-3-4/9940]]). | ||||
| """ | ||||
| 	url:"https://raw.githubusercontent.com/Jermolene/TiddlyWiki5/05792a9de331dc31b5016c2029a43977114eb018/editions/tw5.com/tiddlers/images/New%20Release%20Banner.png" | ||||
| >> | ||||
| 
 | ||||
| ! Major Improvements | ||||
| 
 | ||||
| @@ -14,7 +21,7 @@ description: Under development | ||||
| 
 | ||||
| <<.link-badge-added "https://github.com/Jermolene/TiddlyWiki5/pull/7734">> several new features that together allow interactive learning tours to be created and presented in TiddlyWiki. | ||||
| 
 | ||||
| The demo TiddlyWiki interactive tour can be seen at https://tiddlywiki.com/prerelease/tour | ||||
| The demo TiddlyWiki interactive tour can be seen at https://tiddlywiki.com/tour | ||||
| 
 | ||||
| The new features include: | ||||
| 
 | ||||
| @@ -34,7 +41,7 @@ The Geospatial Plugin incorporates a number of third party libraries and online | ||||
| * [[Flickr|https://www.flickr.com/services/api/]], a free API for retrieving geotagged photographs | ||||
| * [[OpenLocationCode|https://github.com/google/open-location-code]], Google's open source library for converting to and from Open Location Codes (also known as [[PlusCodes|https://maps.google.com/pluscodes/]]) | ||||
| 
 | ||||
| Try it out at https://tiddlywiki.com/prerelease/plugins/tiddlywiki/geospatial/ | ||||
| Try it out at https://tiddlywiki.com/plugins/tiddlywiki/geospatial/ | ||||
| 
 | ||||
| !! <<.wlink TestCaseWidget>> Widget | ||||
| 
 | ||||
| @@ -48,7 +55,7 @@ Test cases can also specify the raw HTML of the expected result which causes the | ||||
| 
 | ||||
| <<testcase "TestCases/TestCaseWidget/FailingTest">> | ||||
| 
 | ||||
| The easiest way to use the <<.wlink TestCaseWidget>> is by creating TestCaseTiddlers using the new CompoundTiddlers format. There are also many test cases to view in the TiddlyWiki test edition at https://tiddlywiki.com/prerelease/test.html | ||||
| The easiest way to use the <<.wlink TestCaseWidget>> is by creating TestCaseTiddlers using the new CompoundTiddlers format. There are also many test cases to view in the TiddlyWiki test edition at https://tiddlywiki.com/test.html | ||||
| 
 | ||||
| ! Translation improvements | ||||
| 
 | ||||
| @@ -120,20 +127,12 @@ This release also includes improvements to the following translations: | ||||
| * <<.link-badge-fixed "https://github.com/Jermolene/TiddlyWiki5/issues/8237">> server header authentication when header is missing | ||||
| * <<.link-badge-fixed "https://github.com/Jermolene/TiddlyWiki5/issues/8253">> ButtonWidget should refresh when "tooltip" attribute changes | ||||
| 
 | ||||
| ! Performance Improvements | ||||
| 
 | ||||
| *  | ||||
| 
 | ||||
| ! Developer Improvements | ||||
| 
 | ||||
| * <<.link-badge-fixed "https://github.com/Jermolene/TiddlyWiki5/pull/8195">> issue with fakedom TW_Node inheritence | ||||
| * <<.link-badge-fixed "https://github.com/Jermolene/TiddlyWiki5/pull/8099">> SJCL library creating variables in global scope | ||||
| * <<.link-badge-fixed "https://github.com/Jermolene/TiddlyWiki5/pull/8179">> `widget.getVariableInfo()` to always return a `params` property | ||||
| 
 | ||||
| ! Infrastructure Improvements | ||||
| 
 | ||||
| *  | ||||
| 
 | ||||
| ! Acknowledgements | ||||
| 
 | ||||
| [[@Jermolene|https://github.com/Jermolene]] would like to thank the contributors to this release who have generously given their time to help improve TiddlyWiki: | ||||
| @@ -75,7 +75,7 @@ type: text/vnd.tiddlywiki | ||||
| <tr> | ||||
| 	<th><<id>></th> | ||||
| 	<td><$codeblock code=<<code>>/></td> | ||||
| 	<td><<code>></td> | ||||
| 	<td><$transclude $variable="code" $mode="block"/></td> | ||||
| </tr> | ||||
| \end | ||||
|  | ||||
|   | ||||
| @@ -5,7 +5,7 @@ description: An example of a failing test | ||||
|  | ||||
| title: Narrative | ||||
|  | ||||
| This test case intentionally fails (in order to show how failures are displayed) | ||||
| This test case intentionally fails (in order to show how failures are displayed). The expected result is set to <code><$text text={{ExpectedResult}}/></code>, but the result computes to <code><$wikify name="html" text={{Output}} mode="block" output="html"><$text text=<<html>>/></$wikify></code> | ||||
| + | ||||
| title: Output | ||||
|  | ||||
|   | ||||
| @@ -23,6 +23,11 @@ Notice also that clicking on links within the output pane will switch to the tab | ||||
|  | ||||
| The text of the payload tiddlers listed on the left are editable, with the results being immediately reflected in the preview pane on the right. However, if the <<.wid testcase>> widget is refreshed then the modifications are lost. | ||||
|  | ||||
| There is a dropdown menu at the top right of the menu that has two options: | ||||
|  | ||||
| * Export the payload tiddlers to a file in the usual export formats | ||||
| * Import the payload tiddlers into the host wiki. This option loads the payload tiddlers into the $:/Import tiddler so that they can be renamed and/or individually selected | ||||
|  | ||||
| The green tick at the top left of a test case indicates that a test has been set up and that it passes. | ||||
|  | ||||
| If the test fails, a red cross is shown, and there is a display of the differences between the actual results and the expected results: | ||||
| @@ -72,6 +77,7 @@ The test case wiki will inherit variables that are visible to the <<.wid testcas | ||||
| |!Variable |!Description | | ||||
| |<<.var linkTarget>> |Causes the test case description to be rendered as a link to the current tiddler | | ||||
| |<<.var displayFormat>> |Defaults to "wikitext", can also be "plaintext" to force plain text display | | ||||
| |<<.var testcaseTiddler>> |Title of the tiddler to be used as a link target for the testcase description | | ||||
|  | ||||
| A custom template can be specified for special purposes. For example, the provided template $:/core/ui/testcases/RawJSONTemplate just displays the payload tiddlers in JSON, which can be used for debugging purposes. | ||||
|  | ||||
|   | ||||
| @@ -104,6 +104,8 @@ ShowSideBar/Caption: Sidebar einblenden | ||||
| ShowSideBar/Hint: Sidebar einblenden | ||||
| TagManager/Caption: Tag-Manager | ||||
| TagManager/Hint: Öffne den Tag-Manager | ||||
| TestCaseImport/Caption: importiere Tiddler | ||||
| TestCaseImport/Hint: Importiere im Test enthaltene Tiddler | ||||
| Timestamp/Caption: Zeitstempel | ||||
| Timestamp/Hint: Einstellung, ob Änderungen den Zeitstempel beeinflussen | ||||
| Timestamp/On/Caption: Zeitstempel EIN | ||||
|   | ||||
| @@ -104,6 +104,8 @@ ShowSideBar/Caption: 显示侧边栏 | ||||
| ShowSideBar/Hint: 显示侧边栏 | ||||
| TagManager/Caption: 标签管理 | ||||
| TagManager/Hint: 标签管理 | ||||
| TestCaseImport/Caption: 导入条目 | ||||
| TestCaseImport/Hint: 导入条目 | ||||
| Timestamp/Caption: 时间戳 | ||||
| Timestamp/Hint: 选择修改是否更新时间戳 | ||||
| Timestamp/On/Caption: 时间戳开启 | ||||
|   | ||||
| @@ -104,6 +104,8 @@ ShowSideBar/Caption: 顯示側邊欄 | ||||
| ShowSideBar/Hint: 顯示側邊欄 | ||||
| TagManager/Caption: 標籤管理 | ||||
| TagManager/Hint: 標籤管理 | ||||
| TestCaseImport/Caption: 導入條目 | ||||
| TestCaseImport/Hint: 導入條目 | ||||
| Timestamp/Caption: 時間戳記 | ||||
| Timestamp/Hint: 選擇修改是否更新時間戳記 | ||||
| Timestamp/On/Caption: 時間戳記開啟 | ||||
|   | ||||
| @@ -1,7 +1,7 @@ | ||||
| { | ||||
|   "name": "tiddlywiki", | ||||
|   "preferGlobal": "true", | ||||
|   "version": "5.3.4-prerelease", | ||||
|   "version": "5.3.5-prerelease", | ||||
|   "author": "Jeremy Ruston <jeremy@jermolene.com>", | ||||
|   "description": "a non-linear personal web notebook", | ||||
|   "contributors": [ | ||||
|   | ||||
| @@ -1,11 +1,7 @@ | ||||
| <hr><h1 class="">TiddlyWiki MultiWikiServer</h1><p>UNDER DEVELOPMENT</p><p>This is a branch of <a class="tc-tiddlylink tc-tiddlylink-resolves" href="https://tiddlywiki.com/static/TiddlyWiki.html">TiddlyWiki</a> that adds the MultiWikiServer plugin.</p><h2 class="">Readme</h2><p>This plugin extends the <a class="tc-tiddlylink tc-tiddlylink-resolves" href="https://tiddlywiki.com/static/TiddlyWiki.html">TiddlyWiki</a> 5 server running on Node.js to be able to host multiple wikis that can share content or be independent.</p><p>Installation</p><pre><code>git clone https://github.com/Jermolene/TiddlyWiki5.git --branch multi-wiki-support | ||||
|  | ||||
| cd TiddlyWiki5 | ||||
|  | ||||
| npm install</code></pre><p>To start the server:</p><pre><code>npm start</code></pre><p>The <code>npm start</code> command is a shortcut for the following command:</p><pre><code>node ./tiddlywiki.js ./editions/multiwikiserver --mws-listen</code></pre><p>Then visit the administration interface in a browser:</p><ul><li><a class="tc-tiddlylink-external" href="http://127.0.0.1:8080/" rel="noopener noreferrer" target="_blank">http://127.0.0.1:8080/</a></li></ul><p>Note that changes are written to the topmost bag in a recipe.</p><p>Note that until syncing is improved it is necessary to use "Get latest changes from the server" to speed up propogation of changes.</p><p>To run the tests:</p><pre><code>./bin/test.sh</code></pre><h2 class="">Docs</h2><h1 class="">HTTP API</h1><p>The MultiWikiServer HTTP API provides access to resources hosted by the MWS store. It is based on <a class="tc-tiddlylink-external" href="https://tank.peermore.com/tanks/tiddlyweb/HTTP%20API" rel="noopener noreferrer" target="_blank">the API of TiddlyWeb</a>, first developed in 2008 by Chris Dent.</p><p>The design goals of the API are:</p><ul><li>To follow the principles of REST where practical</li><li>To present resources as nouns, not verbs</li></ul><p>General points about the design:</p><ul><li>In MWS there are no resources that end with / (except for the root path which is /)</li></ul><hr><p>Welcome to <a class="tc-tiddlylink tc-tiddlylink-resolves" href="https://tiddlywiki.com/static/TiddlyWiki.html">TiddlyWiki</a>, a non-linear personal web notebook that anyone can use and keep forever, independently of any corporation.</p><p><a class="tc-tiddlylink tc-tiddlylink-resolves" href="https://tiddlywiki.com/static/TiddlyWiki.html">TiddlyWiki</a> is a complete interactive wiki in <a class="tc-tiddlylink tc-tiddlylink-resolves" href="https://tiddlywiki.com/static/JavaScript.html">JavaScript</a>. It can be used as a single HTML file in the browser or as a powerful Node.js application. It is highly customisable: the entire user interface is itself implemented in hackable <a class="tc-tiddlylink tc-tiddlylink-resolves" href="https://tiddlywiki.com/static/WikiText.html">WikiText</a>.</p><p>Learn more and see it in action at <a class="tc-tiddlylink-external" href="https://tiddlywiki.com/" rel="noopener noreferrer" target="_blank">https://tiddlywiki.com/</a></p><p>Developer documentation is in progress at <a class="tc-tiddlylink-external" href="https://tiddlywiki.com/dev/" rel="noopener noreferrer" target="_blank">https://tiddlywiki.com/dev/</a></p><h1 class="">Join the Community</h1><p> | ||||
| <p>Welcome to <a class="tc-tiddlylink tc-tiddlylink-resolves" href="https://tiddlywiki.com/static/TiddlyWiki.html">TiddlyWiki</a>, a non-linear personal web notebook that anyone can use and keep forever, independently of any corporation.</p><p><a class="tc-tiddlylink tc-tiddlylink-resolves" href="https://tiddlywiki.com/static/TiddlyWiki.html">TiddlyWiki</a> is a complete interactive wiki in <a class="tc-tiddlylink tc-tiddlylink-resolves" href="https://tiddlywiki.com/static/JavaScript.html">JavaScript</a>. It can be used as a single HTML file in the browser or as a powerful Node.js application. It is highly customisable: the entire user interface is itself implemented in hackable <a class="tc-tiddlylink tc-tiddlylink-resolves" href="https://tiddlywiki.com/static/WikiText.html">WikiText</a>.</p><p>Learn more and see it in action at <a class="tc-tiddlylink-external" href="https://tiddlywiki.com/" rel="noopener noreferrer" target="_blank">https://tiddlywiki.com/</a></p><p>Developer documentation is in progress at <a class="tc-tiddlylink-external" href="https://tiddlywiki.com/dev/" rel="noopener noreferrer" target="_blank">https://tiddlywiki.com/dev/</a></p><h1 class="">Join the Community</h1><p> | ||||
| <h2 class="">Official Forums</h2><p>The new official forum for talking about TiddlyWiki: requests for help, announcements of new releases and plugins, debating new features, or just sharing experiences. You can participate via the associated website, or subscribe via email.</p><p><a class="tc-tiddlylink-external" href="https://talk.tiddlywiki.org/" rel="noopener noreferrer" target="_blank">https://talk.tiddlywiki.org/</a></p><p>Note that talk.tiddlywiki.org is a community run service that we host and maintain ourselves. The modest running costs are covered by community contributions.</p><p>For the convenience of existing users, we also continue to operate the original TiddlyWiki group (hosted on Google Groups since 2005):</p><p><a class="tc-tiddlylink-external" href="https://groups.google.com/group/TiddlyWiki" rel="noopener noreferrer" target="_blank">https://groups.google.com/group/TiddlyWiki</a></p><h2 class="">Developer Forums</h2><p>There are several resources for developers to learn more about <a class="tc-tiddlylink tc-tiddlylink-resolves" href="https://tiddlywiki.com/static/TiddlyWiki.html">TiddlyWiki</a> and to discuss and contribute to its development.</p><ul><li><a class="tc-tiddlylink-external" href="https://tiddlywiki.com/dev" rel="noopener noreferrer" target="_blank">tiddlywiki.com/dev</a> is the official developer documentation</li><li>Get involved in the <a class="tc-tiddlylink-external" href="https://github.com/Jermolene/TiddlyWiki5" rel="noopener noreferrer" target="_blank">development on GitHub</a><ul><li><img class=" tc-image-loading" src="https://repobeats.axiom.co/api/embed/5a3bb51fd1ebe84a2da5548f78d2d74e456cebf3.svg"></li><li><a class="tc-tiddlylink-external" href="https://github.com/Jermolene/TiddlyWiki5/discussions" rel="noopener noreferrer" target="_blank">Discussions</a> are for Q&A and open-ended discussion</li><li><a class="tc-tiddlylink-external" href="https://github.com/Jermolene/TiddlyWiki5/issues" rel="noopener noreferrer" target="_blank">Issues</a> are for raising bug reports and proposing specific, actionable new ideas</li></ul></li><li>The older TiddlyWikiDev Google Group is now closed in favour of <a class="tc-tiddlylink-external" href="https://github.com/Jermolene/TiddlyWiki5/discussions" rel="noopener noreferrer" target="_blank">GitHub Discussions</a> but remains a useful archive: <a class="tc-tiddlylink-external" href="https://groups.google.com/group/TiddlyWikiDev" rel="noopener noreferrer" target="_blank">https://groups.google.com/group/TiddlyWikiDev</a><ul><li>An enhanced group search facility is available on <a class="tc-tiddlylink-external" href="https://www.mail-archive.com/tiddlywikidev@googlegroups.com/" rel="noopener noreferrer" target="_blank">mail-archive.com</a></li></ul></li><li>Follow <a class="tc-tiddlylink-external" href="http://twitter.com/#!/TiddlyWiki" rel="noopener noreferrer" target="_blank">@TiddlyWiki on Twitter</a> for the latest news</li><li>Chat at <a class="tc-tiddlylink-external" href="https://gitter.im/TiddlyWiki/public" rel="noopener noreferrer" target="_blank">https://gitter.im/TiddlyWiki/public</a> (development room coming soon)</li></ul><h2 class="">Other Forums</h2><ul><li><a class="tc-tiddlylink-external" href="https://www.reddit.com/r/TiddlyWiki5/" rel="noopener noreferrer" target="_blank">TiddlyWiki Subreddit</a></li><li>Chat with Gitter at <a class="tc-tiddlylink-external" href="https://gitter.im/TiddlyWiki/public" rel="noopener noreferrer" target="_blank">https://gitter.im/TiddlyWiki/public</a> !</li><li>Chat on Discord at <a class="tc-tiddlylink-external" href="https://discord.gg/HFFZVQ8" rel="noopener noreferrer" target="_blank">https://discord.gg/HFFZVQ8</a></li></ul><h3 class="">Documentation</h3><p>There is also a discussion group specifically for discussing <a class="tc-tiddlylink tc-tiddlylink-resolves" href="https://tiddlywiki.com/static/TiddlyWiki.html">TiddlyWiki</a> documentation improvement initiatives: <a class="tc-tiddlylink-external" href="https://groups.google.com/group/tiddlywikidocs" rel="noopener noreferrer" target="_blank">https://groups.google.com/group/tiddlywikidocs</a> | ||||
| </p> | ||||
| </p><h1 class="">Installing <a class="tc-tiddlylink tc-tiddlylink-resolves" href="https://tiddlywiki.com/static/TiddlyWiki.html">TiddlyWiki</a> on Node.js</h1><ol><li>Install <a class="tc-tiddlylink tc-tiddlylink-resolves" href="https://tiddlywiki.com/static/Node.js.html">Node.js</a><ul><li>Linux: <blockquote><div><em>Debian/Ubuntu</em>:<br><code>apt install nodejs</code><br>May need to be followed up by:<br><code>apt install npm</code></div><div><em>Arch Linux</em><br><code>yay -S tiddlywiki</code> <br>(installs node and tiddlywiki)</div></blockquote></li><li>Mac<blockquote><div><code>brew install node</code></div></blockquote></li><li>Android<blockquote><div><a class="tc-tiddlylink tc-tiddlylink-resolves" href="https://tiddlywiki.com/static/Serving%2520TW5%2520from%2520Android.html">Termux for Android</a></div></blockquote></li><li>Other <blockquote><div>See <a class="tc-tiddlylink-external" href="http://nodejs.org" rel="noopener noreferrer" target="_blank">http://nodejs.org</a></div></blockquote></li></ul></li><li>Open a command line terminal and type:<blockquote><div><code>npm install -g tiddlywiki</code></div><div>If it fails with an error you may need to re-run the command as an administrator:</div><div><code>sudo npm install -g tiddlywiki</code> (Mac/Linux)</div></blockquote></li><li>Ensure TiddlyWiki is installed by typing:<blockquote><div><code>tiddlywiki --version</code></div></blockquote><ul><li>In response, you should see <a class="tc-tiddlylink tc-tiddlylink-resolves" href="https://tiddlywiki.com/static/TiddlyWiki.html">TiddlyWiki</a> report its current version (eg "5.3.4-prerelease". You may also see other debugging information reported.)</li></ul></li><li>Try it out:<ol><li><code>tiddlywiki mynewwiki --init server</code> to create a folder for a new wiki that includes server-related components</li><li><code>tiddlywiki mynewwiki --listen</code> to start <a class="tc-tiddlylink tc-tiddlylink-resolves" href="https://tiddlywiki.com/static/TiddlyWiki.html">TiddlyWiki</a></li><li>Visit <a class="tc-tiddlylink-external" href="http://127.0.0.1:8080/" rel="noopener noreferrer" target="_blank">http://127.0.0.1:8080/</a> in your browser</li><li>Try editing and creating tiddlers</li></ol></li><li>Optionally, make an offline copy:<ul><li>click the <span class="doc-icon"><svg class="tc-image-save-button-dynamic tc-image-button" height="22pt" viewBox="0 0 128 128" width="22pt"> | ||||
| </p><h1 class="">Installing <a class="tc-tiddlylink tc-tiddlylink-resolves" href="https://tiddlywiki.com/static/TiddlyWiki.html">TiddlyWiki</a> on Node.js</h1><ol><li>Install <a class="tc-tiddlylink tc-tiddlylink-resolves" href="https://tiddlywiki.com/static/Node.js.html">Node.js</a><ul><li>Linux: <blockquote><div><em>Debian/Ubuntu</em>:<br><code>apt install nodejs</code><br>May need to be followed up by:<br><code>apt install npm</code></div><div><em>Arch Linux</em><br><code>yay -S tiddlywiki</code> <br>(installs node and tiddlywiki)</div></blockquote></li><li>Mac<blockquote><div><code>brew install node</code></div></blockquote></li><li>Android<blockquote><div><a class="tc-tiddlylink tc-tiddlylink-resolves" href="https://tiddlywiki.com/static/Serving%2520TW5%2520from%2520Android.html">Termux for Android</a></div></blockquote></li><li>Other <blockquote><div>See <a class="tc-tiddlylink-external" href="http://nodejs.org" rel="noopener noreferrer" target="_blank">http://nodejs.org</a></div></blockquote></li></ul></li><li>Open a command line terminal and type:<blockquote><div><code>npm install -g tiddlywiki</code></div><div>If it fails with an error you may need to re-run the command as an administrator:</div><div><code>sudo npm install -g tiddlywiki</code> (Mac/Linux)</div></blockquote></li><li>Ensure TiddlyWiki is installed by typing:<blockquote><div><code>tiddlywiki --version</code></div></blockquote><ul><li>In response, you should see <a class="tc-tiddlylink tc-tiddlylink-resolves" href="https://tiddlywiki.com/static/TiddlyWiki.html">TiddlyWiki</a> report its current version (eg "5.3.4". You may also see other debugging information reported.)</li></ul></li><li>Try it out:<ol><li><code>tiddlywiki mynewwiki --init server</code> to create a folder for a new wiki that includes server-related components</li><li><code>tiddlywiki mynewwiki --listen</code> to start <a class="tc-tiddlylink tc-tiddlylink-resolves" href="https://tiddlywiki.com/static/TiddlyWiki.html">TiddlyWiki</a></li><li>Visit <a class="tc-tiddlylink-external" href="http://127.0.0.1:8080/" rel="noopener noreferrer" target="_blank">http://127.0.0.1:8080/</a> in your browser</li><li>Try editing and creating tiddlers</li></ol></li><li>Optionally, make an offline copy:<ul><li>click the <span class="doc-icon"><svg class="tc-image-save-button-dynamic tc-image-button" height="22pt" viewBox="0 0 128 128" width="22pt"> | ||||
| <g class="tc-image-save-button-dynamic-clean"> | ||||
| <path d="M120.783 34.33c4.641 8.862 7.266 18.948 7.266 29.646 0 35.347-28.653 64-64 64-35.346 0-64-28.653-64-64 0-35.346 28.654-64 64-64 18.808 0 35.72 8.113 47.43 21.03l2.68-2.68c3.13-3.13 8.197-3.132 11.321-.008 3.118 3.118 3.121 8.193-.007 11.32l-4.69 4.691zm-12.058 12.058a47.876 47.876 0 013.324 17.588c0 26.51-21.49 48-48 48s-48-21.49-48-48 21.49-48 48-48c14.39 0 27.3 6.332 36.098 16.362L58.941 73.544 41.976 56.578c-3.127-3.127-8.201-3.123-11.32-.005-3.123 3.124-3.119 8.194.006 11.319l22.617 22.617a7.992 7.992 0 005.659 2.347c2.05 0 4.101-.783 5.667-2.349l44.12-44.12z" fill-rule="evenodd"></path> | ||||
| </g> | ||||
|   | ||||
| @@ -3264,11 +3264,6 @@ span.tc-translink > a:first-child { | ||||
| 	border-radius: 6px; | ||||
| } | ||||
|  | ||||
| .tc-tiddler-frame .tc-test-case-wrapper { | ||||
| 	margin-left: -0.5em; | ||||
| 	margin-right: -0.5em; | ||||
| } | ||||
|  | ||||
| .tc-test-case-wrapper { | ||||
| 	background-color: <<colour testcase-accent-level-1>>; | ||||
| } | ||||
| @@ -3297,7 +3292,7 @@ span.tc-translink > a:first-child { | ||||
| 	display: inline-block; | ||||
| 	line-height: 0; | ||||
| 	border-radius: 1em; | ||||
| 	vertical-align: bottom; | ||||
| 	vertical-align: text-bottom; | ||||
| 	margin-right: 0.25em; | ||||
| } | ||||
|  | ||||
| @@ -3314,6 +3309,12 @@ span.tc-translink > a:first-child { | ||||
| 	height: 0.5em; | ||||
| } | ||||
|  | ||||
| .tc-test-case-header > h2 { | ||||
| 	background: <<colour background>>; | ||||
| 	border-radius: 4px; | ||||
| 	padding: 0.25em; | ||||
| } | ||||
|  | ||||
| .tc-test-case-header > h2, | ||||
| .tc-test-case-source > pre { | ||||
| 	margin: 0; | ||||
| @@ -3323,6 +3324,18 @@ span.tc-translink > a:first-child { | ||||
| 	font-style: normal; | ||||
| } | ||||
|  | ||||
| .tc-test-case-toolbar { | ||||
| 	float: right; | ||||
| } | ||||
|  | ||||
| .tc-test-case-toolbar svg { | ||||
| 	fill: <<colour tiddler-controls-foreground>>; | ||||
| } | ||||
|  | ||||
| .tc-test-case-toolbar .tc-drop-down { | ||||
| 	font-size: 0.8em; | ||||
| } | ||||
|  | ||||
| .tc-test-case-result-fail { | ||||
| 	border: 1px solid <<colour foreground>>; | ||||
| 	background-color: <<colour background>>; | ||||
| @@ -3366,10 +3379,14 @@ span.tc-translink > a:first-child { | ||||
| } | ||||
|  | ||||
| .tc-test-case-source .tc-tab-content { | ||||
| 	background: <<colour background>>; | ||||
| 	background: inherit; | ||||
| 	margin: 0; | ||||
| } | ||||
|  | ||||
| .tc-test-case-source .tc-tab-content .tc-field-table { | ||||
| 	background: <<colour background>>; | ||||
| } | ||||
|  | ||||
| .tc-test-case-source .tc-field-table { | ||||
| 	width: 100%; | ||||
| } | ||||
| @@ -3390,11 +3407,16 @@ span.tc-translink > a:first-child { | ||||
| 	padding-top: 0; | ||||
| } | ||||
|  | ||||
| .tc-test-case-footer-toolbar { | ||||
| 	display: flex; | ||||
| 	justify-content: flex-end; | ||||
| } | ||||
|  | ||||
| .tc-test-case-output { | ||||
| 	box-shadow: inset 2px 2px 10px 0px <<colour muted-foreground>>; | ||||
| 	background: <<colour background>>; | ||||
| 	border-radius: 4px; | ||||
| 	border: 1px solid <<colour foreground>>; | ||||
| 	border: 1px solid <<colour muted-foreground>>; | ||||
| 	flex: 1 0 49%; | ||||
| 	min-width: 250px; | ||||
| 	padding: 0.25em 1em; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Jeremy Ruston
					Jeremy Ruston