How to Use And Edit Vim Color Schemes

Vim Color Schemes

Bram Moonlenaar created Vim (Vi IMproved) in the early 1990s as an extended and improved version of the Linux text editor called Vi. These days, most mainstream Linux distributions include it because of its versatility and flexibility. 

If you spend a couple of hours working with text (especially writing and reading code), a suitable color scheme can be a game changer for your eyes and efficiency. Vim allows you to change the default current scheme to increase the readability of text in Vim.

This guide will walk you through the steps you can follow to use and customize Vim color schemes, enhancing your experience by boosting productivity and visual comfort. 

What Are Vim Color Schemes

Vim color schemes determine the colors used for syntax highlighting in the editor. They define the colors associated with the appearance of different elements in your code. The ultimate aim is to make reading, writing, and understanding code in Vim. 

Color schemes enhance the visual aspect of working with code, helping readers quickly identify variables, keywords, and other code components. These colors are customizable and can be selected based on personal preferences or the nature of the coding task. 

How to Use and Edit Vim Color Schemes

Let’s see how you can easily edit Vim color schemes on your Linux system. We’ll start with the prerequisites and then go through the stages of the process. 

Prerequisites

Before getting started with Vim installation and customizing color schemes, you need to ensure that you have the following:

  • Pre-installed Vim text editor.
  • Access to terminal or command line interface (CLI).

Step #1: Check Vim Installation

Start by ensuring that you have Vim on your system. This is a critical check because the rest of the steps are executed in Vim. 

Launch the terminal and run the following command to print Vim version information:

# vim --version

check Vim installation command

If you don’t see the version information, you need to install it on your system using your distribution’s package manager. 

 

While you’re doing that, we recommend familiarizing yourself with essential Vim commands like :q to quit and :w to save.

Step #2: Check Available Vim Color Schemes

Vim comes with several pre-installed color schemes. When you installed Vim (either in the previous step or with the Linux distribution on your system), it selected a standard color scheme based on your terminal’s appearance settings. 

So, the default Vim color scheme for light-background terminals is typically peachpuff‘ On the other hand, for terminals with a dark background, ron is often the default scheme.

You can easily view the built-in color themes Vim offers by opening a file in Vim and following these steps:

:colorscheme [space] [Ctrl+d]

The output shows a list of available Vim color schemes.

available vim color schemes

Step#3: How to Switch Vim Color Scheme

Once you’ve viewed the available color schemes in Vim, feel free to try out different ones until you find the perfect match for your preferences.

Use the following command to switch to a different color scheme in Vim:

:colorscheme [colorscheme_name]

For instance, if you want to change to the morning color scheme, enter the following command:

:colorscheme morning

The output of the command is:

vim color test red

vim color test blue

Manual Color Configuration in Vim

You can manually adjust Vim’s color settings if the existing color schemes don’t match your style. This allows you to fine-tune colors for specific text sections.

Trying Out Custom Color Settings

Before finalizing any changes, it’s beneficial to experiment with color settings. This can be done directly in Vim within any opened file.

The command to modify color settings is as follows:

:highlight [Group] [key=value]

For convenience, :highlight can be abbreviated to :hi.

In this command, [Group] represents the part of the text you want to change, like regular text or error messages, and [key=value] is where you set the new color properties.

Commonly Used Highlight Groups

  • Normal: This refers to the regular text.
  • NonText: Characters that aren’t part of the regular text blocks.
  • Cursor: The character where the cursor is positioned.
  • ErrorMsg: Text for error messages.

These groups are just a few examples. The Vim’s documentation provides more details on the topic. 

Highlight Command Example

The best way to show how the highlight command works is with a simple example.

Launch a file in Vim, and you’ll note that the file appears in the default color scheme.

vim color test redswitches

Now, you can experiment with the highlight color scheme. For instance, to set the standard text color to red with a black background, use the following command:

:hi Normal ctermfg=Red ctermbg=Black

After pressing Enter, the colors change immediately.

vim color test redswitches red

Making Your Color Settings Permanent

Your new Vim color scheme is temporary, and the editor changes to default colors on relaunch. So, if you wish to retain the existing color scheme, you need to edit the .vimrc file and add the details. You can find this file in your home directory or /etc

