voici un package, nommé dorénavant, auto-complete-auctex, (en hommage à
AucTeX et à auto-complete) qui permet d'utiliser la completion (via
des menus) pour l'écrire de fichiers LaTeX avec auxtex.
sont traités:
les environements, les macros et les symboles
par exemple si vous tapez "enu" dans le tampon vous voyez apparaitre
un menu avec tous les environments, macros et symboles commancant par
ces trois lettres.
vous pointez celui que vous voulez il est inscrit dans le tempon avec le
slash si c'est une macro et entre les $ si c'est un symbole mathématique.
une aide apparait (le temps dépend du choix vir les paramètres
d'auto-complete))
pour faire fonctionner ce soft selon vos désiratas il faut choisir les
paramètres d'auto-complete qui vous conviennent.
Happy TeXing,
Guy yétérian
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
;;; auto-complete-auctex --- auto-complete for LaTeX auctex
;; Author: Guy Yeterian
;; Maintainer: the author
;; Created: 07 Aug 2010
;; Version: 1.0
;; version 1.8 Jun 2011
;; version 1.9 Aug 2011
;; Keywords: auctex auto-complete
;; This program is free software; you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation; either version 1, or (at your option)
;; any later version.
;; This program is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;; GNU General Public License for more details.
;; A copy of the GNU General Public License can be obtained from this
;; program's author (send electronic mail to
;; root@localhost.localdomain) or from the Free Software Foundation,
;; Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
;;; Installation
;; This is a very useful package to write LaTeX documents with aucTeX
and auto-complete
;; To use this package you must install aucTeX and auto-complete packages.
;; Just add to the .emacs file:
;; (autoload 'ac-latex-setup "auto-complete-latex" "ac and aucTeX" t)
;; (add-hook 'LaTeX-mode-hook (lambda() (ac-latex-setup)))
;; when you type 'enu' you must see all (even yours) laTeX-environments
and TeX-macros that
;; begins with this words.
;; Because of the use of auto-complete package you must customize this
for yours needs.
;; In particular see ac-delay, ac-auto-show-menu and ac-quick-help-delay.
;;; Commentary:
;; Free softwards are great and make me happy.
;; Many thanks to Richard Stallman for free softward concept and for
emacs.
;; Many thanks for the aucTeX group.
;; Many thanks for auto-complete author Tomohiro Matsuyama.
(defvar candidate nil
"Just for the Elisp compiler not complain")
(defun my-LaTeX-math-insert (s dollar)
"Insert s with dollar if necessary"
(when dollar (insert "$"))
(funcall LaTeX-math-insert-function s)
(if dollar
(progn
(let ((d (point)))
(re-search-forward "[{.*}]*\}" (+ (point) 10) t)
(insert "$")
(goto-char d))))
) ;; end my-LaTeX-math-insert
;; Function to insert TeX-macro
(defun ac-symbols-insert (s)
"Insert math symbol s with dollar if necessary"
(let ((dollar (if (texmathp)
nil
t)))
(my-LaTeX-math-insert s dollar)
)) ;; ac-symbols-insert
;; some help if you work with TeXlive
;; you can change it if too long. F1 give help immediateley
;; this work with TeXlive
(setq ac-quick-help-delay 4.5)
;; work with TeXlive
(defun TeXdoc (item)
(interactive)
(TeX-doc item))
;; end of TeXdoc
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
vincent.belaiche
Guy writes:
[...]
(defun my-LaTeX-math-insert (s dollar) "Insert s with dollar if necessary" (when dollar (insert "$")) (funcall LaTeX-math-insert-function s) (if dollar (progn (let ((d (point))) (re-search-forward "[{.*}]*}" (+ (point) 10) t) (insert "$") (goto-char d)))) ) ;; end my-LaTeX-math-insert
[...]
Salut,
Je n'ai pas essayé, mais juste à la relecture du code je vois que tu as une fonction préfixée en `my-' au lieu d' `ac-' dedans. D'ailleurs pourquoi `ac-' et pas `aca-' vu que le nom du module est *a*uto-*c*omplete-*a*uctex.
Vincent.
Guy <Paul.Lennon@free.fr> writes:
[...]
(defun my-LaTeX-math-insert (s dollar)
"Insert s with dollar if necessary"
(when dollar (insert "$"))
(funcall LaTeX-math-insert-function s)
(if dollar
(progn
(let ((d (point)))
(re-search-forward "[{.*}]*}" (+ (point) 10) t)
(insert "$")
(goto-char d))))
) ;; end my-LaTeX-math-insert
[...]
Salut,
Je n'ai pas essayé, mais juste à la relecture du code je vois que tu as
une fonction préfixée en `my-' au lieu d' `ac-' dedans. D'ailleurs
pourquoi `ac-' et pas `aca-' vu que le nom du module est
*a*uto-*c*omplete-*a*uctex.
(defun my-LaTeX-math-insert (s dollar) "Insert s with dollar if necessary" (when dollar (insert "$")) (funcall LaTeX-math-insert-function s) (if dollar (progn (let ((d (point))) (re-search-forward "[{.*}]*}" (+ (point) 10) t) (insert "$") (goto-char d)))) ) ;; end my-LaTeX-math-insert
[...]
Salut,
Je n'ai pas essayé, mais juste à la relecture du code je vois que tu as une fonction préfixée en `my-' au lieu d' `ac-' dedans. D'ailleurs pourquoi `ac-' et pas `aca-' vu que le nom du module est *a*uto-*c*omplete-*a*uctex.