Comment empêcher emacsclient de démarrer une nouvelle image à chaque fois?

8

J'ai Ubuntu 12.04 fonctionnant avec Emacs 24.3. Au démarrage de l'ordinateur, emacs --daemonest exécuté, et j'ai modifié le paramètre emacs24.desktopto take emacsclient -c -a ""as exec. Cependant, chaque fois que j'essaie d'ouvrir un fichier, un nouveau cadre s'ouvre à chaque fois.
Existe-t-il un moyen de faire apparaître le fichier dans un cadre préexistant en tant que nouveau tampon?

Par «ouvrir un fichier», je veux dire en utilisant le gestionnaire de fichiers GUI ou en utilisant le terminal par emacsclient -nc [filename]ou emacsclient -nc -a "" [file].

EDIT : Ce qui semble se produire, c'est qu'emacs ouvre une nouvelle "fenêtre OS" (comme dans le cadre Emacs) avec chaque fichier; cependant, je peux accéder à tous les tampons dans le même cadre emacs. Pourtant, avoir plusieurs images emacs est irritant même si je n'ai pas à les passer. La fermeture manuelle du cadre supprime également le tampon.

Existe-t-il un moyen de supprimer le comportement d'ouverture du nouveau cadre à chaque fois?

strNOcat
la source
Quelle est l'option "-nc" que vous avez dans votre ligne de commande. Je vois "-nw", "-c", "-n" mais aucune option "-nc" quand je le fais emacsclient -help.
Kaushal Modi
-nest pour le no-waitmoment -cétait de créer un nouveau cadre (je ne savais pas qu'il créait un nouveau cadre à chaque fois ). Sans -c, emacsclientdémarre emacs dans le -nwmode pour une raison quelconque.
strNOcat
1
Oui, mais je ne suis pas sûr que -n et -c puissent être fusionnés en -nc.
Kaushal Modi
Il donne le même comportement. Mais oui, c'était négligent de ma part; Merci.
strNOcat

Réponses:

7

Votre option incluse de -ccause cela. Par la page de manuel,

-c, --create-frame crée un nouveau cadre au lieu d'essayer d'utiliser le cadre Emacs actuel.

Supprimez cette option de votre commande et Emacs devrait s'abstenir de créer un nouveau cadre (fenêtre AKA).

Andy
la source
Si je n'utilise pas -c, emacsclientouvre emacs dans le terminal pour une raison quelconque
strNOcat
Cela n'est vrai qu'avec l'option '-nw, -t, --tty'. Quelle commande utilise sans «-c» qui ouvre Emacs dans le terminal?
Andy
emacsclient path_to_file
strNOcat
2
Sur mon PC, emacsclient filenameouvre uniquement emacs dans le terminal s'il n'y a pas de trame déjà présente. Si une trame est présente, le tampon est ouvert dans la trame.
Vamsi
@Vamsi Ah, vous avez raison, merci. Des choses simples!
strNOcat