Genutils is a project mainly written in Vim Script, it's free.
General utility functions
This is a mirror of http://www.vim.org/scripts/script.php?script_id=197
The new version requires Vim 7.0 and it employs the new autoload mechanism. If you have plugins that use both the new version and previous non-autoloaded version, then see the installation instructions for both to coexist.
This script provides functions that are mostly useful to script developers, but some of the functions can be easily converted to good utilities.
See script header for documented public functions with help and usage information along with the function prototypes.
This script provides many useful utility functions for buffers, windows and other misc things. I needed a place to share all the misc. utility functions so I renamed bufNwinUtils.vim and started adding these additional functions. I intend to create/collect many more useful functions and add to this script.
Function Prototypes: The types in prototypes of the functions mimic Java. This is just a full list for a quick reference, see "Documentation With Function Prototypes" for more information on the functions.
void genutils#DebugShowArgs(...) String genutils#ExtractFuncListing(String funcName, String hLines, String tLines) int genutils#NumberOfWindows() int genutils#FindBufferForName(String fileName) String genutils#GetBufNameForAu(String bufName) void genutils#MoveCursorToWindow(int winno) void genutils#MoveCurLineToWinLine(int winLine) void genutils#CloseWindow(int winnr, boolean force) void genutils#MarkActiveWindow() void genutils#RestoreActiveWindow() void genutils#IsOnlyVerticalWindow() void genutils#IsOnlyHorizontalWindow() int genutils#GetNextWinnrInStack(char dir) int genutils#GetLastWinnrInStack(char dir) void genutils#MoveCursorToNextInWinStack(char dir) void genutils#MoveCursorToLastInWinStack(char dir) void genutils#OpenWinNoEa(String openWinCmd) void genutils#CloseWinNoEa(int winnr, boolean force) void genutils#SetupScratchBuffer() void genutils#CleanDiffOptions() boolean genutils#ArrayVarExists(String varName, int index) void genutils#MapAppendCascaded(String lhs, String rhs, String mapMode) void genutils#SaveWindowSettings() void genutils#RestoreWindowSettings() void genutils#ResetWindowSettings() void genutils#SaveWindowSettings2(String id, boolean overwrite) void genutils#RestoreWindowSettings2(String id) void genutils#ResetWindowSettings2(String id) void genutils#SaveVisualSelection(String id) void genutils#RestoreVisualSelection(String id) void genutils#SaveSoftPosition(String id) void genutils#RestoreSoftPosition(String id) void genutils#ResetSoftPosition(String id) void genutils#SaveHardPosition(String id) void genutils#RestoreHardPosition(String id) void genutils#ResetHardPosition(String id) int genutils#GetLinePosition(String id) int genutils#GetColPosition(String id) boolean genutils#IsPositionSet(String id) String genutils#CleanupFileName(String fileName) String genutils#CleanupFileName2(String fileName, String win32ProtectedChars) boolean genutils#OnMS() boolean genutils#PathIsAbsolute(String path) boolean genutils#PathIsFileNameOnly(String path) void genutils#AddNotifyWindowClose(String windowTitle, String functionName) void genutils#RemoveNotifyWindowClose(String windowTitle) void genutils#CheckWindowClose() void genutils#ShowLinesWithSyntax() range void genutils#ShiftWordInSpace(int direction) void genutils#CenterWordInSpace() int genutils#BinSearchList(List list, int start, int end, Object item, [Funcref|String] cmp, int direction) int genutils#BinSearchForInsert(int start, int end, String line, String cmp, int direction) int genutils#BinSearchForInsert2(int start, int end, line, String cmp, int direction, String accessor, String context) String genutils#CommonPath(String path1, String path2) String genutils#CommonString(String str1, String str2) String genutils#RelPathFromFile(String srcFile, String tgtFile) String genutils#RelPathFromDir(String srcDir, String tgtFile) String genutils#Roman2Decimal(String str) String genutils#Escape(String str, String chars) String genutils#UnEscape(String str, String chars) String genutils#DeEscape(String str) String genutils#CrUnProtectedCharsPattern(String chars) String genutils#EscapeCommand(String cmd, List/String args, List/String pipe) int genutils#GetShellEnvType() String genutils#ExpandStr(String str) String genutils#QuoteStr(String str) boolean genutils#CurLineHasSign() void genutils#ClearAllSigns() String genutils#UserFileComplete(String ArgLead, String CmdLine, String CursorPos, String smartSlash, String searchPath) String genutils#UserFileComplete2(String ArgLead, String CmdLine, String CursorPos, [Map params]) String genutils#UserDirComplete2(String ArgLead, String CmdLine, String CursorPos, [Map params]) String genutils#UserFileExpand(String fileArgs) String genutils#GetVimCmdOutput(String cmd) void genutils#OptClearBuffer() int genutils#GetPreviewWinnr() void genutils#PutPersistentVar(String pluginName, String persistentVar, String value) void genutils#GetPersistentVar(String pluginName, String persistentVar, String default) void genutils#AddToFCShellPre(String funcName) void genutils#RemoveFromFCShellPre(String funcName) void genutils#DefFCShellInstall() void genutils#DefFCShellUninstall() boolean genutils#DefFileChangedShell() void genutils#SilentSubstitute(String pat, String cmd) void genutils#SilentDelete(String pat) void genutils#SilentDelete(String range, String pat) String genutils#GetSpacer(int width) String genutils#PromptForElement(List array, [String defaultValue | int defaultIndex], String msg, String skip, boolean useDialog, int nCols) int genutils#GetSelectedIndex()
Deprecations:
Search_key_words: genutils variable arguments window buffer windows buffers preview save restore cursor position notify close echo syntax shift sort library typing error errors scriptid clean reset diff eatchar align word words space file filename binary search multvals Hari Krishna Dara