mirror of
https://github.com/iggredible/Learn-Vim
synced 2024-11-23 02:53:04 +00:00
Change the heading to follow markdown style
This commit is contained in:
parent
59a9ff3141
commit
8bc091ce56
27 changed files with 27 additions and 135 deletions
|
@ -1,8 +1,4 @@
|
||||||
---
|
# Ch01. Starting Vim
|
||||||
title: "Starting Vim"
|
|
||||||
metaTitle: "Starting Vim"
|
|
||||||
metaDescription: "Learn different ways to start Vim from the terminal."
|
|
||||||
---
|
|
||||||
|
|
||||||
In this chapter, you will learn different ways to start Vim from the terminal. I was using Vim 8.2 when writing this guide. If you use Neovim or an older version of Vim, you should be (mostly) fine, but be aware that some commands might not be available.
|
In this chapter, you will learn different ways to start Vim from the terminal. I was using Vim 8.2 when writing this guide. If you use Neovim or an older version of Vim, you should be (mostly) fine, but be aware that some commands might not be available.
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,4 @@
|
||||||
---
|
# Ch02. Buffers, Windows, and Tabs
|
||||||
title: "Buffers, Windows, and Tabs"
|
|
||||||
metaTitle: "Buffers, Windows, and Tabs"
|
|
||||||
metaDescription: "What do buffers, windows, and tabs represent in Vim?."
|
|
||||||
---
|
|
||||||
|
|
||||||
If you have used a modern text editor, you are probably familiar with windows and tabs. Vim has three abstractions instead of two: buffers, windows, and tabs. In this chapter, I will explain how buffers, windows, and tabs work in Vim.
|
If you have used a modern text editor, you are probably familiar with windows and tabs. Vim has three abstractions instead of two: buffers, windows, and tabs. In this chapter, I will explain how buffers, windows, and tabs work in Vim.
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,4 @@
|
||||||
---
|
# Ch03. Opening And Searching Files
|
||||||
title: "Opening And Searching Files"
|
|
||||||
metaTitle: "Opening And Searching Files"
|
|
||||||
metaDescription: "How to open and search files in Vim?"
|
|
||||||
---
|
|
||||||
|
|
||||||
The goal of this chapter is to introduce you to opening and searching files in Vim. Being able to search quickly is a great way to jump-start your Vim productivity. One reason it took me a long time to get onboard with Vim is because I didn't know how to find things quickly like many popular text editors.
|
The goal of this chapter is to introduce you to opening and searching files in Vim. Being able to search quickly is a great way to jump-start your Vim productivity. One reason it took me a long time to get onboard with Vim is because I didn't know how to find things quickly like many popular text editors.
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,4 @@
|
||||||
---
|
# Ch04. Vim Grammar
|
||||||
title: "Vim Grammar"
|
|
||||||
metaTitle: "Vim Grammar"
|
|
||||||
metaDescription: "Learn how to speak to Vim."
|
|
||||||
---
|
|
||||||
|
|
||||||
It is easy to get intimidated by the complexity of many Vim commands. If you see a Vim user doing `gUfV` or `1GdG`, you may not immediately know what these commands do. In this chapter, I will break down the general structure of Vim commands into a simple grammar rule.
|
It is easy to get intimidated by the complexity of many Vim commands. If you see a Vim user doing `gUfV` or `1GdG`, you may not immediately know what these commands do. In this chapter, I will break down the general structure of Vim commands into a simple grammar rule.
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,4 @@
|
||||||
---
|
# Ch05. Moving In A File
|
||||||
title: "Moving In A File"
|
|
||||||
metaTitle: "Moving In A File"
|
|
||||||
metaDescription: "How to efficiently move around in a file."
|
|
||||||
---
|
|
||||||
|
|
||||||
In the beginning, moving with a keyboard will feel awkward and incredibly slow, but don't give up! Once you get used to it, you can go anywhere in a file faster than a mouse.
|
In the beginning, moving with a keyboard will feel awkward and incredibly slow, but don't give up! Once you get used to it, you can go anywhere in a file faster than a mouse.
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,4 @@
|
||||||
---
|
# Ch06. Insert Mode
|
||||||
title: "Insert Mode"
|
|
||||||
metaTitle: "Insert Mode"
|
|
||||||
metaDescription: "How to work with insert mode."
|
|
||||||
---
|
|
||||||
|
|
||||||
Insert mode is the default mode of many text editors. In this mode, what you type is what you get.
|
Insert mode is the default mode of many text editors. In this mode, what you type is what you get.
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,4 @@
|
||||||
---
|
# Ch07. The Dot Command
|
||||||
title: "The Dot Command"
|
|
||||||
metaTitle: "The Dot Command"
|
|
||||||
metaDescription: "Be lazy and avoid repetition with the dot command."
|
|
||||||
---
|
|
||||||
|
|
||||||
When editing a text, as much as you can, avoid redoing what you just did. In this chapter, you will learn how to use the dot command to easily replay the previous change. It is the simplest and most versatile command to reduce repetitions.
|
When editing a text, as much as you can, avoid redoing what you just did. In this chapter, you will learn how to use the dot command to easily replay the previous change. It is the simplest and most versatile command to reduce repetitions.
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,4 @@
|
||||||
---
|
# Ch08. Registers
|
||||||
title: "Registers"
|
|
||||||
metaTitle: "Registers"
|
|
||||||
metaDescription: "Learn how to store data inside Vim registers."
|
|
||||||
---
|
|
||||||
|
|
||||||
Learning Vim registers is like learning algebra for the first time. You don't think you need them until you learn them.
|
Learning Vim registers is like learning algebra for the first time. You don't think you need them until you learn them.
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,4 @@
|
||||||
---
|
# Ch09. Macros
|
||||||
title: "Macros"
|
|
||||||
metaTitle: "Macros"
|
|
||||||
metaDescription: "How do you automate action with macros?"
|
|
||||||
---
|
|
||||||
|
|
||||||
When editing files, you may find yourself repeating the same actions. Wouldn't it be nice if you can do those actions once and replay them whenever you need it? With Vim macros, you can record actions and store them inside Vim registers.
|
When editing files, you may find yourself repeating the same actions. Wouldn't it be nice if you can do those actions once and replay them whenever you need it? With Vim macros, you can record actions and store them inside Vim registers.
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,4 @@
|
||||||
---
|
# Ch10. Undo
|
||||||
title: "Undo"
|
|
||||||
metaTitle: "Undo"
|
|
||||||
metaDescription: "Vim undo deep dive."
|
|
||||||
---
|
|
||||||
|
|
||||||
Undo is an essential feature in any modern software. Vim's undo system is not only capable of undoing and redoing mistakes, but allows you to manipulate and retrieve text across time. In this chapter, you will learn how to undo and redo your text, navigate an undo branch, persist undo, and travel through time.
|
Undo is an essential feature in any modern software. Vim's undo system is not only capable of undoing and redoing mistakes, but allows you to manipulate and retrieve text across time. In this chapter, you will learn how to undo and redo your text, navigate an undo branch, persist undo, and travel through time.
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,4 @@
|
||||||
---
|
# Ch11. Visual Mode
|
||||||
title: "Visual Mode"
|
|
||||||
metaTitle: "Visual Mode"
|
|
||||||
metaDescription: "Mastering the visual mode."
|
|
||||||
---
|
|
||||||
|
|
||||||
With visual editors (like LibreOffice Writer, Microsoft Word) you probably know that you can highlight a block of text and apply changes to it. Vim can too, with visual mode. Vim has three different visual modes to use. In this chapter, you will learn how to use each visual mode to manipulate blocks of texts efficiently.
|
With visual editors (like LibreOffice Writer, Microsoft Word) you probably know that you can highlight a block of text and apply changes to it. Vim can too, with visual mode. Vim has three different visual modes to use. In this chapter, you will learn how to use each visual mode to manipulate blocks of texts efficiently.
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,4 @@
|
||||||
---
|
# Ch12. Search And Substitute
|
||||||
title: "Search and Substitute"
|
|
||||||
metaTitle: "Search and Substitute"
|
|
||||||
metaDescription: "Learn how to search and substitute all things."
|
|
||||||
---
|
|
||||||
|
|
||||||
This chapter covers two separate but related concepts: search and substitute. Many times, the texts that you are searching for are not straightforward and you must search for a common pattern. By learning how to use meaningful patterns in search and substitute instead of literal strings, you will be able to target any text quickly.
|
This chapter covers two separate but related concepts: search and substitute. Many times, the texts that you are searching for are not straightforward and you must search for a common pattern. By learning how to use meaningful patterns in search and substitute instead of literal strings, you will be able to target any text quickly.
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,4 @@
|
||||||
---
|
# Ch13. The Global Command
|
||||||
title: "The Global Command"
|
|
||||||
metaTitle: "The Global Command"
|
|
||||||
metaDescription: "How to perform multiple commands with the global command?"
|
|
||||||
---
|
|
||||||
|
|
||||||
So far you have learned how to repeat the last change with the dot command (`.`), to replay actions with macros (`q`), and to store texts in the registers (`"`).
|
So far you have learned how to repeat the last change with the dot command (`.`), to replay actions with macros (`q`), and to store texts in the registers (`"`).
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,4 @@
|
||||||
---
|
# Ch14. External Commands
|
||||||
title: "External Commands"
|
|
||||||
metaTitle: "External Commands"
|
|
||||||
metaDescription: "Learn how to use external commands to extend Vim's functionality."
|
|
||||||
---
|
|
||||||
|
|
||||||
Inside the Unix system, you will find many small, hyper-specialized commands where each does one thing well. You can chain these commands to work together to solve a complex problem. Wouldn't it be great if you can use these commands from inside Vim?
|
Inside the Unix system, you will find many small, hyper-specialized commands where each does one thing well. You can chain these commands to work together to solve a complex problem. Wouldn't it be great if you can use these commands from inside Vim?
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,4 @@
|
||||||
---
|
# Ch15. Command-line Mode
|
||||||
title: "Command-Line Mode"
|
|
||||||
metaTitle: "Command-Line Mode"
|
|
||||||
metaDescription: "What is the command-line mode in Vim?"
|
|
||||||
---
|
|
||||||
|
|
||||||
In the last three chapters, you learned how to use the search commands (`/`, `?`), substitute command (`:s`), global command (`:g`), and external command (`!`). These are examples of command-line mode commands.
|
In the last three chapters, you learned how to use the search commands (`/`, `?`), substitute command (`:s`), global command (`:g`), and external command (`!`). These are examples of command-line mode commands.
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,4 @@
|
||||||
---
|
# Ch16. Tags
|
||||||
title: "Tags"
|
|
||||||
metaTitle: "Tags"
|
|
||||||
metaDescription: "How to use tags to jump to any definition?"
|
|
||||||
---
|
|
||||||
|
|
||||||
One useful feature in text editing is being able to go to any definition quickly. In this chapter, you will learn how to use Vim tags to do that.
|
One useful feature in text editing is being able to go to any definition quickly. In this chapter, you will learn how to use Vim tags to do that.
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,4 @@
|
||||||
---
|
# Ch17. Fold
|
||||||
title: "Fold"
|
|
||||||
metaTitle: "Fold"
|
|
||||||
metaDescription: "Learn Vim fold to organize your file."
|
|
||||||
---
|
|
||||||
|
|
||||||
When you read a file, often there are many irrelevant text that hinders you from understanding what that file does. To hide this unnecessary information, you can use Vim fold.
|
When you read a file, often there are many irrelevant text that hinders you from understanding what that file does. To hide this unnecessary information, you can use Vim fold.
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,4 @@
|
||||||
---
|
# Ch18. Git
|
||||||
title: "Git"
|
|
||||||
metaTitle: "Git"
|
|
||||||
metaDescription: "How to integrate Vim and git."
|
|
||||||
---
|
|
||||||
|
|
||||||
Vim and git are two great tools for two different things. Git is a version control tool. Vim is a text editor. In this chapter, you will learn different ways to integrate Vim and git together.
|
Vim and git are two great tools for two different things. Git is a version control tool. Vim is a text editor. In this chapter, you will learn different ways to integrate Vim and git together.
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,4 @@
|
||||||
---
|
# Ch19. Compile
|
||||||
title: "Compile"
|
|
||||||
metaTitle: "Compile"
|
|
||||||
metaDescription: "Learn about Vim compile feature."
|
|
||||||
---
|
|
||||||
|
|
||||||
Compiling is an important subject for many languages. In this chapter, you will learn how to compile from Vim. In addition, you will look at ways to take advantage of Vim's `:make` command.
|
Compiling is an important subject for many languages. In this chapter, you will learn how to compile from Vim. In addition, you will look at ways to take advantage of Vim's `:make` command.
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,4 @@
|
||||||
---
|
# Ch20. Views, Sessions, And Viminfo
|
||||||
title: "Views, Sessions, and Viminfo"
|
|
||||||
metaTitle: "Views, Sessions, and Viminfo"
|
|
||||||
metaDescription: "Views, Sessions, and Viminfo."
|
|
||||||
---
|
|
||||||
|
|
||||||
After you worked on a project for a while, you may find that the project to gradually take shape with its own settings, folds, buffers, layouts, etc. It's like decorating your apartment to make it feel like home.
|
After you worked on a project for a while, you may find that the project to gradually take shape with its own settings, folds, buffers, layouts, etc. It's like decorating your apartment to make it feel like home.
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,4 @@
|
||||||
---
|
# Ch21. Vimrc
|
||||||
title: "Vimrc"
|
|
||||||
metaTitle: "Vimrc"
|
|
||||||
metaDescription: "Learn about vimrc structure."
|
|
||||||
---
|
|
||||||
|
|
||||||
In the previous chapters, you learned how to use Vim. In this chapter, you will learn how to orgnize and configure vimrc.
|
In the previous chapters, you learned how to use Vim. In this chapter, you will learn how to orgnize and configure vimrc.
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,4 @@
|
||||||
---
|
# Ch22. Vim Packages
|
||||||
title: "Vim Packages"
|
|
||||||
metaTitle: "Vim Packages"
|
|
||||||
metaDescription: "How to install packages natively?"
|
|
||||||
---
|
|
||||||
|
|
||||||
The previous chapter talked about using external plugin managers to install plugins. However, starting at version 8, Vim comes with its own built-in plugin manager called *packages*. In this chapter, you will learn how to use Vim packages to install plugins.
|
The previous chapter talked about using external plugin managers to install plugins. However, starting at version 8, Vim comes with its own built-in plugin manager called *packages*. In this chapter, you will learn how to use Vim packages to install plugins.
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,4 @@
|
||||||
---
|
# Ch23. Vim Runtime
|
||||||
title: "Vim Runtime"
|
|
||||||
metaTitle: "Vim Runtime"
|
|
||||||
metaDescription: "Learn about how Vim runtime paths work."
|
|
||||||
---
|
|
||||||
|
|
||||||
In the previous chapters, you learned that Vim automatically looks for special paths like `pack/` (Ch 22) and `compiler/` (Ch 19) inside the `~/.vim/` directory. These are examples of Vim runtime paths.
|
In the previous chapters, you learned that Vim automatically looks for special paths like `pack/` (Ch 22) and `compiler/` (Ch 19) inside the `~/.vim/` directory. These are examples of Vim runtime paths.
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,4 @@
|
||||||
---
|
# Ch24. Vimscript Basic Data Types
|
||||||
title: "Vimscript Basic Data Types"
|
|
||||||
metaTitle: "Vimscript Basic Data Types"
|
|
||||||
metaDescription: "Learn the common data types of Vimscript."
|
|
||||||
---
|
|
||||||
|
|
||||||
In the next few chapters, you will learn about Vimscript, Vim's built-in programming language.
|
In the next few chapters, you will learn about Vimscript, Vim's built-in programming language.
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,4 @@
|
||||||
---
|
# Ch25. Vimscript Conditionals And Loops
|
||||||
title: "Conditionals and Loops"
|
|
||||||
metaTitle: "Conditionals and Loops"
|
|
||||||
metaDescription: "How to write basic expressions with conditionals and loops."
|
|
||||||
---
|
|
||||||
|
|
||||||
In this chapter, you will learn about conditionals and loops using the data types you learned in the previous chapter.
|
In this chapter, you will learn about conditionals and loops using the data types you learned in the previous chapter.
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,4 @@
|
||||||
---
|
# Ch26. Vimscript Variables And Scopes
|
||||||
title: "Variables and Scopes"
|
|
||||||
metaTitle: "Variables and Scopes"
|
|
||||||
metaDescription: "What are the different variable scopes in Vim?"
|
|
||||||
---
|
|
||||||
|
|
||||||
Before diving into Vimscript functions, let's learn about the different sources and scopes of Vim variables.
|
Before diving into Vimscript functions, let's learn about the different sources and scopes of Vim variables.
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,4 @@
|
||||||
---
|
# Ch27. Vimscript Functions
|
||||||
title: "Vimscript Functions"
|
|
||||||
metaTitle: "Vimscript Functions"
|
|
||||||
metaDescription: "Vimscript Functions"
|
|
||||||
---
|
|
||||||
|
|
||||||
Functions are the pinnacles of programming. Can you imagine a programming language without functions? It is the ultimate means of abstraction. In this chapter, you will learn how to create your own Vimscript functions.
|
Functions are the pinnacles of programming. Can you imagine a programming language without functions? It is the ultimate means of abstraction. In this chapter, you will learn how to create your own Vimscript functions.
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue