[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: gEDA-user: OT: Latex



On Sat, Feb 06, 2010 at 02:15:48PM -0500, Dave McGuire wrote:
> On Feb 6, 2010, at 2:10 PM, gene glick wrote:
>>>   I use OpenOffice for quick & dirty stuff, but LaTeX (with PDF  
>>> output) for anything that has to look good.  Lyx is pretty nice but 
>>> those types of front-ends usually just get in the way.
>>
>> First off, thanks for the input from all.
>>
>> So you write in a text editor, add in your own codes?  OK.
>
>   I typically use emacs, yes.  Admittedly I don't write very long  
> documents...anything I write that's more than 20-30 pages is usually  
> postprocessed with a C compiler, not TeX. ;)

Ditto.

>
>>   This is new to me since I've used MS Word for ever, and Open Office 
>> to a lesser extent in the past 2 years.  I dread using Open Office for 
>> reports :( It's a huge struggle every time to get stuff to look nice.  
>> All the rhetoric about TeX sounds good.  So now I will see.  Lyx seems 
>> ok to me so far.  The option to edit directly is always there - I 
>> think.
>>
>> Anyway, time to fire up the Chevelle SS396, pop the clutch, burn some 
>> rubber, and haul butt up the learning curve :)
>
>   There you go. :)  TeX is extremely powerful, but there's a big  
> learning curve involved.  It sacrifices time and ease of use for  
> absolute control and unbelievably beautiful typesetter-quality output.
>

And stability over releases. I have documents that I wrote in TeX 25 
years ago and the layout does not change (well Latex has evolved a bit
from \documentstyle to \documentclass and so on), but on average
the backwards compatibility is outstanding.

There is one thing for which I don't use Latex, these are tables, for
some reason I always found using TeX's raw mechanism (\halign) much
more straightforward.

By the way, for my needs of including schematics in a report, I wrote
a macro something like 20 years ago that provides one feature I sorely
needed. I called it floatcontrol.sty and have attached it. 

The main use of this macro is to be able to control the pagestyle of a figure
which occupies a whole page. By placing:

\floatcontrol{\thispagestyle{empty}}

between the \begin{figure} and \end{figure}, header/footer/page number is 
eliminated from the page on which the figure (schematics in this case) 
appears. I've not tested if with recent Latex, but it works perfectly with
Latex 2.09. The original part of this macro is that it uses TeX's token
list registers, which I have not seen used very often, if ever.

	Gabriel
% Hacking to modify the external pagestyle inside figure or table environment
% Note that the definitions of the \newtoks\tk@x, must be at least as large
% as the list of potential float boxes \bx@x, as there is a one to one 
% relationship. (\tk@A is associated to \bx@A, and so on)
% This list MUST correspond to the list of the latex float boxes,
% This set of macro assumes that the name of the boxes is of the form
% \bx@'c' where c is one character of category 11. These macro also fail 
% if escapechar is not `\, but it is very likely to be true of LaTeX, too.
\newtoks\tk@void
\tk@void={}
\newtoks\tk@A
\newtoks\tk@B
\newtoks\tk@C
\newtoks\tk@D
\newtoks\tk@E
\newtoks\tk@F
\newtoks\tk@G
\newtoks\tk@H
\newtoks\tk@I
\newtoks\tk@J
\newtoks\tk@K
\newtoks\tk@L
\newtoks\tk@M
\newtoks\tk@N
\newtoks\tk@O
\newtoks\tk@P
\newtoks\tk@Q
\newtoks\tk@R

\def\flo@tcontrol#1{\global\@currtoks{#1}}
\let\floatcontrol\@gobble

\def\@xfloat#1[#2]{\ifhmode \@bsphack\@floatpenalty -\@Mii\else
   \@floatpenalty-\@Miii\fi\def\@captype{#1}\ifinner
      \@parmoderr\@floatpenalty\z@
    \else\@next\@currbox\@freelist{\@tempcnta\csname ftype@#1\endcsname
       \multiply\@tempcnta\@xxxii\advance\@tempcnta\sixt@@n
       \@tfor \@tempa :=#2\do
                        {\if\@tempa h\advance\@tempcnta \@ne\fi
                         \if\@tempa t\advance\@tempcnta \tw@\fi
                         \if\@tempa b\advance\@tempcnta 4\relax\fi
                         \if\@tempa p\advance\@tempcnta 8\relax\fi
         }\global\count\@currbox\@tempcnta
         \expandafter\n@metoks\@currbox
         \global\@currtoks\tk@void\let\floatcontrol\flo@tcontrol
         }\@fltovf\fi
    \global\setbox\@currbox\vbox\bgroup 
%    \boxmaxdepth\z@     % commented out 15 Dec 87
    \hsize\columnwidth \@parboxrestore}

\def\n@metoks#1{\expandafter\@n@metoks\string#1}
\expandafter\def\expandafter\@n@metoks\string\bx@#1{
         \edef\@currtoks{\csname tk@#1\endcsname}}

\def\@comflelt#1{\setbox\@tempboxa
      \vbox{\unvbox\@tempboxa\box #1\vskip\floatsep}
      \n@metoks#1\the\@currtoks}

\def\@comdblflelt#1{\setbox\@tempboxa
      \vbox{\unvbox\@tempboxa\box #1\vskip\dblfloatsep}
      \n@metoks#1\the\@currtoks}

\def\@wtryfc #1{\global\setbox\@outputbox\vbox{\unvbox\@outputbox
    \vskip\@fpsep\box #1}\n@metoks#1\the\@currtoks}



_______________________________________________
geda-user mailing list
geda-user@xxxxxxxxxxxxxx
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user