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
SATySFiを使用したMarkdownからLaTeXへのファイル変換について
Search
puripuri2100
November 21, 2020
Technology
0
1.6k
SATySFiを使用したMarkdownからLaTeXへのファイル変換について
Online.tex 2020で発表したスライドです
puripuri2100
November 21, 2020
Tweet
Share
More Decks by puripuri2100
See All by puripuri2100
法律文書の自動解析2024
puripuri2100
0
66
絵文字は構文解析できるのか
puripuri2100
0
96
係り受け解析を用いた法律文書中の略称規定の解析についての報告
puripuri2100
0
3.1k
気胸の胸部CTデータの可視化
puripuri2100
0
310
SATySFiで作成する構文解析器
puripuri2100
0
270
SATySFiの開発についての要望
puripuri2100
0
450
研究の場においてのRust 製ソフトウェアのバージョン管理について
puripuri2100
0
630
法律文書の自動解析
puripuri2100
1
940
汎用的なコードフォーマットライブラリの作成
puripuri2100
0
330
Other Decks in Technology
See All in Technology
トップマネジメントとコンピテンシーから考えるエンジニアリングマネジメント
zigorou
3
540
入門DBSC
ynojima
0
130
Security Diaries of an Open Source IAM
ahus1
0
200
「データとの対話」の現在地と未来
kobakou
0
1.3k
20260305_【白金鉱業】分析者が地理情報を武器にするための軽量なアドホック分析環境
yucho147
1
170
類似画像検索モデルの開発ノウハウ
lycorptech_jp
PRO
3
900
新職業『オーケストレーター』誕生 — エージェント10体を同時に回すAgentOps
gunta
4
1.4k
「使いにくい」も「運用疲れ」も卒業する UIデザイナーとエンジニアが創る持続可能な内製開発
nrinetcom
PRO
1
780
GitLab Duo Agent Platform + Local LLMサービングで幸せになりたい
jyoshise
0
110
AIに視覚を与えモバイルアプリケーション開発をより円滑に行う
lycorptech_jp
PRO
1
790
パネルディスカッション資料 (at Tableau Now! - 2026-02-26)
yoshitakaarakawa
0
1.1k
OSSで構築するIT基盤管理実践事例: NetBox・Snipe-IT・FreeRADIUS+PrivacyIDEA / Practical Case Studies of IT Infrastructure Management Using OSS
nttcom
0
200
Featured
See All Featured
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.9k
WCS-LA-2024
lcolladotor
0
470
Making Projects Easy
brettharned
120
6.6k
Reality Check: Gamification 10 Years Later
codingconduct
0
2k
So, you think you're a good person
axbom
PRO
2
1.9k
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
180
KATA
mclloyd
PRO
35
15k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
How Software Deployment tools have changed in the past 20 years
geshan
0
32k
Joys of Absence: A Defence of Solitary Play
codingconduct
1
300
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
280
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
63
53k
Transcript
SAT YSFIを使用した Markdown から L A TEX へのファイ ル変換について Online.tex
2020 金子尚樹 2020/11/21
自己紹介 所属 開成学園開成高等学校 学年 高校二年 普段やってること SAT YSFIのパッケージ作成 twitter @puripuri2100
e-mail
[email protected]
1
今日話すこと • SAT YSFIの簡単な紹介 • 今回、何をしたのか・動機 • 実装方法 • 使用について
• 今後について 2
SAT YSFIとは エラーがわかりやすく使いやすい組版言語(を目指している)新 しいマークアップ言語とその処理系 3
SAT YSFIとは エラーがわかりやすく使いやすい組版言語(を目指している)新 しいマークアップ言語とその処理系 • 欧文組版に必要なハイフネーション • 日本語組版にも対応 • フォントを簡単に変更可能
• 数式組版可能 • グラフィック処理がある程度できる • 表現力の高いプログラミング層 • エラーがわかりやすい(体感) 3
SAT YSFIとは エラーがわかりやすく使いやすい組版言語(を目指している)新 しいマークアップ言語とその処理系 • 欧文組版に必要なハイフネーション • 日本語組版にも対応 • フォントを簡単に変更可能
• 数式組版可能 • グラフィック処理がある程度できる • 表現力の高いプログラミング層 • エラーがわかりやすい(体感) • 専用の構文を書いた saty ファイルだけでなく、Markdown ファイルを処理することもできる 3
SAT YSFIとは エラーがわかりやすく使いやすい組版言語(を目指している)新 しいマークアップ言語とその処理系 • 欧文組版に必要なハイフネーション • 日本語組版にも対応 • フォントを簡単に変更可能
• 数式組版可能 • グラフィック処理がある程度できる • 表現力の高いプログラミング層 • エラーがわかりやすい(体感) • 専用の構文を書いた saty ファイルだけでなく、Markdown ファイルを処理することもできる • PDF だけではなくテキストファイルを出力することもできる 3
今回したこと Markdwon ファイルを与えたらそれに対応する L A TEX ファイルを出 力する SAT YSFIのライブラリを作りました
https://github.com/puripuri2100/SATySFi-md2latex にあります 4
作った動機 既にテキストモードを使って saty ファイルから L A TEX ファイルを生 成するライブラリを作っていたので、Markdown 入力と悪魔合体
させてみたかったから 5
何が嬉しいのか • Markdwon ファイルの中身を評価して型検査器から通常の SAT YSFIの処理に合流するので、ある程度安全性とエラーのわ かりやすさが担保されている • SAT YSFIのわかりやすい(個人の感想です)文法でパッケージ
を書くことさえできれば、同じ Markdwon ファイルからどの ようなファイル形式でも出力することができる • 将来多種多様な形式のファイルを受け付けられるようになっ た時に資産を生かせる 6
何が嬉しいのか • Markdwon ファイルの中身を評価して型検査器から通常の SAT YSFIの処理に合流するので、ある程度安全性とエラーのわ かりやすさが担保されている • SAT YSFIのわかりやすい(個人の感想です)文法でパッケージ
を書くことさえできれば、同じ Markdwon ファイルからどの ようなファイル形式でも出力することができる • 将来多種多様な形式のファイルを受け付けられるようになっ た時に資産を生かせる • SAT YSFIの文字列操作プリミティブを用いてある程度安全に黒 魔術を使うことができる 6
実装方法 md ファイルのタグに対応する SAT YSFIコマンドを記録した md2latex.satysfi-mdというファイルと、実際に出力する L A TEX ファ
イルを作るためのクラスファイルである md2latex.satyh-latexファ イルを作成しました。 7
実装方法 md ファイルのタグに対応する SAT YSFIコマンドを記録した md2latex.satysfi-mdというファイルと、実際に出力する L A TEX ファ
イルを作るためのクラスファイルである md2latex.satyh-latexファ イルを作成しました。 code 系やリンク参照系は既存の code.satyh-latexや url.satyh-latexに投げ、他のものは頑張ってクラスファイル内で 実装しました 7
起動方法 commonmark に則って書いて satysfi --markdown "md2latex/md2latex" --text-mode "tex,latex" < file
name>.md -o <file name>.tex するだけ! 8
デモ 9
今後について • スライド用クラスファイルを作ってみたい • 現状対応できている markdown 記法が pandoc 等と比べて少 ない点を改善できるなら改善したい
10