diff options
author | Justin M. Keyes <justinkz@gmail.com> | 2016-09-30 02:33:50 +0200 |
---|---|---|
committer | Justin M. Keyes <justinkz@gmail.com> | 2016-12-09 18:51:17 +0100 |
commit | 97204e1cef4f922cc1f8e67f8a1f2f695d7da826 (patch) | |
tree | dac7ed60f3f1f41a9a320da2b7b6774da202f26f /src/clint.py | |
parent | 043f85210a06168e36f103950897e00918504f6f (diff) | |
download | rneovim-97204e1cef4f922cc1f8e67f8a1f2f695d7da826.tar.gz rneovim-97204e1cef4f922cc1f8e67f8a1f2f695d7da826.tar.bz2 rneovim-97204e1cef4f922cc1f8e67f8a1f2f695d7da826.zip |
os/shell: Throttle :! output, pulse "..." message.
Periodically skip :! spam. This is a "cheat" that works for all UIs and greatly
improves responsiveness when :! spams MB or GB of output:
:!yes
:!while true; do date; done
:!git grep ''
:grep -r '' *
After ~10KB of data is seen from a single :! invocation, output will be skipped
for ~1s and three dots "..." will pulse in the bottom-left. Thereafter the
behavior alternates at every:
* 10KB received
* ~1s throttled
This also avoids out-of-memory which could happen with large :! outputs.
Note: This commit does not change the behavior of execute(':!foo').
execute(':!foo') returns the string ':!foo^M', it captures *only* Vim
messages, *not* shell command output. Vim behaves the same way.
Use system('foo') for capturing shell command output.
Closes #1234
Helped-by: oni-link <knil.ino@gmail.com>
Diffstat (limited to 'src/clint.py')
0 files changed, 0 insertions, 0 deletions