1. 18 Feb, 2019 10 commits
  2. 17 Feb, 2019 3 commits
    • Juri Linkov's avatar
      * lisp/tar-mode.el (tar--try-jka-compr): Remove. (Bug#34251) · 4f24b4a6
      Juri Linkov authored
      (tar-extract): Call archive-try-jka-compr instead of tar--try-jka-compr.
      
      * lisp/arc-mode.el (archive-try-jka-compr): Call set-buffer-multibyte
      after erase-buffer.
      4f24b4a6
    • Alan Mackenzie's avatar
      Fontify C function identifiers in parentheses correctly (e.g. in lisp.h) · adeea448
      Alan Mackenzie authored
      Fix handling of CC Mode's syntactic WS cache.  Make noise-macro option
      variables buffer local.
      
      * lisp/progmodes/cc-engine.el (c-put-is-sws, c-put-in-sws, c-remove-is-sws)
      (c-remove-in-sws c-remove-is-and-in-sws): Add edebug specs.
      (c-invalidate-sws-region-before): Add a `beg' parameter.  Handle noise
      macros like other literals.
      (c-invalidate-sws-region-after-del): Move the adjustment of (cdr
      c-sws-lit-limits) due to buffer change to c-invalidate-sws-region-after.
      (c-invalidate-sws-region-after-ins): Move (goto-char end) to the correct
      place.
      (c-invalidate-sws-region-after): Adjust (cdr c-sws-lit-limits) due to buffer
      change.  Handle noise macros.
      (c-backward-sws): Set simple-ws-beg appropriately when the start point is in
      the middle of a noise macro.
      (c-forward-decl-or-cast-1): Recognize a function identifier being declared in
      parentheses.
      
      * lisp/promodes/cc-mode.el (c-before-change): Supply a `beg' argument to
      c-invalidate-sws-region-before.
      
      * lisp/progmodes/cc-vars.el (c-noise-macro-with-parens-name-re)
      (c-noise-macro-name-re, c-noise-macro-names, c-noise-macro-with-parens-names):
      Make these buffer local variables.
      adeea448
    • Alan Mackenzie's avatar
      * Put INLINE and ATTRIBUTE_NO_SANITIZE_UNDEFINED into c-noise-macro-names · 7898568b
      Alan Mackenzie authored
      * .dir-locals (entry for c-mode): Put the two strings into
      c-noise-macro-names.
      7898568b
  3. 16 Feb, 2019 7 commits
  4. 15 Feb, 2019 18 commits
  5. 14 Feb, 2019 2 commits
    • João Távora's avatar
      Change scoring strategy for 'flex' completion style · 0d19e08d
      João Távora authored
      The previous strategy had problems comparing scores of matches to
      strings of different lengths.  This one seems slightly more sensible,
      and uses a new constant `flex-score-match-tightness' instead of the
      more abstract `flex-score-falloff'.
      
      It's not completely without problems, and I think it shouldn't count
      "holes" at the front and at the back, but that needs a different
      "pattern-to-regexp" conversion in completion-pcm--hilit-commonality.
      
      (defun test ()
        (mapcar (lambda (a)
                  (cons (substring-no-properties a)
                        (get-text-property 0 'completion-score a)))
                (sort (completion-pcm--hilit-commonality
                        '(prefix "f" star "o" star "o" point)
                        '("foo"
                          "barfoobaz"
                          "foobarbaz"
                          "barbazfoo"
                          "fabrobazo"
                          "foot"
                          "foto"
                          "fotttttttttttttttttttttttto"))
            (lambda (a b)
              (> (get-text-property 0 'completion-score a)
                 (get-text-property 0 'completion-score b))))))
      
      (let ((flex-score-match-tightness 100)) (test))
      => (("foo" . 1.0)
          ("foot" . 0.375)
          ("foto" . 0.375)
          ("foobarbaz" . 0.16260162601626016) ;; one hole
          ("barbazfoo" . 0.16260162601626016) ;; one hole
          ("barfoobaz" . 0.10964912280701755) ;; two holes
          ("fabrobazo" . 0.10964912280701755) ;; two holes
          ("fotttttttttttttttttttttttto" . 0.04982561036372696))
      
      (let ((flex-score-match-tightness 0.1)) (test))
      => (("foo" . 1.0)
          ("foot" . 0.375)
          ("foto" . 0.375)
          ("barfoobaz" . 0.007751937984496124) ;; two holes
          ("fabrobazo" . 0.007751937984496124) ;; two holes
          ("foobarbaz" . 0.00641025641025641)  ;; one hole
          ("barbazfoo" . 0.00641025641025641)  ;; one hole
          ("fotttttttttttttttttttttttto" . 0.0004789272030651341))
      
      * lisp/minibuffer.el (flex-score-falloff): Rename to
      flex-score-match-tightness.
      (completion-pcm--hilit-commonality): Update function.
      0d19e08d
    • Mattias Engdegård's avatar
      Add categories L, R, SPC and . to `rx' doc string · a4c7de35
      Mattias Engdegård authored
      * lisp/emacs-lisp/rx.el (rx): Add new categories to doc string.
      a4c7de35