Giter Site home page Giter Site logo

unocss插件报错 about unocss-intellij HOT 10 CLOSED

re-ovo avatar re-ovo commented on June 2, 2024
unocss插件报错

from unocss-intellij.

Comments (10)

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

怎么复现呢

from unocss-intellij.

zxstrive avatar zxstrive commented on June 2, 2024

不知道什么时候会出现,之前用的时候 webstorm会卡死,要通过任务管理器结束进程才行,然后向 intellij 反应了这个问题,他们建议禁用 unocss 插件,没问题,后来 webstorm 更新后我又启用了插件,现在不会卡死了,但报上面那样的错误;另外在使用的时,建议在class属性中提示,现在不管写什么属性都会有 unocss 的提示,没必要,而且会有卡顿现象。

from unocss-intellij.

ilxqx avatar ilxqx commented on June 2, 2024

我的插件,时不时报这个错误:
java.lang.RuntimeException: Cannot overwrite a zero-length range – use appendLeft or prependRight instead
at me.rerere.unocssintellij.UnocssService$resolveAnnotations$$inlined$sendCommand$1.invoke(UnocssProcess.kt:138)
at me.rerere.unocssintellij.UnocssService$resolveAnnotations$$inlined$sendCommand$1.invoke(UnocssProcess.kt:135)
at me.rerere.unocssintellij.UnocssProcess$1$1.invoke(UnocssProcess.kt:74)
at me.rerere.unocssintellij.UnocssProcess$1$1.invoke(UnocssProcess.kt:58)
at kotlin.concurrent.ThreadsKt$thread$thread$1.run(Thread.kt:30)

from unocss-intellij.

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

我的插件,时不时报这个错误: java.lang.RuntimeException: Cannot overwrite a zero-length range – use appendLeft or prependRight instead at me.rerere.unocssintellij.UnocssService$resolveAnnotations$$inlined$sendCommand$1.invoke(UnocssProcess.kt:138) at me.rerere.unocssintellij.UnocssService$resolveAnnotations$$inlined$sendCommand$1.invoke(UnocssProcess.kt:135) at me.rerere.unocssintellij.UnocssProcess$1$1.invoke(UnocssProcess.kt:74) at me.rerere.unocssintellij.UnocssProcess$1$1.invoke(UnocssProcess.kt:58) at kotlin.concurrent.ThreadsKt$thread$thread$1.run(Thread.kt:30)

什么环境?什么配置?

from unocss-intellij.

ilxqx avatar ilxqx commented on June 2, 2024

unocss: 0.58.3
操作系统: MacOS 13.6.3
webstorm: 2023.3.2
webstorm unocss 插件: 1.3.10
image

uno.config.js

import presetIcons from "@unocss/preset-icons";
import presetUno from "@unocss/preset-uno";
import transformerCompileClass from "@unocss/transformer-compile-class";
import transformerDirectives from "@unocss/transformer-directives";
import transformerVariantGroup from "@unocss/transformer-variant-group";
import { presetApplet } from "@unocss-applet/preset-applet";
import { defineConfig } from "unocss";
import presetAnimations from "unocss-preset-animations";
import presetWeapp from "unocss-preset-weapp";

