guxingganyue 发表于 2013-8-22 08:52:04

vim7.4发布了,新增和修改了很多功能。。。。。

如题。好多年了,今年从7.3升级到7.4了。




release note
==============================================================================
VERSION 7.4                                        *version-7.4* *version7.4*

This section is about improvements made between version 7.3 and 7.4.

This release has hundreds of bug fixes and there are a few new features.The
most notable new features are:

- New regexp engine                        |new-regexp-engine|
- A more pythonic Python interface        |better-python-interface|


New regexp engine                                        *new-regexp-engine*
-----------------

What is now called the "old" regexp engine uses a backtracking algorithm.It
tries to match the pattern with the text in one way, and when that fails it
goes back and tries another way.This works fine for simple patterns, but
complex patterns can be very slow on longer text.

The new engine uses a state machine.It tries all possible alternatives at
the current character and stores the possible states of the pattern.This is
a bit slower for simple patterns, but much faster for complex patterns and
long text.

Most notably, syntax highlighting for Javascript and XML files with long lines
is now working fine.Previously Vim could get stuck.

More information here: |two-engines|


Better Python interface                                *better-python-interface*
-----------------------

Added |python-bindeval| function. Unlike |python-eval| this one returns
|python-Dictionary|, |python-List| and |python-Function| objects for
dictionaries lists and functions respectively in place of their Python
built-in equivalents (or None if we are talking about function references).
   For simple types this function returns Python built-in types and not only
Python `str()` like |python-eval| does. On Python 3 it will return `bytes()`
objects in place of `str()` ones avoiding possibility of UnicodeDecodeError.
   Interface of new objects mimics standard Python `dict()` and `list()`
interfaces to some extent. Extent will be improved in the future.

Added special |python-vars| objects also available for |python-buffer| and
|python-window|. They ease access to VimL variables from Python.

Now you no longer need to alter `sys.path` to import your module: special
hooks are responsible for importing from {rtp}/python2, {rtp}/python3 and
{rtp}/pythonx directories (for Python 2, Python 3 and both respectively).
See |python-special-path|.

Added possibility to work with |tabpage|s through |python-tabpage| object.

Added automatic conversion of Vim errors and exceptions to Python
exceptions.

Changed the behavior of the |python-buffers| object: it now uses buffer numbers
as keys in place of the index of the buffer in the internal buffer list.
This should not break anything as the only way to get this index was
iterating over |python-buffers|.

Added |:pydo| and |:py3do| commands.

Added the |pyeval()| and |py3eval()| functions.

Now in all places which previously accepted `str()` objects, `str()` and
`unicode()` (Python 2) or `bytes()` and `str()` (Python 3) are accepted.

|python-window| has gained `.col` and `.row` attributes that are currently
the only way to get internal window positions.

Added or fixed support for `dir()` in Vim Python objects.


Changed                                                        *changed-7.4*
-------

Old Python versions (鈮?.2) are no longer supported. Building with them did
not work anyway.

Options:
        Added ability to automatically save the selection into the system
        clipboard when using non-GUI version of Vim (autoselectplus in
        'clipboard'). Also added ability to use the system clipboard as
        default register (previously only primary selection could be used).
        (Ivan Krasilnikov, Christian Brabandt, Bram Moolenaar)

        Added a special 'shiftwidth' value that makes 'sw' follow 'tabstop'.
        As indenting via 'indentexpr' became tricky |shiftwidth()| function
        was added. Also added equivalent special value to 'softtabstop'
        option.(Christian Brabandt, so8res)

        Show absolute number in number column when 'relativenumber' option is
        on.Now there are four combinations with 'number' and
        'relativenumber'.(Christian Brabandt)

Commands:
        |:diffoff| now saves the local values of some settings and restores
        them in place of blindly resetting them to the defaults. (Christian
        Brabandt)

Other:
        Lua interface now also uses userdata binded to Vim structures. (Taro
        Muraoka, Luis Carvalho)

        glob() and autocommand patterns used to work with the undocumented
        "\{n,m\}" item from a regexp."\{" is now used for a literal "{", as
        this is normal in shell file patterns.Now used "\\\{n,m\}" to get
        "\{n,m}" in the regexp pattern.

Added                                                        *added-7.4*
-----

Various syntax, indent and other plugins were added.

Added support for |Lists| and |Dictionaries| in |viminfo|. (Christian
Brabandt)

Functions:
        Bitwise functions: |and()|, |or()|, |invert()|, |xor()|.

        Added |luaeval()| function. (Taro Muraoka, Luis Carvalho)

        Added |sha256()| function. (Tyru, Hirohito Higashi)

        Added |wildmenumode()| function. (Christian Brabandt)

        Debugging functions: |screenattr()|, |screenchar()|, |screencol()|,
        |screenrow()|. (Simon Ruderich, Bram Moolenaar)

        Added ability to use |Dictionary-function|s for |sort()|ing, via
        optional third argument. (Nikolay Pavlov)

        Added special |expand()| argument that expands to the current line
        number.

        Made it possible to force |char2nr()| always give unicode codepoints
        regardless of current encoding. (Yasuhiro Matsumoto)

        Made it possible for functions generating file list generate |List|
        and not NL-separated string. (e.g. |glob()|, |expand()|) (Christian
        Brabandt)

        Functions that obtain variables from the specific window, tabpage or
        buffer scope dictionary can now return specified default value in
        place of empty string in case variable is not found. (|gettabvar()|,
        |getwinvar()|, |getbufvar()|) (Shougo Matsushita, Hirohito Higashi)

