ion issueshttps://gitlab.redox-os.org/redox-os/ion/-/issues2021-06-02T19:24:13Zhttps://gitlab.redox-os.org/redox-os/ion/-/issues/975Manual: super and global namespaces example doesn't demonstrate the feature2021-06-02T19:24:13ZbakaManual: super and global namespaces example doesn't demonstrate the featureThe [Scopes (super and global namespaces)](https://doc.redox-os.org/ion-manual/html/variables/07-namespaces.html#scopes-super-and-global-namespaces) example is as follows:
```
let a = 1
fn demo
let b = 2
fn nested
echo ${super...The [Scopes (super and global namespaces)](https://doc.redox-os.org/ion-manual/html/variables/07-namespaces.html#scopes-super-and-global-namespaces) example is as follows:
```
let a = 1
fn demo
let b = 2
fn nested
echo ${super::b}
echo ${global::a}
end
nested
end
demo
```
This code is functionally equivalent to:
```
let a = 1
fn demo
let b = 2
fn nested
echo $b
echo $a
end
nested
end
demo
```
This doesn't demonstrate the super and global namespace feature since $a and $b can be accessed just fine without using them.
In fact, I could not find any situation where this feature would apply. The [Scopes chapter](https://doc.redox-os.org/ion-manual/html/variables/06-scopes.html) says `Functions have the scope they were defined in.` which from my understanding implies a function always has access to the "super" scope (and if applied recursively, the global scope).
One guess was that this feature was meant to a situation like this where the variable is defined in the scope the function was called from:
```
fn print_vars
echo ${super::y}
end
if test 1 == 1
let y = 3
print_vars
end
```
However that doesn't work (and I guess is unnecessary since you can pass variables to functions as a parameter).Ion Shell v1.0.0betahttps://gitlab.redox-os.org/redox-os/ion/-/issues/905`history` command not listed in `builtins.md`2020-12-17T00:06:00Zngirard`history` command not listed in `builtins.md`Shouldn't `history` be listed in `builtins.md` ?Shouldn't `history` be listed in `builtins.md` ?Ion Shell v1.0.0betamatu3bamatu3bahttps://gitlab.redox-os.org/redox-os/ion/-/issues/901Array-based process expansion insufficiently documented2020-12-17T00:05:55ZngirardArray-based process expansion insufficiently documentedhttps://gitlab.redox-os.org/redox-os/ion/blob/master/manual/src/expansions/02-process.md#process-expansions
states:
> an array-based process expansion will split the output into an array delimited by whitespaces.
> ```shell
> ...
> let a...https://gitlab.redox-os.org/redox-os/ion/blob/master/manual/src/expansions/02-process.md#process-expansions
states:
> an array-based process expansion will split the output into an array delimited by whitespaces.
> ```shell
> ...
> let array = @(cmd args...)
> ```
> **NOTES:**
>
> ...
> * `@(cmd)` is equivalent to `@split($(cmd))`
But in a test directory containing files aa, bb, and cc, doing
```sh
let res=@(ls)
echo @res[0]
```
gives
```
```
while doing
```sh
echo @split($(ls))[0]
```
gives
```
aa
```Ion Shell v1.0.0betamatu3bamatu3bahttps://gitlab.redox-os.org/redox-os/ion/-/issues/897Document how can functions be written in one line2020-12-17T00:05:48ZngirardDocument how can functions be written in one lineIn bash, the following line is a valid function definition:
```
square(){ local x=$1; echo $(( x * x )); }
```
Can we do the same in Ion ?
I guess the answer is no, but it would be nice to mention it in the manual (functions.md).In bash, the following line is a valid function definition:
```
square(){ local x=$1; echo $(( x * x )); }
```
Can we do the same in Ion ?
I guess the answer is no, but it would be nice to mention it in the manual (functions.md).Ion Shell v1.0.0betamatu3bamatu3bahttps://gitlab.redox-os.org/redox-os/ion/-/issues/895Manual: slicing syntax in example doesn't match documentation2020-12-17T00:05:38ZngirardManual: slicing syntax in example doesn't match documentationExample in https://gitlab.redox-os.org/redox-os/ion/blob/master/manual/src/control/02-loops.md#chunked-iterations has
```
{1..=10}
```
but the `..=` syntax isn't documented in https://gitlab.redox-os.org/redox-os/ion/blob/master/manual/s...Example in https://gitlab.redox-os.org/redox-os/ion/blob/master/manual/src/control/02-loops.md#chunked-iterations has
```
{1..=10}
```
but the `..=` syntax isn't documented in https://gitlab.redox-os.org/redox-os/ion/blob/master/manual/src/slicing.md#ranges-slicing-syntax.Ion Shell v1.0.0betamatu3bamatu3bahttps://gitlab.redox-os.org/redox-os/ion/-/issues/893Failed running Ion with AlpineLinux2021-06-01T17:24:11ZNiklas Rosencrantzniklasr@protonmail.comFailed running Ion with AlpineLinuxI tried building it in a dockerized AlpineLinux. It did build the target but there is an error message when I tried to execute commands (echo $0, pwd, ls...). I can try again with some other Linux but my first attempt with Alpine failed.I tried building it in a dockerized AlpineLinux. It did build the target but there is an error message when I tried to execute commands (echo $0, pwd, ls...). I can try again with some other Linux but my first attempt with Alpine failed.Ion Shell v1.0.0betahttps://gitlab.redox-os.org/redox-os/ion/-/issues/810reverse-i-search like in bash2020-12-17T00:05:27ZOleh Devuareverse-i-search like in bashis `reverse-i-search` expected to be implemented in `ion`?is `reverse-i-search` expected to be implemented in `ion`?Ion Shell v1.0.0betamatu3bamatu3bahttps://gitlab.redox-os.org/redox-os/ion/-/issues/361Builtin Argument Parser (ie: getopt)2020-12-14T01:51:16ZMichael Aaron Murphymmstick@pm.meBuiltin Argument Parser (ie: getopt)What syntax should we support here?What syntax should we support here?Ion Shell v1.0.0betamatu3bamatu3ba