#### Getting rid of extra vertical space introduced by new environments?

Hi everyone,

I am sorry I don't seem to be finding an answer in the group log, so I
resort to this posting.  I have defined two new nested environments
(for double-counter reasons), where the container environment opens
and closes a tabbing around the contained sub-environment:

\newenvironment{xxx}{%
\par .........
\begin{tabbing}%
..............}{\end{tabbing}}

\newenvironment{subxxx}{%
..............}{.....}

and I use them in the following way:

...end of previous paragraph.
\\
\begin{xxx}
\begin{subxxx}.......\end{subxxx}\\ \>
\begin{subxxx}.......\end{subxxx}\\ \>
\begin{subxxx}.......\end{subxxx}\\
\end{xxx}

Start of new paragraph...

Everything works very well within the xxx group, BUT there is an
annoying extra amount of vertical space before and after the xxx group
that separates it from the previous and next paragraphs.  I suspect
that this extra vertical space was introduced by the three consecutive
begin's (xxx, tabbing, subxxx) and end's but I am not sure.  Note that
there was no extra vertical space when I only used the xxx environment
without tabbing and subxxx.

How can I get rid of this extra vertical space and just get a regular
1-line skip before and after the xxx group?

-Rene

 0
doursat (1)
10/2/2003 8:16:06 AM
comp.text.tex 37483 articles. 0 followers.

1 Replies
149 Views

Similar Articles

[PageSpeed] 52
 doursat@yahoo.com (Rene Doursat) writes:
>I am sorry I don't seem to be finding an answer in the group log, so I
>resort to this posting.  I have defined two new nested environments
>(for double-counter reasons), where the container environment opens
>and closes a tabbing around the contained sub-environment:
>
>\newenvironment{xxx}{%
>  \par .........
>  \begin{tabbing}%
>  ..............}{\end{tabbing}}
>
>\newenvironment{subxxx}{%
>  ..............}{.....}
>
>and I use them in the following way:
>
>   ...end of previous paragraph.
>   \\
>   \begin{xxx}
>   \begin{subxxx}.......\end{subxxx}\\ \>
>   \begin{subxxx}.......\end{subxxx}\\ \>
>   \begin{subxxx}.......\end{subxxx}\\
>   \end{xxx}
>
>   Start of new paragraph...
>
>Everything works very well within the xxx group, BUT there is an
>annoying extra amount of vertical space before and after the xxx group
>that separates it from the previous and next paragraphs.  I suspect
>that this extra vertical space was introduced by the three consecutive
>begin's (xxx, tabbing, subxxx) and end's but I am not sure.  Note that
>there was no extra vertical space when I only used the xxx environment
>without tabbing and subxxx.
>
>How can I get rid of this extra vertical space and just get a regular
>1-line skip before and after the xxx group?

first: there's no such thing as a 1-line skip in tex -- there are
vertical spaces of a certain size.  what you're seeing are vertical
spaces of whatever size.

tabbing is implemented as a list.  so, as a result, it gets the
vertical spacing around it that you see when you start or end a list.

the rules for lists are (a) there's always \topsep between the list
and surrounding material, and (b) if the list starts a new paragraph,
make that \topsep + \partopsep.

note that there's no check about how the list ends -- you cans start a
new paragraph _after_ a list, and the gap can still be \topsep if the
list started in horizontal mode.  (actually, of course, the gap will
be \topsep + \parskip, but \parskip is usually 0pt, or 0pt plus 1pt,
so at most the difference will be a bit of stretchability.)

you, of course, introduce a \par token before the start of your
tabbing.  (i really don't understand what that \\ is for ... apart
from being an attempt to confuse.)

for the unwanted vertical space.  just don't put that \par in, and
make sure there's no explicit or implicit paragraph end before the
tabbing starts.

http://www.tex.ac.uk/cgi-bin/texfaq2html?label=complist

basic ideas are the same.)
--
Robin (the partially spineless) Fairbairns, Cambridge

 0
rf53 (2582)
10/2/2003 10:17:57 PM
Similar Artilces:

