python server
This commit is contained in:
@@ -0,0 +1,39 @@
|
||||
# Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
# Licensed under the MIT License.
|
||||
"""Debugging support for LSP."""
|
||||
|
||||
import os
|
||||
import pathlib
|
||||
import runpy
|
||||
import sys
|
||||
|
||||
|
||||
def update_sys_path(path_to_add: str) -> None:
|
||||
"""Add given path to `sys.path`."""
|
||||
if path_to_add not in sys.path and os.path.isdir(path_to_add):
|
||||
sys.path.append(path_to_add)
|
||||
|
||||
|
||||
# Ensure debugger is loaded before we load anything else, to debug initialization.
|
||||
debugger_path = os.getenv("DEBUGPY_PATH", None)
|
||||
if debugger_path:
|
||||
if debugger_path.endswith("debugpy"):
|
||||
debugger_path = os.fspath(pathlib.Path(debugger_path).parent)
|
||||
|
||||
update_sys_path(debugger_path)
|
||||
|
||||
# pylint: disable=wrong-import-position,import-error
|
||||
import debugpy
|
||||
|
||||
# 5678 is the default port, If you need to change it update it here
|
||||
# and in launch.json.
|
||||
debugpy.connect(5678)
|
||||
|
||||
# This will ensure that execution is paused as soon as the debugger
|
||||
# connects to VS Code. If you don't want to pause here comment this
|
||||
# line and set breakpoints as appropriate.
|
||||
debugpy.breakpoint()
|
||||
|
||||
SERVER_PATH = os.fspath(pathlib.Path(__file__).parent / "lsp_server.py")
|
||||
# NOTE: Set breakpoint in `lsp_server.py` before continuing.
|
||||
runpy.run_path(SERVER_PATH, run_name="__main__")
|
||||
Reference in New Issue
Block a user