emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
* streamlined capture on iphone
@ 2016-02-24 22:59 Skip Collins
  2016-02-25 13:16 ` Giacomo M
                   ` (5 more replies)
  0 siblings, 6 replies; 9+ messages in thread
From: Skip Collins @ 2016-02-24 22:59 UTC (permalink / raw)
  To: emacs-org list

MobileOrg on the iPhone is not very useful to me. As many people do, I
use my iPhone as a way to capture input on the go, usually in the form
of short text snippets or notes. One thing that has made this work
better for me is a streamlined process for getting the text into Org
via org-feed. My preferred iOS text editor is Drafts 4 ($10) because
it allows custom actions to be performed in a single tap. I have one
action in Drafts that emails the current note to my gmail account. Any
iOS editor that can share notes via email will work. But Drafts is
particularly convenient because the customized action takes care of
addressing and sending the message with one tap.

Using a filter, gmail applies the label "capture" to each note sent
from Drafts. The magic happens through a Google script that I found,
modified, and adapted that takes all messages with a specific label in
Gmail and turns them into an Atom feed. The script runs on Google's
servers, constantly scanning for new messages with the "capture"
label. The resulting Atom feed is served up by Google via a URL
(non-secure, but quite obscure) that I use with org-feed. My Org is
set up to check the feed for new posts every 5 minutes or so, grab
them and put them as headlines into capture.org. When I start up Org,
I tag and refile new items from capture.org into an appropriate file
such as actions.org or projects.org. This workflow automates the whole
capture process as much as possible.

If anyone is interested in the Drafts action, Gmail filter, Google
script, and org-feed configuration that make this work, I would be
happy to share. This setup can easily be adapted for Android phones.

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: streamlined capture on iphone
  2016-02-24 22:59 streamlined capture on iphone Skip Collins
@ 2016-02-25 13:16 ` Giacomo M
  2016-02-25 13:24   ` Xebar Saram
  2016-02-25 16:32 ` John Rakestraw
                   ` (4 subsequent siblings)
  5 siblings, 1 reply; 9+ messages in thread
From: Giacomo M @ 2016-02-25 13:16 UTC (permalink / raw)
  To: emacs-orgmode

On 2/24/2016 11:59 PM, Skip Collins wrote:
> If anyone is interested in the Drafts action, Gmail filter, Google
> script, and org-feed configuration that make this work, I would be
> happy to share. This setup can easily be adapted for Android phones.

Android user here, and I would be very interested!
Thanks

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: streamlined capture on iphone
  2016-02-25 13:16 ` Giacomo M
@ 2016-02-25 13:24   ` Xebar Saram
  0 siblings, 0 replies; 9+ messages in thread
From: Xebar Saram @ 2016-02-25 13:24 UTC (permalink / raw)
  To: Giacomo M; +Cc: org mode

