Not signed in (Sign In)

Not signed in

Want to take part in these discussions? Sign in if you have an account, or apply for one below

  • Sign in using OpenID

Site Tag Cloud

2-category 2-category-theory abelian-categories adjoint algebra algebraic algebraic-geometry algebraic-topology analysis analytic-geometry arithmetic arithmetic-geometry book bundles calculus categorical categories category category-theory chern-weil-theory cohesion cohesive-homotopy-type-theory cohomology colimits combinatorics complex complex-geometry computable-mathematics computer-science constructive cosmology deformation-theory descent diagrams differential differential-cohomology differential-equations differential-geometry digraphs duality elliptic-cohomology enriched fibration foundation foundations functional-analysis functor gauge-theory gebra geometric-quantization geometry graph graphs gravity grothendieck group group-theory harmonic-analysis higher higher-algebra higher-category-theory higher-differential-geometry higher-geometry higher-lie-theory higher-topos-theory homological homological-algebra homotopy homotopy-theory homotopy-type-theory index-theory integration integration-theory k-theory lie-theory limit limits linear linear-algebra locale localization logic mathematics measure-theory modal modal-logic model model-category-theory monad monads monoidal monoidal-category-theory morphism motives motivic-cohomology nlab noncommutative noncommutative-geometry number-theory of operads operator operator-algebra order-theory pages pasting philosophy physics pro-object probability probability-theory quantization quantum quantum-field quantum-field-theory quantum-mechanics quantum-physics quantum-theory question representation representation-theory riemannian-geometry scheme schemes set set-theory sheaf simplicial space spin-geometry stable-homotopy-theory stack string string-theory subobject superalgebra supergeometry svg symplectic-geometry synthetic-differential-geometry terminology theory topology topos topos-theory tqft type type-theory universal variational-calculus

Vanilla 1.1.10 is a product of Lussumo. More Information: Documentation, Community Support.

