I am glad announce first version of PharmIDE project which is complete toolset for remote development of Pharo images. It includes:
Server part of project should be installed on target image:
With remotePharo instance you can evaluate scripts:
To open browser or playground use:
Now look at PharmIDE in action:
Update. Project was renamed to TelePharo and moved to github. Details are here http://dionisiydk.blogspot.fr/2017/08/pharmide-is-renamed-to-telepharo-and.html
- remote debugger
- remote inspector
- remote playground
- remote browser
Server part of project should be installed on target image:
Metacello newThen server should be started on port where client image can connect:
smalltalkhubUser: 'Pharo' project: 'PharmIDE';
configuration: 'PharmIDE';
version: #stable;
load: 'Server'
PrmRemoteUIManager registerOnPort: 40423Image can be saved with running server. It will be automatically started when image restarts. Or you can use command line option for this:
./pharo PharoServer.image remotePharo --startServerOnPort=40423On IDE image client side of project should be installed:
Metacello newAnd then you can connect Pharo to remote image:
smalltalkhubUser: 'Pharo' project: 'PharmIDE';
configuration: 'PharmIDE';
version: #stable;
load: 'Client'
remotePharo := PrmRemoteIDE connectTo: (TCPAddress ip: #[127 0 0 1] port: 40423)It registers local debugger and browser on remote image:
- Any error on remote image will open debugger on client image with remote process stack
- Any browser request on remote image will open browser on client image with remote packages and classes
- User requests from server are redirected to client. Any confirm or inform requests from remote image will be shown on client. For example author name request will be shown on client image where user can type own name remotely.
With remotePharo instance you can evaluate scripts:
remotePharo evaluateAsync: [ [1/0] fork ].Look at original project post for more details about scripting and inspecting. In this version inspector is improved:
remotePharo evaluate: [ 1 + 2 ] "==> 3".
remotePharo evaluate: [ 0@0 corner: 2@3 ] "==> aSeamlessProxy on remote rectangle".
- PrintIt command shows correct #printString of remote object instead of 'aSeamlessProxy~'.
- "Workspace" variables are supported in inspector. You can save temp results in it.
- Implementors/senders shortcuts will open local browser on remote environment. Any subsequent navigation will be bound to remote image.
To open browser or playground use:
remotePharo openPlayground.Now #debugIt command and refactorings are not working remotely but they will be supported in future.
remotePharo openBrowser
Now look at PharmIDE in action:
Комментариев нет:
Отправить комментарий