Levi Neely
|
9618c79232
|
gui: native 9P plumb client with edit receiver and mouse chording
Replace QProcess plumb binary shell-out with proper 9P2000 plumb client:
- ninep.h/cpp: minimal 9P2000 protocol client for plan9port plumber
- plumbmsg.h/cpp: plumb message pack/unpack wire codec
- plumber.h/cpp: full plumb client with:
- socketPath() resolving $NAMESPACE/plumb or display fallback
- send()/sendTo() write packed messages to send port via 9P
- PlumbReader thread blocks on edit port, emits edit(file,addr,wdir)
- startReader() starts the receive loop
- available() checks plumb socket existence
Add Acme-style mouse chording to ChatBlockDelegate.qml:
- B1+B2 = cut (snarf)
- B1+B3 = paste
- Context menu now includes Cut/Paste with chord hints
Legacy plumb()/plumbTo() methods preserved as aliases to send()/sendTo().
|
2026-10-08 15:34:29 +02:00 |