Freedesktop
使用 Mozilla 遠端協議使用 xdg-open 打開 URL
舊版本的 Netscape 和 Mozilla(用於 X11)支持所謂的遠端協議:只要 Netscape/Mozilla 視窗(不一定來自本地程序)在目前
DISPLAY
.“遠端”功能以任何一種方式工作:從遠端客戶端到本地瀏覽器,反之亦然,甚至從遠端
host1
到遠端host2
,只要兩者都可以連接到本地DISPLAY
。這是以下文件:
SeaMonkey中也保留了對遠端請求的基本支持,因此即使在今天它也支持像
openURL(%url%,new-tab)
和openURL(%url%,new-window)
現在,我想創建一個自定義
*desktop
文件,該文件將使用這些參數啟動SeaMonkey。問題是,以這種形式:
[Desktop Entry] Exec=seamonkey %u
%u
擴展工作,而在這個:[Desktop Entry] Exec=seamonkey -remote openURL(%u)
它不會:僅當它被空格包圍時
%u
才會擴展。桌麵條目規範沒有提到這一點,因此這既是未記錄的行為,也是意外的行為。
你能建議任何解決方法嗎?
我不能對規範說任何話,但就結果而言,我(雖然不熟悉此類文件中的引用)希望這能起作用:
Exec=bash -c 'echo seamonkey openURL"($1)"' seamonkey-wrapper %u%
我最近剛遇到這個問題,並且有一個規範。這裡
如果
%
是用於應用程序,則需要將%%
. 那是為了將來,在為 youtube-dl 創建 .desktop 文件並使用該--output
選項時。在您的情況下,您可能需要避開大括號。\(\)
,因為外殼會評估它們。設置選項terminal=true
,你會看到關於/at的錯誤(
。或嘗試:
seamonkey 'openURL(%u)'
seamonkey "openurl\$'0028'%u\$'0029'"
謹防!我曾經在
'
, while"
工作時遇到問題。但僅'
表示字面意思,沒有任何解釋/擴展。IIRC,您不需要引用變數,因為它已經被引用了。