From: Han-Wen Nienhuys Date: Sat, 28 Oct 2006 21:06:26 +0000 (+0200) Subject: emacsclient too. X-Git-Tag: release/2.10.0-2~47 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=ce134047181514ea0209630752d736859393b1ca;p=lilypond.git emacsclient too. --- diff --git a/elisp/emacsclient.patch b/elisp/emacsclient.patch new file mode 100644 index 0000000000..e2df3ede6b --- /dev/null +++ b/elisp/emacsclient.patch @@ -0,0 +1,148 @@ +diff -ur emacs-20.5/lib-src/ChangeLog emacs-hanwen/lib-src/ChangeLog +--- emacs-20.5/lib-src/ChangeLog Fri Dec 10 17:25:36 1999 ++++ emacs-hanwen/lib-src/ChangeLog Sun Jul 16 23:00:54 2000 +@@ -1,3 +1,7 @@ ++2000-07-16 Han-Wen Nienhuys ++ ++ * emacsclient.c: Added support for +LINE:COLUMN style arguments. ++ + 1999-12-04 Gerd Moellmann + + * Version 20.5 released. +Only in emacs-hanwen/lib-src: ChangeLog~ +diff -ur emacs-20.5/lib-src/emacsclient.c emacs-hanwen/lib-src/emacsclient.c +--- emacs-20.5/lib-src/emacsclient.c Wed Nov 3 14:12:46 1999 ++++ emacs-hanwen/lib-src/emacsclient.c Sun Jul 16 22:10:35 2000 +@@ -27,6 +27,7 @@ + #undef close + #undef signal + ++#include + #include + #include + #ifdef STDC_HEADERS +@@ -323,7 +324,7 @@ + if (*argv[i] == '+') + { + char *p = argv[i] + 1; +- while (*p >= '0' && *p <= '9') p++; ++ while (isdigit (*p) || *p == ':') p++; + if (*p != 0) + fprintf (out, "%s/", quote_file_name (cwd)); + } +@@ -466,7 +467,8 @@ + if (*modified_arg == '+') + { + char *p = modified_arg + 1; +- while (*p >= '0' && *p <= '9') p++; ++ while (isdigit (*p) || *p == ':') ++ p++; + if (*p != 0) + need_cwd = 1; + } +Only in emacs-hanwen/lib-src: emacsclient.c~ +diff -ur emacs-20.5/lib-src/emacsserver.c emacs-hanwen/lib-src/emacsserver.c +--- emacs-20.5/lib-src/emacsserver.c Mon Feb 22 21:44:14 1999 ++++ emacs-hanwen/lib-src/emacsserver.c Sun Jul 16 22:09:52 2000 +@@ -61,6 +61,7 @@ + #include + #include + ++ + #ifdef HAVE_UNISTD_H + #include + #endif +Only in emacs-hanwen/lib-src: emacsserver.c~ +Only in emacs-hanwen/lib-src: suf.el~ +diff -ur emacs-20.5/lisp/ChangeLog emacs-hanwen/lisp/ChangeLog +--- emacs-20.5/lisp/ChangeLog Fri Dec 10 17:25:02 1999 ++++ emacs-hanwen/lisp/ChangeLog Sun Jul 16 23:00:04 2000 +@@ -1,3 +1,8 @@ ++2000-07-16 Han-Wen Nienhuys ++ ++ * server.el (server-process-filter,server-visit-files): add support for "LINE:COLUMN" ++ style emacsclient calls. ++ + 1999-12-04 Gerd Moellmann + + * Version 20.5 released. +Only in emacs-hanwen/lisp: ChangeLog~ +diff -ur emacs-20.5/lisp/server.el emacs-hanwen/lisp/server.el +--- emacs-20.5/lisp/server.el Sat Mar 13 01:20:25 1999 ++++ emacs-hanwen/lisp/server.el Sun Jul 16 23:04:41 2000 +@@ -215,7 +215,8 @@ + default-file-name-coding-system))) + client nowait + (files nil) +- (lineno 1)) ++ (lineno 1) ++ (columnno 0)) + ;; Remove this line from STRING. + (setq string (substring string (match-end 0))) + (if (string-match "^Error: " request) +@@ -232,9 +233,17 @@ + (setq request (substring request (match-end 0))) + (if (string-match "\\`-nowait" arg) + (setq nowait t) +- (if (string-match "\\`\\+[0-9]+\\'" arg) +- ;; ARG is a line number option. +- (setq lineno (read (substring arg 1))) ++ (cond ++ ;; ARG is a line number option. ++ ((string-match "\\`\\+[0-9]+\\'" arg) ++ (setq lineno (read (substring arg 1))) ++ ) ++ ;; ARG is line number / column option. ++ ((string-match "\\`\\+[0-9]+:[0-9]+\\'" arg) ++ (setq lineno (read (substring arg 1 (string-match ":" arg)))) ++ (setq columnno (read (substring arg (+ 1 (string-match ":" arg))))) ++ ) ++ (t + ;; ARG is a file name. + ;; Collapse multiple slashes to single slashes. + (setq arg (command-line-normalize-file-name arg)) +@@ -253,9 +262,11 @@ + (if coding-system + (setq arg (decode-coding-string arg coding-system))) + (setq files +- (cons (list arg lineno) ++ (cons (list arg lineno columnno) + files)) +- (setq lineno 1))))) ++ (setq lineno 1) ++ (setq columnno 0) ++ ))))) + (server-visit-files files client nowait) + ;; CLIENT is now a list (CLIENTNUM BUFFERS...) + (or nowait +@@ -267,9 +278,11 @@ + ;; Save for later any partial line that remains. + (setq server-previous-string string)) + ++ ++ + (defun server-visit-files (files client &optional nowait) + "Finds FILES and returns the list CLIENT with the buffers nconc'd. +-FILES is an alist whose elements are (FILENAME LINENUMBER). ++FILES is an alist whose elements are (FILENAME LINENUMBER COLUMNNUMBER). + NOWAIT non-nil means this client is not waiting for the results, + so don't mark these buffers specially, just visit them normally." + ;; Bind last-nonmenu-event to force use of keyboard, not mouse, for queries. +@@ -297,6 +310,7 @@ + (set-buffer (find-file-noselect filen)) + (run-hooks 'server-visit-hook))) + (goto-line (nth 1 (car files))) ++ (move-to-column (nth 2 (car files))) + (if (not nowait) + (setq server-buffer-clients + (cons (car client) server-buffer-clients))) +@@ -304,6 +318,7 @@ + (setq files (cdr files))) + (set-buffer obuf)) + (nconc client client-record))) ++ + + (defun server-buffer-done (buffer &optional for-killing) + "Mark BUFFER as \"done\" for its client(s). +Only in emacs-hanwen/lisp: server.el.orig +Only in emacs-hanwen/lisp: server.el~