Compare commits

...

281 Commits

Author SHA1 Message Date
Bjorn Winckler e4abcd6741 Snapshot 42 2009-01-12 16:35:09 +01:00
Bjorn Winckler b0f34cac04 Update appcast 2009-01-10 21:09:43 +01:00
Bjorn Winckler dd243c8ab1 Snapshot 41 2009-01-10 20:57:33 +01:00
Bjorn Winckler 02592cfe41 Prune draw queue before sending to frontend
If the draw queue fills up with lots (i.e. twice the number of max rows)
of insert/delete line commands we can remove draw commands from the
beginning of the draw queue.  This reduces the possibility of the draw
queue overflowing.
2009-01-10 17:39:29 +01:00
Bjorn Winckler e706fca4d6 Cmd-. sends SIGINT
Ctrl-C does not always work to interrupt a stuck Vim process. By making
Cmd-. send SIGINT it is more likely to succeed where Ctrl-C has failed.
(E.g. Ctrl-C may fail if a DO message is dropped, or if the Vim process
is stuck in a loop and isn't checking for new input.)
2009-01-10 17:38:11 +01:00
Bjorn Winckler 8d00a30b0a Show output from external commands as it happens
Previously, all output was sent to the frontend at once so only the last
few rows were visible.  This was a bit disconcerting when a command took
a bit of time because there was no feedback that anything was happening.
The downside to this patch is that it takes a bit longer for a command
to finish since the frontend has to do more drawing.
2009-01-10 17:37:49 +01:00
Bjorn Winckler 76200b7c03 Allow interrupt during external commands 2009-01-08 21:25:37 +01:00
Bjorn Winckler e648d3b011 Don't ignore SIGCHLD (fix automatic updating)
Ignoring SIGCHLD caused problems with automatic updating (Sparkle) since
it uses popen() (and hence implicitly uses wait4()) to unpack archives.
Now that SIGCHLD is no longer ignored we have to reap child processes
after exiting a Vim process as well as when MacVim is about to
terminate.
2009-01-08 16:11:30 +01:00
Bjorn Winckler 1db4b7903b Make no DO calls during app termination 2009-01-07 21:01:47 +01:00
Bjorn Winckler e5e129b933 Prune unnecessary code, clarify comment 2009-01-07 20:19:44 +01:00
Bjorn Winckler 354968a9b9 Add comment 2009-01-07 20:16:01 +01:00
Bjorn Winckler 87e4ef758b Clean up process termination code
Exiting immediately on TerminateNowMsgID simplifies the code a bit and
also minimizes the probability of a process not terminating before
MacVim.
2009-01-07 20:14:03 +01:00
Bjorn Winckler 2b721c9e9c New user default MMLoadDefaultFont
When enabled the default font is loaded from within the app bundle each
time MacVim is started (the default setting).  Startup times are shorter
if this is disabled.  Note that if the default font has already been
installed on the system then this may as well be disabled.
2009-01-07 14:19:27 +01:00
Bjorn Winckler c50143db47 Fix deprecated API compiler warning 2009-01-06 22:05:50 +01:00
Bjorn Winckler 2153ab22d7 Don't load default font in Vim (faster startup)
Loading and unloading a font can take a substantial amount of time so
this cuts down on the startup time.
2009-01-06 21:41:47 +01:00
Bjorn Winckler aefc975f1b Fix compiler issues on Tiger 2009-01-06 22:58:38 +01:00
Bjorn Winckler 79851d47b1 Build Debug and Release using default SDK
The Universal target still builds using the 10.4u SDK.
2009-01-06 17:51:36 +01:00
Bjorn Winckler 2c9f69f2bf Fix double free memory problem
This bug was introduced in commit:
    e162109d6f022942edb7281736f587ee79e20bfe
2009-01-06 18:31:38 +01:00
Bjorn Winckler 462fb78a85 Deprecate "redr|f" in addInput: calls
The previous commit ensures these are no longer neeeded (they used to be
there to avoid the "Press ENTER..." prompt).
2009-01-04 22:13:48 +01:00
Bjorn Winckler d2dbd62e7b Avoid "Press ENTER..." prompt
When adding input programmatically the 'silent' flag is automatically
set.  Hopefully this will mean the end of the annoying "Press ENTER..."
prompt.  This also means that it should no longer be necessary to
manually try to make commands silent (e.g. ":redr|f" should not be
needed).
2009-01-04 21:44:27 +01:00
Bjorn Winckler e1c4adc8c9 Add user default to toggle the "add tab" button
The user default MMShowAddTabButton controls whether the "add tab"
button is displayed on the tab bar or not.
2009-01-04 17:58:57 +01:00
Bjorn Winckler 2ffc552c25 Avoid switching Spaces when using 'mvim' 2009-01-04 17:46:48 +01:00
Nico Weber 7845992803 Toggle menu bar on focus change in full-screen 2009-01-02 13:55:11 -08:00
Nico Weber 1eb73428b0 Icon generation works on Tiger again 2008-12-30 23:36:50 -08:00
Bjorn Winckler 2ab7e98bb8 Snapshot 40 2008-12-28 17:58:44 +01:00
Bjorn Winckler ebf311d2df List all non-standard options and commands in help 2008-12-28 17:20:30 +01:00
Bjorn Winckler 88d6d362c3 Show dialog when clicking to close modified tab 2008-12-26 17:46:36 +01:00
Bjorn Winckler daf5b3430a Look for toolbar icons in runtime path 2008-12-26 18:56:05 +01:00
Bjorn Winckler b13dede64d Merge upstream 2008-12-24 14:26:00 +01:00
vimboss bd1000809d updated for version 7.2-075 2008-12-24 13:25:14 +00:00
vimboss 2614f8ee3e updated for version 7.2-074 2008-12-24 12:06:26 +00:00
vimboss dd3577db8c updated for version 7.2-073 2008-12-24 11:54:31 +00:00
vimboss ff92260a55 updated for version 7.2-072 2008-12-24 11:43:49 +00:00
vimboss 90c9bf33a2 updated for version 7.2-071 2008-12-24 11:20:53 +00:00
vimboss 8f0b9d6525 updated for version 7.2-070 2008-12-23 22:52:58 +00:00
Bjorn Winckler b9eb197443 Clean up 'guitabtooltip' patch 2008-12-23 23:05:06 +01:00
Jonathon Mah a61f1bf714 Add support for 'guitabtooltip' 2008-12-23 22:52:14 +01:00
Nico Weber c7323339d9 Make icon generation script faster and more flexible 2008-12-23 22:33:41 +01:00
Nico Weber 48fc2be299 Small doc icons look sharper, faster generation 2008-12-23 21:11:42 +01:00
Nico Weber a5be20ba89 Automatically generate document icons
Document icons are generated using the makeicns program and a Python
script.  Note that the script uses PyObjC and hence requires Mac OS X
10.5 or later (on earlier systems a blank icon will be used for all
document types).

This patch also adds more filetypes to Info.plist.

Integration into Xcode project by Bjorn Winckler
<bjorn.winckler@gmail.com> with the help of Keith Hubbard
<keith@bangj.com>
2008-12-23 20:19:33 +01:00
Bjorn Winckler 48874c704b Fix character escaping for "New File Here" service
This also makes this service work on Tiger.
2008-12-22 16:12:21 +01:00
Kent Sibilev b8d2ad693a Add clipboard support in non-GUI mode 2008-12-11 18:00:57 +01:00
vimboss d11de6c31d updated for version 7.2-069 2008-12-09 21:34:39 +00:00
vimboss 4c5d17ec00 updated for version 7.2-068 2008-12-09 11:13:06 +00:00
vimboss 34207703d8 updated for version 7.2-067 2008-12-09 10:18:03 +00:00
vimboss 8ff21dbb7c updated for version 7.2-066 2008-12-09 09:57:49 +00:00
vimboss 1cd2bd4a21 updated for version 7.2-065 2008-12-03 17:50:45 +00:00
Bjorn Winckler 32561e2742 Input Method is disabled by default
The IM code is a bit flakey so keep IM disabled by default for now.
2008-12-03 15:45:04 +01:00
vimboss fe0e293cb9 updated for version 7.2-064 2008-12-03 12:38:36 +00:00
vimboss dcaf01ff54 updated for version 7.2-063 2008-12-03 12:18:55 +00:00
vimboss adac29fc57 updated for version 7.2-062 2008-12-03 10:21:57 +00:00
vimboss 341e36b48d updated for version 7.2-061 2008-12-03 08:52:26 +00:00
vimboss 7b26c6980f updated for version 7.2-060 2008-11-30 20:12:46 +00:00
Bjorn Winckler 668c778621 Handle TerminateNow input message immediately
Fixes a bug where code which waits on the run loop fails to detect
TerminateNow input messages (this could e.g. result in a "leak" of Vim
processes when Quickstart was enabled).
2008-11-30 18:04:13 +01:00
vimboss 279e83bccc updated for version 7.2-059 2008-11-30 14:16:57 +00:00
vimboss c1a71eedb5 updated for version 7.2-058 2008-11-30 11:15:09 +00:00
vimboss 4dea3b30d0 updated for version 7.2-057 2008-11-29 19:19:19 +00:00
vimboss 05b47ac89e updated for version 7.2-056 2008-11-29 19:11:40 +00:00
vimboss 3965aefc79 updated for version 7.2-055 2008-11-28 20:29:07 +00:00
vimboss be089b8aa0 updated for version 7.2-053 2008-11-28 10:47:47 +00:00
vimboss 7aab071854 updated for version 7.2-052 2008-11-28 10:16:05 +00:00
vimboss cff1a9e3c9 updated for version 7.2-051 2008-11-28 10:01:10 +00:00
vimboss 7d03b73992 updated for version 7.2-050 2008-11-28 09:08:51 +00:00
Bjorn Winckler 213d223679 Snapshot 39 2008-11-23 19:53:20 +01:00
Bjorn Winckler f00a001406 Update README 2008-11-22 14:50:25 +01:00
Ben Schmidt 7ae32a1bef Avoid "Stray process..." warning messages 2008-11-22 14:32:12 +01:00
Nico Weber 62b5aae721 Add <D-BS> and <M-BS> insert mode mappings
These are standard shortcuts in Mac OS X.  <D-BS> deletes a whole line,
<M-BS> deletes the previous word.
2008-11-21 20:32:41 +01:00
Bjorn Winckler 1741da563b Merge upstream 2008-11-21 20:20:00 +01:00
Bjorn Winckler c3239dd5e5 Snapshot 38 2008-11-21 20:11:51 +01:00
vimboss 09eb973f44 updated for version 7.2-049 2008-11-20 16:10:17 +00:00
vimboss 1dfdf3ebaa updated for version 7.2-048 2008-11-20 15:12:02 +00:00
vimboss d50de2f2f0 updated for version 7.2-047 2008-11-20 13:12:36 +00:00
vimboss 233164a7d2 updated for version 7.2-046 2008-11-20 10:56:33 +00:00
vimboss ae96eb8469 updated for version 7.2-045 2008-11-20 10:04:53 +00:00
vimboss d676af07ec updated for version 7.2-044 2008-11-20 09:37:01 +00:00
vimboss 73827e6e15 updated for version 7.2-043 2008-11-20 09:27:32 +00:00
Bjorn Winckler 8420566635 Exit if connection becomes invalid
This is only a temporary measure until a proper fix is found.
2008-11-19 19:30:46 +01:00
Ben Schmidt e4c49238bd Use default SIGCHLD handler in Vim processes 2008-11-17 21:36:36 +01:00
Bjorn Winckler 616f845128 No error message when dropping files (Issue 135) 2008-11-16 17:05:14 +01:00
vimboss 09c7a21e4f fix truncation 2008-11-15 15:16:46 +00:00
vimboss 9e75f31ff2 updated for version 7.2-042 2008-11-15 15:06:17 +00:00
vimboss 950ef8ff2f updated for version 7.2-041 2008-11-15 13:12:07 +00:00
Bjorn Winckler 915d2e30ac Snapshot 37 2008-11-15 14:02:15 +01:00
Bjorn Winckler 6319b9c517 Add Reload/Ignore All buttons to file changed dialog 2008-11-14 20:06:53 +01:00
Bjorn Winckler 0dde2b7232 Explicitly ignore SIGCHLD to avoid zombies 2008-11-14 15:43:54 +01:00
vimboss 5d900f6f7e updated for version 7.2-040 2008-11-12 15:05:21 +00:00
vimboss 6907698f60 updated for version 7.2-039 2008-11-12 14:29:28 +00:00
vimboss ce49edcc1e updated for version 7.2-038 2008-11-12 13:52:46 +00:00
vimboss 911a34fed0 updated for version 7.2-037 2008-11-12 13:10:15 +00:00
vimboss a57ecd4e2e updated for version 7.2-036 2008-11-12 12:36:30 +00:00
vimboss 81a5c6dd4e updated for version 7.2-035 2008-11-12 12:08:45 +00:00
vimboss a53e7167fc updated for version 7.2-034 2008-11-12 11:52:19 +00:00
vimboss 6cf044c8fc updated for version 7.2-033 2008-11-11 20:57:11 +00:00
Bjorn Winckler d0645670b5 Merge upstream
Conflicts:
	src/feature.h
2008-11-09 17:23:00 +01:00
vimboss 3157d8636c updated for version 7.2-032 2008-11-09 16:22:01 +00:00
vimboss 8bb0169bd0 updated for version 7.2-031 2008-11-09 12:46:09 +00:00
vimboss 00d911af72 updated for version 7.2-030 2008-11-06 19:47:51 +00:00
vimboss 1111099ec1 updated for version 7.2-029 2008-11-06 16:16:44 +00:00
vimboss 9b4580c4dc updated for version 7.2-028 2008-11-06 10:05:42 +00:00
vimboss e63ff36e87 updated for version 7.2-027 2008-11-06 09:23:57 +00:00
Bjorn Winckler 198610ad25 Data received from system services replaces selection
When data is received from system services it replaces the current
selection.  The current implementation is a bit naive in that it assumes
that Vim is in Visual mode (it doesn't even work in Select mode).  (To
test this functionality: enter "2+3", select it, then hit Cmd-* and the
selection is replaced with "5".)
2008-11-01 19:21:02 +01:00
vimboss a57332a176 updated for version 7.2-026 2008-11-01 12:52:38 +00:00
Bjorn Winckler 9bd6777571 Support "mvim" script symlinks to [m|g]ex, rmvim
Symlinks to "mex" or "gex" starts MacVim in ex mode.  Symlinks to "ex"
starts Vim in ex mode (no GUI).  Symlinks to "rmvim" (or "rgvim" which
was already supported previous to this patch) starts MacVim in
restricted mode.
2008-10-29 17:21:13 +01:00
Bjorn Winckler aee4e6d6ca Add help on symlinks to "mvim" script 2008-10-29 17:04:01 +01:00
Bjorn Winckler 7112e2b5f7 Update help on 'runtimepath' 2008-10-29 16:46:15 +01:00
Bjorn Winckler f9064e4c16 Fix typo in a comment 2008-10-26 22:57:32 +01:00
Bjorn Winckler 69c156faf4 Speed up live resize 2008-10-25 21:10:52 +02:00
Bjorn Winckler dd74c0b520 Connection not in event tracking mode by default
Only add backend connection to event tracking mode when it is absolutely
needed.  At the moment this happens when the window is in "live resize"
or when the mouse button is held on some part of a scroller.
2008-10-25 20:31:17 +02:00
Bjorn Winckler f6ecb9aae9 Help cleanup 2008-10-25 18:38:38 +02:00
Bjorn Winckler bc82e6d58e More help on menu key equivalents 2008-10-25 18:22:12 +02:00
Bjorn Winckler 667279dbca Add help on how to remap Caps Lock to Esc 2008-10-25 18:03:39 +02:00
Bjorn Winckler 331a21d0bd Revert "Modifier key sends Esc" related commits
This reverts the following three commits:
  3ae360ddb38dd49e9392aad7a70f0f31a30849ee
  007bb96eb3ec035169510caa4e206ab901e4b6d0
  b6c06f31be1e8124ed12cc2ff5361752df1e4634
2008-10-25 16:34:16 +02:00
Bjorn Winckler 2cccddd458 Fix "Special Characters" palette bug
It is again possible to insert text from the "Special Characters"
palette (broken by commit 8fbb13da74a1912839e9302ebc725df67619c9c0).
2008-10-18 18:45:50 +02:00
Bjorn Winckler 49a52f9eff Keep whole window visible on ":set lines=X columns=Y" 2008-10-18 17:34:54 +02:00
Bjorn Winckler f231eff6c2 Fix "set lines=999" in .gvimrc
Ensure that the window fits on screen when the window is resized to fit
the content.  This should fix a problem where the window would not be
flush with the menu bar when "set lines=999" was added to .gvimrc.
2008-10-18 15:38:08 +02:00
Bjorn Winckler 3a8ce4e72c Constrain window size during live resize
Ensure that the window size isn't larger than the visible frame of the
current screen.  This avoids problems where the window would "snap back"
immediately after being resized manually.
2008-10-18 14:28:25 +02:00
Bjorn Winckler 52f08cc6aa Delay flushing send queue
Ensure that the send queue is flushed after processCommandQueueDidFinish
since that method may add messages to the send queue.
2008-10-18 14:24:59 +02:00
Bjorn Winckler 1a91b2a5c9 Fix computation of zoomed window frame
When computing the zoomed window frame ensure that it is constrained to
hold an even number of rows and columns.  This fixes a problem where the
window would not "un-zoom" after being zoomed.
2008-10-18 13:23:24 +02:00
Bjorn Winckler 467b890d13 Top of window flush with menu bar after zoom 2008-10-12 17:57:39 +02:00
Jason Foreman fa6eedf24f Enable basic AppleScript support
Putting this key into the Info.plist file turns on the basic AppleScript
support Cocoa provides.  Doing so allows MacVim to receive some basic
events.  This gives MacVim a bit better integration into Mac OS X.

Below is an example which, when placed in one's .vimrc file,  causes the
window to be zoomed during startup.

let script='osascript -e "tell application \"MacVim\""'
       \ . ' -e "set zoomed of first window to true"'
       \ . ' -e "end tell"'
au VIMEnter * call system(script)
2008-10-12 14:36:22 +02:00
Bjorn Winckler 0b546f60b1 Move window to top of screen if bottom is obscured 2008-10-12 14:34:22 +02:00
Bjorn Winckler 1957b370bb Use option as meta key
Added a buffer local option called 'macmeta' which when set causes
MacVim not to interpret option+key presses thus enabling the user to
bind to <M-..>.  Also updated the documentation and added 'macmeta' to
the .vim syntax file.
2008-10-12 14:05:42 +02:00
Bjorn Winckler 275fc44523 Avoid crash when resizing window
Sanity check input to gui_macvim_draw_string(); it can happen that 'len'
is non-zero even though first byte of 's' is NUL (test case with file
containing Chinese characters).
2008-10-11 20:03:23 +02:00
Bjorn Winckler ee1fd606dd Snapshot 36 2008-10-04 19:26:05 +02:00
Bjorn Winckler ac3900639d Update credits 2008-10-04 17:27:58 +02:00
Bjorn Winckler aa3ac2d303 Add Find & Replace dialog box 2008-10-04 17:25:07 +02:00
Bjorn Winckler e84420f7d1 Remove TODO 2008-10-03 16:26:33 +02:00
vimboss 678ceed917 updated for version 7.2-025 2008-10-02 20:55:54 +00:00
Bjorn Winckler f3c411fafe Add help on "modifier key as Esc" 2008-10-02 22:53:17 +02:00
vimboss 1506bb79d9 updated for version 7.2-024 2008-10-02 20:48:41 +00:00
Bjorn Winckler d366864ff5 Add preference to change fake Esc modifier key 2008-10-02 22:28:52 +02:00
vimboss 69742a596f updated for version 7.2-023 2008-10-02 16:04:05 +00:00
Bjorn Winckler 3d2d6a810e Modifier key sends Esc
Adds possibility to make the left Ctrl, Alt, or Cmd key function as a
second Esc key.  The key will still function as a modifier if held down
in conjunction with another key.  Enable by setting the user default
"MMFakeEscModifier" to:
    1 = Left Ctrl
    2 = Left Alt
    3 = Left Cmd
    any other number disables this functionality

By remapping Caps-Lock to one of the above modifier keys this enables
the use of Caps-Lock as a second (and easy to reach) Esc key.  Caps-Lock
can be remapped inside "System Preferences -> Keyboard & Mouse ->
Modifier Keys...".

The Esc event is sent when the modifier key is released.  If the key is
not released within a predefined timeout, then no Esc event is
generated.  The timeout can be changed by setting the user default
MMFakeEscTimeout (a float, specifying the timeout in seconds).

The fact that the Esc event is sent on release makes it feel somewhat
sluggish.  It is possible to have the event sent when the modifier key
is pressed by setting the user default "MMFakeEscOnKeyDown" but then the
left modifier key can only be used as an Esc key.
2008-09-30 22:06:30 +02:00
Jonathon Mah 6fb7a6f38b Added dragging to tab bar
Dragging a file to a tab will open it in that tab.
Dragging files to the end of the tab bar will open them in new tabs.
2008-09-30 02:09:17 +09:30
Jonathon Mah cf7a0a71bd Added tool tips for tabs when tab labels are truncated 2008-09-29 22:06:54 +09:30
Jonathon Mah 6e1e046cbb Fixed memory leak in -[MMAppController openFiles:withArguments:] 2008-09-29 21:20:28 +09:30
Bjorn Winckler 2d1fc65b0e Don't drop non-repeating keyboard input
Keyboard input is not dropped, unless the input was received due to a
key being automatically repeated (as a consequence of the key being held
down).  This way characters are never dropped while typing, but it also
avoids situations where the screen doesn't stop scrolling immediately
when "j" is released after being held.
2008-09-28 23:50:39 +02:00
Bjorn Winckler e378d7332b Add keyboard shortcuts to help file 2008-09-28 22:07:07 +02:00
Bjorn Winckler 4879bdfc5e Snapshot 35 2008-09-26 21:33:40 +02:00
Kaoru Yoshida 52bb6e960f Add IM support to ATSUI renderer
More functionality now shared between ATSUI and Cocoa renderers.
(Some modifications by Bjorn Winckler.)
2008-09-24 21:19:24 +02:00
Bjorn Winckler 0b018a5836 Use -[NSString vimStringSave] 2008-09-24 20:19:24 +02:00
Bjorn Winckler ae2eb1cf48 Merge upstream
Conflicts:
	src/pty.c
2008-09-20 16:28:00 +02:00
vimboss 597590c414 updated for version 7.2-022 2008-09-20 14:27:03 +00:00
Bjorn Winckler 2a70805ffb Put cursor back on cmdline after Cmd-=
Changing the font size up/down while the cursor was on the command line
would cause the cursor to jump away from the cmdline.  This is no longer
the case.  Also fixes a similar problem when showing/hiding the toolbar
by clicking the "pill button".
2008-09-19 20:17:01 +02:00
Bjorn Winckler 86ae8db7d6 Don't coalesce scroll wheel events
Since the backend now pops off all input events at once whenever it
tends to the run-loop, it is no longer necessary to coalesce scroll
wheel events.  In fact, without coalescing the scroll wheel (or track
pad) feels a lot smoother.
2008-09-19 17:50:07 +02:00
Bjorn Winckler dc9008674b Fix typos in help 2008-09-19 16:54:50 +02:00
vimboss 99b9fe4a6d updated for version 7.2-021 2008-09-18 19:29:58 +00:00
vimboss 1d73dbfbe5 updated for version 7.2-020 2008-09-18 18:57:10 +00:00
vimboss 7d9d31e97d updated for version 7.2-019 2008-09-18 10:44:28 +00:00
Bjorn Winckler 8bc680dd63 Update Credits 2008-09-16 22:55:53 +02:00
Bjorn Winckler 5da159c4eb Correct bug in previous commit 2008-09-16 23:08:22 +02:00
Bjorn Winckler def2d1a9e4 Update fullscreen background color immediately
It is no longer necessary to exit and re-enter fullscreen to see changes
to the "background" setting in 'fopt'.
2008-09-16 22:51:08 +02:00
Bjorn Winckler bdb7f8efa6 Fix scrolling bug
Scrolling now works e.g. after pressing 'f' in normal mode (previously
the scrollbar moved, but the window content did not scroll).
2008-09-16 22:14:43 +02:00
Bjorn Winckler db0d1f51a5 Update help file 2008-09-16 21:28:42 +02:00
Bjorn Winckler 6b4059f69d Simplify Services menu
All services open a new window by default, unless new files are set to
open in the current window in the General preference pane.
2008-09-16 21:24:50 +02:00
Ron Olson 232024f71d Add "New Document Here" Service
The "New Document Here" service will create a blank document in the
currently selected directory.  If new files are set to open in the
current window, then the blank document opens in a new tab in the
topmost window, otherwise a new window is opened.
2008-09-14 20:47:55 -05:00
vimboss d732c28bfc updated for version 7.2-018 2008-09-14 19:41:30 +00:00
vimboss e5bae4cb22 updated for version 7.2-017 2008-09-14 13:58:34 +00:00
vimboss bb36e94f24 updated for version 7.2-016 2008-09-14 12:42:29 +00:00
Bjorn Winckler 2e22c44eab Cmd-. sends interrupt
In other words, Cmd-. is synonymous with Ctrl-C.  The former is standard
for Mac apps whereas the latter is standard for Vim.  Incidentally,
Cmd-. may thus be used as a substitute for Esc to exit insert mode.
2008-09-13 21:14:30 +02:00
Bjorn Winckler f6f6f2c8f8 Decrease connection polling interval on startup
This reduces the startup time by almost 1 second when starting MacVim
from Terminal.
2008-09-13 18:47:22 +02:00
Bjorn Winckler ad6fe811e7 Check for Ctrl-C when gui_mch_update() is called
Since gui_mch_update() is called so frequently we only check for
interrupts at most once per second.
2008-09-13 02:48:57 +02:00
Bjorn Winckler deaae7e717 Ignore gui_mch_update()
By making gui_mch_update() a no-op the frame-rate is dramatically
increased in certain situations.  The downside is that it is no longer
possible to interrupt Vim with Ctrl-C when it is busy processing.
2008-09-13 00:37:09 +02:00
Bjorn Winckler e52ae8cbc0 Be more conservative about flushing output queue
Don't flush on gui_mch_flush(); instead only flush when forced (happens
e.g. if Vim is about to take a nap) or just before waiting for new
input.  This reduces screen flicker dramatically in certain cases.
2008-09-13 00:30:07 +02:00
Bjorn Winckler 8e7466bccc Do not allow input queue to fill up
The backend keeps at most one copy of each message on the input queue.
This makes MacVim feel a lot more responsive e.g. when scrolling the
screen.  It used to be that holding down 'j' to scroll and then
releasing 'j' would cause the screen to keep scrolling for a while even
after the release.
2008-09-13 00:08:47 +02:00
Bjorn Winckler 4100056f46 Don't init backend if Vim is about to fork
This way we avoid doing the initializations twice and cut down a bit on
the startup time when starting MacVim from Terminal.
2008-09-11 19:19:03 +02:00
Jjgod Jiang df35270598 Fix blurry text problem in full screen mode for ATSUI 2008-09-11 21:31:46 +02:00
vimboss b2e17cca75 updated for version 7.2-015 2008-09-10 16:26:04 +00:00
vimboss e25a17541d updated for version 7.2-014 2008-09-10 13:39:10 +00:00
vimboss e76375a3e9 updated for version 7.2-013 2008-09-07 19:48:53 +00:00
vimboss ea83ab3650 updated for version 7.2-012 2008-09-07 13:50:37 +00:00
vimboss c53513d4ac updated for version 7.2-011 2008-09-07 11:55:43 +00:00
vimboss 06c64fe88c updated for version 7.2-010 2008-09-06 14:44:59 +00:00
vimboss b39b209d02 updated for version 7.2-009 2008-09-01 15:56:45 +00:00
vimboss 3e5bc79f11 updated for version 7.2-008 2008-09-01 15:33:17 +00:00
vimboss 96e61949b3 updated for version 7.2-007 2008-09-01 14:51:37 +00:00
Bjorn Winckler ce613d4671 Cmd-E copies selection to Find pasteboard but does not search 2008-08-26 02:14:28 +02:00
vimboss b2e259fb62 updated for version 7.2-006 2008-08-25 03:04:18 +00:00
vimboss 28132658b2 updated for version 7.2-005 2008-08-25 02:49:18 +00:00
vimboss 92ed496e29 updated for version 7.2-004 2008-08-25 02:35:59 +00:00
vimboss 91ed612ac0 updated for version 7.2-003 2008-08-25 02:14:05 +00:00
Bjorn Winckler cec4f8b9ee Ensure order of files to open is not affected by 'suffixes'
Opening the same set of files in a new window and in an already open
window could result in the order of the files being different due to a
non-empty 'suffixes' option.  This patch clears 'suffix' before opening
multiple files and restores it afterwards.
2008-08-24 19:32:04 +02:00
Nico Weber 22799739f5 Fix problems with 'fullscreen' and :mksession
If 'fullscreen', 'lines' and 'columns' are all set in the same Vim
script then it used to be possible that the latter two options got
ignored.  This would in particular cause problems with :mks.
2008-08-24 19:00:37 +02:00
Bjorn Winckler 053d76dc13 Update help on mvim:// URL handler 2008-08-24 18:08:10 +02:00
Bjorn Winckler 38a0fd10d1 Make "Save changes" dialog conform to Apple HIG
If 'guioptions' has "c" set then the standard Vim dialog is used
instead.

