424 Commits

Author SHA1 Message Date
xtqqczze
7c0b3d17c1 clippy: fix ptr_as_ptr lint (#730) 2026-04-16 13:27:08 +02:00
Leonard Hecker
6468920b16 Add Shell, Python and JavaScript highlighting (#795)
Co-authored-by: barkure <43804451+barkure@users.noreply.github.com>
2026-04-07 23:26:12 +02:00
Dustin L. Howett
35b863f826 lsh: fix strings in PowerShell (#790)
- herestring terminators must be at start of line
- ` is the escape character for strings in this language
- single quoted strings do not get escapes at all
2026-03-31 18:25:11 -05:00
Leonard Hecker
c92c166ef6 Fix the Azure pipeline (#787) 2026-03-30 21:24:16 +02:00
Leonard Hecker
5820364ce4 Prepare for v2.0.0 (#785) 2026-03-30 20:10:17 +02:00
Leonard Hecker
8b24907aab Add a small fuzzing harness for LSH (#782) 2026-03-27 22:17:56 +01:00
Dustin L. Howett
4cef4eacda lsh: fix up PowerShell a bit (#784)
Make keywords case-insensitive, and add class/enum/cmdletbinding/static
to other keywords.

Disallow keywords from being followed by anything.
2026-03-27 16:17:23 -05:00
Leonard Hecker
05452ab90c Complete the initial LSH implementation (#624) 2026-03-27 19:01:09 +01:00
Leonard Hecker
d1908b0b53 Add rudimentary settings.json support (#779)
Adds settings.json loading and parsing.
For now, that's just for a `files.associations` key.

Part of #22
Part of #624
2026-03-25 20:50:24 +01:00
Leonard Hecker
fa709bade0 Integrate LSH into edit (#777)
This integrates the LSH compiler and runtime into edit.

Part of #624
2026-03-24 19:17:45 -05:00
Leonard Hecker
0bfb7a3210 Add the LSH runtime (#776)
This adds the accompanying runtime for #753.

Part of #624
2026-03-23 21:22:24 +00:00
Leonard Hecker
8ad89c849d Introduce the LSH compiler (#753)
This PR contains no CLI frontend, etc., for the compiler,
as I split out everything but the compiler to reduce the PR size.

Part of #624
2026-03-20 15:41:42 -05:00
Leonard Hecker
baa3cb05b4 Use natural sort for filenames (#763) 2026-03-19 23:57:00 +01:00
Leonard Hecker
017c0ba30d Fix an incorrect debug assert (#774) 2026-03-19 22:52:26 +00:00
Leonard Hecker
ff45b14d5e BVec::push_encode_utf16, Some micro optimizations (#764) 2026-02-14 01:51:38 +01:00
Leonard Hecker
6c79a1d7e3 Remove allocator_api (#762)
Closes #44
2026-02-12 23:23:57 +01:00
Alex Manochio
719a478cf0 Change copyright in draw_menubar.rs (#760) 2026-02-12 22:37:14 +01:00
Leonard Hecker
14c1defa25 Remove the majority of nightly features (#761)
This removes:
* breakpoint
* cold_path
* linked_list_cursors
* maybe_uninit_fill
* maybe_uninit_slice
* maybe_uninit_uninit_array_transpose
* string_from_utf8_lossy_owned

Closes #44
2026-02-12 22:28:53 +01:00
Leonard Hecker
524b22c3c5 Fix warnings when building on macOS (#754) 2026-01-28 00:12:20 +01:00
Leonard Hecker
e5a92eb7d6 Fix the latest clippy warning (#751) 2026-01-26 23:30:31 +01:00
Leonard Hecker
ad8415fd44 Clean up error handling (#745)
* Use `io::Error` for OS error handling
  (This results in some added bloat, but is more convenient for now.)
* Add an `icu` error type
* Move `apperr` from the library into the binary

This also sneaks in a minor improvement to sorting.
The only two places we need to sort, don't need stable sorting.
(Unstable sorting is a lot faster and simpler.)
2026-01-23 13:57:42 +01:00
Leonard Hecker
9bc86c5acd Add a glob matcher (#743)
Supports `*` and `**` patterns. That's enough for our upcoming purposes.
2026-01-22 19:49:04 +01:00
Leonard Hecker
6b6a4b2d9f Add a JSON parser (#742)
This is a bog-standard JSONC parser. Not much to be said.
Its performance is quite alright.

Depends on #741
2026-01-21 00:05:09 +01:00
Leonard Hecker
8d9b1ede11 Add proper multithreading support to Arena (#741)
The main change is adding multithreading support in order to make JSON
unit tests work properly. The TLS overhead is not _that bad.

Other changes:
* Switch to `io::Result`, because `AllocError` doesn't
  transmit error codes (meh!)
* Reduce x86 commit chunk size to 32KiB
* Improved performance slightly by inlining harder (`alloc_uninit`)
  and outlining the result unwrap (`alloc_raw_bump`)
2026-01-20 15:11:44 -06:00
Sergio Triana Escobedo
d0db071474 Create parent directories when saving to a non-existent path (#738)
Closes #737

Co-authored-by: Leonard Hecker <leonard@hecker.io>
2026-01-20 13:10:55 -06:00
Cal
48c2ab2949 Use platform line ending when opening single line files (#739) 2026-01-13 15:33:37 +00:00
Leonard Hecker
dbd74656a9 Fix colors with Terminal.app's Clear Dark theme (#728) 2026-01-05 17:50:36 +01:00
Stefan
fa2b1b88cc Update man page for edit command to version 1.2.1 (#727)
Alt does not work in macOS.
2026-01-05 14:12:26 +00:00
viyic
364579a045 Add Indonesian translation (#629) 2025-12-01 21:33:40 +00:00
Leonard Hecker
3df9e7cb6c Fix multiple issues found under Linux (#706)
Fixed:
* `sighandler_t` warning in nightly
* cppdbg + gdb pretty printing
* UTF8 parsing for SGR mouse coords
2025-12-01 15:24:27 -06:00
VenusGirl❤
d71e94b303 Improve Korean translations (#663) 2025-12-01 22:17:14 +01:00
Mr Flamel
ca661a2901 i18n: Add Estonian translations (#693) 2025-12-01 22:16:34 +01:00
Mohammad Abu Mattar
1601c3f592 i18n: Add Arabic translations (#634)
Co-authored-by: MKAbuMattar <mohamamd.khaled@outlook.com>
2025-12-01 22:15:54 +01:00
Leonard Hecker
5f284a1df9 Move arena & helpers into their own crate (#694)
This will allow us to use the `Arena` in `build.rs`.
This changeset also contains a version bump of all dependencies.
2025-12-01 21:51:55 +01:00
Tiago Mouta
82cc84a610 Add Portuguese (pt-PT) translations (#688) 2025-10-31 21:09:55 +01:00
Miteigi
c1adb12b52 Add Vietnamese translations (#669) 2025-10-17 19:08:57 +02:00
Leonard Hecker
67c401648f Fix Rust nightly builds (#668)
`panic_immediate_abort` is being stablized as `panic = immediate-abort`
(yay!).
See: https://github.com/rust-lang/rust/issues/147286

Closes #657
2025-10-14 19:53:51 +02:00
Emir SARI
c557cdbf04 Update Turkish translations (#655) 2025-10-13 14:47:17 +00:00
Dustin L. Howett
bb569841c9 sys/win: display a useful error message when SetConsoleMode fails (#639)
edit will now display specific error messages when the console fails to
support `ENABLE_VIRTUAL_TERMINAL_INPUT`. The user will be gently
reprimanded for not using the modern console host.

It is technically possible to run edit on OpenConsole (or another third-
party console host!)--even on Windows 8.1--where it will work properly.
2025-09-09 15:24:09 -05:00
Dustin L. Howett
51d19c9487 windows: fix the compatibility section of the manifest (#635)
So, it turns out that `supportedOS` was being ignored because it was
taken to be in the default `asm.v1` namespace. :)
2025-09-05 12:58:47 -05:00
hev
ccfebb274e Replace vseq/vand with their immediate-form variants (#630) 2025-08-29 00:31:10 +02:00
four-poetic-drew
c8fec86709 Allow opening directories via the CLI (#577)
Co-authored-by: Leonard Hecker <leonard@hecker.io>
2025-08-28 00:49:45 +02:00
Leonard Hecker
a3a6f5f8be Various minor improvements (#625) 2025-08-25 13:18:00 -05:00
Leonard Hecker
7338c3cbbc Move build.rs into its own directory (#623) 2025-08-25 12:54:53 -05:00
Leonard Hecker
695d88e631 Fix alpha blending formula (#594)
Since `srgb_to_linear` is non-linear we can't use it for premultiplied
colors. Instead of unpremultiplying them, I changed the rest of the app
to straight alpha and introduced types to ensure we don't mess it up.
2025-08-12 23:27:02 +02:00
Alexandru Spînu
f17552c8f6 Fix #485: Reject invalid args and allow positional args (#503)
Closes #485

Co-authored-by: Leonard Hecker <leonard@hecker.io>
2025-08-12 23:25:15 +02:00
Leonard Hecker
1b7298c3b3 Separate scrolling from clicking (#603)
Closes #410
Closes #588
2025-08-12 23:22:38 +02:00
Leonard Hecker
a41267af47 Fix ctrl modifier detection for mouse input (#604) 2025-08-12 19:20:24 +02:00
hev
e2ea892426 Use unified data types in LoongArch SIMD intrinsics (#602) 2025-08-12 11:57:43 +00:00
Aloïs MASSON--CLAUDEZ
f6ca0e68ca Fix CONTRIBUTING.md localization path (#601) 2025-08-05 21:09:40 +00:00