Le 01/03/16 à 00h19, Mosè Giordano <m...@gnu.org> a écrit : > Hi Denis,
Hi Mosè, > 2016-02-29 18:36 GMT+01:00 Denis Bitouzé <dbito...@wanadoo.fr>: >> Hi, >> >> I just came across the following yasnippet (see >> https://groups.google.com/d/msg/smart-snippet/8Og-1U5zJ2E/3aIMTNmwrKAJ): >> >> --8<---------------cut here---------------start------------->8--- >> # -*- mode: snippet -*- >> # name: nxm matrix >> # key: pm >> >> # type: command >> # -- >> (insert "\\begin{pmatrix}\n") >> (let ((width (read-number "Matrix width?" 3)) >> (height (read-number "Matrix height?" 3)) >> (snippet-text "")) >> (dotimes (i height) >> (dotimes (j width) >> (setq snippet-text (format "%s ${%d:m%d%d} %s" >> snippet-text >> (1+ (+ (* height i) j)) >> (1+ i) >> (1+ j) >> >> (if (= j (1- width)) >> (if (/= i (1- height)) "\\\\\\" >> "") >> "&")))) >> (setq snippet-text (format "%s\n" snippet-text))) >> (yas/expand-snippet (format "%s\\end{pmatrix}" snippet-text))) >> --8<---------------cut here---------------end--------------->8--- >> >> What's nice: you are able to specify the dimensions of the matrix and >> the resulting template provides placeholders. >> >> What about similar feature provided by AUCTeX for e.g. tabulars? > > This looks like a good idea. For tabular-like environments with > format specifier we have that great mechanism that reads the format > and decides how many ampersands should be inserted, but for those > environments without a format specifier we have to insert all > ampersands by hand. > > Maybe something like this should work: > > [...] > > This is just a start, the code can be improved. You should associate > `LaTeX-env-ampersands' to "pmatrix" environment (actually we will do > that in amsmath.el style file when implemented). Comments welcome. Nice, many thanks! Just are missing the placeholders: more generally, placeholders are IMHO a missing feature of AUCTeX (compared to some TeX editors such as TeXstudio), e.g. for fractions. All the best. -- Denis _______________________________________________ auctex mailing list auctex@gnu.org https://lists.gnu.org/mailman/listinfo/auctex