Autocommands:
        Added |InsertCharPre| event launched before inserting character.
        (Jakson A. Aquino)

        Added |CompleteDone| event launched after finishing completion in
        insert mode. (idea by Florian Klein)

        Added |QuitPre| event launched when commands that can either close Vim
        or only some window(s) are launched.

        Added |TextChanged| and |TextChangedI| events launched when text is
        changed.

Commands:
        |:syntime| command useful for debugging.

        Made it possible to remove all signs from the current buffer using
        |:sign-unplace|. (Christian Brabandt)

        Added |:language| autocompletion. (Dominique Pelle)

        Added more |:command-complete| completion types: |:behave| suboptions,
        color schemes, compilers, |:cscope| suboptions, files from 'path',
        |:history| suboptions, locale names, |:syntime| suboptions, user
        names. (Dominique Pelle)

        Added |:map-nowait| creating mapping which when having lhs that is the
        prefix of another mapping鈥檚 lhs will not allow Vim to wait for user to
        type more characters to resolve ambiguity, forcing Vim to take the
        shorter alternative: one with <nowait>.

Options:
        Made it possible to ignore case when completing: 'wildignorecase'.

        Added ability to delete comment leader when using |J| by `j` flag in
        'formatoptions' (|fo-table|). (Lech Lorens)

        Added ability to control indentation inside namespaces: |cino-N|.
        (Konstantin Lepa)

        Added ability to control alignment inside `if` condition separately
        from alignment inside function arguments: |cino-k|. (Lech Lorens)

Other:
        Improved support for cmd.exe. (Ben Fritz, Bram Moolenaar)

        Added |v:windowid| variable containing current window number in GUI
        Vim. (Christian J. Robinson, Lech Lorens)

        Added rxvt-unicode and SGR mouse support. (Yiding Jia, Hayaki Saito)


All changes in 7.4                                                *fixed-7.4*
------------------

Patch 7.3.001
Problem:    When editing "src/main.c" and 'path' set to "./proto",
          ":find e<C-D" shows ./proto/eval.pro instead of eval.pro.
Solution:   Check for path separator when comparing names. (Nazri Ramliy)
Files:          src/misc1.c

Patch 7.3.002
Problem:    ":find" completion doesn't work when halfway an environment
          variable. (Dominique Pelle)
Solution:   Only use in-path completion when expanding file names. (Nazri
          Ramliy)
Files:          src/ex_docmd.c

Patch 7.3.003
Problem:    Crash with specific BufWritePost autocmd. (Peter Odding)
Solution:   Don't free the quickfix title twice. (Lech Lorens)
Files:          src/quickfix.c

Patch 7.3.004
Problem:    Crash when using very long regexp. (Peter Odding)
Solution:   Reset reg_toolong. (Carlo Teubner)
Files:          src/regexp.c

Patch 7.3.005
Problem:    Crash when using undotree(). (Christian Brabandt)
Solution:   Increase the list reference count.Add a test for undotree()
          (Lech Lorens)
Files:          src/eval.c, src/testdir/Makefile, src/testdir/test61.in

Patch 7.3.006
Problem:    Can't build some multi-byte code with C89.
Solution:   Move code to after declarations. (Joachim Schmitz)
Files:          src/mbyte.c, src/spell.c

Patch 7.3.007
Problem:    Python code defines global "buffer".Re-implements a grow-array.
Solution:   Use a grow-array instead of coding the same functionality.Handle
          out-of-memory situation properly.
Files:          src/if_py_both.h

Patch 7.3.008
Problem:    'cursorbind' is kept in places where 'scrollbind' is reset.
Solution:   Reset 'cursorbind'.
Files:          src/buffer.c, src/diff.c, src/ex_cmds.c, src/ex_cmds2.c,
          src/ex_docmd.c, src/ex_getln.c, src/if_cscope.c, src/macros.h,
          src/quickfix.c, src/search.c, src/tag.c, src/window.c

Patch 7.3.009
Problem:    Win32: Crash on Windows when using a bad argument for strftime().
          (Christian Brabandt)
Solution:   Use the bad_param_handler(). (Mike Williams)
Files:          src/os_win32.c

Patch 7.3.010
Problem:    Mac GUI: Missing break statements.
Solution:   Add the break statements. (Dominique Pelle)
Files:          src/gui_mac.c

Patch 7.3.011
Problem:    X11 clipboard doesn't work in Athena/Motif GUI.First selection
          after a shell command doesn't work.
Solution:   When using the GUI use XtLastTimestampProcessed() instead of
          changing a property.(partly by Toni Ronkko)
          When executing a shell command disown the selection.
Files:          src/ui.c, src/os_unix.c

Patch 7.3.012
Problem:    Problems building with MingW.
Solution:   Adjust the MingW makefiles. (Jon Maken)
Files:          src/Make_ming.mak, src/GvimExt/Make_ming.mak

