aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar Christian Hesse <mail@eworm.de>2024-04-23 14:50:57 +0200
committerGravatar Christian Hesse <mail@eworm.de>2024-04-29 17:41:49 +0200
commitadeb5d48664cababc317515cd19133821e823e07 (patch)
treec1fd35ca7baa2a5816bfe63516b54d998910132d
parent64d326ed0041adc1da3e34657cc98f127892d918 (diff)
global-functions: $CleanName: do not start with a dash
-rw-r--r--global-functions.rsc16
1 files changed, 12 insertions, 4 deletions
diff --git a/global-functions.rsc b/global-functions.rsc
index b0bde7e..5135fc1 100644
--- a/global-functions.rsc
+++ b/global-functions.rsc
@@ -230,11 +230,19 @@
:for I from=0 to=([ :len $Input ] - 1) do={
:local Char [ :pick $Input $I ];
:if ([ :typeof [ find "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-" $Char ] ] = "nil") do={
- :set Char "-";
- }
- :if ($Char != "-" || [ :pick $Return ([ :len $Return ] - 1) ] != "-") do={
- :set Return ($Return . $Char);
+ :do {
+ :if ([ :len $Return ] = 0) do={
+ :error true;
+ }
+ :if ([ :pick $Return ([ :len $Return ] - 1) ] = "-") do={
+ :error true;
+ }
+ :set Char "-";
+ } on-error={
+ :set Char "";
+ }
}
+ :set Return ($Return . $Char);
}
:return $Return;
}