PS. Last runshfunc() uses this file: https://github.com/psprint/zcommodore/blob/master/__zcmdr-process-buffer I've added debug marks to this file – attached is diff where I've added them. The resulted debug-prints file contains also the text processed, with the ^A, ^B, etc. – this is what patcompile() is feed with. Mark 8 is the last one generated before core, and points to this lines as the source of core-triggering patcompile(): # Remove the word MATCH="" buf="${buf#(#m)$word}" Best regards, Sebastian Gniazdowski