Gnus development mailing list
 help / color / mirror / Atom feed
* Article headers & virtual windows
@ 1998-12-02  2:45 Lars Magne Ingebrigtsen
  1998-12-02  4:58 ` Matt Simmons
                   ` (2 more replies)
  0 siblings, 3 replies; 18+ messages in thread
From: Lars Magne Ingebrigtsen @ 1998-12-02  2:45 UTC (permalink / raw)


I've never really been satisfied with the unused screen real estate to 
the right of the article headers.  Most headers are short -- less than 
40 characters -- which leaves a region of 6-8 lines that are only
half-filled.

One possibility would be to display the article headers in a window of 
their own, and use a window config like this:

--------------------------
|                        |
--------------------------
|          |             |
|          |             |
--------------------------
|                        |
|                        |
|                        |
|                        |
|                        |
|                        |
|                        |
|                        |
|                        |
|                        |
--------------------------

But the thing is that an Emacs frame with more than two windows in it
sucks, because `C-x o' doesn't really do what you want it to and
stuff.

And besides, the extra mode bars takes up too much space.

The other way, that's just occurred to me, it to just kludge it up.
One could make the header lines invisible at the fourtieth character,
and then insert spaces to pad things out and stuff.  And then one
could (carefully) use that remaining space to display, er, stuff.
Like picons, and MIME information, or thread trees, or, well,
whatever.   But especially picons and MIME information.  Especially
especially picons.

So I'm going to give this a whack, I think.  (Optional, of course.)

-- 
(domestic pets only, the antidote for overdose, milk.)
  larsi@ifi.uio.no * Lars Magne Ingebrigtsen


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: Article headers & virtual windows
  1998-12-02  2:45 Article headers & virtual windows Lars Magne Ingebrigtsen
@ 1998-12-02  4:58 ` Matt Simmons
  1998-12-02 17:12   ` Lars Magne Ingebrigtsen
  1998-12-02 16:57 ` Hrvoje Niksic
  1998-12-05  4:33 ` Julian Assange
  2 siblings, 1 reply; 18+ messages in thread
From: Matt Simmons @ 1998-12-02  4:58 UTC (permalink / raw)


>>>>> "Lars" == Lars Magne Ingebrigtsen <larsi@ifi.uio.no> writes:

    Lars> And besides, the extra mode bars takes up too much space.
Huh?  Can't you turn them off the same way they can be turned off in
the picons window?

Matt

-- 
     Matt Simmons  -  simmonmt@acm.org  -  http://www.netcom.com/~simmonmt
   Why do banks charge you a "non-sufficient funds fee" on money they already
			      know you don't have?


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: Article headers & virtual windows
  1998-12-02  2:45 Article headers & virtual windows Lars Magne Ingebrigtsen
  1998-12-02  4:58 ` Matt Simmons
@ 1998-12-02 16:57 ` Hrvoje Niksic
  1998-12-02 18:27   ` Lars Magne Ingebrigtsen
  1998-12-02 19:13   ` Lars Magne Ingebrigtsen
  1998-12-05  4:33 ` Julian Assange
  2 siblings, 2 replies; 18+ messages in thread
From: Hrvoje Niksic @ 1998-12-02 16:57 UTC (permalink / raw)


Lars Magne Ingebrigtsen <larsi@ifi.uio.no> writes:

> And besides, the extra mode bars takes up too much space.

In XEmacs you can turn off the modeline for a window or buffer.  I
think the latest FSF Emacs also supports that.

> The other way, that's just occurred to me, it to just kludge it up.
> One could make the header lines invisible at the fourtieth
> character, and then insert spaces to pad things out and stuff.

How would that work with proportional fonts?

-- 
Hrvoje Niksic <hniksic@srce.hr> | Student at FER Zagreb, Croatia
--------------------------------+--------------------------------
Bumper sticker on the stealth bomber:
"IF YOU CAN READ THIS, THEN WE WASTED 50 BILLION BUCKS."


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: Article headers & virtual windows
  1998-12-02  4:58 ` Matt Simmons
@ 1998-12-02 17:12   ` Lars Magne Ingebrigtsen
  1998-12-02 18:38     ` Hrvoje Niksic
                       ` (2 more replies)
  0 siblings, 3 replies; 18+ messages in thread
From: Lars Magne Ingebrigtsen @ 1998-12-02 17:12 UTC (permalink / raw)


Matt Simmons <simmonmt@acm.org> writes:

> Huh?  Can't you turn them off the same way they can be turned off in
> the picons window?

I didn't know you could do that.

(set-specifier has-modeline-p `((,(current-buffer) (nil))))

Heh.  Neat.

-- 
(domestic pets only, the antidote for overdose, milk.)
  larsi@gnus.org * Lars Magne Ingebrigtsen


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: Article headers & virtual windows
  1998-12-02 16:57 ` Hrvoje Niksic
@ 1998-12-02 18:27   ` Lars Magne Ingebrigtsen
  1998-12-02 19:01     ` Lars Balker Rasmussen
  1998-12-02 19:13   ` Lars Magne Ingebrigtsen
  1 sibling, 1 reply; 18+ messages in thread
From: Lars Magne Ingebrigtsen @ 1998-12-02 18:27 UTC (permalink / raw)




^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: Article headers & virtual windows
  1998-12-02 17:12   ` Lars Magne Ingebrigtsen
@ 1998-12-02 18:38     ` Hrvoje Niksic
  1998-12-03  6:33     ` Matt Simmons
  1998-12-03 14:31     ` Sean Doran
  2 siblings, 0 replies; 18+ messages in thread
From: Hrvoje Niksic @ 1998-12-02 18:38 UTC (permalink / raw)


Lars Magne Ingebrigtsen <larsi@gnus.org> writes:

> Matt Simmons <simmonmt@acm.org> writes:
> 
> > Huh?  Can't you turn them off the same way they can be turned off in
> > the picons window?
> 
> I didn't know you could do that.
> 
> (set-specifier has-modeline-p `((,(current-buffer) (nil))))
> 
> Heh.  Neat.

Meet the power of specifiers:

    (set-specifier has-modeline-p nil (current-buffer))

If you wish to satisfy the masochistic streaks you may own, you can
always play with `add-spec-to-specifier' or, better,
`add-spec-list-to-specifier'.  :-)

-- 
Hrvoje Niksic <hniksic@srce.hr> | Student at FER Zagreb, Croatia
--------------------------------+--------------------------------
If anything goes wrong, blame the random-number generator!


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: Article headers & virtual windows
  1998-12-02 18:27   ` Lars Magne Ingebrigtsen
@ 1998-12-02 19:01     ` Lars Balker Rasmussen
  1998-12-02 19:20       ` Lars Magne Ingebrigtsen
  0 siblings, 1 reply; 18+ messages in thread
From: Lars Balker Rasmussen @ 1998-12-02 19:01 UTC (permalink / raw)


Lars Magne Ingebrigtsen <larsi@gnus.org> writes:

You've been very succinct lately.
-- 
Lars Balker Rasmussen, Software Engineer, Mjolner Informatics ApS
lbr@mjolner.dk


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: Article headers & virtual windows
  1998-12-02 16:57 ` Hrvoje Niksic
  1998-12-02 18:27   ` Lars Magne Ingebrigtsen
@ 1998-12-02 19:13   ` Lars Magne Ingebrigtsen
  1 sibling, 0 replies; 18+ messages in thread
From: Lars Magne Ingebrigtsen @ 1998-12-02 19:13 UTC (permalink / raw)


(Sorry about the previous, empty message.)

Hrvoje Niksic <hniksic@srce.hr> writes:

> > The other way, that's just occurred to me, it to just kludge it up.
> > One could make the header lines invisible at the fourtieth
> > character, and then insert spaces to pad things out and stuff.
> 
> How would that work with proportional fonts?

It wouldn't.  :-(

-- 
(domestic pets only, the antidote for overdose, milk.)
  larsi@gnus.org * Lars Magne Ingebrigtsen


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: Article headers & virtual windows
  1998-12-02 19:01     ` Lars Balker Rasmussen
@ 1998-12-02 19:20       ` Lars Magne Ingebrigtsen
  0 siblings, 0 replies; 18+ messages in thread
From: Lars Magne Ingebrigtsen @ 1998-12-02 19:20 UTC (permalink / raw)


Lars Balker Rasmussen <lbr@mjolner.dk> writes:

> Lars Magne Ingebrigtsen <larsi@gnus.org> writes:
> 
> You've been very succinct lately.

ROTFLMAO.  :-)

It's karma.  I was *gloat*ing too much.

-- 
(domestic pets only, the antidote for overdose, milk.)
  larsi@gnus.org * Lars Magne Ingebrigtsen


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: Article headers & virtual windows
  1998-12-02 17:12   ` Lars Magne Ingebrigtsen
  1998-12-02 18:38     ` Hrvoje Niksic
