emacs-bug-tracker
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-bug-tracker] bug#5477: marked as done (23.1.91; diary-unhide-ever


From: Emacs bug Tracking System
Subject: [Emacs-bug-tracker] bug#5477: marked as done (23.1.91; diary-unhide-everything sometimes doesn't)
Date: Tue, 26 Jan 2010 21:15:02 +0000

Your message dated Tue, 26 Jan 2010 16:14:09 -0500
with message-id <address@hidden>
and subject line Re: bug#5477: 23.1.91; diary-unhide-everything sometimes 
doesn't
has caused the Emacs bug report #5477,
regarding 23.1.91; diary-unhide-everything sometimes doesn't
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact address@hidden
immediately.)


-- 
5477: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=5477
Emacs Bug Tracking System
Contact address@hidden with problems
--- Begin Message --- Subject: 23.1.91; diary-unhide-everything sometimes doesn't Date: Mon, 25 Jan 2010 22:38:31 +0100 User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1.91 (gnu/linux)
If diary-list-entries applies to a narrowed buffer, it widens it before
making it invisible (due to bug#5093).  However, it can happen that
narrowing is restored before diary-unhide-everything applies, with the
result that only the narrowed portion of the buffer becomes visible
again.  The simplest reproducible recipe I could find may seem
contrived, but it makes strictly legitimate use of Emacs libraries (I
have more complex local changes to Todo mode that also suffer from it):

1. Save the following text as ~/.todo-do:

    -*- mode: todo; todo-categories: ("test" "Todo"); -*-
     --- test
     January 25, 2010 19:47 steve: another item
    --- End
     ---------------------------------------------------------------------------
     --- Todo
     January 25, 2010 19:48 steve: todo item
    --- End
     ---------------------------------------------------------------------------

   What matters is that there are at least two Todo categories and
   todo-prefix is not interpretable by diary-lib, e.g. here it is just
   the empty string (the following space is required by Todo mode).

2. emacs -Q
3. M-x todo-show, answer y to apply the local variable list.  A "search
   failed" error occurs because the value of todo-prefix is (still) the
   default "*/*".  So kill the Todo buffer, do M-x customize-variable
   RET todo-prefix, make it match the string in the above ~/.todo-do
   file (the empty string), save for the current session, and call
   todo-show again.  The Todo buffer shows the item in category "test",
   and pressing + or - will show the item in category "Todo". 
4. Save the following as ~/diary:

    #include "~/.todo-do"
    
    Jan 25, 2010 diary item

5. M-: (add-hook 'diary-list-entries-hook 'diary-include-other-diary-files)
6. M-x calendar, then type `d' on Jan 25 (the actual date is probably
   irrelevant).
=> Now todo-show only displays one category (whichever was current
before doing the step 6), the other category is invisible.

The patch below fixes this bug.

In GNU Emacs 23.1.91.2 (i686-pc-linux-gnu, GTK+ Version 2.18.1)
 of 2010-01-25 on escher
Windowing system distributor `The X.Org Foundation', version 11.0.10605000
Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: nil
  value of $LC_CTYPE: nil
  value of $LC_MESSAGES: nil
  value of $LC_MONETARY: nil
  value of $LC_NUMERIC: nil
  value of $LC_TIME: nil
  value of $LANG: en_US.UTF-8
  value of $XMODIFIERS: @im=local
  locale-coding-system: utf-8-unix
  default enable-multibyte-characters: t


2010-01-25  Stephen Berman  <address@hidden>

        * diary-lib.el (diary-unhide-everything): Widen before removing
        overlays (bug#XXXX). 


*** /tmp/ediff16825Y0s  2010-01-25 22:16:53.000000000 +0100
--- /data/steve/bzr/emacs/quickfixes/lisp/calendar/diary-lib.el 2010-01-25 
22:13:51.000000000 +0100
***************
*** 804,810 ****
  (defun diary-unhide-everything ()
    "Show all invisible text in the diary."
    (kill-local-variable 'diary-selective-display)
!   (remove-overlays (point-min) (point-max) 'invisible 'diary)
    (kill-local-variable 'mode-line-format))
  
  (defvar original-date)                  ; bound in diary-list-entries
--- 804,813 ----
  (defun diary-unhide-everything ()
    "Show all invisible text in the diary."
    (kill-local-variable 'diary-selective-display)
!   (save-excursion
!     (save-restriction
!       (widen)
!       (remove-overlays (point-min) (point-max) 'invisible 'diary)))
    (kill-local-variable 'mode-line-format))
  
  (defvar original-date)                  ; bound in diary-list-entries




--- End Message ---
--- Begin Message --- Subject: Re: bug#5477: 23.1.91; diary-unhide-everything sometimes doesn't Date: Tue, 26 Jan 2010 16:14:09 -0500 User-agent: Gnus (www.gnus.org), GNU Emacs (www.gnu.org/software/emacs/)
Thanks, I will install this later.

I'm closing this now to test some debbugs changes I have made.


--- End Message ---

reply via email to

[Prev in Thread] Current Thread [Next in Thread]