The dialog for multiple unsaved changes has also been updated to be a
little more like the "Save changes" dialog.
2008-08-23 19:55:21 +02:00
Bjorn Winckler 325a3db78d Add "line" and "column" support to mvim:// URL handler 2008-08-24 00:10:09 +02:00
Bjorn Winckler 27c683092d Add option to hide MacVim when last window closes 2008-08-23 22:01:30 +02:00
Bjorn Winckler 0b896e4f59 Try to ensure new windows open with bottom edge visible on screen
In particular, if new windows are set to open maximized in the vertical
direction then the top of newly opened windows will be in line with the
top of the frontmost window.
2008-08-22 23:07:23 +02:00
Bjorn Winckler 6fcd21f338 Sort files opened from Finder
Finder does not take into consideration the order in which files are
selected anyway, so sorting the files makes opening multiple files more
predictable without breaking anything.
2008-08-22 02:19:10 +02:00
Bjorn Winckler 316034e1db Now works to use :maca on VimLeave auto command
To fix this the output queue is flushed before exiting a Vim process.
Also, the CloseWindowMsgID is added to the "unsafe" list so that other
unsafe messages (such as ExecuteActionMsgID) are not delayed until after
CloseWindowMsgID.
2008-08-22 01:53:24 +02:00
Bjorn Winckler dd46cfc500 Update 'go' help on 'T' option 2008-08-22 00:40:38 +02:00
Bjorn Winckler 28c43bdc64 Update Appcast 2008-08-21 20:11:00 +02:00
Nico Weber 97b5e3c119 Add support for mvim:// URL handler 2008-08-18 20:38:54 +02:00
vimboss 17f08c9776 updated for version 7.2-002 2008-08-17 21:44:45 +00:00
vimboss 9e2f853d00 updated for version 7.2-001 2008-08-17 21:03:18 +00:00
Bjorn Winckler d9d242b00f Snapshot 34 2008-08-16 17:47:30 +02:00
Bjorn Winckler a614dfbfcd Reorder preferences panel
"Use login shell" is now enabled by default and has been moved to the
Advanced pane.  Also, when clicking this or the "Use ATSUI renderer"
button the preload cache is rebuilt.
2008-08-16 16:27:25 +02:00
Bjorn Winckler d72aaeda7f Remove make-snapshot.sh and README-snapshot.sh 2008-08-16 14:36:15 +02:00
Bjorn Winckler 90377d2495 About dialog box shows "Custom Version" 2008-08-15 16:47:41 +02:00
Bjorn Winckler 8b385ca122 Limit scroll wheel message frequency
This avoids clogging up the DO messaging system on fast machines with
high resolution scroll wheels (or track pads).
2008-08-15 21:36:58 +02:00
Michael Wookey 94c7edebd7 Paragraph tidy up in gui_mac.txt
* Some paragraphs weren't formatted properly for the correct line
   length.
 * Fixed a small spelling mistake (know -> known).
2008-08-14 20:24:09 +02:00
Bjorn Winckler d70f67e5b9 Release text storage only if text view class is MMTextView 2008-08-14 19:24:09 +02:00
Bjorn Winckler 03c5dada39 Insert Vim state message first on output queue when flushing 2008-08-14 19:11:58 +02:00
Bjorn Winckler 0cec396a20 Use bundle path for main connection name
This is to make it easier to run two different versions of MacVim
simultaneously.
2008-08-14 16:50:12 +02:00
Bjorn Winckler 50be9d4227 Avoid "dropping incoming DO message ..." being logged
These warnings were caused by a Vim process sending a DO message and
then immediately exiting so that the process would some times die before
the message was received by MacVim.
2008-08-14 18:32:28 +02:00
Ben Schmidt a689202f4e Fix Leopard pty problems
Problem: Pseudo TTYs (ptys) are not successfully allocated on Leopard
         (or when Vim is compiled on Leopard).
Solution: Do not attempt to use SVR4-compatible ptys on Mac OS X even
          though configure may detect their presence.
2008-08-14 12:45:41 +02:00
Jjgod Jiang 41e6389b83 Fix rounding problem in ATSUI renderer
This problem will cause characters with descender (like 'g')
to be drawn a little bit lower than the correct place. Thus
will result some extra pixels after the line is cleared.
2008-08-14 11:02:27 +08:00
Bjorn Winckler 4c615b9622 Fix compilation problems on OS X 10.4 2008-08-13 01:03:57 +02:00
Bjorn Winckler c1f4a11e10 Add ATSUI renderer option to advanced prefs 2008-08-13 00:25:55 +02:00
Bjorn Winckler dcd91fe279 Remove duplicate code in text renderers
Most of the code shared between the text renderers now resides in a
"helper" object.  This way it will be a lot easier to maintain several
renderers at once.

As an added bonus, the ATSUI renderer now has mouse support as well as
drag-n-drop support.
2008-08-12 23:54:06 +02:00
Bjorn Winckler 452e41f92e Now works to set 'linespace' in [g]vimrc 2008-08-12 21:18:55 +02:00
Bjorn Winckler d58cb64b76 Stop using deprecated Cocoa APIs 2008-08-12 21:18:23 +02:00
Bjorn Winckler ee84ad6010 Remove unused method 2008-08-12 20:47:16 +02:00
Bjorn Winckler 055d07bd87 Change Quickstart slider to checkbox in advanced prefs 2008-08-12 20:18:40 +02:00
Bjorn Winckler 1611954a47 Remove NSLog 2008-08-11 21:37:36 +02:00
Bjorn Winckler 0a0f80b2c0 Clear preload cache on "login shell" option changes 2008-08-11 21:32:41 +02:00
Bjorn Winckler 6f0611c29a Start and stop FS events if needed when preload cache size changes 2008-08-11 20:18:47 +02:00
Bjorn Winckler 3420b3b4d8 Smaller FS event latency, cancel previous requests on FS event 2008-08-11 20:17:47 +02:00
Bjorn Winckler 1b68724361 Use FS Streams to watch modifications in ~/.vim 2008-08-11 20:16:47 +02:00
Bjorn Winckler 550e75eed2 Enable cross compilation in Xcode project
Deployment target is OS X 10.4, development SDK is current OS version.
2008-08-11 20:15:47 +02:00
Bjorn Winckler 7e36001233 Change a few toolbar icons 2008-08-11 20:14:47 +02:00
Bjorn Winckler 4f1446124f Missing toolbar icon fallback code fix 2008-08-11 20:13:48 +02:00
Bjorn Winckler 232720a611 Change pwd if file is opening in an "unused" editor
When opening a file from Finder, set the pwd to the directory the file
resides in but only if the editor window is unused (e.g. it doesn't
already have files open in it).
2008-08-10 21:16:31 +02:00
Bjorn Winckler 3c918888d7 Change "untitled window" detection heuristic
Also change terminology to "unused editor" instead of "untitled window"
since the detction has nothing to do with the window's title.
2008-08-10 21:12:34 +02:00
Bjorn Winckler 772859fcca Current directory handling changes
New processes default to using the user's home directory as the current
directory.  When opening files opened from Finder the current directory
is changed to that of the first file opened.
2008-08-10 18:04:27 +02:00
Bjorn Winckler 85c6b71293 "New Window" item on Dock menu activates MacVim 2008-08-10 16:50:02 +02:00
Bjorn Winckler 0fae0b0238 Version strings changed to 7.2 2008-08-10 16:09:17 +02:00
Bjorn Winckler 43ebeed946 Merge upstream 2008-08-09 19:56:00 +02:00
vimboss 0dceccaafb updated for version 7.2-000 2008-08-09 17:55:22 +00:00
vimboss 7d5860b32b updated for version 7.2c-003 2008-08-08 11:45:39 +00:00
vimboss 1c8fc078a3 updated for version 7.2c-002 2008-08-08 10:59:17 +00:00
vimboss c7fead45e0 updated for version 7.2c-001 2008-08-08 10:36:31 +00:00
vimboss ebb92ddd72 updated for version 7.2c-000 2008-08-06 17:06:04 +00:00
vimboss 3047db21af updated for version 7.2b-030 2008-08-06 13:28:57 +00:00
vimboss d128618aba updated for version 7.2b-029 2008-08-06 13:03:07 +00:00
vimboss 764d5e5121 updated for version 7.2b-028 2008-08-06 12:37:44 +00:00
vimboss 2d003da317 updated for version 7.2b-027 2008-08-06 12:19:26 +00:00
Bjorn Winckler 79e728785f Deprecate "Force New Window" menu 2008-08-03 21:32:30 +02:00
Bjorn Winckler 2c9ae326a0 Add "Advanced" preferences pane
The "Advanced" pane can be used to control the preload cache size.
2008-08-03 21:27:30 +02:00
Bjorn Winckler 705ddcf213 Rebuild cache when vimrc/gvimrc files have been modified 2008-08-02 22:00:22 +02:00
Bjorn Winckler ad06dcbb69 Modify how and when preloaded windows open
This hopefully fixes the bug where a preloaded window sometimes failed
to ever show up but MacVim would still think that it was showing.
2008-08-02 19:47:35 +02:00
Bjorn Winckler 5c2795baae More file opening options (plus quickstart feature)
The preferences panel allow for more ways to open files from other
applications.  This is controlled by three user preferences:
  - MMOpenInCurrentWindow
  - MMOpenLayout
  - MMVerticalSplit
These options are also respected when dropping files on a window.

