Puis-je avoir deux vues sur un fichier - une rétrécie pas une?

13

J'édite un fichier, abc.org, et j'appelle org-narrow-to-block pour me limiter à un bloc de code que je souhaite modifier. Pour le processus d'édition, je dois accéder à une autre partie de abc.org et je veux juste l'afficher dans une autre fenêtre. Je fais donc "Cx 2" et constate que la fenêtre montre l'abc.org, mais aussi rétrécie. Est-il possible d'avoir deux "vues" sur le fichier? Un rétréci et un non?

J'ai vérifié les sept questions étiquetées avec rétrécissement et je n'ai pas trouvé de question similaire.

Matthias
la source

Réponses:

15

Je pense que vous cherchez clone-indirect-buffer-other-window(lié C-x 4 cpar défaut).

Notez que cela fait un clone lié du tampon, vous devrez donc vous rappeler de tuer le tampon cloné ainsi que la fenêtre pour éviter d'accumuler de plus en plus de tampons avec le même contenu.

Stuart Hickinbottom
la source
4

C'est précisément le but de la bibliothèque Narrow Indirect ( narrow-indirect.el).

Il vous donne des commandes de rétrécissement qui créent un tampon indirect qui est un clone du tampon actuel et qui est restreint à une partie particulière de celui-ci. Vous pouvez vous limiter au defun actuel, à la région active ou à la page actuelle. Raccourcis clavier suggérés:

(define-key ctl-x-4-map "nd" 'ni-narrow-to-defun-other-window)
(define-key ctl-x-4-map "nn" 'ni-narrow-to-region-other-window)
(define-key ctl-x-4-map "np" 'ni-narrow-to-page-other-window)

Il offre deux façons de distinguer les tampons indirects des tampons non indirects, pour les tampons indirects qu'il crée:

  • Le nom du tampon d'un tampon rétréci indirect commence par un préfixe que vous pouvez définir à l'aide de l'option ni-buf-name-prefix. La valeur par défaut est I-.

  • Le nom d'un tampon rétréci indirect est mis en évidence dans la ligne de mode en utilisant face ni-mode-line-buffer-idau lieu de face mode-line-buffer-id. (Pour désactiver cette option, il suffit de personnaliser le premier pour qu'il soit identique au second.)

Un tel tampon indirect vous donne une vue différente d'une partie du tampon, ou même de tout le tampon (utilisation C-x h C-x 4 n n). Il a toujours le même texte et les mêmes propriétés de texte, mais sinon, il est assez indépendant.

En particulier, vous pouvez tuer un tampon indirect sans affecter son tampon de base. Vous voudrez probablement tuer les tampons rétrécis indirects plutôt que de les élargir.

Voir le manuel Emacs, noeud Tampons indirects .

A dessiné
la source
4

Avez-vous essayé C-x C-c b( org-tree-to-indirect-buffer)? Il crée un tampon (nouveau) indirect et le réduit au sous-arbre actuel, laissant le reste du document tel quel.

Quarky Quanta
la source
Notez que par défaut, un seul tampon indirect est conservé à tout moment. Cependant, cela peut être modifié en définissant org-indirect-buffer-displaysur new-frame.
Christoph