2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

SATySFiへの要望まとめ

Last updated at Posted at 2022-12-06

これは「SATySFi Advent Caleandar 2022」の6日目の記事です。
(5日目は yozu さん、7日目は bd_gfngfnさんです。)

Twitter上にはSATySFiに関する様々な提案や要望が見られますが、Twitterだと簡単に流れてしまうため後から見返すのが困難です。この記事では私の独断と偏見で、特におもしろそうだなと思ったツイートをピックアップしてみました。

注意

  • 提案の中でも、サードパーティのSATySFiライブラリを整備すれば実現可能なものは除いています
  • ツイート下のコメントは私の意見であり、ツイートされた皆様方のご意見とは異なる場合があります。
  • 主に2020年後半以降のツイートを参照していますが、全てを網羅できているわけではありません。

レイアウト

他にも「ボックスの縦の長さを指定し、ボックスから溢れた文章を別のボックスに流す」等の需要はありそうです。

画像

例えば画像の中に文字が含まれる場合(グラフなど)、文字のサイズを正しくするためにも画像を自然なサイズで表示したいので、このような機能があったほうが良いと思います。

これはLaTeXの挙動と異なるのでびっくりですよね...

パッケージファイルに画像を含める場合、それをSATySFiコードから参照する方法がないんですよね...。例えば画像ファイルの探索パスにdistディレクトリを追加する等すれば便利になるかもしれません。
SVGをSATySFiコードに変換し、それを用いて画像を描画するという手もありますが...

PDFのグラデーションをSATySFiから出力する方法がないので何とかしたいですね。

SATySFiのフォンtの周りはどんどん便利になりそうです。個人的にはアウトラインとか取れたらうれしいなと思ってます。

Text Mode に関して

現状だとText Modeからは画像を書き出したりすることができないので、これができれば、例えばHTMLやepub等を生成する等がやりやすくなる気がします。1

これは期待できそうです。

これを実現するにはクラスファイル側で色々なフォーマットに対応しないといけないですが、できたらおもしろそうです。(特にLaTeX)

LaTeXからの移行

この発想はなかったです。もしかするとXHTMLの閉じタグ </document>とかLaTexの \end{xxx} の方がわかりやすいのかもしれませんね。

SATySFiに限らず型の強い言語のエラーは初心者にとって分かりにくいとは言われますよね。
HTMLのようにエラー表示を極力減らし、多少文法が変でも無理やりレンダリングできる言語のほうが直感的なのかも?

SATySFiの利用者にとって使いやすい、言語やパッケージの使い方をまとめたレファレンス的なマニュアルがあったら便利かも知れません。

LaTeXとの互換性に関しては、LaTeXとSATySFiの仕組みが大きく異なる以上難しいのですが、例えばsatysfi-latexcmdsを使うと、LaTeX風のコマンドを使うことができます。

0.1.0が出たら普及活動頑張りたいですね。

(LaTeXもですが)SATySFiもインストールが大変というイメージがあるのでなんとかしたいです。(SATySFi用Makefileも使ってみてください)

言語

黒魔術が欲しくなることもあります。

let ref ではなく ctx に情報をもたせられたら、ライブラリ作者にとっては便利だったり。

開発、ドキュメント

現状のSATySFi周りでは日本語のドキュメントが多いため、英語の情報充実が望まれます。

どの程度のレイアウトずれをエラーとみなすかが難しそうですが、例えばsatysfi-xpathでは一部そのようなテストを導入しています。

RFCあったら楽しいですがコミュニティの維持コストは上がりそうです。

他ツールとの連携

だからPython + Jupyter Notebookがはやってるんだと思います。

Jupyter Notebookと連携できたらユーザー増えそうです。数式処理や定理証明支援系も組合せたら...と考えると夢が広がります。

SATySFi周辺のツールでRustで書かれているものもありますし、OCamlとRustを連携させる方法があればもっと便利になると思います。

パッケージマネージャ、ビルドツール

まとめ

他力本願記事で申し訳ありません...

  1. 出力先がインラインSVGであればそこまでハードル高くないかと思いつつも、SATySFiのGraphicsはPDF出力を前提に作られているためPDF -> SVG変換は必要になりそうです。

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?