* nextstep/README: Remove information duplicated in AUTHORS.
[bpt/emacs.git] / nextstep / README
CommitLineData
114f9c96 1Copyright (C) 2008, 2009, 2010 Free Software Foundation, Inc.
8d640e6b 2See the end of the file for license conditions.
edfda783 3
0e20c61f 4This directory contains the files needed to build Emacs on
3dcdb6ea 5Nextstep-based platforms, including GNUstep and Mac OS X.
edfda783 6
0e20c61f
CY
7The Nextstep support code works on many POSIX systems (and possibly
8W32) using the GNUstep libraries, and on MacOS X systems using the
9Cocoa libraries.
edfda783 10
43474a5a 11See the INSTALL file in this directory for compilation instructions.
edfda783 12
edfda783
AR
13Requirements
14------------
cb8e527a 15MacOS X 10.4 or later
edfda783 16
0e20c61f 17- or -
edfda783 18
954031b0 19GNUstep "Startup 0.23" or later
0e20c61f
CY
20Tested on GNU/Linux, should work on other systems, perhaps with minor
21build tweaking.
edfda783
AR
22
23
24Background
25----------
0e20c61f
CY
26Within Emacs, the port and its code are referred to using the term
27"Nextstep", despite the fact that no system or API has been released
28under this name in more than 10 years. Here's some background on why:
29
30NeXT, Inc. introduced the NeXTstep API with its computer and operating
31system in the late 1980's. Later on, in collaboration with Sun, this
32API was published as a specification called OpenStep. The GNUstep
33project started in the early 1990's to provide a free implementation
34of this API. Later on, Apple bought NeXT (some would say "NeXT bought
35Apple") and made OpenStep the basis of OS X, calling the API "Cocoa".
36Since then, Cocoa has evolved beyond the OpenStep specification, and
37GNUstep has followed it.
38
39Thus, calling this port "OpenStep" is not technically accurate, and in
40the absence of any other determinant, we are using the term
41"Nextstep", both because it signifies the original inspiration that
42created these APIs, and because all of the classes and functions still
43begin with the letters "NS".
edfda783
AR
44
45(See http://en.wikipedia.org/wiki/Nextstep)
46
0e20c61f
CY
47This Emacs port was first released in the early 1990's on the NeXT
48computer, and was successively updated to OpenStep, Rhapsody, OS X,
49and then finally GNUstep, tracking GNU emacs core releases in the
50meantime.
edfda783 51
edfda783
AR
52
53Release History
54---------------
55
561990-1992 1.0-3.0 (?) Michael Brouwer's socket/terminal communication
57 based version (GUI ran as a separate process.)
58
591993/10/25 3.0.1 Last (?) release of Brouwer version. Supports
60 NeXTstep 3.x and below.
61
621994/04/24 4.0 Carl Edman's version using direct API following
63 the X-Windows port. NeXTstep 3.x only.
64
651995/06/15 4.1 Second (and last) Carl Edman release, based on
66 Emacs 19.28.
67
681996/07/28 4.2 First Christian Limpach release, based on
69 Emacs 19.29.
70
71?? 5.0 ??
72
731997/12/?? 6.0b1 Ported to OpenStep by Scott Bender. Updated
74 to Emacs 20.2.
75
76?? 6.0b2 (?) Scott Bender: ported to Rhapsody.
77
781999/05/?? 6.0b3 Scott Bender: "OS X Server", Emacs 20.3.
79
802001/06/25 7.0 Ported to MacOS X (10.1) by Christophe de
81 Dinechin. Release based on Emacs 20.7. Hosting
82 moved to SourceForge.
83
842002/01/03 7.0.1 Bug fixes.
85
862002/08/27 7.0.2 Jaguar (OS X 10.2) support. Added an autoconf
87 option for sys_nerr being in stdio. Added
88 libncurses to the build libraries. Fixed a
89 problem with ns-alternate-is-meta. Changed the
90 icon color to blue, since Jaguar is yellow.
91
922004/10/07 8.0-pre1 Ported to GNUstep by Adrian Robert.
93
942004/11/04 8.0-pre2 Restored functionality on OS X (menu code
95 cleanup). Improved scrollbar handling and
96 paste from other applications. File icons
97 obtained properly from NSWorkspace. Dropped
98 Gorm and Nib files. Background refresh bug
99 fixed (in GNUstep). Various small fixes and
100 code cleanups. Now starts up under Art.
101
1022005/01/27 8.0-pre3 Bold and italic faces supported. Cursor and
103 mouse highlighting rendering bugs
104 fixed. Drag/drop and cut/paste interaction
105 w/external apps fixed. File load/save panels
106 available. Stability and rendering speed
107 improvements. Some ObjC and VC mode bugs fixed.
108
1092005/02/27 8.0-rc1 Dynamic path detection at startup so Emacs.app
110 can be moved anywhere. Added binary packages
111 and simplified source installation to running
112 two scripts. Thorough cleanup of menu code;
113 now fully functional. Fixed all detected
114 memory leaks. Minor frame focus and title
115 bugs fixed.
116
1172005/03/30 8.0-rc2 "Configure" info directory now uses dynamic
118 path setting, so info files can go under .app.
119 Improved select() handling and PTY fixes so
120 shell mode and tramp run smoothly.
121 Significant rendering optimizations under
122 GNUstep, and now works under Art backend.
123 Non-Latin text rendering works (but not
124 fontsets), and LEIM is bundled. UTF8 is used
125 for clipboard interaction.
126 Arrow cursor now used on scrollbar.
127 objc-mode and tramp now bundled in site-lisp.
128
1292005/05/30 8.0-rc3 Fixed bug with parsing of "easymenu" menus.
130 Many problems with modes such as SLIME, MatLab,
131 and Planner go away. Improved scrollbar
132 handling and rendering speed. Color panel
133 and other bug fixes. mac-fix-env utility.
134 Font handling improvements (OS X 10.3, 10.4):
135 - heed 'GSFontAntiAlias' default
136 - heed system antialiasing threshold
137 - added 'UseQuickdrawSmoothing' default to
138 invoke less heavy antialiasing
139
1402005/07/05 8.0-rc4 Added a Preferences panel. Cleaned up
141 rendering for synthetic italic fonts. Further
142 improved menu parsing. Use system highlight
143 color. Added previous- and next-mark history
144 navigation commmands bound to M-p,M-n.
145 Miscellaneous bug fixes.
146
1472005/08/04 8.0-rc5 All internal string handling changed to UTF-8.
148 This means menu items, color and color list
149 names, and a few other things will now display
150 properly. It does NOT mean UTF-8 filenames
151 are displayed correctly in the minibuffer.
152 Also relating to UTF-8, contents of files
153 using this coding can now be displayed (though
154 not auto-recognized; add extensions to your
155 default coding alist). Limited mac-roman
156 support was also added (also sans recognition).
157 Certain characters are not displayed properly
158 due to a translation problem. (UTF-8 based on
159 work by Otfried Cheong; mac-roman from
160 emacs-21.) Partial support for "dead-key"
161 handling now added. Transparency (e.g., M-x
162 set-background-color ARGB88FFFFFF) improved:
163 only the background is made transparent.
164 Cursor drawing glitches fixed. Preferences
165 handling improved. Fixed some portability
166 problems on Tiger and Puma.
167
1682005/09/12 8.0 Bundled ispell on OS X. Minor bug fixes and
169 stability improvements. Compiles under gcc-4.
170
1712005/09/26 8.0.1 Correct clipped rendering for synthetic
172 italics. Include the info directory.
173 Fix grabenv. Bundle whitespace package.
174
1752005/10/27 8.0.2 Correct rendering for wide characters during
176 cursor movement. Fix bungled hack in ispell
177 bundling.
178
1792005/11/05 9.0-pre1 Updated to latest Emacs CVS code on unicode-2
180 branch (proposed to be released 2006/2007 as
181 Emacs 23).
182
1832005/11/11 9.0-pre2 Fix crashes for deiconifying and loading
184 certain images. Improve vertical font metrics
185 (fixes inaccurate page up/down, window size,
186 and partial lines). Support better remapping
187 of Alt/Opt and remapping of Command. More
188 insistent defaulting of scrollbar to right.
189 Modest improvements to build process.
190
1912006/04/22 9.0-pre2a Stopgap interim release to sync w/latest
192 unicode-2 CVS. Includes XPM and partial
193 toolbar support.
194
1952006/06/08 9.0-pre3 Major upgrade to keyboard handling:
196 system-selected compositional input methods
197 should now work, as well as more keys /
198 keyboards. XPM, toolbar, and tooltip support.
199 Some improvements to scrollbars, zoom, italic
200 rendering, pasting, Color panel. Added function
201 ns-set-background-alpha to work around
202 inability to customize with numeric colors.
203
2042006/12/24 9.0-rc1 Reworked font handling and text rendering to
205 use Kenichi Handa's new font back-end system.
206 Font sets are now supported and automatically
207 created when a font is selected. Added recent
208 X11 colors to Emacs.clr (remove
209 ~/Library/Colors/Emacs.clr to pick up). Added
210 ns-option-modifier, ns-control-modifier,
211 ns-function-modifier customization variables.
212 Update menus to Emacs 21+ conventions. Right
213 mouse button now generates mouse-3 events.
214 Various bug fixes and rendering improvements.
215
2162007/09/10 9.0-rc2 Improve menubar, popup menu, and scrollbar
217 behavior, let accented char entry work in
218 isearch, follow system keymap for shortcut
219 keys, fix border and box drawing, remove
220 glitches in modeline drawing, support
221 overstrike for unavailable bold fonts, fix XPM
222 related crasher bugs. Incremental font
223 metrics caching and other performance
224 improvements. Shared-lisp builds now possible.
225
2262007/09/20 9.0-rc2a Interim release. New features: composed
227 character display, colored fringe bitmaps,
228 colored relief drawing, dynamic resizing,
229 Bug fixes: popup menu position and selection,
230 font width calculation, face color adaptation
231 to background, submenu keyboard navigation.
232 NOT TESTED ON GNUSTEP.
233
2342007/11/19 9.0-rc3 Integrated the multi-TTY functionality from
235 emacs core (however, mixed TTY and GUI
236 sessions are not working yet). Support 10.5.
237 Give site-lisp load precedence over lisp and
238 add a compile option to prefer an additional
239 directory, use miniaturized miniwindow images
240 in some cases, rename cursor types for
241 consistency w/other emacs terms, improved font
242 selection for symbol scripts.
243 Bug fixes: fringe and bitmap, frame deletion,
244 resizing, cursor blink, workspace open-file,
245 image backgrounds, toolbar item enablement,
246 context menu positioning.
247
2482008/07/15 (none) Merge to GNU Emacs CVS trunk.
8d640e6b
GM
249
250\f
251This file is part of GNU Emacs.
252
253GNU Emacs is free software: you can redistribute it and/or modify
254it under the terms of the GNU General Public License as published by
255the Free Software Foundation, either version 3 of the License, or
256(at your option) any later version.
257
258GNU Emacs is distributed in the hope that it will be useful,
259but WITHOUT ANY WARRANTY; without even the implied warranty of
260MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
261GNU General Public License for more details.
262
263You should have received a copy of the GNU General Public License
264along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.