搜索
bottom↓
回复: 15

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

[复制链接]

出0入0汤圆

发表于 2013-8-22 08:52:04 | 显示全部楼层 |阅读模式
如题。好多年了,今年从7.3升级到7.4了。




release note

  1. ==============================================================================
  2. VERSION 7.4                                        *version-7.4* *version7.4*

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

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

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


  8. New regexp engine                                        *new-regexp-engine*
  9. -----------------

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

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

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

  20. More information here: |two-engines|


  21. Better Python interface                                *better-python-interface*
  22. -----------------------

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

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

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

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

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

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

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

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

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

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

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


  52. Changed                                                        *changed-7.4*
  53. -------

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

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

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

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

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

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

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

  80. Added                                                        *added-7.4*
  81. -----

  82. Various syntax, indent and other plugins were added.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  114. Commands:
  115.         |:syntime| command useful for debugging.

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

  118.         Added |:language| autocompletion. (Dominique Pelle)

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

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

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

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

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

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

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

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

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


  140. All changes in 7.4                                                *fixed-7.4*
  141. ------------------

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  385. Patch 7.3.051
  386. Problem:    Crash when $PATH is empty.
  387. Solution:   Check for vim_getenv() returning NULL. (Yasuhiro Matsumoto)
  388. Files:            src/ex_getln.c, src/os_win32.c
  389. ...
  390. ...
  391. ...
  392. ...
  393. ...
  394. ...
  395. ...
  396. ...
  397. ...
  398. Patch 7.3.1306
  399. Problem:    When redrawing the screen during startup the intro message may be
  400.             cleared.
  401. Solution:   Redisplay the intro message when appropriate.
  402. Files:            src/screen.c, src/version.c, src/proto/version.pro

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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


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


复制代码
软件:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

阿莫论坛20周年了!感谢大家的支持与爱护!!

你熬了10碗粥,别人一桶水倒进去,淘走90碗,剩下10碗给你,你看似没亏,其实你那10碗已经没有之前的裹腹了,人家的一桶水换90碗,继续卖。说白了,通货膨胀就是,你的钱是挣来的,他的钱是印来的,掺和在一起,你的钱就贬值了。

出0入0汤圆

发表于 2013-8-22 09:03:32 | 显示全部楼层
沙发

出0入0汤圆

发表于 2013-8-22 10:07:56 | 显示全部楼层
能不能喊他加个图形界面,鼠标什么的之类啊??好不习惯啊。

出50入0汤圆

发表于 2013-8-22 10:16:14 | 显示全部楼层
据说是最好用的编辑工具,但是这个界面刚上手用的时候还是很不习惯。

出0入0汤圆

发表于 2013-8-22 10:20:19 | 显示全部楼层
一直在用gvim,是挺好用的,适应过程是比较痛苦的.

出0入0汤圆

发表于 2013-8-22 10:38:08 | 显示全部楼层
zenith1032 发表于 2013-8-22 10:07
能不能喊他加个图形界面,鼠标什么的之类啊??好不习惯啊。

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

出0入0汤圆

发表于 2013-8-22 10:39:14 | 显示全部楼层
本帖最后由 qlb1234 于 2013-8-22 10:43 编辑
zenith1032 发表于 2013-8-22 10:07
能不能喊他加个图形界面,鼠标什么的之类啊??好不习惯啊。


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


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

出0入90汤圆

发表于 2013-8-22 10:56:34 | 显示全部楼层
已经成为了阻碍技术进步的一个团体了

出0入0汤圆

 楼主| 发表于 2013-8-22 11:00:40 | 显示全部楼层
qlb1234 发表于 2013-8-22 10:39
gvim本身就有圖形界面,還支持鼠標,而且是很智能那種。


追加

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

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

出0入0汤圆

发表于 2013-8-22 11:19:36 | 显示全部楼层
guxingganyue 发表于 2013-8-22 11:00
就是,这个网站为啥都不让看呢?

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

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

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

出0入0汤圆

 楼主| 发表于 2013-8-22 13:18:39 | 显示全部楼层
bigfatfish 发表于 2013-8-22 11:19
可能因为最新版本-1.0那个版本号

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

这个和vim网站有关系?

出5入8汤圆

发表于 2013-8-22 16:08:37 | 显示全部楼层
刚装上7.3的版本没几天,竟然升级了!

出0入0汤圆

发表于 2013-8-22 16:13:31 | 显示全部楼层
zenith1032 发表于 2013-8-22 10:07
能不能喊他加个图形界面,鼠标什么的之类啊??好不习惯啊。

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

出0入0汤圆

发表于 2013-8-22 16:24:45 来自手机 | 显示全部楼层
只用过vi,有空试试

出0入0汤圆

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

出0入0汤圆

发表于 2016-10-11 21:39:51 | 显示全部楼层
开始学习使用vim了
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片。注意:要连续压缩2次才能满足要求!!】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-10-2 23:14

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表