How to horizontally scroll in Notepad++

keyboardnotepadscroll-wheelscrolling

How to horizontally scroll in Notepad++? I know the way by dragging horizontal scroll bar, but I would like more convenient way:

  1. Scrolling with keyboard

  2. Scrolling with mouse wheel while holding Shift key pressed.

I have lots of long lines in logs files. And I need to scroll very fast both ways: horizontally and vertically.

Best Answer

How to horizontally scroll in Notepad++?

You can scroll horizontally in Notepad++ the same way(s) you scroll horizontally in any other program. A convenient way

I know the way by dragging horizontal scroll bar, but I would like more convenient way.

It depends on what you consider convenient, but there are a few options.

Scrolling with keyboard

You can usually use the Left and Right keys in combination with some modifiers in most programs. For example, Ctrl+Left/Right usually scrolls all the way or one interval. Also, PageUp and PageDown can usually be combined with Ctrl to scroll one interval horizontally instead of vertically. The same goes for Home and End (which typically scroll to the beginning or end of a line).

In the case of Notepad++ specifically, it doesn’t seem to support any of these by keyboard or via mouse. Unfortunately, even the Shortcut Mapper doesn’t seem to have any horizontal-scrolling items that can be mapped to a hotkey. You could look for a plugin, but there is an easier way:

Universal Solution

Scrolling with mouse wheel while holding Shift key pressed.

Some programs support this intrinsically and some mouse drivers/software supports it, but you easily set it up manually with AutoHotkey.

The AutoHotkey documentation already has a convenient script that lets you scroll horizontally by holding a modifier key and turning the mouse-wheel (reproduced here with Shift instead of LControl):

~Shift & WheelUp::  ; Scroll left
  ControlGetFocus, fcontrol, A
  Loop 2  ; <-- Increase this value to scroll faster.
    SendMessage, 0x114, 0, 0, %fcontrol%, A  ; 0x114=WM_HSCROLL; 0=SB_LINELEFT
return

~Shift & WheelDown::  ; Scroll right
  ControlGetFocus, fcontrol, A
  Loop 2  ; <-- Increase this value to scroll faster.
    SendMessage, 0x114, 1, 0, %fcontrol%, A  ; 0x114=WM_HSCROLL; 1=SB_LINERIGHT
return

You can customize and extend the script as needed; for example, you can add keyboard hotkeys, modify the scroll amount, etc.

I have lots of long lines in logs files. And I need to scroll very fast both ways: horizontally and vertically.

You can create multiple hotkeys as above to scroll a little, a medium amount, or a lot to suit your needs. You can even compile your script and run it as a background program.

Related Question