From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Adrian Robert Newsgroups: gmane.emacs.devel Subject: Re: merging Emacs.app Date: Mon, 10 Mar 2008 10:06:22 +0000 (UTC) Message-ID: References: <18375.18663.981150.252393@kahikatea.snap.net.nz> <200803031629.m23GT4tH023615@sallyv1.ics.uci.edu> <200803050504.m2554JRn010804@sallyv1.ics.uci.edu> <200803051605.m25G5bfF012539@sallyv1.ics.uci.edu> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Trace: ger.gmane.org 1205143623 21706 80.91.229.12 (10 Mar 2008 10:07:03 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Mon, 10 Mar 2008 10:07:03 +0000 (UTC) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Mar 10 11:07:22 2008 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1JYeuf-00021G-BF for ged-emacs-devel@m.gmane.org; Mon, 10 Mar 2008 11:07:21 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1JYeu7-0007n3-30 for ged-emacs-devel@m.gmane.org; Mon, 10 Mar 2008 06:06:47 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1JYeu0-0007mG-HP for emacs-devel@gnu.org; Mon, 10 Mar 2008 06:06:40 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1JYety-0007lg-LW for emacs-devel@gnu.org; Mon, 10 Mar 2008 06:06:39 -0400 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1JYety-0007lb-Bl for emacs-devel@gnu.org; Mon, 10 Mar 2008 06:06:38 -0400 Original-Received: from main.gmane.org ([80.91.229.2] helo=ciao.gmane.org) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1JYetx-0000YO-PS for emacs-devel@gnu.org; Mon, 10 Mar 2008 06:06:38 -0400 Original-Received: from list by ciao.gmane.org with local (Exim 4.43) id 1JYetr-0001ng-KS for emacs-devel@gnu.org; Mon, 10 Mar 2008 10:06:31 +0000 Original-Received: from 212.116.219.107 ([212.116.219.107]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Mon, 10 Mar 2008 10:06:31 +0000 Original-Received: from Adrian.B.Robert by 212.116.219.107 with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Mon, 10 Mar 2008 10:06:31 +0000 X-Injected-Via-Gmane: http://gmane.org/ Original-Lines: 35 Original-X-Complaints-To: usenet@ger.gmane.org X-Gmane-NNTP-Posting-Host: main.gmane.org User-Agent: Loom/3.14 (http://gmane.org/) X-Loom-IP: 212.116.219.107 (Mozilla/5.0 (Macintosh; U; Intel Mac OS X; en) AppleWebKit/523.12.2 (KHTML, like Gecko) Version/3.0.4 Safari/523.12.2) X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:92018 Archived-At: YAMAMOTO Mitsuharu math.s.chiba-u.ac.jp> writes: > One may think that the two ports mainly differs in the APIs they use, > but what's really different between them is their fundamental design > and policy. (Otherwise I wouldn't have tried to make another > Cocoa-based port.) > > For example, the latest release of Emacs.app still doesn't quit with > C-g in certain situations such as `(while t)' or `M-! sleep 30 RET'. > Of course the Carbon port can quit there, but its strategy is not > directly applicable to the Cocoa port because of the difference in > their fundamental design. It is true that there are design differences btwn the ports, many arising because NeXTstep is an OO API and the port tried to use those facilities effectively from the beginning. (And there are pros and cons of this, since it causes some code differences to other ports built around non-OO APIs.) However that is unrelated to this Ctrl-G issue. The event handling in the Emacs.app is slightly different from the Carbon code, but in my understanding these shouldn't prevent similar Ctrl-G sensitivity. However by default Emacs.app does not define NO_SOCK_SIGIO, while Carbon does. Turning it on (add --enable-cocoa-experimental-ctrl- g to configure args) improves Ctrl-G sensitivity, but brings some undesired side effects, related to scrolling and multi-frame switching. It is an open TODO to address these side effects and also make a few other code changes to bring the sensitivity fully up to the Carbon level, but I would be surprised if it needed changes to fundamental design to do this. BTW, a very closely related improvement needed is to correctly handle input when GUI and terminal windows are simultaneously active. -Adrian