Mercurial > vim
view Filelist @ 33581:403d57b06231 v9.0.2035
patch 9.0.2035: [security] use-after-free with wildmenu
Commit: https://github.com/vim/vim/commit/8f4fb007e4d472b09ff6bed9ffa485e0c3093699
Author: Yee Cheng Chin <ychin.git@gmail.com>
Date: Tue Oct 17 10:06:56 2023 +0200
patch 9.0.2035: [security] use-after-free with wildmenu
Problem: [security] use-after-free with wildmenu
Solution: properly clean up the wildmenu when exiting
Fix wildchar/wildmenu/pum memory corruption with special wildchar's
Currently, using `wildchar=<Esc>` or `wildchar=<C-\>` can lead to a
memory corruption if using wildmenu+pum, or wrong states if only using
wildmenu. This is due to the code only using one single place inside the
cmdline process loop to perform wild menu clean up (by checking
`end_wildmenu`) but there are other odd situations where the loop could
have exited and we need a post-loop clean up just to be sure. If the
clean up was not done you would have a stale popup menu referring to
invalid memory, or if not using popup menu, incorrect status line (if
`laststatus=0`).
For example, if you hit `<Esc>` two times when it's wildchar, there's a
hard-coded behavior to exit command-line as a failsafe for user, and if
you hit `<C-\><C-\><C-N>` it will also exit command-line, but the clean
up code would not have hit because of specialized `<C-\>` handling.
Fix Ctrl-E / Ctrl-Y to not cancel/accept wildmenu if they are also
used for 'wildchar'/'wildcharm'. Currently they don't behave properly,
and also have potentially memory unsafe behavior as the logic is
currently not accounting for this situation and try to do both.
(Previous patch that addressed this: #11677)
Also, correctly document Escape key behavior (double-hit it to escape)
in wildchar docs as it's previously undocumented.
In addition, block known invalid chars to be set in `wildchar` option,
such as Ctrl-C and `<CR>`. This is just to make it clear to the user
they shouldn't be set, and is not required for this bug fix.
closes: #13361
Signed-off-by: Christian Brabandt <cb@256bit.org>
Co-authored-by: Yee Cheng Chin <ychin.git@gmail.com>
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Tue, 17 Oct 2023 10:15:08 +0200 |
parents | 7df9cb603272 |
children | 93b27fc986fb |
line wrap: on
line source
# List of distributed Vim files. # Used by Makefile. # source files for all source archives SRC_ALL = \ .cirrus.yml \ .coveralls.yml \ .gitattributes \ .github/CODEOWNERS \ .github/ISSUE_TEMPLATE/bug_report.yml \ .github/ISSUE_TEMPLATE/feature_request.md \ .github/workflows/ci.yml \ .github/workflows/codeql-analysis.yml \ .github/workflows/coverity.yml \ .github/dependabot.yml \ .gitignore \ .hgignore \ .appveyor.yml \ .codecov.yml \ ci/appveyor.bat \ ci/config.mk*.sed \ ci/if_ver*.vim \ ci/setup-xvfb.sh \ src/Make_all.mak \ src/README.md \ src/alloc.c \ src/alloc.h \ src/arabic.c \ src/arglist.c \ src/ascii.h \ src/autocmd.c \ src/beval.c \ src/beval.h \ src/blob.c \ src/blowfish.c \ src/buffer.c \ src/bufwrite.c \ src/change.c \ src/channel.c \ src/charset.c \ src/cindent.c \ src/clientserver.c \ src/clipboard.c \ src/cmdexpand.c \ src/cmdhist.c \ src/crypt.c \ src/crypt_zip.c \ src/debugger.c \ src/dict.c \ src/diff.c \ src/digraph.c \ src/drawline.c \ src/drawscreen.c \ src/edit.c \ src/errors.h \ src/eval.c \ src/evalbuffer.c \ src/evalfunc.c \ src/evalvars.c \ src/evalwindow.c \ src/ex_cmdidxs.h \ src/ex_cmds.c \ src/ex_cmds.h \ src/ex_cmds2.c \ src/ex_docmd.c \ src/ex_eval.c \ src/ex_getln.c \ src/feature.h \ src/fileio.c \ src/filepath.c \ src/findfile.c \ src/float.c \ src/fold.c \ src/getchar.c \ src/globals.h \ src/gui.c \ src/gui.h \ src/gui_beval.c \ src/hardcopy.c \ src/hashtab.c \ src/help.c \ src/highlight.c \ src/indent.c \ src/insexpand.c \ src/job.c \ src/json.c \ src/json_test.c \ src/keymap.h \ src/kword_test.c \ src/list.c \ src/locale.c \ src/logfile.c \ src/macros.h \ src/main.c \ src/map.c \ src/mark.c \ src/match.c \ src/mbyte.c \ src/memfile.c \ src/memfile_test.c \ src/memline.c \ src/menu.c \ src/message.c \ src/message_test.c \ src/misc1.c \ src/misc2.c \ src/mouse.c \ src/move.c \ src/mysign \ src/nbdebug.c \ src/nbdebug.h \ src/netbeans.c \ src/normal.c \ src/nv_cmdidxs.h \ src/nv_cmds.h \ src/ops.c \ src/option.c \ src/option.h \ src/optiondefs.h \ src/optionstr.c \ src/popupmenu.c \ src/popupwin.c \ src/profiler.c \ src/quickfix.c \ src/regexp.c \ src/regexp_bt.c \ src/regexp_nfa.c \ src/regexp.h \ src/register.c \ src/scriptfile.c \ src/screen.c \ src/search.c \ src/session.c \ src/sha256.c \ src/sign.c \ src/sound.c \ src/spell.c \ src/spell.h \ src/spellfile.c \ src/spellsuggest.c \ src/strings.c \ src/structs.h \ src/syntax.c \ src/tag.c \ src/term.c \ src/terminal.c \ src/termdefs.h \ src/termlib.c \ src/testing.c \ src/textformat.c \ src/textobject.c \ src/textprop.c \ src/time.c \ src/typval.c \ src/ui.c \ src/undo.c \ src/usercmd.c \ src/userfunc.c \ src/version.c \ src/version.h \ src/vim.h \ src/vim9.h \ src/vim9class.c \ src/vim9cmds.c \ src/vim9compile.c \ src/vim9execute.c \ src/vim9expr.c \ src/vim9instr.c \ src/vim9script.c \ src/vim9type.c \ src/viminfo.c \ src/winclip.c \ src/window.c \ src/xxd/xxd.c \ src/testdir/gen_opt_test.vim \ src/testdir/README.txt \ src/testdir/Make_all.mak \ src/testdir/*.in \ src/testdir/*.py \ src/testdir/keycode_check.vim \ src/testdir/keycode_check.json \ src/testdir/lsan-suppress.txt \ src/testdir/sautest/autoload/*.vim \ src/testdir/testluaplugin/lua/testluaplugin/*.lua \ src/testdir/check.vim \ src/testdir/gui_init.vim \ src/testdir/gui_preinit.vim \ src/testdir/mouse.vim \ src/testdir/runtest.vim \ src/testdir/screendump.vim \ src/testdir/setup.vim \ src/testdir/setup_gui.vim \ src/testdir/shared.vim \ src/testdir/vim9.vim \ src/testdir/script_util.vim \ src/testdir/summarize.vim \ src/testdir/term_util.vim \ src/testdir/view_util.vim \ src/testdir/test[0-9]*.ok \ src/testdir/test77a.ok \ src/testdir/test77a.com \ src/testdir/test_*.vim \ src/testdir/python2/*.py \ src/testdir/python3/*.py \ src/testdir/pythonx/*.py \ src/testdir/pythonx/topmodule/__init__.py \ src/testdir/pythonx/topmodule/submodule/__init__.py \ src/testdir/pythonx/topmodule/submodule/subsubmodule/__init__.py \ src/testdir/pythonx/topmodule/submodule/subsubmodule/subsubsubmodule.py \ src/testdir/python_after/*.py \ src/testdir/python_before/*.py \ src/testdir/pyxfile/*.py \ src/testdir/dumps/*.dump \ src/testdir/dumps/*.vim \ src/testdir/samples/*.txt \ src/testdir/samples/test000 \ src/testdir/color_ramp.vim \ src/testdir/silent.wav \ src/testdir/popupbounce.vim \ src/testdir/crash/* \ src/proto.h \ src/protodef.h \ src/proto/alloc.pro \ src/proto/arabic.pro \ src/proto/arglist.pro \ src/proto/autocmd.pro \ src/proto/beval.pro \ src/proto/blob.pro \ src/proto/blowfish.pro \ src/proto/buffer.pro \ src/proto/bufwrite.pro \ src/proto/change.pro \ src/proto/channel.pro \ src/proto/charset.pro \ src/proto/cindent.pro \ src/proto/clientserver.pro \ src/proto/clipboard.pro \ src/proto/cmdexpand.pro \ src/proto/cmdhist.pro \ src/proto/crypt.pro \ src/proto/crypt_zip.pro \ src/proto/debugger.pro \ src/proto/dict.pro \ src/proto/diff.pro \ src/proto/digraph.pro \ src/proto/drawline.pro \ src/proto/drawscreen.pro \ src/proto/edit.pro \ src/proto/eval.pro \ src/proto/evalbuffer.pro \ src/proto/evalfunc.pro \ src/proto/evalvars.pro \ src/proto/evalwindow.pro \ src/proto/ex_cmds.pro \ src/proto/ex_cmds2.pro \ src/proto/ex_docmd.pro \ src/proto/ex_eval.pro \ src/proto/ex_getln.pro \ src/proto/fileio.pro \ src/proto/filepath.pro \ src/proto/findfile.pro \ src/proto/float.pro \ src/proto/fold.pro \ src/proto/getchar.pro \ src/proto/gui.pro \ src/proto/gui_beval.pro \ src/proto/hardcopy.pro \ src/proto/hashtab.pro \ src/proto/help.pro \ src/proto/highlight.pro \ src/proto/indent.pro \ src/proto/insexpand.pro \ src/proto/job.pro \ src/proto/json.pro \ src/proto/list.pro \ src/proto/locale.pro \ src/proto/logfile.pro \ src/proto/main.pro \ src/proto/map.pro \ src/proto/mark.pro \ src/proto/match.pro \ src/proto/mbyte.pro \ src/proto/memfile.pro \ src/proto/memline.pro \ src/proto/menu.pro \ src/proto/message.pro \ src/proto/misc1.pro \ src/proto/misc2.pro \ src/proto/mouse.pro \ src/proto/move.pro \ src/proto/netbeans.pro \ src/proto/normal.pro \ src/proto/ops.pro \ src/proto/option.pro \ src/proto/optionstr.pro \ src/proto/popupmenu.pro \ src/proto/popupwin.pro \ src/proto/profiler.pro \ src/proto/quickfix.pro \ src/proto/regexp.pro \ src/proto/register.pro \ src/proto/scriptfile.pro \ src/proto/screen.pro \ src/proto/search.pro \ src/proto/session.pro \ src/proto/sha256.pro \ src/proto/sign.pro \ src/proto/sound.pro \ src/proto/spell.pro \ src/proto/spellfile.pro \ src/proto/spellsuggest.pro \ src/proto/strings.pro \ src/proto/syntax.pro \ src/proto/tag.pro \ src/proto/term.pro \ src/proto/terminal.pro \ src/proto/termlib.pro \ src/proto/testing.pro \ src/proto/textformat.pro \ src/proto/textobject.pro \ src/proto/textprop.pro \ src/proto/time.pro \ src/proto/typval.pro \ src/proto/ui.pro \ src/proto/undo.pro \ src/proto/usercmd.pro \ src/proto/userfunc.pro \ src/proto/version.pro \ src/proto/vim9class.pro \ src/proto/vim9cmds.pro \ src/proto/vim9compile.pro \ src/proto/vim9execute.pro \ src/proto/vim9expr.pro \ src/proto/vim9instr.pro \ src/proto/vim9script.pro \ src/proto/vim9type.pro \ src/proto/viminfo.pro \ src/proto/winclip.pro \ src/proto/window.pro \ src/libvterm/.bzrignore \ src/libvterm/.gitignore \ src/libvterm/LICENSE \ src/libvterm/Makefile \ src/libvterm/README \ src/libvterm/CONTRIBUTING \ src/libvterm/tbl2inc_c.pl \ src/libvterm/vterm.pc.in \ src/libvterm/doc/URLs \ src/libvterm/doc/seqs.txt \ src/libvterm/find-wide-chars.pl \ src/libvterm/include/vterm.h \ src/libvterm/include/vterm_keycodes.h \ src/libvterm/src/encoding.c \ src/libvterm/src/encoding/DECdrawing.inc \ src/libvterm/src/encoding/DECdrawing.tbl \ src/libvterm/src/encoding/uk.inc \ src/libvterm/src/encoding/uk.tbl \ src/libvterm/src/fullwidth.inc \ src/libvterm/src/keyboard.c \ src/libvterm/src/mouse.c \ src/libvterm/src/parser.c \ src/libvterm/src/pen.c \ src/libvterm/src/rect.h \ src/libvterm/src/screen.c \ src/libvterm/src/state.c \ src/libvterm/src/unicode.c \ src/libvterm/src/utf8.h \ src/libvterm/src/vterm.c \ src/libvterm/src/vterm_internal.h \ src/libvterm/t/02parser.test \ src/libvterm/t/03encoding_utf8.test \ src/libvterm/t/10state_putglyph.test \ src/libvterm/t/11state_movecursor.test \ src/libvterm/t/12state_scroll.test \ src/libvterm/t/13state_edit.test \ src/libvterm/t/14state_encoding.test \ src/libvterm/t/15state_mode.test \ src/libvterm/t/16state_resize.test \ src/libvterm/t/17state_mouse.test \ src/libvterm/t/18state_termprops.test \ src/libvterm/t/20state_wrapping.test \ src/libvterm/t/21state_tabstops.test \ src/libvterm/t/22state_save.test \ src/libvterm/t/25state_input.test \ src/libvterm/t/26state_query.test \ src/libvterm/t/27state_reset.test \ src/libvterm/t/28state_dbl_wh.test \ src/libvterm/t/29state_fallback.test \ src/libvterm/t/30state_pen.test \ src/libvterm/t/31state_rep.test \ src/libvterm/t/32state_flow.test \ src/libvterm/t/40state_selection.test \ src/libvterm/t/60screen_ascii.test \ src/libvterm/t/61screen_unicode.test \ src/libvterm/t/62screen_damage.test \ src/libvterm/t/63screen_resize.test \ src/libvterm/t/64screen_pen.test \ src/libvterm/t/65screen_protect.test \ src/libvterm/t/66screen_extent.test \ src/libvterm/t/67screen_dbl_wh.test \ src/libvterm/t/68screen_termprops.test \ src/libvterm/t/69screen_reflow.test \ src/libvterm/t/90vttest_01-movement-1.test \ src/libvterm/t/90vttest_01-movement-2.test \ src/libvterm/t/90vttest_01-movement-3.test \ src/libvterm/t/90vttest_01-movement-4.test \ src/libvterm/t/90vttest_02-screen-1.test \ src/libvterm/t/90vttest_02-screen-2.test \ src/libvterm/t/90vttest_02-screen-3.test \ src/libvterm/t/90vttest_02-screen-4.test \ src/libvterm/t/92lp1640917.test \ src/libvterm/t/harness.c \ src/libvterm/t/run-test.pl \ src/xdiff/COPYING \ src/xdiff/README.txt \ src/xdiff/xdiff.h \ src/xdiff/xdiffi.c \ src/xdiff/xdiffi.h \ src/xdiff/xemit.c \ src/xdiff/xemit.h \ src/xdiff/xhistogram.c \ src/xdiff/xinclude.h \ src/xdiff/xmacros.h \ src/xdiff/xpatience.c \ src/xdiff/xprepare.c \ src/xdiff/xprepare.h \ src/xdiff/xtypes.h \ src/xdiff/xutils.c \ src/xdiff/xutils.h \ # source files for Unix only SRC_UNIX = \ Makefile \ Filelist \ README_src.txt \ configure \ pixmaps/*.xpm \ pixmaps/*.png \ pixmaps/gen-inline-pixbufs.sh \ pixmaps/stock_icons.h \ src/INSTALL \ src/INSTALLx.txt \ src/Makefile \ src/auto/configure \ src/config.h.in \ src/config.mk.dist \ src/config.mk.in \ src/configure \ src/configure.ac \ src/create_cmdidxs.vim \ src/create_nvcmdidxs.c \ src/create_nvcmdidxs.vim \ src/gui_gtk.c \ src/gui_gtk_f.c \ src/gui_gtk_f.h \ src/gui_gtk_x11.c \ src/gui_gtk_res.xml \ src/gui_motif.c \ src/gui_xmdlg.c \ src/gui_xmebw.c \ src/gui_xmebw.h \ src/gui_xmebwp.h \ src/gui_x11.c \ src/gui_x11_pm.h \ src/if_xcmdsrv.c \ src/link.sh \ src/installman.sh \ src/installml.sh \ src/install-sh \ src/os_unix.c \ src/os_unix.h \ src/os_unixx.h \ src/osdef.sh \ src/osdef1.h.in \ src/osdef2.h.in \ src/pathdef.sh \ src/proto/gui_gtk.pro \ src/proto/gui_gtk_x11.pro \ src/proto/gui_gtk_gresources.pro \ src/proto/gui_motif.pro \ src/proto/gui_xmdlg.pro \ src/proto/gui_x11.pro \ src/proto/if_xcmdsrv.pro \ src/proto/os_unix.pro \ src/proto/pty.pro \ src/pty.c \ src/testdir/Makefile \ src/testdir/unix.vim \ src/toolcheck \ src/vim_icon.xbm \ src/vim_mask.xbm \ src/vimtutor \ src/gvimtutor \ src/which.sh \ src/xxd/Makefile \ # source files for both DOS and Unix SRC_DOS_UNIX = \ src/gui_xim.c \ src/if_cscope.c \ src/if_lua.c \ src/if_mzsch.c \ src/if_mzsch.h \ src/if_perl.xs \ src/if_perlsfio.c \ src/if_python.c \ src/if_python3.c \ src/if_py_both.h \ src/if_ruby.c \ src/if_tcl.c \ src/proto/gui_xim.pro \ src/proto/if_cscope.pro \ src/proto/if_lua.pro \ src/proto/if_mzsch.pro \ src/proto/if_perl.pro \ src/proto/if_perlsfio.pro \ src/proto/if_python.pro \ src/proto/if_python3.pro \ src/proto/if_ruby.pro \ src/proto/if_tcl.pro \ src/typemap \ # source files for MS-Windows (also in the extra archive) SRC_DOS = \ src/GvimExt/*.mak \ src/GvimExt/GvimExt.reg \ src/GvimExt/Makefile \ src/GvimExt/README.txt \ src/GvimExt/gvimext.cpp \ src/GvimExt/gvimext.def \ src/GvimExt/gvimext.h \ src/GvimExt/gvimext.inf \ src/GvimExt/gvimext.rc \ src/GvimExt/gvimext_ming.def \ src/GvimExt/gvimext_ming.rc \ src/GvimExt/resource.h \ src/GvimExt/uninst.bat \ README_srcdos.txt \ src/INSTALLpc.txt \ src/Make_cyg.mak \ src/Make_cyg_ming.mak \ src/Make_ming.mak \ src/Make_mvc.mak \ tools/rename.bat \ src/bigvim.bat \ src/bigvim64.bat \ src/msvc-latest.bat \ src/msvc2015.bat \ src/msvc2017.bat \ src/msvc2019.bat \ src/msvc2022.bat \ src/msys32.bat \ src/msys64.bat \ src/dlldata.c \ src/dosinst.c \ src/dosinst.h \ src/gui_dwrite.cpp \ src/gui_dwrite.h \ src/gui_w32.c \ src/gui_w32_rc.h \ src/if_ole.cpp \ src/if_ole.h \ src/if_ole.idl \ src/iscygpty.c \ src/iscygpty.h \ src/iid_ole.c \ src/os_dos.h \ src/os_w32dll.c \ src/os_w32exe.c \ src/os_win32.c \ src/os_mswin.c \ src/os_win32.h \ src/proto/gui_w32.pro \ src/proto/if_ole.pro \ src/proto/os_win32.pro \ src/proto/os_mswin.pro \ src/testdir/Make_dos.mak \ src/testdir/Make_mvc.mak \ src/testdir/Make_ming.mak \ src/testdir/dos.vim \ src/uninstall.c \ src/vim.rc \ src/vim.manifest \ src/vimrun.c \ src/xpm_w32.c \ src/xpm_w32.h \ src/tee/Make_ming.mak \ src/tee/Make_mvc.mak \ src/tee/Makefile \ src/tee/tee.c \ src/xxd/Make_ming.mak \ src/xxd/Make_mvc.mak \ nsis/gvim.nsi \ nsis/gvim_version.nsh \ nsis/README.txt \ nsis/lang/*.nsi \ uninstall.txt \ # source files for DOS without CR/LF translation (also in the extra archive) SRC_DOS_BIN = \ src/tearoff.bmp \ src/tools.bmp \ src/vim*.ico \ src/vim.tlb \ src/xpm/COPYRIGHT \ src/xpm/README.txt \ src/xpm/arm64/lib-vc14/libXpm.lib \ src/xpm/include/*.h \ src/xpm/x64/lib-vc14/libXpm.lib \ src/xpm/x64/lib/libXpm.a \ src/xpm/x86/lib-vc14/libXpm.lib \ src/xpm/x86/lib/libXpm.a \ runtime/bitmaps/vim.ico \ nsis/icons.zip \ # source files for Amiga, DOS, etc. (also in the extra archive) SRC_AMI_DOS = \ # source files for Amiga (also in the extra archive) SRC_AMI = \ README_amisrc.txt \ README_amisrc.txt.info \ src.info \ src/INSTALLami.txt \ src/Make_ami.mak \ src/os_amiga.c \ src/os_amiga.h \ src/proto/os_amiga.pro \ src/testdir/Make_amiga.mak \ src/testdir/amiga.vim \ src/xxd/Make_amiga.mak \ # source files for Haiku (also in the extra archive) SRC_HAIKU = \ README_haiku.txt \ src/os_haiku.h \ src/os_haiku.rdef.in \ src/gui_haiku.cc \ src/gui_haiku.h \ src/proto/gui_haiku.pro \ # source files for the Mac (also in the extra archive) SRC_MAC = \ src/INSTALLmac.txt \ src/os_mac.h \ src/os_mac_conv.c \ src/os_macosx.m \ src/proto/os_mac_conv.pro \ src/proto/os_macosx.pro \ # source files for VMS (in the extra archive) SRC_VMS = \ src/INSTALLvms.txt \ src/Make_vms.mms \ src/gui_gtk_vms.h \ src/os_vms.c \ src/os_vms_conf.h \ src/os_vms_mms.c \ src/proto/os_vms.pro \ src/testdir/Make_vms.mms \ src/testdir/vms.vim \ src/xxd/Make_vms.mms \ vimtutor.com \ # source files for QNX (in the extra archive) SRC_QNX = \ src/os_qnx.c \ src/os_qnx.h \ src/gui_photon.c \ src/proto/gui_photon.pro \ src/proto/os_qnx.pro \ # source files for the extra archive (all sources that are not for Unix) SRC_EXTRA = \ $(SRC_AMI) \ $(SRC_AMI_DOS) \ $(SRC_DOS) \ $(SRC_DOS_BIN) \ $(SRC_HAIKU) \ $(SRC_MAC) \ $(SRC_QNX) \ $(SRC_VMS) \ README_os390.txt \ src/link.390 \ src/os_vms_fix.com \ src/toolbar.phi \ # runtime files for all distributions RT_ALL = \ README.txt \ README.md \ README_VIM9.md \ LICENSE \ CONTRIBUTING.md \ runtime/bugreport.vim \ runtime/doc/*.awk \ runtime/doc/*.pl \ runtime/doc/*.txt \ runtime/doc/Makefile \ runtime/doc/doctags.c \ runtime/doc/doctags.vim \ runtime/doc/test_urls.vim \ runtime/doc/vim.1 \ runtime/doc/evim.1 \ runtime/doc/vimdiff.1 \ runtime/doc/vimtutor.1 \ runtime/doc/xxd.1 \ runtime/ftoff.vim \ runtime/gvimrc_example.vim \ runtime/import/dist/vimhelp.vim \ runtime/import/dist/vimhighlight.vim \ runtime/macros/README.txt \ runtime/macros/editexisting.vim \ runtime/macros/hanoi/click.me \ runtime/macros/hanoi/hanoi.vim \ runtime/macros/hanoi/poster \ runtime/macros/justify.vim \ runtime/macros/less.bat \ runtime/macros/less.sh \ runtime/macros/less.vim \ runtime/macros/life/click.me \ runtime/macros/life/life.vim \ runtime/macros/matchit.vim \ runtime/macros/maze/README.txt \ runtime/macros/maze/[mM]akefile \ runtime/macros/maze/maze.c \ runtime/macros/maze/maze_5.78 \ runtime/macros/maze/maze_mac \ runtime/macros/maze/mazeansi.c \ runtime/macros/maze/mazeclean.c \ runtime/macros/maze/poster \ runtime/macros/shellmenu.vim \ runtime/macros/swapmous.vim \ runtime/macros/urm/README.txt \ runtime/macros/urm/examples \ runtime/macros/urm/urm \ runtime/macros/urm/urm.vim \ runtime/defaults.vim \ runtime/evim.vim \ runtime/mswin.vim \ runtime/optwin.vim \ runtime/ftplugin.vim \ runtime/ftplugof.vim \ runtime/indent.vim \ runtime/indoff.vim \ runtime/termcap \ runtime/tools/README.txt \ runtime/tools/[a-z]*[a-z0-9] \ runtime/tutor/README.txt \ runtime/tutor/tutor \ runtime/tutor/tutor.vim \ runtime/vimrc_example.vim \ runtime/pack/dist/opt/cfilter/plugin/cfilter.vim \ runtime/pack/dist/opt/dvorak/plugin/dvorak.vim \ runtime/pack/dist/opt/dvorak/dvorak/enable.vim \ runtime/pack/dist/opt/dvorak/dvorak/disable.vim \ runtime/pack/dist/opt/editexisting/plugin/editexisting.vim \ runtime/pack/dist/opt/justify/plugin/justify.vim \ runtime/pack/dist/opt/matchit/plugin/matchit.vim \ runtime/pack/dist/opt/matchit/doc/matchit.txt \ runtime/pack/dist/opt/matchit/doc/tags \ runtime/pack/dist/opt/matchit/autoload/*.vim \ runtime/pack/dist/opt/shellmenu/plugin/shellmenu.vim \ runtime/pack/dist/opt/swapmouse/plugin/swapmouse.vim \ runtime/pack/dist/opt/termdebug/plugin/termdebug.vim \ # runtime files for all distributions without CR-NL translation RT_ALL_BIN = \ runtime/doc/tags \ runtime/print/*.ps \ # runtime script files RT_SCRIPTS = \ runtime/filetype.vim \ runtime/scripts.vim \ runtime/menu.vim \ runtime/macmap.vim \ runtime/delmenu.vim \ runtime/synmenu.vim \ runtime/makemenu.vim \ runtime/autoload/*.vim \ runtime/autoload/README.txt \ runtime/autoload/dist/*.vim \ runtime/autoload/xml/*.vim \ runtime/autoload/zig/*.vim \ runtime/colors/*.vim \ runtime/colors/README.txt \ runtime/colors/lists/*.vim \ runtime/colors/tools/*.vim \ runtime/compiler/*.vim \ runtime/compiler/README.txt \ runtime/indent/*.vim \ runtime/indent/README.txt \ runtime/indent/Makefile \ runtime/indent/testdir/README.txt \ runtime/indent/testdir/*.vim \ runtime/indent/testdir/*.in \ runtime/indent/testdir/*.ok \ runtime/ftplugin/*.vim \ runtime/ftplugin/logtalk.dict \ runtime/ftplugin/README.txt \ runtime/plugin/*.vim \ runtime/plugin/README.txt \ runtime/syntax/*.vim \ runtime/syntax/README.txt \ runtime/syntax/shared/*.vim \ runtime/syntax/shared/README.txt \ runtime/syntax/Makefile \ runtime/syntax/testdir/README.txt \ runtime/syntax/testdir/runtest.vim \ runtime/syntax/testdir/input/*.* \ runtime/syntax/testdir/dumps/*.dump \ # Unix runtime RT_UNIX = \ README_unix.txt \ runtime/hi16-action-make.png \ runtime/hi22-action-make.png \ runtime/gvim.desktop \ runtime/vim.desktop \ # Unix and DOS runtime without CR-LF translation RT_UNIX_DOS_BIN = \ runtime/vim16x16.gif \ runtime/vim16x16.png \ runtime/vim16x16.xpm \ runtime/vim32x32.gif \ runtime/vim32x32.png \ runtime/vim32x32.xpm \ runtime/vim48x48.gif \ runtime/vim48x48.png \ runtime/vim48x48.xpm \ # runtime not for unix or extra RT_NO_UNIX = \ # runtime for Amiga (also in the extra archive) RT_AMI_DOS = \ runtime/doc/evim.man \ runtime/doc/vim.man \ runtime/doc/vimdiff.man \ runtime/doc/vimtutor.man \ runtime/doc/xxd.man \ # DOS runtime (also in the extra archive) RT_DOS = \ README_dos.txt \ vimtutor.bat \ # DOS runtime without CR-LF translation (also in the extra archive) RT_DOS_BIN = \ runtime/vimlogo.cdr \ runtime/vimlogo.eps \ runtime/vimlogo.gif \ runtime/vimlogo.pdf \ # Amiga runtime (also in the extra archive) RT_AMI = \ README.txt.info \ README_ami.txt \ README_ami.txt.info \ runtime/doc.info \ runtime/doc/*.info \ runtime/icons/README.txt \ runtime/icons/*.info \ runtime/icons.info \ runtime/macros.info \ runtime/macros/*.info \ runtime/macros/hanoi/*.info \ runtime/macros/life/*.info \ runtime/macros/maze/*.info \ runtime/macros/urm/*.info \ runtime/tools.info \ runtime/tutor.info \ runtime/tutor/*.info \ # runtime files in extra archive RT_EXTRA = \ $(RT_AMI) \ $(RT_AMI_DOS) \ $(RT_DOS) \ $(RT_DOS_BIN) \ README_mac.txt \ # included in all Amiga archives ROOT_AMI = \ Contents \ Contents.info \ runtime.info \ vimdir.info \ # root files for the extra archive ROOT_EXTRA = \ $(ROOT_AMI) \ # files for Amiga small binary (also in extra archive) BIN_AMI = \ README_amibin.txt \ README_amibin.txt.info \ Vim.info \ Xxd.info \ # files for DOS binary (also in extra archive) BIN_DOS = \ README_bindos.txt \ uninstall.txt \ # files for Win32 OLE binary (also in extra archive) BIN_OLE = \ README_ole.txt \ # files for Win32s binary (also in extra archive) BIN_W32S = \ README_w32s.txt \ # files for VMS binary (also in extra archive) BIN_VMS = \ README_vms.txt \ # files for OS/2 binary (also in extra archive) BIN_OS2 = \ README_os2.txt \ # binary files for extra archive BIN_EXTRA = \ $(BIN_AMI) \ $(BIN_DOS) \ $(BIN_OLE) \ $(BIN_W32S) \ $(BIN_VMS) \ $(BIN_OS2) \ # all files for extra archive EXTRA = \ $(BIN_EXTRA) \ $(ROOT_EXTRA) \ $(RT_EXTRA) \ $(SRC_EXTRA) \ README_extra.txt \ runtime/vimlogo.xpm \ # files in READMEdir that are included from the top dir IN_README_DIR = \ README.txt.info \ README_ami.txt \ README_ami.txt.info \ README_amibin.txt \ README_amibin.txt.info \ README_amisrc.txt \ README_amisrc.txt.info \ README_bindos.txt \ README_dos.txt \ README_extra.txt \ README_mac.txt \ README_ole.txt \ README_os2.txt \ README_os390.txt \ README_src.txt \ README_srcdos.txt \ README_unix.txt \ README_vms.txt \ README_w32s.txt \ Contents \ Contents.info \ Vim.info \ Xxd.info \ runtime.info \ src.info \ vimdir.info \ # generic language files LANG_GEN = \ runtime/doc/*-da.1 \ runtime/doc/*-da.UTF-8.1 \ runtime/doc/*-de.1 \ runtime/doc/*-de.UTF-8.1 \ runtime/doc/*-fr.1 \ runtime/doc/*-fr.UTF-8.1 \ runtime/doc/*-it.1 \ runtime/doc/*-it.UTF-8.1 \ runtime/doc/*-ja.UTF-8.1 \ runtime/doc/*-pl.1 \ runtime/doc/*-pl.UTF-8.1 \ runtime/doc/*-ru.1 \ runtime/doc/*-ru.UTF-8.1 \ runtime/doc/*-tr.1 \ runtime/doc/*-tr.UTF-8.1 \ runtime/lang/README.txt \ runtime/lang/Makefile \ runtime/lang/menu_*.vim \ runtime/keymap/README.txt \ runtime/keymap/*.vim \ runtime/tutor/README.*.txt \ runtime/tutor/Makefile \ runtime/tutor/tutor.utf-8 \ runtime/tutor/tutor.?? \ runtime/tutor/tutor.??.utf-8 \ runtime/tutor/tutor.??.euc \ runtime/tutor/tutor.??.sjis \ runtime/tutor/tutor.??.iso9 \ runtime/tutor/tutor.??.big5 \ runtime/tutor/tutor.??.cp1250 \ runtime/tutor/tutor.??.cp1251 \ runtime/tutor/tutor.??.cp737 \ runtime/tutor/tutor.??_??.utf-8 \ runtime/tutor/tutor.bar \ runtime/tutor/tutor.bar.utf-8 \ runtime/spell/README.txt \ runtime/spell/??/*.diff \ runtime/spell/??/main.aap \ runtime/spell/sr/README_sr.txt \ runtime/spell/sr/convert.vim \ runtime/spell/tet/*.diff \ runtime/spell/tet/main.aap \ runtime/spell/check/main.aap \ runtime/spell/check/*.aff \ runtime/spell/check/*.dic \ runtime/spell/yi/README.txt \ runtime/spell/main.aap \ runtime/spell/*.vim \ # generic language files, binary LANG_GEN_BIN = \ runtime/spell/README_en.txt \ runtime/spell/en.ascii.spl \ runtime/spell/en.latin1.spl \ runtime/spell/en.utf-8.spl \ runtime/spell/en.ascii.sug \ runtime/spell/en.latin1.sug \ runtime/spell/en.utf-8.sug \ # all files for lang archive LANG_SRC = \ src/po/README.txt \ src/po/README_mingw.txt \ src/po/README_mvc.txt \ src/po/check.vim \ src/po/cleanup.vim \ src/po/tojavascript.vim \ src/po/fixfilenames.vim \ src/po/Makefile \ src/po/Make_all.mak \ src/po/Make_cyg.mak \ src/po/Make_ming.mak \ src/po/Make_mvc.mak \ src/po/vim.desktop.in \ src/po/gvim.desktop.in \ src/po/sjiscorr.c \ src/po/*.po \ # the language files for the Win32 lang archive LANG_DOS = \ src/po/*.mo \ # vim: set ft=make: