On Jan 20, 3:21 pm, Foss User <[email protected]> wrote:
> I want to maintain a journal in a huge file. The format would be
> somewhat like this.
>
> * Jan 21, 2010
>  * 1:45 AM
>    * Posted this mail
>    * Waiting for visitors to come
>   * 5:50 AM
>    * Found a new plugin to browser directories
> * Jan 22, 2010
> .. and so on ...
>
> So, I would want to fold lines, etc. easily depending on the
> indentation hierarchy. Is there any plugin that can do it? Is there
> any vim script to maintain journals, TODO lists, etc.?

Yet another suggestion: use start fold markers with levels.
I created the VOOF plugin exactly for such tasks:
http://www.vim.org/scripts/script.php?script_id=2657

I would fold individual days and use matching fold markers without
levels to fold large entries:

--- Jan 21, 2010 --- {{{1
        1:45 AM
Posted this mail
Waiting for visitors to come

        5:50 AM
Found a new plugin to browser directories

        12:00 AM
Did a lot of stuff: {{{
blah blah blah
bleh bleh bleh
}}}

--- Jan 22, 2010 --- {{{1
        .. and so on ...

Advantages of start fold markers with levels:
1. It's a built-in folding method -- :set fdm=marker
2. Suitable for any 'filetype'. Can outline source code. Indenting
can be used for formatting.
3. Matching fold markers without levels are handy for folding
arbitrary smaller regions.
4. Fast folding. Suitable for MB-sized files with thousands nodes.
As an example, see file calendar_outline.txt in the VOOF
distribution, which I created specifically for stress testing. It's
calendar for years 2009-2019, one node for each day: 3.1MB, 56527
lines, 4160 headlines.

Another poster mentioned problems with retrieval. This is indeed a
serious consideration. My current solution is the command :Voofgrep.
It's like :vimgrep but instead of showing matching lines it shows
matching nodes. Screenshot:
http://www.flickr.com/photos/voof/3821553772/sizes/o/
In a Vim script nodes are mostly functions. So ":Voofgrep some_var"
produces list of functions where some_var is used.

Regards,
Vlad

-- 
You received this message from the "vim_use" maillist.
For more information, visit http://www.vim.org/maillist.php

Reply via email to