Performance
sfx2k opened this issue · comments
First I want to say thanks for this great plugin!
Unfortunately there is an issue with yanking a whole line (yy).
The bigger the file, the longer it takes.
But: if the line that should be yanked is in the upper part of the file it takes more time then when it is in the lower part of the file!
The further up, the longer it takes.
Example:
xyz.txt has 5000 lines.
Yanking line 5000 takes 1 millisecond (immediately)
Yanking line 1 takes about 1 second.
It would be nice, if you can fix that.
If you need further information - let me know.
I cannot reproduce it. Can you give me a example file?
In addition, let me know the vim version and output of :set re?
I can reproduce it with every file, no matter what filetype...
regexpengine=0
I have deactivated all Plugins (except flashy, vim_operator and pathogen)
VIM - Vi IMproved 7.4 (2013 Aug 10, compiled Aug 30 2015 20:48:27)
MS-Windows 64-bit GUI version with OLE support
Included patches: 1-843
Compiled by sfx@SINSPIRON
Huge version with GUI. Features included (+) or not (-):
+acl +byte_offset +cmdline_info +cursorshape -ebcdic +file_in_path -hangul_input +libcall +menu +multi_lang +persistent_undo +quickfix +smartindent +tag_binary +textobjects +visual +windows
+arabic +cindent +comments +dialog_con_gui +emacs_tags +find_in_path +iconv/dyn +linebreak +mksession -mzscheme -postscript +reltime -sniff +tag_old_static +title +visualextra +writebackup
+autocmd +clientserver +conceal +diff +eval +float +insert_expand +lispindent +modify_fname -netbeans_intg +printer +rightleft +startuptime -tag_any_white +toolbar +viminfo -xfontset
+balloon_eval +clipboard +cryptv +digraphs +ex_extra +folding +jumplist +listcmds +mouse +ole +profile -ruby +statusline -tcl +user_commands +vreplace -xim
+browse +cmdline_compl +cscope -directx +extra_search -footer +keymap +localmap +mouseshape +path_extra +python/dyn +scrollbind -sun_workshop -tgetent +vertsplit +wildignore -xterm_save
++builtin_terms +cmdline_hist +cursorbind -dnd +farsi +gettext/dyn +langmap -lua +multi_byte -perl +python3/dyn +signs +syntax -termresponse +virtualedit +wildmenu +xpm_w32
system vimrc file: "$VIM\vimrc"
user vimrc file: "$HOME_vimrc"
2nd user vimrc file: "$HOME\vimfiles\vimrc"
3rd user vimrc file: "$VIM_vimrc"
user exrc file: "$HOME_exrc"
2nd user exrc file: "$VIM_exrc"
system gvimrc file: "$VIM\gvimrc"
user gvimrc file: "$HOME_gvimrc"
2nd user gvimrc file: "$HOME\vimfiles\gvimrc"
3rd user gvimrc file: "$VIM_gvimrc"
system menu file: "$VIMRUNTIME\menu.vim"
Compilation: cl -c /W3 /nologo -I. -Iproto -DHAVE_PATHDEF -DWIN32 -DFEAT_CSCOPE -DFEAT_XPM_W32 -DWINVER=0x500 -D_WIN32_WINNT=0x500 /Fo.\ObjGOYHAMD64/ /Ox /GL -DNDEBUG /Zl /MT -DFEAT_OLE -DFEAT_GUI_W32 -DDYNAMIC_ICONV -DDYNAMIC_GETTEXT -DFEAT_PYTHON -DDYNAMIC_PYTHON -DDYNAMIC_PYTHON_DLL="python27.dll" -DFEAT_PYTHON3 -DDYNAMIC_PYTHON3 -DDYNAMIC_PYTHON3_DLL="python34.dll" -DFEAT_HUGE /Fd.\ObjGOYHAMD64/ /Zi
Linking: link /RELEASE /nologo /subsystem:windows /LTCG:STATUS oldnames.lib kernel32.lib advapi32.lib shell32.lib gdi32.lib comdlg32.lib ole32.lib uuid.lib /machine:AMD64 gdi32.lib version.lib winspool.lib comctl32.lib advapi32.lib shell32.lib /machine:AMD64 /nodefaultlib libcmt.lib oleaut32.lib user32.lib /nodefaultlib:python27.lib /nodefaultlib:python34.lib xpm\x64\lib\libXpm.lib /PDB:gvim.pdb -debug
Ok, I got it:
it only happens, if cursorline is set!
Any ideas?
it only happens, if cursorline is set!
Thanks! I can reproduce it. I'll look into it.
I don't know why but it seems :redraw
takes too much time.
I fixed it with 75e03b4.
Can you update the plugin?
Works fine now!
Thanks a lot :)