Patch 7.3.013
Problem:    Dynamic loading with Ruby doesn't work for 1.9.2.
Solution:   Handle rb_str2cstr differently.Also support dynamic loading on
          Unix. (Jon Maken)
Files:          src/if_ruby.c

Patch 7.3.014
Problem:    Ending a line in a backslash inside an ":append" or ":insert"
          command in Ex mode doesn't work properly. (Ray Frush)
Solution:   Halve the number of backslashes, only insert a NUL after an odd
          number of backslashes.
Files:          src/ex_getln.c

Patch 7.3.015
Problem:    Test is using error message that no longer exists.
Solution:   Change E106 to E121. (Dominique Pelle)
Files:          src/testdir/test49.vim

Patch 7.3.016
Problem:    Netbeans doesn't work under Athena.
Solution:   Support Athena, just like Motif. (Xavier de Gaye)
Files:          runtime/doc/netbeans.txt, src/gui.c, src/main.c, src/netbeans.c

Patch 7.3.017
Problem:    smatch reports errors.
Solution:   Fix the reported errors. (Dominique Pelle)
Files:          src/spell.c, src/syntax.c

Patch 7.3.018 (after 7.3.012)
Problem:    Missing argument to windres in MingW makefiles.
Solution:   Add the argument that was wrapped in the patch. (Jon Maken)
Files:          src/Make_ming.mak, src/GvimExt/Make_ming.mak

Patch 7.3.019
Problem:    ":nbstart" can fail silently.
Solution:   Give an error when netbeans is not supported by the GUI. (Xavier
          de Gaye)
Files:          src/netbeans.c

Patch 7.3.020
Problem:    Cursor position wrong when joining multiple lines and
          'formatoptions' contains "a". (Moshe Kamensky)
Solution:   Adjust cursor position for skipped indent. (Carlo Teubner)
Files:          src/ops.c, src/testdir/test68.in, src/testdir/test68.ok

Patch 7.3.021
Problem:    Conflict for defining Boolean in Mac header files.
Solution:   Define NO_X11_INCLUDES. (Rainer Muller)
Files:          src/os_macosx.m, src/vim.h

Patch 7.3.022
Problem:    When opening a new window the 'spellcapcheck' option is cleared.
Solution:   Copy the correct option value. (Christian Brabandt)
Files:          src/option.c

Patch 7.3.023
Problem:    External program may hang when it tries to write to the tty.
Solution:   Don't close the slave tty until after the child exits. (Nikola
          Knezevic)
Files:          src/os_unix.c

Patch 7.3.024
Problem:    Named signs do not use a negative number as intended.
Solution:   Fix the numbering of named signs. (Xavier de Gaye)
Files:          src/ex_cmds.c

Patch 7.3.025
Problem:    ":mksession" does not square brackets escape file name properly.
Solution:   Improve escaping of file names. (partly by Peter Odding)
Files:          src/ex_docmd.c

Patch 7.3.026
Problem:    CTRL-] in a help file doesn't always work. (Tony Mechelynck)
Solution:   Don't escape special characters. (Carlo Teubner)
Files:          src/normal.c

Patch 7.3.027
Problem:    Opening a file on a network share is very slow.
Solution:   When fixing file name case append "\*" to directory, server and
          network share names. (David Anderson, John Beckett)
Files:          src/os_win32.c

Patch 7.3.028 (after 7.3.024)
Problem:    Signs don't show up. (Charles Campbell)
Solution:   Don't use negative numbers.Also assign a number to signs that
          have a name of all digits to avoid using a sign number twice.
Files:          src/ex_cmds.c

Patch 7.3.029
Problem:    ":sort n" sorts lines without a number as number zero. (Beeyawned)
Solution:   Make lines without a number sort before lines with a number.Also
          fix sorting negative numbers.
Files:          src/ex_cmds.c, src/testdir/test57.in, src/testdir/test57.ok

Patch 7.3.030
Problem:    Cannot store Dict and List in viminfo file.
Solution:   Add support for this. (Christian Brabandt)
Files:          runtime/doc/options.txt, src/eval.c, src/testdir/Make_amiga.mak,
          src/testdir/Make_dos.mak, src/testdir/Make_ming.mak,
          src/testdir/Make_os2.mak, src/testdir/Make_vms.mms,
          src/testdir/Makefile, src/testdir/main.aap, src/testdir/test74.in,
          src/testdir/test74.ok

Patch 7.3.031
Problem:    Can't pass the X window ID to another application.
Solution:   Add v:windowid. (Christian J. Robinson, Lech Lorens)
Files:          runtime/doc/eval.txt, src/eval.c, src/gui.c, src/vim.h,
          src/os_unix.c

Patch 7.3.032
Problem:    maparg() doesn't return the flags, such as <buffer>, <script>,
          <silent>.These are needed to save and restore a mapping.
Solution:   Improve maparg(). (also by Christian Brabandt)
Files:          runtime/doc/eval.txt, src/eval.c, src/getchar.c, src/gui_w48.c,
          src/message.c, src/proto/getchar.pro, src/proto/message.pro,
          src/structs.h src/testdir/test75.in, src/testdir/test75.ok

