"T. V. Raman" <ramantv(a)earthlink.net> writes:
thanks for everyone's help. AT present the only way I am able
to
get things working is to use Colin's "evil" solution of setting
zmacs-regions to nil.
That is evil (no quotes I'm afraid) because it overrides the user's
settings. If I knew what exactly the problem was, I might be able to
help you. This way I can just guess. Let's recapitulate:
* In XEmacs, the term "active region" pertains to zmacs regions. They
are on by default. If you set zmacs-regions to nil, you kill all
zmacs region behaviour -- (mark) always returns the last location of
mark, etc.
* The functions (point) and (mark) return the endpoints of a zmacs
region. If the region is currently not active, (mark) returns nil.
If you really really want to know where the mark was last located,
use (mark t).
* A better (less confusing) interface for using regions are functions
`region-active-p', `region-beginning', and `region-end'.
* All the commands deactivate the region except for those that
explicitly choose not to. This is by design.
Any other suggestions? Setting zmacs-region-stays at the end of
every emacspeak function would be a huge amount of work --
Not at the end of every emacspeak function, but only at the end of
those commands that really need to preserve the region. If every
emacspeak function is a movement command then yes, every one of them
needs to preserve the region. But somehow I doubt that this is the
case.
Could you be a bit more specific with the problem description?