Dane Sabo 3299181c70 Auto sync: 2025-09-02 22:47:53 (10335 files changed)
M  lazy-lock.json

M  lua/custom/configs/lspconfig.lua

M  lua/custom/init.lua

A  lua/custom/journal.lua

A  nvim_venv/bin/Activate.ps1

A  nvim_venv/bin/activate

A  nvim_venv/bin/activate.csh

A  nvim_venv/bin/activate.fish
2025-09-02 22:47:53 -04:00

30 lines
925 B
Python

"""Shared utility functions."""
import sys
from traceback import format_exception
from typing import Any, Dict, Optional, Tuple, TypeVar
from pynvim._version import VERSION
def format_exc_skip(skip: int, limit: Optional[int] = None) -> str:
"""Like traceback.format_exc but allow skipping the first frames."""
etype, val, tb = sys.exc_info()
for _ in range(skip):
if tb is not None:
tb = tb.tb_next
return ("".join(format_exception(etype, val, tb, limit))).rstrip()
T1 = TypeVar("T1")
T2 = TypeVar("T2")
def get_client_info(
kind: str, type_: T1, method_spec: T2
) -> Tuple[str, Dict[str, Any], T1, T2, Dict[str, str]]:
"""Returns a tuple describing the client."""
name = "python{}-{}".format(sys.version_info[0], kind)
attributes = {"license": "Apache v2", "website": "github.com/neovim/pynvim"}
return (name, VERSION.__dict__, type_, method_spec, attributes)