citadel

My dotfiles, scripts and nix configs
git clone git://jb55.com/citadel
Log | Files | Refs | README | LICENSE

pi_vimball.txt (9463B)


      1 *pi_vimball.txt*	For Vim version 7.2.  Last change: 2009 Dec 28
      2 
      3 			       ----------------
      4 			       Vimball Archiver
      5 			       ----------------
      6 
      7 Author:  Charles E. Campbell, Jr.  <NdrOchip@ScampbellPfamily.AbizM>
      8 	  (remove NOSPAM from Campbell's email first)
      9 Copyright: (c) 2004-2009 by Charles E. Campbell, Jr.	*Vimball-copyright*
     10 	   The VIM LICENSE applies to Vimball.vim, and Vimball.txt
     11 	   (see |copyright|) except use "Vimball" instead of "Vim".
     12 	   No warranty, express or implied.
     13 	   Use At-Your-Own-Risk!
     14 
     15 ==============================================================================
     16 1. Contents				*vba* *vimball* *vimball-contents*
     17 
     18 	1. Contents......................................: |vimball-contents|
     19 	3. Vimball Manual................................: |vimball-manual|
     20 	   MkVimball.....................................: |:MkVimball|
     21 	   UseVimball....................................: |:UseVimball|
     22 	   RmVimball.....................................: |:RmVimball|
     23 	4. Vimball History...............................: |vimball-history|
     24 
     25 
     26 ==============================================================================
     27 2. Vimball Introduction						*vimball-intro*
     28 
     29 	Vimball is intended to make life simpler for users of plugins.  All
     30 	a user needs to do with a vimball is: >
     31 		vim someplugin.vba
     32 		:so %
     33 		:q
     34 <	and the plugin and all its components will be installed into their
     35 	appropriate directories.  Note that one doesn't need to be in any
     36 	particular directory when one does this.  Plus, any help for the
     37 	plugin will also be automatically installed.
     38 
     39 	If a user has decided to use the AsNeeded plugin, vimball is smart
     40 	enough to put scripts nominally intended for .vim/plugin/ into
     41 	.vim/AsNeeded/ instead.
     42 
     43 	Removing a plugin that was installed with vimball is really easy: >
     44 		vim
     45 		:RmVimball someplugin
     46 <	This operation is not at all easy for zips and tarballs, for example.
     47 
     48 	Vimball examines the user's |'runtimepath'| to determine where to put
     49 	the scripts.  The first directory mentioned on the runtimepath is
     50 	usually used if possible.  Use >
     51 		:echo &rtp
     52 <	to see that directory.
     53 
     54 
     55 ==============================================================================
     56 3. Vimball Manual					*vimball-manual*
     57 
     58 MAKING A VIMBALL						*:MkVimball*
     59 		:[range]MkVimball[!] filename [path]
     60 
     61 	The range is composed of lines holding paths to files to be included
     62 	in your new vimball, omitting the portion of the paths that is
     63 	normally specified by the runtimepath (|'rtp'|).  As an example: >
     64 		plugin/something.vim
     65 		doc/something.txt
     66 <	using >
     67 		:[range]MkVimball filename
     68 <
     69 	on this range of lines will create a file called "filename.vba" which
     70 	can be used by Vimball.vim to re-create these files.  If the
     71 	"filename.vba" file already exists, then MkVimball will issue a
     72 	warning and not create the file.  Note that these paths are relative
     73 	to your .vim (vimfiles) directory, and the files should be in that
     74 	directory.  The vimball plugin normally uses the first |'runtimepath'|
     75 	directory that exists as a prefix; don't use absolute paths, unless
     76 	the user has specified such a path.
     77 
     78 	If you use the exclamation point (!), then MkVimball will create the
     79 	"filename.vba" file, overwriting it if it already exists.  This
     80 	behavior resembles that for |:w|.
     81 
     82 	If you wish to force slashes into the filename, that can also be done
     83 	by using the exclamation mark (ie. :MkVimball! path/filename).
     84 
     85 	The tip at http://vim.wikia.com/wiki/Using_VimBall_with_%27Make%27
     86 	has a good idea on how to automate the production of vimballs using
     87 	make.
     88 
     89 
     90 MAKING DIRECTORIES VIA VIMBALLS				*g:vimball_mkdir*
     91 
     92 	First, the |mkdir()| command is tried (not all systems support it).
     93 
     94 	If it doesn't exist, then if g:vimball_mkdir doesn't exist, it is set
     95 	as follows: >
     96 	  |g:netrw_local_mkdir|, if it exists
     97 	  "mkdir"              , if it is executable
     98 	  "makedir"            , if it is executable
     99 	  Otherwise            , it is undefined.
    100 <	One may explicitly specify the directory making command using
    101 	g:vimball_mkdir.  This command is used to make directories that
    102 	are needed as indicated by the vimball.
    103 
    104 
    105 CONTROLLING THE VIMBALL EXTRACTION DIRECTORY		*g:vimball_home*
    106 
    107 	You may override the use of the |'runtimepath'| by specifying a
    108 	variable, g:vimball_home.
    109 
    110 							*vimball-extract*
    111 		vim filename.vba
    112 
    113 	Simply editing a Vimball will cause Vimball.vim to tell the user to
    114 	source the file to extract its contents.
    115 
    116 	Extraction will only proceed if the first line of a putative vimball
    117 	file holds the "Vimball Archiver by Charles E. Campbell, Jr., Ph.D."
    118 	line.
    119 
    120 LISTING FILES IN A VIMBALL					*:VimballList*
    121 
    122 		:VimballList
    123 
    124 	This command will tell Vimball to list the files in the archive, along
    125 	with their lengths in lines.
    126 
    127 MANUALLY INVOKING VIMBALL EXTRACTION				*:UseVimball*
    128 
    129 		:UseVimball [path]
    130 
    131 	This command is contained within the vimball itself; it invokes the
    132 	vimball#Vimball() routine which is responsible for unpacking the
    133 	vimball.  One may choose to execute it by hand instead of sourcing
    134 	the vimball; one may also choose to specify a path for the
    135 	installation, thereby overriding the automatic choice of the first
    136 	existing directory on the |'runtimepath'|.
    137 
    138 REMOVING A VIMBALL						*:RmVimball*
    139 
    140 		:RmVimball vimballfile [path]
    141 
    142 	This command removes all files generated by the specified vimball
    143 	(but not any directories it may have made).  One may choose a path
    144 	for de-installation, too (see |'runtimepath'|); otherwise, the
    145 	default is the first existing directory on the |'runtimepath'|.
    146 	To implement this, a file (.VimballRecord) is made in that directory
    147 	containing a record of what files need to be removed for all vimballs
    148 	used thus far.
    149 
    150 PREVENTING LOADING
    151 
    152 	If for some reason you don't want to be able to extract plugins
    153 	using vimballs: you may prevent the loading of vimball.vim by
    154 	putting the following two variables in your <.vimrc>: >
    155 
    156 		let g:loaded_vimballPlugin= 1
    157 		let g:loaded_vimball      = 1
    158 <
    159 
    160 ==============================================================================
    161 4. Vimball History					*vimball-history* {{{1
    162 
    163 	30 : Dec 08, 2008 * fnameescape() inserted to protect error
    164 			    messaging using corrupted filenames from
    165 			    causing problems
    166 			  * RmVimball supports filenames that would
    167 			    otherwise be considered to have "magic"
    168 			    characters (ie. Abc[1].vba)
    169 	     Feb 18, 2009 * s:Escape(), g:vimball_shq, and g:netrw_shq
    170 			    removed (shellescape() used directly)
    171 	     Oct 05, 2009 * (Nikolai Weibull) suggested that MkVimball
    172 			    be allowed to use slashes in the filename.
    173 	26 : May 27, 2008 * g:vimball_mkdir usage installed.  Makes the
    174 	                    $HOME/.vim (or $HOME\vimfiles) directory if
    175 			    necessary.
    176 	     May 30, 2008 * (tnx to Bill McCarthy) found and fixed a bug:
    177 			    vimball wasn't updating plugins to AsNeeded/
    178 			    when it should
    179 	25 : Mar 24, 2008 * changed vimball#Vimball() to recognize doc/*.??x
    180 			    files as help files, too.
    181 	     Apr 18, 2008 * RmVimball command is now protected by saving and
    182 	                    restoring settings -- in particular, acd was
    183 			    causing problems as reported by Zhang Shuhan
    184 	24 : Nov 15, 2007 * |g:vimball_path_escape| used by s:Path() to
    185 	                    prevent certain characters from causing trouble
    186 	22 : Mar 21, 2007 * uses setlocal instead of set during BufEnter
    187 	21 : Nov 27, 2006 * (tnx to Bill McCarthy) vimball had a header
    188 	                    handling problem and it now changes \s to /s
    189 	20 : Nov 20, 2006 * substitute() calls have all had the 'e' flag
    190 	                    removed.
    191 	18 : Aug 01, 2006 * vimballs now use folding to easily display their
    192 	                    contents.
    193 			  * if a user has AsNeeded/somefile, then vimball
    194 			    will extract plugin/somefile to the AsNeeded/
    195 			    directory
    196 	17 : Jun 28, 2006 * changes all \s to /s internally for Windows
    197 	16 : Jun 15, 2006 * A. Mechelynck's idea to allow users to specify
    198 			    installation root paths implemented for
    199 			    UseVimball, MkVimball, and RmVimball.
    200 			  * RmVimball implemented
    201 	15 : Jun 13, 2006 * bugfix
    202 	14 : May 26, 2006 * bugfixes
    203 	13 : May 01, 2006 * exists("&acd") used to determine if the acd
    204 			    option exists
    205 	12 : May 01, 2006 * bugfix - the |'acd'| option is not always defined
    206 	11 : Apr 27, 2006 * VimballList would create missing subdirectories that
    207 			    the vimball specified were needed.  Fixed.
    208 	10 : Apr 27, 2006 * moved all setting saving/restoration to a pair of
    209 			    functions.  Included some more settings in them
    210 			    which frequently cause trouble.
    211 	9  : Apr 26, 2006 * various changes to support Windows' predilection
    212 			    for backslashes and spaces in file and directory
    213 			    names.
    214 	7  : Apr 25, 2006 * bypasses foldenable
    215 			  * uses more exe and less norm! (:yank :put etc)
    216 			  * does better at insuring a "Press ENTER" prompt
    217 			    appears to keep its messages visible
    218 	4  : Mar 31, 2006 * BufReadPost seems to fire twice; BufReadEnter
    219 			    only fires once, so the "Source this file..."
    220 			    message is now issued only once.
    221 	3  : Mar 20, 2006 * removed query, now requires sourcing to be
    222 			    extracted (:so %).  Message to that effect
    223 			    included.
    224 			  * :VimballList  now shows files that would be
    225 			    extracted.
    226 	2  : Mar 20, 2006 * query, :UseVimball included
    227 	1  : Mar 20, 2006 * initial release
    228 
    229 
    230 ==============================================================================
    231 vim:tw=78:ts=8:ft=help:fdm=marker