RenatoMartini.Net

Category: emacs (page 1 of 2)

Usando “Tabbar mode” no Emacs

Tabbar1 é um programa Lisp que insere no ambiente Emacs uma "barra" semelhante aquelas dos navegadores web, na altura dos menus.

O ideal é instalar o Tabbar pelo instalador de pacotes do Emacs (explicado aqui), será um processo mais suave e terá a certeza de ter o código mais recente.

Eu pessoalmente prefiro as sugestões aqui reproduzidas do site Da Zhang, mas as idéias do EmacsWiki2 são igualmente interessantes e podem ser exploradas. De qualquer forma, o Tabbar é extremamente versátil e configurável.

tabbar mode -- ssh

    ::Sugestões de customização do site "Da Zhang's web notes"3

  1.   Customização do .emacs:
    1. (setq tabbar-background-color "#959A79") ;; the color of the tabbar background
    2. (custom-set-faces
    3. '(tabbar-default ((t (:inherit variable-pitch :background "#959A79" :foreground "black" :weight bold))))
    4. '(tabbar-button ((t (:inherit tabbar-default :foreground "dark red"))))
    5. '(tabbar-button-highlight ((t (:inherit tabbar-default))))
    6. '(tabbar-highlight ((t (:underline t))))
    7. '(tabbar-selected ((t (:inherit tabbar-default :background "#95CA59"))))
    8. '(tabbar-separator ((t (:inherit tabbar-default :background "#95CA59"))))
    9. '(tabbar-unselected ((t (:inherit tabbar-default)))))

     

  2.   Atalhos no teclado:
    1. (global-set-key (kbd "C-S-p") 'tabbar-backward-group)
    2. (global-set-key (kbd "C-S-n") 'tabbar-forward-group)
    3. (global-set-key (kbd "C-<") 'tabbar-backward)
    4. (global-set-key (kbd "C->") 'tabbar-forward) ;; tabbar.el, put all the buffers on the tabs.
  3.   Usando dois esquemas de "grupos" diferentes:
    1. (defun tabbar-buffer-groups-by-dir ()
    2. "Put all files in the same directory into the same tab bar"
    3. (with-current-buffer (current-buffer)
    4. (let ((dir (expand-file-name default-directory)))
    5. (cond ;; assign group name until one clause succeeds, so the order is important
    6. ((eq major-mode 'dired-mode)
    7. (list "Dired"))
    8. ((memq major-mode
    9. '(help-mode apropos-mode Info-mode Man-mode))
    10. (list "Help"))
    11. ((string-match-p "\*.*\*" (buffer-name))
    12. (list "Misc"))
    13. (t (list dir))))))
    14.  
    15. (defun tabbar-switch-grouping-method (&optional arg)
    16. "Changes grouping method of tabbar to grouping by dir.
    17. With a prefix arg, changes to grouping by major mode."
    18. (interactive "P")
    19. (ignore-errors
    20. (if arg
    21. (setq tabbar-buffer-groups-function 'tabbar-buffer-groups) ;; the default setting
    22. (setq tabbar-buffer-groups-function 'tabbar-buffer-groups-by-dir))))
  4.   Configuração final:
    1. (setq tabbar-cycle-scope (quote tabs))
    2. (setq table-time-before-update 0.1)
    3. (setq tabbar-use-images t)

Referências na web:

zhangda | Da's recipes on Emacs, IT, and more
Emacs Wiki
StackOverflow web site

 

  1. Originalmente escrito por David Ponce em 2003/2005, e mantido hoje por outros []
  2. Ver link nas referências... []
  3. Ver no final do post, "Referência". []

Org2Blog editando WordPress

Anteriormente falei sobre a edição do wordpress no ambiente Emacs. Hoje quero escrever um pouco sobre o Org2Blog.
Ele pode e deve ser instalado a partir do gerenciador de pacotes do Emacs ... sim, ele possui um 😉
Desde a versão 24 o Emacs Lisp Package Archive (package.el) está presente e pode ser carregado via "M-x". Coloque no seu .emacs as seguintes variáveis:

;;;
(setq package-archives '(("gnu" . "http://elpa.gnu.org/packages")                          
("marmalade" . "http://marmalade-repo.org/packages/")                          
("melpa" . "http://melpa.milkbox.net/packages/"))) 
;;;

download

Ou se preferir pode baixar em:
- org2blog from GitHub or Marmalade
- git clone http://github.com/punchagan/org2blog.git
http://marmalade-repo.org/packages/org2blog

 

Recarregue o .emacs, então:

M-x: package-refresh-contents 

. Para montar localmente a listagem de pacotes disponíveis

 

 M-x: package-list-packages 

Escolha a partir da lista o programa Org2Blog (ele instalará como dependência também o org-7.8, xml-rpc-1.6.8 e o metaweblog-0.1). Edite mais uma vez o seu .emacs:

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 

(require 'xml-rpc) 
(require 'org2blog-autoloads) 

(setq org2blog/wp-use-tags-as-categories t) 
(setq org2blog/wp-confirm-post t) 
(setq org2blog/wp-blog-alist        

  '(("Nome_do_Blog"
    :url "http://endereço_do_blog/xmlrpc.php"
    :username "USERNAME")))

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 

Inicie o emacs diretamente no login do blog: "emacs -f org2blog/wp-login", entre com senha para a administração do wordpress. Depois org2blog/wp-new-entry criará o buffer com a nova postagem. Alguns comandos essenciais no emacs:

Escreve post como rascunho

"C-c d"   "M-x" org2blog/wp-post-buffer

Publica o rascunho

"C-c p"   "C-u M-x" org2blog/wp-post-buffer

 


Referência:
https://github.com/punchagan/org2blog/blob/master/README.org

Weblogger: editando o WordPress

É possível editar um Blog WordPress no Emacs? Sim, com o suporte adequado.
Sim há algumas ferramentas para isso. Uma delas é o Weblogger, outra o Org2Blog.
Claro que estes ambientes Emacs não darão ao usuário a mesma qualidade de editores gráficos, seja no Mac OS ou no Windows.

O Weblogger pode ser baixado daqui (versão atual é 1.4.5, publicada em 2010-03-11), instale o aquivo lisp (".el") no diretório
Emacs adequado. Agora edite o seu ~/.emacs ou o ~/.xemacs/init.el, conforme sua instalação:

  1. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  2. ; Não se esqueça de instalar e carregar o xml-rpc...
  3. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  4.  
  5. (require 'weblogger)
  6.  
  7. (add-hook 'weblogger-start-edit-entry-hook
  8. (lambda()
  9. (flyspell-mode 1)
  10. (flyspell-buffer) ; spell check the fetched post
  11. (auto-fill-mode -1)
  12. (visual-line-mode 1)))
  13. (add-hook 'weblogger-publish-entry-hook
  14. (lambda()
  15. (when visual-line-mode
  16. (visual-line-mode -1))
  17. ;; tabs might spoil code indentation
  18. (untabify (point-min) (point-max))))
  19. (add-hook 'weblogger-publish-entry-end-hook
  20. (lambda()
  21. (visual-line-mode 1)))
  22.  
  23. (setq weblogger-config-alist
  24. '(("PRIVATE"
  25. ("user" . "AQUI_O_LOGIN")
  26. ("pass" . "AQUI_A_SENHA")
  27. ("server-url" . "http://endereço-do-blog/xmlrpc.php")
  28. ("weblog" . "1")) ))
  29. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

Esta customização foi tirada  daqui...

A linha "weblogger-config-alist" executa a configuração para que o Weblogger encontre a direção correta, -- xmlrpc.php é o endpoint e protocolo usado pelo WordPress(outros podem ser usados tais como Drupal, Openwebblog, LiveJournal, etc).

 

Mais informações: Weblogger mode


Twitter no Emacs?

...sim é possível. Seja no modo texto, o Emacs gráfico ou no XEmacs. Podemos usar o twittering-mode.el para suportar a rede social no editor. O interessado pode baixar a versão final (3.0.0) no site http://twmode.sourceforge.net/.

Como sempre alguns ajustes serão necessários no .emacs:

  1. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  2. ;;        configs --- suporte para Twitter no emacs...
  3. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  4.  
  5. (require 'twittering-mode)
  6. (setq twittering-icon-mode t)
  7. (setq twittering-use-icon-storage t)
  8. (setq twittering-use-master-password t)

 

;;1 comando require para carregar o modo twitter... (mandatório)

;;2 força o uso de ícones, como podemos ver na captura abaixo:

Tela principal

Tela principal

 

;;3 a variável "icon-storage" irá guardar localmente as imagens dos usuários, para carregamento mais rápido, em "~/.twittering-mode-icons.gz".

;;4 a última variável "(setq twittering-use-master-password t)", usará uma senha criptogafada para garantir o acesso ao site da rede social, após garantirmos o acesso como recebimento de um token validador n página da OAuth authorization. -- Aquele processo tradicional de primeira autorização de uso de um site num SO ou máquina...

tela do uso da senha master...

tela do uso da senha master...

 

Eis aqui alguns comandos básicos para sobreviver no twittering-mode:

  • V: Open or switch to another timeline by timeline-spec.
  • u or C-cC-s: Post a tweet.
  • RET: Post a reply to the pointed tweet or open the pointed URL with browse-url.
  • C-c RET: Post an organic retweet. This is only a tweet citing the pointed tweet and not an official/native retweet.
  • C-uC-c RET: Post an official/native retweet.
  • d: Send a direct message.
  • C-cC-w: Delete the pointed tweet.

 

Olderposts

Copyright © 2017 RenatoMartini.Net

Theme by Anders NorenUp ↑