Change:
Scrolling within the integrated terminal doesn't scroll curses interfaces such as , , , etc. <!-- Use Help Report Issues to prefill these. --- VSCode Version: Version 1.15.0 OS Version: Arch Linux Shell: ZSH (oh-my-zsh) the integrated terminal ( ``) a curses style pager interface (e.g. , , , ) the mouse scrollwheel to try and scroll the pager happens, using keyboard commands to scroll works fine (, , , , arrow keys, etc) a seperate terminal (e.g. or ) step 2 & 3 above as expected; pager scrolls <!-- Launch with to check. --Reproduces without extensions: Yes
This should be fixed in the next version. Note that this only applies to applications that launch the alt buffer however, so it does not apply to . Upstream issue:
Sounds like the upstream issue might be a different one to this. It appears to be about the alternative buffer being rendered twice after a scroll. This is about passing scroll events to pager style programs, such as less and git log.
The reason scroll isn't making it to the terminal app is because the scrollbar is grabbing the event and not passing it to the terminal. When there is no scrollback it gets sent to the terminal correctly.
It works in tmux fine now but not vim yet.
This has been working for a few versions now

Discussion:
"resolved": "https://registry.npmjs.org/winreg/-/winreg-1.2.0.tgz" }, "xterm": { <del> "version": "2.8.1", "from": "Tyriar/xterm.js#vscode-release/1.15", "resolved": "git+https://github.com/Tyriar/xterm.js.git#75ffea5ebd5510ad0478b017c3946cb8d504855f" </del> <ins> "version": "2.9.1", "from": "Tyriar/xterm.js#vscode-release/1.16", "resolved": "git+https://github.com/Tyriar/xterm.js.git#74fde417c97962730a5fbbc8e8e7dcd47e1b897b" </ins> }, "yauzl": { "version": "2.8.0",

"vscode-ripgrep": "0.0.25", "vscode-textmate": "^3.1.5", "winreg": "1.2.0", <del> "xterm": "Tyriar/xterm.js#vscode-release/1.15", </del> <ins> "xterm": "Tyriar/xterm.js#vscode-release/1.16", </ins> "yauzl": "2.8.0" }, "devDependencies": {

declare module 'xterm' { type LinkMatcherHandler = (event: MouseEvent, uri: string) => boolean | void; <del> class Terminal { </del> <ins> export class Terminal { </ins> cols: number; rows: number; ydisp: number;

*/ static loadAddon(addon: string): void; } <del> export = Terminal; </del> }  No newline at end of file

import Event, { Emitter } from 'vs/base/common/event'; import Uri from 'vs/base/common/uri'; import { WindowsShellHelper } from 'vs/workbench/parts/terminal/electron-browser/windowsShellHelper'; <del> import XTermTerminal = require('xterm'); </del> <ins> import { Terminal as XTermTerminal } from 'xterm'; </ins> import { Dimension } from 'vs/base/browser/builder'; import { IContextKeyService, IContextKey } from 'vs/platform/contextkey/common/contextkey'; import { IKeybindingService } from 'vs/platform/keybinding/common/keybinding';

import { TPromise } from 'vs/base/common/winjs.base'; import { Emitter, debounceEvent } from 'vs/base/common/event'; import { ITerminalInstance } from 'vs/workbench/parts/terminal/common/terminal'; <del> import XTermTerminal = require('xterm'); </del> <ins> import { Terminal as XTermTerminal } from 'xterm'; </ins> const SHELL_EXECUTABLES = ['cmd.exe', 'powershell.exe', 'bash.exe'];