associação pythonbrasil[11] django zope/plone planet Início Logado como (Entrar)

Diferenças para "PythonComEmacs"

Diferenças entre as versões de 1 e 6 (5 versões de distância)
Revisão 1e 2005-03-24 13:35:08
Tamanho: 3246
Comentário:
Revisão 6e 2007-03-06 14:56:51
Tamanho: 5020
Comentário: nota sobre o emacs 22
Deleções são marcadas assim. Adições são marcadas assim.
Linha 1: Linha 1:
== Ensimando o Emacs a trabalhar com Python == == Ensinando o Emacs a trabalhar com Python ==
Linha 5: Linha 5:
Linha 72: Linha 73:
;; python-mode ;; Inicio da comfiguracao python-mode.
Linha 74: Linha 75:
;; Adiciona o python-mode no caminho de carregamento.
(add-to-list 'load-path "~/.emacs.modulos/python-mode-1.0alpha/")

(autoload 'python-mode "python-mode" "Python Mode." t)
(add-to-list 'auto-mode-alist '("\\.py\\'" . python-mode))
Linha 88: Linha 94:
;; The missing key shortcuts for Uncomment Region
Linha 93: Linha 98:

;; Inicio syntax highlighting
Linha 99: Linha 107:
 '(global-font-lock-mode t nil (font-lock)))  '(global-font-lock-mode t nil (font-lock))
 '(transient-mark-mode t
)
 '(uniquify-buffer-name-style nil nil (uniquify)))
Linha 103: Linha 113:
 )  '(default ((t (:stipple nil :background "#ffffff" :foreground "#000000" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 96 :width normal :family "adobe-courier")))))
Linha 106: Linha 116:
WiliamAlvesDeSouza -- (waa) -- wiliam(arroba)linuxmail(ponto)org Adicione as seguintes linhas em seu .emacs para ele se torne mais parecido com os outros editores não que isso seja bom, mas para quem esta começando ajuda muito na sua ultilização:

