From be29c4a243c34b534e06420147b9076cba845dab Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Tue, 15 Sep 2020 10:34:37 +0530 Subject: [PATCH] Move class definition to utils so can be used from multiple kittens easily --- kittens/remote_file/main.py | 3 +-- kittens/ssh/main.py | 10 +++------- kitty/utils.py | 6 ++++++ 3 files changed, 10 insertions(+), 9 deletions(-) diff --git a/kittens/remote_file/main.py b/kittens/remote_file/main.py index 4013457d5..1b1e7eee7 100644 --- a/kittens/remote_file/main.py +++ b/kittens/remote_file/main.py @@ -18,9 +18,8 @@ from kitty.cli import parse_args from kitty.cli_stub import RemoteFileCLIOptions from kitty.constants import cache_dir from kitty.typing import BossType -from kitty.utils import command_for_open, get_editor, open_cmd +from kitty.utils import command_for_open, get_editor, open_cmd, SSHConnectionData -from ..ssh.main import SSHConnectionData from ..tui.handler import result_handler from ..tui.operations import ( faint, raw_mode, reset_terminal, set_cursor_visible, styled diff --git a/kittens/ssh/main.py b/kittens/ssh/main.py index 215cf40dc..cee756a0e 100644 --- a/kittens/ssh/main.py +++ b/kittens/ssh/main.py @@ -8,7 +8,9 @@ import shlex import subprocess import sys from contextlib import suppress -from typing import List, NamedTuple, NoReturn, Optional, Set, Tuple +from typing import List, NoReturn, Optional, Set, Tuple + +from kitty.utils import SSHConnectionData SHELL_SCRIPT = '''\ #!/bin/sh @@ -61,12 +63,6 @@ def get_ssh_cli() -> Tuple[Set[str], Set[str]]: return set('-' + x for x in boolean_ssh_args), set('-' + x for x in other_ssh_args) -class SSHConnectionData(NamedTuple): - binary: str - hostname: str - port: Optional[int] = None - - def get_connection_data(args: List[str]) -> Optional[SSHConnectionData]: boolean_ssh_args, other_ssh_args = get_ssh_cli() found_ssh = '' diff --git a/kitty/utils.py b/kitty/utils.py index de737ef33..03cb70935 100644 --- a/kitty/utils.py +++ b/kitty/utils.py @@ -575,3 +575,9 @@ def parse_uri_list(text: str) -> Generator[str, None, None]: continue if purl.path: yield unquote(purl.path) + + +class SSHConnectionData(NamedTuple): + binary: str + hostname: str + port: Optional[int] = None