aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core-commands.c
diff options
context:
space:
mode:
authorRobin Haberkorn <robin.haberkorn@googlemail.com>2024-09-09 16:54:26 +0200
committerRobin Haberkorn <robin.haberkorn@googlemail.com>2024-09-09 18:22:21 +0200
commit4f231871a0208ec9bcc2679fce25d3b9795d1597 (patch)
treebdc9055166fe236f009c6640acf53b6706310c27 /src/core-commands.c
parent41ab5cf0289dab60ac1ddc97cf9680ee2468ea6c (diff)
downloadsciteco-4f231871a0208ec9bcc2679fce25d3b9795d1597.tar.gz
added raw ANSI mode to facilitate 8-bit clean editing (refs #5)
* When enabled with bit 2 in the ED flags (0,4ED), all registers and buffers will get the raw ANSI encoding (as if 0EE had been called on them). You can still manually change the encoding, eg. by calling 65001EE afterwards. * Also the ANSI mode sets up character representations for all bytes >= 0x80. This is currently done only depending on the ED flag, not when setting 0EE. * Since setting 16,4ED for 8-bit clean editing in a macro can be tricky - the default unnamed buffer will still be at UTF-8 and at least a bunch of environment registers as well - we added the command line option `--8bit` (short `-8`) which configures the ED flags very early on. As another advantage you can mung the profile in 8-bit mode as well when using SciTECO as a sort of interactive hex editor. * Disable UTF-8 checks in 8-bit clean mode (sample.teco_ini).
Diffstat (limited to 'src/core-commands.c')
-rw-r--r--src/core-commands.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/core-commands.c b/src/core-commands.c
index 638279d..176bb17 100644
--- a/src/core-commands.c
+++ b/src/core-commands.c
@@ -2038,6 +2038,11 @@ teco_state_ecommand_close(teco_machine_main_t *ctx, GError **error)
* Without any argument ED returns the current flags.
*
* Currently, the following flags are used by \*(ST:
+ * - 4: If enabled, prefer raw single-byte ANSI encoding
+ * for all new buffers and registers.
+ * This does not change the encoding of any existing
+ * buffers and any initialized default register when set via
+ * \fBED\fP, so you might want to launch \*(ST with \fB--8bit\fP.
* - 8: Enable/disable automatic folding of case-insensitive
* command characters during interactive key translation.
* The case of letter keys is inverted, so one or two
@@ -2610,9 +2615,6 @@ teco_state_ecommand_encoding(teco_machine_main_t *ctx, GError **error)
*
* FIXME: Should we avoid this if new_cp == 0?
* It will be used for raw byte handling mostly.
- * Perhaps we should even set char representations appropriately
- * for all non-ANSI codepoints in the 0 codepage.
- * But this would also be costly...
*/
if (teco_current_doc_must_undo()) {
/*