changeset 843:a0dcf6477310

Add markdown conversion of <ol>
author HIROSE Yuuji <yuuji@gentei.org>
date Fri, 26 Jun 2020 09:25:42 +0900
parents de2ef47143a0
children ab4f89043f23
files examples/common/default/default.css s4-blog.sh s4-funcs.sh
diffstat 3 files changed, 36 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/examples/common/default/default.css	Fri Jun 26 08:42:42 2020 +0900
+++ b/examples/common/default/default.css	Fri Jun 26 09:25:42 2020 +0900
@@ -108,9 +108,11 @@
     white-space: pre-wrap;
 }
 table.bloghead tr.preface td ul,
+table.bloghead tr.preface td ol,
 table.blog_replies video,
 table.blog_replies iframe,
-table.blog_replies ul, .blog_replies tr ul, .blog_replies td ul {
+table.blog_replies ul, .blog_replies tr ul, .blog_replies td ul,
+table.blog_replies ol, .blog_replies tr ol, .blog_replies td ol {
     text-align: left; white-space: normal; margin: 1ex 0;
 }
 table.blog_replies p.proficon {
--- a/s4-blog.sh	Fri Jun 26 08:42:42 2020 +0900
+++ b/s4-blog.sh	Fri Jun 26 09:25:42 2020 +0900
@@ -548,9 +548,11 @@
 	$cachefile
   done
   
-  help="=== コメントに使用できる特殊記法 ===
+  help="=== コメントに使用できる特殊記法(記号は全て半角) ===
 行頭に href=URL でURLへのリンク
 行頭に iframe=URL でURL先を開く iframe
+行頭「* 」で箇条書、次の行頭空白で継続、行頭詰めると箇条書終わり
+行頭「1. 」で番号付、2行目以降も「1. 」で勝手に番号増える、行頭詰めで終わり
 [[#記事番号]] でs4内の記事番号に飛ぶリンク
 [[#検索キーワード]] でs4内の記事検索(記号はいくつか使えない)
 [[URL]] でURLへのリンク、        [[URL|文字列]]でアンカー文字列指定
--- a/s4-funcs.sh	Fri Jun 26 08:42:42 2020 +0900
+++ b/s4-funcs.sh	Fri Jun 26 09:25:42 2020 +0900
@@ -696,6 +696,36 @@
 	  s/^\n/<li>/; s,$,</li></ul>,;	# 箇条書を書き切って終わり
 	  H; x
 	}
+	x' | miniol
+}
+miniol() {
+  sed -Ee '
+	/^[1-9]\. / {;			# 行頭 "N. "
+	 x; s,^,<ol>,; x;		# 1週目: ホールドスペース先頭に <ol> を
+	:top
+	 s/\n//;
+	 s/^  *//;			# 2周目以降: 行頭空白削除
+	 s,[1-9][0-9]*\. ,,;			# まず行頭の "* " を消しておく
+	 H;				# 置き換え結果をホールドスペースに追加
+	 s/.*//;			# パターンスペースは消しておく
+	 # ↓最終行なら残ったホールドスペース処理のため :cont へ
+	 $ b cont
+	 N;				# 次の行を読む
+	 s/\n//;			# 空白始まりは継続行
+	 /^ /b top
+	 x; s/\n/<li>/; s,$,</li>,;	# 継続行でなければ <li></li> で囲む
+	 p; s/.*//;
+	 x;				# 次も "* " ならループを抜けない
+	 /^[1-9][0-9]*\. /b top
+	 s,^,</ol>,;			# 次が一般行なら箇条書終わり
+	}
+
+	:cont
+	x;				# 行頭| 以外の行:
+	/./ {;				# ホールドスペースに文字列があれば
+	  s/^\n/<li>/; s,$,</li></ol>,;	# 箇条書を書き切って終わり
+	  H; x
+	}
 	x'
 }
 acclog() (

yatex.org