All Projects → jasonlong → Lavalamp

jasonlong / Lavalamp

Licence: mit
A text editor theme that visually differentiates languages.

Projects that are alternatives of or similar to Lavalamp

sourcerer
read code like a wizard. a 16bit color scheme for hackers
Stars: ✭ 136 (-58.54%)
Mutual labels:  iterm, colors
Vim Dadbod Ui
Simple UI for https://github.com/tpope/vim-dadbod
Stars: ✭ 315 (-3.96%)
Mutual labels:  viml
Vim Powerline
Moved to powerline/powerline.
Stars: ✭ 2,880 (+778.05%)
Mutual labels:  viml
Ansi Colors
Easily add ANSI colors to your text and symbols in the terminal. ansi-colors is the official ansi styling library for gulp, and is used by hundreds of other projects, including mocha and enquirer.
Stars: ✭ 300 (-8.54%)
Mutual labels:  colors
Investigate.vim
A Vim plugin for looking up documentation
Stars: ✭ 282 (-14.02%)
Mutual labels:  viml
Vim Buffet
IDE-like Vim tabline
Stars: ✭ 304 (-7.32%)
Mutual labels:  viml
Dotfiles
twerth
Stars: ✭ 274 (-16.46%)
Mutual labels:  viml
Taskpaper.vim
This package contains a syntax file and a file-type plugin for the simple format used by the TaskPaper application.
Stars: ✭ 325 (-0.91%)
Mutual labels:  viml
React Color Extractor
A React component which extracts colors from an image
Stars: ✭ 314 (-4.27%)
Mutual labels:  colors
Costumekit
Base types for theming an app.
Stars: ✭ 300 (-8.54%)
Mutual labels:  colors
Vim Phpqa
PHP QA tools for Vim
Stars: ✭ 296 (-9.76%)
Mutual labels:  viml
Elm.vim
Vim plugin for the Elm programming language
Stars: ✭ 286 (-12.8%)
Mutual labels:  viml
Pastel
A command-line tool to generate, analyze, convert and manipulate colors
Stars: ✭ 3,742 (+1040.85%)
Mutual labels:  colors
Vim Stylus
Syntax Highlighting for Stylus
Stars: ✭ 277 (-15.55%)
Mutual labels:  viml
Molokai
Molokai color scheme for Vim
Stars: ✭ 3,349 (+921.04%)
Mutual labels:  viml
Dotfiles
My config files
Stars: ✭ 276 (-15.85%)
Mutual labels:  viml
Blamer.nvim
A git blame plugin for neovim inspired by VS Code's GitLens plugin
Stars: ✭ 283 (-13.72%)
Mutual labels:  viml
Bullet
🚅 Interactive prompts made simple. Build a prompt like stacking blocks.
Stars: ✭ 3,257 (+892.99%)
Mutual labels:  colors
Pear Tree
A Vim auto-pair plugin that supports multi-character pairs, intelligent matching, and more
Stars: ✭ 327 (-0.3%)
Mutual labels:  viml
Vim Textobj Rubyblock
A custom text object for selecting ruby blocks.
Stars: ✭ 321 (-2.13%)
Mutual labels:  viml

Lavalamp is a WIP text editor theme.

It currently works in Vim, but I hope to port it to Atom and Sublime Text.

====

Installation

Copy lavalamp.vim to your .vim/colors directory.

$ cd lavalamp/vim
$ cp lavalamp.vim ~/.vim/colors/

Then update your .vimrc with these lines:

syntax enable
set background=dark
colorscheme lavalamp

If you're using airline, you can install the lavalamp theme for that.

$ cd lavalamp/vim/autoload/airline/themes
$ cp lavalamp.vim ~/.vim/autoload/airline/themes/

For the iTerm theme, you should be able to double-click on the lavalamp/iterm/lavalamp.itermcolors file to install it.

If you're using CoffeeScript, I highly recommend installing the vim-coffee-script plugin since it offers much better syntax highlighting (which lavalamp utilizes).

For xterm, you should copy the contents of xterm/Xresources to your ~/.Xresources.

Terminal Vim

If you're running Vim in a terminal (as opposed to MacVim, etc.) this colorscheme won't work by default. You can use the CSApprox plugin to get it working though. You also may need to add this line to your .vimrc:

set t_Co=256

Design principles

The idea behind the theme is that each language has its own core color. This way, it's easier to visually differentiate languages when they're used together.

For example, HTML uses shades of blue while Ruby uses red. Then it's easy to see your ERB tags:

CSS uses purple (an homage to @mdo):

In a Sass file, it's easy to see vanilla CSS vs. Sass (which is red, since it's Ruby):

I've chosen green for Javascript:

And browns for Coffeescript:

The iTerm and Terminal themes look like so:

Contributing

  1. Fork it ( http://github.com/jasonlong/lavalamp/fork )
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request

If you'd like to add support for addtional languages, you'll need to add new entries for each syntax scope. I have found vim-HiLinkTrace to be very handy for figuring out what a given scope a character is in. Once you've installed that (via Vundle, NeoBundle, etc.), you can add a keyboard shortcut to your .vimrc. This is what I use:

nmap <leader>h :HLT<CR>

Then, when your cursor is over a character you want to know about, hit <leader>h and the syntax scope will be shown at the bottom of your Vim window. Create a new line with this in lavalamp.vim.

Roadmap

I've been using this theme for a while in this state since these are the languages I mostly use. If more people want to use the theme, more languages will need to be fleshed out.

And I'd really ❤️ some help getting this working with Atom and Sublime as similarly as possible.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].