Hi, I don't use the functionality and I appreciate any attempt of removing complex code.
"Simple is better than complex. Complex is better than complicated." Thanks On Monday, August 18, 2014 1:54:01 PM UTC+3, Edward K. Ream wrote: > > At present, when entering command names (but *not* file names) in the > minibuffer, hitting tab repeatedly cycles through the list of names shown. > > I would like to eliminate this "Easter Egg": it's clearly not needed and > it greatly complicates truly important code, namely k.getArg. > > Worse, the present code doesn't work well if the user should happen to hit > backspace to increase the number of completions shown. In that case, the > Easter Egg fails "forever", that is, until the user hits Ctrl-G or Return. > Apparently, either nobody is using this Easter Egg, or nobody has ever > noticed the bug, or they have noticed the bug and have given up on Leo as a > result. > > ===== The code > > Revising k.getArg is part of the project to eliminate the first <return> > in vim-mode commands such as :r<return><file-name><return> > > Yesterday I refactoring k.getArg so that it uses a helper GetArg class. > This is an important encapsulation of complex code. It moves lots of state > variables out of the KeyHandlerClass class. Most of this state involves > the Easter Egg. > > The new_arg switch at the start of leoKeys.py enables/disables the new > code. As of the latest rev, the code appears to work identically, > regardless of this switch. In particular, the bug in the Easter Egg exists > regardless of the value of new_arg. Hehe. > > ===== The plan > > My plan for this morning is to drop the Easter Egg in the GetArg class > only. I expect a substantial collapse in complexity: the new code will > look very much like the corresponding (and much simpler) code in the > FileNameChooser class. Imo, this collapse in complexity is far more > important than the Easter Egg. > > I'll keep a copy of the present GetArg class in the "attic" leoNotes.py > and revert to the old code in the unlikely event that somebody can convince > me that the Easter Egg is essential. Good luck with that. I'll give > weight only to those who actually use the Easter Egg at present. > > Note that the new_arg switch is a temporary safety net. As usual with > such switches, it will be eliminated after the new code has been tested for > a few days. > > Your comments, please, and quickly. > > Edward > -- You received this message because you are subscribed to the Google Groups "leo-editor" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/leo-editor. For more options, visit https://groups.google.com/d/optout.