Patch 7.3.033 (after 7.3.032)
Problem:    Can't build without FEAT_LOCALMAP.
Solution:   Add an #ifdef. (John Marriott)
Files:          src/getchar.c

Patch 7.3.034
Problem:    Win32: may be loading .dll from the wrong directory.
Solution:   Go to the Vim executable directory when opening a library.
Files:          src/gui_w32.c, src/if_lua.c, src/if_mzsch.c, src/if_perl.xs,
          src/if_python.c, src/if_python3.c, src/if_ruby.c, src/mbyte.c,
          src/os_mswin.c, src/os_win32.c, src/proto/os_win32.pro

Patch 7.3.035 (after 7.3.034)
Problem:    Stray semicolon after if statement. (Hari G)
Solution:   Remove the semicolon.
Files:          src/os_win32.c

Patch 7.3.036
Problem:    Win32 GUI: When building without menus, the font for dialogs and
          tab page headers also changes.
Solution:   Define USE_SYSMENU_FONT always. (Harig G.)
Files:          src/gui_w32.c

Patch 7.3.037
Problem:    Compiler warnings for loss of data. (Mike Williams)
Solution:   Add type casts.
Files:          src/if_py_both.h, src/getchar.c, src/os_win32.c

Patch 7.3.038
Problem:    v:windowid isn't set on MS-Windows.
Solution:   Set it to the window handle. (Chris Sutcliffe)
Files:          runtime/doc/eval.txt, src/gui_w32.c

Patch 7.3.039
Problem:    Crash when using skk.vim plugin.
Solution:   Get length of expression evaluation result only after checking for
          NULL.(Noriaki Yagi, Dominique Pelle)
Files:          src/ex_getln.c

Patch 7.3.040
Problem:    Comparing strings while ignoring case goes beyond end of the
          string when there are illegal bytes. (Dominique Pelle)
Solution:   Explicitly check for illegal bytes.
Files:          src/mbyte.c

Patch 7.3.041
Problem:    Compiler warning for accessing mediumVersion. (Tony Mechelynck)
Solution:   Use the pointer instead of the array itself. (Dominique Pelle)
Files:          src/version.c

Patch 7.3.042
Problem:    No spell highlighting when re-using an empty buffer.
Solution:   Clear the spell checking info only when clearing the options for a
          buffer. (James Vega)
Files:          src/buffer.c

Patch 7.3.043
Problem:    Can't load Ruby dynamically on Unix.
Solution:   Adjust the configure script. (James Vega)
Files:          src/Makefile, src/config.h.in, src/configure.in,
          src/auto/configure, src/if_ruby.c

Patch 7.3.044
Problem:    The preview window opened by the popup menu is larger than
          specified with 'previewheight'. (Benjamin Haskell)
Solution:   Use 'previewheight' if it's set and smaller.
Files:          src/popupmnu.c

Patch 7.3.045
Problem:    Compiler warning for uninitialized variable.
Solution:   Initialize the variable always.
Files:          src/getchar.c

Patch 7.3.046 (after 7.3.043)
Problem:    Can't build Ruby on MS-Windows.
Solution:   Add #ifdef, don't use WIN3264 before including vim.h.
Files:          src/if_ruby.c

Patch 7.3.047 (after 7.3.032)
Problem:    Missing makefile updates for test 75.
Solution:   Update the makefiles.
Files:          src/testdir/Make_amiga.mak, src/testdir/Make_dos.mak,
          src/testdir/Makefile, src/testdir/Make_ming.mak,
          src/testdir/Make_os2.mak, src/testdir/Make_vms.mms

Patch 7.3.048
Problem:    ":earlier 1f" doesn't work after loading undo file.
Solution:   Set b_u_save_nr_cur when loading an undo file. (Christian
          Brabandt)
          Fix only showing time in ":undolist"
Files:          src/undo.c

Patch 7.3.049
Problem:    PLT has rebranded their Scheme to Racket.
Solution:   Add support for Racket 5.x. (Sergey Khorev)
Files:          src/Make_cyg.mak, src/Make_ming.mak, src/Make_mvc.mak,
          src/auto/configure, src/configure.in, src/if_mzsch.c

Patch 7.3.050
Problem:    The link script is clumsy.
Solution:   Use the --as-needed linker option if available. (Kirill A.
          Shutemov)
Files:          src/Makefile, src/auto/configure, src/config.mk.in,
          src/configure.in, src/link.sh

Patch 7.3.051
Problem:    Crash when $PATH is empty.
Solution:   Check for vim_getenv() returning NULL. (Yasuhiro Matsumoto)
Files:          src/ex_getln.c, src/os_win32.c
...
...
...
...
...
...
...
...
...
Patch 7.3.1306
Problem:    When redrawing the screen during startup the intro message may be
          cleared.
Solution:   Redisplay the intro message when appropriate.
Files:          src/screen.c, src/version.c, src/proto/version.pro

Patch 7.3.1307
Problem:    MS-Windows build instructions are outdated.
Solution:   Adjust for building on Windows 7.Drop Windows 95/98/ME support.
Files:          Makefile, nsis/gvim.nsi

Patch 7.3.1308
Problem:    Typos in MS-Windows build settings and README.
Solution:   Minor changes to MS-Windows files.
Files:          src/msvc2008.bat, src/msvc2010.bat, src/VisVim/README_VisVim.txt