{{{
;; Seleções Visíveis
(setq transient-mark-mode t)

;; Seleção PC
(require 'pc-select)
(pc-selection-mode)

;; Sobrescrevendo seleções automaticamente
(require 'delsel)
(delete-selection-mode 1)

;; End vai para o fim da linha
(define-key global-map [end] 'end-of-line)

;; Home vai para o comeco da linha
(define-key global-map [home] 'beginning-of-line)

;; CTRL-End vai para o fim do documento
(define-key global-map [C-end] 'end-of-buffer)

;; CTRL-Home vai para o comeco do documento
(define-key global-map [C-home] 'beginning-of-buffer)

;; Backspace
(define-key global-map [backspace]
'delete-backward-char)

;; Delete
(define-key global-map [delete]
'delete-char)
}}}
WiliamAlvesDeSouza -- (waa) -- wiliamsouza83(arroba)gmail(ponto)com


nota: A ainda não lançada, versão 22 do emacs, já vem por padrão com o novo pacote python.el para substituir o python-mode). O código fonte pode ser conseguido através do repositório CVS do projeto:
 {{{cvs -z3 -d:pserver:anonymous@cvs.savannah.gnu.org:/sources/emacs co emacs}}}

JoaoRosa

Ensinando o Emacs a trabalhar com Python

Com algunas instalações e configurações podemos ultilizar o emacs para programar em python.

Softwares necesarios

Pymacs

Pymacs é uma ferramenta poderosa que, que permite uma comunicação entre o Lisp do Emacs e o Python.

home: http://pymacs.progiciels-bpi.ca/index.html

bicyclerepair

O projeto Bicycle Repair Man é uma tentativa de criar um browser de refactoring para python, usando tecnicas de Extreme Programming.

home: http://bicyclerepair.sourceforge.net/

python-mode

É um modo do X/Emacs para editar o código de fonte Python.

home: http://sourceforge.net/projects/python-mode/

Instalando os softwares

Pymacs

tar -zxvf Pymacs-0.22.tar.gz
cd Pymacs-0.22
su
./setup
Aqui minha escolha foi 1:
/usr/share/emacs/21.3/site-lisp
python setup.py install
vi ~/.emacs
Adicione as seguintes linhas em seu .emacs:
;; Pymacs

(autoload 'pymacs-load "pymacs" nil t)
(autoload 'pymacs-eval "pymacs" nil t)
(autoload 'pymacs-apply "pymacs")
(autoload 'pymacs-call "pymacs")

bicyclerepair

Eu tinha baixado o arquivo tar.gz do bicyclerepair no [http://sf.net Sourceforge] mas este estava com um erro ai preferi baixar do repositorio CVS. Veja com fazer.

Baixando do cvs ----
cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/bicyclerepair login
cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/bicyclerepair co -P bicyclerepair
----
su
python setup.py install
vi ~/.emacs
Adicione as seguintes linhas em seu .emacs:
;; bicyclerepair

(pymacs-load "bikeemacs" "brm-")
(brm-init)

python-mode

tar -zxvf python-mode-1.0alpha.tar.gz
Crie um diretorio para guardar os modulos do emacs.
mkdir ~/.emacs-modulos/
Copie a pasta do python-mode-1.0alpha para a pasta criada acima.
cp python-mode-1.0alpha ~/.emacs-modulos/
vi ~/.emacs
Adicione as seguintes linhas em seu .emacs:
;; Inicio da comfiguracao python-mode.

;; Adiciona o python-mode no caminho de carregamento.
(add-to-list 'load-path "~/.emacs.modulos/python-mode-1.0alpha/")

(autoload 'python-mode "python-mode" "Python Mode." t)
(add-to-list 'auto-mode-alist '("\\.py\\'" . python-mode))
(add-to-list 'interpreter-mode-alist '("python" . python-mode))

(add-hook 'python-mode-hook
          (lambda ()
            (set (make-variable-buffer-local 'beginning-of-defun-function)
                 'py-beginning-of-def-or-class)
            (setq outline-regexp "def\\|class ")))

(defun py-next-block ()
  "go to the next block.  Cf. `forward-sexp' for lisp-mode"
  (interactive)
  (py-mark-block nil 't)
  (back-to-indentation))

(add-hook 'python-mode-hook (lambda ()
  (define-key py-mode-map "\C-c3"
    (lambda (beg end) (interactive "r")
       (py-comment-region beg end '(4))))))

;; Inicio syntax highlighting

(custom-set-variables
  ;; custom-set-variables was added by Custom -- don't edit or cut/paste it!
  ;; Your init file should contain only one such instance.
 '(case-fold-search t)
 '(current-language-environment "Latin-1")
 '(default-input-method "latin-1-prefix")
 '(global-font-lock-mode t nil (font-lock))
 '(transient-mark-mode t)
 '(uniquify-buffer-name-style nil nil (uniquify)))
(custom-set-faces
  ;; custom-set-faces was added by Custom -- don't edit or cut/paste it!
  ;; Your init file should contain only one such instance.
 '(default ((t (:stipple nil :background "#ffffff" :foreground "#000000" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 96 :width normal :family "adobe-courier")))))

Adicione as seguintes linhas em seu .emacs para ele se torne mais parecido com os outros editores não que isso seja bom, mas para quem esta começando ajuda muito na sua ultilização:

;; Seleções Visíveis
(setq transient-mark-mode t)

;; Seleção PC
(require 'pc-select)
(pc-selection-mode)

;; Sobrescrevendo seleções automaticamente
(require 'delsel)
(delete-selection-mode 1)

;; End vai para o fim da linha
(define-key global-map [end] 'end-of-line)

;; Home vai para o comeco da linha
(define-key global-map [home] 'beginning-of-line)

;; CTRL-End vai para o fim do documento
(define-key global-map [C-end] 'end-of-buffer)

;; CTRL-Home vai para o comeco do documento
(define-key global-map [C-home] 'beginning-of-buffer)

;; Backspace
(define-key global-map [backspace]
'delete-backward-char)

;; Delete
(define-key global-map [delete]
'delete-char)

WiliamAlvesDeSouza -- (waa) -- wiliamsouza83(arroba)gmail(ponto)com

nota: A ainda não lançada, versão 22 do emacs, já vem por padrão com o novo pacote python.el para substituir o python-mode). O código fonte pode ser conseguido através do repositório CVS do projeto:

  • cvs -z3 -d:pserver:anonymous@cvs.savannah.gnu.org:/sources/emacs co emacs

JoaoRosa