aboutsummaryrefslogtreecommitdiffstats
path: root/nextstep
diff options
context:
space:
mode:
authorAdrian Robert2008-07-15 18:15:18 +0000
committerAdrian Robert2008-07-15 18:15:18 +0000
commitedfda78355c5528eee489fa8a7f9c73bf8e734f2 (patch)
tree78d2414d9791e1efc17ec9b35b438ae35602340a /nextstep
parent1391cd548782097e34d7856ec4f20ca90bdf2c26 (diff)
downloademacs-edfda78355c5528eee489fa8a7f9c73bf8e734f2.tar.gz
emacs-edfda78355c5528eee489fa8a7f9c73bf8e734f2.zip
merging Emacs.app (NeXTstep port)
Diffstat (limited to 'nextstep')
-rw-r--r--nextstep/AUTHORS42
-rw-r--r--nextstep/ChangeLog46
-rw-r--r--nextstep/Cocoa/Emacs.base/Contents/Info.plist212
-rw-r--r--nextstep/Cocoa/Emacs.base/Contents/PkgInfo1
-rw-r--r--nextstep/Cocoa/Emacs.base/Contents/Resources/Credits.html1
-rw-r--r--nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icnsbin0 -> 57897 bytes
-rw-r--r--nextstep/Cocoa/Emacs.base/Contents/Resources/English.lproj/InfoPlist.strings6
-rw-r--r--nextstep/Cocoa/Emacs.base/Contents/Resources/preferences.nib/classes.nib32
-rw-r--r--nextstep/Cocoa/Emacs.base/Contents/Resources/preferences.nib/info.nib46
-rw-r--r--nextstep/Cocoa/Emacs.base/Contents/Resources/preferences.nib/keyedobjects.nibbin0 -> 22355 bytes
-rw-r--r--nextstep/Cocoa/Emacs.xcodeproj/project.pbxproj848
-rw-r--r--nextstep/FOR-RELEASE216
-rw-r--r--nextstep/GNUstep/Emacs.base/Resources/Emacs.desktop11
-rw-r--r--nextstep/GNUstep/Emacs.base/Resources/Info-gnustep.plist137
-rw-r--r--nextstep/GNUstep/Emacs.base/Resources/emacs.tiffbin0 -> 19778 bytes
-rw-r--r--nextstep/GNUstep/Emacs.base/Resources/preferences.gorm/data.classes31
-rw-r--r--nextstep/GNUstep/Emacs.base/Resources/preferences.gorm/data.infobin0 -> 184 bytes
-rw-r--r--nextstep/GNUstep/Emacs.base/Resources/preferences.gorm/objects.gormbin0 -> 17362 bytes
-rw-r--r--nextstep/README.txt321
-rwxr-xr-xnextstep/compile223
20 files changed, 2173 insertions, 0 deletions
diff --git a/nextstep/AUTHORS b/nextstep/AUTHORS
new file mode 100644
index 00000000000..5fdcda93fc9
--- /dev/null
+++ b/nextstep/AUTHORS
@@ -0,0 +1,42 @@
1In addition to the folks listed in ../AUTHORS responsible for GNU Emacs itself,
2the NeXTstep port owes to the following people:
3
4Carl Edman
5 original author and maintainer, mainly UI
6Michael Brouwer
7 heavy contributor, input handling and other areas
8Christian Limpach
9 help / maintenance on NeXTstep
10Scott Bender
11 OpenStep, Rhapsody ports
12Christophe de Dinechin
13 MacOS X port
14Adrian Robert
15 GNUstep port*, update Emacs 20 -> 21+
16
17Joe Reiss
18 popup menu, dialog boxes; icons
19Andrew Athan
20 font panel integration
21Scott Byer
22 improved rendering code
23Scott Hess
24 keyboard handling suggestions
25
26Rahul Abrol
27 "hide others" patch
28Adam Ratcliffe
29 preferences panel documentation
30Peter Dyballa
31 assistance with non-ASCII rendering and keyboard handling
32David M. Cooke
33 fix to XPM crash bug
34Carsten Bormann
35 initial patch and assistance getting dired working for non-ASCII filenames
36Andrew Moore
37 assistance on ns-mark-nav extension
38
39(*)
40The GNUstep port was made possible through the assistance of Adam Fedor, Fred
41Kiefer, M. Uli Klusterer, Alexander Malmberg, Jonas Matton, and Riccardo
42Mottola.
diff --git a/nextstep/ChangeLog b/nextstep/ChangeLog
new file mode 100644
index 00000000000..2063bd3de84
--- /dev/null
+++ b/nextstep/ChangeLog
@@ -0,0 +1,46 @@
12008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
2
3 New directory with support files to support NeXTstep window system.
4
5 * AUTHORS: New file: contributor information for NS port.
6 * ChangeLog.nextstep: New file: changelog info to be added to
7 various directories on merge.
8 * ChangeLog: New file: recent history of the NS port itself.
9 * Cocoa: New directory: support files for building .app
10 package on OS X systems.
11 * Cocoa/Emacs.base
12 * Cocoa/Emacs.base/Contents: New directories.
13 * Cocoa/Emacs.base/Contents/Info.plist
14 * Cocoa/Emacs.base/Contents/PkgInfo: New files.
15 * Cocoa/Emacs.base/Contents/Resources: New directory.
16 * Cocoa/Emacs.base/Contents/Resources/Credits.html: New file:
17 About popup support.
18 * Cocoa/Emacs.base/Contents/Resources/Emacs.icns: New file:
19 copied from Carbon port.
20 * Cocoa/Emacs.base/Contents/Resources/English.lproj: New
21 directory.
22 * Cocoa/Emacs.base/Contents/Resources/English.lproj/InfoPlist.strings:
23 New file.
24 * Cocoa/Emacs.base/Contents/Resources/preferences.nib: New
25 directory.
26 * Cocoa/Emacs.base/Contents/Resources/preferences.nib/classes.nib
27 * Cocoa/Emacs.base/Contents/Resources/preferences.nib/info.nib
28 * Cocoa/Emacs.base/Contents/Resources/preferences.nib/keyedobjects.nib:
29 New files.
30 * Cocoa/Emacs.xcodeproj: New directory: build support.
31 * Cocoa/Emacs.xcodeproj/project.pbxproj: New file.
32 * GNUstep: New directory: support files for building .app
33 package on GNUstep systems.
34 * GNUstep/Resources: New directory.
35 * GNUstep/Resources/Emacs.desktop
36 * GNUstep/Resources/Info-gnustep.plist
37 * GNUstep/Resources/emacs.tiff: New files.
38 * GNUstep/Resources/preferences.gorm: New directory.
39 * GNUstep/Resources/preferences.gorm/data.classes
40 * GNUstep/Resources/preferences.gorm/data.info
41 * GNUstep/Resources/preferences.gorm/objects.gorm: New
42 files.
43 * compile: New file: utility script for building Emacs.app.
44 * FOR_RELEASE: New file: release tasks specific to NeXTstep
45 port.
46 * README.txt: New file: descriptive info for NeXTstep port.
diff --git a/nextstep/Cocoa/Emacs.base/Contents/Info.plist b/nextstep/Cocoa/Emacs.base/Contents/Info.plist
new file mode 100644
index 00000000000..751ce9f61c0
--- /dev/null
+++ b/nextstep/Cocoa/Emacs.base/Contents/Info.plist
@@ -0,0 +1,212 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3<plist version="1.0">
4<dict>
5 <key>CFBundleDevelopmentRegion</key>
6 <string>English</string>
7 <key>CFBundleDocumentTypes</key>
8 <array>
9 <dict>
10 <key>CFBundleTypeExtensions</key>
11 <array>
12 <string>txt</string>
13 </array>
14 <key>CFBundleTypeName</key>
15 <string>Text</string>
16 <key>CFBundleTypeRole</key>
17 <string>Editor</string>
18 </dict>
19 <dict>
20 <key>CFBundleTypeExtensions</key>
21 <array>
22 <string>c</string>
23 <string>h</string>
24 </array>
25 <key>CFBundleTypeName</key>
26 <string>C</string>
27 <key>CFBundleTypeRole</key>
28 <string>Editor</string>
29 </dict>
30 <dict>
31 <key>CFBundleTypeExtensions</key>
32 <array>
33 <string>C</string>
34 <string>H</string>
35 <string>cpp</string>
36 <string>cc</string>
37 <string>hh</string>
38 </array>
39 <key>CFBundleTypeName</key>
40 <string>C++</string>
41 <key>CFBundleTypeRole</key>
42 <string>Editor</string>
43 </dict>
44 <dict>
45 <key>CFBundleTypeExtensions</key>
46 <array>
47 <string>m</string>
48 </array>
49 <key>CFBundleTypeName</key>
50 <string>Objective C</string>
51 <key>CFBundleTypeRole</key>
52 <string>Editor</string>
53 </dict>
54 <dict>
55 <key>CFBundleTypeExtensions</key>
56 <array>
57 <string>el</string>
58 </array>
59 <key>CFBundleTypeName</key>
60 <string>Lisp</string>
61 <key>CFBundleTypeRole</key>
62 <string>Editor</string>
63 </dict>
64 <dict>
65 <key>CFBundleTypeExtensions</key>
66 <array>
67 <string>xml</string>
68 <string>xhtml</string>
69 <string>xsl</string>
70 <string>xsd</string>
71 <string>xsdl</string>
72 </array>
73 <key>CFBundleTypeName</key>
74 <string>XML</string>
75 <key>CFBundleTypeRole</key>
76 <string>Editor</string>
77 </dict>
78 <dict>
79 <key>CFBundleTypeExtensions</key>
80 <array>
81 <string>java</string>
82 </array>
83 <key>CFBundleTypeName</key>
84 <string>Java</string>
85 <key>CFBundleTypeRole</key>
86 <string>Editor</string>
87 </dict>
88 <dict>
89 <key>CFBundleTypeExtensions</key>
90 <array>
91 <string>tex</string>
92 <string>ltx</string>
93 <string>bib</string>
94 <string>bbl</string>
95 </array>
96 <key>CFBundleTypeName</key>
97 <string>TeX/LaTeX</string>
98 <key>CFBundleTypeRole</key>
99 <string>Editor</string>
100 </dict>
101 <dict>
102 <key>CFBundleTypeExtensions</key>
103 <array>
104 <string>*</string>
105 </array>
106 <key>CFBundleTypeName</key>
107 <string>Any</string>
108 <key>CFBundleTypeOSTypes</key>
109 <array>
110 <string>****</string>
111 </array>
112 <key>CFBundleTypeRole</key>
113 <string>Editor</string>
114 </dict>
115 </array>
116
117 <key>NSServices</key>
118 <array>
119 <dict>
120 <key>NSMenuItem</key>
121 <dict>
122 <key>default</key>
123 <string>Emacs.app/New Buffer Containing Selection</string>
124 </dict>
125 <key>NSMessage</key>
126 <string>requestService</string>
127 <key>NSUserData</key>
128 <string>open-selection</string>
129 <key>NSPortName</key>
130 <string>Emacs</string>
131 <key>NSSendTypes</key>
132 <array>
133 <string>NSStringPboardType</string>
134 </array>
135 </dict>
136 <dict>
137 <key>NSMenuItem</key>
138 <dict>
139 <key>default</key>
140 <string>Emacs.app/Open Selected File</string>
141 </dict>
142 <key>NSMessage</key>
143 <string>requestService</string>
144 <key>NSUserData</key>
145 <string>open-file</string>
146 <key>NSPortName</key>
147 <string>Emacs</string>
148 <key>NSSendTypes</key>
149 <array>
150 <string>NSStringPboardType</string>
151 </array>
152 </dict>
153 <dict>
154 <key>NSMenuItem</key>
155 <dict>
156 <key>default</key>
157 <string>Emacs.app/Email Selection</string>
158 </dict>
159 <key>NSMessage</key>
160 <string>requestService</string>
161 <key>NSUserData</key>
162 <string>mail-selection</string>
163 <key>NSPortName</key>
164 <string>Emacs</string>
165 <key>NSSendTypes</key>
166 <array>
167 <string>NSStringPboardType</string>
168 </array>
169 </dict>
170 <dict>
171 <key>NSMenuItem</key>
172 <dict>
173 <key>default</key>
174 <string>Emacs.app/Send Email to Selected Address</string>
175 </dict>
176 <key>NSMessage</key>
177 <string>requestService</string>
178 <key>NSUserData</key>
179 <string>mail-to</string>
180 <key>NSPortName</key>
181 <string>Emacs</string>
182 <key>NSSendTypes</key>
183 <array>
184 <string>NSStringPboardType</string>
185 </array>
186 </dict>
187 </array>
188
189 <key>CFBundleExecutable</key>
190 <string>Emacs</string>
191 <key>CFBundleGetInfoString</key>
192 <string>Emacs 23.0.60 (C) Free Software Foundation</string>
193 <key>CFBundleIconFile</key>
194 <string>Emacs</string>
195 <key>CFBundleIdentifier</key>
196 <string>Emacs</string>
197 <key>CFBundleInfoDictionaryVersion</key>
198 <string>6.0</string>
199 <key>CFBundleName</key>
200 <string>Emacs</string>
201 <key>CFBundlePackageType</key>
202 <string>APPL</string>
203 <key>CFBundleShortVersionString</key>
204 <string>Version 23.0.60</string>
205 <key>CFBundleSignature</key>
206 <string>Emcs</string>
207 <key>CFBundleVersion</key>
208 <string>NS 9.0</string>
209 <key>NSPrincipalClass</key>
210 <string>EmacsApp</string>
211</dict>
212</plist>
diff --git a/nextstep/Cocoa/Emacs.base/Contents/PkgInfo b/nextstep/Cocoa/Emacs.base/Contents/PkgInfo
new file mode 100644
index 00000000000..3ed03c814b1
--- /dev/null
+++ b/nextstep/Cocoa/Emacs.base/Contents/PkgInfo
@@ -0,0 +1 @@
APPLEmcs \ No newline at end of file
diff --git a/nextstep/Cocoa/Emacs.base/Contents/Resources/Credits.html b/nextstep/Cocoa/Emacs.base/Contents/Resources/Credits.html
new file mode 100644
index 00000000000..7a65b125c5b
--- /dev/null
+++ b/nextstep/Cocoa/Emacs.base/Contents/Resources/Credits.html
@@ -0,0 +1 @@
<font face="lucida grande" size="-1"><a href="http://emacs-app.sf.net">http://emacs-app.sf.net</a></font>
diff --git a/nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns b/nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns
new file mode 100644
index 00000000000..de187c1142d
--- /dev/null
+++ b/nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns
Binary files differ
diff --git a/nextstep/Cocoa/Emacs.base/Contents/Resources/English.lproj/InfoPlist.strings b/nextstep/Cocoa/Emacs.base/Contents/Resources/English.lproj/InfoPlist.strings
new file mode 100644
index 00000000000..6ebe9f88386
--- /dev/null
+++ b/nextstep/Cocoa/Emacs.base/Contents/Resources/English.lproj/InfoPlist.strings
@@ -0,0 +1,6 @@
1/* Localized versions of Info.plist keys */
2
3CFBundleName = "Emacs";
4CFBundleShortVersionString = "Version 23.0.60";
5CFBundleGetInfoString = "Emacs version 23.0.60, GNUstep / MacOS X Cocoa version 9.0";
6NSHumanReadableCopyright = "Copyright 2008 Free Software Foundation.";
diff --git a/nextstep/Cocoa/Emacs.base/Contents/Resources/preferences.nib/classes.nib b/nextstep/Cocoa/Emacs.base/Contents/Resources/preferences.nib/classes.nib
new file mode 100644
index 00000000000..987c0ea21a4
--- /dev/null
+++ b/nextstep/Cocoa/Emacs.base/Contents/Resources/preferences.nib/classes.nib
@@ -0,0 +1,32 @@
1{
2 IBClasses = (
3 {
4 ACTIONS = {
5 cancel = id;
6 ok = id;
7 resetToDefaults = id;
8 runHelp = id;
9 setColors = id;
10 setDefaultFont = id;
11 };
12 CLASS = EmacsPrefsController;
13 LANGUAGE = ObjC;
14 OUTLETS = {
15 alternateModMenu = NSPopUpButton;
16 commandModMenu = NSPopUpButton;
17 controlModMenu = NSPopUpButton;
18 cursorBlinkSlider = NSSlider;
19 cursorTypeMatrix = NSMatrix;
20 expandSpaceSlider = NSSlider;
21 functionModMenu = NSPopUpButton;
22 prefsWindow = NSWindow;
23 smoothFontsCheck = NSButton;
24 useQuickdrawCheck = NSButton;
25 useSysHiliteCheck = NSButton;
26 };
27 SUPERCLASS = NSObject;
28 },
29 {CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; }
30 );
31 IBVersion = 1;
32} \ No newline at end of file
diff --git a/nextstep/Cocoa/Emacs.base/Contents/Resources/preferences.nib/info.nib b/nextstep/Cocoa/Emacs.base/Contents/Resources/preferences.nib/info.nib
new file mode 100644
index 00000000000..e24ef616b70
--- /dev/null
+++ b/nextstep/Cocoa/Emacs.base/Contents/Resources/preferences.nib/info.nib
@@ -0,0 +1,46 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3<plist version="1.0">
4<dict>
5 <key>IBDocumentLocation</key>
6 <string>196 42 356 240 0 0 1440 878 </string>
7 <key>IBFramework Version</key>
8 <string>446.1</string>
9 <key>IBGroupedObjects</key>
10 <dict>
11 <key>5</key>
12 <array>
13 <string>114</string>
14 <string>110</string>
15 <string>111</string>
16 <string>112</string>
17 <string>113</string>
18 </array>
19 <key>6</key>
20 <array>
21 <string>183</string>
22 <string>176</string>
23 </array>
24 <key>7</key>
25 <array>
26 <string>191</string>
27 <string>184</string>
28 </array>
29 <key>9</key>
30 <array>
31 <string>201</string>
32 <string>194</string>
33 </array>
34 </dict>
35 <key>IBLastGroupID</key>
36 <string>10</string>
37 <key>IBOldestOS</key>
38 <integer>3</integer>
39 <key>IBOpenObjects</key>
40 <array>
41 <integer>5</integer>
42 </array>
43 <key>IBSystem Version</key>
44 <string>8R2232</string>
45</dict>
46</plist>
diff --git a/nextstep/Cocoa/Emacs.base/Contents/Resources/preferences.nib/keyedobjects.nib b/nextstep/Cocoa/Emacs.base/Contents/Resources/preferences.nib/keyedobjects.nib
new file mode 100644
index 00000000000..9cb5d1f1d4e
--- /dev/null
+++ b/nextstep/Cocoa/Emacs.base/Contents/Resources/preferences.nib/keyedobjects.nib
Binary files differ
diff --git a/nextstep/Cocoa/Emacs.xcodeproj/project.pbxproj b/nextstep/Cocoa/Emacs.xcodeproj/project.pbxproj
new file mode 100644
index 00000000000..1c9407a4e22
--- /dev/null
+++ b/nextstep/Cocoa/Emacs.xcodeproj/project.pbxproj
@@ -0,0 +1,848 @@
1// !$*UTF8*$!
2{
3 archiveVersion = 1;
4 classes = {
5 };
6 objectVersion = 42;
7 objects = {
8
9/* Begin PBXBuildFile section */
10 3C15C0EB0902D89500A8542F /* termhooks.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C02F0902D89500A8542F /* termhooks.h */; };
11 3C15C0EC0902D89500A8542F /* termchar.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0300902D89500A8542F /* termchar.h */; };
12 3C15C0EF0902D89500A8542F /* syswait.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0330902D89500A8542F /* syswait.h */; };
13 3C15C0F00902D89500A8542F /* systty.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0340902D89500A8542F /* systty.h */; };
14 3C15C0F10902D89500A8542F /* systime.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0350902D89500A8542F /* systime.h */; };
15 3C15C0F20902D89500A8542F /* syssignal.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0360902D89500A8542F /* syssignal.h */; };
16 3C15C0F30902D89500A8542F /* sysselect.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0370902D89500A8542F /* sysselect.h */; };
17 3C15C0F50902D89500A8542F /* syntax.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0390902D89500A8542F /* syntax.h */; };
18 3C15C0FD0902D89500A8542F /* region-cache.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0410902D89500A8542F /* region-cache.h */; };
19 3C15C0FF0902D89500A8542F /* regex.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0430902D89500A8542F /* regex.h */; };
20 3C15C1020902D89500A8542F /* puresize.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0460902D89500A8542F /* puresize.h */; };
21 3C15C1030902D89500A8542F /* process.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0470902D89500A8542F /* process.h */; };
22 3C15C1080902D89500A8542F /* point.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C04C0902D89500A8542F /* point.h */; };
23 3C15C1090902D89500A8542F /* param.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C04D0902D89500A8542F /* param.h */; };
24 3C15C10B0902D89500A8542F /* nsgui.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C04F0902D89500A8542F /* nsgui.h */; };
25 3C15C10C0902D89500A8542F /* ndir.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0500902D89500A8542F /* ndir.h */; };
26 3C15C1110902D89500A8542F /* mem-limits.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0550902D89500A8542F /* mem-limits.h */; };
27 3C15C1120902D89500A8542F /* md5.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0560902D89500A8542F /* md5.h */; };
28 3C15C1190902D89500A8542F /* macros.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C05D0902D89500A8542F /* macros.h */; };
29 3C15C1220902D89500A8542F /* keymap.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0660902D89500A8542F /* keymap.h */; };
30 3C15C1240902D89500A8542F /* keyboard.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0680902D89500A8542F /* keyboard.h */; };
31 3C15C1270902D89500A8542F /* intervals.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C06B0902D89500A8542F /* intervals.h */; };
32 3C15C12A0902D89500A8542F /* indent.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C06E0902D89500A8542F /* indent.h */; };
33 3C15C1320902D89500A8542F /* category.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0760902D89500A8542F /* category.h */; };
34 3C15C1330902D89500A8542F /* coding.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0770902D89500A8542F /* coding.h */; };
35 3C15C1340902D89500A8542F /* buffer.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0780902D89500A8542F /* buffer.h */; };
36 3C15C1350902D89500A8542F /* vlimit.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0790902D89500A8542F /* vlimit.h */; };
37 3C15C1450902D89500A8542F /* cm.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0890902D89500A8542F /* cm.h */; };
38 3C15C14E0902D89500A8542F /* uaf.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0920902D89500A8542F /* uaf.h */; };
39 3C15C1510902D89500A8542F /* termopts.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0950902D89500A8542F /* termopts.h */; };
40 3C15C15C0902D89500A8542F /* window.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0A00902D89500A8542F /* window.h */; };
41 3C15C1720902D89500A8542F /* gnu.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0B60902D89500A8542F /* gnu.h */; };
42 3C15C1740902D89500A8542F /* getpagesize.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0B80902D89500A8542F /* getpagesize.h */; };
43 3C15C17B0902D89500A8542F /* disptab.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0BF0902D89500A8542F /* disptab.h */; };
44 3C15C17E0902D89500A8542F /* epaths.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0C20902D89500A8542F /* epaths.h */; };
45 3C15C1810902D89500A8542F /* ccl.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0C50902D89500A8542F /* ccl.h */; };
46 3C15C1830902D89500A8542F /* composite.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0C70902D89500A8542F /* composite.h */; };
47 3C15C1840902D89500A8542F /* charset.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0C80902D89500A8542F /* charset.h */; };
48 3C15C1850902D89500A8542F /* fontset.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0C90902D89500A8542F /* fontset.h */; };
49 3C15C1930902D89500A8542F /* commands.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0D70902D89500A8542F /* commands.h */; };
50 3C15C1950902D89500A8542F /* dispextern.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0D90902D89500A8542F /* dispextern.h */; };
51 3C15C1970902D89500A8542F /* acldef.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0DB0902D89500A8542F /* acldef.h */; };
52 3C15C19A0902D89500A8542F /* character.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0DE0902D89500A8542F /* character.h */; };
53 3C15C19E0902D89500A8542F /* chpdef.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0E20902D89500A8542F /* chpdef.h */; };
54 3C15C1A00902D89500A8542F /* frame.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0E40902D89500A8542F /* frame.h */; };
55 3C15C1A20902D89500A8542F /* atimer.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0E60902D89500A8542F /* atimer.h */; };
56 3C15C1A30902D89500A8542F /* blockinput.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0E70902D89500A8542F /* blockinput.h */; };
57 3C15C1A80902D97100A8542F /* nsimage.m in Sources */ = {isa = PBXBuildFile; fileRef = 3C15C1A70902D97100A8542F /* nsimage.m */; };
58 3C4D6D6B0DE50D2300B20D4E /* font.c in Sources */ = {isa = PBXBuildFile; fileRef = 3C4D6D660DE50D2300B20D4E /* font.c */; };
59 3C4D6D6C0DE50D2300B20D4E /* font.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C4D6D670DE50D2300B20D4E /* font.h */; };
60 3C4D6D6D0DE50D2300B20D4E /* termcap.c in Sources */ = {isa = PBXBuildFile; fileRef = 3C4D6D680DE50D2300B20D4E /* termcap.c */; };
61 3C4D6D6E0DE50D2300B20D4E /* terminal.c in Sources */ = {isa = PBXBuildFile; fileRef = 3C4D6D690DE50D2300B20D4E /* terminal.c */; };
62 3C4D6D6F0DE50D2300B20D4E /* tparam.c in Sources */ = {isa = PBXBuildFile; fileRef = 3C4D6D6A0DE50D2300B20D4E /* tparam.c */; };
63 3C4D6D730DE50D5D00B20D4E /* nsfont.m in Sources */ = {isa = PBXBuildFile; fileRef = 3C4D6D710DE50D5D00B20D4E /* nsfont.m */; };
64 3C7F3C3B07EB3B05003C8A4D /* nsterm.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C7F3C3A07EB3B05003C8A4D /* nsterm.h */; };
65 3CB8E29A0E2CE6BF003F3104 /* preferences.nib in Resources */ = {isa = PBXBuildFile; fileRef = 3CB8E2990E2CE6BF003F3104 /* preferences.nib */; };
66 3CB8E29E0E2CE73A003F3104 /* Emacs.icns in Resources */ = {isa = PBXBuildFile; fileRef = 3CB8E29D0E2CE73A003F3104 /* Emacs.icns */; };
67 3CB8E2A00E2CE7F5003F3104 /* Credits.html in Resources */ = {isa = PBXBuildFile; fileRef = 3CB8E29F0E2CE7F5003F3104 /* Credits.html */; };
68 3CB8E2A70E2CE856003F3104 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 3CB8E2A50E2CE856003F3104 /* InfoPlist.strings */; };
69 3CC5430607E2315800C271A9 /* nsfns.m in Sources */ = {isa = PBXBuildFile; fileRef = 090AF67E00C61DCD7F000001 /* nsfns.m */; };
70 3CC5430707E2315800C271A9 /* nsmenu.m in Sources */ = {isa = PBXBuildFile; fileRef = 090AF68000C61DCD7F000001 /* nsmenu.m */; };
71 3CC5430807E2315800C271A9 /* nsselect.m in Sources */ = {isa = PBXBuildFile; fileRef = 090AF68100C61DCD7F000001 /* nsselect.m */; };
72 3CC5430907E2315800C271A9 /* nsterm.m in Sources */ = {isa = PBXBuildFile; fileRef = 090AF68300C61DCD7F000001 /* nsterm.m */; };
73 3CDCED340902E99700B2EF7E /* config.h in Headers */ = {isa = PBXBuildFile; fileRef = 3CDCED330902E99700B2EF7E /* config.h */; };
74 3CDCEDD00902EA8200B2EF7E /* term.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED550902EA8100B2EF7E /* term.c */; };
75 3CDCEDD10902EA8200B2EF7E /* sysdep.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED560902EA8100B2EF7E /* sysdep.c */; };
76 3CDCEDD20902EA8200B2EF7E /* syntax.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED570902EA8100B2EF7E /* syntax.c */; };
77 3CDCEDD40902EA8200B2EF7E /* strftime.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED590902EA8100B2EF7E /* strftime.c */; };
78 3CDCEDD50902EA8200B2EF7E /* sound.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED5A0902EA8100B2EF7E /* sound.c */; };
79 3CDCEDD70902EA8200B2EF7E /* search.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED5C0902EA8100B2EF7E /* search.c */; };
80 3CDCEDD80902EA8200B2EF7E /* scroll.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED5D0902EA8100B2EF7E /* scroll.c */; };
81 3CDCEDD90902EA8200B2EF7E /* region-cache.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED5E0902EA8100B2EF7E /* region-cache.c */; };
82 3CDCEDDA0902EA8200B2EF7E /* regex.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED5F0902EA8100B2EF7E /* regex.c */; };
83 3CDCEDDC0902EA8200B2EF7E /* process.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED610902EA8100B2EF7E /* process.c */; };
84 3CDCEDDD0902EA8200B2EF7E /* print.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED620902EA8100B2EF7E /* print.c */; };
85 3CDCEDDF0902EA8200B2EF7E /* pre-crt0.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED640902EA8100B2EF7E /* pre-crt0.c */; };
86 3CDCEDE20902EA8200B2EF7E /* minibuf.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED670902EA8100B2EF7E /* minibuf.c */; };
87 3CDCEDE30902EA8200B2EF7E /* md5.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED680902EA8100B2EF7E /* md5.c */; };
88 3CDCEDE40902EA8200B2EF7E /* marker.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED690902EA8100B2EF7E /* marker.c */; };
89 3CDCEDE80902EA8200B2EF7E /* macros.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED6D0902EA8100B2EF7E /* macros.c */; };
90 3CDCEDEC0902EA8200B2EF7E /* lread.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED710902EA8100B2EF7E /* lread.c */; };
91 3CDCEDED0902EA8200B2EF7E /* lastfile.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED720902EA8100B2EF7E /* lastfile.c */; };
92 3CDCEDEE0902EA8200B2EF7E /* keymap.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED730902EA8100B2EF7E /* keymap.c */; };
93 3CDCEDEF0902EA8200B2EF7E /* keyboard.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED740902EA8200B2EF7E /* keyboard.c */; };
94 3CDCEDF00902EA8200B2EF7E /* intervals.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED750902EA8200B2EF7E /* intervals.c */; };
95 3CDCEDF10902EA8200B2EF7E /* insdel.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED760902EA8200B2EF7E /* insdel.c */; };
96 3CDCEDF20902EA8200B2EF7E /* indent.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED770902EA8200B2EF7E /* indent.c */; };
97 3CDCEDF30902EA8200B2EF7E /* image.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED780902EA8200B2EF7E /* image.c */; };
98 3CDCEDF50902EA8200B2EF7E /* cmds.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED7A0902EA8200B2EF7E /* cmds.c */; };
99 3CDCEDF60902EA8200B2EF7E /* category.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED7B0902EA8200B2EF7E /* category.c */; };
100 3CDCEDF70902EA8200B2EF7E /* coding.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED7C0902EA8200B2EF7E /* coding.c */; };
101 3CDCEDFE0902EA8200B2EF7E /* unexmacosx.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED830902EA8200B2EF7E /* unexmacosx.c */; };
102 3CDCEE060902EA8200B2EF7E /* buffer.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED8B0902EA8200B2EF7E /* buffer.c */; };
103 3CDCEE070902EA8200B2EF7E /* character.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED8C0902EA8200B2EF7E /* character.c */; };
104 3CDCEE0D0902EA8200B2EF7E /* undo.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED920902EA8200B2EF7E /* undo.c */; };
105 3CDCEE0F0902EA8200B2EF7E /* textprop.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED940902EA8200B2EF7E /* textprop.c */; };
106 3CDCEE100902EA8200B2EF7E /* terminfo.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED950902EA8200B2EF7E /* terminfo.c */; };
107 3CDCEE170902EA8200B2EF7E /* xfaces.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED9C0902EA8200B2EF7E /* xfaces.c */; };
108 3CDCEE180902EA8200B2EF7E /* xdisp.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED9D0902EA8200B2EF7E /* xdisp.c */; };
109 3CDCEE190902EA8200B2EF7E /* window.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED9E0902EA8200B2EF7E /* window.c */; };
110 3CDCEE2B0902EA8200B2EF7E /* doprnt.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDB00902EA8200B2EF7E /* doprnt.c */; };
111 3CDCEE2C0902EA8200B2EF7E /* doc.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDB10902EA8200B2EF7E /* doc.c */; };
112 3CDCEE2D0902EA8200B2EF7E /* dired.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDB20902EA8200B2EF7E /* dired.c */; };
113 3CDCEE2E0902EA8200B2EF7E /* data.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDB30902EA8200B2EF7E /* data.c */; };
114 3CDCEE2F0902EA8200B2EF7E /* callint.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDB40902EA8200B2EF7E /* callint.c */; };
115 3CDCEE310902EA8200B2EF7E /* ccl.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDB60902EA8200B2EF7E /* ccl.c */; };
116 3CDCEE320902EA8200B2EF7E /* fontset.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDB70902EA8200B2EF7E /* fontset.c */; };
117 3CDCEE330902EA8200B2EF7E /* fns.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDB80902EA8200B2EF7E /* fns.c */; };
118 3CDCEE340902EA8200B2EF7E /* floatfns.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDB90902EA8200B2EF7E /* floatfns.c */; };
119 3CDCEE360902EA8200B2EF7E /* filemode.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDBB0902EA8200B2EF7E /* filemode.c */; };
120 3CDCEE370902EA8200B2EF7E /* filelock.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDBC0902EA8200B2EF7E /* filelock.c */; };
121 3CDCEE380902EA8200B2EF7E /* emacs.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDBD0902EA8200B2EF7E /* emacs.c */; };
122 3CDCEE390902EA8200B2EF7E /* editfns.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDBE0902EA8200B2EF7E /* editfns.c */; };
123 3CDCEE3A0902EA8200B2EF7E /* fileio.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDBF0902EA8200B2EF7E /* fileio.c */; };
124 3CDCEE3B0902EA8200B2EF7E /* eval.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDC00902EA8200B2EF7E /* eval.c */; };
125 3CDCEE3C0902EA8200B2EF7E /* casetab.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDC10902EA8200B2EF7E /* casetab.c */; };
126 3CDCEE3D0902EA8200B2EF7E /* composite.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDC20902EA8200B2EF7E /* composite.c */; };
127 3CDCEE3E0902EA8200B2EF7E /* dispnew.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDC30902EA8200B2EF7E /* dispnew.c */; };
128 3CDCEE3F0902EA8200B2EF7E /* charset.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDC40902EA8200B2EF7E /* charset.c */; };
129 3CDCEE400902EA8200B2EF7E /* alloc.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDC50902EA8200B2EF7E /* alloc.c */; };
130 3CDCEE410902EA8200B2EF7E /* bytecode.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDC60902EA8200B2EF7E /* bytecode.c */; };
131 3CDCEE420902EA8200B2EF7E /* callproc.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDC70902EA8200B2EF7E /* callproc.c */; };
132 3CDCEE430902EA8200B2EF7E /* cm.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDC80902EA8200B2EF7E /* cm.c */; };
133 3CDCEE440902EA8200B2EF7E /* casefiddle.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDC90902EA8200B2EF7E /* casefiddle.c */; };
134 3CDCEE450902EA8200B2EF7E /* fringe.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDCA0902EA8200B2EF7E /* fringe.c */; };
135 3CDCEE460902EA8200B2EF7E /* frame.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDCB0902EA8200B2EF7E /* frame.c */; };
136 3CDCEE470902EA8200B2EF7E /* chartab.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDCC0902EA8200B2EF7E /* chartab.c */; };
137 3CDCEE480902EA8200B2EF7E /* atimer.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDCD0902EA8200B2EF7E /* atimer.c */; };
138 3CFDFC3B08E79A6800B05918 /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3CFDFC3A08E79A6800B05918 /* AppKit.framework */; };
139/* End PBXBuildFile section */
140
141/* Begin PBXFileReference section */
142 090AF67E00C61DCD7F000001 /* nsfns.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = nsfns.m; path = ../../src/nsfns.m; sourceTree = "<group>"; };
143 090AF68000C61DCD7F000001 /* nsmenu.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = nsmenu.m; path = ../../src/nsmenu.m; sourceTree = "<group>"; };
144 090AF68100C61DCD7F000001 /* nsselect.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = nsselect.m; path = ../../src/nsselect.m; sourceTree = "<group>"; };
145 090AF68300C61DCD7F000001 /* nsterm.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = nsterm.m; path = ../../src/nsterm.m; sourceTree = "<group>"; };
146 3C15C02F0902D89500A8542F /* termhooks.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = termhooks.h; path = ../../src/termhooks.h; sourceTree = "<group>"; };
147 3C15C0300902D89500A8542F /* termchar.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = termchar.h; path = ../../src/termchar.h; sourceTree = "<group>"; };
148 3C15C0330902D89500A8542F /* syswait.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = syswait.h; path = ../../src/syswait.h; sourceTree = "<group>"; };
149 3C15C0340902D89500A8542F /* systty.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = systty.h; path = ../../src/systty.h; sourceTree = "<group>"; };
150 3C15C0350902D89500A8542F /* systime.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = systime.h; path = ../../src/systime.h; sourceTree = "<group>"; };
151 3C15C0360902D89500A8542F /* syssignal.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = syssignal.h; path = ../../src/syssignal.h; sourceTree = "<group>"; };
152 3C15C0370902D89500A8542F /* sysselect.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = sysselect.h; path = ../../src/sysselect.h; sourceTree = "<group>"; };
153 3C15C0390902D89500A8542F /* syntax.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = syntax.h; path = ../../src/syntax.h; sourceTree = "<group>"; };
154 3C15C0410902D89500A8542F /* region-cache.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = "region-cache.h"; path = "../../src/region-cache.h"; sourceTree = "<group>"; };
155 3C15C0430902D89500A8542F /* regex.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = regex.h; path = ../../src/regex.h; sourceTree = "<group>"; };
156 3C15C0460902D89500A8542F /* puresize.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = puresize.h; path = ../../src/puresize.h; sourceTree = "<group>"; };
157 3C15C0470902D89500A8542F /* process.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = process.h; path = ../../src/process.h; sourceTree = "<group>"; };
158 3C15C04C0902D89500A8542F /* point.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = point.h; path = ../../src/point.h; sourceTree = "<group>"; };
159 3C15C04D0902D89500A8542F /* param.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = param.h; path = ../../src/param.h; sourceTree = "<group>"; };
160 3C15C04F0902D89500A8542F /* nsgui.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = nsgui.h; path = ../../src/nsgui.h; sourceTree = "<group>"; };
161 3C15C0500902D89500A8542F /* ndir.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = ndir.h; path = ../../src/ndir.h; sourceTree = "<group>"; };
162 3C15C0550902D89500A8542F /* mem-limits.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = "mem-limits.h"; path = "../../src/mem-limits.h"; sourceTree = "<group>"; };
163 3C15C0560902D89500A8542F /* md5.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = md5.h; path = ../../src/md5.h; sourceTree = "<group>"; };
164 3C15C05D0902D89500A8542F /* macros.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = macros.h; path = ../../src/macros.h; sourceTree = "<group>"; };
165 3C15C0660902D89500A8542F /* keymap.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = keymap.h; path = ../../src/keymap.h; sourceTree = "<group>"; };
166 3C15C0680902D89500A8542F /* keyboard.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = keyboard.h; path = ../../src/keyboard.h; sourceTree = "<group>"; };
167 3C15C06B0902D89500A8542F /* intervals.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = intervals.h; path = ../../src/intervals.h; sourceTree = "<group>"; };
168 3C15C06E0902D89500A8542F /* indent.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = indent.h; path = ../../src/indent.h; sourceTree = "<group>"; };
169 3C15C0760902D89500A8542F /* category.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = category.h; path = ../../src/category.h; sourceTree = "<group>"; };
170 3C15C0770902D89500A8542F /* coding.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = coding.h; path = ../../src/coding.h; sourceTree = "<group>"; };
171 3C15C0780902D89500A8542F /* buffer.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = buffer.h; path = ../../src/buffer.h; sourceTree = "<group>"; };
172 3C15C0790902D89500A8542F /* vlimit.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = vlimit.h; path = ../../src/vlimit.h; sourceTree = "<group>"; };
173 3C15C0890902D89500A8542F /* cm.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = cm.h; path = ../../src/cm.h; sourceTree = "<group>"; };
174 3C15C0920902D89500A8542F /* uaf.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = uaf.h; path = ../../src/uaf.h; sourceTree = "<group>"; };
175 3C15C0950902D89500A8542F /* termopts.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = termopts.h; path = ../../src/termopts.h; sourceTree = "<group>"; };
176 3C15C0A00902D89500A8542F /* window.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = window.h; path = ../../src/window.h; sourceTree = "<group>"; };
177 3C15C0B60902D89500A8542F /* gnu.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = gnu.h; path = ../../src/gnu.h; sourceTree = "<group>"; };
178 3C15C0B80902D89500A8542F /* getpagesize.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = getpagesize.h; path = ../../src/getpagesize.h; sourceTree = "<group>"; };
179 3C15C0BF0902D89500A8542F /* disptab.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = disptab.h; path = ../../src/disptab.h; sourceTree = "<group>"; };
180 3C15C0C20902D89500A8542F /* epaths.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = epaths.h; path = ../../src/epaths.h; sourceTree = "<group>"; };
181 3C15C0C50902D89500A8542F /* ccl.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = ccl.h; path = ../../src/ccl.h; sourceTree = "<group>"; };
182 3C15C0C70902D89500A8542F /* composite.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = composite.h; path = ../../src/composite.h; sourceTree = "<group>"; };
183 3C15C0C80902D89500A8542F /* charset.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = charset.h; path = ../../src/charset.h; sourceTree = "<group>"; };
184 3C15C0C90902D89500A8542F /* fontset.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = fontset.h; path = ../../src/fontset.h; sourceTree = "<group>"; };
185 3C15C0D70902D89500A8542F /* commands.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = commands.h; path = ../../src/commands.h; sourceTree = "<group>"; };
186 3C15C0D90902D89500A8542F /* dispextern.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = dispextern.h; path = ../../src/dispextern.h; sourceTree = "<group>"; };
187 3C15C0DB0902D89500A8542F /* acldef.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = acldef.h; path = ../../src/acldef.h; sourceTree = "<group>"; };
188 3C15C0DE0902D89500A8542F /* character.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = character.h; path = ../../src/character.h; sourceTree = "<group>"; };
189 3C15C0E20902D89500A8542F /* chpdef.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = chpdef.h; path = ../../src/chpdef.h; sourceTree = "<group>"; };
190 3C15C0E40902D89500A8542F /* frame.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = frame.h; path = ../../src/frame.h; sourceTree = "<group>"; };
191 3C15C0E60902D89500A8542F /* atimer.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = atimer.h; path = ../../src/atimer.h; sourceTree = "<group>"; };
192 3C15C0E70902D89500A8542F /* blockinput.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = blockinput.h; path = ../../src/blockinput.h; sourceTree = "<group>"; };
193 3C15C1A70902D97100A8542F /* nsimage.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = nsimage.m; path = ../../src/nsimage.m; sourceTree = "<group>"; };
194 3C4D6D660DE50D2300B20D4E /* font.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = font.c; path = ../../src/font.c; sourceTree = SOURCE_ROOT; };
195 3C4D6D670DE50D2300B20D4E /* font.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = font.h; path = ../../src/font.h; sourceTree = SOURCE_ROOT; };
196 3C4D6D680DE50D2300B20D4E /* termcap.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = termcap.c; path = ../../src/termcap.c; sourceTree = SOURCE_ROOT; };
197 3C4D6D690DE50D2300B20D4E /* terminal.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = terminal.c; path = ../../src/terminal.c; sourceTree = SOURCE_ROOT; };
198 3C4D6D6A0DE50D2300B20D4E /* tparam.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = tparam.c; path = ../../src/tparam.c; sourceTree = SOURCE_ROOT; };
199 3C4D6D710DE50D5D00B20D4E /* nsfont.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = nsfont.m; path = ../../src/nsfont.m; sourceTree = SOURCE_ROOT; };
200 3C7F3C3A07EB3B05003C8A4D /* nsterm.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = nsterm.h; path = ../../src/nsterm.h; sourceTree = "<group>"; };
201 3CB8E2990E2CE6BF003F3104 /* preferences.nib */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = preferences.nib; path = Emacs.base/Contents/Resources/preferences.nib; sourceTree = "<group>"; };
202 3CB8E29D0E2CE73A003F3104 /* Emacs.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; name = Emacs.icns; path = Emacs.base/Contents/Resources/Emacs.icns; sourceTree = "<group>"; };
203 3CB8E29F0E2CE7F5003F3104 /* Credits.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; name = Credits.html; path = Emacs.base/Contents/Resources/Credits.html; sourceTree = "<group>"; };
204 3CB8E2A60E2CE856003F3104 /* English */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = English; path = InfoPlist.strings; sourceTree = "<group>"; };
205 3CC5434C07E2315800C271A9 /* Emacs.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Emacs.app; sourceTree = BUILT_PRODUCTS_DIR; };
206 3CDCED330902E99700B2EF7E /* config.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = config.h; path = ../../src/config.h; sourceTree = "<group>"; };
207 3CDCED550902EA8100B2EF7E /* term.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = term.c; path = ../../src/term.c; sourceTree = "<group>"; };
208 3CDCED560902EA8100B2EF7E /* sysdep.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = sysdep.c; path = ../../src/sysdep.c; sourceTree = "<group>"; };
209 3CDCED570902EA8100B2EF7E /* syntax.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = syntax.c; path = ../../src/syntax.c; sourceTree = "<group>"; };
210 3CDCED590902EA8100B2EF7E /* strftime.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = strftime.c; path = ../../src/strftime.c; sourceTree = "<group>"; };
211 3CDCED5A0902EA8100B2EF7E /* sound.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = sound.c; path = ../../src/sound.c; sourceTree = "<group>"; };
212 3CDCED5C0902EA8100B2EF7E /* search.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = search.c; path = ../../src/search.c; sourceTree = "<group>"; };
213 3CDCED5D0902EA8100B2EF7E /* scroll.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = scroll.c; path = ../../src/scroll.c; sourceTree = "<group>"; };
214 3CDCED5E0902EA8100B2EF7E /* region-cache.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = "region-cache.c"; path = "../../src/region-cache.c"; sourceTree = "<group>"; };
215 3CDCED5F0902EA8100B2EF7E /* regex.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = regex.c; path = ../../src/regex.c; sourceTree = "<group>"; };
216 3CDCED610902EA8100B2EF7E /* process.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = process.c; path = ../../src/process.c; sourceTree = "<group>"; };
217 3CDCED620902EA8100B2EF7E /* print.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = print.c; path = ../../src/print.c; sourceTree = "<group>"; };
218 3CDCED640902EA8100B2EF7E /* pre-crt0.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = "pre-crt0.c"; path = "../../src/pre-crt0.c"; sourceTree = "<group>"; };
219 3CDCED670902EA8100B2EF7E /* minibuf.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = minibuf.c; path = ../../src/minibuf.c; sourceTree = "<group>"; };
220 3CDCED680902EA8100B2EF7E /* md5.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = md5.c; path = ../../src/md5.c; sourceTree = "<group>"; };
221 3CDCED690902EA8100B2EF7E /* marker.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = marker.c; path = ../../src/marker.c; sourceTree = "<group>"; };
222 3CDCED6D0902EA8100B2EF7E /* macros.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = macros.c; path = ../../src/macros.c; sourceTree = "<group>"; };
223 3CDCED710902EA8100B2EF7E /* lread.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = lread.c; path = ../../src/lread.c; sourceTree = "<group>"; };
224 3CDCED720902EA8100B2EF7E /* lastfile.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = lastfile.c; path = ../../src/lastfile.c; sourceTree = "<group>"; };
225 3CDCED730902EA8100B2EF7E /* keymap.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = keymap.c; path = ../../src/keymap.c; sourceTree = "<group>"; };
226 3CDCED740902EA8200B2EF7E /* keyboard.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = keyboard.c; path = ../../src/keyboard.c; sourceTree = "<group>"; };
227 3CDCED750902EA8200B2EF7E /* intervals.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = intervals.c; path = ../../src/intervals.c; sourceTree = "<group>"; };
228 3CDCED760902EA8200B2EF7E /* insdel.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = insdel.c; path = ../../src/insdel.c; sourceTree = "<group>"; };
229 3CDCED770902EA8200B2EF7E /* indent.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = indent.c; path = ../../src/indent.c; sourceTree = "<group>"; };
230 3CDCED780902EA8200B2EF7E /* image.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = image.c; path = ../../src/image.c; sourceTree = "<group>"; };
231 3CDCED7A0902EA8200B2EF7E /* cmds.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = cmds.c; path = ../../src/cmds.c; sourceTree = "<group>"; };
232 3CDCED7B0902EA8200B2EF7E /* category.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = category.c; path = ../../src/category.c; sourceTree = "<group>"; };
233 3CDCED7C0902EA8200B2EF7E /* coding.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = coding.c; path = ../../src/coding.c; sourceTree = "<group>"; };
234 3CDCED830902EA8200B2EF7E /* unexmacosx.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = unexmacosx.c; path = ../../src/unexmacosx.c; sourceTree = "<group>"; };
235 3CDCED8B0902EA8200B2EF7E /* buffer.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = buffer.c; path = ../../src/buffer.c; sourceTree = "<group>"; };
236 3CDCED8C0902EA8200B2EF7E /* character.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = character.c; path = ../../src/character.c; sourceTree = "<group>"; };
237 3CDCED920902EA8200B2EF7E /* undo.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = undo.c; path = ../../src/undo.c; sourceTree = "<group>"; };
238 3CDCED940902EA8200B2EF7E /* textprop.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = textprop.c; path = ../../src/textprop.c; sourceTree = "<group>"; };
239 3CDCED950902EA8200B2EF7E /* terminfo.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = terminfo.c; path = ../../src/terminfo.c; sourceTree = "<group>"; };
240 3CDCED9C0902EA8200B2EF7E /* xfaces.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = xfaces.c; path = ../../src/xfaces.c; sourceTree = "<group>"; };
241 3CDCED9D0902EA8200B2EF7E /* xdisp.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = xdisp.c; path = ../../src/xdisp.c; sourceTree = "<group>"; };
242 3CDCED9E0902EA8200B2EF7E /* window.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = window.c; path = ../../src/window.c; sourceTree = "<group>"; };
243 3CDCEDB00902EA8200B2EF7E /* doprnt.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = doprnt.c; path = ../../src/doprnt.c; sourceTree = "<group>"; };
244 3CDCEDB10902EA8200B2EF7E /* doc.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = doc.c; path = ../../src/doc.c; sourceTree = "<group>"; };
245 3CDCEDB20902EA8200B2EF7E /* dired.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = dired.c; path = ../../src/dired.c; sourceTree = "<group>"; };
246 3CDCEDB30902EA8200B2EF7E /* data.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = data.c; path = ../../src/data.c; sourceTree = "<group>"; };
247 3CDCEDB40902EA8200B2EF7E /* callint.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = callint.c; path = ../../src/callint.c; sourceTree = "<group>"; };
248 3CDCEDB60902EA8200B2EF7E /* ccl.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = ccl.c; path = ../../src/ccl.c; sourceTree = "<group>"; };
249 3CDCEDB70902EA8200B2EF7E /* fontset.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = fontset.c; path = ../../src/fontset.c; sourceTree = "<group>"; };
250 3CDCEDB80902EA8200B2EF7E /* fns.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = fns.c; path = ../../src/fns.c; sourceTree = "<group>"; };
251 3CDCEDB90902EA8200B2EF7E /* floatfns.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = floatfns.c; path = ../../src/floatfns.c; sourceTree = "<group>"; };
252 3CDCEDBB0902EA8200B2EF7E /* filemode.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = filemode.c; path = ../../src/filemode.c; sourceTree = "<group>"; };
253 3CDCEDBC0902EA8200B2EF7E /* filelock.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = filelock.c; path = ../../src/filelock.c; sourceTree = "<group>"; };
254 3CDCEDBD0902EA8200B2EF7E /* emacs.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = emacs.c; path = ../../src/emacs.c; sourceTree = "<group>"; };
255 3CDCEDBE0902EA8200B2EF7E /* editfns.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = editfns.c; path = ../../src/editfns.c; sourceTree = "<group>"; };
256 3CDCEDBF0902EA8200B2EF7E /* fileio.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = fileio.c; path = ../../src/fileio.c; sourceTree = "<group>"; };
257 3CDCEDC00902EA8200B2EF7E /* eval.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = eval.c; path = ../../src/eval.c; sourceTree = "<group>"; };
258 3CDCEDC10902EA8200B2EF7E /* casetab.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = casetab.c; path = ../../src/casetab.c; sourceTree = "<group>"; };
259 3CDCEDC20902EA8200B2EF7E /* composite.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = composite.c; path = ../../src/composite.c; sourceTree = "<group>"; };
260 3CDCEDC30902EA8200B2EF7E /* dispnew.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = dispnew.c; path = ../../src/dispnew.c; sourceTree = "<group>"; };
261 3CDCEDC40902EA8200B2EF7E /* charset.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = charset.c; path = ../../src/charset.c; sourceTree = "<group>"; };
262 3CDCEDC50902EA8200B2EF7E /* alloc.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = alloc.c; path = ../../src/alloc.c; sourceTree = "<group>"; };
263 3CDCEDC60902EA8200B2EF7E /* bytecode.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = bytecode.c; path = ../../src/bytecode.c; sourceTree = "<group>"; };
264 3CDCEDC70902EA8200B2EF7E /* callproc.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = callproc.c; path = ../../src/callproc.c; sourceTree = "<group>"; };
265 3CDCEDC80902EA8200B2EF7E /* cm.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = cm.c; path = ../../src/cm.c; sourceTree = "<group>"; };
266 3CDCEDC90902EA8200B2EF7E /* casefiddle.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = casefiddle.c; path = ../../src/casefiddle.c; sourceTree = "<group>"; };
267 3CDCEDCA0902EA8200B2EF7E /* fringe.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = fringe.c; path = ../../src/fringe.c; sourceTree = "<group>"; };
268 3CDCEDCB0902EA8200B2EF7E /* frame.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = frame.c; path = ../../src/frame.c; sourceTree = "<group>"; };
269 3CDCEDCC0902EA8200B2EF7E /* chartab.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = chartab.c; path = ../../src/chartab.c; sourceTree = "<group>"; };
270 3CDCEDCD0902EA8200B2EF7E /* atimer.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = atimer.c; path = ../../src/atimer.c; sourceTree = "<group>"; };
271 3CFDFC3A08E79A6800B05918 /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /Developer/SDKs/MacOSX10.3.9.sdk/System/Library/Frameworks/AppKit.framework; sourceTree = "<absolute>"; };
272/* End PBXFileReference section */
273
274/* Begin PBXFrameworksBuildPhase section */
275 3CC5434707E2315800C271A9 /* Frameworks */ = {
276 isa = PBXFrameworksBuildPhase;
277 buildActionMask = 2147483647;
278 files = (
279 3CFDFC3B08E79A6800B05918 /* AppKit.framework in Frameworks */,
280 );
281 runOnlyForDeploymentPostprocessing = 0;
282 };
283/* End PBXFrameworksBuildPhase section */
284
285/* Begin PBXGroup section */
286 1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */ = {
287 isa = PBXGroup;
288 children = (
289 3CFDFC3A08E79A6800B05918 /* AppKit.framework */,
290 );
291 name = "Linked Frameworks";
292 sourceTree = "<group>";
293 };
294 1058C7A2FEA54F0111CA2CBB /* Other Frameworks */ = {
295 isa = PBXGroup;
296 children = (
297 );
298 name = "Other Frameworks";
299 sourceTree = "<group>";
300 };
301 19C28FACFE9D520D11CA2CBB /* Products */ = {
302 isa = PBXGroup;
303 children = (
304 3CC5434C07E2315800C271A9 /* Emacs.app */,
305 );
306 name = Products;
307 sourceTree = "<group>";
308 };
309 289FC26B00C69A287F000001 /* NeXTStep */ = {
310 isa = PBXGroup;
311 children = (
312 3C4D6D710DE50D5D00B20D4E /* nsfont.m */,
313 3C15C1A70902D97100A8542F /* nsimage.m */,
314 3C15C04F0902D89500A8542F /* nsgui.h */,
315 3C7F3C3A07EB3B05003C8A4D /* nsterm.h */,
316 090AF67E00C61DCD7F000001 /* nsfns.m */,
317 090AF68000C61DCD7F000001 /* nsmenu.m */,
318 090AF68100C61DCD7F000001 /* nsselect.m */,
319 090AF68300C61DCD7F000001 /* nsterm.m */,
320 );
321 name = NeXTStep;
322 sourceTree = "<group>";
323 };
324 29B97314FDCFA39411CA2CEA /* Emacs */ = {
325 isa = PBXGroup;
326 children = (
327 289FC26B00C69A287F000001 /* NeXTStep */,
328 3C15C23E0902E6B000A8542F /* emacs-hdr */,
329 3CDCED4D0902EA6800B2EF7E /* emacs-src */,
330 29B97317FDCFA39411CA2CEA /* Resources */,
331 29B97323FDCFA39411CA2CEA /* Frameworks */,
332 19C28FACFE9D520D11CA2CBB /* Products */,
333 );
334 name = Emacs;
335 sourceTree = "<group>";
336 };
337 29B97317FDCFA39411CA2CEA /* Resources */ = {
338 isa = PBXGroup;
339 children = (
340 3CB8E2A40E2CE856003F3104 /* English.lproj */,
341 3CB8E29F0E2CE7F5003F3104 /* Credits.html */,
342 3CB8E2990E2CE6BF003F3104 /* preferences.nib */,
343 739637F200C4DF3C7F000001 /* Images */,
344 );
345 name = Resources;
346 sourceTree = "<group>";
347 };
348 29B97323FDCFA39411CA2CEA /* Frameworks */ = {
349 isa = PBXGroup;
350 children = (
351 1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */,
352 1058C7A2FEA54F0111CA2CBB /* Other Frameworks */,
353 );
354 name = Frameworks;
355 sourceTree = "<group>";
356 };
357 3C15C23E0902E6B000A8542F /* emacs-hdr */ = {
358 isa = PBXGroup;
359 children = (
360 3C4D6D670DE50D2300B20D4E /* font.h */,
361 3C15C0DB0902D89500A8542F /* acldef.h */,
362 3C15C0E60902D89500A8542F /* atimer.h */,
363 3C15C0E70902D89500A8542F /* blockinput.h */,
364 3C15C0780902D89500A8542F /* buffer.h */,
365 3C15C0760902D89500A8542F /* category.h */,
366 3C15C0C50902D89500A8542F /* ccl.h */,
367 3C15C0DE0902D89500A8542F /* character.h */,
368 3C15C0C80902D89500A8542F /* charset.h */,
369 3C15C0E20902D89500A8542F /* chpdef.h */,
370 3C15C0890902D89500A8542F /* cm.h */,
371 3CDCED330902E99700B2EF7E /* config.h */,
372 3C15C0770902D89500A8542F /* coding.h */,
373 3C15C0D70902D89500A8542F /* commands.h */,
374 3C15C0C70902D89500A8542F /* composite.h */,
375 3C15C0D90902D89500A8542F /* dispextern.h */,
376 3C15C0BF0902D89500A8542F /* disptab.h */,
377 3C15C0C20902D89500A8542F /* epaths.h */,
378 3C15C0C90902D89500A8542F /* fontset.h */,
379 3C15C0E40902D89500A8542F /* frame.h */,
380 3C15C0B80902D89500A8542F /* getpagesize.h */,
381 3C15C0B60902D89500A8542F /* gnu.h */,
382 3C15C06E0902D89500A8542F /* indent.h */,
383 3C15C06B0902D89500A8542F /* intervals.h */,
384 3C15C0660902D89500A8542F /* keymap.h */,
385 3C15C0680902D89500A8542F /* keyboard.h */,
386 3C15C05D0902D89500A8542F /* macros.h */,
387 3C15C0560902D89500A8542F /* md5.h */,
388 3C15C0550902D89500A8542F /* mem-limits.h */,
389 3C15C0500902D89500A8542F /* ndir.h */,
390 3C15C04D0902D89500A8542F /* param.h */,
391 3C15C04C0902D89500A8542F /* point.h */,
392 3C15C0470902D89500A8542F /* process.h */,
393 3C15C0460902D89500A8542F /* puresize.h */,
394 3C15C0430902D89500A8542F /* regex.h */,
395 3C15C0410902D89500A8542F /* region-cache.h */,
396 3C15C0390902D89500A8542F /* syntax.h */,
397 3C15C0370902D89500A8542F /* sysselect.h */,
398 3C15C0330902D89500A8542F /* syswait.h */,
399 3C15C0360902D89500A8542F /* syssignal.h */,
400 3C15C0350902D89500A8542F /* systime.h */,
401 3C15C0340902D89500A8542F /* systty.h */,
402 3C15C0300902D89500A8542F /* termchar.h */,
403 3C15C02F0902D89500A8542F /* termhooks.h */,
404 3C15C0950902D89500A8542F /* termopts.h */,
405 3C15C0920902D89500A8542F /* uaf.h */,
406 3C15C0790902D89500A8542F /* vlimit.h */,
407 3C15C0A00902D89500A8542F /* window.h */,
408 );
409 name = "emacs-hdr";
410 sourceTree = "<group>";
411 };
412 3CB8E2A40E2CE856003F3104 /* English.lproj */ = {
413 isa = PBXGroup;
414 children = (
415 3CB8E2A50E2CE856003F3104 /* InfoPlist.strings */,
416 );
417 name = English.lproj;
418 path = Emacs.base/Contents/Resources/English.lproj;
419 sourceTree = "<group>";
420 };
421 3CDCED4D0902EA6800B2EF7E /* emacs-src */ = {
422 isa = PBXGroup;
423 children = (
424 3C4D6D660DE50D2300B20D4E /* font.c */,
425 3C4D6D680DE50D2300B20D4E /* termcap.c */,
426 3C4D6D690DE50D2300B20D4E /* terminal.c */,
427 3C4D6D6A0DE50D2300B20D4E /* tparam.c */,
428 3CDCED550902EA8100B2EF7E /* term.c */,
429 3CDCED560902EA8100B2EF7E /* sysdep.c */,
430 3CDCED570902EA8100B2EF7E /* syntax.c */,
431 3CDCED590902EA8100B2EF7E /* strftime.c */,
432 3CDCED5A0902EA8100B2EF7E /* sound.c */,
433 3CDCED5C0902EA8100B2EF7E /* search.c */,
434 3CDCED5D0902EA8100B2EF7E /* scroll.c */,
435 3CDCED5E0902EA8100B2EF7E /* region-cache.c */,
436 3CDCED5F0902EA8100B2EF7E /* regex.c */,
437 3CDCED610902EA8100B2EF7E /* process.c */,
438 3CDCED620902EA8100B2EF7E /* print.c */,
439 3CDCED640902EA8100B2EF7E /* pre-crt0.c */,
440 3CDCED670902EA8100B2EF7E /* minibuf.c */,
441 3CDCED680902EA8100B2EF7E /* md5.c */,
442 3CDCED690902EA8100B2EF7E /* marker.c */,
443 3CDCED6D0902EA8100B2EF7E /* macros.c */,
444 3CDCED710902EA8100B2EF7E /* lread.c */,
445 3CDCED720902EA8100B2EF7E /* lastfile.c */,
446 3CDCED730902EA8100B2EF7E /* keymap.c */,
447 3CDCED740902EA8200B2EF7E /* keyboard.c */,
448 3CDCED750902EA8200B2EF7E /* intervals.c */,
449 3CDCED760902EA8200B2EF7E /* insdel.c */,
450 3CDCED770902EA8200B2EF7E /* indent.c */,
451 3CDCED780902EA8200B2EF7E /* image.c */,
452 3CDCED7A0902EA8200B2EF7E /* cmds.c */,
453 3CDCED7B0902EA8200B2EF7E /* category.c */,
454 3CDCED7C0902EA8200B2EF7E /* coding.c */,
455 3CDCED830902EA8200B2EF7E /* unexmacosx.c */,
456 3CDCED8B0902EA8200B2EF7E /* buffer.c */,
457 3CDCED8C0902EA8200B2EF7E /* character.c */,
458 3CDCED920902EA8200B2EF7E /* undo.c */,
459 3CDCED940902EA8200B2EF7E /* textprop.c */,
460 3CDCED950902EA8200B2EF7E /* terminfo.c */,
461 3CDCED9C0902EA8200B2EF7E /* xfaces.c */,
462 3CDCED9D0902EA8200B2EF7E /* xdisp.c */,
463 3CDCED9E0902EA8200B2EF7E /* window.c */,
464 3CDCEDB00902EA8200B2EF7E /* doprnt.c */,
465 3CDCEDB10902EA8200B2EF7E /* doc.c */,
466 3CDCEDB20902EA8200B2EF7E /* dired.c */,
467 3CDCEDB30902EA8200B2EF7E /* data.c */,
468 3CDCEDB40902EA8200B2EF7E /* callint.c */,
469 3CDCEDB60902EA8200B2EF7E /* ccl.c */,
470 3CDCEDB70902EA8200B2EF7E /* fontset.c */,
471 3CDCEDB80902EA8200B2EF7E /* fns.c */,
472 3CDCEDB90902EA8200B2EF7E /* floatfns.c */,
473 3CDCEDBB0902EA8200B2EF7E /* filemode.c */,
474 3CDCEDBC0902EA8200B2EF7E /* filelock.c */,
475 3CDCEDBD0902EA8200B2EF7E /* emacs.c */,
476 3CDCEDBE0902EA8200B2EF7E /* editfns.c */,
477 3CDCEDBF0902EA8200B2EF7E /* fileio.c */,
478 3CDCEDC00902EA8200B2EF7E /* eval.c */,
479 3CDCEDC10902EA8200B2EF7E /* casetab.c */,
480 3CDCEDC20902EA8200B2EF7E /* composite.c */,
481 3CDCEDC30902EA8200B2EF7E /* dispnew.c */,
482 3CDCEDC40902EA8200B2EF7E /* charset.c */,
483 3CDCEDC50902EA8200B2EF7E /* alloc.c */,
484 3CDCEDC60902EA8200B2EF7E /* bytecode.c */,
485 3CDCEDC70902EA8200B2EF7E /* callproc.c */,
486 3CDCEDC80902EA8200B2EF7E /* cm.c */,
487 3CDCEDC90902EA8200B2EF7E /* casefiddle.c */,
488 3CDCEDCA0902EA8200B2EF7E /* fringe.c */,
489 3CDCEDCB0902EA8200B2EF7E /* frame.c */,
490 3CDCEDCC0902EA8200B2EF7E /* chartab.c */,
491 3CDCEDCD0902EA8200B2EF7E /* atimer.c */,
492 );
493 name = "emacs-src";
494 sourceTree = "<group>";
495 };
496 739637F200C4DF3C7F000001 /* Images */ = {
497 isa = PBXGroup;
498 children = (
499 3CB8E29D0E2CE73A003F3104 /* Emacs.icns */,
500 );
501 name = Images;
502 sourceTree = "<group>";
503 };
504/* End PBXGroup section */
505
506/* Begin PBXHeadersBuildPhase section */
507 3CC542FF07E2315800C271A9 /* Headers */ = {
508 isa = PBXHeadersBuildPhase;
509 buildActionMask = 2147483647;
510 files = (
511 3C7F3C3B07EB3B05003C8A4D /* nsterm.h in Headers */,
512 3C15C0EB0902D89500A8542F /* termhooks.h in Headers */,
513 3C15C0EC0902D89500A8542F /* termchar.h in Headers */,
514 3C15C0EF0902D89500A8542F /* syswait.h in Headers */,
515 3C15C0F00902D89500A8542F /* systty.h in Headers */,
516 3C15C0F10902D89500A8542F /* systime.h in Headers */,
517 3C15C0F20902D89500A8542F /* syssignal.h in Headers */,
518 3C15C0F30902D89500A8542F /* sysselect.h in Headers */,
519 3C15C0F50902D89500A8542F /* syntax.h in Headers */,
520 3C15C0FD0902D89500A8542F /* region-cache.h in Headers */,
521 3C15C0FF0902D89500A8542F /* regex.h in Headers */,
522 3C15C1020902D89500A8542F /* puresize.h in Headers */,
523 3C15C1030902D89500A8542F /* process.h in Headers */,
524 3C15C1080902D89500A8542F /* point.h in Headers */,
525 3C15C1090902D89500A8542F /* param.h in Headers */,
526 3C15C10B0902D89500A8542F /* nsgui.h in Headers */,
527 3C15C10C0902D89500A8542F /* ndir.h in Headers */,
528 3C15C1110902D89500A8542F /* mem-limits.h in Headers */,
529 3C15C1120902D89500A8542F /* md5.h in Headers */,
530 3C15C1190902D89500A8542F /* macros.h in Headers */,
531 3C15C1220902D89500A8542F /* keymap.h in Headers */,
532 3C15C1240902D89500A8542F /* keyboard.h in Headers */,
533 3C15C1270902D89500A8542F /* intervals.h in Headers */,
534 3C15C12A0902D89500A8542F /* indent.h in Headers */,
535 3C15C1320902D89500A8542F /* category.h in Headers */,
536 3C15C1330902D89500A8542F /* coding.h in Headers */,
537 3C15C1340902D89500A8542F /* buffer.h in Headers */,
538 3C15C1350902D89500A8542F /* vlimit.h in Headers */,
539 3C15C1450902D89500A8542F /* cm.h in Headers */,
540 3C15C14E0902D89500A8542F /* uaf.h in Headers */,
541 3C15C1510902D89500A8542F /* termopts.h in Headers */,
542 3C15C15C0902D89500A8542F /* window.h in Headers */,
543 3C15C1720902D89500A8542F /* gnu.h in Headers */,
544 3C15C1740902D89500A8542F /* getpagesize.h in Headers */,
545 3C15C17B0902D89500A8542F /* disptab.h in Headers */,
546 3C15C17E0902D89500A8542F /* epaths.h in Headers */,
547 3C15C1810902D89500A8542F /* ccl.h in Headers */,
548 3C15C1830902D89500A8542F /* composite.h in Headers */,
549 3C15C1840902D89500A8542F /* charset.h in Headers */,
550 3C15C1850902D89500A8542F /* fontset.h in Headers */,
551 3C15C1930902D89500A8542F /* commands.h in Headers */,
552 3C15C1950902D89500A8542F /* dispextern.h in Headers */,
553 3C15C1970902D89500A8542F /* acldef.h in Headers */,
554 3C15C19A0902D89500A8542F /* character.h in Headers */,
555 3C15C19E0902D89500A8542F /* chpdef.h in Headers */,
556 3C15C1A00902D89500A8542F /* frame.h in Headers */,
557 3C15C1A20902D89500A8542F /* atimer.h in Headers */,
558 3C15C1A30902D89500A8542F /* blockinput.h in Headers */,
559 3CDCED340902E99700B2EF7E /* config.h in Headers */,
560 3C4D6D6C0DE50D2300B20D4E /* font.h in Headers */,
561 );
562 runOnlyForDeploymentPostprocessing = 0;
563 };
564/* End PBXHeadersBuildPhase section */
565
566/* Begin PBXNativeTarget section */
567 3CC542FE07E2315800C271A9 /* Emacs */ = {
568 isa = PBXNativeTarget;
569 buildConfigurationList = 3CA115970C825A540007AFC2 /* Build configuration list for PBXNativeTarget "Emacs" */;
570 buildPhases = (
571 3CC542FF07E2315800C271A9 /* Headers */,
572 3CC5430007E2315800C271A9 /* Resources */,
573 3CC5430407E2315800C271A9 /* Sources */,
574 3CC5434707E2315800C271A9 /* Frameworks */,
575 3CC5434907E2315800C271A9 /* Rez */,
576 );
577 buildRules = (
578 );
579 dependencies = (
580 );
581 name = Emacs;
582 productInstallPath = "$(HOME)/Applications";
583 productName = Emacs;
584 productReference = 3CC5434C07E2315800C271A9 /* Emacs.app */;
585 productType = "com.apple.product-type.application";
586 };
587/* End PBXNativeTarget section */
588
589/* Begin PBXProject section */
590 29B97313FDCFA39411CA2CEA /* Project object */ = {
591 isa = PBXProject;
592 buildConfigurationList = 3CA1159B0C825A540007AFC2 /* Build configuration list for PBXProject "Emacs" */;
593 compatibilityVersion = "Xcode 2.4";
594 hasScannedForEncodings = 1;
595 mainGroup = 29B97314FDCFA39411CA2CEA /* Emacs */;
596 projectDirPath = "";
597 projectRoot = ../..;
598 targets = (
599 3CC542FE07E2315800C271A9 /* Emacs */,
600 );
601 };
602/* End PBXProject section */
603
604/* Begin PBXResourcesBuildPhase section */
605 3CC5430007E2315800C271A9 /* Resources */ = {
606 isa = PBXResourcesBuildPhase;
607 buildActionMask = 2147483647;
608 files = (
609 3CB8E29A0E2CE6BF003F3104 /* preferences.nib in Resources */,
610 3CB8E29E0E2CE73A003F3104 /* Emacs.icns in Resources */,
611 3CB8E2A00E2CE7F5003F3104 /* Credits.html in Resources */,
612 3CB8E2A70E2CE856003F3104 /* InfoPlist.strings in Resources */,
613 );
614 runOnlyForDeploymentPostprocessing = 0;
615 };
616/* End PBXResourcesBuildPhase section */
617
618/* Begin PBXRezBuildPhase section */
619 3CC5434907E2315800C271A9 /* Rez */ = {
620 isa = PBXRezBuildPhase;
621 buildActionMask = 2147483647;
622 files = (
623 );
624 runOnlyForDeploymentPostprocessing = 0;
625 };
626/* End PBXRezBuildPhase section */
627
628/* Begin PBXSourcesBuildPhase section */
629 3CC5430407E2315800C271A9 /* Sources */ = {
630 isa = PBXSourcesBuildPhase;
631 buildActionMask = 2147483647;
632 files = (
633 3CC5430607E2315800C271A9 /* nsfns.m in Sources */,
634 3CC5430707E2315800C271A9 /* nsmenu.m in Sources */,
635 3CC5430807E2315800C271A9 /* nsselect.m in Sources */,
636 3CC5430907E2315800C271A9 /* nsterm.m in Sources */,
637 3C15C1A80902D97100A8542F /* nsimage.m in Sources */,
638 3CDCEDD00902EA8200B2EF7E /* term.c in Sources */,
639 3CDCEDD10902EA8200B2EF7E /* sysdep.c in Sources */,
640 3CDCEDD20902EA8200B2EF7E /* syntax.c in Sources */,
641 3CDCEDD40902EA8200B2EF7E /* strftime.c in Sources */,
642 3CDCEDD50902EA8200B2EF7E /* sound.c in Sources */,
643 3CDCEDD70902EA8200B2EF7E /* search.c in Sources */,
644 3CDCEDD80902EA8200B2EF7E /* scroll.c in Sources */,
645 3CDCEDD90902EA8200B2EF7E /* region-cache.c in Sources */,
646 3CDCEDDA0902EA8200B2EF7E /* regex.c in Sources */,
647 3CDCEDDC0902EA8200B2EF7E /* process.c in Sources */,
648 3CDCEDDD0902EA8200B2EF7E /* print.c in Sources */,
649 3CDCEDDF0902EA8200B2EF7E /* pre-crt0.c in Sources */,
650 3CDCEDE20902EA8200B2EF7E /* minibuf.c in Sources */,
651 3CDCEDE30902EA8200B2EF7E /* md5.c in Sources */,
652 3CDCEDE40902EA8200B2EF7E /* marker.c in Sources */,
653 3CDCEDE80902EA8200B2EF7E /* macros.c in Sources */,
654 3CDCEDEC0902EA8200B2EF7E /* lread.c in Sources */,
655 3CDCEDED0902EA8200B2EF7E /* lastfile.c in Sources */,
656 3CDCEDEE0902EA8200B2EF7E /* keymap.c in Sources */,
657 3CDCEDEF0902EA8200B2EF7E /* keyboard.c in Sources */,
658 3CDCEDF00902EA8200B2EF7E /* intervals.c in Sources */,
659 3CDCEDF10902EA8200B2EF7E /* insdel.c in Sources */,
660 3CDCEDF20902EA8200B2EF7E /* indent.c in Sources */,
661 3CDCEDF30902EA8200B2EF7E /* image.c in Sources */,
662 3CDCEDF50902EA8200B2EF7E /* cmds.c in Sources */,
663 3CDCEDF60902EA8200B2EF7E /* category.c in Sources */,
664 3CDCEDF70902EA8200B2EF7E /* coding.c in Sources */,
665 3CDCEDFE0902EA8200B2EF7E /* unexmacosx.c in Sources */,
666 3CDCEE060902EA8200B2EF7E /* buffer.c in Sources */,
667 3CDCEE070902EA8200B2EF7E /* character.c in Sources */,
668 3CDCEE0D0902EA8200B2EF7E /* undo.c in Sources */,
669 3CDCEE0F0902EA8200B2EF7E /* textprop.c in Sources */,
670 3CDCEE100902EA8200B2EF7E /* terminfo.c in Sources */,
671 3CDCEE170902EA8200B2EF7E /* xfaces.c in Sources */,
672 3CDCEE180902EA8200B2EF7E /* xdisp.c in Sources */,
673 3CDCEE190902EA8200B2EF7E /* window.c in Sources */,
674 3CDCEE2B0902EA8200B2EF7E /* doprnt.c in Sources */,
675 3CDCEE2C0902EA8200B2EF7E /* doc.c in Sources */,
676 3CDCEE2D0902EA8200B2EF7E /* dired.c in Sources */,
677 3CDCEE2E0902EA8200B2EF7E /* data.c in Sources */,
678 3CDCEE2F0902EA8200B2EF7E /* callint.c in Sources */,
679 3CDCEE310902EA8200B2EF7E /* ccl.c in Sources */,
680 3CDCEE320902EA8200B2EF7E /* fontset.c in Sources */,
681 3CDCEE330902EA8200B2EF7E /* fns.c in Sources */,
682 3CDCEE340902EA8200B2EF7E /* floatfns.c in Sources */,
683 3CDCEE360902EA8200B2EF7E /* filemode.c in Sources */,
684 3CDCEE370902EA8200B2EF7E /* filelock.c in Sources */,
685 3CDCEE380902EA8200B2EF7E /* emacs.c in Sources */,
686 3CDCEE390902EA8200B2EF7E /* editfns.c in Sources */,
687 3CDCEE3A0902EA8200B2EF7E /* fileio.c in Sources */,
688 3CDCEE3B0902EA8200B2EF7E /* eval.c in Sources */,
689 3CDCEE3C0902EA8200B2EF7E /* casetab.c in Sources */,
690 3CDCEE3D0902EA8200B2EF7E /* composite.c in Sources */,
691 3CDCEE3E0902EA8200B2EF7E /* dispnew.c in Sources */,
692 3CDCEE3F0902EA8200B2EF7E /* charset.c in Sources */,
693 3CDCEE400902EA8200B2EF7E /* alloc.c in Sources */,
694 3CDCEE410902EA8200B2EF7E /* bytecode.c in Sources */,
695 3CDCEE420902EA8200B2EF7E /* callproc.c in Sources */,
696 3CDCEE430902EA8200B2EF7E /* cm.c in Sources */,
697 3CDCEE440902EA8200B2EF7E /* casefiddle.c in Sources */,
698 3CDCEE450902EA8200B2EF7E /* fringe.c in Sources */,
699 3CDCEE460902EA8200B2EF7E /* frame.c in Sources */,
700 3CDCEE470902EA8200B2EF7E /* chartab.c in Sources */,
701 3CDCEE480902EA8200B2EF7E /* atimer.c in Sources */,
702 3C4D6D6B0DE50D2300B20D4E /* font.c in Sources */,
703 3C4D6D6D0DE50D2300B20D4E /* termcap.c in Sources */,
704 3C4D6D6E0DE50D2300B20D4E /* terminal.c in Sources */,
705 3C4D6D6F0DE50D2300B20D4E /* tparam.c in Sources */,
706 3C4D6D730DE50D5D00B20D4E /* nsfont.m in Sources */,
707 );
708 runOnlyForDeploymentPostprocessing = 0;
709 };
710/* End PBXSourcesBuildPhase section */
711
712/* Begin PBXVariantGroup section */
713 3CB8E2A50E2CE856003F3104 /* InfoPlist.strings */ = {
714 isa = PBXVariantGroup;
715 children = (
716 3CB8E2A60E2CE856003F3104 /* English */,
717 );
718 name = InfoPlist.strings;
719 sourceTree = "<group>";
720 };
721/* End PBXVariantGroup section */
722
723/* Begin XCBuildConfiguration section */
724 3CA115980C825A540007AFC2 /* Development */ = {
725 isa = XCBuildConfiguration;
726 buildSettings = {
727 COPY_PHASE_STRIP = NO;
728 FRAMEWORK_SEARCH_PATHS = "\"$(SYSTEM_DEVELOPER_DIR)/SDKs/MacOSX10.3.0.sdk/System/Library/Frameworks\"";
729 GCC_DYNAMIC_NO_PIC = NO;
730 GCC_ENABLE_FIX_AND_CONTINUE = YES;
731 GCC_GENERATE_DEBUGGING_SYMBOLS = YES;
732 GCC_OPTIMIZATION_LEVEL = 1;
733 GCC_PREPROCESSOR_DEFINITIONS = (
734 COCOA,
735 HAVE_CONFIG_H,
736 emacs,
737 );
738 HEADER_SEARCH_PATHS = "";
739 INFOPLIST_FILE = Info.plist;
740 INSTALL_PATH = "$(HOME)/Applications";
741 LIBRARY_SEARCH_PATHS = "";
742 MACOSX_DEPLOYMENT_TARGET = 10.3;
743 OTHER_CFLAGS = "";
744 OTHER_LDFLAGS = "-lncurses";
745 PRODUCT_NAME = Emacs;
746 SECTORDER_FLAGS = "";
747 WARNING_CFLAGS = "";
748 WRAPPER_EXTENSION = app;
749 ZERO_LINK = NO;
750 };
751 name = Development;
752 };
753 3CA115990C825A540007AFC2 /* Deployment */ = {
754 isa = XCBuildConfiguration;
755 buildSettings = {
756 COPY_PHASE_STRIP = YES;
757 FRAMEWORK_SEARCH_PATHS = "\"$(SYSTEM_DEVELOPER_DIR)/SDKs/MacOSX10.3.0.sdk/System/Library/Frameworks\"";
758 GCC_ENABLE_FIX_AND_CONTINUE = NO;
759 GCC_PREPROCESSOR_DEFINITIONS = (
760 COCOA,
761 HAVE_CONFIG_H,
762 emacs,
763 );
764 HEADER_SEARCH_PATHS = "";
765 INFOPLIST_FILE = Info.plist;
766 INSTALL_PATH = "$(HOME)/Applications";
767 LIBRARY_SEARCH_PATHS = "";
768 MACOSX_DEPLOYMENT_TARGET = 10.3;
769 OTHER_CFLAGS = "";
770 OTHER_LDFLAGS = "-lncurses";
771 PRODUCT_NAME = Emacs;
772 SECTORDER_FLAGS = "";
773 WARNING_CFLAGS = "";
774 WRAPPER_EXTENSION = app;
775 ZERO_LINK = NO;
776 };
777 name = Deployment;
778 };
779 3CA1159A0C825A540007AFC2 /* Default */ = {
780 isa = XCBuildConfiguration;
781 buildSettings = {
782 FRAMEWORK_SEARCH_PATHS = "\"$(SYSTEM_DEVELOPER_DIR)/SDKs/MacOSX10.3.0.sdk/System/Library/Frameworks\"";
783 GCC_PREPROCESSOR_DEFINITIONS = "";
784 HEADER_SEARCH_PATHS = "";
785 INFOPLIST_FILE = Info.plist;
786 INSTALL_PATH = "$(HOME)/Applications";
787 LIBRARY_SEARCH_PATHS = "";
788 MACOSX_DEPLOYMENT_TARGET = 10.3;
789 OTHER_CFLAGS = "";
790 OTHER_LDFLAGS = "";
791 PRODUCT_NAME = Emacs;
792 SECTORDER_FLAGS = "";
793 WARNING_CFLAGS = "";
794 WRAPPER_EXTENSION = app;
795 };
796 name = Default;
797 };
798 3CA1159C0C825A540007AFC2 /* Development */ = {
799 isa = XCBuildConfiguration;
800 buildSettings = {
801 MACOSX_DEPLOYMENT_TARGET = 10.3;
802 SDKROOT = /Developer/SDKs/MacOSX10.3.0.sdk;
803 };
804 name = Development;
805 };
806 3CA1159D0C825A540007AFC2 /* Deployment */ = {
807 isa = XCBuildConfiguration;
808 buildSettings = {
809 MACOSX_DEPLOYMENT_TARGET = 10.3;
810 SDKROOT = /Developer/SDKs/MacOSX10.3.0.sdk;
811 };
812 name = Deployment;
813 };
814 3CA1159E0C825A540007AFC2 /* Default */ = {
815 isa = XCBuildConfiguration;
816 buildSettings = {
817 MACOSX_DEPLOYMENT_TARGET = 10.3;
818 SDKROOT = /Developer/SDKs/MacOSX10.3.0.sdk;
819 };
820 name = Default;
821 };
822/* End XCBuildConfiguration section */
823
824/* Begin XCConfigurationList section */
825 3CA115970C825A540007AFC2 /* Build configuration list for PBXNativeTarget "Emacs" */ = {
826 isa = XCConfigurationList;
827 buildConfigurations = (
828 3CA115980C825A540007AFC2 /* Development */,
829 3CA115990C825A540007AFC2 /* Deployment */,
830 3CA1159A0C825A540007AFC2 /* Default */,
831 );
832 defaultConfigurationIsVisible = 0;
833 defaultConfigurationName = Default;
834 };
835 3CA1159B0C825A540007AFC2 /* Build configuration list for PBXProject "Emacs" */ = {
836 isa = XCConfigurationList;
837 buildConfigurations = (
838 3CA1159C0C825A540007AFC2 /* Development */,
839 3CA1159D0C825A540007AFC2 /* Deployment */,
840 3CA1159E0C825A540007AFC2 /* Default */,
841 );
842 defaultConfigurationIsVisible = 0;
843 defaultConfigurationName = Default;
844 };
845/* End XCConfigurationList section */
846 };
847 rootObject = 29B97313FDCFA39411CA2CEA /* Project object */;
848}
diff --git a/nextstep/FOR-RELEASE b/nextstep/FOR-RELEASE
new file mode 100644
index 00000000000..c4405143275
--- /dev/null
+++ b/nextstep/FOR-RELEASE
@@ -0,0 +1,216 @@
1-*- outline -*-
2
3* NON-SPECIFIC
4
5** Remove Feval calls relating to insert working text in isearch mode.
6
7** free_frame_resources, face colors
8
9** look at nsfont_char_width and nsfont_string_width utils (Dan C.)
10
11** config improvements (Dan C.)
12
13* Mac-related:
14
15** open file:/// URLs
16
17** finish handle terminate request (user logout)
18
19** put frame autopositioning into C code somewhere -- if loc = same, offset
20
21** automap ctrl-mouse-1 to mouse-3
22
23** deal with Finder aliases somehow
24
25** Ctrl-F2 won't pull up menus
26
27
28* Cursor:
29
30** ns_cursor_blink_rate: when set in preferences, somehow save the option (but
31 calling custom-save-all from this causes error)
32
33** cursor nonerase on certain Leopard and Tiger installations
34
35** if I do: (mouse-avoidance-mode 'banish) and then minimize Emacs, it pops back immediately.
36 Also, it insists on being on top of other windows if they overlap.
37
38** cursor-over bugs w/some scripts (move around in HELLO to see)
39
40
41Keyboard:
42
43On a German (PowerBook?) keyboard alt-` produces the correct ˚, without alt modifier only the message “<S-268632064> is undefined” is produced. Peter Maurer’s Key codes shows:
44 * Modifier Change: ⇧ 131330/0x20102
45 * Key Down/Up event: ⇧ 24/0x18
46[note, this is += key on German KB setting on US keyboard]
47[unable to reproduce w/German KB setting -- need German laptop?]
48
49** numeric keysetting bug
50
51
52* Other:
53
54** better recog of unicode scripts / Greek / composition
55
56** Ctrl-g not picked up in all situations get --experimental-ctrl-g in 'compile' working better
57
58** Exec-dump not working on GNUstep (so slow startup).
59
60** occasional size too large for screen errors
61
62** undo for color-drag face customization
63
64
65
66
67---------
68* DONE
69
70Try font-backend mechanism (see font.h).
71
72Auto font substitution?
73
74ns-option-modifier (alias for ns-alternate-modifier)
75
76ns-control-modifier, ns-function-modifier (new)
77
78- Frame bugs:
79 - create frame on second monitor fails (due to frame-parameters).
80
81toolbar bugs
82
83fix cursor disappears on italic text bug
84
85fix scrollbar erase on Ctrl-l bug
86
87Menubar emacs-21 compatibility. Make this and command-is-meta
88 switchable at startup. Switch mouse handling to 3-button compatible.
89
90mouse button normalization
91
92
93[rc1 released]
94
95
96shift-alt-h does produce Ó (according C-h k), but this glyph is not
97always shown completely, it seems to depend on the font used
98
99[width estimation still off; this character is 211 = 0xD3]
100
101Another attempt at composite rendering.
102
103shift-alt-6 does not produce ^ (dead key) but &.
104[adding alt continues to pick up the '&' interpretation, but in other
105 apps this suddenly changes it to a dead key]
106
107- italic in Courier is still cut off
108
109- dead keys end isearch w/o allowing typing
110[need to insert to minibuffer if that is active]
111
112When using the Dvorak with Qwerty keyboard shortcuts keyboard layout
113(hereon in referred to as Dvorak-Qwerty), keyboard shortcuts
114erroneously use the Dvorak layout. e.g. The Qwerty H key becomes D in
115Dvorak, but with Dvorak-Qwerty the same key should be used when
116hitting Cmd-H to hide an application. In Emacs.app with a
117Dvorak-Qwerty layout I must hit Cmd-J (Qwerty J becomes H in Dvorak)
118to hide the app.
119
120- menus
121
122- consolidate FRAME_INTERNAL_BORDER extension hacks
123
124- mouse-1 activation problems (buttons, etc.): check keyboard.c HAVE_NS sections
125
126- clean up bg fill code in font->draw(), and change conditions on when called with bg=yes
127
128- clean up / optimize the metrics caching -- consider reducing memory load
129
130- non-encapsulated build
131
132- test color-drag face customization (accuracy and saving)
133
134- look at ns-mark-nav replacement
135
136- gnustep
137
138- documentation:
139 - "stipple" images, alpha, color-drag, etc.
140 - make sure everyone finds it
141
142
143[rc2 released]
144
145- recheck font width determination for variable-width non-wide fonts
146
147- resize-drag
148
149- colored bitmaps (use NSCalibratedRGBColorspace for the bitmap and
150 add a method setBitmapForegroundColor:color to twiddle the bits
151
152- resize title printing bug
153
154
155[rc2a released]
156
157- naming: cursor "line" -> "bar", "bar" -> underscore
158
159- incorporate Pete's locallisp patch
160
161- document needed sudo for compile --shared-lisp
162
163
164[patch 20071010_rc2a released]
165
166- clean up ns-menu-bar.el and try folding into ns-win.el
167
168- fix jaggedy startup screen w/black bkgrd
169
170- Pete's fringe weirdness
171
172- iconification: use shrunk image for non-finder types
173
174- toolbar updating
175
176
177[patch 20071015_rc2a released]
178
179- multi-TTY merge
180
181- terminal mode weird colors (real fix)
182
183- Frame bugs:
184 - a full-height frame will be shrunk on defocus, focus
185 [actually must be over-height, but it's a little overzealous in the
186 shrinking; probably happens in x_set_window_size]
187 - adding toolbar on full-height frame requires resize to avoid scrambling
188
189- Buffers menu brokenness
190
191- inability to use ARGB colors problem
192
193- cut buffer in TTY
194
195
196[rc3 released]
197
198- drop MULTI_KBOARD
199
200- mic-paren removal (also see http://www.emacswiki.org/cgi-bin/wiki/mic-paren.el)
201
202- describe-key problem
203
204- drop need for preload advice (print-buffer workaround)
205
206- new frame placement ignores parameters [cannot replicate]
207
208- white text on background alpha
209
210- Multi-TTY: switching input between tty and GUI frames still needs work.
211 Once ns_select() and ns_read_socket() are being called, the regular terminal
212 input route seems ineffective. Furthermore NSApp activate events are not
213 picked up when attempting to read in terminal mode.
214 (Tests: make-frame-on-tty /dev/ttyp#, make-frame-on-display)
215
216- remove ns-yes-or-no-p, try again to improve looks of regular dialog in nsmenu.m
diff --git a/nextstep/GNUstep/Emacs.base/Resources/Emacs.desktop b/nextstep/GNUstep/Emacs.base/Resources/Emacs.desktop
new file mode 100644
index 00000000000..3720826a4d0
--- /dev/null
+++ b/nextstep/GNUstep/Emacs.base/Resources/Emacs.desktop
@@ -0,0 +1,11 @@
1[Desktop Entry]
2Encoding=UTF-8
3Type=Application
4Version=9.0
5Categories=GNUstep
6Name=Emacs
7Comment=GNU Emacs for NeXT/Open/GNUstep and OS X
8Icon=emacs.tiff
9Exec=openapp Emacs.app
10#TryExec=Emacs.app
11FilePattern=Emacs.app;Emacs
diff --git a/nextstep/GNUstep/Emacs.base/Resources/Info-gnustep.plist b/nextstep/GNUstep/Emacs.base/Resources/Info-gnustep.plist
new file mode 100644
index 00000000000..b9c24b95c1e
--- /dev/null
+++ b/nextstep/GNUstep/Emacs.base/Resources/Info-gnustep.plist
@@ -0,0 +1,137 @@
1{
2 "!" = "Generated by ProjectCenter, do not edit";
3 ApplicationDescription = "GNU Emacs for GNUstep / OS X";
4 ApplicationIcon = emacs.tiff;
5 ApplicationName = Emacs;
6 ApplicationRelease = "9.0";
7 Authors = (
8 "Adrian Robert (GNUstep)",
9 "Christophe de Dinechin (MacOS X)",
10 "Scott Bender (OpenStep)",
11 "Christian Limpach (NeXTStep)",
12 "Carl Edman (NeXTStep)",
13 "..see http://emacs-app.sf.net"
14 );
15 Copyright = "Copyright (C) 2005-2008";
16 CopyrightDescription = "Released under the GNU General Public License Version 2";
17 FullVersionID = "Emacs 23.0.60 NS 9.0";
18 NSExecutable = Emacs;
19 NSIcon = emacs.tiff;
20 NSPrincipalClass = NSApplication;
21 NSRole = Application;
22 NSTypes = (
23 {
24 NSDocumentClass = "";
25 NSHumanReadableName = "";
26 NSIcon = "";
27 NSName = "";
28 NSRole = "";
29 NSUnixExtensions = (
30 txt
31 );
32 },
33 {
34 NSDocumentClass = "";
35 NSHumanReadableName = "";
36 NSIcon = "";
37 NSName = "";
38 NSRole = "";
39 NSUnixExtensions = (
40 c,
41 h
42 );
43 },
44 {
45 NSDocumentClass = "";
46 NSHumanReadableName = "";
47 NSIcon = "";
48 NSName = "";
49 NSRole = "";
50 NSUnixExtensions = (
51 m
52 );
53 },
54 {
55 NSDocumentClass = "";
56 NSHumanReadableName = "";
57 NSIcon = "";
58 NSName = "";
59 NSRole = "";
60 NSUnixExtensions = (
61 C,
62 cpp,
63 H,
64 cc
65 );
66 },
67 {
68 NSDocumentClass = "";
69 NSHumanReadableName = "";
70 NSIcon = "";
71 NSName = "";
72 NSRole = "";
73 NSUnixExtensions = (
74 java
75 );
76 },
77 {
78 NSDocumentClass = "";
79 NSHumanReadableName = "";
80 NSIcon = "";
81 NSName = "";
82 NSRole = "";
83 NSUnixExtensions = (
84 el
85 );
86 },
87 {
88 NSDocumentClass = "";
89 NSHumanReadableName = "";
90 NSIcon = "";
91 NSName = "";
92 NSRole = "";
93 NSUnixExtensions = (
94 *
95 );
96 }
97 );
98 NSServices = (
99 {
100 NSPortName = Emacs;
101 NSMessage = requestService;
102 NSUserData = open-selection
103 NSSendTypes = (NSStringPboardType);
104 NSMenuItem = {
105 default = "Emacs.app/New Buffer Containing Selection";
106 };
107 },
108 {
109 NSPortName = Emacs;
110 NSMessage = requestService;
111 NSUserData = open-file
112 NSSendTypes = (NSStringPboardType);
113 NSMenuItem = {
114 default = "Emacs.app/Open Selected File";
115 };
116 },
117 {
118 NSPortName = Emacs;
119 NSMessage = requestService;
120 NSUserData = mail-selection
121 NSSendTypes = (NSStringPboardType);
122 NSMenuItem = {
123 default = "Emacs.app/Email Selection";
124 };
125 },
126 {
127 NSPortName = Emacs;
128 NSMessage = requestService;
129 NSUserData = mail-to
130 NSSendTypes = (NSStringPboardType);
131 NSMenuItem = {
132 default = "Emacs.app/Send Email to Selected Address";
133 };
134 },
135 );
136 URL = "http://emacs-app.sf.net";
137} \ No newline at end of file
diff --git a/nextstep/GNUstep/Emacs.base/Resources/emacs.tiff b/nextstep/GNUstep/Emacs.base/Resources/emacs.tiff
new file mode 100644
index 00000000000..827819acdc0
--- /dev/null
+++ b/nextstep/GNUstep/Emacs.base/Resources/emacs.tiff
Binary files differ
diff --git a/nextstep/GNUstep/Emacs.base/Resources/preferences.gorm/data.classes b/nextstep/GNUstep/Emacs.base/Resources/preferences.gorm/data.classes
new file mode 100644
index 00000000000..3aa37a6cbe5
--- /dev/null
+++ b/nextstep/GNUstep/Emacs.base/Resources/preferences.gorm/data.classes
@@ -0,0 +1,31 @@
1{
2 "## Comment" = "Do NOT change this file, Gorm maintains it";
3 EmacsPrefsController = {
4 Actions = (
5 "cancel:",
6 "setDefaultFont:",
7 "ok:",
8 "resetToDefaults:",
9 "runHelp:",
10 "setColors:"
11 );
12 Outlets = (
13 alternateModMenu,
14 cursorBlinkSlider,
15 cursorTypeMatrix,
16 prefsWindow,
17 expandSpaceSlider,
18 commandModMenu
19 );
20 Super = NSObject;
21 };
22 FirstResponder = {
23 Actions = (
24 "setDefaultFont:",
25 "resetToDefaults:",
26 "runHelp:",
27 "setColors:"
28 );
29 Super = NSObject;
30 };
31} \ No newline at end of file
diff --git a/nextstep/GNUstep/Emacs.base/Resources/preferences.gorm/data.info b/nextstep/GNUstep/Emacs.base/Resources/preferences.gorm/data.info
new file mode 100644
index 00000000000..cb4032b0f5e
--- /dev/null
+++ b/nextstep/GNUstep/Emacs.base/Resources/preferences.gorm/data.info
Binary files differ
diff --git a/nextstep/GNUstep/Emacs.base/Resources/preferences.gorm/objects.gorm b/nextstep/GNUstep/Emacs.base/Resources/preferences.gorm/objects.gorm
new file mode 100644
index 00000000000..d1c3d8d83a8
--- /dev/null
+++ b/nextstep/GNUstep/Emacs.base/Resources/preferences.gorm/objects.gorm
Binary files differ
diff --git a/nextstep/README.txt b/nextstep/README.txt
new file mode 100644
index 00000000000..3eb73356e45
--- /dev/null
+++ b/nextstep/README.txt
@@ -0,0 +1,321 @@
1
2Emacs.app
3=========
4
5This file introduces the NeXTstep-based port of GNU Emacs, known as Emacs.app,
6 which runs on on many POSIX systems and possibly W32 using the GNUstep
7 libraries and on MacOS X systems using the Cocoa libraries. The directory
8 "nextstep" and its subdirectories "Cocoa" and "GNUstep" contain files
9 relevant to building and running on these systems.
10
11Those primarily responsible for the port (in chronological order) were:
12
13Michael Brouwer
14Carl Edman
15Christian Limpach
16Scott Bender
17Christophe de Dinechin
18Adrian Robert
19
20See AUTHORS file and "Release History" below for more information.
21
22GNU Emacs is due to Richard Stallman and company.
23
24The GNUstep port was made possible through the assistance of Adam Fedor, Fred
25Kiefer, M. Uli Klusterer, Alexander Malmberg, Jonas Matton, and Riccardo
26Mottola.
27
28Peter Dyballa assisted in a variety of ways to improve text rendering and
29keyboard handling. Adam Ratcliffe documented the Preferences panel. David
30M. Cooke contributed fixes to XPM handling. Carsten Bormann helped get dired
31working for non-ASCII filenames.
32
33
34Requirements
35------------
36MacOS X 10.3 or later
37- or -
38GNUstep "Startup 0.13" or later
39Tested on linux, should work on other systems, perhaps with minor build
40tweaking.
41
42
43Compilation
44-----------
45
46Run "./compile" in this directory, which will create a self-contained
47Emacs.app under 'build/'. This can be moved anywhere and run. To create a
48shared-lisp build, do "sudo ./compile -shared <install_root>". Set
49<install_root> to where the lisp will go, for example /usr/local to end up
50with /usr/local/shared/emacs/...
51
52See the script itself for further details, and customizations.
53
54You can rerun configure and/or run 'make' manually in the top-level or src
55directories to refresh nextstep/build/Emacs.app. (Or edit the "compile"
56script.)
57
58On OS X you can also open Cocoa/Emacs.xcodeproj and build it again there. (Note,
59ZeroLink currently does not work with Emacs owing to the use of private_extern
60in the code as well as some other, unidentifiable problem.) Before doing this
61you must run 'compile' once as outlined above, to set up the lisp resources.
62
63On GNUstep, you CAN'T use ProjectCenter, since PC cannot work with files
64outside of its project directory.
65
66
67Usage
68-----
69
70Please use the first entry under the help menu within Emacs.app, do
71"M-x info-ns-emacs".
72
73
74Background
75----------
76
77Internally to emacs, the port and its code are referred to using the term
78"NeXTstep", despite the fact that no system or API has been released under
79this name in more than 10 years. Here's some background on why..
80
81NeXT, Inc. introduced the NeXTstep API with its computer and operating system
82in the late 1980's. Later on in collaboration with Sun, this API was
83published as a specification called OpenStep. The GNUstep project started in
84the early 1990's to provide a free implementation of this API. Later on,
85Apple bought NeXT (some would say "NeXT bought Apple") and made OpenStep the
86basis of OS X, calling the API "Cocoa". Since then, Cocoa has evolved beyond
87the OpenStep specification, and GNUstep has followed it.
88
89Thus, calling this port "OpenStep" is not technically accurate, and in the
90absence of any other determinant, we are using the term "NeXTstep", both
91because it signifies the original inspiration that created these APIs, and
92because all of the classes and functions still begin with the letters "NS".
93
94(See http://en.wikipedia.org/wiki/Nextstep)
95
96This Emacs port was first released in the early 1990's on the NeXT computer,
97and was successively updated to OpenStep, Rhapsody, OS X, and then finally
98GNUstep, tracking GNU emacs core releases in the meantime.
99
100
101Files specific to the port
102--------------------------
103
104src/nsfns.m
105src/nsfont.m
106src/nsgui.h
107src/nsimage.m
108src/nsmenu.m
109src/nsselect.m
110src/nsterm.h
111src/nsterm.m
112lisp/ns-grabenv.el
113lisp/ns-carbon-compat.el
114lisp/term/ns-win.el
115lib-src/mac-fix-env.m
116doc/emacs/ns-emacs.texi
117etc/Emacs.clr
118nextstep/
119
120
121Files modified for port:
122
123many -- look for HAVE_NS / NS_IMPL_... #ifdefs
124
125
126Release History
127---------------
128
1291990-1992 1.0-3.0 (?) Michael Brouwer's socket/terminal communication
130 based version (GUI ran as a separate process.)
131
1321993/10/25 3.0.1 Last (?) release of Brouwer version. Supports
133 NeXTstep 3.x and below.
134
1351994/04/24 4.0 Carl Edman's version using direct API following
136 the X-Windows port. NeXTstep 3.x only.
137
1381995/06/15 4.1 Second (and last) Carl Edman release, based on
139 Emacs 19.28.
140
1411996/07/28 4.2 First Christian Limpach release, based on
142 Emacs 19.29.
143
144?? 5.0 ??
145
1461997/12/?? 6.0b1 Ported to OpenStep by Scott Bender. Updated
147 to Emacs 20.2.
148
149?? 6.0b2 (?) Scott Bender: ported to Rhapsody.
150
1511999/05/?? 6.0b3 Scott Bender: "OS X Server", Emacs 20.3.
152
1532001/06/25 7.0 Ported to MacOS X (10.1) by Christophe de
154 Dinechin. Release based on Emacs 20.7. Hosting
155 moved to SourceForge.
156
1572002/01/03 7.0.1 Bug fixes.
158
1592002/08/27 7.0.2 Jaguar (OS X 10.2) support. Added an autoconf
160 option for sys_nerr being in stdio. Added
161 libncurses to the build libraries. Fixed a
162 problem with ns-alternate-is-meta. Changed the
163 icon color to blue, since Jaguar is yellow.
164
1652004/10/07 8.0-pre1 Ported to GNUstep by Adrian Robert.
166
1672004/11/04 8.0-pre2 Restored functionality on OS X (menu code
168 cleanup). Improved scrollbar handling and
169 paste from other applications. File icons
170 obtained properly from NSWorkspace. Dropped
171 Gorm and Nib files. Background refresh bug
172 fixed (in GNUstep). Various small fixes and
173 code cleanups. Now starts up under Art.
174
1752005/01/27 8.0-pre3 Bold and italic faces supported. Cursor and
176 mouse highlighting rendering bugs
177 fixed. Drag/drop and cut/paste interaction
178 w/external apps fixed. File load/save panels
179 available. Stability and rendering speed
180 improvements. Some ObjC and VC mode bugs fixed.
181
1822005/02/27 8.0-rc1 Dynamic path detection at startup so Emacs.app
183 can be moved anywhere. Added binary packages
184 and simplified source installation to running
185 two scripts. Thorough cleanup of menu code;
186 now fully functional. Fixed all detected
187 memory leaks. Minor frame focus and title
188 bugs fixed.
189
1902005/03/30 8.0-rc2 "Configure" info directory now uses dynamic
191 path setting, so info files can go under .app.
192 Improved select() handling and PTY fixes so
193 shell mode and tramp run smoothly.
194 Significant rendering optimizations under
195 GNUstep, and now works under Art backend.
196 Non-Latin text rendering works (but not
197 fontsets), and LEIM is bundled. UTF8 is used
198 for clipboard interaction.
199 Arrow cursor now used on scrollbar.
200 objc-mode and tramp now bundled in site-lisp.
201
2022005/05/30 8.0-rc3 Fixed bug with parsing of "easymenu" menus.
203 Many problems with modes such as SLIME, MatLab,
204 and Planner go away. Improved scrollbar
205 handling and rendering speed. Color panel
206 and other bug fixes. mac-fix-env utility.
207 Font handling improvements (OS X 10.3, 10.4):
208 - heed 'GSFontAntiAlias' default
209 - heed system antialiasing threshold
210 - added 'UseQuickdrawSmoothing' default to
211 invoke less heavy antialiasing
212
2132005/07/05 8.0-rc4 Added a Preferences panel. Cleaned up
214 rendering for synthetic italic fonts. Further
215 improved menu parsing. Use system highlight
216 color. Added previous- and next-mark history
217 navigation commmands bound to M-p,M-n.
218 Miscellaneous bug fixes.
219
2202005/08/04 8.0-rc5 All internal string handling changed to UTF-8.
221 This means menu items, color and color list
222 names, and a few other things will now display
223 properly. It does NOT mean UTF-8 filenames
224 are displayed correctly in the minibuffer.
225 Also relating to UTF-8, contents of files
226 using this coding can now be displayed (though
227 not auto-recognized; add extensions to your
228 default coding alist). Limited mac-roman
229 support was also added (also sans recognition).
230 Certain characters are not displayed properly
231 due to a translation problem. (UTF-8 based on
232 work by Otfried Cheong; mac-roman from
233 emacs-21.) Partial support for "dead-key"
234 handling now added. Transparency (e.g., M-x
235 set-background-color ARGB88FFFFFF) improved:
236 only the background is made transparent.
237 Cursor drawing glitches fixed. Preferences
238 handling improved. Fixed some portability
239 problems on Tiger and Puma.
240
2412005/09/12 8.0 Bundled ispell on OS X. Minor bug fixes and
242 stability improvements. Compiles under gcc-4.
243
2442005/09/26 8.0.1 Correct clipped rendering for synthetic
245 italics. Include the info directory.
246 Fix grabenv. Bundle whitespace package.
247
2482005/10/27 8.0.2 Correct rendering for wide characters during
249 cursor movement. Fix bungled hack in ispell
250 bundling.
251
2522005/11/05 9.0-pre1 Updated to latest Emacs CVS code on unicode-2
253 branch (proposed to be released 2006/2007 as
254 Emacs 23).
255
2562005/11/11 9.0-pre2 Fix crashes for deiconifying and loading
257 certain images. Improve vertical font metrics
258 (fixes inaccurate page up/down, window size,
259 and partial lines). Support better remapping
260 of Alt/Opt and remapping of Command. More
261 insistent defaulting of scrollbar to right.
262 Modest improvements to build process.
263
2642006/04/22 9.0-pre2a Stopgap interim release to sync w/latest
265 unicode-2 CVS. Includes XPM and partial
266 toolbar support.
267
2682006/06/08 9.0-pre3 Major upgrade to keyboard handling:
269 system-selected compositional input methods
270 should now work, as well as more keys /
271 keyboards. XPM, toolbar, and tooltip support.
272 Some improvements to scrollbars, zoom, italic
273 rendering, pasting, Color panel. Added function
274 ns-set-background-alpha to work around
275 inability to customize with numeric colors.
276
2772006/12/24 9.0-rc1 Reworked font handling and text rendering to
278 use Kenichi Handa's new font back-end system.
279 Font sets are now supported and automatically
280 created when a font is selected. Added recent
281 X11 colors to Emacs.clr (remove
282 ~/Library/Colors/Emacs.clr to pick up). Added
283 ns-option-modifier, ns-control-modifier,
284 ns-function-modifier customization variables.
285 Update menus to Emacs 21+ conventions. Right
286 mouse button now generates mouse-3 events.
287 Various bug fixes and rendering improvements.
288
2892007/09/10 9.0-rc2 Improve menubar, popup menu, and scrollbar
290 behavior, let accented char entry work in
291 isearch, follow system keymap for shortcut
292 keys, fix border and box drawing, remove
293 glitches in modeline drawing, support
294 overstrike for unavailable bold fonts, fix XPM
295 related crasher bugs. Incremental font
296 metrics caching and other performance
297 improvements. Shared-lisp builds now possible.
298
2992007/09/20 9.0-rc2a Interim release. New features: composed
300 character display, colored fringe bitmaps,
301 colored relief drawing, dynamic resizing,
302 Bug fixes: popup menu position and selection,
303 font width calculation, face color adaptation
304 to background, submenu keyboard navigation.
305 NOT TESTED ON GNUSTEP.
306
3072007/11/19 9.0-rc3 Integrated the multi-TTY functionality from
308 emacs core (however, mixed TTY and GUI
309 sessions are not working yet). Support 10.5.
310 Give site-lisp load precedence over lisp and
311 add a compile option to prefer an additional
312 directory, use miniaturized miniwindow images
313 in some cases, rename cursor types for
314 consistency w/other emacs terms, improved font
315 selection for symbol scripts.
316 Bug fixes: fringe and bitmap, frame deletion,
317 resizing, cursor blink, workspace open-file,
318 image backgrounds, toolbar item enablement,
319 context menu positioning.
320
3212008/07/15 (none) Merge to GNU Emacs CVS trunk.
diff --git a/nextstep/compile b/nextstep/compile
new file mode 100755
index 00000000000..e48accbfe73
--- /dev/null
+++ b/nextstep/compile
@@ -0,0 +1,223 @@
1#!/bin/sh
2
3# This script configures and builds Emacs to the subdirectory ./build .
4#
5# If --shared-lisp 'install_prefix' is given, lisp files will be installed to
6# install_prefix/share/emacs/23.0.0. This option must be run with 'sudo'.
7#
8# Otherwise (default) lisp will be installed under Emacs.app/Contents/Resources.
9# It does this by configuring it to install there, and running "make install".
10#
11# Some setup is different for GNUstep vs. Cocoa, and it determines which one
12# it's on using 'uname'.
13
14# After it is run, Emacs can be run directly from the .app, which itself
15# can be placed anywhere.
16
17# Further C development can be done using Xcode on OS X (not tested recently),
18# or by typing './remake' in the '../src' directory. Further Lisp
19# development can be done by either copying the files you modify
20# into install location, or running this script again.
21
22
23# Set up path and config variables.
24
25PREFIX=""
26while [ $# -gt 0 ]; do
27 case "$1" in
28 --shared-lisp=*)
29 PREFIX=`echo "$1" | sed s/--shared-lisp=//`
30 shift
31 ;;
32 --enable-local-lisp-path=*)
33 locallisppath=`echo "$1" | sed s/--enable-local-lisp-path=//`
34 shift
35 ;;
36 *)
37 echo "Usage: $0 [--shared-lisp='install_root' --enable-local-lisp-path='some path(s)']"
38 exit
39 esac
40done
41
42DISTDIR=`pwd`/..
43
44#OPTFLAGS='-g -O2'
45OPTFLAGS='-g'
46
47# MAC OS X
48if [ `uname` == "Darwin" ]; then
49 BASEDIR=`pwd`/build/Emacs.app/Contents
50 BINDIR=${BASEDIR}/MacOS
51 if [ "x$PREFIX" == "x" ]; then
52 PREFIX=${BASEDIR}/Resources
53 fi
54# If you want to try experimental enhanced Ctrl-g support, add to NS_CFG_OPTS:
55# --enable-cocoa-experimental-ctrl-g
56# (See bottom of USAGE.txt)
57 NS_CFG_OPTS="--with-ns --without-x --without-freetype --prefix=${PREFIX} --exec_prefix=${BASEDIR}/MacOS --libexecdir=${BASEDIR}/MacOS/libexec"
58# --enable-cocoa-experimental-ctrl-g"
59# MAKE="make -j3"
60 steve=`/usr/sbin/sysctl hw.ncpu | awk '{print $NF}'`
61 MAKE="make -j`expr $steve + 1`"
62 export CC=gcc-4.0
63 export MACOSX_DEPLOYMENT_TARGET=10.3
64 export MACOSX_DEPLOYMENT_TARGET_ppc=10.3
65 export MACOSX_DEPLOYMENT_TARGET_i386=10.4
66 export CFLAGS="$OPTFLAGS -arch ppc -arch i386"
67# -universal -sdk /Developer/SDKs/MacOSX10.4u.sdk
68# -arch ppc -arch i386 -isysroot /Developer/SDKs/MacOSX10.4u.sdk
69
70# GNUSTEP
71else
72
73 # Currently must pass three dirs into Make process via environment variables.
74 source /etc/GNUstep/GNUstep.conf
75 if [ "x$GNUSTEP_MAKEFILES" == "x" ]; then
76 if [ "x$GNUSTEP_SYSTEM_ROOT" == "x" ]; then
77 echo "Failed to obtain any useful information from /etc/GNUstep/GNUstep.conf."
78 echo "Please make sure GNUstep is installed on your system."
79 exit
80 fi
81 GNUSTEP_MAKEFILES=${GNUSTEP_SYSTEM_ROOT}/Library/Makefiles
82 GNUSTEP_SYSTEM_HEADERS=${GNUSTEP_SYSTEM_ROOT}/Library/Headers
83 GNUSTEP_SYSTEM_LIBRARIES=${GNUSTEP_SYSTEM_ROOT}/Library/Libraries
84 fi
85 export GNUSTEP_MAKEFILES
86 export GNUSTEP_SYSTEM_HEADERS
87 export GNUSTEP_SYSTEM_LIBRARIES
88
89 BASEDIR=`pwd`/build/Emacs.app
90 BINDIR=${BASEDIR}
91 if [ "x${PREFIX}" == "x" ]; then
92 PREFIX=${BASEDIR}/Resources
93 fi
94 NS_CFG_OPTS="--with-ns --without-x --without-freetype --prefix=${PREFIX} --exec-prefix=${BASEDIR} --libexecdir=${BASEDIR}/libexec"
95# --enable-cocoa-experimental-ctrl-g
96
97 if [ "x$MAKE" == "x" ]; then
98 if [ "`gmake 2>&1`" == "gmake: *** No targets specified and no makefile found. Stop." ]; then
99 MAKE=gmake
100 else
101 MAKE=make
102 fi
103 export MAKE
104 CFLAGS="$OPTFLAGS"
105 export CFLAGS
106 fi
107
108# PENDING: Not sure why this is needed
109 export EMACSLOADPATH="${DISTDIR}/lisp:${DISTDIR}/lisp/emacs-lisp:${DISTDIR}/leim"
110fi
111
112# End variable setup.
113###############################################################################
114
115# Prepare a clean slate
116rm -fr build/Emacs.app
117
118# Configure if needed
119cd ..
120if [ ! -f Makefile ]; then
121 echo "./configure ${NS_CFG_OPTS}"
122./configure <<EOF ${NS_CFG_OPTS}
123EOF
124# ./configure ${NS_CFG_OPTS}
125 if [ $? != 0 ]; then
126 echo "*** Configure run failed. ***"
127 echo "Please examine the above output to determine what went wrong,"
128 echo "edit this script (\'compile\') to fix it, and rerun."
129 # These are written BEFORE the job is compete, then it won't get done
130 # next time, causing errors about CTLau-b5, tsang-b5, PY, etc..
131 rm -f leim/changed.misc leim/changed.tit
132 exit 1
133 fi
134fi
135
136# Pete's addition for local lisp load-path
137if [ "x$locallisppath" != "x" ]; then
138 echo " * Local lisp path is being enabled"
139 (cd src
140 if [ -r epaths.h-orig ]; then
141# mv ../src/epaths.h-orig ../src/epaths.h
142 echo "### src/epaths.h-orig already exists, no further change ###"
143 else
144 mv epaths.h epaths.h-orig
145 printf "s,\(#define PATH_LOADSEARCH \"\),\\\1%s:,\n" "$
146{locallisppath}" > locallisppath.sed
147 cat epaths.h-orig | sed -f locallisppath.sed > epaths.h
148 rm locallisppath.sed
149 fi)
150fi
151
152# Clean up to avoid DOC-xxx and emacs-xxx out-of-controlness
153rm -f ../etc/DOC-* ../src/emacs-*
154
155
156# Go (installs binaries to ./build/Emacs.app, lisp to there or PREFIX)
157echo "make install"
158$MAKE
159status=$?
160
161if [ -f src/epaths.h-orig ]; then
162 mv src/epaths.h-orig src/epaths.h
163fi
164
165if [ $status != 0 ]; then
166 echo "*** Compilation failed. ***"
167 echo "Please examine the above output to determine what went wrong,"
168 echo "edit the configure options in this script (\'compile\') to fix it, and rerun."
169# rm -f leim/changed.misc leim/changed.tit
170 exit 1
171fi
172
173$MAKE install
174if [ $? != 0 ]; then
175 echo "*** Compilation succeeded, but .app assembly failed. ***"
176 echo "Please examine the above output to determine what went wrong,"
177 echo "edit the configure options in this script (\'compile\') to fix it, and rerun."
178# rm -f leim/changed.misc leim/changed.tit
179 exit 1
180fi
181
182# Move version stuff up to Resources
183cd ${BASEDIR}/Resources
184if [ -d share/emacs ]; then
185 # clean up self-contained build
186 mv -f share/emacs/*/* .
187fi
188
189if [ ! -d info ]; then
190 # happens on GNUstep, not OS X
191 mv -f share/info .
192fi
193rm -fr share
194
195# Get rid of .el.gz when .elc is present.. purists will complain, but this
196# knocks the app size down substantially.
197cd lisp
198#for f in `find . -name '*.elc' -print | sed -e s/.elc/.{el,el.gz}/`
199#do
200# rm -f $f
201#done
202
203# Bin cleanup
204cd $BINDIR/bin
205rm -f emacs emacs-23*
206
207# Move libexec stuff up, and link it from bin
208cd ../libexec
209mv -f emacs/*/*/* .
210rm -fr emacs
211cd ../bin
212ln -sf ../libexec/* .
213
214# On OS X, install the bundled ispell
215#if [ `uname` == "Darwin" ]; then
216# cd $DISTDIR
217# cp ispell-3.3.01/bin/ispell* ${BINDIR}/libexec
218# cp -R ispell-3.3.01/lib ${BINDIR}/libexec
219#fi
220
221echo ""
222echo "Build successful."
223echo ""