export default defineConfig({
  presets: [
    presetUno(),
    presetIcons({
      prefix: "i-",
      scale: 1.2,
      warn: true,
      extraProperties: {
        display: "inline-block",
      },
    }),
    presetAnimations(),
    // 做单位转换处理,将默认单位转为rpx
    presetWeapp({
      platform: "uni-app",
      transform: false,
      isH5: false,
      whRpx: true,
    }),
    // 做类名特殊字符转换处理
    presetApplet({
      preflight: false,
      unsupportedChars: ["?"],
    }),
  ],
  transformers: [
    transformerVariantGroup(),
    transformerDirectives({
      enforce: "pre",
    }),
    transformerCompileClass(),
  ],
  shortcuts: [
    {
      "flex-center": "flex items-center justify-center",
      "flex-row-center": "flex flex-row justify-center",
      "flex-col-center": "flex flex-col justify-center",
      "flex-column": "flex flex-col items-center justify-center",
      "flex-between": "flex items-center justify-between",
      "card-container": "flex flex-col gap-normal px-large py-normal",
      card: "rounded-normal bg-white overflow-hidden",
      "card-padding": "pt-small pb-huge",
    },
    [/^size-(.*)$/, ([, n]) => `w-${n} h-${n}`],
  ],
  rules: [
    // 移动端专属
    [
      "p-safe",
      {
        padding:
          "env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)",
      },
    ],
    ["pt-safe", { "padding-top": "env(safe-area-inset-top)" }],
    ["pb-safe", { "padding-bottom": "env(safe-area-inset-bottom)" }],
    ["px-safe", { "padding-left": "env(safe-area-inset-left)", "padding-right": "env(safe-area-inset-right)" }],
    ["py-safe", { "padding-top": "env(safe-area-inset-top)", "padding-bottom": "env(safe-area-inset-bottom)" }],
    [
      /^([pm])([trblxy])?-(tiny|small|normal|large|huge)$/,
      ([, property, mode, size]) => {
        const name = property === "p" ? "padding" : "margin";
        const values = {
          tiny: `var(--${name}-tiny)`,
          small: `var(--${name}-small)`,
          normal: `var(--${name}-normal)`,
          large: `var(--${name}-large)`,
          huge: `var(--${name}-huge)`,
        };
        const value = values[size];

        switch (mode) {
          case "t":
            return {
              [`${name}-top`]: value,
            };
          case "r":
            return {
              [`${name}-right`]: value,
            };
          case "b":
            return {
              [`${name}-bottom`]: value,
            };
          case "l":
            return {
              [`${name}-left`]: value,
            };
          case "x":
            return {
              [`${name}-left`]: value,
              [`${name}-right`]: value,
            };
          case "y":
            return {
              [`${name}-top`]: value,
              [`${name}-bottom`]: value,
            };
          default: {
            return {
              [`${name}`]: value,
            };
          }
        }
      },
    ],
    [
      /^gap(-[xy])?-(small|normal|large|huge)$/,
      ([, mode, size]) => {
        const values = {
          tiny: "var(--gap-tiny)",
          small: "var(--gap-small)",
          normal: "var(--gap-normal)",
          large: "var(--gap-large)",
          huge: "var(--gap-huge)",
        };
        const value = values[size];

        switch (mode) {
          case "-x":
            return {
              "column-gap": value,
            };
          case "-y":
            return {
              "row-gap": value,
            };
          default: {
            return {
              gap: value,
            };
          }
        }
      },
    ],
    [
      /^bg-gradient-(theme|success|warning|error|blue|green|orange|purple|red|pink)$/,
      ([, color]) => {
        return {
          "background-image": `var(--color-${color}-gradient)`,
        };
      },
    ],
  ],
  theme: {
    colors: {
      theme: "var(--color-theme)",
      "theme-lighter": "var(--color-theme-lighter)",
      success: "var(--color-success)",
      "success-lighter": "var(--color-success-lighter)",
      warning: "var(--color-warning)",
      "warning-lighter": "var(--color-warning-lighter)",
      error: "var(--color-error)",
      "error-lighter": "var(--color-error-lighter)",
      blue: "var(--color-blue)",
      "blue-lighter": "var(--color-blue-lighter)",
      green: "var(--color-green)",
      "green-lighter": "var(--color-green-lighter)",
      orange: "var(--color-orange)",
      "orange-lighter": "var(--color-orange-lighter)",
      purple: "var(--color-purple)",
      "purple-lighter": "var(--color-purple-lighter)",
      red: "var(--color-red)",
      "red-lighter": "var(--color-red-lighter)",
      pink: "var(--color-pink)",
      "pink-lighter": "var(--color-pink-lighter)",
      link: "var(--color-link)",
      black: "var(--color-black)",
      white: "var(--color-white)",
      "gray-lighter": "var(--color-gray-lighter)",
    },
    backgroundColor: {
      gray: "var(--background-color-gray)",
      grayHover: "var(--background-color-gray-hover)",
      mask: "var(--background-color-mask)",
    },
    borderColor: {
      normal: "var(--border-color-normal)",
      lighter: "var(--border-color-lighter)",
      darker: "var(--border-color-darker)",
    },
    borderRadius: {
      tiny: "var(--border-radius-tiny)",
      small: "var(--border-radius-small)",
      normal: "var(--border-radius-normal)",
      large: "var(--border-radius-large)",
      circle: "var(--border-radius-circle)",
    },
    textColor: {
      primary: "var(--text-color-primary)",
      secondary: "var(--text-color-secondary)",
      gray: "var(--text-color-gray)",
      placeholder: "var(--text-color-placeholder)",
      disabled: "var(--text-color-disabled)",
    },
    fontSize: {
      tiny: "var(--font-size-tiny)",
      small: "var(--font-size-small)",
      normal: "var(--font-size-normal)",
      large: "var(--font-size-large)",
      huge: "var(--font-size-huge)",
      title: "var(--font-size-title)",
    },
  },
});

建议大神可以给插件加个上报错误的功能,一有错误,我们就直接点击 Report 那个按钮就像Jetbrains IDE内部和一些插件报错一样给你报告错误,同时你也能收集到更多的环境信息和错误堆栈信息帮助你排查问题。

一直渴求WebStorm版本的unocss插件,感谢作者让我得以尝愿🙏🙏🙏

from unocss-intellij.

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

性能问题已经改进(1.4.0)

from unocss-intellij.

