Comments (8)
@matu3ba That seems like an awesome feature so I'll definitely look into adding it. I just have to figure out how, so it will probably take a few days. If you happen to know how to do it, any help, suggestion or pull request is welcome.
@metalelf0 My plan for this colorscheme in the future is to make it as extensible and configurable as posible. For example being able to toggle theme variations, italic comments, bold variables, underlined error messages etc. I think this is pretty cool since it allows for the user to have more control over the theme and set it up in his/her taste. Later today, I will set up another repo. It will be a clone of this one, but with standalone themes instead of a style variable so you can just use colorscheme oceanic to set a standalone theme. If you want, you can clone it and post it as your own theme to have on your profile.
from material.nvim.
@metalelf0 Here is the new repo: https://github.com/marko-cerovac/material-config-free.nvim you can now just use set colorscheme material-darker to set the darker variant. I've also left the ability to toggle italic comments, italic keywords(while, for, if, else..) and italic function names in the theme and they are off by default.
@matu3ba Until I make this option available (I have some exams coming up in the next couple of days, so I'm really busy), this new repo seams like a good temporary solution, until i can do it the right way. You can map keys to execute something like ":colorscheme material-lighter" and switch themes on the fly.
from material.nvim.
Thanks for the compliment.
Well, I haven't thought about it that much.
The material theme that I was using also did it like this, as well as the original VS Code material theme, so i thought I'd do it the same way.
The good thing in all od this is that there is no code repetition. So for example the color value of the background isn't defined 6 times(once for every style)
Instead it's a basic if-else statment that says:
If material_styles is equal to 'deep ocean'
Blue = #somecolor
Red = #somecolor
...
Elseif material_styles is equal to 'darker'
Blue = #some_other_color
Red = #some_other_color
...
Then, i can just say
g:Cursor = red
g:LineNr = blue
...
If you want, I can create stand-alone colorschemes or I can remove other colors and send you the code so you can make a repo and publish it.
from material.nvim.
@metalelf0 Colorbuddy allows dynamic setting of colors, so its very nice to adjust the colorscheme to you environment light settings.
@marko-cerovac Can you wrap the setup in a function, so that I can put keymaps or commands for that? Would be also very nice. if you would make this as demo. ;-)
from material.nvim.
@matu3ba : yeah, I'm not against different color variations. They are all good. I'm just asking about the opportunity of using a custom variable to choose between colorschemes, which I'm not a big fan of.
@marko-cerovac , yes, I understand it might be better from a dev perspective to have less repetition, but as an user I think it doesn't add any benefit. In the end, it would just be a matter of configuring the pipeline to spit out six colorschemes instead of one, and I could use your colorschemes just like the vast majority of others, without having to set a custom variable.
from material.nvim.
@marko-cerovac thanks a lot for your proposal, I won't hijack your work and post it on my profile :) Maybe you could consider setting up a branch of this repo instead of creating a new one? This could also make it easier to keep them aligned.
from material.nvim.
Some more inspiration, so you dont need to write the rules for every language and you could even async load the color groups, lol. I dont like the setup of zephyr though. And more colors are cooler. :)
from material.nvim.
@matu3ba I've added two functions called change_style() and toggle_style(). The first one takes a style name as a parameter and switches to that style. For example:
lua require('material').change_style('lighter')
The second one takes no parameters and simply toggles the styles.
The function can be called like this:
lua require('material').toggle_style()
The best thing to do is to add key mappings to these functions:
nnoremap :lua require('material').toggle_style()
These instructions are also now in the README
from material.nvim.
Related Issues (20)
- Error in highliting of rust attributes HOT 2
- Inactive windows dim effect seems "reversed" for lighter style HOT 3
- Relative lines are barely readable in lighter mode (and contrast is also less good in palenight). HOT 1
- Enable theme selection through :Telescope colorscheme HOT 1
- Telescope too dark HOT 1
- New material `colors.editor.fg_dark` too dark HOT 3
- Add vim-treesitter-context support HOT 4
- Add highlights for flash.nvim HOT 10
- Tab colours aren't in Material colours HOT 2
- List chars HOT 2
- Indent-Blankline V3 support HOT 1
- Plugin doesn't work at all; nothing is highlighted HOT 7
- The colors are different from the colors in vscode HOT 1
- plugin breaks kitty protocol (existing workaround) HOT 2
- Automatic enabling of plugin support HOT 3
- Can't see text in `neotree` if not run `colorscheme material-darker` HOT 5
- How can I disabled underline like this? HOT 3
- tree-sitter highlights broken since introduction of Neovim (nightly) default colourscheme HOT 3
- Noice colour scheme not working HOT 2
- captures changed in nvim-treesitter HOT 3
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 material.nvim.