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-23 16:25:26 +0200
commit86838202adf7e8214c2859ce6c1d594938c4cd11 (patch)
tree7defb4b75a7a3c4f24f98a00507b187ab5ee168a
parentebab8b5acc4cc9fe7814d7d931b4dcb566f69829 (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;
}