Patch 7.3.1309
Problem:    When a script defines a function the flag to wait for the user to
          hit enter is reset.
Solution:   Restore the flag. (Yasuhiro Matsumoto)Except when the user was
          typing the function.
Files:          src/eval.c

Patch 7.3.1310
Problem:    Typos in nsis script. Can use better compression.
Solution:   Fix typos.Use lzma compression. (Ken Takata)
Files:          nsis/gvim.nsi

Patch 7.3.1311
Problem:    Compiler warnings on Cygwin.
Solution:   Add type casts. Add windows include files. (Ken Takata)
Files:          src/mbyte.c, src/ui.c

Patch 7.3.1312 (after 7.3.1287)
Problem:    Not giving correct error messages for SystemExit().
Solution:   Move E858 into an else. (Ken Takata)
Files:          src/if_py_both.h

Patch 7.3.1313
Problem:    :py and :py3 don't work when compiled with Cygwin or MingW with 64
          bit.
Solution:   Add -DMS_WIN64 to the build command. (Ken Takata)
Files:          src/Make_cyg.mak, src/Make_ming.mak

Patch 7.3.1314
Problem:    Test 87 fails with Python 3.3.
Solution:   Filter the error messages. (Taro Muraoka)
Files:          src/testdir/test87.in

Patch 7.4a.001
Problem:    Script to update syntax menu is outdated.
Solution:   Add the missing items.
Files:          runtime/makemenu.vim

Patch 7.4a.002
Problem:    Valgrind errors in test 89. (Simon Ruderich)
Solution:   Allocate one more byte. (Dominique Pelle)
Files:          src/misc2.c

Patch 7.4a.003
Problem:    Copyright year is outdated.
Solution:   Only use the first year.
Files:          src/vim.rc, src/vim16.rc

Patch 7.4a.004
Problem:    MSVC 2012 Update 3 is not recognized.
Solution:   Add the version number. (Raymond Ko)
Files:          src/Make_mvc.mak

Patch 7.4a.005
Problem:    Scroll binding causes unexpected scroll.
Solution:   Store the topline after updating scroll binding.Add a test.
          (Lech Lorens)
Files:          src/testdir/test98.in, src/testdir/test98a.in,
          src/testdir/test98.ok, src/option.c, src/testdir/Make_amiga.mak,
          src/testdir/Make_dos.mak, src/testdir/Make_ming.mak,
          src/testdir/Make_os2.mak, src/testdir/Make_vms.mms,
          src/testdir/Makefile

Patch 7.4a.006
Problem:    Failure in po file check goes unnoticed.
Solution:   Fail "make test" if the po file check fails.
Files:          src/Makefile

Patch 7.4a.007
Problem:    After "g$" with 'virtualedit' set, "k" moves to a different
          column.(Dimitar Dimitrov)
Solution:   Set w_curswant. (Christian Brabandt)
Files:          src/normal.c

Patch 7.4a.008
Problem:    Python 3 doesn't handle multibyte characters properly when
          'encoding' is not utf-8.
Solution:   Use PyUnicode_Decode() instead of PyUnicode_FromString(). (Ken
          Takata)
Files:          src/if_python3.c

Patch 7.4a.009
Problem:    Compiler warnings for function prototypes.
Solution:   Add "void".Move list_features() prototype. (Ken Takata)
Files:          src/gui_w48.c, src/if_py_both.h, src/version.c

Patch 7.4a.010
Problem:    Test 86 and 87 fail when building with Python or Python 3 and
          using a static library.
Solution:   Add configure check to add -fPIE compiler flag.
Files:          src/configure.in, src/auto/configure

Patch 7.4a.011
Problem:    Configure check for Python 3 config name isn't right.
Solution:   Always include vi_cv_var_python3_version. (Tim Harder)
Files:          src/configure.in, src/auto/configure

Patch 7.4a.012
Problem:    "make test" fails when using a shadow directory.
Solution:   Create links for files in src/po. (James McCoy)
Files:          src/Makefile

Patch 7.4a.013
Problem:    Setting/resetting 'lbr' in the main help file changes alignment
          after a Tab. (Dimitar Dimitrov)
Solution:   Also use the code for conceal mode where n_extra is computed for
          'lbr'.
Files:          src/screen.c, src/testdir/test88.in, src/testdir/test88.ok

Patch 7.4a.014
Problem:    Test 86 and 89 have a problem with using a shadow dir.
Solution:   Adjust for the different directory structure. (James McCoy)
Files:          src/testdir/test89.in, src/testdir/test86.in, src/Makefile

Patch 7.4a.015
Problem:    No Japanese man pages.
Solution:   Add Japanese translations of man pages. (Ken Takata, Yukihiro
          Nakadaira, et al.)
Files:          Filelist, src/Makefile, runtime/doc/evim-ja.UTF-8.1,
          runtime/doc/vim-ja.UTF-8.1, runtime/doc/vimdiff-ja.UTF-8.1,
          runtime/doc/vimtutor-ja.UTF-8.1, runtime/doc/xxd-ja.UTF-8.1

Patch 7.4a.016 (after 7.4a.014)
Problem:    Features enabled in Makefile.
Solution:   Undo accidental changes.
Files:          src/Makefile

