On 7/23/07, Charilaos Skiadas <skiadas@hanover.edu> wrote:
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@gmail.com> wrote: >
> TM_LATEX_MASTER
> > 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.

Yes.

I don't think that keeping TM_LATEX_MASTER around is that much extra work.  In fact I had already coded up using it before I started work on this configuration interface.  I have plenty of old papers and projects that will break if I remove TM_LATEX_MASTER so I don't know how strongly I feel about getting rid of this one variable.

But, the question is how should we let the user set their root file?  Through the standard way of setting a project environment variable?  Tell them to edit .textmate_init, or provide another dialog  that either writes to .textmate_init or adds a line to the current file?  It seems a bit confusing to give the user two totally different ways of configuring something as simple as the master file.


>
> 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?

I suppose it could look for other .tex files in the same directory and if they have a root directive already in place that could be suggested.
 


>
> 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 ;)

So, maybe we should be more clear in the preferences window:

Provide a checkbox that says:   Automatically start external Viewer

And the radio boxes should say:

Close output if no errors
Close output if no errors or warnings
Do not close output window

That may be a more direct way of saying what the ERRLVL variable is really getting at.  What do you think??

Brad
 

> Brad
>
>
> Thanks,
>
> Mike Miller

Haris Skiadas
Department of Mathematics and Computer Science
Hanover College





______________________________________________________________________
For new threads USE THIS: textmate@lists.macromates.com
(threading gets destroyed and the universe will collapse if you don't)
http://lists.macromates.com/mailman/listinfo/textmate



--
Brad Miller
Assistant Professor, Computer Science
Luther College