Skip to content

Document Outline, Folder Browser Enhancements, many Optimizations and Fixes

Compare
Choose a tag to compare
@RickStrahl RickStrahl released this 27 Mar 10:36
· 239 commits to main since this release
  • Document Outline
    There's a new Document Outline feature (preview) that provides a two-way sync between the active document and the outline. The outline shows headers (h1-h4). You can click on bookmark links, and the outline stays in sync when you scroll the document.

  • Table of Content Generator
    As part of the Document Outline display, there's an option to generate a TOC and embed it into a Markdown document at the cursor position. The TOC is created a Markdown list with links and can be re-generated on demand.

  • Document Outline Context Menu to get Link ID onto Clipboard
    There's now a context menu on each document outline item to copy the hash ID to the location in the document. Useful if you need to link to another part of the document.

  • Fix up spaces in Editor Markup Operations
    Editor markup operations like the bold, italic, underscore, small etc. now automatically handle fixing up leading spaces so if you select selected words (note the leading and/or trailing spaces that are selected) the tag is updated as **selected words** (space before and after the **) effectively transposing the unintended spaces in the markup.

  • Add Syntax Selection Dropdown on Status Bar
    The status bar now displays the active syntax scheme and allows you to select a different syntax for a given file.

  • Keyboard Auto Search for starting Letters in Folder Browser
    You can now type in a few letters to jump to the first matching file similar to the way Explorer finds files.

  • Folder Browser File System (File Watcher)
    The folder browser now displays file system updates in the folder browser. If you externally add, delete or rename a file the external changes are reflected in the Folder Browser.

  • Folder Browser IgnoreFolders and IgnoreFileExtensions
    Options to filter the folder browser display for certain folder and file extensions. Folders default .git, node_modules and extensions to .saved.bak. Values can be customized in Settings.

  • Double Click Editor/Preview Separator to Zoom Preview
    You can now double click the separator between the Editor and Preview to zoom the preview for a quick way to browse read/only content. The Sidebar remains on the left of the display to double click and restore the original width.

  • Edit Preview Template from Preview Browser
    You can now directly jump to the Preview template that's active and edit the HTML/CSS that makes up that template in the Preview Browser using the Preview Browser's context menu. The link also opens the Preview Theme Editing documentation.

  • Main Content Area UI Refactoring
    The main content UI area has been refactored to encapsulate the editor and preview pane in a single layout panel. Tabs now stretch across the entire content and preview area to avoid excessive tab crowding especially on small displays. Internally the render logic has been refactored to make the UI easier to manage in code via bindings and simpler property access and allow for more modular layouts that can be driven from Addins including support for adding UI panels.

  • Addin Support for adding Left Sidebar Tab Items
    Addins can now implement a AddSidebarPanelTabItem() method to add a new sidebar panel which becomes a tabbed item alongside the File and Folder Browser. This allows for custom list panels for additional functionality like Git interaction, custom documentation solutions and document navigation and so on.

  • Left and Right Side Bar Hamburger Menu for Slideout Menu
    The left sidebar (Folder Browser) and right sidebar - if it has content - now have dedicated hamburger icons on their respective sides to slide out the sidebars when active. This makes the sidebars opening operation more discoverable. Additionally you can now drag to open and close the sidebars. Also remove the open icons from the main toolbar and window control menu since the icons are more logical.

  • Addin Support for a Right Tab Sidebar
    There's now also a new Right Side bar which can contain tabs to allow another avenue of providing additional UI for documents. Like the left sidebar, you can add tab pages to the layout to add UI.

  • MarkdownDocumentEditor Identifier and Properties Collections
    The MarkdownDocumentEditor instance now has a collection of Properties that can be attached to the editor to allow you to associate custom state to an editor instance. This allows Addins to capture state when a specific tab is activated via Model.ActiveEditor.Tag.Properties["state"]. Identifier is a new string field that allows adding a custom designation for easy checking.

  • More Markdown Rendering Configuration Options
    Added additional configuration switches to the Markdown configuration to allow for more complete Markdown extension support as provided by MarkDig. Added support for Custom Containers fenced <div> blocks and Generic Markdown Attributes and added explicit properties for most of MarkDig's extension features.

  • Refactored the Preview Browser to allow pluggable Preview Controls via Addins

  • Consolidated the preview rendering via an IPreviewBrowser interface and a control that hosts the preview. This greatly reduced code duplication for preview handling in the internal and external viewers, but now also allows pluggable previewers in Markdown Monster. There's a new Addin function: GetPreviewBrowserUserControl() that allows replacement of the stock preview browser control with a custom control that implements IPreviewBrowser.
    Example: Chromium Preview Addin (preview)

  • Post Date for Weblog Post Meta Data
    The Weblog post meta data now stores the original post date, which also allows for modifying the post date to a new date when reposting if the Weblog service supports that feature.

  • Addins: Support for Read Only Editor
    You can now open a new editor tab in Read Only mode which can't be edited but can still be viewed and scrolled. Also added a double click handler in read only mode that triggers an OnNotifyAddin event for ReadOnlyDoubleClick that can be used to take action on the double click (like open a new window).

  • DisableSplashScreen Configuration Setting
    You can now optionally disable the splash screen from firing up when starting Markdown Monster.

  • New Markdown Monster Logo
    Yup we have a new image logo for the startup banner and about page.

  • Fix: Quicker Save Behavior
    Save operations previously were slightly delayed and didn't show the document as saved immediately. Made file save explicit rather than triggering on dirty flag update for much more responsive save and UI feedback.

  • Fix: Sort Order in Folder Browser
    Fix sort order to work with lower case sorting so folders or files that start with _ sort to the top and lower and upper case file names are not mixed up in sorting.

  • Fix: Weblog Post Download with FrontMatter Header
    Fix issue where Weblog posts that contain FrontMatter headers would double up the FrontMatter and title headers. Fix checks for FrontMatter in downloaded post and if found just display the raw post retrieved with the original FrontMatter and Markdown formatting.

  • Fix: Preview Theme Code Block Rendering Wrap
    Fixed preview themes so that code blocks do not wrap in the previewer and exported HTML output. Affected Darkhan, Github and Westwind themes.

  • Fix: Table Importer with HTML Tables
    Fix table importer context menu to find tables inside of the Editor. Fix import behavior if table uses upper case tag names.

  • Fix: File Modified Dialog Behavior
    Fixed prompt behavior when a file was changed when not focused on the editor and returning. Previous behavior always popped up a dialog for the file change. New behavior automatically updates the document if there are not changes pending in the editor. This avoids numerous dialog popups that are effectively unnecessary.

  • Fix: Scroll Stutter at the top of the Document
    Fixed issue where initial scroll operation from the top of the document would get 'stuck' and require explicit cursor or slow scroll movement. Fixed by changing the top window scroll detection logic.

  • Fix: Find/Replace Box Formatting
    Fix styling of the Find/Replace box which was broken after a recent update of Ace Editor. The box now also reverts closer to Ace Editor's default behavior which includes responsive auto-sizing which was previously disabled.

  • Fix: #Hash Links when generating PDF Output
    Previously hash links to HTML Anchors or Ids (such as a table of content) were not working in PDF output. Output now properly supports internal document links.

  • Fix: Fix ignored files in Folder Browser
    The folder browser now properly ignores on the ignoreFileExtensions setting, for new, externally created files that are updated in the browser view.

  • Fix: Recent Files Menu Clears
    Fixed issue where the Recent Files menu would clear if more than a certain number of files are present.

  • Fix: Weblog Keywords and Categories Trimming
    Fixed issue where keywords and categories on posted blog posts where not properly trimmed if spaces were present in the comma-delimited list.

  • Fix: Internal Links for PDF Output
    PDF output now can properly display local links inside of the document. Changed behavior of the exported HTML document by exporting to the .md file's folder and removing the Base tag which was interfering with local links.

  • Fix: Code Wrapping in the Previewer
    Fixed how code displays by overriding default Bootstrap styles that wrap code. Override forces horizontal scrollbars onto code blocks.