@ 1998-12-03  6:33     ` Matt Simmons
  1998-12-03  7:34       ` Hrvoje Niksic
  1998-12-03 14:31     ` Sean Doran
  2 siblings, 1 reply; 18+ messages in thread
From: Matt Simmons @ 1998-12-03  6:33 UTC (permalink / raw)


>>>>> "Lars" == Lars Magne Ingebrigtsen <larsi@gnus.org> writes:

    Lars> Matt Simmons <simmonmt@acm.org> writes:
    >> Huh?  Can't you turn them off the same way they can be turned off in
    >> the picons window?

    Lars> I didn't know you could do that.

    Lars> (set-specifier has-modeline-p `((,(current-buffer) (nil))))

    Lars> Heh.  Neat.

I don't suppose you could be convinced to add this somehow to the
window configuration stuff?  I'd love to be able to make the mode line 
go away in the tree buffer.

Matt

-- 
     Matt Simmons  -  simmonmt@acm.org  -  http://www.netcom.com/~simmonmt
  Be wary of strong drink.  It can make you shoot at tax collectors, and miss.


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: Article headers & virtual windows
  1998-12-03  6:33     ` Matt Simmons
@ 1998-12-03  7:34       ` Hrvoje Niksic
  1998-12-05 15:49         ` Matt Simmons
  0 siblings, 1 reply; 18+ messages in thread
From: Hrvoje Niksic @ 1998-12-03  7:34 UTC (permalink / raw)


Matt Simmons <simmonmt@acm.org> writes:

> I don't suppose you could be convinced to add this somehow to the
> window configuration stuff?  I'd love to be able to make the mode
> line go away in the tree buffer.

Can't you use `gnus-tree-mode-hook' or something to set it up?  I know
it's not as elegant as window configs, but it should still be
possible...

-- 
Hrvoje Niksic <hniksic@srce.hr> | Student at FER Zagreb, Croatia
--------------------------------+--------------------------------
I luv the smell of nature in the morning.  Smells like manure!


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: Article headers & virtual windows
  1998-12-02 17:12   ` Lars Magne Ingebrigtsen
  1998-12-02 18:38     ` Hrvoje Niksic
  1998-12-03  6:33     ` Matt Simmons
@ 1998-12-03 14:31     ` Sean Doran
  2 siblings, 0 replies; 18+ messages in thread
From: Sean Doran @ 1998-12-03 14:31 UTC (permalink / raw)


Lars Magne Ingebrigtsen <larsi@gnus.org> writes:

