diff --git a/browser/components/MarkdownEditor.js b/browser/components/MarkdownEditor.js
index 2a1016cb..3208ce76 100644
--- a/browser/components/MarkdownEditor.js
+++ b/browser/components/MarkdownEditor.js
@@ -283,6 +283,7 @@ class MarkdownEditor extends React.Component {
indentSize={editorIndentSize}
scrollPastEnd={config.preview.scrollPastEnd}
smartQuotes={config.preview.smartQuotes}
+ smartArrows={config.previw.smartArrows}
breaks={config.preview.breaks}
sanitize={config.preview.sanitize}
ref='preview'
diff --git a/browser/components/MarkdownPreview.js b/browser/components/MarkdownPreview.js
index 89f71a9b..df7e74a6 100755
--- a/browser/components/MarkdownPreview.js
+++ b/browser/components/MarkdownPreview.js
@@ -338,6 +338,7 @@ export default class MarkdownPreview extends React.Component {
if (prevProps.value !== this.props.value) this.rewriteIframe()
if (prevProps.smartQuotes !== this.props.smartQuotes ||
prevProps.sanitize !== this.props.sanitize ||
+ prevProps.smartArrows !== this.props.smartArrows ||
prevProps.breaks !== this.props.breaks) {
this.initMarkdown()
this.rewriteIframe()
@@ -595,5 +596,6 @@ MarkdownPreview.propTypes = {
showCopyNotification: PropTypes.bool,
storagePath: PropTypes.string,
smartQuotes: PropTypes.bool,
+ smartArrows: PropTypes.bool,
breaks: PropTypes.bool
}
diff --git a/browser/components/MarkdownSplitEditor.js b/browser/components/MarkdownSplitEditor.js
index 7016d0f4..5c35c22c 100644
--- a/browser/components/MarkdownSplitEditor.js
+++ b/browser/components/MarkdownSplitEditor.js
@@ -131,6 +131,7 @@ class MarkdownSplitEditor extends React.Component {
lineNumber={config.preview.lineNumber}
scrollPastEnd={config.preview.scrollPastEnd}
smartQuotes={config.preview.smartQuotes}
+ smartArrows={config.preview.smartArrows}
breaks={config.preview.breaks}
sanitize={config.preview.sanitize}
ref='preview'
diff --git a/browser/lib/markdown.js b/browser/lib/markdown.js
index 70f95024..4dafa4a3 100644
--- a/browser/lib/markdown.js
+++ b/browser/lib/markdown.js
@@ -2,6 +2,7 @@ import markdownit from 'markdown-it'
import sanitize from './markdown-it-sanitize-html'
import emoji from 'markdown-it-emoji'
import math from '@rokt33r/markdown-it-math'
+import smartArrows from 'markdown-it-smartarrows'
import _ from 'lodash'
import ConfigManager from 'browser/main/lib/ConfigManager'
import katex from 'katex'
@@ -214,6 +215,10 @@ class Markdown {
return true
})
+ if (config.preview.smartArrows) {
+ this.md.use(smartArrows)
+ }
+
// Add line number attribute for scrolling
const originalRender = this.md.renderer.render
this.md.renderer.render = (tokens, options, env) => {
diff --git a/browser/main/lib/ConfigManager.js b/browser/main/lib/ConfigManager.js
index 908b243e..0f070fc6 100644
--- a/browser/main/lib/ConfigManager.js
+++ b/browser/main/lib/ConfigManager.js
@@ -59,6 +59,7 @@ export const DEFAULT_CONFIG = {
scrollPastEnd: false,
smartQuotes: true,
breaks: true,
+ smartArrows: false,
allowCustomCSS: false,
customCSS: '',
sanitize: 'STRICT' // 'STRICT', 'ALLOW_STYLES', 'NONE'
diff --git a/browser/main/modals/PreferencesModal/UiTab.js b/browser/main/modals/PreferencesModal/UiTab.js
index e14f2279..ce149f65 100644
--- a/browser/main/modals/PreferencesModal/UiTab.js
+++ b/browser/main/modals/PreferencesModal/UiTab.js
@@ -100,6 +100,7 @@ class UiTab extends React.Component {
scrollPastEnd: this.refs.previewScrollPastEnd.checked,
smartQuotes: this.refs.previewSmartQuotes.checked,
breaks: this.refs.previewBreaks.checked,
+ smartArrows: this.refs.previewSmartArrows.checked,
sanitize: this.refs.previewSanitize.value,
allowCustomCSS: this.refs.previewAllowCustomCSS.checked,
customCSS: this.customCSSCM.getCodeMirror().getValue()
@@ -492,6 +493,16 @@ class UiTab extends React.Component {
{i18n.__('Render newlines in Markdown paragraphs as
')}
+
diff --git a/locales/da.json b/locales/da.json
index 314058cb..6a059cce 100644
--- a/locales/da.json
+++ b/locales/da.json
@@ -150,5 +150,6 @@
"Sanitization": "Sanitization",
"Only allow secure html tags (recommended)": "Only allow secure html tags (recommended)",
"Allow styles": "Allow styles",
- "Allow dangerous html tags": "Allow dangerous html tags"
+ "Allow dangerous html tags": "Allow dangerous html tags",
+ "Convert textual arrows to beautiful signs. ⚠ This will interfere with using HTML comments in your Markdown.": "Convert textual arrows to beautiful signs. ⚠ This will interfere with using HTML comments in your Markdown."
}
diff --git a/locales/de.json b/locales/de.json
index 7e7da1f3..69ef2aee 100644
--- a/locales/de.json
+++ b/locales/de.json
@@ -205,5 +205,6 @@
"Unnamed": "Unbenannt",
"Rename": "Umbenennen",
"Folder Name": "Ordnername",
- "No tags": "Keine Tags"
+ "No tags": "Keine Tags",
+ "Convert textual arrows to beautiful signs. ⚠ This will interfere with using HTML comments in your Markdown.": "Convert textual arrows to beautiful signs. ⚠ This will interfere with using HTML comments in your Markdown."
}
diff --git a/locales/en.json b/locales/en.json
index e40035ae..37ce250a 100644
--- a/locales/en.json
+++ b/locales/en.json
@@ -174,5 +174,6 @@
"Only allow secure html tags (recommended)": "Only allow secure html tags (recommended)",
"Render newlines in Markdown paragraphs as
": "Render newlines in Markdown paragraphs as
",
"Allow styles": "Allow styles",
- "Allow dangerous html tags": "Allow dangerous html tags"
+ "Allow dangerous html tags": "Allow dangerous html tags",
+ "Convert textual arrows to beautiful signs. ⚠ This will interfere with using HTML comments in your Markdown.": "Convert textual arrows to beautiful signs. ⚠ This will interfere with using HTML comments in your Markdown."
}
diff --git a/locales/es-ES.json b/locales/es-ES.json
index 0fa27713..f277b554 100644
--- a/locales/es-ES.json
+++ b/locales/es-ES.json
@@ -150,5 +150,6 @@
"Sanitization": "Saneamiento",
"Only allow secure html tags (recommended)": "Solo permitir etiquetas html seguras (recomendado)",
"Allow styles": "Permitir estilos",
- "Allow dangerous html tags": "Permitir etiquetas html peligrosas"
+ "Allow dangerous html tags": "Permitir etiquetas html peligrosas",
+ "Convert textual arrows to beautiful signs. ⚠ This will interfere with using HTML comments in your Markdown.": "Convert textual arrows to beautiful signs. ⚠ This will interfere with using HTML comments in your Markdown."
}
diff --git a/locales/fa.json b/locales/fa.json
index 125056a6..1037ea58 100644
--- a/locales/fa.json
+++ b/locales/fa.json
@@ -153,5 +153,6 @@
"Sanitization": "پاکسازی کردن",
"Only allow secure html tags (recommended)": "(فقط تگ های امن اچ تی ام ال مجاز اند.(پیشنهاد میشود",
"Allow styles": "حالت های مجاز",
- "Allow dangerous html tags": "تگ های خطرناک اچ تی ام ال مجاز اند"
+ "Allow dangerous html tags": "تگ های خطرناک اچ تی ام ال مجاز اند",
+ "Convert textual arrows to beautiful signs. ⚠ This will interfere with using HTML comments in your Markdown.": "Convert textual arrows to beautiful signs. ⚠ This will interfere with using HTML comments in your Markdown."
}
\ No newline at end of file
diff --git a/locales/fr.json b/locales/fr.json
index d285a29c..2a51256f 100644
--- a/locales/fr.json
+++ b/locales/fr.json
@@ -150,5 +150,6 @@
"Sanitization": "Sanitization",
"Only allow secure html tags (recommended)": "Only allow secure html tags (recommended)",
"Allow styles": "Allow styles",
- "Allow dangerous html tags": "Allow dangerous html tags"
+ "Allow dangerous html tags": "Allow dangerous html tags",
+ "Convert textual arrows to beautiful signs. ⚠ This will interfere with using HTML comments in your Markdown.": "Convert textual arrows to beautiful signs. ⚠ This will interfere with using HTML comments in your Markdown."
}
diff --git a/locales/hu.json b/locales/hu.json
index d02a6810..90ee64b6 100644
--- a/locales/hu.json
+++ b/locales/hu.json
@@ -174,5 +174,6 @@
"Only allow secure html tags (recommended)": "Csak a biztonságos html tag-ek engedélyezése (ajánlott)",
"Render newlines in Markdown paragraphs as
": "Az újsor karaktert
soremelésként jelenítse meg a Markdown jegyzetekben",
"Allow styles": "Stílusok engedélyezése",
- "Allow dangerous html tags": "Veszélyes html tag-ek engedélyezése"
+ "Allow dangerous html tags": "Veszélyes html tag-ek engedélyezése",
+ "Convert textual arrows to beautiful signs. ⚠ This will interfere with using HTML comments in your Markdown.": "Convert textual arrows to beautiful signs. ⚠ This will interfere with using HTML comments in your Markdown."
}
diff --git a/locales/it.json b/locales/it.json
index 10c97c94..13a6ded3 100644
--- a/locales/it.json
+++ b/locales/it.json
@@ -153,5 +153,6 @@
"Sanitization": "Bonifica",
"Only allow secure html tags (recommended)": "Consenti solo tag HTML sicuri (raccomandato)",
"Allow styles": "Consenti stili",
- "Allow dangerous html tags": "Consenti tag HTML pericolosi"
+ "Allow dangerous html tags": "Consenti tag HTML pericolosi",
+ "Convert textual arrows to beautiful signs. ⚠ This will interfere with using HTML comments in your Markdown.": "Convert textual arrows to beautiful signs. ⚠ This will interfere with using HTML comments in your Markdown."
}"
diff --git a/locales/ja.json b/locales/ja.json
index 987f11e5..5320a68f 100644
--- a/locales/ja.json
+++ b/locales/ja.json
@@ -150,5 +150,6 @@
"Sanitization": "サニタイズ",
"Only allow secure html tags (recommended)": "安全なHTMLタグのみ利用を許可する(推奨)",
"Allow styles": "スタイルを許可する",
- "Allow dangerous html tags": "安全でないHTMLタグの利用を許可する"
+ "Allow dangerous html tags": "安全でないHTMLタグの利用を許可する",
+ "Convert textual arrows to beautiful signs. ⚠ This will interfere with using HTML comments in your Markdown.": "Convert textual arrows to beautiful signs. ⚠ This will interfere with using HTML comments in your Markdown."
}
diff --git a/locales/ko.json b/locales/ko.json
index 3360f269..3121a581 100644
--- a/locales/ko.json
+++ b/locales/ko.json
@@ -156,5 +156,6 @@
"Sanitization": "허용 태그 범위",
"Only allow secure html tags (recommended)": "안전한 HTML 태그만 허용 (추천)",
"Allow styles": "style 태그, 속성까지 허용",
- "Allow dangerous html tags": "모든 위험한 태그 허용"
+ "Allow dangerous html tags": "모든 위험한 태그 허용",
+ "Convert textual arrows to beautiful signs. ⚠ This will interfere with using HTML comments in your Markdown.": "Convert textual arrows to beautiful signs. ⚠ This will interfere with using HTML comments in your Markdown."
}
diff --git a/locales/no.json b/locales/no.json
index 1ec74f0e..5ccd343e 100644
--- a/locales/no.json
+++ b/locales/no.json
@@ -149,5 +149,6 @@
"Sanitization": "Sanitization",
"Only allow secure html tags (recommended)": "Only allow secure html tags (recommended)",
"Allow styles": "Allow styles",
- "Allow dangerous html tags": "Allow dangerous html tags"
+ "Allow dangerous html tags": "Allow dangerous html tags",
+ "Convert textual arrows to beautiful signs. ⚠ This will interfere with using HTML comments in your Markdown.": "Convert textual arrows to beautiful signs. ⚠ This will interfere with using HTML comments in your Markdown."
}
diff --git a/locales/pl.json b/locales/pl.json
index 1ec74f0e..5ccd343e 100644
--- a/locales/pl.json
+++ b/locales/pl.json
@@ -149,5 +149,6 @@
"Sanitization": "Sanitization",
"Only allow secure html tags (recommended)": "Only allow secure html tags (recommended)",
"Allow styles": "Allow styles",
- "Allow dangerous html tags": "Allow dangerous html tags"
+ "Allow dangerous html tags": "Allow dangerous html tags",
+ "Convert textual arrows to beautiful signs. ⚠ This will interfere with using HTML comments in your Markdown.": "Convert textual arrows to beautiful signs. ⚠ This will interfere with using HTML comments in your Markdown."
}
diff --git a/locales/pt-BR.json b/locales/pt-BR.json
index 1f8361af..c6f1c994 100644
--- a/locales/pt-BR.json
+++ b/locales/pt-BR.json
@@ -149,5 +149,6 @@
"Sanitization": "Sanitização",
"Only allow secure html tags (recommended)": "Permitir apenas tags html seguras (recomendado)",
"Allow styles": "Permitir estilos",
- "Allow dangerous html tags": "Permitir tags html perigosas"
+ "Allow dangerous html tags": "Permitir tags html perigosas",
+ "Convert textual arrows to beautiful signs. ⚠ This will interfere with using HTML comments in your Markdown.": "Convert textual arrows to beautiful signs. ⚠ This will interfere with using HTML comments in your Markdown."
}
diff --git a/locales/pt-PT.json b/locales/pt-PT.json
index 1ec74f0e..5ccd343e 100644
--- a/locales/pt-PT.json
+++ b/locales/pt-PT.json
@@ -149,5 +149,6 @@
"Sanitization": "Sanitization",
"Only allow secure html tags (recommended)": "Only allow secure html tags (recommended)",
"Allow styles": "Allow styles",
- "Allow dangerous html tags": "Allow dangerous html tags"
+ "Allow dangerous html tags": "Allow dangerous html tags",
+ "Convert textual arrows to beautiful signs. ⚠ This will interfere with using HTML comments in your Markdown.": "Convert textual arrows to beautiful signs. ⚠ This will interfere with using HTML comments in your Markdown."
}
diff --git a/locales/ru.json b/locales/ru.json
index 0f3696d2..a81b5f12 100644
--- a/locales/ru.json
+++ b/locales/ru.json
@@ -146,5 +146,6 @@
"Russian": "Русский",
"Editor Rulers": "Editor Rulers",
"Enable": "Enable",
- "Disable": "Disable"
+ "Disable": "Disable",
+ "Convert textual arrows to beautiful signs. ⚠ This will interfere with using HTML comments in your Markdown.": "Convert textual arrows to beautiful signs. ⚠ This will interfere with using HTML comments in your Markdown."
}
diff --git a/locales/sq.json b/locales/sq.json
index 01a6fe0b..ae59157c 100644
--- a/locales/sq.json
+++ b/locales/sq.json
@@ -148,5 +148,6 @@
"Sanitization": "Sanitization",
"Only allow secure html tags (recommended)": "Only allow secure html tags (recommended)",
"Allow styles": "Allow styles",
- "Allow dangerous html tags": "Allow dangerous html tags"
+ "Allow dangerous html tags": "Allow dangerous html tags",
+ "Convert textual arrows to beautiful signs. ⚠ This will interfere with using HTML comments in your Markdown.": "Convert textual arrows to beautiful signs. ⚠ This will interfere with using HTML comments in your Markdown."
}
diff --git a/locales/zh-CN.json b/locales/zh-CN.json
index b736520d..badd3630 100755
--- a/locales/zh-CN.json
+++ b/locales/zh-CN.json
@@ -148,5 +148,6 @@
"Sanitization": "代码处理",
"Only allow secure html tags (recommended)": "只允许安全的html标签(推荐)",
"Allow styles": "允许样式",
- "Allow dangerous html tags": "允许危险的html标签"
+ "Allow dangerous html tags": "允许危险的html标签",
+ "Convert textual arrows to beautiful signs. ⚠ This will interfere with using HTML comments in your Markdown.": "Convert textual arrows to beautiful signs. ⚠ This will interfere with using HTML comments in your Markdown."
}
diff --git a/locales/zh-TW.json b/locales/zh-TW.json
index bc60cfcc..ed9b4c08 100755
--- a/locales/zh-TW.json
+++ b/locales/zh-TW.json
@@ -148,5 +148,6 @@
"Sanitization": "過濾 HTML 程式碼",
"Only allow secure html tags (recommended)": "只允許安全的 HTML 標籤 (建議)",
"Allow styles": "允許樣式",
- "Allow dangerous html tags": "允許危險的 HTML 標籤"
+ "Allow dangerous html tags": "允許危險的 HTML 標籤",
+ "Convert textual arrows to beautiful signs. ⚠ This will interfere with using HTML comments in your Markdown.": "Convert textual arrows to beautiful signs. ⚠ This will interfere with using HTML comments in your Markdown."
}
diff --git a/package.json b/package.json
index 4e203c27..0617900b 100644
--- a/package.json
+++ b/package.json
@@ -79,6 +79,7 @@
"markdown-it-multimd-table": "^2.0.1",
"markdown-it-named-headers": "^0.0.4",
"markdown-it-plantuml": "^0.3.0",
+ "markdown-it-smartarrows": "^1.0.1",
"md5": "^2.0.0",
"mdurl": "^1.0.1",
"moment": "^2.10.3",
diff --git a/yarn.lock b/yarn.lock
index f12893de..6659d9ac 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -5429,6 +5429,10 @@ markdown-it-plantuml@^0.3.0:
version "0.3.2"
resolved "https://registry.yarnpkg.com/markdown-it-plantuml/-/markdown-it-plantuml-0.3.2.tgz#f93a49bdfc8417b0df3c88700445f53487e57356"
+markdown-it-smartarrows@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/markdown-it-smartarrows/-/markdown-it-smartarrows-1.0.1.tgz#b570e9c0ff9812e0db6ace19afa5ba12b64bb9a7"
+
markdown-it@^5.0.3:
version "5.1.0"
resolved "https://registry.yarnpkg.com/markdown-it/-/markdown-it-5.1.0.tgz#25286b8465bac496f3f1b77eed544643e9bd718d"