You can always use `gj`/`gk` instead of `j`/`k` to move down/up a visual (soft-wrapped) line. If you find it inconvenient, you can always remap bindings to work however you like [0]. You can even limit the mapping to specific file type (e.g. markdown).
As for copying to other formats, I stick to 80-character line length limit, so when I need to copy markdown text somewhere else I simply copy it from a rendered markdown document.
As for copying to other formats, I stick to 80-character line length limit, so when I need to copy markdown text somewhere else I simply copy it from a rendered markdown document.
[0] https://vim.fandom.com/wiki/Move_cursor_by_display_lines_whe...