Ha diversas formas de fazer isso. Vou descrever 3, voce ve qual acha melhor.
No seu arquivo .emacs, voce pode incluir os codigos abaixo, dependendo de como voce quer usar o atalho. Particularmente, eu uso uma combinacao das tres formas de criar atalhos, e minha escolha depende do objetivo do atalho (comando latex, environment em latex, template para gerar pdf e .tex a partir do org-mode, como artigos e apresentacoes em beamer). Para latex, eu uso essencialmente a segunda forma.
Uma sugestao: voce pode criar um arquivo abbreviacoes.el, com todas as abreviacoes e shortcuts, e depois carregar esse arquivo a partir do seu arquivo .emacs da forma usual:
(setq load-path (cons "path para pasta com abreviacoes.el" load-path))
(require 'abreciacoes)
Aqui vao as tres formas:
Primeira forma:
; define C-c 7 como atalho para escrever o que esta entre aspas
(global-set-key (kbd "C-c 7") "####### \n ## your text... \n ######" )
Segunda forma:
; define 8# como abbreviacao para o que esta entre aspas. Voce digita 8##
; no buffer e depois espaco ou enter ou tab e tudo que esta entre aspas na segunda
; string aparece no lugar da primeira
(define-abbrev-table 'global-abbrev-table '(
;; definindo abreviacoes
("8#" "####### \n ## your text... \n ######")
("8fr" "\frac{}{}")
)
Terceira forma:
; definindo skeleton
(define-skeleton texto1
"Meu texto 1"
nil
"##########
####
##########")
(defun insere-texto1 ()
(texto1))
; definindo atalho para skeleton
(global-set-key (kbd "C-c 7") 'insere-texto1)
go Emacs!
abs