KDE xdg-mimeと乱数

KDE xdg-mimeと乱数

数日間、callto、tel、または他のリンクハンドラに問題があります。 .desktopアプリケーションを作成し、うまく動作します。

[Desktop Entry]
Name=uriOpen CALLTO Handler
Exec=echo %u >> ~/testfile
#Exec=uriopen %U
Icon=plasma-mobile-phone
Type=Application
MimeType=x-scheme-handler/callto;

しかし...(注釈付きのExec行は元のコマンドであり、私の個人的なスクリプトです。)デバッグし、ファイルの出力を表示するために新しいExec行を追加しました。

たとえば、リンクは次の単純なHTMLコードです。

<p><a href="callto://4241">callto</a></p>

リンクをクリックすると、 ~/testfile の出力は次のようになります。

0.0.16.145

? ! ? !なぜこのような結果が出るのですか? :(((

20231218アップデート:
最初に単純な文字を追加すると機能します。
前任者。callto://n4241
私のランチャースクリプトから削除されたsedを追加しました。N特徴。

KDE XDG-MIMEの問題は疑われますか? !

バージョン: kde Plasma = 5.27.10
KDE フレームワーク = 5.112.0
Qt = 5.15.11
カーネル = 6.6.4-MANJARO(64 ビット)

ベストアンサー1

RFC 3986 [1]によると、URIは次のようになります。

URI         = scheme ":" hier-part [ "?" query ] [ "#" fragment ]
hier-part   = "//" authority path-abempty
              / path-absolute
              / path-rootless
              / path-empty
authority   = [ userinfo "@" ] host [ ":" port ]
path-absolute = "/" [ segment-nz *( "/" segment ) ]
path-rootless = segment-nz *( "/" segment )

authorityしたがって、「4241」はデフォルトでホストに解析されます。

基数 10 数字 4241 は基数 16 数字 00001091 に変換され、これは再び 0.0.16.145 にマップされます。

「4241」がパスとして使用される可能性が高いため、単一の「/」(path-absolute)を使用するか、まったく使用しません(path-rootless)。

[1]https://datatracker.ietf.org/doc/html/rfc3986#section-3

おすすめ記事