auctex
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [AUCTeX] Snippet for tabular


From: Denis Bitouzé
Subject: Re: [AUCTeX] Snippet for tabular
Date: Tue, 01 Mar 2016 07:58:11 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux)

Le 01/03/16 à 00h19, Mosè Giordano <address@hidden> a écrit :

> Hi Denis,

Hi Mosè,

> 2016-02-29 18:36 GMT+01:00 Denis Bitouzé <address@hidden>:
>> 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




reply via email to

[Prev in Thread] Current Thread [Next in Thread]