4 ms·
One functionality I find missing in all modern code editors is - repeat action. This was present and extremely useful in, now extinct, Convergent Technology O
by kkotak 10y ago
One functionality I find missing in all modern code editors is - repeat action. This was present and extremely useful in, now extinct, Convergent Technology OS (CTOS) resident editor. In brief, it allowed users to repeat all the actions they performed on one-line of code, on another line of code. It's amazing how productive you can be when you have that feature. This goes beyond find & replace; It also helps format code, insert, replace multiple parts of the line, etc. all with one keystroke.
- makmanalp 10y agoYep - this is "." in vim and it saves me so much work all the time.
- hobofan 10y agoI don't know what you are talking about. Every major editor I know has that functionality.
- oblio 10y agoIt does? I wouldn't mind finding out how Sublime, Atom and VSCode do it.
- hobofan 10y agoAtom has [0] which I use from time to time. I don't use the other two, but as far as I understand Sublime has support for macros built-in, and VS Code is still pretty young and will probably get something similar once its ecosystem grows. I rarely use ad-hoc recorded macros. Like the author of Kakoune, I think multi-cursors feel much more natural. [0] https://atom.io/packages/atom-keyboard-macros https://atom.io/packages/atom-keyboard-macros
- lisivka 10y agoI'm not a huge fan of vim: I used vim a lot for a 1,5 year, then switched to IDE with refactoring (CodeGuide was one of the first IDE's with refactoring for Java). When a IDE supports refactoring, e.g. it can swap order of arguments in calls to function, it helps a lot. But when the IDE does not support refactoring of language of your choice, vim can help to do a refactoring of code manually much faster. For example, I may use some shell commands to refactor bunch of js/html/css/java/sql code with single or few find and perl -pie commands, all at once. When I need to do an another refactoring, I can pickup previous refactoring command from shell history or I even can put command into script, so I will have my own refactoring tool. Regular expressions are fragile when used with code, but I can undo changes with git and repeat. They are saving lot of typing, so I prefer to spend few minutes in console than a hour in IDE. Vim has lot of commands built-in, so it's even easier to do a refactoring in Vim, but IDE's built-in refactoring is still better, when available.
- hobofan 10y agoReply to the wrong comment? Regardless, I think that the missing refactoring capabilities of code editors are only a symptom of missing command line tools for refactoring. Hell, very few languages have good open source tools for linting and static analysis which is more or less a required building block for good refactoring tools.
- lisivka 10y agoI'm trying to argue why Vim may be better than regular editor with my own experience, which is not strongly sided. BTW. I also found that when I cannot use full size keyboard, e.g. phone, tablet, or netbook, vim is usable, while regular editor is hard to use because of lack of essential keys, but I rarely use phone for development.
- Cpoll 10y agoThis sounds like macros? Of course, the problem with macros is that you sometimes realize you should have hit "Record" only after you've completed the action.
- JohnDotAwesome 10y ago> the problem with macros is that you sometimes realize you should have hit "Record" only after you've completed the action. Happens to me all the time. But if using a macro was actually worth the effort in the first place, then it's probably still worth the effort to undo and record
- notheguyouthink 10y agoDefinitely. In fact because of that "blind actions" that Vim has, and Kakoune seems to be trying to fix, i often record macros multiple times. I'll make the macro, but the realize it doesn't fit all cases i wanted it to.
- buovjaga 10y agoI guess command history could be used in this case as the source for the recording.
- oftenwrong 10y agoI use vi macros for that
- laurent123456 10y ago> It also helps format code, insert, replace multiple parts of the line, etc. all with one keystroke. Can't you achieve all this via multiple selections (eg. ctrl+d in Sublime) and acting on them?