TeXShop Changes in Versions 2.05 and 1.42
New features in 2.05:
- TeXShop 2.05 is now a Universal Binary, containing code for both the PowerPC and Intel processors. The system automatically runs the correct version of the code.
- The default TeXShop preference for the teTeX binary directory is /usr/local/teTeX/bin/powerpc-apple-darwin-current. But if users have installed Gerben Wierda's latest TeX redistribution, they also have Intel binaries. On Intel machines, the teTeX binary directory should then be /usr/local/teTeX/bin/i386-apple-darwin-current. TeXShop now has code to make this change automatically. When the program first starts, it calls "uname -p" to determine the current processor. If the result is "i386", then TeXShop permanently changes the above preference to /usr/local/teTeX/bin/i386-apple-darwin-current. However this change is not made if the user has manually changed the default /usr/local/teTeX/bin/powerpc-apple-darwin-current to some other location. Thus if a user has the Fink teTeX distribution or some other distribution and has set the teTeX binary directory preference to point to it, the preference will not be changed.
- When TeXShop was first released on Tiger, users ran into an annoying bug which caused
the program to gradually slow to a crawl after several typesetting actions. This bug was fixed
a couple of days after the release. The problem occurred when a new pdf file was loaded into
the PdfKitView in the Preview window. According to Apple documentation, this should have
released the previous data structure from memory. The release did occur, but it caused
the program slowdown. So the bug fix consisted of tricking the system into believing that
the data structures were still being used so the system didn't try to release them.
A side effect was that memory gradually filled up and some users learned that they needed to quit TeXShop and restart after each day's work.
Recent investigation seems to show that this bug is fixed in Tiger 10.4.3. Consequently the latest version of TeXShop tests which system is running and releases the old data structures when the system is at least 10.4.3, but not otherwise.
This behavior is controlled by a new hidden Preference item:
- defaults write TeXShop ReleaseDocumentClasses 0
The default value is 0, causing the program to behave as just described. If the value is 1, the old data structures are never released and the program behaves exactly as earlier versions of TeXShop 2. If the value is 2, old data structures are always released.
Thus if you find that the program becomes sluggish after several typesetting jobs, change ReleaseDocumentClasses to 1 and then report the behavior to me with as many details as possible.
- Michael Witten, a student at MIT, added multiple wrapping modes to TeXShop.
Users can choose "no wrapping" so lines continue right until the user pushes ENTER,
or "word wrapping" so text is wrapped at word boundaries (this was the prior behavior),
or "character wrapping" so text wraps exactly at the last possible character. Not that
these wrappings are "soft"; resizing the window will change the wrapping. The default wrapping
is "word wrapping" but a menu command allows the wrapping to be changed. Moreover, a hidden
preference allows the default wrapping to be changed:
- defaults write TeXShop LineBreakMode 1
where "None" = 0, "Word Wrap" = 1, and "Character Wrap" = 2. Wrapping is done at the right side of the window unless the ruler is active; if it is, wrapping is done at the "right marker"
- Witten also added the command "Hard Wrap". If a paragraph is selected, this command inserts hard wrapping commands at the right side of this paragraph. After this step, resizing the window leaves the wraps fixed. This is useful if you send source to a colleague whose editor has fixed width and no wrapping. If the "Hard Wrap" command is chosen but no selection has been made, the hard wrap applies to the entire document. Note that "Hard Wrap" is undoable.
- The TeXShop Application Bundle now contains Norman Gall's TeX-mdimporter Spotlight
importer. Files with extensions .tex, .latex, .ltx, .ctx. and .texi will be indexed
by Spotlight when saved. In systems 10.4 through 10.4.2, TeXShop files were automatically indexed because they have type TEXT, but Apple changed this procedure in 10.4.3. So the importer is
now required to index files. The system automatically recognizes the importer when TeXShop is first installed. It is then used to index .tex, .ltx, etc. files even if TeXShop is not running.
If Gall later updates the importer and you install the new version in ~/Library/Spotlight or other canonical spots, the updated version will be used rather than the version in the TeXShop bundle because Apple's importer search routines use importers in bundles as a last resort.
Gall's importer was not written with TeXShop in mind, but is instead designed to be used by all TeX editors and front-ends; the hope is that there will be a universal importer rather than a different one for each front end. For the latest version, see http://www.spookyhill.net/~gall/latex.
- The commands "altpdftex" and "altpdflatex" in Gerben Wierda's TeX distribution
have changed to "simpdftex tex" and "simpdftex latex". These are now the default preference
values for new TeXShop installations.
Moreover, the first time a user tries to typeset in the "tex + ghostscript" mode, TeXShop will check these preference items, and change them if necessary. It does this by determining whether "simpdftex" is in the TeX binary directory. If so, and if the command in the TeX + dvips + distiller "TeX Program" field in the TeXShop Engine Preferences is "altpdftex", then this field is changed to "simpdftex tex". Any additional flags in the preference field are retained. At the same time, the "Latex Program" field is changed. If it is "altpdflatex", it is changed to "simpdftex latex", retaining any additional flags.
- Added ISO Latin 9 encoding
- Now (apple)-[ and (apple)-] act differently in the editing window and preview window. In the editing window they are "unindent" and "indent". In the preview window they are "back" and "forward". A disadvantage is that it was not possible to add these commands to the menus, so users need to remember these abbreviations. This change was requested by users with German and other keyboards on which (apple)-< and (apple)-> cycle through windows. Users with English keyboards cycle through windows with (apple)-`.
- Added a new hidden preference
- defaults write TeXShop LeftRightArrowsAlwaysPage YES
The default value is NO. When set to YES, the left and right arrows scroll by a page even if the horizontal school bar is active.
- Changed the English under the Preview tab of Preferences from "After Window Review" to "Magnification Style" and changed "Preview Window Magnification" to "Preview Window Fixed Magnification" to more carefully explain the function of these preference items. Notice that TeXShop only uses the Preview Magnification value if the Magnification Style has been set to "Fixed Magnification".
- Added a new item
- %!TEX projectfive =
which can be added to the top of TeX source files. This change is primarily for ConTeXt users so they can use the new sync method. When synching from the preview window to the source window, TeXShop needs to know all sources file for the document being previewed so it can open source files not currently open if necessary. It does this by parsing the root document, looking for \include and \input lines. But ConTeXt uses different commands to input files. The new syntax allows ConTeXt users to directly indicate in the root document which additional source files need to be searched. Here are examples:
- %!TEX projectfile = /Users/koch/MyDoc/chapter1.tex
- %!TEX projectfile = chapter2.tex
- %!TEX projectfile = ../chapter3.tex
- Added .Rnw as an extension TeXShop can edit. This was a request of Paolo Bosetti, who uses TeX and R and Sweave together.
- When a user tries to open a .dvi file, TeXShop runs a script to convert the dvi file to a pdf file. In previous versions, it ran a different script when the .dvi was in a writeable directory than when its directory was not writeable. But Gerben Wierda has revised the simpdftex script to handle both cases, so now TeXShop always calls simpdftex to do the conversion. Actually it calls the TeX + dvips + distiller script which is set in Preferences; this preference will be simpdftex if the user has a fairly recent TeX distribution.
- Added a new hidden Preference
- defaults write TeXShop RedConsoleAfterError NO
If this default is YES, then after the first error the remaining text in the console will be red. The default value is NO.
- Slightly modified the appearnce of the Console window, particularly in English. More work is needed here. Note that the console window can be resized and relocated, and the system will remember this new size and location when TeXShop is restarted.
- In version 2.05, fixed "undo past a save" using the new Tiger command [textView breakUndoCoalescing]. Previous versions of TeXShop allowed users to undo past a save command. But this required "tricky code" and one effect of the trick was that TeXShop sometimes lost track of whether the current state of the document had previously been saved, and so didn't save the document before typesetting, giving strange results in the preview window.
- Versions 2.00 through 2.04 of TeXShop sometimes had trouble remembering new preference settings; it was necessary to set them several times before they "took." This is fixed.
New features in 1.42 and 2.05:
- The commands "altpdftex" and "altpdflatex" in Gerben Wierda's TeX distribution
have changed to "simpdftex tex" and "simpdftex latex". These are now the default preference
values for new TeXShop installations.
Moreover, the first time a user tries to typeset in the "tex + ghostscript" mode, TeXShop will check these preference items, and change them if necessary. It does this by determining whether "simpdftex" is in the TeX binary directory. If so, and if the command in the TeX + dvips + distiller "TeX Program" field in the TeXShop Engine Preferences is "altpdftex", then this field is changed to "simpdftex tex". Any additional flags in the preference field are retained. At the same time, the "Latex Program" field is changed. If it is "altpdflatex", it is changed to "simpdftex latex", retaining any additional flags.
- Added ISO Latin 9 encoding
- New German localization and help files.
- New Japanese Help by Yoshihisa Okazaki with help from Seiji Zenitani.
- New Spanish help files and localization.
- Uses version 1.2.4 of OgreKit.
- Conversion of eps, ps, and dvi files to pdf (caused by opening such a file) now works even if the path to the file has folders whose names contain spaces. In all three cases, the file can now be in a folder without write permission.
- Trash AUX files now removes files with more extensions: cos, idv, 4ct, 4tc, lg, xref, ttt, fff, ent, wrm.
- If the user tries to open a file with UTF-8 Unicode encoding, but the file is not a legal utf8 file, a dialog now appears warning of the problem, and the file is opened with MacOSXRoman encoding.
- Bib files are promoted to full class citizens; text can be dragged to them, syntax coloring works, etc.
- A remark: users have reported that they can no longer "find" words in the console window. Actually, they can. This window has two portions. When typesetting ends, the bottom portion is active, so the find panel searches that portion. To activate the top, click on it. Then "find" works.
- Added a preference to control first mouse behavior: "Select on Activate." When this is YES, a click in the source window will also set the insertion point to the click point. If it is NO, a second click is required to change the insertion point.
- Added pdf to the types of files TeXShop can edit, and added a pdf icon. This allows TeXShop to be chosen as the default pdf viewer.
- Added Lilypond, abc, and bst as extensions that can be edited.
- Added code by David Reitter so that selecting the word \int, etc., selects the beginning "\" as well.
Bugs fixed in 1.42 and 2.05:
- Japanese Image Copy Type Preference failed due to incorrect localization. Now fixed.
- Command Completion's configuration file is now loaded and saved in UTF-8 Unicode.
- Errors fixed in pdfsync.
- When typesetting engines are called, they are now passed the program filename with extension, rather than just the filename.
- In 1.35, it was only possible to switch between the OgreKit Find panel and the Apple Find panel in the English localization. This is fixed.
- The menu item to bring up the statistics panel was only in the English version. Now it is in all versions.
- In all display modes except single page mode, a black border is drawn around each pdf page. Previously this border was slightly inside the page, cutting off a slight border around the page. Now it is just outside the page. Thanks to Scott Ranby for pointing out this error.
- The "%!TEX TS-program" and "%!TEX root =" commands now when when used with an external editor.
Changes in 1.41 and 2.04
- These versions of TeXShop are in the first release of the TeX install package MacTeX.pkg, but were never otherwise released.
Changes in 2.03
- Improved the PDFsearch code (i.e., sync) for \include{file}, \input{file}, and \import{file}. Users who had trouble using sync with large projects may find that it works now.
- When the Find panel is opened with command-F, the previous search phrase is now hilighted so users can erase it by just typing a new search phrase.
- Command-left-arrow and command-right-arrow perform page up and page down when the Preview window is open, but they now move the editor to the start or end of the current line, restoring a keyboard shortcut which was inadvertently broken in 2.01.
- New Spanish localization and Spanish Help by Juan Luis Verona.
- Additions to the German localization by Martin Kerz.
Changes 1.40
- When the Find panel is opened with command-F, the previous search phrase is now hilighted so users can erase it by just typing a new search phrase.
Changes in 2.02
- Added command left arrow for previous page, command right arrow for next page, command [ for back, and command ] for forward. These keyboard shortcuts are also used by Apple's Preview. To make room for these shortcuts, the shortcuts for indent and unindent were changed to command < and command >, and the shortcuts for comment and uncomment were changed to command { and command }.
- The left and right arrows scroll left and right if the horizontal scroll bar is active, but page up and down otherwise. This behavior copies the behavior of Apple's Preview.
- When the cursor is over a link in the Preview window, clicking on the link will activate the link regardless of the active tool at that moment.
- The magnification toolbar item and page number toolbar item now have no surrounding outline, so they shrink to small size and look cleaner than before.
- Enlarged the number of files searched by the new sync method from 20 to 60.
- Fixed OgreKit permissions.
- Japanese Localization by Yoshihisa Okazaki.
Changes in 1.39
- Japanese Localization by Yoshihisa Okazaki.
- Spanish localization by Juan Luis Varona Malumbres.
- Fixed OgreKit permissions
Changes in 2.01
- A missing default preference caused the background color of the pdf window to be black. This is fixed.
- The beachball could appear after typesetting a document, causing a substantial delay before the editor became accessible. Fixed.
- The preference to set the location and size of the preview window broke. Now fixed.
- Changing the default magnification did not immediately change the magnification in open windows. Fixed.
- Dragging a portion of text from one spot of the source to another broke. This is fixed.
- TeXShop and TeXShop Help are now localized in German.
- The twelve point book heading macro contained a spurious letter. This is fixed for new users, but other users need to remove the letter using the Macro editor.
Changes in 1.38
- Dragging a portion of text from one spot of the source to another broke in Tiger. This is fixed.
- Minor additions were made to the German localization.
- The twelve point book heading macro contained a spurious letter. This is fixed for new users, but other users need to remove the letter using the Macro editor.
New Features in 2.00
- A new synchronization method has been added to TeXShop, using the ability in Tiger
to search for strings in pdf files. The new method does not require including a
pdfsync.sty file, so it works out of the box with files typeset using any engine:
pdftex or pdflatex, TeX + ghoscript or LaTeX + ghostscript, XeTeX, and other engines.
- Click on a word or phrase in the source file. TeXShop will scroll the preview window to the
corresponding phrase and circle it in red. Click on a word or phrase in the
preview window. TeXShop will open the corresponding source file if it is not already
open, scroll the source to the appropriate spot, and highlight the source phrase
in yellow.
- Of course source strings and output strings need not be equal. The new method
sidesteps this problem by searching for nearby text until it finds a match.
Read TeXShop help for details.
- A new TeXShop preference item selects the synchronization method to be used:
the old pdfsync method, the new search method, or a combination in which the
new search is used, but the program falls back on pdfsync if the new search does not
succeed.
- TeXShop 2.00 uses Apple's PDFKit to display the pdf preview window. This software is introduced in system 10.4.0 (Tiger). PDFKit makes the following new features possible:
- TeXShop supports hyperlinks and the TeX hyperref package. To activate this feature, add the line
- \usepackage[colorlinks=true, pdfstartview=FitV, linkcolor=blue, citecolor=blue, urlcolor=blue]{hyperref}
- \href{http://www.uoregon.edu/~koch/}{Koch homepage}
- \hyperlink{lemniscate}{Graph of Lemniscate}
- \hypertarget{lemniscate}{}
To navigate with these links, choose the new "text" tool and clink on the colored links.
- The preview window toolbar contains "Back" and "Forward" buttons so one can jump to a spot using a link, and then jump back.
- Hyperref.sty automatically adds links to citations, so readers can rapidly jump from a citation to
the corresponding bibliography entry. It automatically adds links to the table of contents so readers
can jump to the corresponding section.
- The hyperref package creates a document outline. For example, the main outline of a book is a list of chapters; each chapter entry contains a list of sections, and so forth. To see this outline and navigate through the document with it, use the new "drawer tool" to display the pdf window's drawer.
- The text tool can also be used to select a portion of text in the preview window and copy this selection to an editor. This differs from the "pdf selection tool" which copies a portion of the document as a pdf illustration --- the text tool copies editable text.
- Searching the pdf preview is supported. Use the search tools in the bottom half of
the window's drawer.
- PDFKit brings additional polish to the display of pdf documents. It supports documents with isolated rotated pages, and correctly prints rotated pages in landscape mode. It supports live update of window resizing if the magnification preference is set to "fit to window." It has better support for keyboard shortcuts: arrow keys, page up and page down keys, etc.
New Features in 2.00 and 1.37
The remaining new features are available in both new versions.
- Earlier versions of TeXShop allowed users to set the typesetting engine of a file, its
encoding, and its root file by adding appropriate comments to the top of the source file. For example,
the following commands set the typesetting engine to xelatex, the encoding to UTF-8 Unicode,
and the root file to ../Main.tex:
- %&xelatex
- %&encoding= UTF-8 Unicode
- %SourceDoc ../Main.tex
But this syntax was a mistake because the symbols "%&" are reserved for the use of TeX.
- In versions 1.37 and 2.00 of TeXShop, the syntax has been changed to the following:
- %!TEX TS-program = xelatex
- %!TEX encoding = UTF-8 Unicode
- %!TEX root = ../Main.tex
It you used the earlier facility, you need to change your old source files to the new syntax. I'm very sorry to cause this work, but the change is really necessary.
- If you are in the middle of a project and cannot make the change now, you can temporarily
set a hidden preference to revert to the old syntax. To do so, open Apple's Terminal program and
type
- defaults write TeXShop UseOldHeadingCommands YES
Once this is done, the new commands will be recognized but the old commands will also work. However, I recommend turning this preference off as soon as possible.
- Commands have been added to the default Macros menu which insert the symbols "%!TEX TS-program = "
and "%!TEX encoding = " and "%!TEX root = " into the source document; new users will see these entries. Users who are upgrading can easily add these symbols as well. To add the program entry, choose "Open Macro Editor" under the Macro menu. Click the "New Item" button, name the item "Program" and set its content to
- %!TEX TS-program = #INS#
Repeat for the "Encoding" and "Root" items.
- Martin Kerz added a "Check for Updates..." command to TeXShop. He also designed the new TeXShop web page. Thanks!
- OgreKit for searching has been upgraded to the latest 2.0.1 version.
- Additional filetypes can be edited, including files with extensions "abc", "bst", "bib", "lp", and "pdf". The addition of "pdf" allows TeXShop to be chosen as the default pdf viewer. A new pdf icon has been created so the system can use it on pdf files it will display in TeXShop.
- TeXShop has always had a "Revert To Saved" item under the File menu, but it has never worked! Sorry. This is fixed.
- David Reitter modified the selection code so if the user clicks on a control word like \gamma, the initial "\" symbol will also be chosen.
- A new preference item "Select on Activate" has been added. When this item is checked, a mouse click on the text window will select this window and also place the cursor at the spot that was clicked. If the item is not checked, the initial mouse click will only activate the window and a separate click is needed to position the cursor.
- New hidden preferences were added for users who change the default foreground and background colors of the editing window. These preferences set the color of the insertion point. Without these preferences, the insertion point could become invisible. To set the insertion point to white, for example,
- defaults write TeXShop insertionpoint_R 1.0
- defaults write TeXShop insertionpoint_G 1.0
- defaults write TeXShop insertionpoint_B 1.0
- When a file is typeset, all open changed files with the same root are first saved.
- Improvements were made in the pdfsync code.
- In previous versions, it was possible to add a Macro button to the Preview Window Toolbar in English, but not in other localizations. This is fixed thanks to Juan Luis Varona.
- New Japanese Help by Yoshihisa Okazaki with help from Seiji Zenitani.
- A proxy icon is now added to the title of the preview window. This icon can be dragged to the desktop or other folders to create a copy of the pdf file. The source window has always had a proxy icon. Thanks to Rene Donner for suggesting this feature and explaining how to implement it.
Richard Koch
Department of Mathematics
University of Oregon
Eugene, Oregon 97403
TeXShop