Comments (5)
Sounds reasonable, but I’ll have to think about whether it’s feasible.
The fundamental issue is that vim-css-color (mostly1) isn’t doing the colouring, Vim’s syntax highlight engine is. What vim-css-color does is look for colour names in the file and set up highlight rules for them, so that you don’t have to have all 24 million RGB colours predefined in the colour scheme, along with every possible syntax to write any one of these colours. But once a highlight rule is set up, it becomes part of Vim’s syntax highlighting; vim-css-color is no longer involved.
So to toggle the colours is more work than just pausing vim-css-color. Toggling them off will require actively removing the highlights and toggling them back on means those have to be restored. And Vim doesn’t make it terribly nice to modify the highlight rules at runtime. (The ugliest part of vim-css-color is the part that sets those up.) I’ll have to think of some trick to make this work reliably without adding a lot of code.
1 If you have cursorline
and/or cursorcolumn
set, it does override colours for the current line and/or column, respectively.
from vim-css-color.
Just about the only thing I know about working with highlights in Vim is that it's non-trivial. If in the unlikely event I come up with a trick to do this, I'll let you know.
from vim-css-color.
I've got a work around to make vim-css-color works with large css files, since it's can't be toggled, I just disabled the color highlight by remove the file css.vim, and made a comand Color
to enable the highlight, code like this:
command! -nargs=0 Color :call s:HighlightColor()
function! s:HighlightColor()
if &ft =~# '\v(css|html)'
call css_color#init('css', 'extended', 'cssMediaBlock,cssFunction,cssDefinition,cssAttrRegion,cssComment')
endif
redraw
endfunction
I also have the line
syntax sync minlines=200
In my .vimrc to improve the highlight speed.
from vim-css-color.
Actually this was waaaaaay easier than I thought it was going to be. D’uh!
So now you can :call css_color#toggle()
to turn it on and off in a buffer. Of course you can bind that to some mapping.
Sorry it took so long until my flash of the blinding obvious! 😄 Share and enjoy.
from vim-css-color.
Thanks!
from vim-css-color.
Related Issues (20)
- E121: Undefined variable: b:css_color_pat in netrw
- Neovim tree sitter support HOT 20
- support for svelte files HOT 2
- Plugin is not compatible with nvim-treesitter HOT 1
- No colors in .h files in neovim
- It would be nice to support SVG files HOT 2
- create_matches function takes 1.4 s on large nix files
- NeoVim tree sitter support HOT 1
- Error with files with no highlightable targets in Vim9 HOT 4
- Erroring in java file HOT 2
- Add support for LaTeX? HOT 1
- Add support for template strings
- Does not work HOT 5
- incompatible with nvim-treesitter HOT 2
- [Feature request]: provide a command to make it asynchronous.
- truecolor terminals and termguicolors HOT 5
- Incorrect Highlighting of C Macros
- How to enable color highlighting for strings in CSS
- Error in C comments
- Support CSS Color Module Level 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-css-color.