TeXShop Changes 3.44
Version 3.44 has the following changes
- Several users reported a crash just after typesetting when TeXShop ran on Yosemite. The users told me that only certain documents caused crashes, and under unusual circumstances. For instance,
some documents caused crashes if typeset twice in succession. By looking at crash logs, I could see that all these crashes occurred at the same spot in the code, but at first I was unable to reproduce these crashes.
Finally a user named Tim Leathart reported a crash, sent the source for a document creating the crash, and gave very precise instructions about producing the crash. Using this information, I was able to crash my machine and thus find the bug. It turned out that only documents using
hyperref crashed, and the crash was caused by incorrect code in TeXShop used to process the outline that such documents often contained. It was not necessary to open the Preview drawer and view the outline to get the crash.
The code is fixed.
- On Yosemite using a Preview window configured for "Single Page" or "Double Page" display,
the keyboard shortcuts to page up or page down were reversed. This bug was noticed by Yusuke Terada and fixed. There are no changes in "MultiPage" or "Double MultiPage" modes since Yosemite behaves correctly for these modes.
- Autosave for the Preview window was broken and is fixed.
- The next two items discuss hidden preferences to fix minor TeXShop annoyances. Before
adopting these hidden preferences, users should determine whether they find the current behavior annoying.
In Yosemite, the source code window's scroll controls have some elasticity, so the
source bounces slightly at the top and bottom of the document. Yusuke Terada noticed
that these bounces sometimes obscure the first or last lines of the document, making it
difficult to edit these lines. Others of us do not have this problem. Yusuke Terada added a hidden preferences to turn off this elasticity.
To activate the hidden item, type the following in /Applications/Utilities/Terminal:
-
defaults write TeXShop SourceScrollElasticity NO
- Herbert Schulz noticed that during scrolling of the source window, the lines numbers
scroll at a slightly different rate and require a fraction of a second to catch up. Yusuke Terada pointed
out that this is due to a fix implemented in Lion for a Lion bug affecting line numbers. Apparently this line number bug has
been fixed by Apple in Yosemite. A hidden preference is available to turn the fix off. When
this is done, line numbers and text scroll in unison except near the ends when source elasticity applies. By turning off source elasticity as well, the line numbers and text scroll together:
-
defaults write TeXShop FixLineNumberScroll NO
defaults write TeXShop SourceScrollElasticity NO
- One user discovered that "Aggressive Trash AUX", which is activated by a hidden
preference setting, could remove items in hidden ".git" directories and thus impact repository
management systems. In version 3.44, TeXShop does not search hidden directories in aggressive mode.
- Finally, a number of users switching to Yosemite reported fuzzy preview images
and inadequate antialiasing on certain monitors. I'm told the image looks fine on Retina
displays including the new 27 inch iMac. Perhaps Apple optimized pdf rasterization for these displays without worrying enough about other monitors.
Frankly, I am just barely able to notice a difference myself, using Apple's 27 inch Thunderbolt Display. A few users sent me email with pairs of png files, showing an image under Mavericks and under Yosemite and pointing out the fuzzy result on Yosemite, but in some of these cases I couldn't see the difference. So the problem seems to depend strongly on the computer screen used, and perhaps on user sensibilities. Some users may be completely happy while others are desperate for fixes.
Version 3.44 of TeXShop has several hidden preference items which may help with this problem. There is no universal solution, so experimentation with these preference settings will be needed
if you find the display fuzzy.
TeXShop and many other graphical front ends for TeX and PDF display use Apple's PDFKit and Cocoa frameworks. These frameworks rasterize pdf images are an extremely low level not accessible to programmers. Version 3.44 tries to expose all the routines in Cocoa which could modify this
rasterization. Notice that TeXWorks and Adobe Acrobat do not use PDFKit and Cocoa and thus behave differently. It does little good to call these programs to our attention since switching to a different pdf display library would betray a key feature of TeXShop (and other programs using these frameworks, namely that they are fully native applications.
With these caveats, let us list possible solutions. Yusuke Terada noticed that in Japan,
the display could appear fuzzy and then be made legible by tweeking the magnification. So he
added code in TeXShop to do this automatically each time a pdf file is opened or typeset. To turn this feature on, type the following in Terminal:
-
defaults write TeXShop FixPreviewBlur YES
If this tweek fixes the problem, leave it on and stop reading. Otherwise turn the feature
off by using the same command with YES replaced by NO, since the tweek is likely to interfere
with remaining experiments.
Apple's System Preferences in the General Pane has an item labeled "Use LCD font smoothing when available." A few users discovered that turning this item off cured fuzzy behavior. I think this
fix won't help most users, but it might be worth a try.
TeXShop also has a preference item under the Preview tab labeled "Smooth text and line art."
This item was originally added to fix a different problem. One user created an illustration with very thin lines. On a previous TeXShop, the lines vanished with regular monitors, although they appeared with the Retina display. The user discovered that the lines appeared in Acrobat, and
by turning on antialiasing they also appeared in TeXShop.
The code provided by Cocoa to turn on antialiasing has additional features not exposed in
previous versions of TeXShop. Cocoa provides the ability to set the level of antialiasing. The
previous "Smooth text and line art" preference set this value as "high".
In TeXShop 3.44, hidden preference settings can select the interpolation level. To test various levels of antialiasing, turn on "Smooth text and line art" in TeXShop Preferences and then
set the hidden preference
-
defaults write TeXShop InterpolationValue 3
where the final value can be any integer between 0 and 4. Apple's API documentation provides
the following names for these values, which perhaps give a hint of their function. The list is as follows; the strange reversal of 3 and 4 occurs in the official list:
-
0 = NSImageInterpolationDefault
1 = NSImageInterpolationNone
2 = NSImageInterpolationLow
4 = NSImageInterpolationMedium
3 = NSImageInterpolationHigh
Frankly, I suspect
an entirely different solution will be best for most people. That solution is to change the font used for your TeX document, via the wonderful macros written by Michael Sharpe and added to TeXShop
late this summer. For detailed explanation, read the description below under "TeXShop Changes 3.39."
Notice that it is possible to add Michael's commands for one particular font to your
default template, so that font will always be used for new documents.
All of these fonts are included in the full TeX Live distribution, so using them
should cause no trouble when collaborating with Windows or Linux users.
The font commands take up four or five lines in the preamble, and are easily discarded
once the document is complete if you want the final document to have a plain vanilla look.
On the other hand, Michael's choices come from an expert and may satisfy more readers
than the previous default font choices.
TeXShop Changes 3.43
Version 3.43 has the following changes
- Fixed a bug after drawing a selection rectangle in the Preview Window. If this
window became inactive and then was activated again, drawing into the
window would become erratic or worse. Now when the window is
deactivated, the selection rectangle is removed.
- TeXShop has a hidden preference reversing the order of the
source and preview windows in single-window mode
-
defaults write TeXShop SwitchSides YES
After selecting this preference setting, use "Customize Toolbar" with
the single window active to rearrange tools appropriately.
- Yusuke Terada fixed Automatic UTF-8-Mac to UTF-8 Conversion, which
is used mainly in Japan, so it correctly opens root file documents.
- Yusuke Terada also fixed a couple of cases when TeXShop commands
created a "ghost window" with no content, and made (command+1) switching
source window also work on console windows.
TeXShop Changes 3.42
Version 3.42 has the following changes
- In Split Full Window mode, additional toolbar tools are provided: the "Scale" tool, the
"Color Index" tool, and the "Key Bindings" tool.
-
Toolbar items for this window now have reasonable localized names, rather than
the very technical names in version 3.41.
- Various bugs in the Split Full Window mode are fixed.
- The Spanish localization temporarily changed to Chinese. This is
fixed.
- The Macro menu failed to work in Split Full Window mode if the user switched
to another window and then back to the split window. This bug is fixed.
- In Full Window mode, if the text portion was split, both the
Macro menu and the Sync between Preview and Source always used the same piece of text rather than switching when the other piece of text was made active. This is fixed.
- Yusuke Terada improved the new "Character Info" command
from 3.41. He writes
- National Flags:
An emoji character of a national flag consists of 2 unicode characters.
For example, 🇺🇸 consists of U+1F1FA (REGIONAL INDICATOR SYMBOL LETTER U)
and U+1F1F8 (REGIONAL INDICATOR SYMBOL LETTER S),
and 🇯🇵 consists of U+1F1EF (REGIONAL INDICATOR SYMBOL LETTER J) Â
and U+1F1F5 (REGIONAL INDICATOR SYMBOL LETTER P).
Thus, they should be displayed as "a letter consisting of 2 characters",
but it is displayed as "a letter consisting of 4 characters" in the current version of TeXShop.
This is because the regional indicator symbol letters are positioned
outside the BMP (Unicode Basic Multilingual Plane).
I fixed this issue so that these national flags are correctly displayed
as "a letter consisting of 2 characters".
- Support for Ideographic Variation Selector (IVS)
In Japan and China, some kanji characters have multiple variants.
For example, both 神 and ç¥žó „€ have the same meanings (they mean "God")
and the same readings. They are considered as variant forms of the same kanji.
IVS, Ideographic Variation Selector, is used in order to distinguish them.
For example, the single unicode character U+795E brings the output "神".
On the other hand, the sequence "U+795E U+E0100" brings the output "ç¥žó „€".
U+E0100 itself is not a letter. This is a variation selector.
In Unicode, there are variation selectors like this in U+FE00..U+FE0F (Variation Selectors),
U+E0100..U+E01EF (Variation Selectors Supplement),
U+180B..U+180D (Mongolian Free Variation Selectors).
In the current version of TeXShop, the character info of "ç¥žó „€" is
displayed as "a letter consisting of 3 characters".
I modified TSGlyphPopoverController.m for IVS support so that this is
displayed as "CJK UNIFIED IDEOGRAPH-795E (Variant)", like "RED APPLE (Emoji Style)".
TeXShop Changes 3.40 and 3.41
Version 3.40 was never released. Version 3.41 has the following changes
- When editing a document, it is possible to place the source view and preview view in a
single window rather than dealing with two windows for these views. This is particularly useful when using the "full screen" option, since the screen will contain both source and preview views.
To implement this feature, a number of minor changes were required throughout the TeXShop source code. The initial implementation is therefore rather conservative. At the moment, for instance, no Preference
item is provided to automatically open documents in this form.
If a document has both source and preview windows, activate the source window and then select the item "Use One
Window" in the Windows menu. The two windows will be replaced by a single window containing both views. With this window active, select "Use Separate Windows" to replace the single window
with a pair of windows.
The first time this happens, the single window will not have an appropriate size and position. Resize it appropriately. TeXShop will remember this size and position, but it is even better to
carefully select an optimal size and position, and then with the window active choose "Save Source Position" in the Source menu. TeXShop will use that size and position in the future.
A source window cannot be converted to single window form unless the corresponding preview window also exists.
If a project has a root view and additional chapter views, only the root view can be converted to single window form. Thus the new feature is not likely to be useful for projects divided in this way.
- In previous versions of TeXShop, duplicate copies of many documents in the Help menu were placed in the Localized directories of TeXShop, even though these documents had never been Localized. This duplication is cleaned up in version 3.41, reducing the size of the program by almost a third. The English versions of the documents will still appear when TeXShop is used in another language.
- Yusuke Terada provided a new menu item in the Edit menu called "Character Info." To use it,
select one or more letters in the source file and then select the menu item. If only one letter
is chosen, a balloon will appear showing a magnified version of the glyph, its full unicode name, and its unicode character. When glyphs require two or three characters, all required characters will be displayed.
If several letters are selected, the
balloon will list the number of characters, words, and lines in the selection, and show the unicode character for each glyph.
Below are sample balloons provided by this feature:
- Christian Icking discovered that TeXShop became inoperative or
crashed when opening a file containing
% !TEX root =
but with no non-space characters after the equal sign. This bug
is fixed.
- Typesetting for "Experiment" is more robust. It now uses the
Preference settings for pdflatex and simpdftex latex and the
personallatex setting. If the user's pulldown menu is set
to latex, the three choices of 1) pdflatex, 2) tex + dvi, 3) personal
script are obeyed. This should make the command work for
TeX in Japan.
- The commands Next Source Window and Previous Source Window
in the Window menu again work, and do not bring up "ghosts" of
closed windows.
- In the previous version, the Indent and Unindent commands were
modified to insert spaces rather than tabs in the source. A few users
preferred tabs. There is now a preference item for these users; they
should check "Use Tabs" in TeXShop Preferences, under the Source tab.
- The Preference command to select the source font
was broken when TeXShop was used in English, due to a missing connection
in the English Localization File. This is fixed.
- Yusuke Terada doubled the maximum magnification level allowed for PDF files,
so it is now possible to look at very small details of the preview output.
- Yusuke Terada provided new Preference settings under the Miscellaneous
tab for projects with a root file. When opening a chapter file, TeXShop previously
also opened the root file and then immediately miniaturized the root source. Users can choose to
avoid this miniaturization, or to avoid opening the root file at all. In the second case, the root
will open when needed, for instance during typesetting.
TeXShop Changes 3.39
- The most significant change in 3.39 is the addition of Michael Sharpe's "Recent TeX Fonts" document and associated font Macros. Michael and I attended the TeX User Group meeting in Portland, Oregon at the end of July, 2014. I knew him as an Applescript expert; several of his scripts are in TeXShop. Other macros from him will appear in a future version. To see his scripts, go to
https://dl.dropboxusercontent.com/u/3825336/TeX/index.html.
Pay particular attention to
macrocopier.zip on this location, a stand alone program which makes it easy to maintain and extend TeXShop macros.
At the TUG meeting, I discovered that Sharpe is a font expert widely known to users on other platforms.
TeX Live contains a very large number of TeX fonts, but it is not that easy to use them.
Most font sets don't have mathematical symbols, and it becomes a design task to find pleasing combinations of fonts for text, sans-serif sections, and mathematics.
Sharpe wrote a document called "Recent TeX Fonts", now available in the TeXShop Help menu. This document describes a number of pleasing font combinations, one per page. Each page lists the features of a set, provides an extensive sample of text and mathematics typeset using
it, and contains the exact LaTeX code needed to use the font set. These sets are the result
of extensive work by Sharpe; I understand that some of them took four months to perfect.
One way to use the document is to select an article or book written with standard fonts and copy Sharpe's implementation section into the document's header and retypeset.
To make this even easier, Sharpe slightly modified the LaTeX template which comes with TeXShop,
defining a section in the header bounded by %SetFonts comments. The space between two such comments can be empty when the document is originally written. Sharpe defined three
macros called "GetFontSet," "SaveFontSet," and "TestFontSet." The first of these brings up
a small dialog listing known font sets. When one is selected, its implementation code is written to the source document between the %SetFonts comments, replacing other implementation code there. So with one click and one typeset, the document can be seen written with a new set of fonts.
Users can also put their own implementation code between the %SetFonts comments.
The SaveFontSet macro reaches between the comments and saves the implementation code to a file in ~/Library/TeXShop/bin named "SetFonts", which is used by the GetFontSet macro to list known font combinations. Thus "SetFonts" gradually builds into a library of known font combinations.
I'll let the TestFontSet macro speak for itself.
To use these Sharpe additions, it is necessary to use the full TeX Live as installed by MacTeX,
because BasicTeX doesn't contain many fonts. All the font sets defined by Sharpe have been
tested and are available with TeX Live 2014, except two. The garamondx font has a license permitting free personal use provided the font is not sold. This font is on CTAN, but it cannot
be in TeX Live because TUG sells a DVD containing TeX Live. However, a script named getnonfreefonts is available to download and install this font. See
https://www.tug.org/fonts/getnonfreefonts/.
The "SetFonts" template also has a Lucida entry. Lucida is a commercial font, sold by TUG and others.
See https://www.tug.org/store/lucida/index.html.
Many users own this set, and Sharpe's detailed and non-trivial code to use them will help them obtain the most from the fonts.
It is our hope that the existence of these easy techniques will lead to more LaTeX documents that don't scream out "I was written with \TeX," and instead have a professional printed look.
- TeXShop has a new icon by Thiemo Gamma in Switzerland, designed for Yosemite. Gamma
also redesigned the dialog which appears when you select the menu item "About TeXShop".
The story of TeXShop icons is complicated. The original icon was designed by Jérôme Laurens.
Jérôme also designed the TeX Live Utility icon, and I like both a lot.
When the Retina display appeared, it was necessary to redraw the icon, but unfortunately source code for Jérôme's icon did not exist. Other users then contributed revised icons, which I didn't quite like. So I tried myself and discovered that making icons is really, really hard. Eventually William Adams managed to create a high resolution version of Jérôme's icon and I like it a lot. Adams also provided a document icon.
But Apple revised the look of icons in Yosemite. I intended to ignore the new design.
Then completely unexpectedly, Gamma sent a new icon. I think it is wonderful for a reason I'll explain in a moment. Gamma is extremely modest about it. When he learns how difficult it is for others to make icons and how much in demand good designers are, he'll have a happy life.
My goal for TeXShop has always been that it should vanish into the background, allowing writers to concentrate on the document they are writing without distraction. Sometimes this goal is met, and sometimes not. Gamma's icon is a symbol of this goal. It is simple and subdued, sitting there
in the background.
TeXShop still contains Adams' icon for documents. The source code also still contains his
program icon.
- TeXShop 3.38 has a significant bug, first discovered by James Crippen. When a source document is long and the preview window is active, clicking on the source window leads to a several second delay before the source window becomes active. This bug was caused by a single line of code, added to help a few users in Japan.
The bug is fixed in 3.39.
The line of code creating the bug was added for users who meet all of the following
conditions:
- They use Japanese input methods
- They customize the background and foreground colors of the source window
- They choose a dark color for the background
These users can activate the bad line and live with the bug by typing the following in Terminal
- defaults write TeXShop ResetSourceTextColorEachTime YES
- Herbert Shultz provided a new version of the Help document TeXShop Tips and Tricks,
and René Fritz provided a French translation.
- The Brazilian localization in TeXShop 3.38 was mistakenly added by Koch to the
localization for Portuguese in Portugal. This is fixed in 3.39.
- Will Robertson asked that the TeXShop "indent" command insert spaces rather than a tab.
This makes fine adjustments afterward easier. Version 3.39 gives Robertson his wish.
- Yusuke Terada provided fixes for a number of small problems in TeXShop:
- The color matching options for copying from the Preview window, set in TeXShop Preferences under the Copy tab, were broken in recent versions. This is fixed.
- The routine which selects an image from the Preview window has been improved.
- Toolbar tips for mouse actions in the Preview window have been added and localized.
- Yusuke Terada also fixed a more significant bug. If a particular font is set in TeXShop
Preferences, either by the user or by default, but that font is no longer in the system,
then TeXShop would refuse to run. This may explain some very obscure problems reported in the past. The bug is fixed.
TeXShop Changes 3.38
- If the option key is down when a source file is opened, the associated pdf file will not be opened.
- TeXShop is written in Cocoa, an object oriented framework inherited from NeXT. Object oriented programs
create a large number of objects dynamically during program operation. "Memory management" is the
task of disposing of these objects when they are no longer being used. If an object is disposed too soon,
the program crashes when another part of the program tries to use it. If an object is left dangling and not
disposed, memory gradually clogs up.
Recently Apple introduced "automatic reference counting", a technology which leaves the memory management task to the compiler, allowing the programmer to ignore it. TeXShop adopted this technology
in version 3.35, leading to increased stability and significantly fewer crashes.
In reference counting, each object keeps a reference number counting the number of parts of the program using it.
When a piece of the program is done with the object, that part sends the object a "release" message
and the object decreases its reference count by one. When the count reaches zero, the object is automatically removed from memory.
There is one situation which the compiler cannot handle automatically. Suppose object A is using object B and object B is using object A. Each object then has a reference count at least one, and usually higher if the objects are being used by other parts of the program. Suppose now that the rest of the program is done with the two objects. The objects are sent a number of "release" messages, until eventually each has reference count one. Since the count is not zero, object A does not go away, so it does not send a release message to object B.
Similarly ...
The solution of this problem is to manually introduce a "weak reference" from one object to the other. We give object A a reference to object B, but only give object B a weak reference to object A. A weak reference does not increase the reference count. Thus when all other objects are done with the pair, object A has reference count zero, but object B has reference count one. So object A is removed from memory, and just before that happens it sends a "release" to object B. Now object B has reference number zero, and it too is removed from memory.
TeXShop 3.38 completes the process of conversion to automatic reference counting, by correctly indicating weak references. Thus versions 3.35 through 3.37 could leave unused objects in memory, but 3.38 fixes that problem.
TeXShop Changes 3.37
- Added a preference setting for the Preview window: ``smooth text and line art.'' By default this is on.
The setting was requested by Tom Burke, who created an illustration using GeoGebra which
looked pixelated when displayed at small size in TeXShop. Mysteriously, the illustration looked fine under
the magnifying glass, or when printed. It also looked fine on a Retina display, but in that case the circles and
lines were very thin.
The same preference setting is provided by Apple's Preview and other programs. Users with a Retina display may wish to turn it off.
- Yusuke Terada added small changes for users in Japan. He wrote "during the time Hiragana is input until it is converted to Kanji, `undecided characters' are displayed, but the source text color is not applied and they are displayed in black. This behavior has been modified."
- A new item, "Experiment...", was added to the Edit menu and is available when the source window is active. This addition has been a recurring request of Wendy McKay. The item allows users to experiment with short, but complicated, fragments of TeX before copying the source into the main document.
When the item is chosen, a panel appears. Type a TeX fragment into the panel, say $$\sqrt{x^2 + y^2}$$. Push the Typeset button at the bottom of the panel, and a second panel appears showing the result of typesetting the fragment. The fragment can contain anything: a displayed formula, ordinary text, several pages of mixed material.
To typeset, TeXShop creates a new source file with the header of the current document up until "\begin{document}", the new fragment, and a final "\end{document}." This also works in a project with a root file. In that case the contents of the root file up until "\begin{document}" are used.
Both panels have close buttons. The "escape" key will also close panels when they are active.
Although the two panels do not have resize buttons, they can both be resized. TeXShop will remember
the new sizes and locations and use them the next time "Experiment..." is selected. The font in the source panel will be the default TeXShop source font. The keyboard shortcuts "command +" and "command -" work in the source panel to enlarge the text if desired. Key bindings and command completion are available in the source panel, but with one caveat. Command completion uses the tab key in the panel even if it uses the escape key for regular source, since the escape key in a panel closes the panel.
The "Experiment..." feature requires a latex-like engine. It will not work with ordinary plain tex. The
source panel's Typeset button looks at the main source window's toolbar to determine a typesetting engine.,
and also uses the "% $TEX engine = ..." mechanism if available at the top of the source window.
If "Plain TeX" or "Context" is selected, nothing happens. If "bibtex" or "make index" are chosen, pdflatex is used.
Obviousy "pdflatex, xelatex, and lualatex" can be used. The panel will try to use any user-defined engine selected, but some such engines may fail if they don't expect latex-like code or output pdf.
The preview panel understands mouse scroll commands and trackpad gesture commands to scroll and resize. It understands "command-shift +" and "command-shift -" to resize contents.
If you close a panel during work and later reopen it, the contents will be remembered. But the contents
are lost when quitting TeXShop. It is assumed that the panels will be used for short fragments of work; when
the user is satisfied, they will transfer the source to the main document using copy and paste. Panel
contents are not auto-saved and cannot be manually saved except via the copy mechanism.
Each document has its own source and preview panels, so if you have multiple documents open, you could also have multiple source and preview panels open, leading to a confusing mess. I expect users to exercise common sense and only experiment with one fragment at a time. One way to avoid confusion would be to hide the panels when a document becomes inactive. I didn't want to do that because a user constructing
a complicated example might want to temporarily open a second document and copy source from that
document into the panel as a starting point.
TeXShop Changes 3.36.2
- Fixed magnification on Yosemite
- Fixed sharing icon on source toolbar
- fixed two broken IB connections
- changed [NSApp delegate] to (TSAppDelegate *)[NSApp delegate] in two spots to make the code compile on XCode 6
TeXShop Changes 3.36.1
This version was released with version number 3.36.1 to test the operation of adding a final digit to the version number. In the future, this
will be used for "silent updates" in which a minor problem is fixed in the first hours of a release. In the past we did not change
the version number for such silent updates, but from now on we add a decimal digit to the end of the version in both the TeXShop home page and the program. We do
not update change documents for minors updates. Source files are always updated at the same time as the program, even for minor updates.
- The command-1 shortcut to switch from the Preview Window to the Source Window failed if the Preview Window was closed
and then reopened. This is fixed. Certain other keyboard shortcuts were also affected.
TeXShop Changes 3.36
This is a minor update to clear up issues in the important version 3.35 release. It has the following changes:
- The "remember and restore" operation has been improved to remember the position and size of both the Source and Preview windows
for all open files and restore them the next time TeXShop is restarted.
Recall that holding down the option key while quitting closes and forgets all
windows; in that case, TeXShop will restart with a clean slate. Similarly, holding down the shift key while restarting TeXShop
will restart with a clean slate.
It would be possible to remember other window positions: Console, Log File, etc. For the moment TeXShop does remember these
positions since the operation seemed more confusing than helpful.
- Herbert Schulz improve Command Completion by fixing bugs and controlling whether a forward or reverse search is done
during the operation.
- Fixed a bug for "Edit the Key Binding File." Closing this dialog and then bringing it up a second time produced a blank dialog window.
The bug was pointed out by Emerson Mello and is now fixed.
- The "Enter Fullscreen" menu item was not localized, but as soon as a source window opened, it switched to the user's language.
Now it is localized even when no file is open.
- Protected against a rare bug in which a Notification was sent to a closed Source Window.
- Attempted to make TeXShop Icon behavior more reliable by providing the extension of the Icon file in the Info.plist, by changing UTI types
belonging to com.tug to instead belong to org.tug, and by using Apple defined UTI's when available. The Apple mechanism linking icons with
particular applications continues to have problems in the open source world, where a particular file type
can be claimed by multiple applications.
TeXShop Changes 3.35
The step from TeXShop 2 to TeXShop 3 marked a significant boundary; version 3 has 64 bit code rather than 32 bit code and was compiled on Lion.
The step from TeXShop 3.26 to TeXShop 3.35 marks a second significant boundary; version 3.35 uses Automatic Reference Counting rather than
manual memory management and is compiled on Mavericks.
When Mavericks appeared a year ago, magnification code used in earlier TeXShop versions broke. It was replaced in 3.26 with code
which worked on Mavericks, but not on earlier systems. TeXShop 3.26 used the older magnification code on older systems.
Later versions of TeXShop were compiled on Mavericks. Then the new magnification code worked on earlier systems,
but the old magnification code broke. So TeXShop 3.35 uses the new magnification code on all systems. However, over the
last couple of weeks testers discovered that this code leads to obscure crashes on Lion, but not on Mountain Lion and higher.
Consequently, in version 3.35, both magnification in the Preview window and selection of rectangular regions in the Preview window
are disabled on Lion. Users of Lion should upgrade to Mountain Lion if at all possible, since these features will be active again. Users who cannot upgrade
should consider moving to version 3.26 because the two disabled features work with that version. But version 3.26 will not be
further upgraded and TeXShop Lion users will be stuck there in the same way that Snow Leopard users are stuck with TeXShop 2.
TeXShop 3.35 has the following additional changes:
- The OgreKit Find Panel was upgraded to the latest version by Yusuke Terada, and additional bugs in it were fixed. About the
changes, he wrote "This version is based on the latest OgreKit. The latest OgreKit adopts Onigumo as its regular expression engine instead of Oniguruma, which OgreKit used previously.
The development of Oniguruma is now stopped, and Onigumo is its fork version.
Ruby also used to adopt Oniguruma until Ruby 1.9, but it was replaced by Onigumo since Ruby 2.0.
By using Onigumo, new regular expressions like \K, \R, \X can be used.
" I built the latest OgreKit specialized for TeXShop. In order to solve the problems in which OS X replaced ordinary quotes with smart quotes, etc, I disabled the meddling functions by default:
- - Smart Copy/Paste
- - Smart Quotes
- - Smart Dashes
- - Smart Links
- - Automatic Data Detection
- - Automatic Text Replacement
- - Automatic Spelling Correction
"A message from Juan Luis Varona Malumbres said: Yusuke, please let to me to explain a small problem with the Ogrekit Find Panel in TeXShop:
The election Origin: Top/Cursor (in Spanish Origen: Principio/Cursor) works very well in English,
but not in Spanish: it always does a 'Cursor' search.
Can you fix it, please?
"I've fixed it today.
"I found another bug of OgreKit in Spanish environment.
When you select some range in TeX source and do 'replace all' with OgreKit Find Panel, the entire document is set to the replacement scope, even if you choose "Selection" as the scope of search.
This issue occurred only in the Spanish environment.
I've fixed this issue"
- Previous versions of TeXShop allowed paths with a tilde in the TeX Binary Path Setting Preference. For instance, this setting could be
"~/Library/TeX/texbin". But such paths caused problems in a small number of minor TeXShop features. A full audit of the TeXShop code was
performed and now such tilde's should always work in the setting.
- TeXShop now contains Michael Sharpe's GotoLabel Macro. Here is his description. "This is macro for TeXShop's Macro Menu,
allowing you to bring up a list of labels containing specified text, and move to the chosen label.
"To install, choose Macros/Open Macro Editor... (in the TeXShop main menus) and then from the Macros menu, choose Add Macros from File. This brings up a file selector with which you may select GotoLabel.plist. This install the macro in the Macro Menu, where you may move it to any convenient position, and, if you wish, give it a hot key.
"This provides an alternative to adding an item to TeXShop's tags by inserting a line %:tag_name in the source. With a lengthy document with many labels, it seems advantageous to be able to filter the list of labels."
- If you open the Edit Menu --> Spelling and Grammar panel, you can set the dictionary using
by the Spell Checker at the bottom of the Panel. TeXShop now remembers this choice, and will
automatically use it the next time the program is started.
Unfortunately another feature of TeXShop can interfere with this process, the optional "% !TEX spellcheck = " command at the top of a file.
I suspect that many users don't use the "% !TEX spellcheck" syntax. They will run into no problems.
If no files containing "% !TEX spellcheck" have been opened since TeXShop was opened, and the user chooses a different dictionary, then that different
dictionary will be remembered as the new TeXShop default dictionary.
But if the user chooses a different dictionary AFTER opening some files containing the "% !TEX spellcheck" line, then that
choice will not be remembered when TeXShop closes.
So if you do not use the "% !TEX spellcheck" syntax, you can change the default dictionary used by TeXShop
by opening the Spelling and Grammar panel and making the change. But if you sometimes use the "% !TEX spellcheck" syntax, the
foolproof way to change the default dictionary is to open TeXShop without opening files, change the dictionary with the Spelling
and Grammar panel, and quit.
TeXShop Changes 3.27 - 3.34
Versions 3.27 - 3.31 were never released. Versions 3.32 and 3.33 were only provided as experimental releases.
The most important feature of release 3.34 is that TeXShop's source code was revised to support ARC and the program was compiled using
Automatic Reference Counting. Thus memory management is now done by the compiler rather than by hand.
Version 3.34 has the following additional changes:
- A localization for Brazilian Portuguese is provided by Emerson Ribeiro de Mello.
- Spell checking now remembers a dictionary chosen in the "Show Spelling and Grammar" panel.
This makes it easier to use the CocoAspell package.
CocoAspell adds dictionaries to Apple's Spelling System which understand LaTeX and thus do not
claim that LaTeX commands are misspelled. Obtain the system at
http://cocoaspell.leuski.net/.
After installing, notice that an extra Spelling Preference Pane has been added
to Apple's System Preferences. Select a dictionary and turn on TeX/LaTeX filtering. Then either select this
dictionary in TeXShop"s "Show Spelling and Grammar" panel, or select it globally in the "Keyboard" pane of
Apple's System Preferences under the Text tab.
- In Mavericks, the code for selecting a region of the Preview file and the code for magnifying a region of
the Preview file broke. This was fixed in an earlier version of TeXShop by using the old code for Lion and
Mountain Lion, but using entirely new code for Mavericks. It appears, however, that the old code for Lion
and Mountain Lion did not work. Now the Mavericks code is used in all cases and works on Lion, Mountain
Lion, and Mavericks.
- Added Haskell literate script (lhs) as a type that TeXShop can edit, and that can be typeset and
syntax colored
- The Pythontex engine and documentation were slightly altered
- Rene Fritz provided a new French translation of TeXShop Tips & Tricks
- TeXShop now contains Latexmk 4.40
- TeXShop has a menu command to convert tiff illustrations
to png. This command uses "convert" if available, but otherwise uses Apple's "sips" program, which has been
part of OS X for a long time. Thus the removal of "convert" from MacTeX-2014 will not affect TeXShop.
- In Multipage mode, each typeset produced a small upward creep in the contents of the Preview
window for some users. This is slightly improved, though not yet completely fixed. fixed.
- In Single Page mode, typesetting produced a momentary flash in the Preview window showing the document's first page,
immediately replaced by the current page. This is fixed.
- New code by Dirk-Willem van Guik to set the "Job Title" for print jobs.
- The "Show Log File" command has been improved. When this window
is first opened, it shows the full log file. Twelve check boxes at the top set various queries to texloganalyser, a script in TeX Live which can
pull various pieces of information from the log file. The Redo button then displays this information. For instance, texloganalyser can display
all warniings, or all overfull boxes, or all fonts used in a document. Unchecking all boxes and pushing Redo again displays the full log file.
If "Show Log File" is selected while holding down the Command key, a dialog appears asking for an extension. If the user types the extension
"aux", then the window will display the aux file rather than the log file. Since texloganalyser only works on log files, checking boxes will then
have no effect.
- A new Preference item is provided: "Tags Menu in Menubar". When this item is selected, a duplicate of the Tags menu
will appear in the menubar. The new item allows advanced users to hide the Source window's toolbar: use command-T to typeset,
selected the appropriate engine using text at the top of the source, use the menu versions of the Macro and Tags menus,
and notice that "Split Window" is provided as a menu command in the Windows menu.
- New versions of the LilyPont and MetaPost engines are provided by Nicola Vitacolonna.
TeXShop Changes 3.26
3.26 has the following fixes:
- The combination of Preference Settings "Configure for External Editor" and "Automatic Preview Update" is now compatible with App Nap in Mavericks. Thanks to
Zhiming Wang for pointing out this problem and its connection to
App Nap.
In Mavericks, the Get Info panel for many applications has a check box
to turn off App Nap. TeXShop has no such box. The reason turns out to be
that TeXShop is compiled with XCode 5 on Mavericks, and Apple
assumes that applications compiled on Mavericks have been fixed
to deal with App Nap. TeXShop is now fixed in the approved manner.
-
Michael Sharpe wrote a beautiful document describing Applescript in
TeXShop and problems that might be encountered writing new
Applescript Macros. I have added that document to the Help Menu,
In addition, I added Michael to the list of TeXShop contributors, because
his web page contains a number of AppleScript corrections which I have
adopted in the Applescript Macros shipped with TeXShop.
- The following four Macros had problems with recent versions of OS X.
Fixed versions by Michael Sharpe and included in this release.
-
Open Quickly
Insert Reference
New Array
New Tabular
- There is a new arara engine by Alan Munn in ~/Library/TeXShop/Engines/Inactive/Arara.
The arara program is part of TeX Live 2013. Documentation for it is included in the
above folder. Roughly speaking, it is a replacement for both latexmk and parts of the TeXShop
engine mechanism.
- Small changes were made in the Japanese localization by Seiji Zenitani
TeXShop Changes 3.25
TeXShop 3.25 contains the following fixes:
- Version 3.24 contained a new version of Sparkle, but unfortunately not the
latest version. The version in 3.24 didn't have a Japanese localization. Terada Yusuke
found and compiled the latest version, now in 3.25.
- A few users report crashes when quitting TeXShop or closing a file. I was never
able to reproduce this crash. Terada Yusuke made a partial fix, so the number of such
crashes should diminish.
- The default preference settings for users in Japan have a small fix for Kpsetool.
- Some locations referred to the old TeXShop web url, http://www.uoregon.edu/~koch/texshop/texshop.html. These have been changed to the new url, http://pages.uoregon.edu/koch/texshop/texshop.html.
- In version 3.17, the old Search sync method broke when syncing from the Preview page
to the Source page. So it was disabled in version 3.18, and users were told to switch to the
modern SyncTeX method. This is still recommended. But the Search sync method is now fixed,
and will be used in those rare cases when SyncTeX does not find a match.
TeXShop Changes 3.24
There is only one change. The Sparkle upgrade mechanism in many previous versions of
the TeXShop 3 series does not work on Mavericks. This is fixed in 3.24.
TeXShop Changes 3.22 and 3.23
TeXShop 3.23 fixed one bug. In 3.22, if the user configured TeXShop to use an external editor
and then set the hidden preference ExternalEditorTypesetAtStart to YES, the program crashed when opening a file. This is fixed in 3.23.
Version 3.22 has the following changes:
- If the option key is pressed, the "Typeset" menu changes to "Trash Aux & Typeset".
Selecting it trashes aux and related files before typesetting. Recall that command-T is
a keyboard shortcut for "Typeset". Similarly option-command-T is a keyboard shortcut for
"Trash Aux & Typeset." This ingenious addition was suggested and made by Paul Smyth.
- There is a new engine for pythontex in ~/Library/TeXShop/Engines/Inactive.
This folder also has a README explaining how to install pythontex, and a tex source file from
the author of pythontex which can be used to test the engine and simultaneously see some of the features of pythontex in use.
- There is a new engine for Sage in ~/Library/TeXShop/Engines/Inactive/Sage. The method of
installing sagetex.sty in TeX Live explained in "About Sage" in the Sage directory has also changed. These changes was suggested by Daniel Grambihler and
improve the ease of use of Sage in TeX.
There were two basic problems with the previous method. First, the TeX file sagetex.sty
changed with the version of Sage and thus had to be reinstalled each time Sage was updated. Second, the engine file calls the Sage binary, which is inside the Sage program wrapper. But
the authors of Sage distribute the program with a name that includes the version number,
so the engine file had to be rewritten whenever Sage was updated.
Daniel Gramhihler recommended that we ask users to change the name of the program to "Sage"
whenever they update, and that we install a symbolic link to sagetex.tex in TeX Live rather than the actual style file. The result is that when Sage is updated, the engine file automatically finds the new binary and TeX Live automatically uses the new style file.
- TeXShop now opens and edits files of type fdd.
- There is a new hidden preference to set the line spacing in the source window:
-
defaults write TeXShop SourceInterlineSpace 1.0
Only values between .5 and 40.0 will be accepted. The standard line spacing is given
by the default 1.0, and double spacing is given by the value 10.0.
- Nicola Vitacolonna made extensive changes to the Italian localization of TeXShop.
Minor changes for other localizations were also made by their localizers.
TeXShop Changes 3.19, 3.20, 3.21
Versions 3.19 and 3.20 were never released.
Version 3.21 has the following changes:
- Three bugs appeared when running on OS X Mavericks: the magnifying
glass in the Preview window broke, rubber band selecting of a region of the Preview
window broke, and sharing the png of the selected region broke. All three are fixed. The code which runs on Mountain Lion and below remains
in place, so small changes in behavior will only be seen on Mavericks.
The magnifying glass has an interesting history. The original code used
an unusual call in Cocoa. It broke in Leopard. This code was replaced by tricky
code relying on another unusual Cocoa routine. This broke in Mavericks. The new Mavericks code
in 3.21 is straightforward, drawing in a temporary transparent overlay view for
both magnification and rubber banding.
- In Mountain Lion, sharing of a region of the Preview window provides a png of this
region. In Mavericks and above, it provides a pdf of the region, which can be resized without losing detail.
- For a long time we have recommended that users new to
TeXShop arrange the location and size of the Source and Preview windows on the desktop as desired. Most users prefer a side by side configuration with the Source window on the left and the Preview window on the right. Then activate the Source
window and in the Source menu select ``Save Source Position''. Similarly activate the Preview window and in the Preview menu select ``Save Preview Position''. From that point on, all
TeXShop source and preview windows will appear in the selected positions.
If you have a portable connected to a large monitor, this configuration works as long as you are attached to the monitor. But when you are traveling, the windows will appear on the screen of your portable, and probably not in ideal positions. TeXShop 3.21 has an extra configuration to fix this. Arrange a source and preview window on your portable screen in ideal position; the portable can be attached to the large monitor at the time. Then activate the source window and in the Source menu select ``Save Source Position for Portable''. Activate the preview window and in the Preview menu select ``Save Preview Position for Portable''. After this step, windows will appear in the desired position when you are connected to the large monitor at home or office, and windows will appear in the desired position on the portable screen when you are traveling.
It will do no harm to skip this portable configuration.
If you have multiple screens, Maverick has the ability to start applications on any screen. Thus it may be convenient to use the "portable" configuration for a second screen even if you do not have a portable.
- The following bug was pointed out by Simon C. Leemann. Until 3.21, double clicking on a blank space in the source window selected the space and the words on either side of the space. This is fixed and now only the space is selected.
- TeXShop allows users to select alternate engines on a file by file basis using the
syntax
- % !TEX TS-program =
TeXworks and other programs use the similar command
- % !TEX program =
TeXShop 3.21 now accepts this alternate syntax to specify an engine.
For compatibility reasons, the space between "%" and "!" is optional, but highly recommended.
- The next feature was requested by Alan Munn about a year ago. Apologies for the delay.
In the meantime, Mark Everitt wrote an ingenious script to provide this feature. The feature provided by that script is now built into TeXShop.
The command BibTeX in the TeXShop typeset menu runs BibTeX; notice that this command has a keyboard shortcut. In Japan, a different program is used instead, so Yusuke Terada provided
an item in TeXShop Preferences under the Engine tab to select the program to be run when this menu item is selected. Examples are bibtex, biber, pbibtex, etc. The Preferences item can also be used to add flags to the command.
In TeXShop 3.21, the BibTeX engine can be selected on a file-by-file basis using the syntax
- % !BIB TS-program =
The alternate syntax
- % !BIB program =
will also be accepted. The item after the equal sign gives the name of the program (for instance "biber") and any required flags. This line should be written within the first twenty lines of
a source file.
The "% !BIB TS-program = " line takes precedence. If it is absent, the Preference item determines which command is run.
- TeXShop 3.21 contains latexmk 4.37.
- The following bug was pointed out by Basil Grammaticos, and is fixed in TeXShop 3.21.
TeXShop has an AutoCompletion feature. If the user begins typing a phrase like
- \begin{
and then presses the escape key, TeXShop will complete the phrase. If there are several completions, TeXShop will cycle through the possibilities each time the escape key is pressed.
These completions are listed in a file which users can edit using the command "Edit Command Completion File" in the Source menu.
But if no completions are found, TeXShop reverts to a different autocompletion method which is build into Cocoa. This time, pressing the escape key opens a small window listing all possible completions. Click on one to complete the phrase. These completions come from the system dictionary.
The first kind of completion is likely to appear when typing a TeX construction, and the
second kind appears when typing an ordinary word or phrase.
Basil pointed out that in many programs, the second completion list begins with phrases which
already appear in the document. In earlier
versions of TeXShop, these nearby phrases were missing.
This bug was caused by adding Autocompletion to TeXShop too early. If no completion was
found, the code called the dictionary to provide an autocompletion list. Then Apple added
a similar call to TextEdit, which first finds nearby phrases and then asks the dictionary for further words. TeXShop now calls that TextEdit routine.
- TeXShop now has a hidden command to turn off AutoSaving:
- defaults write TeXShop AutoSaveEnabled NO
WARNING: This command will cause crashes on Lion, so it should only be used on Mountain Lion
and above. The TeXShop developers use AutoSave. If you turn off AutoSave, you are entering
untested waters.
- The Sage engine script was revised in TeXShop 3.21, and the Sage instruction document in
~/Library/Engines/Inactive/Sage was rewritten.
- Ulrich Bauer added a patch to TeXShop 3.17 for users working with a server. This patch
was supposed to be inactive unless AutoSave was on. But a mistake in the code caused it to be
used by a few people who didn't use AutoSave. This is fixed.
- Many users thanked us for Bauer's code, but it caused trouble for a few. There is a
hidden preference to turn to patch off:
- defaults write TeXShop WatchServer NO
- Finally, Yusuke Terada provided a number of changes for users in Japan.
- At the bottom of the TeXShop Preference window, a pull down menu labeled "Defaults"
offers to change all preferences to their default values. The first item in this menu is labeled "Regular" and is for most users. The remaining items are for users in Japan, who interact with TeX in a variety of unusual ways. It contains six new items to replace the original two legacy items.
- An earlier version of TeXShop contained an automatic UTF-8-Mac to UFT-8 Conversion.
But this routine converted some Japanese Kanji characters to different glyphs. This is
fixed by excluding certain characters from the conversion, as explained in the Unicode
Consortium Report https://unicode.org/reports/tr15/#Primary_Exclusion_List_Table.
TeXShop Changes 3.18
Version 3.18 has only a single change:
TeXShop contains an obsolete sync method called Search Sync, and a modern
replacement by Jerome Laurens called SyncTeX. In recent versions of TeXShop, the
obsolete Search Sync from the Preview Window to the Source Window randomly hangs,
making TeXShop unresponsive This was supposed to be fixed in version 3.17, but it
wasn't. Unfortunately, when the modern SyncTeX cannot find a match, it calls the old
Search Sync, so SyncTeX can indirectly hang as well.
It is silly to waste time on an obsolete method, so in TeXShop 3.18,
Search Sync from the Preview Window to the Source Window is disabled and does nothing.
Most users will notice no change. Users who misconfigured SyncTeX will lose synchronization.
Users should check that
TeXShop Changes 3.17
Version 3.17 has the following features:
- In 3.15, we introduced a hidden default to fix the rendering of the Monoco font
when used in the source window on Mountain Lion.
-
defaults write TeXShop NSFontDefaultScreenFontSubstitutionEnabled -bool YES
This fix does not alter the display of the Monoco font when used in the log window or the console. Another hidden preference can fix Monoco in these windows. This preference causes TeXShop to call the font routine [font screenFontWithRenderingMode:NSFontDefaultRenderingMode] and pass the resulting font to an AppKit object, although Apple's documentation says not to do this. So the new hidden preference should only be used if you cannot tolerate the Monoco font's default rendering.
-
defaults write TeXShop ScreenFontForLogAndConsole -bool YES
- The spotlight indexer has not been distributed with the version 3 series
of TeXShop. Now it is again included. This indexer was written by Norm Gail
with additions by Max Horn. It was recently revised by Adam Maxwell.
-
Choosing the "Source <=> Preview" menu item in External
Editor Mode caused a crash. This is fixed.
- The previous version of TeXShop introduced an improved version of latexmk. TeXShop
contains two latexmk engines which are active by default: pdflatexmk.engine and sepdflatexmk.engine. The "About This Release" item in TeXShop 3.17's Help Menu explains
how to update these engines.
- A fix in version 3.16 replaced a deprecated method in the
"Search sync" routine with a modern equivalent. Unfortunately, this
fix had a bug which could crash TeXShop.
Most users use the SyncTeX method to sync. But when this method
fails to find a reasonable match, TeXShop reverts to the old Search Sync method,
and thus could crash the program. The old Search sync method is now fixed.
If by chance there are still problems with Search sync, a hidden TeXShop preference
can turn off reverting to it when SyncTeX fails to find a match:
-
defaults write TeXShop SyncTeXOnly YES
TeXShop Changes 3.16
Version 3.16 has the following features:
TeXShop Changes 3.15
Version 3.15 has the following features:
- The default editing font has been changed to Menlo 12, which Apple now recommends
as a fixed width font. This will not affect old users, whose original preference setting remains.
Some users have chosen Monoco 9 or 10 as an editing font. This font may look somewhat fuzzy
on Mountain Lion because Apple has optimized the text and font rendering routines for the Retina display.
To get back to the old behavior, type the following command in Terminal. This is not recommended
unless you are unhappy with the appearance of text in the edit window.
-
defaults write TeXShop NSFontDefaultScreenFontSubstitutionEnabled -bool YES
- TeXShop 3.14 began the process of switching from Apple's old style indication of document types
in the TeXShop Info.plist to the new style using Universal Type Identifiers (UTI). The process is complete in TeXShop 3.15. The change involved
extensively rewriting the Info.plist file, and replacing depcrecated Cocoa file commands with modern
equivalents. The change may improve
system acceptance of the new high resolution icons by William Adams, but I still expect trouble
and recommend the techniques outlined in the description of 3.14 to fix them.
- There are a few Japanese localization changes and a code fix by Yusuke Terada.
Thanks.
- Small glitches have been reported when using magnification in the preview window. These
glitches have been fixed. In case of remaining trouble, please give concrete details explaining
how to reproduce the problem.
- The default encoding in TeXShop has been changed from MacOSRoman to ISOLatin9. This will
not affect old users except at one minor spot.
To understand the change, recall a few encoding basics.
A computer file is just a long sequence of bytes, each an integer between 0 and 255.
Other data, including picture data and sound data, is encoded in this form when written to disk. The majority of computer files contain ordinary text.. Text was originally encoded in Ascii format, which assigns
a byte to each key on an American typewriter; Ascii only uses the first 127 bytes, so the bytes from 128 to 255 are available for other purposes. The Ascii encoding
was later extended for use in Europe and elsewhere by adding accents, umlauts, and other characters to
the upper 128 vacent spots. Many such encodings were invented, and a number of them are available in
TeXShop. ISO Latin 9 is such an encoding. It encodes ascii characters in the first 128 positions, and
all symbols commonly used in Western Europe in the upper 128 positions. ISO Latin 9 is essentially the same
as the earlier ISO Latin 1, except that it includes the Euro currency symbol.
Eventually, the computer industry invented Unicode, which is theoretically capable of handling
the symbols used in all of the world's languages.
Internally, TeXShop and other Mac OS X programs represent and process text in Unicode. There is no standard
Unicode encoding for writing to disk, so all Apple routines which read text from disk or write text
to disk require an extra parameter listing the encoding to be used.
A commonly used encoding for Unicode is UTF-8. It has the advantage
that ordinary ascii files are legal UTF-8 files. The disadvantage of UTF-8 is that random
collections of bytes may do not contain legal UTF-8 code, so when the computer tries to open a file
in UTF-8 which was written in another encoding, the computer sees garbage and returns nil. Encodings which
extend ascii by adding symbols to the upper 128 places do not have this problem; if a file written
with one such encoding is opened with a different encoding, the computer will not complain, but some
symbols may appear with unexpected shapes.
TeXShop must deal with this design in two spots. When TeXShop is asked to open a file, it reads
the first few bytes in MacOSRoman to check whether a "ng and now
opens it in ISOLatin9.
Some users have requested that TeXShop's default encoding be UTF-8. Users can achieve this
result by simply switching the default encoding to UTF-8 in TeXShop Preferences. UTF-8 is not the
current default because I believe that many users have old files which were written with Ascii or
some other earlier encoding. If these files contain straight ascii, they work fine as UTF-8 files.
But if by chance a stray non-ascii character was entered by mistake, then users will see a mysterious
dialog panic when TeXShop reports that the file cannot open in UTF-8.
- In version 3.14 the command "Edit Command Completion File" did not display the file to be
edited. Now it does again.
- When displaying the Preview Page in fullscreen mode, users can mouse to the top of the screen
and select menu options to change the Page Style and ResizeOption. In version 3.15, these new
choices are remembered in TeXShop Preferences, and thus will be used again even if TeXShop quits between
sessions.
- TeXShop 3.15 contains a patch by Ulrich Bauer for file handling. This patch will be
important for users working with version control or with a server which might change the source
while it is being edited in TeXShop. For instance, one such user report stated "we are several authors on a paper and we use svn to keep the versions coordinated. If I have a version of the file in the editor and perform an svn update in the terminal, the file changes on disk. However, if I save or typeset, the local version in the editor gets saved and I get no conflict warnings!" With Bauer's patch, "an open document is
monitored for external changes to the file, and updated automatically if an external change
occurs." Thanks very much to Ulrich Bauer for this important change.
TeXShop Changes 3.12 - 3.14
Versions 3.12 and 3.13 were never released. Some users downloaded beta copies
of 3.12 to fix 3.11 bugs. Version 3.14 has the following features:
- New high resolution icons are provided for TeXShop itself, and for .tex and .pdf files.
The icons are by William Adams.
The original TeXShop icons were made by Jerome Laurens; I like them. With the
introduction of the Retina display, high resolution icons became essential. A few users
sent me samples which I claimed I'd use. But the new icons were not easily recognizable
on the screen.
So I tried to create my own icons,, and some users will have versions of
TeXShop with these icons. This lesson taught me that I am incapable of
creating icons.
Finally William Adams agreed to create icons closely following Jerome's original idea.
I'm very happy with the result. The TeXShop icon itself has changed only a little. For TeX files,
Adams was able to build on and improve Jerome's icons using high resolution techniques.
Thanks, William; having tried, I know it wasn't easy. And thanks Jerome for the original idea.
TeXShop has received small tweaks in hopes that OS X will pick up the icons, but it may
be necessary to provide some help. Moving TeXShop into the /Applications/TeX folder will
help the system notice the icons. Then select a .tex file, and click "Get Info" in the Finder.
Go down to the "Open with" section and select TeXShop Then press the "Change All" button.
In one case on my system, a TeX source file was displayed in the Finder with an incorrect icon and no ".tex" extension. Adding
that extension caused the Finder to associate the correct icon.
<
- On Mountain Lion, sharing support has been added. New sharing items are available for both
the source window toolbar and the Preview window toolbar. It may be necessary to execute the
menu command "Customize Toolbar" to obtain them.
If text is selected in the Source window when the Sharing item is pressed, the program will offer to
share the selection. If no text is selected, the program will offer to share the entire source document.
Similarly when a piece of text and/or illustration is selected in the Preview window, the
program will offer to share the resulting graphic fragment. If there is no selection, the program will
offer to share the entire pdf output file.
Only appropriate sharing venues will appear, depending on the selection. For instance, it does
not make sense to post an entire pdf document to Facebook. In all cases, the program will share
to Email, Messages, or AirDrop. Depending on the selection, it will also share to Facebook, Twitter,
Flickr, and other venues. Note that some services must be activated in Apple's System Preferences
before sharing can take place.
- On Mountain Lion, TeXShop opened an empty window when the user tried to use the program with
an external editor, and also when the user opened a pdf, png, jpg, or eps file. This is fixed.
- On Lion and Mountain Lion, selecting a region of the Preview left garbage lines
on the screen as the mouse moved. This bug is mostly fixed.
- Latex make is upgraded to version 4.35. A new engine, sepdflatexmk, is available in the
Inactive/LaTeXmk folder. This engine calls pdflatex with the --shell-escape flag, for users who
need packages which call external programs during typesetting.
- Yusuke Terada fixed two bugs in 3.11. First, the encoding popup button was ignored in the open
dialog; this is fixed. Second, problems in CommentOrIntentForTag were found and fixed.
- There is now a Preference interface to change the source text color. A preference to change
the source background color was present in earlier versions.
- There are new metafun and metapost engines by Nicola Vitacolonna.
TeXShop Changes 3.11
TeXShop Changes 3.10
- The "--shell-escape'' flag has been removed from preference settings for pdftex and pdflatex. This flag
presented security risks. Old users need to activate the
change by selecting TeXShop Preferences, clicking the Engine tab, and pushing the "Default" buttons in
the configuration section for pdfTeX and pdfLaTeX.
Recall that pdflatex can accept illustrations in several different formats, including pdf, jpg, and png. But
it cannot accept eps illustrations used by many old TeX documents. The epstopdf package
solved this problem by calling Ghostscript to convert eps files to pdf format automatically during typesetting.
This package required --shell-escape and that is why previous versions of TeXShop set the flag.
Two years ago, TeXLive made conversion of eps files to pdf format easier and safer by introducing a restricted
shell escape mode for pdflatex in which only a limited number of safe programs can be called during typesetting.
This conversion was made automatic without including epstopdf, provided the graphicx package was included
by the source document.
We could have dropped the --shell-escape flag at that time, but there was another reason to continue
using it. Originally, pdflatex accepted tif and tiff files. Eventually this feature was removed, but it was possible to
convert these files to png format during typesetting using /usr/local/convert from ImageMagick. Unfortunately,
TeX Live does not label convert as safe because in the Windows world there is an unrelated program which
presents security risks. TeXShop 3.10 solves this problem by introducing a new method to convert tif and tiff
files to png format.
- TeXShop 3.10 has a menu command "Convert Tiff" which is active when a source window
is active. This command opens a dialog which shows all tiff files in the folder containing the
source file. Users can choose one tiff file or several. Push the "Convert" button to
create png forms of all such illustrations. This calls convert from ImageMagick if present, and otherwise
calls the native sips program.
- A new Latex Template is provided to reflect these changes. Old users can obtain this template
by moving it from ~/Library/TeXShop/New/Templates to ~/Library/TeXShop/Templates.
- TeXShop 3.10 omits the Create Project Root menu item. Use the alternate "% !TEX root = "
syntax instead. Old projects using Create Project Root will continue to typeset.
TeXShop Changes 3.09
- When a pdf document is printed, TeXShop now selects Portrait or Landscape mode
automatically. Moreover, "orientation selection buttons" have been added to the Print Panel,
so the user can change the orientation if the auto selection
mechanism fails. A "scale selection" was also added,
so the user can rescale the document before printing.
- These printing changes also apply when printing TeX source. "Orientation selection buttons"
and "scale selection" were added to the Print Panel.
- The split window command for the Preview window has been improved. The second
portion now opens on the section of the document shown in the top portion rather than the top of the
document. It has the same magnification as the top section of the window. Finally
the magnification toolbar button is now in sync with magnification in appropriate
sections of the split window.
- In the German localization, menu
items to set the PDF display mode were mislabeled, and check
marks in this menu didn't work. Both problems are fixed.
- Herb Schulz fixed a bug in Command Completion. When multiple
windows were open, command completion in one window could interfere with command completion
in another window. This problem is fixed.
TeXShop Changes 3.08
- Fixed a bug when double clicking on a left brace. This click again selects the text between this
brace and its matching right brace.
- "TeXShop Tips & Tricks" is updated slightly.
TeXShop Changes 3.07
- TeXShop is now signed, as required in Mountain Lion. See the Gatekeeper
documentation at http://www.apple.com/macosx/mountain-lion/features.html#gatekeeper.
- The "Sparkle" update mechanism now works with versions of TeXShop in the
Lion series, 3.00 and higher.
- Herb Schulz' "TeXShop Tips & Tricks" was updated to version 0.5.3
- LatexMk was updated to version 4.31. This version of Latexmk
creates a file list named "file.fls", which helps latexmk keep
track of all file dependencies. The TrashAUX command has been
extended to remove files with this extension.
- pdflatexmk is now one of the default engines. Only new users will
notice this change.
- TeXShop now creates a ~/Library/TeXShop/Documents folder containing
important documents. Currently many are duplicated from elsewhere in
~/Library/TeXShop, but this will be the spot to look in the future.
- New TeXShop releases will automatically update the Documents folder, just
as they now automatically update
bin, Engines/inactive, and scripts.
- In the German localization, there was a bug in the Preview Preferences
for "Default page style." The buttons for
"Double Sided" and "Single Sided, Continuous" were reversed,
so they didn't do what they claimed to do. This is fixed.
- TeXShop contains the latest customized OgreKit by Yusuke Terada. As in TeXShop
3.06, this pane uses the same font as TeXShop source windows. Moreover,
syntax coloring, parenthesis match highlighting, command completion, showing invisible characters and so on
work in the OgreKit Panel. However,
KeyBinding (AutoCompletion) is disabled in this OgreKit, as requested by
a number of users in the TeX on OS X mailing list.
- Yusuke Terada also made the following changes:
- Double clicking on one of the end characters of a
"<" ... ">" pair selects both ends and all characters in between.
- If the hidden preference MakeatletterEnabled is YES,
selection of sequences containing '@' by double-clicking is supported.
An example is " \@latex@error"
- A small number of crashes were isolated and repaired
- "Show Full Path" is improved on Lion, if chosen by the
user in an optional tool bar item for the source window
- As before, if text is selected and the "comment" item
is chosen, the entire paragraph containing the selection is
commented out. But now the text selection is preserved. This also
works with the "indent" command.
- When the source window was active and split and a file was drag-and-dropped
to the bottom view, the action did not work. Now it does.
- AppleScript macros are now saved with UTF8 encoding, so scripts
can be written containing Japanese and other languages. This required
a small modification in the "ScriptRunner" program which runs scripts
which start with --applescript rather than --applescript direct.
TeXShop Changes 3.06
The changes in 3.06 are by Yusuke Terada.
- On Lion, the hidden setting SourceWindowAlpha sometimes does not work.
Especially, on opening source files which contain "TEX root =", SourceWindowAlpha is always ignored.
To fix this issue, I added a method "setAlpha:" into TSTextEditorWindow.m and modified "initWIthContentRect:".
- On Lion, if you open a source file which contains "TEX root = foobar.tex" but foobar.tex does not exist, the window of foobar.tex is newly created.
(On SnowLeopard, an error dialog was displayed in such a situation.)
I modified a single line of TSDocument-RootFile.m to fix this issue.
- I modified TSDocument-Jobs.m in order to allow the BibTeX engine setting to have options.
In addition, Terada improved OgreKit 2.1.4 to make it more useful.
-
New OgreKit Find Panel uses the same font as TeXShop source windows.
Syntax coloring, paren match highlighting, showing invisible characters and so on work also in OgreKit Find Panel.
Auto Completion(Key Binding) and Command Completion also work.
The settings of each function (on/off, its color) follow those of TeXShop.
- When regular expressions are enabled, the background color in the panel changes.
- Previously, when you open TeXShop source windows in different spaces, pressing Command+F caused switching spaces.
By using the new OgreKit.framework, OgreKit Find Panel always appears in the current space.
- Previously, after using "Replace All" of OgreKit Find Panel, the colors of all characters in TeXShop source window were changed to black.
In the new OgreKit.framework, this issue is fixed by sending "NeedsForRecolorNotification" to NotificationCenter after using "Replace All".
TeXShop Changes 3.05
- Before TeXShop typesets, it saves the source document. To do that,
TeXShop calls the routine used by the "Save" menu. When AutoSave is activated, this menu item is renamed "Save A Version"
and creates a new version of the document visible with the "Browse All Versions..." command.
Users of TeXShop 3.01 who routinely typeset often obtained a enormous number of versions, making the
"Browse All Versions..." command clumsy to use.
TeXShop 3.05 contains significant patches by Ulrich Bauer which fix this problem. TeXShop now saves changes
before typesetting, but without creating new versions. This is in line with the design of AutoSave in Lion, which
saves changes every few minutes but creates new Versions much less frequently. Roughly speaking, Bauer's patches
call autosaveDocumentWithDelegate rather than saveDocumentWithDelegate when the autosave call is appropriate.
- The program has a patch to TeXShop's syntax coloring routine by Daniel Toundykov. When this
routine was made faster and more reliable in TeXShop 2.10, the modification broke the ability to
change the background and foreground colors in TeXShop's source window. Toundykov's patch fixes
this problem.
To change the source background color's Red component
- defaults write TeXShop background_R 0.25
Set background_G and background_B to change the corresponding Green and Blue components.
To change the source foregrounds color's Red component
- defaults write TeXShop foreground_R 0.25
Set foreground_G and foreground_B to change the corresponding Green and Blue components.
To change the insertion point color's Red component
- defaults write TeXShop insertionpoint_R 0.25
Set insertionpoint_G and insertionpoint_B to change the corresponding Green and Blue components.
- The folder ~/Library/TeXShop/CommandCompletion now contains a subfolder named
GratzerMathCC with an expanded list of command completions. These new completions are
by George Gratzer, and are useful when typesetting
mathematics. The folder also has a pdf file documenting the additions.
To activate the new completions, drag CommandCompletion.txt from the GratzerMathCC folder to the main
CommandCompletion folder, replacing the existing CommandCompletion.txt there.
TeXShop Changes 3.04
- Auto Save is automatically activated in TeXShop 3.04. The Preference item to turn it on or off has been removed. Users who intensely dislike
Auto Save can switch to an older version of TeXShop.
The main reason for the change is that there is a serious bug in TeXShop when Auto Save is off. Without Auto Save, opening a graphic file
e.g., a jpg, pdf, png, tiff, or eps file,
also opens a blank source file with the same title. This also occurs when opening a document for an external editor, or opening a dvi file. This
problem does not occur when Auto Save is on. Thanks to Di Xiao for tracing this bug to Auto Save.
Notice that Apple programs like TextEdit also automatically activate Auto Save on Lion.
A hidden preference is provided to turn Auto Save off, but using this preference is strongly discouraged. As explained above, it creates
significant bugs when opening files with no source window, like jpg, tiff, pdf, png, eps, and dvi files, or when using TeXShop with an external editor. The hidden
preference is
-
defaults write TeXShop AutoSaveEnabled NO
- Version 3.04 contains a fix for "Show Full Path" in Lion, by Yusuke Terada.
- Added "md" to the file types TeXShop can edit, and typesetting engines can process. Such "markdown" files can be processed by pandoc
and converted to latex, epub, and pdf. See http://johnmacfarlane.net/pandoc/
- The German localization has a different key equivalent for the menu command which enlarges the font in the source document.
- When the Preference Item for Arabic, Hebrew, and Persian is activated, lines containing one of these languages are right justified.
The new rule is that a line is right justified if its first, second, or third letter is in one of these languages. For instance, this rule right justifies
a line beginning with "\" containing Persian letters, but does not right justify the command "\section{ ... }" even if the section title is in Persian.
- There is a hidden preference to change this behavior. If the following command is entered in Terminal, a line containing any characters
in Arabic, Hebrew, or Persian will be right justified:
-
defaults write TeXShop RightJustifyIfAny YES
- When the Preview window is taken full screen, it switches into double page mode. The user, however, can switch it into single page mode
using a menu command. This is useful when displaying Beamer documents. If the window is taken out of full screen mode, and later back into it,
the display mode change made by the user will be remembered. TeXShop now remembers the mode change if it is made using a contextual
menu rather than a menu in the menu bar. Thanks to David Poole for pointing out this bug.
TeXShop Changes 3.03
- Choosing the "Print ..." menu with the source window open started a print job
which understood "Page Setup" changes. Choosing the same menu with the preview
window open started a print job that ignored "Page Setup." The print dialogs for these
two operations were different: one was a standalone dialog and one was a drop-down
dialog in a window. Both dialogs might be open at once on the screen. This problem is fixed.
- The hidden preference
-
defaults write TeXShop TagSections NO
turned off all tags, rather than just tags for sections and subsections. This is fixed.
TeXShop Changes 3.02
- The program is again called "TeXShop" rather than "TeXShop-64". Renaming the
program was a mistake because it broke several Applescript macros.
TeXShop's Sparkle upgrade mechanism still upgrades within the 2.** series
and within the 3.** series, but not from one series to the other. A major reason for
renaming the program was to obtain this result, but it turns out that renaming is not necessary
for it.
Note that MacTeX-2011 contains TeXShop 2.43. If you put TeXShop 3.02 in /Applications/TeX
and later upgrade to MacTeX-2011, the program will be downgraded to TeXShop 2.43. If you haven't
yet upgraded, it might be best to put TeXShop 3.02 in /Applications.
- In TeXShop 3.00 and 3.01, line numbers do not scroll when using overlay scrollers.
They do scroll with legacy scrollers.
If the source window is split, the top portion scrolls with overlay scrollers.
Debugging experiments show that this is a Lion bug. We can reproduce it with a small
15 line program.
TeXShop 3.02 has an ingenious patch by Yusuke Terada to temporarily fix the
problem. TeXShop has a hidden preference to turn this on; by default it is on. To
turn the fix off
-
defaults write TeXShop FixLineNumberScroll NO
We hope that ultimately Apple will fix the bug. When they do, the patch
will be turned off automatically.
- Automatic tagging of "% \chapter" in docstrip didn't work. Now it does.
- All three "Find" methods --- OgreKit, Find Panel, Find Bar work for both the source and log
windows. The OgreKit method also works for the console window, but (at least temporarily) the
other methods don't.
TeXShop Changes 3.00 and 3.01
- See the Lion section of TeXShop Help for changes in TeXShop-64 version 3.00.
TeXShop Changes 2.42 and 2.43
- The only change in TeXShop 2.43 is a hidden file in ~/Library/TeXShop/New, which was not updated for version 2.42.
As a result, users did not get the changed ConTeXt engines in ~Library/TeXShop/Engines/Inactive. They will get them
in version 2.43.
- The main change in TeXShop 2.42 is in the code to process SyncTeX. The new code is required for TeX Live 2011,
and works with earlier TeX distributions as well.
Users will notice the change when they sync from source to preview. The selected portion in the Preview window is
hilighted in yellow rather than circled in red. Moreover, a larger portion is hilighted. Users may wish for the
more precise synchronization in older versions of TeXShop. The new code, however, is faster and much more stable; using this foundation, more precise
syncing will be possible in future versions of TeXShop.
If SyncTeX cannot find a match, TeXShop defaults to the earlier search synchronization method. This method still
circles matching portions in red. So red circles rather than yellow selections indicate that SyncTeX could not find a match.
- Tags have been extended slightly to deal with docstrip documents. Thus the tags menu now recognizes
- % \chapter
- % \section
- % \subsection
- % \begin{macro}
- % \begin{environment}
- Both the log file and the console are shown using the document's encoding rather than MacRoman encoding.
The primary advantage of this change is that users with Unicode source files will see unicode characters written correctly
in the log and console output.
- TeXShop 2.42 contains latexmk 4.24.
TeXShop Changes 2.41
- The old Auto Completion facility in TeXShop has been given a more understandable name: Key Bindings.
All features remain the same. Internally in code, the feature is still called "AutoCompletion", but interface
elements have been changed to the new name.
- The facilities Key Bindings and Command Completion have been made more prominent
in the interface. The Source menu has a new "Key Bindings" menu and the "Command" menu
just below it has been renamed "Command Completion". Both of these items have submenus. The
Key Bindings menu has submenus
- Toggle On/Off
- Edit Key Bindings File...
and the Command Completion menu has submenus
- Add Word
- Marks
- Edit Command Completion File...
The commands in the Command Completion menu were present in earlier versions and have been rearranged
so make the two facilities parallel. The Edit Key Bindings File... item is new, bringing up a new editor
by Yusuke Terada. Thus users no longer need edit a configuration file in ~/Library/TeXShop.
The "Toggle On/Off" item turns key bindings on or off on a file by file basis, duplicating functionality previously provided by an optional toolbar source item. The old Preference
Panel item turning Key Bindings on or off remains, setting the default when files are first open.
- A new "Close Current Environment" item in the Source Menu closes the open environment nearest the cursor. This feature will remain
in future versions of TeXShop, but it is likely that the menu will disappear in the future and users will access the feature using an item in Key Bindings, Auto Completion, or Macros,
because these facilities already have short commands which insert text into the source code.
- The default values for "pdfTeX" and "TeX and DVI" under the Engine tab in the Preference dialog have become too long to be shown in the
dialog. So instead, button are provided which insert these default values into the appropriate fields. After doing that, the values in the fields can
be edited, of course.
- If a portion of the source code is selected and then the Statistics panel is opened, the panel shows statistics for that selection, rather than statistics for the entire source file.
- TeXShop 2.41 contains latexmk 4.23a.
TeXShop Changes 2.40
TeXShop 2.40 fixes a small number of minor bugs.
- When working with a project containing a root file, windows would sometimes move as new chapter source
files were opened. This is fixed.
- TeXShop has a hidden preference, "RedConsoleAfterError", which colors console output red after an
error occurs in the source. This preference stopped working several versions ago. It again works.
- A few users disliked the temporary red color of parentheses in the new parenthesis matching code,
but didn't want to turn parenthesis matching completely off because they wanted the matching parenthesis
to blink. These users can now change the temporary parenthesis color in the Preference Panel.
- Hidden preference items were added to change all of the colors used in the new 2.38 additions by
Yusude Terada: the temporary parenthesis color (default is magenta), the highlight color for text between matching parentheses (default is yellow),
and the color of invisible characters when shown (default is orange).
- defaults write TeXShop highlightBracesRed 1.00
- defaults write TeXShop highlightBracesGreen 0.00
- defaults write TeXShop highlightBracesBlue 1.00
- defaults write TeXShop highlightContentRed 1.00
- defaults write TeXShop highlightContentGreen 1.00
- defaults write TeXShop highlightContentBlue 0.00
- defaults write TeXShop invisibleCharRed 1.00
- defaults write TeXShop invisibleCharGreen 0.50
- defaults write TeXShop invisibleCharBlue 0.00
- On Snow Leopard and above, matching braces are briefly marked with a yellow badge over the brace; this
fulfills a request for great visibility of the matching characters. The badge can now be turned off with a hidden preference:
- defaults write TeXShop brieflyFlashYellowForMatch NO
TeXShop Changes 2.39
TeXShop 2.39 fixes a significant bug for users who write in Hebrew and Arabic. In
version 2.38, typesetting sometimes displaced diacritical marks left one character,
even though the source looked correct. The problem was not in the typesetting, but
instead in the source code, which was converted to an incorrect form when saved. This is fixed.
See the explanation which follows.
- Some languages use extensive diacritical marks, including more than one mark for each letter.
For these languages, there are
two conventions about the order that the main character and diacritical
marks are written. The two conventions are
- UTF-8-Mac = NFD = Normalization Form Decomposition
- UTF-8 = NFC = Normalization Form Composition
A major problem is that the two forms look the same on the screen, but
typeset differently (or in some cases not at all). Users in Japan
sometimes copy and drag UTF-8-MAC text to TeXShop, but then find
that they cannot typeset. So Yusuke Terada provided automatic conversion. This breaks Hebrew
and Arabic typesetting.
In TeXShop 2.39, a new Preference item under the Miscellaneous tab turns this automatic conversion on. The
preference item should be turned on by users in Japan, but most other users should leave it off.
- The program comes with French translations by Rene Fritz of Herbert Schulz' two documents on
Command Conversion and TeXShop Tips and Tricks.
- Minor improvements have been made in the French, Spanish, German, and Chinese translations.
TeXShop Changes 2.38
Version 2.38 contains some wonderful changes by Yusuke Terada,
who made the changes at the request of employees in the company he works for in Tokyo. Most of Terada's changes are activated by new items in the TeXShop Preference
Panel, which are turned off by default. So users need to turn these items on and
experiment. You can easily return to the old behavior if desired. Here are Terada's changes:
- Show Invisible Characters: TeXShop can now show ordinary space characters,
Japanese full width space characters, tab characters, and newline characters visually
in the source window. Preference items turn each choice on or off, so users can
display only some items if desired. A Preference item determines whether invisible
characters are shown when files are first opened, and a menu item then toggles invisible
characters on or off on a file-by-file basis.
- Much better handling of parentheses: { and }, ( and ), [ and ], and < and >.
When such a pair is closed, the matching opening parenthesis is clearly marked,
and the entire section between these parentheses is colored
yellow. This yellow color remains until another character is typed, and then it
vanishes. Thus it is much easier to close a parenthesis and then stop and make sure
the scope of that parenthesis pair is correct. By default, this feature is on, but
it can be turned off in Preferences.
- If a parenthesis is typed with not matching pair, the computer beeps, or
if desired the screen flashes. This feature is off by default and must be turned on
in preferences.
- The parenthesis matching settings are controlled by five preference items, which can be
turned on or off individually. The first item, "Highlight Enclosed Characters", marks text
between matching parentheses in yellow when a parenthesis is closed.
The yellow vanishes when additional characters are typed. The
second item, "Show Indicator in Moving", activates this feature when using arrow keys
to move through the text, so when the active position becomes a parenthesis, the area it
controls is shown in yellow. The third item, "Blink Highlight", causes a matching parenthesis
to switch temporarily to red and then blink back to its natural syntax color. When this item is
off, the matching parenthesis will remain red until a new character is typed. The last two
items, "Beep for Isolated Parens" and "Flash Back for Isolated Parens", cause the
computer to beep, or momentarily flash the source window background, when a parenthesis
is typed which has no match.
- Two new items were added to the Window menu: "Next Source Window" and "Previous
Source Window". These cycle through source windows without changing the Preview Window.
This is particularly useful in a project which inputs multiple source files.
- The default preference setting which determines the position of source windows when first
opened is
"Remember last position on close".
But an introductory movie in TeXShop's
Help menu suggests changing this preference setting to "All windows start
at fixed position". Because this change is recommended, the original "Remember last
position on close" code in TeXShop did not work well.
Terada has improved the default greatly. New windows now appear cascading down and to the right as
recommended by Apple's Interface Guidelines, rather than on top of each other. Try this method
to get a feel for Terada's improvement. Similar remarks apply for positioning of Preview windows.
Note that if you use the "All windows start at fixed position" setting, Terada's changes
do not apply and TeXShop works as it always has.
- TeXShop uses the default Cocoa behavior for window titles. Before considering
Terada's modification, recall this default behavior.
Suppose a source file is titled "Sample.tex". Then the title
at the top of the source window will read "Sample.tex" and the title at the top of the preview
window will read "Sample.pdf". If you click on either title while holding the Command Key down,
a pull down menu will appear listing the various components of the full path to the file. Choosing
one of these items will open the corresponding folder in the Finder. In this way, it is very easy
to go to the actual source or output file in the File system. Window titles are also listed in TeXShop's "Window" menu.
Selecting a window title there
will bring the corresponding window to the front.
All this is fine unless your work flow includes the following sort of action: suppose you have folders named Sample1,
Sample2, Sample3, and Sample4, and suppose each folder contains a file
named Data. Suppose that your master document uses
Sample1/Data and Sample2/Data. If your master and both data files are open on your desktop,
you may want to switch from one data file to another using the items in the Window menu. But these
items will both be named "Data". It would be much better if the Window menu listed "Sample1/Data" and
"Sample2/Data" so you could keep them straight.
Terada's change makes this possible. An optional toolbar item named "Show Full Path" with a checkbox is provided
for the source window; this item must be added using "Customize Toolbar" and isn't in
the default toolbar. Checking this item will cause the source and preview windows to list
the full path to files rather than just the title of the files. Moreover, this full path will be listed in
the Window menu.
Full path can be turned on or off on a file by file basis, so some files can show the full path
while others show only the window title. The default checkbox state in the toolbar of a newly opened window will
be the state last set by the user. Thus a user who always wants the full path displayed can check the
item once and then forget it, even when quitting and restarting TeXShop. If that user changes their
mind, uncheck the item once and forget it. But some users will want to turn on full paths for some files and turn it
off for other files.
- A new menu item in the TeXShop Help menu is provided, named "Open Style File". This
item will open any style file in the texmf trees visible to TeX and LaTeX. This command uses
"kpsetool" to find such style files, but the tool and its parameters can be changed in a new Engine file preference.
- Syntax coloring has been changed slightly. Previously, the @ symbol ended a TeX command,
so "\@this" would only color "\@". But now the command is assumed to continue until a break character, so for example, every character of the following line
will be colored:
- \ifx\@@input\@undefined\let\@@input\input\fi
This will mainly affect users editing style files.
We suspect that most users won't notice the change, and those who notice will like it. But
the old behavior can be restored with a hidden preference:
- defaults write TeXShop MakeatletterEnabled NO
- A minor bug fix to the "Uncomment" command: previously, TeXShop removed
empty uncommented lines, but now it doesn't.
- A new preference "BibTeX Engine" is provided listing the default BibTeX engine. Most
users will list "bibtex" as the default. This
preference is mainly present for users in Japan, where users have access to
- bibtex, jbibtex, pbibtex, and ubibtex
- New hidden preference items named "backgroundAlpha" and "ConsoleBackgroundAlpha" are
provided. For example, the following commands will provide source windows with translucent
backgrounds:
- $ defaults write TeXShop SourceWindowAlpha 0.9
- $ defaults write TeXShop backgroundAlpha 0.6
(Actually my experiments show that both of these preference items are irrelevant, and the
old SourceWindowAlpha and ConsoleWindowAlpha, documented in TeXShop Help, are
enough to make transparent windows. I'll keep this item in the change document 'just in case.' -- Dick Koch)
- When "utf export" is enabled to support pTeX in Japan, UTF-8-Mac encoded text
is automatically converted to UTF-8 encoded text.
In addition to the work of Terada, TeXShop 2.38 has the following changes:
- Version 2.38 contains a new Chinese localization by Linus Yang, from Fudan
University in Shanghai, China. Thanks!
- The Help menu now contains a link to a wonderful document by Herbert Shultz called
"TeXShop Tips & Tricks." This document describes a number of useful TeXShop
features in much more detail than the Help panel, including sections on working with large documents, pdflatexmk, editing shortcuts,
auto completion, and command completion.
- The following bug is fixed: when a TeX source window is closed, the pdf Preview
window is also closed. In previous versions, the Preview window was not deliberately closed in code, but it
closed anyway because closing a document releases its nib file. This may have caused crashes
in a small number of cases. In Apple's forthcoming Lion system, the corresponding crash
always happens. But version 2.38 of TeXShop fixes this problem.
In short, this fix may help stability on earlier systems, and is required for Lion.
- The next addition is by Alvise Trevisan. In previous versions of TeXShop,
if you type begin{itemize} (or \begin{}} or a number of other
typical fragments) and then push the Escape key, the corresponding \end{itemize} will appear
on the following line and it is only necessary to fill in the intermediate lines. Unfortunately, if the
opening \begin{itemize} is indented, the indentation is not preserved for the corresponding
\end{itemize}. But with Trevisan's modification, it is preserved.
- Herb Schulz adopted Trevisan's code to provide a similar preservation of indentions throughout
Command Completion.
- The ConTeXt-MKIV.engine and the document "About the Inactive Folder" in
TeXShop/Engines/Inactive have been revised to indicate that users must run the following command ONCE
in Terminal before using this engine:
- luatools --generate
- Added the file extensions bbx, cbx, and lbx to the list of files which TeXShop can edit, and
activated syntax coloring for such files.
- Added the extensions .bcf and .run.xml to Files->Trash Aux Files. This is needed to switch
from biber to bibtex in latexmk.
- Alan Munn updated the help files advanced_otherfiles, advanced_syntaxcolor, basic_preferences,
and advanced_personaltetex. The revisions document a couple of obscure features, but the key point
is that Munn's formatting makes these files easier to read. It also introduces some
inconsistency in the appearance of help pages, but we hope the remaining pages will be reformatted
in the same way over time.
- The program contains version 4.23 of Latexmk.
- For some time, TeXShop has contained a Substitutions submenu in the Edit Menu. This menu allows
users to activate a number of operating system enhancements for inputting text:
- Smart Copy/Paste
- Smart Quotes
- Smart Dashes
- Smart Links
- Data Detectors
- Text Replacement
Consult Apple documentation for details.
Until version 2.38, users had to activate these items each time they opened a file. In TeXShop 2.38, the last choices
a user makes are remembered and used when new files are opened, even after quitting TeXShop.
Warning: Operating system 10.4 (Tiger) only supports smart Copy/Paste. System 10.5 (Leopard) adds support for
smart quotes and smart links. The remaining items are only available in system 10.6 (Snow Leopard) and beyond.
All items are standard parts of Apple's text system, and some may not be appropriate when editing TeX/LaTeX
documents.
- TeXShop 2.38 adds a new magic marker to select the spelling dictionary; this idea was first introduced in the
latest release of TeXworks. Suppose a source file is written in German and one of the first twenty lines
in the file is
- % !TEX spellcheck = de-DE
Then the spell checker will use the German dictionary with this document, but will use the default spelling dictionary
for all other open documents without this line. TeXShop reads this line when opening the file, so when the magic marker
is created, the file must be saved, closed, and reopened before TeXShop will use it. If a project uses several include files,
each include file must contain the line.
When using this command, Apple dictionaries are specified using either the ISO 639-1 or ISO 639-2 standards for determining language designations, and the ISO 3166-1 standard for regional designations. The regional designation is used to distinguish between a language as used in one part of the world and that same language in another part of the world. For instance, French is "fr" in ISO 639-1 and "fre" in ISO 639-2; French (France) has regional designation "FR" and
French (Canadian) has regional designation "CA". So to select a French dictionary in Canada, "spellcheck = fr" will work, and "spellcheck = fr-CA" would be even better.
Since these are ISO standards, similar commands will work on other platforms, although TeXShop only runs on the Mac. The language standards are described in
- http://www.loc.gov/standards/iso639-2/php/English_list.php
and the regional standards are at
- http:www.iso.ch
although this second site is difficult to use.
Specifying a cocoAspell dictionary is slightly tricky. The Spelling Preference Pane installed by cocoAspell lists all cocoAspell dictionaries, including active dictionaries. Names in this list are the names to be used following "spellcheck". When these dictionaries appear in Apple's list in the Language & Text panel, they often have different names. Those names don't work.
For example, there is a ocoAspell dictionary named German. If the German dictionary is selected in the Spelling Preference Panel, then the resulting dictionary will be listed in Apple's panel as Deutch (Aspell). In this case
- % !TEX spellcheck = de
will select Apple's German dictionary and
- % !TEX spellcheck = German
will select the cocoAspell German dictionary, while
- % !TEX spellcheck = Deutsch (Aspell)
will select nothing.
Similarly there is a cocoAspell dictionary named German (Germany) in the Spelling Preference Pane. To select it, the appropriate command is
- % !TEX spellcheck = German (Germany)
TeXShop Changes 2.37
- TeXShop contains a slightly updated Japanese localization by Seiji Zenitani.
- The TeXShop/Engines/Inactive folder now contains Latexmk 4.18 and a short new document titled
Quick Start Guide for latexmk.
- In Help and other spots, Dick Koch's email address was changed from
- http://www.uoregon.edu/~koch/texshop
to
- http://pages.uoregon.edu/koch/texshop
to conform to changes for all faculty at the University of Oregon.
TeXShop Changes 2.35 amd 2.36
- TeXShop 2.35 is an internal version never publicly released.
- Added a new preference item which switches between the tab and escape keys as the trigger for command completion.
-
Recall
that complicated commands entered with command completion include "marks" where the various command arguments occur. The Completion/Marks menu contains menu commands to go to the next mark, or to the previous mark. These menu commands have keyboard shortcuts which have not been changed. But TeXShop 2.36 adds extra keyboard shortcuts for these two commands:
- option-escape to go to the next mark
- control-escape to go to the previous mark
When the tab key triggers command completion, these shortcuts become
- option-tab to go to the next mark
- control-tab to go to the previous mark
- Keyboard shortcuts always cause trouble for some users, who may have third party utilities which already use those shortcuts. So there is a hidden preference to turn off the new shortcuts for next mark and previous mark:
- defaults write TeXShop CommandCompletionAlternateMarkShortcut NO
- Added a menu item following the File/New command:
- New from Stationery...
Selecting this item brings up a list of stationery: Beamer, AMS-Article, Letter, Project, ProjectChapter, etc. Each item is listed in the left column and briefly described in the right column. Selecting an item opens a new document with the contents of the chosen stationery. This document is not associated with the stationery file on disk, so pushing the typeset button asks the user to save the document and suggests as a default name "Untitled", exactly as if the document had been created by the New command.
Version 2.36 contains rather rudimentary stationery files. I'm hoping users will contribute better and more robust alternatives for future versions.
- Stationery files are stored in a new folder: ~/Library/TeXShop/Stationery. This folder works like all other folders in ~/Library/TeXShop. Users can remove files from the folder, edit files currently there, and add additional files. To recreate the default folder, entirely remove the Stationery folder and restart TeXShop.
Each stationery document ends with extension ".tex". If the folder contains a file with the same name, but extension ".comment", then this file is assumed to contain a one line comment about the file, which will appear in the right column of the stationery dialog. Thus the folder contains both Beamer.tex and Beamer.comment. This "comment" file is optional. An easy way to create a comment file is to duplicate an existing file, rename it, and edit its contents with TeXShop.
The stationery mechanism is a variant of the Templates menu in TeXShop, which is unchanged. My hope is that the default stationery menu will lead new users more quickly to the standard documents almost everyone eventually creates. Hence I intend to keep the default collection fairly small. Users are free to add additional stationery to the mix.
- Version 2.36 contains a slightly revised LilyPond engine.
- Version 2.36 contains a new default ConTeXt-MKIV engine, created after consulting Hans Hagen at TUG-2010.
TeXShop Changes 2.34
- Removed keyboard shortcut for "hard wrap", since pushing it by mistake can have drastic consequences.
- Added new Edit menu items: Substitutions, Transformations, Speech. These are standard Apple items,
which automatically add these features to the editor. However, part of this addition is not complete. In a future
version, there will be Preference items to preserve the user's choices for smart copy/paste, smart quotes,
smart dashes, smart links, data detectors, and text replacement. Currently, choices are temporary while
the document is open.
- New version of Latexmk, 416a.
- LuaLatex is now a default engine, since LuaTeX has progressed to a system which can be used for
real work. But only new users will see the change; older users must drag LuaLatex from the Inactive folder
to the active area.
- The Sage engine and documentation are slightly improved.
- Fixed the problem of offset line numbers in the German localization.
- Added the Stex extension as one TeXShop can edit and syntax color; this is used when working with R.
TeXShop Changes 2.32 and 2.33
- TeXShop 2.32 is an internal version never publicly released.
- The major change in 2.33 improves the upgrade process. In previous TeXShop versions, it was necessary to regenerate
various folders in ~/Library/TeXShop to get new defaults. While this method still works, the changes make regeneration unnecessary.
There are three aspects to the change:
- TeXShop now automatically updates three subfolders of ~/Library/TeXShop: bin, Engines/Inactive, and Scripts. This upgrade does not
remove files added by the user; it only writes new files and folders or updates existing files and folders known to TeXShop. Note that active engines in ~/Library/TeXShop/Engines are not updated; only the inactive folder is updated.
- TeXShop adds a new folder, ~/Library/TeXShop/New. This folder can be totally rewritten during an update.
- Finally, TeXShop Help contains a file named "About This Update," which is rewritten for each update, explaining the exact steps needed to obtain new defaults.
As an example of how these changes are used, consider the case when there is a new default Macro. It is no longer necessary to regenerate the Macros folder to obtain this Macro. Instead, the New folder will contain the new macro. Use the Macro Editor's "Add Macros from File..." item to add the macro, and drag it in the Macro Editor's list to an appropriate spot.
Another example: the latexmk engine is often upgraded, but the upgrade usually changes support files in bin rather than the engine itself. From now on, such upgrades will be made automatically without user intervention. Fairly often, additional engines are added to the Inactive folder during upgrades. These will automatically appear without user intervention. For version 2.33, it is important that latexmk users read "About This Release" so they will make a few changes needed to automate future upgrades.
One technical detail: the New folder contains a hidden file listing the version of TeXShop which created the most recent update. TeXShop will only update files in ~/Library/TeXShop if it is a later version than the version listed in this hidden file. So TeXShop doesn't update at each new start, and old version can be run without changing ~/Library/TeXShop.
- Improved Spanish localization by Juan Luis Varona.
- Fixed a bug reported by Tomas Zahradnicky: when a user attempted to print a file which had not been typeset, a dialog appeared asking the user to typeset first. The dialog has an "OK" button, but clicking the Close icon instead caused a hang. Fixed.
- Fixed a bug reported by Micael Sharpe: searching in the Preview window and afterward closing the source window sometimes caused a crash. Fixed.
- New code by Scott Lambert to improve the Comment/Uncomment and Indent/Unindent code.
- Added fdb_latexmk to the extensions automatically removed by "Trash AUX Files", to improve the operation of latexmk.
- The flip code used by some default macros is now a universal binary.
TeXShop Changes 2.31
- Goto Error is improved. It now highlights the text just before the error (as reported by TeX in the console) rather than an entire line containing the error. When searching for errors, users should first look at the spot where the highlighting ends. This change was requested by users who let TeXShop automatically soft wrap lines; to TeX, these source files appear to contain whole paragraphs rather than individual lines. In earlier versions of TeXShop, Goto Error highlighted these entire paragraphs, making the error hard to spot.
- Fixed the notorious "toolbar incorrectly drawn bug". This bug occurred when the Preview toolbar contained the "mouse mode matrix" but this
matrix was forced offscreen when the Preview window appeared because the window was too narrow to contain it. In that situation, the tools in the toolbar were drawn too high and partially cutoff, or so high that they were invisible. The bug is fixed.
- Fixed an obscure bug reported by Jean-Michel Bismut: he got intermittent crashes when closing the Preview window with command-W or
the red close circle. The bug mainly appeared when TeXShop was used with an external editor. Fixed.
- Fixed a bug reported by Cesar Rivas: when the Default Page Style was "Single Page", the toolbar scale reported the wrong value,
and thus zoom in and zoom out started from the wrong values. The bug fix solved another problem: previously if the user picked a mouse tool
like "magnify" that was not the default and then typeset, the toolbar would still show the magnify tool active, but the actual tool would change to its default value. Fixed.
- TeXShop has a new SageTeX engine by Dan Drake. This engine is easier to install because SageTeX is now part of Sage rather than an extra download. The engine no longer reruns Sage when typesetting a source in which the sage commands have not changed.
For a brief time, SageTeX was part of TeX Live 2009. This is no longer true because SageTeX is closely tied to Sage and needs to be updated when Sage is updated. SageTeX users should carefully read the short document in ~/Library/TeXShop/Engines/Inactive/Sage before installing the new engine; the document explains the simple step required when upgrading Sage.
- The internal TeXShop script which calls ConTeXt was modified to make the Abort command work. Although it worked for other engines, it recently stopped working for ConTeXT. Steffen Wolfrum reported the bug and was instrumental in finding a fix. The broken script was a tcsh script, and Wolfrum discovered that Abort worked when the internal script was rewritten as a bash script.
- Added a new menu item, "Abort Typesetting", with a keyboard shortcut. This makes it possible to call abort from the keyboard without using the mouse. The shortcut works regardless of which window is active.
- The pdf file is now closed when the Preview window is closed. In version 2.30, the entire document had to be closed to close the pdf file. In 2.29, TeXShop itself had to quit to close the file. So we are making incremental progress.
- Improvements in French localization by Rene Fritz.
- Slight improvements in ConTeXt and MetaPost help sections.
- Slight improvements in latexmk.
- Better error detection in the "Paste Spreadsheet Cells" macro.
- The default KeyEquivalents.plist in ~/Library/TeXShop/Menus was defective; among other things, it had comments
within comments, which is illegal. The file has been fixed.
KeyEquivalents.plist doesn't actually change any keyboard shortcuts because the changes it illustrates are commented out. But users can change TeXShop's default keyboard shortcuts by editing the file. However, there are some limitations. The OgreKit Find Panel menu items are handled in a special manner and cannot be changed with KeyEquivalents. The Macro menu items are also handling in a special way and cannot be changed with KeyEquivalents, although they can be changed with TeXShop's built-in Macro Editor. Finally, File menu items are sometimes overridden by Cocoa, so shortcut changes in that menu can have unintended consequences.
TeXShop Changes 2.30
- TeXShop has a new item in the Help Menu named "About This Release." This item will be revised for each release, and explains any steps needed to activate new features. Users should form a habit of reading this short file after upgrading.
New users get the latest defaults and can ignore the step. But older users may need to make small changes in Preferences, and regenerate certain subfolders in ~/Library/TeXShop. These locations allow users to modify the default behavior of TeXShop, so
the program does not automatically update them because it does not want to deactivate user choices behind the user's back.
- This version fixes a crucial crash bug involving synctex, searching pdf documents, and related notifications. Some users ran into the bug when attempting to search pdf documents. Others had crashes immediately after syncing. Many users avoided the crash entirely. Now it should be fixed for everyone.
- TeXShop has a "Goto Error" menu command, mirrored on the console window. Until this version, the command only worked on individual files. But the command now works with projects controlled by a root file. If an error occurs in an included source file not open on the desktop, that source will open and the line with the error will be highlighted. This change
requires a new flag in all engines: " --file-line-error". In TeXShop default preferences, this is set for pdftex, pdflatex, simpdftex, and xetex. If users wrote other engines, they will need to add the flag for these.
- New MetaPost and MetaFun engines by Nicola Vitacolonna are included. The engines are called "nv-metapost" and "nv-metafun." To prepare for these engines, the operation of TeXShop when using MetaPost and MetaFont has been revised. The built-in MetaFont command has been removed entirely; Vitacolonna's nv-metapost works much better for that purpose. The buildin MetaPost command has been retained for compatibility with projects by current users. This command just calls mpost directly. The preference item which switched this command between MetaPost and mptopdf has been removed.
Users working with MetaPost for illustrations, or MetaFont, users will want to use nv-metapost and nv-metafun instead. Minimal documentation for these commands is available in TeXShop Help's advanced section on ConTeXt and MetaPost. But a more extensive README by Vitacolonna is available in ~/Library/TeXShop/Engines/Inactive/MetaPost.
- Very important improvements to command completion by Herbert Schulz are now included. These improvements allow "tags" in completed commands with parameters. When a command is completed, the entire command, including tags where the required parameters go, appears in the source file, and the first tag is selected. The user can type the parameter, replacing the tag. A keyboard shortcut then activates a new menu item which jumps to the next tag. The user can thus fill in all parameters without removing their hands from the keyboard.
A greatly expanded command completion file by Herbert Schulz is included in this release. For detailed instructions, read the document about command completion written by Schulz and available in ~/Library/TeXShop/CommandCompletion.
- A new "Paste Spreadsheet Cells" macro by Alan Munn has been added to the Macro menu. This wonderful macro allows users to copy an array of cells from a spreadsheet and paste the array, properly formatted with TeX commands, in the TeX source code. Munn wrote instructions for this command, which are in TeXShop Help's Macro section, in Default AppleScript Macros.
- A new latexmk engine, version 4.13a, is included.
- The right justification feature introduced in TeXShop 2.28 for Arabic, Hebrew, and Persian has been improved. Now a line must start with a character from one of these languages before it is right justified. Thus
lines containing TeX commands with embedded Arabic, Hebrew, or Persian will still be left justified.
- Added Windows Latin 1 to the list of supported encodings.
- Added "ctx" to list of extensions which are regarded as TeX files and can be syntax colored and typeset.
- In 2.29, closing a document left the associated pdf file open until TeXShop quit. This bug is fixed; the pdf file is closed when the source document closes.
TeXShop Changes 2.28-2.29
TeXShop Changes 2.27
- When using SyncTeX from source to Preview, the preview window now comes forward.
- There are many changes in TeXShop Help, including a new section on encoding, and separate sections on General Engines, and on the XeTeX engine. References to XeTeX were removed.
- There are slight improvements in the Program, Encoding, and Root macro files by Ramon M. Figueroa-Centeno.
TeXShop Changes 2.21 - 2.26
Here are the changes in version 2.26:
- The TeXShop/Engines/Inactive folder contains two scripts from Daniel Becker which call texcount to count active words in a TeX source file. These engines were promised in 2.25 but erroneously omitted. They are in 2.26. To obtain them, quit TeXShop and move the entire Engines folder from ~/Library/TeXShop to the Desktop. Then restart TeXShop. TeXShop will create a new Engines folder. Merge in any changes you have made in the old Engines folder on the desktop to the new folder.
- Juan Luis Varona sent new Program and Encoding macros which display the various choices, so it is not necessarily to look up the wording of these choices. A few days later, Ramon M. Figueroa-Centeno send similar but fancier macros. Ramon's macros are now in TeXShop. To obtain them, quit TeXShop and move the entire Macros folder from ~/Library/TeXShop to the Desktop. Then restart TeXShop. TeXShop will create a new Macros folder. Merge in any changes you made to the old Macros on the desktop to the new copy, using the Macro Editor.
- A memory leak introduced by the code to split the Preview window in 2.25 is fixed. The bug was similar to the old flaw in PDFKit which caused memory to be gradually used up when typesetting a document many times, but this time the bug was caused by me.
- A bug in the zoom code for the preview window when using multiple monitors is fixed.
- A bug which caused TeXShop to ignore a "% !TEX TS-program = ..." command when typesetting from a file with an associated root file is fixed.
- The French localization is improved.
- A localization error caused the "Split Window" icon on the Preview Window toolbar to display strange text. This is fixed.
- A bug caused the Preview Window's toolbar to vanish temporarily if the user tried to move certain text portions of the toolbar. This is fixed.
- One of the keyboard zoom shortcuts acted only on the top portion of the Preview window when split. This is fixed.
- The TeX mdimporter code distributed with TeXShop in 2.25 contained only i386 code. Now it contains code for both PPC and i386.
Version 2.21 - 2.24 were internal versions, never released. Here are the changes in version 2.25:
- Split window, previously available for the source window, now also works for the Preview window. Buttons and tools which interact with the Preview window are applied to the active portion of the Preview window when split. To activate the other portion, click on it. To avoid cluttering the interface, the active portion of the Preview window is not marked. Note that it is possible to use different Display formats in the two views. For instance, after splitting the window you can activate the lower portion and select Double Multiple Page in the Display Format menu to obtain a single page view in the top half and a double page view in the lower half.
- Syncing from source to Preview now scrolls the selection to the visible portion of the window. When the Preview is split, syncing from source to preview goes to the active portion of the Preview window.
- A new menu command, Show Log File, opens the log file. This file is updated after typesetting. If a source file has a root file, the menu command opens the log file of the root file, rather than the nonexistent root file of the input file.
If the command key is held down while choosing this menu item, a dialog will appear asking for the extension of the file to be opened. For instance, typing "aux" into the dialog opens the aux file rather than the log file. The requested extension can be typed with or without an opening period.
- A new Help menu command, "Show Package Documentation", opens a dialog which requests the name of a package in TeX Live. It then opens the TeX Live documentation for this package, using the command line program "texdoc." This improvement was suggested by Juan Luis Varona.
TeX Live has a vast amount of documentation; go to /usr/local/texlive/2008/texmf-dist/doc/latex to see some (but not all) of this documentation. Note that almost all documentation folders have lower case names; therefore it is best to name packages in lower case when requesting documentation: pdftex, latex, graphicx, geometry, texdoc. But there are exceptions: IEEEtran.
Documentation is sometimes available in several different forms: pdf, html, etc. Add the extension to the request to see a particular form of the documentation. For instance, enter "pdftex.pdf" or "pdftex.html" to see these forms of the pdftex documentation. Texdoc will choose a convenient form on its own if the extension is omitted.
Texdoc does not open the documentation in TeXShop; instead it uses the Mac's default application for a given extension. By default, the Macintosh opens pdf files in Preview and html files in Safari, so texdoc will use those viewers. There is a standard way to redefine the default application for an extension. If you change the default, texdoc will use the new default application.
It is also possible to directly configure texdoc to use particular viewers; see the texdoc documentation for details.
Sometimes texdoc will not find documentation for a package, style file, or program. In that case, nothing will appear. In particular, TeXShop does not put up a warning dialog when documentation is not found. Although such a dialog would be useful at first, in the end it might become annoying.
- It is possible to set the foreground color of the Console window in Preferences. This was requested by users who prefer white characters on black backgrounds for the console.
- A new menu command opens the console if it has been closed.
- The menu items to change the text color in the source, to justify right, left, or center in the source, and to bring up the ruler in the source have been removed, since they make no sense in TeX.
- There are localization improvements in French, Spanish, and Japanese.
- This version fixes a bug which ignored Console Preferences when using external editors.
- TeXShop can now create and edit asy files.
- Added a contextual menu item to the Source and Preview windows: Sync. Some users may prefer this menu item for synchronization because using it avoids the command key.
- The TeXShop/Engines/Inactive folder now contains two scripts from Daniel Becker to call texcount to count active words in a TeX source file. The output may be more accurate than the output from detex, which is currently called by TeXShop's "statistics" command.
Users who upgrade TeXShop can get the new Inactive folder by quitting TeXShop, moving ~/Library/TeXShop/Engines to the desktop, and then restarting TeXShop. The new default Engines folder will be created by TeXShop. After it is created, merge extra items in your old copy on the desktop back into the ~/Library/TeXShop/Engines folder.
- The Inactive folder also contains a "sage.engine" file. This engine makes it possible to use the open source mathematical software Sage, a replacement for Maple, Mathematica, and MatLab, directly from within a TeX source file. For instance, a single TeX line can ask Sage to plot a function; in the typeset output, this plot will appear at that spot. Or a single line can ask Sage to integrate a complicated expression symbolically; in the typeset output, the answer will be shown, typeset consistently with other mathematical expressions in the document. The inactive folder contains an example document typeset in this way. Sage is available free at http://www.sagemath.org/.
- There was discussion on one of the mailing lists about the logic behind TeXShop's "Typeset" menu command, the "%!TEX program" mechanism, and the fact that "BibTeX" and "MakeIndex" are not really typesetting commands. Members of the list tried to understand the logic behind fine details of TeXShop's operation, but this was a hopeless task because there wasn't much logic present.
An attempt has been made in version 2.25 to provide consistent behavior, but without a complete overhaul of the interface. The code now works in the following way:
The "Typeset" command in the Typesetting menu always does exactly the same thing as the "Typeset" button in the source window toolbar. Both commands call the typesetting command listed in the drop down menu next to the toolbar button, unless the first few lines of the source file contain a line of the form
- %!TEX TS-program = ...
If such a line is present, then the Typeset command uses the indicated program instead (unless the drop down menu is set to bibtex or makeindex; see comments below). The selected item in the drop down menu does not change, so commenting out the source line will cause typesetting to revert back to the method indicated in the drop down menu. Incidentally, TeXShop ignores extra comment characters at the beginning of the above source line, so it cannot be commented out by adding an extra comment. I prefer to add a space between the "TS" letters.
In previous versions of TeXShop, it was not possible to select bibtex, makeindex, metapost, context, or metafont in the "%!TEX TS-program" line, for purely historical reasons. This anomaly has been fixed, and any engine can be selected:
- tex, pdftex, latex, pdflatex, bibtex, makeindex, metapost, context, metafont, or a user defined engine
There should be one space after the equal sign before the program name, and case is important.
Selecting bibtex or makeindex in the drop down menu causes these programs to be called even if a "%!TEX TS-program" line is present, since these two programs aren't really typesetting engines and a user may need to call them even when an unusual typesetting engine is being used.
So much for the basic "Typeset" command. The TeXShop "Typeset" menu also contains items to call TeX, LaTeX, BibTeX, MakeIndex, MetaPost, ConTeXt, and MetaFont. These items are present mainly for historical reasons and most users ignore them. Adding new engines to TeXShop doesn't add extra menu items because the menu would become awkwardly long if a user had a large number of extra engines.
The BibTeX and MakeIndex items are treated specially. Selecting one of these items causes TeXShop to run the resulting program regardless of the setting of the toolbar's drop down menu and the possible presence of a "%!TEX TS-program" source line. This is probably the most convenient way to call these two commands.
The remaining TeX, LaTeX, MetaPost, ConTeXt, and MetaFont menu commands behave in a slightly different way. Selecting one of these menu items causes TeXShop to run the resulting command, regardless of the toolbar's drop-down menu selection and regardless of any "%!TEX TS-program" line. Moreover, selecting one of these menu commands changes the toolbar's drop-down menu selection to the engine chosen in the menu command. The idea behind this design is that beginning users may first find the menu commands and typeset using them. If such a user later uses the "Typeset" button in the toolbar, it should cause the same behavior as the earlier menu command.
Sorry for this complexity; I'm trying to balance leaving the interface unchanged for users set in their ways with easier use of the BibTeX and MakeIndex commands.
TeXShop Changes 2.19 - 2.20
Version 2.19 was an internal version, never released. Here are the changes in it and version 2.20:
- Line numbers are displayed in the source file. A preference item turns this feature on or off; a menu item turns it on or off for the currently active window.
This feature depends on free code by Paul Kim at Noodlesoft. The code is at http://www.noodlesoft.com/blog/; see "Displaying Line Numbers with NSTextView". I don't read this blog, but the code was pointed out to me in an email from Ryan Cuthbertson, who downloaded the TeXShop source code, implemented the change, and sent crystal clear instructions explaining how to add the feature. Kudos to Cuthbertson. Kudos especially to Paul Kim and Noodlesoft; Kim's code is so well written that Cuthbertson had to add only 32 lines of code to TeXShop to make it work.
- TeXShop now uses Sparkle to implement "Check for Updates." This brings many advantages. Rather than directing a user to the TeXShop web page when an update is available, TeXShop now lists new features directly, downloads the update upon request, and even quits TeXShop, installs the new version, and restarts the program upon request.
Sparkle is another remarkable product from the open source software community. Written by Andy Matuschak and available at http://sparkle.andymatuschak.org/, it provides every feature you'd want in an update mechanism.The documentation for developers available on the web page is a model of clarity and simplicity. Sparkle is used by a number of other GUI programs for TeX, so users for find it familiar.
- The console window has been greatly improved by Will Robertson, who sent a new Nib file containing his changes several months ago. I waited to implement the improvements until I could add a console preference tab to TeXShop Preferences allowing users to modify Robertson's choices.
The font and background color for the console can be modified in Preferences. Users can adjust the console width to match the number of characters typically output by TeX, and then select a preference allowing the window to be resized only in the vertical direction. Note that preference changes are immediately reflected in the console, so the trick to easy console configuration is to bring a console window to the front, open Preferences, try out various fonts, font sizes, and background colors until satisfied, activate horizontal resizing and adjust the console width, and then, if desired, lock down this width in Preferences.
- A number of items in the Preference panel have been moved to make the operation of the panel more transparent. The most important tab items come first: Source, Preview, Console, Typesetting. In the Preview tab, the "Fixed Magnification Amount" appears immediately following the "Magnification Method" to make it clearer that "Fixed Magnification" only applies when the "Magnification Method" is "Fixed Magnification."
- Previously, clicking the green "Zoom Dot" on TeXShop windows expanded the window to fill the screen. An attempt has been to made this operation more rational. The Source window now expands to fill the left portion of the screen; the console expands only vertically, and the Preview window expands to fill the right portion of the screen. The Preview window expands by the largest amount because users may want to zoom the image and check fine details. I'd appreciate advice on refinement of the zoom behavior. Recall that the behavior must make sense on small portable screens and large Cinema displays.
- For some time, TeXShop recognized hidden preference items to set the background color of the Source and Preview windows. These preference items are now exposed and can be set in the Preference dialog.
- A bug in the MatrixPanel code disabled the hidden preference "matrixsize''. This bug is fixed.
- The name of the alternate typesetting mode "TeX and Ghostscript" has been changed to "TeX and DVI". This fulfills a request of the American Mathematical Society, who have been dealing with users claiming that TeXShop cannot produce dvi files.
TeXShop Changes 2.15 - 2.18
Changes in TeXShop 2.16 through 2.18:
Versions 2.16 and 2.17 of TeXShop were constructed for test versions of MacTeX-2008, and released only to a few people testing that install package. Version 2.18 is now officially released on the TeXShop site.
Here are the changes:
- Added a new Preference item under the Typesetting tab. The preference is called "After Typesetting" and the choices are "Bring Preview Forward"' and "Continue Editing."' The first item activates the Preview window after typesetting and brings it forward, as TeXShop has behaved in the past. When the "Continue Editing" item is activated, typesetting updates the contents of the Preview window but leaves the Edit window active with the editing cursor blinking. This makes it possible to typeset, glance over to check that things look right, and continue editing. This option is particularly useful on large monitors which can show the full contents of both windows.
- Added support for SyncTeX. SyncTeX is new synchronization technology by Jerome Laurens which is included in TeX Live 2008 (but not earlier TeX distributions). The technology is built directly into pdfTeX and XeTeX. In modern TeX distributions, most typesetting actually calls pdfetex (even if using latex to output a dvi file), and thus the technology is available for such typesetting.
To use the technology, add the flag
- --synctex=1
to the command line call to TeX. For example, in TeXShop Preferences under the Engine tab, the lines specifying pdfTeX for Tex and pdfLaTeX should read
- pdftex --shell-escape --synctex=1
- pdflatex --shell-escape --synctex=1
A similar flag should be added to other engine scripts. The TeXShop defaults for these preferences already include this flag for pdftex and pdflatex, but not for other engine files. If the flag is included and an older version of TeX is called, typesetting will still occur (TeX will report to the console that it does not understand the flag.)
The flag causes TeX to output an additional "synctex" file during typesetting, containing information linking the TeX source file(s) to the TeX pdf file. This file is similar to the old pdfsync file generated by the older PdfSync technology, but with the very significant difference that line and page breaks are no longer changed when outputting the data.
Laurens also wrote a command line program named "synctex" which is included in TeX Live 2008; when this program is called with a request for appropriate synchronization data, the program parses the synctex file and outputs appropriate data.
To activate SyncTeX support in TeXShop, go to TeXShop Preferences under the Misc tab and select "SyncTeX" as the "Sync Method." This is the default value if you are installing TeXShop for the first time.
If SyncTeX synchronization is chosen, user interaction is exactly the same as in the old Search method. Hold down the command key while clicking at a spot in the source document. The Preview window will become active and the corresponding spot will be circled in red. Or hold down the command key while clicking at a spot in the Preview window. The source window will become active and the corresponding TeX input commands will be highlighted in yellow.
When these commands are used,TeXShop will fall back on the old Search method if SyncTeX does not find an appropriate synchronization. The most common cause for SyncTeX failure is the absence of a synctex file, which will certainly happen when the file is typeset with an older distribution. Thus users can switch between TeX Live 2007 and TeX Live 2008 without changing their synchronization preference.
A few users might like to test TeXShop's SyncTeX support without being confused by calls to the old Search synchronization method. To simplify this test, there is a new hidden preference which forces synchronization to use only SyncTeX:
- defaults write TeXShop SyncTeXOnly YES
Support for SyncTeX was added to TeXShop 2.18 at the last moment. Synctex is now used in both directions, and is generally much better than the old search synchronization. But many improvements should be possible as I digest what Jerome has provided.
Many thanks to Jerome Laurens for this wonderful work. I think you will notice an immediate improvement.
- Added encodings ISOLatinGreek, MacCentralEurRoman, and WindowsLatin2 (i.e., WindowsCentralEurRoman).
The names of the encodings are
- Greek (ISO 8859-7)
- Mac Central European Roman
- Central European (ISO Latin 2)
- Central European Roman (Windows)
and the
- IsoLatinGreek
- Mac Central European Roman
- ISOLatin2
- WindowsCentralEurRoman
- In
- %!TEX encoding =
- %!TEX root =
- %!TEX TS-program =
- %!TEX projectfile =
allow a space between % and ! for better formatting, and to remove %! postscript ambiguity. The old syntax without the space is, of course, also supported.
- Added code by Adam Maxwell to permit BibDesk Completions; this is controlled by a new Preference Setting. By default, it is not activated.
- Fixed French nib file so Typeset menu works again (there are no longer simultaneous checks on "PdfTeX" and "TeX \& Ghostscript").
- Fixed tab settings, so now changing tab spacing in Preferences works correctly.
- Command-T now typesets even when the console window is active.
- Fixed pdf updating. If a user has an external editor and uses TeXShop to display pdf output, and if the "Automatic Preview Update" preference is set, then whenever the pdf file is updated, TeXShop reads and displays the latest version, activating the pdf window when it does so. There is a hidden preference item named "BringPdfFrontOnAutomaticUpdate". If this is set to "NO", then the preview window is supposed to be updated but not brought forward. Recently, the preview window did this, but didn't display the new content until the user manually activated it. This is fixed.
- Instead of separate commands to display each of George Gratzer's symbol tables, there is one command to display all of the tables in one document. It is much easier to find a symbol if you can scroll through tables rather than guessing which table has the desired symbol.
- Modified default LaTeX macros to bring them up to date.
Changes in TeXShop 2.15
TeXShop 2.15 was an experimental release. It lived for a long time on my personal web page with a promise to migrate it to the usual TeXShop site. After the promise didn't materialize for several months, the link on my personal site was noticed by Version Tracker, and for several months that system pointed to the experimental 2.15 as the latest release. At last 2.15 has become "official" with the release of TeXShop 2.18.
Here is a list of new features:
- Fixed severe memory leakage on Leopard; said another way, the hidden preference item ReleaseDocumentClasses is now automatically set correctly on Leopard. This very significant bug, which I listed for a long time as the most significant bug in TeXShop, was caused by an Apple bug in PDFKit. This bug is fixed in Leopard. Consequently, users must be running System 10.5 to obtain the fix.
- Fixed pdf drag and drop on Leopard. In earlier versions on Leopard, a dragged pdf selection had a white background, making the feature problematic for Keynote and other programs. Now a dragged pdf selection has a transparent background, as it always did on Tiger.
- Support for the Hiero package, used to typeset hieroglyphics. See http://www.filipvervloesem.be/hierotexmac/ and
the detailed explanation on http://www.filipvervloesem.be/hierotexmac/hierotex.html.
- Support for Sketch, used to construct 3D images in pdf files. See www.frontiernet.net/~eugene.ressler/.
- Generalizing the last two items, support for adding additional extensions to the list of filetypes which can be processed via TeXShop engines.
- The default templates now include a template for Beamer taken directly from the beamer web page. To see it, move the folder ~/Library/TeXShop/Templates to the desktop and restart TeXShop. The default Templates folder will be created. Merge your old Templates folder in with the new one.
Here are more details on each of these items.
- 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. The problem occurred when a new pdf file was loaded into PdfKitView for the Preview window. According to Apple documentation, this should have released the previous data from memory. The release did occur, but it caused the program slowdown.
To fix this problem, I added code to TeXShop which tricked the system into believing that the old data structures were still being used so the system didn't try to release them. This meant that TeXShop gradually used more and more memory over time, and it caused other problems as well. In notes to collaborators, I called this "the single most important bug in the program."
This was really a PDFKit bug. But although I have reported several bugs to Apple (and they have been very good about fixing them), I didn't report this problem because I needed to make a small demo program illustrated the bug, and never got around to it.
When system 10.4.3 was released, it looked to me like the problem was resolved, and I modified the TeXShop code to release memory on 10.4.3 and higher. Unfortunately, it soon became apparent that the problem remained, particularly for large pdf files. Luckily, I had added a hidden preference to TeXShop called "ReleaseDocumentClasses"; the value of this preference could be
- 0 to release the data on system 10.4.3 or higher
- 1 to never release the data
- 2 to always release the data
Initially the default value of this preference was 0, but I soon changed it to 1, restoring the old "kludge behavior."
But when Leopard came out, several users reported that this preference can safely be set to 2. Further testing showed that the PDFKit bug was fixed in Leopard.
Therefore, in TeXShop 2.15 the data is always released on Leopard, regardless of the value of ReleaseDocumentClasses. The old behavior still applies on system 10.4.11 and earlier.
But just in case, there is another hidden preference called ReleaseDocumentOnLeopard. The default value of this preference is YES. If it is set to NO, the old preference ReleaseDocumentClasses becomes active and behaves as before.
- TeXShop has the ability to select a portion of the pdf image, copy the selection, and paste it into another program. Users can also drag the selection directly to another program. Before the program LaTeXiT was introduced, this feature was often used, but now LaTeXiT is usually the better way to proceed.
The file format of the copy is controlled by TeXShop preferences; the default value is to copy as pdf with a transparent background, making it easy to use the result in Keynote and similar programs.
This feature broke in the beta version of Leopard which Apple released at the 2007 Developer Conference. Later I managed to modify my code and fix the problem. But in the release version of Leopard, my fix also broke.
At the developer conference I spoke to the author of PDFKit, who recommended a different fix. That fix is now in TeXShop 2.15.
The old code used the NSView method "dataWithPDFInsideRect" directly in the PDFKit View. Before calling this method, it set the background color of the image in PDFKit to be transparent, and it also modified the PDFKit "drawPage" method to skip drawing a background when drawing for a selection. However, PDFKit in Leopard seems to have additional drawing layers which make the individual pages of an image stand out, and these layers add their own backgrounds.
The new method uses PDFKit's page object and the routine "dataRepresentation"', which I learned at the developer conference does not include background information. This data is then placed in a NSPDFImageRep object, imaged in an offscreen NSView object, and captured with the object's "dataWithPDFInsideRect" method.
There is a slight change when copying and dragging selections. Earlier, a selection could span more than one page. Now the copy will only include the portion of the selection which is on the page under the cursor.
By the way, this fixes the last TeXShop Leopard bug known to me.
- TeXShop now contains an engine file in .../Library/TeXShop/Engines/Inactive for use with the Hiero package. An additional README in the folder explains how to install Hiero. The Hiero ".htx" extension is now recognized by TeXShop, and an icon for such files is provided.
To obtain this engine, it is necessary to move the folder ~/Library/TeXShop/Engines elsewhere, say to the desktop. Then restart TeXShop. The program will create a new Engines folder, containing the new inactive items. Then merge the Engines folder on the desktop into this new default Engines folder.
- The same directory contains an engine file for Sketch. An additional README in the folder explains how to install Sketch. The ".sk" extension is now recognized by TeXShop.
- The previous two items are special cases of a general problem. A number of users have tried to use TeXShop's engine mechanism to process a source file and preview the resulting pdf output in cases where the processing engine isn't TeX at all, but rather some other Unix binary program. In many of these cases the source file has a new extension; for instance, ".htx" in the Hiero case, and ".sk" in the Sketch case.
There are two problems with this technique, one minor and one major. The minor problem is that when TeXShop creates a file, it always adds an appropriate extension, usually ".tex". In the Save dialog there is a pulldown menu listing all extensions known to TeXShop. By using this menu, files can be created with other extensions like ".ltx", ".ctx", and so forth.
But if an extension is not in this list, creating it within TeXShop is tricky. Users often try to directly type an extension, saving for example a file with name "myfile.htx". But actually TeXShop will then create "myfile.htx.tex" and even worse, the Finder may then hide the ".tex" extension.
Luckily, there is a solution. One of the file types which TeXShop can save is named "Plain Text Document". Such a file has no extension. So if the user saves "myfile.htx" after selecting the "Plain Text Document" dropdown menu item, they actually will get "myfile.htx".
The good news is that when TeXShop opens a file with an unexpected extension, say by dragging the file to the TeXShop icon, it will preserve the correct extension when saving. So this first problem is a minor problem during file creation, but it doesn't interfere with later processing the file.
The major problem is that TeXShop deactivates the "Typeset" button when a file is opened with an unknown extension, or with an extension which is not used by source files. For example, TeXShop can open pdf files and jpg files, but it doesn't allow the user to typeset such files!
Users who wanted to process ".htx" and ".sk" files with an engine found that they could not use the engine because of this behavior.
TeXShop 2.15 has a new mechanism for such users. A hidden preference allows users to add extensions to the list of legal extensions which activate the Typeset button. For example, the command
- defaults TeXShop OtherTeXExtensions -array-add "htx"
adds ".htx" to the list. To clear the list and start over with the built-in defaults, use
- defaults TeXShop OtherTeXExtensions -array
Actually, ".htx" and ".sk" are now built-in, so these users do not need the new mechanism. But it is available for future users.
- The Beamer template can certainly be improved. I'd appreciate help from experts.
Versions 1.42 and 2.05 add extra features to TeXShop and fix some bugs.
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
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:
- 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.
Versions 1.37 and 2.00 add extra features to TeXShop and fix some bugs.
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 on 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.
- 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), so TeXShop 2.00 requires Tiger. PDFKit makes
the following new features possible:
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
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" was 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. A separate click is then
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.
Version 1.36 was never released.
Version 1.35 adds extra features to TeXShop and fixes some bugs.
New features:
- An important recent development is the release of XeTeX and XeLaTeX by
Jonathan Kew. See
- http://scripts.sil.org/xetex
XeTeX is not part of Gerben Wierda's standard installation, but it is available
with Wierda's i-Installer as an optional install directly from Jonathan Kew.
XeTeX can access Macintosh fonts directly, so TeX documents can be written
with Lucida Grande, Zapfino, and any other Mac font. Moreover, XeTeX
understands Unicode, so for example users can type Arabic into the
source window from right to left, typeset with TeX, and obtain Arabic
in the output window. In particular, XeTeX source documents have
UTF-8 Unicode encoding.
TeXShop 1.35 supports XeTeX directly as follows:
- a) XeTeX and XeLaTeX are now available in the pull-down typesetting menu
on the source window
- b) Using preferences, a user can make XeTeX or XeLaTeX the default
typesetting option
- c) If one of the first ten lines of the source has the form
- %!TEX encoding = UTF-8 Unicode
then that file will be loaded and saved with UTF-8 Unicode encoding,
regardless of the default encoding chosen for other documents
- d) If the first line of the source has the form
- %!TEX TS-program = xetex or %!TEX TS-program = xelatex
then the appropriate program will be used regardless of the
typesetting option chosen.
- These XeTeX features form a special case of a new general method for adding
typesetting engines to TeXShop. There is a now a folder in ~/Library/TeXShop named
Engines; the files in this folder are shell scripts which call typesetting programs.
When TeXShop first starts, it examines this folder and adds the script names of
files it contains to the pull-down typesetting menu. Choosing one of these items and
pushing the Typeset button calls the script. Users can write their own scripts and add
them to the Engines folder.
Items in ~/Library/TeXShop/Engines can be chosen as default typesetting method
in TeXShop Preferences.
The typesetting program can be set in the source code by writing one of the following
on any of the first twenty lines of the source:
- %!TEX TS-program = tex
- %!TEX TS-program = latex
- %!TEX TS-program = pdftex
- %!TEX TS-program = pdflatex
- %!TEX TS-program = personaltex
- %!TEX TS-program = personallatex
This new syntax also works for any new typesetting engine added to
~/Library/TeXShop/Engines. For example, %!TEX TS-program = xelatex chooses
XeLaTeX.
The encoding used to open or save a file can be set by writing a line of the form
- %!TEX encoding = UTF-8 Unicode
as one of the first 20 lines of a source document. Any supported encoding is allowed;
TeXShop's Help Files list the string which must appear on the right for each of
these encodings. To bypass this behavior, hold down the option key while opening
a file.
The old SourceDoc syntax has been modified to conform with the above changes.
For example, to set the root file to ../Main.tex, write
- %!TEX root = ../Main.tex
(The old syntax is still supported for setting the program, encoding, and SourceDoc,
but users are urged to switch to this new syntax.)
- TeXShop has a new Find panel by Isao Sonobe. This panel supports regular expressions.
Users can switch between the new panel and the original one in Preferences.
The Find panel depends on OgreKit, a Cocoa framework for handling regular
expressions by Sonobe. See
- http://www-gauge.scphys.kyoto-u.ac.jp/~sonobe/OgreKit/
OgreKit is distributed using a slightly modified version of the BSD license. This
license can be found in the Documentation included directly in the OgreKit Framework
folder in the TeXShop source distribution. OgreKit requires Panther, so the new panel
will only appear on machines running Panther.
There are many nice features in this new Find panel, which users can discover for
themselves. OgreKit modifies the "Find" menu submenu of the TeXShop Edit menu,
replacing it with a more extensive menu. This might be confusing to Localizers,
because the menu in the TeXShop nib file is not the menu they will see when TeXShop
is running. The Find menu in the nib file should not be modified because it will
be active in system 10.2. Instead the corresponding menu in OgreKit needs to be
localized in the TeXShop source. The Find panel presents buttons controlling how
it will find words; the settings of the buttons will be remembered from session to
session. Adjust them until Find works as expected and then relax.
- TeXShop 1.35 is distributed with the latest pdfsync.sty by Piero d'Ancona and J. Laurens.
This fixes typesetting problems caused by the version distributed with TeXShop 1.34.
TeXShop did not keep up with the changes by d'Ancona and Laurens for several months; sorry!
In the new version, \include and \input are supported; to use the second, the syntax
\input{thisfile} must be used rather than the syntax \input thisfile. The new version
supports \pdfsync, \pdfsyncstart, and \pdfsyncstop. Use the first of these commands
at any spot where you want to reference a point. If pdfsync breaks your code, enclose
the offending section in a \pdfsyncstop, \pdfsyncstart pair.
- Suppose you are typesetting myfile.tex. Pdfsync creates a file named myfile.pdfsync
containing synchronization data. Roughly speaking, each data entry describes
a synchronization point as follows:
- the page number of the output where the point occurs
- the location on this page
- the name of the source file producing this particular output
- the line number in this source file for this particular output
There is a way to get TeXShop to display these synchronization points. The preview
window toolbar has a new checkbox item called SyncMarks. By default, this item is not
shown; use Customize Toolbar in the Window menu to select it. When the checkbox is
checked, synchornization points are shown.
By default, this item will not be checked when the Preview window first appears. A hidden
preference item can change this:
- defaults write TeXShop ShowSyncMarks YES
- TeXShop 1.35 has new matrix code by Jonas Zimmermann. The Matrix Panel now
makes tables. Examine the panel to find all of the new features. There is a hidden preference
to set the default size of the matrix:
- defaults write TeXShop matrixsize 12
A very small number of users may have modified "matrixpanel.plist" in
~/Library/TeXShop/MatrixPanel. This plist has been extended; the new list is
called "matrixpanel_1.plist". Please edit this file to add your changes.
- In previous versions of TeXShop, if you clicked elsewhere and then clicked on the
edit window to edit, you would need to click twice to correctly position the cursor.
This is now changed; the first click in the edit text is recognized and positions the
cursor.
When applescript runs under the Macro menu, it starts a small second application
embedded in the TeXShop folder to actually run the script. That is because when a
command like "latex" runs, and there is an error on the source, the console appears
to accept user input, but the TeXShop event loop is not running during the
applescript action, so no user input can occur.
Many applescripts do not have this problem. TeXShop now allows users to begin
applescript macros with the command
When written this way, the script will be run directly by TeXShop rather than by
the second small application.
- Added a menu command "Trash AUX Files" and a button on the console "Trash
AUX Files." When involked, these commands move to the trash all files in the
current source directory with the same name as the source file and extensions
aux, bbl, blg, brf, glo, idx, ilg, ind, ioa, lof, log, lot, mtc, mlf, out, pdfsync, and toc.
Thanks to Will Robertson for suggesting this command and producing this list of
extensions.
Additional extensions can be added to this list with a hidden preference. To add
"dvi" to the list
- defaults write TeXShop OtherTrashExtensions -array-add "dvi"
Several such extensions can be added in this way, one by one. To remove all
additions
- defaults write TeXShop OtherTrashExtensions -array
The original list of extensions above will always remain active.
Suppose a book project has a main.tex file in a folder, and then chapters in subfolders
which are accessed using commands like \include{chapter1/chapter1.tex}. When this
book is typeset, main.aux and other files will appear in the primary folder, and
chapter1.aux will appear in a subfolder. So the "Trash AUX Files" command does
not do a complete cleanup. But if the option key is pressed when the menu item
is chosen or the button on the console window is pressed, then
- a) SourceDoc and Root File information will be used to find the
root document
- b) All files with appropriate extensions listed above will be moved to the
trash from this folder and all subfolders, even if the name does not
agree with the name of the root file.
Some users may want to throw caution to the winds and arrange that "Trash AUX Files"
always performs this more extensive cleanup. A hidden preference allows this:
- defaults write TeXShop AggressiveTrashAUX YES
- Added new templates by Will Robertson. These are heavily commented. It is
intended that users will edit them to fit their own requirements. The templates are
only installed if TeXShop is running for the first time, or if the Templates folder is
completely removed from ~/Library/TeXShop. But Will's templates are in a folder named
"More" in the TeXShop distribution; old users can obtain them by moving
"More" to ~/Library/TeXShop/Templates.
- Added new macros by Will Robertson to create tables and arrays, to insert a reference,
and to open other project files quickly. These macros have been praised on
the TeX-On-MacOSX mailing list. The macros are available for new users;
older users can obtain them by following simple instructions which come with
TeXShop 1.35.
- Added a macro to examine files in the teTeX tree. For example, if "article.sty" is
typed in the dialog produced by the Macro, kpsewhich is used to find this
file in the tree and open it in TeXShop.
- There are hidden preferences to set the color of the text in the source window
- defaults write TeXShop foreground_R 0.3
- defaults write TeXShop foreground_G 0.3
- defaults write TeXShop foreground_B 0.3
This color will show if syntax coloring is on; otherwise it will be black and then
color can be selected in the Font menu.
When used with existing hidden preferences to set the source window background
color, these commands can be used to write source as white on black, or with
other color schemes. TeXShop has new macros to set the source window colors,
and to reset to default colors.
- There are hidden preferences to make the source, preview, and console windows
partly transparent.
- defaults write TeXShop ConsoleWindowAlpha 0.75
- defaults write TeXShop SourceWindowAlpha 0.75
- defaults write TeXShop PreviewWindowAlpha 0.75
Here an alpha value of 0.00 is completely transparent and an alpha value of 1.00 is
completely opaque. Use these commands cautiously!
- TeXShop now has a Statistics panel, which lists the number of words, lines, and
characters in a document. This is obtained by calling
When first called, the document on disk is tested. After changes are made to the
document, the "update" button saves the document and calls detex again. The
detex command removes tex commands, but the word count is still only approximate.
Input and include files are counted by this command.
- New German Help by Martin Kerz. Kerz also redesigned the TeXShop Help
Window to follow Apple's current guidelines. These changes appear in
English and German, but may not appear in other localizations.
- When a file is drag-and-dropped, any alias is now resolved. Thus alias graphic
files (and other files) can be used provided they are dragged and dropped to the
source. Alias files will not work if their names are typed directly because the tex
engine does not understand aliases (it does understand symbolic links).
- Several changes were made in the Japanese portions of the code by
Seiji Zenitani, with help from Yu Itoh and Koichi Inoue. There is a new Japanese
encoding, Shift JIS X0213, which will become a new standard in Japan. There is
now utf.sty support for pTeX. Before this change, Japanese pTeX supported only
6000 Kanji characters, but utf.sty supports more than 20,300 characters.
This support is turned on by a preference item in Misc. When on, TeXShop exports
non-ptex chracters as utf.sty codes. For example, unicode characters become
\UTF(Hex code) and non-unicode characters become \CID(glyph ID).
- Zenitani also added new Japanese default settings. Previously, Japanese ptex
distributors provided their own "altpdflatex" scripts, which was confusing for
beginning users. This new version of TeXShop bundles "altpdflatex-for-ptex"
scripts and installs them in ~/Library/TeXShop/bin. The new Japanese default
settings in Preferences automatically set up TeXShop to use these new scripts.
- Added the following Chinese encodings at the request of Adam Si:
Mac Chinese Traditional, Mac Chinese Simplified, DOS Chinese Traditional,
DOS Chinese Simplified, GBK, GB 2312, and GB 18030.
- Added a new Japanese help system by Yoshihisa Okazaki.
- Added new Spanish localization and help.
- TeXShop can now open and write files with extension .dn and .engine.
- There is a hidden preference
- defaults write TeXShop BringPdfFrontOnAutomaticUpdate NO
which causes the pdf window to remain where it is when it automatically updates
and is used with an external editor. This preference was requested by a user
with an X11 editor and only seems necessary in this case.
- Users sometimes upgrade Mac OS X via "archive and install". After the installation, TeXShop
remains but teTeX is blown away. The first time such users typeset a file, they
see an error dialog reporting that "pdflatex cannot be found." This error dialog has
been revised to explain more clearly the likely cause, and resolution, of the
problem.
- The TeXShop web page now contains a "LaTeX Documentation" section listing
recommended books and links to free LaTeX guides on the internet. The web page
also makes available a number of short LaTeX example files by Will Robertson.
Bugs fixed:
- When a large number of windows were open, switching from one window to
another took a long time and yielded a spinning disk; TeXShop was completely
unresponsive during this time. This slowdown was caused by a bug in the Macro
code. The problem is now fixed.
- If a dvi file was opened in a directory without write permission, TeXShop could
not create and display a corresponding pdf file. Now it will create the pdf file
in a temporary directory and display it.
- If the abort button was pushed in the console and the user later typed and
pushed RETURN, the program crashed. Fixed.
- Two minor error dialogs, which should have appeared in a window, instead
appeared on the desktop with an inoperable "OK" button. This is fixed.
- In localizations other than English, attempts to get the applescript dictionary
crashed TeXShop. Fixed.
- The Bibtex, etc., tools in the source window did not work if a file had a root
file. Fixed.
Version 1.34 adds extra features to TeXShop and fixes some bugs.
New features:
- Added a Matrix Panel by Jonas Zimmermann, zimmerleut@gmx.de. Many
thanks.
- At the request of Claus Gerhardt, added an extra applescript command,
"goto line". For instance
- tell front document of application "TeXShop"
- goto line 15
- end tell
- Added a first cut at pdfsync. Clicking on a spot in the pdf file while holding down
the command key takes the user to the corresponding point in the source file.
If the source file has include files, this operation will open
the appropriate include file and take the user to a point in that file. Read the
help file "General Help: Pdfsync" for important details. This change depends
on pdfsync.sty, a file create by Piero D'Ancona with improvements by JÈrÙme
Laurens.
- Also added pdfsync the other way. Clicking on a spot in the source file (including
source files with root files) while holding down the command key will select
the corresponding page in the pdf file.
Bugs fixed:
- The TeX, Latex, Bibtex, Makeindex, Metapost, Context, and Metafont buttons
on the toolbar reset the default typesetting engine. This no longer happens.
Thus it is possible to hit the Bibtex button and then hit command-T to typeset
again.
- The abort button on the console window did not stay fixed when the window
was resized. Thanks to Sean Luke for pointing out these first two errors.
- The command-1 keystroke switches back and forth between the source and
preview windows. In previous versions, this did not work when a source
window had a root file set by myfile.texshop or %SourceDoc. This is now fixed.
Clicking command-1 while in the source brings up the corresponding preview
window. Clicking command-1 again brings up the original source file.
A given preview window may have several source files. Command-1
will bring up the last source file which was switched to the preview using
command-1, or the root source file if there was no previous switch.
- New Spanish help files by Juan Luis Varona Malumbres. Thanks.
- Printing now respects the "scale" setting in Page Setup. It does not respect the
"paper size" setting since paper size is set in teTeX. Printing works like this:
the dimensions of the printed document are set by tex and encoded in the
pdf file; this pdf is resized by the scale factor if this factor is not 100%, but otherwise
is placed full size and centered on the printed page; usually the document size
and printed page size are the same, but in rare cases when they are not,
the edges of the document might be cut off.
Version 1.33 adds extra features to TeXShop and fixes some bugs.
New features:
Bugs fixed:
- A few users reported that their printers added a slight yellow background to the page. Only a few printers had that problem. Frank Stengel discovered that it was caused
by a NSEraseRect call in the print drawing routine. This call has been removed;
now TeXShop prints using only one line, the vanilla Cocoa call
[myRep draw].
- In Panther, all Text objects offer word completion. If a portion of a word is typed
and option-escape is typed, the system will offer a list of possible completions.
This works in TeXShop, TextEdit, and other Cocoa programs. But TeXShop's
Command completion was broken in Panther, and made it impossible to use
this new feature. This is fixed.
- TeXShop has an applescript command to add text, but this command did not
update the undo stack.
This was fixed by Stefan Walsen; his patch is in version 1.33.
- If the user printed the source and later printed the typeset document, the document
would be lowered on the page. This is fixed.
- Jerry Keough found a strange bug when using TeXShop in Jaguar. If the user's preference setting asked that no empty document appear at startup and if the user opened a document, made the
pdf window active, and then reached over and closed the source window, the next menu use would
crash the program. This bug did not occur in Panther. It is fixed.
Version 1.32 adds two extra features to TeXShop and fixes some bugs.
New features:
-
There is a new menu item, "New Tag", which inserts an empty tag in the
source text and positions the cursor so the user can add the name of the tag.
As a corollary, there is now a keystroke to add a new tag; the keystroke
is command-2.
-
In Applescript macros, the terms #LOGPATH#, #AUXPATH#, #INDPATH#,
#BBLPATH#, and #HTMLPATH# will now be recognized; this has been added
at the request of Claus Gerhardt.
-
There is a new option to set the program called by MetaPost. See the
TeXShop help file for an explanation.
-
The drag and drop code has been improved by Seiji Zenitani. Dropping
files of types pdf, jpg, jpeg, tif, tiff, eps, or ps on the source document will
produce \includegraphics and a reference to the file. Dropping a file of type
cls, sty, or bib will \documentclass, \usepackage, or \bibliographystyle and
a file reference. Dropping any other text file will produce \input and a file
reference.
Bugs fixed:
- Although the magnification level can increase to 1000 in version 1.31,
the arrow keys next to the magnification control only allowed values up to
400. This is fixed.
- If the preview window's toolbar was in text-only mode and the magnification
panel was selected, the resulting small dialog window would not go away
in 1.31. This is fixed.
- In Preferences, if the user set the tab size or the preview window magnification
and then cancelled, the new values would still appear when the Preference
panel was again displayed. This is fixed.
- Suppose the preference to place the first page on the right side is active.
In 1.31, the left arrow key did now work in double page mode, and the right arrow
key stopped one page before the end. In double multipage mode, the end
key, the page down key, and the right arrow key stopped before displaying
the last page. All of these problems are fixed.
Version 1.31 adds some extra features to TeXShop and fixes several bugs.
New features:
-
Macros items are now specific to the typesetting engine set in the current
window. Two default sets are created when TeXShop first starts, one for
Latex and one for Context. (The Context set was created by Hans Hagen;
thanks!). Suppose a different engine is selected, say TeX. When it
starts, it will have the default Latex macros. But if this set of Macros
is edited with the Macro editor, the new set will always be associated
with TeX, while the old Latex macros will continue to be associated
with Latex. Of course the Latex macros can also be changed.
-
A new preference item allows the first page in the two double page modes
to be either on the left or on the right. Books usually put this page on
the right, so that is the default preference.
-
The preference dialog has a new pulldown menu to reset preferences to
default values. This addition was requested by Seiji Zenitani for users in
Japan who must cope with three different versions of pTeX. These users can
now rapidly set preferences without consulting documentation on web sites.
-
The largest possible magnification in the preview window is
now 1000 (previously it was 400).
-
Additional French menu translations by Hendrik Chaltin; thanks!
Bugs fixed:
- Three Panther problems are fixed. A few interface changes
were made to improve appearance in Panther. This
release is essential for Panther.
- In Panther, older versions of TeXShop refuse to create
new files, although they can open existing files. This was fixed
by adding two lines to the "displayName" code.
- In Panther, the small yellow tags which display the current
page when scrolling in multipage and double multipage display
formats were blank. Also, the small yellow tags which display
the size of a selection rectangle to copy
a portion of the pdf window were blank. This is fixed.
- On my system, Panther spellchecking often fails for all
programs. This happens at boot time. The computer boots
up, but even if the first program used is TextEdit or Mail, it refuses
to "spell check as you type" and the "Spelling dialog" refuses
to appear. I suspect this is due to a defective third party program on my
disk, since other Panther users haven't seen the problem. But
I haven't been able to isolate the bug. Once the problem occurs, TextEdit and Mail have minor text
input glitches which are cured by turning off continuous spell
checking. TeXShop had more serious glitches in this situation.
So in 1.31, extra code has been added to turn off continuous
spell checking when TeXShop starts if the spell checker is not
available.
- Fixed a bug reported by Luis Sequeira: when text was dragged within
the source window, it was always copied and pasted. It should have been cut and
pasted unless the option key was down. This is fixed.
- Juan Luis Varona Malumbres slightly improved Spanish help (small
icon for the list of help files in the drawer).
- In two page mode, typesetting no longer scrolls to the first
page.
- The new page and magnification buttons retain firstResponder
status (as before 1.29) so users can experiment with several
settings without clicking again for each experiment.
- In version 1.30 and before, if the user input an impossible line
into the "Go To Line" dialog, the program could crash; this is fixed.
Thanks to Eric Seidel for the bug report.
- Kevin Ballard, kevin@sb.org, contributed a new English.lproj folder
with revised placement of interface items in preferences, slightly revised
menu items, and other changes to improve the look of the interface
in Panther. Many thanks!
- Made spacing changes for Panther in the German preference panel.
Thanks to Martin Kerz for the suggestions.
- There is a hidden preference item to turn off tag computation:
"defaults write TeXShop TagSections NO" but this preference was disabled
somewhere along the line and certainly in 1.30. It is enabled again.
- The Preference window is no longer hidden when the program is
deactivated.