*flydiff.txt*   on-the-fly diff

Version 0.0.1
Script ID: 2274
Copyright (C) 2008 kana <http://whileimautomaton.net/>
License: MIT license  {{{
    Permission is hereby granted, free of charge, to any person obtaining
    a copy of this software and associated documentation files (the
    "Software"), to deal in the Software without restriction, including
    without limitation the rights to use, copy, modify, merge, publish,
    distribute, sublicense, and/or sell copies of the Software, and to
    permit persons to whom the Software is furnished to do so, subject to
    the following conditions:

    The above copyright notice and this permission notice shall be included
    in all copies or substantial portions of the Software.

    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
    OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
    MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
    IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
    CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
    TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
    SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
}}}

CONTENTS                                        *flydiff-contents*

Introduction            |flydiff-introduction|
Interface               |flydiff-interface|
  Commands                |flydiff-commands|
  Functions               |flydiff-functions|
  Variables               |flydiff-variables|
Bugs                    |flydiff-bugs|
Terms                   |flydiff-terms|
Changelog               |flydiff-changelog|




==============================================================================
INTRODUCTION                                    *flydiff-introduction*

*flydiff* is a Vim plugin to perform on-the-fly diff on the current buffer
with some version control system and show the differences in another buffer.


Requirements:
- Vim 7.1.299 or later
- Ordinary *nix shells such as bash and zsh

Supported version control systems:
- git

Latest version:
http://github.com/kana/config/commits/vim-flydiff

Document in HTML format:
http://kana.github.com/config/vim/flydiff.html




==============================================================================
INTERFACE                                       *flydiff-interface*

------------------------------------------------------------------------------
COMMANDS                                        *flydiff-commands*

                                                *:Flydiff*
:Flydiff [flag]
        Start on-the-fly diff on the current buffer.  If on-the-fly diff is
        already started, it will be stopped.

        If [flag] is "on", start on-the-fly diff.
        If [flag] is "off", stop on-the-fly diff.


------------------------------------------------------------------------------
FUNCTIONS                                       *flydiff-functions*

                                                *flydiff#toggle()*
flydiff#toggle({bufnr}, {state})
        Function version of |:Flydiff|.
        {bufnr} is the number of a buffer to be performed on-the-fly diff.
        {state} is like [flag] for |:Flydiff|:
        - If {state} is "on", start on-the-fly diff.
        - If {state} is "off", stop on-the-fly diff.
        - Otherwise, toggle on-the-fly diff.


------------------------------------------------------------------------------
VARIABLES                                       *flydiff-variables*

                                                *b:flydiff_info*
b:flydiff_info
        The variable to save some information to perform on-the-fly diff.
        Don't touch this variable.

                                                *g:flydiff_direction*
g:flydiff_direction
        Specify the direction to open a window to show on-the-fly diff.
        The value is a string of modifier commands such as |:aboveleft|,
        |:botright| and |:vertical|.

        The default value is "vertical rightbelow".

                                                *g:flydiff_filetype*
g:flydiff_filetype
        Specify the 'filetype' for buffers to show on-the-fly diff.

        The default value is "diff".

                                                *g:flydiff_timing*
g:flydiff_timing
        Specify timings to perform on-the-fly diff.  The value is
        a comma-separated list of strings.  The following values are
        available:

        value          timing ~
        "realtime"      Whenever you don't nothing for a while (see
                        |CursorHold| and |CursorHoldI| for the detail of
                        a timing).
        "written"       Whenever the whole buffer is written to a file (see
                        |BufWritePost| for the detail of a timing).

        The default value is "realtime".




==============================================================================
BUGS                                            *flydiff-bugs*

- There are many bugs around the world.




==============================================================================
TERMS                                           *flydiff-terms*

In this document and the source code of flydiff, the following terms are used:

Diff buffer ~
        A buffer to show a result of on-the-fly diff.

Diff buffer window ~
        A window which shows a diff buffer.

Normal buffer ~
        A buffer which is not a diff buffer.

Normal buffer window ~
        A window which shows a normal buffer.




==============================================================================
CHANGELOG                                       *flydiff-changelog*

0.0.1   2008-06-28T03:46:26+09:00               *flydiff-changelog-0.0.1*
        Fix many minor bugs:
        - Set 'nobuflist' for diff buffers.
        - Change naming style for diff buffers.
        - Don't create diff buffers until they are really necessary.
        - Don't create extra unnamed buffers.
        - Perform on-the-fly diff forcedly for the first time even if a base
          buffer is not modified.
        - Don't show a message by :update while performing on-the-fly diff.
        - Show a message in a diff buffer if there is no difference in the
          corresponding base buffer.
        - Adjust the cursor in a diff buffer to point the line which is
          equivalent to the cursor position in the corresponding base buffer.
          This behavior is useful if there are many differences and they are
          not showed in a diff buffer window at once.
        - Revise some error messages.
        - Revise internal stuffs.

0.0     2008-06-25T21:07:55+09:00               *flydiff-changelog-0.0*
        - Initial version.




==============================================================================
vim:tw=78:ts=8:ft=help:norl:fen:fdl=0:fdm=marker: