Scroll the document via JSON directives through socket connection remotely, the VSCode is a sync-viewport now!
Sometimes you might need a text editor to automatically scrolling the view range synchronically with some corresponding or relevant external data...
Press <CTRL+F12> to start a server, and connect to the server via telnet or socket programmes, provide a JSON data in the following schema:
{
"authCode":"",
"filename":"d:\\docs\\someText中文文件名示例.txt",
"lineNumber":100
}
// feel free to provide "filename" value in your favorite format, such as:
"/home/user/username/documents/someText.txt"
// or
"d:\\AbC\\dEf/Ghi.txt"
A DEMO WITH PYTHON:
# REMOTE SCROLL PYTHON CLIENT DEMO
import socket
from json import dumps
from time import sleep
HOST, PORT = 'localhost', 9527
with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s:
s.connect((HOST, PORT))
for i in range(1, 10000):
msg = {
'filename':'sometext.txt',
'lineNumber':i,
'authCode':'123'
}
buf = (dumps(msg,ensure_ascii=False,indent=0)).encode('utf-8')+b'\n'
s.sendall(buf)
# data = s.recv(1024).decode('utf-8')
# print('Received', data)
sleep(1)
- Scroll an editor with a given filename to a specific line-number via net control;
- This control mode turns Visual Studio Code a special viewport in some special scenarios;
- [CTRL+F12] to start a server;
- [F12] to toggle server pause/resume;
This extension contributes the following settings:
RemoteScroll.host
: The host address of the remote control server, default = 'localhost'.RemoteScroll.port
: The tcp/ip port the remote control server listens to, default = 9527.RemoteScroll.checkFilename
: Whether to check active document file name before scrolling. if no, scroll the current active one.RemoteScroll.authCode
: A string to identify or authorize connection.RemoteScroll.autoForceOpen
: If file is not already opened in an editor when the server listens, automatically try to open the file that the client-side requests. Notice this config only effects while "checkFilename" enabled.
Upgrade package dependencies following the security report of the development robot of vscode.
Upgrade package-lock.json following the security report of the development robot of vscode.
Basically done.
Enjoy!