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 で卒論を書いた話
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
pickoba
September 24, 2022
Technology
0
650
SATySFi で卒論を書いた話
SATySFi Conf 2022 での発表スライドです。リポジトリはこちら
https://github.com/pickoba/satysfi-conf-2022
pickoba
September 24, 2022
Tweet
Share
Other Decks in Technology
See All in Technology
Zeal of the Convert: Taming Shai-Hulud with AI
ramimac
0
120
NewSQL_ ストレージ分離と分散合意を用いたスケーラブルアーキテクチャ
hacomono
PRO
4
360
進化するBits AI SREと私と組織
nulabinc
PRO
0
200
Keycloak を使った SSO で CockroachDB にログインする / CockroachDB SSO with Keycloak
kota2and3kan
0
130
オレ達はAWS管理をやりたいんじゃない!開発の生産性を爆アゲしたいんだ!!
wkm2
4
540
楽しく学ぼう!ネットワーク入門
shotashiratori
4
3.4k
JAWS DAYS 2026 ExaWizards_20260307
exawizards
0
440
[JAWSDAYS2026][D8]その起票、愛が足りてますか?AWSサポートを味方につける、技術的「ラブレター」の書き方
hirosys_
3
190
フロントエンド刷新 4年間の軌跡
yotahada3
0
450
AIエージェント、 社内展開の前に知っておきたいこと
oracle4engineer
PRO
2
140
マルチアカウント環境でSecurity Hubの運用!導入の苦労とポイント / JAWS DAYS 2026
genda
0
770
組織全体で実現する標準監視設計
yuobayashi
3
490
Featured
See All Featured
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
0
160
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
88
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.4k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
480
Joys of Absence: A Defence of Solitary Play
codingconduct
1
310
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
190
New Earth Scene 8
popppiees
1
1.7k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
290
Six Lessons from altMBA
skipperchong
29
4.2k
Automating Front-end Workflow
addyosmani
1370
200k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
480
ラッコキーワード サービス紹介資料
rakko
1
2.6M
Transcript
SATYSFIで卒論を書いた話 SATYSFI Conf 2022 pickoba 2022.09.24
1/11 自己紹介 pickoba (修士 1 年) usagrada と卒論研究室同期 SATYSFI 歴
: そろそろ 1 年 公開している SATYSFI 関連のもの VS Code 拡張 SATYSFI Workshop 擬似コード組版ライブラリ SATYSFI Algorithm GitPod 向けテンプレート SATYSFI GitPod Template 今日のテーマ SATYSFI で卒論を書いた話
2/11 SATYSFIとの出会い SATYSFI に出会ったのは、去年の 10 月 9 月にあった卒論の中間報告で L ATEX
+ Beamer を使い苦しんだ 静的型付き言語は昔から好きだった もっと使いやすい組版言語はないのか ⇒ SATYSFI 第一印象は「括弧多いな、自然に書けるようになるのかな」 すぐに慣れ以後どっぷり浸かる
3/11 とりあえず使ってみる とりあえず研究室内の発表で SATYSFI + SLYDIFI を使ってみた 今使っているテーマは元々その時に作成したもの 執筆体験が良い L
ATEX のスライドと遜色ないものが作れる ADT とパターンマッチで木構造の絵が描けることに感動 ⇒ 卒論を SATYSFI で書きたい
4/11 卒論を SATYSFIで書くために 学科のルール的には問題なさそう PDF で出力できれば OK ページ数以外の規定なし 既存の環境(VS Code)は長文を書くにはつらそう
保存時にビルドを自動でしてほしい monaqa さんの Language Server を使いたい ⇒ SATYSFI Workshop の開発へ
5/11 SATYSFI Workshop の開発 wraikny さんが作成されていた既存の VS Code 拡張をベースに、以下の機能追加・改善を実施 12
月に SATYSFI Advent Calendar で公開 ビルド機能 ショートカットキーによるビルド・保存時のビルド 型チェック機能 保存時やタイプ時に satysfi コマンドを呼び出し出力をパースして表示 元からあったもののパフォーマンス等を改善 Language Server のサポート 単に受け口を作っただけ その他 lint や format の自動化、テスト追加なども(詳細は Qiita 記事参照)
6/11 卒論を SATYSFIで書く 卒論は実際に SATYSFI Workshop を使って執筆した 使用させていただいたライブラリ abenori/satysfi-class-jlreq ...
クラスファイル monaqa/satysfi-easytable ... 表組 monaqa/satysfi-enumitem ... 箇条書き monaqa/satysfi-figbox ... 画像挿入 namachan10777/BiByFi ... 文献管理 puripuri2100/satysfi-code-printer ... ソースコード挿入
7/11 SATYSFIで卒論を書いてよかったこと 静的型に守られているという安心感 変更の影響範囲が予測しやすい エラーメッセージがわかりやすい 「ちょっとした拡張」がやりやすい その文書限りのコマンドを作る精神的ハードルが低い Language Server が快適
(手元の環境・設定では) LuaL ATEX よりコンパイルが速い
8/11 ちょっとした拡張の例 figbox な画像にキャプションを付ける関数 let with-caption caption figbox = vconcat
?:align-center [ figbox; gap 10pt; textbox caption; ] のようなものを定義しておくと +fig-center( include-image 400pt `satysfi.jpg` |> with-caption {\SATySFi; のロゴ} ); のように使える Fig.1 SATYSFIのロゴ
9/11 SATYSFIで卒論を書いて大変だったこと 問題ライブラリの種類が少ない ⇒ その場その場でライブラリを作りつつ執筆 figbox に自動で番号付けされるキャプションを付けたい ⇒ 前述の方法を拡張して作成 擬似コードを書きたい
その時点では enumitem を利用して作成 let-block +While cond inner = '< +EnumitemAlias.item({\bold{while}\ #cond; \bold{do}})(inner); +EnumitemAlias.item({\bold{end while}})<> > 後に独立したライブラリとし、テーマの切り替えなど機能追加 ⇒ satysfi-algorithm
10/11 まとめ SATYSFI を使うと分かりやすいエラーメッセージと Language Server による支援を存分に受けられる ライブラリが少ないのは大変だが、 「困ったときは自分で作る」の精神があれば意外と乗り切れる (学部・学科の規定等があれば要確認)
卒論は SATYSFI で書ける!
11/11 SATYSFI関連の近況 SATYSFI Workshop は鋭意開発中 そろそろまたリリースします(型チェック機能周辺の改善) SATYSFI 0.1.0 の対応も SATYSFI
Algorithm も 0.1.0 対応させたい L ATEX の algorithmicx 向けのコードをテキストモードで吐けるようにしたい