OVH Cloud OVH Cloud

gnus et nnir

18 réponses
Avatar
insitu
Bonjour,

Je cherche =C3=A0 utiliser nnir et swish-e dans gnus pour indexer et
rechercher des mails. J'ai suivi les instructions sur gnus.org mais
j'obtiens une erreur semble-t'il dans la construciton du buffer
summary. Voici la trace :

Debugger entered--Lisp error: (error "nnheader-parse-head returned nil for =
article 1107 in group nndoc+gnus-help:mail.list.maven")
signal(error ("nnheader-parse-head returned nil for article 1107 in group=
nndoc+gnus-help:mail.list.maven"))
error("nnheader-parse-head returned nil for article %s in group %s" 1107 =
"nndoc+gnus-help:mail.list.maven")
(if novitem nil (pop-to-buffer nntp-server-buffer) (error "nnheader-parse=
-head returned nil for article %s in group %s" artno artfullgroup))
(unless novitem (pop-to-buffer nntp-server-buffer) (error "nnheader-parse=
-head returned nil for article %s in group %s" artno artfullgroup))
(cond ((eql G57160 ...) (goto-char ...) (setq novitem ...) (unless novite=
m ... ...)) ((eql G57160 ...) (goto-char ...) (setq novitem ...) (unless no=
vitem ... ...)) (t (nnheader-report ... "Don't support header type %s." foo=
)))
(let ((G57160 ...)) (cond (... ... ... ...) (... ... ... ...) (t ...)))
(case (setq foo (gnus-retrieve-headers ... artfullgroup nil)) (nov (goto-=
char ...) (setq novitem ...) (unless novitem ... ...)) (headers (goto-char =
...) (setq novitem ...) (unless novitem ... ...)) (t (nnheader-report ... "=
Don't support header type %s." foo)))
(while (not (null artlist)) (setq art (car artlist)) (or (numberp art) (n=
nheader-report ... "nnir-retrieve-headers doesn't grok message ids: %s" art=
)) (setq artitem (nnir-artlist-article nnir-artlist art)) (setq artrsv (nni=
r-artitem-rsv artitem)) (setq artfullgroup (nnir-artitem-group artitem)) (s=
etq artno (nnir-artitem-number artitem)) (setq artgroup (gnus-group-real-na=
me artfullgroup)) (setq server (nnir-group-server artfullgroup)) (set-buffe=
r nntp-server-buffer) (nnir-possibly-change-server server) (case (setq foo =
...) (nov ... ... ...) (headers ... ... ...) (t ...)) (mail-header-set-numb=
er novitem idx) (mail-header-set-from novitem (mail-header-from novitem)) (=
mail-header-set-subject novitem (format "[%d: %s/%d] %s" artrsv artgroup ar=
tno ...)) (push novitem novdata) (setq artlist (cdr artlist)) (setq idx (1+=
idx)))
(let ((artlist ...) (idx 1) (art nil) (artitem nil) (artgroup nil) (artno=
nil) (artrsv nil) (artfullgroup nil) (novitem nil) (novdata nil) (foo nil)=
server) (while (not ...) (setq art ...) (or ... ...) (setq artitem ...) (s=
etq artrsv ...) (setq artfullgroup ...) (setq artno ...) (setq artgroup ...=
) (setq server ...) (set-buffer nntp-server-buffer) (nnir-possibly-change-s=
erver server) (case ... ... ... ...) (mail-header-set-number novitem idx) (=
mail-header-set-from novitem ...) (mail-header-set-subject novitem ...) (pu=
sh novitem novdata) (setq artlist ...) (setq idx ...)) (setq novdata (nreve=
rse novdata)) (set-buffer nntp-server-buffer) (erase-buffer) (mapcar (quote=
nnheader-insert-nov) novdata) (quote nov))
(save-excursion (let (... ... ... ... ... ... ... ... ... ... ... server)=
(while ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...=
...) (setq novdata ...) (set-buffer nntp-server-buffer) (erase-buffer) (ma=
pcar ... novdata) (quote nov)))
nnir-retrieve-headers((1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20=
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45=
46 47 48 49 50 ...) "((query . \"cobertura\"))" "-ephemeral" nil)
gnus-retrieve-headers((1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20=
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45=
46 47 48 49 50 ...) "nnir:((query . \"cobertura\"))" nil)
gnus-cache-retrieve-headers((1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18=
19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43=
44 45 46 47 48 49 50 ...) "nnir:((query . \"cobertura\"))" nil)
gnus-retrieve-headers((1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20=
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45=
46 47 48 49 50 ...) "nnir:((query . \"cobertura\"))" nil)
gnus-fetch-headers((1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21=
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46=
47 48 49 50 ...))
gnus-select-newsgroup("nnir:((query . \"cobertura\"))" t nil)
gnus-summary-read-group-1("nnir:((query . \"cobertura\"))" t t nil nil ni=
l)
gnus-summary-read-group("nnir:((query . \"cobertura\"))" t t nil nil nil =
nil)
gnus-group-read-group(t t "nnir:((query . \"cobertura\"))" nil)
byte-code("...
gnus-group-read-ephemeral-group("nnir:((query . \"cobertura\"))" (nnir ""=
) t (#<buffer *Group*> . group) nil)
(let ((parms nil)) (if extra-parms (setq parms ...) (setq parms ...)) (gn=
us-group-read-ephemeral-group (concat "nnir:" ...) (quote ...) t (cons ... =
gnus-current-window-configuration) nil))
gnus-group-make-nnir-group(nil "cobertura")
* call-interactively(gnus-group-make-nnir-group)

Toute aide sera bien s=C3=BBr appreci=C3=A9e

Insitu

10 réponses

1 2
Avatar
Sébastien Kirche
Le 7 février 2006 à 11:02, insitu s'est exprimé ainsi :

Toute aide sera bien sûr appreciée



Je ne vois pas grand chose pour t'aider, mais j'espère
qu'Erik-Flatman-ecocode nous lit : je crois bien qu'il a mis en place
cette méthode de recherche dans les mails...

--
Sébastien Kirche
Avatar
Bastien
Sébastien Kirche writes:

Le 7 février 2006 à 11:02, insitu s'est exprimé ainsi :

Toute aide sera bien sûr appreciée





C'était quoi la question ? Je n'arrive pas à retrouver le fil.

--
Bastien
Avatar
Eric Masson
writes:

'Lut,

Je cherche à utiliser nnir et swish-e dans gnus pour indexer et
rechercher des mails. J'ai suivi les instructions sur gnus.org mais
j'obtiens une erreur semble-t'il dans la construciton du buffer
summary. Voici la trace :



Ici, rien de plus que ça dans le .gnus

;;
;; nnir/swish-e setup
;;

(require 'nnir)
(setq nnir-mail-backend (nth 0 gnus-secondary-select-methods)
nnir-search-engine 'swish-e)

--
FG> Quelle rapport entre vendre/acheter des livres et
FG> etre bibliophile?
On n'a pas toujours l'opportunité de les voler.
-+- FF in <http://www.le-gnu.net> - À l'insu de son plein gré -+-
Avatar
ecocode
* Sébastien Kirche wrote:
|
| Le 7 février 2006 à 11:02, insitu s'est exprimé ainsi :
|
| > Toute aide sera bien sûr appreciée
|
| Je ne vois pas grand chose pour t'aider, mais j'espère
| qu'Erik-Flatman-ecocode nous lit : je crois bien qu'il a mis en place
| cette méthode de recherche dans les mails...

Me voilà ;-)

Effectivement swish-e fonctionne chez moi pour les recherches dans des
mails nnml. Je ne suis pas assez bon en lisp que pour chopper une erreur
dans le trace . Si ce n'est que j'ai vu que le nom du group est
nndoc...

Quelques questions :
- pour m'éclaircir : poste la config swish-e et les settings dans .gnus
- as-tu essayé swish-e en ligne de commande ? cela permettrait de situer
le prob dans la config nnir ou swish-e ...

J'espère pouvoir aider !

--
Eco
http://www.ecocode.net
* Life is wonderful with Emacs and Perl *
Avatar
Sébastien Kirche
Le 7 February 2006 à 14:06, Bastien vraute :

> > Toute aide sera bien sûr appreciée

C'était quoi la question ? Je n'arrive pas à retrouver le fil.



Comment utiliser nnir et swish-e.

En fait le message a été filtré sur ton serveur car codé en utf-8. Free
ne laisse passer l'utf-8 que sur certains groupes fr.* et visiblement
pas ici. (par contre ceux traitants de langues étrangères il me semble)

--
Sébastien Kirche
Avatar
Bastien
Sébastien Kirche writes:

En fait le message a été filtré sur ton serveur car codé en utf-8.



Merci de me prévenir - c'est donc (aussi) pour ça que des fois je ne
comprends rien!

--
Bastien
Avatar
Insitu
Bonsoir,
merci pour les réponses.
Voici la config gnus (partielle) :

(add-to-list 'gnus-secondary-select-methods '(nntp "news.nerim.net"))
(add-to-list 'gnus-secondary-select-methods '(nnml ""))
(require 'nnir)
(setq nnir-mail-backend (nth 1 gnus-secondary-select-methods)
nnir-search-engine 'swish-e)

L'exécution de swish-e en ligne de commande fonctionne parfaitement :

$ swish-e -f ~/Mail/index.swish-e -w cobertura

# SWISH format: 2.4.3
# Search words: cobertura
# Removed stopwords:
# Number of hits: 60
# Search time: 0.174 seconds
# Run time: 0.225 seconds
1000 /home/nono/Mail/mail/list/maven/1107 "1107" 35090
995 /home/nono/Mail/mail/list/maven/1033 "1033" 35123
836 /home/nono/Mail/mail/list/maven/1054 "1054" 15785
745 /home/nono/Mail/mail/list/maven/909 "909" 12454
649 /home/nono/Mail/mail/list/maven/1305 "1305" 16085
628 /home/nono/Mail/mail/list/maven/1275 "1275" 11719
602 /home/nono/Mail/mail/list/maven/696 "696" 15220
571 /home/nono/Mail/mail/list/maven/1276 "1276" 12570
556 /home/nono/Mail/mail/list/maven/1380 "1380" 8420
539 /home/nono/Mail/mail/list/maven/1265 "1265" 7993
519 /home/nono/Mail/mail/list/maven/430 "430" 8382
499 /home/nono/Mail/mail/list/maven/1273 "1273" 7634
499 /home/nono/Mail/mail/list/maven/429 "429" 7470

J'ai l'impression que l'erreur provient du formatage par gnus du
résultat de la requête swish-e.

Encore merci.

Insitu
Avatar
Sébastien Kirche
Le 7 February 2006 à 20:53, Insitu vraute :

Bonsoir,
merci pour les réponses.



Attention : comme je le faisais remarquer tes messages n'apparaissent
pas sur le serveur de Free car tu les encodes en utf-8 qui n'est pas
toléré sur la hiérarchie fr.* en dehors de quelques groupes. Le standard
étant iso-8859-1 (latin-1) ou iso-8859-15 (latin-9).

Tu cours le risque de ne pas être lu de tous.

[Je laisse le reste en citation intégrale pour les utilisateur de Free -
entre autres.]

Voici la config gnus (partielle) :

(add-to-list 'gnus-secondary-select-methods '(nntp "news.nerim.net"))
(add-to-list 'gnus-secondary-select-methods '(nnml ""))
(require 'nnir)
(setq nnir-mail-backend (nth 1 gnus-secondary-select-methods)
nnir-search-engine 'swish-e)

L'exécution de swish-e en ligne de commande fonctionne parfaitement :

$ swish-e -f ~/Mail/index.swish-e -w cobertura

# SWISH format: 2.4.3
# Search words: cobertura
# Removed stopwords:
# Number of hits: 60
# Search time: 0.174 seconds
# Run time: 0.225 seconds
1000 /home/nono/Mail/mail/list/maven/1107 "1107" 35090
995 /home/nono/Mail/mail/list/maven/1033 "1033" 35123
836 /home/nono/Mail/mail/list/maven/1054 "1054" 15785
745 /home/nono/Mail/mail/list/maven/909 "909" 12454
649 /home/nono/Mail/mail/list/maven/1305 "1305" 16085
628 /home/nono/Mail/mail/list/maven/1275 "1275" 11719
602 /home/nono/Mail/mail/list/maven/696 "696" 15220
571 /home/nono/Mail/mail/list/maven/1276 "1276" 12570
556 /home/nono/Mail/mail/list/maven/1380 "1380" 8420
539 /home/nono/Mail/mail/list/maven/1265 "1265" 7993
519 /home/nono/Mail/mail/list/maven/430 "430" 8382
499 /home/nono/Mail/mail/list/maven/1273 "1273" 7634
499 /home/nono/Mail/mail/list/maven/429 "429" 7470

J'ai l'impression que l'erreur provient du formatage par gnus du
résultat de la requête swish-e.

Encore merci.

Insitu



--
Sébastien Kirche
Avatar
ecocode
* Insitu wrote:
|
| Bonsoir,
| merci pour les réponses.
| Voici la config gnus (partielle) :
|
| (add-to-list 'gnus-secondary-select-methods '(nntp "news.nerim.net"))
| (add-to-list 'gnus-secondary-select-methods '(nnml ""))
| (require 'nnir)
| (setq nnir-mail-backend (nth 1 gnus-secondary-select-methods)
| nnir-search-engine 'swish-e)
|
| L'exécution de swish-e en ligne de commande fonctionne parfaitement :

ok, faut donc pas chercher du coté de swish-e.

N'as-tu pas oublié d'indiquer le fichier index et le répertoire ?

(setq nnir-swish-e-index-file "/Users/ec/Gnusmail/index.swish")
(setq nnir-swish-e-remove-prefix "/Users/ec/Gnusmail/")

--
Eco
http://www.ecocode.net
* Life is wonderful with Emacs and Perl *
Avatar
Insitu
J'avais effectivement négligé de définir ces variables mais il
semblerait que nnir ait une config par défaut puisque le résultat
obtenu après affectation est le même :-(
N'y aurait-il pas possibilité d'un pb du côté du format du m ail ? J'ai
vérifié, il m'a l'air tout ce qu'il y a de plus normal.

Insitu
1 2