SmartyPants

《 初回公開:2022/03/26 , 最終更新:未 》

原文は

旧バージョンの記事は

【 目次 】

要約

SmartyPants拡張機能は、ASCIIダッシュ、引用符、省略記号を同等のHTMLエンティティに変換します。

ASCII symbol Replacements HTML Entities Substitution Keys
' ‘ ’ ‘ ’ 'left-single-quote', 'right-single-quote'
" “ ” “ ” 'left-double-quote', 'right-double-quote'
<< >> ≪ ≫ « » 'left-angle-quote', 'right-angle-quote'
... 'ellipsis'
-- ? 'ndash'
--- ? 'mdash'

構成オプション「substitutions」を使用すると、デフォルトの置換を上書きできます。
キーのdictマッピング(サブセット)を置換文字列に渡すだけです。

たとえば、次の構成を使用して、ドイツ語の正しい引用符を取得できます。

extension_configs = {
    'smarty': {
        'substitutions': {
            'left-single-quote': '&sbquo;', # sb is not a typo!
            'right-single-quote': '&lsquo;',
            'left-double-quote': '&bdquo;',
            'right-double-quote': '&ldquo;'
        }
    }
}

Note

この拡張機能は、Python SmartyPantsライブラリをマークダウンパーサーに統合することにより、再実装します。
これは追加機能を提供しませんが、いくつかの利点を提供します。
特に、サードパーティのライブラリが行うことが知られているように、(CodeHilite拡張機能を使用して)強調表示されたコードブロックで動作しようとはしません。

使い方

一般的な拡張機能の使用法については、拡張機能を参照してください。
拡張機能の名前としてsmartyを使用します。
拡張機能の構成については、ライブラリリファレンスを参照してください。

Option Default value Description
smart_dashes True whether to convert dashes
smart_quotes True whether to convert straight quotes
smart_angled_quotes False whether to convert angled quotes
smart_ellipses True whether to convert ellipses
substitutions {} overwrite default substitutions

ささいな例:

markdown.markdown(some_text, extensions=['smarty'])

参考文献

SmartyPants拡張機能は、JohnGruberによるオリジナルのSmartyPants実装に基づいています。
詳細については、そのドキュメントをお読みください。

ページのトップへ戻る