Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/wuelnerdotexe/vim-enfocado
How themes should be.
https://github.com/wuelnerdotexe/vim-enfocado
color-theme enfocado hacktoberfest theme vim-enfocado vscode-enfocado
Last synced: 4 days ago
JSON representation
How themes should be.
- Host: GitHub
- URL: https://github.com/wuelnerdotexe/vim-enfocado
- Owner: wuelnerdotexe
- License: mit
- Created: 2021-09-18T21:07:22.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2024-04-25T16:09:30.000Z (7 months ago)
- Last Synced: 2024-08-01T20:49:15.836Z (3 months ago)
- Topics: color-theme, enfocado, hacktoberfest, theme, vim-enfocado, vscode-enfocado
- Language: Vim Script
- Homepage: https://wuelnerdotexe.github.io/enfocado
- Size: 21 MB
- Stars: 350
- Watchers: 6
- Forks: 14
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
- jimsghstars - wuelnerdotexe/vim-enfocado - How themes should be. (Vim Script)
README
# Enfocado for Vim
![Banner](https://raw.githubusercontent.com/wuelnerdotexe/enfocado/main/assets/banner.png)
[![License Badge](https://img.shields.io/badge/License-MIT-3FC5B7.svg?style=for-the-badge)](https://github.com/wuelnerdotexe/vim-enfocado/blob/main/LICENSE)
[![README Style Badge](https://img.shields.io/badge/README%20Style-Standard-3FC5B7.svg?style=for-the-badge)](https://github.com/RichardLitt/standard-readme)**Enfocado** is more than a theme, it is a concept of **"how themes should be"**, focusing on what is really important to developers: **the code and nothing else**.
What you **won't have** if you **don't install Enfocado**:
- **CIELAB Colors:** use of the well-founded Selenized color scheme created with the magic of the **CIELAB color space**. Learn about its features and design in its [official repository](https://github.com/jan-warchol/selenized/blob/master/features-and-design.md).
- **Human Writing:** human writing is simulated by using italic typeface for syntax groups (comments, methods, structs, and more ...) that are generally named and **written in human language**.
- **Minimal Syntax:** only three colors are used to highlight syntax, following the **color guidelines for web design**, which state that **only three main colors** should be used in interfaces, no more.
- **Signal Alerts:** the yellow, orange and red colors are reserved to be used only with important alerts, following the standards for the meanings of the **signal colors in the industrial area**.
- **Styles:** choose the style that best suits your **personality**:
Nature: go for thenature
style if you are a minimalist developer who is always connected to nature.
Neon: go for theneon
style if you are an outgoing developer that is always surrounded by RGBs.## Table of Contents
- [Requirements](#requirements)
- [Installation](#installation)
- [Usage](#usage)
- [Statuslines](#statuslines)
- [Colorscheme](#colorscheme)
- [Customization](#customization)
- [Syntax](#syntax)
- [Recommendations](#recommendations)
- [Tree-sitter](#tree-sitter)
- [Fonts](#fonts)
- [Configs](#configs)
- [Extras](#extras)
- [Maintainer](#maintainer)
- [Contributing](#contributing)
- [Plugins](#plugins)
- [Credits](#credits)
- [License](#license)## Requirements
- [Vim](https://www.vim.org/) >= 8.0 or [Neovim](https://neovim.io/) >= v0.9.0
## Installation
Install via your preferred package manager. Example using [vim-plug](https://github.com/junegunn/vim-plug):
```vim
Plug 'wuelnerdotexe/vim-enfocado'
```## Usage
### Statuslines
To use [Lightline](https://github.com/itchyny/lightline.vim) theme:
```vim
let g:lightline = { 'colorscheme': 'enfocado' }
```To use [Lualine](https://github.com/hoob3rt/lualine.nvim) theme:
```lua
require('lualine').setup { options = { theme = 'enfocado' } }
```To use [Airline](https://github.com/vim-airline/vim-airline) theme:
```vim
let g:airline_theme = 'enfocado'
```### Colorscheme
First, if you have **true color** support, enable it:
```vim
set termguicolors
```Otherwise, enable **256 terminal color** support:
```vim
set t_Co=256
```Choose between light or dark theme:
```vim
set background={light or dark}
```Then choose your favorite **Enfocado** style, for example:
```vim
let g:enfocado_style = 'neon' " Available: `nature` or `neon`.
```If you want to reduce the loading time of **Enfocado**, you can specify the plugins you want to apply the theme to on demand:
```vim
" NOTE: To see a list of all available plugins, run
" `:h enfocado-colorscheme` at the vim commandline.
let g:enfocado_plugins = [
\ 'animate',
\ 'bufferline',
\ 'cmp',
\ 'dap-ui',
\ 'edgy',
\ 'flash',
\ 'gitsigns',
\ 'highlight-undo',
\ 'illuminate',
\ 'indentscope',
\ 'indent-blankline',
\ 'lazy',
\ 'lspconfig',
\ 'lsp-lens',
\ 'mason',
\ 'navic',
\ 'neo-tree',
\ 'noice',
\ 'null-ls',
\ 'substitute',
\ 'surround',
\ 'rainbow-delimiters',
\ 'telescope',
\ 'treesitter',
\ 'treesitter-context',
\ 'ufo',
\ 'visual-multi',
\ 'yanky'
\ ]
```And finally turn on the **Enfocado** theme and enjoy!
```vim
colorscheme enfocado
```### Customization
Like all colorschemes, **Enfocado** is easy to customize with `autocmd`. Make use of the `ColorScheme` event as in the following examples.
It would be a good idea to put all of your personal changes in an `augroup`, which you can do with the following code:
```vim
augroup enfocado_customization
autocmd!
" autocmds...
augroup END
```To make the **background transparent**, you can use the following:
```vim
augroup enfocado_customization
autocmd!
autocmd ColorScheme enfocado highlight Normal ctermbg=NONE guibg=NONE
augroup END
```NOTE: The usage codes must be written in your `.vimrc` or `init.vim`.
### Syntax
Master your theme, understand and recognize syntax, improve your muscle memory.
| SELENIZED COLOR | HEX COLOR | HEX COLOR (light) | TEXT TYPE | NATURE SYNTAX TOKENS | NEON SYNTAX TOKENS |
| --------------- | :-------: | :---------------: | :---------: | :--------------------------: | :--------------------------: |
| Dimmed | `#777777` | `#878787` | `Italic` | Comments | Comments |
| Foreground 0 | `#b9b9b9` | `#474747` | `NONE` | Constants, punctuation, text | Constants, punctuation, text |
| Foreground 1 | `#dedede` | `#282828` | `Bold` | Titles | Titles |
| Red | `#ed4a46` | `#d6000c` | ~~`NONE`~~ | ~~Not used in the syntax~~ | ~~Not used in the syntax~~ |
| Yellow | `#dbb32d` | `#c49700` | `NONE` | Constant identifiers | Constant identifiers |
| Green | `#70b433` | `#1d9700` | `NONE` | Identifiers | Built-in identifiers |
| Blue | `#368aeb` | `#0064e4` | `NONE` | Keywords | Built-in keywords |
| Magenta | `#eb6eb7` | `#dd0f9d` | `NONE` | Built-in identifiers | Identifiers |
| Cyan | `#3fc5b7` | `#00ad9c` | `NONE` | Strings | Strings |
| Orange | `#e67f43` | `#d04a00` | `NONE` | Exceptions (`trycatch`) | Exceptions (`trycatch`) |
| Violet | `#a580e2` | `#7f51d6` | `NONE` | Built-in keywords | Keywords |
| Bright red | `#ff5e56` | `#bf0000` | `Bold` | Errors | Errors |
| Bright yellow | `#efc541` | `#af8500` | ~~`NONE`~~ | ~~Not used in the syntax~~ | ~~Not used in the syntax~~ |
| Bright green | `#83c746` | `#008400` | `Italic` | Methods | Built-in methods |
| Bright blue | `#4f9cfe` | `#0054cf` | `Bold` | Types | Built-in types |
| Bright magenta | `#ff81ca` | `#c7008b` | `Italic` | Built-in methods | Methods |
| Bright cyan | `#56d8c9` | `#009a8a` | `Underline` | Links | Links |
| Bright orange | `#fa9153` | `#ba3700` | ~~`NONE`~~ | ~~Not used in the syntax~~ | ~~Not used in the syntax~~ |
| Bright violet | `#b891f5` | `#6b40c3` | `Bold` | Built-in types | Types |DISCLAIMER: **Enfocado** doesn't customize individual tokens for each language, it just defines the default base, if your syntax doesn't look as described here, it's not our responsibility, it's the responsibility of those who assign wrong tokens to some language's syntax, and we don't correct those problems constantly.
## Recommendations
### Tree-sitter
If you are on Neovim, it is strongly recommended that you use [nvim-treesitter](https://github.com/nvim-treesitter/nvim-treesitter) to ensure that your syntax highlighting is as close as possible to what is described above.
### Fonts
In order for the human text simulation to work as it should, I recommend that you use either of these three beautiful fonts, which align with the **"Mankind and Machine"** concept.
- [IBM Plex Mono](https://www.ibm.com/plex/).
- [Victor Mono](https://rubjo.github.io/victor-mono/).### Configs
This vim configs comes with **Enfocado for Vim** already installed by default!
- [CodeArt](https://github.com/artart222/CodeArt) by [artart222](https://github.com/artart222)
- [Wuelner's Neovim Setup](https://github.com/wuelnerdotexe/nvim)### Extras
- [Enfocado for VS Code](https://github.com/wuelnerdotexe/vscode-enfocado).
- [Selenized for terminals](https://github.com/jan-warchol/selenized/tree/master/terminals).## Maintainer
> Hi π, I'm **[Wuelner](https://linktr.ee/wuelnerdotexe)**, a **software developer from Guatemala**, passionate about creating minimalist solutions using solid fundamentals focused on **"how things should be"**.
## Contributing
All your ideas and suggestions are welcome! π
Let me see your captures and let me know what you think with the hashtag **#HowThemesShouldBe**. π
And of course, if you want to motivate me to constantly improve this theme, your donations are welcome at [PayPal](https://paypal.me/wuelnerdotexe). ππ
## Plugins
The following plugins are supported:
- [aerial.nvim](https://github.com/stevearc/aerial.nvim)
- [ale](https://github.com/dense-analysis/ale)
- [bufferline.nvim](https://github.com/akinsho/bufferline.nvim)
- [coc.nvim](https://github.com/neoclide/coc.nvim)
- [copilot.vim](https://github.com/github/copilot.vim)
- [ctrlp](https://github.com/ctrlpvim/ctrlp.vim)
- [nvim-dap-ui](https://github.com/rcarriga/nvim-dap-ui)
- [dashboard-nvim](https://github.com/glepnir/dashboard-nvim)
- [edgy.nvim](https://github.com/folke/edgy.nvim).
- [fern.vim](https://github.com/lambdalisue/fern.vim)
- [flash.nvim](https://github.com/folke/flash.nvim).
- [fold-preview.nvim](https://github.com/anuvyklack/fold-preview.nvim)
- [fzf.vim](https://github.com/junegunn/fzf.vim)
- [gitsigns.nvim](https://github.com/lewis6991/gitsigns.nvim)
- [glyph-palette.vim](https://github.com/lambdalisue/glyph-palette.vim)
- [headlines.nvim](https://github.com/lukas-reineke/headlines.nvim)
- [highlight-undo.nvim](https://github.com/tzachar/highlight-undo.nvim).
- [indent-blankline](https://github.com/lukas-reineke/indent-blankline.nvim)
- [lazy.nvim](https://github.com/folke/lazy.nvim)
- [lightline.vim](https://github.com/itchyny/lightline.vim)
- [lsp-lens.nvim](https://github.com/VidocqH/lsp-lens.nvim).
- [lualine.nvim](https://github.com/hoob3rt/lualine.nvim)
- [mason.nvim](https://github.com/williamboman/mason.nvim)
- [mini.indentscope](https://github.com/echasnovski/mini.indentscope).
- [mini.animate](https://github.com/echasnovski/mini.animate).
- [neo-tree](https://github.com/nvim-neo-tree/neo-tree.nvim)
- [nerdtree](https://github.com/preservim/nerdtree)
- [noice.nvim](https://github.com/folke/noice.nvim)
- [null-ls.nvim](https://github.com/jose-elias-alvarez/null-ls.nvim)
- [nvim-cmp](https://github.com/hrsh7th/nvim-cmp)
- [nvim-lspconfig](https://github.com/neovim/nvim-lspconfig)
- [nvim-navic](https://github.com/SmiteshP/nvim-navic).
- [nvim-notify](https://github.com/rcarriga/nvim-notify)
- [nvim-scrollview](https://github.com/dstein64/nvim-scrollview)
- [nvim-surround](https://github.com/kylechui/nvim-surround)
- [nvim-tree.lua](https://github.com/kyazdani42/nvim-tree.lua)
- [nvim-treesitter](https://github.com/nvim-treesitter/nvim-treesitter)
- [nvim-treesitter-context](https://github.com/nvim-treesitter/nvim-treesitter-context).
- [nvim-ufo](https://github.com/kevinhwang91/nvim-ufo).
- [packer.nvim](https://github.com/wbthomason/packer.nvim)
- [rainbow](https://github.com/luochen1990/rainbow)
- [rainbow-delimiters.nvim](https://gitlab.com/HiPhish/rainbow-delimiters.nvim)
- [SmoothCursor.nvim](https://github.com/gen740/SmoothCursor.nvim)
- [substitute.nvim](https://github.com/gbprod/substitute.nvim)
- [telescope.nvim](https://github.com/nvim-telescope/telescope.nvim)
- [todo-comments.nvim](https://github.com/folke/todo-comments.nvim)
- [vim-airline](https://github.com/vim-airline/vim-airline)
- [vim-better-whitespace](https://github.com/ntpeters/vim-better-whitespace)
- [vim-floaterm](https://github.com/voldikss/vim-floaterm)
- [vim-gitgutter](https://github.com/airblade/vim-gitgutter)
- [vim-illuminate](https://github.com/RRethy/vim-illuminate)
- [vim-matchup](https://github.com/andymass/vim-matchup)
- [vim-plug](https://github.com/junegunn/vim-plug)
- [vim-signify](https://github.com/mhinz/vim-signify)
- [vim-startify](https://github.com/mhinz/vim-startify)
- [vim-visual-multi](https://github.com/mg979/vim-visual-multi)
- [vista.vim](https://github.com/liuchengxu/vista.vim)
- [which-key.nvim](https://github.com/folke/which-key.nvim)
- [yanky.nvim](https://github.com/gbprod/yanky.nvim)## Credits
- Theme colorscheme by [Jan Warchol](https://github.com/jan-warchol) on [Github](https://github.com/jan-warchol/selenized/blob/master/the-values.md).
- Enfocado Nature wallpaper by [Josefin](https://unsplash.com/@josefin?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText) on [Unsplash](https://unsplash.com/s/photos/nature?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText).
- Enfocado Neon wallpaper by [Dilyara Garifullina](https://unsplash.com/@dilja96?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText) on [Unsplash](https://unsplash.com/s/photos/neon?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText).## License
[MIT Β© Wuelner MartΓnez.](https://github.com/wuelnerdotexe/vim-enfocado/blob/main/LICENSE)
With π from LATAM to the world!