25th April 2018 at 3:56pm
See GitHub for detailed change history of this release
Improved CodeMirror Plugins
The CodeMirror plugin has undergone a substantial rewrite, with many new improvements:
- Upgrade to CodeMirror version v5.37.0
- Now modularised into:
- Base plugin: basic lightweight configuration, approximately 240KB
- Add-on plugins:
- Search and Replace
- Auto-completion
- Fullscreen editing
- Auto-close brackets
- Auto-close tags
- SublimeText keymap
- Emacs keymap
- Vim keymap
- Highlighting modes: Javascript, Xml, Html (htmlmixed), Html (htmlembedded), Css, Markdown, X-Tiddlywiki
- Automatic configuration (the configuration tiddler is not needed anymore)
- CodeMirror (engine.js) builds the configuration using information within the installed CodeMirror plugins
- New control panel configuration tab:
- Line numbers
- Theme:
- Editor font family (same as native TiddlyWiki)
- Cursor settings
- Line wrapping
- Active line highlighting
- Autocompletion on/off (if installed)
- Keymap
Other New and Improved Plugins
- New Dynaview Plugin makes it possible to build user interfaces that dynamically respond to changes in scrolling or zooming
- Improved Text-Slicer Plugin with customisable JSON rules
- Updated KaTeX Plugin to latest v0.9.0
Translation Improvements
New and improved translations:
- New Slovenian translation
- New Português (Brasil) translation
- Improved Dutch translation
- Improved French translation
- Improved German translation
- Improved Traditional and Simplified Chinese translations
- These translations now also reset the minimum search length to one character
Privacy Improvements
Prompted by the General Data Protection Regulation (GDPR), we've removed all third party cookies from tiddlywiki.com.
Usability Improvements
- Added new DiffTextWidget, and integrated it into the import listing and as a preview pane
- Added selectable previews to the import listing
- Added new editor toolbar buttons for wrapping the selection with double square and curly brackets
- Added new sortan Operator for sorting alphanumeric values such as "Apple 6", "Apple 7", "Apple 8", "Apple 9", "Apple 10", "Apple 20", "Apple 30", "Apple 100"
- Improved default fonts for readability as advised by GitHub
- Added an editor toolbar button for stamping fragments of formulae for the KaTeX Plugin
- Simplified the page scrolling behaviour: navigating to a tiddler now scrolls the top of the tiddler to the top of the viewport
- Added WidgetMessage: tm-copy-to-clipboard and also copy-to-clipboard Macro for copying text directly to the clipboard
- Added a hint to the field list dropdown
- Added a control panel setting for the default tab in the More sidebar
- Added a control panel setting for the titles of new tiddlers
- Added "rotate left" button to bitmap editor toolbar
- Improved criteria under which certain editor toolbar buttons are displayed
- Added support for a minimum length for the new tag field before the dropdown is shown
- Improved consistency and reusability of the palette, language and theme switchers
- Added support for retaining tab content in the tabs Macro
- Added support for adding links via the enter key
Hackability Improvements
- Added support for comparison operators to the RevealWidget
- Added support for StartupActions to execute action widgets at startup
- Extended ServerCommand to allow the port number to be specified as an environment variable
- Added screen width/height to platform information exposed at startup
- Extended DroppableWidget to pass modifier keys in a variable
- Extended DraggableWidget with actions for drag start and drag end
- Added a new TaskManagementExample (Draggable)
- Added new 'Stylesheets' tab to control panel
- Added new 'emptyMessage' parameter to list-links Macro and list-tagged-draggable Macro
- Added new
th-page-refreshed
hook - Enhanced macro evaluation by making parameters available as variables - see "Parameters as Variables" in Macro Definitions in WikiText
- Enhanced LinkWidget to allow better customisation of CSS classes
- Added new "value" suffix for the each Operator
- Added new subtiddler attribute to the SetWidget
- Added new subtiddlerfields Operator for extracting the fields from tiddlers within plugins
- Added ability to trigger actions on unchecking the CheckboxWidget
- Added support for a checked class to the RadioWidget
- Extended the is Operator to allow multiple types to be specified
- Added data attributes to ViewTemplate (see Custom data-styles)
- Added new RangeWidget
Bug Fixes
- Removed superfluous list item at the end of list-links-draggable macro
- Fixed problem with the content area of vertical tabs sometimes overflowing their right hand margin
- Fixed problem with double quotes within the new journal template
- Fixed problem with dragging inside a textarea
- Fixed usage of "default" attribute of SelectWidget when "index" attribute is used
- Fixed problem with crash when dragging over TiddlyWiki on some browsers
- Fixed issue with new journal button
- Fixed problem with filter and value attributes of SetWidget
- Fixed problem with numeric operands in the Extended Listops Filters
- Fixed problem with "put" saver and 412 return codes
- Fixed problem with variable references in field values in the edit template
- Extended behaviour of list-after field so that the tiddler is placed at the end of the list if the list-after field is present but empty
Developer Bug Fixes and Improvements
- Added plugin-priority field to core plugins
- Fixed problems with plugin ordering
- Several optimisations to the tiddler store:
- Avoiding slow Object.keys calls - saving 50% of some operations
- Optimising the tag filter - saving 50% on some tag operations
- Minor improvements to tiddler deletion
- Added support for custom boot paths
- Added new navigation hooks:
th-cancelling-tiddler
,th-new-tiddler
andth-renaming-tiddler
- Added new hook when the HTTP server starts
th-server-command-post-start
Contributors
@Jermolene would like to thank the contributors to this release who have generously given their time to help improve TiddlyWiki: