#734 closed enhancement (fixed)

マークダウン記法でのインポート・エクスポート対応

Reported by: yasunaka Owned by:
Priority: major Milestone: ver 2.1.10
Component: crossnote Version: ver 2.1.10
Keywords: #9014 #9027 Cc:

Description (last modified by yasunaka)

マークダウン形式のファイルをcrossnoteドキュメントへの変換インポート、およびcrossnoteドキュメントのマークダウン形式のファイルへのエクスポートへの対応を行います。またDocFlow内でもマークダウン形式のドキュメントを入力として使えるようにします。

なおマークダウン形式とcrossnote形式では扱えるデータが異なるため、循環させた場合には元に戻すことはできない。

  • エクスポート時のテーマとして以下のようなテーマを用意
    • GFM(GitHub Flavored Markdown) ... 背景色を<mark>として出力する
    • GFM(背景色にCode spanを使う) ... 背景色をCode spanとして出力する
    • CommonMark
  • crossnoteの見出しはマークダウンのHeadingとして扱う
    • 副見出し(箇条書き)は親の見出しの階層+1レベルのHeadingとして扱う
    • 6レベル以上のHeadingはすべて6レベルとして扱う
  • 本文はマークダウンのParagraphとして扱う
    • 太字、イタリック、下線、上付き文字、下付き文字
    • 取り消し線はGFMの時のみ対応
    • フォントの色、フォントサイズは<span>タグのstyle設定でcolor, fontSizeを指定する
    • フォントの背景色は<mark>タグとして扱う
    • フォントの種類、ルビは非対応
    • 脚注はGFMの場合のみ対応
    • Fenced Code BlockおよびBlocked Quoteは枠付きの本文とし、Fenced Code Blockのコメントは部品名となる
      • エクスポート時、枠付き本文のうちプレーンなテキストのみが含まれている場合にはFenced Code Blockとなり、箇条書きや文字修飾が含まれている場合にはBlocked Quoteとして出力する
    • リンク
      • マークダウンのhttp / httpsのリンクは外部リンクとして扱う
        • マークダウンのhttp / httpsのリンクのタイトルがイメージの場合、crossnoteではイメージにリンクを設定することができないため、横にリンクのタイトル(または...)を表示し、それをリンクとする
      • マークダウンのファイルリンクは扱うことができないため、URLとしてhttp://@が設定される
      • crossnoteのリンクは同じフォルダ上に存在している前提で.mdファイルへのパスとして扱う
    • 箇条書きはOrdered List Item / Bullet List Itemへそのまま対応する
      • 箇条書き内のFenced Code BlockおよびBlocked Quoteは背景色をセットしたテキストとして扱う
  • 辞書枠は<dl>タグで対応させる
  • 表枠はGFMの時のみ対応
    • セルの結合や背景色などには対応しない
    • ヘッダー行は常に1行のみ
    • 表のタイトルはParagraphとして独立して表示させる
  • 図形枠、式枠はイメージに変換し、imagesフォルダにpng形式で保存する
    • 図のタイトルは図のリンクの直前に隣接して表示する
  • 改ページは区切り線として扱う
  • 部品枠、用紙設定、段組みはマークダウンには反映されない
  • インポート時、<dl>タグおよび文字修飾で使われるタグ以外のHTMLデータは対応しない

Change History (2)

comment:1 by yasunaka, on Sep 27, 2024 at 3:52:39 PM

Description: modified (diff)

comment:2 by yasunaka, on Sep 30, 2024 at 12:52:09 PM

Resolution: fixed
Status: newclosed

Released on 2024-09-30 as ver 2.1.10.20240930

Note: See TracTickets for help on using tickets.