我写了一个VSCode的仿Neovide光标动画

Neovide的灵魂之一就是它的光标动画(我就是图这个才用neovim的 ),还好VSCode中有一个插件Custom CSS and JS Loader,支持我们自己向注入CSS和JS,因此可以使用这个途径,直接写个注入脚本,检测VSCode编辑区的光标,然后挂载canvas实现动画效果。具体的动画实现参考neovide: No Nonsense Neovim Client in Rust的源码,至于光标的检测是参考的reddit上一个大佬的代码:I made neovide alike cursor effect on vscode。

实现效果

话不多说先看效果

单个光标

多个光标

现有问题

reddit上面大佬的代码只兼容单个光标,当有多个光标时,他的动画绑定就有问题,有时失效乱飘,但是他的代码在分屏时可以处理屏间光标跳转。对于我个人而言,多光标操作还是很频繁的,所以优先处理了多光标适配,大致原理就是给每个光标dom节点绑定一个自定义的id属性,但是由于分屏之后两个vscode两个分屏中的cursor不是同一个实例,所以原代码的跨屏动画就没有了,不过每个分屏中的动画还是能正常运行的。

使用方式

github链接:LengineerC/vscode-neovide-cursor: A Neovide like cursor animation for VS Code

下载neovide-cursor.js,或直接复制代码自己找个文件保存。

VSCode安装Custom CSS and JS loader插件, 向settings.json添加配置:

go 复制代码
```
"vscode_custom_css.imports": [
    "file:///C:/path/to/your/neovide-cursor.js"
]
```

然后ctrl+shift+p执行Enable Custom CSS and JS后重启VSCode即可

修改配置的话保存修改后重新执行Enable Custom CSS and JS或Reload Custom CSS and JS就行

有bug欢迎提出issue!!

相关推荐
oicola4 分钟前
Ant Design v5 vs Tailwind CSS:组件库与样式框架的终极对决
前端·css
溪语流沙9 分钟前
【Web全栈进阶】Vue Router + Pinia:SPA路由与全局状态
前端·javascript·vue.js
ManageEngineITSM17 分钟前
工单优先级怎么定?影响×紧急度矩阵的设计与落地方法
java·大数据·运维·前端·数据库·变更管理
智商网输送线配件21 分钟前
电子制造零散耗材补货实战:小批量混批采购平台怎么选才不停机?
大数据·服务器·前端·数据库·自动化
梦帮科技24 分钟前
Web 漏洞攻防深度:WAF 规则逃逸技术(畸形分块传输、双重编码)与对抗加固
linux·前端·网络安全·ssl·web
兰亭妙微UI设计公司31 分钟前
兰亭妙微软件界面设计公司的解锁按钮设计10大密码
开发语言·前端·javascript
迪幻1 小时前
封装自己的 npm 依赖并存储到个人 GitHub
前端·npm·github
u0111026751 小时前
WebP 转成 PNG 后为什么更大?图片格式转换不等于压缩
前端·javascript·vue.js
万少1 小时前
Qoder sonus模型 20分钟,复刻 马斯克 飞天汽车
前端·后端·算法
java1234_小锋2 小时前
【技术专题】HTML5 网页技术 - HTML5 列表标签
前端·html·html5