Description
xed - Version 3.6.6
$ cat /etc/linuxmint/info | grep DESC
DESCRIPTION="Linux Mint 22 Wilma"
Hello,
This feature request is an iteration on a similar proposal I made 10 years ago for the Pluma editor (GitHub issue #93). The same need exists in the Xed editor, as column editing is an indispensable tool for programming and text manipulation tasks.
While programming, developers frequently need to:
- Indent or un-indent multiple lines by adding or removing spaces.
- Comment out or remove comments from blocks of code.
- Edit variable names or perform repetitive changes on multiple lines simultaneously.
Please implement a Column Mode in Xed that provides the following functionalities:
Column Insert Mode:
- Allow the user to insert characters (e.g., spaces or comment markers) along a vertical selection with zero-width.
Useful for consistent indentation or adding comments across multiple lines.
Column Delete Mode:
- Enable deletion of characters in a vertical selection, such as removing spaces used for indentation or comment markers.
Column Replace Mode:
- Support replacing all characters in a vertical selection with a new entry, applying the replacement uniformly across all selected rows.
Column editing is a feature that is often underappreciated until experienced. Many editors, including Emacs, where I used this over 25 years ago already, but also geany or notepad++ and Visual Studio (2010 onwards), provide robust column editing tools. This functionality significantly increases productivity, especially for developers, by reducing repetitive manual edits and ensuring consistency.
Demonstration:
A detailed example of this functionality can be seen in this video titled "Box Selection and Multi-Line Editing Demo":
https://www.youtube.com/watch?v=qp2WuJ2rEE4
The addition of a column mode to Xed would greatly enhance its utility for programming and other text-editing tasks.
I would suggest that ALT-SHIFT with the arrow keys and the mouse could be used as a keyboard shortcut to use column mode.
Thank you
Best regards
Max