feat(developer): (KM Language) Support Anonymous Lists in any() and index()
- Dominant language
- Pascal
- Stars
- 534
- Forks
- 143
- Avg merge
- 2d 10h
- Merged PRs (30d)
- 113
Description
### Is your feature request related to a problem? Please describe.
I find that in many cases with my keyboards I will use `store()` to define a variable that is used **only** once, either in `any()` or `index()` . So there is no benefit realized from reuse of the variables. The pattern is like:
```
store(foo) 'abcd'
store(bar) 'ABCD'
begin Unicode > use(main)
group(main) using keys
+ any(foo) > index(bar,1)
```
### Describe the solution you'd like
If nothing else, the inline lists will lead to shorter KMN code files:
```
begin Unicode > use(main)
group(main) using keys
+ any('abcd')> index('ABCD',1)
```
### Describe alternatives you've considered
_No response_
### Related issues
_No response_
### Keyman apps
- [ ] Keyman for Android
- [ ] Keyman for iPhone and iPad
- [ ] Keyman for Linux
- [ ] Keyman for macOS
- [ ] Keyman for Windows
- [X] Keyman Developer
- [ ] KeymanWeb
- [ ] Other - give details at bottom of form
### Keyman version
15.0.270
### Operating system
Windows 11
### Device
Windows Laptop
### Target application
_No response_
### Browser
_No response_
### Keyboard name
_No response_
### Keyboard version
_No response_
### Language name
_No response_
### Additional context
_No response_
Contributor guide
Research direction
Start in Keyman Developer's KM language handling for the any() and index() entry points, using the existing store() examples and the proposed anonymous-list syntax as the behavioral reference. Done means expressions such as any('abcd') and index('ABCD',1) are accepted and behave like their stored-variable equivalents.
Written by the indexing model from the issue text.
Assessment
- Domain
- tooling
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100