On Sat, 24 Nov 2018 at 18:32, Oliver Kiddle wrote: > > On 11 Nov, Sebastian Gniazdowski wrote: > > > I've used zle -T tc tcfunc, which sets REPLY="", i.e. discards the > > codes. Should I change them to something? Because I'm only getting LE > > If removing them works for the particular tests then I'd have thought > this was fine. Ok, so I've also removed the deleting of \[[J and \[[K codes (result: simpler patterns and regexes), which are covered by the "zle -T ..." sink. > > I'm currently removing following escapes from all zpty output: > > - ^[[?2004h > > - ^[[?2004l > > unsetting zle_bracketed_paste will prevent zsh from generating these > which is better than removing them afterwards. I'm using this now, the codes are indeed not generated now. One thing, I've had to call `unset zle_brack...' after `setopt zle', not before it. So the sed command is now quite simple, only three "-e" arguments: { zpty -r zsh } | sed -e $'/[^\t\r ]/!d' -e $'s/\r$//' -e $'s/\x1b\\[[0-9;]*m//g' | while ... > > PS. Didn't yet search for terminfo file, just did export > > TERM=xterm-256, not actually sure how to search for the definition > > Searching probably isn't easy to do portably. Perhaps guessing like this > is better, but it would be good to check $termcap[Co] afterwards and > skip tests as appropriate. This is now done, i.e. termcap[Co] is being check: export TERM=xterm-256color if [[ ${+termcap} != 1 || ${termcap[Co]} != <-> || ${termcap[Co]} -lt 256 ]]; then ZTST_unimplemented="no termcap module OR termcap doesn't support 256 or more colors" elif [[ $OSTYPE == cygwin ]]; then ZTST_unimplemented='the zsh/zpty module does not work on Cygwin' elif zmodload zsh/zpty 2> /dev/null; then zpty_start() { ... > This use of sed isn't portable. In particular, the use of semi-colons to > separate commands and the [[:space:]] character class are extensions. > You can use literal spaces and multiple -e options. Either that > or do the substitutions in zsh. The current sed invocation is pasted above – sed is now using literal spaces instead of [[:space:]], multiple -e commands instead of semicolon and is simplified. Now, the bug with zle_highlight + zsh/nearcolor: -0mCDE|38;5;232|trueCDE|39| +0m38;5;232mtrueCDE|39| Test ./X04zlehighlight.ztst failed: output differs from expected as shown above for: ... Was testing: basic region_highlight with near-color (hex-triplets at input) The output doesn't follow zsh_highlight replacements for start-code and end-code and still emits raw codes. Could this be fixed? -- Sebastian Gniazdowski News: https://twitter.com/ZdharmaI IRC: https://kiwiirc.com/client/chat.freenode.net:+6697/#zplugin Blog: http://zdharma.org