Want to take part in these discussions? Sign in if you have an account, or apply for one below
Vanilla 1.1.10 is a product of Lussumo. More Information: Documentation, Community Support.
Have added to HowTo a description for how to label equations
In the course of this I restructured the section “How to make links to subsections of a page” by giving it a few descriptively-titled subsections.
have added to HowTo right after the mentioning of the CodeCogs page also a link to the (new?) QuickLatex tool.
I was reminded of some things that I had wanted to add to the HowTo page, and now I finally got around to doing so:
I added a new section How to organize and write content with new subsections:
I have also added a subsection:
Oh, and now I have spotted and removed the subsection “How to ask questions”. I think we all agree that this initial idea we once had didn’t work out and should be abandoned, reproduced below just for the record:
[ begin obsolete old text ]
If you want to make a comment or question about a page without changing its main content, then edit the page and put your comment or question in a query block as shown in this example:
+-- {: .query}
How do I ask a question?
=--
which produces
+– {: .query} How do I ask a question? =–
Note that a query block should be less permanent than the rest of the page; once your comment is addressed or your question is answered, you can probably remove your query block.
If you want to ask a question of a specific person, then you can place a query block on their user page (which is just a page whose title is their name). You should be able to find all user pages here.
If your comment or question is more general than a specific page or person, then try the n-Forum. Previous discussions have been on the General Discussion page and on an entry at the n-Cafe. These previous discussions should not be added to but you may find your question answered there. Important answers are being migrated to this How To and the FAQ. As this is a Wiki, if you find an answer to your question and feel it should be added to one of those then do so.
[ end obsolete old text ]
That text shouldn't be removed entirely; it's still a formatting feature that's sometimes useful and should be documented.
The section has been edited bit by bit over the years as we've pulled away from heavy use of query boxes. It ought to start by pointing people to the Forum (instead of ending with this as it last did) and then show how to make a query box if people want to.
I will try to write a section like that now. … Done.
I have added a section: How to… upload files.
under HowTo#instiki_howto changed the currently broken external link on “Add metadata to your markup” from http://maruku.rubyforge.org/proposal.html to https://golem.ph.utexas.edu/~distler/maruku/proposal.html
I don’t know what to do about the broken link on “Make tables, footnotes, etc” http://maruku.rubyforge.org/maruku.html#extra
I mentioned that there was an invalid equation on that page on another thread.
In order to improve the order-by-relevance of the material, I moved up the section How to make links to subsections
I see now that this has a little bit of overlap with the new section on how to put references that I just added, but it’s maybe still good to have the latter
This page is great, and I will definitely reference it in the future, but after about a year or two of editing here, I’m not sure I’ve ever seen it.
I think it would be very nice if the editing page always included a link to this page right at the top. The edit page has some nice markdown tips, but this page has stuff like table of contents and theorem environments that are less common.
I think it would be very nice if the editing page always included a link to this page right at the top.
That sounds indeed like a good idea: include a pointer to HowTo in the line on top of each nLab entry.
We will have to bring this to the attention of Richard. Probably he will see this here. If not, let’s remember to contact him about it.
I noticed that the text under Software requirements was badly outdated.
I rewrote a bit, to the best of my knowledge, in particular I mentioned MathJax (which wasn’t around yet when that section was last edited!) But somebody more expert should please check, especially the following points:
is installing STIX fonts still something one needs to do?
what’s the latest on Opera supporting MathML? It said something about the “recent” version, but that will be long outdated now.
Is it still true that IE (or any other browser) works with or needs the MathPlayer plugin? My impression is that this is a thing of the past?
Anyway, somebody who knows about this might want to start this section completely from scratch, with up-to-date information.
I don’t think STIX fonts are needed… at least, I haven’t installed them on my new computer and things still look fine.
just downloaded the latest Opera-version to check. But it calls MathJax instead of rendering MathML natively. So I removed that outdated line regarding Opera that we had. Also removed the statement about IE needing MathPlayer.
So now it just says that Firefox is currently the only browser with native MathML support, the rest of the crowd falls back to MathJax.
Which is a pity. Since its last update Firefox has become ridiculous, tending to take several seconds for opening new windows.
(I followed the instructions that are offered online for how to work around this most unbelievable issue, but first of all I don’t actually want to clear my browsing history, as I am being advised, and it didn’t actually help for more than half an hour anyway. )
The howto still mentions the Stylish plugin. However, there have been problems with it spying on people. There is a replacement. As I’m not using the plugin myself, I won’t change the howto, but people using it (Mike?) may want to have a look.
I’ve never used Stylish.
Bas, just add the very information that you just mentioned to the HowTo, then anyone using that plugin can check for themselves.
At How to make links to subsections, some of the wikilinks inside verbatim displays are getting parsed when they shouldn’t be.
Excellent. Thank you!
I have further specified the pointer to the nForum to a pointer to this particular thread here, to free the user of the need to create a new thread, come up with a decent thread title etc.
Good idea, thanks very much!
I think HowTo could still do with quite a bit of work, for example rearranging parts of ’How to organize and write content’ and ’Special typesetting features’ into one clean section which covers all typesetting, putting everything else, like CSS, how to ask questions, etc, in some other section. I’m also not sure about the ’Template’ page. I think now we could just link to a few particularly nicely constructed pages (many of them have a cohesive style, so it shouldn’t be too much of a problem).
I’ve also not yet added the LaTeX syntax for table of contents or sectioning to the HowTo. I will also eventually tweak the sidebar to the right when one edits a page to cover a bit more.
We should add a bunch of examples of tikzcd
-diagram typesetting, with output in parallel to the source code, both for convenient copy-and-pasting for regulars, as well as a guide for newbies
I have added the example of adjoint functor notation here.
But there is a weird bug: You’ll see that the very last line of the escaped code is lacking its backslash – that’s because when adding that backslash (in the escaped code!) I get an error message upon “submit”-ing the entry (?)
Am slowly beginning to switch my typesetting here to the new tikz-functionality.
Is there a way to use the existing equation numbering functionality for formulas created with tikzcd here?
I have now fixed the issue mentioned in #30, also discussed in #43 here, to allow for the diagram code to be displayed verbatim. See here for the github commit.
As Urs suggested earlier in the thread, it would be good to collect together in the HowTo all common diagram shapes, e.g. commutative squares, triangles, 2-cells, …
As for troubles with h6. I don’t think that it is a feature that the “Theorem” shows up in the table of contents at HowTo#latex_syntax
Where the new environment-syntax was mentioned (here) with but a pointer to the page’s source, I have added display of the code that the reader needs to know.
Apparently the issue is that the new syntax doesn’t allow itself being escaped, but I worked around it:
\begin{theorem}\label{SomeTheorem}Some theorem.\end{theorem}:-)
(So this won’t allow being copy-and-pasted usefully, but at least the reader gets to see what they need to see.)
(Oh, in fact, copy-and-pasting the code displayed in #42 works just fine.)
Nice, thanks!
Thanks, that’s a good point.
I used to think that labels didn’t allow anything but the plain alphabetic characters. But recently I saw somebody use Umlaute in labels, and it worked. So I don’t actually know what the rules here are. But I am forwarding the question to the technical board.
Hm, wait, I just experimented in the Sandbox and saw your previous experiments there.
For a Definition/Theorem/Proof-environment a label with “-
” does works (here).
It seems to fail for labels of equations, which is the case you seem to have dealt with.
Following discussion here I have removed the pointer to How to get started, since, besides offering motivation and encouragement, that page focused on outdated procedures.
In its stead, I have replaced the previous pointer by this line (adopted from “How to get started”):
If you feel you can most easily start by modifying an example, look at the template page and do experiments in the Sandbox.
Re #51
This is because:
They apparently parse things differently:
We only have control over the Python renderer. We could restrict the allowed characters to match Maruku, but then we would have to check all existing pages (and perhaps revisions, but those are not rendered by the Python renderer anyway).
I kept the paragraph about the SQL database, is it still relevant?
Added:
A current git repository of the source code for nLab pages is available at https://github.com/ncatlab/nlab-content and a current git repository of the compiled HTML code for nLab pages is available at https://github.com/ncatlab/nlab-content-html.
Deleted the following text:
It is possible to download an SQL dump of the nLab database, from which both the nLab and nForum can be reconstructed. Some of us are running cron jobs to do this regularly. The more the merrier: if you are interested, please request that we create a user for you to be able to do this in the nForum, say in this thread.
Attempted to update the information about browsers:
{#software}
The nLab serves mathematical symbols as MathML. Presently the browsers with native MathML support, and hence immediate rendering of the formulas, are those based on the Gecko, Blink, and WebKit rendering engines, e.g., Firefox, Chrome/Chromium, Safari, etc.
Older unmaintained browsers like Internet Explorer, as well as a few obscure mobile and desktop browsers, fall back to rendering MathML formulas using the MathJax [polyfill](https://en.wikipedia.org/wiki/Polyfill_(programming%29). This works, but is slow. On small pages it is fine, on larger pages with many formulas MathJax may take up to several minutes for rendering.
Not sure where to ask this but we need to run a site-wide search-and-replace from www.math.jhu.edu
to math.jhu.edu
as the former is no longer reachable (the website hosts Riehl’s Category Theory in Context).
A centralised bibliography would be nice, but I don’t know if that’s doable with the existing wiki markup (individual pages may still want to point to specific pages).
Thanks for the alert.
The way to do such searches is with the site:
-tag in Google search:
https://www.google.com/search?q=www.math.jhu.edu+to+site:ncatlab.org
This gives me about half a dozen of valid hits, but all of them have the search string inside pdf’-s which we are mirroring on the nLab, and so there is nothing really we can do about.
The reference in question already does have its own page, as you have seen: Category Theory in Context. Such category:reference
-pages are the closest we have to a database of bibitems.
I see you have fixed the URL there. That’s good, and that’s all there is to be done in this case — as far as I can see.
Thanks for the alert.
The section “Ho to merge pages” was added by Toby Bartels way back in March 2010 (revision 78).
What looks like empty lines are ill-escaped redirect command lines: You can see in the source the intended output:
1. Edit 'A' so that it looks how you want, and add the line '[[!redirects B]]' to the bottom. Submit.
I am not aware that this code would have rendered properly in earlier versions of the nLab software. Maybe nobody ever proof-read these paragraphs.
In any case, I am editing that section now to fix this and some other issues.
I have rewritten the instructions for “How to merge pages” (here).
Besides fixing the previously broken command-escaping and making some streamlining to the instructions, I have added a line at the top discouraging users a little from doing this:
In most cases it will be best to raise the issue on the nForum, check if regulars agree that the pages ought to be merged, and hope that one of them takes care of it.
If you do decide to merge on your own, here are instructions. …
Re #69: It does not have to be a number, any alphanumeric id will do.
In fact, one can use the same alphanumeric id as for the bibliographic entry itself, i.e., the one inside {#…}, since in this case there is no conflict and the entry will be just as copy-pasteable.
I just found out then when uploading a file you just need to have an address for the file to be uploaded, then when you click on the link it calls for the file.
That seems easier than what we have outlined here. But maybe the existing way has advantages?
If there is an alternative way then best to describe it in the HowTo alongside other ways.
Yes, seems to work. You just write
[filename] (/nlab/files/filename.xyz)
without the space. I’ll change the HowTo.
I keep seeing locked pages at the moment. Is something strange happening?
This has always been happening, but the frequency has drastically increased more recently. I am guessing that bots crawling the nLab are inadvertently also triggering the edit function, and that there are more such bots these days, due to AI needs.
In the same vein, the frequency with which the nForum becomes unresponsive has also drastically increased, and it seems to be due to bot traffic.
… but the frequency has drastically increased more recently.
This could become quite a pain. I guess we’ll just ’edit anyway’, and hope there aren’t clashes.
I believe it should be save to “edit anyway” when it says “Anonymous is currently editing the entry” because “Anonymous” is no longer allowed to save! Conversely, I doubt that ordinary users can still cause a block with this message.
(But I am just guessing here.)
Re #81: This is a problem with the new parser. The old parser (used for history) renders it correctly:
https://ncatlab.org/nlab/revision/HowTo/210#how_to_add_a_floating_table_of_contents
I see. I could bring this up to the technical team, but nobody will be working on this anytime soon.
Created a new section from the material that was previously at FAQ:
The nLab uses the itex2MML software with custom in-house hacks to typeset formulas. Its syntax is based on TeX (supporting many macros from plain TeX and LaTeX), with some important unfortunate differences documented below. The reasons for these differences are mostly historical: when the nLab was created in 2008, there was no standardized software to support formulas (like MathJax these days), with multiple competing solutions like itex2MML, jsMath, and others.
One of the notable ways in which iTeX differs from LaTeX is that in iTeX’s math mode, a string of letters without spaces in between is interpreted as a single identifier. This has the advantage that you can invent new identifiers without needing to use \operatorname
or \DeclareMathOperator
, but it means that when you don’t want a string of letters interpreted that way you need to put spaces in between. For example, $sin(x)$
produces sin(x) which is probably what you want, but $h=gf$
produces h=gf, whereas you probably wanted to write $h=g f$
to get h=gf. On the other hand, you can (and, for the sake of the LaTeX output, probably should) use $\sin(x)$
, etc.
iTeX is not LaTeX. Their similarity can make the differences all the more jarring. Here is a list of the differences that we know about together with suggested work-arounds.
Numbers are one thing. The syntax $10^10$
produces 1010 in iTeX but 1010 in LaTeX. The safe syntax is to always use braces: $10^{10}$
is consistent.
Numbers include punctuation. Periods and commas within numbers are numbers. This is so that $1,000,000.00$
(or $1.000.000,00$
if you are European) renders correctly as 1,000,000.00 and not 1,000,000.00. When combined with the previous difference, this means that $t^3.2$
renders as t3.2 instead of t3.2. Either use braces or spaces. (However, for some reason, $t^3,2$
renders as t3,2 like you'd expect from TeX, so the two differences don't interact entirely logically. This might have been different in earlier versions of iTeX.)
Operator names. Since iTeX does not have macro support, extending the list of operator names would be difficult except for the fact that neighbouring strings of letters get combined into an operator name. Thus $cos$
produces cos. However, in LaTeX this produces cos. Where the operator name is a standard LaTeX one, such as \cos
, the backslash can be added so $\cos$
renders correctly in both cases. Where the operator name is not a standard LaTeX one, say Poly
, the safe syntax is to use \operatorname
; thus $\operatorname{Poly}$
renders correctly as Poly in both situations. If you don't want an operator name, then use spaces; thus $c o s$
produces cos.
Whitespace in embedded text. In LaTeX $x \text{ and } y$
renders as xandy but in iTeX it renders as xandy. This is because MathML says that fore and aft whitespace on mtext
elements should be swallowed. The safe syntax is $x\;\text{and}\;y$
.
Two-character relations. In LaTeX, two neighbouring relation symbols are combined into one relation symbol. Thus $y := f(x)$
becomes y:=f(x), while $y = -f(x)$
becomes y=−f(x) because a minus sign is a unary operator instead of a binary relation. Since MathML doesn't know the difference between unary operators and binary relations, it is inconvenient for iTeX to do this, so $y := f(x)$
comes out as y:=f(x) instead. The safe syntax is $y \mathrel{:=} f(x)$
, which produces y:=f(x). However, in many cases, there is a combined command that you can use. In this case, $y \coloneqq f(x)$
produces y≔f(x). This method is better when available; even in LaTeX, it will adjust the vertical positioning a bit to look nice.
Non-ascii characters. iTeX is designed only to parse the mathematical sections of any page and so it assumes that any strange characters will be generated via iTeX commands such as \infty
instead of being directly input as ?. iTeX actually takes an extreme view on this and will not parse mathematics if it includes non-ascii characters. In ordinary mathematics this should not be a problem since one should use the iTeX commands themselves to produce such characters. Where it can be a problem is in \text
commands embedded in mathematics because these are still parsed by iTeX even though it does nothing with them. Thus \text{?}
is not a legal construct and will simply produce ?. Since iTeX does not allow nesting, the construction \text{$\infty$}
will not work. There are two possibilities:
\text
command: \text{in~}\infty{-categories}
produces in∞−categories (note the forced space, simple whitespace there will not work).\text{in ∞-categories
produces in ∞-categories. Named entities will not work here as they get converted to unicode internally before being sent to the iTeX parser.The characters < and > are interpreted as beginning or ending HTML tags. To make a less-than or greater-than sign in iTeX math mode, use \lt
and \gt
respectively. For example, $0\lt 1$
produces 0<1.
Relocated the following section from the FAQ:
You can use HTML/XML/SGML character entity references. If the character you want has a mnemonic HTML name, like é for é, you can use that. Otherwise, you can use an SGML numerical code, like 㒫 for 㒫, that corresponds directly to Unicode. To look up the numbers for SGML characters, try the Unicode Character Names Index. Toby has a complete list of HTML and XML character entity references (or try the Unicode Databank pages listed below) with individual pages where you can check browser compliance (originally for when you couldn't take even things like ↔ for granted, but even now ‎ and   may be lacking). While you can use this technique for mathematical symbols too, it's best to do those in iTeX as explained above.
Deleted the following material, none of which works anymore:
(Firefox - and clones - specific)
Here are some search plugins for firefox that will let you search the nLab from the firefox search bar. EDIT: These are old and may not work with recent versions of Firefox. Instead you can use the search engine creator plugin. Someone should update these files to conform to OpenSearch; then they might work with other browsers too.
It would be nice if these had different icons. To use one or more of these, drop them in the ’searchplugins’ directory of your firefox profile.
Alternatively, you can try the add to search bar add-on for Firefox. This will let you right-click in the search box on any page and add it to your search bar. (You can’t duplicate the “goto” and “edit” plugins this way, though.)
Relocated from FAQ:
You should, of course, include a link or URL to the page or pages that you wish to cite. You should also give the information about which version of the page you are citing, since pages change over time. The version number can be found as follows: look at the bottom of the page where it says “Back in time (N revisions)”; the current version number is N+1.
You can link directly to the version you want to cite by using a url such as
http://ncatlab.org/nlab/revision/PageName/VERSIONNUMBER
We recommend that if you only include one URL, it be of the form show/PageName
which will point to whatever version of the page is current when it is accessed. This is because pages generally improve over time, and whoever is following your reference ought to be taken to the best, up-to-date version of the page. Anyone who cares about finding the exact version of the page that you cited can figure out how to find it in the history.
On the other hand, if you can give two URLs (this would be cumbersome in a printed paper, but is possible with links on a web page), then it may be helpful to give the appropriate revision
link as well as the show
one.
All nLab pages now include a “Cite” link at the bottom of the page which produces a BibTeX entry in accord with the suggestions above.
Relocated from FAQ:
The _n_Lab has a spam filter that checks your IP against a blacklist. The blacklists used are maintained by spamcop.net and spamhaus.org. IPs are added to these lists if they are detected doing things usually associated with computers infected with viruses. There are instructions on the webpages for finding out if your IP has been added to these lists and what to do to remove your IP from them. Three things to point out are:
Sometimes something doesn’t work quite right with the software and it bails out. If you think that you were doing something that should work, please log the error message at the nForum. The more information that you log, the easier it is for us to debug. Useful information is: your IP, the time and date, and the URL that you were trying to access.
There is actually more information contained in the HTML source of the error message (“view source”): some errors can be down to malformed input when editing a page and that can help you fix it yourself.
From the FAQ, with new section title:
There are numerous ways you can help out and get acquainted with the community even if you don’t (yet) feel comfortable writing math publicly on a wiki.
You can do Lab elf duty, such as correcting typos and spelling errors, fixing links, creating links, creating redirects (there are many pages that still need redirects created for alternate and plural forms of the title), organizing pages, and so on.
You can ask questions (see previous question), and join discussions, at the nForum, and comment at the nCafe.
You can try writing small additions to existing pages, for instance a paragraph or two that helps explain something that puzzled you initially. If you aren’t entirely positive that what you wrote was correct, when you announce your edit at Latest Changes on the nForum, you can mention that you’re unsure and someone will usually reassure you or give a correction.
If you don't sign your edits, then they are attributed to Anonymous. We prefer that you sign your edits, but anonymous help is better than none at all, so that option is available to you.
From the FAQ:
The home page has a (rather slow) search box.
Instiki’s search uses regular expressions. That means you can do all sorts of fancy searches, but it also means that pages with special characters in their names are hard to search for. For instance, if you search for (n,r)-category
you will come up with nothing, because Instiki interprets the parentheses as a regular expression grouping construct. To search for actual parentheses, you need to backslash them: search instead for \(n,r\)-category
.
That’s useful to know!
How did you figure this out?
Re #93: I only found about the “nowiki” tag recently. But somehow nowiki either fails to prevent the software from parsing the “include” directive,
or it also prevents it from typesetting the verbatim text block properly. I then looked in the page source to see how the nLab typesets verbatim text blocks using HTML, which it does using <pre><code>
. Combining the two had the desired effect.
In the section “How to contribute to the nLab in ways other than writing articles?” point number 4
If you don’t sign your edits, then they are attributed to Anonymous. We prefer that you sign your edits, but anonymous help is better than none at all, so that option is available to you.
is no longer true for a few years now since all editors are now required to sign their edits.
Migrating content from Searching the nLab.
1 to 99 of 99