Emacs: faire une partie du tampon en lecture seule


9

Je modifie parfois des fichiers dans des emacsparties du fichier qui sont de la documentation ou autre chose qui ne devrait pas être modifié, et d'autres parties sont des "zones de jeu" où je suis libre de modifier et de créer du nouveau texte.

Question: puis-je créer une partie d'un tampon emacs en lecture seule?

L'exemple le plus simple serait de rendre les lignes 1-100 en lecture seule (par exemple). Un exemple plus complexe (similaire aux signets emacs) serait de rendre tout le texte entre [readonly]et non [/readonly]modifiable.

J'ai cherché sur Google, mais je n'ai rien trouvé d'utile.

Réponses:


8

Oui, vous pouvez rendre une partie d'un tampon en lecture seule à l'aide des propriétés de texte. Le code ci - dessous définit deux nouvelles commandes make-region-read-onlyet make-region-read-writequi affectent la région entre le point et marque. Mettez le code dans votre fichier .emacs pour rendre les commandes disponibles via Meta-x.

(defun make-region-read-only (start end)
  (interactive "*r")
  (let ((inhibit-read-only t))
    (put-text-property start end 'read-only t)))

(defun make-region-read-write (start end)
  (interactive "*r")
  (let ((inhibit-read-only t))
    (put-text-property start end 'read-only nil)))
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.