Ignore:
Timestamp:
10/23/03 21:06:33 (21 years ago)
Author:
Nicholas Riley
Message:

VERSION: Updated for 1.0 (at long last!)

main.c: Dealt with -b/-h issue through documentation in man page,
removed from to do list. Dealt with -X issue through testing and
adding kLSNoClassicEnvironmentErr. Added kLSNoExecutableErr and
kCGErrorApplicationRequiresNewerSystem. Removed
BROKEN_LAUNCHNEWINSTANCE because it's fixed in Panther. Updated for
1.0. Fixed a couple of minor memory leaks. Output errors to stderr
instead of stdout. Work around bug in LSOpenFromURLSpec in Panther
(filed bug already). Don't make '????' look like a trigraph to GCC.

launch.pbproj: Updated for Xcode.

launch.1: Manual page, finally. Documents several known Mac OS X bugs
which interfere with launch's functioning.

README: Updated for 1.0. Added man page installation/removal
instructions, just like appswitch. s/Chimera/Camino/. Added my zsh
e() function as an example. Updated examples to reflect current
software versions and usage. Updated stationery discussion to mention
that Omni apps handle stationery too.

package-launch.sh: Set type/creator of files (not that it matters
since we're not doing a dmg distribution any more). Changes for man
page packaging.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/launch/launch/README

    r137 r146  
    1 launch 1.0b3 [xx April 2003]
    2 ============
     1launch 1.0 [23 October 2003]
     2==========
    33
    44A command-line launcher for Mac OS X in the spirit of open(1).
     
    1414or by path, launching TextEdit, or opening a number of applications,
    1515documents, folders, or URLs.  With the exception of special support for
    16 TextEdit, 'launch' does all this and:
     16TextEdit (open -a), 'launch' does all this and:
    1717
    1818- opens URLs, directly or in your preferred helper application (-l)
     
    2727- launches Carbon applications in Classic
    2828- displays file information including type, creator, bundle ID,
    29   data and resource fork sizes, and dates
     29  data and resource fork sizes, dates and version
    3030- reports errors intelligibly
    3131- and much more!
     
    4949modify the install line as appropriate.
    5050
    51 % sudo /usr/bin/install -d /usr/local/bin
     51% sudo /usr/bin/install -d /usr/local/bin /usr/local/man/man1
    5252% sudo /usr/bin/install -c build/launch /usr/local/bin
     53% sudo /usr/bin/install -c launch.1 /usr/local/man/man1
    5354% rehash
    5455
    5556Uninstallation:
    5657
    57 % sudo rm -f /usr/local/bin/launch
     58% sudo rm -f /usr/local/bin/launch /usr/local/man/man1/appswitch.1
    5859
    5960COMPILATION
    6061-----------
    6162
    62 A Project Builder project, 'launch.pbproj', is included.  A
     63An Xcode/Project Builder project, 'launch.pbproj', is included.  A
    6364precompiled binary is also provided.  'launch' was developed and
    64 tested under Mac OS 10.2.3 with the December 2002 Developer Tools,
    65 and does not require any additional software to build.
     65tested under Mac OS 10.3 with the October 2003 Developer Tools, and
     66does not require any additional software to build.
    6667
    6768USAGE
     
    8283
    8384% launch -i org.mozilla.navigator http://www.apple.com/
    84 [Chimera Navigator opens Apple's Web site]
     85[Camino opens Apple's Web site]
    8586
    8687% launch -l launchsw@sabi.net
     
    9192        type: 'APPL'    creator: 'prvw'
    9293        bundle ID: com.apple.Preview
     94        version: 2.1.0
    9395        kind: Application
    94         contents: 2 items
     96        contents: 1 item
    9597[...]
     98
     99A scripting example: a zsh function which provides an OS X wrapper
     100around emacsclient and the Carbon build of GNU Emacs, using launch and
     101appswitch (another one of my command-line tools).
     102
     103    e() {
     104      ( emacsclient -n $@ >&/dev/null && \
     105        appswitch -a Emacs ) || \
     106      ( launch -ba Emacs && \
     107        until { emacsclient -n $@ >&/dev/null } do sleep 1; done;
     108        appswitch -a Emacs )
     109      export EDITOR=emacsclient
     110    }
    96111
    97112FREQUENTLY ASKED QUESTIONS
     
    108123        type: 'APPL'    creator: 'OWEB'
    109124        bundle ID: com.omnigroup.OmniWeb
     125        version: 4.5
    110126        kind: Application
    111127
     
    119135A. Your application does not support stationery.  Applications which
    120136support stationery respond to it by creating a new untitled document
    121 with the contents of the stationery.  Most (all?) Cocoa applications,
    122 such as TextEdit, do not support stationery.  If you're looking for
    123 a text editor which supports stationery, try BBEdit, Tex-Edit Plus,
    124 the CodeWarrior IDE, or almost any other Carbon editor.
     137with the contents of the stationery.  Most Cocoa applications, such as
     138TextEdit, do not support stationery.  (Omni Group applications are a
     139notable exception.)  If you're looking for a text editor which
     140supports stationery, try BBEdit, Tex-Edit Plus, the CodeWarrior IDE,
     141or almost any other Carbon editor.
    125142
    126143For the curious: launch processes input by simultaneously reading it
     
    146163/Volumes/GrayApps/Utilities/Resorcerer 2.4/Resorcerer: scriptable Mac OS X application [Carbon, prefers native OS X]
    147164        type: 'APPL'    creator: 'Doug'
     165        bundle ID: com.mathemaesthetics.resorcerer
     166        version: 2.4 [0x2418010 = 37847056]
    148167        kind: Application
     168[...]
    149169
    150170
     
    162182using the creator instead of the bundle ID as a workaround (-c instead
    163183of -i).
    164 
    165 
    166 Q. Why does launch display '[can't access CFBundle for application]'
    167 in place of the bundle identifiers of non-packaged applications?
    168 
    169 A. This is a CFBundle bug which remains as of Mac OS X 10.2.3.  If
    170 this matters to you, please ask Apple to fix it, or implement a
    171 workaround in launch by parsing the 'plst' id 0 resource directly.
    172184
    173185
     
    225237---------------
    226238
    227 1.0b3 - xx April 2003
     2391.0 - 23 October 2003
    228240 - work around CFBundle bug to report bundle identifiers and versions
    229241   from resource forks of unpackaged Carbon applications and Classic
    230242   applications [Lloyd Dupont]
     243 - added descriptions for more error codes and clarified error
     244   reporting
     245 - output all errors to stderr
     246 - provide better errors for -X option
     247 - restored -m: OS X bug is fixed in Panther
     248 - fixed a couple of tiny memory leaks
     249 - added man page [Hisashi T Fujinaka]
     250 - work around bug in LSOpenFromURLSpec opening multiple items in
     251   Mac OS X 10.3
    2312521.0b2 - 9 March 2003
    232253 - fixed install instructions to create /usr/local/bin if needed
Note: See TracChangeset for help on using the changeset viewer.