Skip to content

My vimrc configuration, plugins and some other vim useful stuff :-)

License

Notifications You must be signed in to change notification settings

katcipis/my.vim

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Table of Contents

Introduction

My neovim configuration, plugins and some other vim useful stuff (mainly taken from Practical Vim: Edit Text at the Speed of Thought).

Install

You need to installl npm (some language server needs it).

Just run:

make

And it will install all plugins and configs. It will overwrite the current configs and plugins.

Project wide substitution

  • vim -o [files list or regex]
  • argdo %s,[old-text],[new-text],ge
  • argdo update

Macros

  • Start recording macro : q[register]
  • Stop recording macro : q
  • Execute macro: @[register]
  • Execute macro on parallel: :[range]normal @[register]

Perform action inside a text object

Pattern: [action]i[delimiter]

The delimiter is what defines where the text object start and where it ends.

The idea is that you are performing an action inside (just remember that i means inside) the text object that is enclosed by the delimiter.

Examples:

  • Start change inside braces: ci{
  • Delete the contents of a string: di"
  • Yanking everything inside parentheses: yi(

Perform action until a char is found

Pattern: [action]t[char]

Examples:

  • Delete everything until a { is found and start editing: ct{
  • Delete everything until a ( is found: dt(
  • Yanking everything until a ) is found: yt)

Forcing a tab

When tabs are being replaced by spaces it can be hard to force a tab. On INSERT mode just use: [C-v]TAB.

This can be used to force any special character.

FTPlugin

It is an awesome way to have different ways to configure vim according to the file type.

Check here for more details.

About

My vimrc configuration, plugins and some other vim useful stuff :-)

Resources

License

Stars

Watchers

Forks

Packages