Skip to content
🍷 Play typewriter sound in Vim when you are typing a letter
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

What is it ?

It's cool to play typewriter sound in Vim when you are typing a letter. 😎

⚡️ You can use it along with the typewriter color scheme, and feel like you are really working on a typewriter.

Enjoy the rhythm of your code, gain the power from the sound, become productive in vim. 🍷

See this video by Keefle (there is no audio delay in reality).



Plug 'skywind3000/vim-keysound'


Plugin 'skywind3000/vim-keysound'


Enable keysound from start:

let g:keysound_enable = 1

Command :KeysoundEnable and :KeysoundDisable can be used to manually start/stop the plugin if g:keysound_enable is not assigned.

Choose a sound theme:

let g:keysound_theme = 'default'

Then the plugin will work and you can enjoy sound effect when you are typing in insert mode.

Avaliable themes are:

  • default
  • typewriter
  • mario
  • sword
  • bubble

Additional sound themes can be found in sounds directory in your runtimepath, that is your ~/.vim/sounds or /path-to-dotfiles/sounds.

Change python version:

let g:keysound_py_version = 3

Both 2 and 3 are available. It is assigned to zero by default, and will choose python automatically, change it to 2 or 3 if you need specify the python version.

Change volume:

let g:keysound_volume = 500

The volume is initialized to 500 by default, and should be in range of [0, 1000].


keysound provide a function to allow you play any wav file in vim.

keysound#playsound(wavfile, volume)

wavfile is the path of your .wav file, volume is an integer with range of 0-1000.


  • Python or Python3 integration in vim
  • PySDL2 with SDL2 binaries.

PySDL2 is used to provide low-latency audio playback.


Just install python-sdl2 or python3-sdl2 with apt-get, depend on your python version in vim:

apt-get install python-sdl2


apt-get install python3-sdl2


Install python-sdl2 or python3-sdl2 and libSDL2_mixer-2_0-0 with zypper, depend on your python version in vim:

zypper install python-sdl2 libSDL2_mixer-2_0-0


zypper install python3-sdl2 libSDL2_mixer-2_0-0


Install pysdl2 in python or python3:

pip install pysdl2


pip3 install pysdl2

Download SDL2.dll from here, SDL2_mixer.dll from here. Put the two files into your python's installation directory.

You can verify your SDL2 installation by python -c "import sdl2". If there is no exceptions, your installation is fine.

Mac OS X

Install pysdl2 in python or python3:

pip install pysdl2


pip3 install pysdl2

Install sdl2 with brew:

brew install sdl2



You can’t perform that action at this time.