garbage-day.nvim: 智能的Neovim LSP内存管理工具

garbage-day.nvim: 智能的Neovim LSP内存管理工具

garbage-day.nvim Garbage collector that stops inactive LSP clients to free RAM 项目地址: https://gitcode.com/gh_mirrors/ga/garbage-day.nvim

项目简介

garbage-day.nvim 是一款专为 Neovim 设计的插件,扮演着LSP客户端的智能垃圾收集器角色,自动关闭不活动的语言服务器进程以释放内存,从而优化开发环境的性能。

目录结构及介绍

garbage-day.nvim 的项目结构清晰,便于理解和自定义:

garbage-day.nvim
├── lua           # 主要的Lua源码目录,包含了插件的核心逻辑
│   └── garbage-day.lua         # 核心模块,实现了LSP客户端管理功能
├── README.md     # 插件的说明文档,包含安装步骤、配置选项等重要信息
├── LICENSE       # 许可证文件,该项目采用GPLv3许可证
└── ...           # 可能包括其他配置或辅助文件

启动文件介绍

此插件的设计融合了Neovim的加载机制,并不需要直接手动启动文件。为了启用garbage-day.nvim,您需要通过Neovim的插件管理系统进行配置。通常,如果您使用的是如packer.nvimvim-plug这类流行的插件管理器,配置将类似于以下形式置于您的init.vim或 nvim config 中:

call plug#begin('~/.config/nvim/plugged')
Plug 'Zeioth/garbage-day.nvim', { 'do': ':UpdateRemotePlugins' }
call plug#end()

-- 配置garbage-day.nvim
if exists('g:loaded_garbage_day') && g:loaded_garbage_day
  let g:garbage_day_config = {
        \ 'aggressive_mode': 0,
        \ 'excluded_lsp_clients': [''],  -- 可按需排除某些LSP客户端
        \ 'grace_period': 900,            -- 设置不失焦后多久停止单位秒
        \ 'wakeup_delay': 0               -- 自定义延迟唤醒LSP的时间
      \ }
endif

这段配置确保了插件在Neovim启动时被正确加载和初始化。

配置文件介绍

garbage-day.nvim的主要配置是通过全局变量g:garbage_day_config来设置的,您可以在Neovim的配置文件(通常是init.vim或init.lua)中进行调整。以下是关键配置项的简述:

  • aggressive_mode: 是否开启激进模式,立即停止所有非当前缓冲区的LSP客户端。
  • excluded_lsp_clients: 列表形式,指定哪些LSP客户端不受此插件影响。
  • grace_period: Neovim失去焦点后的等待时间(秒),在此期间不会关闭LSP客户端。
  • wakeup_delay: 将鼠标移回时,延迟多少毫秒后再重启LSP,防止误触。
  • notifications: 控制是否显示触发垃圾回收的通知。
  • retries: 尝试重启LSP客户端的次数。
  • timeout: 每次尝试操作的超时时间(毫秒)。

通过合理调整上述配置项,您可以使garbage-day.nvim更好地适应个人的开发习惯和需求,达到更高效的内存管理。

garbage-day.nvim Garbage collector that stops inactive LSP clients to free RAM 项目地址: https://gitcode.com/gh_mirrors/ga/garbage-day.nvim

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

潘俭渝Erik

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值