1. 06 Jul, 2019 1 commit
    • Konstantin Kharlamov's avatar
      Replace manually crafted hex regexes with [:xdigit:] · dfc322d7
      Konstantin Kharlamov authored
      * admin/charsets/mapconv:
      * build-aux/gitlog-to-changelog (parse_amend_file, git_dir_option):
      * lisp/progmodes/verilog-mode.el (verilog-delay-re):
      (verilog-type-font-keywords, verilog-read-always-signals-recurse):
      * lisp/progmodes/vera-mode.el (vera-font-lock-keywords):
      * test/src/emacs-module-tests.el (mod-test-sum-test):
      * lisp/xml.el: (xml--entity-replacement-text):
      * lisp/version.el (emacs-repository-version-git):
      * lisp/textmodes/sgml-mode.el (sgml-quote):
      * lisp/textmodes/css-mode.el (css-escapes-re)
      * lisp/progmodes/prolog.el (prolog-syntax-propertize-function):
      * lisp/progmodes/hideif.el (hif-token-regexp, hif-tokenize):
      * lisp/progmodes/ebnf-dtd.el: (ebnf-dtd-attlistdecl)
      (ebnf-dtd-entitydecl, ebnf-dtd-lex):
      * lisp/progmodes/ebnf-ebx.el (ebnf-ebx-hex-character):
      * lisp/progmodes/ebnf-abn.el (ebnf-abn-character):
      * lisp/progmodes/cperl-mode.el (cperl-highlight-charclass)
      * lisp/progmodes/cc-mode.el (c-maybe-quoted-number-head)
      (c-maybe-quoted-number, c-parse-quotes-before-change)
      (c-parse-quotes-after-change, c-quoted-number-head-before-point)
      * lisp/progmodes/ada-mode.el (featurep, ada-in-numeric-literal-p)
      * lisp/org/org-mobile.el (org-mobile-copy-agenda-files)
      * lisp/org/org-table.el (org-table-number-regexp):
      * lisp/nxml/xsd-regexp.el (xsdre-gen-categories):
      * lisp/nxml/xmltok.el (let*):
      * lisp/nxml/rng-xsd.el (rng-xsd-convert-hex-binary)
      * lisp/nxml/rng-uri.el (rng-uri-file-name-1)
      (rng-uri-unescape-multibyte, rng-uri-unescape-unibyte)
      * lisp/nxml/rng-cmpct.el (rng-c-process-escapes):
      * lisp/nxml/nxml-maint.el (nxml-insert-target-repertoire-glyph-set):
      * lisp/net/shr-color.el (shr-color->hexadecimal):
      * lisp/mail/rfc2231.el (rfc2231-decode-encoded-string):
      * lisp/international/mule-cmds.el (read-char-by-name):
      * lisp/htmlfontify.el (hfy-hex-regex):
      * lisp/gnus/nneething.el (nneething-decode-file-name):
      * lisp/gnus/mml-sec.el (mml-secure-find-usable-keys):
      * lisp/gnus/gnus-art.el (gnus-button-mid-or-mail-heuristic-alist):
      * lisp/faces.el (read-color):
      * lisp/epg.el (epg--status-ERRSIG, epg--status-VALIDSIG)
      (epg--status-SIG_CREATED, epg--decode-percent-escape)
      (epg--decode-hexstring, epg--decode-quotedstring)
      * lisp/emulation/cua-rect.el (cua-incr-rectangle):
      * lisp/dnd.el (dnd-unescape-uri):
      * lisp/cedet/semantic/lex.el (semantic-lex-number-expression):
      * lisp/cedet/semantic/java.el (semantic-java-number-regexp):
      * lisp/calc/calc-lang.el (pascal):
      * lisp/calc/calc-ext.el (math-read-number-fancy):
      * lisp/calc/calc-aent.el (math-read-token):
      Replace various combinations of [0-9a-fA-F] with [[:xdigit:]].
  2. 26 Jun, 2019 2 commits
  3. 22 Jun, 2019 1 commit
  4. 19 Jun, 2019 1 commit
    • Lars Ingebrigtsen's avatar
      Touch up the OKURI-NASI progress reporting · 7c1cbed1
      Lars Ingebrigtsen authored
      * lisp/international/ja-dic-cnv.el (skkdic-convert-okuri-ari)
      (skkdic-convert-postfix, skkdic-convert-prefix)
      (skkdic-collect-okuri-nasi): Use INFO progress reporting.
      (skkdic-set-okuri-nasi): Use the progress reporter instead of a
      per-1000 output.
  5. 18 Jun, 2019 2 commits
  6. 14 Jun, 2019 2 commits
  7. 08 Jun, 2019 1 commit
  8. 06 Jun, 2019 1 commit
  9. 04 Jun, 2019 1 commit
    • Paul Eggert's avatar
      Remove retired maintainers from comments · ca7b6a44
      Paul Eggert authored
      * lisp/international/quail.el, lisp/language/ind-util.el:
      * lisp/language/indian.el, lisp/mail/smtpmail.el, lisp/mwheel.el:
      * lisp/obsolete/longlines.el, lisp/progmodes/idlw-complete-structtag.el:
      * lisp/progmodes/idlw-help.el, lisp/progmodes/idlw-shell.el:
      * lisp/progmodes/idlw-toolbar.el, lisp/progmodes/idlwave.el:
      * lisp/progmodes/simula.el, lisp/ps-print.el, lisp/ps-samp.el:
      Remove Maintainer: lines for maintainers who have retired.
  10. 29 May, 2019 1 commit
  11. 28 May, 2019 1 commit
    • Stefan Monnier's avatar
      * lisp/international/mule-cmds.el (encode-coding-char): Fix ASCII case · 96a0d4fe
      Stefan Monnier authored
      Don't bother with string-as-multibyte since `string` already returns
      multibyte when needed.  Don't forget to encode when the string is
      ASCII, e.g. for ebcdic case and to make sure we always return
      a unibyte string.
      * test/lisp/international/mule-tests.el (mule-cmds-tests--encode-ebcdic):
      New test.
  12. 26 May, 2019 1 commit
    • Paul Eggert's avatar
      Remove Maintainer: when it duplicates Author: · 797ee587
      Paul Eggert authored
      The convention is that a file with Author: but not Maintainer:
      means the author is a maintainer, which makes it confusing
      when a file lists the same person as author and maintainer.
      Avoid the confusion by removing the duplicate Maintainer: line.
  13. 25 May, 2019 1 commit
    • Paul Eggert's avatar
      Go back to "Maintainer: emacs-devel@gnu.org" · f744797a
      Paul Eggert authored
      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.
  14. 20 May, 2019 1 commit
  15. 18 May, 2019 1 commit
    • Eli Zaretskii's avatar
      Fix visiting and saving UTF-16 encoded XML files · 6c9a1deb
      Eli Zaretskii authored
      * lisp/international/mule.el (sgml-xml-auto-coding-function):
      When the 'enncoding' tag specifies a UTF-16 encoding, enforce
      saving the buffer with BOM, per the XML spec.
      (xml-find-file-coding-system): Recognize UTF-16 encodings with
      BOM.  (Bug#35766)  (Bug#8282)
      * lisp/international/mule-cmds.el (select-safe-coding-system):
      Don't consider UTF-16 encodings with and without BOM as
      "different", so as not to annoy users with redundant questions
      about mismatch between the XML/SGML header and the selected
      explicit encoding.
  16. 17 May, 2019 1 commit
  17. 29 Apr, 2019 1 commit
  18. 19 Apr, 2019 1 commit
    • Paul Eggert's avatar
      Fix regexp branches that subsume other branches · 9e4bb0d2
      Paul Eggert authored
      Problems reported by Mattias Engdegård in:
      * lisp/arc-mode.el (archive-rar-summarize):
      * lisp/eshell/em-hist.el (eshell-hist-word-designator):
      * lisp/info.el (Info-dir-remove-duplicates):
      * lisp/international/ja-dic-cnv.el (skkdic-convert-postfix)
      (skkdic-convert-prefix, skkdic-collect-okuri-nasi):
      * lisp/progmodes/cc-awk.el (c-awk-esc-pair-re):
      * lisp/xml.el (xml-att-type-re):
      Omit regexp branches that subsume other branches.
      * lisp/progmodes/cperl-mode.el (cperl-beautify-regexp-piece):
      $ and ^ aren’t simple-codes.
  19. 09 Apr, 2019 1 commit
  20. 25 Mar, 2019 1 commit
  21. 24 Mar, 2019 1 commit
  22. 22 Mar, 2019 1 commit
    • Stefan Monnier's avatar
      Fix misuses of NULL when talking about the NUL character · 76fea1eb
      Stefan Monnier authored
      * lisp/subr.el (inhibit-null-byte-detection): Make it an obsolete alias.
      * src/coding.c (setup_coding_system): Use new name.
      (detect_coding): Rename null_byte_found => nul_byte_found.
      (detect_coding_system): Use new name.
      Rename null_byte_found => nul_byte_found.
      (Fdefine_coding_system_internal): Use new name.
      (syms_of_coding): Rename inhibit-null-byte-detection to
      * src/w16select.c (get_clipboard_data): null_char => nul_char.
      * src/json.c (check_string_without_embedded_nuls): Rename from
      (Fjson_parse_string): Adjust accordingly.
      * src/coding.h (enum define_coding_undecided_arg_index)
      (enum coding_attr_index): ...null_byte... => ...nul_byte....
      * lisp/info.el (info-insert-file-contents, Info-insert-dir):
      * lisp/international/mule.el (define-coding-system):
      * lisp/vc/vc-git.el (vc-git--call):
      * doc/lispref/nonascii.texi (Lisp and Coding Systems): Use the new name.
  23. 16 Mar, 2019 1 commit
    • Eli Zaretskii's avatar
      Improve locale and language environment setting at startup · 34dd4e0a
      Eli Zaretskii authored
      * lisp/international/mule-cmds.el (locale-language-names): Add
      more locales and their language environments.
      (set-locale-environment): Use w32-multibyte-code-page, if
      non-zero, as locale-coding-system.  (Bug#34684)
      * src/w32fns.c (globals_of_w32fns) <w32-multibyte-code-page>:
      New variable.
      * etc/NEWS: Mention w32-multibyte-code-page.
  24. 09 Mar, 2019 1 commit
    • Eli Zaretskii's avatar
      Import Unicode 12.0 data files · fddb915d
      Eli Zaretskii authored
      * admin/unidata/copyright.html:
      * admin/unidata/UnicodeData.txt:
      * admin/unidata/SpecialCasing.txt:
      * admin/unidata/NormalizationTest.txt:
      * admin/unidata/Blocks.txt:
      * admin/unidata/BidiMirroring.txt:
      * admin/unidata/BidiBrackets.txt: New versions from Unicode 12.0.
      * admin/unidata/unidata-gen.el (unidata-gen-file):
      * admin/unidata/blocks.awk (name2alias): Adapt to changes in
      new data files.
      * admin/notes/unicode: Update and improve instructions for
      importing a new Unicode Standard.
      * lisp/international/characters.el (char-width-table): Update
      lists of characters according to Unicode 12.0.
      * lisp/international/fontset.el (script-representative-chars):
      Add characters from new scripts to 'script-representative-chars'.
      (otf-script-alist): Update according to data on the MS site.
      * lisp/international/mule-cmds.el (ucs-names): Update unused
      ranges of codepoints according to Unicode 12.0.
      * test/lisp/international/ucs-normalize-tests.el
      (ucs-normalize-tests--failing-lines-part2): Update for the new
      NormalizationTest.txt file.
      * test/manual/BidiCharacterTest.txt: Update with the new
      version from Unicode 12.0.
  25. 05 Mar, 2019 1 commit
    • Paul Eggert's avatar
      Fix regular-expression glitches and typos · 3c94c7bc
      Paul Eggert authored
      Problems reported by Mattias Engdegård in:
      * admin/admin.el (set-version):
      * lisp/allout.el (allout-latexify-one-item):
      * lisp/arc-mode.el (archive-arc-rename-entry)
      * lisp/calc/calc-graph.el (calc-graph-set-styles)
      * lisp/calc/calc-help.el (calc-describe-key):
      * lisp/calc/calc-lang.el (math-compose-tex-func, eqn):
      * lisp/calc/calc.el (calcDigit-key):
      * lisp/cedet/ede/makefile-edit.el (makefile-macro-file-list):
      * lisp/cedet/ede/speedbar.el (ede-tag-expand):
      * lisp/cedet/semantic/sb.el (semantic-sb-show-extra)
      * lisp/comint.el (comint-substitute-in-file-name):
      * lisp/dired.el (dired-actual-switches):
      * lisp/emacs-lisp/chart.el (chart-rmail-from):
      * lisp/emacs-lisp/eieio-opt.el (eieio-sb-expand):
      * lisp/emacs-lisp/eieio-speedbar.el (eieio-speedbar-object-expand):
      * lisp/emacs-lisp/rx.el (rx-not, rx-atomic-p):
      * lisp/emulation/viper-ex.el (viper-get-ex-token)
      (viper-get-ex-pat, ex-set-read-variable):
      * lisp/epg.el (epg--status-SIG_CREATED):
      * lisp/erc/erc-speedbar.el (erc-speedbar-expand-user):
      (erc-speedbar-expand-channel, erc-speedbar-expand-server)
      * lisp/erc/erc.el (erc-is-message-ctcp-and-not-action-p)
      * lisp/eshell/em-dirs.el (eshell-parse-drive-letter, eshell/pwd):
      * lisp/find-dired.el (find-dired):
      * lisp/frame.el (frame-set-background-mode):
      * lisp/generic-x.el (apache-log-generic-mode):
      * lisp/gnus/gnus-art.el (gnus-button-valid-localpart-regexp):
      * lisp/gnus/gnus.el (gnus-short-group-name):
      * lisp/gnus/message.el (message-mailer-swallows-blank-line):
      * lisp/ibuffer.el (ibuffer-fontification-alist):
      * lisp/ido.el (ido-set-matches-1):
      * lisp/info-xref.el (info-xref-lock-file-p):
      * lisp/info.el (Info-dir-remove-duplicates)
      (Info-unescape-quotes, Info-split-parameter-string)
      * lisp/international/mule.el (sgml-html-meta-auto-coding-function):
      * lisp/isearch.el (isearch-pre-command-hook):
      * lisp/language/ethio-util.el (ethio-fidel-to-tex-buffer):
      * lisp/mail/rmail.el (rmail-collect-deleted):
      * lisp/mh-e/mh-alias.el (mh-alias-suggest-alias):
      * lisp/mh-e/mh-comp.el (mh-forward):
      * lisp/mh-e/mh-search.el (mh-index-next-folder)
      * lisp/mh-e/mh-xface.el (mh-picon-get-image):
      * lisp/minibuffer.el (completion--embedded-envvar-re):
      * lisp/net/ange-ftp.el (ange-ftp-ls-parser):
      * lisp/net/goto-addr.el (goto-address-mail-regexp)
      * lisp/net/pop3.el (pop3-read-response, pop3-user)
      (pop3-pass, pop3-apop):
      * lisp/net/tramp.el (tramp-ipv6-regexp)
      * lisp/nxml/nxml-maint.el (nxml-insert-target-repertoire-glyph-set):
      * lisp/nxml/rng-uri.el (rng-uri-escape-multibyte):
      * lisp/nxml/rng-xsd.el (rng-xsd-convert-any-uri):
      * lisp/obsolete/pgg.el (pgg-fetch-key):
      * lisp/obsolete/vip.el (vip-get-ex-token):
      * lisp/org/ob-core.el (org-babel-string-read):
      * lisp/org/org-agenda.el:
      * lisp/org/org-element.el (org-element-keyword-parser):
      * lisp/org/org-list.el (org-list-indent-item-generic):
      * lisp/org/org-mhe.el (org-mhe-get-message-folder-from-index):
      * lisp/org/org-mobile.el (org-mobile-apply):
      * lisp/org/org-mouse.el (org-mouse-context-menu):
      * lisp/org/org-plot.el (org-plot/gnuplot):
      * lisp/org/org-protocol.el (org-protocol-flatten-greedy):
      * lisp/org/org-table.el (org-table-copy-down)
      (org-table-get-stored-formulas, org-table-recalculate)
      * lisp/org/org.el (org-translate-link-from-planner)
      * lisp/org/ox-ascii.el (org-ascii-item):
      * lisp/org/ox-latex.el (org-latex-clean-invalid-line-breaks):
      * lisp/org/ox.el (org-export-expand-include-keyword):
      * lisp/progmodes/ada-xref.el (ada-treat-cmd-string):
      * lisp/progmodes/cfengine.el (cfengine2-font-lock-keywords):
      * lisp/progmodes/cperl-mode.el (cperl-to-comment-or-eol)
      (cperl-find-pods-heres, cperl-fix-line-spacing)
      (cperl-have-help-regexp, cperl-word-at-point-hard)
      * lisp/progmodes/dcl-mode.el (dcl-option-value-offset):
      * lisp/progmodes/etags.el (tag-implicit-name-match-p):
      * lisp/progmodes/fortran.el (fortran-fill):
      * lisp/progmodes/gdb-mi.el (gdb-speedbar-expand-node)
      * lisp/progmodes/grep.el (grep-mode-font-lock-keywords):
      * lisp/progmodes/gud.el (gud-jdb-find-source-using-classpath):
      * lisp/progmodes/js.el (js--continued-expression-p):
      * lisp/progmodes/m4-mode.el (m4-font-lock-keywords):
      * lisp/progmodes/meta-mode.el (meta-indent-level-count):
      * lisp/progmodes/mixal-mode.el (mixal-font-lock-keywords):
      * lisp/progmodes/opascal.el (opascal-find-unit-in-directory):
      * lisp/progmodes/pascal.el (pascal-progbeg-re):
      * lisp/progmodes/ruby-mode.el (ruby-expression-expansion-re)
      (ruby-expr-beg, ruby-parse-partial)
      (ruby-toggle-string-quotes, ruby-font-lock-keywords):
      * lisp/progmodes/sql.el (sql--make-help-docstring):
      * lisp/progmodes/verilog-mode.el (verilog-coverpoint-re)
      * lisp/progmodes/vhdl-mode.el (vhdl-resolve-env-variable)
      (vhdl-speedbar-expand-project, vhdl-speedbar-expand-entity)
      (vhdl-speedbar-expand-config, vhdl-speedbar-expand-package)
      * lisp/speedbar.el (speedbar-dired, speedbar-tag-file)
      * lisp/textmodes/dns-mode.el (dns-mode-font-lock-keywords):
      * lisp/textmodes/flyspell.el (flyspell-debug-signal-word-checked):
      * lisp/textmodes/ispell.el (ispell-process-line):
      * lisp/textmodes/reftex-cite.el (reftex-end-of-bib-entry):
      * lisp/textmodes/reftex-ref.el (reftex-replace-prefix-escapes):
      * lisp/url/url-parse.el (url-generic-parse-url):
      * lisp/url/url-util.el (url-truncate-url-for-viewing):
      * lisp/vc/diff-mode.el (diff-unified->context):
      * lisp/vc/vc-bzr.el (vc-bzr-error-regexp-alist):
      * lisp/vc/vc-cvs.el (vc-cvs-parse-status):
      * lisp/woman.el (woman0-el, woman-if-ignore)
      * lisp/xdg.el (xdg--substitute-home-env):
      Fix regular-expression infelicities and typos.
      Fix regular expression typos
      Fix typos reported by Mattias Engdegård in:
      that occurred in preloaded modules.
      * lisp/frame.el (frame-set-background-mode):
      * lisp/international/mule.el (sgml-html-meta-auto-coding-function):
      * lisp/isearch.el (isearch-pre-command-hook):
      * lisp/minibuffer.el (completion--embedded-envvar-re):
  26. 02 Mar, 2019 2 commits
    • Eli Zaretskii's avatar
      Improve documentation of 'auto-coding-functions' · f872b65b
      Eli Zaretskii authored
      * doc/lispref/nonascii.texi (Default Coding Systems): Clarify
      that the functions in 'auto-coding-functions' are called both
      for decoding and for encoding.
      * lisp/international/mule.el (auto-coding-functions): Doc fix.
    • Eli Zaretskii's avatar
      Fix visiting XML files with non-Unix EOL format · 04cad5e8
      Eli Zaretskii authored
      * lisp/international/mule.el (sgml-xml-auto-coding-function)
      (sgml-html-meta-auto-coding-function): Don't use
      'buffer-file-coding-system' if the buffer is unibyte.
  27. 24 Feb, 2019 1 commit
    • Eric Abrahamsen's avatar
      Make pinyin to Chinese character mapping available to elisp · 28f7e981
      Eric Abrahamsen authored
      * leim/Makefile.in: Build the file pinyin.el from pinyin.map.
      * lisp/international/titdic-cnv.el (pinyin-convert): New function that
        writes the library pinyin.el, containing a new constant
      * .gitignore: Ignore the generated pinyin.el file.
  28. 13 Feb, 2019 1 commit
  29. 03 Feb, 2019 1 commit
  30. 02 Feb, 2019 1 commit
  31. 21 Jan, 2019 1 commit
    • Stefan Monnier's avatar
      * lisp/international/titdic-cnv.el: Use lexical-binding · 5259fdf9
      Stefan Monnier authored
      (tit-process-body): Remove unused vars 'template' and 'second'.
      (tsang-quick-converter): Remove unused args 'name' and 'title'.
      Remove unused var 'slot'.
      (tsang-b5-converter, quick-b5-converter, tsang-cns-converter)
      (quick-cns-converter, py-converter, ziranma-converter)
      (ctlau-converter, ctlau-gb-converter, ctlau-b5-converter):
      Remove unused args 'name' and 'title'.
      (miscdic-convert): Remove unused var 'dicbuf'.
      Don't pass 'name' and 'title' to the conversion function.
  32. 15 Jan, 2019 1 commit
    • Daniel Colascione's avatar
      Add portable dumper · d12e5d00
      Daniel Colascione authored
      Add a new portable dumper as an alternative to unexec.  Use it by default.
      * src/dmpstruct.awk: New file.
      * src/doc.c (get_doc_string): use will_dump_p().
      * src/editfns.c (styled_format): silence compiler warning
      with UNINIT.
      * src/emacs-module.c (syms_of_module): staticpro ltv_mark.
      * src/emacs.c (gflags): new variable.
      (init_cmdargs): unwrap
      (string_starts_with_p, find_argument, dump_error_to_string)
      (load_pdump): new functions.
      (main): detect pdumper and --temacs invocation; actually load
      portable dump when detected; set gflags as appropriate; changes to
      init functions throughout to avoid passing explicit
      'initialized' argument.
      * src/eval.c (inhibit_lisp_code): remove unused variable.
      (init_eval_once_for_pdumper): new function.
      (init_eval_once): call it.
      * src/filelock.c: CANNOT_DUMP -> will_dump_p()
      * src/fingerprint-dummy.c: new file
      * src/fingerprint.h: new file
      * src/fns.c: CANNOT_DUMP -> will_dump_p(), etc.
      (weak_hash_tables): remove
      (hashfn_equal, hashfn_eql): un-staticify
      (make_hash_table): set new 'next_weak' hash table field; drop
      global weak_hash_tables logic.
      (copy_hash_table): drop global weak_hash_tables logic.
      (hash_table_rehash): new function.
      (hash_lookup, hash_put, hash_remove_from_table, hash_clear):
      rehash if needed.
      (sweep_weak_table): un-staticify; explain logic; bool-ify.
      (sweep_weak_hash_tables): remove function.
      * src/font.c (syms_of_font): remember pdumper stuff.
      * src/fontset.c (syms_of_fontset): remember pdumper stuff.
      * src/frame.c (make_initial_frame): don't reset Vframe_list.
      (init_frame_once_for_pdumper, init_frame_once): new functions.
      (syms_of_frame): remove redundant staticpro.
      * src/fringe.c (init_fringe_once_for_pdumper): new functin.
      (init_fringe_once): call it.
      * src/ftcrfont.c (syms_of_ftcrfont_for_pdumper): new function.
      (syms_of_ftcrfont): call it.
      * src/ftfont.c (syms_of_ftfont_for_pdumper): new function.
      (syms_of_ftfont): call it.
      * src/ftxont.c (syms_of_ftxfont_for_pdumper): new function.
      (syms_of_ftxfont): call it.
      * src/gmalloc.c: adjust for pdumper througout
      (DUMPED): remove weird custom dumped indicator.
      * src/gnutls.c (syms_of_gnutls): pdumper note for
      * src/image.c (syms_of_image): add pdumper comment,
      initializer note.
      * src/insdel.c (prepare_to_modify_buffer_1): account
      for buffer contents possibly being in dump image.
      * src/keyboard.c (syms_of_keyboard_for_pdumper): new function.
      (syms_of_keyboard): staticpro more; call pdumper syms function.
      * src/lisp.h: add comments throughout
      (gflags): declare.
      (will_dump_p, will_bootstrap_p, will_dump_with_pdumper_p)
      (dumped_with_pdumper_p, will_dump_with_unexec_p)
      (dumped_with_unexec_p, definitely_will_not_unexec_p): new
      (POWER_OF_2, ROUNDUP): move macros.
      (PSEUDOVECTOR_TYPE, PSEUDOVECTOR_TYPEP): take vectorlike header
      pointer instead of vector; constify.
      (Lisp_Hash_Table): add comment about need to rehash on access; add
      comment for next_weak.
      (hash_table_rehash): declare.
      (hash_rehash_needed_p, hash_rehash_if_needed): new functions.
      (finalizers, doomed_finalizers): declare extern.
      (SUBR_SECTION_ATTRIBUTE): new macro.
      (staticvec, staticidx): un-static-ify.
      (sweep_weak_hash_tables): remove declaration.
      (sweep_weak_table): declare.
      (hashfn_eql, hashfn_equal): declare.
      (number_finalizers_run): new variable.
      (Vdead): externify when ENABLE_CHECKING.
      (gc_root_type): new enumeration.
      (gc_root_visitor): new struct.
      (visit_static_gc_roots): declare.
      (vectorlike_nbytes): declare.
      (vector_nbytes): define as trivial inline function wrapper for
      (init_obarray_once): change signature.
      (primary_thread): extern-ify.
      (init_buffer): change signature.
      (init_frame_once): declare.
      * src/lread.c (readevalloop): adjust for new dumped predicates.
      (init_obarray_once): new function.
      (ndefsubr): new variable.
      (defsubr): increment it.
      (load_path_check): adjust for pdumper.
      (load_path_default): use pdumper functions; adjust for
      dump search.
      * src/macfont.m (macfont_init_font_change_handler): avoid
      shadowing global.
      (syms_of_macfont_for_pdumper): new function.
      (syms_of_macfont): call it.
      * src/menu.c (syms_of_menu): staticpro more stuff.
      * src/minibuf.c (Ftry_completion): rehash if needed.
      (init_minibuf_once_for_pdumper): new function.
      (init_minibuf_once): call it.
      * src/nsfont.m (syms_of_nsfns): staticpro more.
      * src/nsfont.m (syms_of_nsfont_for_pdumper): new function.
      (syms_of_nsfont): call it.
      * src/nsterm.m (syms_of_nsfont): remember pdumper stuff.
      * src/pdumper.c: new file.
      * src/pdumper.h: new file.
      * src/process.c (init_process_emacs): use new pdumper functions
      instead of CANNOT_DUMP.
      * src/profiler.c (syms_of_profiler_for_pdumper): new function.
      (syms_of_profiler_for_pdumper): call it.
      * src/search.c (syms_of_search_for_pdumper): new function.
      (syms_of_search_for_pdumper): call it.
      * src/sheap.c (bss_sbrk_did_unexec): remove.
      * src/sheap.h (bss_sbrk_did_unexec): remove.
      * src/syntax.c (syms_of_syntax): don't redundantly staticpro
      * src/sysdep.c: use will_dump_with_unexec_p() instead of bss
      hack thing.
      * src/syssignals.h (init_sigsegv): declare.
      * src/systime.h (init_timefns): remove bool from signature.
      * src/textprop.c (syms_of_textprop): move staticpro.
      * src/thread.c (main_thread_p): constify.
      * src/thread.h (main_thread_p): constify.
      * src/timefns.c (init_timefns): remove bool from signature.
      (syms_of_timefns_for_pdumper): new function.
      (syms_of_timefns): call it.
      * src/w32.c: rearrange code.
      * src/w32.h (w32_relocate): declare.
      * src/w32fns.c (syms_of_w32fns): add pdumper note.
      * src/w32font.c (syms_of_w32font_for_pdumper): new function.
      (syms_of_w32font): call it.
      * src/w32heap.c (using_dynamic_heap): new variable.
      (init_heap): use it.
      * src/w32menu.c (syms_of_w32menu): add pdumper note.
      * src/w32proc.c
      (ctrl_c_handler, mainCRTStartup, _start, open_input_file)
      (rva_to_section, close_file_data): move here.
      * src/w32uniscribe.c (syms_of_w32uniscribe_for_pdumper):
      new function.
      (syms_of_w32uniscribe): call it.
      * src/window.c (init_window_once_for_pdumper): new function.
      (init_window_once): call it; staticpro more stuff.
      * src/xfont.c (syms_of_xfont_for_pdumper): new function.
      (syms_of_xfont): call it.
      * src/xftfont.c (syms_of_xftfont_for_pdumper): new function.
      (syms_of_xftfont): call it.
      * src/xmenu.c (syms_of_xmenu_for_pdumper): new function.
      (syms_of_xmenu): call it.
      * src/xselect.c (syms_of_xselect_for_pdumper): new function.
      (syms_of_xselect): call it.
      * src/xsettings.c (syms_of_xsettings): add more pdumper notes.
      * src/term.c (syms_of_xterm): add pdumper note.
      * src/dispnew.c (init_faces_initial): new function.
      (init_display_interactive): rename from init_display; use
      will_dump_p instead of !initialized.  Initialize faces early for
      pdumper if needed.
      (init_display): new function.
      (syms_of_display_for_pdumper): new function.
      (syms_of_display): call it.
      * src/dbusbind.c (syms_of_dbusbind): Add TODO for bus reset
      on pdumper load.
      * src/data.c (Fdefalias): Use will_dump_p
      instead of Vpurify_flag.
      (Fmake_variable_buffer_local): silence compiler warning with -Og
      by making valcontents UNINIT.
      (arith_driver): silence compiler warning with UNINIT.
      * src/conf_post.h (ATTRIBUTE_SECTION): new macro.
      * src/composite.c (composition_gstring_put_cache): rehash hash
      table if needed.
      * src/coding.c (init_coding_once, syms_of_coding): remember
      pdumper stuff.
      * src/charset.h (charset_table_size, charset_table_user): declare.
      * src/charset.c (charset_table_used, charset_table_size): un-static.
      (init_charset_oncem, syms_of_charset): remember pdumper stuff.
      * src/category.c (category_table_version): remove obsolete
      * src/callint.c (syms_of_callint): staticpro 'preserved_fns'
      (init_callproc): use will_dump_p instead of !CANNOT_DUMP.
      * src/bytecode.c (exec_byte_code): rehash table tables if needed
      * src/buffer.c (alloc_buffer_text, free_buffer_text): account for
      (init_buffer_once): add TODO; remember stuff for pdumper.
      (init_buffer): don't take initialized argument; adjust
      for pdumper.
      * src/atimer.c (init_atimer): initialize subr only if
      * src/alloc.c: (vector_marked_p, set_vector_marked)
      (vectorlike_marked_p, set_vectorlike_marked, cons_marked_p)
      (set_cons_marked, string_marked_p, set_string_marked)
      (symbol_marked_p, set_symbol_marked, interval_marked_p)
      (set_interval_marked): new accessor routines.  Use them
      instead of raw GC access throughout.
      (Vdead): make non-static when ENABLE_CHECKING.
      (vectorlike_nbytes): rename of 'vector_nbytes'; take a vectorlike
      header as input instead of a vector.
      (number_finalizers_run): new internal C variable.
      (mark_maybe_object): check for pdumper objects.
      (valid_pointer_p): don't be gratuitously inefficient under rr(1).
      (make_pure_c_string): add support for size_byte = -2 mode
      indicating that string data points into Emacs image rodata.
      (visit_vectorlike_root): visits GC roots embedded in
      vectorlike objects.
      (visit_buffer_root): visits GC roots embedded in
      our totally-not-a-buffer buffer global objects.
      (visit_static_gc_roots): visit GC roots in the Emacs data section.
      (mark_object_root_visitor): root callback used for conventional GC
      (weak_hash_tables): new internal variable for tracking found weak
      hash tables during GC.
      (mark_and_sweep_weak_table_contents): new weak hash table marking.
      (garbage_collect_1): use new GC root visitor machinery.
      (mark_vectorlike): accept a vectorlike_header instead of a
      (mark_frame, mark_window, mark_hash_table): new functions.
      (mark_object): initialize 'm'; check for pdumper objects and use
      new mark-bit accessors throughout.  Remove some object-specific
      marking code and move to helper functions above.
      (survives_gc_p): check for pdumper objects.
      (gc-sweep): clear pdumper mark bits.
      (init_alloc_once_for_pdumper): new helper function for early init
      called both during normal init and pdumper load.
      (init_alloc_once): pdumper integration.
      * src/Makefile.in: Rewrite dumping for pdumper; add pdumper.o;
      invoke temacs with --temacs command line option; build dmpstruct.h
      from dmpstruct.awk; stop relying on CANNOT_DUMP; clean up pdumper
      intermediate files during build.
      * nextstep/Makefile.in: build emacs.pdmp into NS packages
      * lisp/startup.el: account for new '--temacs' and '--dump-file'
      command line option.
      * lisp/loadup.el: rewrite early init to account for pdumper; use
      injected 'dump-mode' variable (set via the new '--temacs' option)
      instead of parsing command line.
      * lisp/cus-start.el: Check 'dump-mode' instead of 'purify-flag',
      since the new 'dump-mode'
      * lib-src/make-fingerprint.c: new program
      * lib-src/Makefile.in: built make-fingerprint utility program
      * configure.ac: Add --with-pdumper toggle to control pdumper
      support; add --with-unexec toggle to control unexec support.
      Add --with-dumping option to control which dumping strategy we use
      by default.  Adjust for pdumper throughout.  Check for
      * Makefile.in: Add @DUMPING@ substitution; add pdumper mode.
      * .gitignore: Add make-fingerprint, temacs.in, fingerprint.c,
      dmpstruct.h, and pdumper dump files.
  33. 08 Jan, 2019 2 commits
    • Stefan Monnier's avatar
      Use utf-8 coding system for all our Elisp files · b8c062ee
      Stefan Monnier authored
      * lisp/international/ja-dic-cnv.el:
      * lisp/international/ja-dic-utl.el:
      * lisp/international/kinsoku.el:
      * lisp/international/kkc.el:
      * lisp/language/japan-util.el:
      * lisp/language/japanese.el:
      * lisp/leim/quail/cyril-jis.el:
      * lisp/leim/quail/hanja-jis.el:
      * lisp/leim/quail/japanese.el:
      * lisp/leim/quail/py-punct.el:
      * lisp/leim/quail/pypunct-b5.el: Use utf-8 coding system.
      * lisp/international/titdic-cnv.el: Use utf-8-emacs coding system.
    • Stefan Monnier's avatar
      * lisp/international/titdic-cnv.el: Save generated files with utf-8 · ce08594b
      Stefan Monnier authored
      (titdic-convert, miscdic-convert): Use utf-8 when writing and don't
      bother putting a `coding:` tag since utf-8 is the default anyway.
  34. 01 Jan, 2019 1 commit
  35. 04 Dec, 2018 1 commit
    • Eli Zaretskii's avatar
      Support IBM038 (a.k.a. "EBCDIC-INT") encoding · 6d898918
      Eli Zaretskii authored
      * lisp/international/mule-conf.el (ibm038): New charset.
      (ebcdic-int, cp038): Alias charsets of ibm038.
      * lisp/language/english.el (ibm038): New coding-system.
      (ebcdic-int, cp038): Alias coding-systems of ibm038.
      * etc/NEWS: Announce the new coding system ibm038.