file:// のリンクについてNo.35138
だぶるX さん 16/07/16 01:37
 
秀丸エディタv8.61 で

<file://C:\temp\test.txt>

のように記載されたリンクをマウスのダブルクリックで開こうとすると、

 「…関連づけられたアプリケーションの起動に失敗したか、またはファイルが見つ
かりません。」

のエラーとなります。(Ctrl+F10 だと 「tagファイルが見つかりません…」とな
ります)

同じ記載リンクを、v8.59では、問題なく開くことができます。


秀丸メールでも同様の状況となります。

 v6.54 NG
 v6.53 ?? 再ダウンロードできなかったので未確認
 v6.48 OK


設定等の問題でしょうか?

よろしくお願いします。

ちなみに

 <file:C:\temp\test.txt>

と記載した場合は、どのバージョンでも開くことができました。


[ ]
RE:35138 file:// のリンクについてNo.35146
秀丸担当 さん 16/07/19 09:03
 

バグ情報ありがとうございます。
その通りでした。
V8.62を近いうちに正式として出す予定ですが、それと合わせて早いうちに修正
させていただきます。

[ ]
RE:35146 file:// のリンクについてNo.35150
hawk-eye さん 16/07/19 16:05
 
横からすみません。

file:〜 の記述は知らなかったですし、「ファイル名と思わしき場所」は全角がある
と駄目なようなので、
このような機能を使いたいとは思っていたものの使っていませんでした。

今回知って、file: やリンクをヘルプで探してみたのですが、
file: に関する説明が見つかりませんでした。

file: で記述するのとfile:// で記述するのとでは、何か違うのでしょうか?

以上

[ ]
RE:35150 file:// のリンクについてNo.35152
でるもんたいいじま さん 16/07/19 18:52
 
私も横から。

> 横からすみません。
>
> file:〜 の記述は知らなかったですし、「ファイル名と思わしき場所」は
> 全角があると駄目なようなので、
> このような機能を使いたいとは思っていたものの使っていませんでした。
> 今回知って、file: やリンクをヘルプで探してみたのですが、
> file: に関する説明が見つかりませんでした。

ちょっとRFCをあたっていないのですが、少なくとも Netscape 3.x の
ころにはもう存在していたと思います。

> file: で記述するのとfile:// で記述するのとでは、何か違うのでしょうか?

URLの基本形は
    プロトコル名://接続先サーバ名/パス
です。httpもftpもそういう形になっているのが分かると思います。

で、file: の場合はOSが提供しているローカルファイルシステムに接続する
わけですから(たかがWebブラウザがNFSなりSMB/CIFSなりのクライアント
機能を持ち合わせることは現実的でありません)、サーバ名を省略して、
UNIX系なら file:/home/delmonta_iijima/test.html のように、Windowsなら
file:C:\Users\delmonta_iijima\test.html のように表記する、というのが
一応のスジだと個人的には思います。

で、もし、
    ・あくまでも「//サーバ名/」を略すべきでない
    ・Windowsでもフォルダ名の区切りは「/」を使うほうが美しい
という2点を主張するのであれば、サーバ名を空文字列にして
    file:///C:/Users/delmonta_iijima/test.html
のように表記することになります。

実際のブラウザの挙動ですが、

Windows XP + IE8:
    file://192.168.1.254/public/
    file://///192.168.1.254/public/
        どちらも Explorer の新規ウィンドウで \\192.168.1.254\public\ の
        ファイル一覧を表示
    file://n:/
    file:n:/
        どちらも Explorer の新規ウィンドウでNドライブのファイル一覧を表示

Firefox(現時点の最新版):
    file://192.168.1.254/public/
        URLバーに入力しても消される
    file://///192.168.1.254/public/
        きちんと \\192.168.1.254\public\ のファイル一覧を表示
    file://n:/
        「file:///n:/」に訂正された上でNドライブのファイル一覧を表示
    file:n:/
        これも上記と同じく「file:///n:/」に訂正されました。

Outlook Express
    「file://」まで書くとURLとして認識される

という結果になりました。

というわけでWindowsの場合、
    ・ドライブ名があるなら file:///x:/… が無難
    ・UNCパスで指定するなら file://///server/path/… が無難
ということになろうかと思います。

[ ]
RE:35152 file:// のリンクについてNo.35154
hawk-eye さん 16/07/19 22:56
 
世の中にはそういう仕様があるのですね。
教えて頂いてありがとうございました。
私はてっきりサイトー企画の誰かが考え出したものなのだと思い込んでいました。

ここからはサイトー企画さん宛てになりますが、
私のように知らない人は他にもいると思うので、
せっかく出来るのだから、ヘルプに説明を加えた方が良いと思います。

ヘルプで、目次−ファイルタイプ別の設定−デザインに「ホームページURL」の説明
がありますが、
>これをONにするとホームページ等のURL(http:で始まる文字列またはftp:で始まる
>文字列)をカラー表示します。
と書いてあり、file:の事は書かれていないので、
>これをONにするとホームページ等のURL(http:で始まる文字列またはftp:で始まる
>文字列)やファイル(file:で始まる文字列)をカラー表示します。
というような説明に変更した方が良いと思います。

そして、
file:C:\temp\test.txt
file://C:\temp\test.txt
のように「//」のない記述方法と「//」のある記述方法の例を示した方が良いと思い
ます。

また、「ファイル名と思わしき場所」の説明が続いてありますが、
パスやファイル名に全角文字があるものを指定したい場合は、
「ホームページURL」が代用できる事を記しておくと良いと思います。

以上

[ ]
RE:35146 file:// のリンクについてNo.35155
だぶるX さん 16/07/20 01:31
 
>
>V8.62を近いうちに正式として出す予定ですが、それと合わせて早いうちに修正
>させていただきます。

