-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathTODO
27 lines (17 loc) · 922 Bytes
/
TODO
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
- clean the code: get rid of unnecessary arrays!
- remove precommand style
- add pattern highlight
- expand special characters
- nice feature: separate expansion flags from the parameter, like ${(kv)abc}
====
I consider block matching as complete, although some edge cases still don't work, e.g.:
$ echo [ a ] b
Highlights ']' although shouldn't.
$ for ((x=0;x<3;x++)) echo $x; echo Work is done
Highlights and match final 'done' with initial 'for', although shouldn't do neither
Also 'echo' is not highlighted, but that is not related to a block matching part.
$ { for ((x=0;x<3;x++)) echo $x }; echo Work is done
Neither highlight nor match '}' with '{', and treats 'done' as in previous example
Most probably I won't correct these issues.
Parsing command line has some limits: checking each additional condition costs cpu resources (time) and the benefit is marginal.
All typical cases should work correctly.