Hi Kilon, Sorry for the late reply. The Cmd-L is useful as soon as you evaluate code in your code browser. Consider the following scenario that I am very sure you am facing every single day:
1 - Define a method on a class: -=-=--=-=--=-=--=-=- foo ^ 1 + 2 -=-=--=-=--=-=--=-=- 2 - It often happen that you want to know the value of some expression in the method body. Select "1 + 2" and press Cmd-P. It prints you the value 3, great. 3 - Click on a different method or close the browser. And you get this stupid question "Code has been modified. What do you want to do". Isn't it obvious what I want to do? The browser is asking me whether I may want to accept the method, even if it is not compilable (i.e., the code "^ 1 + 2 3" is not proper smalltalk). So stupid it is. Even worse: if you press backspace to remove the 3, the code browser is still notifying you the source code has changed, even if the content is the same. This is so frustrating. I am sure you are facing this questions many times a day. Cmd-L is here to help (but it poorly helps, I agree). After you have evaluated "1 + 2" and have "3" displayed, you can press Cmd-L to restore the original method content and makes the browser forget that I have modified the method body. No more question is asked when I delete the browser or select a different method. Now, making Cmd-L raises a question would simply makes the bidding not useful at all. Igor showed me this bidding, which makes me suspect he uses it since he knows it. I think Lukas was using it as well. Making the browser ask yet another question such as "your content is about to be deleted, are you sure you want to continue" does not make the environment more intelligent in my opinion, but just more talkative. As your original post suggest, the text editor needs improvement. For example, if Cmd-L is really disturbing you, then remove it, but make sure the browser does not complain when the text content is the same than the original method (or class definition). This would be great actually. On a slightly different front, I have seen that the create temporary method is broken. Last time I've seen this was many years ago... Alexandre On Oct 14, 2013, at 10:05 AM, kilon <theki...@yahoo.co.uk> wrote: > Definetly not a regression. If you make a mistake your work is gone, bye bye, > hasta la vista baby. Personally I dont use, or see myself using CMD+L on a > daily basis. Its highly unlikely that I will code in several lines of code > and will want to discard them completely. In 99/100 cases I just slightly > change, edit the code. So we definitely have a different workflow on this > one. > > You are much better coders than me, so I understand you may use that feature > heavily. > > Undo was my first goal too, but trying to understand how undo is implemented > felt like hammering my face on a wall. The amount of spaggetication in the > code is beyond understanding for me, on the 1 hour I invested of finding a > bug fix. So I spent like 50 minutes trying to understand undo, failed > miserably, spent rest 10 implementing the dialog box. And yes I am not very > smart or good coder. > > I will try to take another look at undo today and have another go at this, > but If I found no solution I will leave the fix as it is. Chances are I wont > figure this out, so don't hold your breath. > > Bottom line is that in case of proper software the user should not allowed > to do things that are unrecoverable without a prompt. So not implementing a > fix at all, at least for me is considered very bad. But this is just my > personal opinion. > > > > -- > View this message in context: > http://forum.world.st/bug-4993-Typing-cmd-L-cancel-all-typing-and-we-can-t-undo-it-Terminated-tp4714154p4714314.html > Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com. > -- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel http://www.bergel.eu ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.