From: YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
To: emacs-devel@gnu.org
Subject: Re: Carbon: resizing a frame on wrong "space"
Date: Fri, 27 Mar 2009 09:28:32 +0900 [thread overview]
Message-ID: <wl63hv95cf.wl%mituharu@math.s.chiba-u.ac.jp> (raw)
In-Reply-To: <wlzlheisfg.wl%mituharu@math.s.chiba-u.ac.jp>
>>>>> On Mon, 26 Jan 2009 13:48:19 +0900, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> said:
>>>> YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> writes:
>>>>> FYI, it does not happen with the Carbon+AppKit port.
>>>> I have seen you mentioned this port several times, but never find
>>>> it through google. Seems not in CVS repo either? So where can I
>>>> get it?
>>> Now it is publicly available from
>>> ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-22.3-appkit-1.0.tar.gz
The third update of the Carbon+AppKit port is now available from
ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-22.3-appkit-1.3.tar.gz
Below is the list of changes:
** Fixed bugs
*** Popup dialog button labels may get corrupted.
http://lists.gnu.org/archive/html/emacs-devel/2009-03/msg00261.html
*** Popup dialog does not select the default item with the return key.
*** Tooltip contents are sometimes not shown on 10.4 due to the
previous change for flyspell-small-region slowness.
** Improvements
*** Hourglass (progress indicator) is shown in the title bar.
*** Add f20 and kp-separator to the keycode-to-xkeysym table.
This time, README is slightly expanded as follows:
1. What's this?
This is "Carbon+AppKit port" addition to GNU Emacs 22.3.
The Carbon+AppKit port of GNU Emacs 22.3 is a port of the Carbon port
(aka "Carbon Emacs", don't confuse it with "Carbon Emacs Package")
that is a part of the official GNU Emacs 22 distribution and provides
native GUI support for Mac OS. The two ports differ in the GUI
implementation basis: the Carbon port uses Carbon HIToolbox, but the
Carbon+AppKit port uses the Cocoa Application Kit framework (AppKit).
The Carbon+AppKit port inherits the code of the non-GUI part of the
Carbon port, such as drawing, font and image handling. So in this
sense, the Carbon+AppKit port can be regarded as a variant of the
Carbon port. Obviously, this is not a backport of the Cocoa/GNUstep
port (aka "Emacs.app").
The Carbon+AppKit port shares mostly the same features with the Carbon
port including the following:
* C-g handling
You can quit (while t) and (shell-command "sleep 100").
No bogus menu bar activation while these evaluations.
* Emulation of `select' without periodic polling
It doesn't use CPU time while the Lisp interpreter is idle and
waiting for some events to come, even with subprocesses or network
connections.
* Graceful termination
If you try logout/shutdown/reboot while leaving a file-visiting
buffer modified and unsaved, a popup window appears for
confirmation. If you cancel the termination of Emacs (including
C-g or ESC), the whole logout/shutdown/reboot process is also
canceled immediately (i.e., you will see a "canceled" dialog
immediately rather than a "timed out" one afterward). If you
don't have unsaved buffers, shell buffers, etc., you won't see
unnecessary confirmation.
* Apple Event handling
One can define Apple Event handlers at the Lisp level. Actually,
graceful termination above is an instance of Lisp-level Apple
Event handling. Another example is "Get URL" handler that enables
us to invoke the mailer you customized with `mail-user-agent',
e.g.,
$ osascript -e 'tell application "Emacs"
to open location "mailto:foo@example.com"'
If you set Emacs as the default mailer via Mail.app preference,
the Emacs mailer will set up a draft buffer when you click a
mailto: link in a Web browser.
* DictionaryService support (10.4 and later)
You can look up a word under the mouse pointer in the selected
window by typing Command-Control-D.
Basically, the Carbon+AppKit port doesn't add new features per se,
except for the following two aspects:
* Resolution independence (10.4 and later, 10.5 recommended)
Scaling works in Framework-Scaled Mode as opposed to (blurry)
Magnified Mode for the Carbon port. You may want to disable
QuickDraw Text, which is incompatible with Framework-Scaled Mode,
by adding "-DUSE_QUICKDRAW=0" to CFLAGS on compilation.
* 64-bit (10.5, MAY CRASH, see below)
You can build and run a 64-bit binary with GUI support by
specifying CC='gcc -m64' on configure.
!! Caution !! The resulting binary will crash when you try to
display particular characters such as combining diacritics. This
is due to a bug in 64-bit ATSUI. Apple says it won't be fixed but
maybe you can vote for the fix of this bug
(rdar://problem/5578675) at the Apple Bug Reporter.
Although they are minor, some visual enhancements can be found in the
Carbon+AppKit port:
* Aligned key bindings in menus
* Progress indicator (corresponding to hourglass) in the title bar
* Unusable items in the font panel are hidden
Try Options -> Show/Hide -> Font Panel from the menu bar or
M-x mac-font-panel-mode RET.
* Update display while the resize control (or the slider in the font
panel) is being dragged
2. Build instruction
a. Untar the official GNU Emacs 22.3 distribution tarball. Let
EMACS_SOURCE_TOP be the top directory of the source tree.
b. Apply the patch `patch-carbon+appkit' to the source tree.
c. Copy `lisp/term/mac-win.elc' to
`EMACS_SOURCE_TOP/lisp/term/mac-win.elc' by overriding the
latter. (Alternatively, you can bytecompile
`EMACS_SOURCE_TOP/lisp/term/mac-win.el' that was patched in the
previous step.)
d. Copy `src/macappkit.h' and `src/macappkit.m' to
`EMACS_SOURCE_TOP/src'.
e. Build as usual with adding "--with-appkit" as a configure option.
Enjoy,
YAMAMOTO Mitsuharu
mituharu@math.s.chiba-u.ac.jp
next prev parent reply other threads:[~2009-03-27 0:28 UTC|newest]
Thread overview: 149+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-02-20 11:02 Carbon: resizing a frame on wrong "space" David Reitter
2008-02-21 1:13 ` YAMAMOTO Mitsuharu
2008-02-28 20:26 ` Harald Maier
2008-02-29 0:15 ` YAMAMOTO Mitsuharu
2008-02-29 2:40 ` William Xu
2008-02-29 3:02 ` YAMAMOTO Mitsuharu
2008-02-29 3:10 ` William Xu
2008-02-29 3:18 ` YAMAMOTO Mitsuharu
2008-02-29 4:55 ` Dan Nicolaescu
2008-02-29 8:36 ` YAMAMOTO Mitsuharu
2008-03-02 4:44 ` Stefan Monnier
2008-09-07 3:46 ` YAMAMOTO Mitsuharu
2008-11-27 11:37 ` YAMAMOTO Mitsuharu
2009-01-26 4:48 ` YAMAMOTO Mitsuharu
2009-03-27 0:28 ` YAMAMOTO Mitsuharu [this message]
2009-05-13 3:25 ` YAMAMOTO Mitsuharu
2009-06-27 5:58 ` Emacs 22 Carbon+AppKit port (was Re: Carbon: resizing a frame on wrong "space") YAMAMOTO Mitsuharu
2009-08-03 2:55 ` Emacs 22 Carbon+AppKit port YAMAMOTO Mitsuharu
2009-08-07 20:41 ` CHENG Gao
2009-08-29 0:48 ` YAMAMOTO Mitsuharu
2009-08-31 17:38 ` Benjamin Riefenstahl
2009-09-01 5:40 ` YAMAMOTO Mitsuharu
2009-09-05 2:18 ` Emacs 22 Carbon+AppKit port and Emacs 23 Mac port YAMAMOTO Mitsuharu
2009-09-05 7:47 ` CHENG Gao
2009-09-05 8:56 ` YAMAMOTO Mitsuharu
2009-09-05 11:27 ` CHENG Gao
2009-09-05 12:15 ` David Reitter
2009-09-05 12:42 ` Stephen J. Turnbull
2009-09-05 14:35 ` CHENG Gao
2009-09-05 17:28 ` David Reitter
2009-09-08 18:45 ` David Reitter
2009-09-08 16:22 ` Stefan Monnier
2009-09-09 0:26 ` YAMAMOTO Mitsuharu
2009-09-05 8:03 ` CHENG Gao
2009-09-08 10:38 ` CHENG Gao
2009-09-09 1:04 ` YAMAMOTO Mitsuharu
2009-09-10 10:16 ` YAMAMOTO Mitsuharu
2009-09-11 18:11 ` CHENG Gao
2009-09-27 4:23 ` YAMAMOTO Mitsuharu
2009-11-01 4:47 ` YAMAMOTO Mitsuharu
2009-12-09 22:08 ` YAMAMOTO Mitsuharu
2009-12-31 11:46 ` YAMAMOTO Mitsuharu
2010-01-02 1:27 ` Leo
2010-01-02 4:21 ` YAMAMOTO Mitsuharu
2010-01-02 10:19 ` Leo
2010-01-02 15:26 ` Leo
2010-01-02 20:56 ` Leo
2010-01-03 2:45 ` YAMAMOTO Mitsuharu
2010-01-03 11:07 ` Leo
2010-01-12 8:16 ` Jan Djärv
2010-01-12 9:03 ` YAMAMOTO Mitsuharu
2010-01-12 9:28 ` Jan Djärv
2010-01-12 10:18 ` YAMAMOTO Mitsuharu
2010-01-12 14:15 ` Stefan Monnier
2010-01-12 17:21 ` Jan Djärv
2010-01-12 21:22 ` Stefan Monnier
2010-01-13 7:39 ` Jan D.
2010-01-13 14:38 ` Stefan Monnier
2010-01-12 23:35 ` YAMAMOTO Mitsuharu
2010-01-13 7:43 ` Jan D.
2010-01-04 2:08 ` Stefan Monnier
2010-01-30 4:42 ` YAMAMOTO Mitsuharu
2010-02-27 9:19 ` YAMAMOTO Mitsuharu
2010-04-03 2:26 ` YAMAMOTO Mitsuharu
2010-04-03 14:55 ` Leo
2010-04-03 16:07 ` Leo
2010-04-04 5:36 ` YAMAMOTO Mitsuharu
2010-04-06 13:09 ` Leo
2010-04-20 9:08 ` YAMAMOTO Mitsuharu
2010-04-20 13:07 ` Leo
2010-04-28 8:57 ` Leo
2010-04-30 1:21 ` YAMAMOTO Mitsuharu
2010-05-04 2:35 ` YAMAMOTO Mitsuharu
2010-05-04 3:10 ` Leo
2010-05-05 1:09 ` YAMAMOTO Mitsuharu
2010-05-05 15:58 ` David Reitter
2010-05-06 1:04 ` YAMAMOTO Mitsuharu
2010-05-06 16:34 ` covici
2010-05-07 0:33 ` YAMAMOTO Mitsuharu
2010-05-06 17:31 ` David Reitter
2010-06-06 18:48 ` John Higgins
2010-06-06 21:28 ` David Reitter
2010-06-07 0:53 ` YAMAMOTO Mitsuharu
2010-06-11 21:27 ` Daniel Colascione
2010-11-16 1:25 ` YAMAMOTO Mitsuharu
2010-11-16 14:11 ` Ted Zlatanov
2010-11-17 13:44 ` YAMAMOTO Mitsuharu
2010-11-17 14:57 ` Ted Zlatanov
2010-11-17 17:00 ` David Reitter
2010-05-09 4:45 ` YAMAMOTO Mitsuharu
2010-05-29 8:14 ` YAMAMOTO Mitsuharu
2010-06-26 3:51 ` YAMAMOTO Mitsuharu
2010-07-31 5:23 ` YAMAMOTO Mitsuharu
2010-07-31 11:36 ` covici
2010-08-05 19:15 ` David Reitter
2010-09-27 8:38 ` YAMAMOTO Mitsuharu
2010-09-27 9:24 ` Leo
2010-11-10 8:50 ` YAMAMOTO Mitsuharu
2010-11-14 21:47 ` Daniel Colascione
2010-11-15 1:48 ` Leo
2010-11-15 1:52 ` covici
2010-11-15 7:03 ` Chad Brown
2010-11-15 15:23 ` Ted Zlatanov
2010-11-17 21:49 ` ken manheimer
2010-11-18 14:35 ` YAMAMOTO Mitsuharu
2010-12-01 3:34 ` Leo
2010-12-01 10:43 ` Leo
2010-12-02 10:01 ` YAMAMOTO Mitsuharu
2010-12-02 14:52 ` Leo
2010-12-03 4:41 ` YAMAMOTO Mitsuharu
2010-12-03 6:34 ` Leo
2010-12-12 4:41 ` YAMAMOTO Mitsuharu
2011-01-15 10:35 ` YAMAMOTO Mitsuharu
2011-02-01 9:40 ` YAMAMOTO Mitsuharu
2011-02-15 8:04 ` YAMAMOTO Mitsuharu
2011-03-10 6:29 ` YAMAMOTO Mitsuharu
2011-07-23 3:28 ` YAMAMOTO Mitsuharu
2011-07-26 11:07 ` YAMAMOTO Mitsuharu
2011-08-06 5:55 ` YAMAMOTO Mitsuharu
2011-08-06 11:48 ` Dimitri Fontaine
2011-08-06 13:00 ` Jan Djärv
2011-08-08 0:08 ` Alp Aker
2011-08-08 3:37 ` Stefan Monnier
2011-08-08 4:45 ` YAMAMOTO Mitsuharu
2011-08-08 9:48 ` Jan Djärv
2011-08-08 13:02 ` David Reitter
2011-08-08 16:14 ` Jan Djärv
2011-08-08 12:59 ` David Reitter
2011-08-12 16:57 ` Dimitri Fontaine
2011-08-27 0:52 ` YAMAMOTO Mitsuharu
2011-09-01 0:42 ` YAMAMOTO Mitsuharu
2011-10-02 12:30 ` YAMAMOTO Mitsuharu
2011-10-06 19:08 ` Lars Magne Ingebrigtsen
2011-10-07 0:27 ` YAMAMOTO Mitsuharu
2011-10-07 10:25 ` Lars Magne Ingebrigtsen
2011-10-17 1:29 ` YAMAMOTO Mitsuharu
2011-10-27 2:46 ` YAMAMOTO Mitsuharu
2011-11-28 10:45 ` YAMAMOTO Mitsuharu
2011-11-28 12:06 ` Carsten Mattner
2011-11-29 18:51 ` Jan Djärv
2011-11-28 14:58 ` Xu Xin
2012-01-15 6:07 ` YAMAMOTO Mitsuharu
2012-01-15 17:29 ` Xu Xin
2012-01-31 6:52 ` YAMAMOTO Mitsuharu
2012-01-31 15:57 ` Xu Xin
2012-01-31 19:01 ` John Wiegley
2010-03-13 0:16 ` Emacs 22 Carbon+AppKit port and " YAMAMOTO Mitsuharu
2010-03-15 18:12 ` Giovanni Lanzani
2010-03-16 0:23 ` YAMAMOTO Mitsuharu
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=wl63hv95cf.wl%mituharu@math.s.chiba-u.ac.jp \
--to=mituharu@math.s.chiba-u.ac.jp \
--cc=emacs-devel@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).