Emacs personalizado

May 11, 2012
By

This post was kindly contributed by Ridículas - go there to comment and to read the full post.

Printscreen da minha sessão Emacs com as atuais configurações do arquivo .emacs.

Trocando umas idéias com o Fernando Toledo (co-autor do Ridículas) aprendi diversas opções disponíveis para personalizar o Emacs, meu editor de scripts R. A personalização torna a experiência mais agradável, de forma que o usuário pode habilitar ferramentas do editor que proporcionem mais conforto e agilidade. Algumas opções de personalização são os padrões de cores. Eu por exemplo prefiro um fundo preto pois acredito que cansa menos. Numeração na margem é outro aspecto interessante, principalmente para situar pessoas que acompanham algum curso com o R usando o Emacs. O realçador de parenteses é outro recurso que evita perda de tempo na depuração de um código. E coisas como especificar o tamanho de letra e definir como padrão os comandos ctrl-zxcv para desfazer-recortar-copiar-colar evitam de você ter que fazer isso graficamente em toda sessão. Para usar o esquema de cores você vai ter que instalar o emacs-goodies-el

$ sudo apt-get install emacs-goodies-el

Uma vez instalado, o restante das opções você consegue copiando para o seu arquivo .emacs, que fica na sua home (se não existe, crie um), os trechos desejados do meu atual arquivo .emacs

;;;--------------------------------------------------------------------------
;;; arquivo de configuração do Emacs por Walmes Zeviani

;;---------------------------------------------------------------------------
;; faz com que o emacs23 fique no modo de texto visual
;; (quebra de linha visual) quando edita porção tex de um Rnw
(add-hook 'text-mode-hook 'turn-on-visual-line-mode)

;;---------------------------------------------------------------------------
;; faz com que apareceça os argumentos das funções do R no minibuffer
(require 'ess-eldoc)

;;---------------------------------------------------------------------------
;; numeração das linhas na margem esquerda
(global-linum-mode 1)

;;---------------------------------------------------------------------------
;; inicia Emacs com ctrl-{zxcv} abilitado para desf/recor/cop/colar
(cua-mode t)

;;---------------------------------------------------------------------------
;; realçador de pareamento de parenteses, chaves, colchetes, aspas...
(show-paren-mode 1)

;;---------------------------------------------------------------------------
;; tamanho da fonte (120~12pt)
;; comandos C-x C-+ e C-x C-- para aumentar e diminiur o tamanho da fonte
(set-face-attribute 'default nil :height 120)

;;---------------------------------------------------------------------------
;; estilo de cores de fundo e fontes, mais disponíveis em
;; http://themes.sweyla.com/
;; http://jasonm23.github.com/emacs-theme-editor/

(defun sweyla838549 ()
  "Theme generated by Sweyla: http://themes.sweyla.com/seed/838549/"
  (interactive)
  (color-theme-install
   '(sweyla838549
     ((background-color . "#010000")
      (foreground-color . "#FFFFFF")
      (background-mode . dark)
      (border-color . "#323232")
      (cursor-color . "#FFFFFF")
      (mouse-color . "#323232"))
     (mode-line ((t (:foreground "#FFFFFF" :background "#323232"))))
     (region ((t (:background "#323232"))))

     (font-lock-comment-face ((t (:foreground "#00FF73"))))
     (font-lock-constant-face ((t (:foreground "#58D3A8"))))
     (font-lock-builtin-face ((t (:foreground "#16AF3D"))))
     (font-lock-function-name-face ((t (:foreground "#82FFD5"))))
     (font-lock-variable-name-face ((t (:foreground "#00FFD2"))))
     (font-lock-keyword-face ((t (:foreground "#3AFFC4"))))
     (font-lock-string-face ((t (:foreground "#04F069"))))
     (font-lock-doc-string-face ((t (:foreground "#04F069"))))
     (font-lock-type-face ((t (:foreground "#00FFFF"))))
     )))

(provide 'sweyla838549)

(require 'color-theme)
(color-theme-initialize)
(sweyla838549)

;;---------------------------------------------------------------------------

Visite os dois links disponíveis na parte de cores. Nesses sites você pode definir um esquema de cores próprios para sua sessão Emacs. Daí é só aproveitar a boa experiência que o Emacs dá à edição de código R e LaTex. A figura no início do post é um printscreen do meu Emacs com essas configurações. Atualmente eu uso o Emacs23 no Ubuntu 12.04. Não esqueça para usar o R com Emacs você precisa instalar o ess

$ sudo apt-get install emacs23 ess

Meus agradecimentos ao Fernando Toledo pelas preciosas dicas. Até a próxima ridícula.


Tags: ,

Comments are closed.