Patch 7.4a.017
Problem:    When 'foldmethod' is "indent", using ">>" on a line just above a
          fold makes the cursor line folded. (Evan Laforge)
Solution:   Call foldOpenCursor(). (Christian Brabandt)
Files:          src/ops.c

Patch 7.4a.018
Problem:    Compiler warning for code unreachable. (Charles Campbell)
Solution:   Use "while" instead of endless loop.Change break to continue.
Files:          src/regexp_nfa.c, src/ui.c

Patch 7.4a.019
Problem:    Invalid closing parenthesis in test 62. Command truncated at
          double quote.
Solution:   Remove the parenthesis. Change double quote to ''. (ZyX)
Files:          src/testdir/test62.in, src/testdir/test62.ok

Patch 7.4a.020
Problem:    Superfluous mb_ptr_adv().
Solution:   Remove the call. (Dominique Pelle)
Files:          src/regexp_nfa.c

Patch 7.4a.021
Problem:    Using feedkeys() doesn't always work.
Solution:   Omit feedkeys(). (Ken Takata)
Files:          src/testdir/test98a.in

Patch 7.4a.022
Problem:    Using "d2g$" does not delete the last character. (ZyX)
Solution:   Set the "inclusive" flag properly.
Files:          src/normal.c

Patch 7.4a.023 (after 7.4a.019)
Problem:    Still another superfluous parenthesis. (ZyX)
Solution:   Remove it.
Files:          src/testdir/test62.in

Patch 7.4a.024
Problem:    X11 GUI: Checking icon height twice.
Solution:   Check height and width. (Dominique Pelle)
Files:          src/gui_x11.c

Patch 7.4a.025
Problem:    Get the press-Enter prompt even after using :redraw.
Solution:   Clear need_wait_return when executing :redraw.
Files:          src/ex_docmd.c

Patch 7.4a.026
Problem:    ":diffoff" does not remove folds. (Ramel)
Solution:   Do not restore 'foldenable' when 'foldmethod' is "manual".
Files:          src/diff.c

Patch 7.4a.027
Problem:    When Python adds lines to another buffer the cursor position is
          wrong, it might be below the last line causing ml_get errors.
          (Vlad Irnov)
Solution:   Temporarily change the current window, so that marks are corrected
          properly.
Files:          src/if_py_both.h, src/window.c, src/proto/buffer.pro

Patch 7.4a.028
Problem:    Crash when spell checking in new buffer.
Solution:   Set the b_p_key field.(Mike Williams)
Files:          src/spell.c, src/testdir/test58.in

Patch 7.4a.029
Problem:    Can't build with MzScheme on Ubuntu 13.04.
Solution:   Add configure check for the "ffi" library.
Files:          src/configure.in, src/auto/configure

Patch 7.4a.030 (after 7.4.027)
Problem:    Missing find_win_for_buf(). (toothpik)
Solution:   Add missing changes.
Files:          src/buffer.c

Patch 7.4a.031
Problem:    Compiler warnings. (Charles Campbell)
Solution:   Initialize variables even when not needed.
Files:          src/regexp_nfa.c, src/search.c

Patch 7.4a.032
Problem:    New regexp engine: Does not match shorter alternative. (Ingo
          Karkat)
Solution:   Do not drop a new state when the PIM info is different.
Files:          src/regexp_nfa.c

Patch 7.4a.033
Problem:    Test 98 always passes.
Solution:   Include test98a.in in test98.in, execute the crucial command in
          one line. (Yukihiro Nakadaira)
Files:          src/testdir/test98.in, src/testdir/test98a.in

Patch 7.4a.034
Problem:    The tabline may flicker when opening a new tab after 7.3.759 on
          Win32.
Solution:   Move call to TabCtrl_SetCurSel(). (Ken Takata)
Files:          src/gui_w48.c

Patch 7.4a.035
Problem:    Fix in patch 7.4a.032 is not tested.
Solution:   Add test.
Files:          src/testdir/test64.in, src/testdir/test64.ok

Patch 7.4a.036
Problem:    "\p" in a regexp does not match double-width characters.
          (Yukihiro Nakadaira)
Solution:   Don't count display cells, use vim_isprintc().
Files:          src/regexp.c, src/regexp_nfa.c, src/testdir/test64.in,
          src/testdir/test64.ok, src/testdir/test95.in,
          src/testdir/test95.ok

Patch 7.4a.037
Problem:    Win32: When mouse is hidden and in the toolbar, moving it won't
          make it appear. (Sami Salonen)
Solution:   Add tabline_wndproc() and toolbar_wndproc(). (Ken Takata)
Files:          src/gui_w32.c, src/gui_w48.c

Patch 7.4a.038
Problem:    When using MSVC 2012 there are various issues, including GUI size
          computations.
Solution:   Use SM_CXPADDEDBORDER. (Mike Williams)
Files:          src/gui_w32.c, src/gui_w48.c, src/os_win32.h

Patch 7.4a.039
Problem:    New regexp engine doesn't match pattern. (Ingo Karkat)
Solution:   When adding a state also check for different PIM if the list of
          states has any state with a PIM.
