I'm an avid OmniFocus user and I've been thinking about trying org-mode.

The conversion tool on Worg [1] was inadequate because it didn't
capture whether the repetition in tasks and it didn't handle the notes
field properly for me. I've written a new tool that works directly on
the XML database behind OmniFocus. I specifically ignored completed
tasks, whether something was flagged, and durations, because I don't
use those so I couldn't test them. It is written in Racket [2] and
available here:

https://github.com/jeapostrophe/exp/blob/master/of2org.rkt

However, once I converted my 1.6M OmniFocus database, I got a 252K
org-mode file. Opening this file in org-mode is unbearable. For
example, pressing up after opening the document (and having the cursor
at the end of the buffer) takes 5 seconds to select the last item.
Pressing up again takes 6 seconds. Almost every trivial browsing
operation like this takes 5 seconds. (Except expanding the notes
fields once a sub-tree has been revealed. That's instant.) Finally,
the killer. If I select the last top-level heading and press M-up,
Emacs crashes.  A section of the stack trace is at the end of this
email.

I'm happy to send my org-mode file to a developer to try out, but I
don't want to post it online. FWIW, the file is 6738 lines long and
the final heading starts on line 2632, so M-up is moving a significant
number of lines.

I updated to the latest git version of org-mode to see if anything was
faster, but it wasn't.

I find org-mode theoretically appealing, but as it stands, I can't use
it because it isn't scalable enough. Are there any techniques to
getting around this lack of scalability? I'd appreciated any advice.

Best,

Jay

1. https://bitbucket.org/legoscia/of2org/src
2. http://racket-lang.org/

-- The stack trace --

Process:         Emacs [5146]
Path:            /Users/USER/*/Emacs.app/Contents/MacOS/Emacs
Identifier:      org.gnu.Emacs
Version:         Version 23.3 (9.0)
Code Type:       X86-64 (Native)
Parent Process:  launchd [176]

Date/Time:       2011-08-05 09:36:46.341 -0600
OS Version:      Mac OS X 10.7 (11A511)
Report Version:  9

Interval Since Last Report:          201400 sec
Crashes Since Last Report:           5
Per-App Interval Since Last Report:  231997 sec
Per-App Crashes Since Last Report:   2
Anonymous UUID:                      91A4D920-5BEC-4689-B878-21946C6D436B

Crashed Thread:  0  Dispatch queue: com.apple.main-thread

Exception Type:  EXC_BAD_ACCESS (SIGABRT)
Exception Codes: KERN_INVALID_ADDRESS at 0x00007fff5fc00000

VM Regions Near 0x7fff5fc00000:
    Stack                  00007fff5f400000-00007fff5fc00000 [ 8192K]
rw-/rwx SM=COW  thread 0
-->
    __TEXT                 00007fff61e0e000-00007fff61e43000 [  212K]
r-x/rwx SM=COW  /usr/lib/dyld

Application Specific Information:
objc[5146]: garbage collection is OFF
abort() called

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   libsystem_kernel.dylib              0x00007fff867cd82a __kill + 10
1   org.gnu.Emacs                       0x00000001000901ae fatal_error_signal + 
286
2   libsystem_c.dylib                   0x00007fff84905cfa _sigtramp + 26
3   libsystem_kernel.dylib              0x00007fff867cdce2 __pthread_kill + 10
4   libsystem_c.dylib                   0x00007fff848b37d2 pthread_kill + 95
5   libsystem_c.dylib                   0x00007fff848a4a7a abort + 143
6   org.gnu.Emacs                       0x000000010016f31c ns_term_shutdown + 44
7   org.gnu.Emacs                       0x00000001000901e4 fatal_error_signal + 
340
8   libsystem_c.dylib                   0x00007fff84905cfa _sigtramp + 26
9   org.gnu.Emacs                       0x00000001000281a0 handle_face_prop + 
256
10  org.gnu.Emacs                       0x0000000100028b0f handle_stop + 127
11  org.gnu.Emacs                       0x000000010002e3b1
next_element_from_string + 273
12  org.gnu.Emacs                       0x000000010002b2a1
get_next_display_element + 81
13  org.gnu.Emacs                       0x000000010002c6e5
move_it_in_display_line_to + 245
14  org.gnu.Emacs                       0x000000010002db9e move_it_to + 302
15  org.gnu.Emacs                       0x00000001000393c1 move_it_vertically + 
65
16  org.gnu.Emacs                       0x000000010004ef95 Fwindow_end + 325
17  org.gnu.Emacs                       0x00000001001093f1 Ffuncall + 1201
18  org.gnu.Emacs                       0x00000001001463be Fbyte_code + 6814
19  org.gnu.Emacs                       0x0000000100108e9c funcall_lambda + 588
20  org.gnu.Emacs                       0x0000000100109192 Ffuncall + 594
21  org.gnu.Emacs                       0x000000010010aade call1 + 30

-- 
Jay McCarthy <j...@cs.byu.edu>
Assistant Professor / Brigham Young University
http://faculty.cs.byu.edu/~jay

"The glory of God is Intelligence" - D&C 93

Reply via email to