Skript

Skript

743k Downloads

String entries don't allow surrounding quotations

Fusezion opened this issue · 4 comments

commented

Skript/Server Version

[14:48:55 INFO]: [Skript] Skript's aliases can be found here: https://github.com/SkriptLang/skript-aliases
[14:48:55 INFO]: [Skript] Skript's documentation can be found here: https://docs.skriptlang.org/
[14:48:55 INFO]: [Skript] Skript's tutorials can be found here: https://docs.skriptlang.org/tutorials
[14:48:55 INFO]: [Skript] Server Version: 1.21.1-52-e08e667 (MC: 1.21.1)
[14:48:55 INFO]: [Skript] Skript Version: 2.9.1 (skriptlang-github)
[14:48:55 INFO]: [Skript] Installed Skript Addons:
[14:48:55 INFO]: [Skript]  - skript-gui v1.3 (https://github.com/APickledWalrus/skript-gui)
[14:48:55 INFO]: [Skript]  - skript-reflect v2.5.1 (https://github.com/SkriptLang/skript-reflect)
[14:48:55 INFO]: [Skript]  - SkBee v3.6.2 (https://github.com/ShaneBeee/SkBee)
[14:48:55 INFO]: [Skript]  - SkAnimation v1.0.1 (fusezion.github.io)
[14:48:55 INFO]: [Skript] Installed dependencies:
[14:48:55 INFO]: [Skript]  - Vault v1.7.3-b131

Bug Description

When using hex codes inside code areas like these

options:
    option: <#blah>
    
command /blah:
  cooldown: 1 hour
  cooldown message: <#blah>

If you don't use the doubled variant of ## they will act as a normal comment

Expected Behavior

Preferably act as a normal hex pattern if it can match hex, otherwise act as a comment

Steps to Reproduce

command /example:
  cooldown: 1 hour
  cooldown message: <#ff00ff>I failed the color check
command /example2:
  cooldown: 1 hour
  cooldown message: <##ff00ff>I passed the color check

Errors or Screenshots

No response

Other

No response

Agreement

  • I have read the guidelines above and affirm I am following them with this report.
commented

To my knowledge this is functionally impossible as, when we're determining comments, we have no knowledge of the semantics of the code. The only reason we can use single # in strings is precisely because there are " marks to tell the code what's in a string and what isn't. For entries like this, how does the code tell the difference between entry: value # more value and entry: value # comment?

The only solution here is adding "" around the entry, which should already be supported.

commented

A quick test for that ignoring the first broadcast as that was within the code to test options
image

commented

Hmm i suppose it's not using VariableString's quoting methods properly then

commented

Might need fixed😬