Mercurial > emacs
view etc/emacs.csh @ 47612:2d55f7e8ff64
Use built-in network primitives.
(server-program, server-previous-string): Remove.
(server-previous-strings): New var.
(server-socket-name): New var.
(server-log): Minor change to the output format.
(server-sentinel): Clean up global state when a client disconnects.
(server-unquote-arg): New fun.
(server-start): Use server-socket-name and make-network-process.
(server-process-filter): Now talks to the clients directly.
Normalize file name after unquoting and decoding.
(server-buffer-done): Just close the connection.
(server-switch-buffer): Handle the case where all windows are
dedicated or minibuffers.
author | Stefan Monnier <monnier@iro.umontreal.ca> |
---|---|
date | Wed, 25 Sep 2002 19:54:13 +0000 |
parents | e96ffe544684 |
children | 695cf19ef79e |
line wrap: on
line source
# This defines a csh command named `edit' which resumes an # existing Emacs or starts a new one if none exists. # One way or another, any arguments are passed to Emacs to specify files # (provided you have loaded `resume.el'). # - Michael DeCorte # These are the possible values of $whichjob # 1 = new ordinary emacs (the -nw is so that it doesn't try to do X) # 2 = resume emacs # 3 = new emacs under X (-i is so that you get a reasonable icon) # 4 = resume emacs under X # 5 = new emacs under suntools # 6 = resume emacs under suntools # 7 = new emacs under X and suntools - doesn't make any sense, so use X # 8 = resume emacs under X and suntools - doesn't make any sense, so use X set EMACS_PATTERN="^\[[0-9]\] . Stopped ............ $EMACS" alias edit 'set emacs_command=("emacs -nw \!*" "fg %emacs" "emacs -i \!* &"\ "emacsclient \!* &" "emacstool \!* &" "emacsclient \!* &" "emacs -i \!* &"\ "emacsclient \!* &") ; \ jobs >! $HOME/.jobs; grep "$EMACS_PATTERN" < $HOME/.jobs >& /dev/null; \ @ isjob = ! $status; \ @ whichjob = 1 + $isjob + $?DISPLAY * 2 + $?WINDOW_PARENT * 4; \ test -S ~/.emacs_server && emacsclient \!* \ || echo `pwd` \!* >! ~/.emacs_args && eval $emacs_command[$whichjob]'