From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Carlos Pita Newsgroups: gmane.emacs.bugs Subject: bug#33959: Date: Thu, 3 Jan 2019 02:38:52 -0300 Message-ID: References: NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="0000000000003068fb057e872e84" X-Trace: blaine.gmane.org 1546493891 25669 195.159.176.226 (3 Jan 2019 05:38:11 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Thu, 3 Jan 2019 05:38:11 +0000 (UTC) To: 33959@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Thu Jan 03 06:38:07 2019 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1gevhm-0006ap-QF for geb-bug-gnu-emacs@m.gmane.org; Thu, 03 Jan 2019 06:38:07 +0100 Original-Received: from localhost ([127.0.0.1]:49225 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gevjt-0000wO-5P for geb-bug-gnu-emacs@m.gmane.org; Thu, 03 Jan 2019 00:40:17 -0500 Original-Received: from eggs.gnu.org ([208.118.235.92]:47188) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gevjk-0000va-Sw for bug-gnu-emacs@gnu.org; Thu, 03 Jan 2019 00:40:10 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gevjf-0007Pg-Mp for bug-gnu-emacs@gnu.org; Thu, 03 Jan 2019 00:40:08 -0500 Original-Received: from debbugs.gnu.org ([208.118.235.43]:42601) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1gevje-0007O3-IC for bug-gnu-emacs@gnu.org; Thu, 03 Jan 2019 00:40:03 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1gevje-0002ur-B8 for bug-gnu-emacs@gnu.org; Thu, 03 Jan 2019 00:40:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Carlos Pita Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 03 Jan 2019 05:40:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 33959 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 33959-submit@debbugs.gnu.org id=B33959.154649395211123 (code B ref 33959); Thu, 03 Jan 2019 05:40:02 +0000 Original-Received: (at 33959) by debbugs.gnu.org; 3 Jan 2019 05:39:12 +0000 Original-Received: from localhost ([127.0.0.1]:45157 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1geviq-0002tK-7a for submit@debbugs.gnu.org; Thu, 03 Jan 2019 00:39:12 -0500 Original-Received: from mail-yb1-f180.google.com ([209.85.219.180]:35907) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1gevin-0002t7-Vh for 33959@debbugs.gnu.org; Thu, 03 Jan 2019 00:39:10 -0500 Original-Received: by mail-yb1-f180.google.com with SMTP id a190so10100471ybg.3 for <33959@debbugs.gnu.org>; Wed, 02 Jan 2019 21:39:09 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to; bh=9WjJruoMVrH99H1AzbGWfYKSqiSn1lX0c/DtgIlvLvA=; b=dtjkUv1fZYqGgd6F3l3gmCXQ49G4qmfZQCWFzGXO56eGRHhY2pDKrzS7+ar1ioUhTT IJ4fbBI3cAiur4UoTkTz3Ofn7ddY2FNZ6gYbC9a//1Cmb/iE6fjfY3+sWQO+2W02LSD1 IrwZM/K8S8l5RkYF2cBcJ3xPcTeeUkAxRiSyqZOi94UYD+6ABh5jIzbKjhn/G4qnEyRz YyT/jnJo8krXvLUmUVnHGFe+xom9wOh42a1wlnq0gQF58whzR4vDx24y5qTqqwfZbxFE aDUWNta8JZkUBj5VlApVol12m1AITVvUP/npvKYZbWVGUUqLq2lAzvIuFKC8hYNK0xYH UfCQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to; bh=9WjJruoMVrH99H1AzbGWfYKSqiSn1lX0c/DtgIlvLvA=; b=ZnX3T4vYDWILWuI47OGyxEiV2oyRYfoAeDJWgk4rxQhRNQiMDEQVxYy9DmS9YHuOX+ DIIUslUXBaH6VBKUlRtoEcBFdM/uJW28vdEQvHFQb69NMlG2/A5ov7vMmeHQMXNSJrLh CB6MuL4eEEryTx0+EQrWipAYdTcfrRWw79/RaOKvQXjFCO6MfHxyqvGm7fmztj9JyweT 4QyALy6Ucdqa7I9IgpcSG/iwIvgyee24exmDcfcw803FvobIqp2fAJgzLcpF9TauB/33 vJqGHOSAk5yJsgDhxVYiJpiSrUhsl0ZFekEgm9iuJst/n68qoGWe/rq+rkiFGvgp4g/Y 6GLw== X-Gm-Message-State: AJcUukdFsm64LzWwj1GZ7YU0qizTX5W8257CN0RNbGVZa1o5LhL1Y+K8 DQbUy+0QoXkKRRI7SD0NVwiYEMtYF+rbkiGVGFPislNr X-Google-Smtp-Source: AFSGD/X4jhXYaLf4IWKg+t939kS2FVK9+e2TGLvaXehbzYblgb/5RbE2XTHAtL82MVAScAU8ihEM9RNK5DLQQpCNAqQ= X-Received: by 2002:a25:7b81:: with SMTP id w123mr46854042ybc.26.1546493944151; Wed, 02 Jan 2019 21:39:04 -0800 (PST) In-Reply-To: X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 208.118.235.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.org gmane.emacs.bugs:154104 Archived-At: --0000000000003068fb057e872e84 Content-Type: text/plain; charset="UTF-8" > but I see no reason to not call (erase-buffer) altogether. > > Do you? Yes, obviously, multiline input, I forgot. Nevertheless I found the origin of the problem. Somehow when company is enabled in the shell buffer python-shell-font-lock-comint-output-filter-function is getting empty strings as output and then the ";; Otherwise just add a newline." clause is activated. No matter the reason why empty output is being passed to the filter, it's wrong for the filter to add a new line to the font lock buffer if this happens. I'm attaching two patches, since python-shell-font-lock-comint-output-filter-function is an old friend of mine and we have spent many nights together now: 1. The first one (Avoid-spurious...) strictly fixes this issue by moving the not-empty condition to the top and doing everything else unless not-empty. Period. That works. 2. The second one (Fix-font-lock...) combines 1 with my previous patch for fixing ipython multiline input (#32390) since both changes overlap. I suggest to directly apply patch 2 since it improves prompt detection heuristic and fixes two bugs. Then you can close this and #32390. Regards -- Carlos --0000000000003068fb057e872e84 Content-Type: text/x-patch; charset="US-ASCII"; name="0001-Avoid-spurious-empty-lines-in-font-lock-buffer-fixes.patch" Content-Disposition: attachment; filename="0001-Avoid-spurious-empty-lines-in-font-lock-buffer-fixes.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_jqg6etg90 RnJvbSBkODE2YTI5ZjVhOWNkY2ViZDhmNjlhZDBhNjU1NWVhY2EwNTE1ODdlIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBtZW1lcGxleCA8Y2FybG9zam9zZXBpdGFAZ21haWwuY29tPgpE YXRlOiBUaHUsIDMgSmFuIDIwMTkgMDI6Mjg6MzAgLTAzMDAKU3ViamVjdDogW1BBVENIXSBBdm9p ZCBzcHVyaW91cyBlbXB0eSBsaW5lcyBpbiBmb250IGxvY2sgYnVmZmVyLCBmaXhlcyAjMzM5NTkK Ci0tLQogbGlzcC9wcm9nbW9kZXMvcHl0aG9uLmVsIHwgMjcgKysrKysrKysrKysrKystLS0tLS0t LS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgMTQgaW5zZXJ0aW9ucygrKSwgMTMgZGVsZXRpb25zKC0p CgpkaWZmIC0tZ2l0IGEvbGlzcC9wcm9nbW9kZXMvcHl0aG9uLmVsIGIvbGlzcC9wcm9nbW9kZXMv cHl0aG9uLmVsCmluZGV4IDI3ZDMxYWIuLjgxYTZlODkgMTAwNjQ0Ci0tLSBhL2xpc3AvcHJvZ21v ZGVzL3B5dGhvbi5lbAorKysgYi9saXNwL3Byb2dtb2Rlcy9weXRob24uZWwKQEAgLTI1NTYsMTkg KzI1NTYsMTkgQEAgcHl0aG9uLXNoZWxsLWZvbnQtbG9jay1jbGVhbnVwLWJ1ZmZlcgogCiAoZGVm dW4gcHl0aG9uLXNoZWxsLWZvbnQtbG9jay1jb21pbnQtb3V0cHV0LWZpbHRlci1mdW5jdGlvbiAo b3V0cHV0KQogICAiQ2xlYW4gdXAgdGhlIGZvbnQtbG9jayBidWZmZXIgYWZ0ZXIgYW55IE9VVFBV VC4iCi0gIChpZiAoYW5kIChub3QgKHN0cmluZz0gIiIgb3V0cHV0KSkKLSAgICAgICAgICAgOzsg SXMgZW5kIG9mIG91dHB1dCBhbmQgaXMgbm90IGp1c3QgYSBwcm9tcHQuCi0gICAgICAgICAgIChu b3QgKG1lbWJlcgotICAgICAgICAgICAgICAgICAocHl0aG9uLXNoZWxsLWNvbWludC1lbmQtb2Yt b3V0cHV0LXAKLSAgICAgICAgICAgICAgICAgIChhbnNpLWNvbG9yLWZpbHRlci1hcHBseSBvdXRw dXQpKQotICAgICAgICAgICAgICAgICAnKG5pbCAwKSkpKQotICAgICAgOzsgSWYgb3V0cHV0IGlz IG90aGVyIHRoYW4gYW4gaW5wdXQgcHJvbXB0IHRoZW4gInJlYWwiIG91dHB1dCBoYXMKLSAgICAg IDs7IGJlZW4gcmVjZWl2ZWQgYW5kIHRoZSBmb250LWxvY2sgYnVmZmVyIG11c3QgYmUgY2xlYW5l ZCB1cC4KLSAgICAgIChweXRob24tc2hlbGwtZm9udC1sb2NrLWNsZWFudXAtYnVmZmVyKQotICAg IDs7IE90aGVyd2lzZSBqdXN0IGFkZCBhIG5ld2xpbmUuCi0gICAgKHB5dGhvbi1zaGVsbC1mb250 LWxvY2std2l0aC1mb250LWxvY2stYnVmZmVyCi0gICAgICAoZ290by1jaGFyIChwb2ludC1tYXgp KQotICAgICAgKG5ld2xpbmUpKSkKKyAgKHVubGVzcyAoc3RyaW5nPSAiIiBvdXRwdXQpCisgICAg KGlmIDs7IElzIGVuZCBvZiBvdXRwdXQgYW5kIGlzIG5vdCBqdXN0IGEgcHJvbXB0LgorICAgICAg ICAobm90IChtZW1iZXIKKyAgICAgICAgICAgICAgKHB5dGhvbi1zaGVsbC1jb21pbnQtZW5kLW9m LW91dHB1dC1wCisgICAgICAgICAgICAgICAoYW5zaS1jb2xvci1maWx0ZXItYXBwbHkgb3V0cHV0 KSkKKyAgICAgICAgICAgICAgJyhuaWwgMCkpKQorICAgICAgICA7OyBJZiBvdXRwdXQgaXMgb3Ro ZXIgdGhhbiBhbiBpbnB1dCBwcm9tcHQgdGhlbiAicmVhbCIgb3V0cHV0IGhhcworICAgICAgICA7 OyBiZWVuIHJlY2VpdmVkIGFuZCB0aGUgZm9udC1sb2NrIGJ1ZmZlciBtdXN0IGJlIGNsZWFuZWQg dXAuCisgICAgICAgIChweXRob24tc2hlbGwtZm9udC1sb2NrLWNsZWFudXAtYnVmZmVyKQorICAg ICAgOzsgT3RoZXJ3aXNlIGp1c3QgYWRkIGEgbmV3bGluZS4KKyAgICAgIChweXRob24tc2hlbGwt Zm9udC1sb2NrLXdpdGgtZm9udC1sb2NrLWJ1ZmZlcgorICAgICAgICAoZ290by1jaGFyIChwb2lu dC1tYXgpKQorICAgICAgICAobmV3bGluZSkpKSkKICAgb3V0cHV0KQogCiAoZGVmdW4gcHl0aG9u LXNoZWxsLWZvbnQtbG9jay1wb3N0LWNvbW1hbmQtaG9vayAoKQpAQCAtMjU5Nyw2ICsyNTk3LDcg QEAgcHl0aG9uLXNoZWxsLWZvbnQtbG9jay1wb3N0LWNvbW1hbmQtaG9vawogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIChwb2ludC1tYXgpKSkpCiAgICAgICAgICAgICAgKHJlcGxh Y2VtZW50LWxlbmd0aCAobGVuZ3RoIHJlcGxhY2VtZW50KSkKICAgICAgICAgICAgICAoaSAwKSkK KwogICAgICAgICA7OyBJbmplY3QgdGV4dCBwcm9wZXJ0aWVzIHRvIGdldCBpbnB1dCBmb250aWZp ZWQuCiAgICAgICAgICh3aGlsZSAobm90ICg9IGkgcmVwbGFjZW1lbnQtbGVuZ3RoKSkKICAgICAg ICAgICAobGV0KiAoKHBsaXN0ICh0ZXh0LXByb3BlcnRpZXMtYXQgaSByZXBsYWNlbWVudCkpCi0t IAoyLjIwLjEKCg== --0000000000003068fb057e872e84 Content-Type: text/x-patch; charset="US-ASCII"; name="0001-Fix-font-lock-output-filter-bugs-33959-and-32390.patch" Content-Disposition: attachment; filename="0001-Fix-font-lock-output-filter-bugs-33959-and-32390.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_jqg6f1cu1 RnJvbSBkYzgwZGYzMTA5MzNmOWY1ZjliOWJmMDY1ZTcyZWU3OWE2YjE2MTM0IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBtZW1lcGxleCA8Y2FybG9zam9zZXBpdGFAZ21haWwuY29tPgpE YXRlOiBUaHUsIDMgSmFuIDIwMTkgMDI6MzE6NTIgLTAzMDAKU3ViamVjdDogW1BBVENIXSBGaXgg Zm9udCBsb2NrIG91dHB1dCBmaWx0ZXIgYnVncyAjMzM5NTkgYW5kICMzMjM5MAoKSW1wcm92ZXMg bXVsdGlsaW5lIGlucHV0IGRldGVjdGlvbiBoZXVyaXN0aWMuCkZpeGVzIG11bHRpbGluZSBpbnB1 dCBmb3IgaXB5dGhvbi4KQXZvaWQgYWRkaW5nIHNwdXJpb3VzIGVtcHR5IGxpbmVzIHRvIHRoZSBm b250IGxvY2sgYnVmZmVyLgpGaWx0ZXIgYW5zaSBjb2xvciBmcm9tIG91dHB1dCBiZWZvcmUgbWF0 Y2hpbmcuCi0tLQogbGlzcC9wcm9nbW9kZXMvcHl0aG9uLmVsIHwgMjcgKysrKysrKysrKysrKy0t LS0tLS0tLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgMTMgaW5zZXJ0aW9ucygrKSwgMTQgZGVsZXRp b25zKC0pCgpkaWZmIC0tZ2l0IGEvbGlzcC9wcm9nbW9kZXMvcHl0aG9uLmVsIGIvbGlzcC9wcm9n bW9kZXMvcHl0aG9uLmVsCmluZGV4IDI3ZDMxYWIuLmU5OGQ4OGUgMTAwNjQ0Ci0tLSBhL2xpc3Av cHJvZ21vZGVzL3B5dGhvbi5lbAorKysgYi9saXNwL3Byb2dtb2Rlcy9weXRob24uZWwKQEAgLTI1 NTYsMjAgKzI1NTYsMTggQEAgcHl0aG9uLXNoZWxsLWZvbnQtbG9jay1jbGVhbnVwLWJ1ZmZlcgog CiAoZGVmdW4gcHl0aG9uLXNoZWxsLWZvbnQtbG9jay1jb21pbnQtb3V0cHV0LWZpbHRlci1mdW5j dGlvbiAob3V0cHV0KQogICAiQ2xlYW4gdXAgdGhlIGZvbnQtbG9jayBidWZmZXIgYWZ0ZXIgYW55 IE9VVFBVVC4iCi0gIChpZiAoYW5kIChub3QgKHN0cmluZz0gIiIgb3V0cHV0KSkKLSAgICAgICAg ICAgOzsgSXMgZW5kIG9mIG91dHB1dCBhbmQgaXMgbm90IGp1c3QgYSBwcm9tcHQuCi0gICAgICAg ICAgIChub3QgKG1lbWJlcgotICAgICAgICAgICAgICAgICAocHl0aG9uLXNoZWxsLWNvbWludC1l bmQtb2Ytb3V0cHV0LXAKLSAgICAgICAgICAgICAgICAgIChhbnNpLWNvbG9yLWZpbHRlci1hcHBs eSBvdXRwdXQpKQotICAgICAgICAgICAgICAgICAnKG5pbCAwKSkpKQotICAgICAgOzsgSWYgb3V0 cHV0IGlzIG90aGVyIHRoYW4gYW4gaW5wdXQgcHJvbXB0IHRoZW4gInJlYWwiIG91dHB1dCBoYXMK LSAgICAgIDs7IGJlZW4gcmVjZWl2ZWQgYW5kIHRoZSBmb250LWxvY2sgYnVmZmVyIG11c3QgYmUg Y2xlYW5lZCB1cC4KLSAgICAgIChweXRob24tc2hlbGwtZm9udC1sb2NrLWNsZWFudXAtYnVmZmVy KQotICAgIDs7IE90aGVyd2lzZSBqdXN0IGFkZCBhIG5ld2xpbmUuCi0gICAgKHB5dGhvbi1zaGVs bC1mb250LWxvY2std2l0aC1mb250LWxvY2stYnVmZmVyCi0gICAgICAoZ290by1jaGFyIChwb2lu dC1tYXgpKQotICAgICAgKG5ld2xpbmUpKSkKLSAgb3V0cHV0KQorICAodW5sZXNzIChzdHJpbmc9 IG91dHB1dCAiIikKKyAgICAoaWYgKGxldCAoKG91dHB1dCAoYW5zaS1jb2xvci1maWx0ZXItYXBw bHkgb3V0cHV0KSkpCisgICAgICAgICAgKGFuZCAocHl0aG9uLXNoZWxsLWNvbWludC1lbmQtb2Yt b3V0cHV0LXAgb3V0cHV0KQorICAgICAgICAgICAgICAgKG5vdCAoc3RyaW5nLW1hdGNoICJcXC5c XC5cXC4iIG91dHB1dCkpKSkKKyAgICAgICAgOzsgSWYgb3V0cHV0IGVuZHMgd2l0aCBhbiBpbml0 aWFsIChub3QgY29udGludWF0aW9uKSBpbnB1dCBwcm9tcHQKKyAgICAgICAgOzsgdGhlbiB0aGUg Zm9udC1sb2NrIGJ1ZmZlciBtdXN0IGJlIGNsZWFuZWQgdXAuCisgICAgICAgIChweXRob24tc2hl bGwtZm9udC1sb2NrLWNsZWFudXAtYnVmZmVyKQorICAgICAgOzsgT3RoZXJ3aXNlIGp1c3QgYWRk IGEgbmV3bGluZS4KKyAgICAgIChweXRob24tc2hlbGwtZm9udC1sb2NrLXdpdGgtZm9udC1sb2Nr LWJ1ZmZlcgorICAgICAgICAoZ290by1jaGFyIChwb2ludC1tYXgpKQorICAgICAgICAobmV3bGlu ZSkpKQorICAgIG91dHB1dCkpCiAKIChkZWZ1biBweXRob24tc2hlbGwtZm9udC1sb2NrLXBvc3Qt Y29tbWFuZC1ob29rICgpCiAgICJGb250aWZpZXMgY3VycmVudCBsaW5lIGluIHNoZWxsIGJ1ZmZl ci4iCkBAIC0yNTk3LDYgKzI1OTUsNyBAQCBweXRob24tc2hlbGwtZm9udC1sb2NrLXBvc3QtY29t bWFuZC1ob29rCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHBvaW50LW1heCkp KSkKICAgICAgICAgICAgICAocmVwbGFjZW1lbnQtbGVuZ3RoIChsZW5ndGggcmVwbGFjZW1lbnQp KQogICAgICAgICAgICAgIChpIDApKQorCiAgICAgICAgIDs7IEluamVjdCB0ZXh0IHByb3BlcnRp ZXMgdG8gZ2V0IGlucHV0IGZvbnRpZmllZC4KICAgICAgICAgKHdoaWxlIChub3QgKD0gaSByZXBs YWNlbWVudC1sZW5ndGgpKQogICAgICAgICAgIChsZXQqICgocGxpc3QgKHRleHQtcHJvcGVydGll cy1hdCBpIHJlcGxhY2VtZW50KSkKLS0gCjIuMjAuMQoK --0000000000003068fb057e872e84--