有关Monaco的使用疑惑
创始人
2024-04-23 20:24:46
0

前言

学习monaco editor已经有三个多月了。阅读了大部分的的文档,也看了很多相关文章,也调研了一些使用它做的大型开源项目。 一开始的疑惑已经逐渐解开,但随着学习的深入,也遇到了比较奇怪的问题。这篇文件就来聊一聊,解开的那些疑惑,以及那些没解开的疑惑。

解开和未解开的疑惑

monaco中切换文件内容,只是更改编辑器的语言模型,在这一过程中,还能够保证打开文件的光标交互状态。

一开始我以为monaco的双列显示,是可以利用自身的api实现的,但目前我还没找到这样的api,我想双列显示大概实质就是两个editor 实例。 后面还会不断探索。

令我想不通的是monaco中的changeViewZones 方法,它可以实现在编辑器中开辟一个区域,并且不影响现有的行号显示。但是使用它所注入的dom元素,去无法聚焦,被点击。试了很多个方法也没找到。这要么是一个特性,要么是一个bug。此外这个api很奇葩的地方是,你要改变changeViewZones 注入的元素,必须还要使用changeViewZones 。修改,移除。即使你把 回调函数中的changeAccessor给一个变量,依然不行。必须写到changeViewZones中。 这又是一个特性(bug)?

如果说上面的问题,50%几率是特性,50%几率是bug。那么接下来这个就是 70%放入bug,30%几率是特性。就是registerHoverProvider API。这个为某一个rang添加hover交互效果的api。内容可以是markdown。这个api比较不方便的是,调用一次只能为一个rang添加hover内容,如果我想为多个单词添加hover内容,那么就必须调用多次,非常的不合理。其实这还能忍一忍,重要的这个api,在目前的最新版0.34.1有不符合预期的行为。以下这个是官方的registerHoverProvider 例子。它将rang 设置了文件的内容range(最大值),这样只要鼠标放到内容上,就会出现效果。但其实,你将range改为(1,1,1,1) 依然能够达到该效果
在这里插入图片描述
这是完全不符合预期值的。期望是,只有当鼠标放到range中之内才会显示设置的hover内容。
难道是我这个菜鸟理解错了(遇到想不通的问题,要么是自己知识不够,要么就是对方做错了。)。大家可以试一试点击链接测试一个该案例。
https://microsoft.github.io/monaco-editor/playground.html#extending-language-services-hover-provider-example。

另外发现的一个小问题,就是有关创建editor时的150个配置参数中的 snippetSuggestions
该参数可以配置,在自动完成时,是否可以自动完成代码块, 文档上写的很清楚,该配置项,枚举值有
"none" | "top" | "bottom" | "inline" 但是默认值确实 true
在这里插入图片描述
不是我较真,最后我通过editor.getOption(102) 获取的snippetSuggestions 配置项确实是 true
所以,枚举值是不是少了一个true ? @monaco-editor官方。

该配置项的解释
https://microsoft.github.io/monaco-editor/api/interfaces/monaco.editor.IStandaloneEditorConstructionOptions.html#snippetSuggestions

就先写这么多吧,后面有了疑惑再补充。

相关内容

热门资讯

自动打开应用安卓系统,安卓系统... 你有没有想过,手机里的那些应用,有时候真是让人又爱又恨呢?有时候,我们急需某个应用,却得费老大力气去...
安卓系统防沉迷软件,守护青少年... 你有没有发现,现在手机上玩游戏的诱惑力简直让人无法抗拒?尤其是安卓系统,那丰富的游戏资源,简直让人停...
流量最快的安卓系统,揭秘流量最... 你有没有想过,为什么你的手机总是那么卡,而别人的手机却像开了挂一样流畅?是不是好奇,为什么有些安卓系...
小米5换换安卓系统,畅享极致性... 你有没有想过,你的小米5手机,那个陪伴你走过无数日夜的小家伙,是不是也该给它来个“换新装”了呢?没错...
国产的安卓系统手机,畅享智能生... 你有没有发现,最近国产的安卓系统手机越来越火了?没错,就是那种咱们自己研发的系统,那种让外国品牌都不...
安卓系统刷入停止,探究原因与解... 你有没有遇到过这种情况?手机刷机过程中突然停止了,安卓系统刷入停滞不前,心里那个急啊!别慌,今天就来...
汽车是安卓系统嘛,安卓系统在智... 你有没有想过,汽车里那个神奇的操作系统,是不是和安卓手机里的一样呢?没错,今天咱们就来聊聊这个话题—...
网易狼人杀 安卓系统,体验指尖... 亲爱的玩家们,你是否曾在深夜里,手机屏幕前,与一群好友展开一场惊心动魄的“狼人杀”对决?今天,就让我...
小米安卓系统小主机,探索小米安... 你有没有想过,家里的电视、电脑、平板,甚至手机,其实都可以变成一个超级智能的娱乐中心?没错,这就是小...
卡刷安卓系统大全,全面解析各类... 你有没有想过,你的安卓手机可以像变形金刚一样,随心所欲地变换模样?没错,今天就要给你揭秘一个神奇的世...
安卓系统测试流畅度,安卓系统流... 你有没有发现,现在手机更新换代的速度简直就像坐上了火箭呢!尤其是安卓系统,每次更新都让人眼前一亮。但...
安卓系统50怎么升级,轻松迈向... 亲爱的安卓用户们,你是否也像我一样,对安卓系统的更新充满了期待?没错,就是那个让我们的手机焕然一新的...
安卓5.1.1操作系统,系统特... 你知道吗?在手机世界里,操作系统就像是个大管家,它不仅决定了手机的脸面,还掌管着手机的所有“家务事”...
手机安卓系统如果升级,体验流畅... 亲爱的手机控们,你们有没有发现,你的安卓手机最近是不是总在提醒你更新系统呢?别急,别急,今天就来给你...
安卓系统怎么禁止待机,安卓系统... 手机待机时间短,是不是让你头疼不已?别急,今天就来教你一招,让你的安卓手机告别“短命”模式,延长待机...
亿联安卓苹果系统,跨平台沟通新... 你知道吗?在科技飞速发展的今天,手机操作系统可是咱们日常生活中不可或缺的一部分。说起手机系统,亿联安...
smoothx安卓系统安装ap... 你有没有想过,为什么你的手机里总是乱糟糟的,各种app堆在一起,找起来费劲得很?别急,今天就来教你怎...
安卓系统图库在哪里,图库应用位... 你有没有发现,手机里的照片越来越多,有时候想找一张特定的照片,却像大海捞针一样困难?别急,今天就来告...
安卓7.0系统自带彩蛋,隐藏彩... 你知道吗?安卓7.0系统里竟然藏着不少小秘密,就像一颗颗隐藏的彩蛋,等着我们去发现。今天,就让我带你...
安卓系统好用的电池,好用到飞起... 你有没有发现,用安卓手机的时候,电池续航能力简直让人爱不释手啊!没错,今天咱们就来聊聊这个话题——安...