Billets dans la catégorie « Lisp »
écrit par Ousmane Wilane, le 09/10/09 18:27.
Un autre truc que j’aimes avec certains clients Identica/Twitter c’est le fait qu’ils vous ramènent là où vous en
étiez la dernière fois que vous avez lu les tweets. Pour faire la même chose avec TwIt, j’ai ajouté
une fonction (dirty hack comme on dis) permettant de bookmarker un Tweet (sauvegarder son id/status twit-save-id-at-point) et une fonction permettant
de charger les tweets depuis l’id bookmarqué twit-show-recent-tweets-from-last-id. La touche q qui est utilisé par défaut pour quitter
est remplacée par une fonction twit-quit qui sauvegarde le tweet actuel avant d’invoquer burry-buffer:
("W" . twit-save-id-at-point)
("q" . twit-quit)
(defconst twit-friend-timeline-file-from-last-id
(concat twit-base-url
"/statuses/friends_timeline.xml?count=200&since_id=%s"))
(defun twit-save-id-at-point ()
(interactive)
(setq twit-id (twit-get-text-property 'twit-id))
" Let's store this in a file so we
can start it from here next time"
(write-region twit-id nil "~/.twit-last-id")
)
(defun twit-quit ()
" Let' do some pre-hook before burying the buffer"
(interactive)
(twit-save-id-at-point)
(bury-buffer)
)
(defun twit-show-recent-tweets-from-last-id
(&optional page)
(interactive "P")
(setq page (twit-check-page-prefix page))
(with-temp-buffer
(setq retval (insert-file-contents "~/.twit-last-id") )
(setq twit-id (buffer-string)))
(pop-to-buffer
(with-twit-buffer "*Twit-recent*"
(twit-write-title "Recent Tweets (Page %s) [%s]\n"
page (format-time-string "%c"))
(twit-write-recent-tweets
(twit-parse-xml (format twit-friend-timeline-\
file-from-last-id twit-id) "GET")))))
Trouvez le module patché ici
Catégories:
Emacs, Lisp, Twitter |
0 commentaires
écrit par Ousmane Wilane, le 05/10/09 16:49.
C’est pas un secret pour ceux qui me suivent sur Twitter (où je n’ai rien à dire en moyenne d’ailleurs, alors arrêtez de me suivre et suivez ceux qui ont des choses à dire et en plus ils sont légion) que j’utilise TwIt. Je suis bizarrement assez accroc à Twitter ces temps-ci, et lorsqu’il m’arrive de ne pas suivre mon Timeline pendant quelques temps, j’ai envie avec une seule touche de regarder les pages précédentes/suivantes jusqu’à la dernière page où je m’étais arrêté la dernière fois. Je peut utiliser C-u <page> M-x twit-show-recent-tweets mais c’est pas très pratique pour passer de la page suivante/précédente. J’ai ajouté quelques fonctions à twit.el pour utiliser les touches N et P pour passer naviguer entre les pages:
(defun twit-previous-page ()
(interactive)
(twit-jump-page 1)
)
(defun twit-next-page ()
(interactive)
(twit-jump-page -1)
)
(defun twit-jump-page (n)
(goto-char 0)
(if (re-search-forward
"Recent Tweets (Page \\([[:digit:]]+\\))")
(setq curpage
(buffer-substring-no-properties
(match-beginning 1)
(match-end 1)))
(setq curpage 1)
)
(twit-show-recent-tweets
(twit-check-page-prefix
(+ n (string-to-number curpage))
))
)
Ajouter les lignes suivantes à twit-key-list:
("P" . twit-previous-page)
("N" . twit-next-page)
Trouvez le module patché ici
Catégories:
Emacs, Lisp, Twitter |
Étiquettes :
elisp
|
0 commentaires
écrit par Ousmane Wilane, le 28/09/09 12:50.
Nous oublions tout le temps d’attacher des fichiers aux courriels après les avoir annoncé dans le corps du courriel, avec Wanderlust, vous pouvez vous le faire rappeler avant d’envoyer le courriel. Ce billet est entièrement programmé par djcb, j’ai juste ajouté la chaîne joint à l’expression régulière. Merci djcb. Vous trouverez sur le blog de djcb le hook utilisé pour vous rappelez que vous envoyez un courriel sans objet.
(defun my-wl-draft-attachment-check ()
"if attachment is mention but none included,
warn the the user"
(save-excursion
(goto-char 0)
(unless ;; don't we have an attachment?
(re-search-forward "^Content-Disposition:
attachment" nil t)
(when ;; no attachment; did we mention
an attachment?
;; English or French
(re-search-forward "attach\|joint" nil t)
(unless (y-or-n-p "Vous n'avez peut
être pas joint la pièce. Voulez-vous
quand même envoyer le brouillon ?")
(error "Abort."))))))
(add-hook 'wl-mail-send-pre-hook
'my-wl-draft-attachment-check)
Catégories:
Emacs, Email, Imap, Lisp, Wanderlust |
0 commentaires
écrit par Ousmane Wilane, le 27/09/09 11:21.
A l’occasion de notre Software Freedom Day (2009) (Merci SFD pour les T-shirts et les CD/DVD) tenu le 26/09/2009, j’ai fait une petite démo d’utilisation d’Emacs, Wanderlust et twit.el, les 26 slides sont disponibles et le code source accessible à partir des slides. Les slides seront disponibles sur le site de mon LUG
Catégories:
Emacs, Lisp, Tutoriel |
3 commentaires
écrit par Ousmane Wilane, le 14/05/09 12:19.
Avec Nitrogen Erlang est en plein dans la danse. Avec Seaside (Smalltalk),
Django (Python) et ses frères, Weblocks (Common Lisp), HApps (Haskell) et Rails (Ruby), c’est une vraie alternative sérieuse qui apporte la force d’Erlang sur la table (remise à l’échelle innée).
Pour le côté bling bling Nitrogen fait un choix qui devient standard de fait: jQuery
Catégories:
django, Erlang, Haskell, Lisp, Python, Ruby, Smalltalk |
Étiquettes :
Erlang Web Framework
|
0 commentaires