MarkedText - markdown of a healthy person

Hello, my name is Dmitry Karlovsky and I write all my articles (and presentations ) in MarkDown markup. And you know what? She already poked me up pretty well! I write texts in Russian, but most of the special characters are only in the English keyboard layout. And table editing is the eternal leaning tower of Pisa. In short, he has problems both with ease of editing and with the clarity of presentation. So let's try to design it from scratch, without dragging kilotons of puzzling designs with us.





The layout went a little bit, since a new curve vizivig was rolled out on Habré. So now it will be extremely difficult to write articles in the markdown, and then upload them to Habr. With normal layout you can read this article on github: https://github.com/nin-jin/HabHub/issues/39





Principles

  • Syntax unambiguity





  • Simplicity of syntax





  • Consistency of syntax





  • Minimal impact on natural looking text





  • Ease of editing regardless of layout





  • Visibility of presentation





  • Extensibility





  • Fast and reliable memorability





As special formatting characters, it is better to use those that are in any layout, and not only in English. That is, other things being equal, it is better to give preference to the following characters:!



"



;



%



:



?



*



(



)



_



+



/



\



.



,



-



=







Existing solutions

, . : AsciiDoc, BBCode, Creole, GitHub Flavored Markdown, Markdown, Markdown Extra, MediaWiki, MultiMarkdown, Org-mode, PmWiki, POD, reStructuredText, Textile, Texy, txt2tag.





. , BBCode - HTML . . POD, .





, . . , .





: . . .





. . "". :





- item
* item
+ item

      
      



- . . 2 - , , . :





- first
- second
  - first of second
    - first of first of second
  - second of second 
- third

      
      



  • first





  • second





    • first of second





      • first of first of second





    • second of second





  • third





. - , . , :





1. item
2) item

      
      



, - :





# item

      
      



. , :





+ first
+ second
  + first of second
    + first of first of second
  + second of second 
+ third

      
      



  1. first





  2. second





    1. first of second





      1. first of first of second





    2. second of second





  3. third





, , - . - :





> quote
> - list in quote
> > inner quote

      
      



, . , :





" quote
" - list in quote
" " inner quote

      
      



- . :





|=  |= table |= header |
| a | table  | row     |
| b | table  | row     |

|   | table | header |
|---|-------|--------|
| a | table | row    |
| b | table | row    |

First Header | Second Header
------------ | -------------
Content from cell 1 | Content from cell 2
Content in the first column | Content in the second column

      
      



, - .





, - . , , .





, , - , , :





|   | table                                                                                                                          | header |
| a | There are many variations of passages of Lorem Ipsum available, but the majority have suffered alteration in some form, by injected humour, or randomised words which don't look even slightly believable.  | row     |
| b | table                                                                                                                          | row     |

      
      



, - . - , , , :





! 
  ! table
    ! header
! a
  ! There are many variations of passages of Lorem Ipsum available, but the majority have suffered alteration in some form, by injected humour, or randomised words which don't look even slightly believable.
    ! row
! b
  ! table 
    ! row

      
      



, . , . . . .





:





Level 1 Heading
===============

Level 2 Heading
---------------

Level 3 Heading
~~~~~~~~~~~~~~~

      
      



, , , , , - .





, :





# Level 1 Heading #
## Level 2 Heading ##
### Level 3 Heading ###

      
      



, , . :





## Level 2 Heading
== Level 2 Heading
** Level 2 Heading
!! Level 2 Heading
++ Level 2 Heading

      
      



. , , . - , . , :





= Level 1 Heading
== Level 2 Heading
=== Level 3 Heading

      
      



:





```markdown
preformatted 
        text
```

      
      



, , . . , , 2 4 :





    preformatted 
            text

      
      



, , . , , .





, . , - /.





:





  • 2 .





  • .





:





    preformatted
            text
  --deleted
  --   text
  ++inserted
  ++    text
  **highlighted
  **       text

      
      



? . . - . , , - . - , , .





- "". , , . -. :





  • 1 - , , .





  • 3 - , - .





  • 2 - , .





, , , . , : . - , , . , .





:





*strong*
**strong**
__strong__
'''strong'''
''strong''

      
      



, . "" - .





**strong**

      
      



strong





:





'emphasis'
''emphasis''
_emphasis_
/emphasis/
//emphasis//
*emphasis*
~emphasis~

      
      



. , , , .





//emphasis//

      
      



emphasis





, , . . , , . .





, :





_insertion_
__insertion__
+insertion+

      
      



:





~deletion~
~~deletion~~
-deletion-
--deletion--

      
      



, :





++insertion++
--deletion--

      
      



  • insertion





  • deletion





:





  • - . .





  • - . , , , - ( , , ).





:





"Text":http://example.com
http://example.com[Text]
<http: example.com|text="">
[Text|http://example.com]
[[Text|http://example.com]]
[[http://example.com|Text]]
[Text http://example.com]
[http://example.com Text]
[Text](http://example.com)
`Text <http: example.com="">`_

      
      



:





![title](http://example.com/image.png)
{{http://example.com/image.png|title}}
.. image:: /path/to/image.jpg

      
      



, . - HTML. - . .





, . - , , . : \



"



.





, - , . , \



, , .





""Embedded image\http://example.org/favicon.ico""
""Embedded video\https://youtube.com/video=1234""
""Embedded site\https://marked.hyoo.ru/""

      
      



, . :





""http://example.org/favicon.ico""
""http://example.org/favicon.ico\http://example.org/favicon.ico""

      
      



\



:





\\Clickable text\http://example.org/\\
Clickable url: \\http://example.org/\\

      
      



  • Clickable text





  • Clickable url: http://example.org/





. , - :





\\""Example\http://example.org/favicon.ico""\http://example.org/\\

      
      



. - :





+monospace text+
`monospace text`
``monospace text``
```monospace text```
|monospace text|
{{monospace text}}
{{{monospace text}}}
=code=
~verbatim~
@monospace text@
@@monospace text@@

      
      



+



=



, . - . , . ;;



. .





;;monospace text;;

      
      



monospace text







:





= MarkedText

   ** **.

--

== 

+ :
  - 
  - 
  - 
+  :
  -      
  -  
+ :
  -   
  -    

== C  

! ****
  ! ****
    ! ****
! MarkedText
  ! -   .
  ! -     .
  ! -  .
  ! -    .
  ! -     .
  ! -              .
    ! -       .
! MarkDown
  ! -    .
  ! -   .
    ! -    .
    ! -    .

== 

    const res = [ ... $hyoo_marked_line.parse( '**text**' ) ]
  --$mol_assert_equal( res[0].strong, '**text**' )
  ++$mol_assert_equal( res[0].marker, '**' )
  **$mol_assert_equal( res[0].content, 'text' )

== 

" " "  :   ,   ---- ++++   !
" " 
" "    ,    ..           C++  ,    D++  ..
" 
"     ()  

  ,     .

== 

- : \\https://marked.hyoo.ru/\\
- \\  MarkedText\https://github.com/nin-jin/HabHub/issues/39\\
- \\  TS\https://github.com/hyoo-ru/marked.hyoo.ru/\\
- \\  HTML  TS\https://github.com/hyoo-ru/marked.hyoo.ru/tree/master/to/html\\
- ""  $mol_regexp\https://github.com/hyoo-ru/mam_mol/workflows/mol_regexp/badge.svg""

      
      



  • : marked.hyoo.ru





  • TS





  • HTML TS





Feedback








All Articles