Mercurial > emacs
comparison README.multi-tty @ 83416:4513d8dcdfd5
Reimplement and extend support for terminal-local environment variables.
* lisp/termdev.el: New file. Move terminal parameter-related functions
here from frame.el.
(terminal-getenv, with-terminal-environment): Reimplement and extend.
(terminal-setenv, terminal-setenv-internal): New functions.
* lisp/frame.el (make-frame-on-tty, framep-on-display, suspend-frame):
Extend doc string, update parameter names.
(terminal-id, terminal-parameter-alist, terminal-parameters)
(terminal-parameter-p, terminal-parameter, set-terminal-parameter)
(terminal-handle-delete-frame, terminal-getenv, terminal-getenv)
(with-terminal-environment): Move to termdev.el.
* lisp/loadup.el: Load termdev as well.
* lisp/Makefile.in (lisp, shortlisp): Add termdev.elc.
* lisp/makefile.MPW (shortlisp): Ditto.
* lisp/ebuff-menu.el (electric-buffer-menu-mode-map): Bind C-z to
`suspend-frame', not `suspend-emacs'.
* lisp/echistory.el (electric-history-map): Ditto.
* lisp/ebrowse.el (ebrowse-electric-list-mode-map): Ditto.
* lisp/ebrowse.el (ebrowse-electric-position-mode-map): Ditto.
* lisp/startup.el (normal-splash-screen): Use `save-buffers-kill-display'
instead of `save-buffers-kill-emacs'.
* lisp/x-win.el (x-initialize-window-system): Add 'global-ok option to
`terminal-getenv'.
* src/term.c (suspend-tty): Update doc string.
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-456
| author | Karoly Lorentey <lorentey@elte.hu> |
|---|---|
| date | Thu, 22 Dec 2005 21:02:45 +0000 |
| parents | 573105015a96 |
| children | fe870a866ce7 |
comparison
equal
deleted
inserted
replaced
| 83415:d2c799f58129 | 83416:4513d8dcdfd5 |
|---|---|
| 87 fine. Emacsclient has been extended to support opening new tty and X | 87 fine. Emacsclient has been extended to support opening new tty and X |
| 88 frames. It has been changed open new Emacs frames by default. | 88 frames. It has been changed open new Emacs frames by default. |
| 89 | 89 |
| 90 The multi-tty branch has been scheduled for inclusion in the next | 90 The multi-tty branch has been scheduled for inclusion in the next |
| 91 major release of Emacs (version 23). I expect the merge into the | 91 major release of Emacs (version 23). I expect the merge into the |
| 92 development trunk to occur sometime during next year (2005), after the | 92 development trunk to occur sometime during next year (2006), after the |
| 93 merge of the Unicode branch. | 93 merge of the Unicode branch. |
| 94 | 94 |
| 95 Tested on GNU/Linux, Solaris 8, FreeBSD and OpenBSD. Please let me | 95 Tested on GNU/Linux, Solaris 8, FreeBSD and OpenBSD. Please let me |
| 96 know if you succeed or fail to use it on other platforms---I'll have a | 96 know if you succeed or fail to use it on other platforms---I'll have a |
| 97 few tricky test cases for you. | 97 few tricky test cases for you. |
| 138 new Emacs features on these systems, but the multi-tty | 138 new Emacs features on these systems, but the multi-tty |
| 139 branch changed a few low-level interfaces, and the | 139 branch changed a few low-level interfaces, and the |
| 140 system-dependent source files need to be adapted | 140 system-dependent source files need to be adapted |
| 141 accordingly. The changes are mostly trivial, so almost | 141 accordingly. The changes are mostly trivial, so almost |
| 142 anyone can help, if only by compiling the branch and | 142 anyone can help, if only by compiling the branch and |
| 143 reporting the compiler errors. (It is not worth to do this | 143 reporting the compiler errors. |
| 144 yet, though.) | |
| 145 | 144 |
| 146 | 145 |
| 147 HOW TO GET THE BRANCH | 146 HOW TO GET THE BRANCH |
| 148 --------------------- | 147 --------------------- |
| 149 | 148 |
| 150 The branch uses GNU Arch (http://www.gnuarch.org) for version control. | 149 The branch uses Bazaar 1 (http://bazaar.canonical.com) for version control. |
| 151 | 150 |
| 152 Retrieving the latest version of the branch: | 151 Retrieving the latest version of the branch: |
| 153 | 152 |
| 154 tla register-archive -f http://lorentey.hu/arch/2004/ | 153 baz register-archive -f http://aszt.inf.elte.hu/~lorentey/mirror/arch/2004 |
| 155 tla get lorentey@elte.hu--2004/emacs--multi-tty <directory> | 154 baz get lorentey@elte.hu--2004/emacs--multi-tty <directory> |
| 156 | 155 |
| 157 This incantation uses my private archive mirror that is hosted on a | 156 This incantation uses an archive mirror that is hosted on a |
| 158 relatively low-bandwidth site; if you are outside Hungary, you will | 157 high-bandwidth site. Please note that on average there is a two-hour |
| 159 probably want to you use my secondary mirror: (Note that the -f option | 158 delay for commits to arrive on this mirror. My primary mirror is on the |
| 160 will overwrite the archive location if you have previously registered | 159 low-bandwidth http://lorentey.hu/ site: |
| 161 the Hungarian one.) | 160 |
| 162 | 161 baz register-archive -f http://lorentey.hu/arch/2004/ |
| 163 tla register-archive -f http://aszt.inf.elte.hu/~lorentey/mirror/arch/2004 | 162 baz get lorentey@elte.hu--2004/emacs--multi-tty <directory> |
| 164 tla get lorentey@elte.hu--2004/emacs--multi-tty <directory> | 163 |
| 165 | 164 This is "instantly" updated, but very slow from outside Hungary. |
| 166 http://aszt.inf.elte.hu/~lorentey/mirror/arch/2004 | 165 (By "instantly" I mean as soon as I connect the notebook I work on to |
| 166 a network. It could take days.) | |
| 167 | 167 |
| 168 The Arch supermirror provides mirroring services for all public Arch | 168 The Arch supermirror provides mirroring services for all public Arch |
| 169 repositories. We have a mirror there, too, if you prefer. | 169 repositories. We have a mirror there, too, if you prefer. |
| 170 | 170 |
| 171 tla register-archive -f http://mirrors.sourcecontrol.net/lorentey%40elte.hu--2004 | 171 baz register-archive -f http://mirrors.sourcecontrol.net/lorentey%40elte.hu--2004 |
| 172 tla get lorentey@elte.hu--2004/emacs--multi-tty <directory> | 172 baz get lorentey@elte.hu--2004/emacs--multi-tty <directory> |
| 173 | 173 |
| 174 My GPG key id is 0FB27A3F; it is available from | 174 My GPG key id is 0FB27A3F; it is available from |
| 175 hkp://wwwkeys.eu.pgp.net/, or from my homepage at | 175 hkp://wwwkeys.eu.pgp.net/, or from my homepage at |
| 176 http://lorentey.hu/rolam/gpg.html) | 176 http://lorentey.hu/rolam/gpg.html) |
| 177 | 177 |
| 178 Don't worry if the above checkout takes a few minutes to complete; | 178 Don't worry if the above checkout takes a few minutes to complete; |
| 179 once you have a source tree, updating it to the latest revision will | 179 once you have a source tree, updating it to the latest revision will |
| 180 be _much_ faster. Use the following command for the update: | 180 be _much_ faster. Use the following command for the update: |
| 181 | 181 |
| 182 tla replay | 182 baz replay |
| 183 | 183 |
| 184 You can find more information about Arch on http://wiki.gnuarch.org/. | 184 You can find more information about Bazaar on |
| 185 It's a wonderful source control system, I highly recommend it. | 185 http://bazaar.canonical.com/. It's a distributed source control |
| 186 | 186 system that is somewhat less broken than competing projects. |
| 187 If you don't have tla, the branch has a homepage from which you can | 187 |
| 188 If you don't have Bazaar, the branch has a homepage from which you can | |
| 188 download conventional patches against Emacs CVS HEAD: | 189 download conventional patches against Emacs CVS HEAD: |
| 189 | 190 |
| 190 http://lorentey.hu/project/emacs.html | 191 http://lorentey.hu/project/emacs.html |
| 192 | |
| 193 I suggest you use Bazaar whenever feasible. | |
| 194 | |
| 191 | 195 |
| 192 DEBIAN PACKAGES | 196 DEBIAN PACKAGES |
| 193 --------------- | 197 --------------- |
| 194 | 198 |
| 195 If you run Debian, or a distribution based on Debian, you are welcome | 199 If you run Debian, or a distribution based on Debian, you are welcome |
| 242 separate terminals. The new frame is closed automatically when you | 246 separate terminals. The new frame is closed automatically when you |
| 243 finish editing the specified files (C-x #), but delete-frame (C-x 5 0) | 247 finish editing the specified files (C-x #), but delete-frame (C-x 5 0) |
| 244 also works. Of course, you can create frames on more than two tty | 248 also works. Of course, you can create frames on more than two tty |
| 245 devices. | 249 devices. |
| 246 | 250 |
| 247 Creating new frames on the same tty with C-x 5 2 works, and they | 251 Creating new frames on the same tty with C-x 5 2 (make-frame-command) |
| 248 behave the same way as in previous Emacs versions. If you exit emacs, | 252 works, and they behave the same way as in previous Emacs versions. If |
| 249 all terminals should be restored to their previous states. | 253 you exit emacs, all terminals should be restored to their previous |
| 254 states. | |
| 250 | 255 |
| 251 This is work in progress, and probably full of bugs. It is a good | 256 This is work in progress, and probably full of bugs. It is a good |
| 252 idea to run emacs from gdb, so that you'll have a live instance to | 257 idea to run emacs from gdb, so that you'll have a live instance to |
| 253 debug if something goes wrong. Please send me your bug reports on our | 258 debug if something goes wrong. Please send me your bug reports on our |
| 254 mailing list: multi-tty@lists.fnord.hu | 259 mailing list: multi-tty@lists.fnord.hu |
| 382 *** The new `initial-window-system' variable contains the | 387 *** The new `initial-window-system' variable contains the |
| 383 `window-system' value for the first frame. | 388 `window-system' value for the first frame. |
| 384 | 389 |
| 385 *** talk.el has been extended for multiple tty support. | 390 *** talk.el has been extended for multiple tty support. |
| 386 | 391 |
| 392 *** C-z now invokes `suspend-frame', C-x C-c now invokes | |
| 393 `save-buffers-kill-frame'. | |
| 387 | 394 |
| 388 * * * | 395 * * * |
| 389 | 396 |
| 390 (The rest of this file consists of my development notes and as such it | 397 (The rest of this file consists of my development notes and as such it |
| 391 is probably not very interesting for anyone else.) | 398 is probably not very interesting for anyone else.) |
| 392 | 399 |
| 393 THINGS TO DO | 400 THINGS TO DO |
| 394 ------------ | 401 ------------ |
| 402 | |
| 403 ** Search for `suspend-emacs' references and replace them with | |
| 404 `suspend-frame', if necessary. Ditto for `save-buffers-kill-emacs' | |
| 405 vs. `save-buffers-kill-display'. | |
| 395 | 406 |
| 396 ** Emacs crashes when a tty frame is resized so that there is no space | 407 ** Emacs crashes when a tty frame is resized so that there is no space |
| 397 for all its windows. (Tom Schutzer-Weissmann) | 408 for all its windows. (Tom Schutzer-Weissmann) |
| 398 | 409 |
| 399 ** Report GTK multi-display problems to GTK maintainers. For extra | 410 ** Report GTK multi-display problems to GTK maintainers. For extra |
