Add --watch mode, Unix socket live-push, and stdin support#3
Open
Halicea wants to merge 5 commits intorabfulton:masterfrom
Open
Add --watch mode, Unix socket live-push, and stdin support#3Halicea wants to merge 5 commits intorabfulton:masterfrom
Halicea wants to merge 5 commits intorabfulton:masterfrom
Conversation
Owner
|
Some good ideas here, I like the watch option! Two minor issure for your consideration:
Thanks. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
--watch/-w): Monitors the open file withGFileMonitorandSwitching files via the toolbar transparently moves the monitor to the new file.
--socket): When launched with--socket, ViewMDcreates
/tmp/viewmd-<pid>.sockand printsVIEWMD_SOCKET=<path>to stdout. Editorplugins can connect, push raw Markdown, and optionally prefix the payload with
CURSOR:<line>\nto scroll the preview to the current edit position — no disk writerequired.
-): Passing-as the filename reads content from stdin(
cat file.md | viewmd -).Test plan
viewmd --watch file.md— edit and save, confirm auto-reload--watchis active — monitor must notrestart
--watchis active — monitor followsviewmd --socket file.md, thenecho "# Hello" | nc -U $VIEWMD_SOCKET—content updates live
{ printf 'CURSOR:5\n'; cat file.md; } | nc -U $VIEWMD_SOCKET— scrolls to line 5cat file.md | viewmd -— renders correctlyviewmd -from a terminal (no pipe) — prints error, does not hangviewmd file.mdlaunch — no socket file created, no extra stdoutoutput
--watchor--socketis active — no crash, socket file cleanedup
🤖 Generated with Claude Code