Files:          src/regexp_nfa.c, src/testdir/test64.in, src/testdir/test64.ok

Patch 7.4a.040
Problem:    Win32: using uninitialized variable.
Solution:   (Yukihiro Nakadaira)
Files:          src/os_win32.c

Patch 7.4a.041
Problem:    When using ":new ++ff=unix" and "dos" is first in 'fileformats'
          then 'ff' is set to "dos" instead of "unix". (Ingo Karkat)
Solution:   Create set_file_options() and invoke it from do_ecmd().
Files:          src/fileio.c, src/proto/fileio.pro, src/ex_cmds.c,
          src/testdir/test91.in, src/testdir/test91.ok

Patch 7.4a.042
Problem:    Crash when BufUnload autocommands close all buffers. (Andrew
          Pimlott)
Solution:   Set curwin->w_buffer to curbuf to avoid NULL.
Files:          src/window.c, src/testdir/test8.in, src/testdir/test8.ok

Patch 7.4a.043
Problem:    More ml_get errors when adding or deleting lines from Python.
          (Vlad Irnov)
Solution:   Switch to a window with the buffer when possible.
Files:          src/if_py_both.h

Patch 7.4a.044
Problem:    Test 96 sometimes fails.
Solution:   Clear window from b_wininfo in win_free().(Suggestion by
          Yukihiro Nakadaira)
Files:          src/window.c

Patch 7.4a.045
Problem:    Configure does not always find the right library for Lua.Missing
          support for LuaJit.
Solution:   Improve the configure detection of Lua. (Hiroshi Shirosaki)
Files:          src/Makefile, src/configure.in, src/auto/configure

Patch 7.4a.046
Problem:    Can't build without mbyte feature.
Solution:   Add #ifdefs.
Files:          src/ex_cmds.c

Patch 7.4a.047
Problem:    Some comments are not so nice.
Solution:   Change the comments.
Files:          src/ex_docmd.c, src/message.c, src/ops.c, src/option.c

Patch 7.4b.001
Problem:    Win32: dialog may extend off-screen.
Solution:   Reduce the size, use correct borders. (Andrei Olsen)
Files:          src/gui_w32.c

Patch 7.4b.002
Problem:    Crash searching for \%(\%(\|\d\|-\|\.\)*\|\*\). (Marcin
          Szamotulski)Also for \(\)*.
Solution:   Do add a state for opening parenthesis, so that we can check if it
          was added before at the same position.
Files:          src/regexp_nfa.c, src/testdir/test64.in, src/testdir/test64.ok

Patch 7.4b.003
Problem:    Regexp code is not nicely aligned.
Solution:   Adjust white space. (Ken Takata)
Files:          src/regexp_nfa.c

Patch 7.4b.004
Problem:    Regexp crash on pattern "@\%[\w\-]*". (Axel Kielhorn)
Solution:   Add \%(\) around \%[] internally.
Files:          src/regexp_nfa.c, src/testdir/test64.in, src/testdir/test64.ok

Patch 7.4b.005
Problem:    Finding %s in shellpipe and shellredir does not ignore %%s.
Solution:   Skip over %%. (lcd 47)
Files:          src/ex_cmds.c

Patch 7.4b.006 (after 7.3.1295)
Problem:    Using \{n,m} in an autocommand pattern no longer works.
          Specifically, mutt temp files are not recognized. (Gary Johnson)
Solution:   Make \\\{n,m\} work.
Files:          runtime/doc/autocmd.txt, src/fileio.c

Patch 7.4b.007
Problem:    On 32 bit MS-Windows :perldo does not work.
Solution:   Make sure time_t uses 32 bits. (Ken Takata)
Files:          src/if_perl.xs, src/vim.h

Patch 7.4b.008
Problem:    'autochdir' causes setbufvar() to change the current directory.
          (Ben Fritz)
Solution:   When disabling autocommands also reset 'acd' temporarily.
          (Christian Brabandt)
Files:          src/fileio.c

Patch 7.4b.009
Problem:    When setting the Visual area manually and 'selection' is
          exclusive, a yank includes one character too much. (Ingo Karkat)
Solution:   Default the Visual operation to "v". (Christian Brabandt)
Files:          src/mark.c

Patch 7.4b.010
Problem:    Win32: Tcl library load does not use standard mechanism.
Solution:   Call vimLoadLib() instead of LoadLibraryEx(). (Ken Takata)
Files:          src/if_perl.xs, src/if_tcl.c

Patch 7.4b.011
Problem:    ":he \%(\)" does not work. (ZyX)
Solution:   Add an exception to the list.
Files:          src/ex_cmds.c

Patch 7.4b.012
Problem:    Output from a shell command is truncated at a NUL. (lcd 47)
Solution:   Change every NUL into an SOH.
Files:          src/misc1.c

Patch 7.4b.013
Problem:    Install dir for JP man pages is wrong.
Solution:   Remove ".UTF-8" from the directory name. (Ken Takata)
Files:          src/Makefile

Patch 7.4b.014 (after 7.4b.012)
Problem:    Stupid mistake.
Solution:   Changle "len" to "i".
Files:          src/misc1.c

Patch 7.4b.015 (after 7.4b.008)
Problem:    Can't compile without the 'acd' feature.
Solution:   Add #ifdefs. (Kazunobu Kuriyama)
Files:          src/fileio.c