[-- Attachment #1: Type: text/plain, Size: 460 bytes --]

another android user very interested in this :D

thx

Z

On Thu, Feb 25, 2016 at 3:16 PM, Giacomo M <jackjackk@gmail.com> wrote:

> On 2/24/2016 11:59 PM, Skip Collins wrote:
>
>> If anyone is interested in the Drafts action, Gmail filter, Google
>> script, and org-feed configuration that make this work, I would be
>> happy to share. This setup can easily be adapted for Android phones.
>>
>
> Android user here, and I would be very interested!
> Thanks
>
>

[-- Attachment #2: Type: text/html, Size: 959 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: streamlined capture on iphone
  2016-02-24 22:59 streamlined capture on iphone Skip Collins
  2016-02-25 13:16 ` Giacomo M
@ 2016-02-25 16:32 ` John Rakestraw
  2016-02-25 18:14 ` Eric S Fraga
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 9+ messages in thread
From: John Rakestraw @ 2016-02-25 16:32 UTC (permalink / raw)
  To: Skip Collins; +Cc: emacs-org list

Hi, Skip —

On 24 Feb 2016, at 17:59, Skip Collins wrote:

> If anyone is interested in the Drafts action, Gmail filter, Google
> script, and org-feed configuration that make this work, I would be
> happy to share. This setup can easily be adapted for Android phones.

I’m an iphone (and Drafts) user interested in more details about your 
set-up.

Thanks —

John

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: streamlined capture on iphone
  2016-02-24 22:59 streamlined capture on iphone Skip Collins
  2016-02-25 13:16 ` Giacomo M
  2016-02-25 16:32 ` John Rakestraw
@ 2016-02-25 18:14 ` Eric S Fraga
  2016-02-26 11:22 ` Martin Yrjölä
                   ` (2 subsequent siblings)
  5 siblings, 0 replies; 9+ messages in thread
From: Eric S Fraga @ 2016-02-25 18:14 UTC (permalink / raw)
  To: Skip Collins; +Cc: emacs-org list

On Wednesday, 24 Feb 2016 at 17:59, Skip Collins wrote:

[...]

> If anyone is interested in the Drafts action, Gmail filter, Google
> script, and org-feed configuration that make this work, I would be
> happy to share. This setup can easily be adapted for Android phones.

Please do share.  Although my Android phone is currently defunct [1] and
I'm back to using my trusty Nokia N900 [2], a similar workflow may be
possible in the latter so the filter and script will be useful.  

Thanks,
eric


Footnotes: 
[1]  which means I cannot use MobileOrg...

[2]  which *does* run Emacs properly with org!  Albeit slowly.

-- 
: Eric S Fraga (0xFFFCF67D), Emacs 25.0.91.1, Org release_8.3.3-619-gca1fb8

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: streamlined capture on iphone
  2016-02-24 22:59 streamlined capture on iphone Skip Collins
                   ` (2 preceding siblings ...)
  2016-02-25 18:14 ` Eric S Fraga
@ 2016-02-26 11:22 ` Martin Yrjölä
  2016-02-26 12:20 ` Ken Mankoff
  2016-02-29 16:51 ` Skip Collins
  5 siblings, 0 replies; 9+ messages in thread
From: Martin Yrjölä @ 2016-02-26 11:22 UTC (permalink / raw)
  To: Skip Collins; +Cc: emacs-org list


Hi Skip!

Skip Collins <skip.collins@gmail.com> writes:

> MobileOrg on the iPhone is not very useful to me. As many people do, I
> use my iPhone as a way to capture input on the go, usually in the form
> of short text snippets or notes.

I'm feeling the same way and I have been searching for a better process.

> If anyone is interested in the Drafts action, Gmail filter, Google
> script, and org-feed configuration that make this work, I would be
> happy to share. This setup can easily be adapted for Android phones.

Yes please! I'm definitely interested in trying your setup.

Best regards,
Martin Yrjölä

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: streamlined capture on iphone
  2016-02-24 22:59 streamlined capture on iphone Skip Collins
                   ` (3 preceding siblings ...)
  2016-02-26 11:22 ` Martin Yrjölä
@ 2016-02-26 12:20 ` Ken Mankoff
  2016-02-29 17:08   ` Skip Collins
  2016-02-29 16:51 ` Skip Collins
  5 siblings, 1 reply; 9+ messages in thread
From: Ken Mankoff @ 2016-02-26 12:20 UTC (permalink / raw)
  To: Skip Collins; +Cc: emacs-org list


On 2016-02-24 at 17:59, Skip Collins <skip.collins@gmail.com> wrote:
> MobileOrg on the iPhone is not very useful to me. As many people do, I
> use my iPhone as a way to capture input on the go, usually in the form
> of short text snippets or notes. One thing that has made this work
> better for me is a streamlined process...


I'm confused. The remainder of your description of your process does not seem very streamlined and has a lot steps through 3rd parties. I use only MobileOrg and can capture to my desktop by tapping only a 5 buttons:

1) The app icon, 2) enter text (or tap the mic button and speak), 3) Done 4) Outline Mode 5) Sync.

My Desktop then automatically updates w/o 5 minute delay. Captured notes are tagged as REFILE and show up in a section of the Agenda that only shows up if there are things that need to be refiled. There are no need for external scripts and the only 3rd party service is DropBox.

I'm happy to see there are alternatives, and ones that work for Android, but for iPhone users I think there might be simpler setups than your original description.

I've shared my config before, but am happy to do so again.


