Skip to content
/ wim Public
forked from wolandark/wim

This is a Vim configuration that gets you a similar experience as spacevim but without it acting like a parasite and sitting on top of your existing Vim. This is done using native vim features with the help of some plugins.

License

Notifications You must be signed in to change notification settings

ajdevera/wim

 
 

Repository files navigation

Wim News

Version 3.1 has been released

  • Improved style and workflow
  • Cleaned up the config
  • Corrections on Coc.nvim's behavior
  • and many more ...

Version 3.2 has been released

  • Replaced vim-css plugin with vim-hexokinase due to vim-css's inability to highlight colors in C files properly (you need go for this new plugin which the installation script will take care of)
  • Improved easy motion bindings
  • Added Catpuccino theme
  • Updated and improved the installation script

Use this simple installation script for Arch and Arch-based distros.

bash <(curl -s https://raw.githubusercontent.com/wolandark/wim/main/Wim_Arch_Install.sh)

Use this simple installation script for Debian 12 and Testing.

bash <(curl -s https://raw.githubusercontent.com/wolandark/wim/main/Wim_Debian_Install.sh)

Otherwise satisfy the dependencies and grab the wim-3.1.vimrc and rename it to .vimrc and start vim. Plugins will install automatically

Watch the script work here


Intro

The purpose of this project is to not only provide an IDE-like vimrc, but also to teach you how it is constructed. It is made from the ground up from the vanilla Vim with the help of plugins and .vimrc configurations.

Dependencies

  • Vim 8+ upto latest (Tested and also works on vim 7)
  • vimplug (Will be installed automatically as of version 2. Unix and Linux Only! for windows you must use the windows curl command of vimplug)
  • nodejs and npm (For coc completion)
  • FZF
  • Figlet & boxes (For the start menu ascii art)

Some of the features

  • Out of the box plugin installation
  • Tab Completion and snippets for fast coding
  • Easy tab and split navigation
  • Start Screen with bookmarks and file history
  • Beautiful built in base16 colorschemes
  • Nerdtree-like configuration of Netrw
  • Customized Lighline statusline
  • Customizability! It is lightweight and extensible without having to learn a whole new software or language

Usage / Installation

On Arch Linux and other derivatives use the provided installation script, otherwise continue manually

Windows users must delete the statement that auto installs vimplug at the beggining of the vimrc and proceed with the manual installation of vimplug, then launch vim with the new vimrc so that the plugins can be installed. Naturally you must use another editor to alter the vimrc.

  • As of version 2, once you start vim with my .vimrc. vimplug and plugins will be installed automatically. Don't panic and let it work

  • Refer to the release page for easy download. Remember to rename the file to .vimrc

  • Place the .vimrc file in your home directory

  • You can rename your already existing .vimrc or move it to another directory. this way; you can always bring it back if you dont like Wim

  • Place the roman.flf font in /usr/share/figlet/fonts/

  • Install boxes from repositories or compile it.

  • Refer to the list of autocompletion languages and add the ones you'd like with

  • :CocInstall

    • Example: :CocInstall coc-css
  • :CocInstall coc-explorer for using the coc-explorer file manager instead of netrw

    • to start netrw :Vexplore
  • Once the downloads are finished you can start using Vim normally

  • Leader key is naturally space

  • Refer to the table below for a list of key bindings

Optional Dependencies

  • Ranger. See mine
  • Vifm

Notice

  • It was tested on multiple devices and distros with Vim from the terminal on linux and Gvim on Arch and Windows and it works perfectly. If anyone happens to use this on OSX please provide me with your feedback.
  • Please keep in mind that in case your terminal emulator takes charge of some of your keys, its up to you to figure it out. Some terminals do hold unto your Ctrl or Alt or shift key for their own functions
  • You can review the list of plugins and comment out or delete the lines about the ones you dont want. This must be done before running :PlugInstall
    • If you want to delete any plugins later, delete the lines about them and run: :PlugClean

Coc tab completion set up

  • Open your CocConfig by typing :CocConfig into vim's command mode
  • add the following lines to improve Coc's Tab behavior
{
     "suggest.noselect": true
}

:wq to save and quit

Keymappings (Always up to date)

leader is space

Key Bindings

Keys Function
leader v Vifm Floating
leader r Ranger Floating
leader e Coc-Explorer On The Left Side
leader t Terminal
leader i Pop Start Menu
leader T NewTab
leader d Duplicate Cleaner
leader 1-9 Go To Tab
leader tm Move Tab
leader x Close Tab
leader c Fuzzy Colorschemes
leader b Fuzzy Buffers
leader s Fuzzy File Search
leader W Fuzzy Windows
leader H Fuzzy History
leader Hc Fuzzy Command History
leader h chmod +x current file
leader M Fuzzy Mappings
leader w Quick Save w!
leader op Source Current File
leader z Fix Spelling For 1 word
leader l Fix Spelling On 1 Line
leader ww VimWiki
leader \ Border Current line using Toilet
leader mk mkview
leader [ Add Empty Line Above
leader ] Add Empty Line Below
leader S Add Empty Line Above And Below
leader u Move Current Line A Paragraph Up
leader k Move Current Line One Line Up
leader j Move Current Line One Line Down
leader ' Open Vim Terminal
Shift Arrows Resize Splits
Ctrl hjkl/Arrows Focus Between Splits
F6 SpellCheck
Ctrl j Trigger Snippets
Ctrl j k Move Within Triggered Snippet
Ctrl PGDNN List Available Snippets
gcc Comment Out
yss(char) Surround line
ysiw(char) Surround word
fy find char across splits
fl find lines across splits
ml Move to LIne
fw find word across splits
s find two chars across splits
jj escape
; :
Ctrl m Center Cursor
bs #!/bin/bash
be #!/usr/bin/env bash
br <br>
Ctrl h/Arrows Move Between Splits
Ctrl j/Arrows Move Between Splits
Ctrl k/Arrows Move Between Splits
Ctrl l/Arrows Move Between Splits
leader R Rotate Splits
Alt hjkl Move With hjkl In Insert Mode
Alt Arrows Go Tabs Right Or Left

New Catpuccino theme wim-catpuccino Default Gruvbox Colorscheme. Netrw & TagBar Startify Dashboard with history and shortcuts Completion and language support Press Leader+c to chose a new colorscheme

FAQ

Whats with the name?
Woland's Vim = Wim. Get it?
What features does Wim offer?
  • Customizability! It is lightweight and extensible without having to learn a whole new software
  • Easy tab and split navigation
  • Start Screen with bookmarks and file history
  • Beautiful built in colorschemes
  • Easy completion ctags, syntax check and more
  • Lighline, Vim statusline
    • Choices! It is all about choices
Can I expect support?
Yes! Just ask and I will answer. When asking however, provide proper information so that I can help you
Why didn't you use Neovim like everyone else?
Because Vim is the one I use and frankly Vim is fine.
Will you make custom vimrc configurations?

Contact me

Are you open to collaborations?

Contact me

But vimplug is installed with curl!

Yes! and it does only one thing, adding an easier integration for installing plugins.


Consider Supporting the project

BTC
bc1q7tr3znnrsqq85kalk5zedak9mgn9u3ly849t8z
ETH
0x28a60D7429a2DFdf6b009261D3814cA182B34Bb2
Monero
0xd84c96dDa2E6f9ee9DD0439F6F7812c5b8869fE4
Doge
DJKBgAEQ7n5GyozM8jqmGbxnhcH6U2V8hV
Tether
0x28a60D7429a2DFdf6b009261D3814cA182B34Bb2
Tron
TX8mVZajyy7cmH9vsREyAMPjgtRu23ZmxJ
ADA
addr1qxhv2rfrs37qvs0cllfcnu0rd83wre609s74aufkd82da9528v7xq34usds6t8sdt7zjy0hvkcwdfnp9jwacdn0kwuesatvjx4
Avalanche
0x28a60D7429a2DFdf6b009261D3814cA182B34Bb2

About

This is a Vim configuration that gets you a similar experience as spacevim but without it acting like a parasite and sitting on top of your existing Vim. This is done using native vim features with the help of some plugins.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Vim Script 95.9%
  • Shell 4.1%