From d.lewis at gold.ac.uk Thu Dec 6 12:27:41 2007 From: d.lewis at gold.ac.uk (David Lewis) Date: Thu, 06 Dec 2007 12:27:41 +0000 Subject: [climacs-devel] Wrong call on DREI-BUFFER:MARK Message-ID: <1196944061.5878.22.camel@localhost.localdomain> Hello, I've just resumed working on a Climacs app after a hiatus. When I try to run Climacs, the pane appears, but before anything further happens, I get: There is no applicable method for the generic function # when called with arguments (#). [Condition of type SIMPLE-ERROR] Restarts: 0: [ABORT] Return to SLIME's top level. 1: [TERMINATE-THREAD] Terminate this thread (#) Backtrace: 0: (NIL # # #) Locals: SB-DEBUG::ARG-0 = 4 SB-DEBUG::ARG-1 = : SB-DEBUG::ARG-2 = : SB-DEBUG::ARG-3 = # 1: ((SB-PCL::FAST-METHOD DREI::VISIBLE AND (T DREI:DREI-PANE)) # # # #) 2: ((LAMBDA (SB-PCL::.PV-CELL. SB-PCL::.NEXT-METHOD-CALL. SB-PCL::.ARG0. SB-PCL::.ARG1.)) # # # #) 3: ((SB-PCL::FAST-METHOD DREI:DISPLAY-DREI-CURSOR :AROUND (CLIM:EXTENDED-OUTPUT-STREAM DREI:DREI DREI:DREI-CURSOR DREI-SYNTAX:SYNTAX)) # #S(SB-PCL::FAST-METHOD-CALL :FUNCTION # :PV-CELL NIL :NEXT-METHOD-CALL NIL :ARG-INFO (4)) # ..) 4: (DREI:DISPLAY-DREI-PANE # #) Climacs and mcclim are cvs check-outs as of today, I can't immediately answer for all other components. Any suggestions? Thanks, David Lewis From athas at sigkill.dk Thu Dec 6 14:55:23 2007 From: athas at sigkill.dk (Troels Henriksen) Date: Thu, 06 Dec 2007 15:55:23 +0100 Subject: [climacs-devel] Wrong call on DREI-BUFFER:MARK In-Reply-To: <1196944061.5878.22.camel@localhost.localdomain> (David Lewis's message of "Thu, 06 Dec 2007 12:27:41 +0000") References: <1196944061.5878.22.camel@localhost.localdomain> Message-ID: <8763zbc1pg.fsf@lambda.athas.dyndns.dk> David Lewis writes: > Hello, > > I've just resumed working on a Climacs app after a hiatus. When I try to > run Climacs, the pane appears, but before anything further happens, I > get: While my second-to-last patch did cause some errors due to me being sloppy, I cannot reproduce this bug. However, the backtrace seems to suggest that some other loaded program has redefined the `mark' function (as of a semirecent patch, it is no longer generic). Most likely, the code that redefined `mark' can be changed to define a method on `mark-of' instead, as `mark' merely calls `mark-of' on its optional argument (which has a sensible default, so that code can be written using `(mark)' and `(point)' to refer to the current mark and current point). -- \ Troels /\ Henriksen From d.lewis at gold.ac.uk Thu Dec 6 16:43:06 2007 From: d.lewis at gold.ac.uk (David Lewis) Date: Thu, 06 Dec 2007 16:43:06 +0000 Subject: [climacs-devel] Wrong call on DREI-BUFFER:MARK In-Reply-To: <8763zbc1pg.fsf@lambda.athas.dyndns.dk> References: <1196944061.5878.22.camel@localhost.localdomain> <8763zbc1pg.fsf@lambda.athas.dyndns.dk> Message-ID: <1196959386.5878.63.camel@localhost.localdomain> > However, the backtrace seems to > suggest that some other loaded program has redefined the `mark' > function (as of a semirecent patch, it is no longer generic). Most > likely, the code that redefined `mark' can be changed to define a > method on `mark-of' instead, as `mark' merely calls `mark-of' on its > optional argument (which has a sensible default, so that code can be > written using `(mark)' and `(point)' to refer to the current mark and > current point). Yup. Too true. It was a defmethod in my package. My apologies. Cheers, David From athas at sigkill.dk Thu Dec 6 18:41:48 2007 From: athas at sigkill.dk (Troels Henriksen) Date: Thu, 06 Dec 2007 19:41:48 +0100 Subject: [climacs-devel] Wrong call on DREI-BUFFER:MARK In-Reply-To: <1196959386.5878.63.camel@localhost.localdomain> (David Lewis's message of "Thu, 06 Dec 2007 16:43:06 +0000") References: <1196944061.5878.22.camel@localhost.localdomain> <8763zbc1pg.fsf@lambda.athas.dyndns.dk> <1196959386.5878.63.camel@localhost.localdomain> Message-ID: <871w9zbr83.fsf@lambda.athas.dyndns.dk> David Lewis writes: > Yup. Too true. It was a defmethod in my package. My apologies. Well, it's not like I actually tell anyone (or write it anywhere) when I break user code, so if anyone should apologise, it's me. There will be a relatively large code-breaking commit relatively soon (days), however, so if you're worried about your code breaking, you might want to wait till after then before you invest too much time. -- \ Troels /\ Henriksen From tcr at freebits.de Thu Dec 27 20:01:43 2007 From: tcr at freebits.de (Tobias C. Rittweiler) Date: Thu, 27 Dec 2007 21:01:43 +0100 Subject: [climacs-devel] Couple of first impressions Message-ID: <87ve6jgb4o.fsf@freebits.de> Hi, here's a small list of things I'd like to see in Climacs to be more newbie-friendly (i.e. making experimenting more convenient): * Making Isearch Forward (C-s) available in Help buffers. * Instead of always opening a new buffer, updating an already existing one. E.g when doing `C-h b', or `M-x Apropos Command' several times in a row. * Auto resizing Help buffers to minimum height. * Something like `toggle-debug-on-error': I.e. the facility to /not/ automatically invoke the debugger when something bad happens. (Bonus point if the backtrace is saved in some special buffer.) * A tutorial (or, actually, Climacs Primer for Emacs boys) on `C-h t' * Making `C-h b' more pervasive. E.g. it doesn't work on the miniprompt (e.g. after simply typing `M-x'.) * To get a list of completion choices, you've got to right click. Better bind that to `TAB TAB'. Bugs or glitches: * The Completion Choice popup is obnoxious. It's on top of everything else, and stays there. Even when I try to switch workspaces in Gnome. * Completing filenames in Find File (C-x f) doesn't recognize symlinks (i.e. does not complete for.) Although, strangely, it does recognize /broken/ symlinks. * Pressing `M-p' at the Find File, or the M-x prompt results in a NO-APPLICABLE-METHOD error. Happy Hacking, -T. From athas at sigkill.dk Thu Dec 27 20:19:02 2007 From: athas at sigkill.dk (Troels Henriksen) Date: Thu, 27 Dec 2007 21:19:02 +0100 Subject: [climacs-devel] Couple of first impressions In-Reply-To: <87ve6jgb4o.fsf@freebits.de> (Tobias C. Rittweiler's message of "Thu, 27 Dec 2007 21:01:43 +0100") References: <87ve6jgb4o.fsf@freebits.de> Message-ID: <87lk7fj3gp.fsf@lambda.athas.dyndns.dk> I've commented on some of these issues on #lisp, I'm also replying here to save my comments for posterity, and other readers of the list. > * Making Isearch Forward (C-s) available in Help buffers. Complicated, as help windows are not buffers, but typeout panes. > * Instead of always opening a new buffer, updating an already existing > one. E.g when doing `C-h b', or `M-x Apropos Command' several times > in a row. This shouldn't be too hard to implement, actually. > * Auto resizing Help buffers to minimum height. This neither. In fact, it might be a good project for someone trying to get their bearings on Climacs' internal structure (*hint* *hint*). > * Something like `toggle-debug-on-error': I.e. the facility to /not/ > automatically invoke the debugger when something bad happens. (Bonus > point if the backtrace is saved in some special buffer.) I'm not sure I want this. Applications that just trap anything that goes wrong and spits out a stack trace to a console remind me of Java. Why wouldn't you want the debugger the pop up when something bad happens? Climacs doesn't follow Emacs' philosophy of using unhandled errors as a way of communicating with the user. > * A tutorial (or, actually, Climacs Primer for Emacs boys) on `C-h > t' Also a feasible starting project, though it might perhaps be *too* simple. Anyway, the tutorial would have to be written. > * Making `C-h b' more pervasive. E.g. it doesn't work on the miniprompt > (e.g. after simply typing `M-x'.) This is slightly complicated, as the minibuffer is not strictly a part of Climacs. In general, why is this useful? > * To get a list of completion choices, you've got to right > click. Better bind that to `TAB TAB'. McCLIM issue (and I agree, does the spec actually demand that we do not provide useful possibilities-gestures?). > * The Completion Choice popup is obnoxious. It's on top of everything > else, and stays there. Even when I try to switch workspaces in > Gnome. McCLIM issue. > * Completing filenames in Find File (C-x f) doesn't recognize symlinks > (i.e. does not complete for.) Although, strangely, it does recognize > /broken/ symlinks. McCLIM issue. > * Pressing `M-p' at the Find File, or the M-x prompt results in a > NO-APPLICABLE-METHOD error. Investigating this right now, probably McCLIM issue, at worst ESA issue. -- \ Troels /\ Henriksen From csr21 at cantab.net Thu Dec 27 20:28:18 2007 From: csr21 at cantab.net (Christophe Rhodes) Date: Thu, 27 Dec 2007 20:28:18 +0000 Subject: [climacs-devel] Couple of first impressions In-Reply-To: <87lk7fj3gp.fsf@lambda.athas.dyndns.dk> (Troels Henriksen's message of "Thu, 27 Dec 2007 21:19:02 +0100") References: <87ve6jgb4o.fsf@freebits.de> <87lk7fj3gp.fsf@lambda.athas.dyndns.dk> Message-ID: <87r6h7lw65.fsf@cantab.net> Troels Henriksen writes: >> * To get a list of completion choices, you've got to right >> click. Better bind that to `TAB TAB'. > > McCLIM issue (and I agree, does the spec actually demand that we do > not provide useful possibilities-gestures?). Isn't C-/ bound to list possibilities? That doesn't seem to be too hard to type to me... Best, Christophe From tcr at freebits.de Thu Dec 27 20:31:10 2007 From: tcr at freebits.de (Tobias C. Rittweiler) Date: Thu, 27 Dec 2007 21:31:10 +0100 Subject: [climacs-devel] Re: Couple of first impressions References: <87ve6jgb4o.fsf@freebits.de> <87lk7fj3gp.fsf@lambda.athas.dyndns.dk> Message-ID: <87myrvg9rl.fsf@freebits.de> Troels Henriksen writes: > > * Something like `toggle-debug-on-error': I.e. the facility to /not/ > > automatically invoke the debugger when something bad happens. (Bonus > > point if the backtrace is saved in some special buffer.) > > I'm not sure I want this. Applications that just trap anything that > goes wrong and spits out a stack trace to a console remind me of > Java. Why wouldn't you want the debugger the pop up when something bad > happens? Climacs doesn't follow Emacs' philosophy of using unhandled > errors as a way of communicating with the user. I'm consistently getting confused where the focus in Climacs is. Sometimes this is because I'm not in the right buffer where I thought I was in, sometimes because Climacs is unresponsive, and sometimes because Slime is waiting in SLDB. Also having to switch over to Emacs, type `0' to invoke the right restart, and back to Climacs is cumbersome. Maybe it could at least display something to indicate that an error has occured. -T. From athas at sigkill.dk Thu Dec 27 20:45:21 2007 From: athas at sigkill.dk (Troels Henriksen) Date: Thu, 27 Dec 2007 21:45:21 +0100 Subject: [climacs-devel] Re: Couple of first impressions In-Reply-To: <87myrvg9rl.fsf@freebits.de> (Tobias C. Rittweiler's message of "Thu, 27 Dec 2007 21:31:10 +0100") References: <87ve6jgb4o.fsf@freebits.de> <87lk7fj3gp.fsf@lambda.athas.dyndns.dk> <87myrvg9rl.fsf@freebits.de> Message-ID: <87d4srj28u.fsf@lambda.athas.dyndns.dk> "Tobias C. Rittweiler" writes: > I'm consistently getting confused where the focus in Climacs > is. Sometimes this is because I'm not in the right buffer where I > thought I was in, sometimes because Climacs is unresponsive, and > sometimes because Slime is waiting in SLDB. > > Also having to switch over to Emacs, type `0' to invoke the right > restart, and back to Climacs is cumbersome. The solution is, of course, to use the McCLIM Debugger! > Maybe it could at least display something to indicate that an error has > occured. This may be possible, though I'd rather not perform too much magic in response to bugs. It makes debugging a pain (once upon a time, Climacs did eat many errors, and it made me want to tear my hair out. Very frustrating). If you implemented such a thing I'd commit it, but I doubt I'll spend time on it myself. -- \ Troels /\ Henriksen From splittist at gmail.com Thu Dec 27 21:04:16 2007 From: splittist at gmail.com (John Q. Splittist) Date: Thu, 27 Dec 2007 22:04:16 +0100 Subject: [climacs-devel] Couple of first impressions In-Reply-To: <87lk7fj3gp.fsf@lambda.athas.dyndns.dk> References: <87ve6jgb4o.fsf@freebits.de> <87lk7fj3gp.fsf@lambda.athas.dyndns.dk> Message-ID: <7928a3a10712271304w1c0f6182o6de9ca460735c716@mail.gmail.com> On Dec 27, 2007 9:19 PM, Troels Henriksen wrote: > > * Making Isearch Forward (C-s) available in Help buffers. > > Complicated, as help windows are not buffers, but typeout panes. That is, help windows are collections of objects that are not necessarily characters. The real question is: what is the problem you (Tobias, not Troels) are trying to solve with C-s? How can we (ahem) build the Climacs (ESA, mcclim...) help system in such a way as to support the patterns of exploration and discovery you are looking for? jqs From tcr at freebits.de Thu Dec 27 21:23:11 2007 From: tcr at freebits.de (Tobias C. Rittweiler) Date: Thu, 27 Dec 2007 22:23:11 +0100 Subject: [climacs-devel] Re: Couple of first impressions References: <87ve6jgb4o.fsf@freebits.de> <87lk7fj3gp.fsf@lambda.athas.dyndns.dk> <87r6h7lw65.fsf@cantab.net> Message-ID: <87fxxng7cw.fsf@freebits.de> Christophe Rhodes writes: > Troels Henriksen writes: > > > > * To get a list of completion choices, you've got to right > > > click. Better bind that to `TAB TAB'. > > > > McCLIM issue (and I agree, does the spec actually demand that we do > > not provide useful possibilities-gestures?). > > Isn't C-/ bound to list possibilities? That doesn't seem to be too hard > to type to me... Doesn't work for me. (Tried it on Find File) -T. From tcr at freebits.de Thu Dec 27 21:29:17 2007 From: tcr at freebits.de (Tobias C. Rittweiler) Date: Thu, 27 Dec 2007 22:29:17 +0100 Subject: [climacs-devel] Re: Couple of first impressions References: <87ve6jgb4o.fsf@freebits.de> <87lk7fj3gp.fsf@lambda.athas.dyndns.dk> <7928a3a10712271304w1c0f6182o6de9ca460735c716@mail.gmail.com> Message-ID: <87ejd7g72q.fsf@freebits.de> "John Q. Splittist" writes: > On Dec 27, 2007 9:19 PM, Troels Henriksen wrote: > > > * Making Isearch Forward (C-s) available in Help buffers. > > > > Complicated, as help windows are not buffers, but typeout panes. > > That is, help windows are collections of objects that are not > necessarily characters. The real question is: what is the problem you > (Tobias, not Troels) are trying to solve with C-s? How can we (ahem) > build the Climacs (ESA, mcclim...) help system in such a way as to > support the patterns of exploration and discovery you are looking for? I'd use it to explore what keybindings are available. It's probably less useful in Climacs where `C-h b' results in an alphabetically sorted listing, but in Emacs related keybinding tend to appear close to each other. Comming to speak of it, grouping keybinding sounds like a nice idea, too (although it's orthogonal to my wish for C-s :-).) For example, there could be groups like :movement, :editing, :interaction, :introspection, and you'd have to specify what group a command belongs to within the definition of the command. -T. From splittist at gmail.com Thu Dec 27 21:35:47 2007 From: splittist at gmail.com (John Q. Splittist) Date: Thu, 27 Dec 2007 22:35:47 +0100 Subject: [climacs-devel] Re: Couple of first impressions In-Reply-To: <87ejd7g72q.fsf@freebits.de> References: <87ve6jgb4o.fsf@freebits.de> <87lk7fj3gp.fsf@lambda.athas.dyndns.dk> <7928a3a10712271304w1c0f6182o6de9ca460735c716@mail.gmail.com> <87ejd7g72q.fsf@freebits.de> Message-ID: <7928a3a10712271335t115992ccw80ab50efdbba8f1d@mail.gmail.com> On Dec 27, 2007 10:29 PM, Tobias C. Rittweiler wrote: > > "John Q. Splittist" writes: > > > ... The real question is: what is the problem you > > (Tobias, not Troels) are trying to solve with C-s? ... > I'd use it to explore what keybindings are available. ... > Comming to speak of it, grouping keybinding sounds like a nice idea, too > (although it's orthogonal to my wish for C-s :-).) For example, there > could be groups like :movement, :editing, :interaction, :introspection, > and you'd have to specify what group a command belongs to within the > definition of the command. Commands are grouped into (somewhat) related Command Tables. I think remember a reference somewhere to a Command Table Explorer for one of the Lisp Machines. Perhaps something like that would be useful? jqs From csr21 at cantab.net Thu Dec 27 22:11:30 2007 From: csr21 at cantab.net (Christophe Rhodes) Date: Thu, 27 Dec 2007 22:11:30 +0000 Subject: [climacs-devel] Re: Couple of first impressions In-Reply-To: <87fxxng7cw.fsf@freebits.de> (Tobias C. Rittweiler's message of "Thu, 27 Dec 2007 22:23:11 +0100") References: <87ve6jgb4o.fsf@freebits.de> <87lk7fj3gp.fsf@lambda.athas.dyndns.dk> <87r6h7lw65.fsf@cantab.net> <87fxxng7cw.fsf@freebits.de> Message-ID: <87myrvlre5.fsf@cantab.net> "Tobias C. Rittweiler" writes: > Christophe Rhodes writes: > >> Isn't C-/ bound to list possibilities? That doesn't seem to be too hard >> to type to me... > > Doesn't work for me. (Tried it on Find File) I just tested it, and it does work for me. C-/ is in fact bound to :help, not :possibilities, and read-completion-gesture sometimes (if its third arg is true) shows possibilities for a :help gesture. Specifically, I just tested climacs and gsharp of about a week ago, and both did after C-x C-f. Anyway. That's not to say that other modes of interaction with possibilities wouldn't be a good thing. Best, Christophe From athas at sigkill.dk Fri Dec 28 10:10:53 2007 From: athas at sigkill.dk (Troels Henriksen) Date: Fri, 28 Dec 2007 11:10:53 +0100 Subject: [climacs-devel] Couple of first impressions In-Reply-To: <7928a3a10712271304w1c0f6182o6de9ca460735c716@mail.gmail.com> (John Q. Splittist's message of "Thu, 27 Dec 2007 22:04:16 +0100") References: <87ve6jgb4o.fsf@freebits.de> <87lk7fj3gp.fsf@lambda.athas.dyndns.dk> <7928a3a10712271304w1c0f6182o6de9ca460735c716@mail.gmail.com> Message-ID: <87ir2j86z6.fsf@lambda.athas.dyndns.dk> "John Q. Splittist" writes: > That is, help windows are collections of objects that are not > necessarily characters. This alone is not actually a problem, Climacs buffers can contain arbitrary objects, not just characters. I've thought about creating a "general isearch" thing for CLIM - would it be possible to implement it by wandering through the output record tree? -- \ Troels /\ Henriksen From tcr at freebits.de Fri Dec 28 13:29:35 2007 From: tcr at freebits.de (Tobias C. Rittweiler) Date: Fri, 28 Dec 2007 14:29:35 +0100 Subject: [climacs-devel] Re: Couple of first impressions References: <87ve6jgb4o.fsf@freebits.de> Message-ID: <87d4sroslc.fsf@freebits.de> "Tobias C. Rittweiler" writes: > Hi, > > here's a small list of things I'd like to see in Climacs to be more > newbie-friendly (i.e. making experimenting more convenient): * There are no keybindings in a Typeout Pane. Also you can `C-x o' to such a pane, but there's no indicator that it's on focus. (This is the cause of the confusion I was speaking of yesterday.) Next to bindings for UP and DOWN, I'd also love to see a binding on `q' to quit. * Trying to open a file in a Typeout Pane results in an error. (C-h b, C-x o, C-x C-f, foo.lisp RET) * C-/ does not work on German layout, presumably because / is a shifted character there. -T. From athas at sigkill.dk Fri Dec 28 15:41:57 2007 From: athas at sigkill.dk (Troels Henriksen) Date: Fri, 28 Dec 2007 16:41:57 +0100 Subject: [climacs-devel] Re: Couple of first impressions In-Reply-To: <87d4sroslc.fsf@freebits.de> (Tobias C. Rittweiler's message of "Fri, 28 Dec 2007 14:29:35 +0100") References: <87ve6jgb4o.fsf@freebits.de> <87d4sroslc.fsf@freebits.de> Message-ID: <871w96rflm.fsf@lambda.athas.dyndns.dk> "Tobias C. Rittweiler" writes: > * There are no keybindings in a Typeout Pane. Also you can `C-x o' to > such a pane, but there's no indicator that it's on focus. (This is > the cause of the confusion I was speaking of yesterday.) Next to > bindings for UP and DOWN, I'd also love to see a binding on `q' to > quit. This sounds easily fixable. > * Trying to open a file in a Typeout Pane results in an error. > > (C-h b, C-x o, C-x C-f, foo.lisp RET) Good catch, just fixed this in CVS. This kind of bug is, however, a symptom of a deeper issue, namely that typeout panes are not at all Drei instances, and as such concepts like "current buffer" and "current view" are erroneous while they are active. Perhaps typeout panes should be implemented as a special kind of Drei view. > * C-/ does not work on German layout, presumably because / is a > shifted character there. This is a McCLIM issue, or more specifically, a CLX issue. I have been told CLX needs support for the XKEYBOARD extension to fix this. -- \ Troels /\ Henriksen From csr21 at cantab.net Fri Dec 28 17:39:31 2007 From: csr21 at cantab.net (Christophe Rhodes) Date: Fri, 28 Dec 2007 17:39:31 +0000 Subject: [climacs-devel] Re: Couple of first impressions In-Reply-To: <871w96rflm.fsf@lambda.athas.dyndns.dk> (Troels Henriksen's message of "Fri, 28 Dec 2007 16:41:57 +0100") References: <87ve6jgb4o.fsf@freebits.de> <87d4sroslc.fsf@freebits.de> <871w96rflm.fsf@lambda.athas.dyndns.dk> Message-ID: <87ejd6lnvw.fsf@cantab.net> Troels Henriksen writes: > "Tobias C. Rittweiler" writes: > >> * C-/ does not work on German layout, presumably because / is a >> shifted character there. > > This is a McCLIM issue, or more specifically, a CLX issue. I have been > told CLX needs support for the XKEYBOARD extension to fix this. I'm not sure that it does; I think quite a lot of the logic could happen client-side (that is, in McCLIM's X backend) in mapping keycodes and modifiers to keysyms to characters, by removing the modifiers that are "used up" to make a character, leaving only the unused modifiers as "active". It's probably not utterly straightforward to implement such client-side mapping, but I think support for XKEYBOARD in CLX would be a bonus, rather than completely necessary. Cheers, Christophe