Modern Vim 9781680502626, 9781680500400, 9781680502725, 9781680502398, 9781680502527, 9781680502992, 9781937785468, 9781934356760

Turn Vim into a full-blown development environment using Vim 8’s new features and this sequel to the beloved bestseller

790 165 2MB

English Year 2018

Report DMCA / Copyright

DOWNLOAD FILE

Modern Vim
 9781680502626, 9781680500400, 9781680502725, 9781680502398, 9781680502527, 9781680502992, 9781937785468, 9781934356760

Table of contents :
Acknowledgments

Introduction
- How This Book Is Structured
- A Note on Vim Versions
- Other Software Requirements
- Notation for Simulating Vim on the Page
- Minimal Configuration
- Using Factory Settings
- Downloading the Examples

Get Modern Vim
- Upgrade to Vim 8
- Switch to Neovim
- Use Both
- Switching to Neovim
- Enabling Python Support in Neovim

Installing Plugins
- Understanding Scripts, Plugins, and Packages
- Installing Plugins to Your Package
- Managing Plugins with minpac
- Opening Files
- Finding Files Using Fuzzy Path Matching
- Finding Files Semantically
- Jumping to an Alternate File

Working with the Quickfix List
- Running a Build and Navigating Failures
- Switching Compilers
- Linting the Current File
- Searching Files with Grep-Alikes
- Running Tests and Browsing Failures

Neovim’s Built-In Terminal Emulator
- Use Normal Mode Commands to Interact with the Shell
- Use Neovim as a Window Manager
- Control Processes Remotely with Vim Script
- Grokking Terminal Mode
- Running Programs in a Terminal Buffer
- Managing Windows That Contain Terminal Buffers
- Using Normal Mode Commands in a Terminal Buffer
- Sending Commands to a Terminal Buffer
- Applying Customizations to Your Shell in a Terminal Buffer
- Avoiding Nested Neovim Instances
- Using an Existing nvim Instance as the Preferred Editor

Sessions
- Make Restarting Vim Frictionless
- Make Switching Projects Frictionless
- Saving and Restoring Sessions
- Making Undo Persist Between Sessions
- Restarting Terminal Processes When Resuming a Session

Configuring Vim
- Using Autocommands to Respond to Events
- Respecting Project Conventions
- Setting Buffer-Local Configuration Per Project

What’s Next for Modern Vim?
- Integrating with the Language Server Protocol
- What’s Next for Vim 8
- What’s Next for Neovim

Polecaj historie