Name | Date | Size | #Lines | LOC | ||
---|---|---|---|---|---|---|
.. | 03-May-2022 | - | ||||
GvimExt/ | H | 03-May-2022 | - | 1,561 | 1,089 | |
VisVim/ | H | 03-May-2022 | - | 2,753 | 1,981 | |
auto/ | H | 03-May-2022 | - | 16,388 | 13,935 | |
if_perl_msvc/ | H | 05-Dec-2021 | - | 4 | 1 | |
libvterm/ | H | 05-Dec-2021 | - | 12,636 | 10,099 | |
os_mac_rsrc/ | H | 03-May-2022 | - | |||
po/ | H | 07-May-2022 | - | 257,120 | 185,997 | |
proto/ | H | 05-Dec-2021 | - | 4,996 | 4,837 | |
tee/ | H | 05-Dec-2021 | - | 208 | 147 | |
testdir/ | H | 07-May-2022 | - | 172,519 | 151,307 | |
xdiff/ | H | 03-May-2022 | - | 4,188 | 2,684 | |
xpm/ | H | 03-May-2022 | - | 674 | 427 | |
xxd/ | H | 05-Dec-2021 | - | 1,014 | 785 | |
INSTALL | H A D | 05-Dec-2021 | 7.9 KiB | 230 | 168 | |
Make_all.mak | H A D | 05-Dec-2021 | 251 | 17 | 15 | |
Make_ami.mak | H A D | 05-Dec-2021 | 2.8 KiB | 205 | 192 | |
Make_cyg.mak | H A D | 05-Dec-2021 | 1.4 KiB | 54 | 40 | |
Make_cyg_ming.mak | H A D | 05-Dec-2021 | 33.9 KiB | 1,327 | 1,143 | |
Make_ming.mak | H A D | 05-Dec-2021 | 1.4 KiB | 52 | 40 | |
Make_mvc.mak | H A D | 05-Dec-2021 | 55.9 KiB | 2,058 | 1,742 | |
Make_vms.mms | H A D | 05-Dec-2021 | 45.6 KiB | 1,233 | 1,170 | |
Makefile | H A D | 05-Dec-2021 | 169.9 KiB | 4,393 | 2,578 | |
README.md | H A D | 05-Dec-2021 | 8.1 KiB | 236 | 176 | |
alloc.c | H A D | 05-Dec-2021 | 17.9 KiB | 870 | 601 | |
alloc.h | H A D | 05-Dec-2021 | 742 | 34 | 21 | |
arabic.c | H A D | 05-Dec-2021 | 9.5 KiB | 397 | 287 | |
arglist.c | H A D | 05-Dec-2021 | 31.5 KiB | 1,385 | 1,020 | |
ascii.h | H A D | 05-Dec-2021 | 4.6 KiB | 187 | 133 | |
autocmd.c | H A D | 05-Dec-2021 | 66.4 KiB | 2,688 | 1,890 | |
beval.c | H A D | 05-Dec-2021 | 7.7 KiB | 327 | 239 | |
beval.h | H A D | 05-Dec-2021 | 2.4 KiB | 96 | 79 | |
bigvim.bat | H A D | 05-Dec-2021 | 715 | 6 | 4 | |
bigvim64.bat | H A D | 05-Dec-2021 | 492 | 8 | 6 | |
blob.c | H A D | 05-Dec-2021 | 10.3 KiB | 549 | 398 | |
blowfish.c | H A D | 05-Dec-2021 | 23.5 KiB | 686 | 569 | |
buffer.c | H A D | 05-Dec-2021 | 142.2 KiB | 5,842 | 4,414 | |
bufwrite.c | H A D | 05-Dec-2021 | 67.9 KiB | 2,623 | 2,028 | |
change.c | H A D | 05-Dec-2021 | 61.5 KiB | 2,371 | 1,678 | |
channel.c | H A D | 05-Dec-2021 | 120.1 KiB | 5,108 | 3,918 | |
charset.c | H A D | 05-Dec-2021 | 50.2 KiB | 2,173 | 1,574 | |
cindent.c | H A D | 05-Dec-2021 | 102.4 KiB | 4,148 | 2,843 | |
clientserver.c | H A D | 05-Dec-2021 | 24.1 KiB | 1,046 | 802 | |
clipboard.c | H A D | 05-Dec-2021 | 53.7 KiB | 2,226 | 1,678 | |
cmdexpand.c | H A D | 05-Dec-2021 | 72.9 KiB | 2,977 | 2,362 | |
cmdhist.c | H A D | 05-Dec-2021 | 16.9 KiB | 780 | 603 | |
config.h.in | H A D | 05-Dec-2021 | 11.9 KiB | 510 | 388 | |
config.mk.dist | H A D | 05-Dec-2021 | 95 | 6 | 5 | |
config.mk.in | H A D | 05-Dec-2021 | 4.3 KiB | 179 | 144 | |
configure | H A D | 05-Dec-2021 | 318 | 11 | 5 | |
configure.ac | H A D | 05-Dec-2021 | 150.4 KiB | 4,627 | 4,254 | |
create_cmdidxs.vim | H A D | 05-Dec-2021 | 3.2 KiB | 105 | 91 | |
crypt.c | H A D | 05-Dec-2021 | 23.5 KiB | 992 | 711 | |
crypt_zip.c | H A D | 05-Dec-2021 | 3.3 KiB | 157 | 95 | |
debugger.c | H A D | 05-Dec-2021 | 23.5 KiB | 1,043 | 833 | |
dehqx.py | H A D | 05-Dec-2021 | 1 KiB | 46 | 28 | |
dict.c | H A D | 05-Dec-2021 | 28.4 KiB | 1,374 | 987 | |
diff.c | H A D | 05-Dec-2021 | 81.7 KiB | 3,370 | 2,526 | |
digraph.c | H A D | 05-Dec-2021 | 59.3 KiB | 2,737 | 2,471 | |
dimm.idl | H A D | 05-Dec-2021 | 26 KiB | 545 | 487 | |
dlldata.c | H A D | 05-Dec-2021 | 787 | 39 | 13 | |
dosinst.c | H A D | 05-Dec-2021 | 73.1 KiB | 2,811 | 2,139 | |
dosinst.h | H A D | 05-Dec-2021 | 11.9 KiB | 511 | 343 | |
drawline.c | H A D | 05-Dec-2021 | 82.5 KiB | 3,295 | 2,703 | |
drawscreen.c | H A D | 05-Dec-2021 | 83.6 KiB | 3,279 | 2,423 | |
edit.c | H A D | 05-Dec-2021 | 129 KiB | 5,434 | 3,978 | |
errors.h | H A D | 05-Dec-2021 | 32.3 KiB | 699 | 678 | |
eval.c | H A D | 05-Dec-2021 | 143.5 KiB | 6,452 | 4,817 | |
evalbuffer.c | H A D | 05-Dec-2021 | 20.9 KiB | 963 | 713 | |
evalfunc.c | H A D | 05-Dec-2021 | 243.2 KiB | 10,082 | 8,406 | |
evalvars.c | H A D | 05-Dec-2021 | 105.4 KiB | 4,525 | 3,410 | |
evalwindow.c | H A D | 05-Dec-2021 | 27.9 KiB | 1,321 | 990 | |
ex_cmdidxs.h | H A D | 05-Dec-2021 | 4 KiB | 73 | 59 | |
ex_cmds.c | H A D | 05-Dec-2021 | 135.4 KiB | 5,443 | 3,940 | |
ex_cmds.h | H A D | 05-Dec-2021 | 67.2 KiB | 1,947 | 1,880 | |
ex_cmds2.c | H A D | 05-Dec-2021 | 22 KiB | 999 | 733 | |
ex_docmd.c | H A D | 05-Dec-2021 | 221.2 KiB | 9,551 | 7,231 | |
ex_eval.c | H A D | 05-Dec-2021 | 72.7 KiB | 2,555 | 1,545 | |
ex_getln.c | H A D | 05-Dec-2021 | 108.2 KiB | 4,664 | 3,506 | |
feature.h | H A D | 03-May-2022 | 30.7 KiB | 1,273 | 508 | |
fileio.c | H A D | 05-Dec-2021 | 138 KiB | 5,669 | 4,183 | |
filepath.c | H A D | 05-Dec-2021 | 96.7 KiB | 4,211 | 3,119 | |
findfile.c | H A D | 05-Dec-2021 | 72.7 KiB | 2,877 | 1,956 | |
float.c | H A D | 05-Dec-2021 | 11.5 KiB | 592 | 402 | |
fold.c | H A D | 05-Dec-2021 | 93.7 KiB | 3,826 | 2,603 | |
getchar.c | H A D | 05-Dec-2021 | 92.1 KiB | 3,763 | 2,528 | |
glbl_ime.cpp | H A D | 05-Dec-2021 | 5.6 KiB | 257 | 150 | |
glbl_ime.h | H A D | 05-Dec-2021 | 921 | 34 | 23 | |
globals.h | H A D | 05-Dec-2021 | 71.9 KiB | 1,919 | 1,106 | |
gui.c | H A D | 05-Dec-2021 | 139.8 KiB | 5,673 | 4,110 | |
gui.h | H A D | 05-Dec-2021 | 19.4 KiB | 577 | 415 | |
gui_at_fs.c | H A D | 05-Dec-2021 | 57.4 KiB | 2,754 | 2,309 | |
gui_at_sb.c | H A D | 05-Dec-2021 | 32.2 KiB | 1,193 | 924 | |
gui_at_sb.h | H A D | 05-Dec-2021 | 5.7 KiB | 162 | 75 | |
gui_athena.c | H A D | 05-Dec-2021 | 54.5 KiB | 2,292 | 1,796 | |
gui_beval.c | H A D | 05-Dec-2021 | 31.2 KiB | 1,239 | 949 | |
gui_dwrite.cpp | H A D | 05-Dec-2021 | 29.5 KiB | 1,350 | 1,132 | |
gui_dwrite.h | H A D | 05-Dec-2021 | 2.4 KiB | 93 | 49 | |
gui_gtk.c | H A D | 05-Dec-2021 | 73.7 KiB | 2,694 | 2,053 | |
gui_gtk_f.c | H A D | 05-Dec-2021 | 22 KiB | 884 | 671 | |
gui_gtk_f.h | H A D | 05-Dec-2021 | 2.1 KiB | 81 | 51 | |
gui_gtk_res.xml | H A D | 05-Dec-2021 | 766 | 19 | 18 | |
gui_gtk_vms.h | H A D | 05-Dec-2021 | 30.9 KiB | 731 | 638 | |
gui_gtk_x11.c | H A D | 05-Dec-2021 | 187.3 KiB | 7,109 | 5,024 | |
gui_haiku.cc | H A D | 05-Dec-2021 | 119.7 KiB | 5,095 | 3,605 | |
gui_haiku.h | H A D | 05-Dec-2021 | 1.1 KiB | 52 | 20 | |
gui_motif.c | H A D | 05-Dec-2021 | 97.5 KiB | 4,033 | 3,144 | |
gui_photon.c | H A D | 05-Dec-2021 | 67.7 KiB | 2,989 | 2,222 | |
gui_w32.c | H A D | 05-Dec-2021 | 206.6 KiB | 8,804 | 6,465 | |
gui_w32_rc.h | H A D | 05-Dec-2021 | 193 | 9 | 1 | |
gui_x11.c | H A D | 05-Dec-2021 | 79.8 KiB | 3,356 | 2,520 | |
gui_x11_pm.h | H A D | 05-Dec-2021 | 2.3 KiB | 93 | 73 | |
gui_xim.c | H A D | 05-Dec-2021 | 45.5 KiB | 1,799 | 1,328 | |
gui_xmdlg.c | H A D | 05-Dec-2021 | 31.1 KiB | 1,280 | 986 | |
gui_xmebw.c | H A D | 05-Dec-2021 | 38.9 KiB | 1,461 | 1,117 | |
gui_xmebw.h | H A D | 05-Dec-2021 | 1.7 KiB | 73 | 34 | |
gui_xmebwp.h | H A D | 05-Dec-2021 | 2 KiB | 89 | 42 | |
gvimtutor | H A D | 05-Dec-2021 | 144 | 9 | 1 | |
hardcopy.c | H A D | 05-Dec-2021 | 89 KiB | 3,475 | 2,576 | |
hashtab.c | H A D | 05-Dec-2021 | 12.5 KiB | 483 | 278 | |
help.c | H A D | 05-Dec-2021 | 32.5 KiB | 1,325 | 1,008 | |
highlight.c | H A D | 05-Dec-2021 | 118 KiB | 4,556 | 3,601 | |
if_cscope.c | H A D | 05-Dec-2021 | 55.7 KiB | 2,487 | 1,827 | |
if_cscope.h | H A D | 05-Dec-2021 | 1.8 KiB | 72 | 46 | |
if_lua.c | H A D | 05-Dec-2021 | 70.5 KiB | 2,785 | 2,459 | |
if_mzsch.c | H A D | 05-Dec-2021 | 101.1 KiB | 3,883 | 2,983 | |
if_mzsch.h | H A D | 05-Dec-2021 | 2 KiB | 77 | 54 | |
if_ole.cpp | H A D | 05-Dec-2021 | 18.1 KiB | 804 | 521 | |
if_ole.h | H A D | 05-Dec-2021 | 7.3 KiB | 291 | 176 | |
if_ole.idl | H A D | 05-Dec-2021 | 985 | 46 | 42 | |
if_perl.xs | H A D | 05-Dec-2021 | 49.9 KiB | 1,982 | 1,624 | |
if_perlsfio.c | H A D | 05-Dec-2021 | 1.3 KiB | 67 | 38 | |
if_py_both.h | H A D | 05-Dec-2021 | 149.2 KiB | 6,991 | 5,678 | |
if_python.c | H A D | 05-Dec-2021 | 48.6 KiB | 1,556 | 1,225 | |
if_python3.c | H A D | 05-Dec-2021 | 57.6 KiB | 1,869 | 1,471 | |
if_ruby.c | H A D | 05-Dec-2021 | 48.8 KiB | 1,990 | 1,694 | |
if_tcl.c | H A D | 05-Dec-2021 | 48.2 KiB | 2,110 | 1,661 | |
if_xcmdsrv.c | H A D | 05-Dec-2021 | 37.6 KiB | 1,525 | 1,008 | |
iid_ole.c | H A D | 05-Dec-2021 | 1.2 KiB | 58 | 29 | |
indent.c | H A D | 05-Dec-2021 | 49.7 KiB | 2,162 | 1,615 | |
infplist.xml | H A D | 05-Dec-2021 | 1.8 KiB | 75 | 68 | |
insexpand.c | H A D | 05-Dec-2021 | 117.8 KiB | 4,493 | 3,330 | |
install-sh | H A D | 05-Dec-2021 | 14.3 KiB | 502 | 327 | |
installman.sh | H A D | 05-Dec-2021 | 3.7 KiB | 125 | 88 | |
installml.sh | H A D | 03-May-2022 | 3.9 KiB | 151 | 102 | |
iscygpty.c | H A D | 05-Dec-2021 | 4.7 KiB | 184 | 124 | |
iscygpty.h | H A D | 05-Dec-2021 | 1.5 KiB | 42 | 10 | |
job.c | H A D | 05-Dec-2021 | 45.4 KiB | 2,018 | 1,610 | |
json.c | H A D | 05-Dec-2021 | 26.2 KiB | 1,207 | 1,006 | |
json_test.c | H A D | 05-Dec-2021 | 6.4 KiB | 204 | 151 | |
keymap.h | H A D | 05-Dec-2021 | 16.7 KiB | 516 | 315 | |
kword_test.c | H A D | 05-Dec-2021 | 1.7 KiB | 83 | 56 | |
link.390 | H A D | 05-Dec-2021 | 154 | 8 | 7 | |
link.sh | H A D | 05-Dec-2021 | 4.5 KiB | 152 | 100 | |
list.c | H A D | 05-Dec-2021 | 69.7 KiB | 3,298 | 2,593 | |
locale.c | H A D | 05-Dec-2021 | 12.7 KiB | 563 | 411 | |
macros.h | H A D | 05-Dec-2021 | 12.7 KiB | 404 | 252 | |
main.c | H A D | 05-Dec-2021 | 93.6 KiB | 3,665 | 2,636 | |
map.c | H A D | 05-Dec-2021 | 63.1 KiB | 2,818 | 2,204 | |
mark.c | H A D | 05-Dec-2021 | 35.6 KiB | 1,527 | 1,136 | |
match.c | H A D | 05-Dec-2021 | 32.8 KiB | 1,426 | 1,154 | |
mbyte.c | H A D | 05-Dec-2021 | 130.8 KiB | 5,671 | 4,429 | |
memfile.c | H A D | 05-Dec-2021 | 36.8 KiB | 1,501 | 931 | |
memfile_test.c | H A D | 05-Dec-2021 | 3 KiB | 144 | 91 | |
memline.c | H A D | 05-Dec-2021 | 155.9 KiB | 5,947 | 4,190 | |
menu.c | H A D | 05-Dec-2021 | 67.8 KiB | 3,017 | 2,345 | |
message.c | H A D | 05-Dec-2021 | 92.1 KiB | 4,133 | 3,004 | |
message_test.c | H A D | 05-Dec-2021 | 9.6 KiB | 330 | 225 | |
misc1.c | H A D | 05-Dec-2021 | 60.2 KiB | 2,736 | 1,957 | |
misc2.c | H A D | 05-Dec-2021 | 69.6 KiB | 2,984 | 2,204 | |
mouse.c | H A D | 05-Dec-2021 | 78.7 KiB | 3,124 | 2,379 | |
move.c | H A D | 05-Dec-2021 | 69.1 KiB | 2,936 | 2,271 | |
msvc2008.bat | H A D | 05-Dec-2021 | 198 | 8 | 6 | |
msvc2010.bat | H A D | 05-Dec-2021 | 200 | 8 | 6 | |
msvc2015.bat | H A D | 05-Dec-2021 | 1.1 KiB | 38 | 34 | |
msvcsetup.bat | H A D | 05-Dec-2021 | 471 | 13 | 9 | |
msys32.bat | H A D | 05-Dec-2021 | 207 | 7 | 5 | |
msys64.bat | H A D | 05-Dec-2021 | 207 | 7 | 5 | |
nbdebug.c | H A D | 05-Dec-2021 | 3.8 KiB | 158 | 99 | |
nbdebug.h | H A D | 05-Dec-2021 | 1.4 KiB | 73 | 42 | |
netbeans.c | H A D | 05-Dec-2021 | 82.2 KiB | 3,491 | 2,573 | |
normal.c | H A D | 05-Dec-2021 | 180.8 KiB | 7,652 | 5,704 | |
ops.c | H A D | 05-Dec-2021 | 108.9 KiB | 4,234 | 3,249 | |
option.c | H A D | 05-Dec-2021 | 177.6 KiB | 7,219 | 5,577 | |
option.h | H A D | 05-Dec-2021 | 39.9 KiB | 1,330 | 1,225 | |
optiondefs.h | H A D | 05-Dec-2021 | 95 KiB | 3,041 | 2,959 | |
optionstr.c | H A D | 05-Dec-2021 | 61.8 KiB | 2,624 | 2,106 | |
os_amiga.c | H A D | 05-Dec-2021 | 37.3 KiB | 1,729 | 1,215 | |
os_amiga.h | H A D | 05-Dec-2021 | 4.9 KiB | 238 | 177 | |
os_dos.h | H A D | 05-Dec-2021 | 3.1 KiB | 136 | 105 | |
os_haiku.h | H A D | 05-Dec-2021 | 1.3 KiB | 38 | 21 | |
os_haiku.rdef.in | H A D | 05-Dec-2021 | 7.8 KiB | 143 | 134 | |
os_mac.h | H A D | 05-Dec-2021 | 6.3 KiB | 269 | 181 | |
os_mac.rsr.hqx | H A D | 05-Dec-2021 | 41.6 KiB | 660 | 657 | |
os_mac_conv.c | H A D | 05-Dec-2021 | 13.7 KiB | 596 | 431 | |
os_macosx.m | H A D | 05-Dec-2021 | 5.6 KiB | 216 | 177 | |
os_mswin.c | H A D | 05-Dec-2021 | 67.9 KiB | 3,032 | 2,174 | |
os_qnx.c | H A D | 05-Dec-2021 | 3.3 KiB | 156 | 106 | |
os_qnx.h | H A D | 05-Dec-2021 | 395 | 20 | 8 | |
os_unix.c | H A D | 05-Dec-2021 | 191.4 KiB | 8,270 | 6,078 | |
os_unix.h | H A D | 05-Dec-2021 | 11.6 KiB | 501 | 385 | |
os_unixx.h | H A D | 05-Dec-2021 | 2.5 KiB | 117 | 76 | |
os_vms.c | H A D | 05-Dec-2021 | 18.9 KiB | 817 | 595 | |
os_vms_conf.h | H A D | 05-Dec-2021 | 5 KiB | 221 | 128 | |
os_vms_fix.com | H A D | 05-Dec-2021 | 7.6 KiB | 277 | 276 | |
os_vms_mms.c | H A D | 05-Dec-2021 | 1.3 KiB | 78 | 76 | |
os_w32dll.c | H A D | 05-Dec-2021 | 712 | 28 | 11 | |
os_w32exe.c | H A D | 05-Dec-2021 | 1 KiB | 52 | 32 | |
os_win32.c | H A D | 05-Dec-2021 | 192.8 KiB | 8,362 | 6,151 | |
os_win32.h | H A D | 05-Dec-2021 | 5.1 KiB | 208 | 138 | |
osdef.sh | H A D | 05-Dec-2021 | 2.9 KiB | 101 | 67 | |
osdef1.h.in | H A D | 05-Dec-2021 | 3.7 KiB | 139 | 129 | |
osdef2.h.in | H A D | 05-Dec-2021 | 2.5 KiB | 101 | 89 | |
pathdef.sh | H A D | 05-Dec-2021 | 251 | 12 | 5 | |
popupmenu.c | H A D | 05-Dec-2021 | 38.2 KiB | 1,611 | 1,237 | |
popupwin.c | H A D | 05-Dec-2021 | 105.7 KiB | 4,393 | 3,327 | |
profiler.c | H A D | 05-Dec-2021 | 22.4 KiB | 1,019 | 754 | |
proto.h | H A D | 05-Dec-2021 | 8.3 KiB | 339 | 275 | |
protodef.h | H A D | 05-Dec-2021 | 450 | 19 | 8 | |
pty.c | H A D | 05-Dec-2021 | 10.5 KiB | 476 | 343 | |
quickfix.c | H A D | 05-Dec-2021 | 201.8 KiB | 8,473 | 5,991 | |
regexp.c | H A D | 05-Dec-2021 | 69.5 KiB | 2,961 | 2,176 | |
regexp.h | H A D | 05-Dec-2021 | 4.6 KiB | 177 | 94 | |
regexp_bt.c | H A D | 05-Dec-2021 | 140 KiB | 5,574 | 4,465 | |
regexp_nfa.c | H A D | 05-Dec-2021 | 187.3 KiB | 7,666 | 6,115 | |
register.c | H A D | 05-Dec-2021 | 70.9 KiB | 3,029 | 2,348 | |
screen.c | H A D | 05-Dec-2021 | 121.4 KiB | 5,011 | 3,768 | |
scriptfile.c | H A D | 05-Dec-2021 | 50.3 KiB | 2,103 | 1,552 | |
search.c | H A D | 05-Dec-2021 | 120 KiB | 4,912 | 3,711 | |
session.c | H A D | 05-Dec-2021 | 35.8 KiB | 1,413 | 1,074 | |
sha256.c | H A D | 05-Dec-2021 | 11.9 KiB | 428 | 332 | |
sign.c | H A D | 05-Dec-2021 | 63.1 KiB | 2,888 | 2,163 | |
sound.c | H A D | 05-Dec-2021 | 9.9 KiB | 465 | 341 | |
spell.c | H A D | 05-Dec-2021 | 103.1 KiB | 4,429 | 3,170 | |
spell.h | H A D | 05-Dec-2021 | 11.6 KiB | 323 | 193 | |
spellfile.c | H A D | 05-Dec-2021 | 171.4 KiB | 6,683 | 4,731 | |
spellsuggest.c | H A D | 05-Dec-2021 | 118.9 KiB | 4,481 | 3,263 | |
strings.c | H A D | 05-Dec-2021 | 60.8 KiB | 2,799 | 2,090 | |
structs.h | H A D | 05-Dec-2021 | 142.4 KiB | 4,490 | 3,104 | |
syntax.c | H A D | 05-Dec-2021 | 173.3 KiB | 6,808 | 5,001 | |
tag.c | H A D | 05-Dec-2021 | 104.4 KiB | 4,373 | 3,283 | |
term.c | H A D | 05-Dec-2021 | 172.7 KiB | 6,795 | 4,996 | |
termdefs.h | H A D | 05-Dec-2021 | 9.5 KiB | 226 | 188 | |
terminal.c | H A D | 05-Dec-2021 | 177.7 KiB | 7,416 | 5,691 | |
termlib.c | H A D | 05-Dec-2021 | 13.2 KiB | 619 | 423 | |
testing.c | H A D | 05-Dec-2021 | 31.7 KiB | 1,402 | 1,161 | |
textformat.c | H A D | 05-Dec-2021 | 31.2 KiB | 1,174 | 841 | |
textobject.c | H A D | 05-Dec-2021 | 45.6 KiB | 1,994 | 1,451 | |
textprop.c | H A D | 05-Dec-2021 | 44.6 KiB | 1,917 | 1,458 | |
time.c | H A D | 05-Dec-2021 | 25.2 KiB | 1,116 | 837 | |
toolbar.phi | H A D | 05-Dec-2021 | 33.2 KiB | 1,284 | 1,220 | |
toolcheck | H A D | 05-Dec-2021 | 855 | 37 | 29 | |
typemap | H A D | 05-Dec-2021 | 284 | 15 | 13 | |
typval.c | H A D | 05-Dec-2021 | 48.9 KiB | 2,198 | 1,734 | |
ui.c | H A D | 05-Dec-2021 | 28.6 KiB | 1,215 | 809 | |
undo.c | H A D | 05-Dec-2021 | 91.3 KiB | 3,731 | 2,716 | |
uninstall.c | H A D | 05-Dec-2021 | 10.6 KiB | 426 | 330 | |
usercmd.c | H A D | 05-Dec-2021 | 38.1 KiB | 1,786 | 1,414 | |
userfunc.c | H A D | 05-Dec-2021 | 139.8 KiB | 5,797 | 4,359 | |
version.c | H A D | 05-Dec-2021 | 79.7 KiB | 8,937 | 5,039 | |
version.h | H A D | 05-Dec-2021 | 1.9 KiB | 51 | 23 | |
vim.def | H A D | 05-Dec-2021 | 81 | 5 | 4 | |
vim.h | H A D | 05-Dec-2021 | 91.1 KiB | 2,802 | 2,003 | |
vim.manifest | H A D | 05-Dec-2021 | 2.2 KiB | 59 | 45 | |
vim.rc | H A D | 05-Dec-2021 | 3.2 KiB | 137 | 122 | |
vim9.h | H A D | 05-Dec-2021 | 17.1 KiB | 533 | 381 | |
vim9compile.c | H A D | 05-Dec-2021 | 254.5 KiB | 10,753 | 8,039 | |
vim9execute.c | H A D | 05-Dec-2021 | 151.8 KiB | 6,061 | 4,882 | |
vim9script.c | H A D | 05-Dec-2021 | 24.7 KiB | 1,051 | 777 | |
vim9type.c | H A D | 05-Dec-2021 | 30.4 KiB | 1,290 | 1,031 | |
vim_icon.xbm | H A D | 05-Dec-2021 | 896 | 15 | 14 | |
vim_mask.xbm | H A D | 05-Dec-2021 | 911 | 15 | 14 | |
viminfo.c | H A D | 05-Dec-2021 | 80.1 KiB | 3,357 | 2,635 | |
vimrun.c | H A D | 05-Dec-2021 | 2.3 KiB | 114 | 72 | |
vimtutor | H A D | 05-Dec-2021 | 2.1 KiB | 75 | 40 | |
which.sh | H A D | 05-Dec-2021 | 254 | 13 | 7 | |
winclip.c | H A D | 05-Dec-2021 | 18.6 KiB | 777 | 518 | |
window.c | H A D | 05-Dec-2021 | 163.1 KiB | 7,021 | 5,138 | |
xpm_w32.c | H A D | 05-Dec-2021 | 1.1 KiB | 57 | 33 | |
xpm_w32.h | H A D | 05-Dec-2021 | 131 | 8 | 3 |
README.md
1![Vim Logo](https://github.com/vim/vim/blob/master/runtime/vimlogo.gif) 2 3# Vim source code # 4 5Here are a few hints for finding your way around the source code. This 6doesn't make it less complex than it is, but it gets you started. 7 8You might also want to read 9[`:help development`](http://vimdoc.sourceforge.net/htmldoc/develop.html#development). 10 11 12## Jumping around ## 13 14First of all, use `:make tags` to generate a tags file, so that you can jump 15around in the source code. 16 17To jump to a function or variable definition, move the cursor on the name and 18use the `CTRL-]` command. Use `CTRL-T` or `CTRL-O` to jump back. 19 20To jump to a file, move the cursor on its name and use the `gf` command. 21 22Most code can be found in a file with an obvious name (incomplete list): 23 24File name | Description 25--------------- | ----------- 26alloc.c | memory management 27arglist.c | handling argument list 28autocmd.c | autocommands 29blob.c | blob data type 30buffer.c | manipulating buffers (loaded files) 31bufwrite.c | writing a buffer to file 32change.c | handling changes to text 33cindent.c | C and Lisp indentation 34clientserver.c | client server functionality 35clipboard.c | handling the clipboard 36cmdexpand.c | command-line completion 37cmdhist.c | command-line history 38debugger.c | vim script debugger 39diff.c | diff mode (vimdiff) 40drawline.c | drawing a window line 41drawscreen.c | drawing the windows 42eval.c | expression evaluation 43evalbuffer.c | buffer related built-in functions 44evalfunc.c | built-in functions 45evalvars.c | vim variables 46evalwindow.c | window related built-in functions 47fileio.c | reading and writing files 48filepath.c | dealing with file names and paths 49findfile.c | search for files in 'path' 50fold.c | folding 51getchar.c | getting characters and key mapping 52help.c | vim help related functions 53highlight.c | syntax highlighting 54indent.c | text indentation 55insexpand.c | Insert mode completion 56locale.c | locale/language handling 57map.c | mapping and abbreviations 58mark.c | marks 59match.c | highlight matching 60float.c | floating point functions 61mbyte.c | multi-byte character handling 62memfile.c | storing lines for buffers in a swapfile 63memline.c | storing lines for buffers in memory 64menu.c | menus 65message.c | (error) messages 66mouse.c | handling the mouse 67ops.c | handling operators ("d", "y", "p") 68option.c | options 69optionstr.c | handling string options 70popupmenu.c | popup menu 71popupwin.c | popup window 72profiler.c | vim script profiler 73quickfix.c | quickfix commands (":make", ":cn") 74regexp.c | pattern matching 75register.c | handling registers 76scriptfile.c | runtime directory handling and sourcing scripts 77screen.c | lower level screen functions 78search.c | pattern searching 79session.c | sessions and views 80sign.c | signs 81spell.c | spell checking core 82spellfile.c | spell file handling 83spellsuggest.c | spell correction suggestions 84strings.c | string manipulation functions 85syntax.c | syntax and other highlighting 86tag.c | tags 87term.c | terminal handling, termcap codes 88testing.c | testing: assert and test functions 89textformat.c | text formatting 90textobject.c | text objects 91textprop.c | text properties 92time.c | time and timer functions 93typval.c | vim script type/value functions 94undo.c | undo and redo 95usercmd.c | user defined commands 96userfunc.c | user defined functions 97viminfo.c | viminfo handling 98window.c | handling split windows 99 100 101## Debugging ## 102 103If you have a reasonable recent version of gdb, you can use the `:Termdebug` 104command to debug Vim. See `:help :Termdebug`. 105 106When something is time critical or stepping through code is a hassle, use the 107channel logging to create a time-stamped log file. Add lines to the code like 108this: 109 110 ch_log(NULL, "Value is now %02x", value); 111 112After compiling and starting Vim, do: 113 114 :call ch_logfile('debuglog', 'w') 115 116And edit `debuglog` to see what happens. The channel functions already have 117`ch_log()` calls, thus you always see that in the log. 118 119 120## Important Variables ## 121 122The current mode is stored in `State`. The values it can have are `NORMAL`, 123`INSERT`, `CMDLINE`, and a few others. 124 125The current window is `curwin`. The current buffer is `curbuf`. These point 126to structures with the cursor position in the window, option values, the file 127name, etc. These are defined in 128[`structs.h`](https://github.com/vim/vim/blob/master/src/structs.h). 129 130All the global variables are declared in 131[`globals.h`](https://github.com/vim/vim/blob/master/src/globals.h). 132 133 134## The main loop ## 135 136This is conveniently called `main_loop()`. It updates a few things and then 137calls `normal_cmd()` to process a command. This returns when the command is 138finished. 139 140The basic idea is that Vim waits for the user to type a character and 141processes it until another character is needed. Thus there are several places 142where Vim waits for a character to be typed. The `vgetc()` function is used 143for this. It also handles mapping. 144 145Updating the screen is mostly postponed until a command or a sequence of 146commands has finished. The work is done by `update_screen()`, which calls 147`win_update()` for every window, which calls `win_line()` for every line. 148See the start of 149[`screen.c`](https://github.com/vim/vim/blob/master/src/screen.c) 150for more explanations. 151 152 153## Command-line mode ## 154 155When typing a `:`, `normal_cmd()` will call `getcmdline()` to obtain a line 156with an Ex command. `getcmdline()` contains a loop that will handle each typed 157character. It returns when hitting `CR` or `Esc` or some other character that 158ends the command line mode. 159 160 161## Ex commands ## 162 163Ex commands are handled by the function `do_cmdline()`. It does the generic 164parsing of the `:` command line and calls `do_one_cmd()` for each separate 165command. It also takes care of while loops. 166 167`do_one_cmd()` parses the range and generic arguments and puts them in the 168`exarg_t` and passes it to the function that handles the command. 169 170The `:` commands are listed in `ex_cmds.h`. The third entry of each item is 171the name of the function that handles the command. The last entry are the 172flags that are used for the command. 173 174 175## Normal mode commands ## 176 177The Normal mode commands are handled by the `normal_cmd()` function. It also 178handles the optional count and an extra character for some commands. These 179are passed in a `cmdarg_t` to the function that handles the command. 180 181There is a table `nv_cmds` in 182[`normal.c`](https://github.com/vim/vim/blob/master/src/normal.c) 183which lists the first character of every command. The second entry of each 184item is the name of the function that handles the command. 185 186 187## Insert mode commands ## 188 189When doing an `i` or `a` command, `normal_cmd()` will call the `edit()` 190function. It contains a loop that waits for the next character and handles it. 191It returns when leaving Insert mode. 192 193 194## Options ## 195 196There is a list with all option names in 197[`option.c`](https://github.com/vim/vim/blob/master/src/option.c), 198called `options[]`. 199 200 201## The GUI ## 202 203Most of the GUI code is implemented like it was a clever terminal. Typing a 204character, moving a scrollbar, clicking the mouse, etc. are all translated 205into events which are written in the input buffer. These are read by the 206main code, just like reading from a terminal. The code for this is scattered 207through [`gui.c`](https://github.com/vim/vim/blob/master/src/gui.c). 208For example, `gui_send_mouse_event()` for a mouse click and `gui_menu_cb()` for 209a menu action. Key hits are handled by the system-specific GUI code, which 210calls `add_to_input_buf()` to send the key code. 211 212Updating the GUI window is done by writing codes in the output buffer, just 213like writing to a terminal. When the buffer gets full or is flushed, 214`gui_write()` will parse the codes and draw the appropriate items. Finally the 215system-specific GUI code will be called to do the work. 216 217 218## Debugging the GUI ## 219 220Remember to prevent that gvim forks and the debugger thinks Vim has exited, 221add the `-f` argument. In gdb: `run -f -g`. 222 223When stepping through display updating code, the focus event is triggered 224when going from the debugger to Vim and back. To avoid this, recompile with 225some code in `gui_focus_change()` disabled. 226 227 228## Contributing ## 229 230If you would like to help making Vim better, see the 231[`CONTRIBUTING.md`](https://github.com/vim/vim/blob/master/CONTRIBUTING.md) 232file. 233 234 235This is `README.md` for version 8.2 of the Vim source code. 236