sponsor Vim development Vim logo Vim Book Ad

vcscommand.vim : CVS/SVN/SVK integration plugin

 script karma  Rating 1138/375, Downloaded by 16633

created by
Bob Hiestand
 
script type
utility
 
description
VIM 7 plugin useful for manipulating files controlled by CVS, SVN and SVK within VIM, including committing changes and performings diffs using the vimdiff system.  Keywords:  cvs CVS cvscommand subversion SVN svk
 
install details
If you are upgrading from the cvscommand.vim script, remove the cvscommand.vim plugin and the cvscommand.txt help file from your system before installing this version.  Also, read the CHANGES.txt file to learn about changes since cvscommand.vim.

For Vim 7:

  Unzip the installation file.
  Move the vcscommand.vim, vcscvs.vim, and vcssvn.vim scripts into your plugin directory.
  Move the vcscommand.txt file into your doc directory and use the ':helptags' command to add it to your help directory (:help add-local-help).

Optionally, you can move the syntax scripts into your syntax directory to get syntax highlighting of annotate result buffers.

For vim 6.x:

Use a previous version of the script (1.76 of cvscommand.zip).  This only supports CVS.
 

rate this script Life Changing Helpful Unfulfilling 
script versions (upload new version)

Click on the package to download.

package script version date Vim version user release notes
vcscommand.zip beta18 2007-05-15 7.0 Bob Hiestand Added 'VCSCommandDisableMappings' and 'VCSCommandDisableExtensionMappings' options.  If set, these variables prevent creation of the default command key mappings.
vcscommand.zip beta17 2007-05-15 7.0 Bob Hiestand Use 'executable()' to test for VCS tools (to avoid potentially slow operation at plugin load time).

Always pass current revision to VCSAnnotate when using CVS with no arguments.
vcscommand.zip beta16 2007-04-30 7.0 Bob Hiestand VCSLog accepts passthrough options.
VCSDiff correctly checks whether second argument starts with hyphen when deciding whether to pass-through.
vcscommand.zip beta15 2007-04-24 7.0 Bob Hiestand Use 'haslocaldir()' if available to correctly handle windows that used :lcd.

Made VCSDiff pass-through.

Fixed SVK VCSDiff implementation.

Made VCSCommands work a bit better on directory buffers (netrw).

Replaced delayed extension registration to directly loading the main plugin from
extension plugins.  This allows base functions declared in the main plugin to
be used in the extensions.

Fixed SVN diff to actually use 'VCSCommandSVNDiffOpt' option.
vcscommand.zip beta14 2007-04-12 7.0 Bob Hiestand Reincarnated 'CVSAnnotateParent' option for CVS as 'VCSCommandCVSAnnotateParent'.

Close all vcscommand result buffers when vim exits to prevent them from being written to the viminfo file.
vcscommand.zip beta13 2007-03-12 7.0 Bob Hiestand Fixed following commands (broken in Beta 12):
  VCSLock
  VCSRevert
  VCSUnlock
  VCSUpdate
vcscommand.zip beta12 2007-02-28 7.0 Bob Hiestand Added SVK support.

Replaced SVN-specific command SVNInfo with VCSInfo, which is defined for SVK
and SVN.  This is mapped to '<leader>ci' by default; as a consequence, the
default mapping for the CVS-specific CVSEditors command was changed to
'<leader>cE'.

Made VCSAnnotate accept parameters to pass to the underlying VCS.

Made error messages for operations on non-versioned files more consistent.

Added check to disable individual VCS extension plugins.
vcscommand.zip beta11 2007-02-20 7.0 Bob Hiestand Added VCSCommandSVNDiffExt option to allow external diff applications.
Added VCSDelete command.
Added pass-through parameters to VCS Add, Delete, Log, Status, Lock, and Unlock commands (extra parameters to the command are given to the underlying VCS command).
vcscommand.zip Beta10 2006-11-02 7.0 Bob Hiestand Changed file type of commit log buffers to 'commitlog' (from 'commit log') to avoid FileType errors.

Added 'VCSCommandSVNDiffOpt' to pass options to the svn diff -x parameter.
vcscommand.zip Beta9 2006-09-11 7.0 Bob Hiestand Added 'VCSCommandResultBufferNameExtension' option for adding a custom extension to the VCS output buffer names.  This is intended to help users experiencing issues due to autocommands and other settings that depend on buffer name.

