Markdown Navigator 2.0
Markdown language support for IntelliJ platform
A Markdown plugin with GFM and a matching preview style.
Get Markdown Navigator enhanced edition to unlock all productivity features.
Document with pleasure!
Work with Markdown files like you do with other languages in the IDE, by getting full support for:
- Paste images into documents for fast screen capture links
- Drag & Drop files and images for fast link insertion
- Formatting to cleanup documents with a key stroke
- Navigation and Find Usages to find references without effort
- Copy Markdown as JIRA, YouTrack or HTML formatted text
- Convert HTML to Markdown by pasting it into a Markdown document.
- Export to HTML or PDF to share with others
- Refactoring of all referencing elements:
- files ⟺ links
- headings ⟺ ref anchors
- footnotes ⟺ footnote refs
- references ⟺ ref links/ref images
- Completions to reduce typing:
- link address ⇐ files
- ref anchors ⇐ headings
- footnote refs ⇐ footnotes
- ref links/ref images ⇐ references
- link text ⇐ ref anchor/link address
- Error and Warning annotations to help catch mistakes early
- Intention actions for fast results with less effort
- Wrap on Typing to keep it nicely formatted as you edit
- GitHub style rendering that you are used to, out of the box
- Fast typing response for distraction free editing
- Fully customizable to adjust to your preferences and project needs
Recent change notes
2.5.2 - Bug Fix & Enhancement Release
- Fix: newer API use which causes exceptions in 2017.3 IDE versions.
- Add: link and image paste/drop options to exported/imported settings management
- Fix: preview window would show links resolved after link map transformation to
- Fix: #567, ’_’s are replaced by ’-’s in TOC, GitHub now preserves
_ in heading anchor refs
- Fix: paste handler using 2018 api
- Fix: #564, Some problems with “Copy / Drop Image” dialog. Modify image directory history drop down to include, in order of priority:
- last used image directory of the current file
- image directories of images in the current file, ordered by count of occurrence
- image directories in the current project, ordered by count of occurrence
- Fix: absolute
http:// link from main repo to wiki page which is located in a sub-directory would show as unresolved
- Add: help topics for all settings panels
- Fix: improve spelling error alignment in text with many embedded inline markers
- Fix: compatibility with IDE versions 2016.3, limit since version to 163.15529
- Fix: COPY_HTML_MIME and PDF stylesheets now combine user provided attributes with defaults so only difference has to be added to custom CSS.
- Add: emoji images to COPY_HTML_MIME and PDF stylesheets so emoji display properly.
- Fix: wiki page file name rename refactoring. Broken since 2.4.0 release
- Fix: manually exporting a file from the toolbar now treats this as if
Export on Save was set for the file.
- Fix: update GitHub wiki home link resolution for image links. Changed recently by GitHub
- Fix: trailing spaces filter behavior changed, postponed trailing spaces would all be deleted.
- Fix: reverse fix for “WebView should be available by now”, was causing deadlock if Accessibility features were enabled.
- Fix: JavaFX preview was using project profile parser settings, not scope based rendering profile parser settings.
- Fix: Formatting default table column alignment when no alignment marker is specified, header columns are centered, body columns are left aligned.
- Add: Export to treat emoji images as image linked files.
- Fix: NoSuchMethodError for IDE versions < 2018
- Fix: image paste/modify dialog to not add _# suffix to file name if pasting on image target ref and on paste action is “Replace file content” for link-ref targeting an image, since the name should be the same as the link-ref in order to replace file content. Changing the name will save it under a new file and change the link-ref.
- Fix: remove old project settings handling and replace with IDE provided method. Old settings copied to default project settings on first plugin initialization after upgrade. Now default project settings support having defaults for Rendering > Profiles
- Add: Format options for Attributes:
- space inside braces: no change, add, remove
- space around attribute equal sign: no change, add, remove
- attribute value quotes:
- No Change,
- None, double, single preferred,
- None, single, double preferred,
- Double, single preferred,
- Double quotes always,
- Single, double preferred,
- Single quotes always,
- Fix: table formatting would disable wrap on typing unnecessarily because it failed to properly detect table at caret offset.
- Add Table Caption formatting options:
- Caption: no change, always add, remove if empty, always remove;
- Caption space: no change, space around text, trim spaces check box.
- Add: #556, Default editor layout > Use last selected layout, option to have layout follow last editor layout change action.
- Fix: typographic
' breaking words for spell checker generates erroneous spelling errors.
- Fix: spell checking now done across inline markup. Error underline and Change to: intention do not work well because of interspersed markup messing up offsets but at least spelling errors will be highlighted. For example
do**sn't** will now show a spelling error because the effective text is
- Add: history to CSS settings URI text box.
- Fix: default completion for explicit
http:// absolute links to wiki pages uses the extension
file:// links to wiki pages with anchor refs showed as “Only resolving locally” in the preview, all
file:// links show as resolving only locally.
- Fix: Admonition extension would be disabled if Attributes extension was not enabled.
- Add: Admonition parser extension. Admonition Extension To create block-styled side content.
- Fix: JavaFX WebView debug page reload in Not on FX application thread exception.
- Fix: remove the “canDebug” field and replace with dynamic value.
- Fix: remove all break points on connection shutdown.
- Fix: JavaFX debugger core dumping if turning off debugging while it is paused.
- Fix: Project Default settings not being copied to new projects
- Fix: intermittent preview element highlight stopped working until page refresh
- Fix: pasting a page relative URL would be mistaken for FQN reference and always paste a link instead of text
- Fix: renaming rendering profile would not be saved properly.
- Fix: copy action on rendering profiles caused exception
- Add: all console commands work with Chrome dev tools.
- Fix: Chrome dev tools console evals and console logging from JavFX WebView scripts.
- Fix: #561, Scroll sync and highlight preview element broken in EAP 126.96.36.199
- Remove: FirebugLite script option for JavaFX. It never worked for debugging and Chrome Dev Tools work really well with JavaFX WebView.
- Add: “Toggle Editor Split Orientation” action to toggle Vertical/Horizontal split orientation
- Add: drag/drop file inside inline, fenced or indented code to insert file name.
- Add: dropping file after end of line with virtual spaces enabled, will insert spaces to fill virtual spaces.
- Fix: Adding explicit attribute to heading did not put space between text and attributes element.
- Add: file/ref anchor target search/explore intention on unresolved link anchor ref.
- Fix: launching on an anchor and cancelling, does not show intention until file is edited.
- Add: do a partial match for anchor when no anchors match exactly.
- Add: filter text box to filter anchor list (show all partials, the rest hidden) otherwise too many in the list.
- Fix: Github collapse headers script not working in 2018.1
- Fix: intermittent position not highlighting in preview.
- Fix: Drag/Drop copy files does not save link drop options.Always resets or gets them wrong.
- Add: buttons for link and image drop/paste options in markdown settings
- Add: Updated emoji to include full set of GitHub supported ones
- Add: option to select which shortcuts to recognize:
- Emoji Cheat Sheet
- Both: Emoji Cheat Sheet, GitHub (in order of preference for URL generation in HTML)
- Both: GitHub, Emoji Cheat Sheet (in order of preference for URL generation in HTML)
- Add: option to select what type of image to use:
- Images: image files only
- Unicode and Images: use Unicode characters when available, image file otherwise
- Unicode Only: only use unicode characters, don’t recognize shortcuts which have no unicode equivalent.
- Add: option to preview settings to replace Unicode emoji characters which have a corresponding image file with the image file. This allows preview browser to display Unicode emoji for which the browser would display unrecognized character symbol instead.
- Update to flexmark-java-0.32.2
- Fix: java-flexmark API changes
- Fix: java-flexmark Attributes processing changes
- Add: Parser option for Attributes assignment to text
- Add: Parser option for Emoji Shortcut Type, Emoji Image Type
- Add: Preview option for replacing Emoji unicode with image
- Add: settings option to allow directories as link targets. Allows directories to be used in links. This functionality affects operation to completions, annotations, drag/drop link creation and navigation.
- Add: Drag/Drop link creation in Wiki should have wiki option for link format.
http:// link to wiki home without the file shows as unresolved by annotator
- Fix: change explicit to wiki not showing if link format is http:// or https:// absolute
- Fix: when converting explicit to wiki don’t generate text & page ref if the explicit link text is the same as the file part of the target:
[[Page Ref]], not
- Fix: Allow links to directories under the repo not to show them as unresolved. Create ref to directory object if it is under VCS
- Fix: drag/drop directories to create a link to the directory
- Fix: document format would remove table caption element
- Add: Query user for new id on explicit id to heading intention to save a step of rename refactoring it.
- Add: if a heading has explicit id attributes, rename refactoring for it is disabled since the id is not part of attributes.
- Add parser option to parse inline HTML for
<a id="..."> for anchor targets
- Fix abbreviation definition with empty abbreviation would cause an exception
- Add Option to enable/disable use of image URI query serial, used to force preview update of image when the image file changes. Disabled by default to reduce java image caching memory issues.
- Fix: custom paste handling into scratch files was not handled in CLion, possibly other non-Java IDEs.
- Fix: #554, Settings, Import and Copy from project do not get applied until corresponding settings pane is viewed. The settings would be changed but not applied until the settings pane was clicked on first.
- Fix: diagnostic/1159, Inserting table rows could cause an index out bounds exception
- Fix: files not under VCS root would show no completions for relative addressing, only had completions for
file:// format completions.
- Add: recall of the last imported settings file to make it easier to reset settings to a known value.
- Add: markdown Application settings to exported and imported settings.
- Fix: disable local only status for links and annotation when the link is to the file itself.
- Add: allow source/preview synchronization and search/selection highlighting in basic version.
- Fix: diagnostic/1140, NPE in flexmark-java core node renderer.
- Fix: diagnostic/1141, null editor causes exception in toolbar button test.
- Add: #549, Add settings management functionality. Now in main settings panel there is a “Manage…” button in top-right corner, clicking it pops up a menu with the following options:
Copy to Project Defaults
Copy from Project Defaults
Reset Settings to reset settings to default. Project defaults, current project settings and markdown navigator application settings.
These actions copy from current unsaved project settings and to current unsaved project settings therefore you can modify settings, copy to project defaults (or export) and then cancel, result will be project defaults (or exported settings) having modified settings while project settings being those before modification.
If you copy from defaults or import a file followed by
Cancel then no settings will be modified.
- Fix: #548, When “Autoscroll to source” is enabled in project view, markdown navigator editor steals focus when moving through project view with keyboard arrows.
- Fix: #542, Typographical Error in PHPStorm Preferences > Editor > Code Style > Markdown
- Add: option in settings to enable editor paste handler registration so that paste handler is enabled by default. Because the IDE has a lot of formatter exceptions on paste which get erroneously attributed to the plugin when it delegates paste action to previous handler. Now a notification balloon will inform of the IDE exception and offer a link to disable paste handler customization.
- Fix: #546, Panel is guaranteed to be not null Regression.
- Fix: #260, Add horizontal split editor option to allow preview below the text editor. Added option in Languages & Frameworks > Markdown:
Vertical Text/Preview Split, default not selected.
- Fix: #524, Dedent shortcut not working properly.
- Fix: #539, Big local images (e.g. .gif) referred to in an open .md file get locked and cause merge conflicts and issues on checkout. Now swing implements disable GIF images option.
- Fix: #512, Add keyboard shortcut to
Cycle between Preview only and Editor only. Instead added application setting to select text/split or text/preview toggle for the toggle editor layout action.
- Fix: #511,
Cycle split layout shortcut stop working when
Preview Only is selected.
- Fix: #527, How to use italics instead of italics when pressing
Ctrl+I. Option added to Languages & Frameworks > Markdown:
Use asterisks (*) for italic text, enabled by default. When enabled italic action will use only asterisks for as markers.
- Fix: #535, Documentation for link maps and mapping groups. Documentation link added to Link Map settings panel.
- Fix: diagnostic/1100, start/end offset on paste beyond end of document
- Fix: clicking on a link with anchor ref by name of element would not scroll element into view
- Add: #391, #anchor tags not working. Added anchors of the form
<a .... attr=anchorId ...>...</a> where
name to be treated as anchor ref targets. NOTE: the first name or id attribute will be treated as the “anchor target” the other as a reference to the anchor target. If both have the same string value then renaming one will rename the other.
- Fix: regex error flexmark-java attributes parser which could cause a parsing loop
- Add: parser option to not generate duplicate dashes
- in heading ids
- Fix: fenced code content erroneously processed GitHub issue marker
- Fix: #544, Export to PDF greyed out. Editor actions would be disabled if the text editor was not visible.
- Add: parser options for Attributes Extension and Enumerated Reference of flexmark-java.
- Add: heading intentions to add/remove explicit id
- Add: completions for link anchors to id attribute values
- Add: completions for enumerated references and reference formats
- Add: formatting options and formatting for Enumerated References
- Add: error/unused annotations for enumerated reference, enumerated format and attribute id
- Add: refactoring/navigation for Enumerated Reference format id’s, Attribute Id’s, Enumerated Reference link/text.
- Fix: diagnostic: 1055, sometimes virtual file == null for a PsiFile causing an exception.
- Add: option to add serial query suffix to CSS URI which increments when the css file changes (only file:// URI’s and document relative URLs are supported.)
- Fix: diagnostic 1030, when bread-crumb provider steps up to file level while looking for headings.
- Fix: diagnostic: 1032, sometimes an exception is thrown “AssertionError: Unexpected content storage modification”
- Fix: diagnostic 1033, paste handler exception
IllegalStateException: Clipboard is busy
- Fix: diagnostic 1035, null pointer exception in Swing preview when image tag has no
- Fix: diagnostic 1047, sometimes an IOException is generated if markdown sub-type is requested during indexing operation.
General usage instructions
Install and get GitHub-like markdown with HTML preview and HTML text tabs for markdown text files.