[前][次][番号順一覧][スレッド一覧]

hikidoc:140

From: KADO Masanori <kdmsnr@g...>
Date: Wed, 9 Sep 2009 21:48:50 +0900
Subject: [hikidoc:140] インラインの等幅記法が欲しいです

ML: hikidoc@m...
新メンバー: kdmsnr@g...

kdmsnrです。

reStructuredText で使われる ``inline literal`` の記法が欲しいです。
http://docutils.sourceforge.net/docs/user/rst/quickref.html#inline-markup
http://pythonjp.sourceforge.jp/dev/documenting/rest.html#inline-markup

ためしに <tt> にマッピングしてみましたが、どうでしょうか。

Index: test/test_hikidoc.rb
===================================================================
--- test/test_hikidoc.rb        (リビジョン 122)
+++ test/test_hikidoc.rb        (作業コピー)
@@ -361,6 +361,9 @@
    assert_convert("<dl>\n<dt>foo</dt>\n" +
                   "<dd><strong>bar</strong></dd>\n</dl>\n",
                   ":foo:'''bar'''")
+    assert_convert("<dl>\n<dt>foo</dt>\n" +
+                   "<dd><tt>bar</tt></dd>\n</dl>\n",
+                   ":foo:``bar``")
  end

  def test_definition_with_modifier_link
@@ -372,6 +375,10 @@
                   "<strong><a
href=\"http://hikiwiki.org/\">Hiki</a></strong>" +
                   "</dd>\n</dl>\n",
                   ":Website:'''[[Hiki|http://hikiwiki.org/]]'''")
+    assert_convert("<dl>\n<dt>Website</dt>\n<dd>" +
+                   "<tt><a href=\"http://hikiwiki.org/\">Hiki</a></tt>" +
+                   "</dd>\n</dl>\n",
+                   ":Website:``[[Hiki|http://hikiwiki.org/]]``")
  end

  def test_table
@@ -411,6 +418,10 @@
                   "'''foo''' and '''bar'''")
    assert_convert("<p><em>foo</em> and <em>bar</em></p>\n",
                   "''foo'' and ''bar''")
+    assert_convert("<p><tt>foo</tt></p>\n",
+                   "``foo``")
+    assert_convert("<p><tt>foo==bar</tt>baz==</p>\n",
+                   "``foo==bar``baz==")
  end

  def test_nested_modifier
@@ -425,6 +436,8 @@
                   "[['''Hiki'''|http://hikiwiki.org/]]")
    assert_convert("<p><strong><a
href=\"http://hikiwiki.org/\">Hiki</a></strong></p>\n",
                   "'''[[Hiki|http://hikiwiki.org/]]'''")
+    assert_convert("<p><tt><a
href=\"http://hikiwiki.org/\">Hiki</a></tt></p>\n",
+                   "``[[Hiki|http://hikiwiki.org/]]``")
  end

  def test_pre_and_plugin
@@ -439,6 +452,8 @@
  def test_plugin_in_modifier
    assert_convert("<p><strong><span
class=\"plugin\">{{foo}}</span></strong></p>\n",
                   "'''{{foo}}'''")
+    assert_convert("<p><tt><span class=\"plugin\">{{foo}}</span></tt></p>\n",
+                   "``{{foo}}``")
  end

  if Object.const_defined?(:Syntax)
Index: lib/hikidoc.rb
===================================================================
--- lib/hikidoc.rb      (リビジョン 122)
+++ lib/hikidoc.rb      (作業コピー)
@@ -485,17 +485,20 @@
  STRONG = "'''"
  EM = "''"
  DEL = "=="
+  TT = "``"

  STRONG_RE = /'''.+?'''/
  EM_RE     = /''.+?''/
  DEL_RE    = /==.+?==/
+  TT_RE    = /``.+?``/

-  MODIFIER_RE = Regexp.union(STRONG_RE, EM_RE, DEL_RE)
+  MODIFIER_RE = Regexp.union(STRONG_RE, EM_RE, DEL_RE, TT_RE)

  MODTAG = {
    STRONG => "strong",
    EM     => "em",
-    DEL    => "del"
+    DEL    => "del",
+    TT     => 'tt'
  }

  def compile_modifier(str)
@@ -525,6 +528,8 @@
      return str[0, 2], str[2...-2]
    when /\A==/
      return str[0, 2], str[2...-2]
+    when /\A``/
+      return str[0, 2], str[2...-2]
    else
      raise UnexpectedError, "must not happen: #{str.inspect}"
    end
@@ -722,6 +727,10 @@
      "<del>#{item}</del>"
    end

+    def tt(item)
+      "<tt>#{item}</tt>"
+    end
+
    def text(str)
      escape_html(str)
    end


--
kdmsnr - KADO, Masanori
http://capsctrl.que.jp/kdmsnr/

--
ML: hikidoc@m...
使い方: http://QuickML.com/

このMLを退会する方法:
- 本文が空のメールを <hikidoc@m...> に送ってください
- 本文が空のメールを送れない場合は、
  本文に「退会」とだけ書いたメールを <hikidoc@m...> に送ってください
  (署名やhotmailの広告などがついて空メールを送れない場合など)

<hikidoc@m...> のメンバー:
kazuhiko@f...
kazuhiko-w3ml@f...
zn@m...
kazisobe@g...
shintaro@k...
fmfumi@g...
ttakah@l...
yanagi@s...
okano.osamu@g...
kida@n...
don@n...
inouetom@n...
kou@c...
zophos@d...
vette@m...
ksk@b...
sakuro@e...
oneroad@m...
moonwolf@m...
hiraku@s...
ujihisa@g...
akr@f...
dan@r...
kimuraw@i...
arikui@m...
dara@s...
tmasao@a...
hs@o...
motoya.kurotsu.2009@g...
kdmsnr@g...

[前][次][番号順一覧][スレッド一覧]

->     140 2009-09-09 14:48 [kdmsnr@g...         ] インラインの等幅記法が欲しいです        
       141 2009-09-12 07:51 ┗[kimuraw@i...        ]                                       
       142 2009-09-12 08:39  ┗[kdmsnr@g...         ]                                     
       143 2009-09-14 16:44   ┗[kimuraw@i...        ]