Gopher で特殊な仕様なのは、gophermap で、
       そもそもはディレクトリのファイル表示を行うためのものですが、
       機能が拡張され、現在は HTML や Gemtext のような役割のファイルで、
       ここから様々な表示を行ったり、リンク・検索などを実現します。
       
       サーバーによっては自動生成してくれる場合もありますが、
       多くのサーバーでは gophermap を生成する事になるでしょう。
       
       各行は次のように記載します。タブで区切ります。
       
          @表示文字列( タブ )セレクター( タブ )ホスト名( タブ )ポート番号
       
       @ = 種類 で、この文字で表示するファイルの種別や
       リンク・検索などを判別します。
       
       通常のテキストはこのような表記になります。
       
          i表示文字列( タブ )( タブ )null.host( タブ )0
       
       i は「情報テキストメッセージ」で、
       ホスト名とポート番号は仮の内容で良いです。
       
       Gopher プロトコルでは自動改行をしないので、
       適度な長さで改行を入れる必要があるので、ご注意下さい。
       そのため、通常はパソコンで参照するのに適した横幅になり、
       スマートフォンの縦長表示では表示しきれず、
       横長表示にする必要があります。
       
       gopher: 内のメニューへリンクする場合は、次のようになります。
       
          1fusen.nya.je( タブ )/japanese/( タブ )fusen.nya.je( タブ )70
       
       上で gother://fusen.nya.je:70/1/japanese/ へのリンクになります。
       行頭 1 は「ディレクトリ・Gother メニュー」の意味です。
       
       外部 https: へのリンクは行頭 h(html ファイル)で
       h説明文( タブ )URL:https://〜 とします。
       
          hfusen.nya.je (https:)( タブ )URL:https://fusen.nya.je/
       
       gemini: なども上記同様種類は h で有効です。
       また種類には画像などがありますが、Gopherspace 内で使用し、
       他のプロトコルでの表示であれば、
       h説明文( タブ )URL:h〜 を使用する形で良いようです。
       
       Gopher プロトコルの仕様となっている RFC1436 に記載のある種類で
       主に使用する種類は次のとおりです。
       (現在 Gopher サーバーで主流となっている Gophernicus が対応)
       
       ・ 0 - テキストファイル
       ・ 1 - ディレクトリ・Gopher メニュー
       ・ 3 - エラーコード (Gopher サーバーが返す)
       ・ 5 - 圧縮ファイル (.zip .tar など)・DOS ファイル
       ・ 7 - Gopher 全文検索
       ・ 9 - バイナリーファイル (ダウンロード動作になる)
       ・ g - GIF ファイル
       ・ I - 画像ファイル (.gif 以外)
       
       RFC1436 に記載のない非公式ですが、次は現在よく使用されます。
       (Gophernicus 対応)
       
       ・ h - HTML ファイル (他プロトコルへのリンクに使用)
       ・ i - 情報テキストメッセージ (単なる文字表示で使われる)
       
       RFC1436 に記載のある種類なので公式に定義されていますが、
       現在通常使われない種類はこちらです。
       Gopher サーバーによっては対応していません。
       (Gophernicus 非対応)
       
       ・ 2 - CCSO ネームサーバー
       ・ 4 - BinHex エンコードファイル
       ・ 6 - uuencode ファイル
       ・ 8 - Telnet
       ・ + - ミラーサーバー・代理サーバー
       ・ T - Telnet 3270
       
       更に Gother+ の種類として、次が存在します。
       
       ・ : - ビットマップファイル
       ・ ; - 動画ファイル(Gophernicus 対応)
       ・ < - 音声ファイル
       
       その他非公式な種類として、次があります。
       
       ・ c - カレンダーファイル
       ・ d - 文章ファイル (.doc や .pdf ファイル・Gophernicus 対応)
       ・ p - 画像ファイル (通常 .png ファイル)
       ・ r - .rtf ファイル (リッチテキストフォーマット)
       ・ s - 音声ファイル (主に .wav ファイル・Gophernicus 対応)
       ・ P - .pdf ファイル
       ・ X - .xml ファイル
       
       他にも独自に拡張しているサーバーがあります
       (英数は予約されているので、記号が使われます)
       種類やホスト名・ポート番号を簡略して記載できるサーバーも存在します。
       
        - - - 🎈 - - -
       
       🎈 フォーマット済みテキスト
       
       行頭から 3 文字空白を入れるとフォーマット済みテキストにします。
       また、Markdown・Gemtext 同様に ``` で囲む形式も有効です。
       
        - - - 🎈 - - -
       
       🎈 Q&A
       
       🎈 全体がフォーマット済みテキスト表示になり、正常に出力しません。
       
       サーバーにより、タイトル行に特定の行頭コードを使用します。
       例えば Gopher サーバー Gophernicus だと 1 行目は !タイトル ですが、
       英語版 Wikipedia には /タイトル で記載されています。
       実際に変換される iタイトル ではじめても動作するでしょう。
       
       🎈 行頭文字に特定の記号を含む行から動作がおかしくなります。
       
       Gopher サーバー Gophernicus では、行頭文字を省略できますが、
       例えば行頭 . でファイルの終わりを意味しているので、
       たまたま . ではじまる行があるとここで出力を止めてしまいます。
       この場合は iテキスト文(タブ) と記載して下さい。
       
          i.説明文(タブ)
       
       Motsognir など、行頭の種類記載が必須なサーバーもあります。
       
       🎈 なぜ行頭の文字で判別する仕様になっているのですか?
       
       古来からの Unix ライクのシステムは、
       拡張子によるファイルの種類の判別を行いませんでした。
       そのため、出力する種類を教える手段が必要です。
       
       MS-DOS→Windows の影響で、現在は拡張子の付与も当たり前になり、
       拡張子でファイルの種類を判別できるようになったので、
       Gemtext プロトコルはそれを利用していて、
       リンクは => 行頭のみになっています。他は装飾関連の仕様です。
       
        - - - 🎈 - - -
       
 (DIR) fusen.nya.je
       
        - - - 🎈 - - -
       
 (HTM) 😺 Powered by nya.je