1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-14 07:20:35 -08:00
Commit graph

2973 commits

Author SHA1 Message Date
Nicolas Petton
3f37086958 * admin/authors.el (authors-aliases): Additions. 2017-10-11 15:14:51 +02:00
Nicolas Petton
ba7fb37d6a * admin/authors.el (authors-renamed-files-alist): addition. 2017-10-09 21:51:44 +02:00
Stefan Monnier
11f9cb522f Merge emacs-26 2017-10-06 09:50:54 -04:00
Nicolas Petton
e933249f6b Update authors.el
* admin/authors.el (authors-renamed-files-alist)
(authors-valid-file-names): Additions.
2017-10-05 22:26:47 +02:00
Nicolas Petton
b9712f5686
Update authors.el
* admin/authors.el (authors-ignored-files, authors-valid-file-names)
(authors-renamed-files-alist): Additions.
2017-10-03 13:11:07 +02:00
Paul Eggert
135bca574c Port file-system-info to non-Microsoft
* admin/merge-gnulib (GNULIB_MODULES): Add fsusage.
* doc/emacs/files.texi (Directories): Remove documentation of
now-obsolete directory-free-space-program and
directory-free-space-args.
* etc/NEWS: Mention change.
* etc/PROBLEMS: Slow df is no longer a problem.
* lib/fsusage.c, lib/fsusage.h, m4/fsusage.m4:
New files, copied from Gnulib.
* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
* lisp/dired.el (dired-free-space-program)
(dired-free-space-args): These aliases are now obsolete.
* lisp/files.el (directory-free-space-program)
(directory-free-space-args): Now obsolete.
(get-free-disk-space): Just call file-system-info instead
of the now-obsolete directory-free-space-program.
* nt/gnulib-cfg.mk (OMIT_GNULIB_MODULE_fsusage): New macro.
* src/fileio.c: Include fsusage.h.
(blocks_to_bytes, Ffile_system_info) [!DOS_NT]: New functions.
(syms_of_fileio) [!DOS_NT]: Defsubr file-system-info.
2017-10-01 22:33:20 -07:00
Paul Eggert
4829a3b033 Merge from origin/emacs-26
5172fa02cc Prefer HTTPS to HTTP for gnu.org
8cdd8b920a Merge from Gnulib
60b7668b89 Keep eww buffer current when looking up CSS on MDN
bd49b6f1b3 Workaround for faulty localtime() under macOS 10.6
913808e224 Doc amendment for syntax-ppss.
98dc91fda8 Remove incorrect NEWS entry about 'find-library'
539d8626cd Remove inadvertent changes to syntax.texi in last commit.
8c18dcbc78 Amend documentation for text-quoting-style becoming a user...
5f76ac150a Make the value nil in text-quoting-style mean what it does...
d5e4e004fa Make text-quoting-style customizable.  Introduce t and new...
1ba3471b9b eshell.texi improvements
7abb5c3960 Fix ns-win.el on GNUstep
07ea5ef99a Fix reference style in org.texi
b03b4f6d79 Improve handling of iconification of child frames (Bug#28611)
ba9139c501 Revert "Don't lose arguments to eshell aliases (Bug#27954)"
43fac3beae Make "unsafe directory" error message more informative (Bu...
c59ddb2120 Fix slot typecheck in eieio-persistent
8b2ab5014b Fix semantic-ia-fast-jump
5b45e7e1c3 Bind vc-region-history
f172894595 Exit macro definition on undefined keys
289fe6c0d1 Reset bidi-paragraph-direction on article rendering
a4f7518817 Fix url-http use of url-current-object
4a755ed421 Avoid assertions in vc-hg.el on MS-Windows
cb93a6ce72 Improve documentation of 'copy-sequence'
200ef6f721 Minor update of ack.texi
cb407d3e87 * doc/emacs/emacs.texi (Acknowledgments): Add more contrib...
82b6c765ff Improve indexing of multi-file/buffer Isearch commands
645ff6c702 Add CAM02 JCh and CAM02-UCS J'a'b' conversions
157007b58e Fix uses of @kindex in the Emacs manual
63a45e8837 Merge branch 'emacs-26' of git.savannah.gnu.org:/srv/git/e...
3ab2f9bbb9 Merge from gnulib
cbc8324488 Prefer HTTPS to HTTP for gnu.org
bbda601d1d ; Spelling fixes
695cf5300b Wait for frame visibility with timeout in w32term too
e1f6e3127a Bring back the busy wait after x_make_frame_visible (Bug#2...
bccf635217 ; * src/gtkutil.c (xg_check_special_colors): Add another G...
f428757cdb Merge branch 'emacs-26' of git.savannah.gnu.org:/srv/git/e...
26d58f0c58 ; Standardize license notices
73dba0f466 Fix last doc string change in simple.el
2017-10-01 21:58:52 -07:00
Paul Eggert
5172fa02cc Prefer HTTPS to HTTP for gnu.org
This fixes some URLs I omitted from my previous pass,
notably those in lists.gnu.org.  Although lists.gnu.org
does not yet support TLS 1.1, TLS 1.0 is better than nothing.
* lisp/erc/erc.el (erc-official-location):
* lisp/mail/emacsbug.el (report-emacs-bug):
Use https:, not http:.
2017-10-01 19:59:01 -07:00
Paul Eggert
20a09de953 Merge from origin/emacs-26
3ab2f9bbb9 Merge from gnulib
cbc8324488 Prefer HTTPS to HTTP for gnu.org
bbda601d1d ; Spelling fixes
695cf5300b Wait for frame visibility with timeout in w32term too
e1f6e3127a Bring back the busy wait after x_make_frame_visible (Bug#2...
bccf635217 ; * src/gtkutil.c (xg_check_special_colors): Add another G...
26d58f0c58 ; Standardize license notices
61225964ed Revert "bug#28609: simple.el"
a75ab3b3fb bug#28609: simple.el
c7a21430c1 ; * etc/NEWS: Fix last change.
33401b26b1 Merge branch 'emacs-26' of git.savannah.gnu.org:/srv/git/e...
d4b2bbdc73 Merge branch 'emacs-26' into scratch/org-mode-merge
c1ac8c170f Merge branch 'emacs-26' of git.savannah.gnu.org:/srv/git/e...
af130f900f Fix ert backtrace saving for non-`signal'ed errors (Bug#28...
7476eeaa23 Revert "Fix build on macOS (bug#28571)"
fec63089d5 Fix build on macOS (bug#28571)
0f9a78e770 Add tests for `css-current-defun-name'
88a0dd71f1 In w32fullscreen_hook don't add decorations to undecorated...
18073beb14 Merge branch 'emacs-26' of git.savannah.gnu.org:/srv/git/e...
1eef11b7be Fix doc string of 'dired-listing-switches'
eaefbc26d5 ; Add files missing in ab351d442d
ab351d442d Update Org to v9.1.1
2017-09-29 22:06:33 -07:00
Paul Eggert
cbc8324488 Prefer HTTPS to HTTP for gnu.org
This catches some URLs I missed in my previous scan,
or perhaps were added after the scan.
2017-09-29 17:48:22 -07:00
Paul Eggert
c4e6ff097c emacs-25 → emacs-26
* admin/gitmerge.el (gitmerge-default-branch): Now emacs-26.
2017-09-25 11:12:11 -07:00
Paul Eggert
bc511a64f6 Prefer HTTPS to FTP and HTTP in documentation
Most of this change is to boilerplate commentary such as license URLs.
This change was prompted by ftp://ftp.gnu.org's going-away party,
planned for November.  Change these FTP URLs to https://ftp.gnu.org
instead.  Make similar changes for URLs to other organizations moving
away from FTP.  Also, change HTTP to HTTPS for URLs to gnu.org and
fsf.org when this works, as this will further help defend against
man-in-the-middle attacks (for this part I omitted the MS-DOS and
MS-Windows sources and the test tarballs to keep the workload down).
HTTPS is not fully working to lists.gnu.org so I left those URLs alone
for now.
2017-09-13 15:54:37 -07:00
Miles Bader
ce96408451 * admin/quick-install-emacs: Tweak configure.ac parsing 2017-09-09 12:34:53 +09:00
Paul Eggert
794c3cd3a2 Merge from Gnulib; use ‘open’ for O_CLOEXEC
This incorporates:
2017-08-15 renameat: ensure declaration in <stdio.h> on NetBSD
2017-08-15 extensions: enable NetBSD specific extensions
2017-08-14 open: support O_CLOEXEC
2017-08-13 reallocarray: new module
* admin/merge-gnulib (AVOIDED_MODULES): Remove ‘open’, since
it now supports O_CLOEXEC and this simplifies Emacs.
* build-aux/config.guess, lib/fcntl.in.h, lib/stdio.in.h:
* lib/stdlib.in.h, m4/extensions.m4, m4/stdlib_h.m4:
Copy from Gnulib.
* lib/cloexec.c, lib/cloexec.h, lib/open.c:
* m4/mode_t.m4, m4/open-cloexec.m4, m4/open.m4:
New files, copied from Gnulib.
* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
* lib-src/etags.c (O_CLOEXEC) [WINDOWSNT]:
Remove, as Gnulib does this for us.
* src/filelock.c (create_lock_file):
* src/sysdep.c (emacs_open, emacs_pipe):
Don’t worry about O_CLOEXEC == 0, as Gnulib no longer sets it to 0.
2017-08-16 14:04:33 -07:00
Paul Eggert
a6ad98ad66 Improve make-temp-file performance on local files
For the motivation behind this patch, please see Bug#28023 and:
http://emacshorrors.com/posts/make-temp-name.html
Although, given the recent changes to Tramp, the related security
problem in make-temp-file is already fixed, make-temp-file still has
several unnecessary system calls.  In the typical case on GNU/Linux,
this patch replaces 8 syscalls (symlink, open, close, readlinkat, uname,
getpid, unlink, umask) by 2 (open, close).
* admin/merge-gnulib (GNULIB_MODULES): Add tempname, now
that Emacs is using it directly.
* configure.ac (AUTO_DEPEND): Remove AC_SYS_LONG_FILE_NAMES;
no longer needed.
* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
* lisp/files.el (files--make-magic-temp-file): Rename from
make-temp-file.
(make-temp-file): Use make-temp-file-internal for
non-magic file names.
* src/fileio.c: Include tempname.h.
(make_temp_name_tbl, make_temp_name_count)
(make_temp_name_count_initialized_p, make_temp_name): Remove.
(Fmake_temp_file_internal): New function.
(Fmake_temp_name): Use it.
* src/filelock.c (get_boot_time): Use Fmake_temp_file_internal
instead of make_temp_name.
2017-08-12 15:14:45 -07:00
Paul Eggert
904be8c4cf Merge from gnulib
This incorporates:
2017-08-09 tempname: do not depend on secure_getenv
2017-08-08 extensions: add _OPENBSD_SOURCE
2017-08-06 manywarnings: Add support for C++
2017-08-06 warnings, manywarnings: Add support for multiple languages
* admin/merge-gnulib: Don't use m4/manywarnings-c++.m4.
* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
* lib/secure_getenv.c, m4/secure_getenv.m4: Remove.
* lib/tempname.c, m4/extensions.m4, m4/manywarnings.m4, m4/warnings.m4:
Copy from gnulib.
2017-08-09 11:46:06 -07:00
Paul Eggert
3a8d0cc825 Avoid most stat calls when completing file names
* admin/merge-gnulib (GNULIB_MODULES): Add d-type.
* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
* m4/d-type.m4: New file, copied from gnulib.
* src/dired.c (DT_UNKNOWN, DT_DIR, DT_LINK)
[!HAVE_STRUCT_DIRENT_D_TYPE]: New constants.
(dirent_type): New function.
(file_name_completion): Use it, to avoid unnecessary calls to
stat-like functions on GNU/Linux and other platforms with d_type.
(file_name_completion_stat): Just follow the link; there is no
need to try first with AT_SYMLINK_NOFOLLOW since the directory
entry was already checked to exist.
2017-07-31 12:56:51 -07:00
Paul Eggert
9b971bdd34 Merge from gnulib
This incorporates:
2017-07-23 Rename module 'strftime' to 'nstrftime'
* admin/merge-gnulib (GNULIB_MODULES): Add nstrftime, remove strftime.
* build-aux/config.guess: Copy from gnulib.
* lib/nstrftime.c: Rename from lib/strftime.c.
* m4/nstrftime.m4: Rename from m4/strftime.m4.
* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
2017-07-23 22:23:49 -07:00
Glenn Morris
8c09f11a32 * admin/notes/hydra: Small updates. 2017-07-20 14:00:27 -04:00
Michael Albinus
458057ee29 ; Editorial changes in admin/notes/hydra 2017-07-19 11:34:29 +02:00
Michael Albinus
be79366410 * admin/notes/hydra: Mention environment variable EMACS_HYDRA_CI. 2017-07-18 22:40:23 +02:00
Paul Eggert
59f6972134 Use explicit_bzero to clear GnuTLS keys
* admin/merge-gnulib (GNULIB_MODULES): Add explicit_bzero.
* lib/explicit_bzero.c, m4/explicit_bzero.m4: New files.
* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
* src/gnutls.c (clear_storage): New function.
(gnutls_symmetric_aead): Use it instead of memset.
2017-07-16 16:29:12 -07:00
Eli Zaretskii
fd3bcfa36e Update Unicode data and files to Unicode 10.0
* admin/notes/unicode:
* admin/unidata/README:
* admin/unidata/BidiBrackets.txt:
* admin/unidata/BidiMirroring.txt:
* admin/unidata/Blocks.txt:
* admin/unidata/IVD_Sequences.txt:
* admin/unidata/NormalizationTest.txt:
* admin/unidata/SpecialCasing.txt:
* admin/unidata/UnicodeData.txt:
* lisp/international/characters.el:
* lisp/international/fontset.el (script-representative-chars):
* lisp/international/mule-cmds.el (ucs-names): Update per Unicode 10.0.
2017-07-08 13:02:47 +03:00
Paul Eggert
f6ef15cf84 Use unlocked stdio more systematically
This can improve performance significantly on stdio-bottlenecked code.
E.g., make-docfile is 3x faster on my Fedora 25 x86-64 desktop.
* admin/merge-gnulib (GNULIB_MODULES): Add unlocked-io.
* lib-src/ebrowse.c, lib-src/emacsclient.c, lib-src/etags.c:
* lib-src/hexl.c, lib-src/make-docfile.c, lib-src/movemail.c:
* lib-src/profile.c, lib-src/update-game-score.c:
Include unlocked-io.h instead of stdio.h, since these programs are
single-threaded.
* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
* lib/unlocked-io.h, m4/unlocked-io.m4: New files, copied from Gnulib.
* src/charset.c, src/cm.c, src/emacs.c, src/image.c, src/keyboard.c:
* src/lread.c, src/term.c:
Include sysstdio.h, possibly instead of stdio.h, to define
the unlocked functions if the system does not provide them.
* src/charset.c, src/lread.c (getc_unlocked):
Remove, since sysstdio.h now defines it if needed.
* src/cm.c (cmputc, cmcheckmagic):
* src/dispnew.c (update_frame, update_frame_with_menu)
(update_frame_1, Fsend_string_to_terminal, Fding, bitch_at_user):
* src/emacs.c (main, Fdump_emacs):
* src/fileio.c (Fdo_auto_save, Fset_binary_mode):
* src/image.c (slurp_file, png_read_from_file, png_load_body)
(our_stdio_fill_input_buffer):
* src/keyboard.c (record_char, kbd_buffer_get_event, handle_interrupt):
* src/lread.c (readbyte_from_file):
* src/minibuf.c (read_minibuf_noninteractive):
* src/print.c (printchar_to_stream, strout)
(Fredirect_debugging_output):
* src/sysdep.c (reset_sys_modes, procfs_ttyname)
(procfs_get_total_memory):
* src/term.c (tty_ring_bell, tty_send_additional_strings)
(tty_set_terminal_modes, tty_reset_terminal_modes)
(tty_update_end, tty_clear_end_of_line, tty_write_glyphs)
(tty_write_glyphs_with_face, tty_insert_glyphs)
(tty_menu_activate):
* src/xfaces.c (Fx_load_color_file):
Use unlocked stdio when it should be safe.
* src/sysstdio.h (clearerr_unlocked, feof_unlocked, ferror_unlocked)
(fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked)
(fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked)
(putc_unlocked, putchar_unloced): Provide substitutes if not declared.
2017-06-22 11:22:53 -07:00
Michal Nazarewicz
21132e2623 unidata: don’t check special casing in unidata-check (bug#26656)
* admin/unidata/unidata-gen.el (unidata-check): Do not test special
casing mapping of characters since that mapping is not constructed from
the unidata.txt file.
Also, check for integer decoder and cons char earlier so that less
unnecessary processing is performed.
2017-06-22 15:58:40 +02:00
Philipp Stephani
d682f0daa3 Add command to replace buffer contents
Add a new command 'replace-buffer-contents' that uses the Myers diff
algorithm to non-destructively replace the accessible portion of the
current buffer.  The Myers algorithm is implemented in Gnulib.

* src/editfns.c (Freplace_buffer_contents): New command.
(set_bit, bit_is_set, buffer_chars_equal): New helper functions.
(syms_of_editfns): Define new command.

* test/src/editfns-tests.el (replace-buffer-contents-1)
(replace-buffer-contents-2): New unit tests.

* src/buffer.h (BUF_FETCH_CHAR_AS_MULTIBYTE): New helper macro.

* admin/merge-gnulib (GNULIB_MODULES): Add diffseq.h and minmax.h.
2017-06-17 15:40:58 +02:00
Glenn Morris
9d63c87e91 More authors.el updates
* admin/authors.el (authors-ignored-files, authors-valid-file-names)
(authors-renamed-files-alist): Additions.

; ChangeLog fixes
2017-06-07 14:27:21 -04:00
Glenn Morris
43885eac09 More authors.el updates
* admin/authors.el (authors-obsolete-files-regexps)
(authors-valid-file-names, authors-renamed-files-alist)
(authors-renamed-files-regexps): Additions.
2017-06-06 16:19:10 -04:00
Glenn Morris
30e33e967b ; * admin/authors.el (authors-obsolete-files-regexps): Tweak previous. 2017-06-06 15:19:58 -04:00
Glenn Morris
a203e717eb More small authors.el updates
* admin/authors.el (authors-aliases): Fix recent addition.
(authors-obsolete-files-regexps, authors-no-scan-regexps)
(authors-ignored-files, authors-valid-file-names)
(authors-renamed-files-alist): Additions.
; * lisp/vc/pcvs.el, test/lisp/emacs-lisp/checkdoc-tests.el:
; Fix Author headers.
; * ChangeLog.2: Fixes.
2017-06-06 15:08:41 -04:00
Glenn Morris
6aa1466713 Make authors.el report names that were ignored
* admin/authors.el (authors-ignored-names): New.
(authors-canonical-author-name): Add file and position arguments.
Record ignored authors.
(authors-scan-change-log, authors-scan-el):
Pass file and position to authors-canonical-author-name.
(authors): Also print authors that were ignored.
2017-06-05 20:39:29 -04:00
Glenn Morris
fcaf9327c1 * admin/authors.el (authors-aliases): Additions. 2017-06-05 20:38:31 -04:00
Glenn Morris
606bfcf00e * admin/authors.el (authors-aliases): Addition. 2017-06-02 20:29:34 -04:00
Paul Eggert
178d0cb5f5 Improve performance by avoiding strtoumax
This made (string-to-number "10") 20% faster on my old desktop,
an AMD Phenom II X4 910e running Fedora 25 x86-64.
* admin/merge-gnulib (GNULIB_MODULES): Remove strtoumax.
* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
* lib/strtoul.c, lib/strtoull.c, lib/strtoumax.c, m4/strtoull.m4:
* m4/strtoumax.m4: Remove.
* src/editfns.c (str2num): New function.
(styled_format): Use it instead of strtoumax.  Use ptrdiff_t
instead of uintmax_t.  Check for integer overflow.
* src/lread.c (LEAD_INT, DOT_CHAR, TRAIL_INT, E_EXP):
Move to private scope and make them enums.
(string_to_number): Compute integer value directly during
first pass instead of revisiting it with strtoumax later.
2017-06-01 16:06:38 -07:00
Glenn Morris
5b4a95b7b2 * admin/update_autogen: Remove bzr support. 2017-05-30 21:03:16 -04:00
Glenn Morris
1b598d32aa * admin/update_autogen (commit): Pull before push. 2017-05-17 12:44:29 -04:00
Glenn Morris
8452db0409 Put license information in each generated uni-*.el
* admin/unidata/unidata-gen.el (unidata-gen-file):
Get Copyright line from copyright.html.
Put information in file header, not separate README.
(unidata-gen-charprop): Mention the source location.
* lisp/international/README: Remove file.
2017-05-09 21:31:46 -04:00
Glenn Morris
55b07d3379 ; Update contributor name
; Ref http://lists.gnu.org/archive/html/emacs-devel/2017-05/msg00114.html
2017-05-06 18:38:18 -07:00
Paul Eggert
634d0a907f Merge from gnulib
This incorporates:
2017-05-01 New module 'localtime-buffer'
2017-04-30 utimens: Add support for native Windows
* admin/merge-gnulib (AVOIDED_MODULES): Add tzset.
* configure.ac (tzset): No need for Emacs itself to check now.
* lib/gettimeofday.c, lib/time.in.h, lib/time_rz.c, lib/utimens.c:
* m4/gettimeofday.m4, m4/time_h.m4, m4/time_rz.m4: Copy from gnulib.
* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
* lib/localtime-buffer.c, lib/localtime-buffer.h:
* m4/localtime-buffer.m4: New files, copied from gnulib.
* src/editfns.c (init_editfns): Assume tzset is callable.
2017-05-01 15:33:26 -07:00
Paul Eggert
b6aa3446df Merge from gnulib
This incorporates:
2017-04-30 strftime-fixes: New module
2017-04-30 mktime: Work around TZ problem on native Windows
2017-04-30 ctime, localtime: New modules
2017-04-30 gettimeofday: Provide higher resolution on native Windows
2017-04-29 utime-h: Modernize handling of 'struct utimbuf'
2017-04-29 Make use of module 'utime-h'
2017-04-30 Fix a few typos
* admin/merge-gnulib (AVOIDED_MODULES): Avoid utime-h, too.
* lib/gettimeofday.c, lib/mktime.c, lib/time.in.h, lib/utimens.c:
* m4/gettimeofday.m4, m4/include_next.m4, m4/mktime.m4:
* m4/strftime.m4, m4/time_h.m4, m4/timegm.m4, m4/utimens.m4:
Copy from gnulib.
* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
2017-04-30 14:53:17 -07:00
Paul Eggert
7e4dae99d6 Merge from gnulib
This avoids incorporating the following, which I suspect are
more trouble for Emacs than they’re worth:
2017-04-29 stat, fstat: fix time_t etc. on native Windows platforms
* admin/merge-gnulib (AVOIDED_MODULES): Avoid stat, too.
* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
* lib/pathmax.h, lib/stat.c, m4/pathmax.m4, m4/stat.m4: Remove.
2017-04-30 00:40:33 -07:00
Glenn Morris
cee4128135 Merge from origin/emacs-25
784602b105 (origin/emacs-25) ; Add release notice
3a34412caa (tag: emacs-25.2) Set Emacs version to 25.2 and update AU...
56a4461a48 ; Move stray item from admin/notes/repo to CONTRIBUTE
2b0d111819 ; CONTRIBUTE: Remove stray header.
f2ab09ec60 Fix a typo in indexing the user manual
bc55a57423 * lisp/menu-bar.el (kill-this-buffer): Doc fix.  (Bug#26466)
a6d50401b4 Document 'line-pixel-height'
0c55cf43e6 * search.c (Fre_search_forward, Fre_search_backward): Imp...
c7ed57eaef Mention that processes start in default-directory (Bug#18...
856ec9ffa1 * src/xdisp.c (vmessage, message): Clarify commentary.
849a0aaa1c Belated fixes for admin.el's M-x make-manuals-dist
84938d7969 default-directory: Remark that it must be a directory name
3f0d047d2e Delete confuse statement in manual
ee1bd94dd0 Improve packaging documentation
fb18bff91f Expand manual section on quitting windows
9a73707964 Fix docstring of dabbrev-abbrev-char-regexp
afe8849bac * doc/misc/cl.texi (Iteration Clauses): Clarify example (...
ada79442c0 ;* doc/misc/info.texi (Choose menu subtopic): Improve ind...
d38fd9229c Narrow scope of modification hook renabling in org-src fo...
e0e9db4c84 ; Spelling fix

# Conflicts:
#	README
#	etc/AUTHORS
#	etc/HISTORY
#	lisp/ldefs-boot.el
2017-04-27 22:03:56 -07:00
Glenn Morris
8f2062d96b Make charprop.el provide a feature
* admin/unidata/unidata-gen.el (unidata-gen-charprop):
Provide a feature.
* lisp/loadup.el: Use the charprop feature.
2017-04-26 12:51:48 -04:00
Glenn Morris
5b0fdefb4c Generate each unicode lisp file independently
This is better for parallel builds, eg it eliminates race
conditions from having one process write multiple files.
* admin/unidata/Makefile.in (lparen, unifiles): New variables.
Parse unidata-gen.el, not charprop.el, to get the list of uni- files.
(all): Explicitly list the output lisp files.
(PHONY_EXTRAS): Remove.
(${unidir}/charprop.el): Change rule to just be for this file.
(${unifiles}): New rule to write each unicode lisp file.
(extraclean): Simplify.
* admin/unidata/unidata-gen.el (unidata-gen-charprop):
Quieten in batch mode.
(unidata-gen-files): Remove, no longer used.
* lisp/loadup.el: Update command-line parser.
2017-04-24 23:06:27 -07:00
Glenn Morris
c1e71d3899 Further refactoring in unidata-gen.el
* admin/unidata/unidata-gen.el (unidata-gen-charprop):
New function, split from unidata-gen-files.
(unidata-gen-files): Use unidata-gen-charprop.
2017-04-24 23:06:27 -07:00
Glenn Morris
735ae5cd3a Allow unidata-gen-file to work independently
* admin/unidata/unidata-gen.el (unidata-gen-file):
Make it work as a stand-alone function in batch mode.
(unidata-gen-files): Pass extra arguments to unidata-gen-file.
2017-04-24 23:06:27 -07:00
Glenn Morris
e0150de010 Preparatory refactoring in unidata-gen.el
* admin/unidata/unidata-gen.el (unidata-gen-file):
New function, split from unidata-gen-files.
(unidata-gen-files): Use unidata-gen-file.
2017-04-24 23:06:27 -07:00
Glenn Morris
d22ddf5944 Write each generated character property lisp file only once
* admin/unidata/unidata-gen.el (unidata-file-alist):
Rename from unidata-prop-alist.  All users changed.
Use file name rather than property name as the key.
(unidata-prop-prop): New function.
(unidata-prop-index, unidata-prop-generator, unidata-prop-docstring)
(unidata-prop-describer, unidata-prop-default, unidata-prop-val-list):
Change to parse the argument rather than unidata-prop-alist.
(unidata-gen-table-character, unidata-gen-table)
(unidata-gen-table-symbol, unidata-gen-table-integer)
(unidata-gen-table-numeric, unidata-gen-table-word-list)
(unidata-gen-table-name, unidata-gen-table-decomposition)
(unidata-gen-table-special-casing): Pass index as an argument.
(unidata-check): Adapt to unidata-file-alist.
Pass index to generator functions.
(unidata-gen-files): Adapt to unidata-file-alist.
Write each output file once only.  Overwrite rather than delete.
2017-04-24 23:06:27 -07:00
Noam Postavsky
56a4461a48 ; Move stray item from admin/notes/repo to CONTRIBUTE
* admin/notes/repo: Remove stray item.
* CONTRIBUTE: Move it here, fix incorrect references to "branch".
2017-04-19 21:43:05 -04:00
Michal Nazarewicz
b3b9b258c4 Support casing characters which map into multiple code points (bug#24603)
Implement unconditional special casing rules defined in Unicode standard.

Among other things, they deal with cases when a single code point is
replaced by multiple ones because single character does not exist (e.g.
‘fi’ ligature turning into ‘FL’) or is not commonly used (e.g. ß turning
into SS).

* admin/unidata/SpecialCasing.txt: New data file pulled from Unicode
standard distribution.
* admin/unidata/README: Mention SpecialCasing.txt.

* admin/unidata/unidata-get.el (unidata-gen-table-special-casing,
unidata-gen-table-special-casing--do-load): New functions generating
‘special-uppercase’, ‘special-lowercase’ and ‘special-titlecase’
character Unicode properties built from the SpecialCasing.txt Unicode
data file.

* src/casefiddle.c (struct casing_str_buf): New structure for
representing short strings used to handle one-to-many character
mappings.

(case_character_imlp): New function which can handle one-to-many
character mappings.
(case_character, case_single_character): Wrappers for the above
functions.  The former may map one character to multiple (or no)
code points while the latter does what the former used to do (i.e.
handles one-to-one mappings only).

(do_casify_natnum, do_casify_unibyte_string,
do_casify_unibyte_region): Use case_single_character.
(do_casify_multibyte_string, do_casify_multibyte_region): Support new
features of case_character.
* (do_casify_region): Updated to reflact do_casify_multibyte_string
changes.

(casify_word): Handle situation when one character-length of a word
can change affecting where end of the word is.

(upcase, capitalize, upcase-initials): Update documentation to mention
limitations when working on characters.

* test/src/casefiddle-tests.el (casefiddle-tests-char-properties):
Add test cases for the newly introduced character properties.
(casefiddle-tests-casing): Update test cases which are now passing.

* test/lisp/char-fold-tests.el (char-fold--ascii-upcase,
char-fold--ascii-downcase): New functions which behave like old ‘upcase’
and ‘downcase’.
(char-fold--test-match-exactly): Use the new functions.  This is needed
because otherwise fi and similar characters are turned into their multi-
-character representation.

* doc/lispref/strings.texi: Describe issue with casing characters versus
strings.
* doc/lispref/nonascii.texi: Describe the new character properties.
2017-04-06 20:54:58 +02:00