http://www.zago.eti.br/emacs.txt Mensagens sobre o editor emacs. Use CTRL+F para refinar a pesquisa. *************************************************************** http://www.gnu.org/software/emacs/ site do emacs. Documentação em Português. http://www.emacswiki.org/cgi-bin/wiki Wiki do projeto Emacs Brasil http://www.emacs-br.org *************************************************************** Uso de Emacs com Arquivos Remotos --------------------------------------------------------------------- From: Colaboracao: Matias Schweizer [matias@bestway.com.br] O editor de textos emacs, pode ser usado para editar arquivos remotos, o que facilita a edicao em redes lentas. Ele usa protocolo FTP para transferir os arquivos. Por exemplo: emacs /fulano@maquina.com.br:/home/teste/teste.txt No inicio do emacs, ele pedira a senha para o usuario fulano na maquina . *************************************************************** emacs: seleção de texto como no Windows --------------------------------------------------------------------- O emacs é o mais que um editor de texto, ambiente de programação, calendário, etc. Você pode usá-lo sem ter de aprender todos os detalhes do "Esc Meta Alt Control Shift". Faça: M-x pc-selection-mode RET onde M-x significa alt-x ou esc-x. Através disso, você poderá: - selecionar texto através de shift+setinhas, e fazer - um cut com shift-del, e - um insert com shift-insert e - um copy com control-insert. Mais detalhes? C-h f pc-selection-mode Jorge Kinoshita mantem o boletim de dicas ViaLinuxis: http://www.pcs.usp.br/~jkinoshi/bs/ --------------------------------------------------------------- As mensagens da lista Dicas-L são veiculadas diariamente para 10455 assinantes. Para sair ou assinar a lista Dicas-L, consulte o documento que se encontra em http://www.Dicas-l.com.br/FAQ.html. A redistribuição desta e outras mensagens da lista Dicas-L pode ser feita livremente, deste que o conteúdo, inclusive esta nota, não sejam modificados. --------------------------------------------------------------- *************************************************************** su, sudo, ssh no emacs! --------------------------------------------------------------------- Colaboração: Rodrigo Bernardo Pimentel Pra quem, como eu, usa emacs e usa (usava) vi pra editar poucas linhas, ou arquivos de configuração como outro usuário, porque o emacs demora um pouco pra abrir e, sinceramente, dá preguiça esperar por tão pouca coisa... O primeiro problema resolve-se facilmente (e já o fiz há muito tempo): nunca feche o Emacs :) Não, é sério! Não há muito o que você não possa fazer no Emacs. Mesmo terminais, você pode fazer um "M-x term RET /bin/bash RET" (lembrem-se, "M-x" significa "Esc x" ou "Alt+x" e "RET" é o "Enter"). Isso abre um terminal, do mesmo jeito que um xterm. Abrir outros não é fácil como fazer o comando novamente. Havia um jeito, mas não lembro qual é. Pra "driblar" isso, abro um screen (há uma dica anterior falando dele) dentro do terminal. Mas, voltando ao que eu estava falando. Bem, poucas linhas, portanto, não é mais desculpa pra não usar o Emacs. C-x C-f e pronto. Agora, arquivos de configuração ou edição de arquivos como outros usuários. Normalmente, abrir-se-ia um xterm e poderia se usar o sudo, ou "su -", senha e edição - no vi ou no ed, pra ser mais rápido. Bem, aqui entra um modo do Emacs, chamado "Tramp" e que pode ser baixado em http://ls6-www.cs.uni-dortmund.de/~grossjoh/emacs/tramp.html Ele funciona, em princípio, como o ange-ftp, que permite edição de arquivos remotos (puxados via ftp, editados localmente e re-enviados), com algo como "C-x C-f /rbp@muppets:/tmp/arquivo". O tramp tem a mesma filosofia, mas permite conexão usando telnet, rlogin, ou, o que é mais interessant, ssh/scp . Ou, ainda, usando su e sudo. Resultado: resolvemos o segundo problema. Nada de abrir um xterm, su/sudo e vi. Agora basta fazer algo como C-x C-f /r@sudm:root@localhost:/etc/shadow (pra abrir o /etc/shadow usando sudo pro usuário root). Vale a pena uma olhada... --------------------------------------------------------------- As mensagens da lista Dicas-L são veiculadas diariamente para 10504 assinantes. Para sair ou assinar a lista Dicas-L, consulte o documento que se encontra em http://www.Dicas-l.com.br/FAQ.html. A redistribuição desta e outras mensagens da lista Dicas-L pode ser feita livremente, deste que o conteúdo, inclusive esta nota, não sejam modificados. --------------------------------------------------------------- *************************************************************** > Alguém saberia um manualzinho simplificado do EMACS, tipo guia de > referência rápida? Tem o refcard na sua maquina, procure-o com: find /usr/share/emacs -iname 'refcard*' E' um refcard perfeito, um A4 dobrado em 6. Se voce conseguir imprimir o refcard.ps fente e verso, fica perfeito. Eu imprimi duas folhas e depois colei, ficou com um refcard normal. *************************************************************** *************************************************************** *************************************************************** emacs: seleção de texto como no Windows --------------------------------- O emacs é o meu editor de texto, ambiente de programação, calendário, etc. preferido. Você pode usá-lo sem ter de aprender todos os detalhes do "Esc Meta Alt Control Shift". Faça: M-x pc-selection-mode RET onde M-x significa alt-x ou esc-x. Através disso, você poderá: - selecionar texto através de shift+setinhas, e fazer - um cut com shift-del, e - um insert com shift-insert e - um copy com control-insert. Mais detalhes? C-h f pc-selection-mode *************************************************************** Uso de expressões regulares no emacs --------------------------------- Dentro do emacs pode-se fazer a substituição de strings usando expressões regulares com uma notação semelhante ao Perl. Exemplo 1: Vamos supor que você queira trocar as linhas de seu arquivo texto que começam por '-' pela tag HTML: -------------
  • ------------- no começo da linha. Para isso, faça: ------------- M-x query-replace-regexp (igual à Search/Query Replace Regexp) Query replace regexp: ^- with:
  • ------------- Exemplo 2: Vamos supor que você queira trocar o resto das palavras que começam por 'sub' por 'muda'. Exemplo: 'substitui' deve ser alterado para 'mudastitui'. Para isso faça: ------------- M-x query-replace-regexp Query replace regexp: sub\(\w+\) with: muda\1 ------------- Veja: C-h-f query-replace-regexp As expressões regulares podem auxiliar na conversão de formatos, por exemplo, transformar um arquivo texto em uma página HTML. ------- *************************************************************** emacs: vá para o parênteses correpondente ------- Se você colocar a seguinte linha em seu arquivo ~/.emacs: ---- (show-paren-mode nil) ---- verá os parênteses que se casam ao passar com o cursor sobre os parênteses, desde que o abre e o fecha parênteses estejam visíveis no buffer. Mas às vezes isso não ocorre. Neste caso, se o cursor estiver no fecha-parênteses pode-se saltar para o correpondente abre-parênteses através de C-M-b e vice-versa através de C-M-f Obs: C-M-b == Control-Alt-b ------ *************************************************************** email no emacs --------------------------------- A idéia de usar tudo de forma integrada (editor de texto, programa, debugging, calendário e emails) é muito interessante. Tanto é que resolvi investir tempo em se ter um bom controle de meus emails via emacs. Aqui vão as conclusões. Existem três formas de se trabalhar com emails no emacs (até onde conheço): 1. rmail - é o mecanismo mais clássico de se ler emails. Veja: M-x rmail . É fácil de configurar e caso você leia emails através do POP3, faça em seu ~/.emacs: --------------------- (setenv "MAILHOST" "servidor-pop") (setq rmail-primary-inbox-list '("po:usuario") rmail-pop-password-required t) ---------------------- Problema: a configuração de rmail que acompanha o meu emacs não abre attachments. Fui informado de que existe um pacote a parte para se trabalhar com attachments; mas resolvi investir no gnus. 2. MH-E - é um sistema de se trabalhar com emails que foi criado à parte do emacs. Acompanha as versões normais de emacs. Existem diversos comentários que não recomendam o uso do MH-E a menos que o usuário já esteja acostumado com isso. Existe um livro da O'Reilly sobre este sistema que está disponível na internet em http://www.oreilly.com/openbook/mh/ . Gostaria de ouvir o comentário de alguém dessa lista que faça uso deste sistema. Trabalha com attachments. 3. gnus - começou tratar de news e evoluiu de forma a tratar emails como news. A idéia é muito interessante e foi pela qual optei (quase me arrependi depois de ficar muito tempo configurando o sistema). Trata de attachments, faz leitura de emails via POP3 e IMAP; além é claro de tratar de news via NNTP. Para você sofrer menos, caso opte pelo gnus, aqui vai uma grande dica: vá em www.gnus.org e baixe a última verão (hoje é a 5.8.7). A versão do gnus do meu emacs por exemplo não acompanhava o módulo de tratar o IMAP; enquanto que a versão atual já possui este módulo (nnimap) incorporado. O esforço está compensando. Algumas coisas possíveis são: a) clicar sobre uma URL dentro do gnus/emacs e ter a página aberta no netscape. b) clicar sobre uma foto que veio como attachment e ter ela aberta pelo xeyes. Além é claro de poder estar usando tudo de forma integrada no emacs. ================================= *************************************************************** colocar a linha abaixo no .emacs (global-set-key[delete] 'delete-char) Subject: (linux-br) Emacs e a tecla del To com um pequeno problema com o emacs .. :-( No console, a tecla del deleta prá frente, no x-windows, pra trás. Eu queria que a tecla del deletasse pra frente no x-windows. *************************************************************** 15-8-01 - Boletim ViaLinuxis em sintonia com o Fórum ~/.emacs Editorial O meu editor preferido é o emacs. Ele é muito bom e versátil: serve de interface homem-máquina para tudo quanto é software. Só que tem um pequeno problema: é chato de configurar. Aqui vai o meu arquivo ~/.emacs. Coisas que podem te interessar de imediato: as tecla "del" e "backspace" funcionam como você está acostumado; sem falar no C-z (control z) que volta uma alteração para trás (no bom estilo word). Outras coisas poderão te interessar à medida que você for lidando com o emacs. -------------------------------------------------------------------------------- (setq load-path (cons (expand-file-name "/usr/local/gnus-5.8.7/lisp") load-path)) (setq Info-default-directory-list (cons "~/gnus-5.8.7/texi" Info-default-directory-list)) ;;(setq gnus-secondary-select-methods ;; '((nnml "private"))) ;;(add-to-list 'gnus-secondary-select-methods ;; '(nnimap "" (nnimap-address "carcara.pcs.usp.br"))) ;;(setq mail-sources ;; '( ;; (imap :server "carcara.pcs.usp.br" ;; :user "jkinoshi" ;; :port "imap" ; :password "12discip"))) ;;sto e' para habilitar o dicionario em portugues brasileiro ;;Isto e' para habilitar o dicionario em portugues brasileiro ;; ("castellano" "[A-ZÁÉÍÑÓÚÜa-záéíñóúü]" "[^A-ZÁÉÍÑÓÚÜa-záéíñóúü]" "[---]" nil ;; ("-B" "-d" "castellano") ;; "~tex" iso-8859-1) (setq ispell-dictionary-alist (cons '("br" "[A-ZÁÉÍÑÓÚÜa-záéíñóúü]" "[^A-ZÁÉÍÑÓÚÜa-záéíñóúü]" "[---]" nil ("-B" "-d" "br") "~tex" iso-8859-1) ispell-dictionary-alist)) ;;(setq ispell-dictionary-alist ;; (cons '("br" ;; Brazilian mode ;; "[A-Za-z\300\301\302\303\307\311\312\315\323\324\325\332\334\340\341\342\343\347\351\352\355\364\365\372\374]" ;; "[Â-Za-z\300\301\302\303\307\311\312\315\323\324\325\332\334\340\341\342\343\347\351\352\355\364\365\372\374]" ;; "[---]" nil ("-B" "-d" "br") "~tex" iso-8859-1) ;; ispell-dictionary-alist)) ;;Agora tornando o dicionario brasileiro como o default (setq ispell-dictionary "br") (standard-display-european t) ;(require 'iso-syntax) (require 'iso-acc) ;;(require 'iso-cvt) ;;(require 'paren) (show-paren-mode nil) (transient-mark-mode t) (global-set-key (quote [end]) (quote end-of-line)) (global-set-key (quote [home]) (quote beginning-of-line)) (global-set-key (quote [delete]) (quote delete-char)) ;; (global-set-key (quote [delete]) (quote delete-backward-char)) (global-set-key (quote [S-kp-0]) (quote yank)) (global-set-key (quote [C-kp-insert]) (quote kill-ring-save)) (global-set-key (quote [C-kp-delete]) (quote kill-line)) ;;(global-set-key "" (quote nonincremental-repeat-search-forward)) (global-set-key "\C-z" (quote undo)) ;;(global-set-key "\C-v" (quote nonincremental-repeat-search-forward)) basta usar C-s C-s ;;(global-set-key "" (quote bookmark-bmenu-list)) (global-set-key "\C-q" (quote other-window)) (global-set-key (quote [C-kp-home]) (quote beginning-of-buffer)) (global-set-key (quote [C-kp-end]) (quote end-of-buffer)) (global-set-key "\C-l" (quote goto-line)) ;(global-set-key (quote [C-tab]) (quote pega)) (global-set-key (quote [f9]) (quote pega)) (global-set-key "\C-c\C-k" (quote kill-this-buffer)) (setq lpr-switches '("-Plp0")) ;; comando para o lpr ;;(setq load-path (cons "~/ftp/html-helper-mode/" load-path)) ;;(autoload 'html-helper-mode "html-helper-mode" "Yay HTML" t) ;;(setq auto-mode-alist (cons '("\.html$" . html-helper-mode) auto-mode-alist)) ;;(setq html-helper-build-new-buffer t) ;;(setq html-helper-address-string "Jorge Kinoshita ") ;; para latex: ;; http://www.informatik.tu-cottbus.de/~mohaupt/manual/emacs_doc/OUTLINE_FORMAT.html ;; (setq outline-regexp "@chap\\|@\\(sub\\)*section") ;; para perl ;; (setq outline-regexp "sub")) ;; (add-hook outline-mode-hook ;; '(lambda () ;; (if (equal major-mode "perl-mode") ;; (setq outline-regexp "sub")) ;; (if (equal major-mode "latex-mode") ;; (setq outline-regexp "@chap\\|@\\(sub\\)*section") ))) ;; (setq tex-mode-hook ;; '(lambda () ;; (setq outline-regexp "@chap\\|@\\(sub\\)*section") ;; )) ;; (global-set-key [mouse-2] 'split-window-vertically) (setq outline-regexp "^\\\\chap\\|\\\\\\(sub\\)*section\\|\\*+\\|^sub") (setq latex-mode-hook '(lambda () (standard-display-european 1) (add-hook 'text-mode-hook 'iso-accents-mode) (iso-accents-mode nil) (iso-accents-customize "portuguese") (outline-minor-mode nil) )) ;;(setq t-mode-hook ;; '(lambda () ;; (standard-display-european 1) ;; (add-hook 'text-mode-hook 'iso-accents-mode) ;; (iso-accents-mode nil) ;; (iso-accents-customize "portuguese") ;; )) (setq perl-mode-hook '(lambda () (iso-accents-mode nil) (iso-accents-customize "portuguese") ;(refill-mode nil) ;;(font-lock-fontify-buffer) ;; (outline-minor-mode nil) )) (setq text-mode-hook '(lambda () (standard-display-european 1) ;(add-hook 'text-mode-hook 'iso-accents-mode) (iso-accents-mode t) (flyspell-mode t) (iso-accents-customize "portuguese") ; (add-hook 'text-mode-hook 'flyspell-mode) ;(refill-mode nil) ;(outline-minor-mode nil) )) ;;(setq html-mode-hook ;; '(lambda () ;; (load "t") ;; )) (bookmark-bmenu-list) ;; (calendar) ;; (mark-diary-entries) ;; (view-diary-entries (calendar-goto-today)) ;; (setq load-path (append load-path (list "~j/bitext"))) ;;(html-helper-mode) ;;(add-hook html-helper-mode-hook '(lambda () ;; (load "t") ;;)) ;; dah erro no .emacs ;;--- 1. carga de t.elc (setq load-path (append load-path (list "~/bitext"))) ;;(load "t") ;; a carga pode ser feita depois: load-library t (setq load-path (append load-path (list "~/mono"))) (load "chuta") ;; a carga pode ser feita depois: load-library chuta ;(global-set-key (quote [f9]) (quote pega)) (setq auto-mode-alist (cons '("\\.t$" . t-mode) auto-mode-alist)) (setq auto-mode-alist (cons '("\\.b$" . text-mode) auto-mode-alist)) (add-hook 't-mode-hook 'turn-on-font-lock) (global-font-lock-mode t) (custom-set-variables) (custom-set-faces '(font-lock-comment-face ((((class color) (background dark)) (:foreground "pink"))))) (setenv "MAILHOST" "carcara.pcs.usp.br") (setq rmail-primary-inbox-list '("po:jkinoshi") rmail-pop-password-required t) ;; Send Mail to smtp host from smtpmail temp buffer. ;; Please add these lines in your .emacs(_emacs) or use customize. ;; ;;(setq send-mail-function 'smtpmail-send-it) ; if you use `mail' ;;(setq message-send-mail-function 'smtpmail-send-it) ; if you use `message' ;;(setq smtpmail-default-smtp-server "carcara") ;;(setq smtpmail-local-domain "pcs.usp.br") ;;(setq smtpmail-debug-info t) ; only to debug problems ;; To queue mail, set smtpmail-queue-mail to t and use ;; smtpmail-send-queued-mail to send. ;; (setq send-mail-function 'smtpmail-send-it) (setq smtpmail-default-smtp-server "carcara.pcs.usp.br") (setq smtpmail-smtp-service "smtp") (setq smtpmail-local-domain "pcs.usp.br") (setq smtpmail-debug-info t) (load-library "/usr/share/emacs/20.4/lisp/ispell.elc") (load-library "/usr/share/emacs/20.4/lisp/mail/smtpmail.el") (setq smtpmail-code-conv-from nil) (setq user-full-name "Jorge Kinoshita") ; (setq user-mail-address "mbg@csb.yale.edu") (setq user-mail-address "jkinoshi@pcs.usp.br") ;; (princ "smtpmail loaded with yale settings") ----------------------- *************************************************************** De:  Andre Ribeiro Taurines Para:  linux-br@bazar.conectiva.com.br Assunto:  (linux-br)truque bash Data:  Fri, 27 Feb 2004 14:56:45 -0300 Ae, Tem um truque bash que aprendi uma vez: por exemplo, quero saber o tamanho de um arquivo exemplo.c para eventualmente abri-lo depois com o emacs (mas sou preguicoso para digitar tudo... ;-))) ): > ls -l exemplo.c -rw-r--r--    1 fulano fulanoland   6896 Feb 24 10:59 exemplo.c > emacs !$ O !$ eh substituido pela  ultima expressao da ultima linha do historico, ou seja, o interpretador recebe na verdade o comando "emacs exemplo.c " . Alguem saberia MAIS TRUQUES DESSE TIPO? Por exemplo, as vezes estou interessado em usar a expressao do meio, e nao a ultima. Valeu, Andre. *************************************************************** De:  Thiago Macieira Para:  linux-br@bazar2.conectiva.com.br Assunto:  Re: (linux-br) Instalaçãodo Emacs Data:  Thu, 26 Feb 2004 22:19:03 -0300 -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Pedro Losco Takecian wrote: >Olá pessoal! >Alguém saberia me informar qual o verdadeiro pacote do emacs? >Dando um apt-get install emacs, ele só instalou o executável > emacs-client. Seria isto? Onde foi parar o executável emacs? >Procurei pelos pacotes e não encontrei nenhum outro pacote > significativo. Obrigado pela atenção É no pacote 'emacs' mesmo: $ rpm -qf /usr/bin/emacs emacs-21.3-37707cl Veja se ele foi instalado corretamente. Se tiver problemas, mande reinstalá-lo: # apt-get install --reinstall emacs [Você não disse que distribuição está usando, então estou assumindo que é um Conectiva 9/Snapshot/10 Beta] - --   Thiago Macieira  -  Registered Linux user #65028    thiago (AT) macieira (DOT) info *************************************************************** De:  Thiago Macieira Para:  linux-br@bazar2.conectiva.com.br Assunto:  Re: (linux-br)Emacs - Colorido Data:  Thu, 18 Mar 2004 20:49:46 -0300 -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 gmartins wrote: >Como faço para deixar o emacs colorido ? >O html fica colorido, mas código PHP não. M-x tmm-menubar Options | Syntax Highlighting Isso depende em que modo você está. Veja se você está em modo PHP. >Como faço para verificar a versão do meu linux ? uname -a - --   Thiago Macieira  -  Registered Linux user #65028    thiago (AT) macieira (DOT) info *************************************************************** De:  Thiago Macieira Para:  linux-br@bazar2.conectiva.com.br Assunto:  Re: (linux-br)Emacs - Colorido Data:  Tue, 3 Aug 2004 13:39:17 -0300 -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 gmartins wrote: >Pessoal estou usando o Fedora Core 1, e estou tendo dificuldades para >programar pois não sei configurar o emacs para sintaxe colorida. O que as cores têm a ver com dificuldade de programar? Não vá me dizer que você não consegue programar a não ser que esteja tudo colorido... Clique em Options, Syntax Highlighting. Caso não tenha como usar o mouse, você pode ativar a barra de menus com o f9 ou Mx- tmm-menubar. - --   Thiago Macieira  -  Registered Linux user #65028    thiago (AT) macieira (DOT) info     ICQ UIN: 1967141   PGP/GPG: 0x6EF45358; fingerprint:     E067 918B B660 DBD1 105C  966C 33F5 F005 6EF4 5358 *************************************************************** De:  Raimundão Genmte Finah Para:  Thiago Macieira Cc:  linux-br@bazar2.conectiva.com.br Assunto:  Re: (linux-br)Emacs - Colorido Data:  Thu, 05 Aug 2004 12:05:45 -0300 Thiago Macieira escreveu: -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > gmartins wrote: >   > > > Pessoal estou usando o Fedora Core 1, e estou tendo dificuldades para > > programar pois não sei configurar o emacs para sintaxe colorida. > >    > > > > > O que as cores têm a ver com dificuldade de programar? Não vá me dizer > que você não consegue programar a não ser que esteja tudo colorido... > > Clique em Options, Syntax Highlighting. Caso não tenha como usar o > mouse, você pode ativar a barra de menus com o f9 ou Mx- tmm-menubar. >   > M-x font-lock-mode e pronto. Se estiver programando em C e afins, um M-x cc-mode tb ajuda para tabular. []s,Raimundo *************************************************************** ***************************************************************