vercel / vercel/hyper

windows10 ssh to server using tmux ctrl+alt+... not working

Open
#6,885 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
44.7k
Forks
3.6k
Avg merge
21m
Merged PRs (30d)
1

Description

  • [x ] I am on the latest Hyper.app version
  • [x ] I have searched the issues of this repo and believe that this is not a duplicate
  • OS version and name: Windows 10 21H2
  • Hyper.app version: 3.3.0 (stable)
  • The issue is reproducible in vanilla Hyper.app: yes

Issue

windows10 ssh to linux server,
my tmux keybind
ctrl+alt+n : move to next tab not working.
ctrl+alt+p : move to preview tab not working.
ctrl+alt+... :not working in hyper. Using windows terminal no problem.

my hyper setting

"use strict";
// Future versions of Hyper may add additional config options,
// which will not automatically be merged into this file.
// See https://hyper.is#cfg for all currently supported options.
module.exports = {
	config: {
		// choose either `'stable'` for receiving highly polished,
		// or `'canary'` for less polished but more frequent updates
		updateChannel: 'stable',
		// default font size in pixels for all tabs
		fontSize: 14,
		// font family with optional fallbacks
		fontFamily: 'Menlo, "DejaVu Sans Mono", Consolas, "Lucida Console", monospace',
		// default font weight: 'normal' or 'bold'
		fontWeight: 'normal',
		// font weight for bold characters: 'normal' or 'bold'
		fontWeightBold: 'bold',
		// line height as a relative unit
		lineHeight: 1,
		// letter spacing as a relative unit
		letterSpacing: 0,
		// terminal cursor background color and opacity (hex, rgb, hsl, hsv, hwb or cmyk)
		cursorColor: 'rgba(248,28,229,0.8)',
		// terminal text color under BLOCK cursor
		cursorAccentColor: '#000',
		// `'BEAM'` for |, `'UNDERLINE'` for _, `'BLOCK'` for █
		cursorShape: 'BLOCK',
		// set to `true` (without backticks and without quotes) for blinking cursor
		cursorBlink: false,
		// color of the text
		foregroundColor: '#fff',
		// terminal background color
		// opacity is only supported on macOS
		backgroundColor: '#000',
		// terminal selection color
		selectionColor: 'rgba(248,28,229,0.3)',
		// border color (window, tabs)
		borderColor: '#333',
		// custom CSS to embed in the main window
		css: '',
		// custom CSS to embed in the terminal window
		termCSS: '',
		// set custom startup directory (must be an absolute path)
		workingDirectory: '',
		// if you're using a Linux setup which show native menus, set to false
		// default: `true` on Linux, `true` on Windows, ignored on macOS
		showHamburgerMenu: '',
		// set to `false` (without backticks and without quotes) if you want to hide the minimize, maximize and close buttons
		// additionally, set to `'left'` if you want them on the left, like in Ubuntu
		// default: `true` (without backticks and without quotes) on Windows and Linux, ignored on macOS
		showWindowControls: '',
		// custom padding (CSS format, i.e.: `top right bottom left`)
		padding: '12px 14px',
		// the full list. if you're going to provide the full color palette,
		// including the 6 x 6 color cubes and the grayscale map, just provide
		// an array here instead of a color map object
		colors: {
			black: '#000000',
			red: '#C51E14',
			green: '#1DC121',
			yellow: '#C7C329',
			blue: '#0A2FC4',
			magenta: '#C839C5',
			cyan: '#20C5C6',
			white: '#C7C7C7',
			lightBlack: '#686868',
			lightRed: '#FD6F6B',
			lightGreen: '#67F86F',
			lightYellow: '#FFFA72',
			lightBlue: '#6A76FB',
			lightMagenta: '#FD7CFC',
			lightCyan: '#68FDFE',
			lightWhite: '#FFFFFF',
			limeGreen: '#32CD32',
			lightCoral: '#F08080',
		},
		// the shell to run when spawning a new session (i.e. /usr/local/bin/fish)
		// if left empty, your system's login shell will be used by default
		//
		// Windows
		// - Make sure to use a full path if the binary name doesn't work
		// - Remove `--login` in shellArgs
		//
		// Windows Subsystem for Linux (WSL) - previously Bash on Windows
		// - Example: `C:\\Windows\\System32\\wsl.exe`
		//
		// Git-bash on Windows
		// - Example: `C:\\Program Files\\Git\\bin\\bash.exe`
		//
		// PowerShell on Windows
		// - Example: `C:\\WINDOWS\\System32\\WindowsPowerShell\\v1.0\\powershell.exe`
		//
		// Cygwin
		// - Example: `C:\\cygwin64\\bin\\bash.exe`
		shell: 'C:\\Program Files\\PowerShell\\7\\pwsh.exe',
		// for setting shell arguments (i.e. for using interactive shellArgs: `['-i']`)
		// by default `['--login']` will be used
		shellArgs: ['--login'],
		// for environment variables
		env: {},
		// Supported Options:
		//  1. 'SOUND' -> Enables the bell as a sound
		//  2. false: turns off the bell
		bell: 'false',
		// An absolute file path to a sound file on the machine.
		// bellSoundURL: '/path/to/sound/file',
		// if `true` (without backticks and without quotes), selected text will automatically be copied to the clipboard
		copyOnSelect: true,
		modifierKeys: { altIsMeta: false},
		// if `true` (without backticks and without quotes), hyper will be set as the default protocol client for SSH
		defaultSSHApp: true,
		// if `true` (without backticks and without quotes), on right click selected text will be copied or pasted if no
		// selection is present (`true` by default on Windows and disables the context menu feature)
		quickEdit: false,
		// choose either `'vertical'`, if you want the column mode when Option key is hold during selection (Default)
		// or `'force'`, if you want to force selection regardless of whether the terminal is in mouse events mode
		// (inside tmux or vim with mouse mode enabled for example).
		macOptionSelectionMode: 'vertical',
		// Whether to use the WebGL renderer. Set it to false to use canvas-based
		// rendering (slower, but supports transparent backgrounds)
		webGLRenderer: true,
		// keypress required for weblink activation: [ctrl|alt|meta|shift]
		// todo: does not pick up config changes automatically, need to restart terminal :/
		webLinksActivationKey: '',
		// if `false` (without backticks and without quotes), Hyper will use ligatures provided by some fonts
		disableLigatures: true,
		// set to true to disable auto updates
		disableAutoUpdates: false,
		// set to true to enable screen reading apps (like NVDA) to read the contents of the terminal
		screenReaderMode: false,
		// set to true to preserve working directory when creating splits or tabs
		preserveCWD: true,
		// for advanced config flags please refer to https://hyper.is/#cfg
	},
	// a list of plugins to fetch and install from npm
	// format: [@org/]project[#version]
	// examples:
	//   `hyperpower`
	//   `@company/project`
	//   `project#1.0.1`
	plugins: [
		'hyper-save-windowstate',
	],
	// in development, you can create a directory under
	// `~/.hyper_plugins/local/` and include it here
	// to load it and avoid it being `npm install`ed
	localPlugins: [],
	keymaps: {
	// Example
	// 'window:devtools': 'cmd+alt+o',
		"window:hamburgerMenu": "",
		"zoom:reset": "",
		"editor:copy": "",
		"pane:prev": "",
		"window:zoom": "",
		"window:close": "cmd+f4",
		"zoom:in": "ctrl+=",
		"zoom:out": "ctrl+-",
		"window:new": "cmd+n",
		"tab:new": "ctrl+shift+t",
		"pane:next": "ctrl+tab",
		"pane:splitRight": "ctrl+shift+e",
		"pane:splitDown": "ctrl+shift+o",
		"tab:next": "ctrl+shift+n",
		"tab:prev": "ctrl+shift+p",
		"pane:close": "ctrl+shift+q",
		"editor:paste": "ctrl+shift+v",

		"window:devtools": "ctrl+shift+i",
		"window:reload": "ctrl+shift+r",
		"window:reloadFull": "ctrl+shift+f5",
		"window:preferences": "ctrl+,",
		"window:minimize": "ctrl+shift+m",
		"window:toggleFullScreen": "f11",
		"tab:jump:prefix": "ctrl",
		"editor:undo": "ctrl+shift+z",
		"editor:redo": "ctrl+shift+y",
		"editor:cut": "ctrl+shift+x",
		"editor:selectAll": "ctrl+shift+a",
		"editor:search": "ctrl+shift+f",
		"editor:search-close": "esc",
		"editor:movePreviousWord": "",
		"editor:moveNextWord": "",
		"editor:moveBeginningLine": "Home",
		"editor:moveEndLine": "End",
		"editor:deletePreviousWord": "ctrl+backspace",
		"editor:deleteNextWord": "ctrl+del",
		"editor:deleteBeginningLine": "ctrl+home",
		"editor:deleteEndLine": "ctrl+end",
		"editor:clearBuffer": "ctrl+shift+k",
		"editor:break": "ctrl+c",
		"plugins:update": "ctrl+shift+u"
	},
};
//# sourceMappingURL=config-default.js.map
//

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the Windows 10 SSH session with tmux in vanilla Hyper.app, comparing the Ctrl+Alt key combinations with Windows Terminal. Trace the terminal input and keybinding entry points involved in modifier handling; done means the listed Ctrl+Alt shortcuts reach tmux reliably without breaking Hyper's own shortcuts.

Written by the indexing model from the issue text.

Assessment

Tech stack
shell
Domain
cli, operating-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.