Problem: Profiling skips the first and last script line.
Solution: Check for BOM after setting script ID. (Lemonboy, closesvim/vim#2103,
closesvim/vim#2112) Add a test. List the trailing script lines.
67435d9983
Problem: Test_profile is a little bit flaky.
Solution: Accept a match when self and total time are the same. (James
McCoy, closesvim/vim#1972)
d21b16f3c0
With the old behavior, if a GUI makes a blocking request that requires user
interaction (like nvim_input()), it would not get any screen updates.
The client, not nvim, should decide how to handle notifications during a
pending request. If an rplugin wants to avoid async calls while a sync call is
busy, it likely wants to avoid processing async calls while another async call
also is handled as well.
This may break the expectation of some existing rplugins. For compatibility,
remote/define.vim reimplements the old behavior. Clients can opt-out by
specifying `sync=urgent`.
- Legacy hosts should be updated to use `sync=urgent`. They could add a flag
indicating which async methods are always safe to call and which must wait
until the main loop returns.
- New hosts can expose the full asyncness, they don't need to offer both
behaviors.
ref #6532
ref #1398d83868fe90
Having timeouts that are likely to fail incurs a penalty of waiting for
screen:expect() to fail, hence removing such small timeouts will speed
up the test on average.
Problem: The test for :profile is slow and does not work on MS-Windows.
Solution: Use the "-es" argument. (Dominique Pelle) Swap single and double
quotes for system()
c011a3d083
Avoid crashing or hanging when editing a file than contains ludicrously
long lines (more than 100,000,000 virtual columns).
The change is in plines_win_nofold, which is called by wrapping and folding
code. As a result, wrapping and folding may be done incorrectly when the UI is
capable of rendering more than 32000 characters at a time (tiny font).
fixes#2838