Démarer emacs sur une page de man depuis le shell

Le
nicolas.edel
Bonjour,

je voudrais démarer emacs en lui spécifiant une page de man/info.
En mode interactif, pas de soucis:
- M-x manual-entry puis je lui donne le nom
- M-x info, etc.
Depuis le shell:
emacs -f info => j'arrive sur l'acceuil de info
emacs -f woman => me demande quelle page de man (mais l'init est
looongue)
emacs -f manual-entry => erreur

Je voudrais pourvoir spécifier une page de man ou de info, et je ne
vois pas comment faire.
Des idées ?

-Nicolas
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Luc.Habert.00__arjf
Le #21781271
:

je voudrais démarer emacs en lui spécifiant une page de man/info.
En mode interactif, pas de soucis:
- M-x manual-entry puis je lui donne le nom
- M-x info, etc.
Depuis le shell:



emacs --eval='(man "ploum")'
Sébastien Kirche
Le #21781261
Le 4 décembre 2007 à 11:52, nicolas edel a dit :

Bonjour,



Salut,

je voudrais démarer emacs en lui spécifiant une page de man/info.
En mode interactif, pas de soucis:
- M-x manual-entry puis je lui donne le nom
- M-x info, etc.
Depuis le shell:
emacs -f info => j'arrive sur l'acceuil de info
emacs -f woman => me demande quelle page de man (mais l'init est
looongue)
emacs -f manual-entry => erreur

Je voudrais pourvoir spécifier une page de man ou de info, et je ne
vois pas comment faire.
Des idées ?



avec le paramètre --eval et les fonctions manual-entry et Info-find-node ?

Par exemple emacs --eval '(Info-find-node "Gnus" "Top")'
ou emacs --eval '(manual-entry "top(1)")'

HTH.
--
Sébastien Kirche
nicolas.edel
Le #21781251
On Dec 4, 12:20 pm, (Luc Habert)
wrote:
:

> je voudrais démarer emacs en lui spécifiant une page de man/info.
> En mode interactif, pas de soucis:
> - M-x manual-entry puis je lui donne le nom
> - M-x info, etc.
> Depuis le shell:

emacs --eval='(man "ploum")'



Super.
Je vais de ce pas regarder plus attentivement le manuel d'emacs à
propos de cette option.
Merci beaucoup.
nicolas.edel
Le #21781241
On Dec 4, 12:23 pm, Sébastien Kirche
avec le paramètre --eval et les fonctions manual-entry et Info-find-node ?

Par exemple emacs --eval '(Info-find-node "Gnus" "Top")'
ou emacs --eval '(manual-entry "top(1)")'



merci
nicolas.edel
Le #21781231
On Dec 4, 12:20 pm, (Luc Habert)
wrote:
:

> je voudrais démarer emacs en lui spécifiant une page de man/info.
> En mode interactif, pas de soucis:
> - M-x manual-entry puis je lui donne le nom
> - M-x info, etc.
> Depuis le shell:

emacs --eval='(man "ploum")'



Ça fonctionne. Mais comme la fenêtre est splittée en deux buffers et
avec le focus dans le buffer vide, j'essaye la chose suivante:
# emacs --eval='(progn (man "open")(delete-window))'

Mais rien n'y fait. J'ai l'impression que toutes les commandes qui
suivent l'instruction (man "open") sont ignorées, alors que le manuel
dit:
`--eval=expression'
Evaluate Lisp expression expression.
Luc.Habert.00__arjf
Le #21781221
:

# emacs --eval='(progn (man "open")(delete-window))'



Ça louze parce que la fonction man lance en asynchrone un process qui
formate la page de man, et enregistre un hook qu'emacs lance lorsqu'il
reçoit la sortie du process lancé, lequel hook crée la fenêtre. Ton
delete-window est donc exécuté trop tôt, à un moment où la fenêtre n'est pas
encore créée. Le hook est customisable à l'aide de la variable
Man-notify-method :

emacs -nw --eval='(progn (setq Man-notify-method '''pushy) (man "ls"))'
nicolas.edel
Le #21781211
On Dec 4, 2:45 pm, (Luc Habert)
wrote:
:

> # emacs --eval='(progn (man "open")(delete-window))'

Ça louze parce que la fonction man lance en asynchrone un process qui
formate la page de man, et enregistre un hook qu'emacs lance lorsqu'il
reçoit la sortie du process lancé, lequel hook crée la fenêtre. To n
delete-window est donc exécuté trop tôt, à un moment où la fen être n'est pas
encore créée. Le hook est customisable à l'aide de la variable
Man-notify-method :

emacs -nw --eval='(progn (setq Man-notify-method '''pushy) (man "ls"))'



bravo, et merci ;)
Publicité
Poster une réponse
Anonyme