← Back to team overview

sslug-teknik team mailing list archive

Re: Linieopfattelse i Emacs

 

On Sat, Apr 21, 2001 at 03:28:48PM +0200, Mads Bondo Dydensborg wrote:
> On Sat, 21 Apr 2001 spring@xxxxxxxxxxxx wrote:
> 
> > 
> > Hej SSLUG'ere
> > 
> > Hvis man i Emacs har en meget lang tekstlinie ombryder Emacs
> > automatisk denne til at være "flerliniet" således at hele tekstlinien
> > kan ses. Det er også godt nok. Mit problem er, at hvis jeg eksempelvis
> > står på "første linie" i denne "flerliniede" tekstlinie og trykker pil
> > ned hopper Emacs alle de resterende linier over, da Emacs vist
> > opfatter linier som dem som er adskilt af et linieskift. Er der nogen
> > mulighed for at få Emacs til at ændre opfattelse af hvad en linie er,
> > således at jeg kan bevæge mig "op" og "ned" i en et liniet, ombrudt
> > tekstlinie ... Håber mit spørgsmål er forståeligt ...
> 

Er der en grund til at du ikke bruge "auto-fill" ? Så bliver
linieskift automatisk sat ind, og problemet opstår ikke.

> Jeg tror ikke det er indbygget, men du kan jo lave en funktion der kan
> gøre det, og binde den til ned/op - det må være noget med at finde ud af
> om der mellem der hvor cursoren står, og frame-width tegn frem er et
> linieskift, og hvis der ikke er det, så lægge frame-width til cursor
> positionen, og ellers bare bruge next-line.
> 

Som følgende, som dog ikke ser efter linieskift.  De virker hvis man
er _i_ den lange linje, men ikke hvis man er lige udenfor.

(defun down-one-same-line ()
  (interactive)
  (let ((ncol (- (frame-width) 1))
	(pos (current-column)))
    (move-to-column (+ ncol pos))))

(defun up-one-same-line ()
  (interactive)
  (let ((ncol (- (frame-width) 1))
	(pos (current-column)))
    (move-to-column (- pos ncol))))

mvh
Peter


References