FAQ - Etiquette
There are several FAQs about the Oracle database scattered around the Internet, and many ways of finding answers to the simpler questions about Oracle very quickly. The following list is a suggestion of where you might find answers to questions that you feel should have an easy answer. The Co-operative Oracle Users' FAQ http://www.jlcomp.demon.co.uk/faq/ind_faq.html The archive for this news group http://www.google.com select the GROUPS tab then work through the list to comp -> databases -> oracle A search engine for searching the manuals for current versions...

How to get a vendor to listen to you
I don't know how much of this is true or just conjecture, but it does paint an interesting picture about how to get support for a platform, despite political repercussions. Yousuf Khan http://www.theinquirer.net/?article=12797 ...

Spammer getting through my NAT router?
I have a home network that I thought was pretty secure. It uses an old Macintosh running the NAT program IPNetRouter. Sometimes I use the FTP or web server function of IPNetRouter, but fortunately no one writes viruses for old out&#8211;of-date Macs these days and I have never had a problem. These are currently turned off. I am upstairs running Windows XP with ZoneAlarm Pro (mostly to check for anything I don&#8217;t know about going out). I was surprised to find a few rare cases of ICMP packets coming in from the outside and reaching my PC. Most of these were responses to pings initi...

How to get combinations of a matrix
hello, I have R=[ 0 1 1 0 ] means 2 number are there and 4 places in R. I need 16 different R combinations. can anyone help me??? Thanks Ankur Ankur Garg wrote: > > > hello, > > I have R=[ 0 1 1 0 ] > means 2 number are there and 4 places in R. > > I need 16 different R combinations. > > can anyone help me??? > > Thanks > Ankur I'm not sure if I've understood your assignment properly, but this gives an interesting output that might be sort of what you want. str2num(reshape([reshape(dec2bin(0:15)',1,64); char(ones(1,64)*32)],8,16)') ...

Delete bad data and interplate the new data
I have a data array. But there is some bad data in it. I want to use the interpolative data to replace these bad points. It is easy to make a procedure to do it, but I wonder whether there is internal procedure in IDL. Best regards, Du Jian On Mon, 12 Mar 2007 02:23:54 -0700, duxiyu@gmail.com wrote: > I have a data array. > But there is some bad data in it. > I want to use the interpolative data to replace these bad points. > > It is easy to make a procedure to do it, but I wonder whether there is > internal procedure in IDL. Yes, INTERPOL: data=[1,2,3,42,5,6,7] badva...

How could I get two desktop Macs in two apartments of the same building to share the same contents?
How could I get two desktop Macs in two apartments of the same building to share the same contents, so that if I change the contents of one computer, the changes are reflected in the other computer? I would be the only person operating the computers. In both apartments I want to operate printers connected to the desktop Macs. I have an Airport Extreme and an Airport Express already hooked up to my existing Mac, so I'm wondering how I could extend my network into the second apartment, which is in a different apartment of the same building. Robert On 2013-03-18, Robert Montgo...

Space Empires IV #2
Space Empires IV has always been the best 4x game I've ever played. I recently bought Galactic Civilizations Gold but it has only caused me to once again appreciate what a true classic game Space Empires IV is. "Senica" <Bylleee@yahoo.com> wrote in message news:yPhCh.59300\$QU1.51763@newssvr22.news.prodigy.net... > Space Empires IV has always been the best 4x game I've ever played. I > recently bought Galactic Civilizations Gold but it has > only caused me to once again appreciate what a true classic game Space > Empires IV is. And you...

Get the pid of a os.startfile(filename)
Hi to all, How can I get the Process ID (PID) of an application started because of os.startfile(filename)? Or, better, How can I get the PID of a running program, suposing I know the name of the running application? Many thanks. Daniel Hi ! With W2K or WXP : tasklist /FI "IMAGENAME eq exename.exe" And, with Python, how capture this information : def findPID(exename): import os a = os.popen4('tasklist /FI "IMAGENAME eq '+exename+'"') a[0].flush() try: info=a[1].readlines()[3].split() except: info=[exename...

ANN: Hybrid Evolutionary Algorithms
---- New Book Release ---- Hybrid Evolutionary Algorithms Series: Studies in Computational Intelligence , Vol. 75 2007, XVI, 404 p. 207 illus., Hardcover ISBN: 978-3-540-73296-9 http://www.springer.com/east/home/engineering?SGWID=5-175-22-173746219-0 Hybridization of evolutionary algorithms is getting popular due to their capabilities in handling several real world problems involving complexity, noisy environment, imprecision, uncertainty and vagueness. This edited volume is targeted to present the latest state-of-the-art methodologies in 'Hybrid Evolutionary Algorithms'. This book ...

I Keep Getting and "unknown database" error when I open my program that is using Flashfiler
Hi, I have been using AccuEvents for my entertainment company over the past= 6 years or so. I'm not very good working with this Flashfiler server, so = I try not to make changes. However, due to a problem with one of the compu= ters on my network tried to make changes for the software to work. Now I k= eep getting an "unknown database" error when I open up the software after I= 've started the server. I have gone both thru the tcpi/int and single serv= er steps, but it keeps coming back with "unknown database". Can someone he= lp me solve this? Al...

sort and get index?
In matlab, the sort function returns two things: [a,b]=sort([5, 8, 7]) a = 5 7 8 b = 1 3 2 where a is the sorted result, and b is the corresponding index. Is there C++ code available to achieve this? Better compatible with STL vector. Thanks "b83503104" <b83503104@yahoo.com> wrote... > In matlab, the sort function returns two things: > > [a,b]=sort([5, 8, 7]) > > a = 5 7 8 > b = 1 3 2 > > where a is the sorted result, and b is the corresponding index. > Is there C++ code available to achieve this? Probably. You co...

FA: Brand New SPEED CHALLENGE Jacques Villeneuve's Racing
See link below for details: http://cgi.ebay.co.uk/ws/eBayISAPI.dll?ViewItem&rd=1&item=8168972822&ssPageName=STRK:MESE:IT Find this and more at our fully searchable EBAY shop: http://stores.ebay.co.uk/AUCTI0NST0P For Children's Games, Educational, Language & Recreational Software ...

Cannot get PiCTeX to process an example file.
Hi All, I bought the PiCTeX manual from PCTeX and copied the LaTeX code (see below) from page 71 of the manual. I guarantee there are no typos in my copying. I also bought the LaTeX CD from TeXnicCenter and use PiCTeX which came on that CD. When I run the code below through the LaTeX compiler from TeXnicCenter I get the errors: ! Undefined control sequence. <argument> \fiverm l.2566 \setplotsymbol({\fiverm .}) ! Undefined control sequence. <argument> \fiverm l.3102 \setshadesymbol ({\fiverm .}) ! Undefined control sequence. \ninepoint I have used TeXnicCent...

difference between chan gets / gets
Hi ! What difference between command chan gets and gets, chan puts and puts ? Many thanks ! serge_darin@mail.ru <serge_darin@mail.ru> wrote: > What difference between command chan gets and gets, chan puts and > puts ? They are supposed to be the same. puts is here for compatibility (and for those too lazy to write those extra 5 chars, like me), whereas chan is an attempt to have related functionality together in a single command. If you're old to tcl, you'll likely be used to top-level "puts", whereas if you're new to tcl, you're more likely to memo...

getting rid of a while(1) "poll"
Typical problem where a while(1) consumes gobs of CPU. Not as straightforward (to me) to figure out how to replace it with something more CPU friendly. The overall system has three daemons: 1) suck_packets_d 2) first_order_packet_filter_and_packet_buffer_d 3) extract_interesting_packet_features_and_generate_report_d Using some sort of blocking calls in 1) or 2) seems like a bad idea, because packet volume can be high and I want to keep up with it as much as possible. I could use some help thinking this through if anyone is so inclined. C / Linux pseudocode for daemon (2) (biggest ...

[telecom] Woman allegedly records own arrest, gets accused of wiretapping
Woman allegedly records own arrest, gets accused of wiretapping Massachusetts wiretapping law prohibits secretly recording police. by David Kravets May 11 2014 Ars Technica A Massachusetts woman faces charges of allegedly using a hidden mobile phone to audio-record her own suspicion-of-disorderly-conduct arrest. .... http://arstechnica.com/tech-policy/2014/05/woman-allegedly-records-own-arrest-gets-accused-of-wiretapping/ Per Monty Solomon: >Massachusetts wiretapping law prohibits secretly recording police. Can somebody explain the rationale for such laws? -- P...

New to the World of Digital Graphics
It's easy with Paint Shop Pro Learn the easy way with step by step instructions starting with the basics for free. Check out Paint Shop Pro 101 at Yahoo Groups. Join the fun of creating your own graphics for web pages, scrapbooking, photo shares and much more . . . http://groups.yahoo.com/group/PaintShop101 Catshoes wrote: > It's easy with Paint Shop Pro > Learn the easy way with step by step instructions starting with the basics > for free. > Check out Paint Shop Pro 101 at Yahoo Groups. Join the fun of creating your > own graphics for web pages, scrapbooking, pho...

Get Rich
Take advantage of a great deal ...

Process getting terminated
I am facing a very strange problem. We have a process that is getting terminated without giving any clue as to how it got terminated. There are 3 threads in the process and my logs indicate that each of them was in a waiting state when the process got terminated. I have put __try __except inside each of the top level functions being executed by the threads so that I do not miss any exception if any which might cause the process to be terminated. I hooked the ExitProcess function at the very beginning (inside winmain before the other threads are created) to figure out if any thread was ...

How to ignore white space changes using difflib?
I'm trying to use difflib to compare strings ignoring changes to white-space (space/tab). According to the doc page, you can do this by specifying a "charjunk" parameter to filter out characters: charjunk: A function that accepts a character (a string of length 1), and returns if the character is junk, or false if not. The default is module-level function IS_CHARACTER_JUNK(), which filters out whitespace characters (a blank or tab; note: bad idea to include newline in this!). But, I simply can't get it to work. I get exactly the same results with or with...

How can I get the mean of all elements of a 2D Array?
I found a VI to extract the minimal and maximal value of a array, but not the mean. Is there another possibility? Thanks Simon Use the Mean function.:smileywink: On the function palette, right at the very top, is a button called 'Search'. "Mean" is such a simple function, you should make your own. The following code works for 2D, 3D, 4D, etc. arrays. :D <img src="http://forums.ni.com/attachments/ni/170/198999/1/2Dmean.png"> (You might suggest to NI that "mean" should be made polymorphic with respect to array dimensionality.)Message Edited by alte...

How get on a computer from a lan?
I have a pc IBM Netvista and I know that it's possible start it from the lan when connected at lan. Do you know a program, codes and how do it? TKS On Fri, 27 May 2005 13:17:17 -0300, Rudy <rudy@genesi.ws> wrote: > I have a pc IBM Netvista and I know that it's possible start it from the > lan when connected at lan. > Do you know a program, codes and how do it? > TKS you need a dhcp server, as well as nfs, i think that's it. should boot from net fine once you have that. -- Using Opera's revolutionary e-mail client: http://www.opera.co...

DBPowerSuite New Release
New release at http://www.dbpowersuite.com. Still a free license. No new programs, but there are some significant enhancements and a couple of bug fixes. We've also built up the API so that it now can translate DDL from one database brand to another. The program which does the translating we are saving until the next release. Brian Ceccarelli .. ...

How to get a Maximal Image View in a Window?
*** post for FREE via your newsreader at post.newsfeed.com *** After I resized a (image) window how can I get the image maximized to fit the window? thanks Phuoc -- _/\__/\__/\__/\__/\__/\_ www.folksfun.com -----= Posted via Newsfeed.Com, Uncensored Usenet News =----- http://www.newsfeed.com - The #1 Newsgroup Service in the World! -----== 100,000 Groups! - 19 Servers! - Unlimited Download! =----- PC HUA <home-AT-huaonline.DOT.com> wrote: > *** post for FREE via your newsreader at post.newsfeed.com *** > > After I resized a (image) window how can I ...

How to get the function of the fitting surface?
Hi, all. I've some test data in three dimension. I can get the fitting surface by some function, e.g., the griddata function. I wanna to know whether MATLAB can get the function of the surface. If can, how to get it? Many thanks for your kind. bowlder. In article <41888f1d.47620859@news.cn99.com>, bowlder <bowlders@tom.com> wrote: > Hi, all. > I've some test data in three dimension. > I can get the fitting surface by some function, e.g., the griddata function. > I wanna to know whether MATLAB can get the function of the surface. > If can, how to get i...