長年 Gopher の日本語使用はほぼなかったようです。
・日本でインターネットが普及した時は World Wild Web が普及していた
・Gopher の仕様上 ASCII 文字を使用する前提になっている
この状況が変わったのが Go@pher プロトコルを元に
今の時代に合わせて制定された Gemini プロトコルです。
グラフィカルな Gemini クライアントの多くは
Gopher プロトコルにも対応していて、
更に UTF-8 動作を前提につくられているので、
日本語表示にも対応するクライアントが出てきています。
Gemini プロトコルと共に Gopher プロトコルにも触れてみる日本人が
増えてくると面白い事になるかもしれません。
- - - 🎈 - - -
🎈 gopher の意味
直接すると ホリネズミ になります。
物を取りに行く存在で、目的の場所に行くために地面へ潜り込みます。
ミネソタ大学の Mark P. McCahill さんが率いる
チームによって開発されましたが、
ミネソタ大学のマスコットが gopher です。
ミネソタ州の愛称に “the Gopher State” があります。
Go for(やってみる・頑張る)に近い言葉の意味もあります。
- - - 🎈 - - -
🎈 他プロトコルとの関係
Web(http・https) と Gopher との関係は次のとおりです。
| World Wide Web | Gopher |
| Web / WWW | Gopherspace |
| Web site | gopherhole |
| home page | gophermap |
| Blog (Web log) | Phlog (Gopher log) |
| http(s):// | gopher:// |
| :80 (http:) | :70 (gopher:) |
| :443 (https:) | 該当なし ※ |
```
※ SSL 経由にする試みはいろいろ行われているようですが、
SSL の有無などに問題があり、クライアントが対応していないため、
定まった仕様が存在しないので、非推奨な状況です。
```
Gopher の影響を受けている
Gemini プロトコルとの関係だと次のとおりです。
| Gemini | Gopher |
| Geminispace | Gopherspace |
| Gemini Capsule | gopherhole |
| gemlog (Gemini log) | Phlog (Gopher log) |
| gemini:// | gopher:// |
| :1965 (gemini:) | :70 (gopher:) |
| SSL 必須 | SSL なし |
- - - 🎈 - - -
🎈 Gopher クライアント
日本で使用する場合、グラフィカルな
Gemini クライアントを使用するのがおすすめです。
UTF-8 対応で、日本語を正常に扱えるためです。
(HTM) 🎈 Gemini # Lagrange | ふうせん🎈 FU-SEN
Lagrange は gopher: も表示できます。
(HTM) ☀ Alhena | metaloupe.com
(HTM) 🐙 mochaman/alhena | GitHub
Alhena も gopher: に対応しています。
昔の Web ブラウザ Internet Explorer や Netscape Navigator は
gopher: も対応していたのですが、
現在 Chrome は完全非対応です。Firefox も削除しています。
Lagrange などのインストールで割り当てられるでしょう。
echo /japanese/anko/ | nc fusen.nya.je 70
読み込みは nc でも容易にできます。ただし変換前のソースで表示されます。
(HTM) LYNX - The Text Web-Browser
(HTM) 🐙 ThomasDickey/lynx-snapshots | GitHub
(HTM) ◯ ~rkta/w3m | git.sr.ht
テキストベース Web ブラウザである Lynx および w3m は現在も Gopher プロトコル対応です。
Hole 運営者が確認したところ、日本語表示も可能でした。
(HTM) 🦊 OverbiteWX | Firefox Add-ons
Firefox の拡張機能で gopher: をプロキシサイト Floodgap Public Gopher Proxy で表示する
OverbiteWX が存在するのですが、Floodgap Public Gopher Proxy は純粋な ASCII 表示になって
日本語は文字化けしてしまう事を確認できています。
(HTM) SmolNet Portal
SmolNet Portal は gopher: も対応し、gemini: も対応している影響からか UTF-8 で表示するので、
日本語も正常に表示できます。
(HTM) gopherproxy (gopherproxy.meulie.net)
gopherproxy (gopherproxy.meulie.net) も UTF-8 対応で日本語表示が可能でした。
- - - 🎈 - - -
🎈 Q&A
🎈 Gopher プロトコルを日本語で使用して問題ありませんか?
純粋な Gopher クライアントやプロキシサーバーは
仕様そのままで実装されているところが多く、ASCII 文字で表示するので、
文字化けする事が多いようです。
Firefox の拡張機能で gopher: の参照をできるようにする OverbiteWX も
ASCII 前提になっていて、残念ながら文字化けします。
一方で Gemini プロトコルは UTF-8 を使用する前提で、
Gopher プロトコルも UTF-8 表示に対応している
クライアントやプロキシがあります。
これにより日本語で Gopherhole を公開できる状況になっていました。
実際英語以外で公開する Gopherhole も増えてきているようです。
なお、Gopher プロトコルの仕様となっている RFC 1436 には
gophermap の種類も 0〜9、+、T、g、I のみが記載されています。
でも Gopher でよく使われているサイト等では i、h などを使っていて、
すでに RFC 1436 の仕様に記載されていない使われ方を
当たり前にしているのが Gopher プロトコルの現状だったりします。
BBS でも質問してみましたが、現状 Gopher 利用者が少ない状況で、
UTF-8 で公開された Gopherspace に関しても文字化けが生じる位で
それを超えて問題となる状況ではないようでした。
むしろ UTF-8 記載の Gopherhole が増える事で、
新たな Gopherspace でも動きも生まれるかもしれません。
🎈 ポート 70 以外で提供しても大丈夫ですか?
大丈夫です。Gopher サーバーの多くはポート番号の変更が考慮されていますし、
クライアントももちろん対応されています。
実際 7000 や 7070 を使っているケースを見かけますが、
複数の Hole を公開するために
いくつかのポート番号を使用しているところも存在しています。
Gopher サーバーにより、行頭 1 でのポート番号を省略できますが、
ポート番号 70 以外を使用する場合は省略せずに入れる必要があります。
🎈 Gopher は SSL に対応していないのですか?
gophers: の思想はあるのですが、
Gopher クライアントレベルでは全く考慮されていません。
SSL 証明書の発行をどうするか? 等、定まっておらず、
実装できる定まった仕様が存在しないのが現状です。
Gopher の影響を受けている Gemini プロトコルが
プロトコルレベルで SSL をサポートしているので、
これが事実上の現在版 Gopher という状況になっています。
- - - 🎈 - - -
(DIR) fusen.nya.je
- - - 🎈 - - -
(HTM) 😺 Powered by nya.je