In Emacs, una combinazione di modalità visual line e toggle-truncate-line fa sì che Ce non vada alla fine della linea. Come lo risolvo


1

Con visual-line-modeAbilitato in Emacs, le linee lunghe si avvolgono nelle interruzioni naturali del testo, permettendomi di vedere tutto il testo su una data riga. Wrapappare nella mia barra di stato. A volte voglio che le righe non si chiudano. Posso passare da quello stato comando: M-x visual-line-mode. Tuttavia, quando lo faccio, C-enon mi porta alla fine della linea, ma piuttosto da qualche parte verso una "larghezza di schermo" o giù di lì, anche se sembra essere variabile.

Posso risolvere il problema chiamando M-x toggle-truncate-linesdopo aver eseguito il M-x visual-line-mode, ma quello che mi piacerebbe fare è utilizzare un singolo comando tasto funzione per eseguire entrambi i comandi in sequenza.

Nel mio .emacsfile al momento ho questo:

(global-set-key [f8] 'toggle-truncate-lines)
(global-set-key [f9] 'visual-line-mode)

Con questi tasti definiti, posso usare i tasti funzione f9e f8in sequenza per ottenere i risultati desiderati. Ho pensato di poter scrivere una funzione elisp per chiamare le due funzioni in sequenza e quindi mappare un singolo tasto funzione a quella funzione, in questo modo:

(defun unwrap-lines ()
  "Unwrap lines, and fix the C-e not to the end problem"
  (interactive)
  (visual-line-mode)
  (toggle-truncate-lines))

(global-set-key [f10] 'unwrap-lines)

Tuttavia, dopo aver definito questa funzione, sembra chiamare solo il secondo comando nella mia funzione toggle-truncate-linese salta l' visual-line-modeaspetto della funzione.

Che cosa sto facendo di sbagliato?


1
La modalità linea visiva è disattivata con (visual-line-mode -1) Potresti anche voler assicurarti di non utilizzare global-visual-line-modeciò che influenza tutto.
elenco delle leggi

Thatnks! Questa era la parte che mi mancava.
Andrew Larned,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.