Comments (9)
Thanks for clarifying. It seems there is no solution currently that works for everyone due to plugin incompatibilities. Future readers should use whichever works for them as both methods are valid. I'm glad you have a solution that works!
from vim-matchup.
If you install https://github.com/mxw/vim-jsx it appears to work. Are there any specific issues?
from vim-matchup.
That works, thanks! Never needed this, out of the box experience was good enough to not install the 51th plugin 😁
from vim-matchup.
I tried now configure the 'tagnameonly' option:
let g:matchup_matchpref = {
\ 'html': { 'tagnameonly': 1, },
\ 'javascript.jsx': { 'tagnameonly': 1, },
\ 'javascript': { 'tagnameonly': 1, },
\ 'jsx': { 'tagnameonly': 1, },
\}
But this only work for HTML files, not for javascript. Do you have an idea why?
from vim-matchup.
It seems this file is enough. Because the whole plugins seems to break Onis syntax highlighting in functions in JSX.
from vim-matchup.
I don't know anything about oni but if I understand what you're seeing correctly, you should be able to just create your own file after/ftplugin/jsx.vim
containing:
setlocal matchpairs=(:),{:},[:],<:>
let b:match_words = '<\@<=\([^/][^ \t>]*\)\g{hlend}[^>]*\%(/\@<!>\|$\):<\@<=/\1>'
and then no need for the vim-jsx plugin. I'm not sure yet how to support tagnameonly
as an option.
from vim-matchup.
thanks for the code snippet
from vim-matchup.
Closing, as the user can always use the code in comment #35 (comment) or the following in their vimrc:
function! JsxHotfix()
setlocal matchpairs=(:),{:},[:],<:>
let b:match_words = '<\@<=\([^/][^ \t>]*\)\g{hlend}[^>]*\%(/\@<!>\|$\):<\@<=/\1>'
endfunction
let g:matchup_hotfix_jsx = 'JsxHotfix'
from vim-matchup.
Thanks @andymass for the comment. I don't know why, but the hotfix solution only works in plain nvim not in Oni. I stick with the after/ftplugin/javascript.vim
file solution which works in both.
from vim-matchup.
Related Issues (20)
- Feature: Option to set motion timeouts HOT 5
- [Feature Request]: Hybrid winbar/statusline option for offscreen matches HOT 11
- Treesitter integration broken on Javascript HOT 26
- Matchup error with treesitter in javascript files HOT 1
- Latest tree-sitter-c parser breaks vim-matchup HOT 1
- Add support for statuscolumn and foldcolumn in offscreen matches
- Error since last update → If treesitter matchup is enabled HOT 2
- Feature request: disable closing hint HOT 3
- offscreen doesn't display
- Wrong matching across strings HOT 2
- Crash when shell case is incomplete
- Matchup adding random characters on the beginning of the buffer. HOT 8
- clarification about lazy loading on keys HOT 6
- Incompatibility with nvim-cmp snippet completion HOT 8
- Matching string and char delimeters HOT 2
- how to activate ruby's `|` delimeter for block arguments HOT 4
- MatchParen(Cur) Highlight persists in virtual fold text
- invalid node type for language perl
- invalid node type for language bash HOT 5
- Svelte error was reported after treesitter's commit of svelte parsing HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from vim-matchup.