! xdg-open <url> öffnet die Website nicht in meinem Standardbrowser </url>

1071
Maxim Kim

Ich verwende gvim 7.3.401 auf Archlinux. Der Shell-Befehl :!xdg-open http://www.vim.orgöffnet meinen Standardbrowser nicht mit diesem Link. In der Tat scheint es nichts zu tun.

Dies funktioniert erwartungsgemäß im Terminal vim

Wie kann ich es auch in gvim funktionieren lassen?

6
Beide funktionieren für mich auf einem Fedora 11-System gut, indem sie beide diese URL in Konqueror öffnen, obwohl sie eine Fehlermeldung wie diese ausgeben: "(25702) / ClientApp :: doIt: ClientApp erstellen ". Möglicherweise unterscheiden sich Ihre Umgebungen zwischen vim und gvim. Versuchen Sie":! Env> gvim_env "in gvim und":! Env> vim_env "in vim und dann in der Shell auszuführen. vimdiff gvim_env vim_env ", um die Unterschiede zu sehen. Möglicherweise müssen Sie diese Dateien auch sortieren, damit der Unterschied sinnvoll ist. garyjohn vor 12 Jahren 0
Der einzige Unterschied ist, dass vim_env TERM = xterm hat, gvim_env TERM = dumm Maxim Kim vor 12 Jahren 0
Es funktioniert auf meiner Debian-Squeeze-Box mit gnome2, aber nicht auf meinem Laptop mit archlinux und gnome3 Maxim Kim vor 12 Jahren 0
Ich fürchte, ich bin dann verblüfft. Entschuldigung, ich konnte nicht helfen. garyjohn vor 12 Jahren 0

2 Antworten auf die Frage

8
sappjw

Versuchen :!xdg-open http://www.vim.org &

Ich hatte das gleiche Problem, bis ich gesehen habe, wie LaTeX-Box es tut.

Ich hatte hier ein ähnliches Problem: http://stackoverflow.com/q/15880689/152439. Da Ihre Antwort mir geholfen hat, können Sie meine Frage gerne beantworten, und ich akzeptiere sie. andreas-h vor 11 Jahren 1
Kann jemand erklären, warum das funktioniert und das Original nicht? Ciro Santilli 新疆改造中心 六四事件 法轮功 vor 9 Jahren 0
2
derenio

Das Problem hierbei ist, dass gvimfür jeden Befehl ein neues Dummy-Terminal erzeugt wird, das nach der Rückkehr des Befehls offensichtlich abgetötet wird. Also die:

:!xdg-open http://www.vim.org

kehrt sofort zurück und anscheinend (*) wird der xdg-openinterne asynchrone Aufruf von Xbeendet, während der Aufruf in den Hintergrund geht (wie von sappjw vorgeschlagen ):

:!xdg-open http://www.vim.org &

(*) - Bitte korrigiere mich wenn ich falsch liege

Ihre Theorie scheint richtig zu sein, da::! Xdg-open http://www.vim.org; sleep 2` funktioniert auch. Ciro Santilli 新疆改造中心 六四事件 法轮功 vor 8 Jahren 0