all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Oliver Scholz <epameinondas@gmx.de>
Subject: `make-variable-frame-local'
Date: Sat, 3 Aug 2002 07:01:39 +0200	[thread overview]
Message-ID: <200208030501.g7351d907628@localhost.localdomain> (raw)

This bug report will be sent to the Free Software Foundation,
not to your local site managers!
Please write in English, because the Emacs maintainers do not have
translators to read other languages for them.

Your bug report will be posted to the bug-gnu-emacs@gnu.org mailing list,
and to the gnu.emacs.bug news group.

In GNU Emacs 21.2.1 (i686-pc-linux-gnu, X toolkit, Xaw3d scroll bars)
 of 2002-04-29 on hermes
configured using `configure  --with-gif --with-png --with-x-toolkit=lucid --with-xpm --with-jpeg --with-tiff'
Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: nil
  value of $LC_CTYPE: nil
  value of $LC_MESSAGES: C
  value of $LC_MONETARY: nil
  value of $LC_NUMERIC: nil
  value of $LC_TIME: nil
  value of $LANG: de_DE
  locale-coding-system: iso-latin-1
  default-enable-multibyte-characters: t

Please describe exactly what actions triggered the bug
and the precise symptoms of the bug:

Is it possible that there is a bug in `make-variable-frame-local' or
am I missing something here?

I do the following in a fresh Emacs (v 21.2) started with -q and
-no-site-file:

I eval this in *scratch*:

(defvar sframes-mode nil)
(make-variable-frame-local 'sframes-mode)

(setq sframes-mode 'lirum-larum)

Then I make a new frame with `C-x 5 2'. I eval this in the new frame:

(setq sframes-mode 'schubi-dubi)

Then I go back to frame #1 and do `C-h v sframe-mode RET':

==> sframes-mode's value is schubi-dubi

In other words: `sframes-mode' still behaves so far like a global
variable. :-(

---

Now the docs mention frame-parameters in the context of
`make-variable-frame-local'.

Again in a fresh Emacs with -q --no-site-file:

frame #1:

    (defvar sframes-mode nil)

    (make-variable-frame-local 'sframes-mode)

    (modify-frame-parameters nil '((sframes-mode . lirum-larum)))

    sframes-mode
      => lirum-larum

Then I create frame #2:

    sframes-mode
      => nil

    (setq lirum-larum 'schubi-dubi)

Back to frame #1:
    sframes-mode
      => lirum-larum

So after I touched the frame-parameters once, everything works as
expected.

---

Now, how do I work around this? Do I have to do modify the
frame-parameters once for every frame-local variable? Or is there a
better way? I need it to implement a frame-local minor-mode.

    -- Oliver

             reply	other threads:[~2002-08-03  5:01 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-08-03  5:01 Oliver Scholz [this message]
     [not found] ` <200208071424.g77EOID03185@wijiji.santafe.edu>
     [not found]   ` <m3k7n2if48.fsf@ID-87814.user.dfncis.de>
2002-08-09  2:48     ` `make-variable-frame-local' Richard Stallman
2002-08-09 17:54       ` `make-variable-frame-local' Oliver Scholz
2002-08-11  3:56         ` `make-variable-frame-local' Richard Stallman
2002-08-26 16:25           ` `make-variable-frame-local' Juanma Barranquero
2002-08-27 19:05             ` `make-variable-frame-local' Richard Stallman

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=200208030501.g7351d907628@localhost.localdomain \
    --to=epameinondas@gmx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.