You can include the details about the color settings in the following format:

colorscheme [your_choice]

syntax on

:hi Normal ctermfg=Red ctermbg=Black

Once you save the file, your preferred color settings will be applied whenever you open Vim.

Different Keys for Color Settings

Depending on your Vim environment (GUI or terminal), the keys for setting colors vary as follows:

In terminal Vim:

  • ctermfg: Sets the foreground color.
  • ctermbg: Sets the background color.
  • cterm: Other text properties like bold or italic.

In GUI Vim:

  • guifg: Foreground color.
  • guibg: Background color.
  • gui: Other text properties.

Colors in Vim can be identified using names, numbers, or hex values (in graphical user interface).

How to Find and Set Up New Vim Themes

If you’re looking for new Vim themes, you should visit GitHub, where several users have posted Vim themes. 

Another excellent place to start is Vimcolors.com. This website has many Vim themes that change the colors in your code and the background. You can see a screenshot of the theme to help you decide on a theme. 

You can find the GitHub logo that’ll take you to the Git repository for the theme. Once you have decided on a theme, follow these steps to set it up on your system.

Navigate to your home directory with the following command:

# cd ~

Next, use the following command to clone (create a local copy) the repository.

# git clone https://github.com/flazz/vim-colorschemes.git ~/.vim

After cloning, you can check the contents of your .vim directory to see if the files are there. Use this:

# ls ~/.vim

Conclusion

Unlock a richer coding experience by mastering Vim color schemes, adding visual appeal and readability. Vim’s strength lies in customization, so don’t hesitate to experiment with various themes or craft your own. While diving into Vim’s versatility, consider boosting your development setup with RedSwitches’ robust hosting solutions. 

FAQs

Q. What are configuration files in Vim, and how do they enhance my Vim session?

Configuration files in Vim, such as .vimrc, allow you to customize your Vim session. They enable you to set preferences for behavior, appearance, and plugins, making your Vim experience more efficient and personalized.

Q. Can different file types have unique color schemes in Vim?

Vim allows you to set different color schemes for various file types, enhancing the readability and visual experience, especially when working with multiple file types in a single Vim session.

Q. Where can I find a collection of color schemes for Vim?

A collection of color schemes for Vim can be found on websites like Vimcolors.com, GitHub repositories, and through the Vim plugin manager, offering a wide range of options for personalizing your visual experience in the Vim Editor.

Q. How do I install a color scheme file in Vim?

To install a color scheme file in Vim, place it in the ~/.vim/colors/ directory and activate it using the :colorscheme [scheme_name] command in your Vim session.

Q. What are some tips to reduce eye strain while using Vim in a dark terminal?

To reduce eye strain in a dark terminal, use Vim color schemes with high contrast and softer color values. Dark backgrounds with light text are popular choices for comfortable long-term use.

Q. How do I customize color values in my Vim color scheme?

Customize color values in your Vim color scheme by editing the scheme file and adjusting the ctermfg, ctermbg, and gui settings to your preferred colors. This customization can significantly improve your visual experience in Vim.

Q. What are some popular color schemes for Vim?

Popular color schemes for Vim include Solarized, Gruvbox, and Monokai. These schemes are widely appreciated for their aesthetic appeal and effectiveness in syntax highlighting.

Q. How does a Vim plugin manager help with color schemes?

A Vim plugin manager, like Vim-Plug or Pathogen, simplifies installing and managing color schemes. It allows you to easily add, update, or remove schemes, enhancing your collection of color schemes.

Q. How does syntax highlighting affect the visual experience in Vim?

Syntax highlighting in Vim uses different colors to distinguish code elements, like variables, functions, and keywords. This enhances the visual experience and improves code readability and navigation.

Q. What are the differences in color schemes for a light and dark terminal in Vim?

Color schemes for a light terminal in Vim typically use darker text on a light background, whereas schemes for a dark terminal use lighter text on a dark background. The choice between them depends on personal preference and the environment in which you are working.

Pratik

Pratik Kshirsagar is a Linux system administrator at RedSwitches (A fully Customizable Dedicated Server Hosting platform). Besides his work life, he loves music and traveling. You can email him at [email protected]

Related articles

Latest articles