Title
How to Write Neovim Plugin from Scratch
Neovim Plugin Development

What you will learn
Understand runtimepath
Learn how to install plugins without plugin manager
Create a very minimal plugin called "confy"
Publish your shiny new plugin!
Why take this course?
🌟 Master Neovim Plugin Development with Yuki Yoshimine! 🌟
🚀 What You Will Learn? 🚀
- Basics of Neovim and Its Runtime Environment 📚
- What is the runtime path in Neovim?
- How does Neovim interact with plugins and its runtime path?
- Installing plugins without a plugin manager.
- Understanding
pack/start
vspack/opt
directories. - The role of
require
in loading Lua modules. - Module reloading techniques to avoid restarting Neovim.
🔧 Plugin No.1 [ confy.lua ] 🔧
Learn by doing! We will start with a simple plugin, confy, from scratch:
- Writing
confy.lua
from the ground up. - Creating a basic plugin to open and reload your
init.vim
orinit.lua
. - Understanding the structure of a Neovim plugin.
- Publishing your first plugin for others to use! 🤗
🛠️ Plugin No.2 [ Wrap Console Log ] 🛠️
Building on the basics, let's create a more complex plugin:
- Writing a wrapper from scratch to handle console log wrapping.
- Porting the VSCode extension "Wrap Console Log" into Neovim.
- Implementing functionality to wrap text around your cursor into a template.
👀 My Future Plugins 🔄
Here's a sneak peek into upcoming plugins you'll learn to develop:
- Auto Pair
- SplitJoin
- Key Chain
- Key Layer
- Zettelkasten Link Jumper
- Real-time Floating Window Logger
- Smooth Scroller (on GitHub)
- IDE Backspace (on GitHub)
- Cursor Flasher (on GitHub)
- n Flasher (on GitHub)
- Star Flasher (on GitHub)
- Virtual Text Echo (can be extended to other languages)
And for the adventurous among you... 🚀 Your Own Fuzzy Finder! Boooooom! 🚀
🧠 Course Overview 🧠
An introductory course on Neovim plugin development would cover the essentials of creating plugins for this powerful text editor. Neovim, a fork of the classic Vim, enhances the editing capabilities with additional features and community-driven improvements.
The course starts with an internal understanding of Vim, focusing particularly on the runtime path. This is where Neovim looks for its runtime files, which include everything from syntax highlighting to plugin scripts and documentation. Understanding this is crucial when installing new plugins or developing your own.
We will delve into how Vim handles plugin installation pre- and post-Vim8's package feature and explore the possibility of installing plugins without a designated plugin manager. We'll also cover the use of Lua modules and how they can be loaded using the require
function, which is key to modern Neovim development.
By following the Lua Plugin convention or the Vimscript convention, you will learn to create a minimal yet functional plugin called confy. This hands-on experience will allow you to grasp the fundamentals of Neovim plugin development and enable you to share your creations with the wider community.
By the end of this course, students should be well-versed in the art of Neovim plugin creation, ready to push their limits with advanced features and become contributors to the vibrant ecosystem that is Neovim. 🚀✨
Join us on this journey to unlock the full potential of text editing with Neovim, and embark on a path to becoming a plugin development pro! Enroll now and transform your text editor into a powerhouse of productivity tailored just for you. 🖥️💡
Reviews
Charts
Price

Rating

Enrollment distribution
