Avoids a gray box at the bottom of the GRacket REPL window on
startup, or in DrRacket when a horizontal scroll is automatically
removed due to, say, hiding a interactions window positioned to
the right of the definitions window (where the definitions content
is narrower than the whole window but wider than half).
Merge to v6.0
it was attempting to throwing out cⓂ️ keybindings under
windows but doing it incorrectly and so
also throwing out ~cⓂ️ keybindings
also, refactor so that this code is more
testable now (and add some tests)
Make executables created by `raco exe` not refer to the original
configuration directory by default, but add an option for setting
the directory.
For Unix ELF executables, fix `raco exe` to set/preserve the
configuration directory.
Merge to v6.0
When rendering the user documentation-search page or
local-redirect page, only user-specific documentation is
included, which makes rendering faster and automatically
picks up any installation-scope additions.
The documentation start page is still static, so the
user version doesn't pick up installation-scope
additions in the same way.
Related to PR 14180
Strings are resolved based on the current-directory. This test suite
is not robust against mzlib/etc being moved around, so I changed the
module to one that is unlikely to move out of collects
When the "racket-index" package is in user scope, then the
the documentation-build process should not try to write to
"doc" in the installation.
Merge to v6.0
XREPL already doesn't declare dependencies on its optional
features such as launching DrRacket or opening the docs. The
consensus seems to be that it's best not to declare these and
to gracefully degrade if they're missing. For XREPL, the error
message could be better, but it currently lets the user keep
going when the `dynamic-require` fails.
and sometimes when there are syntax errors raised
In more detail, rearrange online check syntax's internal plumbing
so that syntax objects can be handed to check syntax at any point
(via a special log message, see the changes to the docs)
not just when expansion is finished
Use this in TR to get check syntax information even when there is
a type error (and also get the check syntax information processing
started before type checking starts (altho this isn't running
in a separate place, so there is no new parallelism here))