> (set-specifier has-modeline-p `((,(current-buffer) (nil))))
> 
> Heh.  Neat.

Seems to be an XEmacsism?

	Sean.


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: Article headers & virtual windows
  1998-12-02  2:45 Article headers & virtual windows Lars Magne Ingebrigtsen
  1998-12-02  4:58 ` Matt Simmons
  1998-12-02 16:57 ` Hrvoje Niksic
@ 1998-12-05  4:33 ` Julian Assange
  1998-12-07 22:06   ` Lars Magne Ingebrigtsen
  2 siblings, 1 reply; 18+ messages in thread
From: Julian Assange @ 1998-12-05  4:33 UTC (permalink / raw)
  Cc: ding


Lars Magne Ingebrigtsen <larsi@ifi.uio.no> writes:

> But the thing is that an Emacs frame with more than two windows in it
> sucks, because `C-x o' doesn't really do what you want it to and
> stuff.

I often use frames with 4+ windows. The below is probably what you
want (though, I've only tested it with xemacs thus far).

;; change-windows-intuitively.el (c) 1998 Julian Assange <proff@iq.org>
;; move around (x)emacs windows intuitively (e.g
;; take me to the window to the immediate left/right/top/bottem of
;; the current one)
;;
;; TODO move relative to the cursor, rather than relative
;; to the currently selected window (which in some
;; circumstances i.e when you have a lot of different size
;; windows stacked near each other, is is more intuitive).
;;
;; uncomment the following keybindings if you like them -
;; note however that shift+arrow keys may not be bindable
;; on your terminal (e.g if you are not running X)

;; (global-set-key [(shift left)] 'proff-select-window-left)
;; (global-set-key [(shift right)] 'proff-select-window-right)
;; (global-set-key [(shift up)] 'proff-select-window-up)
;; (global-set-key [(shift down)] 'proff-select-window-down)
 
(defun proff-find-window-down (win)
  (let ((swin))
    (walk-windows
     (lambda (wwin)
       (and (<= (nth 0 (window-pixel-edges wwin))
		(nth 0 (window-pixel-edges win)))
	    (> (nth 2 (window-pixel-edges wwin))
	       (nth 0 (window-pixel-edges win)))
	    (> (nth 1 (window-pixel-edges wwin))
	       (nth 1 (window-pixel-edges win)))
	    (or (not swin)
		(< (nth 1 (window-pixel-edges wwin))
		   (nth 1 (window-pixel-edges swin))))
	    (setq swin wwin)))
    t 'visible)
  swin))

(defun proff-select-window-down ()
  (interactive)
  (let ((win (proff-find-window-down (selected-window))))
    (if win (select-window win))))

(defun proff-find-window-up (win)
  (let ((swin))
    (walk-windows
     (lambda (wwin)
       (and (<= (nth 0 (window-pixel-edges wwin))
		(nth 0 (window-pixel-edges win)))
	    (> (nth 2 (window-pixel-edges wwin))
	       (nth 0 (window-pixel-edges win)))
	    (< (nth 1 (window-pixel-edges wwin))
	       (nth 1 (window-pixel-edges win)))
	    (or (not swin)
		(> (nth 1 (window-pixel-edges wwin))
		   (nth 1 (window-pixel-edges swin))))
	    (setq swin wwin)))
    t 'visible)
  swin))

(defun proff-select-window-up ()
  (interactive)
  (let ((win (proff-find-window-up (selected-window))))
    (if win (select-window win))))

(defun proff-find-window-left (win)
  (let ((swin))
    (walk-windows
     (lambda (wwin)
       (and (<= (nth 1 (window-pixel-edges wwin))
		(nth 1 (window-pixel-edges win)))
	    (> (nth 3 (window-pixel-edges wwin))
	       (nth 1 (window-pixel-edges win)))
	    (< (nth 0 (window-pixel-edges wwin))
	       (nth 0 (window-pixel-edges win)))
	    (or (not swin)
		(> (nth 0 (window-pixel-edges wwin))
		   (nth 0 (window-pixel-edges swin))))
	    (setq swin wwin)))
    t 'visible)
  swin))

(defun proff-select-window-left ()
  (interactive)
  (let ((win (proff-find-window-left (selected-window))))
    (if win (select-window win))))

(defun proff-find-window-right (win)
  (let ((swin))
    (walk-windows
     (lambda (wwin)
       (and (<= (nth 1 (window-pixel-edges wwin))
		(nth 1 (window-pixel-edges win)))
	    (> (nth 3 (window-pixel-edges wwin))
	       (nth 1 (window-pixel-edges win)))
	    (> (nth 0 (window-pixel-edges wwin))
	       (nth 0 (window-pixel-edges win)))
	    (or (not swin)
		(< (nth 0 (window-pixel-edges wwin))
		   (nth 0 (window-pixel-edges swin))))
	    (setq swin wwin)))
    t 'visible)
  swin))

(defun proff-select-window-right ()
  (interactive)
  (let ((win (proff-find-window-right (selected-window))))
    (if win (select-window win))))


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: Article headers & virtual windows
  1998-12-03  7:34       ` Hrvoje Niksic
@ 1998-12-05 15:49         ` Matt Simmons
  1998-12-05 17:36           ` Lars Magne Ingebrigtsen
  0 siblings, 1 reply; 18+ messages in thread
From: Matt Simmons @ 1998-12-05 15:49 UTC (permalink / raw)


>>>>> "Hrvoje" == Hrvoje Niksic <hniksic@srce.hr> writes:

    Hrvoje> Can't you use `gnus-tree-mode-hook' or something to set it up?  I know
    Hrvoje> it's not as elegant as window configs, but it should still be
    Hrvoje> possible...

Cool.  Thanks.  Now if only there was a gnus-picons-mode-hook for the
picons buffer...

Matt

-- 
     Matt Simmons  -  simmonmt@acm.org  -  http://www.netcom.com/~simmonmt
     Whenever I'm driving through the desert, and I see a roadrunner, I run
       it over and say, "That's for the coyote!"  I don't really like the
       coyote, but it's a good excuse to run over things.  --Craig Stacey


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: Article headers & virtual windows
  1998-12-05 15:49         ` Matt Simmons
@ 1998-12-05 17:36           ` Lars Magne Ingebrigtsen
  1999-01-02  6:04             ` Matt Simmons
  0 siblings, 1 reply; 18+ messages in thread
From: Lars Magne Ingebrigtsen @ 1998-12-05 17:36 UTC (permalink / raw)


Matt Simmons <simmonmt@acm.org> writes:

> Cool.  Thanks.  Now if only there was a gnus-picons-mode-hook for the
> picons buffer...

I've now added a `gnus-picons-setup-hook'.

-- 
(domestic pets only, the antidote for overdose, milk.)
  larsi@gnus.org * Lars Magne Ingebrigtsen


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: Article headers & virtual windows
  1998-12-05  4:33 ` Julian Assange
@ 1998-12-07 22:06   ` Lars Magne Ingebrigtsen
  0 siblings, 0 replies; 18+ messages in thread
From: Lars Magne Ingebrigtsen @ 1998-12-07 22:06 UTC (permalink / raw)


Julian Assange <proff@iq.org> writes:

> I often use frames with 4+ windows. The below is probably what you
> want (though, I've only tested it with xemacs thus far).

Nice.  Much easier than `C-x o' and friends.

-- 
(domestic pets only, the antidote for overdose, milk.)
  larsi@gnus.org * Lars Magne Ingebrigtsen


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: Article headers & virtual windows
  1998-12-05 17:36           ` Lars Magne Ingebrigtsen
@ 1999-01-02  6:04             ` Matt Simmons
  1999-01-03 13:03               ` Lars Magne Ingebrigtsen
  0 siblings, 1 reply; 18+ messages in thread
From: Matt Simmons @ 1999-01-02  6:04 UTC (permalink / raw)


>>>>> "Lars" == Lars Magne Ingebrigtsen <larsi@gnus.org> writes:

    Matt> Cool.  Thanks.  Now if only there was a
    Matt> gnus-picons-mode-hook for the picons buffer...

    Lars> I've now added a `gnus-picons-setup-hook'.

It doesn't look like my gnus-picons-setup-hook is being run.  Somebody
(my guess is that it's the window configuration stuff) is creating the
picons buffer first, thus causing everything in the else in
gnus-picons-setup-buffer to be skipped.

The only workaround I can find is to kill off the Picons buffer, and
reread (`g') the article.

      (if (get-buffer name)
	  (set-buffer name)
	(set-buffer (gnus-get-buffer-create name))
*	(buffer-disable-undo)
*	(setq buffer-read-only t)
-	(run-hooks 'gnus-picons-setup-hook)
*	(add-hook 'gnus-summary-prepare-exit-hook 'gnus-picons-kill-buffer))

While the starred lines look idempotent, and could probably be easily
pulled out of the if, the dashed line wouldn't be so easy, if possible 
at all.

Whee!  Would it be possible to let gnus-picons-setup-buffer to be run
before the window configuration stuff is done?  If that's not
possible, could you just move the starred and dashed things of the if?

Thanks

Matt

-- 
     Matt Simmons  -  simmonmt@acm.org  -  http://www.netcom.com/~simmonmt
     When your pet bird sees you reading the newspaper, does he wonder why
		you're just sitting there, staring at carpeting?


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: Article headers & virtual windows
  1999-01-02  6:04             ` Matt Simmons
@ 1999-01-03 13:03               ` Lars Magne Ingebrigtsen
  0 siblings, 0 replies; 18+ messages in thread
From: Lars Magne Ingebrigtsen @ 1999-01-03 13:03 UTC (permalink / raw)


Matt Simmons <simmonmt@acm.org> writes:

> It doesn't look like my gnus-picons-setup-hook is being run.  Somebody
> (my guess is that it's the window configuration stuff) is creating the
> picons buffer first, thus causing everything in the else in
> gnus-picons-setup-buffer to be skipped.

Yup.  Fix in Pterodactyl Gnus v0.69.

-- 
(domestic pets only, the antidote for overdose, milk.)
  larsi@gnus.org * Lars Magne Ingebrigtsen


^ permalink raw reply	[flat|nested] 18+ messages in thread

end of thread, other threads:[~1999-01-03 13:03 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1998-12-02  2:45 Article headers & virtual windows Lars Magne Ingebrigtsen
1998-12-02  4:58 ` Matt Simmons
1998-12-02 17:12   ` Lars Magne Ingebrigtsen
1998-12-02 18:38     ` Hrvoje Niksic
1998-12-03  6:33     ` Matt Simmons
1998-12-03  7:34       ` Hrvoje Niksic
1998-12-05 15:49         ` Matt Simmons
1998-12-05 17:36           ` Lars Magne Ingebrigtsen
1999-01-02  6:04             ` Matt Simmons
1999-01-03 13:03               ` Lars Magne Ingebrigtsen
1998-12-03 14:31     ` Sean Doran
1998-12-02 16:57 ` Hrvoje Niksic
1998-12-02 18:27   ` Lars Magne Ingebrigtsen
1998-12-02 19:01     ` Lars Balker Rasmussen
1998-12-02 19:20       ` Lars Magne Ingebrigtsen
1998-12-02 19:13   ` Lars Magne Ingebrigtsen
1998-12-05  4:33 ` Julian Assange
1998-12-07 22:06   ` Lars Magne Ingebrigtsen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).