all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Xah Lee <xahlee@gmail.com>
To: help-gnu-emacs@gnu.org
Subject: Re: Emacs for Mac OS X - questions
Date: Mon, 29 Jun 2009 17:28:27 -0700 (PDT)	[thread overview]
Message-ID: <4f7fb8d9-a0a9-4c58-a334-31f3ebf1d2ba@3g2000yqk.googlegroups.com> (raw)
In-Reply-To: h22uhe$qhq$1@news.onet.pl


>  > Again, not sure exactly what you're referring to.  I have never seen
>  > tabs in the MacPorts built version of Emacs.
>
>  From http://aquamacs.org/features.shtml:
>
>    "Aquamacs Emacs can organize the files that you're editing in tabs.
>    This preserves screen space but allows you to keep track of all those
>    open files easily. You've probably seen the tabs in Safari, Firefox or
>    the OS X Terminal program."
>
> See also http://aquamacs.org/images/aquamacs-screenshot.pngtoo.
> Aquamacs tabs are similar to firefox tabs.

The tabs in Aquamac Emacs is based on the tabbar.el module.

tabs in emacs is quite different from tabs in firefox or any modern
app's tabs.

The bottom reason for this is that emacs doesn't do tabs, instead, it
has buffers. You can have many windows (what emacs calls frames), and
each window can access any buffer. However, tabs in modern apps does
not work like that. In modern apps, each windows has a set of tabs.
You could move a tab from one window to another in some (such as
Firefox version 3 or later), but in general, you don't have a set of
tabs that any set of windows can access or display.

in practice, this means when you use tabs in emacs, it's quite
different. Tabs in emacs is merely just a prettified GUI for accessing
buffers.

See this page on emacswiki:
http://www.emacswiki.org/emacs/TabBarMode

the following section is largely written by me. I don't like some of
the minor editing that made it as is today, but here's the section as
it is, which still largely correct:

The tabbar.el is extensively modified and used by AquamacsEmacs to be
as close to modern UI’s tab bar as possible. (see AquamacsEmacs’s
official website screenshot for a look. You can also try to get the
source code from AquamacsEmacs, but it may not work with standard
emacs.)

Note that tabbar mode as implemented in Emacs is a bit different than
tabs in web browsers or IDEs. In a web browser, each window may have
several tabs, and each window’s tabs stay with that window. Namely,
you cannot have Window A’s tab jump to window B, unless you drag it
over (Firefox 3 support this, for example. Safari 3.2 does not.).
However, the tabs implemented in emacs with tabbar mode is more like a
GUI-based display of buffer listing, displayed on top of the window.
In particular, tabs does not stick to a particular emacs’s Frame, and
conversely, each Emacs Frame can display a tab that is also shown in
another Emacs Frame.

Also, emacs’s tabbar mode’s tab can be hidden, as if showing only the
current “page” of a tab set, called a “group”. By default, tabs are
grouped by major mode. So, for example, if current buffer is in html-
mode, all the tabs shown are other buffers in html-mode. If there are
no other html-mode buffers, then you will have only one tab, even if
you have lots other buffers. All your dired buffers, C-mode buffers,
java-buffers, etc, are in other tab group and is hidden. You have to
click on a special tab widget to switch to them, or use keyboard
shortcut to switch tab or tab group.

What is considered as a tab group can be customized. You could set it
up so every buffer is of the same group.

Tab bar mode is implemented using a special emacs display area at the
top of Emacs Window, not Emacs Frame. (For example, if you split a
window into 3 panes, each will have a tab bar). Some other modes also
use this area. For example Info, Dired, Slime, ERC, ruler-mode, etc.
So that when switching to these modes, the tabs will not shown. You
can get the tabs back by typing “M-x tabbar-local-mode”.

  Xah
∑ http://xahlee.org/

  parent reply	other threads:[~2009-06-30  0:28 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-06-25 18:27 Emacs for Mac OS X - questions Marc Tfardy
2009-06-25 18:56 ` Andrea Crotti
2009-06-26  4:46   ` Kevin Rodgers
2009-06-26 16:34   ` Marc Tfardy
2009-06-26 18:57     ` Nurullah Akkaya
2009-06-25 19:22 ` Tim Visher
2009-06-25 19:23 ` queries0
2009-06-25 21:32   ` Nurullah Akkaya
2009-06-26 16:40   ` Marc Tfardy
2009-06-29 23:21     ` Xah Lee
2009-06-30  3:23       ` queries0
2009-06-30  8:49         ` Peter Dyballa
2009-06-25 22:43 ` Peter Dyballa
     [not found] ` <mailman.1258.1245957740.2239.help-gnu-emacs@gnu.org>
2009-06-26  2:29   ` Barry Margolin
2009-06-26 16:55   ` Marc Tfardy
2009-06-27  2:26     ` Barry Margolin
2009-06-30  0:28     ` Xah Lee [this message]
2009-07-02 18:57       ` Marc Tfardy
2009-07-02 20:26         ` Xah Lee
2009-06-26 22:49 ` Xah Lee
2009-06-27  4:04 ` Ian Eure
2009-06-27 10:35   ` Peter Dyballa
2009-06-28 23:27 ` David Reitter
2009-06-29 20:49   ` Marc Tfardy
2009-06-30  0:58     ` David Reitter

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=4f7fb8d9-a0a9-4c58-a334-31f3ebf1d2ba@3g2000yqk.googlegroups.com \
    --to=xahlee@gmail.com \
    --cc=help-gnu-emacs@gnu.org \
    /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.