The code snippet below works well on my Mac but under Linux I get the error messages
"! Illegal unit of measure (pt inserted)."
"! Missing number, treated as zero."
! Package calc Error: `s' invalid at this point."
for line 3 of the example.
\begin{tikzpicture}[thick,scale=0.9]
...
@AndrewStacey I'm pretty sure it was due to an old TikZ version. Each version had different bugs :-)
A LaTeXnical question: In this answer, percusse observed that \arraystretch adds more space at the top than at the bottom of an array. This is rather bad when an array is used for a vector or a matrix. Is there anyone who can explain why the LaTeX people chose to implement \arraystretch like this?
@HendrikVogt ease of implementation perhaps? arraystretch is simply a factor used to enlarge the row strut and since that strut is not symetrical to the baseline a factor means that the part above the baseline grows faster than the bottom.
@FrankMittelbach Yep, that's the explanation for the asymmetry, exactly! But it's not exactly difficult to get it symmetric - a simple \vcenter does the job. My impression was that it was a design choice, but I may well be mistaken.
@FrankMittelbach About the "bigger" material: that was what I was wondering about - which kind of stuff (that people are likely to put into an array) will grow more above the baseline? I use LaTeX for math only, so my imagination is limited ...
as I said the design choice might be that if you use a bigger font then the top part needs to be bigger than the bottom part. But I guess it is too late to ask :-) when I implemented "array" I took the basic assumption by Leslie in 2.09 for granted and only added \extrarowheight to allow some flexibility in spacing (when using rules)
@HendrikVogt don't forget that "array" and "tabular" share the same core so you always have to look at this from a table perspective not so much from a "math matrix" point of view
@HendrikVogt it is put in vcenter if you use [c] but this won't visually center if the height or the strut on the top row is bigger than the depth of the strut on the bottom
@DavidCarlisle Do you mean [c] as in \begin{array}[c]? That appears to be used by bmatrix - which I wasn't aware of yet, thanks for pointing this out! (bmatrix was where the problem arose nevertheless.) The problem is indeed the large height and small depth of the strut that \arraystretch produces. One would think that for a [c] array, the strut should also be centered, shouldn't it?
@HendrikVogt well one might think that, but the [] option is handled in pretty much the same way in array, tabular parbox etc [t] means baseline of first row [b] means baseline of bottom row and [c] means do whatever vcenter does. The option never changes the setting of the contents of the box. It so happens that for many reasons these points don't correspond visually with what you might hope. But without major upheaval eg latex3 coffins) that's just the way it is:-)
@DavidCarlisle I can live with "that's just the way it is", but I don't quite understand what you mean with "major upheaval". I don't know anything about tabulars, but for arrays I'd say: the reasonable and simple way would be to replace \@arstrutbox with \hbox{$\vcenter{\box\@arstrutbox}$} if the [c] option in in effect.
@HendrikVogt That won't work, if the strut wasn't stretched by arraystretch it would mean that the height of the strut was less than the height of a capital letter or bracket, so there would be effectively no strut at the top of the array so if stacked vertically (in a fraction for example) it will get to tight spacing.
Similarly you would get unneven row spacing in the table as any rows with only lowercase would have height the strut but any rows with brackets would have height of the large character.
What you could do if c was in effect is after the halign, unpack it re-asign the depth of the last row to be the minimum of its current depth and the height of strutbox, and then vcenter rather than just vcentering the box from the halign,
@DavidCarlisle It does work in this simple way; test the code from my answer :-) The effect of \vcentering the \@arstrutbox in the case of the default \arraystretch =1 is that the depth of the strut is decreased by 0.1pt, which is not a problem, I guess.
The height is of course increased by 0.1pt accordingly.
@HendrikVogt oh hadn't spotted this was related to a question, just following along in chat:-) Ah I assume those numbers are right but I still claim that it is wrong in principle even if it happens to work out at the standard font settings as the main function of the strutbox is to normalise the inter-row spacing within the table, and that should not be affected by the option to control its external alignment.
The functionality only overlaps on the first and last rows where the height and depth of the first and last strut respectively affect vertical alignment.
@DavidCarlisle Ah, OK, now I see what you mean. Again, it wasn't quite clear to me what [c] is actually meant for. Maybe an option for external alignment isn't quite the right thing for this. But with my redefinition of the \@arstrutbox I don't really effect the inter-row spacing within the table. I only wanted to effect the height of the first and the depth of the last row.
The thing with the 0.1pt could of course be easily fixed. I guess the \strutbox is font-dependent? Then of course one would need to compute this 0.1pt adjustment individually, but it shouldn't be hard to code that.
Thankfully, there’s a better solution for writing cross-platform rules which require system-specific commands. In Section 3.3, I mentioned about a special orb tag called @{SystemUtils} – it’s now time to unveil its power.
The manual is getting better! :)
@egreg: could you test if the installer launches in Java 5? :)
Can I post my question in german? If not I translate it in english later.
Hallo,
ich komme mit den Natbib-Biblatex Einstellungen nicht ganz zurecht.
In meinem Text verwende ich für die Quellenkennzeichnung \footcite mit 'authortitle-icomp'. Darstellung ist schick, genauso will ich es haben.
Im...
@egreg yes saw your comment afterwards. I would have tested it if an MWE were supplied, which given my tyoung accuracy is almost the same thing as your policy:-)
@DavidCarlisle I should be clearer. They work exactly as described in the e-TeX manual. Regrettably, that helps not one iota with tracking multiple marks. The xmarks docs have more on this (Frank's ideas, my .dtx tidying)
@DavidCarlisle @Joseph right ... the eTeX marks do not actually solve any problem as it turned out (and contrary to everybody's believe), so by the end of the day we had to keep the xmark implementation that just works with a single mark register
@JosephWright @David I just wonder if we properly documented why they do not actually help. If not we should do that at some point
Possible Duplicate:
Converting LaTeX to HTML5
Convert LaTeX to HTML
I would like to upload some notes on math on my site, and I thought it would look nicer to have it appear in a webpage manner rather than a list of hypertext that direct to pdfs. Is there some clever program that con...
In one of the latest "WTF" moves, my boss decided that adding a "Person To Blame" field to our bug tracking template will increase accountability (although we already have a way of tying bugs to features/stories). My arguments that this will decrease morale, increase finger-pointing and would not...
@FaheemMitha Sorry. :) It's a excerpt of a Monty Python episode called Silly Job Interview, where the interviewer (John Clesse) makes all kinds of nonsense things with the interviewee (Graham Chapman). :) youtube.com/watch?v=QjHCXcwpcvE
I'm 5 videos in of these series and once again Bernstein managed to remind me every detail why I hate his stuff :) If you want to kill time youtu.be/U3HLqCHO08s
@percusse A subgroup which is in the lower part of the paper is normal in the upper part of the paper, if they are connected by an edge. So, the operator is normality.
@KannappanSampath I just talk about the graphic no relation to the operators whatsoever. If vertical is normality, then what is horizontal aesthetically speaking?
@KannappanSampath OK let me reset, if you want two subfigures labeled and captioned you can use subcaption package as N3buchadnezzar has given. If you want to put two drawings in the same tikz picture then scoping is the way.
Code hérité utilisé seul me parait mauvais, hériter est censé être un verbe transitif. Si tu ajoutes un complément, je pense que cette traduction est très bonne. Exemple :
du code hérité de la version Fenêtre 95 du projet
Pour traduire legacy code dans son utilisation sans complément voici ...
"du code hérité de la version Fenêtre 95 du projet"
I don't know French, but Fenêtre 95 sounds like Finestra in Italian, which is... window?! :P
@percusse so many options/ribbons... I sometimes can't get basic things to work. For example (this must be a simple switch) - on OS X when I move the cursor keys, the window moves (the visible part of the table moves), but I can't get to the next/prev/upper/lower cell
But yes, I agree that excel is a really powerful tool, I've used it for years (some time ago...)
@KannappanSampath In Italian we say "risolubile". I'd go with "solvable" as usually I adopt American spelling and terminology. My book says that "soluble" is mainly British, while "solvable" is preferred by American authors.
@egreg I see. Thanks for the input. If I may ask, what is the reference about Americans preferring solvable while British preferring soluble? (the same book?)
@KannappanSampath The book is: John S. Rose, "A Course on Group Theory", Cambridge University Press. I got it at a summer school for graduate students some years ago.
Of course the author prefers British terminology. :)
@KannappanSampath In my fourth year I had a course on higher group theory, but it was mainly on infinite groups. As you probably know for some group theorists the following theorem holds: "Every group, apart for some unfortunate exceptions, is finite".
@KannappanSampath They are really two very distinct fields of research. But it's in general very important to find out what can be salvaged in passing from finite to infinite or from commutative to non commutative. Often, weakening the hypotheses allows for a clearer view of the matter. When group theory shifted from the study of permutation groups to abstract groups, for instance, it had a very rapid development and many proofs could be substantially simplified.
@N3buchadnezzar Then you shouldn't use axis equal and cousins
Each unit vector is set to the same length while the axis dimensions stay constant. Afterwards, the size
ratios for each unit in x and y will be the same.
Axis limits will be enlarged to compensate for the scaling effect.
@KannappanSampath Groups were born for studying algebraic equations. Lagrange was among the first to study them. He wanted to look at what properties are maintained when permutating roots of equations.
For instance, the "generic" equation of degree n is invariant under all permutations, which makes it unsolvable by radicals when the degree is greater than 4 (because the symmetric group on n elements is not solvable for n>4).
A cubic equation (over the reals) can be invariant under all permutations (three real roots) or only under the alternating group (only one real root). This accounts for the difference in the solutions: in the former case passing to the complex numbers is unavoidable.
Galois found out the condition for the equation to be solvable by radicals in terms of subgroups. It was only later that group theory evolved to "abstract groups", also by the influence of geometry (and infinite groups: Klein and the Erlangen program).
However, Cayley had already proved that any "abstract group" is a group of permutations on a set of elements. But it was in the direction of representing groups as permutations groups; then the theory abandoned this view.
@percusse IMHO I think bad code written in PHP put a stigma into the language itself. No language is good enough to avoid you write bad code. I had friends which are terrible with programming, but since PHP has a very soft learning curve, they got jobs as web developers. The result: bad programs. It's easier to blame the language than the code. :(