Gemini でのマークアップ言語 Gemtext
Gemtext では .gmi ファイルを使用します。
ファイル名を index.gmi にすると、ファイル名を省略できます。
(HTTP・HTTPS の index.html・index.htm に同じ)
汎用のテキストエディタを用いて .gmi ファイルを作成する場合、
文字コードは UTF-8 になっている事を確認して下さい。
Unicode 絵文字は使えるクライアントが多いですが、
非対応のクライアントもあるようですので、
表示されない事も想定しておくと無難です。
このページ記載している装飾しか存在しません。
それ以外はテそのまま表示されます。
- - - 🎈 - - -
見出し
見出しは # ・ ## ・ ### の 3 種類 です。Markdown と同じ表記です。
- - - ↓ソース - - -
# 見出し 1
## 見出し 2
### 見出し 3
- - - ↑ソース - - -
- - - ↓ 結果 - - -
見出し 1
見出し 2
見出し 3
HTML だと 見出し 1 は事実上サイト名やページタイトルで一度だけ使用する前提ですが、
Gemtext では現状そういう決まりがなく、複数 見出し 1 があっても問題ありません。
HTML の 見出し 2~4 を Gemtext では 見出し 1~3 としても良いでしょう。
Gemini クライアントによっては 見出し 1 に応じて表示を変化させます。
- - - 🎈 - - -
リンク
リンクは行頭 => ではじめます。後ろに文字列を含めてその文字列を表示します。
クライアントによって URL に続けて絵文字にすると、その絵文字が行頭に使われます。
gemini: 以外のプロトコルでも構いません。
https: なら Web ブラウザで表示されます。
- - - ↓ソース - - -
=> gemini://fusen.nya.je/
=> gemini://fusen.nya.je/ 🎈 fusen.nya.je (gemini:)
=> spartan://fusen.nya.je/
=> spartan://fusen.nya.je/ 🎈 fusen.nya.je (spartan:)
=> nex://fusen.nya.je/
=> nex://fusen.nya.je/ 🎈 fusen.nya.je (nex:)
=> https://balloon-jp.vercel.app/
=> https://balloon-jp.vercel.app/ ふうせん🎈 FU-SEN
=> ./
=> ./ トップページ
- - - ↑ソース - - -
- - - ↓ 結果 - - -
gemini://fusen.nya.je/
🎈 fusen.nya.je (gemini:)
spartan://fusen.nya.je/
🎈 fusen.nya.je (spartan:)
nex://fusen.nya.je/
🎈 fusen.nya.je (nex:)
https://balloon-jp.vercel.app/
ふうせん🎈 FU-SEN
./
トップページ
- - - 🎈 - - -
リスト
行頭 * ではじめます。Markdown は - なので異なる事にご注意下さい。
- - - ↓ソース - - -
* 項目 1
* 項目 2
* 項目 3
- - - ↑ソース - - -
- - - ↓ 結果 - - -
- - - 🎈 - - -
引用
行頭 > ではじめます。Markdown に同じ表記です。
複数行にしても構いません。
- - - ↓ソース - - -
> 風船がほしい!
> 彼女は言った。
- - - ↑ソース - - -
- - - ↓ 結果 - - -
風船がほしい!
彼女は言った。
- - - 🎈 - - -
フォーマット済みテキスト
行頭 ``` で囲んだ部分は通常等幅フォントで表示されます。
Markdown と同じですが、
クライアントによって、クリック・タップで畳まれ、
その時に開始 ``` 右にある説明文が表示される点で異なります。
- - - ↓ソース - - -
``` BASIC プログラム
10 INPUT A
20 INPUT B
30 C=A+B
40 PRINT C
50 END
```
- - - ↑ソース - - -
- - - ↓ 結果 - - -
10 INPUT A
20 INPUT B
30 C=A+B
40 PRINT C
50 END
- - - 🎈 - - -
Q&A
画像は表示できないのですか?
画像ファイルへのリンクにする事はできます。
なので使用するサーバーによっては画像のアップロードも可能です。
グラフィカルな Gemini クライアントでは直接画像を表示でき、
Lagrange だと gemini: リンクはリンクの下に画像を表示します。
ただしテキストベースの Gemini クライアントもある事にご注意下さい。
画像次第ではアスキーアートにしてしまう手もあります。
この場合は ``` で囲ってフォーマット済テキストで表示すると
等幅フォントで表示され、モバイルでも改行されないので崩れません。
(代わりに右スクロールが必要な場合があります)
.-#@@@@@@*:.
.-#@@@@@@@@@@@%+.
.#@@@@@@@@@@@@@@@#.
:%@@@@@@@@@@@@@@@@@#
.*@@@@@@@@@@@@@@@@@@@=
:@@@@@@@@@@@@@@@@@@@@+
-@@@@@@@@@@@@@@@@@@@@=
-@@@@@@@@@@@@@@@@@@@#
.@@@@@@@@@@@@@@@@@@*.
.*@@@@@@@@@@@@@@@@=
-@@@@@@@@@@@@@#-.
.#@@@@@@@%*:.
+%=:--:.
.:=.
.=:.
.-=
.=:
.=:
.--.
.=-.
.-=.
.+-..
-@@*=-.
.-+*.
動画や音楽再生などはできますか?
Gemtext の仕組み上存在しませんが、
動画ファイル・音楽ファイルをリンクで理想的な動作をするでしょう。
表は表示できないのですか?
Gemtext としては存在していませんが、
代わりにテキストで表を作成し ``` で囲ってフォーマット済テキストで表示します。
等幅フォントで、改行もされないので表が崩れません。
ヘリウムガスでふくらませられるゴム風船の数
+--------+-------+-------+
|ヘリウム|ゴム風船 インチ|
|ガス容量| 9| 10| 11| 12|
+--------+---+---+---+---+
| 120L| 15| 14| 7| 6|
| 230L| 29| 28| 14| 11|
| 400L| 51| 49| 25| 20|
+--------+---+---+---+---+
※ 計算上の数で、実際には前後します
表にする必要がなければ、リストにしても良いでしょう。
水平線は表示できないのですか?
Gemtext として存在していません。
何かテキストを使用して表現すると良いでしょう。
Favicon は存在しますか?
favicon.txt のドラフト仕様が存在します。絵文字 1 文字と改行 CR LF です。
ここ 🎈 fusen.nya.je も favicon.txt を入れてます。
もちろん 🎈 です。
🎈 favicon.txt | 🎈 fusen.nya.je
ただし対応はクライアント次第で、使用していない人も多いと思われます。
RSS・Atom フィードを生成しても良いです。
更に Gemsub という Gemini プロトコル公式仕様があります。
♊ Subscribing to Gemini pages | Project Gemini
Gemlog のトップページは行頭 `#` ではじまる見出しで Gemlog 名を入れます。
ページ一番最初の見出しを認識するようです。
またページ内のリンクを次のようにします。日付は日本式の YYYY-MM-DD が有効です。
この形式で記載したページを購読対象として読み込ませる事で、
アンテナページでの掲載ができます。
Gemlog(Gemini Capsule を用いた Blog)はもちろん、
通常ページのリンクでも有効なので、
Gemini Capsule のトップページを Gemsub 対応にして、
トップページも購読対象にできます。
一部の場所で入力欄が表示されているのですが、どうやっているのですか?
CGI 動作など、サーバーによってプログラミング言語で処理できます。
その際、サーバーからのレスポンスコードとして 10 を返すと入力を促す事ができます。
パスワードなどのための 11 もあります。
詳細は次の仕様を確認してみて下さい。(状態コード - 入力待ち)
🚀 Geminiのネットワークのプロトコルの仕様 | Project Gemini (gemini:)
🚀 Geminiのネットワークのプロトコルの仕様 | Project Gemini (https:)
CSS・JS のような機能はないのですか?
Gemini の方針上、そういう事をしない仕様にしてあります。
表示のデザインについては、Gemini クライアントのテーマで選択する事になります。
またプログラミング言語はサーバレベルで処理する前提になります。
アクセス解析などは存在しなませんか?
画像や JS が貼れないので、クライアントレベルで動作ができません。
一方 Gemini サーバーレベルではログが取れるので、それで確認はできます。
ファイルのアップロードや編集はできるのですか?
Gemini プロトコルに拡張して Titan プロトコルとして存在しています。
- - - 🎈 - - -
🎈 fusen.nya.je
- - - 🎈 - - -
😺 Powered by nya.je