Skip to content

Latest commit

 

History

History
140 lines (100 loc) · 6.88 KB

README.md

File metadata and controls

140 lines (100 loc) · 6.88 KB

What42's Rust Theme (Light)

Version  Rating  Installs  Downloads

This is my personal VS Code theme, focused mainly on readability. It was originally inspired by / made because of CodeStyle's videos

Many color themes appear to prioritize looks and colors over readability, but not this one. I've combined every strategy that I know of to create the fastest reading code I've ever seen. And this isn't based on theory, I put every change and strategy to the test with an obscene amount of trail and error. The main strategies / rules employed are 1: dark text on a light background, 2: importance / noticeability matching (important items should stand out and vice-versa), and 3: distinct colors to break up otherwise monolithic text. Nearly every color theme breaks one or both of the first two rules, because if you think about it, they strongly conflict with the last rule for many varied reasons. It's almost impossible to fulfill all three rules at the same time, but I think I've been able to do it.


Example

These images use JetBrains Mono and Material Icons


Goals of this theme

Readability

        Text should be dark and should contrast against the background
        Nothing should be distracting

Bring attention to the right things

        If it isn't important, it shouldn't stand out
        If it's possibly bad (mut, self, etc), it should stand out as bad

Pleasantness

        It should be modern, colorful, simple, and just generally pleasant

But it's not just that, this color theme has a secret super power: you forget that you're using it.

Are you tired of constantly searching for a perfect theme? Are you tired of the nagging feeling that the theme you're using might not be the best you can get? Well, I'm proud to say that I rarely ever think about this theme, despite the fact that I'm constantly using it. When I create something that I'll actually use, one of my goals is to make it unobtrusive so you can focus on what's actually important, and that fact that I rarely every update this is proof that I've achieved my goal.


Entire screen example   (Blue and White themes)

Entire screen example


First-class languages

      Rust
      Lua
      Glsl
      JSON
      Toml
      Markdown
      C#
      XML

(Many more languages have some support, but not much)

Links

        Changelog
        Marketplace
        GitHub


Additional customizations

Suggested settings:

{
	"terminal.integrated.minimumContrastRatio": 2.5, // lower is more colorful, higher is easier to read
	"files.autoSave": "afterDelay",
	"editor.acceptSuggestionOnEnter": "off",
	"editor.lightbulb.enabled": false,
	"editor.insertSpaces": false,  // use tabs instead of spaces
	"editor.detectIndentation": false,
	"editor.cursorBlinking": "solid",
	"editor.fontSize": 14.5,
	"editor.letterSpacing": 0.1,
	"editor.lineHeight": 1.3,
	"editor.padding.top": 8,
	"editor.fontLigatures": true,
	"workbench.tree.indent": 10,
	"editor.comments.insertSpace": false,
	"terminal.integrated.smoothScrolling": true,
	"workbench.list.smoothScrolling": true,
	"terminal.integrated.smoothScrolling": true,
}

Set your own colors:

{
	"workbench.colorCustomizations": {},
	"editor.tokenColorCustomizations": {},
	"editor.semanticHighlighting.enabled": true, // these last two are optional
	"editor.semanticTokenColorCustomizations": {},
}

To edit these into your settings, you can open your settings.json file by opening command palette (f1) and selecting "Preferences: Open User Settings (JSON)".


Suggested programs:

        f.lux (darkens screen at night)


Other themes to check out:

        Amethyst Themes (dark only)
        Winter Is Coming (dark and light)
        Mimesis (light only)
        Yet Another Solarized Theme (dark and light)
        Cerulean (dark and light)
        Kary Pro Colors (dark and light)
        MagicUser (dark and light)
        Lightning (dark and light)




I can't guarantee that I'll support other languages and/or take fixes or suggestions, but it's not impossible
Also, I don't think I can change the color of 'unsafe' without sacrificing other coloring abilities, but hopefully that will change sometime soon
If you want an alternate theme that colors 'unsafe', you can open an issue and I'll start working on it if I have the time (or you can make it yourself, this is under an MIT license)


License:   MIT