diff --git a/.woodpecker.yml b/.woodpecker.yml index f31c234..c8d6c15 100644 --- a/.woodpecker.yml +++ b/.woodpecker.yml @@ -40,6 +40,6 @@ pipeline: image: 'curlimages/curl' commands: # Publish the package - - 'curl -s -XPOST -H "X-API-KEY: $API_KEY" -T "$(ls *.pkg*)" https://arch2.r8r.be/jjr' + - 'curl -s -XPOST -H "X-API-KEY: $API_KEY" -T "$(ls *.pkg*)" https://arch.r8r.be/jjr/publish' secrets: - api_key diff --git a/st.c b/st.c index e28228e..316bf2b 100644 --- a/st.c +++ b/st.c @@ -1839,18 +1839,11 @@ csihandle(void) case 'm': /* SGR -- Terminal attribute (color) */ tsetattr(csiescseq.arg, csiescseq.narg); break; - case 'n': /* DSR -- Device Status Report */ - switch (csiescseq.arg[0]) { - case 5: /* Status Report "OK" `0n` */ - ttywrite("\033[0n", sizeof("\033[0n") - 1, 0); - break; - case 6: /* Report Cursor Position (CPR) ";R" */ + case 'n': /* DSR – Device Status Report (cursor position) */ + if (csiescseq.arg[0] == 6) { len = snprintf(buf, sizeof(buf), "\033[%i;%iR", - term.c.y+1, term.c.x+1); + term.c.y+1, term.c.x+1); ttywrite(buf, len, 0); - break; - default: - goto unknown; } break; case 'r': /* DECSTBM -- Set Scrolling Region */ @@ -2009,10 +2002,8 @@ strhandle(void) if (p && !strcmp(p, "?")) { osc_color_response(j, 0, 1); } else if (xsetcolorname(j, p)) { - if (par == 104 && narg <= 1) { - xloadcols(); + if (par == 104 && narg <= 1) return; /* color reset without parameter */ - } fprintf(stderr, "erresc: invalid color j=%d, p=%s\n", j, p ? p : "(null)"); } else { @@ -2492,9 +2483,6 @@ check_control_code: * they must not cause conflicts with sequences. */ if (control) { - /* in UTF-8 mode ignore handling C1 control characters */ - if (IS_SET(MODE_UTF8) && ISCONTROLC1(u)) - return; tcontrolcode(u); /* * control codes are not shown ever @@ -2541,10 +2529,8 @@ check_control_code: gp = &term.line[term.c.y][term.c.x]; } - if (IS_SET(MODE_INSERT) && term.c.x+width < term.col) { + if (IS_SET(MODE_INSERT) && term.c.x+width < term.col) memmove(gp+width, gp, (term.col - term.c.x - width) * sizeof(Glyph)); - gp->mode &= ~ATTR_WIDE; - } if (term.c.x+width > term.col) { tnewline(1);