1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83
|
Hoisting
What is it?
: Hoisting is a way to focus on a particular area of an outline. Only the
: offspring from a selected parent will be shown. The offspring are
: left-justified just as if they were the top level headings and had no
: parent.
Installation
Get the newest, possibly unstable vo_hoist.vim
CVS server: :pserver:anonymous@red.noels-lab.com:2401/usr/local/cvsroot
: no password is required
Web: http://red.noels-lab.com/cgi-bin/cvsweb.cgi/
VimOutliner mailing list
Put it where you put your other experimental vim scrips
perhaps this is ~/.vimoutliner/
Add this line to your ~/.vimoutlinerrc
so <pathtoscripts>/vo_hoist.vim
Optionally set the hoistParanoia variable
: If you are really paranoid about loosing your data during shakedown
: of vo_hoist.vim, you can add this to your ~/.vimoutlinerrc file. It
: will prevent VO from automatically removing the temporary hoist
: files. This will have a tendency to hugely increase the number of
: files in your working directory (but if you're paranoid... ;) )
let g:hoistParanoia = 1
How do I use it?
Hoisting
: Whenever you open a VO document, hoisting will be available.
Invocation
Place the cursor on the parent to be hoisted
,,h
You will need to hit <ENTER> to accept some informational messages
You should now see the children of the selected parent ready for editing
Treat this document just like a normal .otl file
De-hoisting
: From within the hoisted document you simply need to quit. The
: hoisted data will be saved in place of the old children. The cursor
: will be returned to the hoisted parent.
Invocation
The :q, :wq, :x and ZZ perform a de-hoist operation
A write will automatically be done to save any changes
Manual De-hoisting
: Should the de-hoisting ever fail or should an operator quit Vim (by
: closing the window with the mouse, say), a manual de-hoisting will
: need to be performed.
You can find a currently hoisted parent by searching for __hoist
Place the cursor on the parent with the __hoist tag
,,H
The edited, hoisted offspring will replace the current offspring
The __hoist tag will be removed
The Hoist Tag
Example Tag
: The hoist tag is added to a hoisted parent for error recovery. It
: includes a filename, a line number and a timestamp.
Example Tag
__hoist:vo_hoist.46.20030816124249.otl
Tag Components
Tag Marker
__hoist:
Easy search and replace
Filename Prefix
vo_hoist.
Needed to comply with VO standards for file naming
Parent Line Number (at time of hoisting)
46.
Timestamp
20030816124249
YYYYMMDDhhmmss
Filename Suffix
.otl
Duh
The Log Files
: Log files of the hoists are created to aid in error recovery should that
: become necessary. They are created in the same directory as the working
: .otl file.
Log Filename
.vo_hoist.<otlfilename>.log
Example Log Filename
.vo_hoist.test.otl.log
Contents
There is one line per hoist operation
Each is comprised of a parent with a __hoist tag
Limitations
1 Level Deep
: Until debug is complete, hoisting is limited to one level.
|