如何从头开始编写 Neovim 插件

How to Write Neovim Plugin from Scratch

你会学到什么

  • 了解运行时路径
  • 了解如何在没有插件管理器的情况下安装插件
  • 创建一个名为“confy”的非常小的插件
  • 发布你闪亮的新插件!

要求

  • Vim 基础知识

描述

你会学到什么?

基本

  • 什么是运行时路径?
  • Vim 插件与运行时路径的关系
  • 如何在没有“插件管理器”的情况下安装插件?
  • pack/start 和 pack/opt 之间的区别
  • “需要”是做什么的?
  • 在不关闭 Neovim 的情况下重新加载模块。

插件一号 [ confy.lua ]

  • 从头开始写 confy
  • 用于打开和重新加载 init.vim 或 init.lua 的简单插件
  • 这应该让你开始基本的插件结构
  • 并最终发布它,以便其他人可以使用您闪亮的新插件!

插件 No.2 [ Wrap Console Log ]

  • 从头开始编写包装器
  • VSCode 扩展的端口 Wrap Console Log
  • 它将光标下的单词包装到模板中

我未来的课程?

  • 自动配对
  • 拆分连接
  • 钥匙链
  • 关键层
  • 笔记框链接跳线
  • 实时浮动窗口记录器
  • 平滑滚动条(在 github 上)
  • IDE 退格键(在 github 上)
  • 光标闪光器(在 github 上)
  • n 闪光器(在 github 上)
  • 星星闪光器(在 github 上)
  • vimscript 虚拟文本回显(可能会扩展到其他语言)
  • 如果您喜欢冒险……您自己的模糊查找器!呜呜呜!

Neovim 插件开发的入门课程将涵盖为流行的文本编辑器 Neovim 创建插件的基础知识。Neovim 是 Vim 文本编辑器的一个分支,提供了一些新功能和增强功能。本课程将首先概述对 Vim 的一些内部理解,尤其是运行时路径。

“运行时路径”是 Vim 查找其运行时文件的目录列表,例如语法高亮文件、插件脚本和文档。这些目录通常存储在“runtimepath”选项中,这是一个以逗号分隔的目录路径列表。

运行时路径很重要,因为它决定了 Vim 在启动时在哪里寻找它的运行时文件。例如,如果用户安装了一个新插件,他们可能需要将插件的目录添加到运行时路径,以便 Vim 可以找到插件的脚本文件。

在对运行时路径做了一些实验之后,我们看看 vim 在 Vim8 中引入包功能前后如何处理插件的安装。我们还尝试在没有插件管理器的情况下安装插件。

然后我们看看 Lua 模块是如何适应图片的,以及它们是如何使用“require”函数加载的。

最后我们创建了一个非常小的插件,叫做 confy!

首先使用 setup 函数遵循 Lua 插件约定。

其次,遵循使用插件目录和 vim 全局变量的 Vimscript 约定。

在课程结束时,学生应该能够创建自己的 Neovim 插件并了解 Neovim 插件开发的基础知识。

本课程适合谁:

  • 初学者 Neovim 用户对 Neovim 插件开发感到好奇
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。