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 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 nforum 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 sheaves simplicial space spin-geometry stable-homotopy-theory stack string string-theory 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.
    • CommentAuthorvarkor
    • CommentTimeFeb 3rd 2021

    For those who have not encountered it, quiver is a web-based editor for commutative and pasting diagrams. Currently, quiver just exports to tikz-cd, but we’re currently working on the ability to export embeddable <iframe>s.

    The diagrams on the nLab are a mix of MathJax arrays and screenshots from LaTeX output (e.g. see the page for Kan extensions), neither of which look very good and are difficult to modify. I wanted to suggest the possibility of using quiver to render these diagrams. This would mean that diagrams would look consistent, good at any screen resolution, and be easy to modify. Furthermore, nLab readers would be able to save any of the diagrams on the nLab as tikz-cd so they could use them without having to copy them out manually.

    I’d like to hear what people think of this idea: if there’s general support, then we can discuss how to go about implementing this. (For instance, I imagine it would be best to host a version of quiver on the nLab itself, so that the nLab is not relying on an external service.)

    • CommentRowNumber2.
    • CommentAuthorRichard Williamson
    • CommentTimeFeb 3rd 2021
    • (edited Feb 3rd 2021)

    Nice project!

    My immediate thought is ’not at the moment, at least’. Actually the recommended way for the last few years on the nLab has been to use the ’tikz-cd’/xymatrix’ functionality documented in the HowTo. As far as I know people are pretty happy with this: it suffers from none of the defects you mention. I have seen other projects emulating or intending to emulate the implementation, e.g. the n-café and the Azimuth project.

    At one point we had a visual commutative diagram editor on the nLab, and it is probably still present in the original Instiki. However, I removed it as it was hardly used, and the codebase of the editor as well as the code it generated was a mess. I have not looked at the code of quiver, it might well be fantastic. But I would be reluctant to bring in another visual editor without demand from several quarters. For now, quiver could be hosted anywhere, and people who wish to use it could simply paste its output into the tikz implementation in the nLab. It would of course be fine to link to quiver in the HowTo for example to explain this possibility.

    • CommentRowNumber3.
    • CommentAuthorMike Shulman
    • CommentTimeFeb 3rd 2021

    I like the idea of using quiver. I think it might significantly lower the editing barrier if there were a nice easy interface for editing commutative diagrams, so that e.g. someone could simply click an “edit” button next to the diagram and be taken to it in quiver, with changes made there automatically propagating to the nlab page.

    • CommentRowNumber4.
    • CommentAuthorRichard Williamson
    • CommentTimeFeb 4th 2021
    • (edited Feb 4th 2021)

    I’m OK with that. It’s not something I’d be likely to prioritise myself for the foreseeable future, but if varkor wishes to implement this kind of thing for the nLab (generate nLab Tikz code from quiver using some kind of Javascript functionality on nLab pages), and is willing to undertake maintenance of quiver if it is hosted on the nLab, that would be fine.

    • CommentRowNumber5.
    • CommentAuthorvarkor
    • CommentTimeFeb 10th 2021

    That sounds good: I’ll try to implement the functionality for the nLab, to see how well it works in practice. I won’t have time right away, but I’ll let you know when I make progress.

  1. Great! What I think could work nicely here, and which would I think be the kind of thing Mike envisioned, would be something new for the nLab, a kind of new way to make an edit. Rather than actually go to the edit screen, I can imagine that one just hovers over the diagram (or something), whereupon a little ’edit’ icon shows up; if one clicks on it, a little window can pop up in which quiver can be used to edit the diagram; when one ’saves’, this will actually make an edit. Obviously you can implement this however you wish, but I suggest that you work on the client side, and just assume that you have a backend endpoint on the nLab server which you can post Tikz diagram code to. When you are ready, I can do the backend implementation to receive this code and make a ’silent’ edit. Each SVG diagram generated by the nLab Tikz parser already has an ID, so it will be possible to identify which diagram has changed. I am not sure whether you will wish to parse this SVG code, though, as it is generated and not very pretty; an alternative might be to proceed from the underlying xymatrix/Tikz source. Anyhow, let me know if you need any backend tweaks to facilitate your implementation if you do give it a go.

    One can imagine other (simpler!) examples of this kind of way of making an edit, e.g. fixing a typo. If you’d like to try something like this first as a warm up, you’d be very welcome. It is somewhat in the direction of a WYSIWYG way to edit the nLab, which if I recall correctly you were interested in. I definitely think one way to improve the nLab software is to add more client side, dynamic stuff like this.