mathpix-markdown-it 2.0.28 → 2.0.30

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (136) hide show
  1. package/README.md +14 -0
  2. package/doc/images/latex-lstlisting-env/latex-lstlisting-env-01.png +0 -0
  3. package/doc/images/latex-lstlisting-env/latex-lstlisting-env-02.png +0 -0
  4. package/doc/images/latex-lstlisting-env/latex-lstlisting-env-03.png +0 -0
  5. package/doc/images/latex-lstlisting-env/latex-lstlisting-env-04.png +0 -0
  6. package/doc/latex-lstlisting-env.md +75 -0
  7. package/es5/bundle.js +4 -4
  8. package/es5/index.js +4 -4
  9. package/lib/copy-to-clipboard/clipboard-copy-styles.js +1 -1
  10. package/lib/copy-to-clipboard/clipboard-copy-styles.js.map +1 -1
  11. package/lib/index.d.ts +2 -2
  12. package/lib/index.js +2 -1
  13. package/lib/index.js.map +1 -1
  14. package/lib/markdown/common/consts.d.ts +46 -0
  15. package/lib/markdown/common/consts.js +71 -2
  16. package/lib/markdown/common/consts.js.map +1 -1
  17. package/lib/markdown/common/csv.js +8 -3
  18. package/lib/markdown/common/csv.js.map +1 -1
  19. package/lib/markdown/common/mmdRules.js +10 -0
  20. package/lib/markdown/common/mmdRules.js.map +1 -1
  21. package/lib/markdown/common/parse-attribures.d.ts +12 -0
  22. package/lib/markdown/common/parse-attribures.js +45 -0
  23. package/lib/markdown/common/parse-attribures.js.map +1 -0
  24. package/lib/markdown/common/render-table-cell-content.js +18 -0
  25. package/lib/markdown/common/render-table-cell-content.js.map +1 -1
  26. package/lib/markdown/common/tsv.js +4 -1
  27. package/lib/markdown/common/tsv.js.map +1 -1
  28. package/lib/markdown/common.d.ts +1 -0
  29. package/lib/markdown/common.js +3 -1
  30. package/lib/markdown/common.js.map +1 -1
  31. package/lib/markdown/mathpix-markdown-plugins.js +1 -0
  32. package/lib/markdown/mathpix-markdown-plugins.js.map +1 -1
  33. package/lib/markdown/md-block-rule/begin-tabular/index.js +18 -4
  34. package/lib/markdown/md-block-rule/begin-tabular/index.js.map +1 -1
  35. package/lib/markdown/md-block-rule/begin-tabular/multi-column-row.js +3 -1
  36. package/lib/markdown/md-block-rule/begin-tabular/multi-column-row.js.map +1 -1
  37. package/lib/markdown/md-block-rule/begin-tabular/sub-code.d.ts +41 -1
  38. package/lib/markdown/md-block-rule/begin-tabular/sub-code.js +139 -40
  39. package/lib/markdown/md-block-rule/begin-tabular/sub-code.js.map +1 -1
  40. package/lib/markdown/md-block-rule/begin-tabular/sub-math.js +10 -2
  41. package/lib/markdown/md-block-rule/begin-tabular/sub-math.js.map +1 -1
  42. package/lib/markdown/md-block-rule/begin-tabular/sub-tabular.js +2 -0
  43. package/lib/markdown/md-block-rule/begin-tabular/sub-tabular.js.map +1 -1
  44. package/lib/markdown/md-block-rule/begin-tabular/tabular-td.js +2 -0
  45. package/lib/markdown/md-block-rule/begin-tabular/tabular-td.js.map +1 -1
  46. package/lib/markdown/md-block-rule/helper.d.ts +16 -1
  47. package/lib/markdown/md-block-rule/helper.js +93 -11
  48. package/lib/markdown/md-block-rule/helper.js.map +1 -1
  49. package/lib/markdown/md-block-rule/renewcommand.js +1 -1
  50. package/lib/markdown/md-block-rule/renewcommand.js.map +1 -1
  51. package/lib/markdown/md-inline-rule/diagbox-inline.js +4 -15
  52. package/lib/markdown/md-inline-rule/diagbox-inline.js.map +1 -1
  53. package/lib/markdown/md-inline-rule/setcounter-section.js +1 -2
  54. package/lib/markdown/md-inline-rule/setcounter-section.js.map +1 -1
  55. package/lib/markdown/md-latex-lists-env/index.d.ts +16 -0
  56. package/lib/markdown/md-latex-lists-env/index.js +55 -0
  57. package/lib/markdown/md-latex-lists-env/index.js.map +1 -0
  58. package/lib/markdown/md-latex-lists-env/latex-list-common.d.ts +31 -0
  59. package/lib/markdown/md-latex-lists-env/latex-list-common.js +78 -0
  60. package/lib/markdown/md-latex-lists-env/latex-list-common.js.map +1 -0
  61. package/lib/markdown/md-latex-lists-env/latex-list-env-block.d.ts +13 -0
  62. package/lib/markdown/md-latex-lists-env/latex-list-env-block.js +295 -0
  63. package/lib/markdown/md-latex-lists-env/latex-list-env-block.js.map +1 -0
  64. package/lib/markdown/md-latex-lists-env/latex-list-env-inline.d.ts +59 -0
  65. package/lib/markdown/md-latex-lists-env/latex-list-env-inline.js +219 -0
  66. package/lib/markdown/md-latex-lists-env/latex-list-env-inline.js.map +1 -0
  67. package/lib/markdown/md-latex-lists-env/latex-list-items.d.ts +75 -0
  68. package/lib/markdown/md-latex-lists-env/latex-list-items.js +235 -0
  69. package/lib/markdown/md-latex-lists-env/latex-list-items.js.map +1 -0
  70. package/lib/markdown/md-latex-lists-env/latex-list-tokens.d.ts +74 -0
  71. package/lib/markdown/md-latex-lists-env/latex-list-tokens.js +290 -0
  72. package/lib/markdown/md-latex-lists-env/latex-list-tokens.js.map +1 -0
  73. package/lib/markdown/md-latex-lists-env/latex-list-types.d.ts +52 -0
  74. package/lib/markdown/md-latex-lists-env/latex-list-types.js +13 -0
  75. package/lib/markdown/md-latex-lists-env/latex-list-types.js.map +1 -0
  76. package/lib/markdown/md-latex-lists-env/list-state.d.ts +48 -0
  77. package/lib/markdown/md-latex-lists-env/list-state.js +86 -0
  78. package/lib/markdown/md-latex-lists-env/list-state.js.map +1 -0
  79. package/lib/markdown/md-latex-lists-env/re-level.d.ts +62 -0
  80. package/lib/markdown/md-latex-lists-env/re-level.js +172 -0
  81. package/lib/markdown/md-latex-lists-env/re-level.js.map +1 -0
  82. package/lib/markdown/md-latex-lists-env/render-latex-list-env.d.ts +55 -0
  83. package/lib/markdown/md-latex-lists-env/render-latex-list-env.js +556 -0
  84. package/lib/markdown/md-latex-lists-env/render-latex-list-env.js.map +1 -0
  85. package/lib/markdown/md-latex-lstlisting-env/index.d.ts +9 -0
  86. package/lib/markdown/md-latex-lstlisting-env/index.js +23 -0
  87. package/lib/markdown/md-latex-lstlisting-env/index.js.map +1 -0
  88. package/lib/markdown/md-latex-lstlisting-env/latex-lstlisting-env-block.d.ts +6 -0
  89. package/lib/markdown/md-latex-lstlisting-env/latex-lstlisting-env-block.js +71 -0
  90. package/lib/markdown/md-latex-lstlisting-env/latex-lstlisting-env-block.js.map +1 -0
  91. package/lib/markdown/md-latex-lstlisting-env/latex-lstlisting-env-inline.d.ts +7 -0
  92. package/lib/markdown/md-latex-lstlisting-env/latex-lstlisting-env-inline.js +76 -0
  93. package/lib/markdown/md-latex-lstlisting-env/latex-lstlisting-env-inline.js.map +1 -0
  94. package/lib/markdown/md-latex-lstlisting-env/lstlisting-options.d.ts +21 -0
  95. package/lib/markdown/md-latex-lstlisting-env/lstlisting-options.js +96 -0
  96. package/lib/markdown/md-latex-lstlisting-env/lstlisting-options.js.map +1 -0
  97. package/lib/markdown/md-latex-lstlisting-env/parse-math-escape-inline.d.ts +21 -0
  98. package/lib/markdown/md-latex-lstlisting-env/parse-math-escape-inline.js +55 -0
  99. package/lib/markdown/md-latex-lstlisting-env/parse-math-escape-inline.js.map +1 -0
  100. package/lib/markdown/md-latex-lstlisting-env/render-latex-lstlisting-env.d.ts +16 -0
  101. package/lib/markdown/md-latex-lstlisting-env/render-latex-lstlisting-env.js +165 -0
  102. package/lib/markdown/md-latex-lstlisting-env/render-latex-lstlisting-env.js.map +1 -0
  103. package/lib/markdown/md-theorem/block-rule.js +11 -1
  104. package/lib/markdown/md-theorem/block-rule.js.map +1 -1
  105. package/lib/markdown/md-theorem/inline-rule.js +1 -2
  106. package/lib/markdown/md-theorem/inline-rule.js.map +1 -1
  107. package/lib/markdown/mdHighlightCodePlugin.js +85 -5
  108. package/lib/markdown/mdHighlightCodePlugin.js.map +1 -1
  109. package/lib/markdown/mdPluginConfigured.d.ts +4 -1
  110. package/lib/markdown/mdPluginConfigured.js +5 -3
  111. package/lib/markdown/mdPluginConfigured.js.map +1 -1
  112. package/lib/markdown/mdPluginRaw.d.ts +3 -0
  113. package/lib/markdown/mdPluginRaw.js +6 -4
  114. package/lib/markdown/mdPluginRaw.js.map +1 -1
  115. package/lib/markdown/mdPluginTableTabular.js +2 -0
  116. package/lib/markdown/mdPluginTableTabular.js.map +1 -1
  117. package/lib/markdown/mdPluginText.js +2 -0
  118. package/lib/markdown/mdPluginText.js.map +1 -1
  119. package/lib/styles/styles-lists.d.ts +1 -1
  120. package/lib/styles/styles-lists.js +1 -1
  121. package/lib/styles/styles-lists.js.map +1 -1
  122. package/package.json +2 -2
  123. package/lib/markdown/md-block-rule/lists/index.d.ts +0 -9
  124. package/lib/markdown/md-block-rule/lists/index.js +0 -515
  125. package/lib/markdown/md-block-rule/lists/index.js.map +0 -1
  126. package/lib/markdown/md-block-rule/lists/re-level.d.ts +0 -30
  127. package/lib/markdown/md-block-rule/lists/re-level.js +0 -162
  128. package/lib/markdown/md-block-rule/lists/re-level.js.map +0 -1
  129. package/lib/markdown/md-inline-rule/lists.d.ts +0 -5
  130. package/lib/markdown/md-inline-rule/lists.js +0 -174
  131. package/lib/markdown/md-inline-rule/lists.js.map +0 -1
  132. package/lib/markdown/md-renderer-rules/render-lists.d.ts +0 -7
  133. package/lib/markdown/md-renderer-rules/render-lists.js +0 -339
  134. package/lib/markdown/md-renderer-rules/render-lists.js.map +0 -1
  135. package/lib/markdown/mdPluginLists.js +0 -60
  136. package/lib/markdown/mdPluginLists.js.map +0 -1
