1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-04 11:00:45 -08:00
Commit graph

2543 commits

Author SHA1 Message Date
Eli Zaretskii
571532605b Rudimentary error handling for non-main threads
* src/thread.c (last_thread_error): New static variable.
(syms_of_threads): Staticpro it.
(record_thread_error, Fthread_last_error): New functions.
(syms_of_threads): Defsubr Fthread_last_error.

* doc/lispref/threads.texi (Basic Thread Functions): Document
thread-last-error.

* test/src/thread-tests.el (thread-errors, thread-signal-early)
(threads-condvar-wait): Test the values returned by
thread-last-error.
2017-01-18 18:00:16 +02:00
Philipp Stephani
512e9886be Add support for Unicode whitespace in [:blank:]
See Bug#25366.

* src/character.c (blankp): New function for checking Unicode
horizontal whitespace.
* src/regex.c (ISBLANK): Use 'blankp' for non-ASCII horizontal
whitespace.
(BIT_BLANK): New bit for range table.
(re_wctype_to_bit, execute_charset): Use it.
* test/lisp/subr-tests.el (subr-tests--string-match-p--blank): Add
unit test for [:blank:] character class.
* test/src/regex-tests.el (test): Adapt unit test.
* doc/lispref/searching.texi (Char Classes): Document new Unicode
behavior for [:blank:].
2017-01-06 20:12:48 +01:00
Paul Eggert
e6a782ee1a Update copyright year to 2017 in master
Run admin/update-copyright in the master branch.  This fixes files
that were not already fixed in the emacs-25 branch before it was
merged here.
2017-01-01 01:48:59 -08:00
Paul Eggert
bcf244ef9b Merge from origin/emacs-25
2e2a806 Fix copyright years by hand
5badc81 Update copyright year to 2017
2017-01-01 01:10:47 -08:00
Paul Eggert
61848d2da3 Merge from origin/emacs-25
697167b ; Improve wording of previous change in variables.texi
d7973e8 Document 'default-toplevel-value' and 'set-default-toplevel-v...
8b71826 Don't modify minibuffer variables globally
5b5e036 Revert to pre-25.1 behavior in ffap
19994a1 * lisp/ffap.el: Fix obsolete comment referencing ffap-bug.
3ace730 Attempt to fix 64-bit AIX build
f69bd79 Clarify usage of 'ediff-cleanup-hook' (Bug#24675)
c04ac8a Document that variable binding order is unspecified
272554a * lisp/desktop.el (desktop-buffers-not-to-save): Doc fix.
08de101 Fix M-x hints on Mac port
86a297a Work around reporting a dpi change in apply_xft_settings
cf1f985 ; lisp/skeleton.el (skeleton-insert): Fix typo in last change
9e1209d Amend the version number of CC Mode 5.33 -> 5.32.99.  Don't m...
88cdf14 Improve skeleton docstrings
2017-01-01 01:02:47 -08:00
Paul Eggert
2e2a806803 Fix copyright years by hand
These are dates that admin/update-copyright did not update, or
updated incorrectly.
2017-01-01 04:01:41 +00:00
Paul Eggert
5badc81c1c Update copyright year to 2017
Run admin/update-copyright.
2016-12-31 19:42:26 -08:00
Eli Zaretskii
697167b543 ; Improve wording of previous change in variables.texi
* doc/lispref/variables.texi (Default Value): Improve wording of
last change.
2016-12-27 09:10:30 +02:00
Eli Zaretskii
d7973e808d Document 'default-toplevel-value' and 'set-default-toplevel-value'
* doc/lispref/variables.texi (Default Value): Document
'default-toplevel-value' and 'set-default-toplevel-value'.
2016-12-26 19:10:49 +02:00
Philipp Stephani
c04ac8a319 Document that variable binding order is unspecified
* doc/lispref/variables.texi (Local Variables):
* cl.texi (Modify Macros): Document that binding order in 'let' and
'cl-letf' is unspecified.
2016-12-23 17:28:37 +01:00
Paul Eggert
73349822cb ; Spelling fixes 2016-12-22 10:14:11 -08:00
Noam Postavsky
c78f872a56 Clarify thread-signal semantics
* doc/lispref/threads.texi (Basic Thread Functions): Explain that the
thread will be signaled as soon as possible.
2016-12-12 21:21:14 -05:00
Clément Pit--Claudel
27cada035a Move backtrace to ELisp using a new mapbacktrace primitive
* src/eval.c (get_backtrace_starting_at, backtrace_frame_apply)
(Fmapbacktrace, Fbacktrace_frame_internal): New functions.
(get_backtrace_frame, Fbacktrace_debug): Use `get_backtrace_starting_at'.

* lisp/subr.el (backtrace--print-frame): New function.
(backtrace): Reimplement using `backtrace--print-frame' and `mapbacktrace'.
(backtrace-frame): Reimplement using `backtrace-frame--internal'.

* lisp/emacs-lisp/debug.el (debugger-setup-buffer): Pass a base to
`mapbacktrace' instead of searching for "(debug" in the output of
`backtrace'.

* test/lisp/subr-tests.el (subr-test-backtrace-simple-tests)
(subr-test-backtrace-integration-test): New tests.

* doc/lispref/debugging.texi (Internals of Debugger): Document
`mapbacktrace' and missing argument BASE of `backtrace-frame'.
2016-12-12 17:41:27 -05:00
Glenn Morris
3c655230d2 Obsolete gs.el
* lisp/gs.el: Move to lisp/obsolete.  (Bug#1524)
* doc/lispref/display.texi (Image Formats): Remove postscript.
(PostScript Images): Remove section.
* doc/lispref/elisp.texi: Update menu.
2016-12-12 17:17:34 -05:00
Glenn Morris
25a52ca6b2 ; Fix copyright years in new files 2016-12-10 10:19:06 -08:00
Eli Zaretskii
2412a1fc05 Support concurrency in Emacs Lisp
Merge branch 'test-concurrency'

* src/thread.c:
* src/thread.h:
* src/systhread.c:
* src/systhread.h: New files.
* src/xgselect.c (xg_select): Avoid using SAFE_NALLOCA and use
xnmalloc unconditionally.
* src/window.c (struct save_window_data): Rename current_buffer to
f_current_buffer.
* src/w32proc.c (sys_select): Change the function signature to
closer fit 'pselect' on Posix hosts.
* src/search.c:
* src/regex.h: Convert some globals to macros that reference
thread-specific values.
* src/process.c (pset_thread, add_non_keyboard_read_fd)
(add_process_read_fd, add_non_blocking_write_fd)
(recompute_input_desc, compute_input_wait_mask)
(compute_non_process_wait_mask, compute_non_keyboard_wait_mask)
(compute_write_mask, clear_waiting_thread_info)
(update_processes_for_thread_death, Fset_process_thread)
(Fprocess_thread): New functions.
(enum fd_bits): New enumeration.
(fd_callback_data): Add 'thread' and 'waiting_thread', rename
'condition' to 'flags'.
(set_process_filter_masks, create_process, create_pty)
(Fmake_serial_process, finish_after_tls_connection)
(connect_network_socket, deactivate_process)
(server_accept_connection, wait_reading_process_output)
(Fcontinue_process, Fstop_process, keyboard_bit_set)
(add_timer_wait_descriptor, add_keyboard_wait_descriptor)
(delete_keyboard_wait_descriptor): Use the new functions instead
of manipulating fd flags and masks directly.
(syms_of_process): Defsubr the new primitives.
* src/print.c (print_object): Print threads, mutexes, and
conditional variables.
* src/lisp.h (enum pvec_type): New values PVEC_THREAD, PVEC_MUTEX,
and PVEC_CONDVAR.
(XTHREAD, XMUTEX, XCONDVAR, THREADP, MUTEXP, CONDVARP)
(CHECK_THREAD, CHECK_MUTEX, CHECK_CONDVAR): New inline functions.
(XSETTHREAD, XSETMUTEX, XSETCONDVAR): New macros.
(struct handler): Add back byte_stack.  Rename lisp_eval_depth to
f_lisp_eval_depth.
* src/eval.c (specpdl_kind, specpdl_arg, do_specbind)
(rebind_for_thread_switch, do_one_unbind)
(unbind_for_thread_switch): New functions.
(init_eval): 'handlerlist' is not malloc'ed.
(specbind): Call do_specbind.
(unbind_to): Call do_one_unbind.
(mark_specpdl): Accept 2 arguments.
(mark_specpdl): Mark the saved value in a let-binding.
* src/emacs.c (main): Call init_threads_once, init_threads, and
syms_of_threads.
* src/data.c (Ftype_of): Support thread, mutex, and condvar
objects.
(Fthreadp, Fmutexp, Fcondition_variable_p): New functions.
(syms_of_data): DEFSYM and defsubr new symbols and primitives.
* src/bytecode.c (struct byte_stack, FETCH, CHECK_RANGE)
(BYTE_CODE_QUIT): Add back.
(exec_byte_code): Add back byte stack manipulation.
* src/alloc.c (cleanup_vector): Handle threads, mutexes, and
conditional variables.
(mark_stack): Now extern; accept additional argument 'bottom'.
(flush_stack_call_func): New function.
(garbage_collect_1): Call mark_threads and unmark_threads.  Don't
mark handlers.
* src/.gdbinit (xbytecode): Add back.

* test/src/thread-tests.el: New tests.
* test/src/data-tests.el (binding-test-manual)
(binding-test-setq-default, binding-test-makunbound)
(binding-test-defvar-bool, binding-test-defvar-int)
(binding-test-set-constant-t, binding-test-set-constant-nil)
(binding-test-set-constant-keyword)
(binding-test-set-constant-nil): New tests.

* doc/lispref/processes.texi (Processes and Threads): New
subsection.
* doc/lispref/threads.texi: New file
* doc/lispref/elisp.texi (Top): Include it.
* doc/lispref/objects.texi (Thread Type, Mutex Type)
(Condition Variable Type): New subsections.
(Type Predicates): Add thread-related predicates.
* doc/lispref/objects.texi (Editing Types):
* doc/lispref/elisp.texi (Top): Update higher-level menus.

* etc/NEWS: Mention concurrency features.
2016-12-10 18:54:43 +02:00
Eli Zaretskii
19bc43020d Documentation and commentary improvements
* src/lisp.h:
* src/regex.c:
* src/xgselect.c (xg_select): Improve commentary and formatting.

* doc/lispref/objects.texi (Thread Type, Mutex Type)
(Condition Variable Type): New subsections.
(Type Predicates): Add thread-related predicates.
* doc/lispref/objects.texi (Editing Types):
* doc/lispref/elisp.texi (Top): Update higher-level menus.
2016-12-10 10:49:39 +02:00
Michael Albinus
57a77f833e Document file-name-quote, file-name-unquote and file-name-quoted-p
* doc/lispref/files.texi (File Name Expansion):
* etc/NEWS: Mention file-name-quote, file-name-unquote and
file-name-quoted-p.

* lisp/files.el (file-name-non-special): Revert using
file-name-quote, file-name-unquote and file-name-quoted-p.
2016-12-09 10:03:05 +01:00
Paul Eggert
e676b7b80b Merge from origin/emacs-25
d31298d Fix documentation of `window-combination-resize'
2086f4c Typo fixes in elisp manual
2016-12-07 12:41:04 -08:00
Paul Eggert
c5532f5a5c Merge from origin/emacs-25
3980903 ; Update ChangeLog.2, etc/AUTHORS and ldef-boot.el for Emacs ...
5878abf Fix 'expand-file-name' during startup on MS-Windows
2016-12-07 12:40:43 -08:00
Paul Eggert
3ace6b1e85 Merge from origin/emacs-25
93c0f51 Handle TeX comments when making new paragraph
e0884f1 Restore keystroke echo in 'C-q'
a6213ce Improve documentation of 'current-word'
0828126 Fix a typo in an Eshell defcustom
2e361c7 Minor copyedits of electric-pair-mode
7499ee8 ; Minor copyedit in the Emacs manual
45b652b Fix documentation of 'invocation-directory'
7f43d7c * admin/authors.el (authors-aliases): Add an entry.
ba48880 ; Fix pl-refcard.tex
2016-12-07 12:39:07 -08:00
Paul Eggert
c26605861e Merge from origin/emacs-25
3d63b48 Update ChangeLog files and authors.el
9d30264 Fix menu bindings of Dired 'A' and 'Q' commands
a725592 Avoid errors in shr-pixel-column due to dedicated windows
3138598 Update format-time-string documentation
2016-12-07 12:36:38 -08:00
Eli Zaretskii
de4624c99e Merge branch 'concurrency'
Conflicts (resolved):
	configure.ac
	src/Makefile.in
	src/alloc.c
	src/bytecode.c
	src/emacs.c
	src/eval.c
	src/lisp.h
	src/process.c
	src/regex.c
	src/regex.h
2016-12-04 19:59:17 +02:00
Michael Albinus
e72b24fb4a Mention `file-name-case-insensitive-p' as magic file name
* doc/lispref/files.texi (Magic File Names):
Mention `file-name-case-insensitive-p'.

* doc/lispref/variables.texi (Connection Local Variables):
Fix typo.
2016-12-03 19:54:24 +01:00
Noam Postavsky
56c817837b Document watchpoints
* doc/lispref/debugging.texi (Variable Debugging):
* doc/lispref/variables.texi (Watching Variables): New section.
* etc/NEWS: Add entry for watchpoints
2016-12-02 20:25:15 -05:00
Martin Rudalics
d31298d8af Fix documentation of `window-combination-resize'
* src/window.c (Vwindow_combination_resize): Fix doc-string.
* doc/lispref/windows.texi (Recombining Windows): Fix
documentation of `window-combination-resize'.
2016-12-01 10:51:11 +01:00
Bogdan Creanga
2086f4c0c6 Typo fixes in elisp manual
* doc/lispref/sequences.texi: Add missing '4' in result (Bug#25047).
* doc/lispref/strings.texi (Text Comparison): Avoid duplicate
definitions of 'string-prefix-p' and 'string-suffix-p'.
* doc/lispref/symbols.texi (Definitions): Pluralize 'definitions'.

Copyright-paperwork-exempt: yes
2016-11-29 19:07:15 +09:00
Eli Zaretskii
5878abf87b Fix 'expand-file-name' during startup on MS-Windows
* src/w32.c (w32_init_file_name_codepage): New function, resets
file_name_codepage and w32_ansi_code_page to undo the values
recorded during dumping.
(codepage_for_filenames): Fix an embarrassing typo.  Ignore the
cached value of file-name encoding if it is nil, i.e. not
initialized yet.  Actually cache the last used file-name encoding
to avoid calling APIs when not necessary.

* src/w32.h (w32_init_file_name_codepage): Add prototype.

* src/w32term.c (syms_of_w32term): Set the value of
w32_unicode_filenames according to the OS version.  This avoids
resetting it during startup, which then causes temacs to run with
the incorrect value.

* src/emacs.c (main): Call w32_init_file_name_codepage early
during the startup.

* src/fileio.c (Fexpand_file_name) [WINDOWSNT]: Update 'newdir'
after converting $HOME to a UTF-8 string, so that 'newdirlim' is
consistent with it.  (Bug#25038)

* lisp/international/mule-cmds.el (set-locale-environment): Set
'default-file-name-coding-system' to the ANSI codepage even in
non-interactive sessions.

* lisp/files.el (directory-abbrev-alist, abbreviated-home-dir):
Doc fix.
(abbreviate-file-name): Decode 'abbreviated-home-dir' if it is a
unibyte string.

* doc/lispref/files.texi (Directory Names): Index
'directory-abbrev-alist'.
2016-11-28 17:43:25 +02:00
Thierry Volpiatto
d9dd884c7c Allow configuring which event throw-on-input should ignore (bug#19547).
* src/keyboard.c (kbd_buffer_store_buffered_event):
Translate event to corresponding symbol from `while-no-input-ignore-events`
and check them with Fmemq.
(syms_of_keyboard): Declare new lisp variable `while-no-input-ignore-events`
and its symbols.

* lisp/subr.el (while-no-input-ignore-events): Add default values.

* doc/lispref/commands.texi (Event Input Misc):
Document while-no-input-ignore-events.
* etc/NEWS: Same.
2016-11-27 21:48:07 +01:00
Eli Zaretskii
45b652b627 Fix documentation of 'invocation-directory'
* doc/lispref/os.texi (System Environment): Fix wording of the
description of 'invocation-directory'.  (Bug#24999)
2016-11-24 19:22:21 +02:00
Michael Albinus
22946702b4 Add file-local-name
* doc/lispref/files.texi (Magic File Names): Add `file-local-name'.
(Unique File Names): Use it.

* etc/NEWS: Mention `file-local-name'.

* lisp/files.el (file-local-name): New defun.
(file-expand-wildcards):
* lisp/eshell/em-tramp.el (eshell/su, eshell/sudo):
* lisp/eshell/esh-ext.el (eshell-remote-command):
* lisp/eshell/esh-proc.el (eshell-gather-process-output):
* lisp/org/ob-core.el (org-babel-local-file-name):
* lisp/progmodes/gud.el (gud-common-init, gud-format-command):
* lisp/progmodes/python.el (python-shell-send-file):
* lisp/shell.el (shell):
* lisp/vc/ediff-diff.el (ediff-same-file-contents):
* lisp/vc/vc-git.el (vc-git-checkin): Use it.
2016-11-20 16:29:47 +01:00
Tino Calancha
3138598dd8 Update format-time-string documentation
* doc/lispref/os.texi (Time Parsing):
Document %F, %g, %G, %u and %V.
2016-11-20 15:35:41 +09:00
Paul Eggert
b81bb485ea Document format-time-string %q
* doc/lispref/os.texi (Time Parsing):
* etc/NEWS: Document new %q functionality taken from gnulib.
2016-11-19 16:16:42 -08:00
Paul Eggert
870c56a0bd Merge from origin/emacs-25
07f45d7 ; Spelling fix
1a210f0 * admin/release-process: Update versions and blocking bug num...
36bafc9 Improve documentation of functions that accept time values

# Conflicts:
#	admin/release-process
#	src/editfns.c
2016-11-19 14:43:25 -08:00
Paul Eggert
c61ee94959 Merge from origin/emacs-25
4af5981 Add a comment in generated refcards about the source
ef880a5 ; * etc/refcards/calccard.tex: Remove obsolete comment.
4887e7c js-mode: Fix indent problem after a regexp
e992ac0 Fix sluggish display of symbols in UTF-8 language environment
1fc101b Don't confuse how Texinfo outputs @var with the input
91aa5d1 * doc/lispref/display.texi (Scroll Bars): * doc/lispref/frame...
f758fcd * doc/emacs/cmdargs.texi (Initial Options): Copyedit for --da...
5b0cddd More fixes in copyright notices in etc/refcards/
f994c20 Update copyright text in refcards
9ad2ae7 Fix Outline command names
26c3554 Send text received by bracketed paste to process
db0b58d Correct the statement about programming modes always running ...
78aece4 Improve documentation of 'occur'
eb364fd Do call debugger on failed cl-assert
3ef4ee8 Avoid infloop in python
8da810f Don't refer to obsolete FEATURE-unload-hook
4f478ca Improve documentation of dabbrevs
7272e5d * lisp/chistory.el (list-command-history): Doc fix.  (Bug#24890)
89b7482 * lisp/simple.el (set-mark-command): Doc fix.  (Bug#24890)
3b199f7 Improve documentation of some Help commands
93d3a0e Fix documentation of yes-or-no prompts
af04919 Fix documentation of partial completion style
ed80184 Fix documentation of the mode line on emacsclient frames
e6be855 Fix description of 'C-z' in User manual
16f7007 Improve and clarify documentation of Outline Mode
31d93aa Add Emacs version number to nt/README.W32
0b6b815 Fix python-mode hideshow regexp
dc152c5 Modernize usage of 'macOS' in doc and comments
84c5343 Prefer comments /* like this */ in C code
bb61e50 * doc/lispref/loading.texi (Autoload): Better link (Bug#24845).
3ef86fd Clarify documentation of face attribute functions
de51d59 ; * nt/README.W32: Minor copyedits.
db436e9 Don't call debug on failed cl-assert

# Conflicts:
#	doc/emacs/cmdargs.texi
#	etc/NEWS
#	etc/PROBLEMS
#	lisp/auth-source.el
#	lisp/net/tramp-sh.el
2016-11-19 14:31:05 -08:00
Eli Zaretskii
36bafc9cee Improve documentation of functions that accept time values
* doc/lispref/os.texi (Time Calculations): Mention the meaning of
'nil' or a scalar number as the time-value argument.  Add a
cross-reference to 'float-time' for computing a time difference as
a scalar number of seconds.

* src/editfns.c (Fformat_time_string, Ftime_less_p)
(Ftime_subtract, Ftime_add, Fdecode_time, Fcurrent_time_string)
(Fcurrent_time_zone): Mention in the doc strings the meaning of
nil argument and the fact that a time value can be a scalar number
of seconds since the epoch.
(Ftime_subtract): Mention 'float-time'.
2016-11-18 13:02:34 +02:00
Glenn Morris
67df076793 ; Replace "25.2" with "26.1" where appropriate, which is almost everywhere
Ref:
http://lists.gnu.org/archive/html/emacs-devel/2016-09/msg00692.html
http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01215.html
2016-11-17 22:50:40 -08:00
Glenn Morris
36b99556de Add --new-daemon, which runs in the foreground and does not fork
This is intended for modern init systems such as systemd,
which manage many of the traditional aspects of daemon behavior
themselves.  (Bug#2677)
* src/emacs.c (daemon_type): New integer.
(usage, standard_args): Add --old-daemon and --new-daemon.
(main): Handle --old-daemon and --new-daemon arguments.
Restrict all the forking and complicated daemon stuff to old-daemon.
(Fdaemon_initialized): Handle new-style daemon.
* src/lisp.h (IS_DAEMON, DAEMON_RUNNING) [!WINDOWNT]:
Replace daemon_pipe with daemon_type.
* doc/emacs/cmdargs.texi (Initial Options):
* doc/emacs/glossary.texi (Glossary):
* doc/emacs/misc.texi (Emacs Server):
* doc/lispref/display.texi (Window Systems):
* doc/lispref/os.texi (Startup Summary): Related doc updates.
* etc/NEWS: Mention this.
* etc/emacs.service: Use Type=simple and --new-daemon.
2016-11-15 23:28:47 -08:00
Glenn Morris
1fc101b0c4 Don't confuse how Texinfo outputs @var with the input
* doc/emacs/rmail.texi (Movemail):
* doc/lispref/control.texi (Pattern matching case statement):
* doc/lispref/frames.texi (Size and Position):
* doc/lispref/processes.texi (Asynchronous Processes):
* doc/lispref/text.texi (Document Object Model):
* doc/lispref/windows.texi (Coordinates and Windows):
Do not upper-case the argument of @var.
2016-11-15 19:18:28 -05:00
Glenn Morris
91aa5d1923 * doc/lispref/display.texi (Scroll Bars):
* doc/lispref/frames.texi (Size and Position):
* doc/lispref/windows.texi (Window Sizes): Fix arglist typos.
2016-11-15 19:07:36 -05:00
Michael Albinus
024d5b0c41 Implement file name handler for `file-name-case-insensitive-p'
* doc/lispref/files.texi (Truenames): `file-name-case-insensitive-p'
is also applicable for remote hosts.

* lisp/net/tramp.el (tramp-methods): Improve docstring.
(tramp-file-name-for-operation): Add `file-name-case-insensitive-p'.
(tramp-handle-file-name-case-insensitive-p): New defun.

* lisp/net/tramp-smb.el (tramp-methods) <smb>:
Add `tramp-case-insensitive' entry.

* lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist)
* lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
* lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist)
* lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
<file-name-case-insensitive-p>: Add handler.  (Bug#22300, Bug#24441)
2016-11-15 20:50:49 +01:00
Eli Zaretskii
4b87030972 Revert "Improve case-insensitive checks (Bug#24441)"
This reverts commit 2f5e0b1bf7.
I see no reason for removing code, documentation, and comments
in the original commit.
2016-11-14 21:25:44 +02:00
Paul Eggert
2f5e0b1bf7 Improve case-insensitive checks (Bug#24441)
* doc/lispref/files.texi (Truenames): Simplify documentation,
to avoid giving too much platform-specific information that
may not be accurate anyway.
* src/fileio.c (file_name_case_insensitive_p): Use pathconf with
_PC_CASE_SENSITIVE if _PC_CASE_INSENSITIVE is not available.
Otherwise if one approach fails (e.g., with errno == EINVAL), fall
back on an alternative rather than returning false.  Try skipping
the Darwin code, as it (1) no longer seems to be needed and (2)
does not seem to match the Apple documentation.  Leave in two
alternatives conditionally compiled based on
DARWIN_OS_CASE_SENSITIVE_FIXME in case (1) or (2) is incorrect.
2016-11-14 09:09:48 -08:00
Eli Zaretskii
3625e6ce93 Fix documentation changes of connection-local variables
* etc/NEWS: Fix last change.
* doc/lispref/variables.texi (Connection Local Variables): Minor fixes.
* doc/lispref/elisp.texi (Top): Update the master menu.
2016-11-14 18:13:09 +02:00
Michael Albinus
6647e05174 Implement connection-local variables
* doc/lispref/variables.texi (Connection Local Variables): New section.

* etc/NEWS: Mention connection-local variables.

* lisp/files-x.el (enable-connection-local-variables)
(connection-local-variables-alist, connection-local-class-alist)
(connection-local-criteria-alist): New defvars.
(connection-local-get-classes)
(connection-local-get-class-variables): New defsubst.
(connection-local-set-classes)
(connection-local-set-class-variables)
(hack-connection-local-variables)
(hack-connection-local-variables-apply): New defuns.
(with-connection-local-classes): New defmacro.

* lisp/net/tramp.el (tramp-set-connection-local-variables): New defun.

* lisp/net/tramp-adb.el (tramp-adb-maybe-open-connection):
* lisp/net/tramp-gvfs.el (tramp-gvfs-maybe-open-connection):
* lisp/net/lisp/net/tramp-sh.el (tramp-maybe-open-connection):
* lisp/net/tramp-smb.el (tramp-smb-maybe-open-connection): Use it.

* test/lisp/files-x-tests.el: New file.
2016-11-14 13:56:58 +01:00
Ken Brown
2809012c8f Check case-sensitivity when renaming files
* src/fileio.c (file_name_case_insensitive_p)
(Ffile_name_case_insensitive_p):  New functions.
(Frename_file): Allow renames that simply change case when the
FILE argument is on a case-insensitive filesystem.  (Bug#24441)

* lisp/dired-aux.el (dired-do-create-files): Use
'file-name-case-insensitive-p' instead of 'system-type' to check
for case-insensitivity.  (Bug#24441)

* doc/lispref/files.texi (Truenames): Document
'file-name-case-insensitive-p'.
2016-11-12 21:54:45 -05:00
Eli Zaretskii
8da810f91b Don't refer to obsolete FEATURE-unload-hook
* doc/lispref/tips.texi (Coding Conventions): Refer to
FEATURE-unload-function rather than its obsolete variant
FEATURE-unload-hook.  (Bug#24890)
2016-11-07 19:39:54 +02:00
Paul Eggert
dc152c54f4 Modernize usage of 'macOS' in doc and comments
Apple changed the spelling of its operating system again, to "macOS",
effective with macOS 10.12 Sierra (2016-09-20).  Change Emacs
documentation and comments to match this.  Stick with older OS
spellings ("OS X", "Mac OS X") when talking about older releases where
the older names are more correct.
2016-11-06 00:42:03 -07:00
Noam Postavsky
bb61e50533 * doc/lispref/loading.texi (Autoload): Better link (Bug#24845). 2016-11-05 10:12:03 -04:00
Eli Zaretskii
3ef86fd063 Clarify documentation of face attribute functions
* doc/lispref/display.texi (Attribute Functions): Make sure to
document that an omitted FRAME argument means the same as nil.
(Bug#24879)
2016-11-05 10:54:15 +02:00