Textwrangler Download Mac 10.5.8

TextWrangler 3.5 Release Notes

  1. Install Textwrangler

Free Download Chrome For Mac Os X 10.5.8. Despite the limited customiseable options, Chrome is minimalist for a reason, and that results in a clean browsing experience with maximum use of screen estate for websites. What a sad, sad disappointment. But specifically using Google Search in Google Chrome fails half the time. Os 10.5.8 leopard free download - Apple Mac OS X Snow Leopard, Movist for OS X Leopard, Apple Mac OS Update 8.6, and many more programs.

Install Textwrangler

TextWrangler 5.5.2. Release Date: – This version is no longer supported, but is still available for reinstallation by customers whose computers do not meet the minimum system requirements for switching to BBEdit (macOS 10.12.6 or later). Important: TextWrangler 5.5.2 requires Mac OS X 10.9.5 or later, up to macOS 10.12.6 “Sierra”. Messenger for Mac 7.0.3 makes it easy to take advantage of the full power of real-time communications. Messenger service has been shut down by Microsoft, with users being directed to change to the Skype network. Mirror download will remain for completeness. System Requirements: Mac OS X 10.4.9 or later.

What is textwrangler

This page documents all feature enhancements and additions included in the TextWrangler 3.5 update.

For detailed information on using any of TextWrangler's features, please refer to the user manual (choose 'User Manual' from TextWrangler's Help menu).


TextWrangler 3.5 requires Mac OS X 10.5 or later (10.5.8 or later recommended).

