* lib-src/emacsclient.c (get_current_dir_name): New function, copied here
from sysdep.c.
(main): Use it to send over the current directory.
* lisp/server.el (server-process-filter): Accept `-dir' command. Set
`default-directory' of the *scratch* buffer on connect, if applicable.
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-539
* lisp/server.el (server-buffer-clients): Doc update.
(server-delete-client): Handle quits in kill-buffer. Don't kill modified
buffers. Add extra logging.
(server-visit-files): Don't set `server-existing-buffer' if the buffer
already has other clients.
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-517
* lisp/server.el (server-process-filter): Switch to *scratch* immediately
after creating the frame, before evaluating any -evals.
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-510
* lisp/server.el (server-process-filter): Protect `display-splash-screen'
call in a condition-case. Explain why.
* src/callint.c (Fcall_interactively): Update call to
`temporarily_switch_to_single_kboard'.
* src/fns.c (Fy_or_n_p): Ditto.
* src/frame.c (Fdelete_frame): Remove unused variable `count'.
* src/keyboard.c (wrong_kboard_jmpbuf): Remove global variable.
* src/keyboard.c (read_char): Add wrong_kboard_jmpbuf parameter to allow
for recursive calls. Update longjmp invocations. Remember the
original current_kboard, and longjmp to `wrong_kboard_jmpbuf' when a
filter, timer or sentinel changes it. Comment out unnecessary calls to
`record_single_kboard_state' and `any_kboard_state'. Update recursive
calls.
* src/keyboard.c (read_key_sequence): Add `wrong_kboard_jmpbuf' local
variable. Update setjmp and read_char calls. Abort if
interrupted_kboard died in read_char.
* src/keyboard.c (any_kboard_state, single_kboard_state)
(record_single_kboard_state): Comment out obsolete functions.
(push_frame_kboard): Remove function.
(pop_kboard): Switch out of single_kboard mode if the
kboard has been deleted.
(temporarily_switch_to_single_kboard): Change first
parameter to a frame pointer. Throw an error when caller wants to
change kboards while in single_kboard mode.
(restore_kboard_configuration): Abort if pop_kboard changed
the kboard in single_kboard mode.
(Frecursive_edit): Switch to single_kboard mode only in
nested command loops.
(cmd_error, command_loop, command_loop_1, timer_check):
Comment out unnecessary call to `any_kboard_state' and
`record_single_kboard_state'.
* src/keyboard.c (delete_kboard): Exit single_kboard mode if we have just
deleted that kboard.
* src/keyboard.c (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
`fatal_error_signal'.
* src/keyboard.h (read_char, single_kboard_state)
(record_single_kboard_state): Remove.
(temporarily_switch_to_single_kboard): Update.
* src/lread.c: Include setjmp.h. Update declaration of `read_char'.
(read_filtered_event): Call `read_char' with a local
`wrong_kboard_jmpbuf'.
* src/minibuf.c (read_minibuf): Update call to
`temporarily_switch_to_single_kboard'.
* src/termchar.h (tty_display_info): Rename `previous_terminal_frame'
member to `previous_frame'.
* src/xdisp.c (redisplay_internal): Update references to
`previous_terminal_frame'.
(display_mode_line, Fformat_mode_line): Replace calls to
`push_frame_kboard' with `push_kboard'.
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-489
* lisp/frame.el (make-frame): Also inherit 'client parameter. Don't
override explicitly specified values with inherited ones.
* server.el (server-delete-client): Delete frames after deleting the tty.
Clear 'client parameter before deleting a frame.
* server.el (server-handle-delete-frame): Delete the client if this was
its last frame.
* startup.el (fancy-splash-default-action): Fix typo in comment.
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-484
* lisp/server.el (server-process-filter): Don't display the splash screen
when no frame was created.
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-479
* lisp/server.el (server-process-filter): Show the Emacs splash screen
and startup echo area message. Display the *scratch* buffer by
default.
* lisp/startup.el (fancy-splash-screens): Restore previous buffer, even
if it's *scratch*.
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-473
* src/callproc.c (child_setup, getenv_internal, Fgetenv_internal):
Store the local environment in a frame (not terminal) parameter.
Update doc strings.
(syms_of_callproc): Update doc strings.
(Qenvironment): Moved to frame.c.
* lisp/env.el (read-envvar-name, setenv, getenv, environment): Use frame
parameters to store the local environment, not terminal parameters.
* server.el (server-process-filter): Store the local environment in a
frame (not terminal) parameter. Do not try to decode environment
strings.
* lisp/frame.el (make-frame): Set up the 'environment frame parameter,
when needed.
* src/frame.c (Qenvironment): Move here from callproc.c.
(Fdelete_frame): Don't allow other frames to refer to a deleted frame
in their 'environment parameter.
(Fframe_with_environment): New function.
(syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
* frame.h (Qenvironment): Declare.
* lisp.h (Fframe_with_environment): EXFUN it.
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-467
* lisp/loadup.el: Don't load server.
* lisp/ldefs-boot.el: Update.
* lib-src/emacsclient.c (main): Send environment only when a new display
is created.
* lisp/server.el (server-save-buffers-kill-display): Add autoload
cookie. Move stuff not specific to server into `save-buffers-kill-display'.
* lisp/files.el (save-buffers-kill-display): New function.
(ctl-x-map): Bind it to C-x C-c.
* lisp/frame.el (terminal-getenv): New function.
* lisp/international/mule-cmds.el (set-locale-environment): Use it.
* lisp/frame.el (with-terminal-environment): New macro.
* lisp/server.el (server-getenv, server-with-client-environment): Remove.
(server-getenv-from, server-with-environment): New functions.
(server-process-filter): Change syntax of environment
variables. Put environment into terminal parameters, not client parameters.
* lisp/term/rxvt.el: Don't require server.
(rxvt-set-background-mode): Use terminal-getenv, not server-getenv.
* lisp/term/x-win.el (x-initialize-window-system): Ditto.
* lisp/term/xterm.el (terminal-init-xterm): Ditto.
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-443
* lisp/server.el (server-process-filter): Use a dummy client with --no-wait's X frames.
(server-save-buffers-kill-display): Explicitly delete frame after
deleting its client, in case it was a dummy.
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-412
* lisp/server.el (server-process-filter): In `-position LINE' handler,
don't ruin the request string until the line number is extracted. Log
opened files.
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-408
* lib-src/emacsclient.c (decode_options): Make --no-wait imply
--current-frame, except when it is the only option given. Make sure no
frame is opened when --current-frame is set.
(main): Pass --current-frame to server.el.
* lisp/server.el (server-process-filter): Handle -current-frame command.
Don't create frames when it is given. Don't bind X frames to the
client when we are in -no-wait mode.
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-407
* lisp/server.el: Use `device' instead of `display' or `display-id' in
variable and client parameter names.
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-383
* lisp/international/mule-cmds.el (set-locale-environment): Use
server-getenv, not getenv.
* lisp/server.el (server-handle-delete-frame): Add note on possible race
condition.
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-374
* lisp/server.el (server-process-filter): When processing -position
command, don't change the request string until the parameters are
extracted.
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-297
* lisp/server.el (server-kill-emacs-query-function): Fix typo in docs.
(server-save-buffers-kill-display): If emacsclient was started with a
list of filenames to edit, then offer to save only these buffers.
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-291
Patches applied:
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-79
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-80
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-81
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-82
Merge from gnus--rel--5.10
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-83
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-84
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-85
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-86
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-87
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-88
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-89
Update from CVS
* miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-90
Update from CVS: man/calc.texi: Add macro for LaTeX for info output.
* miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-12
Merge from emacs--cvs-trunk--0
* miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-13
Update from CVS
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-290
* lisp/frame.el (make-frame-on-display): Protect condition on
x-initialized when x-win.el is not loaded.
* lib-src/emacsclient.c (main): Handle -window-system-unsupported
command. Doc update.
* lisp/server.el (server-process-filter): Don't try to create an X frame
when Emacs does not support it. Improve logging.
* lisp/server.el (server-send-string): New function.
(server-handle-suspend-tty, server-process-filter): Use it.
* lisp/server.el (server-process-filter, server-unquote-arg)
(server-quote-arg): Doc updates.
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-286
* lisp/server.el (server-with-client-environment): New macro.
(server-process-filter): Temporarily set ncurses-related environment
variables to those of the client while creating a new tty frame.
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-257
* lisp/server.el: Doc updates.
(server-select-display): Remove (unused).
(server-handle-suspend-tty): Kill the client in case of errors from
process-send-string.
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-255
* lisp/server.el ("\C-x#"): Fix typo. (Thanks Han Boetes, Ted Morse and
Ami Fischman.)
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-235
* lisp/server.el (server-process-filter): Select buffers opened by
nowait clients, don't leave them buried under others. (Reported by
Dan Nicolaescu.)
(server-visit-files): Return list of buffers created. Update doc.
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-212