- Plugin updates:
- bug fix - library version update alert can show up even if it shouldn't
- feature - shortcut links - remove markdown parsing for shortcut link output (user can do it themselves if necessary)
- Plugin updates
- feature - helper functions - 3 helper functions added: asyncFilter, asyncMap & asyncForEach.
- Library updates
- feature - tablefiles - can change multiple table configurations simultaneously by selecting multiple tables with shift or ctrl
- polish - tablefiles - popup ui layout & styling polished
- refactor - lists_ui - helper function asyncFilter used instead of internal asyncFilter function.
- Plugin updates
- feature - settings - Add alerts when there are updates for the plugin or library
- feature - helper function - fileWrite (does "fileCreate" or "fileModify" as appropriate)
- polish - settings - button-view opening button is disable when button-view is opened
- polish - settings - moved "reset settings" button to "Actions" section
- polish - settings - removed separators between common expansion format settings
- Library updates
- feature - tablefiles - added an output format: "array", which returns a raw array. Useful for subshortcutting "tbl roll"
- polish - tablefiles - adjusted frontmatter configurations to be pulled from the cache (speeds up "tbl roll" popup).
- feature - readme - added version number
- bug fix - tablefiles - "tbl roll" (non-ui) checks the path against config tables, but not fm-config tables
- bug fix - tablefiles - table with no configuration is messed up when changing values the first time
- Plugin updates
- bug fix - autocomplete - not working when shortcut prefix contains shortcut suffix.
- Plugin updates
- feature - readme - properly documented the useful "unblock()" help function
- feature - readme - properly documented an overview of all help functions
- feature - helperfncs - added helper functions that were around, but not bundled ("print", "runExternal", "popups", "getSettings", "registerView")
- Library updates
- feature - tablefiles - table files can contain a frontmatter YAML with their configuration.
- feature - added confirmations to all "reset" shortcuts in the library. Double-confirmation for "state".
- Plugin updates
- bug fix - autocomplete - selecting from the list doesn't properly add the selection
- polish - readme - improved the documentation on "common format expansion"
- Library updates
- bug fix - adventurecrafter - "themes fill" is working, but it's output is broken
- Plugin updates
- bug fix - If an expansion error throws as null, which SOMEHOW actually happened, it's not being handled well.
- Library updates
- bug fix - lists - fixed bug with item renaming not recognizing a combo-list variable
- Plugin updates
- feature - autocomplete - now shows while typing the shortcut suffix. This is useful as some shortcut-texts use ":".
- Library updates
- feature - tablefiles - registered folders of tables are now pulled recursively. i.e. If a table is in a subfolder then it will also be pulled.
- polish - tablefiles - "tbl roll" shortcut (non-ui version) now accepts registered table titles and basenames case-insensitively
- Plugin updates
- polish - "ref all" shortcut removes all horizontal rules in descriptions
- feature - autocomplete - special types are handled specially:
- text type highlights indefinitely
- some of the extra-special types have been converted to text "text (details)"
- number types (>0, >=0) only accept numeric values
- path text type handles quotes properly (mostly)
- Library updates
- feature - tablefiles - "tbl roll" shortcut (ui-less one) can take the title or basepath of a registered table in addition to a path to a table file.
- feature - cards - draw and pick now have a variation that allows entering params in any order (using "from " & "to " prefixes)
- polish - cards - removed <number OR "all"> parameter types. Lets them work with new type checking, and can just use a really big number for "all".
- polish - updated all syntaxes to better adhere to the newly checked parameter types
- Plugin updates
- feature - ShortcutExpander - added event listening for expansion errors
- Library updates
- added shortcut-file "system" - "sys lasterror", "sys runjs", "sys triggererror"
- polish - une_ui - improved ui. All shortcuts show one big popup instead of multiple little ones
- feature - tablefiles - add shortcut "tbl reroll"
- feature - tablefiles - "tbl reroll" (non-ui version) made parameters case-insensitive
- feature - tablefiles - "tbl reroll" (non-ui version) made format parameter flexible
- removed the need for quotes
- allowed singular value: "comma" instead of commas"
- allowed untrimmed value
- polish - tablefiles - tbl roll (non-ui version) adjusted to be more useful when called from another shortcut
- feature - tablefiles - "tbl roll" shortcut (non-ui version) now accepts a path with implicit ".md" extension
- bug fix - tablefiles - tbl roll (non-ui version) errored each time
- Plugin updates
- bug fix - shortcutlinks - link doesn't work if part 2 (output script) is included but not defined
- Plugin updates
- bug fix - append & prepend shortcut links without block-ids are erroring out
- bug fix - rare race condition causes duplicate buttons in buttons view
- Library updates
- bug fix - cards - card images don't show when they have spaces or parenthesis
- bug fix - lists - combo-lists fail
Plugin updates - "expFormat()" adds standard expansion formatting to a string or string array. This format is based on settings added under "Expansion format": prefix, line-prefix and suffix. - "expUnformat()" removes standard expansion formatting from a string or string array. - Shortcut links - can include a block-id to define where the output should go - Shortcut links - can include a bit of javascript to modify expansion output - settings - both the autocomplete feature and the autocomplete help tooltip are togglable in the settings - popups.pick - allow turning the dropdown into a list box of either a fixed size, or adaptive size to it's contents - popups.custom - "resolveFnc()" passed to onOpen to allow early outing with custom result - helper function - "appendToEndOfNote()" replaced with more versatile "addToNote()" function - helper function - "unblock()" added to manually ublock if the input blocker is left on, such as if a shortcut errors out. - helper function - "getLeafForFile()" is replaced with "getLeavesForFile()" - bug fix - the latest Obsidian release breaks some ui in the inline scripts buttons view Library updates - tablefiles - shortcut-file added! Allows working with files of tables in different formats. - cards 2.0 - a new interface for working with virtual cards. It has a number of incompatibilities with the older interface. - state - state file now saved to same folder as the state shortcut-file. This ensures the state is properly transferred with the rest of the vault, regardless of what happens to the .obsidian folder. - state - state saving is now done after each shortcut is run, rather than on a timer - notevars - resolved incompatibilities with latest Obsidian - notevars - resolved bug where running "notevars set" multiple times only saved one of the changes - general - commented entire library - general - shortcuts that use pick popups now show lists instead of dropdowns. - files - shortcut-file added! Shortcuts for working with files, including: "extensionChange" and "files shortcutbatch" - lists - added "lists rename" and "lists shortcutbatch"
- bug fix - state is occasionally not saved on Obsidian quit.
- bug fix - fixed announcement to include "import latest library" message.
LIBRARY UPDATES - The state system now keeps the state between Obsidian sessions without needing user interaction. - Shortcut added - "lists fromfile lines {list name} {file name}" reads a file and adds each of its lines to a list as an item. - Cards system updates: - Can modify the cards through the card-pile viewer panel. Drag to reorder and double-click to rotate. - Custom card-backing. - Global card size. - Can predefine card-piles with the shortcut "cards pile {pile id}" - Square cards now rotate to any of four directions. Non-square cards still only rotate to two directions: rightside-up and upside-down. PLUGIN - Shortcuts are now case-insensitive (useful for mobile, which auto-cases letters) - "getObsidianInterfaces" was merged into "helperFncs" - "onShortcutsLoaded" event added. - Shutdown scripts are called when closing Obsidian. - The drag-reorder system is improved. - Button panel's create/edit button popup has better field descriptions. BUG-FIXES - Card images in notes are absolute, so break when vault is moved or synced. - Drag-reorder not working on mobile.
LIBRARY UPDATES - Interfacing with the Dice Roller plugin made possible with the new "plugin_diceroller" shortcut-file. - Contains a single shortcut ;;diceroller {command}:: - Virtual cards within Obsidian made possible with the new "cards" shortcut-file. - Check out the tutorial video: https://www.youtube.com/watch?v=-m4n7d3aKC8 - A new panel type to view card-piles added with the new "cards_pileviewer" shortcut-file. - More user-friendly versions of shortcuts added with the "cards_ui" shortcut-file. - notepick now uses the state system to save state between Obsidian sessions. FEATURES - Functions "addCss()" and "removeCss()" provided to allow shortcut-files to use their own CSS. Added to "window._inlineScripts.inlineScripts.helperFncs". - Can now customize button texts for popup panels. - popups.input now takes an optional "suggestions" array that will show in a dropdown list beneath the textbox (if provided). - Plugin access added at "window._inlineScripts.inlineScripts.plugin" - Plugin has getObsidianInterfaces() function that returns some useful Obsidian interfaces. BUG-FIXES - Current parameter isn't highlighted if space-skipping past prior optional ones. - "window._inlineScripts" is'n't removed when plugin is disabled
- bug fix - announcement - latest has a broken link.
- polish - announcement - added bullet to announce support shortcut-files.
FEATURES - A button panel has been added to plugin, allowing custom button creation for running shortcuts - Button panel buttons can run shortcuts with "???" run-time parameters - Button panel groups allow setting up groups of buttons for different tasks - Shortcut-files automatically get their own button panel groups - Shortcut links - Links that will trigger a shortcut on clicked, either once or on each click. - Can define run-time parameter captions in the link - In the library, many shortcut-files now have "x_ui" suppliment shortcut-files to redo complex shortcuts in a more graphical ui way. - Global variable setup in shortcut-files has been streamlined with the addition of "confirmObjectPath()" - Added video tutorials for a number of shortcut-files in the library. - Added a variable with list of the loaded shortcut-files and their registered order. - Made a collection of helper functions available to shortcuts BREAKING CHANGES - About string syntax - parameters no longer include "required" or "optional". - "Optional" parameters are now any parameters that specify a default value. - The variable where session state is stored has changed location: - It has moved from "_inlineScripts.state" to "_inlineScripts.state.sessionState" - In the library, the new "x_ui" suppliment shortcut-files redo some of the more complex shortcuts. It's possible that this may cause some confusion, if the user isn't aware of them. NON-BREAKING CHANGES - Startup and shutdown scripts can now use helper scripts - Warning added when shortcut-file is registered, but has no shortcuts - Can display multiple version annoucements when plugin is updated - Buymecoffee donation method added. Donation methods added to bottom of settings.
- bug fix - ios platform incompatible with regex look-behinds. Replace all lookbehinds!
- bug fix - disabling plugin causes "hidden" autocomplete description div to show
- polish - made announcement message applicable to all 0.21.x
- bug fix - announcement doesn't show properly in all situations
- feature - default settings now include the plugin's current version
- polish - release announcement - Refer to plugin as "Inline Scripts"
- feature - shortcut autocomplete with shortcut descriptions
- refactor - Plugin rename: "Text Expander JS" to "Inline Scripts"
- feature - default prefix & suffix set to ";;" & "::" for all platforms
- feature - sfile sections dividied by "__" instead of "~~"
- feature - sfiles now use naming convention: "***.sfile.md"
- bug fix - format settings - added block against prefix & suffix containing characters with auto-complete
- feature - "expansionInfo" expansion parameter added, along with "cancel" settable member to cancel the expansion.
- feature - settings now have a "Reset to defaults" button.
- feature - library importer - now lets user pick the vault path for the imported library.
- bug fix - backslashes in the shortcut-text are removed when expanded.
- bug fix - library files are cached during library import. If they are changed, during execution, repimport won't include changes. If internet is lost, reimport won't fail.
- feature - Allow library to determine the disabled flags for importing shortcut-files.
- feature - Added a ui to disable shortcut-files without removing them from the shortcut-file settings list
- feature - help system updated. General "help" is available to setup scripts and can be checked for loaded sfiles.
- feature - added a "failSilently" parameter to the expand() function
- bug fix - Import Library feature doesn't fail gracefully on unable to connect to repo.
- feature - Shortcut-files can be disabled, without removing them. Feature implemented, but not yet exposed through UI.
- bug fix - shortcut-files with non-standard newlines (\r chars) cause bugs in the help system.
- polish - only run require("child_process") if on non-mobile platform.
- polish - "==" and "!=" to "===" and "!=="
- bug fix - Renaming the active note makes "_currentFilesName" inaccurate. If the active note is a shortcut-file, this causes a minor bug until the active note is changed.
- feature - Each shortcut now has an "About" string, to store a short documentation on the shortcut.
- feature - A robust help system is now available, built around the shortcut "About" string.
- feature - shortcut-files are now parsed properly when they have a metadata frontmatter section.
- feature - Dfc now ALWAYS refreshes shortcuts when shortcut-file is modified. Dev-mode causes refresh on sfile touch.
- feature - shortcut-files can now contain shutdown scripts: shortcuts run when shortcut-file is removed, or plugin is disabled.
- feature - A new function is available to shortcuts: print(message) shows message in popup and console, then returns the message.
- feature - If a setup script returns true, the shortcut-file's shortcuts are not loaded into the system.
- feature - Feature to allow adding callbacks for when an expansion occurs
- feature - "Import Library" now always maintains the order of library shortcut-files when imported into the shortcut-files list.
- refactor - the "getExpansion()" function, runnable from shortcuts, is now "expand()".
- polish - added pre-release test: a text file with steps to test ALL features of TEJS.
- bug fix - if expansion returns something other than string or string array, it's not handled right.
- Polish - Wrote DEFAULT_SETTING.shortcuts with backtick string for readability
- Polish - fixed typo
- Polish - changed "greet" shortcut to "hi"
- Polish - Put Object.freeze into DEFAULT_SETTINGS assignment
- Polished code - refactored "settings.getShortcutReferencesFromUi()" to "settings.getShortcutFilesFromUi()"
- Polished code - Improved code readability of DEFAULT_SETTINGS
- review response - Replaced "plugin.app.isMobile" with "obsidian.Platform.isMobile".
- bug fix - changing the shortcut-files list in the settings ui, then immediately importing the library causes the changes to be reverted.
- Responded to review: replaced plugin's platform vars with direct API references.
- Responded to review: renamed local copy of "activeFile" to better signify its meaning (a cache to reference upon the activeFile changing).
- Improved comments in Dfc class.
- Polish code - minor fixes for review
- Polish code - minor fixes for review
- Polish code - minor fixes for review
- All "classes" are now official JS classes.
- bug fix: app was glitching out at start due to not waiting for system to be ready before pulling files
- Code polish (for passing review quickly)
- Code polish (for passing review quickly)
- Add defaults - doesn't allow duplicating default shortcuts that are already in the list. Removes preexisting defaults from list, then append all defaults to list.
- Text Expander JS plugin version shows at top and bottom of settings
- bug fix: Input-block was blocking a user choice that was triggered after it was added
- bug fix: Added input block for while importing library (since async file downloading does not)
- bug fix: import library function asks user for choice as if "tejs" library folder is different from "tejs".
- bug fix: "help" system doesn't recognize help shortcuts that include numbers or underscore
- new feature: "Import full library" button in settings - downloads and sets up the entire Text Expander JS shortcut-file library into the vault
- bug fix: when on mobile, settings with multiple buttons don't separate buttons enough
- bug fix: bad shortcut-file references aren't red on opening settings
- bug fix: console error for each ; typed that doesn't expand
- Merged CM5 and CM6 expansion code.
- bug fix: error with CM5 (old editor) and shortcuts that return string arrays.
- Added up/down buttons for shortcut-files and shortcuts lists in settings
- bug fix: error during expansion can cause out-of-date editor issues.
- bug fix: shortcuts without return statements have their expansion script run properly, but still trigger "shortcut unidentified".
- Add ability to run external applications through the "runExternal" function (not available through mobile).
- bug fix: erroring on a shortcut after it has called getExpansion produces an "uncaught" error, rather than the proper, useful error.
- bug fix: minor: settings ui: format example misaligned
- Empty shortcut is "helperblock": it clears out helper scripts. It is auto-added to the end of each shortcut-file
- add an automatic "help" shortcut that lists all "* help" lines.
- add to default shortcuts: date, time, datetime
- Replaced MyPlugin and MySettings titles
- Removed expansion trigger options (now only expands on final key hit)
- shortcut tests are now stored as regexp objects, instead of strings
- All CSS classes now prefixed with "tejs_" to avoid overlap with other plugins
- Expansions strings can now be surrounded with a JavaScript fenced code block. Test strings can be surrounded with a basic fenced code block.
- Expansion scripts can now return an array of strings. This allows segmentation of the data, though the string array is joined during expansion.
- Expansion scripts now have access to "getExpansion(text)" to allow calling other shortcuts and using their results.
- Decent error messaging for parsing shortcut-files and when shortcut isn't recognized
- change shortcut from json to custom format: "~~"
- create scripts to playtest
- Fill in rest of readme instructions
- confirm plugin works on iphone
- polish code
- Remove "expansion trigger" option for mobile
- Settings: Developer mode: monitor shortcut-files for changes
- polish settings ui on mobile
- Default settings different on mobile vs non-mobile (prefix/suffix)
- bug fix: expansion incorrect with non-1-sized suffix
- fix bug: changing prefix/suffix requires plugin reload
- Settings: Shortcuts (definable directly in settings)
- Settings: each shortcut-file should have a delete button (no global "Remove file" button)
- Get working on mobile
- Settings: Custom CSS filename
- Replace "alert" with alternative that doesn't mess up caret
- CSS file added for settings UI (replaces inline styles)
- Adjust version format (final digit has 3 spaces, not 4)
- Fix ";;"/";" bookends to work when caret is on prefix
- Settings: Shortcut prefix & postfix
- Settings: Shortcut definitions filename
- Settings: Shortcut expansion hotkey
- Allow building a result from multiple shortcuts (to allow common code)
- Allow replacer to be either a string, or an array of strings to be concatenated together
- Console log when loading/unloading plugin
- Have version follow format convention (##.##.####)
- Basic implementation. All settings hardwired