Alternatively, I have a workflow that lets me do the hands-free "Hey Siri..." and just speak at my phone, and things automatically show up on my laptop Org agenda, again in the REFILE section that only shows up when there are items. The scripts for that workflow are not robust, but the outline/concept and starter scripts can be found here: https://lists.gnu.org/archive/html/emacs-orgmode/2015-05/msg00556.html The first workflow described, using MobileOrg, is robust.

  -k.
  

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: streamlined capture on iphone
  2016-02-24 22:59 streamlined capture on iphone Skip Collins
                   ` (4 preceding siblings ...)
  2016-02-26 12:20 ` Ken Mankoff
@ 2016-02-29 16:51 ` Skip Collins
  5 siblings, 0 replies; 9+ messages in thread
From: Skip Collins @ 2016-02-29 16:51 UTC (permalink / raw)
  To: emacs-org list
  Cc: Xebar Saram, Martin Yrjölä, Giacomo M, Mike McLean

[-- Attachment #1: Type: text/plain, Size: 5948 bytes --]

This describes a system to efficiently capture Org input on a smart phone,
with an emphasis on iOS. The nice thing about this approach is that it only
requires things that you likely already have: your smart phone, your Google
account, and Org. While not required, a text editing app on your
iOS/Android phone that streamlines the email process is very nice to have
too. However, any email app that supports templates might be another way to
make the process very quick. Note that this is a one-way path from phone to
Org. It does not enable two-way syncing or editing existing Org content.
The process is lightly tested and quite fragile. On the positive side, it
can be customized in many ways to better fit your needs.

If using Drafts 4 on iOS, import the Org Email
<https://drafts4-actions.agiletortoise.com/a/1hp> action by opening this
link on your device. Tap the button to install the action. Open the list of
actions in Drafts (top right), swipe right on the Org Email action, and tap
on the Edit (pen) icon. Replace my.address+capture@gmail.com with your
actual gmail address, appending “+capture” to the username as shown in the
original. The action sends the current note in the background to your gmail
account using Mail.app and then deletes the note from Drafts. Mail.app must
be connected to your email account for this to work.

The fastest way to trigger this action is via a keyboard shortcut
<https://drafts4-actions.agiletortoise.com/k/1hq> which can be installed by
opening the link on your iOS device. Again, tap the install button. It
places a small button labeled “O” (for Org) on the far left of the row of
shortcuts displayed between the keyboard and the text editing area.

From your desktop browser, Add “capture” to the list of available labels in
gmail. On the same computer, create a new file called
org-capture-gmail-filter.xml with the following content, replacing the
email address with your actual gmail address, with “+capture” appended as
above:

<?xml version='1.0' encoding='UTF-8'?><feed
xmlns='http://www.w3.org/2005/Atom'
xmlns:apps='http://schemas.google.com/apps/2006'>
<title>Mail Filters</title>
<id>tag:mail.google.com,2008:filters:1455750924353</id>
<updated>2016-02-25T22:55:06Z</updated>
<entry>
  <category term='filter'></category>
  <title>Mail Filter</title>
  <id>tag:mail.google.com,2008:filter:1455750924353</id>
  <updated>2016-02-25T22:55:06Z</updated>
  <content></content>
  <apps:property name='to' value='my.address+capture@gmail.com'/>
  <apps:property name='label' value='capture'/>
  <apps:property name='shouldArchive' value='true'/>
  <apps:property name='shouldNeverSpam' value='true'/>
  <apps:property name='sizeOperator' value='s_sl'/>
  <apps:property name='sizeUnit' value='s_smb'/>
</entry>
</feed>

Open the gmail filter settings page in your browser. Using the button at
the bottom of the page, upload org-capture-gmail-filter.xml. Now, when
gmail receives a message sent to the special address that includes
“+capture”, it triggers a filter that applies the “capture” label and moves
the message out of the Inbox.

Once messages are appropriately labeled, the The Google Apps script Gmail
Capture for Org
<https://script.google.com/d/12jCYKYzJRKFrOqTVGXAv16MdU3--fAOrYQpjB7LXA8yC-ave7Ffmo4RK/edit?usp=sharing>
generates
a plain text Atom feed from the subject lines and bodies of the messages.
Click the link to open the script in your desktop browser. Follow these
steps to set up the script for your Google account:

   1. File > Make a copy of this script.
   2. Run > setup IMPORTANT: when authenticating use the gmail account you
   want to create feeds for.
   3. File > Manage versions… and create an initial name and ’Save New
   Version’.
   4. Publish > Deploy as web app… and select ’Execute the app as: me’ and
   allow anyone access even anonymously.
   5. Open (and bookmark) the ’current web app url’ to create an atom feed
   for the capture gmail label.
   6. Select the “capture” label from the drop-down menu. Click Preview.
   Click Add.
   7. Copy the resulting RSS (really Atom) feed link under Feed Library in
   the web app page

The feed link needs to be added to org-feed to complete the setup. Add the
following lines near the top of .emacs:

(require 'org-feed);; Uncomment the following line if you want to
check your feeds ;; every 10 minutes when Emacs is running.;;
(run-at-time 10 600 'org-feed-update-all)
(defadvice org-feed-parse-atom-entry (after
org-feed-parse-atom-entry-summary activate)
  ;; Add <summary/> as :summary.
  (let* ((entry (ad-get-arg 0))
         (xml (car (read-from-string
                    (plist-get entry :item-full-text)))))
    (setq entry (plist-put entry :summary
                           (xml-substitute-special
                            (car (xml-node-children
                                  (car (xml-get-children xml
'summary))))))) entry))

The customize interface for Org Feed can be used to add the feed
information, resulting in something that looks like:

  '(org-feed-alist
     (quote
     (("Gmail Capture"
       "https://script.google.com/macros/s/Tr5GHsidf8gjslTsdY69SDFjgslierjg73swnvFslkjYhUR69KdhjI8k/exec?feedId=35f1c893-ba1d-6108-bc8d-19e09017fe8a"
       "capture.org"
       "Gmail Capture"
       :parse-entry org-feed-parse-atom-entry
       :parse-feed org-feed-parse-atom-feed))))
  '(org-feed-default-template "* %h     %U     %summary")

Replace the long URL with the RSS link copied from the web app. Replace
capture.org with whatever file you wish to receive new items. Replace the
final “Gmail Capture” with whatever headline the new items should be placed
under. Restart Emacs.

Now, whenever you execute org-feed-update-all (C-c C-x g), it will retrieve
new content from your custom Atom feed.

[-- Attachment #2: Type: text/html, Size: 13545 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: streamlined capture on iphone
  2016-02-26 12:20 ` Ken Mankoff
