Hi,

> Running a "tla archives" from a shell shows me the eight archives I
> have registered.  
> 
> Until recently, browsing archives in xtla showed the same eight.  
Which xtla command do you use in this statement?
xtla-browse?

About "Until recently", did you change something?
e.g. xtla's version or tla's version.


> (setq
>  emacs-version "22.0.50.1"
>  tla-version "Unknown version"

I woner why tla-version is not set...

During xtla-1.1 development, I added temporary(add-hoc) code to handle 
multiple locations like:

(defun tla--browse-expand-archives (root)
  "Expand ROOT widget."
  (or (and (not current-prefix-arg) (widget-get root :args))
      (let ((default-archive (tla-my-default-archive)))
      ...
                           ;; TODO(Multiple locations)
                           :archive-location ,(car (cadr archive))
                           :archive-defaultp ,(equal
                                               default-archive
                                               (car
                                                archive))))))

Without this temporary code, xtla-browse may fail to get archive locations.


> [-]  Archives
>  ` [+]  A [EMAIL PROTECTED] => *unknown now*

What happens if you press "g" on "Archives"?
It triggers refacing tla names.

> [-]  Archives
>  | [+]  a [EMAIL PROTECTED] => *unknown now*
>  ` [+]  A [EMAIL PROTECTED] => *unknown now*
> 
> My bookmarks, many of which related to peers of branches in these
> archives, look fine.
> 
> Is this expected behavior?  Did I do something wrong to cause all of
> my archives to disappear?  What does the "*unknown now*" indicate?

Updating tree is no automatic if you create an archive, branch or something
not in tla-browse. If you carete one, you have to update the tree with "g" key.
However, "*unknown now*" is strange.

> Note that, while I am an expert Emacs and revision control system
> user/developer, I am new to Arch/tla/baz and xtla, so am still wet
> behind the ears.

Really nice. I'm lucky.

Look at tla--browse-expand-archives in xtla.el.

(defun tla--browse-expand-archives (root)
  "Expand ROOT widget."
  (or (and (not current-prefix-arg) (widget-get root :args))
      (let ((default-archive (tla-my-default-archive)))
        (setq tla--widget-archive-node-list nil)
        (mapcar
         (lambda (archive)
           (let ((res
                  `(tree-widget
                    :open ,(tla--browse-open-list-member (car archive))
                    :has-children t
                    :dynargs tla--browse-expand-categories
                    :node (tla--widget-archive-node
                           :tag ,(if (equal default-archive (car archive))
                                     tla--widget-archive-node-default-tag
                                   tla--widget-archive-node-tag)
                           :archive ,(car archive)
                           ;; TODO(Multiple locations)
                           :archive-location ,(car (cadr archive))
                           :archive-defaultp ,(equal
                                               default-archive
                                               (car
                                                archive))))))
             (widget-put (widget-get res :node) :parent res)
             res))
         (let* ((l tla--archive-tree))
           (when (or (null l) current-prefix-arg)
             (tla--archive-tree-build-archives nil t))
           tla--archive-tree)))))

As I explained the location is stored t0 a widget at

                           ;; TODO(Multiple locations)
                           :archive-location ,(car (cadr archive))

The value of `archive' comes from a list

          (let* ((l tla--archive-tree))
           (when (or (null l) current-prefix-arg)
             (tla--archive-tree-build-archives nil t))
           tla--archive-tree)

passed to mapcar.

I wonder what kind of values are stored to tla--archive-tree, a global
variable. When you can reproduce the bug, could you tell me the value
of `tla--archive-tree`, just C-j at *scratch*. We expect the locations
are stored to tla--archive-tree. If not the result of
(tla--archive-tree-build-archives nil t) is needed.

I'm using the latest code in this mail.
Please send xtla-browse.el you are using now, if you think it is
better.

Thanks in advance.
Masatake YAMATO

Reply via email to