Repository navigation
Expand file tree
/
Copy pathREADME.htm
More file actions
484 lines (484 loc) · 28.3 KB
/
Copy pathREADME.htm
File metadata and controls
484 lines (484 loc) · 28.3 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
<style type="text/css">
body{
font-family: Arial, sans-serif;
}
img{
max-width: 100%;
height: auto;
}
video{
max-width: 100%;
height: auto;
}
code{
font-family: "Consolas", monospace;
}
pre{
border: 1px solid #ddd;
border-left: 3px solid #f36d33;
overflow: auto;
padding: 1em 1.5em;
display: block;
}
Blockquote{
border-left: 3px solid #d0d0d0;
padding-left: 0.5em;
margin-left:1em;
}
Blockquote p{
margin: 0;
}
table{
border:1px solid;
border-collapse:collapse;
}
th{
padding:5px;
border:1px solid;
}
td{
padding:5px;
border:1px solid;
}
mark{
background-color: #fff3a0;
color: #000;
}
kbd{
font-family: "Consolas", monospace;
border: 1px solid #bbb;
padding: 0 4px;
}
div.math{
text-align: center;
}
pre.mermaid{
border: none;
padding: 0;
}
.markdown-alert{
padding: 0.5em 1em;
margin-bottom: 1em;
border-left: 4px solid #d0d7de;
}
.markdown-alert-title{
font-weight: bold;
}
.markdown-alert-note{
border-left: 4px solid #0969da;
}
.markdown-alert-note .markdown-alert-title{
color: #0969da;
}
.markdown-alert-tip{
border-left: 4px solid #1a7f37;
}
.markdown-alert-tip .markdown-alert-title{
color: #1a7f37;
}
.markdown-alert-important{
border-left: 4px solid #8250df;
}
.markdown-alert-important .markdown-alert-title{
color: #8250df;
}
.markdown-alert-warning{
border-left: 4px solid #9a6700;
}
.markdown-alert-warning .markdown-alert-title{
color: #9a6700;
}
.markdown-alert-caution{
border-left: 4px solid #cf222e;
}
.markdown-alert-caution .markdown-alert-title{
color: #cf222e;
}
</style>
<h1 id="markdown-editor-and-shell-extensions">Markdown Editor and Shell Extensions</h1>
<p><a href="LICENSE"><img src="https://img.shields.io/badge/License-Apache%202.0-green.svg" alt="License: Apache" /></a>
<a href="https://github.com/EtheaDev/MarkdownShellExtensions/releases"><img src="https://img.shields.io/github/v/release/EtheaDev/MarkdownShellExtensions?label=release&color=blue" alt="Latest release" /></a>
<a href="https://www.embarcadero.com/products/delphi"><img src="https://img.shields.io/badge/Delphi-12%2B-e62329.svg" alt="Delphi 12+" /></a>
<a href="https://docwiki.embarcadero.com/RADStudio/en/Main_Page"><img src="https://img.shields.io/badge/Platform-VCL-8a2be2.svg" alt="Platform: VCL" /></a>
<a href="https://spec.commonmark.org/0.31.2/"><img src="https://img.shields.io/badge/CommonMark-0.31.2%20652%2F652-1f6feb.svg" alt="CommonMark 0.31.2" /></a>
<a href="https://github.github.com/gfm/"><img src="https://img.shields.io/badge/GFM-0.29%2024%2F24-24292f.svg" alt="GFM 0.29" /></a>
<a href="https://katex.org/"><img src="https://img.shields.io/badge/Math-35%2F35-008080.svg" alt="Math formulas" /></a>
<a href="https://docs.github.com/en/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax#alerts"><img src="https://img.shields.io/badge/Alerts-20%2F20-d29922.svg" alt="GitHub alerts" /></a>
<a href="https://katex.org/"><img src="https://img.shields.io/badge/KaTeX-0.16.11-008080.svg" alt="KaTeX 0.16.11" /></a>
<a href="https://mermaid.js.org/"><img src="https://img.shields.io/badge/Mermaid-11.17.2-ff3670.svg" alt="Mermaid 11.17.2" /></a>
<a href="https://developer.microsoft.com/microsoft-edge/webview2/"><img src="https://img.shields.io/badge/WebView2-Edge-0078d4.svg" alt="Microsoft Edge WebView2" /></a>
<a href="https://www.microsoft.com/windows"><img src="https://img.shields.io/badge/Windows-10%20%7C%2011-0078d6.svg" alt="Windows 10 and 11" /></a></p>
<p><img src="./Images/SupportingDelphi.jpg" alt="Delphi Support" /></p>
<p>Related links: <a href="https://www.embarcadero.com/">embarcadero.com</a> - <a href="https://learndelphi.org/">learndelphi.org</a></p>
<p><strong>A collection of tools for markdown files, to edit and view content:</strong></p>
<ul>
<li>
<p>A <strong>Markdown Text Editor</strong> to manually edit a markdown file, with instant preview of the output: the preview uses Microsoft Edge WebView2, so math formulas and mermaid diagrams are drawn as on GitHub.</p>
</li>
<li>
<p>A <strong>Preview handler</strong> which allows you to see the content of the markdown file without open it, in the “Preview Panel”, integrated into Windows Explorer.</p>
</li>
</ul>
<h3 id="documentation">Documentation</h3>
<p>Follow the <a href="https://ethea.it/docs/markdowntools/">Project Site</a> to know all the markdown tools and the Delphi components: Markdown Processor, Markdown Text Editor and Markdown Help Viewer.</p>
<hr />
<h3 id="features">Features</h3>
<ul>
<li>
<p>No need to built the project with Delphi: an easy Setup is provided.</p>
</li>
<li>
<p>Supports Windows 10 and 11 (for 32 bits and 64 bits).</p>
</li>
<li>
<p>Themes (Dark and Light) according to user preferences of Windows Theme, with the VCL styles: <strong>Light</strong>: Sky, Windows Modern, Windows11 Impressive Light, Windows11 Modern Light, Windows11 Polar Light; <strong>Dark</strong>: Glow, Windows Modern SlateGray, Windows11 Impressive Dark, Windows11 Modern Dark, Windows11 Polar Dark</p>
</li>
<li>
<p>Uses the latest, empowered version of the <a href="https://github.com/EtheaDev/MarkdownProcessor">Markdown Processor</a> (2.1): CommonMark 0.31.2 and GitHub Flavored Markdown compliant engine. The default dialect is now <strong>GitHub</strong> (GFM + math formulas, alerts and mermaid diagrams, plus subscript, superscript, insert, mark, smart typography, heading ids, wiki links and videos); CommonMark, GFM, DaringFireball and TxtMark are still available.</p>
</li>
<li>
<p>The preview of the <strong>Markdown Text Editor</strong> uses <strong>Microsoft Edge WebView2</strong> (TEdgeMarkdownViewer of the <a href="https://github.com/EtheaDev/MarkdownHelpViewer">Markdown Help Viewer</a> project): math formulas with KaTeX, mermaid diagrams, GitHub alerts, synchronized scroll with the editor. When WebView2 is not available, or it is disabled in the Settings (“Use WebView2 (Edge) when available”), the preview uses HTMLViewer. <strong>WebView2Loader.dll</strong> is distributed with the editor (installed by the Setup). KaTeX and mermaid.js are installed with the editor too (Scripts folder): math formulas, mermaid diagrams and charts (pie, bar and line charts) are drawn also <strong>without an Internet connection</strong>.</p>
</li>
<li>
<p>The <strong>Preview Panel</strong> of Windows Explorer keeps the internal HTML viewer (HTMLViewer): math formulas are shown as images and mermaid diagrams as text.</p>
</li>
<li>
<p><strong>Videos</strong> in the documents (<code>.mp4</code>, <code>.webm</code>…), written as an image of the video file: <code></code>. The preview with WebView2 plays them; HTMLViewer shows a link that opens the player of the system.</p>
</li>
<li>
<p>Images, videos and links are resolved as a browser does: write their path relative to the document, with <code>/</code> (<code>images/logo.png</code>, <code>../images/logo.png</code>). The “Insert image” and “Insert link” dialogs of the editor write the paths so.</p>
</li>
<li>
<p>Integrated also with other Shell Applications (like XYplorer)</p>
</li>
</ul>
<h3 id="delphi-integration-with-markdown-help-viewer">Delphi: integration with MarkDown Help Viewer</h3>
<ul>
<li>For Delphi developers: use this tool to prepare and integrate a Help System in your application, using the <a href="https://github.com/EtheaDev/MarkdownHelpViewer">“MarkDown Help Viewer”</a> project.</li>
<li>Use the <strong>Markdown Text Editor</strong> to edit your help files and use the <strong>Markdown Help Viewer</strong> to show them.</li>
</ul>
<h3 id="setup-using-the-installer">Setup using the Installer</h3>
<p>Click to download the <a href="https://github.com/EtheaDev/MarkdownShellExtensions/releases/latest/download/MDShellExtensionsSetup.exe">MDShellExtensionsSetup.exe</a> located also in the Release area. The Installer works both for 32 and 64 bit system.</p>
<p><img src="./Images/Setup.png" alt="Markdown Setup_Program" /></p>
<p><em><strong>For a clean Setup close all the windows explorer instances which have the preview handler active or the preview handler was used (remember the dll remains in memory until the windows explorer was closed).</strong></em></p>
<h3 id="markdown-text-editor">Markdown Text Editor</h3>
<p>A useful Text editor with instant preview of Markdown formatted content:</p>
<p><img src="./Images/MDTextEditorLight.png" alt="Markdown Text Editor Dark" /></p>
<h3 id="manual-build-and-installation-only-for-delphi-developers">Manual Build and Installation (only for Delphi developers)</h3>
<p>How to build the projects with Delphi and how to manually register the Shell Extensions is explained in the <a href="https://ethea.it/docs/markdowntools/MarkdownShellExtensions/Manual-Build-and-Installation">Manual Build and Installation</a> page of the Project Site.</p>
<h3 id="preview-panel-in-action">Preview Panel in action</h3>
<p>In Windows 10 with Dark theme:</p>
<p><img src="./Images/PreviewPanelDark.png" alt="Preview Panel Dark" /></p>
<h3 id="manual-build-and-installation-only-for-delphi-developers-1">Manual Build and Installation (only for Delphi developers)</h3>
<p>If you have Delphi 12 or 13, you can manually build the projects using:</p>
<p>\Source\MDShellExtensionsGroup.groupproj</p>
<p>or the command: Build.bat (defining location of your Delphi environment)</p>
<p><em><strong>Warning: To simplyfy build of the projects, some third parties libraries are located into ext folder</strong></em></p>
<p>To manually install the SVGShellExtensions.dll follow these steps:</p>
<ol>
<li>
<p>Close all the windows explorer instances which have the preview handler active or the preview handler was used (remember the dll remains in memory until the windows explorer was closed).</p>
</li>
<li>
<p>If you have already used the installer uninstall the components from system.</p>
</li>
<li>
<p>To install manually the dll run the <code>Unregister_Register.cmd</code> (run-as-administrator): notice that you must change the path into cmd file.</p>
</li>
</ol>
<h2 id="release-notes">Release Notes</h2>
<p>14 Oct 2026: ver. 3.1.0</p>
<ul>
<li>Uses the Markdown Processor 2.1: <strong>videos</strong> in the documents, written as an image of the video file (<code></code>: <code>.mp4</code>, <code>.m4v</code>, <code>.webm</code>, <code>.ogv</code>, <code>.mov</code>). The preview with WebView2 plays them; HTMLViewer shows a link that opens the video with the player of the system</li>
<li>Markdown Text Editor, “Insert image” and “Insert link” dialogs: the selected file is written as a path relative to the document, with <code>/</code> (e.g. <code>../images/image.png</code>), never as a Windows path; spaces and special characters are percent-encoded. A file of another drive (or of a document not saved yet) is written as a <code>file:///</code> URL, with a warning: the safe mode removes it. The image dialog can also select the videos</li>
<li>Preview: images, videos and links resolved as a browser does, both with WebView2 and with HTMLViewer (relative paths with <code>/</code>, percent-encoded characters, <code>file:///</code> URLs); with WebView2 the relative paths that go up from the folder of the document (<code>../Pictures/image.png</code>) are now found; a Windows path (<code>C:\folder\image.png</code>) is not a valid URL and is no longer shown also by HTMLViewer</li>
<li>Markdown Text Editor with WebView2: “Print file” asks the printer and prints the page shown in the preview, with header and footer (it printed the Markdown text); “Print” and “Save as” of the preview propose the name of the document instead of the data: URL of the page</li>
<li>MarkDown Support Test.md (Docs folder): new section “Video”, with a short video</li>
<li>Markdown Text Editor and Preview: the obsolete Windows10 VCL styles have been removed; available styles: Sky, Windows Modern, Windows11 Impressive Light, Windows11 Modern Light, Windows11 Polar Light (light) and Glow, Windows Modern SlateGray, Windows11 Impressive Dark, Windows11 Modern Dark, Windows11 Polar Dark (dark). On Windows 10 the default style is “Windows Modern” (light) or “Windows Modern SlateGray” (dark); a style saved by a previous version and no longer available is replaced by the default one</li>
<li>Settings, Theme page: all the styles linked into the application are offered, classified as light or dark automatically (also a style added by who builds the editor)</li>
</ul>
<p>08 Oct 2026: ver. 3.0.0 (major version)</p>
<ul>
<li>Uses the new Markdown Processor 2.0: CommonMark 0.31.2 and GitHub Flavored Markdown compliant engine, with math formulas, GitHub alerts, mermaid diagrams and the legacy extensions (subscript, superscript, insert, mark, smart typography, heading ids, wiki links)</li>
<li>New default dialect: GitHub. The dialect saved by the previous versions as CommonMark (the old default) is automatically converted to GitHub; the dialect is now stored by name in the settings, and the dialect combo lists all the dialects (DaringFireball, CommonMark, TxtMark, GFM, GitHub)</li>
<li>Markdown Text Editor: the preview uses Microsoft Edge WebView2 (math formulas with KaTeX, mermaid diagrams, alerts, synchronized scroll); print preview with the WebView2 print dialog, PDF export with WebView2, HTML export of the full page with the scripts. Fallback to HTMLViewer when WebView2 is not available or when “Use WebView2 (Edge) when available” is disabled in the Settings</li>
<li>WebView2Loader.dll is distributed with the Markdown Text Editor (installed by the Setup)</li>
<li>Math formulas and mermaid diagrams (also charts: pie, bar and line charts) are drawn in the preview of the Markdown Text Editor also without an Internet connection: KaTeX 0.16.11 and mermaid 11.17.2 are distributed in the <strong>Scripts</strong> folder (installed by the Setup)</li>
<li>Preview Panel of Windows Explorer: still based on HTMLViewer, now with math formulas as images</li>
<li>New default stylesheet, shared with the Markdown Help Viewer: styles for alerts, mark, kbd, math and mermaid; the font of the page is the HTML font of the Settings</li>
</ul>
<p>03 Sep 2026: ver. 2.8.5</p>
<ul>
<li>Fixed an Access Violation when downloading a new setup right after the automatic version check: the shared HTTP client was created only by the manual check, so the automatic path reached the download with no client at all.</li>
<li>A missing setup file name or project URL is now reported with a clear message instead of an assertion, which is compiled out of release builds.</li>
<li>Web help and repository are now kept distinct: the documentation points to <a href="https://ethea.it/docs/markdowntools/">https://ethea.it/docs/markdowntools/</a>, while the Issues button and the new-version check point to GitHub.</li>
<li>Markdown Text Editor: fixed two memory-management defects on the file-opening error path.</li>
<li>Markdown Text Editor: closing with unsaved changes can now be cancelled.</li>
<li>Markdown Text Editor: “Save All” no longer stops at the first file that cannot be saved; all the failures are reported together at the end.</li>
<li>Markdown Text Editor: removed the Help button from the error dialog, which did nothing because no help file is configured.</li>
</ul>
<p>01 Sep 2026: ver. 2.8.4</p>
<ul>
<li>Fixed memory and GDI resource leak in the Thumbnail provider: the bitmap was never released, leaking resources in the Explorer process for every generated thumbnail.</li>
<li>Fixed the shared resources data module of the shell extension: with two preview handlers alive in the same process, one could free the resources still in use by the other.</li>
<li>Fixed preview sizing on high-DPI and multi-monitor setups: the preview now uses the rectangle provided by the host (as required by the IPreviewHandler contract) instead of GetWindowRect, and re-layouts when the DPI changes.</li>
<li>Fixed preview of ANSI-encoded markdown files (empty preview); exceptions are no longer silently discarded.</li>
<li>Removed Application.ProcessMessages during image loading inside the DLL (it pumped the Explorer message queue) and added reentrancy guards.</li>
<li>Fixed the PDF page orientation setting, written and read with different INI keys.</li>
<li>Fixed the version check: MDTextEditor declared a wrong version in the binary VERSIONINFO and proposed an update to an already installed version; the check now runs in background at startup and can be disabled.</li>
<li>Remote images: no temporary files left behind.</li>
<li>Code cleanup: removed unused units, classes and methods, and reduced the size of the thumbnail log.</li>
</ul>
<p>06 Jul 2026: ver. 2.8.3</p>
<ul>
<li>Added a configurable HTML stylesheet (CSS) in Settings (Preview page), with CSS syntax highlighting: you can customize how the markdown preview is rendered.</li>
<li>Large images now fit the page width by default (img max-width).</li>
<li>Reorganized the Settings dialog: editor options in the “General” page, HTML preview options in the “Preview” page.</li>
<li>The Settings dialog can now be closed with the Esc key.</li>
<li>Fixed “List index out of bounds” at startup when restoring the previous session.</li>
</ul>
<p>26 Jun 2026: ver. 2.8.2</p>
<ul>
<li>Fixed random Access Violation when closing a document tab.</li>
<li>Fixed Access/External Violation when zooming the HTML preview with Ctrl+Mouse wheel (including the code-block syntax highlighter).</li>
<li>Fixed oversized editor font when zooming with Ctrl+Mouse wheel on high-DPI monitors.</li>
</ul>
<p>17 Jun 2026: ver. 2.8.1</p>
<ul>
<li>Fixed tables: inline constructs no longer span cells</li>
<li>Updated Markdown Support Test.md file</li>
<li>Added Allow Unsafe HTML CheckBox into Settings</li>
</ul>
<p>09 Jun 2026: ver. 2.8.0</p>
<ul>
<li>Added syntax highlighting of fenced code blocks (<code>delphi, </code>json, …), based on the language, like GitHub, both in the Editor preview and in the Explorer Preview Panel.</li>
<li>Added Markdown syntax highlighting in the text editor (headings, bold, italic, links, inline code, lists, blockquotes, …), with theme-aware colors for light and dark mode.</li>
<li>Added Settings option “Highlight Markdown text” (enabled by default) to turn the editor's Markdown syntax highlighting on or off.</li>
</ul>
<p>03 Jun 2026: ver. 2.7.3</p>
<ul>
<li>Added single-instance behavior: opening a markdown file now reuses the running editor instead of starting a new one.</li>
<li>Added Settings option to remember and reopen files from the last session.</li>
</ul>
<p>27 May 2026: ver. 2.7.2</p>
<ul>
<li>Fixed copy (Ctrl-C and context menu) from HTML Viewer.</li>
<li>Added synchronized scrolling between the Markdown editor and the HTML preview</li>
<li>Added synchronized scrolling as toggleable toolbar button and Settings</li>
</ul>
<p>11 Apr 2026: ver. 2.7.1</p>
<ul>
<li>Used new “modern” Styles available in Delphi 13.</li>
</ul>
<p>20 Feb 2026: ver. 2.7.0</p>
<ul>
<li>Fixed saving new file in UTF-8 format.</li>
</ul>
<p>02 Jan 2026: ver. 2.6.0</p>
<ul>
<li>Fixed Hyperlinks in PDF Export: now are visible and active in PDF file generated, using SynPDF library.</li>
<li>Fixed random AV closing files.</li>
</ul>
<p>06 Sep 2025: ver. 2.5.0</p>
<ul>
<li>Built with Delphi 13</li>
<li>Refactoring PageControl to speedup loading</li>
<li>Added check for new version available, download and install</li>
<li>Updated Setup</li>
<li>Updated the latest Image32 library</li>
</ul>
<p>01 Mar 2025: ver. 2.4.0</p>
<ul>
<li>Added “Wordwrap option” for the editor (active by default)</li>
<li>Added “Layout Views”</li>
<li>Fixed Menu over Editor Toolbar and Captions when collapsed</li>
<li>Updated the latest Image32 library</li>
</ul>
<p>26 Jan 2025: ver. 2.3.3</p>
<ul>
<li>Fixed loading remote svg files</li>
<li>Fixed “autocreate” missing file</li>
</ul>
<p>22 Jan 2025: ver. 2.3.2</p>
<ul>
<li>Added auto-create file linked, if not exists</li>
<li>Fixed Splitter View Opening a File</li>
<li>Fixed Refresh content after load</li>
</ul>
<p>15 Sep 2024: ver. 2.3.1</p>
<ul>
<li>Built with Delphi 12.2</li>
</ul>
<p>28 Aug 2024: ver. 2.3.0</p>
<ul>
<li>Use of TFormTabsBar component (Delphi 12) for paging</li>
<li>Use of Styled Message Dialogs</li>
<li>Updated Setup to show errors registering dlls</li>
</ul>
<p>28 May 2024: ver. 2.2.5</p>
<ul>
<li>File Changed notification and reload only when App has focus</li>
<li>Small icons on Message Dialogs</li>
</ul>
<p>23 May 2024: ver. 2.2.4</p>
<ul>
<li>Fixed Registration of dll extension during Setup</li>
<li>Updated the latest Image32 library</li>
</ul>
<p>21 May 2024: ver. 2.2.3</p>
<ul>
<li>Added Packages in External Sources</li>
<li>Changed MessageDialogs with small animations</li>
<li>Fixed Version number into Installer</li>
</ul>
<p>10 May 2024: ver. 2.2.2</p>
<ul>
<li>Fixed Explorer Preview for Chinese chars</li>
<li>Added use of StyledComponents and Rounded Buttons in Explorer Preview</li>
<li>Fixed Initialization of GDI+</li>
</ul>
<p>09 May 2024: ver. 2.2.1</p>
<ul>
<li>Added File Changed notification and reload</li>
<li>Fixed Preview for Chinese chars</li>
<li>Added use of StyledComponents and Rounded Buttons</li>
<li>Built with Delphi 12.1</li>
<li>Built with Latest Image32 Library</li>
<li>Built with Latest Skia4Delphi 6.1 Library</li>
</ul>
<p>20 Mar 2024: ver. 2.2.0</p>
<ul>
<li>Fixed resize content when changing Monitor</li>
<li>Updated to latest version of HTMLViewer</li>
</ul>
<p>13 Jan 2024: ver. 2.1.0</p>
<ul>
<li>Built with Delphi 12</li>
<li>Updated Copyright</li>
<li>Aligned to MarkDown HelpViewer project</li>
<li>Added create table wizard</li>
</ul>
<p>3 Nov 2023: ver. 2.0.2</p>
<ul>
<li>Added “mark” command in markdown toolbar</li>
<li>Recognized 1) same as 1. (ordered list)</li>
<li>Added .text and .txt extensions to editor/shell extensions</li>
</ul>
<p>25 Oct 2023: ver. 2.0.1</p>
<ul>
<li>Fixed some “hints”</li>
<li>Uses System Border and Shadows for Forms</li>
</ul>
<p>24 Oct 2023: ver. 2.0.0</p>
<ul>
<li>Added use of Skia4Delphi</li>
<li>Added support for new image format (webp and wbmp)</li>
<li>Uses AnimatedStyledDialogs for messages</li>
<li>Added toolbar for markdown commands</li>
<li>Added dialog for input of hyperlink for Images and Files</li>
<li>Updated Markdown library with best support for CommonMark transformation</li>
</ul>
<ol>
<li>Subscript <code><sub>text</sub></code> and Superscript <code><sup>text</sup></code></li>
<li>Formulas (using <a href="https://developers.google.com/chart/infographics/docs/formulas">Google Chart API</a>)</li>
<li><mark>Markers</mark></li>
<li><a href="https://www.markdownguide.org/basic-syntax/#reference-style-links">Reference-style Links</a></li>
</ol>
<p>29 Jun 2023: ver. 1.5.2</p>
<ul>
<li>Fixed loading images with “spaces” in the filename</li>
<li>Fixed immediate-loading of new images when editing the file</li>
<li>During loading of remote images, user can stop loading pressing “Esc”</li>
<li>Updated Copyright for the Editor</li>
</ul>
<p>26 Jun 2023: ver. 1.5.1</p>
<ul>
<li>Fixed Preview of Markdown files with extensions different from .markdown</li>
</ul>
<p>24 Jun 2023: ver. 1.5.0</p>
<ul>
<li>Autoload local markdown files when clicked into Preview</li>
<li>The editor can open all markdown extensions: .md, .mkd, .mdwn, .mdown, .mdtxt, .mdtext, .markdown, .txt, .text'</li>
<li>Stopped image rendering during editing to speed-up</li>
<li>Added useful close button on Tabs</li>
<li>Hint full filename on Tabs</li>
<li>Save/Discard messaged default response inverted</li>
<li>Removed Settings “Search In Folder”</li>
</ul>
<p>1 Nov 2022: ver. 1.4.3</p>
<ul>
<li>Fixed loading images into Preview</li>
<li>Fixed the setting for local loading</li>
</ul>
<p>11 Set 2022: ver. 1.4.1</p>
<ul>
<li>Added Combobox for easy selection Markdown Dialect</li>
<li>Added Windows 11 light and dark styles</li>
<li>Fixed load file with blanks in content menu</li>
<li>Fixed loading ANSI files</li>
<li>Fixed AV in Settings with opened files</li>
</ul>
<p>20 Jan 2022: ver. 1.3.0</p>
<ul>
<li>Added Support for Windows 11</li>
<li>Fixed resize content</li>
</ul>
<p>04 Sep 2021: ver. 1.2.0</p>
<ul>
<li>Added Support for Delphi 11</li>
<li>Updated Image32 Lib</li>
</ul>
<p>20 Jul 2021: ver. 1.1.0</p>
<ul>
<li>Added Image32 Lib to best rendering of SVG Images</li>
</ul>
<p>06 Jul 2021</p>
<ul>
<li>First public release with setup</li>
</ul>
<h2 id="credits">Credits</h2>
<p>Many thanks to <strong>Rodrigo Ruz V.</strong> (author of <a href="https://theroadtodelphi.com/">theroadtodelphi.com</a> Blog) for his wonderful work on <a href="https://theroadtodelphi.com/category/previewhandler/">delphi-preview-handler</a> from which this project has used a lot of code and inspiration.</p>
<h2 id="license">License</h2>
<p>Licensed under the <a href="https://opensource.org/licenses/Apache-2.0">Apache License, Version 2.0</a> (the “License”);</p>
<p>Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an “AS IS” BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.</p>
<h3 id="other-libraries-from-ethea">Other libraries from Ethea:</h3>
<p><strong>SVGIconImageList</strong> - <a href="https://github.com/EtheaDev/SVGIconImageList/">https://github.com/EtheaDev/SVGIconImageList/</a></p>
<p><strong>StyledComponents</strong> - <a href="https://github.com/EtheaDev/StyledComponents">https://github.com/EtheaDev/StyledComponents</a></p>
<p><strong>Delphi MarkdownProcessor</strong> - <a href="https://github.com/EtheaDev/MarkdownProcessor">https://github.com/EtheaDev/MarkdownProcessor</a></p>
<h3 id="third-parties-libraries">Third parties libraries:</h3>
<p><strong>OpenSLL Library</strong>: Cryptography and SSL/TLS Toolkit</p>
<p>Copyright © 1998-2018 The OpenSSL Project. All rights reserved.</p>
<p><strong>Delphi Markdown</strong> - <a href="https://github.com/grahamegrieve/delphi-markdown">https://github.com/grahamegrieve/delphi-markdown</a></p>
<p>Copyright (c) 2011+, Health Intersections Pty Ltd All rights reserved</p>
<p><strong>Delphi Preview Handler</strong> - <a href="https://github.com/RRUZ/delphi-preview-handler">https://github.com/RRUZ/delphi-preview-handler</a></p>
<p>The Initial Developer of the Original Code is Rodrigo Ruz V.
Portions created by Rodrigo Ruz V. are Copyright © 2011-2023 Rodrigo Ruz V.</p>
<p><strong>SynEdit</strong> - <a href="http://synedit.svn.sourceforge.net/viewvc/synedit/">http://synedit.svn.sourceforge.net/viewvc/synedit/</a></p>
<p>all rights reserved.</p>
<p><strong>KaTeX</strong> - <a href="https://katex.org/">https://katex.org/</a></p>
<p>Copyright (c) 2013-2020 Khan Academy and other contributors (MIT License)</p>
<p><strong>Mermaid</strong> - <a href="https://mermaid.js.org/">https://mermaid.js.org/</a></p>
<p>Copyright (c) 2014-2022 Knut Sveidqvist (MIT License)</p>
<p><strong>Synopse/SynPDF</strong> - <a href="https://github.com/synopse/SynPDF">https://github.com/synopse/SynPDF</a></p>
<p>Copyright © Synopse: all right reserved.</p>
<p><strong>HtmlToPdf</strong> - <a href="https://github.com/MuzioValerio/HtmlToPdf">https://github.com/MuzioValerio/HtmlToPdf</a></p>
<p>Copyright © Muzio Valerio.</p>
<p><strong>Image32 Library</strong> - <a href="http://www.angusj.com/delphi/image32/Docs/_Body.htm">http://www.angusj.com/delphi/image32/Docs/_Body.htm</a></p>
<p>Copyright ©2019-2025 Angus Johnson.</p>
<p><strong>dzlib</strong> - <a href="https://sourceforge.net/projects/dzlib/">https://sourceforge.net/projects/dzlib/</a></p>
<p>Copyright (c) Thomas Mueller</p>
<p><strong>HTMLViewer</strong> - <a href="https://github.com/BerndGabriel/HtmlViewer">https://github.com/BerndGabriel/HtmlViewer</a></p>
<p>Copyright (c) 1995 - 2008 by L. David Baldwin</p>
<p>Copyright (c) 1995 - 2023 by Anders Melander (DitherUnit.pas)</p>
<p>Copyright (c) 1995 - 2023 by Ron Collins (HtmlGif1.pas)</p>
<p>Copyright (c) 2008 - 2009 by Sebastian Zierer (Delphi 2009 Port)</p>
<p>Copyright (c) 2008 - 2010 by Arvid Winkelsdorf (Fixes)</p>
<p>Copyright (c) 2009 - 2023 by HtmlViewer Team</p>
<h1 id="external-projects">External projects</h1>
<p><em><strong>To simpilfy compilation of projects they are added into ext folder</strong></em></p>
<p><a href="https://github.com/EtheaDev/SVGIconImageList">SVGIconImageList</a></p>
<p><a href="https://github.com/BerndGabriel/HtmlViewer">HtmlViewer</a></p>
<p><a href="https://github.com/RRUZ/vcl-styles-utils">vcl-styles-utils</a></p>
<p><a href="https://github.com/EtheaDev/MarkdownProcessor">markdownProcessor</a></p>
<p><a href="https://github.com/EtheaDev/StyledComponents">StyledComponents</a></p>
<p><a href="https://sourceforge.net/projects/dzlib/">dzlib</a></p>