On 6 October 2015 at 01:45, Aman <amangpt...@gmail.com> wrote: > > Thanks Laurent and Paolo. When you say (send a-text insert string), how are > you getting a-text ?
> What I wanted was not to design a new editor window, but to modify or 'send' > some command to current editor (the default one when we launch DrRacket) to > clear some content or scroll down to hide the content, but I am not able to > find a way to get handle for editor%, text% or anything else that can be > helpful while executing 'send' Yeah, a very good question, that's why I asked Laurent for his "quick attempt" :-). The two ways I can imagine are writing a plugin or modifying DrRacket, and I expect the latter to be easier; my only experience is modifying a DrRacket plugin, and I don't think this is quick, but it's possible. For that, I think you want to look at drracket:get/extend:extend-interactions-text. To be in the context to do that, see http://docs.racket-lang.org/tools/implementing-tools.html and the examples shown there using drracket:get/extend:extend-definitions-text. Below's I'll give an outline anyway of what I actually did, in case it's helpful — though the docs are probably better. == I've been hacking a DrRacket plugin (the handin client), where I use something more complex because I assumed I only had a editor% (so I used insert-port). My call is in https://github.com/racket/handin/pull/27/files#diff-cf0f873382d5f6c351cee18d851376c3R734; the code around it does a number of potentially useful things. The starting point is the call drracket:get/extend:extend-unit-frame, in the context of (define tool@ (unit (import drracket:tool^) (export drracket:tool-exports^) ... drracket:get/extend:extend-unit-frame subclasses the unit-frame DrRacket component, and inside it you can call get-definitions-text and get-interactions-text to get access to the two text%. For that, refer to the docs extensively, starting from http://docs.racket-lang.org/tools/, its index, and the introduction into how to do a plugin. By doing that, I just found out about drracket:get/extend:get-interactions-text, which allows you to subclass the interactions-text directly. While this is a lot, I've found I managed to get something done without needing to understand every detail, also thanks to Racket syntax-check. It's sad it doesn't understand units as well as the rest. (OTOH, I'm scared that I'm writing code without understanding every single line around it. I usually never do that, but I'm new at Racket). Cheers, Paolo > On Monday, 5 October 2015 12:51:05 UTC-5, Paolo Giarrusso wrote: > > On Monday, October 5, 2015 at 10:56:50 AM UTC+2, Laurent Orseau wrote: > > > I don't think there is anything like this right now, but in case anyone > > > wants to do that, my first impression is, that such a command should not > > > completely erase the previous content but only hide it (by scrolling down > > > for example). I tried very quickly to do that using `set-position` of > > > `text%` but I couldn't make it leave a blank space after the cursor > > > position when at the end of the editor. > > > > I'm guessing you (or who does this) will need to insert whitespace > > (newlines) with some insert method, after setting the position, probably > > with > > (send a-text insert string) > > > > You'll also need to act on the editor-canvas% to scroll it down (text% > > can't do that because it's just a MVC Model, while editor-canvas% is the > > corresponding View). (It seems you'll have to call allow-scroll-to-last and > > scroll-to). > > > > I can't do the rest myself because I haven't learned enough APIs to "try > > something quickly" — only hacked slowly a plugin. But if you share your > > attempt I might be able to try. > > > > Cheers, > > Paolo > > > > > On Sun, Oct 4, 2015 at 6:28 PM, Aman <amang...@gmail.com> wrote: > > > Hi all, > > > > > > > > > > > > I am new to DrRacket. I am using swindle language and want to know a way > > > so that I can clear my evaluation window(interaction window) after I do > > > some direct runs there. > > > > > > > > > > > > For example if i run following > > > > > > > > > > > > > (define a 3) > > > > > > > (define b 2) > > > > > > > > > > > > Now i want something like > > > > > > > clear > > > > > > which could clear the window but still keep a and b in environment > > > (memory). Is it possible somehow? > > > > > > > > > > > > After going through a lot of posts all I was able to figure out was to > > > hit "Run" and use "Esc:p" to again load the needed commands which seems > > > to me a very bad way. > > > > > > > > > > > > Thanks! > > > > > > > > > > > > -- > > > > > > You received this message because you are subscribed to the Google Groups > > > "Racket Users" group. > > > > > > To unsubscribe from this group and stop receiving emails from it, send an > > > email to racket-users...@googlegroups.com. > > > > > > For more options, visit https://groups.google.com/d/optout. > > -- > You received this message because you are subscribed to a topic in the Google > Groups "Racket Users" group. > To unsubscribe from this topic, visit > https://groups.google.com/d/topic/racket-users/_XWopH-iMNw/unsubscribe. > To unsubscribe from this group and all its topics, send an email to > racket-users+unsubscr...@googlegroups.com. > For more options, visit https://groups.google.com/d/optout. -- Paolo G. Giarrusso - Ph.D. Student, Tübingen University http://ps.informatik.uni-tuebingen.de/team/giarrusso/ -- Paolo G. Giarrusso - Ph.D. Student, Tübingen University http://ps.informatik.uni-tuebingen.de/team/giarrusso/ -- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to racket-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.