xsjcTony avatar xsjcTony commented on June 2, 2024

我也遇到这个问题了 更新之后开始的 不知道和我开始用attributify mode有没有关系🤣, 反正就 出现的挺随机的

java.lang.IndexOutOfBoundsException: Index 11 out of bounds for length 2
	at java.base/jdk.internal.util.Preconditions.outOfBounds(Preconditions.java:64)
	at java.base/jdk.internal.util.Preconditions.outOfBoundsCheckIndex(Preconditions.java:70)
	at java.base/jdk.internal.util.Preconditions.checkIndex(Preconditions.java:266)
	at java.base/java.util.Objects.checkIndex(Objects.java:361)
	at java.base/java.util.ArrayList.get(ArrayList.java:427)
	at me.rerere.unocssintellij.documentation.UnocssDocumentTargetProvider.getOffsetValue(UnocssDocument.kt:104)
	at me.rerere.unocssintellij.documentation.UnocssDocumentTargetProvider.documentationTargets(UnocssDocument.kt:61)
	at com.intellij.lang.documentation.impl.TargetsKt.documentationTargets(targets.kt:20)
	at com.intellij.lang.documentation.ide.impl.IdeDocumentationTargetProviderImpl.documentationTargets(IdeDocumentationTargetProviderImpl.kt:36)
	at com.intellij.lang.documentation.ide.impl.DocumentationTargetHoverInfoKt$calcTargetDocumentationInfo$1$requests$1$targets$1.invoke(DocumentationTargetHoverInfo.kt:39)
	at com.intellij.lang.documentation.ide.impl.DocumentationTargetHoverInfoKt$calcTargetDocumentationInfo$1$requests$1$targets$1.invoke(DocumentationTargetHoverInfo.kt:39)
	at com.intellij.lang.documentation.ide.impl.DocumentationTargetHoverInfoKt.injectedThenHost(DocumentationTargetHoverInfo.kt:76)
	at com.intellij.lang.documentation.ide.impl.DocumentationTargetHoverInfoKt$calcTargetDocumentationInfo$1$requests$1.invoke(DocumentationTargetHoverInfo.kt:37)
	at com.intellij.lang.documentation.ide.impl.DocumentationTargetHoverInfoKt$calcTargetDocumentationInfo$1$requests$1.invoke(DocumentationTargetHoverInfo.kt:36)
	at com.intellij.openapi.application.rw.InternalReadAction.insideReadAction(InternalReadAction.kt:108)
	at com.intellij.openapi.application.rw.InternalReadAction.access$insideReadAction(InternalReadAction.kt:16)
	at com.intellij.openapi.application.rw.InternalReadAction$tryReadCancellable$2.invoke(InternalReadAction.kt:95)
	at com.intellij.openapi.application.rw.InternalReadAction$tryReadCancellable$2.invoke(InternalReadAction.kt:94)
	at com.intellij.openapi.application.rw.CancellableReadActionKt$cancellableReadActionInternal$1.invoke$lambda$1$lambda$0(cancellableReadAction.kt:38)
	at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1075)
	at com.intellij.openapi.application.rw.CancellableReadActionKt$cancellableReadActionInternal$1.invoke$lambda$1(cancellableReadAction.kt:36)
	at com.intellij.openapi.progress.util.ProgressIndicatorUtilService.runActionAndCancelBeforeWrite(ProgressIndicatorUtilService.java:73)
	at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runActionAndCancelBeforeWrite(ProgressIndicatorUtils.java:128)
	at com.intellij.openapi.application.rw.CancellableReadActionKt$cancellableReadActionInternal$1.invoke(cancellableReadAction.kt:34)
	at com.intellij.openapi.progress.CoroutinesKt.blockingContextInner(coroutines.kt:321)
	at com.intellij.openapi.progress.CoroutinesKt.blockingContext(coroutines.kt:310)
	at com.intellij.openapi.application.rw.CancellableReadActionKt.cancellableReadActionInternal(cancellableReadAction.kt:31)
	at com.intellij.openapi.application.rw.InternalReadAction.tryReadCancellable(InternalReadAction.kt:94)
	at com.intellij.openapi.application.rw.InternalReadAction.tryReadAction(InternalReadAction.kt:78)
	at com.intellij.openapi.application.rw.InternalReadAction.readLoop(InternalReadAction.kt:65)
	at com.intellij.openapi.application.rw.InternalReadAction.access$readLoop(InternalReadAction.kt:16)
	at com.intellij.openapi.application.rw.InternalReadAction$runReadAction$4.invokeSuspend(InternalReadAction.kt:44)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:108)
	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:584)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:793)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:697)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:684)

from unocss-intellij.

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

我也遇到这个问题了 更新之后开始的 不知道和我开始用attributify mode有没有关系🤣, 反正就 出现的挺随机的

