1. 25 Apr, 2019 1 commit
    • Stephen Leake's avatar
      Add new file completion tables, change project.el to allow using them · d2a5283a
      Stephen Leake authored
      * lisp/file-complete-root-relative.el: New file.
      
      * lisp/uniquify-files.el: New file.
      
      * test/lisp/progmodes/uniquify-files-resources/: New directory
      containing files for testing uniquify-files.
      
      * test/lisp/progmodes/uniquify-files-test.el: New file; test
      uniquify-files.
      
      * lisp/files.el (path-files): New function; useful with new completion
      tables.
      
      * lisp/progmodes/project.el (project-file-completion-table): Use
      file-complete-root-relative completion table.
      (project-find-file): Add optional FILENAME parameter.
      (project--completing-read-strict): Rewrite to just use the given
      completion table; extracting the common directory is now done by
      file-complete-root-relative. This also allows using the new
      uniquify-files completion table.
      
      * lisp/minibuffer.el (completion-category-defaults): Add
      uniquify-file.
      (completing-read-default): Add final step to call completion table
      with 'alist action if supported.
      d2a5283a
  2. 24 Apr, 2019 1 commit
    • Dmitry Gutov's avatar
      Fix project-find-regexp search for '--' · f0e026a8
      Dmitry Gutov authored
      * lisp/progmodes/project.el (project--find-regexp-in-files):
      Add an explicit '-e' before the pattern.  Fixing the ability to
      search for '--'.  Reported by Juri Linkov <juri@linkov.net>.
      f0e026a8
  3. 14 Apr, 2019 1 commit
  4. 11 Mar, 2019 1 commit
  5. 14 Feb, 2019 1 commit
  6. 07 Feb, 2019 3 commits
  7. 02 Feb, 2019 1 commit
    • Felicián Németh's avatar
      Fix Bug#34221 · 2f55b971
      Felicián Németh authored
      * lisp/progmodes/project.el (project--files-in-directory):
      Support remote files.  (Bug#34221)
      2f55b971
  8. 19 Jan, 2019 2 commits
    • Dmitry Gutov's avatar
      ; Update the commentary · 8198d4be
      Dmitry Gutov authored
      8198d4be
    • Dmitry Gutov's avatar
      Misc ignore-related project.el changes · b6af0900
      Dmitry Gutov authored
      * lisp/progmodes/project.el (project-ignores): Don't append the
      default ignores list, just use vc-directory-exclusion-list.
      (project--dir-ignores): Use the default ignores if the dir is
      outside of the current project.
      (project-files): Use project--dir-ignores to support external
      roots better.
      b6af0900
  9. 18 Jan, 2019 3 commits
    • Dmitry Gutov's avatar
      Rebase project-find-regexp on top of project-files · fbe87d0f
      Dmitry Gutov authored
      * lisp/progmodes/project.el (project--files-in-directory):
      New function.
      (project-files, project-find-regexp): Use it.
      (project--dir-ignores): New function.
      (project--find-regexp-in): Remove.
      (project--process-file-region): New function.
      (project--find-regexp-in-files): New function.
      (project-find-regexp, project-or-external-find-regexp): Use it, and
      project-files as well.
      fbe87d0f
    • Dmitry Gutov's avatar
      ; Update the number · afc8a41f
      Dmitry Gutov authored
      afc8a41f
    • Dmitry Gutov's avatar
      Make 'project-files' the "canonical" generic of the two · d8da0916
      Dmitry Gutov authored
      * lisp/progmodes/project.el (project-files): Move the actual
      command building and invocation here.
      (project-file-completion-table): Delegate to 'project-files'.
      d8da0916
  10. 01 Jan, 2019 1 commit
  11. 29 Dec, 2018 1 commit
  12. 22 Sep, 2018 1 commit
    • Stefan Monnier's avatar
      * lisp/multifile.el: New file, extracted from etags.el · 55ec674f
      Stefan Monnier authored
      The main motivation for this change was the introduction of
      project-query-replace.  dired's multi-file query&replace was implemented
      on top of etags.el even though it did not use TAGS in any way, so I moved
      this generic multifile code into its own package, with a nicer interface,
      and then used that in project.el.
      
      * lisp/progmodes/project.el (project-files): New generic function.
      (project-search, project-query-replace): New commands.
      
      * lisp/dired-aux.el (dired-do-search, dired-do-query-replace-regexp):
      Use multifile.el instead of etags.el.
      
      * lisp/progmodes/etags.el: Remove redundant :groups.
      (next-file-list): Remove var.
      (tags-loop-revert-buffers): Make it an obsolete alias.
      (next-file): Don't autoload (it can't do anything useful before some
      other etags.el function setup the multifile operation).
      (tags--all-files): New function, extracted from next-file.
      (tags-next-file): Rename from next-file.
      Rewrite using tags--all-files and multifile-next-file.
      (next-file): Keep it as an obsolete alias.
      (tags-loop-operate, tags-loop-scan): Mark as obsolete.
      (tags--compat-files, tags--compat-initialize): New function.
      (tags-loop-continue): Rewrite using multifile-continue.  Mark as obsolete.
      (tags--last-search-operate-function): New var.
      (tags-search, tags-query-replace): Rewrite using multifile.el.
      
      * lisp/emacs-lisp/generator.el (iter-end-of-sequence): Use 'define-error'.
      (iter-make): New macro.
      (iter-empty): New iterator.
      
      * lisp/menu-bar.el (menu-bar-search-menu, menu-bar-replace-menu):
      tags-loop-continue -> multifile-continue.
      55ec674f
  13. 01 Jan, 2018 1 commit
  14. 17 Nov, 2017 1 commit
  15. 13 Sep, 2017 1 commit
    • Paul Eggert's avatar
      Prefer HTTPS to FTP and HTTP in documentation · bc511a64
      Paul Eggert authored
      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.
      bc511a64
  16. 01 Jan, 2017 1 commit
  17. 05 May, 2016 1 commit
    • Dmitry Gutov's avatar
      shell-quote-argument DIR when appropriate · ab3ba912
      Dmitry Gutov authored
      * lisp/progmodes/project.el (project-file-completion-table):
      `shell-quote-argument' DIR as well.
      
      * lisp/progmodes/xref.el (xref--rgrep-command): Pass DIR through
      `shell-quote-argument' (bug#23453).  Thanks for Kaushal Modi for
      pointing out the problem.  Assert that DIR doesn't start with `~'.
      ab3ba912
  18. 21 Apr, 2016 1 commit
  19. 11 Apr, 2016 1 commit
    • Eli Zaretskii's avatar
      Don't use 'find-program' · 10597c97
      Eli Zaretskii authored
      * lisp/progmodes/project.el (project-file-completion-table): Use
      'grep-find-program', rather than the obsolete 'find-program'.
      10597c97
  20. 06 Apr, 2016 1 commit
    • Dmitry Gutov's avatar
      Add a `transient' project type · 20686f7a
      Dmitry Gutov authored
      * lisp/progmodes/project.el (project-roots): Implement for the
      `transient' project type (bug#23224).
      (project-current): Instead of signaling an error, return a
      transient project instance rooted in the chosen directory.
      20686f7a
  21. 30 Jan, 2016 2 commits
  22. 29 Jan, 2016 2 commits
    • Stephen Leake's avatar
      Fix typo in previous commits · 545ad84a
      Stephen Leake authored
      * lisp/progmodes/project.el (project-find-file-in):
      * lisp/vc/vc-mtn.el (vc-mtn-find-ignore-file): Fix typo in previous
      commit.
      545ad84a
    • Stephen Leake's avatar
      Improve project-find-file · 7deeab6f
      Stephen Leake authored
      * lisp/progmodes/project.el (project-file-completion-table): New.
      (project-find-file, project-or-external-find-file): Default to filename
      at point.
      (project-file-completion-table): New, split out from
      project--find-file-in.
      (project-find-file-in): Renamed from project--find-file-in, use
      project-file-completion-table.
      
      * lisp/progmodes/xref.el (ede-minor-mode): New declaration.
      (xref--find-ignores-arguments): Add doc string.
      7deeab6f
  23. 18 Jan, 2016 1 commit
  24. 13 Jan, 2016 1 commit
    • Glenn Morris's avatar
      Add some missing version tags. · e85e0d59
      Glenn Morris authored
      * lisp/electric.el (electric-quote-comment)
      (electric-quote-string, electric-quote-paragraph):
      * lisp/epg-config.el (epg-gpgconf-program):
      * lisp/rect.el (rectangle-preview):
      * lisp/emacs-lisp/check-declare.el (check-declare-ext-errors):
      * lisp/emacs-lisp/package.el (package-selected-packages)
      (package-hidden-regexps):
      * lisp/erc/erc.el (erc-network-hide-list, erc-channel-hide-list):
      * lisp/eshell/em-term.el (eshell-destroy-buffer-when-process-dies):
      * lisp/gnus/mml-sec.el (mml1991-signers, mml2015-signers)
      (mml-smime-signers, mml1991-encrypt-to-self, mml2015-encrypt-to-self)
      (mml-smime-encrypt-to-self, mml2015-sign-with-sender)
      (mml-smime-sign-with-sender, mml2015-always-trust)
      (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
      * lisp/net/browse-url.el (browse-url-conkeror-new-window-is-buffer)
      (browse-url-conkeror-arguments):
      * lisp/net/newst-reader.el (newsticker-download-logos):
      * lisp/progmodes/gud.el (gud-guiler-command-name):
      * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
      * lisp/progmodes/project.el (project-vc):
      * lisp/progmodes/python.el (python-indent-guess-indent-offset-verbose)
      (python-shell-remote-exec-path, python-shell-first-prompt-hook)
      (python-shell-completion-native-disabled-interpreters)
      (python-shell-completion-native-enable)
      (python-shell-completion-native-output-timeout)
      (python-shell-completion-native-try-output-timeout):
      * lisp/progmodes/xref.el (xref):
      * lisp/term/screen.el (xterm-screen-extra-capabilities):
      * lisp/term/xterm.el (xterm-max-cut-length):
      Add missing version tags.
      e85e0d59
  25. 09 Jan, 2016 1 commit
  26. 08 Jan, 2016 1 commit
    • Dmitry Gutov's avatar
      Fix two project-find-file issues · a034dd38
      Dmitry Gutov authored
      * lisp/progmodes/project.el (project--value-in-dir):
      Temporarily set enable-local-variables to :all.
      (project-find-file, project-or-external-find-file):
      All autoloads.
      (project--find-file-in): Require xref.
      a034dd38
  27. 07 Jan, 2016 2 commits
    • Dmitry Gutov's avatar
      ; Add NEWS entry for project.el · 648de81b
      Dmitry Gutov authored
      648de81b
    • Dmitry Gutov's avatar
      Add project-find-file and project-or-external-find-file · ed41d117
      Dmitry Gutov authored
      * lisp/minibuffer.el (completion-category-defaults):
      Add `project-file' category.
      
      * lisp/progmodes/project.el (project-find-file)
      (project-or-external-find-file): New commands.
      (project--find-file-in): New private function.
      
      * lisp/progmodes/xref.el (xref-collect-matches): Use
      `expand-file-name' on DIR, to expand the tildes.
      (xref--find-ignores-arguments): Extract from
      `xref--rgrep-command'.
      ed41d117
  28. 01 Jan, 2016 1 commit
  29. 29 Dec, 2015 2 commits
  30. 28 Dec, 2015 1 commit
    • Dmitry Gutov's avatar
      Rename project-library-roots to project-external-roots · 17ab0d10
      Dmitry Gutov authored
      * lisp/progmodes/project.el (project-library-roots): Rename to
      project-external-roots.
      (project-library-roots-function): Rename to
      project-vc-external-roots-function.  Only use it in the VC
      backend, for now.  Update project-external-roots accordingly.
      (project-vc-library-roots): Remove.
      (project-or-libraries-find-regexp):
      Rename to project-or-external-find-regexp.
      
      * lisp/progmodes/elisp-mode.el (elisp-library-roots):
      Rename to elisp-load-path-roots.
      
      * lisp/progmodes/etags.el (etags-library-roots): Remove.  Use
      an anonymous function for the default value of
      project-vc-external-roots-function.
      17ab0d10
  31. 15 Nov, 2015 1 commit