|
From: | Sean Allred |
Subject: | Re: [AUCTeX-devel] Support for expl3 |
Date: | Sat, 4 Apr 2015 12:12:31 -0500 |
I’ve sent that form in – currently awaiting a response (from both GNU and my employer, as I understand they have to sign something, too).
I perhaps mis-spoke when I said ‘creating a new dialect’ – I’ve learned that I have *no* idea what I’m talking about here (as it relates to the technical organization of AUCTeX), but I am trying to learn :). I stand by the idea that expl3 is its own thing, separate from Plain/LaTeX/ConTeXt, but ‘dialect’ is a confusing word to use given its contextual significance here. AUCTeX is charged to be an all-encompassing editing solution for TeX-tech in emacs, no? Is it truly just for authors, or is it also for the new ‘document roles’ being introduced in LaTeX3 as well? As I’ve said, expl3 is not dependent on LaTeX3, but it forms the platform for the ‘programming layer’ of LaTeX3 – in an ideal world where LaTeX3 is in use and we’ve learned to communicate with butterflies, expl3 is an important part of TeX's publishing process. To this end, any supportive editor should be designed to provide the greatest advantage to the end-user while keeping the actual editing fluid (i.e. it can’t be *too* complex). Given the nature of expl3 and my exploratory work into implementing such a mode (major, minor, or otherwise), I’m becoming more and more solid in my opinion that it would be best served with a new major mode. To name a few examples from my ideas notebook: 1. completion for standard functions and parsing of new ones (can obviously be done with existing tools in AUCTeX) 2. direct bindings to create new functions, variables, keyval definitions, property lists, etc., etc. (can also be done with existing tools and a minor mode) 3. the ability to see which positional argument a brace group corresponds to (I actually have a solution sketch for this one, actually; shouldn’t be done without at least a minor mode) 4. the ability to pull up online (in-emacs) documentation on official functions (either manually initiated or eldoc-style; I think documentation can be stripped from the expl3 sources) 5. some level of l3styleguide enforcement (simply not appropriate on the author level) As you can see, there are definitely elements that can be supported by a minor mode (1, 2, 3, 4), but there are some that can’t – at least not ‘nicely’ (5). Just as an additional note: just because you *can* implement something in a minor mode doesn’t means it makes sense to *actually* do so (2, 3, 4). Dialects are useful to specify a style hook should be loaded in a Personally, I don’t think *any* user-level document should support inline expl3 editing. It’s letting the two roles bleed. However, given actual practice, indirect editing à la Org source code blocks (but bound between `\ExplSyntax[On|Off]` instead) wouldn’t be out-of-the question. Again, these are all just ideas, and I’m perfectly willing to take on the brunt of development here if necessary (pending paperwork), but the ‘philosophy of AUCTeX’ is important here and not something I can answer :) Best, Sean |
[Prev in Thread] | Current Thread | [Next in Thread] |