ether / etherpad-lite

Etherpad: A modern really-real-time collaborative document editor.
http://docs.etherpad.org/
Apache License 2.0
16.11k stars 2.8k forks source link

Multi-line selection/editing #6433

Open kphunter opened 3 weeks ago

kphunter commented 3 weeks ago

name: Multi-line selection/editing about: Adding code editor capabilities to a co-authoring environment title: 'Multi-line selection/editing' labels: enhancement assignees:


Is your feature request related to a problem? Please describe. We would like to use Etherpads for co-authoring markdown meeting minutes. Etherpad has the co-authoring covered. We're interested in making it easier to author markdown-styled documents by using multi-line selection/editing capabilities commonly found in code editors.

Describe the solution you'd like It would be nice to add functionality that enables multi-line editing and multi-selection. For example a keyboard shortcut that enables "select next", "insert on multiple lines", and "duplicate line".

Describe alternatives you've considered

Additional context This is essentially a mashup of the multi-line editing/selection commonly found in IDE's and the co-authoring capabilities of a word processing interface

Plugin? Very possibly ;)

heldersepu commented 2 weeks ago

Interesting suggestion ... VS Code if I'm not mistaken uses monaco, I worked on a PR integrating that into Swagger-UI: https://github.com/swagger-api/swagger-ui/pull/9728

Here is the package https://www.npmjs.com/package/@monaco-editor/react That could be used for collaborating in more code like projects

heldersepu commented 2 weeks ago

@kphunter Can you try: https://monaco-react.surenatoyan.com/ see if that has all you need, ... something we can integrate

kphunter commented 2 weeks ago

@kphunter Can you try: https://monaco-react.surenatoyan.com/ see if that has all you need, ... something we can integrate

* I see the multi-line selection and edit (Alt+Click) working fine

* Ctrl+C on a line without selection copies the entire line an easy to duplicate a line

* Also the regex replace seem to be working fine

Fantastic - all the functionality that we would need is indeed there :). For reference on a Mac, I found these keyboard shortcuts work: