emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Emacs on OS X development


From: Adrian Robert
Subject: Re: Emacs on OS X development
Date: Tue, 31 Jul 2012 14:31:30 -0400

On 2012/07/25, at 10:41, Ted Zlatanov wrote:

...
> OK, then: Mitsuharu-san, is there any way to have the NS port and your
> Mac port merged, preserving the desirable features of both?  For
> instance, if GCD is available, to use GCD, but otherwise fall back to NS
> behavior?  Are you interested in that level of integration today, or do
> you prefer to keep your Mac port separate and fully under your control?
> 
> (sideways cc sent to Adrian Robert, one of the NS port maintainers)


Here is how I see the current situation:

- Basic functionality on OS X:

  Some users continue to be adversely affected by bugs on the NS port, while 
the Mac port seems less buggy.

  -> advantage Mac port

  
- GNUstep functionality:

  The Mac port does not offer anything here, and I don't think relying on 
GNUstep to replicate multiple levels of evolving Apple APIs will ever bring it 
much closer.

  -> advantage NS port


- OS X platform integration:

  The Mac port currently sounds like it does this better, though ironically the 
NS port was originally resurrected partly because of similar deficiencies in 
the ancestor Carbon port.  However, most of this is "distribution"-level stuff 
(like Aquamacs) that would not survive a merge to mainline.

  -> advantage neither


- Developer participation:

  The NS port has a few people that fix bugs and make improvements, but some of 
them stay stuck outside of the tree (Aquamacs), and there is no high 
time-and-ability maintainer.  The Mac port has only one person, but doing a 
good job.  More might come in if the source code were made accessible and 
better tied to mainline.

  -> advantage neither


As far as a merge, one way would be to bring in the event-handling from the Mac 
port to the NS port.  When I looked at this it seemed practical, but would be a 
fairly intense effort, say 5 full-time days, probably an underestimate since a 
solution for GNUstep would need to be maintained.  Then there would also be the 
text rendering.  Since that is more modular, it might be possible to bring in 
Yamamoto's backend almost whole as a compile-time option.  I also don't think 
the current NS backend has that many deficiencies, but for whatever reason 
they've stayed there (text shaping, line spacing, font selection).

The second merge option would be to rework portions of the Mac port to more 
heavily utilize the Cocoa APIs, to the point it could be ifdef'd to run on 
GNUstep.  Yamamoto could provide the best assessment here, but my feeling when 
I looked at it was that it would not be easy.  Definitely more work than going 
the other way.


-Adrian




reply via email to

[Prev in Thread] Current Thread [Next in Thread]