Hi everybody,
I finally found a solution to my problem.
First of all, John is completely right, when he says that the function "org-agenda-list" has its own logic to split the windows.
But not only "org-agenda-list", but also "mu4e" has its own logic, when it is called.
A call of "mu4e" sets the buffer " *mu4e-main*" to be the current-buffer. And it does it probably not only once. ( Note the blank in front of the buffer-name, it
hides the buffer.) Thus, calling "mu4e" and "org-agenda-list" plus the regular functions to control windows, like "switch-to-buffer", "set-window-buffer", "split-window-...", causes a mixture of window operation which is really hard to disentangle.
To avoid this trouble, I decided to use the following "startup"-function:
(defun my-startup-layout ()
(interactive)
(mu4e)
(sit-for 1)
(org-agenda-list))
A call of the function "sit-for" produces a short break after loading mu4e. This avoids the conflict with "mu4e" setting " *mu4e-main*" the current-buffer. After the short break I call the function "org-agenda-list" which splits the windows according to its own logic and then selects the *Org Agenda* buffer, which is exactly what I want.
Once more, thanks for your help.
Nils