created by |
Yongwei Wu |
|
script type |
utility |
|
description |
Supports most cvs commands and adds some extended functions. It also works with CVSNT quite well and has some support for multiple encodings. Part of the top-level menus are as follows (screen shot: http://wyw.dcweb.cn/download.asp?path=vim&file=vim_session.png):
- Info
- Setting (switches and update)
- Keyword
- Directory (directory operations; screen shot: http://wyw.dcweb.cn/download.asp?path=vim&file=cvs_localstatus.png)
- Extra (operations on a specific revision, etc.)
- Diff (in the split-window style of Vim; screen shot: http://wyw.dcweb.cn/download.asp?path=vim&file=cvs_diff.png)
- Annotate (screen shot: http://wyw.dcweb.cn/download.asp?path=vim&file=cvs_annotate.png)
- History
- Log (screen shot: http://wyw.dcweb.cn/download.asp?path=vim&file=cvs_log.png)
- Status
- Local status (offline: displays status and version info)
- Check out
- Query update (like WinCVS/gCVS)
- Update (conflicts will be highlighted)
- Add
- Commit
The output can be sorted and is often clickable: it is easy to open conflicting files, etc. It works on single files as well as on whole directories, when called from fileexplorer. It also includes highlighting / mappings to navigate through cvs output or show conflicts.
The menu is displayed in GUI versions of Vim. However, it is useful even in text-only Vim. --- You may choose to use `wildmenu', or you can use key sequences similar to the hot keys in menu. E.g. `alt-c, i' is used to commit with the GUI menu; so `,ci' could be used in text-mode Vim to commit. The leader key, currently `,', can be easily modified in the script.
This is the re-release of Mr Thorsten Maerz's original script (vimscript #58), which was last updated in 2002. It now includes many bug fixes and enhancements. The latest revision of the cvsmenu script can also be found in the SourceForge CVS:
:pserver:anonymous@ezytools.cvs.sourceforge.net:/cvsroot/ezytools/VimTools/cvsmenu.vim
CvsMenu is able to update itself using this anonymous CVS. Find the menu items under `CVS > Settings > Install'. |
|
install details |
Copy to the Vim plugin directory: generally ~/.vim/plugin in UNIXs, and $VIM\vimfiles\plugin (or $HOME\vimfiles\plugin) in Windows.
Choose `CVS > Settings > Install > Install updates' in the menu, or the shortcut `,cgii', to checkout and install the latest script and documentation. |
|
Click on the package to download.
cvsmenu.vim |
1.150 |
2009-09-24 |
6.0 |
Yongwei Wu |
Fix the issue that "CVS > Revert changes" discards tag/branch information;
Fix some issues related to fileencoding. |
cvsmenu.vim |
1.147 |
2008-06-29 |
6.0 |
Yongwei Wu |
Fix the issue that the global fileencoding can be accidentally changed by "let &fileencoding="; fix the problem that the log message is not converted to the CVScmdencoding. |
cvsmenu.vim |
1.145 |
2007-12-29 |
6.0 |
Yongwei Wu |
Fix the bug that the local status is not automatically refreshed when committing a file not in the current directory. |
cvsmenu.vim |
1.144 |
2007-10-26 |
6.0 |
Yongwei Wu |
Fix the bug that shortcut keys cannot be created in Unix when the path of cvsmenu.vim contains spaces.
|
cvsmenu.vim |
1.143 |
2007-10-01 |
6.0 |
Yongwei Wu |
Fix the bug that the file path cannot contain spaces (in Unix and Cygwin). |
cvsmenu.vim |
1.142 |
2007-05-09 |
6.0 |
Yongwei Wu |
Shorten `CVScvsoutputencoding' to `CVScmdencoding';
Add a new control variable g:CVSfileencoding to ensure the result of CVS-Diff and CVS-Annotate is correct;
Set the appropriate fileencoding in CVSDoCommand. |
cvsmenu.vim |
1.140 |
2006-10-22 |
6.0 |
Yongwei Wu |
Re-enable password piping on Windows (tested to work with CVSNT 2.5.02 Build 2115) to make update cvsmenu.vim smoother; Change the name pattern of temporary log message file to make CVSeasylogmessage work with different versions of CVS (tested with more than 4 different CVS clients); Make some minor bug fixes. |
cvsmenu.vim |
1.136 |
2006-10-20 |
6.0 |
Yongwei Wu |
When vimming a CVS log message, ensure there is an empty line at the beginning, make editing start in insert mode, and make a normal-mode ENTER finish editing (can be disabled by put `let g:CVSeasylogmessage=0' in (.|_)vimrc). |
cvsmenu.vim |
1.135 |
2006-10-19 |
6.0 |
Yongwei Wu |
Display a message and cease to CVS diff if the file is newly added; allow using `q' to close the CVS history window. |
cvsmenu.vim |
1.133 |
2006-10-16 |
6.0 |
Yongwei Wu |
Use the corresponding version instead of the most recent version in the repository to Diff, as the command line `cvs diff ...' does. |
cvsmenu.vim |
1.132 |
2006-10-13 |
6.0 |
Yongwei Wu |
Fix the display problem of `Directory > Local status'; clean up the code a little. |
cvsmenu.vim |
1.127 |
2006-10-10 |
6.0 |
Yongwei Wu |
Fix the bug that `Checkout to' does not work. |
cvsmenu.vim |
1.126 |
2006-09-11 |
6.0 |
Yongwei Wu |
Allow non-ASCII filename to be used when encoding=utf-8. |
cvsmenu.vim |
1.125 |
2006-09-02 |
6.0 |
Yongwei Wu |
Truncate the Vim title after the file name so that the file name is always visible when the directory name is long. |
cvsmenu.vim |
1.124 |
2006-08-20 |
6.0 |
Yongwei Wu |
Map `q' to quickly close the buffer opened by cvs annotate and cvs log. |
cvsmenu.vim |
1.123 |
2006-05-21 |
6.0 |
Yongwei Wu |
Update broken links and make self-update work again. |
cvsmenu.vim |
1.122 |
2006-05-13 |
6.0 |
Yongwei Wu |
Update CVS info due to the SourceForge site change to make updating itself continue to work. |
cvsmenu.vim |
1.121 |
2005-11-16 |
6.0 |
Yongwei Wu |
- Use extracted cvs command (w/o `-q' etc.) to match with CVSdontconvertfor; - Ensure correct message escaping on Windows when shell=cmd.exe (regardless of shellxquote); - Documentation is updated to reflect my changes: be sure to use `CVS - Settings - Install - Install updates' (or `Download updates' followed by `Install buffer as help' on the help file buffer) to get it. |
cvsmenu.vim |
1.118 |
2005-11-09 |
6.0 |
Yongwei Wu |
- Deal with "`" correctly under Unix;
- Make no-reload-prompt trick work when the committed file is not in the current directory. |
cvsmenu.vim |
1.116 |
2005-11-01 |
6.0 |
Yongwei Wu |
- Do not allow to commit if the current file has not a name;
- Fix a bug when executing `:w file' on an unsaved named buffer. |
cvsmenu.vim |
1.114 |
2005-10-14 |
6.0 |
Yongwei Wu |
- Work around a problem that unedit of CVSNT may prompt to revert changes;
- Allow the ouput encoding of cvs be different from the Vim encoding (e.g., to make Chinese in annotate and the error message of CVSNT display correctly, one may now use `let CVScvsoutputencoding="gbk"' in .vimrc). |
cvsmenu.vim |
1.112 |
2005-09-22 |
6.0 |
Yongwei Wu |
- Rename CVSaddspaceafterannotate to CVSspacesinannotate;
- Display two missing parameters in CVS - Info;
- Avoid the reload prompt after commit;
- Do not allow to commit if the current buffer is modified. |
cvsmenu.vim |
1.109 |
2005-07-07 |
6.0 |
Yongwei Wu |
Fix problems with CVS annotation highlighting. |
cvsmenu.vim |
1.107 |
2005-06-08 |
6.0 |
Yongwei Wu |
- Allow space adjustment of output of "CVS - Annotate" (assign a positive value to g:CVSaddspaceafterannotate) so that files that use TABs can align better.
- Output of "CVS - Annotate" is now highlighted. |
cvsmenu.vim |
1.104 |
2005-04-28 |
6.0 |
Yongwei Wu |
- Do not remap keys for new buffers output by cvs annotate, history, and log.
- Correct the help message for output buffer. |
cvsmenu.vim |
1.102 |
2005-04-19 |
6.0 |
Yongwei Wu |
Make menu commands like "CVS - Directory - Update" work in insert mode. |
cvsmenu.vim |
1.100 |
2005-04-17 |
6.0 |
Yongwei Wu |
Do not reload-after-commit after a directory commit (to avoid an error).
Fix CVSInstallAsPlugin and CVSInstallAsHelp so that the plugin and its help are installed to where the script is currently installed. |
cvsmenu.vim |
1.97 |
2005-04-04 |
6.0 |
Yongwei Wu |
Fix the broken key mapping. Now it is possible to use key sequences similar to the menu hot keys. E.g. `alt-c, i' is used to commit when the GUI menu exists; so `,ci' could be used in text-mode Vim to commit. |
cvsmenu.vim |
1.96 |
2005-03-28 |
6.0 |
Yongwei Wu |
Make sure the special characters "&", "<", ">", "|", and "^" are handled correctly if shell is cmd.exe and shellxquote is \" (there will be miscellaneous gotchas if the shell is command.com or shellxquote is empty).
Change the prefixing spaces in menu items to appending spaces to make wildmenu users happier (when wim includes longest). |
cvsmenu.vim |
1.94 |
2005-03-22 |
6.0 |
Yongwei Wu |
Initial upload |