The quickstart feature is currently disabled by default and can be
enabled by setting the user default MMPreloadCacheSize to a positive
integer.  With it enabled, new windows open more or less
instantaneously.
2008-08-01 21:31:03 +02:00
vimboss c295e3d8d1 updated for version 7.2b-026 2008-07-31 20:29:28 +00:00
vimboss b1b0936737 updated for version 7.2b-025 2008-07-31 20:04:27 +00:00
Jjgod Jiang e43b739944 A few MMAtsuiTextView rendering fixes
1. Fix AtsuiTextView italic angle problem.
2. Add underline/undercurl support for text drawing.
3. Use default background color to fill the inset area.
2008-07-29 21:42:45 +02:00
vimboss ea3d1b4ba6 updated for version 7.2b-024 2008-07-29 10:22:12 +00:00
vimboss 8c3618271b updated for version 7.2b-023 2008-07-27 13:57:29 +00:00
Bjorn Winckler 37e3e82f7c Ensure valid scroll region when deleting/inserting rows 2008-07-26 20:06:52 +02:00
vimboss 71ced625f5 updated for version 7.2b-022 2008-07-26 14:05:07 +00:00
vimboss fa46cfe5e7 updated for version 7.2b-021 2008-07-24 20:09:16 +00:00
vimboss 63cd7ab513 updated for version 7.2b-020 2008-07-24 19:31:11 +00:00
vimboss 93b5422bc6 updated for version 7.2b-019 2008-07-24 18:51:11 +00:00
vimboss a4a6146f2d updated for version 7.2b-018 2008-07-24 18:29:37 +00:00
vimboss 0b28a1550d updated for version 7.2b-017 2008-07-24 17:34:23 +00:00
vimboss d5bd3e3888 updated for version 7.2b-016 2008-07-24 16:45:38 +00:00
vimboss b1bc820ac9 updated for version 7.2b-015 2008-07-24 15:20:50 +00:00
vimboss c7333a644b updated for version 7.2b-014 2008-07-24 14:24:48 +00:00
vimboss a8cb1c5563 updated for version 7.2b-012 2008-07-24 11:51:40 +00:00
vimboss 752dcda77e updated for version 7.2b-011 2008-07-24 11:21:31 +00:00
vimboss b86aff8f47 updated for version 7.2b-010 2008-07-22 16:58:47 +00:00
vimboss 41a8a4d368 updated for version 7.2b-009 2008-07-18 15:14:43 +00:00
vimboss 25c670073a updated for version 7.2b-008 2008-07-18 10:54:50 +00:00
vimboss 6743003ba5 updated for version 7.2b-007 2008-07-18 10:05:58 +00:00
vimboss 61c7c7dd1b updated for version 7.2b-006 2008-07-18 09:26:30 +00:00
vimboss 76e0da8cce updated for version 7.2b-005 2008-07-16 20:43:37 +00:00
Jjgod Jiang 8c8db3cd4c Turn off ligatures by default
Turn off all common ligatures (fi, ffi) and rare ligatures (ct, ss).
2008-07-16 16:27:59 +08:00
Bjorn Winckler f96c9a6845 Update doc and short version string for Vim 7.2b 2008-07-16 16:16:23 +02:00
vimboss 998efd292e updated for version 7.2b-004 2008-07-14 21:05:15 +00:00
vimboss 093e2f20f2 updated for version 7.2b-003 2008-07-14 19:48:05 +00:00
vimboss 86c54f9853 updated for version 7.2b-002 2008-07-14 17:51:11 +00:00
vimboss d693919cdd updated for version 7.2b-001 2008-07-14 09:52:40 +00:00
vimboss 7a75fec5ca updated for version 7.2b-000 2008-07-13 17:41:49 +00:00
Bjorn Winckler e9f5ced05c Fix typo in selector name for delayed dialog 2008-07-11 16:10:06 +02:00
Nicolas Weber e5e3c0d2c1 Fix memory leaks in PSMTabBarControl 2008-07-08 20:18:40 +02:00
Matt Tolton 1e2467b3f3 Add versioning to the plugin architecture
The plugin architecture version can be retrieved by a plugin from the
app mediator by calling the majorVersion and minorVersion methods.
2008-07-08 19:59:59 +02:00
Matt Tolton 754d698c33 Add menu item to toggle the plugin view drawer
The setting is remembered, so if the drawer was last toggled closed then
it should not open again until toggled.
2008-07-08 19:58:56 +02:00
vimboss 73626b6c6c updated for version 7.2a-019 2008-07-08 15:15:08 +00:00
vimboss ec20f00066 updated for version 7.2a-018 2008-07-08 10:46:08 +00:00
vimboss 4d14ca32db updated for version 7.2a-017 2008-07-08 09:36:58 +00:00
vimboss 3f3214a409 updated for version 7.2a-016 2008-07-07 19:23:37 +00:00
vimboss 82a81c93f1 updated for version 7.2a-015 2008-07-06 17:16:02 +00:00
569 changed files with 24568 additions and 7312 deletions
+2
View File
@@ -3,6 +3,8 @@
src/MacVim/MacVim.xcodeproj/*.mode1
src/MacVim/MacVim.xcodeproj/*.mode1v3
src/MacVim/MacVim.xcodeproj/*.pbxuser
src/MacVim/icons/makeicns/*.o
src/MacVim/icons/makeicns/makeicns
src/MacVim/PSMTabBarControl/PSMTabBarControl.xcodeproj/*.mode1
src/MacVim/PSMTabBarControl/PSMTabBarControl.xcodeproj/*.pbxuser
src/MacVim/PSMTabBarControl/build
+4 -4
View File
@@ -9,10 +9,10 @@ Vim Vi IMproved. A clone of the UNIX text editor Vi. Very useful
messages, shows current file name in window title, on-line
help, rectangular cut/paste, etc., etc., etc...
Version 7.2a. Also runs under UNIX, MSDOS and other systems.
vim72art.tgz contains the documentation and syntax files.
vim72abin.tgz contains the binaries.
vim72asrc.tgz contains the sources.
Version 7.2. Also runs under UNIX, MSDOS and other systems.
vim72rt.tgz contains the documentation and syntax files.
vim72bin.tgz contains the binaries.
vim72src.tgz contains the sources.
Author: Bram Moolenaar et al.
+2
View File
@@ -285,6 +285,7 @@ SRC_DOS = \
src/proto/os_win32.pro \
src/proto/os_mswin.pro \
src/testdir/Make_dos.mak \
src/testdir/Make_ming.mak \
src/testdir/dos.vim \
src/uninstal.c \
src/vim.def \
@@ -516,6 +517,7 @@ RT_SCRIPTS = \
runtime/indent/*.vim \
runtime/indent/README.txt \
runtime/ftplugin/*.vim \
runtime/ftplugin/logtalk.dict \
runtime/ftplugin/README.txt \
runtime/plugin/*.vim \
runtime/plugin/README.txt \
+2 -2
View File
@@ -69,7 +69,7 @@ all install uninstall tools config configure reconfig proto depend lint tags typ
# Before creating an archive first delete all backup files, *.orig, etc.
MAJOR = 7
MINOR = 2a
MINOR = 2
# Uncomment this line if the Win32s version is to be included.
DOSBIN_S = dosbin_s
@@ -133,7 +133,7 @@ DOSBIN_S = dosbin_s
# Win32 console version:
# - Set environment for Visual C++ 2008 Express Edition: "msvc2008.bat". Or,
# when using the Visual C++ Toolkit 2003: "msvcsetup.bat" (adjust the paths
# when necessary).
# when necessary). For Windows 98 the 2003 version is required.
# - "nmake -f Make_mvc.mak"
# - "rm testdir/*.out", "nmake -f Make_mvc.mak test" and check the output.
# - Rename the executables to "vimw32.exe", "xxdw32.exe".
+1 -1
View File
@@ -1,4 +1,4 @@
README.txt for version 7.2a of Vim: Vi IMproved.
README.txt for version 7.2 of Vim: Vi IMproved.
WHAT IS VIM
+1 -1
View File
@@ -1,4 +1,4 @@
README_ami.txt for version 7.2a of Vim: Vi IMproved.
README_ami.txt for version 7.2 of Vim: Vi IMproved.
This file explains the installation of Vim on Amiga systems.
See README.txt for general information about Vim.
+1 -1
View File
@@ -1,4 +1,4 @@
README_amibin.txt for version 7.2a of Vim: Vi IMproved.
README_amibin.txt for version 7.2 of Vim: Vi IMproved.
See "README.txt" for general information about Vim.
See "README_ami.txt" for installation instructions for the Amiga.
+1 -1
View File
@@ -1,4 +1,4 @@
README_amisrc.txt for version 7.2a of Vim: Vi IMproved.
README_amisrc.txt for version 7.2 of Vim: Vi IMproved.
See "README.txt" for general information about Vim.
See "README_ami.txt" for installation instructions for the Amiga.
+10 -10
View File
@@ -1,19 +1,19 @@
README_bindos.txt for version 7.2a of Vim: Vi IMproved.
README_bindos.txt for version 7.2 of Vim: Vi IMproved.
See "README.txt" for general information about Vim.
See "README_dos.txt" for installation instructions for MS-DOS and MS-Windows.
These files are in the runtime archive (vim70rt.zip).
These files are in the runtime archive (vim72rt.zip).
There are several binary distributions of Vim for the PC. You would normally
pick only one of them, but it's also possible to install several.
These ones are available (the version number may differ):
vim70d16.zip 16 bit DOS version
vim70d32.zip 32 bit DOS version
vim70w32.zip Windows 95/98/NT/etc. console version
gvim70.zip Windows 95/98/NT/etc. GUI version
gvim70ole.zip Windows 95/98/NT/etc. GUI version with OLE
gvim70_s.zip Windows 3.1 GUI version
vim72d16.zip 16 bit DOS version
vim72d32.zip 32 bit DOS version
vim72w32.zip Windows 95/98/NT/etc. console version
gvim72.zip Windows 95/98/NT/etc. GUI version
gvim72ole.zip Windows 95/98/NT/etc. GUI version with OLE
gvim72_s.zip Windows 3.1 GUI version
You MUST also get the runtime archive (vim70rt.zip).
The sources are also available (vim70src.zip).
You MUST also get the runtime archive (vim72rt.zip).
The sources are also available (vim72src.zip).
+16 -16
View File
@@ -1,4 +1,4 @@
README_dos.txt for version 7.2a of Vim: Vi IMproved.
README_dos.txt for version 7.2 of Vim: Vi IMproved.
This file explains the installation of Vim on MS-DOS and MS-Windows systems.
See "README.txt" for general information about Vim.
@@ -47,13 +47,13 @@ These are the normal steps to install Vim from the .zip archives:
Binary and runtime Vim archives are normally unpacked in the same location,
on top of each other.
2. Unpack the zip archives. This will create a new directory "vim\vim70",
2. Unpack the zip archives. This will create a new directory "vim\vim72",
in which all the distributed Vim files are placed. Since the directory
name includes the version number, it is unlikely that you overwrite
existing files.
Examples:
pkunzip -d gvim70.zip
unzip vim70w32.zip
pkunzip -d gvim72.zip
unzip vim72w32.zip
You need to unpack the runtime archive and at least one of the binary
archives. When using more than one binary version, be careful not to
@@ -69,7 +69,7 @@ These are the normal steps to install Vim from the .zip archives:
archive and follow the instructions in the documentation.
3. Change to the new directory:
cd vim\vim70
cd vim\vim72
Run the "install.exe" program. It will ask you a number of questions about
how you would like to have your Vim setup. Among these are:
- You can tell it to write a "_vimrc" file with your preferences in the
@@ -80,8 +80,8 @@ These are the normal steps to install Vim from the .zip archives:
console or in a shell. You can select one of the directories in your
$PATH. If you skip this, you can add Vim to the search path manually:
The simplest is to add a line to your autoexec.bat. Examples:
set path=%path%;C:\vim\vim70
set path=%path%;D:\editors\vim\vim70
set path=%path%;C:\vim\vim72
set path=%path%;D:\editors\vim\vim72
- Create entries for Vim on the desktop and in the Start menu.
That's it!
@@ -94,7 +94,7 @@ Remarks:
point to the top directory of your Vim files. Example:
set VIM=C:\editors\vim
Vim version 6.0 will look for your vimrc file in $VIM, and for the runtime
files in $VIM/vim70. See ":help $VIM" for more information.
files in $VIM/vim72. See ":help $VIM" for more information.
- To avoid confusion between distributed files of different versions and your
own modified vim scripts, it is recommended to use this directory layout:
@@ -105,14 +105,14 @@ Remarks:
C:\vim\vimfiles\ftplugin\*.vim Filetype plugins
C:\vim\... Other files you made.
Distributed files:
C:\vim\vim70\vim.exe The Vim version 6.0 executable.
C:\vim\vim70\doc\*.txt The version 6.0 documentation files.
C:\vim\vim70\bugreport.vim A Vim version 6.0 script.
C:\vim\vim70\... Other version 6.0 distributed files.
C:\vim\vim72\vim.exe The Vim version 6.0 executable.
C:\vim\vim72\doc\*.txt The version 6.0 documentation files.
C:\vim\vim72\bugreport.vim A Vim version 6.0 script.
C:\vim\vim72\... Other version 6.0 distributed files.
In this case the $VIM environment variable would be set like this:
set VIM=C:\vim
Then $VIMRUNTIME will automatically be set to "$VIM\vim70". Don't add
"vim70" to $VIM, that won't work.
Then $VIMRUNTIME will automatically be set to "$VIM\vim72". Don't add
"vim72" to $VIM, that won't work.
- You can put your Vim executable anywhere else. If the executable is not
with the other Vim files, you should set $VIM. The simplest is to add a line
@@ -136,8 +136,8 @@ Remarks:
Select Properties.
5. In the Program tab, change the "Cmdline" to add "/c" and the name of the
Vim executable. Examples:
C:\command.com /c C:\vim\vim70\vim.exe
C:\command.com /c D:\editors\vim\vim70\vim.exe
C:\command.com /c C:\vim\vim72\vim.exe
C:\command.com /c D:\editors\vim\vim72\vim.exe
6. Select the font, window size, etc. that you like. If this isn't
possible, select "Advanced" in the Program tab, and deselect "MS-DOS
mode".
+1 -1
View File
@@ -1,4 +1,4 @@
README_extra.txt for version 7.2a of Vim: Vi IMproved.
README_extra.txt for version 7.2 of Vim: Vi IMproved.
The extra archive of Vim is to be used in combination with the source archive
(vim-7.0-src.tar.gz). The extra archive is useless without it.
+1 -1
View File
@@ -1,4 +1,4 @@
README_lang.txt for version 7.2a of Vim: Vi IMproved.
README_lang.txt for version 7.2 of Vim: Vi IMproved.
This file contains files for non-English languages:
- Translated messages.
+1 -1
View File
@@ -1,4 +1,4 @@
README_mac.txt for version 7.2a of Vim: Vi IMproved.
README_mac.txt for version 7.2 of Vim: Vi IMproved.
This file explains the installation of Vim on Macintosh systems.
See "README.txt" for general information about Vim.
+1 -1
View File
@@ -1,4 +1,4 @@
README_ole.txt for version 7.2a of Vim: Vi IMproved.
README_ole.txt for version 7.2 of Vim: Vi IMproved.
This archive contains gvim.exe with OLE interface and VisVim.
This version of gvim.exe can also load a number of interface dynamically (you
+12 -12
View File
@@ -1,32 +1,32 @@
README_os2.txt for version 7.2a of Vim: Vi IMproved.
README_os2.txt for version 7.2 of Vim: Vi IMproved.
This file explains the installation of Vim on OS/2 systems.
See "README.txt" for general information about Vim.
NOTE: You will need two archives:
vim71rt.zip contains the runtime files (same as for the PC version)
vim71os2.zip contains the OS/2 executables
vim72rt.zip contains the runtime files (same as for the PC version)
vim72os2.zip contains the OS/2 executables
1. Go to the directory where you want to put the Vim files. Examples:
cd C:\
cd D:\editors
2. Unpack the zip archives. This will create a new directory "vim/vim71",
2. Unpack the zip archives. This will create a new directory "vim/vim72",
in which all the distributed Vim files are placed. Since the directory
name includes the version number, it is unlikely that you overwrite
existing files.
Examples:
pkunzip -d vim71os2.zip
unzip vim71os2.zip
pkunzip -d vim72os2.zip
unzip vim72os2.zip
After you unpacked the files, you can still move the whole directory tree
to another location.
3. Add the directory where vim.exe is to your path. The simplest is to add a
line to your autoexec.bat. Examples:
set path=%path%;C:\vim\vim71
set path=%path%;D:\editors\vim\vim71
set path=%path%;C:\vim\vim72
set path=%path%;D:\editors\vim\vim72
That's it!
@@ -41,10 +41,10 @@ Extra remarks:
C:\vim\_viminfo Dynamic info for 'viminfo'.
C:\vim\... Other files you made.
Distributed files:
C:\vim\vim71\vim.exe The Vim version 7.1 executable.
C:\vim\vim71\doc\*.txt The version 7.1 documentation files.
C:\vim\vim71\bugreport.vim A Vim version 7.1 script.
C:\vim\vim71\... Other version 7.1 distributed files.
C:\vim\vim72\vim.exe The Vim version 7.1 executable.
C:\vim\vim72\doc\*.txt The version 7.1 documentation files.
C:\vim\vim72\bugreport.vim A Vim version 7.1 script.
C:\vim\vim72\... Other version 7.1 distributed files.
In this case the $VIM environment variable would be set like this:
set VIM=C:\vim
+1 -1
View File
@@ -1,4 +1,4 @@
README_os_390.txt for version 7.2a of Vim: Vi IMproved.
README_os_390.txt for version 7.2 of Vim: Vi IMproved.
Welcome to the OS/390 Unix port of VIM.
+1 -1
View File
@@ -1,4 +1,4 @@
README_src.txt for version 7.2a of Vim: Vi IMproved.
README_src.txt for version 7.2 of Vim: Vi IMproved.
The source archive contains the files needed to compile Vim on Unix systems.
It is packed for Unix systems (NL line separator). It is also used for other
+2 -2
View File
@@ -1,8 +1,8 @@
README_srcdos.txt for version 7.2a of Vim: Vi IMproved.
README_srcdos.txt for version 7.2 of Vim: Vi IMproved.
See "README.txt" for general information about Vim.
See "README_dos.txt" for installation instructions for MS-DOS and MS-Windows.
These files are in the runtime archive (vim70rt.zip).
These files are in the runtime archive (vim72rt.zip).
The DOS source archive contains the files needed to compile Vim on MS-DOS or
+1 -1
View File
@@ -1,4 +1,4 @@
README_unix.txt for version 7.2a of Vim: Vi IMproved.
README_unix.txt for version 7.2 of Vim: Vi IMproved.
This file explains the installation of Vim on Unix systems.
See "README.txt" for general information about Vim.
+1 -1
View File
@@ -1,4 +1,4 @@
README_vms.txt for version 7.2a of Vim: Vi IMproved.
README_vms.txt for version 7.2 of Vim: Vi IMproved.
This file explains the installation of Vim on VMS systems.
See "README.txt" in the runtime archive for information about Vim.
+1 -1
View File
@@ -1,4 +1,4 @@
README_w32s.txt for version 7.2a of Vim: Vi IMproved.
README_w32s.txt for version 7.2 of Vim: Vi IMproved.
This archive contains the gvim.exe that was specifically compiled for use in
the Win32s subsystem in MS-Windows 3.1 and 3.11.
+1 -1
View File
@@ -22,7 +22,7 @@
!define HAVE_NLS
!define VER_MAJOR 7
!define VER_MINOR 2a
!define VER_MINOR 2
# ----------- No configurable settings below this line -----------
+63 -28
View File
@@ -2,13 +2,15 @@
" Description: Perform Ada specific completion & tagging.
" Language: Ada (2005)
" $Id$
" Maintainer: Martin Krischik
" Maintainer: Martin Krischik <krischik@users.sourceforge.net>
" Taylor Venable <taylor@metasyntax.net>
" Neil Bird <neil@fnxweb.com>
" Ned Okie <nokie@radford.edu>
" $Author$
" $Date$
" Version: 4.2
" Version: 4.6
" $Revision$
" $HeadURL: https://svn.sourceforge.net/svnroot/gnuada/trunk/tools/vim/autoload/ada.vim $
" $HeadURL: https://gnuada.svn.sourceforge.net/svnroot/gnuada/trunk/tools/vim/autoload/ada.vim $
" History: 24.05.2006 MK Unified Headers
" 26.05.2006 MK ' should not be in iskeyword.
" 16.07.2006 MK Ada-Mode as vim-ball
@@ -17,6 +19,10 @@
" 05.11.2006 MK Bram suggested not to use include protection for
" autoload
" 05.11.2006 MK Bram suggested to save on spaces
" 08.07.2007 TV fix mapleader problems.
" 09.05.2007 MK Session just won't work no matter how much
" tweaking is done
" 19.09.2007 NO still some mapleader problems
" Help Page: ft-ada-functions
"------------------------------------------------------------------------------
@@ -425,30 +431,49 @@ function ada#Create_Tags (option)
execute '!ctags --excmd=number ' . l:Filename
endfunction ada#Create_Tags
function ada#Switch_Session (New_Session) "{{{1
if a:New_Session != v:this_session
"
" We actualy got a new session - otherwise there
" is nothing to do.
"
if strlen (v:this_session) > 0
execute 'mksession! ' . v:this_session
" Section: ada#Switch_Session {{{1
"
function ada#Switch_Session (New_Session)
"
" you should not save to much date into the seession since they will
" be sourced
"
let l:sessionoptions=&sessionoptions
try
set sessionoptions=buffers,curdir,folds,globals,resize,slash,tabpages,tabpages,unix,winpos,winsize
if a:New_Session != v:this_session
"
" We actualy got a new session - otherwise there
" is nothing to do.
"
if strlen (v:this_session) > 0
execute 'mksession! ' . v:this_session
endif
let v:this_session = a:New_Session
"if filereadable (v:this_session)
"execute 'source ' . v:this_session
"endif
augroup ada_session
autocmd!
autocmd VimLeavePre * execute 'mksession! ' . v:this_session
augroup END
"if exists ("g:Tlist_Auto_Open") && g:Tlist_Auto_Open
"TlistOpen
"endif
endif
let v:this_session = a:New_Session
if filereadable (v:this_session)
execute 'source ' . v:this_session
endif
augroup ada_session
autocmd!
autocmd VimLeavePre * execute 'mksession! ' . v:this_session
augroup END
endif
finally
let &sessionoptions=l:sessionoptions
endtry
return
endfunction ada#Switch_Session "}}}1
endfunction ada#Switch_Session
" Section: GNAT Pretty Printer folding {{{1
"
@@ -546,18 +571,23 @@ function ada#Map_Menu (Text, Keys, Command)
\ a:Keys .
\" <C-O>:" . a:Command . "<CR>"
else
if exists("g:mapleader")
let l:leader = g:mapleader
else
let l:leader = '\'
endif
execute
\ "50amenu " .
\ "Ada." . escape(a:Text, ' ') .
\ "<Tab>" . escape(g:mapleader . "a" . a:Keys , '\') .
\ "<Tab>" . escape(l:leader . "a" . a:Keys , '\') .
\ " :" . a:Command . "<CR>"
execute
\ "nnoremap <buffer>" .
\ escape(g:mapleader . "a" . a:Keys , '\') .
\ escape(l:leader . "a" . a:Keys , '\') .
\" :" . a:Command
execute
\ "inoremap <buffer>" .
\ escape(g:mapleader . "a" . a:Keys , '\') .
\ escape(l:leader . "a" . a:Keys , '\') .
\" <C-O>:" . a:Command
endif
return
@@ -566,10 +596,15 @@ endfunction
" Section: ada#Map_Popup {{{2
"
function ada#Map_Popup (Text, Keys, Command)
if exists("g:mapleader")
let l:leader = g:mapleader
else
let l:leader = '\'
endif
execute
\ "50amenu " .
\ "PopUp." . escape(a:Text, ' ') .
\ "<Tab>" . escape(g:mapleader . "a" . a:Keys , '\') .
\ "<Tab>" . escape(l:leader . "a" . a:Keys , '\') .
\ " :" . a:Command . "<CR>"
call ada#Map_Menu (a:Text, a:Keys, a:Command)
+2 -2
View File
@@ -5,9 +5,9 @@
" Maintainer: Martin Krischik
" $Author$
" $Date$
" Version: 4.2
" Version: 4.6
" $Revision$
" $HeadURL: https://svn.sourceforge.net/svnroot/gnuada/trunk/tools/vim/autoload/adacomplete.vim $
" $HeadURL: https://gnuada.svn.sourceforge.net/svnroot/gnuada/trunk/tools/vim/autoload/adacomplete.vim $
" History: 24.05.2006 MK Unified Headers
" 26.05.2006 MK improved search for begin of word.
" 16.07.2006 MK Ada-Mode as vim-ball
+4 -4
View File
@@ -3,12 +3,12 @@
" Language: Ada (Dec Ada)
" $Id$
" Copyright: Copyright (C) 2006 Martin Krischik
" Maintainer: Martin Krischik
" Maintainer: Martin Krischik <krischik@users.sourceforge.net>
" $Author$
" $Date$
" Version: 4.2
" Version: 4.6
" $Revision$
" $HeadURL: https://svn.sourceforge.net/svnroot/gnuada/trunk/tools/vim/autoload/decada.vim $
" $HeadURL: https://gnuada.svn.sourceforge.net/svnroot/gnuada/trunk/tools/vim/autoload/decada.vim $
" History: 21.07.2006 MK New Dec Ada
" 15.10.2006 MK Bram's suggestion for runtime integration
" 05.11.2006 MK Bram suggested not to use include protection for
@@ -45,7 +45,7 @@ function decada#Set_Session (...) dict " {{{1
call ada#Switch_Session (a:1)
elseif argc() == 0 && strlen (v:servername) > 0
call ada#Switch_Session (
\ expand('~')[0:-2] . ".vimfiles.session]" .
\ expand('~')[0:-2] . ".vimfiles.session]decada_" .
\ v:servername . ".vim")
endif
return
+14 -6
View File
@@ -1,8 +1,8 @@
" ---------------------------------------------------------------------
" getscript.vim
" Author: Charles E. Campbell, Jr.
" Date: May 30, 2008
" Version: 30
" Date: Jul 10, 2008
" Version: 31
" Installing: :help glvs-install
" Usage: :help glvs
"
@@ -23,7 +23,7 @@ set cpo&vim
if exists("g:loaded_getscript")
finish
endif
let g:loaded_getscript= "v30"
let g:loaded_getscript= "v31"
" ---------------------------
" Global Variables: {{{1
@@ -140,6 +140,12 @@ fun! getscript#GetLatestVimScripts()
return
endif
" insure that fnameescape() is available
if !exists("*fnameescape")
echoerr "GetLatestVimScripts needs fnameescape() (provided by 7.1.299 or later)"
return
endif
" Find the .../GetLatest subdirectory under the runtimepath
for datadir in split(&rtp,',') + ['']
if isdirectory(datadir."/GetLatest")
@@ -181,7 +187,8 @@ fun! getscript#GetLatestVimScripts()
" don't let any events interfere (like winmanager's, taglist's, etc)
let eikeep= &ei
set ei=all
let hlskeep= &hls
set ei=all hls&vim
" record current directory, change to datadir, open split window with
" datafile
@@ -316,6 +323,7 @@ fun! getscript#GetLatestVimScripts()
" restore events and current directory
exe "cd ".fnameescape(substitute(origdir,'\','/','ge'))
let &ei= eikeep
let &hls= hlskeep
setlocal nolz
" call Dredir("BUFFER TEST (GetLatestVimScripts 2)","ls!")
" call Dret("GetLatestVimScripts : did ".s:downloads." downloads")
@@ -506,14 +514,14 @@ fun! s:GetOneScript(...)
new|exe "silent r!".g:GetLatestVimScripts_wget." ".g:GetLatestVimScripts_options." ".s:Escape(sname)." ".s:Escape('http://vim.sf.net/scripts/download_script.php?src_id='.latestsrcid)|q
else
" call Decho("exe silent !".g:GetLatestVimScripts_wget." ".g:GetLatestVimScripts_options." ".s:Escape(sname)." ".s:Escape('http://vim.sf.net/scripts/download_script.php?src_id='))
exe "silent !".g:GetLatestVimScripts_wget." ".g:GetLatestVimScripts_options." ".s:Escape(sname)." ".s:Escape('http://vim.sf.net/scripts/download_script.php?src_id=')
exe "silent !".g:GetLatestVimScripts_wget." ".g:GetLatestVimScripts_options." ".s:Escape(sname)." ".s:Escape('http://vim.sf.net/scripts/download_script.php?src_id=').latestsrcid
endif
" AutoInstall: only if doautoinstall has been requested by the plugin itself
if doautoinstall
" call Decho("attempting to do autoinstall: getcwd<".getcwd()."> filereadable(".sname.")=".filereadable(sname))
if filereadable(sname)
call Decho("exe silent !".g:GetLatestVimScripts_mv." ".s:Escape(sname)." ".s:Escape(s:autoinstall))
" call Decho("exe silent !".g:GetLatestVimScripts_mv." ".s:Escape(sname)." ".s:Escape(s:autoinstall))
exe "silent !".g:GetLatestVimScripts_mv." ".s:Escape(sname)." ".s:Escape(s:autoinstall)
let curdir = escape(substitute(getcwd(),'\','/','ge'),"|[]*'\" #")
let installdir= curdir."/Installed"
+18 -10
View File
@@ -3,12 +3,13 @@
" Language: Ada (GNAT)
" $Id$
" Copyright: Copyright (C) 2006 Martin Krischik
" Maintainer: Martin Krischik
" Maintainer: Martin Krischi <krischik@users.sourceforge.net>k
" Ned Okie <nokie@radford.edu>
" $Author$
" $Date$
" Version: 4.2
" Version: 4.6
" $Revision$
" $HeadURL: https://svn.sourceforge.net/svnroot/gnuada/trunk/tools/vim/autoload/gnat.vim $
" $HeadURL: https://gnuada.svn.sourceforge.net/svnroot/gnuada/trunk/tools/vim/autoload/gnat.vim $
" History: 24.05.2006 MK Unified Headers
" 16.07.2006 MK Ada-Mode as vim-ball
" 05.08.2006 MK Add session support
@@ -16,6 +17,7 @@
" 05.11.2006 MK Bram suggested not to use include protection for
" autoload
" 05.11.2006 MK Bram suggested to save on spaces
" 19.09.2007 NO use project file only when there is a project
" Help Page: compiler-gnat
"------------------------------------------------------------------------------
@@ -71,13 +73,19 @@ function gnat#Set_Project_File (...) dict " {{{1
execute 'mksession! ' . v:this_session
endif
if strlen (self.Project_File) > 0
call ada#Switch_Session (
\ expand('~') . "/vimfiles/session/" .
\ fnamemodify (self.Project_File, ":t:r") . ".vim")
else
call ada#Switch_Session ('')
endif
"if strlen (self.Project_File) > 0
"if has("vms")
"call ada#Switch_Session (
"\ expand('~')[0:-2] . ".vimfiles.session]gnat_" .
"\ fnamemodify (self.Project_File, ":t:r") . ".vim")
"else
"call ada#Switch_Session (
"\ expand('~') . "/vimfiles/session/gnat_" .
"\ fnamemodify (self.Project_File, ":t:r") . ".vim")
"endif
"else
"call ada#Switch_Session ('')
"endif
return
endfunction gnat#Set_Project_File " }}}1
+5 -5
View File
@@ -1,6 +1,6 @@
" Vim autoload file for editing compressed files.
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2008 May 29
" Last Change: 2008 Jul 04
" These functions are used by the gzip plugin.
@@ -153,9 +153,9 @@ fun gzip#write(cmd)
let nmt = s:tempname(nm)
if rename(nm, nmt) == 0
if exists("b:gzip_comp_arg")
call system(a:cmd . " " . b:gzip_comp_arg . " " . s:escape(nmt))
call system(a:cmd . " " . b:gzip_comp_arg . " -- " . s:escape(nmt))
else
call system(a:cmd . " " . s:escape(nmt))
call system(a:cmd . " -- " . s:escape(nmt))
endif
call rename(nmt . "." . expand("<afile>:e"), nm)
endif
@@ -180,10 +180,10 @@ fun gzip#appre(cmd)
if rename(nm, nmte) == 0
if &patchmode != "" && getfsize(nm . &patchmode) == -1
" Create patchmode file by creating the decompressed file new
call system(a:cmd . " -c " . s:escape(nmte) . " > " . s:escape(nmt))
call system(a:cmd . " -c -- " . s:escape(nmte) . " > " . s:escape(nmt))
call rename(nmte, nm . &patchmode)
else
call system(a:cmd . " " . s:escape(nmte))
call system(a:cmd . " -- " . s:escape(nmte))
endif
call rename(nmt, nm)
endif
+590 -533
View File
File diff suppressed because it is too large Load Diff
+4 -15
View File
@@ -1,7 +1,7 @@
" netrwSettings.vim: makes netrw settings simpler
" Date: Mar 11, 2008
" Date: Jul 02, 2008
" Maintainer: Charles E Campbell, Jr <drchipNOSPAM at campbellfamily dot biz>
" Version: 11
" Version: 12
" Copyright: Copyright (C) 1999-2007 Charles E. Campbell, Jr. {{{1
" Permission is hereby granted to use and distribute this code,
" with or without modifications, provided that this copyright
@@ -19,7 +19,7 @@
if exists("g:loaded_netrwSettings") || &cp
finish
endif
let g:loaded_netrwSettings = "v11"
let g:loaded_netrwSettings = "v12"
" ---------------------------------------------------------------------
" NetrwSettings: {{{1
@@ -82,8 +82,6 @@ fun! netrwSettings#NetrwSettings()
put = 'let g:netrw_ftpmode = '.g:netrw_ftpmode
put = 'let g:netrw_ignorenetrc = '.g:netrw_ignorenetrc
put = 'let g:netrw_sshport = '.g:netrw_sshport
let shqline= line("$")
put = 'let g:netrw_shq...'
put = 'let g:netrw_use_nt_rcp = '.g:netrw_use_nt_rcp
put = 'let g:netrw_win95ftp = '.g:netrw_win95ftp
let s:netrw_xfer_stop= line(".")
@@ -101,8 +99,6 @@ fun! netrwSettings#NetrwSettings()
else
put = 'let g:netrw_browsex_viewer = (not defined)'
endif
let cdescline= line("$")
put ='let g:netrw_cd_escape...'
put = 'let g:netrw_compress = '.g:netrw_compress
let decompressline= line("$")
put ='let g:netrw_decompress...'
@@ -137,6 +133,7 @@ fun! netrwSettings#NetrwSettings()
put = 'let g:netrw_silent = '.g:netrw_silent
put = 'let g:netrw_sort_by = '.g:netrw_sort_by
put = 'let g:netrw_sort_direction = '.g:netrw_sort_direction
put = 'let g:netrw_sort_options = '.g:netrw_sort_options
put = 'let g:netrw_sort_sequence = '.g:netrw_sort_sequence
put = 'let g:netrw_special_syntax = '.g:netrw_special_syntax
put = 'let g:netrw_ssh_browse_reject = '.g:netrw_ssh_browse_reject
@@ -159,14 +156,6 @@ fun! netrwSettings#NetrwSettings()
silent %s/= $/= ''/e
1
" Put in g:netrw_shq setting and g:netrw_cd_escape
" (deferred so as to avoid the quote manipulation just preceding)
if g:netrw_shq == "'"
call setline(shqline, 'let g:netrw_shq = "'.g:netrw_shq.'"')
else
call setline(shqline, "let g:netrw_shq = '".g:netrw_shq."'")
endif
call setline(cdescline, "let g:netrw_cd_escape = ".'"'.escape(g:netrw_cd_escape,'\"').'"')
call setline(decompressline,"let g:netrw_decompress = ".substitute(string(g:netrw_decompress),"^'\\(.*\\)'$",'\1',''))
call setline(fnameescline, "let g:netrw_fname_escape = '".escape(g:netrw_fname_escape,"'")."'")
call setline(globescline, "let g:netrw_glob_escape = '".escape(g:netrw_glob_escape,"'")."'")
+7 -7
View File
@@ -301,7 +301,7 @@ class VimRubyCompletion
def get_buffer_entity(name, vimfun)
loading_allowed = VIM::evaluate("exists('g:rubycomplete_buffer_loading') && g:rubycomplete_buffer_loading")
return nil if loading_allowed != '1'
return nil if loading_allowed.to_i.zero?
return nil if /(\"|\')+/.match( name )
buf = VIM::Buffer.current
nums = eval( VIM::evaluate( vimfun % name ) )
@@ -368,7 +368,7 @@ class VimRubyCompletion
# this will be a little expensive.
loading_allowed = VIM::evaluate("exists('g:rubycomplete_buffer_loading') && g:rubycomplete_buffer_loading")
allow_aggressive_load = VIM::evaluate("exists('g:rubycomplete_classes_in_global') && g:rubycomplete_classes_in_global")
return [] if allow_aggressive_load != '1' || loading_allowed != '1'
return [] if allow_aggressive_load.to_i.zero? || loading_allowed.to_i.zero?
buf = VIM::Buffer.current
eob = buf.length
@@ -401,7 +401,7 @@ class VimRubyCompletion
def load_rails
allow_rails = VIM::evaluate("exists('g:rubycomplete_rails') && g:rubycomplete_rails")
return if allow_rails != '1'
return if allow_rails.to_i.zero?
buf_path = VIM::evaluate('expand("%:p")')
file_name = VIM::evaluate('expand("%:t")')
@@ -461,7 +461,7 @@ class VimRubyCompletion
def get_rails_helpers
allow_rails = VIM::evaluate("exists('g:rubycomplete_rails') && g:rubycomplete_rails")
rails_loaded = VIM::evaluate('s:rubycomplete_rails_loaded')
return [] if allow_rails != '1' || rails_loaded != '1'
return [] if allow_rails.to_i.zero? || rails_loaded.to_i.zero?
buf_path = VIM::evaluate('expand("%:p")')
buf_path.gsub!( /\\/, "/" )
@@ -511,7 +511,7 @@ class VimRubyCompletion
def add_rails_columns( cls )
allow_rails = VIM::evaluate("exists('g:rubycomplete_rails') && g:rubycomplete_rails")
rails_loaded = VIM::evaluate('s:rubycomplete_rails_loaded')
return [] if allow_rails != '1' || rails_loaded != '1'
return [] if allow_rails.to_i.zero? || rails_loaded.to_i.zero?
begin
eval( "#{cls}.establish_connection" )
@@ -534,7 +534,7 @@ class VimRubyCompletion
def get_rails_view_methods
allow_rails = VIM::evaluate("exists('g:rubycomplete_rails') && g:rubycomplete_rails")
rails_loaded = VIM::evaluate('s:rubycomplete_rails_loaded')
return [] if allow_rails != '1' || rails_loaded != '1'
return [] if allow_rails.to_i.zero? || rails_loaded.to_i.zero?
buf_path = VIM::evaluate('expand("%:p")')
buf_path.gsub!( /\\/, "/" )
@@ -580,7 +580,7 @@ class VimRubyCompletion
def get_completions(base)
loading_allowed = VIM::evaluate("exists('g:rubycomplete_buffer_loading') && g:rubycomplete_buffer_loading")
if loading_allowed == '1'
if loading_allowed.to_i == 1
load_requires
load_rails
end
+89 -47
View File
@@ -1,7 +1,7 @@
" tar.vim: Handles browsing tarfiles
" AUTOLOAD PORTION
" Date: Jun 12, 2008
" Version: 16
" Date: Aug 08, 2008
" Version: 23 + modifications by Bram
" Maintainer: Charles E Campbell, Jr <NdrOchip@ScampbellPfamily.AbizM-NOSPAM>
" License: Vim License (see vim's :help license)
"
@@ -24,7 +24,7 @@ set cpo&vim
if &cp || exists("g:loaded_tar") || v:version < 700
finish
endif
let g:loaded_tar= "v16"
let g:loaded_tar= "v23b"
"call Decho("loading autoload/tar.vim")
if v:version < 701 || (v:version == 701 && !has("patch299"))
echoerr "(autoload/tar.vim) need vim v7.1 with patchlevel 299"
@@ -130,21 +130,25 @@ fun! tar#Browse(tarfile)
let tarfile= a:tarfile
if has("win32") && executable("cygpath")
" assuming cygwin
let tarfile=substitute(system("cygpath -u ".s:Escape(tarfile)),'\n$','','e')
let tarfile=substitute(system("cygpath -u ".s:Escape(tarfile,0)),'\n$','','e')
endif
let curlast= line("$")
if tarfile =~# '\.\(gz\|tgz\)$'
" call Decho("1: exe silent r! gzip -d -c ".s:Escape(tarfile)." | ".g:tar_cmd." -".g:tar_browseoptions." - ")
exe "silent r! gzip -d -c -- ".s:Escape(tarfile)." | ".g:tar_cmd." -".g:tar_browseoptions." - "
" call Decho("1: exe silent r! gzip -d -c -- ".s:Escape(tarfile,1)." | ".g:tar_cmd." -".g:tar_browseoptions." - ")
exe "silent r! gzip -d -c -- ".s:Escape(tarfile,1)." | ".g:tar_cmd." -".g:tar_browseoptions." - "
elseif tarfile =~# '\.lrp'
" call Decho("2: exe silent r! cat -- ".s:Escape(tarfile)."|gzip -d -c -|".g:tar_cmd." -".g:tar_browseoptions." - ")
exe "silent r! cat -- ".s:Escape(tarfile)."|gzip -d -c -|".g:tar_cmd." -".g:tar_browseoptions." - "
" call Decho("2: exe silent r! cat -- ".s:Escape(tarfile,1)."|gzip -d -c -|".g:tar_cmd." -".g:tar_browseoptions." - ")
exe "silent r! cat -- ".s:Escape(tarfile,1)."|gzip -d -c -|".g:tar_cmd." -".g:tar_browseoptions." - "
elseif tarfile =~# '\.bz2$'
" call Decho("3: exe silent r! bzip2 -d -c ".s:Escape(tarfile)." | ".g:tar_cmd." -".g:tar_browseoptions." - ")
exe "silent r! bzip2 -d -c -- ".s:Escape(tarfile)." | ".g:tar_cmd." -".g:tar_browseoptions." - "
" call Decho("3: exe silent r! bzip2 -d -c -- ".s:Escape(tarfile,1)." | ".g:tar_cmd." -".g:tar_browseoptions." - ")
exe "silent r! bzip2 -d -c -- ".s:Escape(tarfile,1)." | ".g:tar_cmd." -".g:tar_browseoptions." - "
else
" call Decho("4: exe silent r! ".g:tar_cmd." -".g:tar_browseoptions." ".s:Escape(tarfile))
exe "silent r! ".g:tar_cmd." -".g:tar_browseoptions." ".s:Escape(tarfile)
if tarfile =~ '^\s*-'
" A file name starting with a dash may be taken as an option. Prepend ./ to avoid that.
let tarfile = substitute(tarfile, '-', './-', '')
endif
" call Decho("4: exe silent r! ".g:tar_cmd." -".g:tar_browseoptions." ".s:Escape(tarfile,1))
exe "silent r! ".g:tar_cmd." -".g:tar_browseoptions." ".s:Escape(tarfile,1)
endif
if v:shell_error != 0
redraw!
@@ -160,7 +164,7 @@ fun! tar#Browse(tarfile)
silent %d
let eikeep= &ei
set ei=BufReadCmd,FileReadCmd
exe "r ".a:tarfile
exe "r ".fnameescape(a:tarfile)
let &ei= eikeep
1d
" call Dret("tar#Browse : a:tarfile<".a:tarfile.">")
@@ -183,6 +187,13 @@ fun! s:TarBrowseSelect()
let fname= getline(".")
" call Decho("fname<".fname.">")
if !exists("g:tar_secure") && fname =~ '^\s*-\|\s\+-'
redraw!
echohl WarningMsg | echo '***error*** (tar#BrowseSelect) rejecting tarfile member<'.fname.'> because of embedded "-"; See :help tar-options'
" call Dret('tar#BrowseSelect : rejecting tarfile member<'.fname.'> because of embedded "-"')
return
endif
" sanity check
if fname =~ '^"'
let &report= repkeep
@@ -195,7 +206,7 @@ fun! s:TarBrowseSelect()
let curfile= expand("%")
if has("win32") && executable("cygpath")
" assuming cygwin
let tarfile=substitute(system("cygpath -u ".s:Escape(tarfile)),'\n$','','e')
let tarfile=substitute(system("cygpath -u ".s:Escape(tarfile,0)),'\n$','','e')
endif
new
@@ -220,7 +231,7 @@ fun! tar#Read(fname,mode)
let fname = substitute(a:fname,'tarfile:.\{-}::\(.*\)$','\1','')
if has("win32") && executable("cygpath")
" assuming cygwin
let tarfile=substitute(system("cygpath -u ".s:Escape(tarfile)),'\n$','','e')
let tarfile=substitute(system("cygpath -u ".s:Escape(tarfile,0)),'\n$','','e')
endif
" call Decho("tarfile<".tarfile.">")
" call Decho("fname<".fname.">")
@@ -239,18 +250,27 @@ fun! tar#Read(fname,mode)
endif
endif
if tarfile =~# '\.\(gz\|tgz\)$'
" call Decho("5: exe silent r! gzip -d -c -- ".s:Escape(tarfile)."| ".g:tar_cmd.' -'.g:tar_readoptions.' - '.s:Escape(fname))
exe "silent r! gzip -d -c -- ".s:Escape(tarfile)."| ".g:tar_cmd." -".g:tar_readoptions." - ".s:Escape(fname).decmp
elseif tarfile =~# '\.lrp$'
" call Decho("6: exe silent r! cat ".s:Escape(tarfile)." | gzip -d -c - | ".g:tar_cmd." -".g:tar_readoptions." - ".s:Escape(fname).decmp)
exe "silent r! cat -- ".s:Escape(tarfile)." | gzip -d -c - | ".g:tar_cmd." -".g:tar_readoptions." - ".s:Escape(fname).decmp
elseif tarfile =~# '\.bz2$'
" call Decho("7: exe silent r! bzip2 -d -c ".s:Escape(tarfile)."| ".g:tar_cmd." -".g:tar_readoptions." - ".s:Escape(fname).decmp)
exe "silent r! bzip2 -d -c -- ".s:Escape(tarfile)."| ".g:tar_cmd." -".g:tar_readoptions." - ".s:Escape(fname).decmp
if exists("g:tar_secure")
let tar_secure= " -- "
else
" call Decho("8: exe silent r! ".g:tar_cmd." -".g:tar_readoptions." -- ".s:Escape(tarfile)." ".s:Escape(fname))
exe "silent r! ".g:tar_cmd." -".g:tar_readoptions." ".s:Escape(tarfile)." -- ".s:Escape(fname).decmp
let tar_secure= " "
endif
if tarfile =~# '\.\(gz\|tgz\)$'
" call Decho("5: exe silent r! gzip -d -c -- ".s:Escape(tarfile,1)."| ".g:tar_cmd.' -'.g:tar_readoptions.' - '.tar_secure.s:Escape(fname,1))
exe "silent r! gzip -d -c -- ".s:Escape(tarfile,1)."| ".g:tar_cmd." -".g:tar_readoptions." - ".tar_secure.s:Escape(fname,1).decmp
elseif tarfile =~# '\.lrp$'
" call Decho("6: exe silent r! cat ".s:Escape(tarfile,1)." | gzip -d -c - | ".g:tar_cmd." -".g:tar_readoptions." - ".tar_secure.s:Escape(fname,1).decmp)
exe "silent r! cat -- ".s:Escape(tarfile,1)." | gzip -d -c - | ".g:tar_cmd." -".g:tar_readoptions." - ".tar_secure.s:Escape(fname,1).decmp
elseif tarfile =~# '\.bz2$'
" call Decho("7: exe silent r! bzip2 -d -c ".s:Escape(tarfile,1)."| ".g:tar_cmd." -".g:tar_readoptions." - ".tar_secure.s:Escape(fname,1).decmp)
exe "silent r! bzip2 -d -c -- ".s:Escape(tarfile,1)."| ".g:tar_cmd." -".g:tar_readoptions." - ".tar_secure.s:Escape(fname,1).decmp
else
if tarfile =~ '^\s*-'
" A file name starting with a dash may be taken as an option. Prepend ./ to avoid that.
let tarfile = substitute(tarfile, '-', './-', '')
endif
" call Decho("8: exe silent r! ".g:tar_cmd." -".g:tar_readoptions." "s:Escape(tarfile,1).tar_secure..s:Escape(fname,1).decmp)
exe "silent r! ".g:tar_cmd." -".g:tar_readoptions." ".s:Escape(tarfile,1).tar_secure.s:Escape(fname,1).decmp
endif
if doro
@@ -259,7 +279,7 @@ fun! tar#Read(fname,mode)
endif
let w:tarfile= a:fname
exe "file tarfile::".fname
exe "file tarfile::".fnameescape(fname)
" cleanup
0d
@@ -276,6 +296,13 @@ fun! tar#Write(fname)
let repkeep= &report
set report=10
if !exists("g:tar_secure") && a:fname =~ '^\s*-\|\s\+-'
redraw!
echohl WarningMsg | echo '***error*** (tar#Write) rejecting tarfile member<'.a:fname.'> because of embedded "-"; See :help tar-options'
" call Dret('tar#Write : rejecting tarfile member<'.fname.'> because of embedded "-"')
return
endif
" sanity checks
if !executable(g:tar_cmd)
redraw!
@@ -329,21 +356,23 @@ fun! tar#Write(fname)
" handle compressed archives
if tarfile =~# '\.gz'
call system("gzip -d -- ".tarfile)
call system("gzip -d -- ".s:Escape(tarfile,0))
let tarfile = substitute(tarfile,'\.gz','','e')
let compress= "gzip ".s:Escape(tarfile)
let compress= "gzip -- ".s:Escape(tarfile,0)
" call Decho("compress<".compress.">")
elseif tarfile =~# '\.tgz'
call system("gzip -d -- ".s:Escape(tarfile))
call system("gzip -d -- ".s:Escape(tarfile,0))
let tarfile = substitute(tarfile,'\.tgz','.tar','e')
let compress= "gzip -- ".s:Escape(tarfile)
let compress= "gzip -- ".s:Escape(tarfile,0)
let tgz = 1
" call Decho("compress<".compress.">")
elseif tarfile =~# '\.bz2'
call system("bzip2 -d -- ".s:Escape(tarfile))
call system("bzip2 -d -- ".s:Escape(tarfile,0))
let tarfile = substitute(tarfile,'\.bz2','','e')
let compress= "bzip2 -- ".s:Escape(tarfile)
let compress= "bzip2 -- ".s:Escape(tarfile,0)
" call Decho("compress<".compress.">")
endif
" call Decho("tarfile<".tarfile.">")
" call Decho("compress<".compress.">")
if v:shell_error != 0
redraw!
@@ -356,23 +385,32 @@ fun! tar#Write(fname)
if fname =~ '/'
let dirpath = substitute(fname,'/[^/]\+$','','e')
if executable("cygpath")
let dirpath = substitute(system("cygpath ".dirpath),'\n','','e')
let dirpath = substitute(system("cygpath ".s:Escape(dirpath, 0)),'\n','','e')
endif
call mkdir(dirpath,"p")
endif
if tarfile !~ '/'
let tarfile= curdir.'/'.tarfile
endif
if tarfile =~ '^\s*-'
" A file name starting with a dash may be taken as an option. Prepend ./ to avoid that.
let tarfile = substitute(tarfile, '-', './-', '')
endif
" call Decho("tarfile<".tarfile."> fname<".fname.">")
if exists("g:tar_secure")
let tar_secure= " -- "
else
let tar_secure= " "
endif
exe "w! ".fnameescape(fname)
if executable("cygpath")
let tarfile = substitute(system("cygpath ".s:Escape(tarfile)),'\n','','e')
let tarfile = substitute(system("cygpath ".s:Escape(tarfile,0)),'\n','','e')
endif
" delete old file from tarfile
" call Decho("system(tar --delete -f ".s:Escape(tarfile)." -- ".s:Escape(fname).")")
call system("tar --delete -f ".s:Escape(tarfile)." -- ".s:Escape(fname))
" call Decho("system(".g:tar_cmd." --delete -f ".s:Escape(tarfile,0)." -- ".s:Escape(fname,0).")")
call system(g:tar_cmd." --delete -f ".s:Escape(tarfile,0).tar_secure.s:Escape(fname,0))
if v:shell_error != 0
redraw!
echohl Error | echo "***error*** (tar#Write) sorry, unable to update ".fnameescape(tarfile)." with ".fnameescape(fname) | echohl None
@@ -380,8 +418,8 @@ fun! tar#Write(fname)
else
" update tarfile with new file
" call Decho("tar -".g:tar_writeoptions." ".s:Escape(tarfile)." -- ".s:Escape(fname))
call system("tar -".g:tar_writeoptions." ".s:Escape(tarfile)." -- ".s:Escape(fname))
" call Decho(g:tar_cmd." -".g:tar_writeoptions." ".s:Escape(tarfile,0).tar_secure.s:Escape(fname,0))
call system(g:tar_cmd." -".g:tar_writeoptions." ".s:Escape(tarfile,0).tar_secure.s:Escape(fname,0))
if v:shell_error != 0
redraw!
echohl Error | echo "***error*** (tar#Write) sorry, unable to update ".fnameescape(tarfile)." with ".fnameescape(fname) | echohl None
@@ -404,7 +442,7 @@ fun! tar#Write(fname)
let binkeep= &binary
let eikeep = &ei
set binary ei=all
exe "e! ".tarfile
exe "e! ".fnameescape(tarfile)
call netrw#NetWrite(tblfile)
let &ei = eikeep
let &binary = binkeep
@@ -416,7 +454,7 @@ fun! tar#Write(fname)
" cleanup and restore current directory
cd ..
call s:Rmdir("_ZIPVIM_")
exe "cd ".escape(curdir,' \')
exe "cd ".fnameescape(curdir)
setlocal nomod
let &report= repkeep
@@ -428,12 +466,12 @@ endfun
fun! s:Rmdir(fname)
" call Dfunc("Rmdir(fname<".a:fname.">)")
if has("unix")
call system("/bin/rm -rf -- ".s:Escape(a:fname))
call system("/bin/rm -rf -- ".s:Escape(a:fname,0))
elseif has("win32") || has("win95") || has("win64") || has("win16")
if &shell =~? "sh$"
call system("/bin/rm -rf -- ".s:Escape(a:fname))
call system("/bin/rm -rf -- ".s:Escape(a:fname,0))
else
call system("del /S ".s:Escape(a:fname))
call system("del /S ".s:Escape(a:fname,0))
endif
endif
" call Dret("Rmdir")
@@ -441,10 +479,14 @@ endfun
" ---------------------------------------------------------------------
" s:Escape: {{{2
fun s:Escape(name)
fun s:Escape(name,isfilt)
" shellescape() was added by patch 7.0.111
if exists("*shellescape")
let qnameq= shellescape(a:name)
if a:isfilt
let qnameq= shellescape(a:name,1)
else
let qnameq= shellescape(a:name)
endif
else
let qnameq= g:tar_shq . a:name . g:tar_shq
endif
+18 -42
View File
@@ -1,7 +1,7 @@
" vimball.vim : construct a file containing both paths and files
" Author: Charles E. Campbell, Jr.
" Date: Jun 05, 2008
" Version: 27
" Date: Jul 30, 2008
" Version: 29
" GetLatestVimScripts: 1502 1 :AutoInstall: vimball.vim
" Copyright: (c) 2004-2008 by Charles E. Campbell, Jr.
" The VIM LICENSE applies to Vimball.vim, and Vimball.txt
@@ -15,7 +15,7 @@ if &cp || exists("g:loaded_vimball") || v:version < 700
finish
endif
let s:keepcpo = &cpo
let g:loaded_vimball = "v27"
let g:loaded_vimball = "v29"
set cpo&vim
"DechoTabOn
@@ -169,9 +169,8 @@ fun! vimball#MkVimball(line1,line2,writelevel,...) range
call setline(lastline+1,0)
" write the file from the tab
let svfilepath= s:Path(svfile,'')
" call Decho("exe $r ".fnameescape(svfilepath))
exe "$r ".fnameescape(svfilepath)
" call Decho("exe $r ".fnameescape(svfile))
exe "$r ".fnameescape(svfile)
call setline(lastline+1,line("$") - lastline - 1)
" call Decho("lastline=".lastline." line$=".line("$"))
@@ -186,13 +185,11 @@ fun! vimball#MkVimball(line1,line2,writelevel,...) range
call s:ChgDir(curdir)
setlocal ff=unix
if a:writelevel
let vbnamepath= s:Path(vbname,'')
" call Decho("exe w! ".fnameescape(vbnamepath))
exe "w! ".fnameescape(vbnamepath)
" call Decho("exe w! ".fnameescape(vbname))
exe "w! ".fnameescape(vbname)
else
let vbnamepath= s:Path(vbname,'')
" call Decho("exe w ".fnameescape(vbnamepath))
exe "w ".fnameescape(vbnamepath)
" call Decho("exe w ".fnameescape(vbname))
exe "w ".fnameescape(vbname)
endif
" call Decho("Vimball<".vbname."> created")
echo "Vimball<".vbname."> created"
@@ -215,8 +212,8 @@ endfun
fun! vimball#Vimball(really,...)
" call Dfunc("vimball#Vimball(really=".a:really.") a:0=".a:0)
if v:version < 701 || (v:version == 701 && !has("patch299"))
echoerr "This version of vimball requires vim 7.1 with patch 299"
if v:version < 701 || (v:version == 701 && !exists('*fnameescape'))
echoerr "your vim is missing the fnameescape() function"
" call Dret("vimball#Vimball : needs 7.1 with patch 299")
return
endif
@@ -338,7 +335,7 @@ fun! vimball#Vimball(really,...)
" write tab to file
if a:really
let fnamepath= s:Path(home."/".fname,'')
let fnamepath= home."/".fname
" call Decho("exe w! ".fnameescape(fnamepath))
exe "silent w! ".fnameescape(fnamepath)
echo "wrote ".fnamepath
@@ -364,9 +361,9 @@ fun! vimball#Vimball(really,...)
" set up help
" call Decho("about to set up help: didhelp<".didhelp.">")
if didhelp != ""
let htpath= s:Path(home."/".didhelp,"")
let htpath= home."/".didhelp
" call Decho("exe helptags ".htpath)
exe "helptags ".htpath
exe "helptags ".fnameescape(htpath)
echo "did helptags"
endif
@@ -577,27 +574,6 @@ fun! s:ChgDir(newdir)
" call Dret("ChgDir : curdir<".getcwd().">")
endfun
" ---------------------------------------------------------------------
" s:Path: prepend and append quotes and do escaping {{{2
fun! s:Path(cmd,quote)
" call Dfunc("Path(cmd<".a:cmd."> quote<".a:quote.">) vimball_path_escape<".g:vimball_path_escape.">")
if (has("win32") || has("win95") || has("win64") || has("win16"))
" let cmdpath= a:quote.substitute(a:cmd,'/','\\','g').a:quote
let cmdpath= a:quote.substitute(a:cmd,'\\','/','g').a:quote
" call Decho("cmdpath<".cmdpath."> (win32 mod)")
else
let cmdpath= a:quote.a:cmd.a:quote
" call Decho("cmdpath<".cmdpath."> (not-win32 mod)")
endif
if a:quote == "" && g:vimball_path_escape !~ ' '
let cmdpath= escape(cmdpath,' ')
" call Decho("cmdpath<".cmdpath."> (empty quote case)")
endif
let cmdpath= escape(cmdpath,g:vimball_path_escape)
" call Dret("Path <".cmdpath.">")
return cmdpath
endfun
" ---------------------------------------------------------------------
" s:RecordInVar: record a un-vimball command in the .VimballRecord file {{{2
fun! s:RecordInVar(home,cmd)
@@ -719,14 +695,14 @@ fun! vimball#SaveSettings()
let s:acdkeep = &acd
endif
let s:eikeep = &ei
let s:fenkeep = &fen
let s:fenkeep = &l:fen
let s:hidkeep = &hidden
let s:ickeep = &ic
let s:lzkeep = &lz
let s:pmkeep = &pm
let s:repkeep = &report
let s:vekeep = &ve
let s:ffkeep = &ff
let s:ffkeep = &l:ff
if exists("&acd")
setlocal ei=all ve=all noacd nofen noic report=999 nohid bt= ma lz pm= ff=unix
else
@@ -745,7 +721,7 @@ fun! vimball#RestoreSettings()
if exists("&acd")
let &acd = s:acdkeep
endif
let &fen = s:fenkeep
let &l:fen = s:fenkeep
let &hidden = s:hidkeep
let &ic = s:ickeep
let &lz = s:lzkeep
@@ -753,7 +729,7 @@ fun! vimball#RestoreSettings()
let &report = s:repkeep
let &ve = s:vekeep
let &ei = s:eikeep
let &ff = s:ffkeep
let &l:ff = s:ffkeep
if s:makeep[0] != 0
" restore mark a
" call Decho("restore mark-a: makeep=".string(makeep))
+40 -35
View File
@@ -1,7 +1,7 @@
" zip.vim: Handles browsing zipfiles
" AUTOLOAD PORTION
" Date: Jun 12, 2008
" Version: 18
" Date: Jul 30, 2008
" Version: 22
" Maintainer: Charles E Campbell, Jr <NdrOchip@ScampbellPfamily.AbizM-NOSPAM>
" License: Vim License (see vim's :help license)
" Copyright: Copyright (C) 2005-2008 Charles E. Campbell, Jr. {{{1
@@ -22,7 +22,7 @@ if &cp || exists("g:loaded_zip") || v:version < 700
finish
endif
let g:loaded_zip = "v18"
let g:loaded_zip = "v22"
let s:zipfile_escape = ' ?&;\'
let s:ERROR = 2
let s:WARNING = 1
@@ -58,6 +58,12 @@ fun! zip#Browse(zipfile)
set report=10
" sanity checks
if !exists("*fnameescape")
if &verbose > 1
echoerr "the zip plugin is not available (your vim doens't support fnameescape())"
endif
return
endif
if !executable(g:zip_unzipcmd)
redraw!
echohl Error | echo "***error*** (zip#Browse) unzip not available on your system"
@@ -91,23 +97,24 @@ fun! zip#Browse(zipfile)
set ft=tar
" give header
exe "$put ='".'\"'." zip.vim version ".g:loaded_zip."'"
exe "$put ='".'\"'." Browsing zipfile ".a:zipfile."'"
exe "$put ='".'\"'." Select a file with cursor and press ENTER"."'"
let lastline= line("$")
call setline(lastline+1,'" zip.vim version '.g:loaded_zip)
call setline(lastline+2,'" Browsing zipfile '.a:zipfile)
call setline(lastline+3,'" Select a file with cursor and press ENTER')
$put =''
0d
$
" call Decho("exe silent r! ".g:zip_unzipcmd." -l ".s:QuoteFileDir(a:zipfile))
exe "silent r! ".g:zip_unzipcmd." -l ".s:QuoteFileDir(a:zipfile)
" call Decho("exe silent r! ".g:zip_unzipcmd." -l -- ".s:Escape(a:zipfile,1))
exe "silent r! ".g:zip_unzipcmd." -l -- ".s:Escape(a:zipfile,1)
if v:shell_error != 0
redraw!
echohl WarningMsg | echo "***warning*** (zip#Browse) ".a:zipfile." is not a zip file" | echohl None
echohl WarningMsg | echo "***warning*** (zip#Browse) ".fnameescape(a:zipfile)." is not a zip file" | echohl None
" call inputsave()|call input("Press <cr> to continue")|call inputrestore()
silent %d
let eikeep= &ei
set ei=BufReadCmd,FileReadCmd
exe "r ".a:zipfile
exe "r ".fnameescape(a:zipfile)
let &ei= eikeep
1d
" call Dret("zip#Browse")
@@ -166,8 +173,8 @@ fun! s:ZipBrowseSelect()
wincmd _
endif
let s:zipfile_{winnr()}= curfile
" call Decho("exe e zipfile:".escape(zipfile,s:zipfile_escape).'::'.escape(fname,s:zipfile_escape))
exe "e zipfile:".escape(zipfile,s:zipfile_escape).'::'.escape(fname,s:zipfile_escape)
" call Decho("exe e ".fnameescape("zipfile:".zipfile.'::'.fname))
exe "e ".fnameescape("zipfile:".zipfile.'::'.fname)
filetype detect
let &report= repkeep
@@ -192,8 +199,8 @@ fun! zip#Read(fname,mode)
" call Decho("zipfile<".zipfile.">")
" call Decho("fname <".fname.">")
" call Decho("exe r! ".g:zip_unzipcmd." -p ".s:QuoteFileDir(zipfile)." ".s:QuoteFileDir(fname))
exe "silent r! ".g:zip_unzipcmd." -p ".s:QuoteFileDir(zipfile)." ".s:QuoteFileDir(fname)
" call Decho("exe r! ".g:zip_unzipcmd." -p -- ".s:Escape(zipfile,1)." ".s:Escape(fname,1))
exe "silent r! ".g:zip_unzipcmd." -p -- ".s:Escape(zipfile,1)." ".s:Escape(fname,1)
" cleanup
0d
@@ -266,7 +273,7 @@ fun! zip#Write(fname)
if fname =~ '/'
let dirpath = substitute(fname,'/[^/]\+$','','e')
if executable("cygpath")
let dirpath = substitute(system("cygpath ".dirpath),'\n','','e')
let dirpath = substitute(system("cygpath ".s:Escape(dirpath,0)),'\n','','e')
endif
" call Decho("mkdir(dirpath<".dirpath.">,p)")
call mkdir(dirpath,"p")
@@ -276,17 +283,17 @@ fun! zip#Write(fname)
endif
" call Decho("zipfile<".zipfile."> fname<".fname.">")
exe "w! ".escape(fname,s:zipfile_escape)
exe "w! ".fnameescape(fname)
if executable("cygpath")
let zipfile = substitute(system("cygpath ".zipfile),'\n','','e')
let zipfile = substitute(system("cygpath ".s:Escape(zipfile,0)),'\n','','e')
endif
if (has("win32") || has("win95") || has("win64") || has("win16")) && &shell !~? 'sh$'
let fname = substitute(fname, '[', '[[]', 'g')
endif
" call Decho(g:zip_zipcmd." -u ".s:QuoteFileDir(zipfile)." ".s:QuoteFileDir(fname))
call system(g:zip_zipcmd." -u ".s:QuoteFileDir(zipfile)." ".s:QuoteFileDir(fname))
" call Decho(g:zip_zipcmd." -u ".s:Escape(fnamemodify(zipfile,":p"),0)." ".s:Escape(fname,0))
call system(g:zip_zipcmd." -u ".s:Escape(fnamemodify(zipfile,":p"),0)." ".s:Escape(fname,0))
if v:shell_error != 0
redraw!
echohl Error | echo "***error*** (zip#Write) sorry, unable to update ".zipfile." with ".fname | echohl None
@@ -300,7 +307,7 @@ fun! zip#Write(fname)
let binkeep= &binary
let eikeep = &ei
set binary ei=all
exe "e! ".zipfile
exe "e! ".fnameescape(zipfile)
call netrw#NetWrite(netzipfile)
let &ei = eikeep
let &binary = binkeep
@@ -320,11 +327,15 @@ fun! zip#Write(fname)
endfun
" ---------------------------------------------------------------------
" QuoteFileDir: {{{2
fun! s:QuoteFileDir(fname)
" call Dfunc("QuoteFileDir(fname<".a:fname.">)")
if has("*shellescape")
let qnameq= shellescape(a:fname)
" s:Escape: {{{2
fun! s:Escape(fname,isfilt)
" call Dfunc("QuoteFileDir(fname<".a:fname."> isfilt=".a:isfilt.")")
if exists("*shellescape")
if a:isfilt
let qnameq= shellescape(a:fname,1)
else
let qnameq= shellescape(a:fname)
endif
else
let qnameq= g:zip_shq.escape(a:fname,g:zip_shq).g:zip_shq
endif
@@ -337,14 +348,8 @@ endfun
fun! s:ChgDir(newdir,errlvl,errmsg)
" call Dfunc("ChgDir(newdir<".a:newdir."> errlvl=".a:errlvl." errmsg<".a:errmsg.">)")
if (has("win32") || has("win95") || has("win64") || has("win16")) && &shell !~? 'sh$'
let newdir= escape(a:newdir,' ')
else
let newdir= escape(a:newdir,'\ ')
endif
try
exe "cd ".newdir
exe "cd ".fnameescape(a:newdir)
catch /^Vim\%((\a\+)\)\=:E344/
redraw!
if a:errlvl == s:NOTE
@@ -364,13 +369,13 @@ fun! s:ChgDir(newdir,errlvl,errmsg)
endfun
" ---------------------------------------------------------------------
" Rmdir: {{{2
" s:Rmdir: {{{2
fun! s:Rmdir(fname)
" call Dfunc("Rmdir(fname<".a:fname.">)")
if (has("win32") || has("win95") || has("win64") || has("win16")) && &shell !~? 'sh$'
call system("rmdir /S/Q ".s:QuoteFileDir(a:fname))
call system("rmdir /S/Q ".s:Escape(a:fname,0))
else
call system("/bin/rm -rf ".s:QuoteFileDir(a:fname))
call system("/bin/rm -rf ".s:Escape(a:fname,0))
endif
" call Dret("Rmdir")
endfun
+7 -1
View File
@@ -1,6 +1,6 @@
" Vim color file
" Maintainer: Bohdan Vlasyuk <bohdan@vstu.edu.ua>
" Last Change: 2006 Apr 30
" Last Change: 2008 Jul 18
" darkblue -- for those who prefer dark background
" [note: looks bit uglier with come terminal palettes,
@@ -58,3 +58,9 @@ hi PreProc ctermfg=magenta guifg=#ff80ff gui=none cterm=none
hi type ctermfg=green guifg=#60ff60 gui=none cterm=none
hi Underlined cterm=underline term=underline
hi Ignore guifg=bg ctermfg=bg
" suggested by tigmoid, 2008 Jul 18
hi Pmenu guifg=#c0c0c0 guibg=#404080
hi PmenuSel guifg=#c0c0c0 guibg=#2050d0
hi PmenuSbar guifg=blue guibg=darkgray
hi PmenuThumb guifg=#c0c0c0
+11 -10
View File
@@ -3,14 +3,15 @@
" Language: Ada (Dec Ada)
" $Id$
" Copyright: Copyright (C) 2006 Martin Krischik
" Maintainer: Martin Krischik
" Maintainer: Martin Krischik <krischik@users.sourceforge.net>
" $Author$
" $Date$
" Version: 4.2
" Version: 4.6
" $Revision$
" $HeadURL: https://svn.sourceforge.net/svnroot/gnuada/trunk/tools/vim/compiler/decada.vim $
" $HeadURL: https://gnuada.svn.sourceforge.net/svnroot/gnuada/trunk/tools/vim/compiler/decada.vim $
" History: 21.07.2006 MK New Dec Ada
" 15.10.2006 MK Bram's suggestion for runtime integration
" 08.09.2006 MK Correct double load protection.
" Help Page: compiler-decada
"------------------------------------------------------------------------------
@@ -24,6 +25,13 @@ let current_compiler = "decada"
if !exists("g:decada")
let g:decada = decada#New ()
call ada#Map_Menu (
\'Dec Ada.Build',
\'<F7>',
\'call decada.Make ()')
call g:decada.Set_Session ()
endif
if exists(":CompilerSet") != 2
@@ -33,16 +41,9 @@ if exists(":CompilerSet") != 2
command -nargs=* CompilerSet setlocal <args>
endif
call g:decada.Set_Session ()
execute "CompilerSet makeprg=" . escape (g:decada.Make_Command, ' ')
execute "CompilerSet errorformat=" . escape (g:decada.Error_Format, ' ')
call ada#Map_Menu (
\'Dec Ada.Build',
\'<F7>',
\'call decada.Make ()')
finish " 1}}}
"------------------------------------------------------------------------------
+1 -1
View File
@@ -38,4 +38,4 @@ CompilerSet errorformat=
let &cpo = s:cpo_save
unlet s:cpo_save
" vim: nowrap sw=2 sts=2:
" vim: nowrap sw=2 sts=2 ts=8:
+7 -5
View File
@@ -3,15 +3,17 @@
" Language: Ada (GNAT)
" $Id$
" Copyright: Copyright (C) 2006 Martin Krischik
" Maintainer: Martin Krischik
" Maintainer: Martin Krischi <krischik@users.sourceforge.net>k
" Ned Okie <nokie@radford.edu>
" $Author$
" $Date$
" Version: 4.2
" Version: 4.6
" $Revision$
" $HeadURL: https://svn.sourceforge.net/svnroot/gnuada/trunk/tools/vim/compiler/gnat.vim $
" $HeadURL: https://gnuada.svn.sourceforge.net/svnroot/gnuada/trunk/tools/vim/compiler/gnat.vim $
" History: 24.05.2006 MK Unified Headers
" 16.07.2006 MK Ada-Mode as vim-ball
" 15.10.2006 MK Bram's suggestion for runtime integration
" 19.09.2007 NO use project file only when there is a project
" Help Page: compiler-gnat
"------------------------------------------------------------------------------
@@ -46,6 +48,8 @@ if !exists("g:gnat")
\ 'GNAT.Set Projectfile\.\.\.',
\ ':SetProject',
\ 'call gnat.Set_Project_File ()')
call g:gnat.Set_Session ()
endif
if exists(":CompilerSet") != 2
@@ -55,8 +59,6 @@ if exists(":CompilerSet") != 2
command -nargs=* CompilerSet setlocal <args>
endif
call g:gnat.Set_Session ()
execute "CompilerSet makeprg=" . escape (g:gnat.Get_Command('Make'), ' ')
execute "CompilerSet errorformat=" . escape (g:gnat.Error_Format, ' ')
+41
View File
@@ -0,0 +1,41 @@
" Vim compiler file
" Language: RSpec
" Maintainer: Tim Pope <vimNOSPAM@tpope.info>
" Info: $Id$
" URL: http://vim-ruby.rubyforge.org
" Anon CVS: See above site
" Release Coordinator: Doug Kearns <dougkearns@gmail.com>
if exists("current_compiler")
finish
endif
let current_compiler = "rspec"
if exists(":CompilerSet") != 2 " older Vim always used :setlocal
command -nargs=* CompilerSet setlocal <args>
endif
let s:cpo_save = &cpo
set cpo-=C
CompilerSet makeprg=spec
CompilerSet errorformat=
\%+W'%.%#'\ FAILED,
\%+I'%.%#'\ FIXED,
\%-Cexpected:%.%#,
\%-C\ \ \ \ \ got:%.%#,
\%E%.%#:in\ `load':\ %f:%l:%m,
\%C%f:%l:,
\%W%f:%l:\ warning:\ %m,
\%E%f:%l:in\ %*[^:]:\ %m,
\%E%f:%l:\ %m,
\%-Z%\tfrom\ %f:%l,
\%-Z%p^%.%#,
\%-C%.%#,
\%-G%.%#
let &cpo = s:cpo_save
unlet s:cpo_save
" vim: nowrap sw=2 sts=2 ts=8:
+24 -1
View File
@@ -287,6 +287,11 @@ CONVERTED = \
vimdiff-it.UTF-8.1 \
vimtutor-it.UTF-8.1 \
xxd-it.UTF-8.1 \
vim-pl.UTF-8.1 \
evim-pl.UTF-8.1 \
vimdiff-pl.UTF-8.1 \
vimtutor-pl.UTF-8.1 \
xxd-pl.UTF-8.1 \
vim-ru.UTF-8.1 \
evim-ru.UTF-8.1 \
vimdiff-ru.UTF-8.1 \
@@ -296,7 +301,7 @@ CONVERTED = \
.SUFFIXES:
.SUFFIXES: .c .o .txt .html
all: tags vim.man vimdiff.man vimtutor.man xxd.man $(CONVERTED)
all: tags vim.man evim.man vimdiff.man vimtutor.man xxd.man $(CONVERTED)
# Use Vim to generate the tags file. Can only be used when Vim has been
# compiled and installed. Supports multiple languages.
@@ -314,6 +319,9 @@ doctags: doctags.c
vim.man: vim.1
nroff -man vim.1 | sed -e s/.//g > vim.man
evim.man: evim.1
nroff -man evim.1 | sed -e s/.//g > evim.man
vimdiff.man: vimdiff.1
nroff -man vimdiff.1 | sed -e s/.//g > vimdiff.man
@@ -445,6 +453,21 @@ vimtutor-it.UTF-8.1: vimtutor-it.1
xxd-it.UTF-8.1: xxd-it.1
iconv -f latin1 -t utf-8 $< >$@
vim-pl.UTF-8.1: vim-pl.1
iconv -f latin2 -t utf-8 $< >$@
evim-pl.UTF-8.1: evim-pl.1
iconv -f latin2 -t utf-8 $< >$@
vimdiff-pl.UTF-8.1: vimdiff-pl.1
iconv -f latin2 -t utf-8 $< >$@
vimtutor-pl.UTF-8.1: vimtutor-pl.1
iconv -f latin2 -t utf-8 $< >$@
xxd-pl.UTF-8.1: xxd-pl.1
iconv -f latin2 -t utf-8 $< >$@
vim-ru.UTF-8.1: vim-ru.1
iconv -f KOI8-R -t utf-8 $< >$@
+1 -1
View File
@@ -1,4 +1,4 @@
*arabic.txt* For Vim version 7.2a. Last change: 2005 Mar 29
*arabic.txt* For Vim version 7.2. Last change: 2005 Mar 29
VIM REFERENCE MANUAL by Nadim Shaikli
+5 -4
View File
@@ -1,4 +1,4 @@
*autocmd.txt* For Vim version 7.2a. Last change: 2008 Jun 24
*autocmd.txt* For Vim version 7.2. Last change: 2008 Jun 27
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -406,9 +406,10 @@ BufWinEnter After a buffer is displayed in a window. This
Does not happen for |:split| without
arguments, since you keep editing the same
buffer, or ":split" with a file that's already
open in a window. But it does happen for
a ":split" with the name of the current
buffer, since it reloads that buffer.
open in a window, because it re-uses an
existing buffer. But it does happen for a
":split" with the name of the current buffer,
since it reloads that buffer.
*BufWinLeave*
BufWinLeave Before a buffer is removed from a window.
Not when it's still visible in another window.
+9 -7
View File
@@ -1,4 +1,4 @@
*change.txt* For Vim version 7.2a. Last change: 2008 Jun 22
*change.txt* For Vim version 7.2. Last change: 2008 Jul 24
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -772,9 +772,9 @@ expression. This does not work recursively: a substitute() function inside
the expression cannot use "\=" for the substitute string.
The special meaning for characters as mentioned at |sub-replace-special| does
not apply except "<CR>", "\<CR>" and "\\". Thus in the result of the
expression you need to use two backslashes get one, put a backslash before a
<CR> you want to insert and use a <CR> without a backslash where you want to
not apply except for "<CR>", "\<CR>" and "\\". Thus in the result of the
expression you need to use two backslashes to get one, put a backslash before a
<CR> you want to insert, and use a <CR> without a backslash where you want to
break the line.
For convenience a <NL> character is also used as a line break. Prepend a
@@ -797,7 +797,7 @@ Examples: >
This replaces an end-of-line with a new line containing the value of $HOME. >
s/E/\="\<Char-0x20ac>"/g
This replaces 'E' characters with an euro sign. Read more in |<Char->|.
This replaces each 'E' character with a euro sign. Read more in |<Char->|.
4.3 Search and replace *search-replace*
@@ -806,13 +806,13 @@ This replaces 'E' characters with an euro sign. Read more in |<Char->|.
:promptf[ind] [string]
Put up a Search dialog. When [string] is given, it is
used as the initial search string.
{only for Win32, Motif and GTK GUI}
{only for Win32, Motif, GTK and MacVim GUI}
*:promptr* *:promptrepl*
:promptr[epl] [string]
Put up a Search/Replace dialog. When [string] is
given, it is used as the initial search string.
{only for Win32, Motif and GTK GUI}
{only for Win32, Motif, GTK and MacVim GUI}
4.4 Changing tabs *change-tabs*
@@ -1561,10 +1561,12 @@ found here: |sort()|.
With [n] sorting is done on the first decimal number
in the line (after or inside a {pattern} match).
One leading '-' is included in the number.
With [x] sorting is done on the first hexadecimal
number in the line (after or inside a {pattern}
match). A leading "0x" or "0X" is ignored.
One leading '-' is included in the number.
With [o] sorting is done on the first octal number in
the line (after or inside a {pattern} match).
+36 -18
View File
@@ -1,4 +1,4 @@
*cmdline.txt* For Vim version 7.2a. Last change: 2008 Jun 21
*cmdline.txt* For Vim version 7.2. Last change: 2008 Sep 18
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -99,19 +99,20 @@ CTRL-E or <End> *c_CTRL-E* *c_<End>*
cursor to end of command-line
*c_<LeftMouse>*
<LeftMouse> cursor to position of mouse click.
<LeftMouse> Move the cursor to the position of the mouse click.
CTRL-H *c_<BS>* *c_CTRL-H*
<BS> delete the character in front of the cursor (see |:fixdel| if
<BS> Delete the character in front of the cursor (see |:fixdel| if
your <BS> key does not do what you want).
*c_<Del>*
<Del> delete the character under the cursor (at end of line:
<Del> Delete the character under the cursor (at end of line:
character before the cursor) (see |:fixdel| if your <Del>
key does not do what you want).
*c_CTRL-W*
CTRL-W delete the word before the cursor
CTRL-W Delete the |word| before the cursor. This depends on the
'iskeyword' option.
*c_CTRL-U*
CTRL-U remove all characters between the cursor position and
CTRL-U Remove all characters between the cursor position and
the beginning of the line. Previous versions of vim
deleted all characters on the line. If that is the
preferred behavior, add the following to your .vimrc: >
@@ -156,6 +157,11 @@ CTRL-R {0-9a-z"%#:-=.} *c_CTRL-R* *c_<C-R>*
(doesn't work at the expression prompt; some
things such as changing the buffer or current
window are not allowed to avoid side effects)
When the result is a |List| the items are used
as lines. They can have line breaks inside
too.
When the result is a Float it's automatically
converted to a String.
See |registers| about registers. {not in Vi}
Implementation detail: When using the |expression| register
and invoking setcmdpos(), this sets the position before
@@ -369,7 +375,9 @@ word before the cursor. This is available for:
- Variable and function names: Only after a ":if", ":call" or similar command.
When Vim was compiled with the |+cmdline_compl| feature disabled, only file
names, directories and help items can be completed.
names, directories and help items can be completed. The number of help item
matches is limited (currently to 300) to avoid a long delay when there are
very many matches.
These are the commands that can be used:
@@ -727,19 +735,29 @@ to use |fnameescape()|.
In Ex commands, at places where a file name can be used, the following
characters have a special meaning. These can also be used in the expression
function expand() |expand()|.
% is replaced with the current file name *:_%*
# is replaced with the alternate file name *:_#*
% Is replaced with the current file name. *:_%* *c_%*
# Is replaced with the alternate file name. *:_#* *c_#*
#n (where n is a number) is replaced with the file name of
buffer n. "#0" is the same as "#"
## is replaced with all names in the argument list *:_##*
buffer n. "#0" is the same as "#".
## Is replaced with all names in the argument list *:_##* *c_##*
concatenated, separated by spaces. Each space in a name
is preceded with a backslash.
Note that these give the file name as it was typed. If an absolute path is
needed (when using the file name from a different directory), you need to add
":p". See |filename-modifiers|.
#<n (where n is a number > 0) is replaced with old *:_#<* *c_#<*
file name n. See |:oldfiles| or |v:oldfiles| to get the
number. *E809*
{only when compiled with the +eval and +viminfo features}
Note that these, except "#<n", give the file name as it was typed. If an
absolute path is needed (when using the file name from a different directory),
you need to add ":p". See |filename-modifiers|.
The "#<n" item returns an absolute path, but it will start with "~/" for files
below your home directory.
Note that backslashes are inserted before spaces, so that the command will
correctly interpret the file name. But this doesn't happen for shell
commands. For those you probably have to use quotes: >
commands. For those you probably have to use quotes (this fails for files
that contain a quote and wildcards): >
:!ls "%"
:r !spell "%"
@@ -995,7 +1013,7 @@ other than the one that is executed with <CR> are lost.
If you would like to execute the command under the cursor and then have the
command-line window open again, you may find this mapping useful: >
:map <F5> <CR>q:
:autocmd CmdwinEnter * map <buffer> <F5> <CR>q:
VARIOUS
@@ -1042,9 +1060,9 @@ events are not triggered. You can use the Cmdwin events to do settings
specifically for the command-line window. Be careful not to cause side
effects!
Example: >
:au CmdwinEnter : let b:cpt_save = &cpt | set cpt=v
:au CmdwinEnter : let b:cpt_save = &cpt | set cpt=.
:au CmdwinLeave : let &cpt = b:cpt_save
This sets 'complete' to use command-line completion in Insert mode for CTRL-N.
This sets 'complete' to use completion in the current window for |i_CTRL-N|.
Another example: >
:au CmdwinEnter [/?] startinsert
This will make Vim start in Insert mode in the command-line window.
+1 -1
View File
@@ -1,4 +1,4 @@
*debug.txt* For Vim version 7.2a. Last change: 2006 May 01
*debug.txt* For Vim version 7.2. Last change: 2006 May 01
VIM REFERENCE MANUAL by Bram Moolenaar
+1 -1
View File
@@ -1,4 +1,4 @@
*debugger.txt* For Vim version 7.2a. Last change: 2005 Mar 29
*debugger.txt* For Vim version 7.2. Last change: 2005 Mar 29
VIM REFERENCE MANUAL by Gordon Prieur
+1 -1
View File
@@ -1,4 +1,4 @@
*develop.txt* For Vim version 7.2a. Last change: 2007 May 11
*develop.txt* For Vim version 7.2. Last change: 2007 May 11
VIM REFERENCE MANUAL by Bram Moolenaar
+4 -4
View File
@@ -1,12 +1,12 @@
*diff.txt* For Vim version 7.2a. Last change: 2006 Oct 02
*diff.txt* For Vim version 7.2. Last change: 2008 Jul 21
VIM REFERENCE MANUAL by Bram Moolenaar
*diff* *vimdiff* *gvimdiff* *diff-mode*
This file describes the +diff feature: Showing differences between two or
three versions of the same file.
This file describes the +diff feature: Showing differences between two,
three or four versions of the same file.
The basics are explained in section |08.7| of the user manual.
@@ -49,7 +49,7 @@ What happens is that Vim opens a window for each of the files. This is like
using the |-O| argument. This uses vertical splits. If you prefer horizontal
splits add the |-o| argument: >
vimdiff -o file1 file2 [file3]
vimdiff -o file1 file2 [file3 [file4]]
If you always prefer horizontal splits include "horizontal" in 'diffopt'.
+8 -6
View File
@@ -1,15 +1,15 @@
*digraph.txt* For Vim version 7.2a. Last change: 2007 Sep 10
*digraph.txt* For Vim version 7.2. Last change: 2008 Aug 06
VIM REFERENCE MANUAL by Bram Moolenaar
Digraphs *digraphs* *Digraphs*
Digraphs *digraph* *digraphs* *Digraphs*
Digraphs are used to enter characters that normally cannot be entered by
an ordinary keyboard. These are mostly accented characters which have the
eighth bit set. The digraphs are easier to remember than the decimal number
that can be entered with CTRL-V (see |i_CTRL-V|).
an ordinary keyboard. These are mostly printable non-ASCII characters. The
digraphs are easier to remember than the decimal number that can be entered
with CTRL-V (see |i_CTRL-V|).
There is a brief introduction on digraphs in the user manual: |24.9|
An alternative is using the 'keymap' option.
@@ -53,7 +53,9 @@ this file.
The decimal number normally is the Unicode number of the character. Note that
the meaning doesn't change when 'encoding' changes. The character will be
converted from Unicode to 'encoding' when needed. This does require the
conversion to be available, it might fail.
conversion to be available, it might fail. For the NUL character you will see
"10". That's because NUL characters are internally represented with a NL
character. When you write the file it will become a NUL character.
When Vim was compiled without the +multi_byte feature, you need to specify the
character in the encoding given with 'encoding'. You might want to use
+58 -44
View File
@@ -1,4 +1,4 @@
*editing.txt* For Vim version 7.2a. Last change: 2008 Apr 29
*editing.txt* For Vim version 7.2. Last change: 2008 Aug 09
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -302,9 +302,9 @@ CTRL-^ Edit the alternate file (equivalent to ":e #").
Uses the 'isfname' option to find out which characters
are supposed to be in a file name. Trailing
punctuation characters ".,:;!" are ignored.
Uses the 'path' option as a list of directory names
to look for the file. Also looks for the file
relative to the current file.
Uses the 'path' option as a list of directory names to
look for the file. See the 'path' option for details
about relative directories and wildcards.
Uses the 'suffixesadd' option to check for file names
with a suffix added.
If the file can't be found, 'includeexpr' is used to
@@ -367,13 +367,13 @@ current file name.
Besides the things mentioned here, more special items for where a filename is
expected are mentioned at |cmdline-special|.
Note for systems other than Unix and MS-DOS: When using a command that
accepts a single file name (like ":edit file") spaces in the file name are
allowed, but trailing spaces are ignored. This is useful on systems that
allow file names with embedded spaces (like MS-Windows and the Amiga).
Example: The command ":e Long File Name " will edit the file "Long File
Name". When using a command that accepts more than one file name (like ":next
file1 file2") embedded spaces must be escaped with a backslash.
Note for systems other than Unix: When using a command that accepts a single
file name (like ":edit file") spaces in the file name are allowed, but
trailing spaces are ignored. This is useful on systems that regularly embed
spaces in file names (like MS-Windows and the Amiga). Example: The command
":e Long File Name " will edit the file "Long File Name". When using a
command that accepts more than one file name (like ":next file1 file2")
embedded spaces must be escaped with a backslash.
*wildcard* *wildcards*
Wildcards in {file} are expanded. Which wildcards are supported depends on
@@ -391,6 +391,8 @@ is to use "path\[[]abc]". Then the file "path[abc]" literally.
*starstar-wildcard*
Expanding "**" is possible on Unix, Win32, Mac OS/X and a few other systems.
This allows searching a directory tree. This goes up to 100 directories deep.
Note there are some commands where this works slightly different, see
|file-searching|.
Example: >
:n **/*.txt
Finds files:
@@ -717,23 +719,23 @@ list of the current window.
and |+cmd|. {not in Vi}
*:wn* *:wnext*
:[count]wn[ext] [++opt] [+cmd]
:[count]wn[ext] [++opt]
Write current file and start editing the [count]
next file. Also see |++opt| and |+cmd|. {not in Vi}
:[count]wn[ext] [++opt] [+cmd] {file}
:[count]wn[ext] [++opt] {file}
Write current file to {file} and start editing the
[count] next file, unless {file} already exists and
the 'writeany' option is off. Also see |++opt| and
|+cmd|. {not in Vi}
:[count]wn[ext]! [++opt] [+cmd] {file}
:[count]wn[ext]! [++opt] {file}
Write current file to {file} and start editing the
[count] next file. Also see |++opt| and |+cmd|. {not
in Vi}
:[count]wN[ext][!] [++opt] [+cmd] [file] *:wN* *:wNext*
:[count]wp[revious][!] [++opt] [+cmd] [file] *:wp* *:wprevious*
:[count]wN[ext][!] [++opt] [file] *:wN* *:wNext*
:[count]wp[revious][!] [++opt] [file] *:wp* *:wprevious*
Same as :wnext, but go to previous file instead of
next. {not in Vi}
@@ -853,39 +855,46 @@ Note: When the 'write' option is off, you are not able to write any file.
*:w* *:write*
*E502* *E503* *E504* *E505*
*E512* *E514* *E667* *E796*
:w[rite] Write the whole buffer to the current file. This is
:w[rite] [++opt] Write the whole buffer to the current file. This is
the normal way to save changes to a file. It fails
when the 'readonly' option is set or when there is
another reason why the file can't be written.
For ++opt see |++opt|, but only ++bin, ++nobin, ++ff
and ++enc are effective.
:w[rite]! Like ":write", but forcefully write when 'readonly' is
:w[rite]! [++opt] Like ":write", but forcefully write when 'readonly' is
set or there is another reason why writing was
refused.
Note: This may change the permission and ownership of
the file and break (symbolic) links. Add the 'W' flag
to 'cpoptions' to avoid this.
:[range]w[rite][!] Write the specified lines to the current file. This
:[range]w[rite][!] [++opt]
Write the specified lines to the current file. This
is unusual, because the file will not contain all
lines in the buffer.
*:w_f* *:write_f*
:[range]w[rite] {file} Write the specified lines to {file}, unless it
:[range]w[rite] [++opt] {file}
Write the specified lines to {file}, unless it
already exists and the 'writeany' option is off.
*:w!*
:[range]w[rite]! {file} Write the specified lines to {file}. Overwrite an
:[range]w[rite]! [++opt] {file}
Write the specified lines to {file}. Overwrite an
existing file.
*:w_a* *:write_a* *E494*
:[range]w[rite][!] >> Append the specified lines to the current file.
:[range]w[rite][!] [++opt] >>
Append the specified lines to the current file.
:[range]w[rite][!] >> {file}
:[range]w[rite][!] [++opt] >> {file}
Append the specified lines to {file}. '!' forces the
write even if file does not exist.
*:w_c* *:write_c*
:[range]w[rite] !{cmd} Execute {cmd} with [range] lines as standard input
:[range]w[rite] [++opt] !{cmd}
Execute {cmd} with [range] lines as standard input
(note the space in front of the '!'). {cmd} is
executed like with ":!{cmd}", any '!' is replaced with
the previous command |:!|.
@@ -902,7 +911,8 @@ used, for example, when the write fails and you want to try again later with
'cpoptions' option.
*:sav* *:saveas*
:sav[eas][!] {file} Save the current buffer under the name {file} and set
:sav[eas][!] [++opt] {file}
Save the current buffer under the name {file} and set
the filename of the current buffer to {file}. The
previous name is used for the alternate file name.
The [!] is needed to overwrite an existing file.
@@ -912,7 +922,7 @@ used, for example, when the write fails and you want to try again later with
{not in Vi}
*:up* *:update*
:[range]up[date][!] [>>] [file]
:[range]up[date][!] [++opt] [>>] [file]
Like ":write", but only write when the buffer has been
modified. {not in Vi}
@@ -1061,30 +1071,31 @@ The names can be in upper- or lowercase.
|quickfix|). {not in Vi}
*:wq*
:wq Write the current file and quit. Writing fails when
:wq [++opt] Write the current file and quit. Writing fails when
the file is read-only or the buffer does not have a
name. Quitting fails when the last file in the
argument list has not been edited.
:wq! Write the current file and quit. Writing fails when
:wq! [++opt] Write the current file and quit. Writing fails when
the current buffer does not have a name.
:wq {file} Write to {file} and quit. Quitting fails when the
:wq [++opt] {file} Write to {file} and quit. Quitting fails when the
last file in the argument list has not been edited.
:wq! {file} Write to {file} and quit.
:wq! [++opt] {file} Write to {file} and quit.
:[range]wq[!] [file] Same as above, but only write the lines in [range].
:[range]wq[!] [++opt] [file]
Same as above, but only write the lines in [range].
*:x* *:xit*
:[range]x[it][!] [file]
:[range]x[it][!] [++opt] [file]
Like ":wq", but write only when changes have been
made.
When 'hidden' is set and there are more windows, the
current buffer becomes hidden, after writing the file.
*:exi* *:exit*
:[range]exi[t][!] [file]
:[range]exi[t][!] [++opt] [file]
Same as :xit.
*ZZ*
@@ -1116,18 +1127,18 @@ MULTIPLE WINDOWS AND BUFFERS *window-exit*
*:quita* *:quitall*
:quita[ll][!] Same as ":qall". {not in Vi}
:wqa[ll] *:wqa* *:wqall* *:xa* *:xall*
:wqa[ll] [++opt] *:wqa* *:wqall* *:xa* *:xall*
:xa[ll] Write all changed buffers and exit Vim. If there are buffers
without a file name, which are readonly or which cannot be
written for another reason, Vim will not quit. {not in Vi}
:conf[irm] wqa[ll]
:conf[irm] wqa[ll] [++opt]
:conf[irm] xa[ll]
Write all changed buffers and exit Vim. Bring up a prompt
when some buffers are readonly or cannot be written for
another reason. See |:confirm|. {not in Vi}
:wqa[ll]!
:wqa[ll]! [++opt]
:xa[ll]! Write all changed buffers, even the ones that are readonly,
and exit Vim. If there are buffers without a file name or
which cannot be written for another reason, Vim will not quit.
@@ -1476,14 +1487,16 @@ problem goes away the next day.
{not available when compiled without the |+path_extra| feature}
The file searching is currently used for the 'path', 'cdpath' and 'tags'
options, for |finddir()| and |findfile()|.
options, for |finddir()| and |findfile()|. Other commands use |wildcards|
which is slightly different.
There are three different types of searching:
1) Downward search: *starstar*
Downward search uses the wildcards '*', '**' and possibly others
supported by your operating system. '*' and '**' are handled inside Vim, so
they work on all operating systems.
supported by your operating system. '*' and '**' are handled inside Vim,
so they work on all operating systems. Note that "**" only acts as a
special wildcard when it is at the start of a name.
The usage of '*' is quite simple: It matches 0 or more characters. In a
search pattern this would be ".*". Note that the "." is not used for file
@@ -1491,8 +1504,8 @@ There are three different types of searching:
'**' is more sophisticated:
- It ONLY matches directories.
- It matches up to 30 directories deep, so you can use it to search an
entire directory tree
- It matches up to 30 directories deep by default, so you can use it to
search an entire directory tree
- The maximum number of levels matched can be given by appending a number
to '**'.
Thus '/usr/**2' can match: >
@@ -1505,15 +1518,16 @@ There are three different types of searching:
....
< It does NOT match '/usr/include/g++/std' as this would be three
levels.
The allowed number range is 0 ('**0' is removed) to 255.
The allowed number range is 0 ('**0' is removed) to 100
If the given number is smaller than 0 it defaults to 30, if it's
bigger than 255 then 255 is used.
bigger than 100 then 100 is used. The system also has a limit on the
path length, usually 256 or 1024 bytes.
- '**' can only be at the end of the path or be followed by a path
separator or by a number and a path separator.
You can combine '*' and '**' in any order: >
/usr/**/sys/*
/usr/*/sys/**
/usr/*tory/sys/**
/usr/**2/sys/*
2) Upward search:
+98 -39
View File
@@ -1,4 +1,4 @@
*eval.txt* For Vim version 7.2a. Last change: 2008 Jun 24
*eval.txt* For Vim version 7.2. Last change: 2008 Nov 27
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -967,11 +967,16 @@ These are INVALID:
3. empty {M}
1e40 missing .{M}
*float-pi* *float-e*
A few useful values to copy&paste: >
:let pi = 3.14159265359
:let e = 2.71828182846
Rationale:
Before floating point was introduced, the text "123.456" was interpreted as
the two numbers "123" and "456", both converted to a string and concatenated,
resulting in the string "123456". Since this was considered pointless, and we
could not find it actually being used in Vim scripts, this backwards
could not find it intentionally being used in Vim scripts, this backwards
incompatibility was accepted in favor of being able to use the normal notation
for floating point numbers.
@@ -1479,6 +1484,17 @@ v:mouse_col Column number for a mouse click obtained with |getchar()|.
This is the screen column number, like with |virtcol()|. The
value is zero when there was no mouse button click.
*v:oldfiles* *oldfiles-variable*
v:oldfiles List of file names that is loaded from the |viminfo| file on
startup. These are the files that Vim remembers marks for.
The length of the List is limited by the ' argument of the
'viminfo' option (default is 100).
Also see |:oldfiles| and |c_#<|.
The List can be modified, but this has no effect on what is
stored in the |viminfo| file later. If you use values other
than String this will cause trouble.
{only when compiled with the +viminfo feature}
*v:operator* *operator-variable*
v:operator The last operator given in Normal mode. This is a single
character except for commands starting with <g> or <z>,
@@ -1690,7 +1706,7 @@ executable( {expr}) Number 1 if executable {expr} exists
exists( {expr}) Number TRUE if {expr} exists
extend({expr1}, {expr2} [, {expr3}])
List/Dict insert items of {expr2} into {expr1}
expand( {expr}) String expand special keywords in {expr}
expand( {expr} [, {flag}]) String expand special keywords in {expr}
feedkeys( {string} [, {mode}]) Number add key sequence to typeahead buffer
filereadable( {file}) Number TRUE if {file} is a readable file
filewritable( {file}) Number TRUE if {file} is a writable file
@@ -1742,8 +1758,9 @@ gettabwinvar( {tabnr}, {winnr}, {name})
getwinposx() Number X coord in pixels of GUI Vim window
getwinposy() Number Y coord in pixels of GUI Vim window
getwinvar( {nr}, {varname}) any variable {varname} in window {nr}
glob( {expr}) String expand file wildcards in {expr}
globpath( {path}, {expr}) String do glob({expr}) for all dirs in {path}
glob( {expr} [, {flag}]) String expand file wildcards in {expr}
globpath( {path}, {expr} [, {flag}])
String do glob({expr}) for all dirs in {path}
has( {feature}) Number TRUE if feature {feature} supported
has_key( {dict}, {key}) Number TRUE if {dict} has entry {key}
haslocaldir() Number TRUE if current window executed |:lcd|
@@ -2524,9 +2541,15 @@ exists({expr}) The result is a Number, which is non-zero if {expr} is
|internal-variables|). Also works
for |curly-braces-names|, |Dictionary|
entries, |List| items, etc. Beware
that this may cause functions to be
invoked cause an error message for an
invalid expression.
that evaluating an index may cause an
error message for an invalid
expression. E.g.: >
:let l = [1, 2, 3]
:echo exists("l[5]")
< 0 >
:echo exists("l[xx]")
< E121: Undefined variable: xx
0
:cmdname Ex command: built-in command, user
command or command modifier |:command|.
Returns:
@@ -2670,7 +2693,11 @@ extend({expr1}, {expr2} [, {expr3}]) *extend()*
Examples: >
:echo sort(extend(mylist, [7, 5]))
:call extend(mylist, [2, 3], 1)
< Use |add()| to concatenate one item to a list. To concatenate
< When {expr1} is the same List as {expr2} then the number of
items copied is equal to the original length of the List.
E.g., when {expr3} is 1 you get N new copies of the first item
(where N is the original length of the List).
Use |add()| to concatenate one item to a list. To concatenate
two lists into a new list use the + operator: >
:let newlist = [1, 2, 3] + [4, 5]
<
@@ -2817,11 +2844,13 @@ fnameescape({string}) *fnameescape()*
For most systems the characters escaped are
" \t\n*?[{`$\\%#'\"|!<". For systems where a backslash
appears in a filename, it depends on the value of 'isfname'.
A leading '+' and '>' is also escaped (special after |:edit|
and |:write|). And a "-" by itself (special after |:cd|).
Example: >
:let fname = 'some str%nge|name'
:let fname = '+some str%nge|name'
:exe "edit " . fnameescape(fname)
< results in executing: >
edit some\ str\%nge\|name
edit \+some\ str\%nge\|name
fnamemodify({fname}, {mods}) *fnamemodify()*
Modify file name {fname} according to {mods}. {mods} is a
@@ -2945,6 +2974,8 @@ getbufvar({expr}, {varname}) *getbufvar()*
The result is the value of option or local buffer variable
{varname} in buffer {expr}. Note that the name without "b:"
must be used.
When {varname} is empty returns a dictionary with all the
buffer-local variables.
This also works for a global or buffer-local option, but it
doesn't work for a global variable, window-local variable or
window-local option.
@@ -3256,14 +3287,16 @@ getwinvar({winnr}, {varname}) *getwinvar()*
:let list_is_on = getwinvar(2, '&list')
:echo "myvar = " . getwinvar(1, 'myvar')
<
*glob()*
glob({expr}) Expand the file wildcards in {expr}. See |wildcards| for the
glob({expr} [, {flag}]) *glob()*
Expand the file wildcards in {expr}. See |wildcards| for the
use of special characters.
The result is a String.
When there are several matches, they are separated by <NL>
characters.
The 'wildignore' option applies: Names matching one of the
patterns in 'wildignore' will be skipped.
Unless the optional {flag} argument is given and is non-zero,
the 'suffixes' and 'wildignore' options apply: Names matching
one of the patterns in 'wildignore' will be skipped and
'suffixes' affect the ordering of matches.
If the expansion fails, the result is an empty string.
A name for a non-existing file is not included.
@@ -3277,26 +3310,30 @@ glob({expr}) Expand the file wildcards in {expr}. See |wildcards| for the
See |expand()| for expanding special Vim variables. See
|system()| for getting the raw output of an external command.
globpath({path}, {expr}) *globpath()*
globpath({path}, {expr} [, {flag}]) *globpath()*
Perform glob() on all directories in {path} and concatenate
the results. Example: >
:echo globpath(&rtp, "syntax/c.vim")
< {path} is a comma-separated list of directory names. Each
directory name is prepended to {expr} and expanded like with
glob(). A path separator is inserted when needed.
|glob()|. A path separator is inserted when needed.
To add a comma inside a directory name escape it with a
backslash. Note that on MS-Windows a directory may have a
trailing backslash, remove it if you put a comma after it.
If the expansion fails for one of the directories, there is no
error message.
The 'wildignore' option applies: Names matching one of the
patterns in 'wildignore' will be skipped.
Unless the optional {flag} argument is given and is non-zero,
the 'suffixes' and 'wildignore' options apply: Names matching
one of the patterns in 'wildignore' will be skipped and
'suffixes' affect the ordering of matches.
The "**" item can be used to search in a directory tree.
For example, to find all "README.txt" files in the directories
in 'runtimepath' and below: >
:echo globpath(&rtp, "**/README.txt")
<
< Upwards search and limiting the depth of "**" is not
supported, thus using 'path' will not always work properly.
*has()*
has({feature}) The result is a Number, which is 1 if the feature {feature} is
supported, zero otherwise. The {feature} argument is a
@@ -3361,13 +3398,13 @@ histdel({history} [, {item}]) *histdel()*
Clear {history}, i.e. delete all its entries. See |hist-names|
for the possible values of {history}.
If the parameter {item} is given as String, this is seen
as regular expression. All entries matching that expression
will be removed from the history (if there are any).
If the parameter {item} evaluates to a String, it is used as a
regular expression. All entries matching that expression will
be removed from the history (if there are any).
Upper/lowercase must match, unless "\c" is used |/\c|.
If {item} is a Number, it will be interpreted as index, see
|:history-indexing|. The respective entry will be removed
if it exists.
If {item} evaluates to a Number, it will be interpreted as
an index, see |:history-indexing|. The respective entry will
be removed if it exists.
The result is a Number: 1 for a successful operation,
otherwise 0 is returned.
@@ -4012,8 +4049,12 @@ mkdir({name} [, {path} [, {prot}]])
If {prot} is given it is used to set the protection bits of
the new directory. The default is 0755 (rwxr-xr-x: r/w for
the user readable for others). Use 0700 to make it unreadable
for others.
This function is not available in the |sandbox|.
for others. This is only used for the last part of {name}.
Thus if you create /tmp/foo/bar then /tmp/foo will be created
with 0755.
Example: >
:call mkdir($HOME . "/tmp/foo/bar", "p", 0700)
< This function is not available in the |sandbox|.
Not available on all systems. To check use: >
:if exists("*mkdir")
<
@@ -4278,9 +4319,11 @@ printf({fmt}, {expr1} ...) *printf()*
% A '%' is written. No argument is converted. The
complete conversion specification is "%%".
Each argument can be Number or String and is converted
automatically to fit the conversion specifier. Any other
argument type results in an error message.
When a Number argument is expected a String argument is also
accepted and automatically converted.
When a Float or String argument is expected a Number argument
is also accepted and automatically converted.
Any other argument type results in an error message.
*E766* *E767*
The number of {exprN} arguments must exactly match the number
@@ -4506,7 +4549,7 @@ reverse({list}) Reverse the order of items in {list} in-place. Returns
:let revlist = reverse(copy(mylist))
round({expr}) *round()*
Round off {expr} to a the nearest integral value and return it
Round off {expr} to the nearest integral value and return it
as a |Float|. If {expr} lies halfway between two integral
values, then use the larger one (away from zero).
{expr} must evaluate to a |Float| or a |Number|.
@@ -4951,9 +4994,16 @@ shellescape({string} [, {special}]) *shellescape()*
and replace all "'" with "'\''".
When the {special} argument is present and it's a non-zero
Number or a non-empty String (|non-zero-arg|), then special
items such as "%", "#" and "<cword>" will be preceded by a
backslash. This backslash will be removed again by the |:!|
items such as "!", "%", "#" and "<cword>" will be preceded by
a backslash. This backslash will be removed again by the |:!|
command.
The "!" character will be escaped (again with a |non-zero-arg|
{special}) when 'shell' contains "csh" in the tail. That is
because for csh and tcsh "!" is used for history replacement
even when inside single quotes.
The <NL> character is also escaped. With a |non-zero-arg|
{special} and 'shell' containing "csh" in the tail it's
escaped a second time.
Example of use with a |:!| command: >
:exe '!dir ' . shellescape(expand('<cfile>'), 1)
< This results in a directory listing for the file under the
@@ -5098,6 +5148,7 @@ sqrt({expr}) *sqrt()*
< 10.0 >
:echo sqrt(-4.01)
< nan
"nan" may be different, it depends on system libraries.
{only available when compiled with the |+float| feature}
@@ -5297,10 +5348,12 @@ synIDattr({synID}, {what} [, {mode}]) *synIDattr()*
"fg" foreground color (GUI: color name used to set
the color, cterm: color number as a string,
term: empty string)
"bg" background color (like "fg")
"bg" background color (as with "fg")
"sp" special color (as with "fg") |highlight-guisp|
"fg#" like "fg", but for the GUI and the GUI is
running the name in "#RRGGBB" form
"bg#" like "fg#" for "bg"
"sp#" like "fg#" for "sp"
"bold" "1" if bold
"italic" "1" if italic
"reverse" "1" if reverse
@@ -5484,7 +5537,7 @@ tr({src}, {fromstr}, {tostr}) *tr()*
< returns "{blob}"
trunc({expr}) *trunc()*
Return the largest integral value with magnituted less than or
Return the largest integral value with magnitude less than or
equal to {expr} as a |Float| (truncate towards zero).
{expr} must evaluate to a |Float| or a |Number|.
Examples: >
@@ -5790,7 +5843,8 @@ mouse_netterm Compiled with support for netterm mouse.
mouse_pterm Compiled with support for qnx pterm mouse.
mouse_sysmouse Compiled with support for sysmouse (*BSD console mouse)
mouse_xterm Compiled with support for xterm mouse.
multi_byte Compiled with support for editing Korean et al.
multi_byte Compiled with support for 'encoding'
multi_byte_encoding 'encoding' is set to a multi-byte encoding.
multi_byte_ime Compiled with support for IME input method.
multi_lang Compiled with support for multiple languages.
mzscheme Compiled with MzScheme interface |mzscheme|.
@@ -5909,7 +5963,7 @@ It's also possible to use curly braces, see |curly-braces-names|. And the
A function local to a script must start with "s:". A local script function
can only be called from within the script and from functions, user commands
and autocommands defined in the script. It is also possible to call the
function from a mappings defined in the script, but then |<SID>| must be used
function from a mapping defined in the script, but then |<SID>| must be used
instead of "s:" when the mapping is expanded outside of the script.
*:fu* *:function* *E128* *E129* *E123*
@@ -6019,7 +6073,7 @@ can be 0). "a:000" is set to a |List| that contains these arguments. Note
that "a:1" is the same as "a:000[0]".
*E742*
The a: scope and the variables in it cannot be changed, they are fixed.
However, if a |List| or |Dictionary| is used, you can changes their contents.
However, if a |List| or |Dictionary| is used, you can change their contents.
Thus you can pass a |List| to a function and have the function add an item to
it. If you want to make sure the function cannot change a |List| or
|Dictionary| use |:lockvar|.
@@ -6398,6 +6452,11 @@ This would call the function "my_func_whizz(parameter)".
< One item from a |Dictionary| can be removed at a time: >
:unlet dict['two']
:unlet dict.two
< This is especially useful to clean up used global
variables and script-local variables (these are not
deleted when the script ends). Function-local
variables are automatically deleted when the function
ends.
:lockv[ar][!] [depth] {name} ... *:lockvar* *:lockv*
Lock the internal variable {name}. Locking means that
+1 -1
View File
@@ -1,4 +1,4 @@
*farsi.txt* For Vim version 7.2a. Last change: 2005 Mar 29
*farsi.txt* For Vim version 7.2. Last change: 2005 Mar 29
VIM REFERENCE MANUAL by Mortaza Ghassab Shiran
+28 -5
View File
@@ -1,4 +1,4 @@
*filetype.txt* For Vim version 7.2a. Last change: 2008 Jun 21
*filetype.txt* For Vim version 7.2. Last change: 2008 Jul 15
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -55,7 +55,7 @@ filetype prepend "ft-" and optionally append "-syntax", "-indent" or
If the file type is not detected automatically, or it finds the wrong type,
you can either set the 'filetype' option manually, or add a modeline to your
file. Example, for in an IDL file use the command: >
file. Example, for an IDL file use the command: >
:set filetype=idl
or add this |modeline| to the file:
@@ -284,8 +284,8 @@ match in angle brackets in place of a pattern, like this: >
This will match:
- Any file whose name ends in `.html'
- Any file whose type is `&faf' or 'HTML', where the meaning of these types
- Any file whose name ends in ".html"
- Any file whose type is "&faf" or "HTML", where the meaning of these types
depends on which version of Vim you are using.
Unknown types are considered NOT to match.
@@ -294,7 +294,7 @@ must both match): >
:au BufRead <&fff>diff*
This will match files of type `&fff' whose names start with `diff'.
This will match files of type "&fff" whose names start with "diff".
Note that osfiletype checking is skipped if Vim is compiled without the
|+osfiletype| feature.
@@ -482,6 +482,29 @@ g:changelog_date_end_entry_search
The default is '^\s*$' which finds lines that contain
only whitespace or are completely empty.
b:changelog_name *b:changelog_name*
Name of the ChangeLog file to look for.
The default is 'ChangeLog'.
b:changelog_path
Path of the ChangeLog to use for the current buffer.
The default is empty, thus looking for a file named
|b:changelog_name| in the same directory as the
current buffer. If not found, the parent directory of
the current buffer is searched. This continues
recursively until a file is found or there are no more
parent directories to search.
b:changelog_entry_prefix
Name of a function to call to generate a prefix to a
new entry. This function takes no arguments and
should return a string containing the prefix.
Returning an empty prefix is fine.
The default generates the shortest path between the
ChangeLog's pathname and the current buffers pathname.
In the future, it will also be possible to use other
variable contexts for this variable, for example, g:.
The Changelog entries are inserted where they add the least amount of text.
After figuring out the current date and user, the file is searched for an
entry beginning with the current date and user and if found adds another item
+1 -1
View File
@@ -1,4 +1,4 @@
*fold.txt* For Vim version 7.2a. Last change: 2007 May 11
*fold.txt* For Vim version 7.2. Last change: 2007 May 11
VIM REFERENCE MANUAL by Bram Moolenaar
+1 -1
View File
@@ -1,4 +1,4 @@
*ft_ada.txt* For Vim version 7.2a. Last change: 2008 Jun 21
*ft_ada.txt* For Vim version 7.2. Last change: 2008 Jun 21
ADA FILE TYPE PLUG-INS REFERENCE MANUAL~
+1 -1
View File
@@ -1,4 +1,4 @@
*ft_sql.txt* For Vim version 7.2a. Last change: Wed Apr 26 2006 3:05:33 PM
*ft_sql.txt* For Vim version 7.2. Last change: Wed Apr 26 2006 3:05:33 PM
by David Fishburn
+1 -1
View File
@@ -1,4 +1,4 @@
*gui.txt* For Vim version 7.2a. Last change: 2008 Jun 14
*gui.txt* For Vim version 7.2. Last change: 2008 Jun 14
VIM REFERENCE MANUAL by Bram Moolenaar
+239 -73
View File
@@ -1,4 +1,4 @@
*gui_mac.txt* For Vim version 7.2a. Last change: 2008 May 25
*gui_mac.txt* For Vim version 7.2. Last change: 2009 Jan 08
VIM REFERENCE MANUAL by Bjorn Winckler
@@ -15,12 +15,13 @@ The MacVim Graphical User Interface *macvim* *gui-macvim*
6. Toolbar |macvim-toolbar|
7. Dialogs |macvim-dialogs|
8. System services |macvim-services|
9. Known bugs/missing features |macvim-todo|
10. Hints |macvim-hints|
9. mvim:// URL handler |macvim-url-handler|
10. Keyboard shortcuts |macvim-shortcuts|
11. Known bugs/missing features |macvim-todo|
12. Hints |macvim-hints|
Other relevant documentation:
|gui.txt| For generic items of the GUI.
|os_mac.txt| For Mac specific items.
{Vi does not have a GUI}
@@ -76,16 +77,6 @@ file at all. In this situation, you will need to set both 'encoding' and
'fileencodings' to a simple single-byte encoding such as Latin1 so that when
the file is read into memory, the original bytes are left untouched.
*macvim-movement*
Some Mac OS X standard key mappings involving Cmd or Option and an arrow key
are set up by default in "$VIM/gvimrc". You can quickly disable all of these
by adding the following lines to your "~/.vimrc" (not .gvimrc) file: >
if has("gui_macvim")
let macvim_skip_cmd_opt_movement = 1
endif
Note: These are the only key mappings that MacVim makes (not counting menu key
equivalents which are not set up with :map).
*macvim-shift-movement*
Text editors on Mac OS X lets the user hold down shift+movement key to extend
the selection. Also, pressing a printable key whilst selecting replaces the
@@ -108,6 +99,10 @@ If a file is dropped on the Dock icon, it is always opened in a new tab
regardless of the mode Vim is currently in. The same holds if you
double-click on a file in the Finder.
The "Open files from applications" preference in the General preference pane
gives more options on how dropped files should open, in case tabs are not
desired.
*macvim-default-menu*
The default menu in MacVim has been changed to conform better with the Apple
Human Interface Guidelines (HIG). At the moment this breaks the localized
@@ -124,7 +119,12 @@ strings like "((3) of 2)" to appear in the window title.
*macvim-options*
These are the non-standard options that MacVim supports:
'fullscreen' 'fuoptions' 'toolbariconsize' 'transparency' 'antialias'
'antialias' 'fullscreen' 'fuoptions'
'macmeta' 'toolbariconsize' 'transparency'
*macvim-commands*
These are the non-standard commands that MacVim supports:
|:macaction| |:macmenu|
*macvim-find*
Whenever you search for something in Vim (e.g. using "/") the search query is
@@ -161,24 +161,31 @@ formats. This enables you to double-click a file to open it with MacVim (if
it is not associated with another program), or to right-click a file to bring
up the "Open with" menu. You can also drag and drop files onto the Dock icon
to open them in tabs in a new window, or you can drop them in an already open
window to open the files in tabs in that specific window. Finally, you can
use Mac OS X System Services to open files in MacVim, see |macvim-services|.
window to open the files in tabs in that specific window (it is possible to
have files open in e.g. splits by changing the "Open files from applications"
option in the General preference pane). Finally, you can use Mac OS X System
Services to open files in MacVim, see |macvim-services|.
There are essentially two ways to start MacVim from Terminal: either call the
Vim binary with the -g switch >
/Applications/MacVim.app/Contents/MacOS/Vim -g file ...
or use the "open" command (which is of limited use since it cannot be used to
pass parameters to Vim) >
or use the "open" command (this method can not be used to pass parameters to
Vim) >
open -a MacVim file ...
<
*mvim*
The advantage of using the latter method is that the settings relating to file
opening in the preferences panel are respected, and files open instantly if
|Quickstart| is enabled.
To save yourself from having to type the entire path to the Vim binary each
time you start MacVim, you could create an alias such as >
alias gvim='/Applications/MacVim.app/Contents/MacOS/Vim -g'
and add that to "~/.profile". A more flexible way to start MacVim is to use
the shell script "mvim" which comes bundled with MacVim. Put this script in a
folder in your path and then simply type "mvim" to start MacVim. This script
will try to find MacVim.app in various typical folders such as >
and add that to "~/.profile".
*mvim*
A more flexible way to start MacVim is to use the shell script "mvim" which
comes bundled with MacVim. Put this script in a folder in your path and then
simply type "mvim" to start MacVim. This script will try to find MacVim.app
in various typical folders such as >
~/Applications ~/Applications/vim
/Applications /Applications/vim
/Applications/Utilities /Applications/Utilities/vim
@@ -186,6 +193,17 @@ If you would rather put MacVim.app in some other directory then that is also
possible, simply set the environment variable VIM_APP_DIR to whatever folder
you have placed MacVim.app in.
The "mvim" script can be symlinked to in order to start up MacVim in different
modes as follows (assuming you placed "mvim" in "/usr/local/bin"): >
* Diff: ln -s /usr/local/bin/mvim mvimdiff
* Read-only: ln -s /usr/local/bin/mvim mview
* Ex: ln -s /usr/local/bin/mvim mex
* Restricted: ln -s /usr/local/bin/mvim rmvim
If the symlink destination starts with "m" (or "g"), Vim will start in GUI
mode. Removing the initial "m" from the above destination names makes Vim
start without the GUI. (In the last case, the destination name can be
"rmvim", "rgvim" or "rvim".)
Note: Starting MacVim by creating a symlink to >
.../MacVim.app/Contents/MacOS/Vim
with 'ln -s' does not work.
@@ -195,6 +213,20 @@ command:
:gui [++opt] [+cmd] [-f|-b] [files...]
Note: Forking ("-b") currently does not work.
*Quickstart*
Quickstart ensures that new windows open instantaneously e.g. when <D-n> is
pressed. This feature can be enabled from the Advanced preferences pane (it
is disabled by default). Note that this setting does not affect the speed
with which windows open when using the |mvim| command.
The main reason why this feature is not enabled by default is because on OS X
10.4 changes to runtime files (e.g. those in "~/.vim") are not detected. For
example, if you install a new plugin and then press <D-n> to open a new
window, then that first window will not notice the plugin (but any consecutive
windows after the first one will). On OS X 10.5 and later all modifications
to runtime files in "~/.vim" are detected, so unless you keep runtime files in
another folder there should be no problems.
*odbeditor* *external-editor*
MacVim can act as an 'external editor' for Mac OS X applications that support
the ODB Editor Protocol (or the 'external editor' protocol). Each application
@@ -212,8 +244,9 @@ is sent back to the server application.
Some settings are global to the MacVim application and would not make sense as
Vim options. These settings are stored in a user default database and can be
accessed via the "MacVim/Preferences..." menu item.
accessed via the "MacVim.Preferences..." menu item.
*macvim-user-defaults*
Not all entries in the user defaults database are exposed via the preference
panel, usually because they should not be changed by the user under normal
circumstances. These options can still be changed with the "defaults" command
@@ -225,12 +258,13 @@ as general information regarding Mac OS X user defaults.
Here is a list of relevant dictionary entries:
KEY VALUE ~
MMAtsuiRenderer enable ATSUI renderer [bool]
MMCellWidthMultiplier width of a normal glyph in em units [float]
MMDialogsTrackPwd open/save dialogs track the Vim pwd [bool]
MMLoadDefaultFont load font (disable for faster startup) [bool]
MMLoginShellArgument login shell parameter [string]
MMLoginShellCommand which shell to use to launch Vim [string]
MMNoFontSubstitution disable automatic font substitution [bool]
MMShowAddTabButton enable "add tab" button on tabline [bool]
MMTabMaxWidth maximum width of a tab [int]
MMTabMinWidth minimum width of a tab [int]
MMTabOptimumWidth default width of a tab [int]
@@ -240,6 +274,7 @@ MMTextInsetRight text area offset in pixels [int]
MMTextInsetTop text area offset in pixels [int]
MMTexturedWindow use brushed metal window (Tiger only) [bool]
MMTranslateCtrlClick interpret ctrl-click as right-click [bool]
MMVerticalSplit files open in vertical splits [bool]
MMZoomBoth zoom button maximizes both directions [bool]
As an example, if you have more than one mouse button and would wish to free
@@ -255,7 +290,7 @@ Terminal and type: >
Applications opened from the Finder do not automatically source the user's
environment variables (which are typically set in .profile or .bashrc). This
presents a problem when using |:!| to execute commands in the shell since e.g.
$PATH might not be set properly. To work around this problem MacVim can start
$PATH might not be set properly. To work around this problem MacVim starts
new Vim processes via a login shell so that all environment variables are set.
By default MacVim uses the $SHELL environment variable to determine which
@@ -344,7 +379,7 @@ can be used to send action messages.
property list file called |Actions.plist|.
*:macm* *:macmenu*
:mac[menu] {menu} {key}={arg} ...
:macm[enu] {menu} {key}={arg} ...
Set Mac specific properties for {menu}. The
properties that can be set are:
action the action this menu sends
@@ -362,9 +397,11 @@ can be used to send action messages.
":maca name:".
The key equivalent is specified with the <D-..>
syntax. Note that key equivalents must contain the
Cmd modifier flag (<D-...>), and they take precedence
over normal mappings.
syntax. This is case-sensitive, so <D-a> means Cmd-a
whereas <D-A> means Cmd-Shift-a.
Note that key equivalents must contain the Cmd
modifier flag (<D-..>), and they take precedence over
normal mappings.
Use the syntax "key=<nop>" to clear the key equivalent
of a menu. This can be used to free up a key
combination that is set in the system gvimrc so that
@@ -388,7 +425,12 @@ equivalent Cmd-n, which opens a new window when selected: >
:macm Window.Next\ Tab key=<D-Right>
3. Create a mapping in normal mode which closes the current tab/window: >
:map <C-w> :maca performClose:<CR>
>
4. Free up Cmd-t and remap it to open a file browser in a split view: >
macm File.New\ Tab key=<nop>
nmap <D-t> :sp .<CR>
Note: These two lines must be added to .gvimrc else the first line will fail.
The second line is case sensitive, so <D-T> (Cmd-Shift-t) is not the same as
<D-t> (Cmd-t)!
The standard Vim menus are modified in "$VIM/gvimrc". Take a look at that
file for more examples on how to set up menus. Note: When no window is open a
@@ -456,11 +498,12 @@ icon can be found a warning triangle is displayed instead.
Dialogs can be controlled with the keyboard in two ways. By default each
button in a dialog is bound to a key. The button that is highlighted by blue
is bound to Enter, and any button with the title "Cancel" is bound to Escape.
Other buttons are usually bound to the first letter in the title of the
button. There is no visual feedback to indicate which letter a button is
bound to, so sometimes some experimentation might be required in order to
figure out which key to press.
is bound to Enter, any button with the title "Cancel" is bound to Escape, and
any button with the title "Don't Save" is bound to <D-d>. Other buttons are
usually bound to the first letter in the title of the button. There is no
visual feedback to indicate which letter a button is bound to, so sometimes
some experimentation might be required in order to figure out which key to
press.
The second way of controlling dialogs with the keyboard is to enable "Full
keyboard access" in the "Keyboard & Mouse" pane of the System Preferences (you
@@ -478,20 +521,106 @@ located in the /Applications folder. (You might have to logout and then login
again before Mac OS X detects the MacVim services.)
These are the currently supported services:
* New Tab Containing Selection: Opens a new tab in the topmost window and
pastes the currently selected text in that tab. A new window will be
opened if necessary.
* Open Selected File in Tab: If the selected text represents a file
name, then the corresponding file is opened in a new tab in the topmost
window.
* Open Selected File in Window: Same as the above, but always open in a new
window.
* New Document Containing Selection: Open a new window and paste the
currently selected text.
* New Document Here: Open a new window and set the current directory
to that of the selected text. This is intended to be used from a
Finder window to open an empty document in the currently selected
folder.
* Open Selected File: If the selected text represents a file name,
then the corresponding file is opened in a new window.
If new files are set to open in the current window (in the General preference
pane) then the above services will also reuse the topmost window, instead of
opening a new window.
==============================================================================
9. Known bugs/missing features *macvim-todo*
9. mvim:// URL handler *mvim://* *macvim-url-handler*
Here are some of the bigger bugs in MacVim. Of course there are others, but
these are ones that are know and/or which were judged major.
MacVim supports a custom URL handler for "mvim://" URLs. The handler is
supposed to be compatible to TextMate's URL scheme as documented at
http://blog.macromates.com/2007/the-textmate-url-scheme/.
Currently, this means that the format is >
mvim://open?<arguments>
where "arguments" can be:
* url — the actual file to open (i.e. a file://... URL), if you leave
out this argument, the frontmost document is implied
* line — line number to go to (one based)
* column — column number to go to (one based)
For example, the link >
mvim://open?url=file:///etc/profile&line=20
will open the file /etc/profile on line 20 when clicked in a web browser.
Note that url has to be a file:// url pointing to an existing local file.
==============================================================================
10. Keyboard shortcuts *macvim-shortcuts*
Most keyboard shortcuts in MacVim are bound to menu items and can be
discovered by looking through the menus (see |macvim-menus| on how to create
your own menu shortcuts). The remaining shortcuts are listed here:
*Cmd-.* *<D-.>*
Cmd-. Interrupt Vim. Unlike Ctrl-C which is sent as normal
keyboard input (and hence has to be received and then
interpreted) this sends a SIGINT signal to the Vim
process. Use this shortcut if the Vim process appears
to have locked up and is not responding to key presses.
*Cmd-`* *<D-`>*
Cmd-` Cycle to the next window. On an American keyboard the
`-key is located under the Esc-key. On European
keyboards this key is often adjacent to the left
Shift-key and it may be not even be marked with "`".
*Cmd-Left* *<D-Left>*
Cmd-Left Move cursor to the beginning of the line
(see |cmd-movement|).
*Cmd-Right* *<D-Right>*
Cmd-Right Move cursor to the end of the line (see |cmd-movement|).
*Cmd-Up* *<D-Up>*
Cmd-Up Move cursor to the first line (see |cmd-movement|).
*Cmd-Down* *<D-Down>*
Cmd-Down Move cursor to the last line (see |cmd-movement|).
*Alt-Left* *<M-Left>*
Alt-Left Move cursor to the beginning of the previous word
(see |alt-movement|).
*Alt-Right* *<M-Right>*
Alt-Right Move cursor to the beginning of the next word
(see |alt-movement|).
*Alt-Up* *<M-Up>*
Alt-Up Move cursor one paragraph forward (see |alt-movement|).
*Alt-Down* *<M-Down>*
Alt-Down Move cursor to the previous paragraph
(see |alt-movement|).
*cmd-movement* *alt-movement*
The above mappings involving Cmd/Alt + arrow key are enabled by default in the
system gvimrc file "$VIM/gvimrc". You can quickly disable all of these by
adding the following lines to your "~/.vimrc" (not .gvimrc) file: >
if has("gui_macvim")
let macvim_skip_cmd_opt_movement = 1
endif
Note: These are the only key mappings that MacVim makes (not counting menu key
equivalents which are not set up with :map).
See |macvim-shift-movement| if you want Shift to select text when used in
conjunction with the above Cmd/Alt movement shortcuts.
==============================================================================
11. Known bugs/missing features *macvim-todo*
This list is by no means exhaustive, it only enumerates some of the more
prominent bugs/missing features.
- Localized menus are not supported. Choosing anything but "English" in the
"International" pane of "System Prefences" may break the menus (and
@@ -500,8 +629,9 @@ these are ones that are know and/or which were judged major.
- Sometimes multibyte characters look "too wide", i.e. they overlap the
following character. It might help to change 'ambiwidth', or override the
automatic font substitution by setting 'guifontwide' manually.
- Printing
- No find/replace dialog
- Printing. As a temporary solution <D-p> creates a PostScript file which is
then opened in Preview where it may be printed.
- The toolbar looks ugly and is not very useful.
If you find new bugs then add a new issue at http://code.google.com/p/macvim/
or post your findings to the |vim_mac| mailing list. If you are missing
@@ -510,24 +640,24 @@ might be simple to implement, but unless somebody asks for a particular
feature then there is little incentive to add it.
==============================================================================
10. Hints *macvim-hints*
12. Hints *macvim-hints*
In this section some general (not necessarily MacVim specific) hints are
given.
Scenario: ~
You try opening a bunch of files in tabs but not all files get
opened in their own tab.
You try opening a bunch of files in tabs but not all files get opened in their
own tab.
Solution: ~
To get around this, set 'tabpagemax' to something big in your
.gvimrc file (e.g. ":set tabpagemax=100").
To get around this, set 'tabpagemax' to something big in your .gvimrc file
(e.g. ":set tabpagemax=100").
Scenario: ~
You want to open a file in a tab in an already opened window, but typing
"mvim filename" in Terminal opens it up in a separate window.
You want to open a file in a tab in an already opened window, but typing "mvim
filename" in Terminal opens it up in a separate window.
Solution: ~
Use the |--remote-tab| switch. If you have several windows open you
might have to specify which window you want the file to open in by using the
Use the |--remote-tab| switch. If you have several windows open you might
have to specify which window you want the file to open in by using the
|--servername| switch. The title of a window usually ends in something like
"VIM" or "VIM3" --- this is the server name of that window. So to open a file
named "foobar.txt" in a window whose title ends in "VIM3" you would type (the
@@ -536,27 +666,27 @@ order of the arguments matters): >
For more information, consult the |client-server| manual page.
Scenario: ~
You like to be able to select text by holding down shift and
pressing the arrow keys and find the Vim way of selecting text strange.
You like to be able to select text by holding down shift and pressing the
arrow keys and find the Vim way of selecting text strange.
Solution: ~
See |macvim-shift-movement|.
Scenario: ~
You do not want MacVim to set up any key mappings.
Solution: ~
See |macvim-movement|.
See |cmd-movement|.
Scenario: ~
Enabling localized menus breaks the toolbar and the menus as well.
Solution: ~
This is a know problem, see |macvim-todo|.
This is a known problem, see |macvim-todo|.
Scenario: ~
You dislike the default font (DejaVu Sans Mono).
Solution: ~
The standard fixed width font on other Mac OS X applications is
Monaco. If you prefer this font then add the following line to your
"~/.gvimrc" (note that Monaco does not come in italic and bold variants): >
The standard fixed width font on other Mac OS X applications is Monaco. If
you prefer this font then add the following line to your "~/.gvimrc" (note
that Monaco does not come in italic and bold variants): >
set guifont=Monaco:h10
The suffix ":h10" specifies the point size of the font should be "10" (see
'guifont' for more information on how to set the font).
@@ -569,20 +699,56 @@ Hold down Cmd and click the zoom button. If you prefer this to be the default
action, then set the user default MMZoomBoth (see |macvim-prefs|).
Scenario: ~
Typing feels sluggish when the cursor is just before a right bracket (i.e. ')',
'}', or ']').
Typing feels sluggish when the cursor is just before a right bracket (i.e.
')', '}', or ']').
Solution: ~
Disable the "matchparen" plugin (see |matchparen|) by typing :NoMatchParen.
If that helps, then you can permanently disable "matchparen" by adding the
following line to your "~/.vimrc": >
let loaded_matchparen=1
<
Scenario: ~
You want to use MacVim as an editor for some external application.
Solution: ~
If the external application lets you set a program to execute then something
like "mvim -f" might be all you need (the "-f" switch ensures that the "mvim"
script returns only after you close the editor window, otherwise "mvim"
returns immediately). If the external program honors the EDITOR environment
variable (e.g Git does this) then you may get away by adding the following
line to your "~/.profile": >
export EDITOR='mvim -f'
If you have not installed the "mvim" script in your path you can provide the
path to the Vim binary instead. Thus, if "MacVim.app" resides in the
Applications folder then you would use the following line: >
export EDITOR='/Applications/MacVim.app/Contents/MacOS/Vim -g -f'
Scenario: ~
You can't find the information on MacVim you thought should be in
this manual page.
You have set MacVim to open from an external program and when you finish
editing (by closing the MacVim window) you want the external program to regain
focus.
Solution: ~
Post your question on the |vim_mac| mailing list and wait for an
answer.
Use the VimLeave autocommand to hide MacVim when the window closes: >
au VimLeave * maca hide:
Assuming your external program has a setting for which command to execute to
bring up an editor, you would set that option to something like: >
mvim -f -c "au VimLeave * maca hide:"
(See the above Scenario for an explanation of the "-f" switch.)
Scenario: ~
You would like to remap Caps Lock to Esc.
Solution: ~
The free app "PCKeyboardHack" can be used to remap Caps Lock. It is available
as a free download from:
http://www.pqrs.org/tekezo/macosx/keyremap4macbook/extra.html
On some Apple keyboards the Caps Lock key doesn't immediately register and
this makes Caps Lock "drop" key presses. To work around this problem go into
the "Keyboard & Mouse" System Preference and remap Caps Lock to Ctrl first
(click the "Modifier Keys..." button).
Scenario: ~
You can't find the information on MacVim you thought should be in this manual
page.
Solution: ~
Post your question on the |vim_mac| mailing list and wait for an answer.
vim:tw=78:sw=4:ts=8:ft=help:norl:
+1 -1
View File
@@ -1,4 +1,4 @@
*gui_w16.txt* For Vim version 7.2a. Last change: 2005 Mar 29
*gui_w16.txt* For Vim version 7.2. Last change: 2005 Mar 29
VIM REFERENCE MANUAL by Bram Moolenaar
+2 -2
View File
@@ -1,4 +1,4 @@
*gui_w32.txt* For Vim version 7.2a. Last change: 2007 Aug 30
*gui_w32.txt* For Vim version 7.2. Last change: 2007 Aug 30
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -129,7 +129,7 @@ the makefile by double clicking it and use the "Edit with Vim" entry to edit
the makefile.
You can select any files and right-click to see a menu option called "Edit
with gvim". Chosing this menu option will invoke gvim with the file you have
with gvim". Choosing this menu option will invoke gvim with the file you have
selected. If you select multiple files, you will find two gvim-related menu
options:
"Edit with multiple gvims" -- one gvim for each file in the selection
+1 -1
View File
@@ -1,4 +1,4 @@
*gui_x11.txt* For Vim version 7.2a. Last change: 2007 Dec 09
*gui_x11.txt* For Vim version 7.2. Last change: 2007 Dec 09
VIM REFERENCE MANUAL by Bram Moolenaar
+1 -1
View File
@@ -1,4 +1,4 @@
*hangulin.txt* For Vim version 7.2a. Last change: 2006 Apr 02
*hangulin.txt* For Vim version 7.2. Last change: 2006 Apr 02
VIM REFERENCE MANUAL by Chi-Deok Hwang and Sung-Hyun Nam
+1 -1
View File
@@ -1,4 +1,4 @@
*hebrew.txt* For Vim version 7.2a. Last change: 2007 Jun 14
*hebrew.txt* For Vim version 7.2. Last change: 2007 Jun 14
VIM REFERENCE MANUAL by Ron Aaron (and Avner Lottem)
+2 -2
View File
@@ -1,4 +1,4 @@
*help.txt* For Vim version 7.2a. Last change: 2008 Jun 21
*help.txt* For Vim version 7.2. Last change: 2008 Jul 21
VIM - main help file
k
@@ -126,7 +126,7 @@ Advanced editing ~
|tabpage.txt| commands for using multiple tab pages
|syntax.txt| syntax highlighting
|spell.txt| spell checking
|diff.txt| working with two or three versions of the same file
|diff.txt| working with two to four versions of the same file
|autocmd.txt| automatically executing commands on an event
|filetype.txt| settings done specifically for a type of file
|eval.txt| expression evaluation, conditional commands
+1 -1
View File
@@ -1,4 +1,4 @@
*howto.txt* For Vim version 7.2a. Last change: 2006 Apr 02
*howto.txt* For Vim version 7.2. Last change: 2006 Apr 02
VIM REFERENCE MANUAL by Bram Moolenaar
+1 -1
View File
@@ -1,4 +1,4 @@
*if_cscop.txt* For Vim version 7.2a. Last change: 2005 Mar 29
*if_cscop.txt* For Vim version 7.2. Last change: 2005 Mar 29
VIM REFERENCE MANUAL by Andy Kahn
+3 -3
View File
@@ -1,4 +1,4 @@
*if_mzsch.txt* For Vim version 7.2a. Last change: 2007 May 03
*if_mzsch.txt* For Vim version 7.2. Last change: 2008 Jun 28
VIM REFERENCE MANUAL by Sergey Khorev
@@ -55,7 +55,7 @@ In the case of :mzscheme, the code to execute is in the command-line.
In the case of :mzfile, the code to execute is the contents of the given file.
Each buffer has its own MzScheme namespace. Global namespace is bound to
the `global-namespace' value from the 'vimext' module.
the "global-namespace" value from the 'vimext' module.
MzScheme interface defines exception exn:vim, derived from exn.
It is raised for various Vim errors.
@@ -218,7 +218,7 @@ Buffers *mzscheme-buffer*
{linenr}. If {linenr} is 0, lines will be
inserted at start.
(curr-buff) Get the current buffer. Use procedures
from `vimcmd' module to change it.
from "vimcmd" module to change it.
(buff-count) Get count of total buffers in the editor.
(get-next-buff [buffer]) Get next buffer.
(get-prev-buff [buffer]) Get previous buffer. Return #f when there
+1 -1
View File
@@ -1,4 +1,4 @@
*if_ole.txt* For Vim version 7.2a. Last change: 2007 May 10
*if_ole.txt* For Vim version 7.2. Last change: 2007 May 10
VIM REFERENCE MANUAL by Paul Moore
+1 -1
View File
@@ -1,4 +1,4 @@
*if_perl.txt* For Vim version 7.2a. Last change: 2006 Mar 06
*if_perl.txt* For Vim version 7.2. Last change: 2006 Mar 06
VIM REFERENCE MANUAL by Sven Verdoolaege
+1 -1
View File
@@ -1,4 +1,4 @@
*if_pyth.txt* For Vim version 7.2a. Last change: 2006 Apr 30
*if_pyth.txt* For Vim version 7.2. Last change: 2006 Apr 30
VIM REFERENCE MANUAL by Paul Moore
+1 -1
View File
@@ -1,4 +1,4 @@
*if_ruby.txt* For Vim version 7.2a. Last change: 2006 Apr 30
*if_ruby.txt* For Vim version 7.2. Last change: 2006 Apr 30
VIM REFERENCE MANUAL by Shugo Maeda
+1 -1
View File
@@ -1,4 +1,4 @@
*if_sniff.txt* For Vim version 7.2a. Last change: 2005 Mar 29
*if_sniff.txt* For Vim version 7.2. Last change: 2005 Mar 29
VIM REFERENCE MANUAL
+2 -2
View File
@@ -1,4 +1,4 @@
*if_tcl.txt* For Vim version 7.2a. Last change: 2006 Mar 06
*if_tcl.txt* For Vim version 7.2. Last change: 2008 Jun 26
VIM REFERENCE MANUAL by Ingo Wilken
@@ -407,7 +407,7 @@ Options:
< See |tcl-window-cmds| for the available options.
$buf command [-quiet] {cmd} *tcl-buffer-command*
$buf expr {exr} *tcl-buffer-expr*
$buf expr {expr} *tcl-buffer-expr*
$buf option {opt} [val] *tcl-buffer-option*
These are similar to "::vim::command" etc., except that everything is
done in the context of the buffer represented by $buf, instead of the
+78 -3
View File
@@ -1,4 +1,4 @@
*indent.txt* For Vim version 7.2a. Last change: 2008 Jun 21
*indent.txt* For Vim version 7.2. Last change: 2008 Jul 30
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -506,11 +506,86 @@ to get do loops indented in .f90 files and left alone in Fortran files with
other extensions such as .for.
PHP *ft-php-indent* *php-indent* *php-indenting*
NOTE: PHP files will be indented correctly only if PHP |syntax| is active.
If you are editing a file in Unix 'fileformat' and '\r' characters are present
before new lines, indentation won't proceed correctly ; you have to remove
those useless characters first with a command like: >
:%s /\r$//g
Or, you can simply |:let| the variable PHP_removeCRwhenUnix to 1 and the
script will silently remove them when Vim loads a PHP file (at each|BufRead|).
OPTIONS: ~
PHP indenting can be altered in several ways by modifying the values of some
variables:
*php-comment*
To not enable auto-formating of comments by default (if you want to use your
own 'formatoptions'): >
:let g:PHP_autoformatcomment = 0
Else, 't' will be removed from the 'formatoptions' string and "qrowcb" will be
added, see|fo-table|for more information.
-------------
To add an extra indent to every PHP lines with N being the number of
'shiftwidth' to add: >
:let g:PHP_default_indenting = N
For example, with N = 1, this will give:
>
<?php
if (!isset($History_lst_sel))
if (!isset($History_lst_sel))
if (!isset($History_lst_sel)) {
$History_lst_sel=0;
} else
$foo="bar";
$command_hist = TRUE;
?>
(Notice the extra indent between the PHP container markers and the code)
-------------
To automatically remove '\r' characters when the 'fileformat' is set to Unix: >
:let g:PHP_removeCRwhenUnix = 1
-------------
To indent braces at the same level than the code they contain: >
:let g:PHP_BracesAtCodeLevel = 1
This will give the following result: >
if ($foo)
{
foo();
}
Instead of: >
if ($foo)
{
foo();
}
NOTE: Indenting will be a bit slower if this option is used because some
optimizations won't be available.
-------------
To indent 'case:' and 'default:' statements in switch() blocks: >
:let g:PHP_vintage_case_default_indent = 1
(By default they are indented at the same level than the 'switch()' to avoid
unnecessary indentation)
PYTHON *ft-python-indent*
The amount of indent can be set for the following situations. The examples
given are de the defaults. Note that the variables are set to an expression,
so that you can change the value of 'shiftwidth' later.
given are the defaults. Note that the variables are set to an expression, so
that you can change the value of 'shiftwidth' later.
Indent after an open paren: >
let g:pyindent_open_paren = '&sw * 2'
+1 -1
View File
@@ -1,4 +1,4 @@
*index.txt* For Vim version 7.2a. Last change: 2008 May 04
*index.txt* For Vim version 7.2. Last change: 2008 May 04
VIM REFERENCE MANUAL by Bram Moolenaar
+1 -1
View File
@@ -1,4 +1,4 @@
*insert.txt* For Vim version 7.2a. Last change: 2008 Jun 21
*insert.txt* For Vim version 7.2. Last change: 2008 Jun 21
VIM REFERENCE MANUAL by Bram Moolenaar
+2 -2
View File
@@ -1,4 +1,4 @@
*intro.txt* For Vim version 7.2a. Last change: 2008 Jun 24
*intro.txt* For Vim version 7.2. Last change: 2008 Jun 24
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -208,7 +208,7 @@ Vim would never have become what it is now, without the help of these people!
Bill Foster Athena GUI port
Google Lets me work on Vim one day a week
Loic Grenie xvim (ideas for multi windows version)
Sven Guckes Vim promotor and previous WWW page maintainer
Sven Guckes Vim promoter and previous WWW page maintainer
Darren Hiebert Exuberant ctags
Jason Hildebrand GTK+ 2 port
Bruce Hunsaker improvements for VMS port
+4 -4
View File
@@ -1,4 +1,4 @@
*map.txt* For Vim version 7.2a. Last change: 2008 Jun 21
*map.txt* For Vim version 7.2. Last change: 2008 Aug 09
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -162,8 +162,8 @@ be used in any order. They must appear right after the command, before any
other arguments.
*:map-local* *:map-<buffer>* *E224* *E225*
If the first argument to one of these commands is "<buffer>" it will apply to
mappings locally to the current buffer only. Example: >
If the first argument to one of these commands is "<buffer>" the mapping will
be effective in the current buffer only. Example: >
:map <buffer> ,w /[.,;]<CR>
Then you can map ",w" to something else in another buffer: >
:map <buffer> ,w /[#&!]<CR>
@@ -1300,7 +1300,7 @@ The replacement text for a user defined command is scanned for special escape
sequences, using <...> notation. Escape sequences are replaced with values
from the entered command line, and all other text is copied unchanged. The
resulting string is executed as an Ex command. To avoid the replacement use
<lt> in plade of the initial <. Thus to include "<bang>" literally use
<lt> in place of the initial <. Thus to include "<bang>" literally use
"<lt>bang>".
The valid escape sequences are
+1 -1
View File
@@ -1,4 +1,4 @@
*mbyte.txt* For Vim version 7.2a. Last change: 2008 Jun 21
*mbyte.txt* For Vim version 7.2. Last change: 2008 Jun 21
VIM REFERENCE MANUAL by Bram Moolenaar et al.
+1 -1
View File
@@ -1,4 +1,4 @@
*message.txt* For Vim version 7.2a. Last change: 2007 Aug 19
*message.txt* For Vim version 7.2. Last change: 2007 Aug 19
VIM REFERENCE MANUAL by Bram Moolenaar
+1 -1
View File
@@ -1,4 +1,4 @@
*mlang.txt* For Vim version 7.2a. Last change: 2008 Jun 08
*mlang.txt* For Vim version 7.2. Last change: 2008 Jun 08
VIM REFERENCE MANUAL by Bram Moolenaar
+9 -9
View File
@@ -1,4 +1,4 @@
*motion.txt* For Vim version 7.2a. Last change: 2008 May 02
*motion.txt* For Vim version 7.2. Last change: 2008 Aug 03
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -851,16 +851,16 @@ when using blockwise Visual mode. These commands do not work when no change
was made yet in the current file.
*'<* *`<*
'< `< To the first character of the last selected Visual
area in the current buffer. For block mode it may
also be the last character in the first line (to be
able to define the block). {not in Vi}.
'< `< To the first line or character of the last selected
Visual area in the current buffer. For block mode it
may also be the last character in the first line (to
be able to define the block). {not in Vi}.
*'>* *`>*
'> `> To the last character of the last selected Visual
area in the current buffer. For block mode it may
also be the first character of the last line (to be
able to define the block). Note that 'selection'
'> `> To the last line or character of the last selected
Visual area in the current buffer. For block mode it
may also be the first character of the last line (to
be able to define the block). Note that 'selection'
applies, the position may be just after the Visual
area. {not in Vi}.
+3 -3
View File
@@ -1,4 +1,4 @@
*netbeans.txt* For Vim version 7.2a. Last change: 2008 Jun 22
*netbeans.txt* For Vim version 7.2. Last change: 2008 Jun 28
VIM REFERENCE MANUAL by Gordon Prieur et al.
@@ -69,7 +69,7 @@ Initially just a Java IDE, NetBeans has had C, C++, and Fortran support added
in recent releases.
For more information visit the main NetBeans web site http://www.netbeans.org.
The External Editor is now, unfortunately, declared Obsolte. See
The External Editor is now, unfortunately, declared obsolete. See
http://externaleditor.netbeans.org.
Sun Microsystems, Inc. also ships NetBeans under the name Sun ONE Studio.
@@ -418,7 +418,7 @@ moveAnnoToFront serNum
Not implemented.
netbeansBuffer isNetbeansBuffer
If "isNetbeansBuffer" is "T" then this buffer is ``owned'' by
If "isNetbeansBuffer" is "T" then this buffer is "owned" by
NetBeans.
New in version 2.2.
+49 -38
View File
@@ -1,4 +1,4 @@
*options.txt* For Vim version 7.2a. Last change: 2008 Jun 24
*options.txt* For Vim version 7.2. Last change: 2008 Nov 25
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -1285,7 +1285,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|+file_in_path| feature}
This is a list of directories which will be searched when using the
|:cd| and |:lcd| commands, provided that the directory being searched
for has a relative path (not starting with "/", "./" or "../").
for has a relative path, not an absolute part starting with "/", "./"
or "../", the 'cdpath' option is not used then.
The 'cdpath' option's value has the same form and semantics as
|'path'|. Also see |file-searching|.
The default value is taken from $CDPATH, with a "," prepended to look
@@ -2296,6 +2297,8 @@ A jump table for the options with a short description can be found at |Q_op|.
or "\\", the swap file name will be built from the complete path to
the file with all path separators substituted to percent '%' signs.
This will ensure file name uniqueness in the preserve directory.
On Win32, when a separating comma is following, you must use "//",
since "\\" will include the comma in the file name.
- Spaces after the comma are ignored, other spaces are considered part
of the directory name. To have a space at the start of a directory
name, precede it with a backslash.
@@ -3078,6 +3081,15 @@ A jump table for the options with a short description can be found at |Q_op|.
See 'fuoptions' for how Vim resizes and colors the background when
entering and leaving fullscreen mode.
Note: Setting 'fullscreen' usually changes the size of the Vim
control. However, for technical reasons, 'lines' and 'columns' will
currently only be updated when Vim runs its event loop. As a
consequence, if you set 'fullscreen' and 'lines' or 'columns' in a
Vim script file, you should always set 'fullscreen' after setting
'lines' and 'columns', else 'lines' and 'columns' will be overwritten
with the values 'fullscreen' sets after the script has been executed
and the event loop is ran again.
XXX: Add fuenter/fuleave autocommands? You might want to display
a NERDTree or a Tlist only in fullscreen for example. Then again, this
could probably be in a sizechanged autocommand that triggers if the
@@ -3496,7 +3508,7 @@ A jump table for the options with a short description can be found at |Q_op|.
Exception: Athena will always use grey menu items.
*'go-t'*
't' Include tearoff menu items. Currently only works for Win32,
GTK+, and Motif 1.2 GUI.
GTK+, MacVim, and Motif 1.2 GUI.
*'go-T'*
'T' Include Toolbar. Currently only in Win32, GTK+, Motif, Photon
and Athena GUIs.
@@ -3855,14 +3867,14 @@ A jump table for the options with a short description can be found at |Q_op|.
characters with dead keys.
*'imdisable'* *'imd'* *'nodisable'* *'noimd'*
'imdisable' 'imd' boolean (default off, on for some systems (SGI))
'imdisable' 'imd' boolean (default off, on for SGI and MacVim)
global
{not in Vi}
{only available when compiled with the |+xim|
|+multi_byte_ime| or |global-ime| feature}
When set the Input Method is never used. This is useful to disable
the IM when it doesn't work properly.
Currently this option is on by default for SGI/IRIX machines. This
Currently this option is on by default for SGI/IRIX and MacVim. This
may change in later releases.
*'iminsert'* *'imi'*
@@ -4481,6 +4493,18 @@ A jump table for the options with a short description can be found at |Q_op|.
'termencoding'.
Note: MacVim does not use this option.
*'macmeta'* *'mmta'* *'nomacmeta'* *'nommta'*
'macmeta' boolean (default off)
local to buffer
{only available in MacVim GUI}
Use option (alt) as meta key. When on, option-key presses are not
interpreted, thus enabling bindings to <M-..>. When off, option-key
presses are interpreted by the selected input method and inserted as
text.
Note: Some keys (e.g. <M-F1>, <M-Tab>, <M-Return>, <M-Left>) can be
bound with the Meta flag even when this option is disabled, but this
is not the case for the majority of keys (e.g. <M-a>, <M-`>).
*'magic'* *'nomagic'*
'magic' boolean (default on)
global
@@ -4987,7 +5011,7 @@ A jump table for the options with a short description can be found at |Q_op|.
name, datestamp and permissions. This option contains the extra
information, the nature of which will vary between systems.
The value of this option is usually set when the file is loaded, and
use to set the file type when file is written.
is used to set the operating system file type when file is written.
It can affect the pattern matching of the automatic commands.
|autocmd-osfiletypes|
@@ -5101,9 +5125,10 @@ A jump table for the options with a short description can be found at |Q_op|.
global or local to buffer |global-local|
{not in Vi}
This is a list of directories which will be searched when using the
|gf|, [f, ]f, ^Wf, |:find| and other commands, provided that the file
being searched for has a relative path (not starting with '/'). The
directories in the 'path' option may be relative or absolute.
|gf|, [f, ]f, ^Wf, |:find|, |:sfind|, |:tabfind| and other commands,
provided that the file being searched for has a relative path (not
starting with "/", "./" or "../"). The directories in the 'path'
option may be relative or absolute.
- Use commas to separate directory names: >
:set path=.,/usr/local/include,/usr/include
< - Spaces can also be used to separate directory names (for backwards
@@ -5122,19 +5147,8 @@ A jump table for the options with a short description can be found at |Q_op|.
- Environment variables are expanded |:set_env|.
- When using |netrw.vim| URLs can be used. For example, adding
"http://www.vim.org" will make ":find index.html" work.
- Search upwards and downwards in a directory tree:
1) "*" matches a sequence of characters, e.g.: >
:set path=/usr/include/*
< means all subdirectories in /usr/include (but not /usr/include
itself). >
:set path=/usr/*c
< matches /usr/doc and /usr/src.
2) "**" matches a subtree, up to 100 directories deep. Example: >
:set path=/home/user_x/src/**
< means search in the whole subtree under "/home/usr_x/src".
3) If the path ends with a ';', this path is the startpoint
for upward search.
See |file-searching| for more info and exact syntax.
- Search upwards and downwards in a directory tree using "*", "**" and
";". See |file-searching| for info and syntax.
{not available when compiled without the |+path_extra| feature}
- Careful with '\' characters, type two to get one in the option: >
:set path=.,c:\\include
@@ -5437,7 +5451,7 @@ A jump table for the options with a short description can be found at |Q_op|.
<
*'runtimepath'* *'rtp'* *vimfiles*
'runtimepath' 'rtp' string (default:
Unix: "$HOME/.vim,
Unix, Mac OS X: "$HOME/.vim,
$VIM/vimfiles,
$VIMRUNTIME,
$VIM/vimfiles/after,
@@ -5452,7 +5466,7 @@ A jump table for the options with a short description can be found at |Q_op|.
$VIMRUNTIME,
$VIM/vimfiles/after,
$HOME/vimfiles/after"
Macintosh: "$VIM:vimfiles,
Macintosh (pre-OS X): "$VIM:vimfiles,
$VIMRUNTIME,
$VIM:vimfiles:after"
RISC-OS: "Choices:vimfiles,
@@ -6405,15 +6419,15 @@ A jump table for the options with a short description can be found at |Q_op|.
directory.
F S Full path to the file in the buffer.
t S File name (tail) of file in the buffer.
m F Modified flag, text is " [+]"; " [-]" if 'modifiable' is off.
m F Modified flag, text is "[+]"; "[-]" if 'modifiable' is off.
M F Modified flag, text is ",+" or ",-".
r F Readonly flag, text is " [RO]".
r F Readonly flag, text is "[RO]".
R F Readonly flag, text is ",RO".
h F Help buffer flag, text is " [help]".
h F Help buffer flag, text is "[help]".
H F Help buffer flag, text is ",HLP".
w F Preview window flag, text is " [Preview]".
w F Preview window flag, text is "[Preview]".
W F Preview window flag, text is ",PRV".
y F Type of file in the buffer, e.g., " [vim]". See 'filetype'.
y F Type of file in the buffer, e.g., "[vim]". See 'filetype'.
Y F Type of file in the buffer, e.g., ",VIM". See 'filetype'.
{not available when compiled without |+autocmd| feature}
k S Value of "b:keymap_name" or 'keymap' when |:lmap| mappings are
@@ -6460,14 +6474,9 @@ A jump table for the options with a short description can be found at |Q_op|.
to StatusLineNC for the statusline of non-current windows.
The number N must be between 1 and 9. See |hl-User1..9|
Display of flags are controlled by the following heuristic:
If a flag text starts with comma it is assumed that it wants to
separate itself from anything but preceding plaintext. If it starts
with a space it is assumed that it wants to separate itself from
anything but other flags. That is: A leading comma is removed if the
preceding character stems from plaintext. A leading space is removed
if the preceding character stems from another active flag. This will
make a nice display when flags are used like in the examples below.
When displaying a flag, Vim removes the leading comma, if any, when
that flag comes right after plaintext. This will make a nice display
when flags are used like in the examples below.
When all items in a group becomes an empty string (i.e. flags that are
not set) and a minwid is not set for the group, the whole group will
@@ -7586,7 +7595,9 @@ A jump table for the options with a short description can be found at |Q_op|.
{not available when compiled without the |+wildignore|
feature}
A list of file patterns. A file that matches with one of these
patterns is ignored when completing file or directory names.
patterns is ignored when completing file or directory names, and
influences the result of |expand()|, |glob()| and |globpath()| unless
a flag is passed to disable this.
The pattern is used like with |:autocmd|, see |autocmd-patterns|.
Also see 'suffixes'.
Example: >
+1 -1
View File
@@ -1,4 +1,4 @@
*os_390.txt* For Vim version 7.2a. Last change: 2005 Mar 29
*os_390.txt* For Vim version 7.2. Last change: 2005 Mar 29
VIM REFERENCE MANUAL by Ralf Schandl
+1 -1
View File
@@ -1,4 +1,4 @@
*os_amiga.txt* For Vim version 7.2a. Last change: 2005 Mar 29
*os_amiga.txt* For Vim version 7.2. Last change: 2005 Mar 29
VIM REFERENCE MANUAL by Bram Moolenaar
+1 -1
View File
@@ -1,4 +1,4 @@
*os_beos.txt* For Vim version 7.2a. Last change: 2005 Mar 29
*os_beos.txt* For Vim version 7.2. Last change: 2005 Mar 29
VIM REFERENCE MANUAL by Bram Moolenaar
+1 -1
View File
@@ -1,4 +1,4 @@
*os_dos.txt* For Vim version 7.2a. Last change: 2006 Mar 30
*os_dos.txt* For Vim version 7.2. Last change: 2006 Mar 30
VIM REFERENCE MANUAL by Bram Moolenaar
+1 -1
View File
@@ -1,4 +1,4 @@
*os_mac.txt* For Vim version 7.2a. Last change: 2006 Apr 30
*os_mac.txt* For Vim version 7.2. Last change: 2006 Apr 30
VIM REFERENCE MANUAL by Bram Moolenaar et al.
+1 -1
View File
@@ -1,4 +1,4 @@
*os_mint.txt* For Vim version 7.2a. Last change: 2005 Mar 29
*os_mint.txt* For Vim version 7.2. Last change: 2005 Mar 29
VIM REFERENCE MANUAL by Jens M. Felderhoff
+1 -1
View File
@@ -1,4 +1,4 @@
*os_msdos.txt* For Vim version 7.2a. Last change: 2005 Mar 29
*os_msdos.txt* For Vim version 7.2. Last change: 2005 Mar 29
VIM REFERENCE MANUAL by Bram Moolenaar
+1 -1
View File
@@ -1,4 +1,4 @@
*os_os2.txt* For Vim version 7.2a. Last change: 2007 Apr 22
*os_os2.txt* For Vim version 7.2. Last change: 2007 Apr 22
VIM REFERENCE MANUAL by Paul Slootman
+1 -1
View File
@@ -1,4 +1,4 @@
*os_qnx.txt* For Vim version 7.2a. Last change: 2005 Mar 29
*os_qnx.txt* For Vim version 7.2. Last change: 2005 Mar 29
VIM REFERENCE MANUAL by Julian Kinraid
+33 -33
View File
@@ -1,4 +1,4 @@
*os_risc.txt* For Vim version 7.2a. Last change: 2005 Mar 29
*os_risc.txt* For Vim version 7.2. Last change: 2008 Jun 28
VIM REFERENCE MANUAL by Thomas Leonard
@@ -7,7 +7,7 @@
*riscos* *RISCOS* *RISC-OS*
This file contains the particularities for the RISC OS version of Vim.
The RISC OS port is a completely new port and is not based on the old `archi'
The RISC OS port is a completely new port and is not based on the old "archi"
port.
1. File locations |riscos-locations|
@@ -46,7 +46,7 @@ run the command-line versions of Vim (see |riscos-commandline|).
distribution, but modified slightly to work within the limits of ADFS, plus
some extra files such as the window templates.
User choices are read from `Choices:*' and are saved to `<Choices$Write>.*'.
User choices are read from "Choices:*" and are saved to "<Choices$Write>.*".
If you have the new !Boot structure then these should be set up already. If
not, set Choices$Path to a list of directories to search when looking for
user configuration files. Set Choices$Write to the directory you want files
@@ -58,22 +58,22 @@ sessions).
2. Filename munging
All pathname munging is disabled by default, so Vim should behave like a
normal RISC OS application now. So, if you want to edit `doc/html' then you
actually type `*vi doc/html'.
normal RISC OS application now. So, if you want to edit "doc/html" then you
actually type "*vi doc/html".
The only times munging is done is when:
- Searching included files from C programs, since these are always munged.
See |[I|.
Note: make sure you are in the right directory when you use this
command (i.e. the one with subdirectories 'c' and 'h').
command (i.e. the one with subdirectories "c" and "h").
- Sourcing files using |:so|.
Paths starting `$VIM/' are munged like this:
Paths starting "$VIM/" are munged like this:
$VIM/syntax/help.vim -> Vim:syntax.help
Also, files ending in `.vim' have their extensions removed, and slashes
Also, files ending in ".vim" have their extensions removed, and slashes
replaced with dots.
Some tag files and script files may have to be edited to work under this port.
@@ -82,10 +82,10 @@ Some tag files and script files may have to be edited to work under this port.
*riscos-commandline*
3. Command-line use
To use Vim from the command-line use the `*vi' command (or '*ex' for
To use Vim from the command-line use the "*vi" command (or "*ex" for
|Ex-mode|).
Type `*vi -h' for a list of options.
Type "*vi -h" for a list of options.
Running the command-line version of Vim in a large high-color mode may cause
the scrolling to be very slow. Either change to a mode with fewer colors or
@@ -149,7 +149,7 @@ font via ZapRedraw and any of the Zap fonts via ZapRedraw: >
point is used.
Thanks to John Kortink, Vim can use the ZapRedraw module. Start the font name
with '!' (or '!!' for double height), like this: >
with "!" (or "!!" for double height), like this: >
:set guifont=!!
< Use the system font, but via ZapRedraw. This gives a
@@ -158,13 +158,13 @@ with '!' (or '!!' for double height), like this: >
>
:set guifont=!script
< Uses the named Zap font (a directory in VimFont$Path).
The redraw is the same speed as for '!!', but you get
The redraw is the same speed as for "!!", but you get
a nicer looking font.
Only the "man+" and "script" fonts are supplied
currently, but you can use any of the Zap fonts if
they are in VimFont$Path.
Vim will try to load font files '0', 'B', 'I' and 'IB'
from the named directory. Only '0' (normal style) MUST
Vim will try to load font files "0", "B", "I" and "IB"
from the named directory. Only "0" (normal style) MUST
be present. Link files are not currently supported.
Note that when using ZapRedraw the edit bar is drawn in front of the character
@@ -191,7 +191,7 @@ allow other codes to be used if you want to use Vim from a remote terminal.
Although I do not have an internet connection to my Acorn, I have managed to
run Vim in a FreeTerm window using the loopback connection.
It seems to work pretty well now, using '*vi -T ansi'.
It seems to work pretty well now, using "*vi -T ansi".
==============================================================================
*riscos-temp-files*
@@ -203,7 +203,7 @@ files are in <Wimp$ScrapDir> (i.e. inside !Scrap) and backups are in the
directory you were saving to. Vim will allow you to try and recover the file
when you next try to edit it.
To see a list of swap files, press <F12> and type `*vi -r'.
To see a list of swap files, press <F12> and type "*vi -r".
Vim no longer brings up ATTENTION warnings if you try to edit two files with
the same name in different directories.
@@ -228,8 +228,8 @@ older machines then edit the !RunTxt and GVim files. I don't know what UnixLib
does by default on these machines so I'm playing safe.
It doesn't work at all well without dynamic areas, since it can't change its
memory allocation once running. Hence you should edit `!Vim.GVim' and
`!Vim.!RunTxt' to choose the best size for you. You probably need at least
memory allocation once running. Hence you should edit "!Vim.GVim" and
"!Vim.!RunTxt" to choose the best size for you. You probably need at least
about 1400K.
==============================================================================
@@ -252,7 +252,7 @@ The system has changed from version 5.3. The new sequence of events is:
Some examples may make this clearer:
Kind of file loaded osfiletype filetype ~
C code 'c.hellow' Text (&fff) C
C code "c.hellow" Text (&fff) C
LaTeX document LaTeX (&2a8) TeX
Draw document DrawFile (&aff) (not changed)
@@ -263,7 +263,7 @@ Some examples may make this clearer:
- Bangs (!s) are only replaced if they are followed by a space or end-of-line,
since many pathnames contain them.
- You can prefix the command with '~', which stops any output from being
- You can prefix the command with "~", which stops any output from being
displayed. This also means that you don't have to press <Enter> afterwards,
and stops the screen from being redrawn. {only in the GUI version}
@@ -275,7 +275,7 @@ Downloading everything you need:
- Get the latest source distribution (see www.vim.org)
- Get the runtime environment files (e.g. these help files)
- Get the `extra' archive (contains the RISC OS specific bits)
- Get the "extra" archive (contains the RISC OS specific bits)
- Get the RISC OS binary distribution (if possible)
@@ -289,19 +289,19 @@ Unarchiving:
Recompiling the sources:
- Create c, s, and h directories.
- Put all the header files in 'h'. \
- Put all the C files in `c'. | And lose the extensions
- Put the assembler file (`swis/s') in 's'. /
- Rename all the files in `proto' to `h', like this:
- Put all the header files in "h". \
- Put all the C files in "c". | And lose the extensions
- Put the assembler file ("swis/s") in "s". /
- Rename all the files in "proto" to "h", like this:
raFS::VimSrc.source.proto.file/pro
becomes
raFS::VimSrc.source.h.file_pro
- In the files `h.proto' and `c.termlib', search and replace
- In the files "h.proto" and "c.termlib", search and replace
.pro"
with
_pro.h"
- Create a simple Makefile if desired and do '*make -k'.
Use 'CC = gcc -DRISCOS -DUSE_GUI -O2 -x c' in the Makefile.
- Create a simple Makefile if desired and do "*make -k".
Use "CC = gcc -DRISCOS -DUSE_GUI -O2 -x c" in the Makefile.
- Save the binary as !Vim.Vim in the binary distribution.
@@ -309,15 +309,15 @@ Updating the run-time environment:
- Replace old or missing files inside !Vim.Resources with the
new files.
- Remove files in `doc' not ending in `/txt', except for `tags'.
- Lose the extensions from the files in `doc'.
- Edit the `doc.tags' file. Remove extensions from the second column: >
- Remove files in "doc" not ending in "/txt", except for "tags".
- Lose the extensions from the files in "doc".
- Edit the "doc.tags" file. Remove extensions from the second column: >
:%s/^\(.[^\t]*\t.*\)\.txt\t/\1\t/
- Remove extensions from the syntax files. Split them into two directories
to avoid the 77 entry limit on old ADFS filesystems.
- Edit `Vim:FileType' to match `*.c.*' as well as `*/c' and so on.
- Edit "Vim:FileType" to match "*.c.*" as well as "*/c" and so on.
Add filetype checking too.
- Edit `Vim:Menu' and remove all the keys from the menus: >
- Edit "Vim:Menu" and remove all the keys from the menus: >
:%s/<Tab>[^ \t]*//
<
vim:tw=78:ts=8:ft=help:norl:
+1 -1
View File
@@ -1,4 +1,4 @@
*os_unix.txt* For Vim version 7.2a. Last change: 2005 Mar 29
*os_unix.txt* For Vim version 7.2. Last change: 2005 Mar 29
VIM REFERENCE MANUAL by Bram Moolenaar
+125 -4
View File
@@ -1,4 +1,4 @@
*os_vms.txt* For Vim version 7.2a. Last change: 2006 Nov 18
*os_vms.txt* For Vim version 7.2. Last change: 2008 Aug 19
VIM REFERENCE MANUAL
@@ -312,7 +312,7 @@ features, it is worth to choose non GUI executables.
8. Useful notes *vms-notes*
8.1 backspace/delete
8.1 Backspace/delete
8.2 Filters
8.3 VMS file version numbers
8.4 Directory conversion
@@ -326,8 +326,10 @@ features, it is worth to choose non GUI executables.
8.12 diff-mode
8.13 Allow '$' in C keywords
8.14 VIMTUTOR for beginners
8.15 Slow start in console mode issue
8.16 Common VIM directory - different architectures
8.1 backspace/delete
8.1 Backspace/delete
There are backspace/delete key inconsistencies with VMS.
:fixdel doesn't do the trick, but the solution is: >
@@ -663,12 +665,130 @@ start it with: >
(Thomas.R.Wyant III, Vim 6.1)
8.14 Slow start in console mode issue
As GUI/GTK Vim works equally well in console mode, many administartors
deploy those executables system wide.
Unfortunately, on a remote slow connections GUI/GTK executables behave rather
slow when user wants to run Vim just in the console mode - because of X environment detection timeout.
Luckily, there is a simple solution for that. Administrators need to deploy
both GUI/GTK build and just console build executables, like below: >
|- vim72
|----- doc
|----- syntax
vimrc (system rc files)
gvimrc
gvim.exe (the remaned GUI or GTK built vim.exe)
vim.exe (the console only executable)
Define system symbols like below in for ex in LOGIN.COM or SYLOGIN.COM: >
$ define/nolog VIM RF10:[UTIL.VIM72] ! where you VIM directory is
$ vi*m :== mcr VIM:VIM.EXE
$ gvi*m :== mcr VIM:GVIM.EXE
$ ! or you can try to spawn with
$ gv*im :== spawn/nowait/input=NLA0 mcr VIM:GVIM.EXE -g -GEOMETRY 80x40
Like this, users that do not have X environment and want to use Vim just in
console mode can avoid performance problems.
(Zoltan Arpadffy, Vim 7.2)
8.15 Common VIM directory - different architectures
In a cluster that contains nodes with different architectures like below:
$show cluster
View of Cluster from system ID 11655 node: TOR 18-AUG-2008 11:58:31
+---------------------------------+
¦ SYSTEMS ¦ MEMBERS ¦
+-----------------------+---------¦
¦ NODE ¦ SOFTWARE ¦ STATUS ¦
+--------+--------------+---------¦
¦ TOR ¦ VMS V7.3-2 ¦ MEMBER ¦
¦ TITAN2 ¦ VMS V8.3 ¦ MEMBER ¦
¦ ODIN ¦ VMS V7.3-2 ¦ MEMBER ¦
+---------------------------------+
It is convinient to have a common VIM directory but execute different
executables.
There are more solutions for this problem:
solution 1. all executables in the same directory with different names
This is easily done with the following script that can be added
to the login.com or sylogin.com: >
$ if f$getsyi("NODE_HWTYPE") .eqs. "VAX"
$ then
$ say "VAX platform"
$ vi*m:== mcr vim:VIM.EXE_VAX
$ endif
$ if f$getsyi("NODE_HWTYPE") .eqs. "ALPH"
$ then
$ say "ALPHA platform"
$ vi*m :== mcr vim:VIM.EXE_AXP
$ endif
$ if f$getsyi("ARCH_NAME") .eqs. "IA64"
$ then
$ say "IA64 platform"
$ vi*m :== mcr vim:VIM.EXE_IA64
$ endif
solution 2. different directories: >
$ if f$getsyi("NODE_HWTYPE") .eqs. "VAX"
$ then
$ say "VAX platform"
$ define/nolog VIM RF10:[UTIL.VAX_EXE] ! VAX executables
$ endif
$ if f$getsyi("NODE_HWTYPE") .eqs. "ALPH"
$ then
$ say "ALPHA platform"
$ define/nolog VIM RF10:[UTIL.AXP_EXE] ! AXP executables
$ endif
$ if f$getsyi("ARCH_NAME") .eqs. "IA64"
$ then
$ say "IA64 platform"
$ define/nolog VIM RF10:[UTIL.IA64_EXE] ! IA64 executables
$ endif
$! VIMRUNTIME must be defined in order to find runtime files
$ define/nolog VIMRUNTIME RF10:[UTIL.VIM72]
A good examle for this approach is the [GNU]gnu_tools.com script from GNU_TOOLS.ZIP
package downloadable from http://www.polarhome.com/vim/
(Zoltan Arpadffy, Vim 7.2)
==============================================================================
9. VMS related changes *vms-changes*
Version 7
Recent changes
- The following plugins are included into VMS runtime:
genutils 2.4, multiselect 2.2, multvals 3.1, selectbuf 4.3,
bufexplorer 7.1.7, taglist 4.5
- minor changes in vimrc (just in VMS runtime)
- make_vms.mms - HUGE model is the default
- [TESTDIR]make_vms.mms include as many tests possible
- modify test30 and test54 for VMS
- enable FLOAT feature in VMS port
- os_vms.txt updated
Version 7.2 (2008 Aug 9)
- VCF files write corrected
- CTAGS 5.7 included
- corrected make_vms.mms (on VAX gave syntax error)
Version 7.1 (2007 Jun 15)
- create TAGS file from menu
Version 7 (2006 May 8)
- Improved low level char input (affects just console mode)
- Fixed plugin bug
- CTAGS 5.6 included
Version 6.4 (2005 Oct 15)
- GTKLIB and Vim build on IA64
@@ -806,6 +926,7 @@ Version 4.5 (1996 Dec 16)
OpenVMS documentation and executables are maintained by:
Zoltan Arpadffy <arpadffy@polarhome.com>
OpenVMS Vim page: http://www.polarhome.com/vim/
This document uses parts and remarks from earlier authors and contributors
of OS_VMS.TXT:
+1 -1
View File
@@ -1,4 +1,4 @@
*os_win32.txt* For Vim version 7.2a. Last change: 2008 May 02
*os_win32.txt* For Vim version 7.2. Last change: 2008 May 02
VIM REFERENCE MANUAL by George Reilly
+2 -2
View File
@@ -1,4 +1,4 @@
*pattern.txt* For Vim version 7.2a. Last change: 2008 Jun 21
*pattern.txt* For Vim version 7.2. Last change: 2008 Jul 16
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -1122,7 +1122,7 @@ in the file. {Vi cannot handle <Nul> characters in the file at all}
*CR-used-for-NL*
When 'fileformat' is "mac", <NL> characters in the file are stored as <CR>
characters internally. In the display they are shown as "^M". Otherwise this
characters internally. In the text they are shown as "^J". Otherwise this
works similar to the usage of <NL> for a <Nul>.
When working with expression evaluation, a <NL> character in the pattern
+4 -1
View File
@@ -1,4 +1,4 @@
*pi_getscript.txt* For Vim version 7.2a. Last change: 2008 Jan 07
*pi_getscript.txt* For Vim version 7.2. Last change: 2008 Jun 29
>
GETSCRIPT REFERENCE MANUAL by Charles E. Campbell, Jr.
<
@@ -335,6 +335,9 @@ The AutoInstall process will:
==============================================================================
9. GetLatestVimScripts History *getscript-history* *glvs-hist* {{{1
v31 Jun 29, 2008 : * (Bill McCarthy) fixed having hls enabled with getscript
v30 Jun 13, 2008 : * GLVS now checks for existence of fnameescape() and will
issue an error message if its not supported
v29 Jan 07, 2008 : * Bram M pointed out that cpo is a global option and that
getscriptPlugin.vim was setting it but not restoring it.
v28 Jan 02, 2008 : * improved shell quoting character handling, cygwin
+1 -1
View File
@@ -1,4 +1,4 @@
*pi_gzip.txt* For Vim version 7.2a. Last change: 2002 Oct 29
*pi_gzip.txt* For Vim version 7.2. Last change: 2002 Oct 29
VIM REFERENCE MANUAL by Bram Moolenaar

Some files were not shown because too many files have changed in this diff Show More