golded-plus-1.1.5-20260827 (unicode)
Pre-releaseRebuilt on 27 August, same date, with three fixes the day's
testing turned up. Anything downloaded before that carries none of
them; take these instead.
- GoldED+ could write over its own memory while redrawing the status
line and crash later somewhere else entirely - opening a *.MSG area
on one machine, inside the header editor on another. The two lines
were compared from both ends, which only means the same position in
each while they are the same length; a field padded to a different
width made the span come out negative, and as an unsigned length
that is enormous. - On Windows a fullwidth character - Chinese, Japanese, Korean - was
drawn into one console cell where the console gives it two. The
glyph was squeezed to half its width, everything after it sat a
column early, and the previous screen showed through where the line
fell short. Checked afterwards in both conhost and Windows Terminal. - A tagline came out cut in the middle of a word and stayed cut in
every message written after it. It was being cut as golded.cfg was
read, into a buffer of 76 bytes - 76 characters of English, 37 of
Russian. The buffers a tagline, a tearline and an origin pass
through were all sized that way and now hold the characters they
were meant to.
Second snapshot of the unicode branch, following up
golded-plus-1.1.5-20260825 with what its testers found and what a
review of the first snapshot's own code turned up.
Fixed since the previous snapshot:
- The window layer measured text in bytes where it meant screen
columns. A UTF-8 language file crashed GoldED+ on every start — the
window-title buffer was sized in columns and filled in bytes — and
menu items drew one character per byte. Titles, menus, the pick
lists, the help text, the wrap margin and the origin line now all
measure in columns, and the origin line is no longer cut through the
middle of a character on its way into the message base. - Emoji. Width tables are generated from Unicode 17.0 instead of a
2018 snapshot, text is measured by grapheme cluster — an emoji with
a skin tone, a joined family or a flag counts as one character — and
the cursor steps over such a character in one move. On Windows,
characters outside the BMP were cut to sixteen bits and drew as an
unrelated glyph or nothing; they are written whole now, the way the
console at hand can draw them (conhost and Windows Terminal each
accept a different form;GOLDED_CONSOLE=cells|streamoverrides the
guess if it comes out wrong). - The spell checker converted words through whatever charset
conversion happened to be active instead of the one to its
dictionary, so in a UTF-8 session an 8-bit dictionary never matched
anything. - Three places that write a message out did not say which conversion
to use and inherited whatever ran before — carbon copies, file
export, the SOUP import. - The charset a message declares is recognised by one function
everywhere, so the message list now decodes header fields for every
declaration the reader accepts: CHRS, CHARSET, CODEPAGE, I51,
X-Charset. TAGLINECHARtakes a whole character rather than its first byte,
and the GoldED+ mark in the status line is chosen by the charset of
the session rather than at compile time.- Reading a message from an 8-bit echo no longer runs a full iconv
conversion per character.
The full list is in docs/notework.txt; what is known and deliberately
left for later is in docs/todowork.txt.
Archives
Each contains the binaries, file_id.diz and the licence and
documentation. Binary names follow the usual convention — gedwin
/gnwin/rddtwin for MSVC, gedcyg/gncyg/rddtcyg for mingw, with
64 appended on the 64-bit builds.
win32-cygwin and win64-cygwin are native Win32/Win64 binaries built
with the mingw-w64 cross compiler that Cygwin ships; they need no
cygwin1.dll. The linux-amd64 deb is built on Ubuntu 26.04 this
time, like the arm64 one.
This is a testing snapshot, not a stable release.