Commit Graph

2380 Commits

Author SHA1 Message Date
Takase 5549c0bd29
Generate release notes (#1774)
* ci: generate better release notes

* scripts: rename generate-release-note.sh

* ci/release: check out all the history

* ci/release: accept version from input
2024-05-18 07:12:04 +08:00
Guldoman 7d876f81ad
build: fix dirmonitor backend selection (#1790)
When a backend was specified using meson, the relative source files weren't being added.
2024-05-17 17:19:39 +02:00
Takase 7fdb35ac46
Release v2.1.4 (#1772)
* changelog: add changes for 2.1.4

* chore: update version and changelog
2024-04-16 19:12:43 +08:00
Takase fb3a707ce6
ci: fix missing permission for creating releases (#1770) 2024-04-15 11:44:06 +08:00
Guldoman 21dcd782c0
Skip patterns matching nothing in `tokenizer` (#1743)
These patterns cause infinite loops, so warn about them and skip them.
2024-04-15 09:00:03 +08:00
Andrei Vinca 0795a5dad4
Fix BufferSize in g_read for Windows (#1722) 2024-04-15 08:52:49 +08:00
PerilousBooklet 727c179deb
Added Arduino syntax highlighting support alongside C++. (#1767) 2024-04-13 10:54:31 +02:00
PerilousBooklet e9e2d83dc5
Fixed some typos in core.init (#1755)
* Fixed some typos.

* Update data/core/init.lua

Co-authored-by: Takase <20792268+takase1121@users.noreply.github.com>

* Update data/core/init.lua

Co-authored-by: Takase <20792268+takase1121@users.noreply.github.com>

---------

Co-authored-by: Takase <20792268+takase1121@users.noreply.github.com>
2024-03-28 19:33:55 +01:00
Guldoman 3bed5c16ae
Limit `language_js` regex avoidance to numbers, and fix starting `/*` comments (#1744)
* Avoid starting regexes only after numbers in `language_js`

* Allow starting `/*` comments after numbers in `language_js`
2024-03-25 00:20:32 +01:00
Aziz Mazouz Jaber 6e849890be
Add from symbol to support ESM (#1754) 2024-03-24 14:25:44 -04:00
Jan 5d264e14ef
Add SerenityOS platform support (#1745)
* Add SerenityOS platform support

* remove cpp_std default option
2024-03-18 13:55:01 -04:00
Guldoman 62d7ec8e85
Rectify `LICENSE` dates and owners (#1748) 2024-03-15 21:03:24 +01:00
Takase 2b7bed9a4e
scripts: not hardcode MSYSTEM (#1739) 2024-03-07 01:21:46 +01:00
Guldoman cfca01e88e
Fix `language_js` regex/comment distinction (#1731) 2024-03-06 21:06:36 +01:00
Guldoman 2c1dc93d9d
Improve `CommandView` and `autocomplete` scroll behavior (#1732)
* Make command palette item scrolling more natural

Also add a config option for the maximum number of visible entries in the command palette.

* Make `autocomplete` item scrolling more natural
2024-03-05 22:56:01 -05:00
Guldoman abf8955799
Improve `autocomplete` suggestions box behavior (#1734)
* Improve `autocomplete` suggestions box sizing

This avoids that the box gets too big because of non-visible items, and makes it reactive to window sizing.

* Draw ellipsis when `autocomplete` entries aren't fully visible
2024-03-05 22:29:17 -05:00
PerilousBooklet 03b8c239dc
Added .pyi extension to python. (#1728) 2024-02-24 01:46:28 +01:00
Takase 2e8d59b86f
wasm cross file improvements (#1660)
* fix(wasm-cross): missing idbfs in newer emscripten

* refactor(wasm-cross): specify important option in cross file

* feat(wasm-cross): allow overriding emscripten path

* feat(wasm-cross): add file_packager as a binary
2024-02-06 14:38:12 +08:00
Takase 53876405fa
readme: add minimum supported OSes (#1711)
* readme: add minimum supported OSes

* README: add linebreak between sentences
2024-02-06 01:49:41 +01:00
Takase 8090c1aa29
process: fix unitialized variables (#1719)
* process: fix potential unitialized variables

* process: fix brace initializer error on Windows
2024-02-05 09:23:24 -05:00
Takase 3f31c27677
v2.1.3 (#1712)
* changelog: update changelog for v2.1.3

* update version in metadata

* changelog: fix formatting issue and release date

* appstream: update release date
2024-01-29 01:10:15 +01:00
Chloé Vulquin 1a5fd97c20
Add system.setenv (#1706)
* add system.setenv

* document system.setenv

* system.setenv: use wide versions of functions on windows

* do not include processenv.h

* system.setenv: report failure, including of utfconv

* system.setenv: free utfconv output
2024-01-23 00:22:44 +01:00
Luke aka SwissalpS 8cf40de860
Fix comment typos in data/core/{init.lua,dirwatch.lua} (#1549)
* comment typo in data/core/init.lua

* init.lua reword comment

* Update dirwatch.lua

Some wording is still whacky, maybe next time

* Update dirwatch.lua

* clear up can/may be not nil confusion

* falsey vs falsy new wording to help out

* falsey -> falsy

* Update data/core/dirwatch.lua

Co-authored-by: Guldoman <giulio.lettieri@gmail.com>

---------

Co-authored-by: Guldoman <giulio.lettieri@gmail.com>
2024-01-21 22:30:59 +01:00
Takase 0383e17475
process: style changes (#1709) 2024-01-21 10:18:32 +08:00
Takase dd69d7b9d0
language_js: support binary and octal representation (#1710) 2024-01-21 10:18:13 +08:00
vqn c561eb78e6
autoreload docs only if their filename matches an actual file (#1698) 2024-01-21 01:49:25 +01:00
vqn fd9b17ff15
reorder nagview options on doc:save error to be more consistent with other nagview confirmations (#1696) 2024-01-20 01:19:12 +01:00
Fiji c27d9aa0c0
Improve number highlighting for python syntax highlighting (#1704)
* Improve number highlighting for python syntax highlighting

Adds support for octal and binary representation, as well uppercase characters (X, B and O)

* add underscore and negative hex/oct/bin value support

* Removed | from pattern
2024-01-20 01:04:49 +01:00
Chloé Vulquin e9a8dff884
Memory fixes (#1705)
* fix: free-before-init in renwin_init_surface when using sdl renderer

`ren->rensurface.surface` presupposes zero-initialized rensurface.
Rensurface was not actually zero-initialized.
It is now.

* fix: heap buffer overflow in process_env_free

`process_env_free` presupposed that it was null-terminated.
Pass length to free instead.

* use calloc instead of memset for zero-init

Co-authored-by: Guldoman <giulio.lettieri@gmail.com>

---------

Co-authored-by: Guldoman <giulio.lettieri@gmail.com>
2024-01-20 08:02:46 +08:00
vqn 8b9b26e18f
Fix doc:create-cursor-previous/next-line with tabs (#1697)
* use DocView.translate to split cursor on previous/next line

* use dv.doc instead of doc()
2024-01-13 13:49:26 +01:00
Takase 500ea2aefd
v2.1.2 (#1695)
* chore: update versions

* chore(changelog): update changelog for v2.1.2
2024-01-02 13:20:59 +01:00
Jan badcaef13b
turn window_renderer into managed pointer (#1683)
* turn window_renderer into managed pointer
this will make it easier to move it into userdata in the future

* remove unused function, remove comment
2023-12-06 12:51:45 +01:00
Adam Harrison cfbe68936a Fixed a minor bug, should close issue #1680. 2023-12-03 11:09:56 -05:00
ThaCuber f26eef14fa
fix nagbar failed save message (#1678)
* fix nagbar failed save message

- visually separated statements with a `.`
- first statement slightly rewritten
- use `'` rather than `"`

* yeahhhh no back to `"`
2023-12-03 06:44:07 +08:00
Guldoman e8ae7583bc
Expose plaintext syntax (#1652) 2023-11-30 10:53:01 -05:00
Guldoman 9a4831d5c2
Use `\r\n` for new files on Windows (#1596)
* Use `\r\n` for new files on Windows

* Add `config.line_endings`
2023-11-30 10:51:10 -05:00
Takase 142f0a17ba
feat(process): allow commands and envs on proces_start (#1477)
* feat(process): allow commands and envs on proces_start

* refactor(process): copy process arguments once whenever possible

Refactors the code to use an arglist type which is just lpCmdline on Windows
and a list in Linux.
The function automatically escapes the command when it is needed, avoiding
a second copy.

This also allows UTF-8 commands btw.

* fix(process): fix invalid dereference

* refactor(process): mark xstrdup as potentially unused

* feat(process): add parent process environment when launching process

* fix(process): fix operator precedence with array operators

* fix(process): fix segfault when freeing random memory

* fix(process): fix wrong check for setenv()

* fix(process): fix accidentally initializing an array by assignment

* fix(process): clear return value if success
2023-11-30 10:33:24 -05:00
takase1121 ad1597125e chore(deps): update Lua 2023-11-30 11:19:18 +08:00
takase1121 eb7329d1fc chore(deps): update SDL2 2023-11-30 11:19:18 +08:00
takase1121 09a925f671 chore(deps): update pcre2 2023-11-30 11:19:18 +08:00
takase1121 cd1505c27d chore(deps): update freetype 2023-11-30 11:19:18 +08:00
takase1121 ccb4f88522 fix(ci,build.sh): un-hardcode lua subproject detection 2023-11-30 11:19:18 +08:00
Takase 1ed8f64608 Revert "feat(subprojects): update wraps (#1577)"
This reverts commit a97de87d86.
2023-11-30 09:28:24 +08:00
Guldoman 5cc8acb082
Improve font/color change detection in `language_md` (#1614)
* Delay setting font for custom `language_md` token types

* Improve font/color change detection in `language_md`
2023-11-29 16:12:22 -05:00
Guldoman 3575898e62
Use x offset to define render command rect in `rencache_draw_text` (#1618)
* Return x offset for the first character in `ren_font_group_get_width`

* Use x offset to define render command rect in `rencache_draw_text`
2023-11-29 15:44:48 -05:00
Adam 0e779bba0f
Reverted cursor API to something more compatible with old API. (#1674)
* Reverted cursor API to something more compatible with old API.

* Implemented discord discussion.

* Reduced thiccness of overwrite cursor.
2023-11-29 21:29:37 +01:00
ThaCuber 9615ead41b
Text overwriting (#1495)
* added text overwriting

* rewrote `DocView:draw_caret` to not use the order of draws

* forgot to delete some old code in `DocView:draw_overlay`
also added a temporary solution to overwriting
and added the missing arguments in `DocView:draw_ime_decoration`
and fixed `DocView:draw_caret`

* accidentally broke the `draw_caret` call in `draw_overlay` in the process

* multiline

* fixed calling `Doc:get_char` as a function
that, in turn, crashed the editor because "can't index a number"

* move and rename some stuff

* remove unneeded extra check

I just had to change the `~=` to `<` in the second condition

* overwrite disregards pasting text

* disregard overwrite on selections; doc only removes selection

* Fixed error where `doc` was used, instead of `self`.

---------

Co-authored-by: ThaCuber <70547062+ThaCuber@users.noreply.github.com>
Co-authored-by: Adam Harrison <adamdharrison@gmail.com>
2023-11-29 14:12:43 -05:00
Guldoman e95094f0ca
Fix patterns starting with `^` in `tokenizer` (#1645)
Previously the "dirty" version of the pattern was used, which could 
result in trying to match with multiple `^`, which failed valid matches.
2023-11-29 11:11:46 -05:00
Guldoman 1c10bb894d
Fix `language_js` regex constant detection (#1581)
* Fix `language_js` regex constant detection

* Simplify regex constant detection in `language_js`

* Add more possessive quantifiers in `language_js` regex constant detection

This avoids more catastrophic backtracking cases.

* Allow `.` after regex constant in `language_js`
2023-11-29 11:00:09 -05:00
Guldoman f457bc33fa
Fix editing after undo not clearing the change id (#1574) 2023-11-29 10:45:53 -05:00