How to scroll horizontally in emacs?

3.9k Views Asked by At

I can't get emacs to scroll horizontally!

To replicate the problem:

  1. Open the *scratch* buffer.
  2. Write a long line.
  3. Make the long line exceed the window width with M-xtoggle-truncate-lines. The left hand text (column 0) will now be off the left of the window.
  4. Try M-xscroll-left or its shortcut C-x < to scroll left.
  5. Type y to enable the disabled commands.
  6. NOTHING HAPPENS!

I also tried C-a to go to the beginning of the line.

I also tried M-xtoggle-horizontal-scroll-bar but got the error message "Horizontal scroll bars aren't implemented yet".

There seems to be no way to scroll horizontally!

I need this because I have many wide CSV files to read.

I'm using the latest prelude on emacs 24.5 on Windows 10.

I filed an issue on the prelude project in case it is a genuine bug and could be fixed there.

4

There are 4 best solutions below

3
On BEST ANSWER

You seem not to understand how horizontal scrolling works. It's not intuitive, that's why the command is disabled by default.

When I press C-x< at the end of the long line, the line disappears to the left. When I press C-x> there, nothing happens.

Pressing C-x< at the beginning of the long line, though, shows the second part of the long line.

Consider using visual-line-mode or even the csv-mode instead.

1
On

No need to handroll it yourself. This is provided out of the box in emacs 27, and it probably was available for longer:

This feature is off by default; the variable mouse-wheel-tilt-scroll turns it on, if you customize it to a non-nil value.

(setq mouse-wheel-tilt-scroll t)
0
On

Sounds like xemacs have horizontal scroll in a 'natural' way. As far as I can see it there is a [Options] button in the menubar, when clicking on it there is a [Frame Appearance] sub menu and there, there are 2 button []scrollbars, [] Truncate Lines

When these 2 buttons are checked in, long line are truncated and scrolling is smooth.

May be xemacs is non standard though.

I use it, I find it easy to cut/paste even rectangular areas, selection is faster and more precise to me that what I could achieve with keyboard meta-ctrl-shift stroke alone.

Cheers Phi I

0
On

There is new a feature in Emacs 26. You can customize mwheel-tilt-scroll-p and use mouse to scroll.

  1. M-x customize group RET mouse
  2. Then set mwheel-tilt-scroll-p to t