回答編集履歴
3
修正
answer
CHANGED
@@ -63,7 +63,7 @@
|
|
63
63
|
|
64
64
|
-----
|
65
65
|
#追記
|
66
|
-
|
66
|
+
下記のようにbleachで消される対象となるタグ・属性を全部ホワイトリストに追加してください。
|
67
67
|
|
68
68
|
```
|
69
69
|
import markdown
|
2
修正
answer
CHANGED
@@ -35,7 +35,7 @@
|
|
35
35
|
* [x] bar
|
36
36
|
* [ ] baz
|
37
37
|
|
38
|
-
~~
|
38
|
+
~~Delete this line.~~
|
39
39
|
'''
|
40
40
|
|
41
41
|
html = markdown.markdown(source, extensions=['markdown_checklist.extension', 'markdown_strikethrough.extension'])
|
@@ -73,7 +73,7 @@
|
|
73
73
|
* [x] bar
|
74
74
|
* [ ] baz
|
75
75
|
|
76
|
-
~~
|
76
|
+
~~Delete this line.~~
|
77
77
|
'''
|
78
78
|
|
79
79
|
html = markdown.markdown(source, extensions=['markdown_checklist.extension', 'markdown_strikethrough.extension'])
|
1
Bleach対応について追記
answer
CHANGED
@@ -34,6 +34,7 @@
|
|
34
34
|
* [ ] foo
|
35
35
|
* [x] bar
|
36
36
|
* [ ] baz
|
37
|
+
|
37
38
|
~~elete this line.~~
|
38
39
|
'''
|
39
40
|
|
@@ -60,6 +61,26 @@
|
|
60
61
|
|
61
62
|
(質問者さんはソースの一部しか記載していないので試せていませんが。)
|
62
63
|
|
64
|
+
-----
|
65
|
+
#追記
|
66
|
+
後だしでBleachを導入しているとの情報なのですが、下記のようにbleachで消される対象となるタグ・属性を全部ホワイトリストに追加してください。
|
67
|
+
|
68
|
+
```
|
69
|
+
import markdown
|
70
|
+
import bleach
|
71
|
+
source = '''
|
72
|
+
* [ ] foo
|
73
|
+
* [x] bar
|
74
|
+
* [ ] baz
|
75
|
+
|
76
|
+
~~ttt~~
|
77
|
+
'''
|
78
|
+
|
79
|
+
html = markdown.markdown(source, extensions=['markdown_checklist.extension', 'markdown_strikethrough.extension'])
|
80
|
+
print(bleach.clean(html,
|
81
|
+
tags=['p','ul','li','input','del'],
|
82
|
+
attributes={'ul':'class','input':['checkbox','type','disabled','checked']}))
|
83
|
+
```
|
63
84
|
注1:邪教云々は面白く読んでもらうための冗談です。私個人として純粋実装以外のマークダウンをけなす意図は全くありません。
|
64
85
|
注2:Python-Markdownで打ち消し線を実装していない理由を作者自身が述べている部分:
|
65
86
|
https://github.com/Python-Markdown/markdown/issues/221
|