Looks awesome but it would look even better without the region borders
SublimePTY [pre-alpha]
If you create two regions (one solid, one outline) you can probably get rid of the different color border. That wonāt help the rounded issue at the corners, but it would help it look a bit better.
I try to add the repo to package control but it doesnāt work.
If I just download the package from github and install it I got
File ā.\sublime_plugin.pyā, line 356, in run_
return self.run(edit, **args)
File ā.\sublime_keypress.pyā, line 11, in run
File ā.\process.pyā, line 276, in send_keypress
File ā.\process.pyā, line 290, in read
TypeError: āNoneTypeā object is not iterable
I am using Sublime dev build and Windows 7 64 bit.
Yeah, getting the same error, though I managed to run it once or twice
By the way, the end result is quite slow (sporting maximum 1-1.5 redraws per second). Why would that be?
Yeah, I shouldāve made it more clear that itās still rather user hostile There was absolutely zero work done in the area of graceful shutdown and/or error handling.
If you get it running, then play with it because youāll have to restart sublime to launch another one (this will obviously be changed before beta to allow multiple consoles, closing processes on tab close, etc. etc.)
TL;DR: Donāt know. I didnāt profile it yet.
I suspect that applying 500-5000+ color regions can be a bit slow but didnāt have time to check yet.
Either way 1-1.5fps seems low. How long is the delay between pressing a key and character showing up in SublimePTY console (w/o far) ?
Yeah, sorry. I updated installation instruction on github.
When I do something in the window that shows up when I launch console_server.py, the feedback is instantaneous
Ok. Iāll be doing some profiling soon, and since Iāve already switched to UDP*, maybe some async goodness will improve responsiveness.
-
- to any network programmers: I know that my use case is an abomination and I know UDP can theoretically drop packets even over loopback, but for now its connection-less nature and framing makes so many things easier that Iām willing to accept the risk
EDIT:
Guess what: _apply_colors() diff refresh and full refresh
hi, and first of all thanks for the plugin which is really amazing!
I have a little problem though: if i quit sublime with pty tab open, when i open sublime again the pty tab opens again without any errors, but it doesnāt respond to any input, it just shows bash-3.2$
is this a known problem? Iām using latest sublime build with lion 10.7.4
Also, a little request: is it possibile to have the terminal open at the root of the current opened project? or at least to a custom folder and not to / ?
thanks in advance for any help
Francesco
AFAIK this is very strange sublime ābugā. Maybe someone knows why it happens, I donāt. TERMINAL views are marked as scratch (v.set_scratch(True)) and most of the time restarting ST2 should close them as well. But from time to time they reappear for no apparent reason.
In other words, if TERMINAL view is visible after Sublime restart, it will be defunct and there are no plans to change this right now.
Definitely. Iāll add it very soon.
Win 7 x64
socket.error: [Errno 10048] Only one usage of each socket address (protocol/network address/port) is normally permitted
Traceback (most recent call last):
File ".\sublime_plugin.py", line 356, in run_
return self.run(edit, **args)
File ".\sublime_keypress.py", line 11, in run
File ".\process.py", line 279, in send_keypress
AttributeError: 'NoneType' object has no attribute 'send_keypress'
Traceback (most recent call last):
File ".\sublime_plugin.py", line 339, in run_
return self.run()
File ".\sublimepty.py", line 26, in run
File ".\process.py", line 264, in start
File "D:\Dropbox\Downloads\Applications\sublimetext2-2195x64\Data\Packages\SublimePTY\console\console_client.py", line 25, in __init__
self._sock.bind((UDP_IP, SEND_UDP_PORT))
File "<string>", line 1, in bind
Youāve tried to run two SublimePTY terminals at the same time or something else is using port 8828 or 8829.
Right now Win32Processāes are not collected when TERMINAL view is closed, so if you start one you have to quickly restart sublime to free the port.
[quote=āwuubā]
Youāve tried to run two SublimePTY terminals at the same time or something else is using port 8828 or 8829.
Right now Win32Processāes are not collected when TERMINAL view is closed, so if you start one you have to quickly restart sublime to free the port.[/quote]
I went ahead and restarted Sublime.
Tried again and got this error (though Iām not sure if itās related, iāll remove tortoisegit and try it again and post back):
Traceback (most recent call last):
File ".\sublime_plugin.py", line 356, in run_
return self.run(edit, **args)
File ".\sublime_keypress.py", line 11, in run
File ".\process.py", line 280, in send_keypress
File ".\process.py", line 296, in read
TypeError: 'NoneType' object is not iterable
Traceback (most recent call last):
File ".\sublime_plugin.py", line 356, in run_
return self.run(edit, **args)
File ".\sublime_keypress.py", line 11, in run
File ".\process.py", line 280, in send_keypress
File ".\process.py", line 296, in read
TypeError: 'NoneType' object is not iterable
Traceback (most recent call last):
File ".\sublime_plugin.py", line 356, in run_
return self.run(edit, **args)
File ".\sublime_keypress.py", line 11, in run
File ".\process.py", line 280, in send_keypress
File ".\process.py", line 296, in read
TypeError: 'NoneType' object is not iterable
I uninstalled tortoisegit. Though I never use it, it may have been running something on the aforementioned ports.
Restarted and tried again ran into the same issue @erinata had.
Okay. Restarted Sublime again, but before that I made sure console_server.py was running.
Success! Got it working hereās how it looks. Now, hereās what Iām seeing (red grid lines):
Edit: Noticing that it is very slow frame rate as well, but great start! Amazing work as always!
Edit2: I hope you figure out a way to run terminal without having to run cmd prior to starting Sublime. Iām not sure thatās possible, but awesome? HELL YES!
[quote=āfacelessuserā]
If you create two regions (one solid, one outline) you can probably get rid of the different color border. That wonāt help the rounded issue at the corners, but it would help it look a bit better.[/quote]
+1.
Iām sure wuub is still working out so more important things but if he gets a chance, it would look that much better.
Sometimes you just have to leave people alone and they will figure stuff out
SublimePTY.tmTheme uses white[fg].black[bg] as a default screen color. If console reports any character as white.black I donāt have to add any region and: a) everything works faster b) borders are not present.
Youāve changed console text color to green, because of that each character is reported as green.black (even if itās a [space]) and there are a lot of regions to apply.
_apply_colors() is slow, I promise Iāll try to improve it asap.
I know exactly how to enable this, but I also know that once I make it too easy to run SublimePTY, people will start using it for real tasks (against my every advice) and Iāll be flooded with requests. As youāve probably noticed, itās still an alpha/prototype, lets say running console_server.py is a test
I had the same idea, but combining any DRAW_EMPTY/DRAW_EMPTY_AS_OVERWRITE with DRAW_OUTLINED (in any order) did not yield anything useful. It seems as if any additional regions are ignored when DRAW_EMPTY or DRAW_EMPTY_AS_OVERWRITE is used.
I see. Well, great job - again!
It works for me, but Iāll wait until then to recommend it.
I hope that I didnāt sound smug.
PTY will blow up! Frequently! I just donāt think itās a good idea to run it right now w/o:
- at least a bit of knowledge about how st2 plugins work
- fully realizing that at the current stage of development itās nothing more than a few prototypes and workarounds held together with duct tape
I will support any st2 developer or power-user willing to invest some time and evaluate PTY, but general user friendliness will not be my main priority for at least two more weeks.
I hate this &^$# thing! I made it 5x faster, but some stupid bug sneaked in and Iām trying to find it for 1.5 hour alreadyā¦
AGrgrhrhrhhrgrh