extras Package

mention Module

kawaz.apps.kfm.extras.mention.parse_mentions(value)[ソース]

指定された文字列から @username という部分を探しリンク文字列に変換

nicovideo Module

kawaz.apps.kfm.extras.nicovideo.parse_nicovideo_urls(value)[ソース]

指定された文字列に含まれる ニコニコ動画 URL をプレイヤーに変換 ただしURLがシングル・ダブルクオーテーションマークで囲まれていた場合は 変換を行わない

変換にはテンプレートシステムが使用され kfm/parsers/nicovideo.html なおコンテキストとして下記の値がテンプレートに渡される

  • video_id: ニコニコ動画 ID

strikethrough Module

kawaz.apps.kfm.extras.strikethrough.parse_strikethroughs(value)[ソース]

~~で囲まれた部分を<del>展開する

utils Module

kawaz.apps.kfm.extras.utils.is_quoated(text, s, e, quotes=('"', "'", '`'))[ソース]

指定された文字列の特定部分がクオート文字で囲まれているか調べる

Ref: https://gist.github.com/lambdalisue/f2c9ab121883e48d3c2f

Examples

>>> #         0123456789012345678901234
>>> text = '''N'Y'N'Y'N"Y"N"Y'Y'Y"N"Y"N'''
>>> # N
>>> assert is_quoated(text, 0, 1) is False
>>> # N'
>>> assert is_quoated(text, 0, 2) is False
>>> # N'Y
>>> assert is_quoated(text, 0, 3) is False
>>> # N'Y'
>>> assert is_quoated(text, 0, 4) is False
>>> # '
>>> assert is_quoated(text, 1, 2) is False
>>> # 'Y
>>> assert is_quoated(text, 1, 3) is False
>>> # 'Y'
>>> assert is_quoated(text, 1, 4) is False
>>> # 'Y'N
>>> assert is_quoated(text, 1, 5) is False
>>> # Y
>>> assert is_quoated(text, 2, 3) is True
>>> # Y'
>>> assert is_quoated(text, 2, 4) is False
>>> # Y'N
>>> assert is_quoated(text, 2, 5) is False
>>> # Y'N'
>>> assert is_quoated(text, 2, 6) is True
>>> # Y'N'Y
>>> assert is_quoated(text, 2, 7) is True
>>> # Y'N'Y'
>>> assert is_quoated(text, 2, 8) is False

youtube Module

kawaz.apps.kfm.extras.youtube.parse_youtube_urls(value, responsive=False, width=None, height=None)[ソース]

指定された文字列に含まれる YouTube URL をプレイヤーに変換 ただしURLがシングル・ダブルクオーテーションマークで囲まれていた場合は 変換を行わない

変換にはテンプレートシステムが使用され kfm/parsers/youtube.html なおコンテキストとして下記の値がテンプレートに渡される

  • video_id: YouTube Video ID
  • responsive: レスポンシブデザインで描画すべきか否か
  • width: 横幅(responsiveには渡されない)
  • height: 縦幅(responsiveには渡されない)
パラメータ:
  • responsive (bool) – bootstrapのレスポンシブデザインに対応させる http://getbootstrap.com/components/#responsive-embed これが指定された場合下記 width/height の指定は無視される
  • width (int or None) – 横幅 (px) 指定されない場合は DEFAULT_WIDTH が使用される
  • height (int or None) – 縦幅 (px) 指定されない場合は width に対して アスペクト比が 16:9 に成るように自動指定される