MarkDown и MT/ME

 

MQ реализовала базовый MarkDown в MetaEditor. Просмотр и редактирование.

Вероятно, не все интересовались MarkDown, хотя он используется в выдаче ИИ-моделей, поэтому опишу основы формата.

Сравню с популярной программой Obsidian - мощным заметочником (и не только) с MarkDown.

Мне больше всего не хватает таблиц.

Реализовано (скриншоты из ME):

Хэштеги:
#hashtag

Заголовки:
# This is a heading 1
## This is a heading 2
### This is a heading 3 
#### This is a heading 4
##### This is a heading 5
###### This is a heading 6

Форматирование:
*курсив*
**жирный**
*** (линия)



text


Как видно, переносы строк теряются.
Так же - _курсив_, __жирный__, ---, ___

Списки:
- Item 1
- Item 2
  - Item 2a
  - Item 2b

1. Item 1
2. Item 2
3. Item 3
   1. Item 3a
   2. Item 3b

Гиперссылки на файл (Путь относительный к исходному документу):
[Текст](Имя%20файла.md)
[Текст](<Имя файла.md>)

Гиперссылки http:
[Документация](https://www.mql5.com/ru/docs)
![Obsidian](https://obsidian.md/images/banner.png)

Гиперссылки URI:
[Link to note](obsidian://open?path=D:%2Fpath%2Fto%2Ffile.md)
[Link to note](obsidian://open?vault=MainVault&file=MyNote.md)

Реализовано нестандартно:

Сноски:
[^1]: Сноска

[^2]: Сноска
   Продолжение

Obsidian:

ME:

^1 и ^2 кликабельны, но при нажатии - ERR_FILE_NOT_FOUND, хотя ожидается переход на сноску внутри документа.

Здесь реализовано так:
text [^1]

[^1]: Файл.md
Тогда при нажатии на ^1 открывается Файл.md, но загружается в неправильной кодировке. Путь относительный к исходному документу.


Не реализовано (скриншоты из Obsidian):

Форматирование:
~~зачёркнуто~~
==highlight text==

Code block:

```cpp
int function(bool arg) {
  if (arg)
    return 1;
  
  return 0;
}
```


Гиперссылки на файл:
[[Файл.md]]
[[Файл.md|Текст]]
![[Файл.md|Текст]]

Масштабирование картинки:
![Obsidian|200](https://obsidian.md/images/banner.png)

Таблицы:
Header 1 | Header 2 | Header 3 | Header 4
-- | :-- | --: | :--:
def | L | R | C


Списки TODO:
- [x] #tags, [links](), **formatting** supported
- [x] list syntax required (any unordered or ordered list supported)
- [x] this is a complete item
- [?] this is also a complete item (works with every character)
- [ ] this is an incomplete item
- [ ] tasks can be clicked in Preview to be checked off


Блоки:

> [!Note] note
> Текст

> [!SUMMARY] abstract, summary, tldr
> Текст

> [!INFO] info, todo
> Текст

и т.д.
Использование в ME ">" без типа не создаёт блок, просто даёт отступ и сливает все строки (до первой пустой) в одну.

Комментарии, диаграммы

Math:
$$\begin{vmatrix}a & b\\
c & d
\end{vmatrix}=ad-bc$$

Inline math $e^{2i\pi} = 1$ .


 

Разумеется, никакого фолдинга, как в Obsidian.

Но самое плохое - многие строки сливаются в одну. Форматирование MD, созданных в Obsidian, теряется. Надо или всё переделывать, или с самого начала пользоваться только базовыми вещами. И добавлять дополнительные пустые строки для разделения.

Итог: я пока остаюсь на Obsidian.