MarkdownMonster

An extensible Markdown Editor, Viewer and Weblog Publisher for Windows

OTHER License

Stars
1.6K
Committers
1

Bot releases are visible (Hide)

MarkdownMonster - v3.4 Latest Release

Published by RickStrahl about 2 months ago

  • AI Support Features: Summarize, Translate, Grammar Checking
    We've added a number of AI assisted operations that allow you to create a summary of the current document or selection, translate a selection or the entire document, or perform a basic grammar check of a selection of text.
    Features require an OpenAI/Azure OpenAI API key or local a OpenAI server like Ollama.

  • Updated OpenAI Image Generation Connections
    We've made changes to the way OpenAI Image Generation API connections are made, using a shared mechanism with the new completion features. If you had a previously configured image provider you'll likely need to re-enter the connection information.

  • Add Support for PlantUml Diagrams
    You can now preview the embedded PlantUml diagrams in the previewer as well as capture and export diagram output in your Markdown documents.

  • Toggle Preview Zoom
    Provide a more consistent way to zoom the preview window within the editor. You can now press Ctrl-11 to zoom the preview in the editor/preview pane, and the choice persists across documents.

  • Switched FontAwesome v6.x
    Markdown Monster now uses FontAwesome 6.0 in the preview renderer from the v4.70 (ugh!). All font styles and the compatibility layer are included to ensure that existing usage of FA fonts in the preview continues to work.
    Keep in mind that FA icon usage depends on support in your final Markdown output rendering target (ie. GitHub, Doc or Blog site etc.) and that engine has to support FontAwesome.

  • Add OnContextMenuOpened Addin Handler
    This method allows interception of several of the context menus that get opened. You can check for a specific context menu type and then use this to potentially inject additional menu options into the context menus.

  • Add Copy Selection on Preview Context Menu
    Add visual Copy Selection to the Preview Context menu. Previously you could only use Ctrl-C to copy content.

  • Add Support for Addin Loading for mmCli
    Addins are now loaded for mmCli so things like Markdown Render Extensions and Custom Parsers can run in mmCli.

  • Fix: Cleanup DocFX formatting
    Changed DocFx formatting for note boxes to more closely match GitHub's light and dark theme styling. (#)

  • Fix: Search Link in Link Dialog and Link Lookup
    Fix search engine lookup that provides a link list for the selected search text. Provide current Edge browser string to help with Bing not identifying content as a bot.

MarkdownMonster - v3.3

