Qi Xiao
a743f959a2
Add regression test for #1710 .
2023-07-17 23:51:11 +01:00
Qi Xiao
6992c0b693
Make pseudomaps print like [^tag &key=value].
...
Also make file:pipe output a struct map rather than a pseudomap.
2023-07-17 23:41:43 +01:00
Mikel Ward
8796233de4
Make Concat return a new globPattern.
...
I don't know if this is fully sufficient, but it seems to fix the specific test
case mentioned.
Fixes #1245
2023-07-16 18:28:32 +01:00
Qi Xiao
9104632c72
Merge pull request #1710 from delameter/patch-1
...
Fixes multihardlink directory styling on unix
2023-07-16 17:30:30 +01:00
Alexandr Shavykin
2e1a1e1d38
Update stat_unix.go
...
Fixes multihardlink directory styling on unix
2023-07-16 18:46:17 +03:00
Qi Xiao
96752afa4d
Make struct maps indistinguishable from maps to Elvish code.
...
Struct map is a mechanism to let Go code expose simple structs to Elvish code.
The difference between struct maps and maps is convenience for Go code; they
also have different performance characteristics, but since struct maps are
always quite small, the difference is not meaningful for Elvish's use cases.
As a result, there is no good reason that Elvish code needs to be aware of the
difference between struct maps and normal maps. Making them indistinguishable to
Elvish code simplifies the language.
This commit does the following:
- Change Equal, Hash, Kind and Repr to treat struct maps like maps.
- Change Assoc and Dissoc to "promote" struct maps to maps.
- Remove the custom Repr method of parse.Source.
- Update documentation to reflect this change.
2023-07-14 23:57:38 +01:00
Qi Xiao
900cc52b05
Fix the hash code of maps.
2023-07-14 22:01:32 +01:00
Qi Xiao
cf23f0cce4
Bump binary builders in CI to 1.20.6.
2023-07-14 00:18:13 +01:00
Qi Xiao
78e84a4d7e
.cirrus.yml: Fix some yaml-schema violations.
2023-07-14 00:15:59 +01:00
Qi Xiao
0b2c6d5353
.cirrus.yml: Fix OpenBSD image family.
2023-07-14 00:11:49 +01:00
Qi Xiao
79dd189a72
.cirrus.yml: Fix NetBSD and OpenBSD.
2023-07-14 00:02:26 +01:00
Qi Xiao
762e4bca5a
.cirrus.yml: Bump FreeBSD Go toolchain version.
2023-07-13 22:43:18 +01:00
Qi Xiao
5edb915d1a
Fix build tag of Unix-only test file.
2023-07-13 22:21:36 +01:00
Qi Xiao
17a41afa72
vscode: Bump dependencies and version number.
2023-07-13 22:19:02 +01:00
Qi Xiao
0e9287f12a
vscode/sample.elv: Add trailing newline.
2023-07-13 22:18:29 +01:00
Qi Xiao
34cc3653f9
pkg/cli/modes: Fix the handling of named pipes in nav previews.
2023-07-13 22:12:12 +01:00
Qi Xiao
9a1948b167
pkg/wcwidth: Clarify which part is taken from another implementation.
...
Also refactor the isCombining function a bit to not depend directly on
combiningRanges.
2023-07-13 21:46:42 +01:00
Qi Xiao
aa24cd2851
pkg/edit/complete: Use default arg generator for RHS of "set" and "tmp".
...
This fixes #1704 .
2023-05-27 10:53:06 +01:00
Qi Xiao
f0c5767ab6
pkg/eval: Use json.Number in from-json.
2023-05-22 07:35:17 +01:00
Qi Xiao
155ea5acb1
pkg/eval: Bump the sleep time in the test for peach more.
...
Another failure in the Linux ARM64 runner: https://cirrus-ci.com/task/6301954620522496
2023-05-20 11:55:31 +01:00
Qi Xiao
90187c8d7c
Fixup for #1699 .
...
- Remove description fields; just use the keys as the descriptions.
- Remove ( ) around conditions.
- Add more special commands.
- Add "Snippets" as a category of the extension.
Also bump extension version - I accidentally published a WIP version as 0.2.1,
so bump it to 0.2.2.
2023-05-20 11:48:47 +01:00
Qi Xiao
30090e4fa2
Merge pull request #1699 from EmilySeville7cfg/feature/add-basic-snippets
...
Add basic VS Code snippets
2023-05-20 11:34:23 +01:00
Qi Xiao
2fe4512556
pkg/eval/vals: Make Repr sort map keys before printing.
...
This addresses #1495 .
2023-05-20 10:52:52 +01:00
Qi Xiao
7c0c3eb82d
pkg/eval/vals: Correct the godoc of Cmp.
2023-05-20 10:20:48 +01:00
Qi Xiao
c71995ba9a
pkg/eval: Add tests for "order &total".
2023-05-19 17:27:37 +01:00
Qi Xiao
058f9818ae
pkg/eval: Fix the equality test in "has-value".
...
Previously Go's == was used to test for equality when the container is not a
map, which is more strict when Elvish's normal equality test. For example,
"has-value [[foo]] [foo]" used to output false, rather than the expected true.
2023-05-19 17:25:36 +01:00
Qi Xiao
3f4bbff9c5
pkg/eval: Add option for total order to the order and compare commands.
...
The same code will be used to sort map keys when printing maps.
This addresses #1495 .
2023-05-18 23:21:18 +01:00
Qi Xiao
25e27d6bb6
pkg/eval/vals: Make Cmp(a, b) return CmpEqual if Equal(a, b).
...
Also match the order of branches in Cmp and Equal.
2023-05-18 10:45:42 +01:00
Qi Xiao
1e249ed7fb
pkg/eval.cmp -> pkg/eval/vals.Cmp.
2023-05-18 10:31:31 +01:00
Qi Xiao
19bd75db57
pkg/eval: Make the peach test cases print $best-run on failure.
2023-05-08 23:34:04 +01:00
Qi Xiao
0557e2a3be
pkg/eval/evaltests: Make APIs of special matchers functions.
2023-05-08 23:27:53 +01:00
Qi Xiao
cf41f7a01c
New "os" module.
...
This addresses #1659 .
2023-05-08 22:40:02 +01:00
Qi Xiao
e8696a5de9
pkg/mods/unix: Clean up some comments and a build tag.
2023-05-08 21:43:07 +01:00
EmilySeville7cfg
96eee86353
feat(snippets): add basic snippets
2023-05-08 15:21:52 +10:00
Qi Xiao
75ee4d0179
pkg/eval: Increase the base sleep time in peach's unit test to 2ms.
...
The previous value of 1ms caused some false positive on Cirrus's Linux ARM64 runner.
2023-05-07 22:38:22 +01:00
Qi Xiao
ae087dc1e4
pkg/eval: Don't use the new context.Cause API.
...
Elvish should still be buildable with Go 1.19.
2023-05-07 22:37:08 +01:00
Qi Xiao
f54fe608e8
Clean up some code from adding Context to Frame.
2023-05-07 21:49:27 +01:00
Qi Xiao
da576e221c
pkg/eval: Use a Context inside Frame to pass interrupts.
2023-05-07 21:44:28 +01:00
Qi Xiao
6ecc2b306c
Fixup for #1691 .
2023-05-06 23:55:34 +01:00
Qi Xiao
c0add35e50
Merge pull request #1691 from krader1961/issue-648-peach-num-worker
...
Add a `&num-workers` option to `peach`
2023-05-01 22:26:01 +01:00
Qi Xiao
1f0d1c8251
Merge branch 'num-workers' into issue-648-peach-num-worker
2023-05-01 22:25:24 +01:00
Qi Xiao
de8e5f2fd6
website: Make the content div have "content" as a class instead of id.
...
"#content" has a very high specificity and makes it harder to override.
This fixes the override of the <h2> in demo descriptions in the homepage.
2023-05-01 01:01:18 +01:00
Qi Xiao
dad9269af5
website: Properly remove left border of <h1> on home page.
2023-04-29 17:00:29 +01:00
Qi Xiao
ba8614bab3
website: Overhaul styling.
...
Also rewrite some texts to fit within the now narrower body.
2023-04-29 16:55:10 +01:00
Qi Xiao
c0d5b015d0
website: Reduce the width of ttyshots.
...
This is to prepare for a stylesheet overhaul that will reduce the width of the
body text.
Also change home/pipelines.elvts to use XKCD instead, which is a bit more
interesting than GitHub and makes for a shorter URL.
2023-04-24 21:34:05 +01:00
Qi Xiao
25a1a7be28
0.20.0 release notes: Document the new LSP hover support.
2023-04-23 00:43:54 +01:00
rsteube
eff34bff12
Implement str:fields
2023-04-23 00:43:02 +01:00
Qi Xiao
27f34b8044
pkg/lsp: Return doc when hovering on the first character of a symbol.
2023-04-23 00:27:41 +01:00
Qi Xiao
6c5d24ad81
Switch to pkg.nimblebun.works/go-lsp for LSP types.
2023-04-23 00:19:26 +01:00
Qi Xiao
1974b30eb6
pkg/lsp: Store parse results synchronously; add tests for hover.
2023-04-23 00:01:32 +01:00