aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
* viml/profile: switch to uv_gettimeofday() #10356Justin M. Keyes2019-06-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Performance of high-resolution time (clock_gettime via uv_hrtime) is expensive on some systems. For profiling VimL, syntax, etc., we don't care about nanosecond-precision and monotonicity edge-cases, so avoid uv_hrtime(). closes #10328 From the uv__hrtime() source: https://github.com/libuv/libuv/blob/0cdb4a5b4b706d0e09413d9270da28f9a88dc083/src/unix/linux-core.c#L442-L462 /* Prefer CLOCK_MONOTONIC_COARSE if available but only when it has * millisecond granularity or better. CLOCK_MONOTONIC_COARSE is * serviced entirely from the vDSO, whereas CLOCK_MONOTONIC may * decide to make a costly system call. */ This micro-benchmark (Debug build) shows negligible differences on my system: #include <sys/time.h> ... proftime_T tm = profile_start(); int trials = 999999; int64_t t = 0; struct timeval tv; for (int i = 0; i < trials; i++) { t += gettimeofday(&tv,NULL); } tm = profile_end(tm); ILOG("%d trials of gettimeofday: %s", trials, profile_msg(tm)); tm = profile_start(); for (int i = 0; i < trials; i++) { t += os_hrtime(); } tm = profile_end(tm); ILOG("%d trials of os_hrtime: %s", trials, profile_msg(tm)); tm = profile_start(); for (int i = 0; i < trials; i++) { t += os_utime(); } tm = profile_end(tm); ILOG("%d trials of os_utime: %s", trials, profile_msg(tm)); ILOG("%zu", t);
* vim-patch:8.0.1259: search test can be flakyJan Edmund Lazo2019-06-28
| | | | | | | | Problem: Search test can be flaky. Solution: Use WaitFor() instead of a delay. Make it possible to pass a funcref to WaitFor() to avoid the need for global variables. (James McCoy, closes vim/vim#2282) https://github.com/vim/vim/commit/13deab8d08145c1f6e2a3e82cb547bc7f87a3686
* vim-patch:8.0.1238: incremental search only shows one matchJan Edmund Lazo2019-06-28
| | | | | | | Problem: Incremental search only shows one match. Solution: When 'incsearch' and and 'hlsearch' are both set highlight all matches. (haya14busa, closes vim/vim#2198) https://github.com/vim/vim/commit/2e51d9a0972080b087d566608472928d5b7b35d7
* vim-patch:8.0.1202: :wall gives an errof for a terminal windowJan Edmund Lazo2019-06-28
| | | | | | | Problem: :wall gives an errof for a terminal window. (Marius Gedminas) Solution: Don't try writing a buffer that can't be written. (Yasuhiro Matsumoto, closes vim/vim#2190) https://github.com/vim/vim/commit/059db5c29ffef283a4b90bab9228708fa32e3dd2
* vim-patch:8.0.1120: :tm means :tmap instead of :tmenuJan Edmund Lazo2019-06-27
| | | | | | Problem: :tm means :tmap instead of :tmenu. (Taro Muraoka) Solution: Move the new entry below the old entry. (closes vim/vim#2102) https://github.com/vim/vim/commit/63c4e8a1986796094e6f15b893f2deccdf482617
* vim-patch:8.0.1100: stuck in redraw loop when 'lazyredraw' is setJan Edmund Lazo2019-06-26
| | | | | | | Problem: Stuck in redraw loop when 'lazyredraw' is set. Solution: Don't loop on update_screen() when not redrawing. (Yasuhiro Matsumoto, closes vim/vim#2082) https://github.com/vim/vim/commit/072412ed45aa20a67aaa7e387d7f6bf59c7d3fbe
* vim-patch:8.0.1013: terminal window behaves different from a buffer with changesJan Edmund Lazo2019-06-26
| | | | | | | | Problem: A terminal window with a running job behaves different from a window containing a changed buffer. Solution: Do not set 'bufhidden' to "hide". Fix that a buffer where a terminal used to run is listed as "[Scratch]". https://github.com/vim/vim/commit/e561a7e2fa511d643c9692d26f4cf65378fd1983
* vim-patch:8.0.0935: cannot recognize a terminal buffer in :ls outputJan Edmund Lazo2019-06-26
| | | | | | Problem: Cannot recognize a terminal buffer in :ls output. Solution: Use R for a running job and F for a finished job. https://github.com/vim/vim/commit/304b64c9e6957fa3f552e0540ca786139b39a1c4
* Merge pull request #10342 from bfredl/apisandboxBjörn Linse2019-06-26
|\ | | | | eval/api: don't allow the API to be called in the sandbox
| * eval/api: don't allow the API to be called in the sandbox.Björn Linse2019-06-26
| | | | | | | | | | Identifying and maintaining a "secure" subset of the API would be too much busywork. So just disable the entire thing.
* | Merge #10340 from janlazo/vim-8.1.1593Justin M. Keyes2019-06-26
|\ \ | | | | | | vim-patch:8.0.1688,8.1.1593
| * | vim-patch:8.0.1688: some macros are used without a semicolonJan Edmund Lazo2019-06-26
| | | | | | | | | | | | | | | | | | | | | Problem: Some macros are used without a semicolon, causing auto-indent to be wrong. Solution: Use the do-while(0) trick. (Ozaki Kiichi, closes vim/vim#2729) https://github.com/vim/vim/commit/6f4700233fd925fe122b851f937929fb5e5da707
| * | vim-patch:8.1.1593: filetype not detected for C++ header files without extensionJan Edmund Lazo2019-06-25
| |/ | | | | | | | | | | | | Problem: Filetype not detected for C++ header files without extension. Solution: Recognize the file by the Emacs file mode. (Dmitry Ilyin, closes vim/vim#4593) https://github.com/vim/vim/commit/6a7af8e2dbcb768a768831d9e6355c855c215ebc
* | Merge pull request #10344 from bfredl/extcmdredrawBjörn Linse2019-06-26
|\ \ | | | | | | cmdline: remove invalid cmdline_show event when aborting mapping
| * | cmdline: remove invalid cmdline_show event when aborting mappingBjörn Linse2019-06-26
| |/
* / compositor: handle scrolling of blended windowBjörn Linse2019-06-26
|/
* api: make nvim__inspect_cell support multiple gridsBjörn Linse2019-06-25
|
* ui: add 'winblend' to support blending of floating windowsBjörn Linse2019-06-25
| | | | Also add `hi blend=` attribute to override transparency of indiviual attributes.
* vim-patch:8.1.1342: using freed memory when joining line with text propertyJan Edmund Lazo2019-06-25
| | | | | | Problem: Using freed memory when joining line with text property. Solution: Use already computed length. https://github.com/vim/vim/commit/787880a86dbcb79cdf6e8241b1d99ac4a7acbc09
* vim-patch:8.0.1535: C syntax test still fails when using gvimJan Edmund Lazo2019-06-24
| | | | | | Problem: C syntax test still fails when using gvim. Solution: Clear Normal cterm highlighting instead of setting it. https://github.com/vim/vim/commit/6acadda8d60892ddf06449f1cc4286912b0c0c2b
* vim-patch:8.1.0198: there is no hint that syntax is disabled for 'redrawtime'Jan Edmund Lazo2019-06-24
| | | | | | Problem: There is no hint that syntax is disabled for 'redrawtime'. Solution: Add a message. https://github.com/vim/vim/commit/0a6efcd27d62935c465b4406c0c0db9be10a0ddb
* vim-patch:8.1.0437: may access freed memory when syntax HL times outJan Edmund Lazo2019-06-24
| | | | | | Problem: May access freed memory when syntax HL times out. (Philipp Gesang) Solution: Clear b_sst_first when clearing b_sst_array. https://github.com/vim/vim/commit/95892c27b242cdbc78e622c7a861a4e15aec7a30
* Merge #10323 from janlazo/vim-8.1.1055Justin M. Keyes2019-06-25
|\ | | | | vim-patch:8.0.{1479,1480,1482},8.1.1055
| * vim-patch:8.0.1482: using feedkeys() does not work to test completionJan Edmund Lazo2019-06-24
| | | | | | | | | | | | | | | | Problem: Using feedkeys() does not work to test Insert mode completion. (Lifepillar) Solution: Do not check for typed keys when executing :normal or feedkeys(). Fix thesaurus completion not working when 'complete' is empty. https://github.com/vim/vim/commit/02ae9b4a93deea4993d7abe20485f91f1cce5e36
| * vim-patch:8.0.1480: patch missing changeJan Edmund Lazo2019-06-23
| | | | | | | | | | | | Problem: Patch missing change. Solution: Add missing change. https://github.com/vim/vim/commit/0562532c2eee6205d225aa1dc7e3e89af0dfd990
| * vim-patch:8.0.1479: insert mode completion state is confusingJan Edmund Lazo2019-06-23
| | | | | | | | | | | | Problem: Insert mode completion state is confusing. Solution: Move ctrl_x_mode into edit.c. Add CTRL_X_NORMAL for zero. https://github.com/vim/vim/commit/bc0e9adae9c253f36803665180e4b576d1e725ab
| * vim-patch:8.1.1055: CTRL-G U in Insert mode doesn't work for shift-LeftJan Edmund Lazo2019-06-23
| | | | | | | | | | | | | | | | Problem: CTRL-G U in Insert mode doesn't work to avoid splitting the undo sequence for shift-left and shift-right. Solution: Also check dont_sync_undo for shifted cursor keys. (Christian Brabandt) https://github.com/vim/vim/commit/75bf3d22f42684beecd977f3185e98045b5c33d9
* | Merge #10250 from blueyed/vim-8.0.1039Justin M. Keyes2019-06-25
|\ \ | | | | | | vim-patch:8.0.{10{39,53,55},1274}: cannot change a line in not current buffer
| * | vim-patch:8.0.1274: setbufline() fails when using foldingDaniel Hahler2019-06-18
| | | | | | | | | | | | | | | | | | Problem: setbufline() fails when using folding. Solution: Set "curwin" if needed. (Ozaki Kiichi, closes vim/vim#2293) https://github.com/vim/vim/commit/0c4dc88a637a5027209aa00226996af84e248636
| * | vim-patch:8.0.1055: bufline test hangs on MS-WindowsDaniel Hahler2019-06-18
| | | | | | | | | | | | | | | | | | | | | Problem: Bufline test hangs on MS-Windows. Solution: Avoid message for writing file. Source shared.vim when running test individually. https://github.com/vim/vim/commit/11aa62f8f949bb590b4d7792a334885fba5e4137
| * | vim-patch:8.0.1053: setline() does not work on startupDaniel Hahler2019-06-18
| | | | | | | | | | | | | | | | | | | | | Problem: setline() does not work on startup. (Manuel Ortega) Solution: Do not check for ml_mfp to be set for the current buffer. (Christian Brabandt) https://github.com/vim/vim/commit/9d954207e2cc807b475bb04f8b59ef5bb3772d99
| * | vim-patch:8.0.1039: cannot change a line in not current bufferDaniel Hahler2019-06-17
| | | | | | | | | | | | | | | | | | Problem: Cannot change a line in a buffer other than the current one. Solution: Add setbufline(). (Yasuhiro Matsumoto, Ozaki Kiichi, closes vim/vim#1953) https://github.com/vim/vim/commit/b31cf2bb0be95d106bd8eef93cc07550591c1d0d
* | | Merge pull request #10290 from janlazo/vim-8.1.0086Justin M. Keyes2019-06-25
|\ \ \ | | | | | | | | vim-patch:8.1.{86,347}
| * | | os: close library even if uv_dlopen() failserw72019-06-23
| | | |
| * | | vim-patch:8.1.0347: some tests fail on SolarisJan Edmund Lazo2019-06-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Some tests fail on Solaris. Solution: Skip writefile test. Fix path to libc.so. Improve test for Turkish case change. (Libor Bukata, Bjorn Linse, closes vim/vim#3403) https://github.com/vim/vim/commit/f1c118be93184e8e57e3e80b1b3383f464ed649e
| * | | vim-patch:8.1.0086: no tests for libcall() and libcallnr()Jan Edmund Lazo2019-06-23
| | |/ | |/| | | | | | | | | | | | | Problem: No tests for libcall() and libcallnr(). Solution: Add tests. (Dominique Pelle, closes vim/vim#2982) https://github.com/vim/vim/commit/1ceebb4efc455dc6c34e0cd2c2adbd00939f038b
* | | [RFC] vim-patch:8.1.1365,8.1.1366,8.1.1367,8.1.1368,8.1.1382,8… (#10309)James McCoy2019-06-24
|\ \ \ | | | | | | | | [RFC] vim-patch:8.1.1365,8.1.1366,8.1.1367,8.1.1368,8.1.1382,8.1.1401
| * | | lintJames McCoy2019-06-24
| | | |
| * | | vim-patch:8.1.1401: misspelled mkspellmem as makespellmemJames McCoy2019-06-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Misspelled mkspellmem as makespellmem. Solution: Drop duplicate help entry, fix test. (Naruhiko Nishino, Ken Takata, closes vim/vim#4437) https://github.com/vim/vim/commit/076073950c44ea0e35bc39d539dc7ab41bf9c7ec
| * | | vim-patch:8.1.1382: error when editing test fileJames McCoy2019-06-24
| | | | | | | | | | | | | | | | | | | | | | | | Problem: Error when editing test file. Solution: Remove part of modeline. https://github.com/vim/vim/commit/3020a87cb121123abf1e9a1eca0eddac241fc481
| * | | vim-patch:8.1.1368: modeline test fails with python but without pythonhomeJames McCoy2019-06-24
| | | | | | | | | | | | | | | | | | | | | | | | Problem: Modeline test fails with python but without pythonhome. Solution: Correct test argument. https://github.com/vim/vim/commit/e09244ee3567d658c293fb1ae0d47a1a8be870ac
| * | | vim-patch:8.1.1367: can set 'modelineexpr' in modelineJames McCoy2019-06-24
| | | | | | | | | | | | | | | | | | | | | | | | Problem: can set 'modelineexpr' in modeline. Solution: Add P_SECURE flag. https://github.com/vim/vim/commit/7e800c6047c8a9cc3e5cbc019a4dc91ec36616b1
| * | | vim-patch:8.1.1366: using expressions in a modeline is unsafeJames McCoy2019-06-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Using expressions in a modeline is unsafe. Solution: Disallow using expressions in a modeline, unless the 'modelineexpr' option is set. Update help, add more tests. https://github.com/vim/vim/commit/110289e78195b6d01e1e6ad26ad450de476d41c1
| * | | vim-patch:8.1.1365: source command doesn't check for the sandboxJames McCoy2019-06-24
| |/ / | | | | | | | | | | | | | | | Problem: Source command doesn't check for the sandbox. (Armin Razmjou) Solution: Check for the sandbox when sourcing a file. https://github.com/vim/vim/commit/53575521406739cf20bbe4e384d88e7dca11f040
* | | Merge #10313 from rhysd/const-patchesJustin M. Keyes2019-06-24
|\ \ \ | |/ / |/| | vim-patch:8.1.1539,8.1.1543,8.1.1554 for :const from Vim
| * | eval.c: Fix clint errors and typo in comment of ex_const()rhysd2019-06-24
| | |
| * | vim-patch:8.1.1554: docs and tests for :const can be improvedrhysd2019-06-24
| | | | | | | | | | | | | | | | | | | | | Problem: Docs and tests for :const can be improved. Solution: Improve documentation, add a few more tests. (Ryuichi Hayashida, closes vim/vim#4551) https://github.com/vim/vim/commit/1c196e7b1742c1a50ce0d74190721acaad087f81
| * | vim-patch:8.1.1543: const test fails with small featuresrhysd2019-06-24
| | | | | | | | | | | | | | | | | | Problem: Const test fails with small features. Solution: Don't unlet non-existing variables. https://github.com/vim/vim/commit/b6e3b88ec8b757b3acf940f8b4938e975c39ba67
| * | vim-patch:8.1.1539: not easy to define a variable and lock itrhysd2019-06-24
| | | | | | | | | | | | | | | | | | Problem: Not easy to define a variable and lock it. Solution: Add ":const". https://github.com/vim/vim/commit/9937a055437ef67b57a1bdec8f0799b669c9dbf0
* | | Merge #10294 from janlazo/vim-8.0.1239Justin M. Keyes2019-06-24
|\ \ \ | | | | | | | | vim-patch:8.0.1239,8.1.{112,125,165,166,167,169,181,242,270,272,747,850,853,1519}