用lsyncd加速vim language server
远程编辑在VSCode里面的解决方案是 remote ssh, VSCode会在远端运行一个agent以加速language server对代码文件的访问和解析。然而对vimer,我们可能的解决方案是sshfs,这个的问题在于通过sshfs对文件的访问很慢,导致coc-vim这种ls client慢到基本不能用的地步。
那么我们可以用lsyncd来帮忙,这东西结合了inotify和rsync来实现近实时的目录同步。我们可以在本地clone一份代码,然后建立一个lsyncd的配置文件lsyncd.conf:
sync {
default.rsync,
source = "/home/user/intel/machine/proj",
target = "machine:/root/src/proj",
delay = 5,
delete = false,
excludeFrom = "/home/user/intel/machine/proj/lsyncd.exclude",
rsync = {
binary = "/usr/bin/rsync",
archive = true,
compress = true,
chown = "root:root"
}
}
其中的lsyncd.exclude是需要exclude的一些文件,比如.git等:
node_modules
.git
dist
lib
lsyncd.conf
lsyncd.exclude
lsyncd.pid
然后,我们只需要启动lsyncd的daemon就可以直接在本地用vim编辑,实时同步到远端了。因为language server访问的是本地文件,速度杠杠的。
lsyncd -pidfile lsyncd.pid lsyncd.conf
1 声望
1 粉丝
推荐阅读
simple-https-server
{代码...}
FengShao阅读 447
Linux - Vim
一、Vim基本操作删除字符:x在交互模式下,将光标定位到一个你想删除的字符上,按下字母键x,你会发现这个字符被删除了删除多个字符:数字 + x也可以一次性删除多个字符,只需要在按x键之前输入数字即可可以先按...
阿南阅读 328
less,more,vi命令光标移动快捷键速记
less,more,vi 命令是 Linux 下查看文档和日志比较常用的命令。在使用不是那么频繁时,可能会忘记如何快速移动光标。为了增强记忆,这次就来一起过一下。首先 less 命令,官方帮助我们用 less --help 可以查询,...
IT大飞阅读 301
千姿百态,瞬息万变,Win11系统NeoVim打造全能/全栈编辑器(前端/Golang/Ruby/ChatGpt)
我曾经多次向人推荐Vim,其热情程度有些类似现在卖保险的,有的时候,人们会因为一些弥足珍贵的美好暗暗渴望一个巨大的负面,比如因为想重温手动挡的快乐而渴望买下一辆二十万公里的老爷车,比如因为所谓完美的音...
刘悦的技术博客阅读 154
vim golang 泛型异常提醒错误问题(expected ']', found string)
开发环境vim + golang + vim-go + ale + Ycmvim-go + ale 提供语言检测, 自动提示, 自动修复支持Ycm 提供补全支持 {代码...} 问题基于以上环境, 开发中定义泛型类型时总是报错, 如下 {代码...} 踩坑过程这个错误...
Yi_Zhi_Yu
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。