# Learn Vim (the Smart Way) ## What's This? *Learn Vim (the Smart Way)* is a guide to learn the good parts of Vim. There are many places to learn Vim: the `vimtutor` is a great place to start and the `help` manual has all the references you will ever need. However, the average user needs something more than `vimtutor` and less than the `help` manual. This guide attempts to bridge that gap by highlighting only the key features to learn the most useful parts of Vim in the least time possible. This guide is written for both beginner and advanced Vimmers. It starts out with broad and simple concepts and ends with specific and advanced concepts. If you're an advanced user already, I would encourage you to read this guide from start to finish anyway, because you will learn something new! ## I Want More Vim Tips! Follow [@learnvim](https://twitter.com/learnvim) for updates, Vim tips, etc. ## Support This Project This guide is and will always be free. If you want to financially support this project, you can [purchase this guide on gumroad](https://gum.co/DADpa). ## Table Of Contents ### Prologue - [Ch 0 - New to Vim? Read This First](./ch00_new_to_vim_read_this_first.md) ### Part 1: Learn Vim the Smart Way - [Ch 1 - Starting Vim](./ch01_starting_vim.md) - [Ch 2 - Buffers, Windows, and Tabs](./ch02_buffers_windows_tabs.md) - [Ch 3 - Opening and Searching Files](./ch03_searching_files.md) - [Ch 4 - Vim Grammar](./ch04_vim_grammar.md) - [Ch 5 - Moving in a File](./ch05_moving_in_file.md) - [Ch 6 - Insert Mode](./ch06_insert_mode.md) - [Ch 7 - The Dot command](./ch07_the_dot_command.md) - [Ch 8 - Registers](./ch08_registers.md) - [Ch 9 - Macros](./ch09_macros.md) - [Ch 10 - Undo](./ch10_undo.md) - [Ch 11 - Visual Mode](./ch11_visual_mode.md) - [Ch 12 - Search and Substitute](./ch12_search_and_substitute.md) - [Ch 13 - The Global Command](./ch13_the_global_command.md) - [Ch 14 - External Commands](./ch14_external_commands.md) - [Ch 15 - Command-line Mode](./ch15_command-line_mode.md) - [Ch 16 - Tags](./ch16_tags.md) - [Ch 17 - Fold](./ch17_fold.md) - [Ch 18 - Git](./ch18_git.md) - [Ch 19 - Compile](./ch19_compile.md) - [Ch 20 - Views, Sessions, and Viminfo](./ch20_views_sessions_viminfo.md) ### Part 2: Customize Vim the Smart Way - [Ch 21 - Vimrc](./ch21_vimrc.md) - [Ch 22 - Vim Packages](./ch22_vim_packages.md) - [Ch 23 - Vim Runtime](./ch23_vim_runtime.md) ### Part 3: Learn Vimscript the Smart Way - [Ch 24 - Vimscript Basic Data Types](./ch24_vimscript_basic_data_types.md) - [Ch 25 - Vimscript Conditionals And Loops](./ch25_vimscript_conditionals_and_loops.md) - [Ch 26 - Vimscript Variable Scopes](./ch26_vimscript_variables_scopes.md) - [Ch 27 - Vimscript Functions](./ch27_vimscript_functions.md) ## Translations - [Learn-Vim 中文翻译](https://github.com/wsdjeg/Learn-Vim_zh_cn)(`zh-CN`) - [Learn-Vim Spanish](https://github.com/victorhck/learn-Vim-es)(`es`) ## License & Copyright The materials here are all © 2020-2021 Igor Irianto. Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International.