! Please note that this is a snapshot of our old Bugzilla server, which is read only since May 29, 2020. Please go to gitlab.xfce.org for our new server !
no way to configure uri schemes handling
Status:
RESOLVED: MOVED
Severity:
enhancement

Comments

Description Jérémy Lal 2010-04-02 10:37:47 CEST
Here's an example that relates the problem :
- chromium-browser uses xdg-open when unknown (magnet:) uri schemes are opened
- xdg-open uses exo-open
- exo-open does not know what to do and launch the web browser...

I don't think it's a bug in chromium : using xdg-open is legitimate,
and one expects xdg-open to call exo-open in xfce (it calls gnome-open in gnome).
It would be very nice exo's handling of uri schemes be configurable,
so one could associate any uri scheme to any desktop rc file, instead of
giving back the responsability to open the right url to the browser.

Regards,
Jérémy.
Comment 1 Christian Dywan 2010-10-24 21:43:50 CEST
There never was a concept of arbitrary URI schemes in Xfce.

There is the x-scheme-handler/foo FreeDesktop.org standard now, which Xfce should support. The first step here is use it for Web Browser and Mail Reader. The second step is to add a page for managing arbitrary schemes.
Comment 2 Vladimir Kudrya 2012-07-28 06:21:34 CEST
I confirm this, currently adding x-scheme-handler/foo=fooapp.desktop to mimeapps.list does not make exo-open open foo:// urls in fooapp.desktop.

Tried to add line to both standard [Added Associations] section of mimeapps.list and non-standard [Default Applications] section, which Thunar uses (which is a bug on its own).
Comment 3 liquider 2014-01-10 13:01:59 CET
Well, in xfce 4.10,

exo-open magnet://?xt=urn:btih:31D...

opens up my preferred torrent manager. But NOT

exo-open magnet:?xt=urn:btih:31D...

which is also a proper URI.

So whoever "fixed" this since the initial report (thank you!), could perhaps have another look at it.
Comment 4 liquider 2014-01-10 13:19:30 CET
I'm not that familiar with Glib at all, but the documentation[1] says g_regex_* functions are Perl-compatible. In this case, the regex:

^([:alpha:][[:alnum:]\.+-]*):(//(([^@/]*@)?(([-[:alnum:]]+(\.[-[:alnum:]]+)*)(:([0-9]+))?))?)?(/?[^?\#]*)(\?[^\#]*)?(\#.*)?

seems to correctly parse URLs[2] with scheme, authority, hostname, port, path, query, and fragment in backreferences \1, \4, \6, \9, \10, \11, and \12. At least in Python. :D


[1]: https://developer.gnome.org/glib/2.37/glib-Perl-compatible-regular-expressions.html
[2]: https://en.wikipedia.org/wiki/URI_scheme#Generic_syntax
Comment 5 liquider 2014-01-10 13:34:35 CET
The RFC-proposed regular expression[1] is a bit simpler, though. -_-

[1]: https://tools.ietf.org/html/rfc3986#appendix-B
Comment 6 Git Bot editbugs 2020-05-25 22:53:01 CEST
-- GitLab Migration Automatic Message --

This bug has been migrated to xfce.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.xfce.org/xfce/exo/-/issues/1.

Please create an account or use an existing account on one of our supported OAuth providers. 

If you want to fork to submit patches and merge requests please continue reading here: https://docs.xfce.org/contribute/dev/git/start#gitlab_forks_and_merge_requests

Also feel free to reach out to us on the mailing list https://mail.xfce.org/mailman/listinfo/xfce4-dev

Bug #6360

Reported by:
Jérémy Lal
Reported on: 2010-04-02
Last modified on: 2020-05-25

People

Assignee:
Nick Schermer
CC List:
7 users

Version

Version:
0.3.106

Attachments

Additional information