You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Oddly enough, for me it's the other way around, sort of. With the plugin you link to, the "data-user" renders correctly, both in erb and html, as htmlArg. Without it, the -user part highlights as htmlTag instead.
One thing to check is your iskeyword and syn iskeyword settings. Try these commands in an eruby and html buffer:
:setiskeyword
:syniskeyword
You could also try installing this plugin: https://github.com/vim-scripts/SyntaxAttr.vim. With it, calling :call SyntaxAttr() will give you information about the syntax group under the cursor.
Even with that, I'm not sure if we'll be able to fix the issue, but it's a start to at least maybe figure out what might be wrong.
First things first, one problem is that https://github.com/othree/html5.vim adds hyphen to 'iskeyword'. This is fundamentally incompatible with not just Ruby (and thus ERB) but also embedded JavaScript, and possibly CSS too. Thus, I'd argue that this HTML syntax file has a fundamental design flaw.
But I'm not even sure that's the actual problem. While I can reproduce your ERB example, I can't reproduce your success with the plain HTML filetype. I can also produce a match with datafoo-bar=, which is invalid as I understand the HTML spec. Clearly, this particular HTML syntax file has issues.
Activity
AndrewRadev commentedon Mar 24, 2018
Oddly enough, for me it's the other way around, sort of. With the plugin you link to, the "data-user" renders correctly, both in erb and html, as
htmlArg. Without it, the-userpart highlights ashtmlTaginstead.One thing to check is your
iskeywordandsyn iskeywordsettings. Try these commands in an eruby and html buffer:You could also try installing this plugin: https://github.com/vim-scripts/SyntaxAttr.vim. With it, calling
:call SyntaxAttr()will give you information about the syntax group under the cursor.Even with that, I'm not sure if we'll be able to fix the issue, but it's a start to at least maybe figure out what might be wrong.
amerov commentedon Mar 24, 2018
fixed it by adding
autocmd BufRead,BufNewFile *.html.erb set filetype=eruby.htmlAndrewRadev commentedon Mar 24, 2018
Hm, that's interesting. I wonder if that doesn't override eruby syntax somehow. Well, either way, does that mean this issue can be closed?
tpope commentedon Mar 24, 2018
First things first, one problem is that https://github.com/othree/html5.vim adds hyphen to
'iskeyword'. This is fundamentally incompatible with not just Ruby (and thus ERB) but also embedded JavaScript, and possibly CSS too. Thus, I'd argue that this HTML syntax file has a fundamental design flaw.But I'm not even sure that's the actual problem. While I can reproduce your ERB example, I can't reproduce your success with the plain HTML filetype. I can also produce a match with
datafoo-bar=, which is invalid as I understand the HTML spec. Clearly, this particular HTML syntax file has issues.