Giter Site home page Giter Site logo

Comments (22)

xsjcTony avatar xsjcTony commented on June 2, 2024 1

哦是不是 div 里的内容也被 tranformer 给转换了🤣,这是不是 uno 本身的问题?

这铁定是uno本身的问题了。连1.0都没到,等等吧

from unocss-intellij.

re-ovo avatar re-ovo commented on June 2, 2024 1

我改了下高亮匹配规则,把没用的匹配过滤掉了

from unocss-intellij.

re-ovo avatar re-ovo commented on June 2, 2024 1

等jb审核吧,已经更新上去了

from unocss-intellij.

AiHMin avatar AiHMin commented on June 2, 2024

关于划线,目前 VSCode 的官方插件也是同样的问题,目前插件的实现逻辑都是通过把完整文件喂给 unocss 的 generator ,然后他会把所有标注好的 class,位置返回回来,然后处理,标注到 editor 里,因为考虑到 unocss 的 transformer 很多,如果手动标注划线容易不准确,因此目前的实现属于是“宁可错杀一千,不可放过一个”🤣

from unocss-intellij.

xsjcTony avatar xsjcTony commented on June 2, 2024

🤣很有道理的样子。不懂具体是咋工作的 但是有些有下划线但没有hover info就挺奇怪的。
有upstream issue吗那边。好像没找到相关的

from unocss-intellij.

re-ovo avatar re-ovo commented on June 2, 2024

下划线是下划线,其他功能是其他功能,分开的,下划线激进一些,其他功能都会相对严格的匹配语法

from unocss-intellij.

AiHMin avatar AiHMin commented on June 2, 2024

🤣很有道理的样子。不懂具体是咋工作的 但是有些有下划线但没有hover info就挺奇怪的。 有upstream issue吗那边。好像没找到相关的

VSCode 插件实现起来相对容易很多,标注划线接受一个对象,设置 range,同时可以在对象里指定一个 hoverMessage getter,这样有划线就有 hover doc,这也造成 vscode 那边,有可能有个 js 变量名划线你放上鼠标都有 doc🤣

但是 IntelliJ 这边不太行,annotator 只能设置 tooltip,好像没法插入富文本,文档只能分开实现
分开实现,就可能存在判断当前悬停位置不应该有 doc 或者就是漏掉没处理的情况

from unocss-intellij.

xsjcTony avatar xsjcTony commented on June 2, 2024

👀好像有点道理。但是其他功能有严格语法匹配的话 我没懂下划线激进一些的意义在哪儿。就有点那种 “这个是unocss的类名哦 你取变量名或者属性键名建议换个名字”🤣

from unocss-intellij.

xsjcTony avatar xsjcTony commented on June 2, 2024

或者to make things easy,那边我看设置里有个enable/disable下划线的功能,感觉可以跟进一下。但我又挺想要这个下划线的,可以区分uno的和自己的类名。 头疼🤦‍♀️

from unocss-intellij.

yanhao98 avatar yanhao98 commented on June 2, 2024

渲染出来也会变。

image

from unocss-intellij.

xsjcTony avatar xsjcTony commented on June 2, 2024

渲染出来也会变。

这个那边倒是有一样的issue unocss/unocss#2975

from unocss-intellij.

re-ovo avatar re-ovo commented on June 2, 2024

渲染出来也会变。

image

啥意思,没看懂

from unocss-intellij.

AiHMin avatar AiHMin commented on June 2, 2024

渲染出来也会变。

image

@re-ovo 哦是不是 div 里的内容也被 tranformer 给转换了🤣,这是不是 uno 本身的问题?

from unocss-intellij.

AiHMin avatar AiHMin commented on June 2, 2024

👀好像有点道理。但是其他功能有严格语法匹配的话 我没懂下划线激进一些的意义在哪儿。就有点那种 “这个是unocss的类名哦 你取变量名或者属性键名建议换个名字”🤣
或者to make things easy,那边我看设置里有个enable/disable下划线的功能,感觉可以跟进一下。但我又挺想要这个下划线的,可以区分uno的和自己的类名。 头疼🤦‍♀️