よろしくお願いします

[ ]
RE:35154 file:// のリンクについてNo.35156
でるもんたいいじま さん 16/07/20 02:10
 
でるもんた・いいじまです。

> ヘルプで、目次−ファイルタイプ別の設定−デザインに
> 「ホームページURL」の説明がありますが、
> > これをONにするとホームページ等のURL(http:で始まる文字列
> > またはftp:で始まる文字列)をカラー表示します。
> と書いてあり、file:の事は書かれていないので、
> > これをONにするとホームページ等のURL(http:で始まる文字列
> > またはftp:で始まる文字列)やファイル(file:で始まる文字列)を
> > カラー表示します。
> というような説明に変更した方が良いと思います。

URLでいま現役なのは、
    http://host/path
    https://host/path
    ftp://host/path
    mailto:user@domain
    telnet:host
あたりがありますね。
メールアドレスも mailto: をつけるとURL用の色になります。

#telnet: は最近はめったに使わないかな?
#gopher: は秀丸では認識せず。

ちなみに、WebのアドレスのことをURLと言ったりURIと言ったりしますが、
URIというのはURLとURNの総称です。URN(universal resource name)という
ものが世の中にはあるらしいのですが、私は使っている例を知りません。

> そして、
> file:C:\temp\test.txt
> file://C:\temp\test.txt
> のように「//」のない記述方法と「//」のある記述方法の例を示した
> 方が良いと思います。

これはどうなんでしょう。

これを書けというのであれば、
http://username@host:8080/
の意味を詳しく書け、ポート番号って何それ? という主張と全く同列に
なります。file: の意味は、このレベルでソフトウェアの設定をいじろうと
する人なら当然知っている「べき」前提とみなしていいように思います。

#失礼ながら、秀丸を好き好んで使うレベルのPCユーザで、file: の存在を
#知らないという方がいらっしゃるとは思ってもいませんでした。

むしろ、「対応しているプロトコルは http、https、ftp、mailto、file の
5つです」と全部列挙していただいて、それぞれの意味はわからなければ
各自で検索していただく、というほうがいいように思います。

> また、「ファイル名と思わしき場所」の説明が続いてありますが、
> パスやファイル名に全角文字があるものを指定したい場合は、
> 「ホームページURL」が代用できる事を記しておくと良いと思います。

これも疑問です。
file: と書いて認識するのは、各社のWebブラウザとエクスプローラくらいで、
一般にファイル名をフルパスで書くべき場所に file: の5文字があると
正しく認識しません。

試しにコマンドプロンプトでやってみるとこうなります:

C:\>copy file:c:\users\delmonta_iijima\0610am.cmd .
file:c:\users\delmonta_iijima\0610am.cmd
ファイル名、ディレクトリ名、またはボリューム ラベルの構文が間違っています。
0 個のファイルをコピーしました。

全角文字の入ったファイル名を「ファイル名と思われる場所」の色で
表示させたいのであれば、「Email, URL, ファイル名のカスタマイズ(D)」で
対応すべきだと思います。

[ ]
RE:35156 file:// のリンクについてNo.35157
でるもんたいいじま さん 16/07/20 02:36
 
追記。

>> また、「ファイル名と思わしき場所」の説明が続いてありますが、
>> パスやファイル名に全角文字があるものを指定したい場合は、
>> 「ホームページURL」が代用できる事を記しておくと良いと思います。
...
> 全角文字の入ったファイル名を「ファイル名と思われる場所」の色で
> 表示させたいのであれば、「Email, URL, ファイル名のカスタマイズ(D)」で
> 対応すべきだと思います。

上記のように書きましたが、ファイル名「と思われる場所」という曖昧な
概念をどう厳密に定義するか、という問題もありますね。

☆ ☆ ☆

Windowsでは、コントロールコードと下記の8文字以外はすべて、
ファイル名に使えます。半角スペースも、括弧も使えます。
        " * / : ? < > \

たとえば、こんなファイル名がありうるわけです。
c:\Program Files (x86)\(有)サイトー企画\秀丸(32bit)\秀丸.exeのerror log.txt

ここで、「(x86)」の前のスペースまででファイル名が終わっているとは
判断しない理由は何でしょうか?15年前なら「c:\Program Files」までで
ファイル名が間違いなく終わっている、と誰もが判断したでしょうね。

さらに言うと、この例では「.exe」まででも一つのファイル名(しかも、
そのファイルは確実に存在する)のはずですが、「.txt」までで一つの
ファイル名と判断されるべき理由は何でしょうか?

答えは、どちらもそれが、その文章を読んでいる人間にとって意味のある
文字列だからですね。

…では、「意味」とは一体、何でしょう?
これには答えは存在しません。
なので、プログラムの形で厳密に記述することもできません。
だから秀丸も、ファイル名「と思われる」場所、と逃げざるをえないのです。

[ ]
RE:35157 file:// のリンクについてNo.35158
秀丸担当 さん 16/07/20 09:16
 

「ホームページURLのカラー表示」のヘルプについては、確かにhttpとftpしか書
いていなくて不適切でした。
色付けされるプロトコル(スキーム)の種類についてヘルプに追記させていただ
きます。
他にも以下のものがありました。
http: https: ftp: mail nntp: news: file: telnet: rtsp: mms:

それぞれの書き方については、ヘルプに書くときりがないというか、秀丸エディ
タの仕様とは離れてくるので、調べていただくほうがいいと思います。
file: についてはブラウザによって解釈が異なったりするようです。
基本的にはスタートメニューの「ファイル名を指定して実行」に入力したときと
同じになります。
「ファイル名を指定して実行」でも file:c:\… ができるので秀丸エディタで
もできるようにしてあります。

[ ]