ftp.nice.ch/pub/next/unix/developer/NibEditor.README

This is the README for NibEditor.NIHS.bs.tar.gz [Download] [Browse] [Up]

Welcome to the magic of Nib Editing...

One of the real problems with the NeXT is that you can't get the
source-code to the application programs.  Unfortunately, this can be a
real barrier to understanding how to write application programs in the
NeXT Step environment.

The NeXT computer uses a special object-file-format called Mach-O.
Basically, a Mach-o file consists of a number of segments and sections
within each segment.  One of these segments is the NIB segment, which
contains all of the NIBs that a program uses at run-time.  These nibs
are in the same format that Interface Builder uses.

By extracting a segment with the "segedit" command, you can see how an
application is built, which makes it a lot easier to build your own.
It partially gets around the problem that NeXT doesn't provide source-code.

The NIB Editor is a collection of two programs for seeing how NeXT
applications are built and modifying them.  The programs are:

extract	<application>
	Takes an application, finds all of the NIBs in it, takes them
all out and puts them into *.nib files in the current directory.  Also
builds a file called NIBLIST, which is the list of all of the nibs.

combine <application> <new-application>
	Takes an application and NIBLIST, checks the mtime of each one
to see which ones that you've modified, and inserts each one into
<new-application>.  Repeats for each modified NIB.


Using these two programs, you can also modify an application.  For
example, you an change the text, much as you can with the Macintosh
Resource Editor. Another thing you can do is change menus, default
command-key bindings, or even connections.  If you want to get
advanced, you can add your own windows to an application, add
functionality, and do lots of other nifty things.

Enjoy!

			2/20/91
			Simson L. Garfinkel
			simsong@mit.edu

These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.