@ 2016-02-29 17:08   ` Skip Collins
  0 siblings, 0 replies; 9+ messages in thread
From: Skip Collins @ 2016-02-29 17:08 UTC (permalink / raw)
  To: emacs-org list; +Cc: Ken Mankoff

Ken Mankoff <mankoff@gmail.com> wrote:
> I use only MobileOrg and can capture to my desktop by tapping only
> a 5 buttons:
> 1) The app icon, 2) enter text (or tap the mic button and speak),
> 3) Done 4) Outline Mode 5) Sync.
>
> My Desktop then automatically updates w/o 5 minute delay.
> Captured notes are tagged as REFILE and show up in a section of the
> Agenda that only shows up if there are things that need to be refiled.
> There are no need for external scripts and the only 3rd party service
> is DropBox.

My system requires 3 steps:
1) Open Drafts, 2) enter text, 3) tap one button on the screen

My desktop automatically updates. Captured notes are tagged as REFILE,
just like yours. No Dropbox required, only a Google account. The
script runs on Google's servers.

> Alternatively, I have a workflow that lets me do the hands-free
> "Hey Siri..." and just speak at my phone,

Drafts can automatically sync with iOS Reminders, so I can get close
to the same functionality. In order for Siri-captured reminders to
appear in Org, I do have to open Drafts and tap the button to trigger
the email.

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2016-02-29 17:08 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-02-24 22:59 streamlined capture on iphone Skip Collins
2016-02-25 13:16 ` Giacomo M
2016-02-25 13:24   ` Xebar Saram
2016-02-25 16:32 ` John Rakestraw
2016-02-25 18:14 ` Eric S Fraga
2016-02-26 11:22 ` Martin Yrjölä
2016-02-26 12:20 ` Ken Mankoff
2016-02-29 17:08   ` Skip Collins
2016-02-29 16:51 ` Skip Collins

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).