emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [O] Some thoughts on MobileOrg and its development ....


From: Samuel Loury
Subject: Re: [O] Some thoughts on MobileOrg and its development ....
Date: Mon, 18 Aug 2014 09:20:57 +0200
User-agent: Notmuch/0.17 (http://notmuchmail.org) Emacs/24.3.1 (x86_64-pc-linux-gnu)

Xebar Saram <address@hidden> writes:

> would LOVE to try it as well

So would I !

>>> Henning Weiss <address@hidden> writes:
>>>
>>>> I have been working over the last couple of months on a private
>>>> prototype. I'm currently using it in my daily life and it works for me. It
>>>> uses Git (and only Git) for synchronization and doesn't use org-mobile at
>>>> all. The idea is that you keep all org files under git version control.
>>>> Synchronization of all "clients" (apps or Emacs) is done against that
>>>> repository. It is also possible to configure whether to use "ours" or
>>>> "theirs" merge strategy when conflicts occur. I have focused on designing
>>>> an app I can trust.
>>>> It already has an outline view like MobileOrg, an agenda view, you can
>>>> add and edit nodes, synchronize changes with a remote repository and
>>>> synchronize scheduled entries to the calendar. I ported some of my code
>>>> from MobileOrg, but a lot of it is written from scratch.

I only used the android version, but I was not satisfied with its design
either.

I find the org double synchronization scheme (org <-> org mobile inbox
<-> internal phone database) really annoying.

Actually, I have been thinking about how to use my org file with my
phone and the way I found the more practical was to synchronize the
files with my phone using git (git annex actually) and using emacs in a
debian chrooted environment.

With the constantly evolving org-mode code in emacs-lisp, I don't think
a re-implementation would survive.

Besides, emacs-lisp allows to customize pretty everything, so much that
two org-mode setup may easily be made barely compatible with each
other. See the setup of Bernt Hansen for instance that is the most
advanced I have seen so far⁴.

An other point of the evolving characteristic of org is the lack of
definition of what the org-mode grammar is. Without this, it is most
likely that someday, both emacs org-mode and mobile org will diverge at
some point. There has been a very good draft of org mode syntax¹ made by
Nicolas Goaziou. May be this could be the basis of a new
implementation, but it should be worked on to be considered stable and
used as a reference for future implementations.

Those are the reasons why I am not convinced that a new implementation
would work and one of the main reasons each time I wanted to contribute
to mobileorg-android, I was stopped by the feeling that it would be a
useless effort (and the lack of time of course :-)).

Therefore, I wonder if we could let emacs implementation do all the
heavy stuff and customization, and only provide a mobile UI on top of
it.

Emacs could be accessed remotely or be run into the phone. In my Galaxy
S3 with chrooted debian, emacs runs fast enough for my user experience
not to be disturbed.

I have tried the excellent org-ehtml² from Eric Schulte. It already
allows to make basic edition of TODO entries and view the agenda views
(only the basic org-agenda export to html for new). The main problem I
see with this html/js view is that we often encounter strange issues due
to bad browser implementations.

I have been using the XML-RPC trac plugin³ for a while now and I made we
wonder if we could reproduce this in the scope of mobile org. With an
RPC interface, one would be free to create their own interface easily
(at least python xml-rpc library is really easy to manipulate) and an
official interface could emerge from that.

The interface could provide functions like:
--8<---------------cut here---------------start------------->8---
getAgendaFiles() -> list of files names
getTODOsFromFile(file) -> list of todos
getAllTODOs() -> list of todos
getAgendaViews() -> list of names
getAgendaView(name) -> list of todos ?
clockIn(id)
clockOut(id)
refile(id, parent_id)
getKeywords() -> list of keywords
setKeyword(id, keyword)
...
--8<---------------cut here---------------end--------------->8---
I don't know if those functions would be good, but they give an idea.

¹ http://orgmode.org/worg/dev/org-syntax.html
² https://github.com/eschulte/org-ehtml
³ http://trac-hacks.org/wiki/XmlRpcPluginhttp://doc.norang.ca/org-mode.html
--
Konubinix
GPG Key    : 7439106A
Fingerprint: 5993 BE7A DA65 E2D9 06CE  5C36 75D2 3CED 7439 106A

Attachment: pgpCIIUsFo8OI.pgp
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]