package/README.md CHANGED
@@ -124,6 +124,20 @@ Struck with Hatching text: \xout{Text with hatching pattern!}
124
124
 
125
125
  ![](doc/images/latex-underline/latex-underline_07.png)
126
126
 
127
+ - [Latex lstlisting env](doc/latex-lstlisting-env.md)
128
+
129
+ ```tex
130
+ \begin{lstlisting}[language=C, mathescape]
131
+ /* the following code computes $\displaystyle\sum_{i=1}^{n}i$ */
132
+
133
+ for (i = 1; i <= limit; i++) {
134
+ sum += i;
135
+ }
136
+ \end{lstlisting}
137
+ ```
138
+
139
+ ![](doc/images/latex-lstlisting-env/latex-lstlisting-env-01.png)
140
+
127
141
  # What is mathpix-markdown-it?
128
142
 
129
143
  **mathpix-markdown-it** is an open source implementation of the mathpix-markdown spec written in Typescript.
@@ -0,0 +1,75 @@
1
+ # LaTeX `lstlisting`
2
+
3
+ Mathpix Markdown now supports LaTeX-style code blocks using
4
+ `\begin{lstlisting}...\end{lstlisting}` — similar to the **LaTeX `listings`** package.
5
+ These blocks allow you to include formatted and syntax-highlighted source code inside Markdown documents.
6
+
7
+ ## Basic Syntax
8
+
9
+ ```tex
10
+ \begin{lstlisting}
11
+ printf("Hello, world!\n");
12
+ \end{lstlisting}
13
+ ```
14
+
15
+ When rendered, this produces a formatted code block, just like a fenced code block in Markdown (```).
16
+
17
+ ## Supported Attributes
18
+
19
+ You can add optional attributes inside square brackets:
20
+
21
+ | Attribute | Example | Description |
22
+ |:-------------|:--------------------------------------|:---------------------------------------------------------------------------------------------------------------------------------------|
23
+ | `language` | `\begin{lstlisting}[language=C]` | Programming language for syntax highlighting. All highlight.js languages are supported (e.g., C, Python, JavaScript, Rust, TeX, bash). |
24
+ | `mathescape` | `\begin{lstlisting}[mathescape=true]` | Allows inline LaTeX math (`$...$` or `\( ... \)`) inside the code block. |
25
+
26
+ ## Examples
27
+
28
+ ### Example 1: Basic C Code
29
+
30
+ ```tex
31
+ \begin{lstlisting}[language=C]
32
+ #include <stdio.h>
33
+ int main(void) {
34
+ printf("Hello, world!\n");
35
+ return 0;
36
+ }
37
+ \end{lstlisting}
38
+ ```
39
+
40
+ ![](images/latex-lstlisting-env/latex-lstlisting-env-02.png)
41
+
42
+ ### Example 2: Inline Math with `mathescape`
43
+
44
+ ```tex
45
+ \begin{lstlisting}[language=C, mathescape]
46
+ /* Compute $\displaystyle\sum_{i=1}^{n} i$ */
47
+ for (i = 1; i <= n; i++) {
48
+ sum += i;
49
+ }
50
+ \end{lstlisting}
51
+ ```
52
+
53
+ ![](images/latex-lstlisting-env/latex-lstlisting-env-03.png)
54
+
55
+ ### Example 3: Inside a Table
56
+
57
+ ```tex
58
+ \begin{tabular}{|l|l|}
59
+ \hline
60
+ Language & Code snippet \\
61
+ \hline
62
+ C &
63
+ \begin{lstlisting}[language=C]
64
+ #include <stdio.h>
65
+ int main(void) {
66
+ printf("Hello, world!\n");
67
+ return 0;
68
+ }
69
+ \end{lstlisting}
70
+ \\
71
+ \hline
72
+ \end{tabular}
73
+ ```
74
+
75
+ ![](images/latex-lstlisting-env/latex-lstlisting-env-04.png)