java.lang.IndexOutOfBoundsException: Index 11 out of bounds for length 2
	at java.base/jdk.internal.util.Preconditions.outOfBounds(Preconditions.java:64)
	at java.base/jdk.internal.util.Preconditions.outOfBoundsCheckIndex(Preconditions.java:70)
	at java.base/jdk.internal.util.Preconditions.checkIndex(Preconditions.java:266)
	at java.base/java.util.Objects.checkIndex(Objects.java:361)
	at java.base/java.util.ArrayList.get(ArrayList.java:427)
	at me.rerere.unocssintellij.documentation.UnocssDocumentTargetProvider.getOffsetValue(UnocssDocument.kt:104)
	at me.rerere.unocssintellij.documentation.UnocssDocumentTargetProvider.documentationTargets(UnocssDocument.kt:61)
	at com.intellij.lang.documentation.impl.TargetsKt.documentationTargets(targets.kt:20)
	at com.intellij.lang.documentation.ide.impl.IdeDocumentationTargetProviderImpl.documentationTargets(IdeDocumentationTargetProviderImpl.kt:36)
	at com.intellij.lang.documentation.ide.impl.DocumentationTargetHoverInfoKt$calcTargetDocumentationInfo$1$requests$1$targets$1.invoke(DocumentationTargetHoverInfo.kt:39)
	at com.intellij.lang.documentation.ide.impl.DocumentationTargetHoverInfoKt$calcTargetDocumentationInfo$1$requests$1$targets$1.invoke(DocumentationTargetHoverInfo.kt:39)
	at com.intellij.lang.documentation.ide.impl.DocumentationTargetHoverInfoKt.injectedThenHost(DocumentationTargetHoverInfo.kt:76)
	at com.intellij.lang.documentation.ide.impl.DocumentationTargetHoverInfoKt$calcTargetDocumentationInfo$1$requests$1.invoke(DocumentationTargetHoverInfo.kt:37)
	at com.intellij.lang.documentation.ide.impl.DocumentationTargetHoverInfoKt$calcTargetDocumentationInfo$1$requests$1.invoke(DocumentationTargetHoverInfo.kt:36)
	at com.intellij.openapi.application.rw.InternalReadAction.insideReadAction(InternalReadAction.kt:108)
	at com.intellij.openapi.application.rw.InternalReadAction.access$insideReadAction(InternalReadAction.kt:16)
	at com.intellij.openapi.application.rw.InternalReadAction$tryReadCancellable$2.invoke(InternalReadAction.kt:95)
	at com.intellij.openapi.application.rw.InternalReadAction$tryReadCancellable$2.invoke(InternalReadAction.kt:94)
	at com.intellij.openapi.application.rw.CancellableReadActionKt$cancellableReadActionInternal$1.invoke$lambda$1$lambda$0(cancellableReadAction.kt:38)
	at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1075)
	at com.intellij.openapi.application.rw.CancellableReadActionKt$cancellableReadActionInternal$1.invoke$lambda$1(cancellableReadAction.kt:36)
	at com.intellij.openapi.progress.util.ProgressIndicatorUtilService.runActionAndCancelBeforeWrite(ProgressIndicatorUtilService.java:73)
	at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runActionAndCancelBeforeWrite(ProgressIndicatorUtils.java:128)
	at com.intellij.openapi.application.rw.CancellableReadActionKt$cancellableReadActionInternal$1.invoke(cancellableReadAction.kt:34)
	at com.intellij.openapi.progress.CoroutinesKt.blockingContextInner(coroutines.kt:321)
	at com.intellij.openapi.progress.CoroutinesKt.blockingContext(coroutines.kt:310)
	at com.intellij.openapi.application.rw.CancellableReadActionKt.cancellableReadActionInternal(cancellableReadAction.kt:31)
	at com.intellij.openapi.application.rw.InternalReadAction.tryReadCancellable(InternalReadAction.kt:94)
	at com.intellij.openapi.application.rw.InternalReadAction.tryReadAction(InternalReadAction.kt:78)
	at com.intellij.openapi.application.rw.InternalReadAction.readLoop(InternalReadAction.kt:65)
	at com.intellij.openapi.application.rw.InternalReadAction.access$readLoop(InternalReadAction.kt:16)
	at com.intellij.openapi.application.rw.InternalReadAction$runReadAction$4.invokeSuspend(InternalReadAction.kt:44)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:108)
	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:584)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:793)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:697)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:684)

确实,检查了下,那个根据索引找class name的函数写的有问题

from unocss-intellij.

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

unocss-intellij-1.4.0.zip
测试下看看 @xsjcTony
应该是文档功能在可变组上的问题

xx:(xxx xxxx) 这种

from unocss-intellij.

xsjcTony avatar xsjcTony commented on June 2, 2024

暂时没法测现在,但是我没有用variant group。可能attributify mode也会影响到

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.