[TxMt] Latex Config and backward compatibility questions

Charilaos Skiadas skiadas at hanover.edu
Mon Jul 23 19:07:12 UTC 2007

On Jul 23, 2007, at 2:54 PM, Brad Miller wrote:

> Thanks for the comments, see below...
> --  
> Brad Miller
> Assistant Professor, Computer Science
> Luther College
> On 7/23/07, Mike Miller <mightymiller19 at gmail.com> wrote: >  
> > This one is more interesting.  We currently have two ways to
> > specify a master/root file.  Using this variable, or using the
> > TexShop %!TEX directive embedded directly in the file.  The TexShop
> > way seems clearly superior to me since it allows for more
> > flexibility than a single environment variable per directory or
> > project.  So my proposal is that the environment variable goes away.
> I agree that the %!TEX directive allows for more flexibility, but I
> think that there are several reasons that support for the environment
> variable should not be dropped.  First, at least in my case, it has
> always sufficed to use the TM_LATEX_MASTER environment variable, and
> I'm not sure that I can imagine a realistic situation in which one
> would need more than one master file per project.  Is there a common
> scenario in which one uses several "master" files for the same  
> project?
> Here's my scenario in the book I am writing.  I have a master file  
> for the entire book which includes the master files for each  
> chapter.  But each chapter is broken down into individual files for  
> big sections.  This scenario breaks the TM_LATEX_MASTER approach.

I assume then that one of the two levels of inclusion is with \input  
commands instead of \include commands, since \include commands can't  
be nested ASAIK?

I have to say that I would like to keep TM_LATEX_MASTER and the %!TEX  
directives, and have the directives take precedence if present. I  
suppose this adds complexity which we are trying to avoid, but for me  
the fact that the directives need to be included in each file is  
quite bothersome, especially when moving files around to new projects  
or whatnot. But I can also see its usefulness in your case.

I suppose the way I would organize your situation is that I would  
have a separate tmproj file for each chapter, when I want to work  
with a particular project.

So, I assume that your are solving the problem of having each chapter  
compile on its own and at the same time be includable in the master  
document in the standard not very pretty method using conditionals?

> Second, if I'm not mistaken, the %!TEX directive must be placed
> manually in every new file that is created in a project; however, if
> one uses the TM_LATEX_MASTER environment variable, a new file in a
> project is automatically assumed to have the same master file as the
> environment variable.
> This could be solved by modifying the standard latex templates, or  
> adding another command to the latex bundle that allows you to  
> quickly add a directive line to a new file.

As well as edit an existing directive line. Would that command try to  
automatically figure out the name of the master file, or would the  
user be expected to type it in?

> Basically, I think that one master file per project makes sense
> because, well, it's a "master" file!
> The dialog looks great, but I do have some questions.  How does one
> add a viewer to the list of choices for default viewer?
> You would have to modify the nib.
> Also, I'm
> slightly confused about how the options for opening the viewer
> interact with the error reporting.  Do these settings have any effect
> on the error reporting window?  If they don't, how will one set what
> is currently known as TM_LATEX_ERRLVL?  I think that these settings
> (error reporting and viewer settings) should be independent.
> Personally, I would like to have the viewer always open, but I would
> also like to always be shown the errors/warnings that result from a
> compile.
> The three radio boxes were meant to take the place of the  
> TM_LATEX_ERRLVL environment variable.
> Always open viewer means that the script will always try to open  
> the viewer regardless of errors or warnings.
> Open viewer unless errrors means that the script will open the  
> viewer unless there are errors
> Open manually means you will always have to press the button to  
> open the viewer
> If you use an external viewer then the textmate window with any  
> errors or warnings will always stay around.  Just like it does now,  
> or am I missing something?  I may be slightly confused on this  
> based on how I've had my ERRLVL set...
> Do we need a separate checkbox that says keep textmate html window  
> open?

No, but we do need to make sure that it does stay open based on which  
of the three preferences the user has selected ;)

> Brad
> Thanks,
> Mike Miller

Haris Skiadas
Department of Mathematics and Computer Science
Hanover College

More information about the textmate mailing list