all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* Re: Recent changes in gdb-ui.el
@ 2004-03-03 14:39 Kim F. Storm
  0 siblings, 0 replies; 5+ messages in thread
From: Kim F. Storm @ 2004-03-03 14:39 UTC (permalink / raw)



[This is extracted from my response to Nick Roberts re. supporting
 GDB overlay arrows at C and assembler levels simultaneiously.
 It hit the emacs-devel bit-bucket on Mar 02. ++kfs]


I have just installed changed to properly support multiple overlay
arrows.

[Some packages attempts to do this by making overlay-arrow-position
buffer local, but that doesn't really work well with the redisplay
code, as it may fail to notice changes to an overlay arrow in some
cases.]

To create an additional overlay arrow, create a new variable similar
to overlay-arrow-position, e.g.  gdb-asm-overlay-arrow-position and
add it to the new variable overlay-arrow-variable-list; like this:

 (push 'gdb-asm-overlay-arrow-position overlay-arrow-variable-list)

Then you can use gdb-asm-overlay-arrow-position just like the
overlay-arrow-position variable.

If you want to use a different fringe bitmap for the asm bitmap,
you can set it with

 (require 'fringe)
 (put 'gdb-asm-overlay-arrow-position 'overlay-arrow-bitmap
       right-truncation-fringe-bitmap)   ; the -> arrow

-- 
Kim F. Storm <storm@cua.dk> http://www.cua.dk

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Recent changes in gdb-ui.el
       [not found] ` <m3y8qkvxwk.fsf@kfs-l.imdomain.dk>
@ 2004-03-05 23:53   ` Nick Roberts
  2004-03-06  1:59     ` Kim F. Storm
  0 siblings, 1 reply; 5+ messages in thread
From: Nick Roberts @ 2004-03-05 23:53 UTC (permalink / raw)
  Cc: emacs-devel


 > I have just installed changed to properly support multiple overlay arrows.
 > 
 > [Some packages attempts to do this by making overlay-arrow-position
 > buffer local, but that doesn't really work well with the redisplay
 > code, as it may fail to notice changes to an overlay arrow in some
 > cases.]
 > 
 > To do so, create a new variable similar to overlay-arrow-position,
 > e.g.  gdb-asm-overlay-arrow-position and add it to the new variable
 > overlay-arrow-variable-list; like this:
 > 
 >  (push 'gdb-asm-overlay-arrow-position overlay-arrow-variable-list)
 > 
 > Then you can use gdb-asm-overlay-arrow-position just like the
 > overlay-arrow-position variable.

I've committed this change which seems to work fine on a graphical display but
not on a text-only terminal. Roughly, I've taken code from gud-display-line
and put it in gdb-assembler-custom. In this manner, I've created a variable
called gdb-overlay-arrow-string (set to "=>") but this doesn't have the
meaning given to overlay-arrow-string.

On a related note, I see that the overlay arrow is only represented as a
string on a text-only terminal. It seems to me that, now fringes can be
toggled, this should be extended to graphical displays where there is no
left-hand fringe.


Nick

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Recent changes in gdb-ui.el
  2004-03-05 23:53   ` Nick Roberts
@ 2004-03-06  1:59     ` Kim F. Storm
  2004-03-10  5:47       ` Eli Zaretskii
  0 siblings, 1 reply; 5+ messages in thread
From: Kim F. Storm @ 2004-03-06  1:59 UTC (permalink / raw)
  Cc: emacs-devel

Nick Roberts <nick@nick.uklinux.net> writes:

>  > I have just installed changed to properly support multiple overlay arrows.
>  > 
>  > [Some packages attempts to do this by making overlay-arrow-position
>  > buffer local, but that doesn't really work well with the redisplay
>  > code, as it may fail to notice changes to an overlay arrow in some
>  > cases.]
>  > 
>  > To do so, create a new variable similar to overlay-arrow-position,
>  > e.g.  gdb-asm-overlay-arrow-position and add it to the new variable
>  > overlay-arrow-variable-list; like this:
>  > 
>  >  (push 'gdb-asm-overlay-arrow-position overlay-arrow-variable-list)
>  > 
>  > Then you can use gdb-asm-overlay-arrow-position just like the
>  > overlay-arrow-position variable.
> 
> I've committed this change which seems to work fine on a graphical display but
> not on a text-only terminal. Roughly, I've taken code from gud-display-line
> and put it in gdb-assembler-custom. In this manner, I've created a variable
> called gdb-overlay-arrow-string (set to "=>") but this doesn't have the
> meaning given to overlay-arrow-string.

I forgot to mention this:

You should use something like this to associate a string with
a custom overlay-arrow variable:

    (put 'gdb-overlay-arrow-position 'overlay-arrow-string "=>")

> 
> On a related note, I see that the overlay arrow is only represented as a
> string on a text-only terminal. It seems to me that, now fringes can be
> toggled, this should be extended to graphical displays where there is no
> left-hand fringe.

Yes, that makes sense.  I will look at it.

-- 
Kim F. Storm <storm@cua.dk> http://www.cua.dk

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Recent changes in gdb-ui.el
  2004-03-06  1:59     ` Kim F. Storm
@ 2004-03-10  5:47       ` Eli Zaretskii
  2004-03-11 23:05         ` Nick Roberts
  0 siblings, 1 reply; 5+ messages in thread
From: Eli Zaretskii @ 2004-03-10  5:47 UTC (permalink / raw)


> From: storm@cua.dk (Kim F. Storm)
> Date: 06 Mar 2004 02:59:55 +0100
> 
> > On a related note, I see that the overlay arrow is only represented as a
> > string on a text-only terminal. It seems to me that, now fringes can be
> > toggled, this should be extended to graphical displays where there is no
> > left-hand fringe.
> 
> Yes, that makes sense.  I will look at it.

Btw, why doesn't gdb-ui.el live in progmodes, together with gud.el?

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Recent changes in gdb-ui.el
  2004-03-10  5:47       ` Eli Zaretskii
@ 2004-03-11 23:05         ` Nick Roberts
  0 siblings, 0 replies; 5+ messages in thread
From: Nick Roberts @ 2004-03-11 23:05 UTC (permalink / raw)
  Cc: emacs-devel


 > Btw, why doesn't gdb-ui.el live in progmodes, together with gud.el?

It did live together with gud.el before it was moved. Also, XEmacs has a
directory called debug but, as a previous thread observed, CVS doesn't handle
moves very well. I note the subversion has been released now, which might be
worth bearing in mind for the future. For the present, however, I agree that
gdb-ui.el should be moved to progmodes.

Nick

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2004-03-11 23:05 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-03-03 14:39 Recent changes in gdb-ui.el Kim F. Storm
     [not found] <16450.6926.750772.12628@nick.uklinux.net>
     [not found] ` <m3y8qkvxwk.fsf@kfs-l.imdomain.dk>
2004-03-05 23:53   ` Nick Roberts
2004-03-06  1:59     ` Kim F. Storm
2004-03-10  5:47       ` Eli Zaretskii
2004-03-11 23:05         ` Nick Roberts

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.