Alternate column coloring does not work if user hits Space after last column, documentation does not say whether to explicitly select last column's width or leave it for csv.vim to decide
poetaman opened this issue · 4 comments
Let's say there are 3 fixed-width columns, and one used the wizard to set column widths. The keystroke to mark a column ending is <Space>. If I hit <Space> at some point after column 1 & 2, and then press <CR>, then things work well (all 3 columns are correctly detected, I check this by looking at alternate column coloring and column highlighting). Though this doesn't explicitly set the width of 3rd column, I would guess everything is considered till the end... It took me some while to get this right... I was hitting <Space> after all 3 columns to select their "widths", this breaks it somehow: column alternate coloring doesn't work.
In the following csv, |
indicates places where I hit <Space>, and $
indicates position where I hit both <Space> followed by <CR>. In this case alternate column coloring is broken.
Case-1:
| | $
vvrv dewfwe rf
a frv fe
rvbrrr reerbe frvrbr
rrr a affe
dfff qdf aaaadff
And this case is fine:
Case-2:
| $
vvrv dewfwe rf
a frv fe
rvbrrr reerbe frvrbr
rrr a affe
dfff qdf aaaadff
Screenshots:
If :let g:csv_highlight_column = 'y'
is not executed before :CSVFixed
Case-1: (this is the only broken case! see column colors don't alternate)
If :let g:csv_highlight_column = 'y'
is executed before :CSVFixed
then there is no problem, both Case-1 and Case-2 foreground and background colors are fine:
NOTE
·
·
You should mention in the wizard documentation that users should hit <Space> only between columns, and not after last column, as the wizard then thinks that there is one more column at the end (which will be completely empty)
·
·
NOTE_END
Oh wow, you have created a lot of issues here lately. I will have a look and work myself through it slowly. Currently I don't have much time to spend on any hobby projects, so please be patient.
@chrisbra I have been playing with https://github.com/andmarti1424/sc-im. It has vim bindings, among other amazing features. Given Vim now implements :terminal
& given sc-im has a lua interface, it might be worth considering to support (by using, donating, collaborating on it) than maintaining this. Vimscript is slow as we are discussing it there: #178 (comment)
I know sc-im is an alternative. But for one I am not sure how well this will work on Windows (not sure if there exists binaries) and I am not interested in developing in lua.
I am already overloaded with my current Open Source work, I do not have any resources for contributing on other projects. I hope Vim9 script will improve performance and I rather like to have a complete embedded project within vim, that does not rely on external tools.