Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
vfm-dev-stat
Search
akabeko
April 10, 2021
Technology
0
710
vfm-dev-stat
2021/4/10 時点の VFM 開発状況について解説します。
akabeko
April 10, 2021
Tweet
Share
More Decks by akabeko
See All by akabeko
redmine-tokyo-14
akabekobeko
0
190
vivliostyle-2021-autumn
akabekobeko
0
700
redmine-tokyo-20
akabekobeko
0
1.3k
Paged.js について 〜Yet another CSS paged media polyfill〜
akabekobeko
0
2k
vivliostyle-2020-spring
akabekobeko
0
1.1k
あなたも作れる!Redmine テーマ/redmine-theme-can-you-make
akabekobeko
2
3.6k
Other Decks in Technology
See All in Technology
10年もののアプリケーションを運用・開発するアプリケーションエンジニアのDatadog活用術
miyamu
0
130
名単体テスト 禁断の傀儡(モック)
iwamot
PRO
1
330
分解し、導き、託す ログラスにおける“技術でリードする” 実践の記録
hryushm
1
610
Next.jsと状態管理のプラクティス
uhyo
6
2.4k
PythonツールであるpygnmiをSONiCのgNMIに対して使ってみた
sonic
0
310
MCP でモノが動くとおもしろい/It is interesting when things move with MCP
bitkey
3
640
技術選定の仕方 - FLEXYウェビナー / How to select technology
shinden
1
110
SRE/インフラエンジニアの市場価値とキャリアパス/Market value and career path for SRE-infrastructure engineers
takumakume
1
210
WindowsでGenesisに挑戦した話
natsutan
0
120
KubeCon + CloudNativeCon Europe 2025 Recap: The GPUs on the Bus Go 'Round and 'Round / Kubernetes Meetup Tokyo #70
pfn
PRO
0
160
テスト設計、逆から読むとおもしろい──仕様にない“望ましさ”の逆設計
mhlyc
0
200
"発信文化"をどうやって計測する?技術広報のKPI探索記/How do we measure communication culture?
bitkey
4
360
Featured
See All Featured
Writing Fast Ruby
sferik
628
61k
Bash Introduction
62gerente
613
210k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
430
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.5k
Art, The Web, and Tiny UX
lynnandtonic
298
21k
Java REST API Framework Comparison - PWX 2021
mraible
31
8.6k
Designing for Performance
lara
608
69k
Thoughts on Productivity
jonyablonski
69
4.6k
Speed Design
sergeychernyshev
29
950
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
24
2.8k
Intergalactic Javascript Robots from Outer Space
tanoku
271
27k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.3k
Transcript
VFM の開発状況 @akabekobeko CSS 組版 Vivliostyle ユーザーと開発者の集い 2021 春
VFM 担当就任 Vivliostyle 開発者会議 2020/12 で VFM 担当になりました! 議事録 https://github.com/vivliostyle/community/blob/master/slack-
logs/meeting-log/2020/2020-12-05.md ❝15:48 (JST) - akabeko: VFM 担当します 開発再開メモ https://github.com/vivliostyle/vfm/issues/42 VFM の開発状況 2
remark 13 担当就任にあたり、 簡単そうな Issue へ対応してみようとしました。 テーブルでルビを指定するとパイプ⽂字がセルの区切りにパース される https://github.com/vivliostyle/vfm/issues/44 そして
Issue コメントに最新の remark で修正されたとあったので npm を更新してみたところ... 最新の remark 13 で互換性に関する変更あり 複数の remark プラグインが未対応で動かない という問題があることを知りました。 VFM の開発状況 3
remark 13 の互換に関わる変更 Markdown 処理エンジンを micromark へ刷新したとのこと。 Release 13.0.0 (micromark)
https://github.com/remarkjs/remark/releases/tag/13.0.0 おなじみの tokenizer などは廃⽌されました。 remark 13 へ移⾏ するためには micromark プラグインを実装して、 その wrapper になる (推奨) remark の tokenizer などには頼らず独⾃処理 といった対応が必要となります。 VFM の開発状況 4
VFM としてどうする? remark プロジェクトからプラグイン作者へ remark 13 移⾏が呼び かけられています。 remark/plugins.md https://github.com/remarkjs/remark/blob/main/doc/plugins.md
いくつか移⾏済みプラグインのコードを読んでみました。 しかし micromark 対応が厳しいためか remark 公式以外は独⾃処理が ⼤半のようです。 では VFM としてどうするか?検討した結果... VFM は独⾃処理でゆく予定です! VFM の開発状況 5
独⾃って? 前提知識は以下の記事を参考にしてください。 Remark で広げる Markdown の世界 https://vivliostyle.github.io/vivliostyle_doc/ja/vivliostyle- user-group-vol2/spring-raining/index.html remark も
Unified エコシステムの⼀部です。 そのため remark の 機能を利⽤せずとも Markdown から MDAST に基づくデータを ⽣成できればよいのです。 remark 13 対応プラグインは今後も利⽤しますが VFM 部分は remark 依存を避けて Unified/MDAST へ準拠します。 VFM の開発状況 6
実験例 remark 13 前後で VFM の <ruby> 処理を実装してみた例。 akabekobeko/examples-remark-plugin-old https://github.com/akabekobeko/examples-remark-plugin-
old akabekobeko/examples-remark-plugin-micromark https://github.com/akabekobeko/examples-remark-plugin- micromark 後者で micromark を試しましたが、 難物だったため独⾃処理 (素 の Unified プラグイン) としています。 VFM の開発状況 7
v1.0 と v2.0 VFM は未だ alpha で v1.0 をリリースしていません。 そのため開発
者会議で remark 13 対応も含めた⽅針を議論しました。 1. v1.0 で remark 13 も対応する 2. v1.0 は現⾏ remark にして 13 対応は v2.0 へ⾒送り 結果、 案 2 を採⽤することになりました。 v1.0 としては現⾏ remark の範囲、 かつ v2.0 に控えている remark 13 移⾏を妨げないものに限定して対応します。 VFM の開発状況 8
Milestone 開発を担当するにあたり GitHub Issues に Milestone を設定しま した。 close されたものも含め、
すべての Issue に v1.0.0 か v2.0.0 が設定されています。 v1.0.0 Milestone https://github.com/vivliostyle/vfm/milestone/2 v2.0.0 Milestone https://github.com/vivliostyle/vfm/milestone/1 詳細な現状はこれらを参考にしてください。 VFM の開発状況 9
v1.0 リリース できれば 2021/4、 遅くても 2021/5 にはリリースしたいと考えてい ます。 そのためにも... 調査と開発にご協⼒ください
VFM の GitHub Issues は⽇本語も OK です Working Draft https://vivliostyle.github.io/vfm/#/vfm につ いて意⾒をください v2.0 へ⾒送りとなる可能性もありますが、 寄せられた Issue には必 ず⽬を通して返信します。 みなさま、 どうかよろしくお願いします! ! ! VFM の開発状況 10
おわりに 開発者会議で VFM 存続の是⾮について議論もありました。 しかし 私は以下の理由から VFM 開発に意義があると考えます。 現代的な⽂書作成ツールとして Markdown
は重要 Vivliostyle として欲しい構⽂や機能を採⽤しやすい Vivliostyle 周辺ツール (npm 群) と親和性が⾼い 機能が⾜りなければ提案を。 開発の速度が遅いと感じたら⼿を上 げてください。 参加してみたいけどハードル⾼そう...という意⾒も⼤ 歓迎です。 ⼀緒に改善してゆきましょう! ! ! VFM の開発状況 11
ご清聴、 ありがとうございました! VFM の開発状況 12