テキスト・ファイル向けURIフラグメント識別子

git-release.jsでファイルと行の指定をまとめて設定する良い方法を考えてた。結局はコロンでつなぐという古き良き感じにしたけど、ウェブではこういうのにも使えそうなのをRFC5147 - URI Fragment Identifiers for the text/plain Media Typeで仕様を決めているらしい。何行目かだけじゃなくて何文字目から何文字目までみたいなのが出来るようだ。

以下はExamplesの簡単なメモ。

http://example.com/text.txt#char=100

text.txtの100文字目。

http://example.com/text.txt#line=10,20

text.txtの11–20行目。line=10が10行目と11行目の境界ということ。

https://example.com/text.txt#line=,1

text.txtの1行目。0–1行目ということ。httpsでも問題ない。

ftp://example.com/text.txt#line=10,20;length=9876,UTF-8

text.txtの11–20行目だが、UTF-8として9876文字だった場合のみ有効になる。ftpでも問題ないけど注意しようみたいな但し書きがある。


シンプルでわかりやすい。ブラウザーで検索語のハイライトの状態なんかを共有するみたいな用途には(拡張書けば)便利そう。ローカルで使うには用途が限られすぎててパーサー書くコストに見合わない気がする。