aboutsummaryrefslogtreecommitdiffstats
path: root/README.multi-tty
diff options
context:
space:
mode:
Diffstat (limited to 'README.multi-tty')
-rw-r--r--README.multi-tty35
1 files changed, 22 insertions, 13 deletions
diff --git a/README.multi-tty b/README.multi-tty
index 5abb9fafd15..ffa4b18ba81 100644
--- a/README.multi-tty
+++ b/README.multi-tty
@@ -67,11 +67,7 @@ For the NEWS file:
67 specify a terminal device (`tty' parameter) and a terminal type 67 specify a terminal device (`tty' parameter) and a terminal type
68 (`tty-type' parameter) to `make-terminal-frame'. `tty' must be a 68 (`tty-type' parameter) to `make-terminal-frame'. `tty' must be a
69 terminal device created by the updated emacsclient, or there will 69 terminal device created by the updated emacsclient, or there will
70 be problems with terminal input and window resizes. (The kernel 70 be problems with terminal input and window resizes.
71 notifies processes about pending input or terminal resizes only on
72 the controlling terminal, so we need emacsclient to sit on the real
73 terminal device, create SIGIO signals upon terminal input, and
74 forward SIGWINCH signals to us.)
75 71
76 You can test for the presence of multiple terminal support by 72 You can test for the presence of multiple terminal support by
77 testing for the `multi-tty' feature. 73 testing for the `multi-tty' feature.
@@ -160,6 +156,9 @@ DIARY OF CHANGES
160 terminal. Note that this means that multi-tty does not work with 156 terminal. Note that this means that multi-tty does not work with
161 raw ttys!) 157 raw ttys!)
162 158
159 (Update: This is bullshit. There is a read_input_waiting function,
160 extend that somehow.)
161
163-- Make make-terminal-frame look up the `tty' and `tty-type' frame 162-- Make make-terminal-frame look up the `tty' and `tty-type' frame
164 parameters from the currently selected terminal before the global 163 parameters from the currently selected terminal before the global
165 default. 164 default.
@@ -191,6 +190,13 @@ DIARY OF CHANGES
191 190
192 (Done.) 191 (Done.)
193 192
193-- Restore tty screen after closing the terminal.
194
195 (Done, we do the same as Emacs 21.2 for all terminals.)
196
197-- 'TERM=dumb src/emacs' does not restore the terminal state.
198
199 (Done.)
194 200
195THINGS TO DO 201THINGS TO DO
196------------ 202------------
@@ -216,35 +222,38 @@ THINGS TO DO
216 222
217** Export delete_tty to the Lisp environment, for emacsclient. 223** Export delete_tty to the Lisp environment, for emacsclient.
218 224
219** Restore tty screen after closing the terminal.
220
221** 'TERM=dumb src/emacs' does not restore the terminal state.
222
223** C-g should work on secondary terminals. 225** C-g should work on secondary terminals.
224 226
225** Make parts of struct tty_output accessible from Lisp. The device 227** Make parts of struct tty_output accessible from Lisp. The device
226 name and the type is sufficient. 228 name and the type is sufficient.
227 229
228** Find out why does Emacs abort when it wants to close its 230** Find out why does Emacs abort when it wants to close its
229 controlling tty. 231 controlling tty. Hint: chan_process[] array. Hey, maybe
232 noninterrupt-IO would work, too?
230 233
231** Implement support for starting an interactive Emacs session without 234** Implement support for starting an interactive Emacs session without
232 an initial frame. (The user would connect to it and open frames 235 an initial frame. (The user would connect to it and open frames
233 later, with emacsclient.) Not necessarily a good idea. 236 later, with emacsclient.) Not necessarily a good idea.
234 237
235** Support raw secondary terminals. (This one is tricky, SIGIO works 238** Support raw secondary terminals. (Note that SIGIO works only on
236 only on the controlling terminal. The emacsclient solution works 239 the controlling terminal.) Hint: extend read_input_waiting() for
237 nicely, so this is not that important anyway.) 240 multiple ttys and hopefully this will be fixed.
238 241
239** What does interrupt_input do? I tried to disable it for raw 242** What does interrupt_input do? I tried to disable it for raw
240 secondary tty support, but it does not seem to do anything useful. 243 secondary tty support, but it does not seem to do anything useful.
241 244
245** Issue with SIGIO: it needs to be disabled during redisplay. See if
246 fcntl() kernel behaviour could be emulated by emacsclient.
247
242** Move optimalization parameters (costs) from union output_data to 248** Move optimalization parameters (costs) from union output_data to
243 a backend-neutral per-device structure. 249 a backend-neutral per-device structure.
244 250
245** Find out the best way to support suspending Emacs with multiple 251** Find out the best way to support suspending Emacs with multiple
246 ttys. 252 ttys.
247 253
254** Deal with SIGHUP in Emacs and in emacsclient. (After this, the
255 server-frames may be removed from server.el.)
256
248** Do tty output through term_hooks, like all other display backends. 257** Do tty output through term_hooks, like all other display backends.
249 258
250** Fix X support. 259** Fix X support.