summaryrefslogtreecommitdiff
path: root/lisp/server.el
Commit message (Collapse)AuthorAgeFilesLines
...
| * ; Fix recent typos/wording in NEWS and server.elBasil L. Contovounesios2020-12-071-2/+2
| |
| * Ensure that new emacsclient frames has focusLars Ingebrigtsen2020-12-071-3/+3
| | | | | | | | | | | | | | * lisp/server.el (server-execute): Focus the frame here... (server-switch-buffer): Instead of here (bug#15469). This ensures that the frame has focus if Emacs is querying the user about something when opening a file (for instance "Revert from file?").
| * Allow inhibiting the instructions on how to close emacsclient framesLars Ingebrigtsen2020-12-071-5/+15
| | | | | | | | | | | | * doc/emacs/misc.texi (Invoking emacsclient): Document it. * lisp/server.el (server-client-instructions): New variable. (server-execute): Use it.
* | Merge branch 'master' into feature/pgtkYuuki Harano2020-11-291-1/+11
|\|
| * Fix up previous server exit directory deletionLars Ingebrigtsen2020-11-271-4/+9
| | | | | | | | | | * lisp/server.el (server-start): Only delete the server directory if it's in /tmp (bug#44644).
| * Delete the emacs-server directory upon Emacs exitLars Ingebrigtsen2020-11-241-1/+6
| | | | | | | | | | | | * lisp/server.el (server-start): Delete the server directory upon Emacs exit (bug#44644). This fixes the problem of /tmp/emacs0 directories being left behind when running an Emacs server as root.
* | emacsclient should use both of DISPLAY and WAYLAND_DISPLAY.Yuuki Harano2020-11-241-6/+11
|/ | | | | | | * lisp/server.el (server-create-window-system-frame): error out when not on a supported window * lib-src/emacsclient.c (decode_options): handle WALAND_DISPLAY on PGTK
* * lisp/server.el: Refactor frame creation functionsStefan Monnier2020-11-101-48/+41
| | | | | | | (server--create-frame): New function, extracted from `server-create-dumb-terminal-frame`. (server-create-window-system-frame, server-create-tty-frame): (server-create-dumb-terminal-frame): Use it.
* * lisp/server.el: Fix frame creation on dumb terminals (bug#25547)Eliza Velasquez2020-11-101-3/+26
| | | | | | | (server-create-dumb-terminal-frame): New function. (server-process-filter): Use it. (server-delete-client): Don't delete tty terminal when it's not exclusive to this client.
* Fix emacsclient -c foo.txt behaviour with many framesLars Ingebrigtsen2020-09-291-4/+13
| | | | | | | | * lisp/server.el (server-execute): Pass in whether we opened a new frame or not (bug#43645). (server-switch-buffer): Use this to switch to the requested buffer in the new frame if we have "emacsclient -c foo.txt", and retain the old behaviour if it's "emacsclient foo.txt".
* Use format-prompt in read-string calls (that have default values)Lars Ingebrigtsen2020-09-061-1/+2
| | | | | | | | | | | | | | * lisp/vc/vc-annotate.el (vc-annotate): * lisp/vc/log-edit.el (log-edit-comment-search-backward) (log-edit-comment-search-forward): * lisp/textmodes/rst.el (rst-insert-list-new-item): * lisp/server.el (server-force-delete): * lisp/mpc.el (mpc): * lisp/frame.el (set-frame-name): * lisp/emulation/cua-rect.el (cua-sequence-rectangle): * lisp/cedet/semantic/symref/list.el (semantic-symref-regexp): * lisp/calendar/todo-mode.el (todo-read-time): Use `format-prompt' in `read-string' calls that have defaults.
* Ensure that server-socket-dir doesn't have "//" in the pathLars Ingebrigtsen2020-08-131-4/+5
| | | | | | * lisp/server.el (server-socket-dir): Use expand-file-name to avoid "//" in the path name (if either XDG_RUNTIME_DIR or TMPDIR ends in a slash) (bug#18658).
* Add 'nofollow' flag to set-file-modes etc.Paul Eggert2020-02-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This avoids some race conditions (Bug#39683). E.g., if some other program changes a file to a symlink between the time Emacs creates the file and the time it changes the file’s permissions, using the new flag prevents Emacs from inadvertently changing the permissions of a victim in some completely unrelated directory. * admin/merge-gnulib (GNULIB_MODULES): Add fchmodat. * doc/lispref/files.texi (Testing Accessibility, Changing Files): * doc/lispref/os.texi (File Notifications): * etc/NEWS: Adjust documentation accordingly. * lib/chmodat.c, lib/fchmodat.c, lib/lchmod.c, m4/fchmodat.m4: * m4/lchmod.m4: New files, copied from Gnulib. * lib/gnulib.mk.in: Regenerate. * lisp/dired-aux.el (dired-do-chmod): * lisp/doc-view.el (doc-view-make-safe-dir): * lisp/emacs-lisp/autoload.el (autoload--save-buffer): * lisp/emacs-lisp/bytecomp.el (byte-compile-file): * lisp/eshell/em-pred.el (eshell-pred-file-mode): * lisp/files.el (backup-buffer-copy, copy-directory): * lisp/gnus/mail-source.el (mail-source-movemail): * lisp/gnus/mm-decode.el (mm-display-external): * lisp/gnus/nnmail.el (nnmail-write-region): * lisp/net/tramp-adb.el (tramp-adb-handle-file-local-copy) (tramp-adb-handle-write-region): * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-directly): * lisp/net/tramp-sudoedit.el (tramp-sudoedit-handle-write-region): * lisp/net/tramp.el (tramp-handle-write-region) (tramp-make-tramp-temp-file): * lisp/server.el (server-ensure-safe-dir): * lisp/url/url-util.el (url-make-private-file): When getting or setting file modes, avoid following symbolic links when the file is not supposed to be a symbolic link. * lisp/doc-view.el (doc-view-make-safe-dir): Omit no-longer-needed separate symlink test. * lisp/gnus/gnus-util.el (gnus-set-file-modes): * lisp/net/tramp.el (tramp-handle-file-modes): * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-set-file-modes): * src/fileio.c (symlink_nofollow_flag): New function. (Ffile_modes, Fset_file_modes): Support an optional FLAG arg. All C callers changed. * lisp/net/ange-ftp.el (ange-ftp-set-file-modes): * lisp/net/tramp-adb.el (tramp-adb-handle-set-file-modes): * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-modes): * lisp/net/tramp-smb.el (tramp-smb-handle-set-file-modes): * lisp/net/tramp-sudoedit.el (tramp-sudoedit-handle-set-file-modes): Accept an optional FLAG arg that is currently ignored, and add a FIXME comment for it. * m4/gnulib-comp.m4: Regenerate.
* Update copyright year to 2020Paul Eggert2020-01-011-1/+1
| | | | Run "TZ=UTC0 admin/update-copyright $(git ls-files)".
* Fix documentation of '-position' server commandEli Zaretskii2019-12-071-2/+2
| | | | | * lisp/server.el (server-process-filter): Fix the description of "-position" command to match the reality. (Bug#38443)
* Revert "Don't flash previous buffer when connecting with emacsclient"Eli Zaretskii2019-11-071-50/+39
| | | | | | This reverts commit 49fc040077b33bd1e78ee425575e76329b772a41. It turns out that the fix for a minor aesthetical annoyance caused much more serious bugs: bug#31038, bug#35726, Bug#37097,
* Fix some file-mode racesPaul Eggert2019-09-161-3/+3
| | | | | | | | | * lisp/emacs-lisp/autoload.el (autoload-ensure-file-writeable): * lisp/files.el (after-find-file): * lisp/gnus/gnus-start.el (gnus-dribble-read-file): * lisp/htmlfontify.el (hfy-copy-and-fontify-file): * lisp/server.el (server-ensure-safe-dir): Avoid a race when getting file permissions.
* ; (server-goto-toplevel): Fix comment to reflect the code.Eli Zaretskii2019-09-071-1/+0
|
* Allow client connections when in recursive-editEli Zaretskii2019-09-071-1/+1
| | | | | | | * lisp/server.el (server-goto-toplevel): Check minibuffer depth, not recursion depth. This avoids exiting recursive-edit if a client connection is accepted during recursive-edit. (Bug#37176)
* * lisp/server.el (server-ensure-safe-dir): Revert part of b663c8372495Stefan Monnier2019-07-181-10/+0
| | | | A non-cosmetic change that was mistakenly included.
* [PATCH 1/1] Pass frame-parameters to server-create-tty-frameMichael Shields2019-06-251-2/+3
| | | | | * lisp/server.el: Pass frame-parameters when creating frames, even on a tty (bug#24147).
* Go back to "Maintainer: emacs-devel@gnu.org"Paul Eggert2019-05-251-0/+1
| | | | | | Restore lines saying "Maintainer: emacs-devel@gnu.org" when there is no special maintainer for a file. Although this wasn't documented it was common practice and removing the lines didn't have consensus.
* Fixes for "Maintainer:" and related linesPaul Eggert2019-05-191-1/+0
| | | | | | Mostly, this just removes "Maintainer: emacs-devel@gnu.org" lines, which are not that useful. It also cleans up and regularizes a few similar lines.
* Merge from origin/emacs-26Glenn Morris2019-05-141-1/+8
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 02bee78 Let dir locals for more specific modes override those from less b1235f9 Improve documentation of Hexl mode 32d1813 Fix description of (move-to-column <n> t) when column <n> is ... 0397b7c ; Fix smtpmail-stream-type docstring 7dab3ee Recognize single quote attribute values in nxml and sgml (Bug... e4cde42 Disable extra display of &#10; in nxml-mode (Bug#32897) ca14dd1 Fix nxml-get-inside (Bug#32003) e7ab351 Fix positioning client buffer as instructed by emacsclient # Conflicts: # lisp/files.el # lisp/textmodes/sgml-mode.el
| * Fix positioning client buffer as instructed by emacsclientEli Zaretskii2019-05-081-1/+8
| | | | | | | | | | | | | | * lisp/server.el (server-switch-buffer): Let-bind switch-to-buffer-preserve-window-point to nil when switching to the client buffer, when the client requested a specific position. (Bug#35602)
| * Improve documentation of 'server-name'Eli Zaretskii2019-01-041-1/+8
| | | | | | | | | | | | | | | | * doc/emacs/misc.texi (Emacs Server, TCP Emacs server) (emacsclient Options): * lisp/server.el (server-name): Document the usage of 'server-name' to specify the server file as an absolute file name. Do not merge to master. (Bug#33934)
* | * lisp/server.el: Cosmetic changesStefan Monnier2019-05-031-29/+24
| | | | | | | | | | Remove redundant :group args. (server-temp-file-regexp): Fix ^$ to \`\'.
* | Use lexical-binding by default for M-:, --eval, and *scratch*Stefan Monnier2019-04-251-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | * lisp/startup.el (command-line): Default to lexical-binding in *scratch*. (normal-no-mouse-startup-screen, command-line-1): Use startup--get-buffer-create-scratch. (command-line-1): * lisp/simple.el (eval-expression): * lisp/server.el (server-eval-and-print): Use lexical-binding to evaluate the expression. (server-execute): Use startup--get-buffer-create-scratch. * lisp/ielm.el (inferior-emacs-lisp-mode): Default to lexical-binding.
* | Avoid using obsolete accept-process-output argPaul Eggert2019-01-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/gnus/nnheader.el (nnheader-accept-process-output): * lisp/net/dns.el (dns-query): * lisp/net/imap.el (imap-wait-for-tag): * lisp/net/network-stream.el (network-stream-get-response): * lisp/net/pop3.el (pop3-accept-process-output): * lisp/obsolete/starttls.el (starttls-negotiate-gnutls) (starttls-open-stream-gnutls): * lisp/server.el (server-eval-at): * lisp/textmodes/ispell.el (ispell-accept-output): Do not depend on the obsolete milliseconds argument of accept-process-output.
* | Improve documentation of 'server-name'Eli Zaretskii2019-01-041-1/+8
| | | | | | | | | | | | | | | | * doc/emacs/misc.texi (Emacs Server, TCP Emacs server) (emacsclient Options): * lisp/server.el (server-name): Document the usage of 'server-name' to specify the server file as an absolute file name. (Bug#33934)
* | Merge from origin/emacs-26Paul Eggert2018-12-311-1/+1
|\| | | | | | | | | | | 2fcf2df Fix copyright years by hand 26bed8b Update copyright year to 2019 2814292 Fix value of default frame height. (Bug#33921)
| * Update copyright year to 2019Paul Eggert2019-01-011-1/+1
| | | | | | | | Run 'TZ=UTC0 admin/update-copyright $(git ls-files)'.
* | emacsclient: prefer XDG_RUNTIME_DIR (Bug#33367)Paul Eggert2018-12-011-1/+4
| | | | | | | | | | | | | | | | | | | | * lib-src/emacsclient.c: Disable -Wformat-truncation=2, to avoid false alarms about the new snprintf calls. (local_sockname): New function. (set_local_socket): Use it. Prefer XDG_RUNTIME_DIR (if set) for location of socket directory. Avoid unnecessary memory allocation by using snprintf to destination. * lisp/server.el (server-socket-dir): Prefer XDG_RUNTIME_DIR if set.
* | Don't quote self-quoting pcase patternsMichael Heerdegen2018-10-301-16/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * admin/bzrmerge.el: * lisp/char-fold.el: * lisp/dired.el: * lisp/emacs-lisp/derived.el: * lisp/emacs-lisp/easy-mmode.el: * lisp/emacs-lisp/easymenu.el: * lisp/emacs-lisp/eieio-core.el: * lisp/emacs-lisp/package.el: * lisp/emacs-lisp/smie.el: * lisp/faces.el: * lisp/filesets.el: * lisp/progmodes/modula2.el: * lisp/progmodes/octave.el: * lisp/progmodes/opascal.el: * lisp/progmodes/perl-mode.el: * lisp/progmodes/prolog.el: * lisp/progmodes/ruby-mode.el: * lisp/progmodes/sh-script.el: * lisp/server.el: * lisp/subr.el: * lisp/textmodes/css-mode.el: * test/lisp/emacs-lisp/pcase-tests.el: Don't quote self-quoting 'pcase' patterns.
* | file-attributes cleanupPaul Eggert2018-09-231-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Mostly, this replaces magic-number calls like (nth 4 A) with more-informative calls like (file-attribute-access-time A). It also fixes some documentation and minor timestamp coding issues that I noticed while looking into this. * doc/lispref/files.texi (File Attributes): * lisp/files.el (file-attribute-size) (file-attribute-inode-number, file-attribute-device-number): * src/dired.c (Fdirectory_files_and_attributes) (Ffile_attributes): Mention which attributes must be integers, or nonnegative integers, as opposed to merely being numbers. Remove no-longer-correct talk about representing large integers as conses of integers. * doc/lispref/files.texi (Magic File Names): * doc/misc/gnus.texi (Low-level interface to the spam-stat dictionary): * lisp/autorevert.el (auto-revert-find-file-function) (auto-revert-tail-mode, auto-revert-handler): * lisp/auth-source.el (auth-source-netrc-parse): * lisp/cedet/ede/files.el (ede--inode-for-dir): * lisp/cedet/semantic/db-file.el (object-write): * lisp/cedet/semantic/db-mode.el (semanticdb-kill-hook): * lisp/cedet/semantic/db.el (semanticdb-needs-refresh-p) (semanticdb-synchronize): * lisp/cedet/srecode/table.el (srecode-mode-table-new): * lisp/desktop.el (desktop-save, desktop-read): * lisp/dired-aux.el (dired-file-set-difference) (dired-do-chxxx, dired-do-chmod, dired-copy-file-recursive) (dired-create-files): * lisp/dired.el (dired-directory-changed-p, dired-readin): * lisp/dos-w32.el (w32-direct-print-region-helper): * lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads) (autoload-find-destination, update-directory-autoloads): * lisp/emacs-lisp/shadow.el (load-path-shadows-same-file-or-nonexistent): * lisp/epg.el (epg--start, epg-wait-for-completion): * lisp/eshell/em-ls.el (eshell-ls-filetype-p) (eshell-ls-applicable, eshell-ls-size-string) (eshell-ls-file, eshell-ls-dir, eshell-ls-files) (eshell-ls-entries): * lisp/eshell/em-pred.el (eshell-predicate-alist) (eshell-pred-file-type, eshell-pred-file-links) (eshell-pred-file-size): * lisp/eshell/em-unix.el (eshell-shuffle-files, eshell/cat) (eshell-du-sum-directory, eshell/du): * lisp/eshell/esh-util.el (eshell-read-passwd) (eshell-read-hosts): * lisp/files.el (remote-file-name-inhibit-cache) (find-file-noselect, insert-file-1, dir-locals-find-file) (dir-locals-read-from-dir, backup-buffer) (file-ownership-preserved-p, copy-directory) (read-file-modes): * lisp/find-lisp.el (find-lisp-format): * lisp/gnus/gnus-agent.el (gnus-agent-unfetch-articles) (gnus-agent-read-agentview, gnus-agent-expire-group-1) (gnus-agent-request-article, gnus-agent-regenerate-group) (gnus-agent-update-files-total-fetched-for) (gnus-agent-update-view-total-fetched-for): * lisp/gnus/gnus-cache.el (gnus-cache-read-active) (gnus-cache-update-file-total-fetched-for) (gnus-cache-update-overview-total-fetched-for): * lisp/gnus/gnus-cloud.el (gnus-cloud-file-new-p): * lisp/gnus/gnus-score.el (gnus-score-score-files): * lisp/gnus/gnus-start.el (gnus-save-newsrc-file) (gnus-master-read-slave-newsrc): * lisp/gnus/gnus-sum.el (gnus-summary-import-article): * lisp/gnus/gnus-util.el (gnus-file-newer-than) (gnus-cache-file-contents): * lisp/gnus/mail-source.el (mail-source-delete-old-incoming) (mail-source-callback, mail-source-movemail): * lisp/gnus/nneething.el (nneething-create-mapping) (nneething-make-head): * lisp/gnus/nnfolder.el (nnfolder-read-folder): * lisp/gnus/nnheader.el (nnheader-file-size) (nnheader-insert-nov-file): * lisp/gnus/nnmail.el (nnmail-activate): * lisp/gnus/nnmaildir.el (nnmaildir--group-maxnum) (nnmaildir--new-number, nnmaildir--update-nov) (nnmaildir--scan, nnmaildir-request-scan) (nnmaildir-request-update-info) (nnmaildir-request-expire-articles): * lisp/gnus/nnmh.el (nnmh-request-list-1) (nnmh-request-expire-articles, nnmh-update-gnus-unreads): * lisp/gnus/nnml.el (nnml-request-expire-articles): * lisp/gnus/spam-stat.el (spam-stat-save, spam-stat-load) (spam-stat-process-directory, spam-stat-test-directory): * lisp/ido.el (ido-directory-too-big-p) (ido-file-name-all-completions): * lisp/image-dired.el (image-dired-get-thumbnail-image) (image-dired-create-thumb-1): * lisp/info.el (info-insert-file-contents): * lisp/ls-lisp.el (ls-lisp-insert-directory) (ls-lisp-handle-switches, ls-lisp-classify-file) (ls-lisp-format): * lisp/mail/blessmail.el: * lisp/mail/feedmail.el (feedmail-default-date-generator) (feedmail-default-message-id-generator): * lisp/mail/mailabbrev.el (mail-abbrevs-sync-aliases) (mail-abbrevs-setup): * lisp/mail/mspools.el (mspools-size-folder): * lisp/mail/rmail.el (rmail-insert-inbox-text): * lisp/mail/sendmail.el (sendmail-sync-aliases): * lisp/mh-e/mh-alias.el (mh-alias-tstamp): * lisp/net/ange-ftp.el (ange-ftp-parse-netrc) (ange-ftp-write-region, ange-ftp-file-newer-than-file-p) (ange-ftp-cf1): * lisp/net/eudcb-mab.el (eudc-mab-query-internal): * lisp/net/eww.el (eww-read-bookmarks): * lisp/net/netrc.el (netrc-parse): * lisp/net/newst-backend.el (newsticker--image-get): * lisp/nxml/rng-loc.el (rng-get-parsed-schema-locating-file): * lisp/obsolete/fast-lock.el (fast-lock-save-cache): * lisp/obsolete/vc-arch.el (vc-arch-state) (vc-arch-diff3-rej-p): * lisp/org/ob-eval.el (org-babel--shell-command-on-region): * lisp/org/org-attach.el (org-attach-commit): * lisp/org/org-macro.el (org-macro-initialize-templates): * lisp/org/org.el (org-babel-load-file) (org-file-newer-than-p): * lisp/org/ox-html.el (org-html-format-spec): * lisp/org/ox-publish.el (org-publish-find-date) (org-publish-cache-ctime-of-src): * lisp/pcmpl-gnu.el (pcomplete/tar): * lisp/pcmpl-rpm.el (pcmpl-rpm-packages): * lisp/play/cookie1.el (cookie-snarf): * lisp/progmodes/cmacexp.el (c-macro-expansion): * lisp/ps-bdf.el (bdf-file-mod-time): * lisp/server.el (server-ensure-safe-dir): * lisp/simple.el (shell-command-on-region): * lisp/speedbar.el (speedbar-item-info-file-helper) (speedbar-check-obj-this-line): * lisp/thumbs.el (thumbs-cleanup-thumbsdir): * lisp/time.el (display-time-mail-check-directory) (display-time-file-nonempty-p): * lisp/url/url-cache.el (url-is-cached): * lisp/url/url-file.el (url-file-asynch-callback): * lisp/vc/diff-mode.el (diff-delete-if-empty): * lisp/vc/pcvs-info.el (cvs-fileinfo-from-entries): * lisp/vc/vc-bzr.el (vc-bzr-state-heuristic): * lisp/vc/vc-cvs.el (vc-cvs-checkout-model) (vc-cvs-state-heuristic, vc-cvs-merge-news) (vc-cvs-retrieve-tag, vc-cvs-parse-status, vc-cvs-parse-entry): * lisp/vc/vc-hg.el (vc-hg--slurp-hgignore-1) (vc-hg--ignore-patterns-valid-p) (vc-hg--cached-dirstate-search, vc-hg-state-fast): * lisp/vc/vc-hooks.el (vc-after-save): * lisp/vc/vc-rcs.el (vc-rcs-workfile-is-newer): * lisp/vc/vc-svn.el (vc-svn-merge-news, vc-svn-parse-status): * lisp/vc/vc.el (vc-checkout, vc-checkin, vc-revert-file): * lisp/xdg.el (xdg-mime-apps): Prefer (file-attribute-size A) to (nth 7 A), and similarly for other file attributes accessors. * doc/lispref/files.texi (File Attributes): * doc/lispref/intro.texi (Version Info): * doc/lispref/os.texi (Idle Timers): * lisp/erc/erc.el (erc-string-to-emacs-time): * lisp/files.el (file-attribute-access-time) (file-attribute-modification-time) (file-attribute-status-change-time): * lisp/net/tramp-compat.el: (tramp-compat-file-attribute-modification-time) (tramp-compat-file-attribute-size): * src/buffer.c (syms_of_buffer): * src/editfns.c (Fget_internal_run_time): * src/fileio.c (Fvisited_file_modtime) (Fset_visited_file_modtime): * src/keyboard.c (Fcurrent_idle_time): * src/process.c (Fprocess_attributes): Defer implementation details about timestamp format to the section that talks about timestamp format, to make it easier to change the documentation later if timestamp formats are extended. * lisp/gnus/gnus-util.el (gnus-file-newer-than): * lisp/speedbar.el (speedbar-check-obj-this-line): * lisp/vc/vc-rcs.el (vc-rcs-workfile-is-newer): Prefer time-less-p to doing it by hand. * lisp/ls-lisp.el (ls-lisp-format): Inode numbers are no longer conses. * lisp/vc/vc-bzr.el (vc-bzr-state-heuristic): Use eql, not eq, to compare integers that might be bignums. * lisp/org/ox-publish.el (org-publish-cache-ctime-of-src): Prefer float-time to doing time arithmetic by hand.
* | Handle non-error signals in emacsclient --eval (Bug#10989)Noam Postavsky2018-09-041-1/+1
| | | | | | | | | | * lisp/server.el (server-process-filter): Handle any signal, not just errors.
* | Optionally add argument description in minor mode DOC (bug#10754)John Shahid2018-07-011-3/+0
| | | | | | | | | | | | | | | | | | | | | | Add a paragraph to minor mode's docstring documenting the mode's ARG usage if the supplied docstring doesn't already contain the word "ARG". * easy-mmode.el (easy-mmode--arg-docstring): New const. (easy-mmode--arg-docstring): New function. (define-minor-mode): Use them. Remove argument documentation from all minor modes.
* | Respect s-s-b-default-predicate when killing terminalJoão Távora2018-06-271-4/+6
| | | | | | | | | | | | | | Fixes: Bug#31951 * lisp/server.el (server-save-buffers-kill-terminal): Only pass PRED=t to save-some-bufers if ARG in non-nil.
* | Merge from origin/emacs-26Glenn Morris2018-06-231-2/+9
|\| | | | | | | | | | | | | | | | | bbc9d37 (origin/emacs-26) Fix previous change in minibuffer-default-a... 7caeef1 * src/editfns.c (Fformat): Make %x easier to spot in doc stri... ecc29fb Improve responsiveness while in 'replace-buffer-contents' 8182d64 Improve documentation of 'server-start' and friends decdfed Clarify wording about functions' argument lists 5abac8b * lisp/doc-view.el: Fix typos in the commentary. (Bug#31937)
| * Improve documentation of 'server-start' and friendsEli Zaretskii2018-06-231-2/+9
| | | | | | | | | | | | * lisp/server.el (server-start, server-running-p): Document how to reliably check that the current Emacs process started the server. (Bug#31859)
* | Improve support for desktop restoration in daemon modeEli Zaretskii2018-03-101-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/server.el (server-after-make-frame-hook): New hook. (server-execute): Call it after creating a new frame or before switching to a buffer shown in a client frame. (Bug#30421) * doc/emacs/misc.texi (Saving Emacs Sessions): Adjust advice for restoring desktop in daemon mode to the new hook. * doc/lispref/frames.texi (Creating Frames, Standard Hooks): Document server-after-make-frame-hook. * etc/NEWS: Mention server-after-make-frame-hook.
* | Don't flash previous buffer when connecting with emacsclientAaron Jensen2018-02-161-39/+49
| | | | | | | | | | | | | | | | * lisp/server.el (server-execute): Accept lambda for creating frame rather than frame. Ensure newly created tty frame initially shows the correct buffer. (server-process-filter): Pass a lambda to server-execute to create a frame. (Bug#24218)
* | Finish renaming to internal--daemon-socknamePaul Eggert2018-02-121-5/+5
| | | | | | | | | | | | | | * doc/lispref/processes.texi (Misc Network): Omit discussion of internal--daemon-sockname, as non-Emacs code shouldn't rely on it. * src/process.c (syms_of_process): Rename internal-daemon-sockname to internal--daemon-sockname. All uses changed.
* | Rename internal--external-sockname and document (Bug#24218)Matthew Leach2018-02-121-5/+5
| | | | | | | | | | | | | | * lisp/server.el: Rename `internal--external-sockname' to `internal-daemon-sockname'. * src/process.c: Likewise. * doc/lispref/processes.texi: Document `internal-daemon-sockname'.
* | Minor cleanups for server-name fix (Bug#24218)Paul Eggert2018-02-121-12/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/server.el (server--external-socket-initialized): Rename from server-external-socket-initialised, since it should be private and Emacs uses American spelling. All uses changed. * src/emacs.c, src/lisp.h: Revert previous changes, as the initialization is now done in src/process.c, which already includes the relevant files. * src/process.c (union u_sockaddr): Move decl to top level. (external_sock_name, Fget_external_sockname): Remove, replacing with Vinternal__external_sockname. All uses changed. (init_process_emacs): Deduce socket name ourselves rather than have main.c do it. Use conv_sockaddr_to_lisp instead of doing it by hand. Conditionalize it on HAVE_GETSOCKNAME.
* | Fix `server-name' and `server-socket-dir' for (Bug#24218)Matthew Leach2018-02-121-20/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/server.el: (server-external-socket-initialised): New (server-name): Compute server name from `get-external-sockname'. (server-socket-dir): Compute socket dir from `get-external-sockname'. (server-start): Don't check for existing server when an uninitialised external socket has been passed to Emacs. * src/emacs.c: (main): Obtain socket name via getsockname and pass to `init_process_emacs'. * src/lisp.h: (init_process_emacs): Add second parameter. * src/process.c: (external_sock_name): New. (get-external-sockname): New. (init_process_emacs): Set `external_sock_name' to `sockname' parameter.
* | Replace (default-value 'enable-multibyte-characters) with tStefan Monnier2018-01-251-3/+2
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | Since Emacs-24, (default-value 'enable-multibyte-characters) can't be changed any more, so we can remove all code which checks this value. * lisp/x-dnd.el (x-dnd-handle-file-name): * lisp/w32-fns.el (w32-set-default-process-coding-system): * lisp/textmodes/ispell.el (ispell-send-string): * lisp/term/internal.el (dos-codepage-setup): * lisp/tar-mode.el (tar-header-block-tokenize, tar--extract): * lisp/startup.el (command-line): * lisp/server.el (server-process-filter): * lisp/net/browse-url.el (browse-url-file-url): * lisp/menu-bar.el (menu-bar-options-menu, menu-bar-describe-menu): * lisp/mail/sendmail.el (mail-setup): * lisp/mail/rmail.el (rmail-mode, rmail-get-new-mail): * lisp/mail/rfc2047.el (rfc2047-encode-message-header): * lisp/mail/emacsbug.el (report-emacs-bug): * lisp/international/mule-diag.el (mule-diag): * lisp/files.el (find-file-noselect-1): * lisp/dos-fns.el (dos-set-default-process-coding-system): * lisp/arc-mode.el (archive-mode): * lisp/international/mule-cmds.el (mule-menu-keymap) (set-default-coding-systems, set-language-info) (set-language-environment, standard-display-european-internal) (set-locale-environment): Simplify code.
* Update copyright year to 2018Paul Eggert2018-01-011-1/+1
| | | | Run admin/update-copyright.
* Give a more sensible message if file-attributes fails (Bug#29070)Noam Postavsky2017-11-011-2/+4
| | | | | * lisp/server.el (server-ensure-safe-dir): Don't claim the directory is a file if we fail to get anything from `file-attributes'.
* Another fix for unsafe directory error message (Bug#865)Noam Postavsky2017-10-211-2/+3
| | | | | | * lisp/server.el (server-ensure-safe-dir): Put file owner's uid, not current user's for the wrong owner case. Show expanded file name in error message.