@xsjcTony 目前是标注逻辑是跟官方保持一致,直接移植的 VSCode 逻辑(逻辑还是比较简单粗暴的,基本是直接全文正则匹配的),看看后面官方会不会优化标注逻辑,如果那边没有计划的话,不行我再跟 @re-ovo 大佬优化一下

from unocss-intellij.

xsjcTony avatar xsjcTony commented on June 2, 2024

@xsjcTony 目前是标注逻辑是跟官方保持一致,直接移植的 VSCode 逻辑(逻辑还是比较简单粗暴的,基本是直接全文正则匹配的),看看后面官方会不会优化标注逻辑,如果那边没有计划的话,不行我再跟 @re-ovo 大佬优化一下

那就等官方的吧。 一般这种都是调官方API 没道理自己搞些新玩意儿的。 这问题估计vscode那边头疼的人也挺多的

from unocss-intellij.

yanhao98 avatar yanhao98 commented on June 2, 2024

渲染出来也会变。
image

@re-ovo 哦是不是 div 里的内容也被 tranformer 给转换了🤣,这是不是 uno 本身的问题?

确实是 uno 本身的问题。

from unocss-intellij.

xsjcTony avatar xsjcTony commented on June 2, 2024

upstream issue:unocss/unocss#1581 unocss/unocss#3086 跟这个issue本身无关了。

from unocss-intellij.

zyyv avatar zyyv commented on June 2, 2024

渲染出来也会变。

image
image image

https://unocss.dev/guide/extracting#extracting-from-build-tools-pipeline @xsjcTony 可以看看文档嘛 有解决方式

from unocss-intellij.

zyyv avatar zyyv commented on June 2, 2024

我觉得此issue不是bug,只是体验优化问题吧。本身就是将全量代码喂给uno去解析的,包括里面的 ts,因为可能有人会在里面书写 动态类

const color = isRed ? 'text-red' : 'text-teal'
<div :class="color" />

from unocss-intellij.

xsjcTony avatar xsjcTony commented on June 2, 2024

https://unocss.dev/guide/extracting#extracting-from-build-tools-pipeline @xsjcTony 可以看看文档嘛 有解决方式

@zyyv My bad. 我本身都没注意到这个问题的 主要上面有人提了,然后还找到了个开着的issue在那儿,就以为没解决。我的问题

我觉得此issue不是bug,只是体验优化问题吧。本身就是将全量代码喂给uno去解析的,包括里面的 ts,因为可能有人会在里面书写 动态类

字符串的我完全可以接受,并且也是合理的,但是这个 Playground 就比较离谱。没道理把 变量名 和 属性名 都一起处理的。
不过也能理解 如果要区分的话可能就要AST了。。。

fixed 没道理的,container 有一点可能(比如那些用对象形式写类名的),bg-gray-500 合理

<script>
  const fixed = {
    container: 'bg-gray-500'
  }
</script>

我不太确定这个只是下划线问题,还是连css都会提取出来。比如这个fixed(只是个例子,用这个变量名的确实离谱), 如果我class里根本没用到这个,只是js变量名用到了,那这不应该出现在提取的css里。

from unocss-intellij.

re-ovo avatar re-ovo commented on June 2, 2024

更新了,测试看看

from unocss-intellij.

xsjcTony avatar xsjcTony commented on June 2, 2024

感谢💛

emm 这个问题是,只要能解析成uno类名,好像基本在什么地方都会有下划线。 举几个栗子 image image 上面这些就完全不该有感觉 那个 container 还行毕竟实在字符串里不太好判断,可能确实是用作classname的 这些只是有下划线,没有其他问题

这俩都没问题了(虽然感觉字符串里还是保留一下比较好但是不保留也合理)

然后这个attribute上的话, 感觉行为应该和之前修复的 auto-complete 保持一致, 检查是否有presetAttributify() 下划线和hover都不应该有,如果没有启用attributify的话 image

这个让他去了 毕竟是合理的。全量解析是这样的

搞定啦✨

from unocss-intellij.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.