Better walk()
This commit is contained in:
parent
689fa77380
commit
070317d22d
|
@ -1,4 +1,4 @@
|
||||||
<> (swap ?x ?y) (?y ?x)
|
<> (swap ?x ?y) (?y ?x)
|
||||||
|
|
||||||
(swap 123 456)
|
(swap (123) (456))
|
||||||
|
|
||||||
|
|
10
src/modal.c
10
src/modal.c
|
@ -18,15 +18,15 @@ walk(char *s)
|
||||||
{
|
{
|
||||||
int depth = 0;
|
int depth = 0;
|
||||||
char c;
|
char c;
|
||||||
|
if(s[0] == '(') {
|
||||||
while((c = *s++)) {
|
while((c = *s++)) {
|
||||||
if(c == '(') depth++;
|
if(c == '(') depth++;
|
||||||
if(c == ')') {
|
if(c == ')') --depth;
|
||||||
--depth;
|
if(!depth) return s;
|
||||||
if(!depth) break;
|
|
||||||
}
|
}
|
||||||
if(depth == 0 && c == ' ') return s - 1;
|
|
||||||
if(depth < 1 && c == ' ') { return s - 1; }
|
|
||||||
}
|
}
|
||||||
|
while((c = *s++))
|
||||||
|
if(spacer(c)) return s - 1;
|
||||||
return s;
|
return s;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue