Hi there - I’m trying to dive into neovim and I can’t figure out how to do a certain thing in visual block mode…

Is there a way to extend a cursor/block column down from a long line through a series of shorter lines such that the short lines extend to meet the cursor (thus letting you enter text all in a column)? All I can seem to get it to do is have the cursor go to the end of each line, leaving a set of entry points staggered over a different column positions.

I think the feature I want is called Virtual Space, but I’m not sure. I am sure, however, that I use this feature extensively in Ultra Edit and Notepad++ (and mssql mgmt studio and visual studio but not vscode!)

Is there an add on? A plugin? (bonus points if the entry points remain highlighted once going into insert mode after the block is selected?) I’ve seen suggestions to try using the ‘virtualedit’ setting, but unfortunately, this doesn’t seem to solve the issue. It only adds text to lines that are already of length greater or equal to the column position of the block selection. Unless I’m missing something.

(Adding a link to a vscode issue begging for the same feature. It might help illustrate the concept. - https://github.com/microsoft/vscode/issues/13960 )

Would be grateful for help here. (bonus points is there’s a way to keep the cursor highlighted after the shift to insert mode…)

You are viewing a single thread.
View all comments View context
1 point

It would be faster to just select every end of line and add spaces and then do the edit & Trim later.

Bottom line is that the functionality doesn’t seem to exist in any useful way. Wish it did. I think Ultra Edit, notepad++ visualstudio and mssql mgnt studio must have spoiled me for other editors (in this respect). Even Geany does this (but oh, so janky…)

permalink
report
parent
reply

Linux

!linux@lemmy.ml

Create post

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word “Linux” in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

  • Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
  • No misinformation
  • No NSFW content
  • No hate speech, bigotry, etc

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

Community stats

  • 8.4K

    Monthly active users

  • 6.3K

    Posts

  • 172K

    Comments