1 diff -ur emacs-20.5/lib-src/ChangeLog emacs-hanwen/lib-src/ChangeLog
2 --- emacs-20.5/lib-src/ChangeLog Fri Dec 10 17:25:36 1999
3 +++ emacs-hanwen/lib-src/ChangeLog Sun Jul 16 23:00:54 2000
5 +2000-07-16 Han-Wen Nienhuys <hanwen@cs.uu.nl>
7 + * emacsclient.c: Added support for +LINE:COLUMN style arguments.
9 1999-12-04 Gerd Moellmann <gerd@gnu.org>
11 * Version 20.5 released.
12 Only in emacs-hanwen/lib-src: ChangeLog~
13 diff -ur emacs-20.5/lib-src/emacsclient.c emacs-hanwen/lib-src/emacsclient.c
14 --- emacs-20.5/lib-src/emacsclient.c Wed Nov 3 14:12:46 1999
15 +++ emacs-hanwen/lib-src/emacsclient.c Sun Jul 16 22:10:35 2000
27 char *p = argv[i] + 1;
28 - while (*p >= '0' && *p <= '9') p++;
29 + while (isdigit (*p) || *p == ':') p++;
31 fprintf (out, "%s/", quote_file_name (cwd));
34 if (*modified_arg == '+')
36 char *p = modified_arg + 1;
37 - while (*p >= '0' && *p <= '9') p++;
38 + while (isdigit (*p) || *p == ':')
43 Only in emacs-hanwen/lib-src: emacsclient.c~
44 diff -ur emacs-20.5/lib-src/emacsserver.c emacs-hanwen/lib-src/emacsserver.c
45 --- emacs-20.5/lib-src/emacsserver.c Mon Feb 22 21:44:14 1999
46 +++ emacs-hanwen/lib-src/emacsserver.c Sun Jul 16 22:09:52 2000
55 Only in emacs-hanwen/lib-src: emacsserver.c~
56 Only in emacs-hanwen/lib-src: suf.el~
57 diff -ur emacs-20.5/lisp/ChangeLog emacs-hanwen/lisp/ChangeLog
58 --- emacs-20.5/lisp/ChangeLog Fri Dec 10 17:25:02 1999
59 +++ emacs-hanwen/lisp/ChangeLog Sun Jul 16 23:00:04 2000
61 +2000-07-16 Han-Wen Nienhuys <hanwen@cs.uu.nl>
63 + * server.el (server-process-filter,server-visit-files): add support for "LINE:COLUMN"
64 + style emacsclient calls.
66 1999-12-04 Gerd Moellmann <gerd@gnu.org>
68 * Version 20.5 released.
69 Only in emacs-hanwen/lisp: ChangeLog~
70 diff -ur emacs-20.5/lisp/server.el emacs-hanwen/lisp/server.el
71 --- emacs-20.5/lisp/server.el Sat Mar 13 01:20:25 1999
72 +++ emacs-hanwen/lisp/server.el Sun Jul 16 23:04:41 2000
74 default-file-name-coding-system)))
80 ;; Remove this line from STRING.
81 (setq string (substring string (match-end 0)))
82 (if (string-match "^Error: " request)
84 (setq request (substring request (match-end 0)))
85 (if (string-match "\\`-nowait" arg)
87 - (if (string-match "\\`\\+[0-9]+\\'" arg)
88 - ;; ARG is a line number option.
89 - (setq lineno (read (substring arg 1)))
91 + ;; ARG is a line number option.
92 + ((string-match "\\`\\+[0-9]+\\'" arg)
93 + (setq lineno (read (substring arg 1)))
95 + ;; ARG is line number / column option.
96 + ((string-match "\\`\\+[0-9]+:[0-9]+\\'" arg)
97 + (setq lineno (read (substring arg 1 (string-match ":" arg))))
98 + (setq columnno (read (substring arg (+ 1 (string-match ":" arg)))))
101 ;; ARG is a file name.
102 ;; Collapse multiple slashes to single slashes.
103 (setq arg (command-line-normalize-file-name arg))
106 (setq arg (decode-coding-string arg coding-system)))
108 - (cons (list arg lineno)
109 + (cons (list arg lineno columnno)
111 - (setq lineno 1)))))
115 (server-visit-files files client nowait)
116 ;; CLIENT is now a list (CLIENTNUM BUFFERS...)
119 ;; Save for later any partial line that remains.
120 (setq server-previous-string string))
124 (defun server-visit-files (files client &optional nowait)
125 "Finds FILES and returns the list CLIENT with the buffers nconc'd.
126 -FILES is an alist whose elements are (FILENAME LINENUMBER).
127 +FILES is an alist whose elements are (FILENAME LINENUMBER COLUMNNUMBER).
128 NOWAIT non-nil means this client is not waiting for the results,
129 so don't mark these buffers specially, just visit them normally."
130 ;; Bind last-nonmenu-event to force use of keyboard, not mouse, for queries.
132 (set-buffer (find-file-noselect filen))
133 (run-hooks 'server-visit-hook)))
134 (goto-line (nth 1 (car files)))
135 + (move-to-column (nth 2 (car files)))
137 (setq server-buffer-clients
138 (cons (car client) server-buffer-clients)))
140 (setq files (cdr files)))
142 (nconc client client-record)))
145 (defun server-buffer-done (buffer &optional for-killing)
146 "Mark BUFFER as \"done\" for its client(s).
147 Only in emacs-hanwen/lisp: server.el.orig
148 Only in emacs-hanwen/lisp: server.el~