Thread: Re: [Fwd: Re: find dialog]
Cream is a free, easy-to-use configuration of the Vim text editor
Brought to you by:
digitect
From: Steve H. <dig...@mi...> - 2004-03-09 18:14:02
|
From: Elias Pschernig, Mar 9, 2004 4:50 AM > On Tue, 2004-03-09 at 05:55, Steve Hall wrote: > > [Cream and Vim Find/Replace dialogs] > Hm, my gvim doesn't seem to allow regexps. Or, at least, it has me > put a \ before any characters like [ ] . * to enable their special > meaning. You must have &magic turned off. > Still, in 99% of time, I just want to do what the gvim search allows > me. If you did web development work on Windows, you'd find the backslashes in paths and the ampersands in character equivalences troublesome. > If maybe the cream dialog could be modified to: Allow hitting Enter > instead of Alt-O to acknowledge the search, like gvim (yes, gvim has > a better shortcut in this one case right now!) - and also, like > gvim, multiple hitting Enter should jump to the next occurences. Sounds like you're on GNOME--all the button focuses are broken. On Windows, the buttons are focused so that Enter works as you say. > And then, something is wrong with the cream dialog, since it makes > this ugly alert-box sound all the time. Maybe the Dialog-Type can be > changed or something, since I think that's actually the most > annoying for me. Might try finding and changing the sound somewhere > in the Gnome settings I guess :) .. but for real alert boxes, it is > ok. So with these changes, it would already be better.. Ah, I think you're right on this. I don't see that we specify which kind of dialog the Find/Replace is to use, and it is apparently defaulting to Warning, rather than Info. I'll add it to the ToDo. [snip] > It is a great answer for me, I'll just use your solution 3 above for > now. So thanks, just what I hoped to get when posting here :) I should probably add that to the FAQ question regarding this topic. Thanks. -- Steve Hall [ dig...@mi... ] Cream... the Vim text editor in sheep's clothing! http://cream.sourceforge.net |
From: Steve H. <dig...@mi...> - 2004-03-09 20:46:04
|
From: Elias Pschernig, Mar 9, 2004 5:09 AM > On Tue, 2004-03-09 at 05:57, Steve Hall wrote: > > > > That flakiness is due to several factors: [snip] > > o Cream generally remembers tons of settings (last word searched > > for, states of wrap, invisibles, margins, tab expansion, > > indention, file positions, color schemes, etc.) Since Cream is > > script, and not binary, it takes some time to run through it > > all. > > > > o GNOME/GTK/X window rendering are slower than Windows. Granted > > they are doing about 10 times more, but the net effect feels a > > bit slower. Can't wait to try kernel 2.6. > > Yeah, the above two together must be what I'm seeing. But for me, I > prefer not remembering the window position at all, to remembering > it, but having to do it after the gvim window was already mapped. This was an early feature, but looking back, it may have been better to make the default off rather than on. Perhaps that could change. > > Be happy to get some help identifying places where we could gain > > some speed, feel free to offer suggestions on what tradeoffs you'd > > rather see. > > Well, I'd probably be happy if I could just disable it :) I.e. - I > don't think I ever had any special or help file or even multiple > files open in cream - rather I open one cream window per text file, > and use the gnome task bar for navigation between them. Mostly I > also maximize them all/leave at their assigned positions. So in my > case, I'd like cream to start as fast as gvim, without doing > anything besides remapping the keyboard, including useful things > like ctrl-t and so on. Never had to touch the font settings as well, > since I use the Gnome default font for everything. Window > position/fonts and so on is all ok in gvim for me already. But I can > see that some users may want the additional features. Maybe, if it's > easy to do, there could be some setting somewhere (without having to > edit config files), which parts of cream should get active. > Something like: > > [ ] Remove vim modes and remap to sane keyboard shortcuts > [ ] Cream menu > [ ] Cream statusbar > [ ] Cream search dialog > [ ] Save font changes > [ ] Remap window on startup > > Then I would, as my personal preference, only check the first 3 - but > not the last 3. I can of course see how the other features are useful - > just they cause that unwanted side-effect of re-opening every cream > window at startup, which I don't like, since I seem to be opening and > closing cream windows a lot these days :) Since the beginning, Cream has been a wholesale approach to usability. But it has been designed with modular components, so the selections you mention wouldn't be that difficult to implement. It would be pretty simple to provide these options through the cream-config file, the back end just needs to be written. We've got some major architectural changes in the works right now, but I'll consider looking over the speed ToDo items following. -- Steve Hall [ dig...@mi... ] Cream... the Vim text editor in sheep's clothing! http://cream.sourceforge.net |
From: BG - B. A. <BAr...@dy...> - 2005-12-09 12:37:40
|
Here are my user's latest observations, which seem to suggest that Cream is causing the slowdown, not Vim: On Thu, 2005-12-08 at 23:51 -0400, PM - Peter Mason wrote: > Hi Ben > > 33.1 is cream version, 6.3.0 is vim > > timings were actually a bit slower tonight. I was surprised at that > because PING to office was typically 95ms whereas the other night was > consistently 140ms plus. > > all below tests done with: > > - F:\S3W\Partners\Process\Overview of process.txt (a small 103 line > file) > - freshly opening the application and accessing above file > by clicking on its name in menu>file and having previously > opened that file in that session (i.e. so no issues with > my typing or on virus checker) > > On my laptop from home using networked F drive via vpn connection: > > - cream: > - until see the name of file on bottom screen 20 to 45sec > - until see lines on the screen 40sec to 70sec more > (fastest total time I received was 60 seconds and slowest was > 115seconds) > > - Word > - until see lines on the screen 11sec to 20 sec > > - VIM directly: > - 24 to 30 seconds > > Closing that f: file: > > - cream 12 to 17seconds > - vim 3 seconds > > Cream opening a file on my local c drive is 3 sec (and close is about a > second) so the problem is something that is slower when being done to a > remote disk. > > > ________________________________ > > From: BG - Ben Armstrong > Sent: December 8, 2005 9:15 AM > To: PM - Peter Mason > Subject: RE: [Fwd: Re: Cream 3x slower than M$ Word opening a > remote file] > > > Thanks. > > The command is: > > "C:\Program Files\Vim\vim63\gvim" -u NUL: > > File>Open > > Ben > > > > |
From: BG - B. A. <BAr...@dy...> - 2005-12-29 18:21:14
|
On Fri, 2005-12-09 at 08:37 -0400, BG - Ben Armstrong wrote: > Here are my user's latest observations, which seem to suggest that Cream > is causing the slowdown, not Vim: For posterity (since much of the discussion after this point was in private email and not archived in this list's archives): The problem turned out to be some of our own extensions to Cream, and *not* Cream itself. So the rest of you can sigh with relief now. MS Word is not faster than Cream, out of the box, when opening a remote file. I did, however, find another possible optimization for Cream file loading. If my test results are reproducible and explainable, I think it should go into Cream. Essentially, the enhancement involves deferring triggering the BufEnter event until after the file is fully loaded. If BufEnter is only triggered once, I don't understand why deferring it helps, but if it is triggered multiple times, I don't know yet where else it is triggered. So it bears a bit of further investigation before submitting a patch. Ben |
From: Steve H. <dig...@mi...> - 2005-12-23 16:00:43
|
> From: BG - Ben Armstrong, Dec 23, 2005 7:21 AM > On Thu, 2005-12-22 at 18:47 -0500, Steve Hall wrote: > > > > Not pretty, but it works for me. (Except that it appears Windows > > or Vim are adding a leading return on my clipboard register.) > > Well, with this patch applied on Linux (gvim 6.4-004 + cream 0.33.1) > sometimes paste works, and sometimes it produces a lowercase "x". I > have not been able to figure out why. That's the hack! For cases when not at line end: normal ix normal vh normal "*gP we insert an "x", select it, then paste over it. :) Looks like we need to add another hack: function! Cream_paste(mode) " paste selection from universal clipboard ("+) if a:mode == "v" normal gv normal "+P " correct position normal l " don't re-select, sizes may differ elseif a:mode == "i" if Cream_has("ms") && col('.') < col('$')-1 normal ix normal vl normal "*gP else let myve = &virtualedit set virtualedit=all normal `^"+gp let &virtualedit = myve endif endif endfunction This is about as bad as software design can get, isn't it? -- Steve Hall [ digitect mindspring com ] :: Cream... something good to put in your Vim! :: http://cream.sourceforge.net |
From: Steve H. <dig...@mi...> - 2005-12-24 03:53:15
|
On Fri, 2005-12-23 at 10:59 -0500, Steve Hall wrote: > > From: BG - Ben Armstrong, Dec 23, 2005 7:21 AM > > On Thu, 2005-12-22 at 18:47 -0500, Steve Hall wrote: > > > > > > Not pretty, but it works for me. (Except that it appears Windows > > > or Vim are adding a leading return on my clipboard register.) > > > > Well, with this patch applied on Linux (gvim 6.4-004 + cream > > 0.33.1) sometimes paste works, and sometimes it produces a > > lowercase "x". I have not been able to figure out why. > > That's the hack! > [snip] > > Looks like we need to add another hack: Nooo! Always fix the problem. Turns out, we can force a register to characterwise: function! Cream_paste(mode) " paste selection from universal clipboard ("+) if a:mode == "v" normal gv normal "+P " correct position normal l " don't re-select, sizes may differ elseif a:mode == "i" " fix win32 paste from app call setreg('+', '', 'a') let myvirtualedit = &virtualedit set virtualedit=all normal `^"+gP let &virtualedit = myvirtualedit endif endfunction Which should solve the problem without causing any more. (Not tested on Win32, please let me know as I won't have chance for many days.) -- Steve Hall [ digitect mindspring com ] :: Cream... something good to put in your Vim! :: http://cream.sourceforge.net |
From: Steve H. <dig...@mi...> - 2006-07-05 14:09:09
|
From: Ben Armstrong, Jul 5, 2006 8:17 AM > > FYI, I have attached the bug report I just filed on vim. It > contains further details I did not mention in my original report > here. Nice report. I was just able to reproduce this on a Windows network (no SMB), 1Mb file in plain gvim. -- Steve Hall [ digitect mindspring com ] :: Cream... something good to put in your Vim! :: http://cream.sourceforge.net |
From: Steve H. <dig...@mi...> - 2005-12-09 16:02:52
|
From: BG - Ben Armstrong, Dec 9, 2005 7:37 AM > > Here are my user's latest observations, which seem to suggest that > Cream is causing the slowdown, not Vim: Ben, The measurements indicate it takes Cream twice as long as Vim to open a remote file. Perhaps this is because it does an expand() on a file opened, meaning two views of the disk, whereas Vim does just one on the initial open. Or not. If your user is willing, we can try a number of tests to narrow down the problem. 1. Current directory is being set remote--use cream-conf.vim to set g:CREAM_CWD somewhere local (let g:CREAM_CWD = "C:/tmp"). 2. expand() of buffers path-filename is too slow--in the file cream-autocmd.vim, replace the line: autocmd BufEnter,BufWritePost * call Cream_buffer_pathfile() with let b:cream_pathfilename = "(unset)" 3. Various settings are causing delay--test each of the following settings (separately) in cream-conf.vim: " turn off redraw set lazyredraw " turn off swap set noswapfile " turn off undo set undolevels=-1 " ignore autocmds set eventignore=all " unload buffers set nohidden Hopefully 1 or 2 will fix this--let us know. -- Steve Hall [ digitect mindspring com ] :: Cream... something good to put in your Vim! :: http://cream.sourceforge.net |
From: Steve H. <dig...@mi...> - 2005-12-22 23:47:59
|
From: BG - Ben Armstrong, Dec 22, 2005 6:48 AM > From: PM - Peter Mason <PM...@dy...> > > > > If I copy multiple lines in Outlook, IE or on the CRT screen and > > paste them into Cream, the lines are inserted before the line on > > which the cursor is placed. I would expect them to be inserted at > > the current cursor position. If I copy multiple lines in Cream and > > then paste elsewhere in Cream those lines are inserted at the > > expected cursor position. > > This is a strange one. Any idea why this only happens with Outlook > -> Cream? It looks like Vim insists on pasting linewise when the register pasted contains a newline (or carriage return?). Could be a bug, I'll test on Linux and check with the lists. An easy hack fix for the time being (and if the list rejects the claim :) is to enter a character, select that character, and paste over it. The Cream fix will probably be to replace the current Cream_paste() function in cream-lib.vim with this one: function! Cream_paste(mode) " paste selection from universal clipboard ("+) if a:mode == "v" normal gv normal "+P " correct position normal l " don't re-select, sizes may differ elseif a:mode == "i" if col('.') >= col('$')-1 let myve = &virtualedit set virtualedit=all normal `^"+gp let &virtualedit = myve else normal ix normal vl normal "*gP endif endif endfunction Not pretty, but it works for me. (Except that it appears Windows or Vim are adding a leading return on my clipboard register.) -- Steve Hall [ digitect mindspring com ] :: Cream... something good to put in your Vim! :: http://cream.sourceforge.net |
From: BG - B. A. <BAr...@dy...> - 2005-12-23 12:22:07
|
On Thu, 2005-12-22 at 18:47 -0500, Steve Hall wrote: > Not pretty, but it works for me. (Except that it appears Windows or > Vim are adding a leading return on my clipboard register.) Well, with this patch applied on Linux (gvim 6.4-004 + cream 0.33.1) sometimes paste works, and sometimes it produces a lowercase "x". I have not been able to figure out why. Ben |
From: BG - B. A. <BAr...@dy...> - 2005-12-28 13:16:59
|
Steve Hall [mailto:dig...@mi...] wrote: > Nooo! Always fix the problem. Turns out, we can force a register to > characterwise: > > function! Cream_paste(mode) > " paste selection from universal clipboard ("+) > > if a:mode == "v" > normal gv > normal "+P > " correct position > normal l > " don't re-select, sizes may differ > elseif a:mode == "i" > " fix win32 paste from app > call setreg('+', '', 'a') > let myvirtualedit = &virtualedit > set virtualedit=all > normal `^"+gP > let &virtualedit = myvirtualedit > endif > > endfunction > > Which should solve the problem without causing any more. (Not > tested on Win32, please let me know as I won't have chance > for many days.) Hm. This doesn't work for me on Linux *or* Win32. On Linux, pasting does nothing. On Win32, pasting displays this error: Error detected while processing function Cream_paste: line 14: E353: Nothing in register + Ben |
From: Steve H. <dig...@mi...> - 2005-12-28 14:24:05
|
On Wed, 2005-12-28 at 09:16 -0400, BG - Ben Armstrong wrote: > Steve Hall [mailto:dig...@mi...] wrote: > > Nooo! Always fix the problem. Turns out, we can force a register > > to characterwise: > > > > function! Cream_paste(mode) > > " paste selection from universal clipboard ("+) > > > > if a:mode == "v" > > normal gv > > normal "+P > > " correct position > > normal l > > " don't re-select, sizes may differ > > elseif a:mode == "i" > > " fix win32 paste from app > > call setreg('+', '', 'a') The line above should be: call setreg('+', @+, 'c') > > let myvirtualedit = &virtualedit > > set virtualedit=all > > normal `^"+gP > > let &virtualedit = myvirtualedit > > endif > > > > endfunction > > > > Which should solve the problem without causing any more. (Not > > tested on Win32, please let me know as I won't have chance for > > many days.) > > Hm. This doesn't work for me on Linux *or* Win32. On Linux, > pasting does nothing. On Win32, pasting displays this error: > > Error detected while processing function Cream_paste: > line 14: > E353: Nothing in register + Sorry, forgot to pass along a more thoroughly tested update. -- Steve Hall [ digitect mindspring com ] :: Cream... something good to put in your Vim! :: http://cream.sourceforge.net |
From: Elias P. <el...@us...> - 2004-03-09 18:36:14
|
On Tue, 2004-03-09 at 18:56, Steve Hall wrote: > > If maybe the cream dialog could be modified to: Allow hitting Enter > > instead of Alt-O to acknowledge the search, like gvim (yes, gvim has > > a better shortcut in this one case right now!) - and also, like > > gvim, multiple hitting Enter should jump to the next occurences. > > Sounds like you're on GNOME--all the button focuses are broken. On > Windows, the buttons are focused so that Enter works as you say. > > Ah, yes, gnome 2.4. So hopefully at some point cream can just open normal dialogs like the ones in gvim, where button focus works. -- Elias Pschernig <el...@us...> |