Added 'VCSCommandResultBufferNameFunction' option for completely over-riding the procedure for generating the result buffer names.
vcscommand.zip Beta8 2006-08-14 7.0 Bob Hiestand Changed behavior of plugin within Explorer/netrw -style directory buffers.  Commands within such a buffer now act as though invoked on that directory, and so affect all files (and subdirectories), regardless of where the cursor is within the directory buffer.
vcscommand.zip Beta5 2006-08-09 7.0 Bob Hiestand Corrected shortcut help text in commit message buffer.
vcscommand.zip Beta4 2006-08-09 7.0 Bob Hiestand Changed default mappings back to those from cvscommand (starting with
'<Leader>c' instead of '<Leader>v'.  This is to avoid conflict with existing plugins using the '<Leader>v' prefix.  Please note that the mappings can still be overridden by the user using <Plug> mappings.  Please consult the documentation for more information.

Removed special characters other than parentheses from output buffer names.  This is to address buffer name problems on Windows.
vcscommand.zip Beta3 2006-08-04 7.0 Bob Hiestand Initial public release of vcscommand (based on cvscommand) to integrate subversion (SVN) and utilize VIM 7.0 features.
cvscommand.zip 1.76 2006-02-22 6.0 Bob Hiestand Added optional direct specification of log message on :CVSCommit command (to avoid using the log message buffer).  Usage:

:CVSCommit <log message text here>
cvscommand.zip 1.75 2006-02-13 6.0 Bob Hiestand Forced file changed check whenever the original CVS file could have changed, even in split window environments (per Luca Gerli).
cvscommand.zip 1.74 2006-02-06 6.0 Bob Hiestand * Added ability to use CVSCommand functions / hotkeys on directory listing buffers, specifically the file explorer.
* CVSAnnotate:  Previously, if CVSAnnotate was invoked on a CVSAnnotate buffer, the new annotate buffer would go to the version just prior to the one on the current line.  Now, the new buffer uses the version on the current line.  To obtain the old behavior, set CVSCommandAnnotateParent to a non-zero value.  The header lines resulting from the cvs annotate command are now trimmed.  No attempt is made to jump to the 'correct' line in a CVSAnnotate buffer, as it is unlikely to be the correct line anyway.
cvscommand.zip 1.73 2006-01-23 6.0 Bob Hiestand Fixed typo in sample map in documentation per Luca Gerli.
cvscommand.zip 1.72 2006-01-17 6.0 Bob Hiestand Moved version check to after the loaded_cvscommand check.
cvscommand.zip 1.71 2005-11-22 6.0 Bob Hiestand Restored CVSVimDiffFinish user autocommand which executes after a CVSVimDiff
(in order to allow customization of window placement, etc).
cvscommand.zip 1.70 2005-11-10 6.0 Bob Hiestand Fixes bug that resulted in working directory change.

Displays warning to user and will not load if running on VIM earlier than 6.2.
cvscommand.zip 1.68 2005-06-30 6.0 Bob Hiestand Fixed bug with autochdir and CVSCommit.
(Repackaged from previous upload, which had new script in wrong place and old script in right place).du
cvscommand.zip 1.67 2004-09-27 6.0 Bob Hiestand Corrected b:CVSRepository variable for CVSAdd'd files.  This will fix status line display for these files, if the default (cvs) status line is used.
cvscommand.zip 1.66 2004-09-14 6.0 Bob Hiestand Changed maintainer email address.
cvscommand.zip 1.65 2004-08-02 6.0 Bob Hiestand Added instructions for integrating with SSH.

Added CVSCommandCVSExec option to specify cvs executable path.

Added CVSBufferSetup user event.
cvscommand.zip 1.64 2004-05-12 6.0 Bob Hiestand Delete folds created by vimdiff mode in CVSVimDiff if the original window used manual folds, when it is restored.

Always set scrollbind in the result window of a CVSVimDiff in order to combat the effects of splitting windows resetting scrollbind.  Please let me know if this causes anyone trouble.
cvscommand.zip 1.63 2003-07-03 6.0 Bob Hiestand Bugfix release.  Buffers start with 1, not 0.  Switch to the original buffer first before destorying CVS buffers in
CVSGotoOriginal! in order to preserve window layout.
cvscommand.zip 1.62 2003-07-02 6.0 Bob Hiestand Added b:CVSRepository as a standard variable if buffer setup is enabled.

Changed sample status line to display the repository version number if it differs from
the working version number.

Added recursive annotation functionality.

Silenced text puts to set up the CVSCommit buffer.

Added CVSVimDiffFinish event for window placement customization.

Implemented the remove-all-CVS-buffers aspect of CVSGotoOriginal! in a slightly
more sane way.

Added 'foldenable' to the list of restored options for
CVSVimDiff.
cvscommand.zip 1.54 2003-04-28 6.0 Bob Hiestand Added recognition of numerical tags for use as sticky tags.
cvscommand.zip 1.52 2003-04-18 6.0 Bob Hiestand Added the CVSGotoOriginal[!] command and mappings (<Leader>cg and <Leader> cG for with and without '!', respectively).  This command jumps to the source buffer if the current buffer is a CVS output buffer.  The '!' also closes all CVS output buffer for the given source buffer.

If you have questions or remarks about this site, visit the vimonline development pages. Please use this site responsibly.
Questions about Vim should go to vim@vim.org after searching the archive. Help Bram help Uganda.
    stats
Sponsored by Web Concept Group Inc. SourceForge.net Logo