Welcome to nForum
If you want to take part in these discussions either sign in now (if you have an account), apply for one now (if you don't).
    • CommentRowNumber1.
    • CommentAuthorUrs
    • CommentTimeFeb 28th 2011
    • (edited Feb 28th 2011)

    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.

    • CommentRowNumber2.
    • CommentAuthorUrs
    • CommentTimeMar 29th 2012

    have added to HowTo right after the mentioning of the CodeCogs page also a link to the (new?) QuickLatex tool.

    • CommentRowNumber3.
    • CommentAuthorUrs
    • CommentTimeSep 15th 2012
    • (edited Sep 15th 2012)

    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:

    • CommentRowNumber4.
    • CommentAuthorUrs
    • CommentTimeSep 15th 2012

    I have also added a subsection:

    • CommentRowNumber5.
    • CommentAuthorUrs
    • CommentTimeSep 15th 2012
    • (edited Sep 15th 2012)

    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 ]

    How to leave comments and questions

    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 ]

    • CommentRowNumber6.
    • CommentAuthorTobyBartels
    • CommentTimeSep 17th 2012
    • (edited Sep 17th 2012)

    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.

    • CommentRowNumber7.
    • CommentAuthorUrs
    • CommentTimeFeb 7th 2018
    • (edited Feb 7th 2018)

    I have added a section: How to… upload files.

    • CommentRowNumber8.
    • CommentAuthorRodMcGuire
    • CommentTimeJun 7th 2018

    under HowTo#instiki_howto changed the currently broken external link on “Add metadata to your markup” from to

    I don’t know what to do about the broken link on “Make tables, footnotes, etc”

    diff, v151, current

    • CommentRowNumber9.
    • CommentAuthorTim_Porter
    • CommentTimeJun 7th 2018

    I mentioned that there was an invalid equation on that page on another thread.

    • CommentRowNumber10.
    • CommentAuthorUrs
    • CommentTimeJun 14th 2018

    prodded by discussion here I have added to the HowTo-page a section:

    How to cite and record references

    • CommentRowNumber11.
    • CommentAuthorUrs
    • CommentTimeJun 14th 2018

    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

    diff, v152, current

    • CommentRowNumber12.
    • CommentAuthormaxsnew
    • CommentTimeJun 14th 2018

    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.

    • CommentRowNumber13.
    • CommentAuthorUrs
    • CommentTimeJun 15th 2018

    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.

    • CommentRowNumber14.
    • CommentAuthorUrs
    • CommentTimeJun 15th 2018
    • (edited Jun 15th 2018)

    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.

    diff, v153, current

    • CommentRowNumber15.
    • CommentAuthorMike Shulman
    • CommentTimeJun 15th 2018

    I don’t think STIX fonts are needed… at least, I haven’t installed them on my new computer and things still look fine.

    • CommentRowNumber16.
    • CommentAuthorUrs
    • CommentTimeJun 18th 2018

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

    diff, v156, current

    • CommentRowNumber17.
    • CommentAuthorspitters
    • CommentTimeJul 20th 2018

    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.

    • CommentRowNumber18.
    • CommentAuthorMike Shulman
    • CommentTimeJul 20th 2018

    I’ve never used Stylish.

    • CommentRowNumber19.
    • CommentAuthorUrs
    • CommentTimeJul 21st 2018

    Bas, just add the very information that you just mentioned to the HowTo, then anyone using that plugin can check for themselves.

    • CommentRowNumber20.
    • CommentAuthorUrs
    • CommentTimeOct 26th 2018

    I have fixed the coding of “How to upload files” (it had only one instead of two hashes and hence didn’t show up in the ToC) and then I moved it further up in the list of items, where it seems to fit more logically

    diff, v159, current

    • CommentRowNumber21.
    • CommentAuthorMike Shulman
    • CommentTimeOct 29th 2018

    At How to make links to subsections, some of the wikilinks inside verbatim displays are getting parsed when they shouldn’t be.

  1. Updated ’downloading local copy of the nLab’ section.

    diff, v161, current

    • CommentRowNumber23.
    • CommentAuthorUrs
    • CommentTimeJan 10th 2019

    Excellent. Thank you!

    I have further specified the pointer to the nnForum 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.

  2. Good idea, thanks very much!

  3. Updated instructions for adding commutative diagrams and images. Removed various deprecated methods, including all material on the SVG editor, which was removed from the codebase some months ago.

    diff, v163, current

    • CommentRowNumber26.
    • CommentAuthorMike Shulman
    • CommentTimeJan 20th 2019

    Also remove link to SVG Editor web page.

    diff, v164, current

    • CommentRowNumber27.
    • CommentAuthorRichard Williamson
    • CommentTimeJan 20th 2019
    • (edited Jan 20th 2019)

    Add description of LaTeX syntax for theorem environments. Move ’Technical’ section to the bottom. Change instructions for ’how to remove a page’ to remove mention of the old making-the-page-empty method.

    diff, v166, current

  4. 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).

    • CommentRowNumber29.
    • CommentAuthorRichard Williamson
    • CommentTimeJan 20th 2019
    • (edited Jan 20th 2019)

    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.

    • CommentRowNumber30.
    • CommentAuthorUrs
    • CommentTimeJan 28th 2019
    • (edited Jan 28th 2019)

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

    diff, v167, current

    • CommentRowNumber31.
    • CommentAuthorUrs
    • CommentTimeJan 29th 2019

    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?

    • CommentRowNumber32.
    • CommentAuthorAlec Rhea
    • CommentTimeFeb 1st 2019

    Added explanation for how to format xymatrix diagrams.

    diff, v169, current

  5. Tweaked xymatrix examples according to a slight change in syntax. Also fix the ’bent arrows’ example, and add 2-cell example.

    diff, v171, current

  6. Make source of Tikz and Xymatrix examples visible on the page.

    diff, v172, current

  7. 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, …

  8. Added how to centre/center using the new(-ish!) LaTeX syntax to the HowTo.

    diff, v173, current

  9. Some links in the “How to edit nLab pages in your favorite text editor” section did not work anymore. I put there some links to some Firefox addons that are convenient to my impression.

    diff, v178, current

  10. Elaborated a bit on captions for graphics when using imagefromfile, and added some advice on floating graphics.

    diff, v180, current

  11. The newer syntax for table of contents was not documented, now added.

    The newer syntax for sectioning is still not documented.

    diff, v181, current

  12. 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

  13. Updating available theorem environments in the ’new’ syntax, i.e. the LaTeX-like syntax.

    diff, v183, current

    • CommentRowNumber42.
    • CommentAuthorUrs
    • CommentTimeJan 4th 2021
    • (edited Jan 4th 2021)

    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} \array{ \mathrlap{ \backslash\text{begin}\{\text{theorem}\} } \\ & \;\; \mathrlap{\backslash\text{label}\{\text{SomeTheorem}\}} \\ & \;\; \mathrlap{\text{Some theorem.}} \\ \mathrlap{\backslash\text{end}\{\text{theorem}\}} }


    (So this won’t allow being copy-and-pasted usefully, but at least the reader gets to see what they need to see.)

    diff, v184, current

    • CommentRowNumber43.
    • CommentAuthorUrs
    • CommentTimeJan 4th 2021

    (Oh, in fact, copy-and-pasting the code displayed in #42 works just fine.)

  14. Nice, thanks!

    • CommentRowNumber45.
    • CommentAuthorUrs
    • CommentTimeApr 1st 2021

    re-worded and expanded the “How to start a new page” section (here), to make it clearer

    diff, v186, current

  15. Clarify \ref discussion slightly; add \eqref

    Greg Price

    diff, v187, current

  16. Document that \label{foo-bar}, with a hyphen in the label name, doesn’t work.

    Greg Price

    diff, v187, current

    • CommentRowNumber48.
    • CommentAuthorgregprice
    • CommentTimeJul 5th 2022
    I added the fact that labels (as in \label) can't have hyphens, because that was a gotcha that caused me some debugging today.

    If anyone knows the exact constraints on a label, it would be good to document any other ways that it differs from what LaTeX accepts.
    • CommentRowNumber49.
    • CommentAuthorUrs
    • CommentTimeJul 5th 2022

    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.

    • CommentRowNumber50.
    • CommentAuthorUrs
    • CommentTimeJul 5th 2022

    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.

    • CommentRowNumber51.
    • CommentAuthorgregprice
    • CommentTimeJul 6th 2022
    Hmm, indeed!

    That is puzzling, though, because the case that I originally ran into was with theorem and lemma environments. (It was in an earlier version of , where I originally had names like "lem:negneg-meets" instead of the "lem:NegnegMeets" I ended up with.) Not sure what the difference is that made it fail there and work in your example. I might experiment some more.
    • CommentRowNumber52.
    • CommentAuthorUrs
    • CommentTimeJul 22nd 2022

    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.

    diff, v188, current

  17. Re #51

    This is because:

    • theorem environment labels are processed by the Python renderer,
    • equation labels are processed by Maruku (the original nlab renderer).

    They apparently parse things differently:

    • the Python renderer allows anything that is not a closing brace,
    • Maruku allows word characters.

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

    diff, v189, current

    • CommentRowNumber54.
    • CommentAuthorDmitri Pavlov
    • CommentTimeFeb 9th 2023

    I kept the paragraph about the SQL database, is it still relevant?


    A current git repository of the source code for nLab pages is available at and a current git repository of the compiled HTML code for nLab pages is available at

    diff, v190, current

    • CommentRowNumber55.
    • CommentAuthorDmitri Pavlov
    • CommentTimeFeb 9th 2023

    Deleted this obsolete text:

    If you just print it directly, the logo will become a huge blob that takes up the entire first page. I know, we can and should fix this, but we haven't.

    diff, v190, current

    • CommentRowNumber56.
    • CommentAuthorDmitri Pavlov
    • CommentTimeFeb 10th 2023

    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.

    diff, v191, current

    • CommentRowNumber57.
    • CommentAuthorDmitri Pavlov
    • CommentTimeFeb 10th 2023

    Attempted to update the information about browsers:

    Software required to use the nnLab


    The nnLab 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]( 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.

    diff, v192, current

    • CommentRowNumber58.
    • CommentAuthorncfavier
    • CommentTimeFeb 26th 2023

    Not sure where to ask this but we need to run a site-wide search-and-replace from to 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).

    • CommentRowNumber59.
    • CommentAuthorUrs
    • CommentTimeFeb 27th 2023

    Thanks for the alert.

    The way to do such searches is with the site:-tag in Google search:

    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.

    • CommentRowNumber60.
    • CommentAuthorPaul Blain Levy
    • CommentTimeMar 4th 2023
    • (edited Mar 4th 2023)
    The section on how to merge pages seems to be incorrect. The intended outcome is that B redirects to A, but the suggested edit to A doesn't mention B, and the suggested edit to B doesn't mention A. Also, what's the point of inserting an empty line into A in the first step?
    • CommentRowNumber61.
    • CommentAuthorUrs
    • CommentTimeMar 5th 2023
    • (edited Mar 5th 2023)

    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.

    • CommentRowNumber62.
    • CommentAuthorUrs
    • CommentTimeMar 5th 2023

    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. …

    diff, v193, current

    • CommentRowNumber63.
    • CommentAuthorTodd_Trimble
    • CommentTimeAug 9th 2023

    I edited some words in at the first paragraph of the TikZ subsection, that would have saved me trouble had I known it before. I left in the earlier statement, but took the liberty of editorializing on it!

    diff, v195, current

    • CommentRowNumber64.
    • CommentAuthorUrs
    • CommentTimeAug 9th 2023

    Now I see what you meant.

    I have edited and expanded a little: here.

    diff, v196, current

    • CommentRowNumber65.
    • CommentAuthorUrs
    • CommentTimeOct 10th 2023

    added (here) a warning about the need of whitespace after closing a Maruku-environment (prodded by the recent event here)

    diff, v197, current

    • CommentRowNumber66.
    • CommentAuthorvarkor
    • CommentTimeOct 23rd 2023

    Mention that a page must be edited for an image upload to be visible.

    diff, v199, current

    • CommentRowNumber67.
    • CommentAuthorUrs
    • CommentTimeJun 8th 2024
    • (edited Jun 8th 2024)

    I have re-written the paragraph “How to handle parenthesis in hyperlink URLs” (here)

    removing side remarks irrelevant to the issue

    and mentioning also the possibility of using the HTML a-tag, instead.

    diff, v204, current

    • CommentRowNumber68.
    • CommentAuthorDmitri Pavlov
    • CommentTimeJun 8th 2024


    Alternatively, reference-style links handle parentheses correctly:

    [Monad (category theory)#Monads and adjunctions][1]

    diff, v206, current

    • CommentRowNumber69.
    • CommentAuthorUrs
    • CommentTimeJun 30th 2024

    added (here) the warning that the syntax

      [link text][1] [1]: url

    requires replacing “1” be a distinct number for every distinct url.

    (Since this makes it error prone and not amenable to copy-and-pasting, I’d suggest to avoid this syntax.)

    diff, v208, current

    • CommentRowNumber70.
    • CommentAuthorDmitri Pavlov
    • CommentTimeJun 30th 2024

    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.

    • CommentRowNumber71.
    • CommentAuthorUrs
    • CommentTimeJul 1st 2024

    okay, I have added a parenthetical “(or alphanumeric string)” here

    diff, v210, current