Skip to content
This repository was archived by the owner on Jun 30, 2023. It is now read-only.

Commit 7952cdf

Browse files
committed
enhanced debug event printing
use NVIM_PYTHON_UI_DEBUG=2 to print everything, even known events. Gtk/Gdk likes to spam stderr, so use stdout
1 parent a8ee461 commit 7952cdf

File tree

1 file changed

+10
-4
lines changed

1 file changed

+10
-4
lines changed

neovim_gui/ui_bridge.py

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,11 @@ def connect(self, nvim, ui, profile=None, notify=False):
2222
self._ui = ui
2323
self._profile = profile
2424
self._sem = Semaphore(0)
25-
self.debug_events = len(os.environ.get("NVIM_PYTHON_UI_DEBUG", "")) > 0
25+
debug_env = os.environ.get("NVIM_PYTHON_UI_DEBUG", "")
26+
if debug_env == "2":
27+
self.debug_events = 2
28+
else:
29+
self.debug_events = len(debug_env) > 0
2630
t = Thread(target=self._nvim_event_loop)
2731
t.daemon = True
2832
t.start()
@@ -97,12 +101,14 @@ def apply_updates():
97101

98102
except AttributeError:
99103
if self.debug_events:
100-
print(repr(update), file=sys.stderr)
104+
print(repr(update), file=sys.stdout)
101105
else:
102-
if self.debug_events and len(update[1]) > nparam:
103-
print(repr(update), file=sys.stderr)
106+
if self.debug_events == 2 or (self.debug_events and len(update[1]) > nparam):
107+
print(repr(update), file=sys.stdout)
104108
for args in update[1:]:
105109
handler(*args[:nparam])
110+
if self.debug_events == 2:
111+
print("<flush>")
106112
except Exception:
107113
self._error = format_exc()
108114
self._call(self._nvim.quit)

0 commit comments

Comments
 (0)