Published by RickStrahl 5 months ago

  • Support for [[_TOC_]] Auto-Generated TOC
    You can now insert [[_TOC_]] into your document to force the preview and HTML output to generate a table of content dynamically into the document. The Document outline has a new button that inserts this dynamic link.
    Note: This feature may not be supported by your Markdown server tooling (ie. GitHub does not support this while GitLab and Azure does). (#1084)

  • External Programs can now set a EditorKeyBoardShortcut
    You can now associate a keyboard shortcut to an external program that is added. The shortcut is active only inside of the editor, but it allows for quick launching programs.

  • Improved Link Lookup in Paste Href Dialog
    The Link from Web button now runs considerably faster to retrieve search results and provides more consistent results. There's now also a status bar that provides better progress and error information when retrieving links. The context menu has also been adjusted for better optimized viewing. You can now also use alt-l (Link Lookup) and alt-s (search web) via hot keys inside of the dialog.

  • Add Header Level to Document Outline
    The document outline sidebar now displays the header level as a small number snext to the header icon. This makes it easier to see at a glance what indentation level the current selection has as the document outline stays in sync with cursor position. It also lets you more easily see if your document levels are skipping levels. (#1089)

  • Improve PDF Output for Page Breaks
    Add additional Print styling to the HTML generated for print to attempt to better keep together paragraphs, headers and code blocks. This especially improves the Print to Pdf functionality.

  • Additional System Information on About
    The About dialog now shows additional system information if you hover over or click on the version information. Clicking the new info icon (or the entire line) will copy the information to be copied to your clipboard which is useful for bug reports. Info also includes WebView Runtime and SDK versions now.

  • Log WebView Runtime and SDK with Errors
    When errors occur, we now log the WebView runtime and SDK versions. Since a large percentage of errors are related to WebView internal issues that are forwarded to the WebView team this information is often useful for them.

  • Improved CSV Import Options
    CSV import fixes ability to use tab character as you weren't able to set that character previous in the input field. There's no a dropdown for common CSV separator characters including tab (\t) which can now also be represented in the input field. The separator value is now remembered. (#1086)

  • Add Git -> Open in Diff Editor on Context Menus
    There are now context menu options on the Folder Browser and Document Tab context menus to open the current (saved) document on disk in the configured Diff editor. Note that files are diffed from disk and any updates will affect the disk file. If the editor file has no pending changes any changes are immediately updated in the editor. If there are pending changes, the save operation will prompt to decide which file to choose or to diff files again cherry pick changes.

  • Fix: Many Fixes in the Folder Browser
    Thanks to @internationils for his many support issues posted, that helped fix many small inconsistencies in the folder browser related to drag and drop, renaming, context menu operation and more.

  • Fix: Making changes to MarkdownMonster.json Configuration file in IDE now automatically reloads Settings
    It's been notoriously difficult to make changes manually to MM's configuration in markdownmonster.json while MM is running, due to the way active settings were saved on shutdown. We now reload settings from file if markdownmonster.json is saved from within the IDE which ensures the latest settings are active. Note: If you save externally in another editor this won't happen and you still need to ensure MM is not running in order to update settings that will stick.
    We still recommend that you use the interactive Settings UI where possible to avoid accidentally setting invalid configuration values, but this is useful for settings that can't be directly set inside of the Settings UI. (#1083)

  • Fix: TOC formatting for Inline Code and Escaped Characters
    When generating a Markdown TOC into the document the inserted text now handles non-plain text that contains escaped text and inline code better. (related to#1084)

  • Fix: KeyBinding Manager editing inside of the MM editor
    MM now saves and applies hotkeys immediately by reloading all key bindings. This makes hot keys added or changed immediately available (if they don't interfere with other bindings) and also fixes an issue where new keys where sometimes 'lost' and overwritten. As previous fix: This only works if you use the internal editor - if using external editors make sure MM is not running to ensure changes take.

  • Fix: PDF Output Preview not working
    Fix issue where Save To PDF failed to display the PDF even when the option to display after generation was checked.

  • Fix: Pop out YouTube Links to new Shell Browser
    Any of the links in the Embed YouTube Videos dialog browser now navigate in the user's configured shell Web Browser (ie. Edge, Chrome, Brave, FireFox etc.) rather than popping up a limited WebView browser window. Specifically this is meant for clicking on the video title or Watch on YouTube links but also any links that are shown in-video or after the video completes.

  • Fix: Use Theirs when file was updated externally
    Fix the Use Theirs option that reloads the document from disk, if you try to save and the file has been externally changed. You get options to Use Yours, Use Theirs and Compare which brings up your configured Diff editor to chose individual changes. (#1099)

  • Fix: Add Reload Editor Context Menu Option to force document to reload
    This functionality existed previously, but there was no indication this was available. We've also removed the various 'window' context menu options when the window height is <1100 pixels to avoid too menu menu choices that overflow the screen. If window is big the larger menu still displays. (#1099)

  • Fix: Check Integrity of JSON before saving MarkdownMonster.json config file
    Before saving a potentially invalid JSON file, if editing MarkdownMonster.json configuration file manually in the MM editor, the file is now checked for validity first. If the JSON is invalid a status error message is displayed and the file is not saved.
    Note: Externally editing the file and saving can still result in an invalid file in which case the configuration file will revert to its default settings. (#1098)

  • Change: Link Dialog Path Resolution
    When selecting a file or folder from disk to link to paths are now always embedded as relative paths, except when paths walk all the way back to the root and back up. Any of those root paths are embedded as absolute file:/// path links. (#1044)

  • Fix: Spellchecker with Quotes around Strings
    Fix issue where quotes around strings were causing the spell checker to incorrectly place spell check error highlights. (#1101)

  • Fix: Table Editor Remembered Position when Window is Pinned
    Fix issue where a pinned main window was causing an invalid, potentially off screen location for the table editor on launch.
    (#1102)

  • Fix: Document Stats on Preview Editor Display
    Fix issue where document stats on the status bar were not updating when the document is browsed in preview mode from the Folder browser. (#1109)

  • Fix: Context Menu in Folder Browser Navigates Item
    When right clicking into the context menu in the folder browser, the selected item was navigated, which is unusual behavior. Changed now to not navigate to that item, but the context menu acts on the item underneath the cursor regardless of selection status. (#1112)

  • Fix: Handle .razor Files in Folder Browser and Editor
    Added .razor as a default supported editor format so these files can be previewed and edited in the editor. Note: Razor/Blazor syntax is is not directly supported, it's provided as an Html dialect. You can view externally with Open With or Open in VS Code (if installed) for more complete functionality.

MarkdownMonster - 3.2

Published by RickStrahl 9 months ago

  • Move to .NET 8.0
    Move all application binaries to .NET 8.0. The installer now requires .NET 8.0, so updates on machines that are running .NET 7.0 will no update to .NET 8.0. .NET 8.0 Shared Runtime is dynamically installed during setup or at runtime (for portable installs).

  • Add OpenAI Image Generation Addin in (Preview)
    You can now generate AI images using OpenAI and Dall-E 3 to generate images in your documents or for general purpose use. The plugin provides an interactive way to create prompts and generate images. You can embed, save or copy generated images and browse through and manage previously generated images for later review or re-prompting.
    requires an OpenAI API key

  • Image Generator Azure OpenAI Support
    We've added support for Azure OpenAI keys for using the Image generator.
    Note: Currently Dall-E 3 is only supported in a single Azure Region (Sweden Central), and you have to set up an Azure Dall-E deployment specifically in this region.

  • Add Support to Save with Elevated Rights
    You can now optionally save documents that are permissions restricted by elevating to Administrator. If a file is not authorized a notification pops up to show an option to save with elevated rights instead.

  • Add MathJax 3.0 Support
    Update the Math rendering extension to use the latest version of MathJax which has much richer support including much improved Accessibility (including Braille support). (#1080)

  • Improved KeyBinding Manager Support for any Command
    You can now bind any of MM's internal commands to a keyboard shortcut. You can specify the command by CommandName in the MarkdownMonster-Keybindings.json configuration file. Command names can be found in the class reference documentation under AppCommands and its various sub-objects. Commands can be specified by their property name or with the full xxxxCommand name.

  • Add Caption to Dropped Files and Images
    When dragging or pasting files or images into the editor, we now try to guess the caption based on the filename using Proper Case, Snake Case, Camel case de-conversions if no spaces are present.

  • 'Copy Link' for Web Links and 'Copy Image Link' for Images in Previewer
    In the preview browser you can now copy links for Web images and links to the clipboard from the Previewer context menu. Note that only Web links - not relative or local file path links - show this option on the context menu.

  • Updated GitHub Preview Styling
    Minor tweaks to the GitHub default preview templates: Remove the grid outline when rendering under 980px frame width to reduce wasted space. Grid outline is rendered in larger screen sizes (980px+). Clean up blockquotes and docfx renderings and backgrounds. Clean up differences between the GitHub light and dark preview templates.

  • Updates to DocFx Preview Styling
    In light of GitHub's addition of some DocFx functionality in its Markdown renderer we've more closely matched the default styling of the Note/Warning/Info/Tip block quote rendering to more closely match the GitHub styling in the GitHub styles. Also updated the Blackout template styling.

  • Small And Italic Command Palette
    Added Small and Italic to the command palette as a quick short cut to add the compound operation to a selection. Similar to the existing Bold and Italic operation.

  • Table Editor Commands to Command Palette
    You can now access Insert Table, Format Table and Edit Table as commands from the Command Palette (ctrl-shift-p).

  • Improved Folder Browser Search Results
    The Find in Files functionality now includes a file icon for file type, the number of matches per file, the file date, and a tool tip that shows file information and a preview of the file's content for quick review.

  • Move WebView Environment to %localappdata%
    Due to some issues with portable installs and write permissions, the local WebView environment folder has now been moved to the %localappdata%\Markdown Monster folder which is (normally) writable and always accessible. This avoids problems with users installing the portable version and not setting their PortableSettings folder to be writable. This at least ensures that the editors and other viewers load correctly.

  • Installation moved to Program Files
    We've moved the default installation location for the full installation to the Program Files folder to avoid common installation issues related to Windows Account usage that in the past would install certain components in the wrong location when elevation was required. We've also moved all remaining updatable content (except the preview templates and previewers) out of the install folder into common file location.

  • Portable Install Behavior Remains unchanged
    Besides the changes to the full install, the Portable Install can still be installed in any location of your choice as a self-contained install that can store all application, and common updatable configuration and support data in a local folder hierarchy. Portable installs by default use a contained PortableSettings folder which falls back to the %appdata%\Markdown Monster common path that is also used by the full install if permissions are not available to write files. This behavior is mostly unchanged except the additional files that now go into the PortableSettings or common folder.

  • Fix: Image Generator Memory Usage
    Fix memory leaks for the image list loading which result in very large memory usage when repeatedly loading the AI Image Generation Addin.

  • Fix: Image Generator Load Time
    Fix slow startup and UI lockup when loading the AI Image Generator with a lot of images. Images are now loaded asynchronously and leave the UI responsive even with large amounts of recent images displayed.###

  • Fix: DocFx include/code Embedding
    Fix issue with built-in DocFx include/code embedding directives ([!include] and [!code-lang]) which were failing if multiple directives were used on the same page.

  • Fix: Preview Render Bug When # (and others) Character in Base Path
    Fix issue with a number of extended characters that are legal for local file names, but not legal in URLs. Due to the way browsers parse URLs this is 'partial' url encoding so a custom encoding scheme is used. #1068

  • Fix: Non-existant .md File Navigation in Previewer
    Fix Previewer so that when navigating a non-existent Markdown file no navigation (to an error page before) occurs and a statusbar error is displayed pointing at the missing expanded filename.

  • Fix: Image Link Navigation in Previewer
    Fix issue where image links (links that wrap an image) are not properly navigated due to the initial image target. Fixed to treat nested image links like simple links for preview navigation.

  • Fix: PDF Generation output does not open file for Viewing
    Fix issue where even if you have the Display output file checkbox set on the PDF generation form output was not displayed. Fixed and you should now see the output displayed in your system configured PDF Viewer.

  • Fix: Consolidate WebView Initialization
    Fix WebView Initialization by consolidating the WebView environment into a single instance that is shared across all instances. This fixes rare WebView crashes with UnauthorizedException errors caused by potentially errand WebView instances. It also slightly improves initial load performance.

  • Fix: WebView Install Folder in Startup Location
    Fixed issue where the YouTube embedding dialog was causing the WebView to create a separate WebView environment in the install folder rather than the common shared location used by all other WebView controls. This also fixes a common point of crashes

MarkdownMonster -

Published by RickStrahl 12 months ago

download Web Site

  • Add Support to Save with Elevated Rights
    You can now optionally save documents that are permissions restricted by elevating to Administrator. If a file is not authorized a notification pops up to show an option to save with elevated rights instead.

  • Improved Folder Browser Search Results
    The Find in Files functionality now includes a file icon for file type, the number of matches per file, the file date, and a tool tip that shows file information and a preview of the file's content for quick review.

  • 'Copy Link' for Web Links and 'Copy Image Link' for Images in Previewer
    In the preview browser you can now copy links for Web images and links to the clipboard from the Previewer context menu. Note that only Web links - not relative or local file path links - show this option on the context menu.

  • Add Caption to Dropped Files and Images
    When dragging or pasting files or images into the editor, we now try to guess the caption based on the filename using Proper Case, Snake Case, Camel case de-conversions if no spaces are present.

  • Move WebView Environment to %localappdata%
    Due to some issues with portable installs and write permissions, the local WebView environment folder has now been moved to the %localappdata%\Markdown Monster folder which is (normally) writable and always accessible. This avoids problems with users installing the portable version and not setting their PortableSettings folder to be writable. This at least ensures that the editors and other viewers load correctly.

  • Emoji Picker Improvements
    The Emoji Viewer now loads considerably faster by delay loading some of the 1600+ icons out of band. The picker now shows a count of icons in the list in the status bar, with the list updated as you search and filter.

  • Installation moved to Program Files
    We've moved the default installation location for the full installation to the Program Files folder to avoid common installation issues related to Windows Account usage that in the past would install certain components in the wrong location when elevation was required. We've also moved all remaining updatable content (except the preview templates and previewers) out of the install folder into common file location.

  • Portable Install Behavior Remains unchanged
    Besides the changes to the full install, the Portable Install can still be installed in any location of your choice as a self-contained install that can store all application, and common updatable configuration and support data in a local folder hierarchy. Portable installs by default use a contained PortableSettings folder which falls back to the %appdata%\Markdown Monster common path that is also used by the full install if permissions are not available to write files. This behavior is mostly unchanged except the additional files that now go into the PortableSettings or common folder.

  • Fix: Non-existant .md File Navigation in Previewer
    Fix Previewer so that when navigating a non-existent Markdown file no navigation (to an error page before) occurs and a statusbar error is displayed pointing at the missing expanded filename.

  • Fix: Image Link Navigation in Previewer
    Fix issue where image links (links that wrap an image) are not properly navigated due to the initial image target. Fixed to treat nested image links like simple links for preview navigation.

  • Fix: PDF Generation output does not open file for Viewing
    Fix issue where even if you have the Display output file checkbox set on the PDF generation form output was not displayed. Fixed and you should now see the output displayed in your system configured PDF Viewer.

  • Fix: Consolidate WebView Initialization
    Fix WebView Initialization by consolidating the WebView environment into a single instance that is shared across all instances. This fixes rare WebView crashes with UnauthorizedException errors caused by potentially errand WebView instances. It also slightly improves initial load performance.

  • Fix: WebView Install Folder in Startup Location
    Fixed issue where the YouTube embedding dialog was causing the WebView to create a separate WebView environment in the install folder rather than the common shared location used by all other WebView controls. This also fixes a common point of crashes

Breaking and Recommended Changes

  • Recommend full uninstall and reinstall for Full Installations
    Due to the move to Program Files we recommend you do a full, uninstall and then re-install Markdown Monster if you are using the full installer or Chocolatey install. It's not required, and if you don't re-install the existing %localappdata%\Markdown Monster or your own custom location will continue to be used. The explicit uninstall ensures that the new Programs Files path is used on a new install. Portable installs don't need to have anything changed.

  • Remove WebView_ Folder From Markdown Monster Install Folder (if present)
    If your MM installation folder contains a WebView_* folder, it's recommended that you shut down MM and delete the entire folder. This folder was not intended to be placed and should be deleted so it will no longer take up space.

MarkdownMonster -

Published by RickStrahl about 1 year ago

3.0.1 - Official Release

download

  • Updated Version runs on .NET 7.0
    We've moved Markdown Monster to run under .NET 7.0 to take advantage of better integration with new .NET features and support libraries as well as slightly improved performance and many development improvements on our end. This release requires the .NET 7.0 Desktop Runtime (7.0.3 or later). The latest runtime is installed as part of the full setup process if a compatible version is not present. For the portable version the runtime either needs to be present or has to be installed. To install the runtime you can use mm.exe -runtimeinstall or manually download and install from Microsoft's .NET Download site.

  • Added GitHub Dark Preview Theme
    Since GitHub has supported dark mode for some time we've added a GitHub Dark theme. This is now also the default preview theme for dark mode. Additionally there are a few adjustments to the GitHub (light) theme to keep it up to date with the actual GitHub site.

  • Light Theme Improvements
    Added a number of modifications and cleanups to the light theme. Many improvements in background/foreground combos, selections as well as using more distinctive colors for separators and borders.

  • Updated Icons throughout Application
    We needed to move off our old FontAwesome 4 icon set due to incompatibility issues in .NET Core, and in the process we are now are running on FontAwesome 6 which provides many additional icon options as well as improved color and stroke support. New and sharper icons make for clearer toolbar, button and menu options throughout the application.

  • Drag and Drop support for Video and Audio Files Links
    You can now drag video and music files from the folder browser and Explorer into the editor and have them auto-linked as media files. Videos embed as a video player, audio files as audio player.
    Note: Audio/Video linking is not supported by all Markdown platforms/renderers, so make sure that your target platform supports this functionality.

  • New WebLog Post Option to post to New-Posts Folder first
    For those of you that write a lot of blog posts or procrastinate with finishing posts, it can be useful to create new posts in the New Posts folder until the post is ready to be published. If the post is in New-Posts or Drafts folder, publishing will prompt you to optionally save the post in the WebLog post folder structure (postFolder/yyyy-MM/title-of-the-post). There's no obligation to use this of course and you can always move your posts to whatever location you like, but this provides an organized way to keep track of your posts and drafts.

  • Add Custom External Programs for Documents
    You can now add external programs to launch for active document in the editor or for files and folders in the Folder Browser. Launch individual programs or URLs and specify arguments in a variety of ways. (belatedly fixes #947)

  • Enable Mermaid Charts By Default
    With wider support of Mermaid in various rendering platforms including GitHub, Mermaid rendering is now enabled by default. There's still a Setting flag that can be used to turn checking for Mermaid code on and off which can improve load and render speed very slightly when false. Note: If you're updating a previous version, your current setting will not change so if it was set at default of false it'll continue to stay that way and have to be manually enabled. You can use Tools|Settings|Mermaid to set this value.

  • Update ACE Editor to current version
    It's been a while since the last synced to Ace Editor updates and it looks like there are a number of improvements and updates to the Markdown syntax. Also added a few additional updates to the csharp syntax.

  • Preview Zoom Sticky across Tabs
    Preview Zoom previously only worked on the active Preview tab and would not stick around if a new tab was activated or even when navigating back to the same tab. Now applying a zoom level (via Ctrl-Mousewheel or ctrl-+ and ctrl+-) is applied to all preview tabs and remains sticky for the entire session.

  • Add Non-Breaking Space and Non-Breaking Hyphen Markup
    Added menu and command palette options for inserting non-breaking space and non-breaking (&nbsp;) and non-breaking hyphen (&#8209;) characters into markup. You can find it on the Extra Markup (ctrl-x) menu and using the command palette. (#1034)

  • Add Smaller Text Icon to Main Toolbar
    There's now a small text icon on the toolbar that wraps text with <small>text</small> tags.

  • Improvements to Folder Browser Navigation and Context Menu
    More improvements to improve folder browser navigation. Selections should be much smoother, drag and drop more responsive and the context menu should show with less jitter.

  • Folder Browser PDF Documents now display in the Previewer
    When you use the Folder Browser and navigate to a Pdf file, the file is now displayed in the previewer without requiring to click in explicitly. You can still open PDF files externally via Open options on the context menu. The previewer is a Chromium based preview so you get all standard browser print and PDF export options as you would in an external browser.

  • Video and MP3 Files now open in the Previewer
    .mp4 and .mp3 files now open in the Previewer to play when double clicked in the Folder Browser.

  • Built-in Web Server improvements
    The built-in Web server now is more responsive and provides additional commands for remote execution.

  • Change: Unlabeled fenced Code Blocks render as Text
    Code blocks that don't have an explicit language specified (ie. ``` instead of ```csharp) now render as plain text instead of attempting to auto-detect language. Auto-detection often would pick the wrong language as it can be very ambiguous and GitHub also renders as plain text. (#1001)

  • Support for Async Code Snippet Templates
    Code Snippets now support await calls in C# expressions or code blocks. This is necessary for accessing many of the Model.ActiveEditor methods that effect editor behavior (most commonly await Model.ActiveEditor.GetSelection()).

  • Support for Structured Statements in Code Snippet Templates
    C# snippets now also support structured code blocks using {{% <statement> }} that are directly embedded as code. This allows for if and for type structured statement blocks that can bracket other text or expressions. But it also allows for arbitrary C# code blocks to be executed and act as integrated code.

  • Custom, On-Demand .NET Runtime Installation Launcher
    MM 3.0 uses .NET 7.0 and requires a Desktop Runtime installation to run and these runtimes are not installed on Windows by default. We've created a custom, on-demand runtime checker and download and install process that only runs if the minimum runtime requested for MM isn't installed. This helps run on .NET 7.0 without having to ship runtimes as part of the distribution keeping download sizes down. Currently we require .NET 7.0.3 or later.

  • Removed automatic WebView Installer in Setup
    As Windows 10+ now automatically updates the WebView control as part of Windows updates, we'll assume a valid version of the WebView is installed, so the WebView installer no longer runs on setup, but rather checks for a valid version inside of the application on startup. In the rare case that a newer version is required we then run the installer explicitly. This makes for a much cleaner and quicker install experience in most cases.

  • Dropped Support for Windows 7 and 8, Server 2012 and earlier
    This unfortunate change is due to requirements of the WebView component and Chromium Engine used by that that is dropping support for pre-Windows 10 versions of Windows. The WebView is used in MM to render the editor and preview panes as well as various support screens. MM still works as of now until the 1900 releases of the WebView come into release which officially drop the earlier Windows versions.
    versions prior to 3.0 should continue to work with older Windows versions

  • Add mmcli enable-windows-longpaths
    Added two mmcli commands to allow enable/disable Windows Long Path support. Two commands are enable-windows-longpaths and disable-windows-longpaths.

  • Fix: Opening folders from the Command Line in Folder Browser
    Fixed issue When using the Command line syntax (i.e.. mm . or mm c:\temp) to open folders which open in the folder browser. Folder often would or start loading and 'get stuck'. Fixed via slightly delayed load and async updates.

  • Fix: High DPI Scaling for Editor Pane
    Fix issue where large DPI zoom levels were over adjusting the size of the editor pane's font size.

  • Fix: Track Requests in Folder Browser
    Fix the tracking feature so that it selects the currently active file in addition to the folder. Regression fix for behavior change in recent async upgrade.

  • Fix Presentation Mode when navigating to other documents
    Fix issue where navigating to other documents from within presentation mode would jump out of presentation mode and into a broken intermediate mode where you need to press F11 once to get back to 'regular' edit/preview mode and twice to get back into presentation mode. The fix lets you navigate the target document which then also shows in presentation mode. (#1033)

  • Fix: Folder Browser Context Menu doesn't close
    Fix issue with Folder Browser context menu not closing. Fixed. (#1036)

  • Fix: Slow Git Window Activation on large Git Repos
    When accessing large Git repos first load of the Git dialog was very slow. Reduced repetitive status look up and added an async wrapper to initial status retrieval. Fixed.

  • Fix: Mermaid Rendering to use new Markup Syntax
    Mermaid recently switched its default rendering syntax from using <div> tags to <pre> tags. Oddly some charts still worked, while others were failing only working with <pre> tags. We now use <pre> tag translation of ``` mermaid directives.

  • Fix: Better Error Messages for Unbalanced Grid Tables
    Provide better error message that includes the row that failed when Grid tables cannot be parsed - typically due to unbalanced | characters. You now get a status error message that lists the row where the problem occurs.

  • Fix: Distraction Free Mode Issues
    Fix distraction free mode bug that didn't hide Tabs in Light mode. Fix issues with properly restoring mode when undoing distraction free mode.

MarkdownMonster -

Published by RickStrahl over 1 year ago

download Web Site

  • Multi-Line Markup for Inline Elements
    You can now select multiple lines of inline elements - bold, italic, strikethrough, underline etc. - and apply it to multiple lines. (#1003)

  • Multi-Line Markup for Soft Returns
    You can now select multiple lines and apply Soft Returns to all the lines in the selection which makes it easier to work with list text that doesn't use bullets. (#1003)

  • Easier Html Exports with a new Export Dialog
    Html Exports from your markdown are now easier with a dedicated dialog that lets you select the type of Html export (raw fragment, self-contained Html document, folder assets, zip file). This makes the export a lot less cryptic than previous Save File dialog that used only file types for 'hints' on functionality. (#1000)

  • Add Mermaid Markup ShortCuts and Command Palette
    You can now use the Extra Markdown dropdown and the Command Palette to wrap Mermaid diagrams automatically with the required Mermaid markup tags. You can wrap Mermaid code from the Clipboard or from the editor text selection. (#1018)

  • Add DarkMode to Emoji Picker
    Added dark mode operation to the Emoji picker and also bumped up the size of the individual emojis a bit.

  • Add Copy to Clipboard for Code Snippets to GitHub Preview
    The GitHub preview now has buttons on code snippets to copy code to clipboard when previewing or exporting as HTML.

  • New WebLog Post Option to post the New-Posts first
    For those of you that write a lot of blog posts or procrastinate with finishing posts, it can be useful to create new posts in the New Posts folder until the post is ready to be published. If the post is in New-Posts or Drafts folder, publishing will prompt you to optionally save the post in the WebLog post folder structure (postFolder/yyyy-MM/title-of-the-post). There's no obligation to use this of course and you can always move your posts to whatever location you like.

  • Re-enable Shell Drag and Drop for Images and Markdown Documents
    You can now once again drag images and Markdown documents into the editor from Explorer or other shell explorers. Files can only be dropped at the currently selected cursor location - the location cannot be changed with the drag cursor unfortunately. This feature was temporarily disabled as the new WebView uses a completely different mechanism for file dropping.

  • Embedded Document TOC now preserves header Markup (bold, italic, code etc.)
    When you embed a TOC into the document, any markup in extracted headers is preserved. So the TOC now includes inline bold, italic, and code text to match the original headers.

  • Show Diff Editor for Crash Backup files when Opening Files
    If AutoSaveBackups is enabled MM creates a backup file of the open document that is removed when the document is saved or closed. If the file is around when the document is opened MM likely crashed and lost some changes. If the backup file is found, MM will now open a Diff editor if configured and also position the folder browser on the back up file.

  • Add a Show All Files Button to the Folder Browser
    The Folder Browser now has a button that shows all files that ignores the file and folder ignore list. This lets you see back up files (if enabled), git and editor files and more as well as any custom ignored files you've added.

  • Change: Unlabeled fenced Code Blocks render as Text
    Code blocks that don't have an explicit language specified (ie. ``` instead of ```csharp) now render as plain text instead of attempting to auto-detect language. Auto-detection often would pick the wrong language as it can be very ambiguous and GitHub also renders as plain text. (#1001)

  • Fix: Preview Link Navigation
    Fix regression bug related to async processing which caused navigation to external links to navigate the browser and lose the preview document. Fixed. Also refactored the document processing pipeline for opening documents from the previewer to fix previous lockups in that process and navigation to specific lines in the editor after opening.

  • Fix: Random Application Crashes
    Fix a problem with random crashes related to dialogs opening in an invalid Task context and Alt menu activation in some instances causing crashes. Both operations are related to a recent bug introduced in the WebView and code getting triggered that fails at the system level. Fixed by properly handling the Task environment for these operations, so that the WebView code that triggers these errors is not actually invoked.

  • Fix: Alt Menu Activation
    Alt Menu activation for the Window menu was not working and often crashing the application due to a change in the underlying WebView2 control. Fixed menu activation logic.
    Note: Alt menu activation from within the editor tends to need an extra character to activate the menu for navigation (ie. to activate the Window menu alt-alt-w or alt-w-w get you there instead of alt-w).

  • Fix: Automatic File Backup not Working
    Fixed issue where Auto file back was not correctly saving the backup file in the same location as the base document. Fixed. Related Fix: Added support to Show all Files in Folder browser that lets you see the backup files in the Folder browser.

  • Fix: Change File Detection in Inactive Tabs
    Fix issue where inactive tabs that have underlying file changes and aren't dirty locally were not automatically updating from underlying file changes. Now an underlying file change will automatically update the document when the tab is activated.

  • Fix: PDF Links with Spaces or Extended Characters
    Fix an issue where PDF output was breaking links that were UrlEncoded due to spaces or extended characters in the link. Fixed by Url Decoding before rendering. (#1011)

  • Fix: Save as PDF Extra Page
    Fix issue where when you use the Print Dialog's Save to PDF generates a trailing blank page due to CSS styling. Fix CSS to remove extra page.

  • Fix Presentation Mode Scrolling and Sync
    Fix issue with presentation mode where the viewer was not scrolling properly in presentation mode. Fixed. Also fixed issue with the sync between the editor and the preview in presentation mode which now preserves the location when toggling between modes and keeps in sync in presentation mode. (#1019)

  • Fix: File System Drag and Drop into the Editor
    When the WebView was introduced file system drag and drop into the editor no longer worked. Files dropped would open in a browser window or open in the shell. This update supports various types of dropped files, from explorer by dropping them into the document at the current editor location (no support for moving the caret though). Browser links and images can now also be dropped and auto-link as links or remote images (use Copy Image for locally copying Web images).

  • Fix: Context Menu Oddities
    Fixed timing issue with context menus where menus were occasionally displaying the default Edge context menu instead of MMs native menu. Removed async call interface, and only applied to the spellcheck display now which improves menu popup speed and always bypasses the native menu. This was most notable with Table Editor functionality like Edit and Format Table.

  • Fix: Document Outline Sidebar with Bold and Italic Text
    Document outline incorrectly displayed inline bold and italic text as Markdig Inlines. Fixed. (#1013)

  • Fix: Startup Offscreen Positioning
    Changed logic used for MM startup detection of offscreen locations on the desktop, and moving the window into the visible Viewport if completely or mostly obscured. Previously, in some instances Windows were moved even if they were fully visible. (#998)

  • Fix: Format Table with Left and Center Alignment
    Fix issue where left and center alignment on Pipe tables was adding an extra space. (#1005)

  • Fix: Text Drag and Drop starting with # tag No longer drops as Link
    Fixed issue where dragging a text selection in the editor that starts with # would drop as a link expansion rather than plain text. The # now pastes as plain text as expected. (#1002)

  • Fix: Snippet Execution Fails with Dynamic C# Expressions/Code
    Fix bug with Snippets execution which include code snippets due to a removed reference.
    (#1027)

MarkdownMonster -

Published by RickStrahl over 1 year ago

download
Web Site

  • Add Custom External Programs for Documents
    You can now add external programs to launch for active document in the editor or for files and folders in the Folder Browser. Launch individual programs or URLs and specify arguments in a variety of ways. (belatedly fixes #947)

  • Enable Mermaid Charts By Default
    With wider support of Mermaid in various rendering platforms including GitHub, Mermaid rendering is now enabled by default. There's still a Setting flag that can be used to turn checking for Mermaid code on and off which can improve load and render speed very slightly when false. Note: If you're updating a previous version, your current setting will not change so if it was set at default of false it'll continue to stay that way and have to be manually enabled. You can use Tools|Settings|Mermaid to set this value.

  • Add Proper and Camel Case to Extra Commands and Command Palette
    You can now make selected text proper/title cased or camel cased via the command palette.

  • Command Palette: Added Font Settings
    You can now access the font settings in the Visual Settings Editor via Ctrl-Shift-P Font. Also added a tooltip to the font size dialog to point at the Settings and Command Palette shortcuts.

  • Folder Browser Keyboard Navigation now Previews
    When navigating the folder browser with the up and down keys, the editor now displays a preview of documents similar to the behavior when single clicking on a document. Editable (Markdown, text and other known editable formats) are opened in preview mode, meaning once you navigate off the document is closed or replaced by the next preview document, unless the document has been edited or explicitly opened as a full document.

  • Table Editor Paste now supports CSV directly
    CSV imports into the table editor have been supported via Load From for a long time, but you can now also use the Paste operation to CSV content from Excel, Google Docs etc. directly into the table editor. Load From still has more control but Paste is quicker assuming the content uses tab delimited clipboard CSV. Paste now supports: Grid Table, Pipe Table, HTML, JSON and CSV. Load From also allows loading CSV and JSON from files (and clipboard explicitly with options).

  • Update: Default Font Size to 16px
    Set default font-size a little smaller to prevent very low res displays from displaying too big of a font initially. This will make fonts smaller for hi-res displays, but people that have hi-resolutiuon displays are used to having to adjust font-sizes up typically.

  • Update: Markdown Monster now uses latest WebView Async Model
    A few versions ago, changes in the async WebView control model broke most of Markdown Monsters JavaScript to .NET interop functionality that caused us to stick with older versions of the .NET WebView connector. In this release we've refactored all of our JS->.NET interfaces to work with the new async behaviors. This true async support should also improve responsiveness of some tasks, as well as minimize the occasional WebView crashes we've observed in our logs.

  • Fix: Git Commit Dialog Load Time
    Fix issue with the Git dialog taking a long time to load with large repositories. We've refactored the dialog to load the repository after the form has initialized which removes a race condition that was severely slowing down the initial load of the repository. The form now loads immediately with a status message in case of slowish loads (which should now be rare) and for most repos the load should be near instant.

  • Fix: Table Editor Add Row on Bottom
    Fix behavior of Add row on bottom to continue keeping focus and scroll into visible viewport. Also now allow adding multiple empty rows at the end (previously this wasn't allowed). You can now also add a new Header row by Add new Row in the header.

  • Fix: Various Range Bound Errors in Table Editor
    Fix several errors that caused the table editor to crash when adding/removing many rows/columns.

  • Fix: Status Icon Animation Sizing
    Fix issue where on occasion the status icon would bloat to massive size if messages were overlapping.

  • Fix: Document Navigation in the Previewer
    Fix crash/hang issue when navigating to other documents from the Preview Window.

  • Fix: Change Scrollbar Sizes for Editor and Preview
    The default scrollbar sizes for the Editor and Previewer have been bumped up slightly to better work with hi-res displays and sizing has been switched from hard pixel sizing to em sizing. Previewer and Editor scrollbar styling can be applied in the generic Editor/editor.css and PreviewThemes/MyTheme/theme.css for the specifically active theme.

  • Fix: Folder Browser File Renaming Issues
    Fix issue where rename operations would in some cases not save pending changes and wouldn't delete the originally renamed file. Error was introduced during async conversion and due to timing issues. Fixed. #986

MarkdownMonster - v2.6

Published by RickStrahl over 2 years ago

June 30th, 2022

  • Drag and Drop Link Insertion from Document Outline into Editor
    You can now drag a document outline selection into the open Markdown Document as a link that points at the #Hash id in the document. (#936)

  • Support for Async Code Snippet Templates
    Code Snippets now support await calls in C# expressions or code blocks. This is necessary for accessing many of the Model.ActiveEditor methods that effect editor behavior (most commonly await Model.ActiveEditor.GetSelection()).

  • Support for Structured Statements in Code Snippet Templates
    C# snippets now also support structured code blocks using {{% <statement> }} that are directly embedded as code. This allows for if and for type structured statement blocks that can bracket other text or expression. But it also allows for arbitrary C# code blocks to be executed and act as integrated code.

  • Improved Snippet Startup Speed
    With the new Roslyn integration which runs in-process, startup speed of first snippet activation is much improved even on a cold start. Additionally the PreloadCSharpCompiler configuration flag in the Snippets addin can reduce startup speed down to a fractional second.

  • Add Subscript and Superscript Markup Operations
    Added sub and superscript to the Extra Markdown operation drop down menu which creates <sub></sub> and <super></super> wrappings around text selections.

  • Keybindings for Numbered List and CheckBox List
    Added keybindings for number list (ctrl-shift-l) and checkbox list (ctrl-alt-l).

  • Many Updated Command Palette Commands
    Added many additional Commands to the Command Palette including many more markup operations, a number of toggle settings, and view options.

  • Add ShortCut Keys to the Web Lookup links in Link Dialog
    The link dialog now has shortcut keys for the Search on Web (alt-s) and Search and Link (alt-l) buttons in the Link Dialog to allow for better hands free operation of these two operations.

  • Add Preview And Sidebar Width to Window Presets
    The Sidebar Window drop down now allows for setting the preview and sidebar panel widths in addition to a Window size.

  • Update Ace Editor to v1.5
    Updated to latest Ace Editor version (1.5.1). Several small additional tweaks to the markdown editor behavior for the editor.

  • Fix: Format PipeTable with Line Breaks in Header
    Fix issue where line breaks (via <br>) in Pipe Table headers was breaking the formatter and resulted in not being able to format the table or edit it in the Table editor. The change now formates based on the full single line instead of the individual line lengths which - assuming the table width is not too wide - will still nicely format a table even with linebreaks. (#959)

  • Fix: GridTable with leading Spaces in multi-line Cells
    Fix issue where multi-line cells in a grid table would strip leading spaces resulting in potentially lost markdown formatting. (#961)

  • Fix: GridTable white space issues
    Fix issue where white space is is not cleaned up properly when deleting lines from a cell in a gridtable.
    (#962)

  • Fix: Preview not rendering first Mermaid Diagram
    Fixed issue where entering a first Mermaid diagram into a page will not render until the page or tab is fully refreshed. This is due to the way MM caches the page and only replaces content, so when Mermaid is added after the page is loaded the script was not available to transform Mermaid charts. Added logic to explicitly check for Mermaid script and refresh page if not found. (#960)

  • Fix: Display full Git Error Messages for Commit and Push Operations
    Change display of error messages so the full message is displayed instead of the status bar only message which is often truncated. Display a message box instead so the full error can be captured. Important due to the new Git Security safe.directory features that require (git config --global --add safe.directory <path>)

MarkdownMonster - 2.5

Published by RickStrahl over 2 years ago

May 10th, 2022

  • Command Palette (ctrl-shift-p)
    You now have a command palette that lets you search for most operations and apply them. There's a searchbox in the Windows title bar, where you can type commands to find and execute them. While this doesn't replace native shortcuts it provides for additional discovery of available commands and options.
    commands are still being added but most common functionality is available now

  • Folder Browser Markdown Preview Modes
    Added a Folder Browser configuration switch FolderBrowser.MarkdownPreviewMode that lets you choose between the previous EditorPreview mode that displays a transitory document that is closed when another document is accessed unless the document has been changed, or the new HtmlPreview mode which displays the rendered Html view. Preview mode is triggered by a single click in the Folder browser, while double click (or Open in Editor) opens the document as a normal fully editable document.

  • Improved Document Loading
    Updated the document load sequence to improve performance and consistency loading documents. Most performance gains can be seen around navigation from the folder browser which reduces extra document open/close operations by now reusing tabs in some situations. Overall better performance and less document load flicker.

  • Improved Preview Document Loading in Folder Browser
    When clicking at editable documents in the Folder browser, documents are initially displayed in Preview Mode which is a transient tab that disappears until a change is made or - now - you click into the preview mode document. Improved how these tabs are created and they are now reused to provide quicker and much smoother navigation of Markdown documents.

  • Clicking into Preview Document now switches to Full Document
    Previously preview document tabs required changing text in the document to trigger becoming a 'normal', full document. Now, clicking into the documentis all it takes to make it a full, non-transitory tab.

  • Improved Markdown List UI on Toolbar
    Added support for Checkbox Lists. The 3 list options now show on drop down with the main button still adding a plain list as before. The three options are: Standard List, Numbered List, Checkbox List. Also improved handling of single line selections or no selections on line which now always add the list operator to the front of the line unlike before at the cursor position.

  • Remove Leading White space on Extra Markdown Features Menu
    This option on the Extra Features Dropdown strips all common leading white space from a multi-line selection. This is useful for stripping off white space from code pasted from a code editor that has indentation or other text that might be otherwise indented. Removes white space that is common to all lines of text. (then again for code use alt-c code pasting do this and fencing automatically)

  • Sticky Search Subfolders for Folder Browser File Searching
    The subfolder option for inline and explicit search pane searches is now sticky via a FolderBrowser.SearchInSubFolders configuration setting. Once updated it's remembered across MM sessions. #934

  • Add Drag and Drop Links from Favorites
    You can now drag favorites into a document and link to the file in the same way you can for the Folder Browser. Not super practical unless the favorite link is relative to the current file or project.

  • WebLog Custom Fields Context Menu
    Added a Custom Fields context menu which draws values from a user defined menu of custom weblog post values (such as mt_githuburl, mt_location, mt_date) etc. These are typically user defined values that have special meaning on the server, but can be painful to remember if you're using them for custom values. You can now define any custom keys in the Weblog configuration as WeblogConfig.CustomFieldNames.

  • Make Spell Underlining Stylable
    Add logic to allow customizing the way the spell check highlighting looks via editor-user-extesions.css and the .ace_marker-layer .misspelled style. Allows changing colors, thickness etc. as other page elements. This was previously hardcoded in the custom spell check logic MM uses.

  • Fix: Cleanup Folder Browser Markdown Document Navigation
    Fixed several issues related to document navigation in the Folder browser that resulted in overly janky document opening and occasionally double opened documents.

  • Fix: Folder Browser Double Click Flashes and Occasional Load Failures
    Fix issues related to double clicking in the folder browser that occasionally would cause documents to double load or fail to load and display a blank document.

  • Fix: Non-intended Drag and Drop Operations
    Fix problem where slight mouse movements while clicking would trigger drag and drop operations that could cause accidental file moves. Widened drag minimums and fixed location pinning that was off and previously resulted in over eager drag operations.

  • Fix: Html Edit/Format Table Detection Failing
    Fixed issue where Edit and Format Table context menu choices were not working when trying to open the Table editor. #932

  • Fix: Table Editor with Pipe char in Pipe and Grid Tables
    Fix bug where editing or formatting a Pipe or Grid Table that contains escaped pipe characters - ie. \|- would create additional columns rather than capturing the pipe character. Fixed.
    #933

  • Fix: MM won't launch if an older WebView Runtime is installed
    MM by default won't launch if an older WebView runtime is installed and prompt for re-installing the latest WebView runtime. Usually this is not a problem but in some cases an older version may be installed and the app should be allowed to run (such as when running Canary builds). You can now override this behavior via a
    System.IgnoreWebViewVersionMismatch=true configuration setting.

  • Fix: Toggle External to Preview Browser
    Fix issue where the internal preview would not display when toggling from external to internal previewer. Previously you had to manually toggle the Previewer's visibility. Now external -> internal properly shows the internal previewer activated.

  • Fix: Footnote Link Navigation in Previewer
    Fix issue with clicking on Footnote links and references not navigating the document to the footnote. Fixed. #937

MarkdownMonster - 2.4

Published by RickStrahl over 2 years ago

download

March 10th, 2022

  • You Tube Embedding Window
    You can now embed YouTube videos into a document using the YouTube Widget on the toolbar. You can paste a YouTube Url (watch, embed or shortcut), preview the video, set a title and default resolution, then embed it into the page as an Html fragment. The Html is formatted to autosize both horizontally and vertically adjusted to the width of the document.

  • Twitter Tweet Embedding Information
    MM doesn't include special UI to embed Tweets into your content as Twitter provides an easy way to pick up ready to paste Html that you can paste into a Markdown document. However to make this process more discoverable we've added a shortcut Tweet toolbar button in the Extension Tags dropdown of the toolbar. This button links to a help topic that describes the two steps to create an Html widget on Twitter and paste it into markdown.

  • Updated Gist Embedding Addin
    Although external, this add in is used by quite a few people. The addin has been updated with a few UI updates to make it quicker and easier to use. You can now also copy a Gist id or script tag for existing Gists, delete Gists. Save to and Load From Gist also have a host of updates to make it easier to access these options from the Gist Listing view.

  • Added Markdown HtmlEncode and UrlEncode Shortcuts
    You can now easily HtmlEncode a block of text or UrlEncode a value using shortcuts on the Extended Markdown Operations dropdown from the toolbar.

  • Alt-X Shortcut for dropping down Extended Markdown Features
    There's new Alt-X (default) shortcut key that drops down the Extended Markdown features from the toolbar for quick access. This menu has things like Upper/Lower Case, bolditalic, HtmlEncode, UrlEncode etc. Also updated the documentation for Markdown Monster Shortcut keys.

  • Improved Markdown Quote Handling (ctrl-q)
    Quote handling (> content) now better supports single line or no selections, prepending the quote mark at the beginning of the line. MM now also checks for already quoted lines and doesn't double quote any longer.

  • Command Line Opening of Files using filename:lineno Syntax
    In addition to the --lineno command line switch you can now also use :lineno at the end of a filename to open a file at that line. Example: c:\temp\test.md:22. The individual file lineno overrides the --lineno parameter which works only against the first opened file.

  • Support For Better Html Document Previews
    There's now better raw HTML document editing support (ie. .html files) in Markdown Monster as previews now show related resource content. You get many of the same live preview benefits that are also available with Markdown documents. Images, styles, scripts and other related assets now correctly load in the previewer for HTML documents via an inject <base> tag that points back to the document's host folder. #907

  • Addins: Fix Addin Repository Urls
    Due to changes at GitHub related to branch names etc. we've had to change the way addins report their default Urls. The new Urls require providing a branch name (ie. /tree/main etc. suffix to repo). This is required since we can no longer assume a master or main branch.
    This is a breaking change - the new addin repository Urls break old applications so for older v2 versions the Addin Manager is broken. Please update to latest.

  • Addins: Add AdditionalDropdownMenuItems to AddinMenuItem
    You can now add additional menu items to the Addin drop down menu on the Toolbar. This allows addins to be more obvious about features available by the addin in one place, in addition to optional integration into the Main Menu (which requires a little more work).

  • Addins: New OnApplicationInitialized() Handler
    This handler replaces the OnModelLoaded() handled which more clearly identifies the purpose of this handler. This method is now set up to be the default Addin configuration method where the default Id, name and menu item configuration is placed instead of in OnApplicationStart(). The problem with OnApplicationStart() is that it fires before there is any app context - no Window, no Dispatcher, no Model. OnApplicationInitialized() ensures the Window is instantiated, a Dispatcher is available and the AppModel is available.

  • Addins: Updated dotnet new and Visual Studio Addin Project Templates
    We've updated both types of templates in line with the changes for OnApplicationInitialized() and cleaned up the templates and added additional comments to the generated addin and configuration classes.

  • Updated: Mermaid and MathMl now work without requiring Allow Script Rendering
    These two RenderExtensions provide diagram and math equation rendering into Markdown now work without explicitly requiring the AllowRenderScriptTags option to be set as they don't actually require JavaScript code inside of the rendered Markdown body any longer. They are still disabled by default but can now be enabled via just the UseMermaid and UseMathematics configuration settings. A restart is required for changes to these values as the RenderExtensions need to be reloaded.

  • Fix: Re-enabled the Microsoft DocFx Markdown Parser
    We temporarily had to remove the Microsoft DocFx parser, due to a dependency version conflict with the MarkDig parser. Now that MarkDig versions have been re-synced to the latest versions the DocFx Parser is available again from the Markdown Parser dropdown on the toolbar.

  • Fix: Focus with New and Non-Existing Documents from Command Line
    Fixed focus issues for opening a new or non-existing document from the command line. Focus now starts in the editor.

  • Fix: GridTable LineFeed Issues
    Fix Grid table edit and format table inputs when table cells have empty lines. These empty lines are no longer stripped. Fix extra linefeed at end of generated GridTable output/paste operations.
    #901

  • Fix: markdownmonster: Protocol Handler with text
    Fix bug where the markdownmonster:untitled.base64:<data> handler was not assigning the document data passed into the newly opened document. Fixed.

  • Fix: GridTable Parsing with Back to Back Tables
    Fix Grid Tables when tables are butted up against each other without separating lines. Note: This is legal but the preview won't actually render it and most Markdown parsers fail to render this correctly. Although the editor now supports this functionality, it's best to use a blank line between two tables to ensure it renders correctly regardless of parser. #904

  • Fix Mermaid Rendering
    Fix Mermaid rendering for certain Mermaid content by Html Encoding the body to render. Previously the unencoded text would fail to render correctly. Encoding is applied only the ```mermaid sections, not the raw Html <div class="mermaid"> which is used as is meaning that user is responsible for encoding. #911

MarkdownMonster -

Published by RickStrahl almost 3 years ago

download

  • Support for Long Path Names (if enabled in Windows)
    Added improved support for long path names in MM via manifest setting that allows you to open and save documents and assets with paths longer than the Windows MAX_PATH (255 chars). It now also works for many of the external application integrations. For this to work, Long Path Names have to be enabled in Windows (10/11) via registry or group policy setting.

  • Add File Updated and Created to Folder Browser Tooltip
    Files and folders now display both created and updated dates in the File and Folder Browser.

  • Document Tab ToolTip now includes File Information
    The document tab tooltip now displays file information including file size and updated and creation times, using similar format to what's used for tooltips in the Folder Browser.

  • Move Symbol Configuration for Italic and Soft Line Breaks Characters
    Moved the Symbol configuration that allows you to specify what symbols to use for italic (* or _) and Soft Line Breaks ( or \) into the main Markdown configuration so it's visible in the interactive editor. Previously these two values were nested in a sub key below the Markdown configuration and not visible in the editor. These symbols are used by the Toolbar/Shortcut insertion operations.

  • Improved Drag and Drop Operations in the Folder Browser
    Updated drag and drop logic that affects initial drag state activation to be less sensitive resulting in fewer accidental drag operations. Also fixed various selection and drop issues as well as better supporting dropping shell files into the Folder Browser.

  • Fix: Folder and File Visibility when a Filter is Set
    Fix issue where new files or folders added would not respect the search filters and show up regardless of the filter settings.

  • Fix: Lockups on opening Documents
    Fixed issue with lockups when opening documents in some situations such as after search, dragging items.

  • Fix: Document Title Display with Full Path when switching from Preview Fix an issue when switching from a Preview document to an edited document where the tab title would display the path even though there's no duplicate item. Correct behavior is to display only the filename when a single file with that name is open.

MarkdownMonster -

Published by RickStrahl almost 3 years ago

  • Improved Document Load Time
    We've improved the way editor and preview documents get loaded, which now load faster, with less flicker and without the occasional brief document load error page displayed.

  • Import from JSON to Markdown Table
    You can now import JSON object arrays as Markdown tables from file or the clipboard. Field names are mapped to headers values as row content. An optional field exclusion list can be applied.

  • Move Table Rows Up and Down
    You can now move table rows in the Table Editor, up and down via context menu or alt-up and alt-down.

  • Keyboard Navigation for Common Table Editor Cell and Row Operations
    You can now use keyboard navigation for moving rows up and down (alt-up, alt-down) and moving columns left and right (alt-left, alt-right). You can also insert rows above and below using (alt-shift-up, alt-shift-down).

  • Copy To Clipboard for Markdown Tables in Table Editor
    The Markdown Table Editor has a new Copy button to copy the currently active table in the editor to Markdown and the clipboard. This allows using the editor for easy pasting of Markdown Tables into other applications.

  • mmCli cleanup-webview Command to clear WebView Environment
    Added command line helper to clear out the WebView Environment that MM uses. The environment is private and separate from global settings, and only used for MM's local rendering of generated content.

  • Spellchecking: Look up on Web
    The spell checking context menu now has an option to Lookup on Web when a spell checking error is found. This is useful if you have no match in the list of suggestions and need to find out correct spelling. Opens Search page in your specified search engine.

  • Add Neeva and Brave to configurable Search Engines for Lookups
    Add the Neeva and Brave search engines to the list of supported search engines for various lookup operations. Look up operations are available for finding and embedding URLs, and the spell checker for example.

  • Copy Favorites Path to Clipboard on Favorites Context Menu
    You can now copy the current favorite item's path to the clipboard from the Favorites Context Menu.

  • Command Snippets: Warm up C# Compiler
    If you're using snippets that contain C# code (Expressions or Razor) there's now a configuration option that allows preloading the C# compiler to speed up first compiled snippet operation. Also fix code focus delay issue with Snippet insertion.

  • Fix: Update RelativePath Processing
    Fix exceptions in Relative Path creation used for dropped and pasted files and images. Fix issue where invalid paths would cause a hard failure due to Path object exceptions.

  • Fix: Favorites Intra Section Drag and Drop
    Fix issue where dragging a Favorite in section would not 'stay' in the new drop location and revert after short delay.

  • Fix: Control Tab Focus Handling
    Fix various issues with Control Tab locking the UI and not focusing the cursor. Fixes Ctrl-Tab and Click focus with cursor becoming active in editor for each.

  • Fix: PDF Generation Intermediary HTML File Name
    Fixed the intermediary HTML filename used when generating PDF files. Previously the HTML file generated was the same name as the PDF file, which could cause conflicts if the HTML file already existed prior to generation. Added __ prefix to the temp file.

  • Fix: SnagIt Image Capture Embedding
    Fix issue with SnagIt image embedding from the Screen Capture add-in. Previously, save operation failed silently. Fixed.

  • Fix: Physical Path Formatting for Links and Images
    When embedding physical file locations into Markdown (in untitled documents mainly or if referencing non-relative locations) paths previously where using Windows style syntax with forward slashes. This worked previously but started failing recently with the WebView renderer. All paths - both physical and relative - are now embedded using URL style forward slashes even for Windows paths.

  • Update: Log more Exception Data
    Exceptions now log both the top level and base exception to provide a little extra info on failures.

MarkdownMonster - Version 2.0.1 - initial Release

Published by RickStrahl about 3 years ago

download

  • Use WebView2 and Chromium for all Web Rendering including Editor
    Markdown Monster now uses a Chromium based browser for all Web rendering including the Editor, the Preview, the Table Editor, Code Windows, and Browser Dialogs. Previously only the Preview was optionally enabled by using the Chromium Preview addin. The Addin is no longer needed as all content always uses the Chromium engine. This improves rendering fidelity and also provides better responsiveness due to asynchronous rendering of content which allows for larger content to be displayed and synced while typing.

  • Table Editor Improvements
    With Chromium rendering a number of odd IE browser bugs are fixed that affected navigation and selection in the old version. Table Editor can now Move Columns to the left or right.

  • 64 bit Application
    With the removal of the IE based Web Browser control, Markdown Monster can now run as 64 bit application again. 32 bit mode is still possible on 32 bit systems as well.

  • Allow Swapping Editor and Preview Location
    You can now swap the editor and preview location via a new View->Swap Editor and Preview Location menu option and a via Editor/Preview Splitter Context Menu.

  • New Splitter Context Menu
    Added a new context menu that displays options for swapping editor and preview, entering presentation mode and toggling the preview display.

  • Track Active Document in Folder Browser
    As a heavily requested feature, we've added support for optional document tracking in the folder browser. Using the FolderBrowser.TrackDocumentInFolderBrowser configuration switch (also via a toggle button in the Folder Browser) any time you change the document the Folder Browser navigates to that file.

  • Improved Folder Browser Navigation
    Folder browser navigation now shows previews for most text type documents in 'inactive' mode that is temporary until the next document is accessed. Documents become 'active' once you edit the document or double click to explicitly open for editing. Single click now also previews any non-edit formats externally, like PDFs, Office docs, etc. Executables open selected in Explorer but are not executed. Drag and Drop start operations are now less twitchy.

  • Move Support Binaries out of Root Folder
    Support binaries are now moved out of the root folder into a BinSupport subfolder to avoid ending up on the User's path and causing naming conflicts. Only applications that should be visible on the user path now are: MarkdownMonster, mm and mmcli.

  • Make Settings HelpText Selectable
    You can now select the help text associated with a configuration setting in the Settings window. This allows picking up URLs and other fixed values more easily. (#817)

  • Fix: Remove WebViewPreviewer Addin from 1.x Installs
    Added logic to remove the WebViewPreviewer Addin from v1 which throws an error. If found this addin is now explicitly removed at startup since the code has moved inline.

  • Fix: PDF Generation Errors
    Fix issue where repeated output to PDF would report an error for PDF generation even when the PDF was generated.

  • Fix: PDF Code Snippet Background
    Fix issue where the PDF output for code snippets was not properly applying the background color. Works in HTML but not for the PDF generator. Added custom print stylesheet overrides for pre > code style explicitly to match highlightjs color theme.

  • Fix: Folder Browser Click and DoubleClick Behavior
    Fix issues where clicking would not allow keyboard navigation after click, folder opening wasn't opening folders on first click, and preview operations could hang.

MarkdownMonster -

Published by RickStrahl over 3 years ago

  • Allow Swapping Editor and Preview Location
    You can now swap the editor and preview location via a new View->Swap Editor and Preview Location menu option and a via Editor/Preview Splitter Context Menu.

  • New Splitter Context Menu
    Added a new context menu that displays options for swapping editor and preview, entering presentation mode and toggling the preview display.

  • Track Active Document in Folder Browser
    As a heavily requested feature, we've added support for optional document tracking in the folder browser. Using the FolderBrowser.TrackDocumentInFolderBrowser configuration switch (also via a toggle button in the Folder Browser) any time you change the document the Folder Browser navigates to that file.

  • Create Link from Document Outline Anchor
    You can now create a link in selected text from a header link in the document outline. A new context item creates a markdown link from the current text selection with the header ID for the link navigation.

  • Hierarchical Configuration Settings for Project, Marker Files
    You can now override global configuration settings via JSON file settings in Markdown Monster Project Files (in the Configuration node), or in the .markdownmonster marker file. In both cases you can use JSON to override default configuration settings like font-size, editor and preview themes, formatting, line numbers etc.

  • Add Default Search Engine Configuration Option
    For Web lookups you can now select a Search Engine (DuckDuckGo, Google, Bing) for opening the browser on a search page. Set via the new WebBrowserSearchEngine configuration setting in settings.

  • Set Table Type when using Edit Table
    When editing Markdown or HTML tables, the table type is now properly set when the table editor is opened. Previously the default Pipe Table was used.

  • Updates to the Table Editor
    Fix some navigation issues. Update editing field height to provide more consistent display of new fields when they are injected. Smaller font size - previously the font-size was larger than the default template.

  • Fix: Open From Url GitHub Repo Fixups for Main
    When extrapolating repository URLs MM now checks for main in addition to master branches for default documents and for repo URL fixups.

  • Fix: Table Editor Autosizing for Table Cell Editing
    Table cells now auto-grow in height as you are editing them when adding linefeeds or overflowing at the end of the line.

  • Fix: Table Editor Crash
    Fix Table Editor crash when reformatting mismatched table column counts. If a table had fewer columns for a row it would crash in some situations. Missing columns are now auto-created as empty columns.

  • Fix: Drag and Drop Selection in the Folder Browser
    Fix issue where selecting an item would not always drag the correct item (due to invalid tree item selection). Items are now explicitly selected before dragging.

  • Fix: Search Panel Result Selection Behavior
    Search panel result clicks now open search results in preview-only mode, only if the tab is not already open. Double click now opens the document as non-preview document. Fixes issue where a search result in an existing window might close an already open window.

MarkdownMonster -

Published by RickStrahl over 3 years ago

  • Rewritten Table Editor
    Completely revamped the Markdown Table Editor to better support larger tables and quicker editing support. Editing now uses the current theme in the editor, and there's an optional previewer which also uses the current Preview Theme. There's new support for sorting and alignment of columns, as well as improved output and parsing support, plus much more.

  • Track Active Document in Folder Browser
    As a heavily requested feature, we've added support for optional document tracking in the folder browser. Using the FolderBrowser.TrackDocumentInFolderBrowser configuration switch (also via a toggle button in the Folder Browser) any time you change the document the Folder Browser navigates to that file.

  • Search Web and Search Web and Link on Editor Context Selection Menu
    New option to allow searching for content on the Web by opening the browser from the selected text and another option that performs a search and displays a list of matches with URLs on a sub menu that can be auto-linked to the selected text.

  • Web Search and Search Web Links on the URL Dialog
    The same two search options from above are also available in the ctrl-k URL Link dialog as links below the text input. Clicking the links searches the Web with the display link. For the Browser search any URLs on the clipboard automatically replace the URL text if it's empty. For the inline search, a list selection fills the field.

  • Search Weblog Folder
    New Menu option on the Weblog folder that lets you search the WebLog folder for posts using the built-in Find in Files Search functionality.

  • Preview Sync Improvements
    Refactored some of the logistics in Preview Sync which should improve responsiveness of preview refreshes. There should now be fewer odd instances where preview is not refreshing automatically. Also updated Left-ctrl which forces an immediate refresh, spellcheck and stats update.

  • Drag and Drop Files into Editor as Links
    When you drag and drop a document file (Markdown, html, pdf, zip) from Explorer or the File Browser into the editor, the file is now linked rather than 'opened'. The link is created as file.ext with a document relative path.

  • Document Outline Line Selection and Navigation
    Document Outline Navigation now moves the cursor position to the selected line in addition to scrolling to the appropriate Viewport position. When navigating by keyboard, ENTER and SPACE selects, and TAB moves the focus into the editor.

  • Add Folder Opening to Recent File List
    There are now small folder icons next to files in the Recent Files dialog to allow opening of the associated folder in the Folder Browser to facilitate quicker access to files.

  • Markup for Empty Selections puts Cursor into Selections
    When using shortcuts for Markdown markup like ctrl-b or ctrl-i for empty selections, MM now moves the cursor into the generated empty Markup. So Ctrl-b generates **~** where ~ denotes the cursor position (~ not generated).

  • Improved Large Document Support
    Added improvements to make MM work better with very large documents, by reducing preview refresh overhead, dynamically expanding the refresh timeout and tweaking the update process. Also - Using the built-in Chromium addin as the previewer now refreshes off the UI thread so that refreshes no longer freeze the editor while updating the preview for large documents.

  • Add mmCli Path Expansions for Environment Vars and ~ Home Path
    Fix mmcli.exe to respect current folder and relative files for input and output files as well as expand Environment Variables and ~ for the Home Directory folder.

  • Add Editor Option for No AutoCompletions
    You can now optionally disable all editor completions via a new NoAutoComplete Editor configuration option. This option disables all key expansions like quote and bracket completions, list bullet expansion etc. for a raw editor experience.

  • Fix: Browser Executable using Default Browser
    Fix View in External Browser when the default browser executable is left blank - defaults to the system browser but executes using command line to allow for URLs with #hash extensions.

  • Accessibility Updates
    Some adjustments to the accessibility features in the file browser and search features.

  • Fix Cut Behavior from Context Menu
    Fix broken Context Menu Cut behavior which was deleting the text but not putting it on the clipboard.

  • Fix: Preview To Editor Sync in IE Mode
    Fix issue where preview to editor sync mode jumps the cursor to the top of the editor when typing.

  • Fix: Open Folder Browser when no Document Active
    Fix issue where the various folder browser menu options weren't enabled when no document was active. Also fixed hotkeys.

  • Fix: PreviewWebRootPath in .mdproj Files not respected

  • Fix issue where the PreviewWebRootPath value in the .mdproj files wasn't respected in some situations. The file is now checked on every render operation so changes in the .mdproj are immediately reflected.

  • Fix: Multi-Selection Issues in Folder Browser
    Fixed several issues with inconsistent behavior with multi-selected files in the Folder browser. Reduced selection jitter and better handle accidental starting drag and drop operations.

  • Fix: Chromium Initial Preview Refresh Issue
    Fix issue where the Chromium Previewer would occasionally not display content when first loading Markdown Monster or when switching from IE view to Chromium Preview. Caused by async load of the Preview browser, we now explicitly check for completion and if not ready wait for the browser to be ready to preview.

MarkdownMonster -

Published by RickStrahl over 3 years ago

1.26

  • Chromium Previewer Browser Addin
    Added a built-in addin that can toggle between the native IE based preview browser and a new WebView2 based Edge Chromium Preview browser. This addin provides better compatibility with common browsers and allows support for some related technologies like Mermaid Charts to render natively.

  • Folder Browser Find Files Search Box
    Changed the Find Files Search Box to be always visible in the Folder browser above the browser instead of an explicit dropdown panel. This search finds and filters by file name in the tree and shows a tree based match filter. The search box sits above the directory tree is now always visible and accessible via Ctrl-F from within the browser. You can optionally specify to search in sub folders.

  • Update Find in Files to Incremental Search
    Change the Find in Files sidebar to use live searching instead of using an explicit Search button. Better handle results display and navigation in the result view.

  • Updated Find in Files Operation
    Find in Files searches content inside of files to find matching content. The result displays a straight list with match counts for the files. Selected files are opened in the editor with the search term selected in the Find box (and Replace box if you specify Replace text).

  • Update Open Document Change Detection
    Updated logic to handle change detection on open documents. When documents are open and unchanged, the document is immediately updated with changes from disk. If the open document has changes and the underlying document changes, nothing happens until you save. A new dialog allows you to choose between your version, their version or to run the configure Git Diff tool to compare versions and merge changes.

  • Add PDF Page Sizes to Save To PDF
    Added all additional supported PDF print formats to the paper type dropdown on the PDF Export dialog. Adds all Ax and Bx types as well as various named types.

  • Favorites Click Behavior Update
    Favorite clicks now open documents initially in preview mode until you type into the editor. Preview mode documents close as soon as another tab is opened or accessed. This behavior is now the same as the main folder browser. Double clicking forces the opened document to be a permanently open document. Unlike the folder browser, a single click forces the cursor into the Favorite document selected.

  • Markdown Monster Web Server Enhancements
    Markdown Monster includes a local Web server that can now be used to open new or existing documents and retrieve document content from the active document. Added support for retrieving the active document's content. Added Web page examples that interact with Markdown Monster. There are also new -startwebserver and -stopwebserver flags to start and stop the Web server to ensure that the local server is running. Added Web Browser HTML samples in SampleDocuments\BrowserIntegration that demonstrate how to interact with MM from a Web page.

  • Update Mermaid Rendering in the Preview
    Mermaid support in MM has always been minimal since it uses the Internet Explorer engine for the preview pane. Mermaid recently removed their already terrible support for IE completely, so MM now renders a placeholder rather than the Mermaid chart in the default (IE based) previewer. The placeholder includes a clickable link that opens your default browser and displays the document containing the diagram and navigates to the Id of the mermaid diagram. Note in the Chromium addin previewer, Mermaid charts are properly rendered inline.

  • Fix: Preview Refresh for Ctrl-key operations
    Fix issue where some common ctrl-key operations (ctrl-z, ctrl-x etc.) would not immediately update the preview until manual key entry into the editor is performed. Changed operation that the ctrl key now triggers a preview refresh for all ctrl-key operations. This also means that the ctrl key becomes the effective 'immediate refresh' key that you can use to force a preview refresh even when no preview sync is in use.

  • Fix: Weblog YAML Parsing for customFields
    Fix bug where an empty customFields value would cause the Weblog Entry to not pre-load values back into the Weblog Publish dialog for repeated publishing. Fixed issue and changed defaults to not render empty field in the first place.

  • Fix: Links in Headers for Document Outline
    Fix bug where links in headers where showing incorrectly in the Document viewer. Fix parses links and retrieves the text properly for display in the Document Outline. Also fixed in the TOC embedding logic.

  • Fix: Blog Post MetaData
    Fixed a regression in posting to a blog where server generated values on new posts - the PermaLink and FeaturedImageUrl - were not updated in the meta data. These values are now updated and written back into the FrontMatter meta data again. Fix bug where PostId was not updating in captured meta data after posting.

  • Fix: Split View Editor Styling
    Fix bug where split view would not open with the same styling as the main view if the theme was not the default theme.

  • Fix: Theme Switching Issues
    Fixed bug that would crash MM when switching themes in MM Multi-Window mode. Also fixed timeout delay for forcing a restart after theme switching which previously would launch the updated instance too quickly and so fail to load in Single Use mode.

  • Fix: Various Open In Explorer Operations
    Fixed various Open In Explorer operations where folders would not open properly in Explorer when the path contained inconsistent path delimiters. This broken in the Git Explorer as well as manually entered mixed paths.

  • Fix: Preview to Editor Sync
    Preview to Editor sync was not working correctly due to an omission check.

  • Fix: Chromium Previewer Addin ScrollSync
    Fixed scroll issue in the WebView2 control interop that would cause scroll failures when scrolling the preview and trying to sync the editor. Fixed with non-cached interop object instances to avoid potential operational overlap (WebView2 bug).

  • Fix: mmCli Html Package Exports
    Fix issue where HTML self-contained Package exports were failing due to an assembly binding error. Added .config file to ensure correct bindings are used.

  • Fix: mmCli Relative File Paths
    Fix file path translation for relative paths.

  • Fix: Jekyll Publish Flag
    When publishing to a Jekyll flag, fix the publish flag to correctly set the publish status as published or hidden.

MarkdownMonster -

Published by RickStrahl almost 4 years ago

  • Multi-File Selection in Folder Browser
    You can now select multiple files in the folder browser and perform many of the common operations on multiple files. You can open multiple files, copy and paste and drag and drop multiple files among folders or to Explorer, delete multiple files and so on. Also updated FolderBrowser API for addins to allow GetSelectedItem() and GetSelectedItems(). Multi-select also works with keyboard using Ctrl-arrow or Shift-Arrow for multi-select and range selects respectively.

  • Updates to Folder Browser Operations
    Cleaned up folder browser file management tasks: New file now focuses the editor with the new empty document. Folder browser navigation now stays focused on the active selected item in more situations so you can perform another task like edit and then jump back to the Folder Browser (alt-v-f) and continue navigating the tree. Improved keyboard navigation functionality. Ctrl-N is now used as the default key in the Folder browser for new files. New files are created with a name editor in the folder browser and are then opened in the editor. This differs from Ctrl-N/File -> New in the editor which creates an Untitled document which prompts for filename only when saving.

  • File Stem Selection in Folder Browser
    When selecting files for renaming in the folder browser, the filename without extension is now highlighted when first entering the name editor. Makes it quicker and more reliable to rename a file. Also fix file renaming message when edited filename is not changed.

  • Default Image Location for Untitled Doc Images
    When saving images into a new document that has no filename, the default image save folder now defaults to the open folder browser location (instead of Documents). Subsequent saves for the same document remember the last image save location.

  • New command line option to open MM document at specific Line
    You can now use the new -line command line option to open a document loaded from the command line at the specified line number.

  • FrontMatter in Blog Posts: Preserve Custom Properties
    Added support for preserving top level properties in FrontMatter when Weblog Meta data is created. Previously the FrontMatter was serialized directly into the Weblog Meta structure and written back out using just that schema which lost custom props. They are now maintained.

  • Improve Jekyll Post MetaData Handling
    Related to the FrontMatter improvements for blog posts, the meta data for Jekyll blog content has been updated to better support the category and tags lists.

  • Allow for .markdownmonster as Root Folder Indicator and External Configuration
    Set up addin handlers that can find .markdownmonster file and use it for custom project level addin configuration. For example this JSON file can contain custom, project level configuration that can be used to stored for an addin. For example, a Deployment addin might hold server/auth configuration.

  • Add pagebreak Default Snippet to Snippet Manager
    Added a pagebreak default snippet to the Snippet Manager Addin, so it's there by default when MM first creates the Snippet Manager defaults. This is optional and can be removed but is one useful use-case of using a snippet.

  • Markdown Monster Web Server Enhancements
    Markdown Monster includes a local Web server that can now be used to open new or existing documents and retrieve document content from the active document. Added support for retrieving the active document's content. Added Web page examples that interact with Markdown Monster. There are also new -startwebserver and -stopwebserver flags to start and stop the Web server to ensure that the local server is running. Added Web Browser HTML samples in SampleDocuments\BrowserIntegration that demonstrate how to interact with MM from a Web page.

  • Addins: Updated Markdown Monster Add-in Project Visual Studio Extension
    The Markdown Monster Addin Project Extension now creates much simpler, SDK style .NET projects. Projects now run and debug out of the box after running the New Project Template without additional manual configuration, as was required by the older version. It's also considerably easier now to configure for custom MM install locations using the raw XML Project file.

  • Addins: Add ContextMenuOpening Events to various Context Menu Renderers
    Added static ContextMenuOpening events to the various context menus that are dynamically generated such as the editor, tab, folder browser preview context menus. These events can be hooked and allow adding (or removing) of menu options at runtime, typically from Addin code. Handler is passed the ContextMenuWrapper class and the actual ContextMenu instance as Event parameters.

  • Fix: Icon Placement on multi-monitor Setups
    Fix odd bug where the MM icon would not show on the correct screen in some multi-monitor scenarios. While at it also fixed the startup icon flash when loading MM onto a non-main screen.

  • Fix: Set Editor Position offset to be properly 1 based
    The editor position now properly shows the Line and Row position in the status bar as 1 based. ie top of the document is Ln 1, Col 1 rather than Ln 0, Col 0.

  • Fix: File Encoding bug in the Embed Url Dialog
    Fixed issue where files with spaces in the filename would not URL encode correctly. New behavior doesn't encode but replaces spaces with %20 in order to allow the Markdown Parser to properly parse Urls.

  • Fix: Window Outline showing on multiple Windows desktops
    Provided a workaround for a problem whereby MM casts an 'outline frame' onto any other Windows desktops on which MM is not actually running. Fixed by removing the 'glow window' outline functionality and using a flat frame 1 pixel border instead.

  • Fix: Window Focus when externally activating
    Fix issue where externally opened documents would not receive focus if MM was already running. Fixed so that focus now always goes into the editor when opening documents from Explorer or other shell executed applications.

MarkdownMonster -

Published by RickStrahl about 4 years ago

This is a version rollup release. The focus on this release cycle has been on cleaning up a number of small bugs and issues as well as updating underlying components, so there aren't a ton of new features in this release, but rather it's more about stability and small UI improvements.

  • Add additional Code Fencing inline Syntax Colorings
    Added additional inline syntax colorings for the following languages: csharp, typescript, json, typescript, powershell. You now get syntax colored text as you type or paste inside of triple backtick fenced code blocks.

  • Additional File Browser Icons and Editing Syntax Support
    Added additional icons that can display in the Folder Browser including Dart and Dockerfile files. Both file types can now also be edited in MM. Also fix additional icons for various external document types.

  • Add Menu Shortcuts for Document File and Shell Operations
    Added shortcuts to quickly navigate the Folder Browser to the active document's location, open the Terminal or Explorer on the Tools menu. Added shortcut mnemonics to make them easier to be discoverable.

  • Better File Encoding Support
    You can now set the file encoding for documents. Additional non UTF/Unicode encodings have been added. You can use Load additional Encodings... to load up all encodings available. Choosing an encoding will try to reload the document with the new encoding .

  • Improved Code Snippet Syntax for Html to Markdown Conversions
    Worked with ReverseMarkdown to add better support for capturing syntax for many common services including GitHub, highlightJs, Atlassian and Confluence. For most snippets the syntax should now be applied to code-fenced blocks.

  • Refactor Preview Context Menu UI
    Change the order of context menu items to show the most context sensitive items on top. Options like Copy/Edit Image and Copy Id to Clipboard now show on top of the menu if relevant.

  • Copy Image to Clipboard from Preview
    There is now a context menu options to copy an image to the clipboard from the Preview Browser.

  • Updated Heading ID to Clipboard
    You can now use the context menu in the previewer or the editor to copy the generated document html id attribute value to the clipboard. This makes it easier to paste relative links. As a reminder you can also get this Id from the Document Outline sidebar's context menu.

  • Open Image in Image Editor or in Image Link Form from Editor
    You can now right click on an image link in the editor and use the option to open then image in your preferred image editor, or open the image in the link dialog (from which you can copy the image to the clipboard or resize the image).

  • Improved Application Title Bar Configuration Options
    The title bar now has a new TitlebarDisplayMode configuration property that has options for displaying, just the filename, the full path, or the filename plus the parent path on the title bar. Tabs continue to display the filename by default and the filename plus parent path if multiple files with the same name are open. The new option to display filename plus parent path makes it easier to differentiate documents in the task bar.

  • Paste Improvements
    Updated the editor paste behavior to use native editor paste behavior for text while deferring images and file paste operations to the Editor shell. This improves paste performance and reliability of text copy and paste operations.

  • Statusbar Text Tooltip
    The status bar now also shows a multi-line tooltip for extra long messages that might overflow the status bar area.

  • Switch to MahApps 2.1
    Switched MM to use latest MahApps Metro UI framework. This provides a number of enhancements plus better stability and consistency for many UI operations.

  • Light Theme Enhancements
    In light of the MahApps update the light theme has seen a number of updates for better consistency and color contrast in a few areas.

  • Fix: Preview Window Disappearing when editing non-Markdown Files
    Fix bug that caused the active document syntax type to be turned to an invalid syntax when opening a non-Markdown document. Refactored EditorSyntax onto the document itself rather than on the Editor which would cause assignment issues.

  • Fix: SnagIt Screen Capture and File Saving
    As of SnagIt 2020 the SnagIt Addin from TechSmith was broken due to a bug in the file saving mechanism. Modified the way file saving works by capturing to clipboard and saving the clipboard content. This works around the SnagIt bug and should hopefully future proof the SnagIt regression that keeps cropping up. As a bonus we now get better file location support using MM's document/project file location settings.

  • Fix: Screen Capture Timer for Built-in Capture
    Fix the screen capture timer used with with built-in capture when delaying captures.

  • Fix: Add hot key for Add-ins Menu on the Toolbar
    Added a keyboard mnemonic to the Tools -> Add-_ins menu item so it becomes possible to navigate to the add-in list via keyboard. Some addins have been updated with keyboard shortcuts so for example the Azure Blob Addin is accessible via alt-t-i-b

  • Fix: Images from Clipboard not showing in Image Previews
    Fixed issue with WPF clipboard that failed to retrieve images from the clipboard properly. Used alternative image retrieval. This fixes missing preview images in the the Paste Image and Azure Blob Storage Addin (update required to see the fix).

  • Fix Recent Documents Dropdrown Layout
    Cleaned up the layout of recent menu lists on the Recent Files menu, and on the startup page.

  • Fix: File Encoding and Save Bug
    Fixed issue where file saving under certain circumstances with non-UTF8 encodings would cause the file not save. Fixed by assigning default encoding and fixing up encoding lookup failures as well as adding additional logging around encoding for notification or save problems.

  • Fix Jekyll Image Publishing
    Fix bug with images published to a Jekyll Blog. All but the last image were deleted by the post handler previously. Related: Also updated the Preview URL generator used to navigate to the generated URL which should work much better than before for the post title as well as the categories to match the Jekyll snake case conversions.

  • Fix: Light Theme Crashes
    Fix several bugs related to light theme and missing resources.

MarkdownMonster -

Published by RickStrahl over 4 years ago

  • Local Jekyll Weblog Publishing Support (Preview)
    Added support for 'publishing; blog posts to a local Jekyll installation. Works by letting you write your blog content as a MM Weblog post and publishing the content into the Jekyll _posts folder structure and creates images in the _assets folder by post name. Simplifies: Post creation, asset management, re-editing and re-publishing to other blog platforms, makes posts more portable.

  • Support for Opening Empty/Untitled Documents with Preset Text
    You can now open a new untitled document with preset text by using a custom filename format on the command line. Use mm untitled.base64,base64text, mm "untitled.text,This is a new document", mm untitled.urlencoded,this+is+new to open a document with the specified encoding format. Base64 is recommended due to the need to encode line breaks and extended characters but for simple string text and urlencoded can also work.

  • New mm -base64text Command Line Option
    This is an alternate syntax for the mm untitled.base64,base64Text option, and provided mainly to provide a clear and obvious documentation point that might be easier to remember and look up. Allows opening a new document with preset text. If launching from the command line or using CreateProcess from another application this is the recommended approach for passing new document data to MM.

  • Open Markdown Monster from a browser with markdownmonster: Application Protocol
    Markdown Monster now installs a markdownmonster: Application Protocol Handler which allows opening MM from a within a browser. . You can use markdownmonster:untitled.text,New Document Text as well as the other new options using the mm untitled. syntax mentioned above.

  • Built-in local Web Server to allow Browsers Open Text Markdown Monster
    Added WebSocket support to allow opening Markdown text in MM via a browser connection. Socket server listens to incoming document requests and if sent opens a specific document. This is similar to the markdownmonster:untitled functionality recently added, but unlike Application Protocols which are limited to 2046 bytes of data, this mechanism allows for large Markdown content to be opened in MM. The WebSocket Server is disabled by default and can be auto-started whenever MM starts via the WebSocket.AutoStart configuration switch.

  • Improved Application Title Bar Configuration Options
    The title bar now has a new TitlebarDisplayMode configuration property that has options for displaying, just the filename, the full path, or the filename plus the parent path on the title bar. Tabs continue to display the filename by default and the filename plus parent path if multiple files with the same name are open. The new option to display filename plus parent path makes it easier to differentiate documents in the task bar.

  • Document Syntax Improvements
    The Document object now internally tracks the editor sytnax associated with it. It is assigned based on the filename extension and mapped to editor associations - just as before. But the Syntax is now separately tracked from the doc type, so that you can change the syntax and affect editor and preview behavior. It's now possible to use the Preview with with .txt files for example, if the syntax is set to markdown.

  • Improve Configuration Backups to Folder
    Updated folder backups to choose the Configuration folder .\backups sub-folder for folder backups. You can now pick a path and the backup is created as a subfolder below that folder in the format of yyyy-MM-dd-Markdown-Monster-Backup.

  • Text Only Linking (Ctrl-Shift-K) Improvements
    When using the text only link shortcut Markdown Monster now automatically pastes and selects URLs from the clipboard. If there's a URL on the clipboard (any https link) it will be automatically injected.

  • Paste Improvements
    Updated the paste behavior to use native editor paste behavior for text while deferring images and file paste operations to the Editor shell. This improves paste performance and fixes rare paste operation failures.

  • Switch to embedded Debug Symbols
    Debug information is now embedded in the Exe. Removes the original pdb file and reduces distribution footprint by a 1.8mb.

  • Fix: Several Table Parsing Issues
    Fixed several recurring issues with invalid table imports from unbalanced or mis-formatted tables. Unbalanced tables (with rows that have more columns than headers) are now adding additional headers as needed to balance the table. Added a number of additional out of bounds checks when parsing incoming column data.

  • Fix: Jekyll Pathing issues
    Fixed a path issue Jekyll publishing if path was entered with trailing slash.

  • Fix: Recursive Loading Issue with Shell Mapped Files
    Fix issue where a shell mapped file would cause infinite load loops when opened from the shell or the command line. Fixed.

  • Fix: Link Dialog Spaces to %20
    Automatically fix up any spaces in a typed in url to %20. We're not URL encoding the entire URL because more than likely a URL pasted into the textbox (or auto-injected) is already URL encoded so we don't want to end up double encoding, but spaces are one of the most common 'encoded' values that will break Markdown rendering of a URL.

  • Fix: Fonts in Preview Themes
    We had recently switched to Emojii versions of common fonts as the primary fonts (like Segoi Emojii) but it turns out these fonts are inferior in quality to the regular fonts (like Segoe UI). This should bring font rendering back to smoother text in the preview and also for rendered HTML output in external browsers and exports.

MarkdownMonster -

Published by RickStrahl over 4 years ago

  • New Markdown Monster CLI
    Added new mmCLI.exe executable that automates a number of Markdown tasks. You can convert Markdown to HTML in several ways, import HTML into Markdown (with some limitations), convert markdown to PDF as well as perform a number miscellaneous operations. This replaces some of the original Markdown Monster command line switches, but the old executable retains some of the original switches that pertain to administrative tasks like registration, launching etc.

  • New MarkdownToHtml, MarkdownToPdf and HtmlToMarkdown Command Line Commands
    As part of the new separated command line tool the command line now supports converting documents between Markdown and HTML and PDF as well as converting documents from HTML to Markdown. Uses mmcli.exe.

  • Additional Site Relative Root Path / Overrides
    Added additional site overrides for root / path resolution in the previewer. The new additions look up the folder hierarchy for a .markdownmonster, _toc.json or docfx.json file, or any <yourProject>.mdproj file. These overrides happen after the existing checks for YAML previewWebRootPath header, and the PreviewWebRootPath in an open project file.

  • Close Tabs To Right
    Added option to the Tab Context and Window Menu to close tabs to the right of the currently active tab.

  • Folder Browser Drag and Drop Improvements
    You can now drag and drop files from the folder browser into external applications using the standard Windows file dragging protocol. You can also drag open document tabs as files into other applications using the same mechanims. Files dragged from the folder browser into the editor surface either open the document, or embed an image as relative links or ask to save for external paths.

  • Remember PDF Export Settings
    The PDF export window now remembers its settings so the next time the window is opened the existing settings are preserved.

  • Additional Paper Size Options for PDF Output
    Added additional paper sizes for PDF output: Letter, Legal, A4, B3.

  • Remember common settings in Link Dialog
    The link dialog now remembers the last folder used to select a file, for the 'Open in New Window' and 'Use Link References' and checkboxes. These values are stored in the configuration and saved across shutdowns.

  • Download and Embed Web Image Link as Local File
    New context menu option for image links in the editor allows to convert a Web image URL into a local image by downloading and saving the file to the local disk and re-linking the new relative (if possible) path.

  • Text only Link and Image Embedding
    Added additional hotkeys to add links (ctrl-shift-k) and images (alt-shift-i) using text only insertion. Select text and the link/image is wrapped around the text with the cursor inside of the link brackets (similar to the way Github does this).

  • Change h1..h6 Header Insertion Behavior
    Header insertions for h1..h6 now prefix the current string with the header prefix instead of just prefixing the current selection. It also strips off existing headers so you can change a header value to a new header type.

  • Don't allow usage of non-fixed Width Fonts
    Changed behavior of Editor Font assignment so that only fixed-width fonts are allowed. The editor used in MM doesn't support propportional fonts, so a fixed-width font has to be used in order for the editor to track correctly. Also updated the description for the Options setting window.

  • Show Linefeed Mode in Statusbar
    The statusbar now shows the active Linefeed mode. You can click on the mode and jump to setting the global setting to edit in the visual Settings Editor.

  • Statusbar re-arrangements
    Move around some of the toolbar status items by grouping like items together and making common things a more visible. Also added additional tooltips to those items that didn't have them.

  • Fix up Copy to Clipboard with CR/LF
    Fix up Ctrl-C copy behavior for text to force CR/LF to the clipboard even if the editor is running LF only mode. This fixes issues for editors that don't support LF only and paste single lines of text.

  • Color Emoji Fonts in Preview Themes
    Added specific emoji fonts for the preview themes so emojis now show in color instead of the default black and white.

  • Initial Support for RTL Text (experimental)
    There is initial support for paragraph based RTL editing by setting the Enable Right To Left Editor Setting, and using Alt-Shift-R and Alt-Shift-L to toggle between RTL and LTR modes respectively. This is still rough and under consideration but if you want to play with this please check out this issue on Github.

  • Update Registration File Storage for better Shared Drive Operation
    Modify storage location of Registered.key to be stored in the install folder if permissions allow with a backup in the common folder. Install folder storage gives each machine accessing a potentially shared configuration its own machine specific registration file which fixes an issue where shared configurations using DropBox, OneDrive etc. would override the machine specific registration files, resulting in installations as showing not registered.

  • Improved DocFx Handling in Default Markdown Parser
    Enhanced support for [!include] and [!lang-javascript] syntax to support the recently added PreviewWebRootPath sniffing, so paths to / and ~/ can be resolved. Also improved display of Info/Warning/Note etc.

  • Preview: Added dedicated DocFx Markdown Parser
    Added the official DocFx parser as a markdown parser you can use to render documents. You can now pick that parser (which also uses Markdig as MM) to render DocFx documents. Rendering features for DocFx features are still limited and there are also problems with this parser. Adding for preliminary experimentation with DocFx content. Feedback welcome.

  • Markdown Rendering Error Display
    Markdown rendering errors will now display an error page, rather than displaying either a blank page or not clearing the previous page. The error page shows the active Markdown Parser and a detailed code trace for potential debugging.

  • Improve Windows Placement on Application Startup
    MM now will check if MM is rendering off screen when starting up. It's possible to get MM to start in 'negative' space if you size down from a large 4k display to a 1080p display for example, and MM will move the window into the viewable ViewPort area if it's hidden or even partially offscreen.

  • Snippets Addin Window Placement
    The Snippets addin now by default remembers its last window position and ensures that - like the main form - it's visible on the desktop. Initial startup will launch centered in the main app window.

  • Addins: Support for Colors in the MM Console
    The new Markdown Monster Console that was recently added for addin developers, now implements coloring of console output. The parameters were there previously but didn't do anything.

  • Fix: Save Dialog on Shutdown on wrong Screen
    Fix issue where the Save dialog with changed content will pop up on the wrong monitor during shutdown by forcing the owner before the main window gets released.

  • Fix: Open from URL
    Fixed timing issue with Open From URL that caused open operation to not show a document. Fixed with new EditorDocument.TabLoadingCompleted event also available to addins to manipulate the document after startup.

  • Fix: UseMathematics and AllowMarkdownScriptTags
    Add additional notes to the Configuration for UseMathematics and MermaidDiagrams that point out that script execution has to be enabled in order to work.

  • Fix: Empty Context Menu on Various Window Controls
    Fixed bug related to an empty context menu popping up on right clicking in various areas of the main form.