{"id":13692381,"url":"https://github.com/monaqa/slydifi","last_synced_at":"2025-05-02T19:31:56.940Z","repository":{"id":41821996,"uuid":"200352371","full_name":"monaqa/slydifi","owner":"monaqa","description":"Create a slide with SATySFi!","archived":false,"fork":false,"pushed_at":"2022-12-16T01:31:29.000Z","size":10159,"stargazers_count":56,"open_issues_count":4,"forks_count":7,"subscribers_count":5,"default_branch":"master","last_synced_at":"2024-11-12T18:40:11.117Z","etag":null,"topics":["satyrographos","satysfi"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/monaqa.png","metadata":{"files":{"readme":"README-ja.md","changelog":"HISTORY.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-08-03T08:36:47.000Z","updated_at":"2024-11-05T13:36:11.000Z","dependencies_parsed_at":"2023-01-29T07:45:42.951Z","dependency_job_id":null,"html_url":"https://github.com/monaqa/slydifi","commit_stats":null,"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/monaqa%2Fslydifi","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/monaqa%2Fslydifi/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/monaqa%2Fslydifi/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/monaqa%2Fslydifi/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/monaqa","download_url":"https://codeload.github.com/monaqa/slydifi/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252095300,"owners_count":21693898,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["satyrographos","satysfi"],"created_at":"2024-08-02T17:00:57.347Z","updated_at":"2025-05-02T19:31:56.260Z","avatar_url":"https://github.com/monaqa.png","language":null,"funding_links":[],"categories":["Uncategorized"],"sub_categories":["Uncategorized"],"readme":"# SLyDIFi\n\n([English README is here](README.md))\n\nSLyDIFi は， [SATySFi](https://github.com/gfngfn/SATySFi) でスライドを作成するためのパッケージ（クラスファイル）です．\nLaTeX でいうところの beamer に相当しています（機能は最低限のもののみ用意しています）．\n\n## Installation \u0026 Usage\n\n[Satyrographos](https://github.com/gfngfn/SATySFi/wiki/Satyrographos)\nを用いてインストールすることが出来ます．\nより具体的には， Satyrographos の入った環境で以下のように打てばインストールできます:\n\n\n```\nopam install satysfi-class-slydifi\nsatyrographos install\n```\n\n正しくインストールされたかどうか動作を確認したければ，\n適当なディレクトリ下で，以下のように記述された `minimum.saty` を用意してください:\n\n```\n@require: class-slydifi/theme/plain\n\ndocument '\u003c\n  +frame{\\SLyDIFi; のテスト}\u003c\n    +p{Hello, \\SLyDIFi;!}\n  \u003e\n\u003e\n```\n\nこれで SATySFi を走らせて以下のような PDF が生成されたら，正常に動いています．\n\n![slydifi-test](fig/slydifi-test.png)\n\n## Gitpodを使ったデモ\n\n[Gitpod](https://gitpod.io) を使って，SLyDIFi の使用感を試すことができます．\n\n[![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/#https://github.com/monaqa/slydifi)\n\n`example/plain.saty` を自由に編集し，ターミナル上で `satysfi example/plain.saty` とすることでPDF (`example/plain.pdf`) を生成できます．\n\n[pickoba/gitpod-satysfi](https://github.com/pickoba/gitpod-satysfi) を使用しており，\n`opam` / `satyrographos` コマンドで他のパッケージを入れることもできます．\n\n![gitpod-demo-gif](https://user-images.githubusercontent.com/48883418/93006630-8d70c200-f599-11ea-8777-d3d5afbacf25.gif)\n\n## SLyDIFi でできること\n\nSLyDIFi は以下の機能を有しています．\n\n### フレームの作成\n\n標準のスライドテーマでは，以下の3種類のスライドを用意しています，\n\n* 通常のスライド\n* タイトルスライド\n* セクションスライド\n\n具体的なレイアウトについては，後述の「テーマの選択と変更」を参照してください．\n\n### スライド内でのマークアップ\n\nスライド内では，以下のマークアップを行うことが出来ます．\n\n* 段落\n* 箇条書き\n* 図表の挿入\n* 脚注の挿入\n\nまた，インラインテキストマークアップとして以下のコマンドを用意しています（テーマによって異なる場合があります）．\n\n* ``\\emph``\n* ``\\link``\n* ``\\text-color``\n* ``\\uline``\n* ``\\stroke``\n\n### テーマの選択と変更\n\nSLyDIFi はテーマの変更に対応しています．\n標準では現時点で3種類のテーマを用意しています．\nテーマは自作することも可能ですし，既存のテーマを自身でカスタマイズすることもできます\n（ただし，そのためのドキュメントはまだ作成されていません）．\n\n以下は標準で用意されたテーマの外観と導入方法です．\n\n#### Plain\n\n装飾のないシンプルなテーマ．\n\n```\n@require: class-slydifi/theme/plain\n```\n\n[![example-plain.png](fig/example-plain.png)](example/plain.pdf)\n\nより詳しいスライドの例は [こちら](example/plain.pdf) をご覧ください。\n\n#### Hakodate\n\n[Gruvbox](https://github.com/gruvbox-community/gruvbox)\nの色をベースにしたテーマ．\n\n```\n@require: class-slydifi/theme/hakodate\n```\n\n[![example-hakodate.png](fig/example-hakodate.png)](example/hakodate.pdf)\n\nより詳しいスライドの例は [こちら](example/hakodate.pdf) をご覧ください。\n\nデフォルトの設定では [M+ フォント](https://mplus-fonts.osdn.jp/about.html) を使用しているため、\nシステムに M+ フォントをインストールした上で以下を実行する必要があります。\n\n```\nsatyrographos install --system-font-prefix 'system:'\n```\n\nただし、フォントの設定は文書ファイル内で自由に変更することができます。\n\n#### Akasaka\n\n灰色のスタンダードなテーマ．\n\n```\n@require: class-slydifi/theme/akasaka\n```\n\n[![example-akasaka.png](fig/example-akasaka.png)](example/akasaka.pdf)\n\nより詳しいスライドの例は [こちら](example/akasaka.pdf) をご覧ください。\n\nデフォルトの設定で使用するには [Noto Sans](https://www.google.com/get/noto/) 系のフォント\n（Noto Sans 及び Noto Sans CJK JP）\nのインストールと，hash ファイルによる紐付けが必要です．\nこれは既に satyrographos に登録されており，以下のコマンドでインストール可能です:\n\n```\nopam install satysfi-fonts-noto-sans\nopam install satysfi-fonts-noto-sans-cjk-jp\nsatyrographos install\n```\n\n上記パッケージについての詳細は\n[SATySFi-fonts-noto-sans](https://github.com/zeptometer/SATySFi-fonts-noto-sans)\n及び\n[SATySFi-fonts-noto-sans-cjk-jp](https://github.com/zeptometer/SATySFi-fonts-noto-sans-cjk-jp)\nを参照．\nまた、フォントの設定は文書ファイル内で自由に変更することができます。\n\n#### Arctic\n\n[iceberg.vim](https://github.com/cocopon/iceberg.vim) の色をベースにした、涼しい印象のテーマ。\n\n```\n@require: class-slydifi/theme/arctic\n```\n\n[![example-arctic.png](fig/example-arctic.png)](example/arctic.pdf)\n\nより詳しいスライドの例は [こちら](example/arctic.pdf) をご覧ください。\n\nこちらもデフォルトの設定では\n[IBM Plex Sans JP](https://github.com/IBM/plex/releases/tag/v5.2.1)\n系のフォントが必要ですが、フォント設定は文書ファイル内で変更できます。\n\n#### Arctic-Noto\n\nNoto Sans 系統のフォントを使用した Arctic theme です。書体以外のレイアウトや配色は Arctic と全く同じです。\n\n```\n@require: class-slydifi/theme/arctic-noto\n```\n\nより詳しいスライドの例は [こちら](example/arctic-noto.pdf) をご覧ください。\n\nNoto Sans フォントは Satyrographos で管理されているため、ユーザがインストールせずとも\n\n```\nopam install satysfi-fonts-noto-sans\nopam install satysfi-fonts-noto-sans-cjk-jp\nsatyrographos install\n```\n\nでインストールできます。\n\n### 設定変更\n\n各テーマにはいくつか設定可能なパラメータがあり、\n文書ファイル内でいくつかの設定値を変更することができます。主に\n\n- フォント（書体、サイズなど）\n- 色（文字色、背景色など）\n- 長さ（紙面とフッタの間など）\n\nといった設定値を操作することが可能です。たとえば Akasaka テーマでは\n\n```\n@require: class-slydifi/theme/akasaka\n\ndocument '\u003c\n\n  +set-config(|\n    SlydifiThemeAkasaka.default-config with  % 下に書いたフィールド以外はデフォルト値を使う\n      font-frame-title = (fun ctx -\u003e ctx |\u003e SlydifiThemeAkasaka.default-config#font-frame-title |\u003e set-font-size 20pt);\n      color-bg = Color.of-css `lightcyan`;\n      color-emph = Color.of-css `darkred`;\n      length-frame-title-height = 28pt;\n  |);\n\n  +frame{フレーム}\u003c\n    ...\n  \u003e\n\u003e\n```\n\nのように書くことで、フレームのタイトルのフォントサイズやスライドの背景色といった要素を変更することができます。\n詳しい例は [こちら](example/akasaka-user-config.saty) をご覧ください。\n\n## ToDo\n\n* block 環境に相当するコマンド\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmonaqa%2Fslydifi","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmonaqa%2Fslydifi","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmonaqa%2Fslydifi/lists"}