Home
Reading
Searching
Subscribe
Sponsors
Statistics
Posting
Contact
Spam
Lists
Links
About
Hosting
Filtering
Features Download
Marketing
Archives
FAQ
Blog
 
Gmane
From: =?UTF-8?Q?Mattias_J=C3=A4mting?= <mattias <at> jwd.se>
Subject: Re: Org-protocol / Chrome on Linux
Newsgroups: gmane.emacs.orgmode
Date: Wednesday 24th November 2010 23:23:43 UTC (over 7 years ago)
Hello again,

For reference, this is how i finally got org-protocol to work in
chrome on ubuntu 10.10:

The problem was that chrome was running xdg-open for handling external
protocols. xdg-open, or it's companion gvfs-open, couldn't parse the
rather complex URL which the org-capture bookmarklet generated.

So i realized that xdg-open is just a shell-script so  then i modified
the function open-gnome() in it like this:

open_gnome()
{
    # Handle org-protocol
    if (echo "$1" | grep -q '^org-protocol://'); then
	emacsclient "$1"
    else	
        # This is the standard way...
        if gvfs-open --help 2>/dev/null 1>&2; then
            gvfs-open "$1"
    	else
            gnome-open "$1"
        fi
    fi
    ...
}

Suddenly all works. Remember to back-up xdg-open if you want to try this.

Mattias

2010/9/30 Sebastian Rose :
> Sebastian Rose  writes:
>> Mattias Jämting  writes:
>>> Yes i'm running a pretty standard Ubuntu 10.04 setup.
>>>
>>> I managed to get it working on chrome by removing the
>>> encodeURIComponent command on location.href.
>>>
>>> I could simulate it in the terminal like this.
>>>
>>> [email protected]:~$ xdg-open org-protocol://capture://http%3A%2F%2Forgmode.org
>>> Error showing URL: Operation not supported
>>> [email protected]:~$ xdg-open org-protocol://capture://http://orgmode.org
>>> [email protected]:~$ (worked)
>>>
>>> Strange that it worked in FF. Maybe Chrome and FF encodes URIs
differently?
>>
>>
>> Ooops!
>>
>> I just was going to blame Google.
>>
>> Looking into the ECMA standard, I found this:
>>
>> 15.1.3 URI Handling Function Properties
>>
>>        ... ...
>>
>>        A URI is composed of a sequence of components separated by
>>        component separators. The general form
>>        is:
>>                  Scheme : First / Second ; Third ? Fourth
>>
>>        where the italicised names represent components and the
“:”, “/”,
>>        “;” and “?” are reserved characters used as
separators. The
>>        encodeURI and decodeURI functions are intended to work with
>>        complete URIs; they assume that any reserved characters in
the
>>        URI are intended to have special meaning and so are not
>>        encoded. The encodeURIComponent and decodeURIComponent
functions
>>        are intended to work with the individual component parts of a
>>        URI; they assume that any reserved characters represent text
and
>>        so must be encoded so that they are not interpreted as
reserved
>>        characters when the component is part of a complete URI.
>>
>>
>> That document states "encodeURI" is to be used with complete URIs (as
>> the name says...).  Funny.  Chrome is the only browser that works like
>> that :)
>>
>> I'll go and adjust the docs.
>>
>>
>> Thanks for your Report!!
>>
>
>
>
> Actually --- errr --- there is nothing to adjust.  The docs are exactly
> right.
>
> This is because of some örfflkjsgs in xdg-open.
>
> No one ever said something about xdg-open.  Org-protocol is supposed to
> work with emacsclient:
>
> [email protected]:~$ emacsclient org-protocol://capture://http%3A%2F%2Forgmode.org
>
>
> works.
>
>
>  Sebastian
>
>



-- 

 Mattias Jämting   www.jwd.se | [email protected] | 070-6760182
  Internet, Coding, Design, Usablility - since 1998

_______________________________________________
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
[email protected]
http://lists.gnu.org/mailman/listinfo/emacs-orgmode
 
CD: 10ms