4 ms·
How do I select Lines 3, 16, 39, 50, 230, 420, 1302, and 2300 at random columns of my needs? With a mouse, I can cntrl/cmd + click the line I am interested in,
by lighthazard 9y ago
How do I select Lines 3, 16, 39, 50, 230, 420, 1302, and 2300 at random columns of my needs? With a mouse, I can cntrl/cmd + click the line I am interested in, wherever I am interested, and do any manipulation I want. Can VIM do this easily? I've never tried.
- bananicorn 9y agoMaybe you're looking for visual block mode?[0] Or the multi-cursor plugin[1]? I haven't tried the latter, ut I really like visual block mode for certain things. It's amazing how much new stuff I learn about vim every day... And I'm nowhere near done :) [0]https://stackoverflow.com/questions/21806168/vim-use-ctrl-q-for-visual-block-mode-in-vim-gnome#21808952 https://stackoverflow.com/questions/21806168/vim-use-ctrl-q-... [1]https://github.com/terryma/vim-multiple-cursors https://github.com/terryma/vim-multiple-cursors
- aoloe 9y agoit depends on what you want to do... but my general reflex is: - go to line 3 - start recording a temporary macro ("qq" in my habits) - do the editing - stop the macro ("q") - go to the line 16 with 16gg and reply the macro with @q - 39gg@q - 50gg@q - ...
- bananicorn 9y agothis. Macros are something I've never used in other editors, but in vim they're simply... fun to use. Well, if used for the right purpose.
- deleted 9y ago[deleted]
- dredmorbius 9y agoAnd, in all earnestness: why are you doing that? Is there something about those specific line numbers intrinsically? Is there a pattern or specific text on those lines? Is there a relationship to surrounding text, above or below? The great thing about vim, or a set of similar tools (ed, ex, sed, awk, perl, cut) is that you can address the text in terms of the text itself. Search by text or regex, move within a line or between lines. Replace text or modify elements, preserving some and changing others. Or, if I know in advance that I've got to deal with the 8 specific lines mentioned but without otherwise addressible context: 3G <edit stuff> 16G <edit stuff> ... 2300G <edit stuff>. That's not elegant, but it's doable and fast.
- lighthazard 9y agoLine numbers were irrelevant, just a set of random numbers. There is no pattern to the text (say it's a set of words that needs to be edited to become the same). I guess this is more related to working with large blocks of text rather than code. Someone mentioned macros, I'm going to give that shot.
- dredmorbius 9y agoWhat's the characteristc of the text and how do you identify it? Again, search, paragraph and sentence navigation, and word nav are intrinsic to vim, and fast. If you know what you're looking for, "/<pattern>" and you're there. With incremental search ("set ic" in your ~/.vimrc) thats often a very few keystrokes.
- ATsch 9y agoWhat are you trying to accomplish with this? If you are trying to replace multiple cursors, the approach would be very different. What I'd do is record a macro for the edit on one line into q, and then apply it to all relevant lines with a regex, e.g. g/regex/norm @q