This version is a Universal application: it runs natively on both Intel-based and PowerPC-based Macs.


  • The Quick Search window is gone, and has been replaced by anin-window Live Search bar. Choosing the 'Live Search' menu commandon the Search menu will open this bar.

    As you type in the search field, matches for the string gethighlighted in the window's editing view. The search is alwaysliteral and case-insensitive. The 'previous' and 'next' arrowsto the left of the field are useful for navigation; you canalso type Return or Shift-Return in the search field to goforward or backward.

    The Emacs key bindings ctl-S and ctl-R will open the livesearch bar if necessary; if the search bar is already open,ctl-S will search forward, ctl-R will search backward (assumingthat something is entered in the search field; and also that theEmacs keybinding support is turned on in the preferences).

  • Made the regex for detecting python #! lines more precise.

  • Added support for swipe to navigate between documents to MDIwindows and the documents drawer.

  • TextWrangler gets text folding, including automatically generatedfold points and the relevant commands on the 'View' menu.

  • Services clean-up for Snow Leopard:

    Renamed certain services to provide better context in the services menu,contextual menu, and configuration interface on Snow Leopard.

    Provided NSRequiredContext in the service specification so that a)services are enabled by default and b) non-file path text selections areexcluded from the open file service.

  • When you drop a tarball (a '.tar' file) on TextWrangler, ordouble-click on such a file in a disk browser, TextWrangler will nowbrowse into the tarball instead of opening its raw contents in anediting window.

    If for some reason you prefer the old behavior:

    defaults write com.barebones.textwrangler Misc:OpenDiskBrowserForTarballs -bool NO

  • The window scripting object class now has a property: 'live search barvisible', which indicates whether the Live Search bar iscurrently displayed in that window.

  • TextWrangler can now browse Zip archives (in the format created bythe Finder's 'Compress', or by using ditto -k from the commandline). Drop a Zip archive on TextWrangler to see it in action.

  • Added support for enums to the Java language module.Enums now receive auto-fold points and are enumerated in thefunction popup.

  • When you first save a file which begins with a shebang line,TextWrangler will now make that file executable (a+x, as modifiedby the umask).

  • The 'search here' command (third on the Search menu, after'Multi-File Search') is now enabled when a text document is activeand exists on disk.

  • Edit -> Insert gets a new command: 'Emacs Variable Block'.This brings up a sheet for confirming the insertion of Emacsvariables describing the option settings for the current document.(Using all of the options can result in a pretty verbose result; soyou may find it useful to prune the resulting text as desired.)These variables are honored and have precedence over saved documentstate when TextWrangler opens the document. (Inserting the explicitsettings can be useful when sharing the document with others.)

  • ObjectiveC 2.0 @property declarations now appear in the functionmenu.

  • When setting up ~/Library/Application Support/TextWrangler/ for thefirst time, the folder skeleton contains a 'Read Me.txt' file atthe top level, with helpful information and pointers.

  • TextWrangler now offers enhanced script attachability. Inaddition to adding scripts to menu commands as has been possiblefor a long time, you can now attach scripts to certainapplication and document events.

    The attachment points (corresponding to the function names inyour attachment scripts) are listed below. Except as noted, allof them share the following characteristics:

    • Every function takes a single argument, which is areference to the object in question: the application forapplication entry points, or the document beingopened/closed/saved/etc for document entry points.

    • Any attachment point whose name contains should isexpected to return a Boolean result: true or false. Ifit returns true, the operation will continue. If itreturns false or throws an error (see below) then theoperation will be cancelled. So, for example,applicationShouldQuit returning true will allow theapplication to quit; returning false will not.

    • If an attachment script causes a scripting error and doesnot handle it within the script itself, TextWrangler will reportthe error. In the case of functions which are used to allowa should action, this will prevent the action fromoccurring.

applicationDidFinishLaunchingcalled when the application has completed startup
applicationShouldQuitcalled when the user has chosen 'Quit' (or the application receives a quit event for some other reason
applicationDidQuitcalled when the application has finished shutting down and is about to exit
documentDidOpencalled when a document has been opened and is ready for use. Note that TextWrangler supports multiple types of documents, and so you should be prepared for the argument to be a document of any type.
documentShouldClosecalled when the application is preparing to close a document.
documentDidClosecalled when the application has closed a document.
documentShouldSavecalled when the application is trying to determine whether a given document should be saved.
documentWillSavecalled when the application is about to begin saving a document. note that this will only be called after a successful return from a documentShouldSave.
documentDidSavecalled after a document has been saved successfully.
documentWillUnlockcalled when TextWrangler is going to make a document writeable (as when the pencil is clicked to unlock)
documentDidUnlockcalled when TextWrangler has successfully made a document writeable
documentWillLockcalled when TextWrangler is going to make a document read-only
documentDidLockcalled when TextWrangler has successfully made a document read-only

There's a new folder in the TextWrangler application support folder,'Attachment Scripts', which contains the script(s) to implementyour custom event handlers. You can write one script to handleeach attachment point, or you can write one script to handle theattachment points for an entire class of objects, or you canwrite one script to handle all of the attachment points for theentire application.

It's also possible to mix and match to specialize: for example,one script to implement a particular attachment point fordocuments, and one to handle the rest of them.

TextWrangler handles the association of scripts to attachment pointsby means of the script's file name. There are three ways tospecify a script's role:

  • <ObjectClass>.<entryPoint>
  • <ObjectClass>
  • <ApplicationName>

The first form is the most specific: the ObjectClass may be oneof the following:

  • Document
  • Application

The entryPoint is one of the attachment points described aboveappropriate to the object class. So, for example, a script whichimplemented only the documentDidSave attachment point would havethe file name Document.documentDidSave.scpt and contain a subroutinenamed documentDidSave, thus:

Note that the file name suffix .scpt is not mandatory, but youshould follow the current OS conventions as suggested whensaving the script in the Apple script editor (or another scripteditor, such as the excellent ScriptDebugger).

The second form allows you to implement all of the attachmentpoints for a single object class in a single script file, ifdesired. So, for the application (for example), create a scriptnamed Application.scpt, and it can contain subroutines for asmany of the attachment points as you wish:

To implement all of the attachment points for the Document class, you'dcreate a script named Document.scpt, and put subroutines in it for thedocument attachment points:

Finally, you can write one all-encompassing script whichcontains subroutines for all of the attachment points in theapplication. To do this, name the script TextWrangler.scpt and putwhatever subroutines in it you wish to implement:

When figuring out which script to run, TextWrangler will first lookfor a script whose name exactly matches the attachment point,e.g. Document.documentShouldSave.scpt. If it is not found,TextWrangler will then look for a script whose name matches the objectclass at the attachment point; e.g. Document.scpt. Finally, ifneither an exact or a class match is found, TextWrangler will look foran application-wide script: TextWrangler.scpt.

Note that you do not have to implement attachment subroutinesfor all attachment points, or for all classes -- only the onesyou need. If there is no attachment script or subroutine, TextWranglerproceeds normally.


  • The internal format of saved document state has beenreworked, as well as the behaviors for saving and loading it.The most important visible changes are as follows:

    • When saving state, TextWrangler captures only those settingswhich are fundamental to the document (window position,selection range, folds, splitter setting), or settingswhich vary from the global preferences. The latter ensuresthat changes to the global preferences are neverinappropriately overridden by document state.

      So, for example, if the default document font is Consolaswhen you save the document, and the document uses that font,but you change the global preference to Menlo before thenext time you open that same document, the document's fontwill be set to Menlo. (Note that this behavior applies toany document setting which takes its default from the prefs;the font is used only to illustrate.)

      This change should resolve lots of confusion surroundingthe question of 'I changed my prefs, how come my documentsettings don't reflect that?'

    The internal data format of the state has changed to accommodatethis new behavior. Documents with existing saved state willexhibit the old behavior when they are opened; this is not abug. TextWrangler will write out the new state format the next timeyou save the document.

    Note that the new format is not backward-compatible; so if youopen the document with an older version of TextWrangler, the newformat state will be ignored.


    • If you are using the expert preference to save state in thedocument's resource fork (rather than in a centrallocation), please note that the new format state data is notactually saved in a resource anymore - it is now writteninto an extended attribute, which you can verify from thecommand line using xattr -l /path/to/some/file.

    And finally:

    • A new 'Normalize Options' command is available on the Editmenu. This command will reset the front document's display andediting options to the current defaults established by yourpreferences (including any language-specific overrides), andclear the document's saved state. This can be useful insituations where previously saved state is restored and containsundesired variances from your preferences.
  • The following UI changes have been made to text encodingselection:

    • 'Unicode (UTF-8, no BOM)' has been renamed to 'Unicode (UTF-8)'.

    • 'Unicode (UTF-8)' has been renamed to 'Unicode (UTF-8, with BOM)'.

    • The text encodings menu (as used in the status bar,preferences, and other locations) has been rearranged so thatthe most commonly used Unicode variants (UTF-8 andUTF-16-BE+BOM) are at the top of the menu, with a separatorbetween them and the rest.

  • A fresh install of TextWrangler will no longer populate theApplication Support/TextWrangler folder; instead it will simplycreate empty placeholder folders so that you know where stuff goes.

  • The 'Open Hidden' command has been removed from the Filemenu, since the 'Show Hidden Items' check box is available onall supported systems now (and it works).

  • When saving a document to a mounted file system (notFTP/SFTP), the application now does a 'safe save' so thatthe existing data on disk is not replaced until the newdocument data has successfully been written.

  • 'Replace All' text factory operations no longer generate aresults entry so a results window should no longer appear at theend of a factory run containing Replace All actions, unlesserrors occurred.

  • Reworded scary confirmation text when deleting items from theMulti-File Search sources list.

  • The GUI switch to use the old Find dialog has beenremoved from the Text Search preferences. The preference isstill supported, so if you previously changed it, the changeremains in effect.

    The expert preference for controlling use of the old Finddialog is:

    defaults write com.barebones.textwrangler FindDialog:UseOldSk00lFindDialog -bool YES

  • The --gui option to bbfind now brings the application tothe front when starting the search. To suppress this, add -bor --background to the command line.

  • The on-disk storage format for file filters has been changed tosomething more future-friendly; the saved filters are now located in'File Filters.filefilters' in~/Library/Preferences/com.barebones.textwrangler.PreferenceData/. (Notethat although the file is readily human-readable, the internalstructure is undocumented and subject to change; modifications madewithout using the application's UI are not supported..)

    Existing filters will be converted (nondestructively) to the newformat. Note that the new format cannot be used with older versionsof the application.

  • When browsing a Zip archive or tarball, if there is only onetop-level item and it's a folder, the rest of the items are hoisted(and the top-level item is not shown).

  • If a window contains multiple documents, its submenu on the Windowmenu will contain diamond indicators as appropriate for anydocuments with unsaved changes or state.

  • If a file changes on disk and the copy open in TextWrangler has unsavedchanges, you now have the option to ignore future changes to thatfile (for as long as the document remains open in TextWrangler; closingand reopening will cause the behavior to reset).

  • The expert pref for controlling whether or not temporary files areaeligible for the Open Recent has been changed. The new invocation todo so is:

    defaults write com.barebones.textwrangler RecentItems:RememberTempFiles -bool YES

  • If you Select All in a Find Differences results window, the Applybuttons will then copy the entire document in the indicateddirection. (Note that it is not currently possible to selectivelyapply a subset of more than one diff - you can apply one, or all,and nothing in between.)

  • The application has undergone extensive internal rework, in orderto improve performance, remove some longstanding limitations, andpave the way for new features. By and large, the internal changesshould be invisible, but the following top-level changes deservemention:

    • Support for BBXT plug-ins has been removed. This means that the'Plug-Ins' window is gone from the Palettes menu, the plug-insummaries are gone from the About box, and the Tools menu isgone (if you didn't see it before, you won't notice anydifference). If you drop a BBXT plug-in on the application,you'll get an alert to the effect that plug-ins aren'tsupported.

    • Automatic import of pre-8.0 format Grep pattern data is nolonger supported. (If you have such a file, please write tosupport for assistance.)

    • It is now possible to open files significantly larger thanbefore; the ceiling isn't unlimited, but it is no longer limitedby the previously extant constraints in the OS.

    • The following large-scale text transformations aresignificantly faster and/or require less transient memory:

      • Multi-file search (and replace)
      • single-file Find All
      • Process Lines Containing
      • Sort Lines
      • Process Duplicate lines
      • Prefix/Suffix Lines
  • For text documents whose size exceeds a certain threshold(expressed in bytes, factory default 1MB), TextWrangler will ignore theSoft Wrap Text preference and leave wrapping off in order to improvethe performance of opening very large files. The threshold may beadjusted if desired:

    defaults write com.barebones.textwrangler Editor:SoftWrapLengthThreshold -int 1048576

    If you set the limit to zero, TextWrangler will always honor the SoftWrap Text preference, even in situations where soft-wrapping alarge file may cause it to take a very long time to open.

  • Since 'Find All Misspelled Words' is pretty much pointless on filesover a certain size, the maximum amount of text checked by thiscommand is now limited to 1M (1024 squared) characters. This may beadjusted with an expert preference:

    defaults write com.barebones.textwrangler Editor:SpellCheckLengthLimit -int NN

    where 'NN' is some decimal value. Use -int 0 to suppress the limit checkaltogether.

  • The 'Don't Process' (or equivalent) buttons have been removed fromthe following commands' dialog boxes:

    • Add/Remove Line Numbers
    • Change Case
    • Find and Mark All
    • Hard Wrap
    • Hex Dump
    • Prefix/Suffix Lines
    • Process Duplicate Lines
    • Process Lines Containing
    • Rewrap Quoted Text
    • Sort Lines
    • Zap Gremlins
  • Adjusted the terminology and keyboard equivalents in the Add/RemoveLine Numbers sheet to be a little more consistent with expectations.

  • The software update checker will provide notifications when themachine has been idle for 30 minutes, in addition to at launch andafter manual check.

  • When creating results windows from the scripting interface, thename is no longer mandatory -- if absent, the application willgenerate one.

  • When creating results windows from the scripting interface, theapplication will use narrow list items if none of the results itemshave a 'message' or 'match_string' property.

  • When creating results windows from the scripting interface, the'result_kind' may be omitted from the item records; if absent thekind is assumed to be 'note_kind'.

  • When you are backspacing with an insertion point, TextWrangler willdelete a tab stop's worth of spaces if there are only spaces (andtabs) between the insertion point and the start of the line on whichyou're editing. This may be disabled by an expert preference ifdesired:

    defaults write com.barebones.textwrangler Editor:DeleteIndentationWhitespaceToTabStop -bool NO

  • Holding down the Shift key when starting the application no longersuppresses the #! menu.

  • If a hierarchical results list entry is collapsed, and oneor more children are error entries, the collapsed entry text isdrawn in red.

  • The 'Use Unicode line breaks' preference anddocument settings have been consigned to the dustbin of history.

  • If a document has an explicit encoding declaration, butthe declared encoding doesn't map to anything known, you'll get analert when saving. (The document will be saved in whatever encodingis displayed in the status area at the bottom of the window.)

  • Cache files for FTP/SFTP are now kept in~/Library/Caches/<bundle id>/FTPTemp/, rather than ~/Library/Caches/<app name FTP Temp/.

  • There is now an expert pref available, for those whoprefer their multi-file search results lists to be flat rather thanhierarchical by file:

    defaults write com.barebones.textwrangler Search:AlwaysFlattenSearchResultsLists -bool YES

  • Added JSON language support (syntax coloring and 'function'navigation).