Patch 7.4b.016
Problem:    Ruby detection fails on Fedora 19.
Solution:   Use one way to get the Ruby version. (Michael Henry)
Files:          src/configure.in, src/auto/configure

Patch 7.4b.017
Problem:    ":he \^x" gives a strange error message. (glts)
Solution:   Do not translate \^x to \_CTRL-x.
Files:          src/ex_cmds.c

Patch 7.4b.018 (after 7.4b.001)
Problem:    Win32: Dialog can still be too big.
Solution:   Move the check for height further down. (Andrei Olsen)
Files:          src/gui_w32.c

Patch 7.4b.019 (after 7.4a.034)
Problem:    Tabline is not updated properly when closing a tab on Win32.
Solution:   Only reduce flickering when adding a tab. (Ken Takata)
Files:          src/gui_w48.c

Patch 7.4b.020
Problem:    "g~ap" changes first character of next paragraph. (Manuel Ortega)
Solution:   Avoid subtracting (0 - 1) from todo.(Mike Williams)
Files:          src/ops.c, src/testdir/test82.in, src/testdir/test82.ok

Patch 7.4b.021
Problem:    Pressing "u" after an external command results in multiple
          press-enter messages. (glts)
Solution:   Don't call hit_return_msg() when we have K_IGNORE. (Christian
          Brabandt)
Files:          src/message.c

Patch 7.4b.022
Problem:    Not waiting for a character when the tick count overflows.
Solution:   Subtract the unsigned numbers and cast to int. (Ken Takata)
Files:          src/os_win32.c


vim:tw=78:ts=8:ft=help:norl:


软件:

lncwangfeilnc 发表于 2013-8-22 09:03:32

{:lol:}沙发

zenith1032 发表于 2013-8-22 10:07:56

能不能喊他加个图形界面,鼠标什么的之类啊??好不习惯啊。

yuzr 发表于 2013-8-22 10:16:14

据说是最好用的编辑工具,但是这个界面刚上手用的时候还是很不习惯。

peterqiu 发表于 2013-8-22 10:20:19

一直在用gvim,是挺好用的,适应过程是比较痛苦的.

bigfatfish 发表于 2013-8-22 10:38:08

zenith1032 发表于 2013-8-22 10:07 static/image/common/back.gif
能不能喊他加个图形界面,鼠标什么的之类啊??好不习惯啊。

一直有啊,gvim
终端下也是支持鼠标的

qlb1234 发表于 2013-8-22 10:39:14

本帖最后由 qlb1234 于 2013-8-22 10:43 编辑

zenith1032 发表于 2013-8-22 10:07 static/image/common/back.gif
能不能喊他加个图形界面,鼠标什么的之类啊??好不习惯啊。

gvim本身就有圖形界面,還支持鼠標,而且是很智能那種。

追加
唉,中国連www.vim.org這種網站都要阻擋,甚麼心態?節操何在?

honami520 发表于 2013-8-22 10:56:34

已经成为了阻碍技术进步的一个团体了

guxingganyue 发表于 2013-8-22 11:00:40

qlb1234 发表于 2013-8-22 10:39 static/image/common/back.gif
gvim本身就有圖形界面,還支持鼠標,而且是很智能那種。

追加


就是,这个网站为啥都不让看呢?

以前打开过,但这几天一直打不开了

bigfatfish 发表于 2013-8-22 11:19:36

guxingganyue 发表于 2013-8-22 11:00 static/image/common/back.gif
就是,这个网站为啥都不让看呢?

以前打开过,但这几天一直打不开了

可能因为最新版本-1.0那个版本号

python因为2.x.x碰上了那个magic number也被封过下载页。至今还留着一个中国百姓专用链接 http://python.org/getit/

guxingganyue 发表于 2013-8-22 13:18:39

bigfatfish 发表于 2013-8-22 11:19 static/image/common/back.gif
可能因为最新版本-1.0那个版本号

python因为2.x.x碰上了那个magic number也被封过下载页。至今还留着一 ...

这个和vim网站有关系?

anning 发表于 2013-8-22 16:08:37

刚装上7.3的版本没几天,竟然升级了!

tyoo 发表于 2013-8-22 16:13:31

zenith1032 发表于 2013-8-22 10:07 static/image/common/back.gif
能不能喊他加个图形界面,鼠标什么的之类啊??好不习惯啊。

那还有意义吗? 不过早就支持鼠标了。在windows和ubuntu间切换使用时有许多蛋疼的地方,特别是路径编码格式这些。

jeffwei 发表于 2013-8-22 16:24:45

只用过vi,有空试试

vs9841 发表于 2013-9-4 18:38:54

vim确实好用,如果它能支持python角本,将会更牛X,听有些大神说vim的最大设计不足之处,就是专门设计了自己的独立角本语言,导致要使用好它,还得好好研究这个只能用于vim的独立角本系统。学习曲线上增加了时间和难度,但是一旦熟悉了它,据说会爱不释手。

freefei 发表于 2016-10-11 21:39:51

开始学习使用vim了
页: [1]
查看完整版本: vim7.4发布了,新增和修改了很多功能。。。。。