From 45b3e66a0b0ffef61cf33155731ec83d40f94740 Mon Sep 17 00:00:00 2001 From: Andreas Gerler Date: Wed, 18 Nov 2020 16:31:11 +0100 Subject: [PATCH] update magit to 20201116.1057 --- elpa/magit-20200608.928/magit.info | 193 --------- .../AUTHORS.md | 11 + .../LICENSE | 0 .../dir | 0 .../git-rebase.el | 12 +- .../magit-apply.el | 0 .../magit-autoloads.el | 120 ++++-- .../magit-autorevert.el | 0 .../magit-bisect.el | 25 +- .../magit-blame.el | 11 +- .../magit-bookmark.el | 0 .../magit-branch.el | 0 .../magit-clone.el | 71 ++-- .../magit-commit.el | 9 +- .../magit-core.el | 0 .../magit-diff.el | 141 ++++--- .../magit-ediff.el | 0 .../magit-extras.el | 18 + .../magit-fetch.el | 3 +- .../magit-files.el | 74 ++-- .../magit-git.el | 104 +++-- .../magit-gitignore.el | 0 .../magit-imenu.el | 0 .../magit-log.el | 4 +- .../magit-margin.el | 0 .../magit-merge.el | 2 +- .../magit-mode.el | 23 +- .../magit-notes.el | 0 .../magit-obsolete.el | 0 .../magit-patch.el | 2 +- .../magit-pkg.el | 6 +- .../magit-process.el | 55 ++- .../magit-pull.el | 0 .../magit-push.el | 14 +- .../magit-reflog.el | 0 .../magit-refs.el | 6 +- .../magit-remote.el | 13 +- .../magit-repos.el | 6 +- .../magit-reset.el | 0 .../magit-section.el | 115 ++++-- .../magit-sequence.el | 10 +- .../magit-stash.el | 17 +- .../magit-status.el | 35 +- .../magit-submodule.el | 0 .../magit-subtree.el | 0 .../magit-tag.el | 6 +- .../magit-transient.el | 0 .../magit-utils.el | 120 +++--- .../magit-wip.el | 1 + .../magit-worktree.el | 7 +- .../magit.el | 70 +++- elpa/magit-20201116.1057/magit.info | 195 +++++++++ .../magit.info-1 | 98 +++-- .../magit.info-2 | 391 ++++++++++-------- .../magit-popup-pkg.el | 13 - .../dir | 0 .../magit-popup-autoloads.el | 0 .../magit-popup-pkg.el | 13 + .../magit-popup.el | 0 .../magit-popup.info | 16 +- 60 files changed, 1186 insertions(+), 844 deletions(-) delete mode 100644 elpa/magit-20200608.928/magit.info rename elpa/{magit-20200608.928 => magit-20201116.1057}/AUTHORS.md (96%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/LICENSE (100%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/dir (100%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/git-rebase.el (98%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit-apply.el (100%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit-autoloads.el (96%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit-autorevert.el (100%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit-bisect.el (92%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit-blame.el (98%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit-bookmark.el (100%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit-branch.el (100%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit-clone.el (81%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit-commit.el (98%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit-core.el (100%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit-diff.el (97%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit-ediff.el (100%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit-extras.el (97%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit-fetch.el (98%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit-files.el (91%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit-git.el (96%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit-gitignore.el (100%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit-imenu.el (100%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit-log.el (99%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit-margin.el (100%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit-merge.el (99%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit-mode.el (98%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit-notes.el (100%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit-obsolete.el (100%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit-patch.el (99%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit-pkg.el (55%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit-process.el (96%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit-pull.el (100%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit-push.el (97%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit-reflog.el (100%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit-refs.el (99%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit-remote.el (97%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit-repos.el (99%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit-reset.el (100%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit-section.el (95%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit-sequence.el (99%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit-stash.el (98%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit-status.el (96%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit-submodule.el (100%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit-subtree.el (100%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit-tag.el (97%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit-transient.el (100%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit-utils.el (94%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit-wip.el (99%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit-worktree.el (95%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit.el (89%) create mode 100644 elpa/magit-20201116.1057/magit.info rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit.info-1 (99%) rename elpa/{magit-20200608.928 => magit-20201116.1057}/magit.info-2 (96%) delete mode 100644 elpa/magit-popup-20200306.223/magit-popup-pkg.el rename elpa/{magit-popup-20200306.223 => magit-popup-20200719.1015}/dir (100%) rename elpa/{magit-popup-20200306.223 => magit-popup-20200719.1015}/magit-popup-autoloads.el (100%) create mode 100644 elpa/magit-popup-20200719.1015/magit-popup-pkg.el rename elpa/{magit-popup-20200306.223 => magit-popup-20200719.1015}/magit-popup.el (100%) rename elpa/{magit-popup-20200306.223 => magit-popup-20200719.1015}/magit-popup.info (99%) diff --git a/elpa/magit-20200608.928/magit.info b/elpa/magit-20200608.928/magit.info deleted file mode 100644 index 34afd9e9..00000000 --- a/elpa/magit-20200608.928/magit.info +++ /dev/null @@ -1,193 +0,0 @@ -This is magit.info, produced by makeinfo version 6.5 from magit.texi. - - Copyright (C) 2015-2020 Jonas Bernoulli - - You can redistribute this document and/or modify it under the terms - of the GNU General Public License as published by the Free Software - Foundation, either version 3 of the License, or (at your option) - any later version. - - This document is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. - -INFO-DIR-SECTION Emacs -START-INFO-DIR-ENTRY -* Magit: (magit). Using Git from Emacs with Magit. -END-INFO-DIR-ENTRY - - -Indirect: -magit.info-1: 754 -magit.info-2: 301032 - -Tag Table: -(Indirect) -Node: Top754 -Node: Introduction6464 -Node: Installation11187 -Node: Installing from Melpa11517 -Node: Installing from the Git Repository12590 -Node: Post-Installation Tasks14938 -Node: Getting Started16223 -Node: Interface Concepts21672 -Node: Modes and Buffers22033 -Node: Switching Buffers23782 -Node: Naming Buffers28533 -Node: Quitting Windows31840 -Node: Automatic Refreshing of Magit Buffers33586 -Node: Automatic Saving of File-Visiting Buffers36438 -Node: Automatic Reverting of File-Visiting Buffers37623 -Node: Risk of Reverting Automatically42618 -Node: Sections45000 -Node: Section Movement45926 -Node: Section Visibility50836 -Node: Section Hooks56913 -Node: Section Types and Values59320 -Node: Section Options60623 -Node: Transient Commands61095 -Node: Transient Arguments and Buffer Variables62332 -Node: Completion Confirmation and the Selection69350 -Node: Action Confirmation69794 -Node: Completion and Confirmation77144 -Node: The Selection80330 -Node: The hunk-internal region83229 -Node: Support for Completion Frameworks84318 -Node: Additional Completion Options89225 -Node: Running Git89824 -Node: Viewing Git Output90097 -Node: Git Process Status91230 -Node: Running Git Manually92195 -Node: Git Executable94665 -Node: Global Git Arguments96947 -Node: Inspecting97753 -Node: Status Buffer98910 -Node: Status Sections102900 -Node: Status Header Sections108452 -Node: Status Module Sections111082 -Node: Status Options113587 -Node: Repository List115056 -Node: Logging118094 -Node: Refreshing Logs120657 -Node: Log Buffer122103 -Node: Log Margin125959 -Node: Select from Log129138 -Node: Reflog131363 -Node: Cherries133020 -Node: Diffing134868 -Node: Refreshing Diffs137949 -Node: Commands Available in Diffs141528 -Node: Diff Options144064 -Node: Revision Buffer149102 -Node: Ediffing152432 -Node: References Buffer156080 -Node: References Sections166600 -Node: Bisecting167461 -Node: Visiting Files and Blobs169274 -Node: General-Purpose Visit Commands169744 -Node: Visiting Files and Blobs from a Diff170700 -Node: Blaming174159 -Node: Manipulating180722 -Node: Creating Repository181064 -Node: Cloning Repository181619 -Node: Staging and Unstaging187024 -Node: Staging from File-Visiting Buffers191107 -Node: Applying192275 -Node: Committing194168 -Node: Initiating a Commit194751 -Node: Editing Commit Messages198136 -Node: Using the Revision Stack200939 -Node: Commit Pseudo Headers203990 -Node: Commit Mode and Hooks205326 -Node: Commit Message Conventions208264 -Node: Branching210392 -Node: The Two Remotes210618 -Node: Branch Commands213271 -Node: Branch Git Variables225652 -Node: Auxiliary Branch Commands231043 -Node: Merging232161 -Node: Resolving Conflicts236169 -Node: Rebasing241170 -Node: Editing Rebase Sequences246029 -Node: Information About In-Progress Rebase250357 -Ref: Information About In-Progress Rebase-Footnote-1259239 -Node: Cherry Picking259835 -Node: Reverting264166 -Node: Resetting265615 -Node: Stashing267481 -Node: Transferring272182 -Node: Remotes272404 -Node: Remote Commands272556 -Node: Remote Git Variables276637 -Node: Fetching277916 -Node: Pulling280403 -Node: Pushing281449 -Node: Plain Patches284919 -Node: Maildir Patches286410 -Node: Miscellaneous287924 -Node: Tagging288240 -Node: Notes290157 -Node: Submodules292529 -Node: Listing Submodules292747 -Node: Submodule Transient294675 -Node: Subtree297197 -Node: Worktree299173 -Node: Common Commands301032 -Node: Wip Modes303079 -Node: Wip Graph308012 -Node: Legacy Wip Modes310326 -Node: Minor Mode for Buffers Visiting Files313221 -Node: Minor Mode for Buffers Visiting Blobs320322 -Node: Customizing321135 -Node: Per-Repository Configuration322731 -Node: Essential Settings324986 -Node: Safety325310 -Node: Performance327071 -Node: Microsoft Windows Performance334214 -Node: MacOS Performance335405 -Ref: MacOS Performance-Footnote-1336420 -Node: Plumbing336502 -Node: Calling Git337331 -Node: Getting a Value from Git338856 -Node: Calling Git for Effect341942 -Node: Section Plumbing348464 -Node: Creating Sections348692 -Node: Section Selection352592 -Node: Matching Sections354391 -Node: Refreshing Buffers360364 -Node: Conventions363512 -Node: Theming Faces363704 -Node: FAQ371819 -Node: FAQ - How to ...?372261 -Node: How to show git's output?372646 -Node: How to install the gitman info manual?373400 -Node: How to show diffs for gpg-encrypted files?374370 -Node: How does branching and pushing work?374966 -Node: Can Magit be used as ediff-version-control-package?375329 -Node: Should I disable VC?377347 -Node: FAQ - Issues and Errors377965 -Node: Magit is slow378861 -Node: I changed several thousand files at once and now Magit is unusable379075 -Node: I am having problems committing379804 -Node: I am using MS Windows and cannot push with Magit380285 -Node: I am using OS X and SOMETHING works in shell but not in Magit380902 -Node: Expanding a file to show the diff causes it to disappear381733 -Node: Point is wrong in the COMMIT_EDITMSG buffer382314 -Node: The mode-line information isn't always up-to-date383360 -Node: A branch and tag sharing the same name breaks SOMETHING384423 -Node: My Git hooks work on the command-line but not inside Magit385309 -Node: git-commit-mode isn't used when committing from the command-line386155 -Node: Point ends up inside invisible text when jumping to a file-visiting buffer388422 -Node: Debugging Tools389220 -Node: Keystroke Index391399 -Node: Command Index425456 -Node: Function Index462554 -Node: Variable Index478906 - -End Tag Table - - -Local Variables: -coding: utf-8 -End: diff --git a/elpa/magit-20200608.928/AUTHORS.md b/elpa/magit-20201116.1057/AUTHORS.md similarity index 96% rename from elpa/magit-20200608.928/AUTHORS.md rename to elpa/magit-20201116.1057/AUTHORS.md index 84141597..896d1277 100644 --- a/elpa/magit-20200608.928/AUTHORS.md +++ b/elpa/magit-20201116.1057/AUTHORS.md @@ -83,6 +83,7 @@ Contributors - Bob Uhl - Bradley Wright - Brandon W Maister +- Brian Leung - Brian Warner - Bryan Shell - Buster Copley @@ -103,6 +104,7 @@ Contributors - Craig Andera - Dale Hagglund - Damien Cassou +- Dan Davison - Dan Erikson - Daniel Brockman - Daniel Farina @@ -128,6 +130,7 @@ Contributors - Duianto Vebotci - Eli Barzilay - Eric Davis +- Eric - Eric Prud'hommeaux - Eric Schulte - Erik Anderson @@ -147,6 +150,7 @@ Contributors - Graham Dobbins - Greg A. Woods - Greg Lucas +- Gregory Heytings - Greg Sexton - Guillaume Martres - Hannu Koivisto @@ -170,7 +174,9 @@ Contributors - John Morris - John Wiegley - Jonas Bernoulli +- Jonas Galvão Xavier - Jonathan Arnett +- Jonathan del Strother - Jonathan Leech-Pepin - Jonathan Roes - Jon Vanderwijk @@ -198,6 +204,7 @@ Contributors - Lele Gaifax - Leo Liu - Leonardo Etcheverry +- Leo Vivier - Lingchao Xin - Li-Yun Chang - Lluís Vilanova @@ -223,6 +230,7 @@ Contributors - Matthew Fluet - Matthieu Hauglustaine - Matus Goljer +- Maxim Cournoyer - Michael Fogleman - Michael Griffiths - Michael Heerdegen @@ -330,12 +338,15 @@ Contributors - Vineet Naik - Vitaly Ostashov - Vladimir Panteleev +- Vladimir Sedach - Wei Huang - Wilfred Hughes - Win Treese +- Wojciech Siewierski - Wouter Bolsterlee - Xavier Noria - Xu Chunyang +- Yann Herklotz - Yann Hodique - Ynilu - York Zhao diff --git a/elpa/magit-20200608.928/LICENSE b/elpa/magit-20201116.1057/LICENSE similarity index 100% rename from elpa/magit-20200608.928/LICENSE rename to elpa/magit-20201116.1057/LICENSE diff --git a/elpa/magit-20200608.928/dir b/elpa/magit-20201116.1057/dir similarity index 100% rename from elpa/magit-20200608.928/dir rename to elpa/magit-20201116.1057/dir diff --git a/elpa/magit-20200608.928/git-rebase.el b/elpa/magit-20201116.1057/git-rebase.el similarity index 98% rename from elpa/magit-20200608.928/git-rebase.el rename to elpa/magit-20201116.1057/git-rebase.el index 4ca8e9b5..886fbbb9 100644 --- a/elpa/magit-20200608.928/git-rebase.el +++ b/elpa/magit-20201116.1057/git-rebase.el @@ -287,7 +287,7 @@ "r" "reword" "s" "squash") "\\(?1:") - " \\(?3:[^ \n]+\\) \\(?4:.*\\)")) + " \\(?3:[^ \n]+\\) ?\\(?4:.*\\)")) (exec . "\\(?1:x\\|exec\\) \\(?3:.*\\)") (bare . ,(concat (regexp-opt '("b" "break" "noop") "\\(?1:") " *$")) @@ -309,11 +309,11 @@ instance with all nil values is returned." (goto-char (line-beginning-position)) (if-let ((re-start (concat "^\\(?5:" (regexp-quote comment-start) "\\)? *")) - (type (-some (lambda (arg) - (let ((case-fold-search nil)) - (and (looking-at (concat re-start (cdr arg))) - (car arg)))) - git-rebase-line-regexps))) + (type (seq-some (lambda (arg) + (let ((case-fold-search nil)) + (and (looking-at (concat re-start (cdr arg))) + (car arg)))) + git-rebase-line-regexps))) (git-rebase-action :action-type type :action (when-let ((action (match-string-no-properties 1))) diff --git a/elpa/magit-20200608.928/magit-apply.el b/elpa/magit-20201116.1057/magit-apply.el similarity index 100% rename from elpa/magit-20200608.928/magit-apply.el rename to elpa/magit-20201116.1057/magit-apply.el diff --git a/elpa/magit-20200608.928/magit-autoloads.el b/elpa/magit-20201116.1057/magit-autoloads.el similarity index 96% rename from elpa/magit-20200608.928/magit-autoloads.el rename to elpa/magit-20201116.1057/magit-autoloads.el index 8ec6d07c..a9a3f374 100644 --- a/elpa/magit-20200608.928/magit-autoloads.el +++ b/elpa/magit-20201116.1057/magit-autoloads.el @@ -36,6 +36,50 @@ running 'man git-rebase' at the command line) for details. ;;;### (autoloads nil "magit" "magit.el" (0 0 0 0)) ;;; Generated autoloads from magit.el + +(define-obsolete-variable-alias 'global-magit-file-mode 'magit-define-global-key-bindings "Magit 3.0.0") + +(defvar magit-define-global-key-bindings t "\ +Whether to bind some Magit commands in the global keymap. + +If this variable is non-nil, then the following bindings may +be added to the global keymap. The default is t. + +key binding +--- ------- +C-x g magit-status +C-x M-g magit-dispatch +C-c M-g magit-file-dispatch + +These bindings may be added when `after-init-hook' is called. +Each binding is added if and only if at that time no other key +is bound to the same command and no other command is bound to +the same key. In other words we try to avoid adding bindings +that are unnecessary, as well as bindings that conflict with +other bindings. + +Adding the above bindings is delayed until `after-init-hook' +is called to allow users to set the variable anywhere in their +init file (without having to make sure to do so before `magit' +is loaded or autoloaded) and to increase the likelihood that +all the potentially conflicting user bindings have already +been added. + +Setting this variable after the hook has already been called +has no effect. + +We recommend that you bind \"C-c g\" instead of \"C-c M-g\" to +`magit-file-dispatch'. The former is a much better binding +but the \"C-c \" namespace is strictly reserved for +users; preventing Magit from using it by default. + +Also see info node `(magit)Commands for Buffers Visiting Files'.") + +(custom-autoload 'magit-define-global-key-bindings "magit" t) + +(defun magit-maybe-define-global-key-bindings nil (when magit-define-global-key-bindings (let ((map (current-global-map))) (dolist (elt '(("C-x g" . magit-status) ("C-x M-g" . magit-dispatch) ("C-c M-g" . magit-file-dispatch))) (let ((key (kbd (car elt))) (def (cdr elt))) (unless (or (lookup-key map key) (where-is-internal def (make-sparse-keymap) t)) (define-key map key def))))))) + +(if after-init-time (magit-maybe-define-global-key-bindings) (add-hook 'after-init-hook 'magit-maybe-define-global-key-bindings t)) (autoload 'magit-dispatch "magit" nil t) (autoload 'magit-run "magit" nil t) @@ -170,7 +214,7 @@ This command starts such a bisect session by asking for a know good and a bad commit. To move the session forward use the other actions from the bisect transient command (\\\\[magit-bisect]). -\(fn BAD GOOD)" t nil) +\(fn BAD GOOD ARGS)" t nil) (autoload 'magit-bisect-reset "magit-bisect" "\ After bisecting, cleanup bisection state and return to original `HEAD'. @@ -205,7 +249,7 @@ Unlike `git bisect run' this can be used before bisecting has begun. In that case it behaves like `git bisect start; git bisect run'. -\(fn CMDLINE &optional BAD GOOD)" t nil) +\(fn CMDLINE &optional BAD GOOD ARGS)" t nil) (if (fboundp 'register-definition-prefixes) (register-definition-prefixes "magit-bisect" '("magit-"))) @@ -782,6 +826,11 @@ like pretty much every other keymap: \(fn)" t nil) +(autoload 'magit-project-status "magit-extras" "\ +Run `magit-status' in the current project's root. + +\(fn)" t nil) + (autoload 'magit-dired-jump "magit-extras" "\ Visit file at point using Dired. With a prefix argument, visit in another window. If there @@ -1071,28 +1120,6 @@ the line and column corresponding to that location. \(fn REV FILE)" t nil) (autoload 'magit-file-dispatch "magit" nil t) -(defvar global-magit-file-mode t "\ -Non-nil if Global Magit-File mode is enabled. -See the `global-magit-file-mode' command -for a description of this minor mode. -Setting this variable directly does not take effect; -either customize it (see the info node `Easy Customization') -or call the function `global-magit-file-mode'.") - -(custom-autoload 'global-magit-file-mode "magit-files" nil) - -(autoload 'global-magit-file-mode "magit-files" "\ -Toggle Magit-File mode in all buffers. -With prefix ARG, enable Global Magit-File mode if ARG is positive; -otherwise, disable it. If called from Lisp, enable the mode if -ARG is omitted or nil. - -Magit-File mode is enabled in all buffers where -`magit-file-mode-turn-on' would do it. -See `magit-file-mode' for more information on Magit-File mode. - -\(fn &optional ARG)" t nil) - (autoload 'magit-blob-visit-file "magit-files" "\ View the file from the worktree corresponding to the current blob. When visiting a blob or the version from the index, then go to @@ -1526,7 +1553,7 @@ same differences as those shown in the buffer are always used. \(fn FILE &optional ARG)" t nil) (autoload 'magit-request-pull "magit-patch" "\ -Request upstream to pull from you public repository. +Request upstream to pull from your public repository. URL is the url of your publicly accessible repository. START is a commit that already is in the upstream repository. @@ -1611,22 +1638,7 @@ Push a tag to another repository. Push a notes ref to another repository. \(fn REF REMOTE &optional ARGS)" t nil) - -(autoload 'magit-push-implicitly "magit-push" "\ -Push somewhere without using an explicit refspec. - -This command simply runs \"git push -v [ARGS]\". ARGS are the -arguments specified in the popup buffer. No explicit refspec -arguments are used. Instead the behavior depends on at least -these Git variables: `push.default', `remote.pushDefault', -`branch..pushRemote', `branch..remote', -`branch..merge', and `remote..push'. - -The function `magit-push-implicitly--desc' attempts to predict -what this command will do. The value it returns is displayed in -the popup buffer. - -\(fn ARGS)" t nil) + (autoload 'magit-push-implicitly "magit-push" nil t) (autoload 'magit-push-to-remote "magit-push" "\ Push to REMOTE without using an explicit refspec. @@ -1831,7 +1843,7 @@ With a prefix argument reset the working tree otherwise don't. ;;;### (autoloads nil "magit-section" "magit-section.el" (0 0 0 0)) ;;; Generated autoloads from magit-section.el -(if (fboundp 'register-definition-prefixes) (register-definition-prefixes "magit-section" '("magit-"))) +(if (fboundp 'register-definition-prefixes) (register-definition-prefixes "magit-section" '("magit-" "isearch-clean-overlays@magit-mode"))) ;;;*** @@ -2404,6 +2416,30 @@ See info node `(magit)Debugging Tools' for more information. ;;;### (autoloads nil "magit-wip" "magit-wip.el" (0 0 0 0)) ;;; Generated autoloads from magit-wip.el +(defvar magit-wip-mode nil "\ +Non-nil if Magit-Wip mode is enabled. +See the `magit-wip-mode' command +for a description of this minor mode. +Setting this variable directly does not take effect; +either customize it (see the info node `Easy Customization') +or call the function `magit-wip-mode'.") + +(custom-autoload 'magit-wip-mode "magit-wip" nil) + +(autoload 'magit-wip-mode "magit-wip" "\ +Save uncommitted changes to work-in-progress refs. + +Whenever appropriate (i.e. when dataloss would be a possibility +otherwise) this mode causes uncommitted changes to be committed +to dedicated work-in-progress refs. + +For historic reasons this mode is implemented on top of four +other `magit-wip-*' modes, which can also be used individually, +if you want finer control over when the wip refs are updated; +but that is discouraged. + +\(fn &optional ARG)" t nil) + (defvar magit-wip-after-save-mode nil "\ Non-nil if Magit-Wip-After-Save mode is enabled. See the `magit-wip-after-save-mode' command diff --git a/elpa/magit-20200608.928/magit-autorevert.el b/elpa/magit-20201116.1057/magit-autorevert.el similarity index 100% rename from elpa/magit-20200608.928/magit-autorevert.el rename to elpa/magit-20201116.1057/magit-autorevert.el diff --git a/elpa/magit-20200608.928/magit-bisect.el b/elpa/magit-20201116.1057/magit-bisect.el similarity index 92% rename from elpa/magit-20200608.928/magit-bisect.el rename to elpa/magit-20201116.1057/magit-bisect.el index 3ed42c8b..3c807f20 100644 --- a/elpa/magit-20200608.928/magit-bisect.el +++ b/elpa/magit-20201116.1057/magit-bisect.el @@ -58,10 +58,15 @@ (transient-define-prefix magit-bisect () "Narrow in on the commit that introduced a bug." :man-page "git-bisect" - ["Actions" + [:class transient-subgroups :if-not magit-bisect-in-progress-p - ("B" "Start" magit-bisect-start) - ("s" "Start script" magit-bisect-run)] + ["Arguments" + ("-n" "Don't checkout commits" "--no-checkout") + ("-p" "Follow only first parent of a merge" "--first-parent" + :if (lambda () (version<= "2.29" (magit-git-version))))] + ["Actions" + ("B" "Start" magit-bisect-start) + ("s" "Start script" magit-bisect-run)]] ["Actions" :if magit-bisect-in-progress-p ("B" "Bad" magit-bisect-bad) @@ -71,7 +76,7 @@ ("s" "Run script" magit-bisect-run)]) ;;;###autoload -(defun magit-bisect-start (bad good) +(defun magit-bisect-start (bad good args) "Start a bisect session. Bisecting a bug means to find the commit that introduced it. @@ -88,11 +93,13 @@ other actions from the bisect transient command (\ good bad)) (when (magit-anything-modified-p) (user-error "Cannot bisect with uncommitted changes")) - (magit-git-bisect "start" (list bad good) t)) + (magit-git-bisect "start" (list args bad good) t)) (defun magit-bisect-start-read-args () - (let ((b (magit-read-branch-or-commit "Start bisect with bad revision"))) - (list b (magit-read-other-branch-or-commit "Good revision" b)))) + (let ((bad (magit-read-branch-or-commit "Start bisect with bad revision"))) + (list bad + (magit-read-other-branch-or-commit "Good revision" bad) + (transient-args 'magit-bisect)))) ;;;###autoload (defun magit-bisect-reset () @@ -127,7 +134,7 @@ to test. This command lets Git choose a different one." (magit-git-bisect "skip")) ;;;###autoload -(defun magit-bisect-run (cmdline &optional bad good) +(defun magit-bisect-run (cmdline &optional bad good args) "Bisect automatically by running commands after each step. Unlike `git bisect run' this can be used before bisecting has @@ -137,7 +144,7 @@ bisect run'." (magit-bisect-start-read-args)))) (cons (read-shell-command "Bisect shell command: ") args))) (when (and bad good) - (magit-bisect-start bad good)) + (magit-bisect-start bad good args)) (magit-git-bisect "run" (list shell-file-name shell-command-switch cmdline))) (defun magit-git-bisect (subcommand &optional args no-assert) diff --git a/elpa/magit-20200608.928/magit-blame.el b/elpa/magit-20201116.1057/magit-blame.el similarity index 98% rename from elpa/magit-20200608.928/magit-blame.el rename to elpa/magit-20201116.1057/magit-blame.el index d537a341..bb2f339d 100644 --- a/elpa/magit-20200608.928/magit-blame.el +++ b/elpa/magit-20201116.1057/magit-blame.el @@ -475,7 +475,9 @@ modes is toggled, then this mode also gets toggled automatically. (defun magit-blame--parse-chunk (type) (let (chunk revinfo) - (looking-at "^\\(.\\{40\\}\\) \\([0-9]+\\) \\([0-9]+\\) \\([0-9]+\\)") + (unless (looking-at "^\\(.\\{40\\}\\) \\([0-9]+\\) \\([0-9]+\\) \\([0-9]+\\)") + (error "Blaming failed due to unexpected output: %s" + (buffer-substring-no-properties (point) (line-end-position)))) (with-slots (orig-rev orig-file prev-rev prev-file) (setq chunk (magit-blame-chunk :orig-rev (match-string 1) @@ -674,9 +676,10 @@ modes is toggled, then this mode also gets toggled automatically. (propertize (concat (propertize "\s" 'display '(space :height (2))) (propertize "\n" 'line-height t)) - 'font-lock-face (list :background - (face-attribute 'magit-blame-heading - :background nil t)))) + 'font-lock-face `(:background + ,(face-attribute 'magit-blame-heading + :background nil t) + ,@(and (>= emacs-major-version 27) '(:extend t))))) (defun magit-blame--format-time-string (time tz) (let* ((time-format (or (magit-blame--style-get 'time-format) diff --git a/elpa/magit-20200608.928/magit-bookmark.el b/elpa/magit-20201116.1057/magit-bookmark.el similarity index 100% rename from elpa/magit-20200608.928/magit-bookmark.el rename to elpa/magit-20201116.1057/magit-bookmark.el diff --git a/elpa/magit-20200608.928/magit-branch.el b/elpa/magit-20201116.1057/magit-branch.el similarity index 100% rename from elpa/magit-20200608.928/magit-branch.el rename to elpa/magit-20201116.1057/magit-branch.el diff --git a/elpa/magit-20200608.928/magit-clone.el b/elpa/magit-20201116.1057/magit-clone.el similarity index 81% rename from elpa/magit-20200608.928/magit-clone.el rename to elpa/magit-20201116.1057/magit-clone.el index 11d6b5cc..2417e543 100644 --- a/elpa/magit-20200608.928/magit-clone.el +++ b/elpa/magit-20201116.1057/magit-clone.el @@ -192,30 +192,44 @@ Then show the status buffer for the new repository." (magit-clone-internal repository directory (cons "--mirror" args))) (defun magit-clone-internal (repository directory args) - (run-hooks 'magit-credential-hook) - (setq directory (file-name-as-directory (expand-file-name directory))) - (magit-run-git-async "clone" args "--" repository - (magit-convert-filename-for-git directory)) - ;; Don't refresh the buffer we're calling from. - (process-put magit-this-process 'inhibit-refresh t) - (set-process-sentinel - magit-this-process - (lambda (process event) - (when (memq (process-status process) '(exit signal)) - (let ((magit-process-raise-error t)) - (magit-process-sentinel process event))) - (when (and (eq (process-status process) 'exit) - (= (process-exit-status process) 0)) - (unless (memq (car args) '("--bare" "--mirror")) - (let ((default-directory directory)) - (when (or (eq magit-clone-set-remote.pushDefault t) - (and magit-clone-set-remote.pushDefault - (y-or-n-p "Set `remote.pushDefault' to \"origin\"? "))) - (setf (magit-get "remote.pushDefault") "origin")) - (unless magit-clone-set-remote-head - (magit-remote-unset-head "origin")))) - (with-current-buffer (process-get process 'command-buf) - (magit-status-setup-buffer directory)))))) + (let* ((checkout (not (memq (car args) '("--bare" "--mirror")))) + (set-push-default + (and checkout + (or (eq magit-clone-set-remote.pushDefault t) + (and magit-clone-set-remote.pushDefault + (y-or-n-p "Set `remote.pushDefault' to \"origin\"? ")))))) + (run-hooks 'magit-credential-hook) + (setq directory (file-name-as-directory (expand-file-name directory))) + (when (file-exists-p directory) + (if (file-directory-p directory) + (when (> (length (directory-files directory)) 2) + (let ((name (magit-clone--url-to-name repository))) + (unless (and name + (setq directory (file-name-as-directory + (expand-file-name name directory))) + (not (file-exists-p directory))) + (user-error "%s already exists" directory)))) + (user-error "%s already exists and is not a directory" directory))) + (magit-run-git-async "clone" args "--" repository + (magit-convert-filename-for-git directory)) + ;; Don't refresh the buffer we're calling from. + (process-put magit-this-process 'inhibit-refresh t) + (set-process-sentinel + magit-this-process + (lambda (process event) + (when (memq (process-status process) '(exit signal)) + (let ((magit-process-raise-error t)) + (magit-process-sentinel process event))) + (when (and (eq (process-status process) 'exit) + (= (process-exit-status process) 0)) + (when checkout + (let ((default-directory directory)) + (when set-push-default + (setf (magit-get "remote.pushDefault") "origin")) + (unless magit-clone-set-remote-head + (magit-remote-unset-head "origin")))) + (with-current-buffer (process-get process 'command-buf) + (magit-status-setup-buffer directory))))))) (defun magit-clone-read-args () (let ((repo (magit-clone-read-repository))) @@ -226,8 +240,7 @@ Then show the status buffer for the new repository." (funcall magit-clone-default-directory repo) magit-clone-default-directory) nil nil - (and (string-match "\\([^/:]+?\\)\\(/?\\.git\\)?$" repo) - (match-string 1 repo))) + (magit-clone--url-to-name repo)) (transient-args 'magit-clone)))) (defun magit-clone-read-repository () @@ -242,8 +255,12 @@ Then show the status buffer for the new repository." (?l "or [l]ocal url" (concat "file://" (read-directory-name "Clone repository: file://"))))) +(defun magit-clone--url-to-name (url) + (and (string-match "\\([^/:]+?\\)\\(/?\\.git\\)?$" url) + (match-string 1 url))) + (defun magit-clone--name-to-url (name) - (or (-some + (or (seq-some (pcase-lambda (`(,re ,host ,user)) (and (string-match re name) (let ((repo (match-string 1 name))) diff --git a/elpa/magit-20200608.928/magit-commit.el b/elpa/magit-20201116.1057/magit-commit.el similarity index 98% rename from elpa/magit-20200608.928/magit-commit.el rename to elpa/magit-20201116.1057/magit-commit.el index 511c4227..70755863 100644 --- a/elpa/magit-20200608.928/magit-commit.el +++ b/elpa/magit-20201116.1057/magit-commit.el @@ -217,7 +217,7 @@ to inverse the meaning of the prefix argument. \n(git commit (if current-prefix-arg (not magit-commit-extend-override-date) magit-commit-extend-override-date))) - (when (setq args (magit-commit-assert args (not override-date))) + (when (setq args (magit-commit-assert args)) (magit-commit-amend-assert) (let ((process-environment process-environment)) (unless override-date @@ -357,7 +357,11 @@ depending on the value of option `magit-commit-squash-confirm'." (and (not strict) ;; ^ For amend variants that don't make sense otherwise. (or (member "--amend" args) - (member "--allow-empty" args)))) + (member "--allow-empty" args) + (member "--reset-author" args) + (member "--author" args) + (member "--signoff" args) + (cl-find-if (lambda (a) (string-match-p "\\`--date=" a)) args)))) (or args (list "--"))) ((and (magit-rebase-in-progress-p) (not (magit-anything-unstaged-p)) @@ -532,6 +536,7 @@ See `magit-commit-absorb' for an alternative implementation." ;; Mention `magit-diff-while-committing' because that's ;; always what I search for when I try to find this line. (add-hook 'server-switch-hook 'magit-commit-diff) +(add-hook 'with-editor-filter-visit-hook 'magit-commit-diff) (add-to-list 'with-editor-server-window-alist (cons git-commit-filename-regexp 'switch-to-buffer)) diff --git a/elpa/magit-20200608.928/magit-core.el b/elpa/magit-20201116.1057/magit-core.el similarity index 100% rename from elpa/magit-20200608.928/magit-core.el rename to elpa/magit-20201116.1057/magit-core.el diff --git a/elpa/magit-20200608.928/magit-diff.el b/elpa/magit-20201116.1057/magit-diff.el similarity index 97% rename from elpa/magit-20200608.928/magit-diff.el rename to elpa/magit-20201116.1057/magit-diff.el index 57236205..4a91c64b 100644 --- a/elpa/magit-20200608.928/magit-diff.el +++ b/elpa/magit-20201116.1057/magit-diff.el @@ -55,12 +55,13 @@ (declare-function magit-merge-in-progress-p "magit-merge" ()) (declare-function magit--merge-range "magit-merge" (&optional head)) ;; For `magit-diff--dwim' +(declare-function forge--pullreq-range "forge-pullreq" + (pullreq &optional endpoints)) (declare-function forge--pullreq-ref "forge-pullreq" (pullreq)) ;; For `magit-diff-wash-diff' (declare-function ansi-color-apply-on-region "ansi-color" (begin end)) (eval-when-compile - (cl-pushnew 'base-ref eieio--known-slot-names) (cl-pushnew 'orig-rev eieio--known-slot-names) (cl-pushnew 'action-type eieio--known-slot-names) (cl-pushnew 'target eieio--known-slot-names)) @@ -297,11 +298,14 @@ that many spaces. Otherwise, highlight neither." :link '(info-link "(magit)Revision Buffer") :group 'magit-modes) -(defcustom magit-revision-mode-hook '(bug-reference-mode) +(defcustom magit-revision-mode-hook + '(bug-reference-mode + goto-address-mode) "Hook run after entering Magit-Revision mode." :group 'magit-revision :type 'hook - :options '(bug-reference-mode)) + :options '(bug-reference-mode + goto-address-mode)) (defcustom magit-revision-sections-hook '(magit-insert-revision-tag @@ -816,14 +820,16 @@ and `:slant'." ;;; Section Classes (defclass magit-file-section (magit-section) - ((source :initform nil) - (header :initform nil))) + ((keymap :initform magit-file-section-map) + (source :initform nil) + (header :initform nil))) (defclass magit-module-section (magit-file-section) - ()) + ((keymap :initform magit-hunk-section-map))) (defclass magit-hunk-section (magit-section) - ((refined :initform nil) + ((keymap :initform magit-hunk-section-map) + (refined :initform nil) (combined :initform nil) (from-range :initform nil) (from-ranges :initform nil) @@ -930,13 +936,15 @@ and `:slant'." (defun magit-read-files (prompt initial-input history) (magit-completing-read-multiple* prompt (magit-list-files) - nil nil initial-input history)) + nil nil + (or initial-input (magit-file-at-point)) + history)) (transient-define-argument magit-diff:-U () :description "Context lines" :class 'transient-option :argument "-U" - :reader 'transient-read-number-N+) + :reader 'transient-read-number-N0) (transient-define-argument magit-diff:-M () :description "Detect renames" @@ -1056,13 +1064,13 @@ If no DWIM context is found, nil is returned." (cons 'commit (magit-section-case (commit (oref it value)) - (file (-> it - (oref parent) - (oref value))) - (hunk (-> it - (oref parent) - (oref parent) - (oref value)))))) + (file (thread-first it + (oref parent) + (oref value))) + (hunk (thread-first it + (oref parent) + (oref parent) + (oref value)))))) ((derived-mode-p 'magit-revision-mode) (cons 'commit magit-buffer-revision)) ((derived-mode-p 'magit-diff-mode) @@ -1087,10 +1095,7 @@ If no DWIM context is found, nil is returned." atpoint)))) (commit (cons 'commit (oref it value))) (stash (cons 'stash (oref it value))) - (pullreq (let ((pullreq (oref it value))) - (format "%s...%s" - (oref pullreq base-ref) - (forge--pullreq-ref pullreq)))))))) + (pullreq (forge--pullreq-range (oref it value) t)))))) (defun magit-diff-read-range-or-commit (prompt &optional secondary-default mbase) "Read range or revision with special diff range treatment. @@ -1332,9 +1337,6 @@ for a revision." (magit-section-update-highlight) t)) -(cl-defmethod magit-buffer-value (&context (major-mode magit-revision-mode)) - (cons magit-buffer-range magit-buffer-diff-files)) - ;;;; Setting Commands (defun magit-diff-switch-range-type () @@ -1379,9 +1381,7 @@ instead." (cl-rotatef magit-buffer-diff-files magit-buffer-diff-files-suspended) (setq magit-buffer-diff-files - (magit-read-files "Limit to file(s): " - (magit-file-at-point) - nil))) + (transient-infix-read 'magit:--))) (magit-refresh))) (cond ((derived-mode-p 'magit-log-mode @@ -1701,7 +1701,7 @@ the Magit-Status buffer for DIRECTORY." (cdr spec) (cdr (magit-split-range spec))))) (if (and magit-diff-visit-avoid-head-blob - (magit-rev-head-p spec)) + (magit-rev-head-p rev)) 'unstaged rev)))) @@ -1829,7 +1829,7 @@ commit or stash at point, then prompt for a commit." (cond ((and (--any-p (oref it hidden) children) (--any-p (oref it children) children)) (mapc 'magit-section-show-headings sections)) - ((-any-p 'magit-section-hidden-body children) + ((seq-some 'magit-section-hidden-body children) (mapc 'magit-section-show-children sections)) (t (mapc 'magit-section-hide sections))))))) @@ -1921,7 +1921,7 @@ Staging and applying changes is documented in info node (list 'unstaged magit-buffer-typearg))) (and magit-buffer-diff-files (cons "--" magit-buffer-diff-files)))) -(defvar magit-file-section-map +(defvar magit-diff-section-base-map (let ((map (make-sparse-keymap))) (define-key map (kbd "C-j") 'magit-diff-visit-worktree-file) (define-key map [C-return] 'magit-diff-visit-worktree-file) @@ -1929,36 +1929,46 @@ Staging and applying changes is documented in info node (define-key map [remap magit-delete-thing] 'magit-discard) (define-key map [remap magit-revert-no-commit] 'magit-reverse) (define-key map "a" 'magit-apply) - (define-key map "C" 'magit-commit-add-log) (define-key map "s" 'magit-stage) (define-key map "u" 'magit-unstage) (define-key map "&" 'magit-do-async-shell-command) - (define-key map "\C-c\C-t" 'magit-diff-trace-definition) - (define-key map "\C-c\C-e" 'magit-diff-edit-hunk-commit) + (define-key map "C" 'magit-commit-add-log) + (define-key map (kbd "C-x a") 'magit-add-change-log-entry) + (define-key map (kbd "C-x 4 a") 'magit-add-change-log-entry-other-window) + (define-key map (kbd "C-c C-t") 'magit-diff-trace-definition) + (define-key map (kbd "C-c C-e") 'magit-diff-edit-hunk-commit) + map) + "Parent of `magit-{hunk,file}-section-map'.") + +(defvar magit-file-section-map + (let ((map (make-sparse-keymap))) + (set-keymap-parent map magit-diff-section-base-map) map) "Keymap for `file' sections.") (defvar magit-hunk-section-map (let ((map (make-sparse-keymap))) - (define-key map (kbd "C-j") 'magit-diff-visit-worktree-file) - (define-key map [C-return] 'magit-diff-visit-worktree-file) - (define-key map [remap magit-visit-thing] 'magit-diff-visit-file) - (define-key map [remap magit-delete-thing] 'magit-discard) - (define-key map [remap magit-revert-no-commit] 'magit-reverse) - (define-key map "a" 'magit-apply) - (define-key map "C" 'magit-commit-add-log) - (define-key map "s" 'magit-stage) - (define-key map "u" 'magit-unstage) - (define-key map "&" 'magit-do-async-shell-command) - (define-key map "\C-c\C-t" 'magit-diff-trace-definition) - (define-key map "\C-c\C-e" 'magit-diff-edit-hunk-commit) + (set-keymap-parent map magit-diff-section-base-map) map) "Keymap for `hunk' sections.") +(defconst magit-diff-conflict-headline-re + (concat "^" (regexp-opt + ;; Defined in merge-tree.c in this order. + '("merged" + "added in remote" + "added in both" + "added in local" + "removed in both" + "changed in both" + "removed in local" + "removed in remote")))) + (defconst magit-diff-headline-re (concat "^\\(@@@?\\|diff\\|Submodule\\|" - "\\* Unmerged path\\|merged\\|changed in both\\|" - "added in remote\\|removed in remote\\)")) + "\\* Unmerged path\\|" + (substring magit-diff-conflict-headline-re 1) + "\\)")) (defconst magit-diff-statline-re (concat "^ ?" @@ -2122,14 +2132,21 @@ section or a child thereof." 'font-lock-face 'magit-diff-file-heading)) (insert ?\n)))) t) - ((looking-at (concat "^\\(merged\\|changed in both\\|" - "added in remote\\|removed in remote\\)")) - (let ((status (pcase (match-string 1) - ("merged" "merged") - ("changed in both" "conflict") - ("added in remote" "new file") - ("removed in remote" "deleted"))) + ((looking-at magit-diff-conflict-headline-re) + (let ((long-status (match-string 0)) + (status "BUG") file orig base modes) + (if (equal long-status "merged") + (progn (setq status long-status) + (setq long-status nil)) + (setq status (pcase-exhaustive long-status + ("added in remote" "new file") + ("added in both" "new file") + ("added in local" "new file") + ("removed in both" "removed") + ("changed in both" "changed") + ("removed in local" "removed") + ("removed in remote" "removed")))) (magit-delete-line) (while (looking-at "^ \\([^ ]+\\) +[0-9]\\{6\\} \\([a-z0-9]\\{40\\}\\) \\(.+\\)$") @@ -2142,7 +2159,8 @@ section or a child thereof." (magit-delete-line)) (when orig (setq orig (magit-decode-git-path orig))) (when file (setq file (magit-decode-git-path file))) - (magit-diff-insert-file-section (or file base) orig status modes nil))) + (magit-diff-insert-file-section + (or file base) orig status modes nil long-status))) ((looking-at "^diff --\\(?:\\(git\\) \\(?:\\(.+?\\) \\2\\)?\\|\\(cc\\|combined\\) \\(.+\\)\\)") (let ((status (cond ((equal (match-string 1) "git") "modified") @@ -2186,15 +2204,18 @@ section or a child thereof." (setq orig (substring orig 2)))) (magit-diff-insert-file-section file orig status modes header))))) -(defun magit-diff-insert-file-section (file orig status modes header) +(defun magit-diff-insert-file-section + (file orig status modes header &optional long-status) (magit-insert-section section (file file (or (equal status "deleted") (derived-mode-p 'magit-status-mode))) - (insert (propertize (format "%-10s %s\n" status + (insert (propertize (format "%-10s %s" status (if (or (not orig) (equal orig file)) file (format "%s -> %s" orig file))) 'font-lock-face 'magit-diff-file-heading)) + (when long-status + (insert (format " (%s)" long-status))) (magit-insert-heading) (unless (equal orig file) (oset section source orig)) @@ -2791,10 +2812,10 @@ Do not confuse this with `magit-diff-scope' (which see)." (if (memq type '(file module)) (magit-diff-type parent) type))) - (`hunk (-> it - (oref parent) - (oref parent) - (oref type))))))) + (`hunk (thread-first it + (oref parent) + (oref parent) + (oref type))))))) ((derived-mode-p 'magit-log-mode) (if (or (and (magit-section-match 'commit section) (oref section children)) diff --git a/elpa/magit-20200608.928/magit-ediff.el b/elpa/magit-20201116.1057/magit-ediff.el similarity index 100% rename from elpa/magit-20200608.928/magit-ediff.el rename to elpa/magit-20201116.1057/magit-ediff.el diff --git a/elpa/magit-20200608.928/magit-extras.el b/elpa/magit-20201116.1057/magit-extras.el similarity index 97% rename from elpa/magit-20200608.928/magit-extras.el rename to elpa/magit-20201116.1057/magit-extras.el index 39366922..132de58b 100644 --- a/elpa/magit-20200608.928/magit-extras.el +++ b/elpa/magit-20201116.1057/magit-extras.el @@ -30,9 +30,13 @@ (require 'magit) (declare-function dired-read-shell-command "dired-aux" (prompt arg files)) +;; For `magit-project-status'. +(declare-function project-root "project" (project)) (defvar ido-exit) (defvar ido-fallback) +(defvar project-prefix-map) +(defvar project-switch-commands) (defgroup magit-extras nil "Additional functionality for Magit." @@ -131,6 +135,20 @@ like pretty much every other keymap: (with-no-warnings (setq fallback 'magit-status)) ; for Emacs 25 (exit-minibuffer)) +;;;###autoload +(defun magit-project-status () + "Run `magit-status' in the current project's root." + (interactive) + (magit-status-setup-buffer (project-root (project-current t)))) + +(with-eval-after-load 'project + ;; Only more recent versions of project.el have `project-prefix-map' and + ;; `project-switch-commands', though project.el is available in Emacs 25. + (when (boundp 'project-prefix-map) + (define-key project-prefix-map "m" #'magit-project-status)) + (when (boundp 'project-switch-commands) + (add-to-list 'project-switch-commands '(?m "Magit" magit-status)))) + ;;;###autoload (defun magit-dired-jump (&optional other-window) "Visit file at point using Dired. diff --git a/elpa/magit-20200608.928/magit-fetch.el b/elpa/magit-20201116.1057/magit-fetch.el similarity index 98% rename from elpa/magit-20200608.928/magit-fetch.el rename to elpa/magit-20201116.1057/magit-fetch.el index b8fed371..58cbac58 100644 --- a/elpa/magit-20200608.928/magit-fetch.el +++ b/elpa/magit-20201116.1057/magit-fetch.el @@ -46,7 +46,8 @@ Ignored for Git versions before v2.8.0." :man-page "git-fetch" ["Arguments" ("-p" "Prune deleted branches" ("-p" "--prune")) - ("-t" "Fetch all tags" ("-t" "--tags"))] + ("-t" "Fetch all tags" ("-t" "--tags")) + (7 "-u" "Fetch full history" "--unshallow")] ["Fetch from" ("p" magit-fetch-from-pushremote) ("u" magit-fetch-from-upstream) diff --git a/elpa/magit-20200608.928/magit-files.el b/elpa/magit-20201116.1057/magit-files.el similarity index 91% rename from elpa/magit-20200608.928/magit-files.el rename to elpa/magit-20201116.1057/magit-files.el index 3ba31a9c..0a0a7623 100644 --- a/elpa/magit-20200608.928/magit-files.el +++ b/elpa/magit-20201116.1057/magit-files.el @@ -279,19 +279,13 @@ directory, while reading the FILENAME." (confirm-nonexistent-file-or-buffer)))) (find-file-other-frame filename wildcards)) -;;; File Mode - -(defvar magit-file-mode-map - (let ((map (make-sparse-keymap))) - (define-key map "\C-xg" 'magit-status) - (define-key map "\C-x\M-g" 'magit-dispatch) - (define-key map "\C-c\M-g" 'magit-file-dispatch) - map) - "Keymap for `magit-file-mode'.") +;;; File Dispatch ;;;###autoload (autoload 'magit-file-dispatch "magit" nil t) (transient-define-prefix magit-file-dispatch () - "Invoke a Magit command that acts on the visited file." + "Invoke a Magit command that acts on the visited file. +When invoked outside a file-visiting buffer, then fall back +to `magit-dispatch'." :info-manual "(magit) Minor Mode for Buffers Visiting Files" ["Actions" [("s" "Stage" magit-stage-file) @@ -317,39 +311,12 @@ directory, while reading the FILENAME." [(5 "C-c r" "Rename file" magit-file-rename) (5 "C-c d" "Delete file" magit-file-delete) (5 "C-c u" "Untrack file" magit-file-untrack) - (5 "C-c c" "Checkout file" magit-file-checkout)]]) - -(defvar magit-file-mode-lighter "") - -(define-minor-mode magit-file-mode - "Enable some Magit features in a file-visiting buffer. - -Currently this only adds the following key bindings. -\n\\{magit-file-mode-map}" - :package-version '(magit . "2.2.0") - :lighter magit-file-mode-lighter - :keymap magit-file-mode-map) - -(defun magit-file-mode-turn-on () - (and buffer-file-name - (magit-inside-worktree-p t) - (magit-file-mode))) - -;;;###autoload -(define-globalized-minor-mode global-magit-file-mode - magit-file-mode magit-file-mode-turn-on - :package-version '(magit . "2.13.0") - :link '(info-link "(magit)Minor Mode for Buffers Visiting Files") - :group 'magit-essentials - :group 'magit-modes - :init-value t) -;; Unfortunately `:init-value t' only sets the value of the mode -;; variable but does not cause the mode function to be called, and we -;; cannot use `:initialize' to call that explicitly because the option -;; is defined before the functions, so we have to do it here. -(cl-eval-when (load eval) - (when global-magit-file-mode - (global-magit-file-mode 1))) + (5 "C-c c" "Checkout file" magit-file-checkout)]] + (interactive) + (transient-setup + (if (or buffer-file-name magit-buffer-file-name) + 'magit-file-dispatch + 'magit-dispatch))) ;;; Blob Mode @@ -430,20 +397,27 @@ the same location in the respective file in the working tree." ;;; File Commands (defun magit-file-rename (file newname) - "Rename the FILE to NEWNAME. -If FILE isn't tracked in Git, fallback to using `rename-file'." + "Rename or move FILE to NEWNAME. +NEWNAME may be a file or directory name. If FILE isn't tracked in +Git, fallback to using `rename-file'." (interactive (let* ((file (magit-read-file "Rename file")) (dir (file-name-directory file)) - (newname (read-file-name (format "Rename %s to file: " file) + (newname (read-file-name (format "Move %s to destination: " file) (and dir (expand-file-name dir))))) (list (expand-file-name file (magit-toplevel)) (expand-file-name newname)))) - (let ((oldbuf (get-file-buffer file))) + (let ((oldbuf (get-file-buffer file)) + (dstdir (file-name-directory newname)) + (dstfile (if (directory-name-p newname) + (concat newname (file-name-nondirectory file)) + newname))) (when (and oldbuf (buffer-modified-p oldbuf)) (user-error "Save %s before moving it" file)) - (when (file-exists-p newname) - (user-error "%s already exists" newname)) + (when (file-exists-p dstfile) + (user-error "%s already exists" dstfile)) + (unless (file-exists-p dstdir) + (user-error "Destination directory %s does not exist" dstdir)) (if (magit-file-tracked-p (magit-convert-filename-for-git file)) (magit-call-git "mv" (magit-convert-filename-for-git file) @@ -452,7 +426,7 @@ If FILE isn't tracked in Git, fallback to using `rename-file'." (when oldbuf (with-current-buffer oldbuf (let ((buffer-read-only buffer-read-only)) - (set-visited-file-name newname nil t)) + (set-visited-file-name dstfile nil t)) (if (fboundp 'vc-refresh-state) (vc-refresh-state) (with-no-warnings diff --git a/elpa/magit-20200608.928/magit-git.el b/elpa/magit-20201116.1057/magit-git.el similarity index 96% rename from elpa/magit-20200608.928/magit-git.el rename to elpa/magit-20201116.1057/magit-git.el index 6ee11b11..76b5f942 100644 --- a/elpa/magit-20200608.928/magit-git.el +++ b/elpa/magit-20201116.1057/magit-git.el @@ -297,6 +297,19 @@ Also respect the value of `magit-with-editor-envvar'." (with-editor* magit-with-editor-envvar ,@body))) +(defmacro magit--with-temp-process-buffer (&rest body) + "Like `with-temp-buffer', but always propagate `process-environment'. +When that var is buffer-local in the calling buffer, it is not +propagated by `with-temp-buffer', so we explicitly ensure that +happens, so that processes will be invoked consistently. BODY is +as for that macro." + (declare (indent 0) (debug (body))) + (let ((p (cl-gensym))) + `(let ((,p process-environment)) + (with-temp-buffer + (setq-local process-environment ,p) + ,@body)))) + (defun magit-process-git-arguments (args) "Prepare ARGS for a function that invokes Git. @@ -339,7 +352,7 @@ what you want, then use `magit-git-string-ng' instead. This is an experimental replacement for `magit-git-string', and still subject to major changes." (magit--with-refresh-cache (cons default-directory args) - (with-temp-buffer + (magit--with-temp-process-buffer (and (zerop (apply #'magit-process-file magit-git-executable nil t nil (magit-process-git-arguments args))) (not (bobp)) @@ -359,7 +372,7 @@ This is an experimental replacement for `magit-git-string', and still subject to major changes. Also see `magit-git-string-p'." (magit--with-refresh-cache (list default-directory 'magit-git-string-ng args) - (with-temp-buffer + (magit--with-temp-process-buffer (let* ((args (magit-process-git-arguments args)) (status (apply #'magit-process-file magit-git-executable nil t nil args))) @@ -387,7 +400,7 @@ newline, return an empty string. Like `magit-git-string' but ignore `magit-git-debug'." (setq args (-flatten args)) (magit--with-refresh-cache (cons default-directory args) - (with-temp-buffer + (magit--with-temp-process-buffer (apply #'magit-process-file magit-git-executable nil (list t nil) nil (magit-process-git-arguments args)) (unless (bobp) @@ -398,7 +411,7 @@ ignore `magit-git-debug'." "Execute Git with ARGS, returning its output." (setq args (-flatten args)) (magit--with-refresh-cache (cons default-directory args) - (with-temp-buffer + (magit--with-temp-process-buffer (apply #'magit-process-file magit-git-executable nil (list t nil) nil (magit-process-git-arguments args)) (buffer-substring-no-properties (point-min) (point-max))))) @@ -468,7 +481,7 @@ If there is no output, return nil. If the output begins with a newline, return an empty string." (setq args (-flatten args)) (magit--with-refresh-cache (cons default-directory args) - (with-temp-buffer + (magit--with-temp-process-buffer (apply #'magit-git-insert args) (unless (bobp) (goto-char (point-min)) @@ -480,7 +493,7 @@ Empty lines anywhere in the output are omitted. If Git exits with a non-zero exit status, then report show a message and add a section in the respective process buffer." - (with-temp-buffer + (magit--with-temp-process-buffer (apply #'magit-git-insert args) (split-string (buffer-string) "\n" t))) @@ -490,7 +503,7 @@ Empty items anywhere in the output are omitted. If Git exits with a non-zero exit status, then report show a message and add a section in the respective process buffer." - (with-temp-buffer + (magit--with-temp-process-buffer (apply #'magit-git-insert args) (split-string (buffer-string) "\0" t))) @@ -719,7 +732,8 @@ returning the truename." ;; Git bug. See #2364. (not (equal wtree ".git"))) ;; Return the linked working tree. - (file-name-directory wtree)) + (concat (file-remote-p default-directory) + (file-name-directory wtree))) ;; The working directory may not be the parent directory of ;; .git if it was set up with `git init --separate-git-dir'. ;; See #2955. @@ -893,7 +907,7 @@ range. Otherwise, it can be any revision or range accepted by revA revB)))) (defun magit-file-status (&rest args) - (with-temp-buffer + (magit--with-temp-process-buffer (save-excursion (magit-git-insert "status" "-z" args)) (let ((pos (point)) status) (while (> (skip-chars-forward "[:print:]") 0) @@ -1495,30 +1509,31 @@ The returned value has the form (REMOTE . REF), where REMOTE is the name of a remote and REF is the ref local to the remote." (when-let ((ref (magit-ref-fullname refname))) (save-match-data - (-some (lambda (line) - (and (string-match "\ + (seq-some (lambda (line) + (and (string-match "\ \\`remote\\.\\([^.]+\\)\\.fetch=\\+?\\([^:]+\\):\\(.+\\)" line) - (let ((rmt (match-string 1 line)) - (src (match-string 2 line)) - (dst (match-string 3 line))) - (and (string-match (format "\\`%s\\'" - (replace-regexp-in-string - "*" "\\(.+\\)" dst t t)) - ref) - (cons rmt (replace-regexp-in-string - "*" (match-string 1 ref) src)))))) - (magit-git-lines "config" "--local" "--list"))))) + (let ((rmt (match-string 1 line)) + (src (match-string 2 line)) + (dst (match-string 3 line))) + (and (string-match (format "\\`%s\\'" + (replace-regexp-in-string + "*" "\\(.+\\)" dst t t)) + ref) + (cons rmt (replace-regexp-in-string + "*" (match-string 1 ref) src)))))) + (magit-git-lines "config" "--local" "--list"))))) (defun magit-split-branch-name (branch) (cond ((member branch (magit-list-local-branch-names)) (cons "." branch)) ((string-match "/" branch) - (or (-some (lambda (remote) - (and (string-match (format "\\`\\(%s\\)/\\(.+\\)\\'" remote) - branch) - (cons (match-string 1 branch) - (match-string 2 branch)))) - (magit-list-remotes)) + (or (seq-some (lambda (remote) + (and (string-match + (format "\\`\\(%s\\)/\\(.+\\)\\'" remote) + branch) + (cons (match-string 1 branch) + (match-string 2 branch)))) + (magit-list-remotes)) (error "Invalid branch name %s" branch))))) (defun magit-get-current-tag (&optional rev with-distance) @@ -1701,17 +1716,13 @@ SORTBY is a key or list of keys to pass to the `--sort' flag of (list (match-string 1 it))) (magit-git-items "ls-files" "-z" "--stage"))) +(defun magit-list-module-names () + (mapcar #'magit-get-submodule-name (magit-list-module-paths))) + (defun magit-get-submodule-name (path) "Return the name of the submodule at PATH. PATH has to be relative to the super-repository." - (cadr (split-string - (car (or (magit-git-items - "config" "-z" - "-f" (expand-file-name ".gitmodules" (magit-toplevel)) - "--get-regexp" "^submodule\\..*\\.path$" - (concat "^" (regexp-quote (directory-file-name path)) "$")) - (error "No such submodule `%s'" path))) - "\n"))) + (magit-git-string "submodule--helper" "name" path)) (defun magit-list-worktrees () (let (worktrees worktree) @@ -1819,7 +1830,7 @@ Return a list of two integers: (A>B B>A)." (cdr (split-string it)))) (defun magit-patch-id (rev) - (with-temp-buffer + (magit--with-temp-process-buffer (magit-process-file shell-file-name nil '(t nil) nil shell-command-switch (let ((exec (shell-quote-argument magit-git-executable))) @@ -1970,7 +1981,7 @@ and this option only controls what face is used.") (defmacro magit-with-blob (commit file &rest body) (declare (indent 2) (debug (form form body))) - `(with-temp-buffer + `(magit--with-temp-process-buffer (let ((buffer-file-name ,file)) (save-excursion (magit-git-insert "cat-file" "-p" @@ -2266,10 +2277,21 @@ out. Only existing branches can be selected." (magit-tag-at-point))) (defun magit-read-stash (prompt) - (let ((stashes (magit-list-stashes))) - (magit-completing-read prompt stashes nil t nil nil - (magit-stash-at-point) - (car stashes)))) + (let* ((atpoint (magit-stash-at-point)) + (default (and atpoint + (concat atpoint (magit-rev-format " %s" atpoint)))) + (choices (mapcar (lambda (c) + (pcase-let ((`(,rev ,msg) (split-string c "\0"))) + (concat (propertize rev 'face 'magit-hash) + " " msg))) + (magit-list-stashes "%gd%x00%s"))) + (choice (magit-completing-read prompt choices + nil t nil nil + default + (car choices)))) + (and choice + (string-match "^\\([^ ]+\\) \\(.+\\)" choice) + (substring-no-properties (match-string 1 choice))))) (defun magit-read-remote (prompt &optional default use-only) (let ((remotes (magit-list-remotes))) diff --git a/elpa/magit-20200608.928/magit-gitignore.el b/elpa/magit-20201116.1057/magit-gitignore.el similarity index 100% rename from elpa/magit-20200608.928/magit-gitignore.el rename to elpa/magit-20201116.1057/magit-gitignore.el diff --git a/elpa/magit-20200608.928/magit-imenu.el b/elpa/magit-20201116.1057/magit-imenu.el similarity index 100% rename from elpa/magit-20200608.928/magit-imenu.el rename to elpa/magit-20201116.1057/magit-imenu.el diff --git a/elpa/magit-20200608.928/magit-log.el b/elpa/magit-20201116.1057/magit-log.el similarity index 99% rename from elpa/magit-20200608.928/magit-log.el rename to elpa/magit-20201116.1057/magit-log.el index 6450dfde..8b0016e1 100644 --- a/elpa/magit-20200608.928/magit-log.el +++ b/elpa/magit-20201116.1057/magit-log.el @@ -450,7 +450,9 @@ the upstream isn't ahead of the current branch) show." ("r" "current" magit-reflog-current) ("O" "other" magit-reflog-other) ("H" "HEAD" magit-reflog-head)] - [:if magit--any-wip-mode-enabled-p + [:if (lambda () + (require 'magit-wip) + (magit--any-wip-mode-enabled-p)) :description "Wiplog" ("i" "index" magit-wip-log-index) ("w" "worktree" magit-wip-log-worktree)]]) diff --git a/elpa/magit-20200608.928/magit-margin.el b/elpa/magit-20201116.1057/magit-margin.el similarity index 100% rename from elpa/magit-20200608.928/magit-margin.el rename to elpa/magit-20201116.1057/magit-margin.el diff --git a/elpa/magit-20200608.928/magit-merge.el b/elpa/magit-20201116.1057/magit-merge.el similarity index 99% rename from elpa/magit-20200608.928/magit-merge.el rename to elpa/magit-20201116.1057/magit-merge.el index 35d80bc4..31b228ad 100644 --- a/elpa/magit-20200608.928/magit-merge.el +++ b/elpa/magit-20201116.1057/magit-merge.el @@ -47,7 +47,7 @@ ("-f" "Fast-forward only" "--ff-only") ("-n" "No fast-forward" "--no-ff") (magit-merge:--strategy) - (5 magit-diff:--diff-algorithm :argument "--Xdiff-algorithm=") + (5 magit-diff:--diff-algorithm :argument "-Xdiff-algorithm=") (5 magit:--gpg-sign)] ["Actions" :if-not magit-merge-in-progress-p diff --git a/elpa/magit-20200608.928/magit-mode.el b/elpa/magit-20201116.1057/magit-mode.el similarity index 98% rename from elpa/magit-20200608.928/magit-mode.el rename to elpa/magit-20201116.1057/magit-mode.el index db9c0af4..787da27e 100644 --- a/elpa/magit-20200608.928/magit-mode.el +++ b/elpa/magit-20201116.1057/magit-mode.el @@ -401,8 +401,6 @@ recommended value." (define-key map (kbd "C-c C-e") 'magit-edit-thing) (define-key map (kbd "C-c C-o") 'magit-browse-thing) (define-key map (kbd "C-c C-w") 'magit-browse-thing) - (define-key map (kbd "C-x a") 'magit-add-change-log-entry) - (define-key map (kbd "C-x 4 a") 'magit-add-change-log-entry-other-window) (define-key map (kbd "C-w") 'magit-copy-section-value) (define-key map (kbd "M-w") 'magit-copy-buffer-revision) (define-key map [remap previous-line] 'magit-previous-line) @@ -514,10 +512,10 @@ which visits the thing at point using `browse-url'." Magit is documented in info node `(magit)'." :group 'magit (hack-dir-local-variables-non-file-buffer) + (face-remap-add-relative 'header-line 'magit-header-line) (setq mode-line-process (magit-repository-local-get 'mode-line-process)) - (setq-local bookmark-make-record-function 'magit--make-bookmark)) - -;;; Highlighting + (setq-local bookmark-make-record-function 'magit--make-bookmark) + (setq-local isearch-filter-predicate 'magit-section--open-temporarily)) ;;; Local Variables @@ -850,13 +848,13 @@ If a frame, then only consider buffers on that frame." (w (window) (b (window-buffer window))) (f (frame) - (-some #'w (window-list frame 'no-minibuf)))) + (seq-some #'w (window-list frame 'no-minibuf)))) (pcase-exhaustive frame - (`nil (-some #'b (buffer-list))) - (`all (-some #'f (frame-list))) - (`visible (-some #'f (visible-frame-list))) - ((or `selected `t) (-some #'w (window-list (selected-frame)))) - ((guard (framep frame)) (-some #'w (window-list frame))))) + (`nil (seq-some #'b (buffer-list))) + (`all (seq-some #'f (frame-list))) + (`visible (seq-some #'f (visible-frame-list))) + ((or `selected `t) (seq-some #'w (window-list (selected-frame)))) + ((guard (framep frame)) (seq-some #'w (window-list frame))))) (magit--not-inside-repository-error))) (defun magit-mode-get-buffer (mode &optional create frame value) @@ -1263,7 +1261,8 @@ Later, when the buffer is buried, it may be restored by (defun magit-insert-xref-buttons () "Insert xref buttons." - (when (or help-xref-stack help-xref-forward-stack) + (when (and (not magit-buffer-locked-p) + (or help-xref-stack help-xref-forward-stack)) (when help-xref-stack (magit-xref-insert-button help-back-label 'magit-xref-backward)) (when help-xref-forward-stack diff --git a/elpa/magit-20200608.928/magit-notes.el b/elpa/magit-20201116.1057/magit-notes.el similarity index 100% rename from elpa/magit-20200608.928/magit-notes.el rename to elpa/magit-20201116.1057/magit-notes.el diff --git a/elpa/magit-20200608.928/magit-obsolete.el b/elpa/magit-20201116.1057/magit-obsolete.el similarity index 100% rename from elpa/magit-20200608.928/magit-obsolete.el rename to elpa/magit-20201116.1057/magit-obsolete.el diff --git a/elpa/magit-20200608.928/magit-patch.el b/elpa/magit-20201116.1057/magit-patch.el similarity index 99% rename from elpa/magit-20200608.928/magit-patch.el rename to elpa/magit-20201116.1057/magit-patch.el index 3a63f221..384bcb66 100644 --- a/elpa/magit-20200608.928/magit-patch.el +++ b/elpa/magit-20201116.1057/magit-patch.el @@ -308,7 +308,7 @@ same differences as those shown in the buffer are always used." ;;;###autoload (defun magit-request-pull (url start end) - "Request upstream to pull from you public repository. + "Request upstream to pull from your public repository. URL is the url of your publicly accessible repository. START is a commit that already is in the upstream repository. diff --git a/elpa/magit-20200608.928/magit-pkg.el b/elpa/magit-20201116.1057/magit-pkg.el similarity index 55% rename from elpa/magit-20200608.928/magit-pkg.el rename to elpa/magit-20201116.1057/magit-pkg.el index eeb1cf0d..bdb9ca42 100644 --- a/elpa/magit-20200608.928/magit-pkg.el +++ b/elpa/magit-20201116.1057/magit-pkg.el @@ -1,12 +1,12 @@ -(define-package "magit" "20200608.928" "A Git porcelain inside Emacs." +(define-package "magit" "20201116.1057" "A Git porcelain inside Emacs." '((emacs "25.1") (async "20200113") (dash "20200524") (git-commit "20200516") (transient "20200601") (with-editor "20200522")) - :commit "5341b7cd61258d2ad1e0511a50ece0f1221a718d" :keywords - '("git" "tools" "vc")) + :commit "dc6dd40f1ab4abb32a1babf8c8f23ccbeb6c39c6" :keywords + ("git" "tools" "vc")) ;; Local Variables: ;; no-byte-compile: t ;; End: diff --git a/elpa/magit-20200608.928/magit-process.el b/elpa/magit-20201116.1057/magit-process.el similarity index 96% rename from elpa/magit-20200608.928/magit-process.el rename to elpa/magit-20201116.1057/magit-process.el index 12eedf8d..9b7030e2 100644 --- a/elpa/magit-20200608.928/magit-process.el +++ b/elpa/magit-20201116.1057/magit-process.el @@ -99,6 +99,13 @@ When this is nil, no sections are ever removed." :group 'magit-process :type '(choice (const :tag "Never remove old sections" nil) integer)) +(defvar magit-process-extreme-logging nil + "Whether `magit-process-file' logs to *Messages* buffer. +Only intended for temporary use when you try to figure out how +Magit uses Git behind the scene. Output that normally goes to +the magit-process buffer continues to go there. Not all output +goes to either of these two buffers.") + (defcustom magit-process-error-tooltip-max-lines 20 "The number of lines for `magit-process-error-lines' to return. @@ -156,7 +163,7 @@ itself from the hook, to avoid further futile attempts." "\\([Nn]o?\\)" ;; OpenSSH v8 prints this. See #3969. "\\(?:/\\[fingerprint\\]\\)?" - "[\])] ?[?:] ?$") + "[\])] ?[?:]? ?$") "Regexp matching Yes-or-No prompts of Git and its subprocesses." :package-version '(magit . "2.1.0") :group 'magit-process @@ -398,6 +405,9 @@ Process output goes into a new section in the buffer returned by Identical to `process-file' but temporarily enable Cygwin's \"noglob\" option during the call and ensure unix eol conversion." + (when magit-process-extreme-logging + (let ((inhibit-message t)) + (message "$ %s" (magit-process--format-arguments process args)))) (let ((process-environment (magit-process-environment)) (default-process-coding-system (magit--process-coding-system))) (apply #'process-file process infile buffer display args))) @@ -630,25 +640,7 @@ Magit status buffer." (unless (equal (expand-file-name pwd) (expand-file-name default-directory)) (insert (file-relative-name pwd default-directory) ?\s)) - (cond - ((and args (equal program magit-git-executable)) - (setq args (-split-at (length magit-git-global-arguments) args)) - (insert (propertize (file-name-nondirectory program) - 'font-lock-face 'magit-section-heading) " ") - (insert (propertize (char-to-string magit-ellipsis) - 'font-lock-face 'magit-section-heading - 'help-echo (mapconcat #'identity (car args) " "))) - (insert " ") - (insert (propertize (mapconcat #'shell-quote-argument (cadr args) " ") - 'font-lock-face 'magit-section-heading))) - ((and args (equal program shell-file-name)) - (insert (propertize (cadr args) - 'font-lock-face 'magit-section-heading))) - (t - (insert (propertize (file-name-nondirectory program) - 'font-lock-face 'magit-section-heading) " ") - (insert (propertize (mapconcat #'shell-quote-argument args " ") - 'font-lock-face 'magit-section-heading)))) + (insert (magit-process--format-arguments program args)) (magit-insert-heading) (when errlog (if (bufferp errlog) @@ -658,6 +650,29 @@ Magit status buffer." (goto-char (1- (point-max))))) (insert "\n")))) +(defun magit-process--format-arguments (program args) + (cond + ((and args (equal program magit-git-executable)) + (setq args (-split-at (length magit-git-global-arguments) args)) + (concat (propertize (file-name-nondirectory program) + 'font-lock-face 'magit-section-heading) + " " + (propertize (char-to-string magit-ellipsis) + 'font-lock-face 'magit-section-heading + 'help-echo (mapconcat #'identity (car args) " ")) + " " + (propertize (mapconcat #'shell-quote-argument (cadr args) " ") + 'font-lock-face 'magit-section-heading))) + ((and args (equal program shell-file-name)) + (propertize (cadr args) + 'font-lock-face 'magit-section-heading)) + (t + (concat (propertize (file-name-nondirectory program) + 'font-lock-face 'magit-section-heading) + " " + (propertize (mapconcat #'shell-quote-argument args " ") + 'font-lock-face 'magit-section-heading))))) + (defun magit-process-truncate-log () (let* ((head nil) (tail (oref magit-root-section children)) diff --git a/elpa/magit-20200608.928/magit-pull.el b/elpa/magit-20201116.1057/magit-pull.el similarity index 100% rename from elpa/magit-20200608.928/magit-pull.el rename to elpa/magit-20201116.1057/magit-pull.el diff --git a/elpa/magit-20200608.928/magit-push.el b/elpa/magit-20201116.1057/magit-push.el similarity index 97% rename from elpa/magit-20200608.928/magit-push.el rename to elpa/magit-20201116.1057/magit-push.el index 8783205a..131a9ff9 100644 --- a/elpa/magit-20200608.928/magit-push.el +++ b/elpa/magit-20201116.1057/magit-push.el @@ -262,8 +262,8 @@ branch as default." (run-hooks 'magit-credential-hook) (magit-run-git-async "push" remote ref args)) -;;;###autoload -(defun magit-push-implicitly (args) +;;;###autoload (autoload 'magit-push-implicitly "magit-push" nil t) +(transient-define-suffix magit-push-implicitly (args) "Push somewhere without using an explicit refspec. This command simply runs \"git push -v [ARGS]\". ARGS are the @@ -273,9 +273,13 @@ these Git variables: `push.default', `remote.pushDefault', `branch..pushRemote', `branch..remote', `branch..merge', and `remote..push'. -The function `magit-push-implicitly--desc' attempts to predict -what this command will do. The value it returns is displayed in -the popup buffer." +If you add this suffix to a transient prefix without explicitly +specifying the description, then an attempt is made to predict +what this command will do. For example: + + (transient-insert-suffix 'magit-push \"p\" + '(\"i\" magit-push-implicitly))" + :description 'magit-push-implicitly--desc (interactive (list (magit-push-arguments))) (run-hooks 'magit-credential-hook) (magit-run-git-async "push" "-v" args)) diff --git a/elpa/magit-20200608.928/magit-reflog.el b/elpa/magit-20201116.1057/magit-reflog.el similarity index 100% rename from elpa/magit-20200608.928/magit-reflog.el rename to elpa/magit-20201116.1057/magit-reflog.el diff --git a/elpa/magit-20200608.928/magit-refs.el b/elpa/magit-20201116.1057/magit-refs.el similarity index 99% rename from elpa/magit-20200608.928/magit-refs.el rename to elpa/magit-20201116.1057/magit-refs.el index c5de5670..d37c909f 100644 --- a/elpa/magit-20200608.928/magit-refs.el +++ b/elpa/magit-20201116.1057/magit-refs.el @@ -334,12 +334,10 @@ Type \\[magit-reset] to reset `HEAD' to the commit at point. (magit-show-refs-arguments magit-prefix-use-buffer-arguments)) ["Arguments" (magit-for-each-ref:--contains) - ("=m" "Merged" "--merged=" magit-transient-read-revision) + ("-M" "Merged" "--merged=" magit-transient-read-revision) ("-m" "Merged to HEAD" "--merged") - ("-M" "Merged to master" "--merged=master") - ("=n" "Not merged" "--no-merged=" magit-transient-read-revision) + ("-N" "Not merged" "--no-merged=" magit-transient-read-revision) ("-n" "Not merged to HEAD" "--no-merged") - ("-N" "Not merged to master" "--no-merged=master") (magit-for-each-ref:--sort)] ["Actions" ("y" "Show refs, comparing them with HEAD" magit-show-refs-head) diff --git a/elpa/magit-20200608.928/magit-remote.el b/elpa/magit-20201116.1057/magit-remote.el similarity index 97% rename from elpa/magit-20200608.928/magit-remote.el rename to elpa/magit-20201116.1057/magit-remote.el index 86b9c066..5d2bf804 100644 --- a/elpa/magit-20200608.928/magit-remote.el +++ b/elpa/magit-20201116.1057/magit-remote.el @@ -98,9 +98,16 @@ has to be used to view and change remote related variables." ;;;###autoload (defun magit-remote-add (remote url &optional args) "Add a remote named REMOTE and fetch it." - (interactive (list (magit-read-string-ns "Remote name") - (magit-read-url "Remote url") - (transient-args 'magit-remote))) + (interactive + (let ((origin (magit-get "remote.origin.url")) + (remote (magit-read-string-ns "Remote name"))) + (list remote + (magit-read-url + "Remote url" + (and origin + (string-match "\\([^:/]+\\)/[^/]+\\(\\.git\\)?\\'" origin) + (replace-match remote t t origin 1))) + (transient-args 'magit-remote)))) (if (pcase (list magit-remote-add-set-remote.pushDefault (magit-get "remote.pushDefault")) (`(,(pred stringp) ,_) t) diff --git a/elpa/magit-20200608.928/magit-repos.el b/elpa/magit-20201116.1057/magit-repos.el similarity index 99% rename from elpa/magit-20200608.928/magit-repos.el rename to elpa/magit-20201116.1057/magit-repos.el index b59de628..b23d86a6 100644 --- a/elpa/magit-20200608.928/magit-repos.el +++ b/elpa/magit-20201116.1057/magit-repos.el @@ -222,9 +222,9 @@ By default this indicates whether there are uncommitted changes. - U if there is at least one unstaged file. - S if there is at least one staged file. Only one letter is shown, the first that applies." - (-some (pcase-lambda (`(,fun . ,flag)) - (and (funcall fun) flag)) - magit-repolist-column-flag-alist)) + (seq-some (pcase-lambda (`(,fun . ,flag)) + (and (funcall fun) flag)) + magit-repolist-column-flag-alist)) (defun magit-repolist-column-unpulled-from-upstream (_id) "Insert number of upstream commits not in the current branch." diff --git a/elpa/magit-20200608.928/magit-reset.el b/elpa/magit-20201116.1057/magit-reset.el similarity index 100% rename from elpa/magit-20200608.928/magit-reset.el rename to elpa/magit-20201116.1057/magit-reset.el diff --git a/elpa/magit-20200608.928/magit-section.el b/elpa/magit-20201116.1057/magit-section.el similarity index 95% rename from elpa/magit-20200608.928/magit-section.el rename to elpa/magit-20201116.1057/magit-section.el index c31024d2..0a21bf20 100644 --- a/elpa/magit-20200608.928/magit-section.el +++ b/elpa/magit-20201116.1057/magit-section.el @@ -684,7 +684,7 @@ hidden." (cond ((and (--any-p (oref it hidden) children) (--any-p (oref it children) children)) (magit-section-show-headings section)) - ((-any-p 'magit-section-hidden-body children) + ((seq-some 'magit-section-hidden-body children) (magit-section-show-children section)) (t (magit-section-hide section)))))) @@ -696,7 +696,7 @@ hidden." (cond ((and (--any-p (oref it hidden) children) (--any-p (oref it children) children)) (magit-section-show-headings magit-root-section)) - ((-any-p 'magit-section-hidden-body children) + ((seq-some 'magit-section-hidden-body children) (magit-section-show-children magit-root-section)) (t (mapc 'magit-section-hide children))))) @@ -971,9 +971,9 @@ at point." (defun magit-section-match-assoc (section alist) "Return the value associated with SECTION's type or lineage in ALIST." - (-some (pcase-lambda (`(,key . ,val)) - (and (magit-section-match-1 key section) val)) - alist)) + (seq-some (pcase-lambda (`(,key . ,val)) + (and (magit-section-match-1 key section) val)) + alist)) ;;; Create @@ -985,14 +985,23 @@ what you are doing and are sure there is no other way.") (defmacro magit-insert-section (&rest args) "Insert a section at point. -TYPE is the section type, a symbol which is prefixed with the -name of the package. (For historic reasons the types used by -Magit and Forge do not use a package prefix.) Many commands -that act on the current section behave differently depending -on its type. +Create a section object of type CLASS, storing VALUE in its +`value' slot, and insert the section at point. CLASS is a +subclass of `magit-section' or has the form `(eval FORM)', in +which case FORM is evaluated at runtime and should return a +subclass. In other places a sections class is oftern referred +to as its \"type\". -Optional VALUE is the value of the section, usually a string -that is required when acting on the section. +Many commands behave differently depending on the class of the +current section and sections of a certain class can have their +own keymap, which is specified using the `keymap' class slot. +The value of that slot should be a variable whose value is a +keymap. + +For historic reasons Magit and Forge in most cases use symbols +as CLASS that don't actually identify a class and that lack the +appropriate package prefix. This works due to some undocumented +kludges, which are not available to other packages. When optional HIDE is non-nil collapse the section body by default, i.e. when first creating the section, but not when @@ -1018,16 +1027,10 @@ of the partially inserted section. This can happen when creating a section by washing Git's output and Git didn't actually output anything this time around. -For historic reasons, if a variable `magit-TYPE-section-map' -or `forge-TYPE-section-map' exists, then use that as the -text-property `keymap' of all text belonging to the section (but -this may be overwritten in subsections). TYPE can also have the -form `(eval FORM)' in which case FORM is evaluated at runtime. - -\(fn [NAME] (TYPE &optional VALUE HIDE) &rest BODY)" +\(fn [NAME] (CLASS &optional VALUE HIDE) &rest BODY)" (declare (indent defun) (debug ([&optional symbolp] - (&or [("eval" symbolp) &optional form form] + (&or [("eval" form) &optional form form] [symbolp &optional form form]) body))) (let ((tp (cl-gensym "type")) @@ -1043,30 +1046,31 @@ form `(eval FORM)' in which case FORM is evaluated at runtime. (or (cdr (assq ,tp magit--section-type-alist)) 'magit-section)) :type - (if (class-p ,tp) - (or (car (rassq ,tp magit--section-type-alist)) - (error "BUG: No entry for %s in %s" ,tp - 'magit--section-type-alist)) - ,tp) + (or (and (class-p ,tp) + (car (rassq ,tp magit--section-type-alist))) + ,tp) :value ,(nth 1 (car args)) :start (point-marker) :parent magit-insert-section--parent))) (oset ,s hidden - (if-let ((value (run-hook-with-args-until-success - 'magit-section-set-visibility-hook ,s))) - (eq value 'hide) - (if-let ((incarnation (and magit-insert-section--oldroot - (magit-get-section - (magit-section-ident ,s) - magit-insert-section--oldroot)))) - (oref incarnation hidden) - (if-let ((value (magit-section-match-assoc - ,s magit-section-initial-visibility-alist))) - (progn - (when (functionp value) - (setq value (funcall value ,s))) - (eq value 'hide)) - ,(nth 2 (car args)))))) + (let ((value (run-hook-with-args-until-success + 'magit-section-set-visibility-hook ,s))) + (if value + (eq value 'hide) + (let ((incarnation (and magit-insert-section--oldroot + (magit-get-section + (magit-section-ident ,s) + magit-insert-section--oldroot)))) + (if incarnation + (oref incarnation hidden) + (let ((value (magit-section-match-assoc + ,s magit-section-initial-visibility-alist))) + (if value + (progn + (when (functionp value) + (setq value (funcall value ,s))) + (eq value 'hide)) + ,(nth 2 (car args))))))))) (let ((magit-insert-section--current ,s) (magit-insert-section--parent ,s) (magit-insert-section--oldroot @@ -1433,7 +1437,7 @@ invisible." (if (oref section hidden) (car magit-section-visibility-indicator) (cdr magit-section-visibility-indicator)) - (face-foreground 'fringe)))))) + 'fringe))))) ((stringp (car-safe magit-section-visibility-indicator)) (let ((ov (magit--overlay-at (1- eoh) 'magit-vis-indicator 'eoh))) (cond ((oref section hidden) @@ -1492,6 +1496,35 @@ invisible." (when (overlay-get o 'magit-vis-indicator) (delete-overlay o))))) +(defvar-local magit-section--opened-sections nil) + +(defun magit-section--open-temporarily (beg end) + (save-excursion + (goto-char beg) + (let ((section (magit-current-section))) + (while section + (if (and (magit-section-invisible-p section) + (<= (oref section content) beg (oref section end))) + (progn + (magit-section-show section) + (push section magit-section--opened-sections) + (setq section (oref section parent))) + (setq section nil))))) + (or (eq search-invisible t) + (not (isearch-range-invisible beg end)))) + +(defun isearch-clean-overlays@magit-mode (fn) + (if (derived-mode-p 'magit-mode) + (let ((pos (point))) + (dolist (section magit-section--opened-sections) + (unless (<= (oref section content) pos (oref section end)) + (magit-section-hide section))) + (setq magit-section--opened-sections nil)) + (funcall fn))) + +(advice-add 'isearch-clean-overlays :around + 'isearch-clean-overlays@magit-mode) + ;;; Utilities (cl-defun magit-section-selected-p (section &optional (selection nil sselection)) diff --git a/elpa/magit-20200608.928/magit-sequence.el b/elpa/magit-20201116.1057/magit-sequence.el similarity index 99% rename from elpa/magit-20200608.928/magit-sequence.el rename to elpa/magit-20201116.1057/magit-sequence.el index 456a5392..3ae6bcb5 100644 --- a/elpa/magit-20200608.928/magit-sequence.el +++ b/elpa/magit-20201116.1057/magit-sequence.el @@ -765,7 +765,7 @@ START has to be selected from a list of recent commits." commit (cl-case action (edit "edit") - (remove "# pick") + (remove "noop\n# pick") (reword "reword") (t (error "unknown action: %s" action))) commit))) @@ -900,8 +900,12 @@ If no such sequence is in progress, do nothing." (when (magit-rebase-in-progress-p) (let* ((interactive (file-directory-p (magit-git-dir "rebase-merge"))) (dir (if interactive "rebase-merge/" "rebase-apply/")) - (name (-> (concat dir "head-name") magit-git-dir magit-file-line)) - (onto (-> (concat dir "onto") magit-git-dir magit-file-line)) + (name (thread-first (concat dir "head-name") + magit-git-dir + magit-file-line)) + (onto (thread-first (concat dir "onto") + magit-git-dir + magit-file-line)) (onto (or (magit-rev-name onto name) (magit-rev-name onto "refs/heads/*") onto)) (name (or (magit-rev-name name "refs/heads/*") name))) diff --git a/elpa/magit-20200608.928/magit-stash.el b/elpa/magit-20201116.1057/magit-stash.el similarity index 98% rename from elpa/magit-20200608.928/magit-stash.el rename to elpa/magit-20201116.1057/magit-stash.el index d4e358c9..c5583fd6 100644 --- a/elpa/magit-20200608.928/magit-stash.el +++ b/elpa/magit-20201116.1057/magit-stash.el @@ -33,6 +33,9 @@ (require 'magit) (require 'magit-reflog) +;; For `magit-stash-drop'. +(defvar helm-comp-read-use-marked) + ;;; Options (defgroup magit-stash nil @@ -231,7 +234,8 @@ When the region is active offer to drop all contained stashes." (interactive (list (--if-let (magit-region-values 'stash) (magit-confirm 'drop-stashes nil "Drop %i stashes" nil it) - (magit-read-stash "Drop stash")))) + (let ((helm-comp-read-use-marked t)) + (magit-read-stash "Drop stash"))))) (dolist (stash (if (listp stash) (nreverse (prog1 stash (setq stash (car stash)))) (list stash))) @@ -375,11 +379,12 @@ instead of \"Stashes:\"." (let ((verified (magit-rev-verify ref)) (autostash (and (magit-rebase-in-progress-p) - (magit-file-line - (magit-git-dir - (-> (if (file-directory-p (magit-git-dir "rebase-merge")) - "rebase-merge/autostash" - "rebase-apply/autostash"))))))) + (thread-first + (if (file-directory-p (magit-git-dir "rebase-merge")) + "rebase-merge/autostash" + "rebase-apply/autostash") + magit-git-dir + magit-file-line)))) (when (or autostash verified) (magit-insert-section (stashes ref) (magit-insert-heading heading) diff --git a/elpa/magit-20200608.928/magit-status.el b/elpa/magit-20201116.1057/magit-status.el similarity index 96% rename from elpa/magit-20200608.928/magit-status.el rename to elpa/magit-20201116.1057/magit-status.el index 739c12c8..dcdab56b 100644 --- a/elpa/magit-20200608.928/magit-status.el +++ b/elpa/magit-20201116.1057/magit-status.el @@ -176,6 +176,33 @@ AUTHOR-WIDTH has to be an integer. When the name of the author :set-after '(magit-log-margin) :set (apply-partially #'magit-margin-set-variable 'magit-status-mode)) +(defcustom magit-status-use-buffer-arguments 'selected + "Whether `magit-status' reuses arguments when the buffer already exists. + +This option has no effect when merely refreshing the status +buffer using `magit-refresh'. + +Valid values are: + +`always': Always use the set of arguments that is currently + active in the status buffer, provided that buffer exists + of course. +`selected': Use the set of arguments from the status + buffer, but only if it is displayed in a window of the + current frame. This is the default. +`current': Use the set of arguments from the status buffer, + but only if it is the current buffer. +`never': Never use the set of arguments from the status + buffer." + :package-version '(magit . "3.0.0") + :group 'magit-buffers + :group 'magit-commands + :type '(choice + (const :tag "always use args from buffer" always) + (const :tag "use args from buffer if displayed in frame" selected) + (const :tag "use args from buffer if it is current" current) + (const :tag "never use args from buffer" never))) + ;;; Commands ;;;###autoload @@ -290,7 +317,7 @@ also contains other useful hints.") (if-let ((version (let ((default-directory directory)) (magit-git-version)))) (if (version<= magit--minimal-git version) - (push version magit--remotes-using-recent-git) + (push remote magit--remotes-using-recent-git) (display-warning 'magit (format "\ Magit requires Git >= %s, but on %s the version is %s. @@ -403,8 +430,10 @@ Type \\[magit-commit] to create a commit. (setq directory default-directory)) (magit--tramp-asserts directory) (let* ((default-directory directory) - (d (magit-diff--get-value 'magit-status-mode)) - (l (magit-log--get-value 'magit-status-mode)) + (d (magit-diff--get-value 'magit-status-mode + magit-status-use-buffer-arguments)) + (l (magit-log--get-value 'magit-status-mode + magit-status-use-buffer-arguments)) (file (and magit-status-goto-file-position (magit-file-relative-name))) (line (and file (line-number-at-pos))) diff --git a/elpa/magit-20200608.928/magit-submodule.el b/elpa/magit-20201116.1057/magit-submodule.el similarity index 100% rename from elpa/magit-20200608.928/magit-submodule.el rename to elpa/magit-20201116.1057/magit-submodule.el diff --git a/elpa/magit-20200608.928/magit-subtree.el b/elpa/magit-20201116.1057/magit-subtree.el similarity index 100% rename from elpa/magit-20200608.928/magit-subtree.el rename to elpa/magit-20201116.1057/magit-subtree.el diff --git a/elpa/magit-20200608.928/magit-tag.el b/elpa/magit-20201116.1057/magit-tag.el similarity index 97% rename from elpa/magit-20200608.928/magit-tag.el rename to elpa/magit-20201116.1057/magit-tag.el index e49e17ea..8706981b 100644 --- a/elpa/magit-20200608.928/magit-tag.el +++ b/elpa/magit-20201116.1057/magit-tag.el @@ -29,6 +29,9 @@ (require 'magit) +;; For `magit-tag-delete'. +(defvar helm-comp-read-use-marked) + ;;;###autoload (autoload 'magit-tag "magit" nil t) (transient-define-prefix magit-tag () "Create or delete a tag." @@ -78,7 +81,8 @@ defaulting to the tag at point. \n(git tag -d TAGS)" (interactive (list (--if-let (magit-region-values 'tag) (magit-confirm t nil "Delete %i tags" nil it) - (magit-read-tag "Delete tag" t)))) + (let ((helm-comp-read-use-marked t)) + (magit-read-tag "Delete tag" t))))) (magit-run-git "tag" "-d" tags)) ;;;###autoload diff --git a/elpa/magit-20200608.928/magit-transient.el b/elpa/magit-20201116.1057/magit-transient.el similarity index 100% rename from elpa/magit-20200608.928/magit-transient.el rename to elpa/magit-20201116.1057/magit-transient.el diff --git a/elpa/magit-20200608.928/magit-utils.el b/elpa/magit-20201116.1057/magit-utils.el similarity index 94% rename from elpa/magit-20200608.928/magit-utils.el rename to elpa/magit-20201116.1057/magit-utils.el index 613d0e2a..eb181a7c 100644 --- a/elpa/magit-20200608.928/magit-utils.el +++ b/elpa/magit-20201116.1057/magit-utils.el @@ -100,10 +100,12 @@ alphabetical order, depending on your version of Ivy." (forge-browse-pullreq nil t) (forge-edit-topic-title nil t) (forge-edit-topic-state nil t) + (forge-edit-topic-milestone nil t) (forge-edit-topic-labels nil t) (forge-edit-topic-marks nil t) (forge-edit-topic-assignees nil t) (forge-edit-topic-review-requests nil t) + (forge-edit-topic-note nil t) (forge-pull-pullreq nil t) (forge-visit-issue nil t) (forge-visit-pullreq nil t)) @@ -145,15 +147,29 @@ The value has the form ((COMMAND nil|PROMPT DEFAULT)...). (const :tag "use default without confirmation" t))))) (defconst magit--confirm-actions - '((const reverse) (const discard) - (const rename) (const resurrect) - (const untrack) (const trash) - (const delete) (const abort-rebase) - (const abort-merge) (const merge-dirty) - (const drop-stashes) (const reset-bisect) - (const kill-process) (const delete-unmerged-branch) - (const delete-pr-branch) (const remove-modules) - (const stage-all-changes) (const unstage-all-changes) + '((const discard) + (const reverse) + (const stage-all-changes) + (const unstage-all-changes) + (const delete) + (const trash) + (const resurrect) + (const untrack) + (const rename) + (const reset-bisect) + (const abort-rebase) + (const abort-merge) + (const merge-dirty) + (const delete-unmerged-branch) + (const delete-pr-remote) + (const drop-stashes) + (const amend-published) + (const rebase-published) + (const edit-published) + (const remove-modules) + (const remove-dirty-modules) + (const trash-module-gitdirs) + (const kill-process) (const safe-with-wip))) (defcustom magit-no-confirm nil @@ -400,7 +416,9 @@ and delay of your graphical environment or operating system." ;;; User Input (defvar helm-completion-in-region-default-sort-fn) +(defvar helm-crm-default-separator) (defvar ivy-sort-functions-alist) +(defvar ivy-sort-matches-functions-alist) (defvar magit-completing-read--silent-default nil) @@ -474,7 +492,8 @@ acts similarly to `completing-read', except for the following: predicate require-match initial-input hist def))) (setq this-command command) - (if (string= reply "") + ;; Note: Avoid `string=' to support `helm-comp-read-use-marked'. + (if (equal reply "") (if require-match (user-error "Nothing selected") nil) @@ -521,6 +540,8 @@ into a list." (minibuffer-completion-table #'crm--collection-fn) (minibuffer-completion-confirm t) (helm-completion-in-region-default-sort-fn nil) + (helm-crm-default-separator nil) + (ivy-sort-matches-functions-alist nil) (input (cl-letf (((symbol-function 'completion-pcm--all-completions) #'magit-completion-pcm--all-completions)) @@ -555,6 +576,7 @@ to nil." crm-local-must-match-map crm-local-completion-map)) (helm-completion-in-region-default-sort-fn nil) + (ivy-sort-matches-functions-alist nil) ;; If the user enters empty input, `read-from-minibuffer' ;; returns the empty string, not DEF. (input (read-from-minibuffer @@ -813,49 +835,36 @@ Unless optional argument KEEP-EMPTY-LINES is t, trim all empty lines." "Set the header-line using STRING. Propertize STRING with the `magit-header-line'. If the `face' property of any part of STRING is already set, then that takes -precedence. Also pad the left and right sides of STRING so that -it aligns with the text area." +precedence. Also pad the left side of STRING so that it aligns +with the text area." (setq header-line-format - (concat - (propertize " " 'display '(space :align-to 0)) - string - (propertize " " 'display - `(space :width - (+ left-fringe - left-margin - ,@(and (eq (car (window-current-scroll-bars)) - 'left) - '(scroll-bar))))))) - (magit--add-face-text-property 0 (1- (length header-line-format)) - 'magit-header-line t header-line-format)) + (concat (propertize " " 'display '(space :align-to 0)) + string))) (defun magit-face-property-all (face string) "Return non-nil if FACE is present in all of STRING." - (cl-loop for pos = 0 then (next-single-property-change - pos 'font-lock-face string) - unless pos - return t - for current = (get-text-property pos 'font-lock-face string) - unless (if (consp current) - (memq face current) - (eq face current)) - return nil)) + (catch 'missing + (let ((pos 0)) + (while (setq pos (next-single-property-change pos 'font-lock-face string)) + (let ((val (get-text-property pos 'font-lock-face string))) + (unless (if (consp val) + (memq face val) + (eq face val)) + (throw 'missing nil)))) + (not pos)))) (defun magit--add-face-text-property (beg end face &optional append object) "Like `add-face-text-property' but for `font-lock-face'." - (cl-loop for pos = (next-single-property-change - beg 'font-lock-face object end) - for current = (get-text-property beg 'font-lock-face object) - for newface = (if (listp current) - (if append - (append current (list face)) - (cons face current)) - (if append - (list current face) - (list face current))) - do (progn (put-text-property beg pos 'font-lock-face newface object) - (setq beg pos)) - while (< beg end))) + (while (< beg end) + (let* ((pos (next-single-property-change beg 'font-lock-face object end)) + (val (get-text-property beg 'font-lock-face object)) + (val (if (listp val) val (list val)))) + (put-text-property beg pos 'font-lock-face + (if append + (append val (list face)) + (cons face val)) + object) + (setq beg pos)))) (defun magit--propertize-face (string face) (propertize string 'face face 'font-lock-face face)) @@ -1104,6 +1113,23 @@ the %s(1) manpage. (advice-add 'org-man-export :around 'org-man-export--magit-gitman) +;;; Kludges for Package Managers + +(defun magit--straight-chase-links (filename) + "Chase links in FILENAME until a name that is not a link. + +This is the same as `file-chase-links', except that it also +handles fake symlinks that are created by the package manager +straight.el on Windows. + +See ." + (when (and (bound-and-true-p straight-symlink-emulation-mode) + (fboundp 'straight-chase-emulated-symlink)) + (when-let ((target (straight-chase-emulated-symlink filename))) + (unless (eq target 'broken) + (setq filename target)))) + (file-chase-links filename)) + ;;; Bitmaps (when (fboundp 'define-fringe-bitmap) @@ -1187,7 +1213,7 @@ Like `message', except that `message-log-max' is bound to nil." (save-excursion (save-restriction (widen) - (goto-char ,pos) + (goto-char (or ,pos 1)) ,@body)))) ;;; _ diff --git a/elpa/magit-20200608.928/magit-wip.el b/elpa/magit-20201116.1057/magit-wip.el similarity index 99% rename from elpa/magit-20200608.928/magit-wip.el rename to elpa/magit-20201116.1057/magit-wip.el index b24f93cf..3bc9dff7 100644 --- a/elpa/magit-20200608.928/magit-wip.el +++ b/elpa/magit-20201116.1057/magit-wip.el @@ -107,6 +107,7 @@ is used as `branch-ref'." ;;; Modes +;;;###autoload (define-minor-mode magit-wip-mode "Save uncommitted changes to work-in-progress refs. diff --git a/elpa/magit-20200608.928/magit-worktree.el b/elpa/magit-20201116.1057/magit-worktree.el similarity index 95% rename from elpa/magit-20200608.928/magit-worktree.el rename to elpa/magit-20201116.1057/magit-worktree.el index 106e91b3..73295d63 100644 --- a/elpa/magit-20200608.928/magit-worktree.el +++ b/elpa/magit-20201116.1057/magit-worktree.el @@ -162,7 +162,10 @@ If there is only one worktree, then insert nothing." (pcase-lambda (`(,path ,barep ,commit ,branch)) (cons (cond (branch (propertize - branch 'font-lock-face 'magit-branch-local)) + branch 'font-lock-face + (if (equal branch (magit-get-current-branch)) + 'magit-branch-current + 'magit-branch-local))) (commit (propertize (magit-rev-abbrev commit) 'font-lock-face 'magit-hash)) (barep "(bare)")) @@ -172,7 +175,7 @@ If there is only one worktree, then insert nothing." (pcase-dolist (`(,head . ,path) cols) (magit-insert-section (worktree path) (insert head) - (indent-to align) + (insert (make-string (- align (length head)) ?\s)) (insert (let ((r (file-relative-name path)) (a (abbreviate-file-name path))) (if (< (string-width r) (string-width a)) r a))) diff --git a/elpa/magit-20200608.928/magit.el b/elpa/magit-20201116.1057/magit.el similarity index 89% rename from elpa/magit-20200608.928/magit.el rename to elpa/magit-20201116.1057/magit.el index b6b8e548..e672c0d5 100644 --- a/elpa/magit-20200608.928/magit.el +++ b/elpa/magit-20201116.1057/magit.el @@ -219,6 +219,69 @@ and/or `magit-branch-remote-head'." "Face for filenames." :group 'magit-faces) +;;; Global Bindings + +;;;###autoload +(define-obsolete-variable-alias 'global-magit-file-mode + 'magit-define-global-key-bindings "Magit 3.0.0") + +;;;###autoload +(defcustom magit-define-global-key-bindings t + "Whether to bind some Magit commands in the global keymap. + +If this variable is non-nil, then the following bindings may +be added to the global keymap. The default is t. + +key binding +--- ------- +C-x g magit-status +C-x M-g magit-dispatch +C-c M-g magit-file-dispatch + +These bindings may be added when `after-init-hook' is called. +Each binding is added if and only if at that time no other key +is bound to the same command and no other command is bound to +the same key. In other words we try to avoid adding bindings +that are unnecessary, as well as bindings that conflict with +other bindings. + +Adding the above bindings is delayed until `after-init-hook' +is called to allow users to set the variable anywhere in their +init file (without having to make sure to do so before `magit' +is loaded or autoloaded) and to increase the likelihood that +all the potentially conflicting user bindings have already +been added. + +Setting this variable after the hook has already been called +has no effect. + +We recommend that you bind \"C-c g\" instead of \"C-c M-g\" to +`magit-file-dispatch'. The former is a much better binding +but the \"C-c \" namespace is strictly reserved for +users; preventing Magit from using it by default. + +Also see info node `(magit)Commands for Buffers Visiting Files'." + :package-version '(magit . "3.0.0") + :group 'magit-essentials + :type 'boolean) + +;;;###autoload +(progn + (defun magit-maybe-define-global-key-bindings () + (when magit-define-global-key-bindings + (let ((map (current-global-map))) + (dolist (elt '(("C-x g" . magit-status) + ("C-x M-g" . magit-dispatch) + ("C-c M-g" . magit-file-dispatch))) + (let ((key (kbd (car elt))) + (def (cdr elt))) + (unless (or (lookup-key map key) + (where-is-internal def (make-sparse-keymap) t)) + (define-key map key def))))))) + (if after-init-time + (magit-maybe-define-global-key-bindings) + (add-hook 'after-init-hook 'magit-maybe-define-global-key-bindings t))) + ;;; Dispatch Popup ;;;###autoload (autoload 'magit-dispatch "magit" nil t) @@ -403,7 +466,7 @@ and Emacs to it." (unless (and toplib (equal (file-name-nondirectory toplib) "magit.el")) (setq toplib (locate-library "magit.el"))) - (setq toplib (and toplib (file-chase-links toplib))) + (setq toplib (and toplib (magit--straight-chase-links toplib))) (push toplib debug) (when toplib (let* ((topdir (file-name-directory toplib)) @@ -411,7 +474,7 @@ and Emacs to it." ".git" (file-name-directory (directory-file-name topdir)))) (static (locate-library "magit-version.el" nil (list topdir))) - (static (and static (file-chase-links static)))) + (static (and static (magit--straight-chase-links static)))) (or (progn (push 'repo debug) (when (and (file-exists-p gitdir) @@ -425,7 +488,8 @@ and Emacs to it." (ignore-errors (delete-file static))) (setq magit-version (let ((default-directory topdir)) - (magit-git-string "describe" "--tags" "--dirty"))))) + (magit-git-string "describe" + "--tags" "--dirty" "--always"))))) (progn (push 'static debug) (when (and static (file-exists-p static)) diff --git a/elpa/magit-20201116.1057/magit.info b/elpa/magit-20201116.1057/magit.info new file mode 100644 index 00000000..74bb6523 --- /dev/null +++ b/elpa/magit-20201116.1057/magit.info @@ -0,0 +1,195 @@ +This is magit.info, produced by makeinfo version 6.5 from magit.texi. + + Copyright (C) 2015-2020 Jonas Bernoulli + + You can redistribute this document and/or modify it under the terms + of the GNU General Public License as published by the Free Software + Foundation, either version 3 of the License, or (at your option) + any later version. + + This document is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + +INFO-DIR-SECTION Emacs +START-INFO-DIR-ENTRY +* Magit: (magit). Using Git from Emacs with Magit. +END-INFO-DIR-ENTRY + + +Indirect: +magit.info-1: 754 +magit.info-2: 300791 + +Tag Table: +(Indirect) +Node: Top754 +Node: Introduction6512 +Node: Installation11235 +Node: Installing from Melpa11565 +Node: Installing from the Git Repository12638 +Node: Post-Installation Tasks15370 +Node: Getting Started16655 +Node: Interface Concepts21898 +Node: Modes and Buffers22259 +Node: Switching Buffers24008 +Node: Naming Buffers28759 +Node: Quitting Windows32066 +Node: Automatic Refreshing of Magit Buffers33812 +Node: Automatic Saving of File-Visiting Buffers36664 +Node: Automatic Reverting of File-Visiting Buffers37849 +Node: Risk of Reverting Automatically42844 +Node: Sections45226 +Node: Section Movement46152 +Node: Section Visibility51062 +Node: Section Hooks57139 +Node: Section Types and Values59546 +Node: Section Options60849 +Node: Transient Commands61321 +Node: Transient Arguments and Buffer Variables62558 +Node: Completion Confirmation and the Selection69576 +Node: Action Confirmation70020 +Node: Completion and Confirmation77370 +Node: The Selection80556 +Node: The hunk-internal region83455 +Node: Support for Completion Frameworks84544 +Node: Additional Completion Options89451 +Node: Running Git90050 +Node: Viewing Git Output90323 +Node: Git Process Status91456 +Node: Running Git Manually92421 +Node: Git Executable94891 +Node: Global Git Arguments97173 +Node: Inspecting97979 +Node: Status Buffer99136 +Node: Status Sections103126 +Node: Status Header Sections108678 +Node: Status Module Sections111308 +Node: Status Options113813 +Node: Repository List115282 +Node: Logging118320 +Node: Refreshing Logs120881 +Node: Log Buffer122327 +Node: Log Margin126183 +Node: Select from Log129362 +Node: Reflog131587 +Node: Cherries133244 +Node: Diffing135092 +Node: Refreshing Diffs138171 +Node: Commands Available in Diffs141750 +Node: Diff Options144286 +Node: Revision Buffer149324 +Node: Ediffing152654 +Node: References Buffer156302 +Node: References Sections166822 +Node: Bisecting167683 +Node: Visiting Files and Blobs169496 +Node: General-Purpose Visit Commands169966 +Node: Visiting Files and Blobs from a Diff170922 +Node: Blaming174381 +Node: Manipulating180722 +Node: Creating Repository181064 +Node: Cloning Repository181619 +Node: Staging and Unstaging187024 +Node: Staging from File-Visiting Buffers191107 +Node: Applying192275 +Node: Committing194168 +Node: Initiating a Commit194751 +Node: Editing Commit Messages198136 +Node: Using the Revision Stack200939 +Node: Commit Pseudo Headers203990 +Node: Commit Mode and Hooks205326 +Node: Commit Message Conventions208264 +Node: Branching210392 +Node: The Two Remotes210618 +Node: Branch Commands213271 +Node: Branch Git Variables225652 +Node: Auxiliary Branch Commands231043 +Node: Merging232161 +Node: Resolving Conflicts236169 +Node: Rebasing241170 +Node: Editing Rebase Sequences246029 +Node: Information About In-Progress Rebase250357 +Ref: Information About In-Progress Rebase-Footnote-1259239 +Node: Cherry Picking259835 +Node: Reverting264166 +Node: Resetting265615 +Node: Stashing267481 +Node: Transferring272182 +Node: Remotes272404 +Node: Remote Commands272556 +Node: Remote Git Variables276637 +Node: Fetching277916 +Node: Pulling280403 +Node: Pushing281449 +Node: Plain Patches285202 +Node: Maildir Patches286693 +Node: Miscellaneous288207 +Node: Tagging288521 +Node: Notes290438 +Node: Submodules292810 +Node: Listing Submodules293028 +Node: Submodule Transient294434 +Node: Subtree296956 +Node: Worktree298932 +Node: Common Commands300791 +Node: Wip Modes302838 +Node: Wip Graph307769 +Node: Legacy Wip Modes310083 +Node: Commands for Buffers Visiting Files312978 +Node: Minor Mode for Buffers Visiting Blobs318600 +Node: Customizing319411 +Node: Per-Repository Configuration321007 +Node: Essential Settings323262 +Node: Safety323607 +Node: Performance325368 +Node: Microsoft Windows Performance332536 +Node: MacOS Performance333727 +Ref: MacOS Performance-Footnote-1334742 +Node: Default Bindings334824 +Node: Plumbing336679 +Node: Calling Git337508 +Node: Getting a Value from Git339033 +Node: Calling Git for Effect342119 +Node: Section Plumbing348641 +Node: Creating Sections348869 +Node: Section Selection352769 +Node: Matching Sections354568 +Node: Refreshing Buffers360541 +Node: Conventions363689 +Node: Theming Faces363881 +Node: FAQ371996 +Node: FAQ - How to ...?372438 +Node: How to pronounce Magit?372851 +Node: How to show git's output?373653 +Node: How to install the gitman info manual?374439 +Node: How to show diffs for gpg-encrypted files?375409 +Node: How does branching and pushing work?376005 +Node: Can Magit be used as ediff-version-control-package?376368 +Node: Should I disable VC?378386 +Node: FAQ - Issues and Errors379004 +Node: Magit is slow379900 +Node: I changed several thousand files at once and now Magit is unusable380114 +Node: I am having problems committing380843 +Node: I am using MS Windows and cannot push with Magit381324 +Node: I am using OS X and SOMETHING works in shell but not in Magit381941 +Node: Expanding a file to show the diff causes it to disappear382772 +Node: Point is wrong in the COMMIT_EDITMSG buffer383353 +Node: The mode-line information isn't always up-to-date384399 +Node: A branch and tag sharing the same name breaks SOMETHING385462 +Node: My Git hooks work on the command-line but not inside Magit386348 +Node: git-commit-mode isn't used when committing from the command-line387194 +Node: Point ends up inside invisible text when jumping to a file-visiting buffer389465 +Node: Debugging Tools390263 +Node: Keystroke Index392442 +Node: Command Index426475 +Node: Function Index463541 +Node: Variable Index479812 + +End Tag Table + + +Local Variables: +coding: utf-8 +End: diff --git a/elpa/magit-20200608.928/magit.info-1 b/elpa/magit-20201116.1057/magit.info-1 similarity index 99% rename from elpa/magit-20200608.928/magit.info-1 rename to elpa/magit-20201116.1057/magit.info-1 index 62443541..ca38f29b 100644 --- a/elpa/magit-20200608.928/magit.info-1 +++ b/elpa/magit-20201116.1057/magit.info-1 @@ -31,7 +31,7 @@ to perform almost all of their daily version control tasks directly from within Emacs. While many fine Git clients exist, only Magit and Git itself deserve to be called porcelains. -This manual is for Magit version 2.90.1 (v2.90.1-996-g6b88fab39+1). +This manual is for Magit version 2.90.1 (v2.90.1-1092-g4b9c2d26a+1). Copyright (C) 2015-2020 Jonas Bernoulli @@ -237,7 +237,7 @@ Miscellaneous * Worktree:: * Common Commands:: * Wip Modes:: -* Minor Mode for Buffers Visiting Files:: +* Commands for Buffers Visiting Files:: * Minor Mode for Buffers Visiting Blobs:: Submodules @@ -261,6 +261,7 @@ Essential Settings * Safety:: * Performance:: +* Default Bindings:: Plumbing @@ -295,6 +296,7 @@ FAQ FAQ - How to ...? +* How to pronounce Magit?:: * How to show git's output?:: * How to install the gitman info manual?:: * How to show diffs for gpg-encrypted files?:: @@ -480,10 +482,10 @@ Melpa or at ‘/path/to/magit/../’, then you have to tell ‘make’ where to find them. To do so create the file ‘/path/to/magit/config.mk’ with the following content before running ‘make’: - LOAD_PATH = -L /path/to/magit/lisp - LOAD_PATH += -L /path/to/dash - LOAD_PATH += -L /path/to/transient - LOAD_PATH += -L /path/to/with-editor + LOAD_PATH = -L ~/.emacs.d/site-lisp/magit/lisp + LOAD_PATH += -L ~/.emacs.d/site-lisp/dash + LOAD_PATH += -L ~/.emacs.d/site-lisp/transient/lisp + LOAD_PATH += -L ~/.emacs.d/site-lisp/with-editor Finally add this to your init file: @@ -495,6 +497,13 @@ with the following content before running ‘make’: (add-to-list 'Info-directory-list "~/.emacs.d/site-lisp/magit/Documentation/")) + Of course if you installed the dependencies manually as well, then +you have to tell Emacs about them too, by prefixing the above with: + + (add-to-list 'load-path "~/.emacs.d/site-lisp/dash") + (add-to-list 'load-path "~/.emacs.d/site-lisp/transient/lisp") + (add-to-list 'load-path "~/.emacs.d/site-lisp/with-editor") + Note that you have to add the ‘lisp’ subdirectory to the ‘load-path’, not the top-level of the repository, and that elements of ‘load-path’ should not end with a slash, while those of ‘Info-directory-list’ @@ -569,11 +578,8 @@ tutorial. Alternatively you can use an existing local repository, but if you do that, then you should commit all uncommitted changes before proceeding. - To display information about the current Git repository, type ‘M-x -magit-status RET’. You will be using this command a lot, and should -therefore give it a global key binding. This is what we recommend: - - (global-set-key (kbd "C-x g") 'magit-status) + Type ‘C-x g’ to display information about the current Git repository +in a dedicated buffer, called the status buffer. Most Magit commands are commonly invoked from the status buffer. It can be considered the primary interface for interacting with Git using @@ -635,27 +641,24 @@ local branch onto the remote configured as the push-remote. (If the push-remote is not configured yet, then you would first be prompted for the remote to push to.) - So far we have mentioned the commit, push, and log transient prefix -commands. These are probably among the transients you will be using the -most, but many others exist. To show a transient that lists all other -transients (as well as the various apply commands and some other -essential commands), type ‘h’. Try a few. - - The key bindings in that transient correspond to the bindings in -Magit buffers, including but not limited to the status buffer. So you -could type ‘h d’ to bring up the diff transient, but once you remember -that "d" stands for "diff", you would usually do so by just typing ‘d’. -But this "prefix of prefixes" is useful even once you have memorized all -the bindings, as it can provide easy access to Magit commands from -non-Magit buffers. You should create a global key binding for this -command too: - - (global-set-key (kbd "C-x M-g") 'magit-dispatch) - - In the same vein, you might also want to enable -‘global-magit-file-mode’ to get some more Magit key bindings in regular -file-visiting buffers (see *note Minor Mode for Buffers Visiting -Files::). + So far we have mentioned the commit, push, and log menu commands. +These are probably among the menus you will be using the most, but many +others exist. To show a menu that lists all other menus (as well as the +various apply commands and some other essential commands), type ‘h’. +Try a few. (Such menus are also called "transient prefix commands" or +just "transients".) + + The key bindings in that menu correspond to the bindings in Magit +buffers, including but not limited to the status buffer. So you could +type ‘h d’ to bring up the diff menu, but once you remember that "d" +stands for "diff", you would usually do so by just typing ‘d’. But this +"prefix of prefixes" is useful even once you have memorized all the +bindings, as it can provide easy access to Magit commands from non-Magit +buffers. The global binding is ‘C-x M-g’. + + In file visiting buffers ‘C-c M-g’ brings up a similar menu featuring +commands that act on just the visited file, see *note Commands for +Buffers Visiting Files::. It is not necessary that you do so now, but if you stick with Magit, then it is highly recommended that you read the next section too. @@ -3066,7 +3069,7 @@ Reflog::. Show log for all references and ‘HEAD’. Two additional commands that show the log for the file or blob that -is being visited in the current buffer exists, see *note Minor Mode for +is being visited in the current buffer exists, see *note Commands for Buffers Visiting Files::. The command ‘magit-cherry’ also shows a log, see *note Cherries::. @@ -3544,7 +3547,7 @@ another buffer: Show all diffs of a stash in a buffer. Two additional commands that show the diff for the file or blob that -is being visited in the current buffer exists, see *note Minor Mode for +is being visited in the current buffer exists, see *note Commands for Buffers Visiting Files::. * Menu: @@ -4505,10 +4508,7 @@ File: magit.info, Node: Blaming, Prev: Visiting Files and Blobs, Up: Inspecti Also see *note (gitman)git-blame::. To start blaming invoke the ‘magit-file-dispatch’ transient prefix -command by pressing ‘C-c M-g’. (This is only the default binding and -the recommended binding is ‘C-c g’. Also neither binding may be -available if you disabled ‘global-magit-file-mode’. Also see *note -Minor Mode for Buffers Visiting Files::.) +command by pressing ‘C-c M-g’. The blaming suffix commands can be invoked from the dispatch transient. However if you want to set an infix argument, then you have @@ -7314,6 +7314,13 @@ add them to the transient. ‘branch..remote’, ‘branch..merge’, and ‘remote..push’. + If you add this suffix to a transient prefix without explicitly + specifying the description, then an attempt is made to predict what + this command will do. For example: + + (transient-insert-suffix 'magit-push \"p\" + '(\"i\" magit-push-implicitly))" + -- Command: magit-push-to-remote remote args This command pushes to the remote REMOTE without using an explicit @@ -7427,7 +7434,7 @@ File: magit.info, Node: Miscellaneous, Next: Customizing, Prev: Transferring, * Worktree:: * Common Commands:: * Wip Modes:: -* Minor Mode for Buffers Visiting Files:: +* Commands for Buffers Visiting Files:: * Minor Mode for Buffers Visiting Blobs::  @@ -7575,7 +7582,7 @@ File: magit.info, Node: Listing Submodules, Next: Submodule Transient, Up: Su The command ‘magit-list-submodules’ displays a list of the current repository’s submodules in a separate buffer. It’s also possible to display information about submodules directly in the status buffer of -the super-repository by adding ‘magit-insert-submodules’ to the hook +the super-repository by adding ‘magit-insert-modules’ to the hook ‘magit-status-sections-hook’ as described in *note Status Module Sections::. @@ -7601,17 +7608,6 @@ Sections::. It has to return a string to be inserted or nil. PROPS is an alist that supports the keys ‘:right-align’ and ‘:pad-right’. - -- Function: magit-insert-submodules - - Insert sections for all submodules. For each section insert the - path, the branch, and the output of ‘git describe --tags’, or, - failing that, the abbreviated HEAD commit hash. - - Press ‘RET’ on such a submodule section to show its own status - buffer. Press ‘RET’ on the "Modules" section to display a list of - submodules in a separate buffer. This shows additional information - not displayed in the super-repository’s status buffer. -  File: magit.info, Node: Submodule Transient, Prev: Listing Submodules, Up: Submodules diff --git a/elpa/magit-20200608.928/magit.info-2 b/elpa/magit-20201116.1057/magit.info-2 similarity index 96% rename from elpa/magit-20200608.928/magit.info-2 rename to elpa/magit-20201116.1057/magit.info-2 index e0cafc4c..5d69b5a6 100644 --- a/elpa/magit-20200608.928/magit.info-2 +++ b/elpa/magit-20201116.1057/magit.info-2 @@ -64,7 +64,7 @@ of these commands behave like ‘kill-ring-save’ instead of as described above.  -File: magit.info, Node: Wip Modes, Next: Minor Mode for Buffers Visiting Files, Prev: Common Commands, Up: Miscellaneous +File: magit.info, Node: Wip Modes, Next: Commands for Buffers Visiting Files, Prev: Common Commands, Up: Miscellaneous 8.7 Wip Modes ============= @@ -308,55 +308,22 @@ making changes that could cause the loss of earlier changes. Mode-line lighter for ‘magit-wip-initial-backup-mode’.  -File: magit.info, Node: Minor Mode for Buffers Visiting Files, Next: Minor Mode for Buffers Visiting Blobs, Prev: Wip Modes, Up: Miscellaneous +File: magit.info, Node: Commands for Buffers Visiting Files, Next: Minor Mode for Buffers Visiting Blobs, Prev: Wip Modes, Up: Miscellaneous -8.8 Minor Mode for Buffers Visiting Files -========================================= - -The minor-mode ‘magit-file-mode’ enables certain Magit features in -file-visiting buffers belonging to a Git repository. The globalized -variant ‘global-magit-file-mode’ enables the local mode in all such -buffers. It is enabled by default. Currently the local mode only -establishes a few key bindings, but this might be extended in the -future. - - -- User Option: global-magit-file-mode - - Whether to establish certain Magit key bindings in all - file-visiting buffers belonging to any Git repository. This is - enabled by default. This globalized mode turns on the local - minor-mode ‘magit-file-mode’ in all suitable buffers. - - -- Variable: magit-file-mode-map +8.8 Commands for Buffers Visiting Files +======================================= - This keymap is used by the local minor-mode ‘magit-file-mode’ and - establishes the key bindings described below. +Magit defines a few global key bindings unless the user sets +‘magit-define-global-key-bindings’ to ‘nil’. This includes binding ‘C-c +M-g’ to ‘magit-file-dispatch’. ‘C-c g’ would be a much better binding +but the ‘C-c ’ namespace is reserved for users, meaning that +packages are not allowed to use it. If you want to use ‘C-c g’, then +you have to add that binding yourself. Also see *note Default +Bindings:: and *note (elisp)Key Binding Conventions::. - Note that the default binding for ‘magit-file-dispatch’ is very - cumbersome to use and that we recommend that you add a better - binding. + If you want a better binding, you have to add it yourself: - Instead of ‘C-c M-g’ I would have preferred to use ‘C-c g’ because - (1) it is similar to ‘C-x g’ (the recommended global binding for - ‘~magit-status’), (2) we cannot use ‘C-c C-g’ because we have been - recommending that that be bound to ‘magit-dispatch’ for a long - time, (3) we cannot use ‘C-x C-g’ because that is a convenient way - of aborting the incomplete key sequence ‘C-x’, and most importantly - (4) it would make it much easier to type the next key (a suffix - binding) because most of those are letters. - - For example ‘C-c g b’ is much easier to type than ‘C-c M-g b’. For - suffix bindings that use uppercase letters, the default is just - horrible—having to use e.g. ‘C-c M-g B’ (‘Control+c Meta+g - Shift+b’) would drive anyone up the walls (or to Vim). - - However ‘C-c LETTER’ bindings are reserved for users (see *note - (elisp)Key Binding Conventions::). Packages are forbidden from - using those. Doing so anyway is considered heresy. Therefore if - you want a better binding, you have to add it yourself: - - (define-key magit-file-mode-map - (kbd "C-c g") 'magit-file-dispatch) + (global-set-key (kbd "C-c g") 'magit-file-dispatch) The key bindings shown below assume that you have not improved the binding for ‘magit-file-dispatch’. @@ -366,6 +333,9 @@ binding for ‘magit-file-dispatch’. This transient prefix command binds the following suffix commands and displays them in a temporary buffer until a suffix is invoked. + When invoked in a buffer that does not visit a file, then it falls + back to regular ‘magit-dispatch’. + ‘C-c M-g s’ (‘magit-stage-file’) Stage all changes to the file being visited in the current buffer. @@ -484,7 +454,7 @@ leave edit mode (‘C-g’). Also see *note (transient)Enabling and Disabling Suffixes::.  -File: magit.info, Node: Minor Mode for Buffers Visiting Blobs, Prev: Minor Mode for Buffers Visiting Files, Up: Miscellaneous +File: magit.info, Node: Minor Mode for Buffers Visiting Blobs, Prev: Commands for Buffers Visiting Files, Up: Miscellaneous 8.9 Minor Mode for Buffers Visiting Blobs ========================================= @@ -620,6 +590,7 @@ might want to customize, for safety and/or performance reasons. * Safety:: * Performance:: +* Default Bindings::  File: magit.info, Node: Safety, Next: Performance, Up: Essential Settings @@ -659,7 +630,7 @@ to make an informed decision you should see *note Risk of Reverting Automatically::.  -File: magit.info, Node: Performance, Prev: Safety, Up: Essential Settings +File: magit.info, Node: Performance, Next: Default Bindings, Prev: Safety, Up: Essential Settings 9.2.2 Performance ----------------- @@ -871,6 +842,50 @@ resolving the ‘$PATH’. (1) + +File: magit.info, Node: Default Bindings, Prev: Performance, Up: Essential Settings + +9.2.3 Default Bindings +---------------------- + + -- User Option: magit-define-global-key-bindings + + This option controls whether some Magit commands are automatically + bound in the global keymap even before Magit is used for the first + time in the current session. + + If this variable is non-nil, which it is by default, then the + following bindings may be added to the global keymap. + + ‘C-x g’ ‘magit-status’ + ‘C-x M-g’ ‘magit-dispatch’ + ‘C-c M-g’ ‘magit-file-dispatch’ + + These bindings may be added when ‘after-init-hook’ is called. Each + binding is added if and only if at that time no other key is bound + to the same command and no other command is bound to the same key. + In other words we try to avoid adding bindings that are + unnecessary, as well as bindings that conflict with other bindings. + + Adding the above bindings is delayed until ‘after-init-hook’ is + called to allow users to set the variable anywhere in their init + file (without having to make sure to do so before ‘magit’ is loaded + or autoloaded) and to increase the likelihood that all the + potentially conflicting user bindings have already been added. + + Setting this variable after the hook has already been called has no + effect. + + We recommend that you bind ‘C-c g’ instead of ‘C-c M-g’ to + ‘magit-file-dispatch’. The former is a much better binding but the + ‘C-c ’ namespace is strictly reserved for users; preventing + Magit from using it by default. + + (global-set-key (kbd "C-c g") 'magit-file-dispatch) + + Also see *note Commands for Buffers Visiting Files:: and *note + (elisp)Key Binding Conventions::. +  File: magit.info, Node: Plumbing, Next: FAQ, Prev: Customizing, Up: Top @@ -1697,6 +1712,7 @@ A.1 FAQ - How to ...? * Menu: +* How to pronounce Magit?:: * How to show git's output?:: * How to install the gitman info manual?:: * How to show diffs for gpg-encrypted files?:: @@ -1705,9 +1721,31 @@ A.1 FAQ - How to ...? * Should I disable VC?::  -File: magit.info, Node: How to show git's output?, Next: How to install the gitman info manual?, Up: FAQ - How to ...? +File: magit.info, Node: How to pronounce Magit?, Next: How to show git's output?, Up: FAQ - How to ...? + +A.1.1 How to pronounce Magit? +----------------------------- + +Either ‘mu[m's] git’ or ‘magi{c => t}’ is fine. + + The slogan is "It’s Magit! The magical Git client", so it makes +sense to pronounce Magit like magic, while taking into account that C +and T do not sound the same. + + The German "Magie" is not pronounced the same as the English "magic", +so if you speak German then you can use the above rational to justify +using the former pronunciation; ‘Mag{ie => it}’. + + You can also choose to use the former pronunciation just because you +like it better. + + Also see . Also see +. + + +File: magit.info, Node: How to show git's output?, Next: How to install the gitman info manual?, Prev: How to pronounce Magit?, Up: FAQ - How to ...? -A.1.1 How to show git’s output? +A.1.2 How to show git’s output? ------------------------------- To show the output of recently run git commands, press ‘$’ (or, if that @@ -1724,7 +1762,7 @@ debugging purposes, it’s possible to do so anyway by setting  File: magit.info, Node: How to install the gitman info manual?, Next: How to show diffs for gpg-encrypted files?, Prev: How to show git's output?, Up: FAQ - How to ...? -A.1.2 How to install the gitman info manual? +A.1.3 How to install the gitman info manual? -------------------------------------------- Git’s manpages can be exported as an info manual called ‘gitman’. @@ -1745,7 +1783,7 @@ one of the supported packages ‘man’ or ‘woman’, e.g.:  File: magit.info, Node: How to show diffs for gpg-encrypted files?, Next: How does branching and pushing work?, Prev: How to install the gitman info manual?, Up: FAQ - How to ...? -A.1.3 How to show diffs for gpg-encrypted files? +A.1.4 How to show diffs for gpg-encrypted files? ------------------------------------------------ Git supports showing diffs for encrypted files, but has to be told to do @@ -1758,7 +1796,7 @@ affects the diffs displayed inside Magit.  File: magit.info, Node: How does branching and pushing work?, Next: Can Magit be used as ediff-version-control-package?, Prev: How to show diffs for gpg-encrypted files?, Up: FAQ - How to ...? -A.1.4 How does branching and pushing work? +A.1.5 How does branching and pushing work? ------------------------------------------ Please see *note Branching:: and @@ -1767,7 +1805,7 @@ Please see *note Branching:: and  File: magit.info, Node: Can Magit be used as ediff-version-control-package?, Next: Should I disable VC?, Prev: How does branching and pushing work?, Up: FAQ - How to ...? -A.1.5 Can Magit be used as ‘ediff-version-control-package’? +A.1.6 Can Magit be used as ‘ediff-version-control-package’? ----------------------------------------------------------- No, it cannot. For that to work the functions ‘ediff-magit-internal’ @@ -1801,7 +1839,7 @@ only shows yet-to-be resolved conflicts.  File: magit.info, Node: Should I disable VC?, Prev: Can Magit be used as ediff-version-control-package?, Up: FAQ - How to ...? -A.1.6 Should I disable VC? +A.1.7 Should I disable VC? -------------------------- If you don’t use VC (the built-in version control interface) then you @@ -2025,8 +2063,9 @@ to try. Personally I use: $ EDITOR="emacsclient --alternate-editor emacs" git commit This will actually end up using ‘emacs’, not ‘emacsclient’. If you -do this, then can still edit the commit message but ‘git-commit-mode’ -won’t be used and you have to exit ‘emacs’ to finish the process. +do this, then you can still edit the commit message but +‘git-commit-mode’ won’t be used and you have to exit ‘emacs’ to finish +the process. Tautology ahead. If you want to be able to use ‘emacsclient’ to connect to a running ‘emacs’ instance, even though no ‘emacs’ instance @@ -2163,7 +2202,7 @@ Appendix C Keystroke Index * A s: Cherry Picking. (line 76) * A s <1>: Cherry Picking. (line 94) * B: Bisecting. (line 8) -* b: Blaming. (line 105) +* b: Blaming. (line 102) * b <1>: Branch Commands. (line 12) * b <2>: Editing Rebase Sequences. (line 85) @@ -2183,7 +2222,7 @@ Appendix C Keystroke Index * b s: Branch Commands. (line 97) * b S: Branch Commands. (line 125) * b x: Branch Commands. (line 131) -* c: Blaming. (line 138) +* c: Blaming. (line 135) * C: Cloning Repository. (line 20) * c <1>: Initiating a Commit. (line 8) * c <2>: Editing Rebase Sequences. @@ -2245,39 +2284,39 @@ Appendix C Keystroke Index (line 29) * C-c C-w: Using the Revision Stack. (line 6) -* C-c M-g: Minor Mode for Buffers Visiting Files. - (line 54) -* C-c M-g B: Blaming. (line 21) -* C-c M-g b: Blaming. (line 32) -* C-c M-g B <1>: Minor Mode for Buffers Visiting Files. - (line 123) -* C-c M-g B b: Blaming. (line 33) -* C-c M-g B e: Blaming. (line 67) -* C-c M-g B f: Blaming. (line 58) -* C-c M-g B r: Blaming. (line 49) -* C-c M-g c: Minor Mode for Buffers Visiting Files. - (line 68) -* C-c M-g D: Minor Mode for Buffers Visiting Files. - (line 75) -* C-c M-g d: Minor Mode for Buffers Visiting Files. - (line 86) -* C-c M-g e: Blaming. (line 66) -* C-c M-g e <1>: Minor Mode for Buffers Visiting Files. - (line 136) -* C-c M-g f: Blaming. (line 57) -* C-c M-g L: Minor Mode for Buffers Visiting Files. - (line 96) -* C-c M-g l: Minor Mode for Buffers Visiting Files. - (line 107) -* C-c M-g p: Minor Mode for Buffers Visiting Files. - (line 146) -* C-c M-g r: Blaming. (line 48) -* C-c M-g s: Minor Mode for Buffers Visiting Files. - (line 59) -* C-c M-g t: Minor Mode for Buffers Visiting Files. - (line 114) -* C-c M-g u: Minor Mode for Buffers Visiting Files. - (line 63) +* C-c M-g: Commands for Buffers Visiting Files. + (line 21) +* C-c M-g B: Blaming. (line 18) +* C-c M-g b: Blaming. (line 29) +* C-c M-g B <1>: Commands for Buffers Visiting Files. + (line 93) +* C-c M-g B b: Blaming. (line 30) +* C-c M-g B e: Blaming. (line 64) +* C-c M-g B f: Blaming. (line 55) +* C-c M-g B r: Blaming. (line 46) +* C-c M-g c: Commands for Buffers Visiting Files. + (line 38) +* C-c M-g D: Commands for Buffers Visiting Files. + (line 45) +* C-c M-g d: Commands for Buffers Visiting Files. + (line 56) +* C-c M-g e: Blaming. (line 63) +* C-c M-g e <1>: Commands for Buffers Visiting Files. + (line 106) +* C-c M-g f: Blaming. (line 54) +* C-c M-g L: Commands for Buffers Visiting Files. + (line 66) +* C-c M-g l: Commands for Buffers Visiting Files. + (line 77) +* C-c M-g p: Commands for Buffers Visiting Files. + (line 116) +* C-c M-g r: Blaming. (line 45) +* C-c M-g s: Commands for Buffers Visiting Files. + (line 29) +* C-c M-g t: Commands for Buffers Visiting Files. + (line 84) +* C-c M-g u: Commands for Buffers Visiting Files. + (line 33) * C-c M-i: Commit Pseudo Headers. (line 42) * C-c M-s: Editing Commit Messages. @@ -2306,7 +2345,7 @@ Appendix C Keystroke Index * DEL: Log Buffer. (line 45) * DEL <1>: Commands Available in Diffs. (line 60) -* DEL <2>: Blaming. (line 92) +* DEL <2>: Blaming. (line 89) * DEL <3>: Editing Rebase Sequences. (line 28) * e: Ediffing. (line 9) @@ -2403,7 +2442,7 @@ Appendix C Keystroke Index (line 38) * M-p <2>: Editing Rebase Sequences. (line 43) -* M-w: Blaming. (line 130) +* M-w: Blaming. (line 127) * M-w <1>: Common Commands. (line 27) * M-x magit-debug-git-executable: Git Executable. (line 45) * M-x magit-debug-git-executable <1>: Debugging Tools. (line 36) @@ -2431,8 +2470,8 @@ Appendix C Keystroke Index * Mt: Editing Rebase Sequences. (line 132) * n: Section Movement. (line 16) -* n <1>: Blaming. (line 109) -* N: Blaming. (line 113) +* n <1>: Blaming. (line 106) +* N: Blaming. (line 110) * n <2>: Editing Rebase Sequences. (line 39) * n <3>: Minor Mode for Buffers Visiting Blobs. @@ -2456,8 +2495,8 @@ Appendix C Keystroke Index * o s: Submodule Transient. (line 44) * o u: Submodule Transient. (line 39) * p: Section Movement. (line 10) -* p <1>: Blaming. (line 117) -* P: Blaming. (line 121) +* p <1>: Blaming. (line 114) +* P: Blaming. (line 118) * p <2>: Editing Rebase Sequences. (line 35) * P <1>: Pushing. (line 9) @@ -2474,7 +2513,7 @@ Appendix C Keystroke Index * P u: Pushing. (line 23) * q: Quitting Windows. (line 6) * q <1>: Log Buffer. (line 14) -* q <2>: Blaming. (line 125) +* q <2>: Blaming. (line 122) * q <3>: Minor Mode for Buffers Visiting Blobs. (line 20) * r: Rebasing. (line 9) @@ -2496,7 +2535,7 @@ Appendix C Keystroke Index * RET: References Buffer. (line 181) * RET <1>: Visiting Files and Blobs from a Diff. (line 8) -* RET <2>: Blaming. (line 78) +* RET <2>: Blaming. (line 75) * RET <3>: Editing Rebase Sequences. (line 16) * s: Staging and Unstaging. @@ -2509,7 +2548,7 @@ Appendix C Keystroke Index * SPC: Log Buffer. (line 35) * SPC <1>: Commands Available in Diffs. (line 56) -* SPC <2>: Blaming. (line 82) +* SPC <2>: Blaming. (line 79) * SPC <3>: Editing Rebase Sequences. (line 21) * t: Editing Rebase Sequences. @@ -2672,29 +2711,29 @@ Appendix D Command Index * magit-bisect-run: Bisecting. (line 24) * magit-bisect-skip: Bisecting. (line 41) * magit-bisect-start: Bisecting. (line 16) -* magit-blame: Blaming. (line 21) -* magit-blame <1>: Blaming. (line 105) -* magit-blame <2>: Minor Mode for Buffers Visiting Files. - (line 123) -* magit-blame-addition: Blaming. (line 32) -* magit-blame-addition <1>: Blaming. (line 33) -* magit-blame-copy-hash: Blaming. (line 130) -* magit-blame-cycle-style: Blaming. (line 138) -* magit-blame-echo: Blaming. (line 66) -* magit-blame-echo <1>: Blaming. (line 67) -* magit-blame-next-chunk: Blaming. (line 109) -* magit-blame-next-chunk-same-commit: Blaming. (line 113) -* magit-blame-previous-chunk: Blaming. (line 117) -* magit-blame-previous-chunk-same-commit: Blaming. (line 121) -* magit-blame-quit: Blaming. (line 125) -* magit-blame-removal: Blaming. (line 48) -* magit-blame-removal <1>: Blaming. (line 49) -* magit-blame-reverse: Blaming. (line 57) -* magit-blame-reverse <1>: Blaming. (line 58) +* magit-blame: Blaming. (line 18) +* magit-blame <1>: Blaming. (line 102) +* magit-blame <2>: Commands for Buffers Visiting Files. + (line 93) +* magit-blame-addition: Blaming. (line 29) +* magit-blame-addition <1>: Blaming. (line 30) +* magit-blame-copy-hash: Blaming. (line 127) +* magit-blame-cycle-style: Blaming. (line 135) +* magit-blame-echo: Blaming. (line 63) +* magit-blame-echo <1>: Blaming. (line 64) +* magit-blame-next-chunk: Blaming. (line 106) +* magit-blame-next-chunk-same-commit: Blaming. (line 110) +* magit-blame-previous-chunk: Blaming. (line 114) +* magit-blame-previous-chunk-same-commit: Blaming. (line 118) +* magit-blame-quit: Blaming. (line 122) +* magit-blame-removal: Blaming. (line 45) +* magit-blame-removal <1>: Blaming. (line 46) +* magit-blame-reverse: Blaming. (line 54) +* magit-blame-reverse <1>: Blaming. (line 55) * magit-blob-next: Minor Mode for Buffers Visiting Blobs. (line 16) -* magit-blob-previous: Minor Mode for Buffers Visiting Files. - (line 146) +* magit-blob-previous: Commands for Buffers Visiting Files. + (line 116) * magit-blob-previous <1>: Minor Mode for Buffers Visiting Blobs. (line 12) * magit-branch: Branch Commands. (line 12) @@ -2733,8 +2772,8 @@ Appendix D Command Index * magit-clone-shallow-exclude: Cloning Repository. (line 61) * magit-clone-shallow-since: Cloning Repository. (line 54) * magit-commit: Initiating a Commit. (line 8) -* magit-commit <1>: Minor Mode for Buffers Visiting Files. - (line 68) +* magit-commit <1>: Commands for Buffers Visiting Files. + (line 38) * magit-commit-amend: Initiating a Commit. (line 19) * magit-commit-augment: Initiating a Commit. (line 67) * magit-commit-create: Initiating a Commit. (line 14) @@ -2753,10 +2792,10 @@ Appendix D Command Index (line 13) * magit-describe-section-briefly <1>: Matching Sections. (line 6) * magit-diff: Diffing. (line 21) -* magit-diff <1>: Minor Mode for Buffers Visiting Files. - (line 75) -* magit-diff-buffer-file: Minor Mode for Buffers Visiting Files. - (line 86) +* magit-diff <1>: Commands for Buffers Visiting Files. + (line 45) +* magit-diff-buffer-file: Commands for Buffers Visiting Files. + (line 56) * magit-diff-default-context: Refreshing Diffs. (line 73) * magit-diff-dwim: Diffing. (line 27) * magit-diff-edit-hunk-commit: Commands Available in Diffs. @@ -2771,9 +2810,9 @@ Appendix D Command Index * magit-diff-save-default-arguments: Refreshing Diffs. (line 29) * magit-diff-set-default-arguments: Refreshing Diffs. (line 22) * magit-diff-show-or-scroll-down: Log Buffer. (line 45) -* magit-diff-show-or-scroll-down <1>: Blaming. (line 92) +* magit-diff-show-or-scroll-down <1>: Blaming. (line 89) * magit-diff-show-or-scroll-up: Log Buffer. (line 35) -* magit-diff-show-or-scroll-up <1>: Blaming. (line 82) +* magit-diff-show-or-scroll-up <1>: Blaming. (line 79) * magit-diff-staged: Diffing. (line 51) * magit-diff-switch-range-type: Refreshing Diffs. (line 41) * magit-diff-toggle-file-filter: Refreshing Diffs. (line 51) @@ -2809,8 +2848,8 @@ Appendix D Command Index * magit-ediff-show-unstaged: Ediffing. (line 53) * magit-ediff-show-working-tree: Ediffing. (line 61) * magit-ediff-stage: Ediffing. (line 48) -* magit-edit-line-commit: Minor Mode for Buffers Visiting Files. - (line 136) +* magit-edit-line-commit: Commands for Buffers Visiting Files. + (line 106) * magit-emacs-Q-command: Debugging Tools. (line 16) * magit-fetch: Fetching. (line 9) * magit-fetch-all: Fetching. (line 50) @@ -2821,16 +2860,16 @@ Appendix D Command Index * magit-fetch-other: Fetching. (line 36) * magit-fetch-refspec: Fetching. (line 45) * magit-file-checkout: Resetting. (line 50) -* magit-file-checkout <1>: Minor Mode for Buffers Visiting Files. - (line 165) -* magit-file-delete: Minor Mode for Buffers Visiting Files. - (line 157) -* magit-file-dispatch: Minor Mode for Buffers Visiting Files. - (line 54) -* magit-file-rename: Minor Mode for Buffers Visiting Files. - (line 153) -* magit-file-untrack: Minor Mode for Buffers Visiting Files. - (line 161) +* magit-file-checkout <1>: Commands for Buffers Visiting Files. + (line 135) +* magit-file-delete: Commands for Buffers Visiting Files. + (line 127) +* magit-file-dispatch: Commands for Buffers Visiting Files. + (line 21) +* magit-file-rename: Commands for Buffers Visiting Files. + (line 123) +* magit-file-untrack: Commands for Buffers Visiting Files. + (line 131) * magit-find-file: General-Purpose Visit Commands. (line 9) * magit-find-file-other-frame: General-Purpose Visit Commands. @@ -2854,13 +2893,13 @@ Appendix D Command Index * magit-list-submodules: Listing Submodules. (line 13) * magit-list-submodules <1>: Submodule Transient. (line 54) * magit-log: Logging. (line 29) -* magit-log <1>: Minor Mode for Buffers Visiting Files. - (line 96) +* magit-log <1>: Commands for Buffers Visiting Files. + (line 66) * magit-log-all: Logging. (line 60) * magit-log-all-branches: Logging. (line 56) * magit-log-branches: Logging. (line 52) -* magit-log-buffer-file: Minor Mode for Buffers Visiting Files. - (line 107) +* magit-log-buffer-file: Commands for Buffers Visiting Files. + (line 77) * magit-log-bury-buffer: Log Buffer. (line 14) * magit-log-current: Logging. (line 35) * magit-log-double-commit-limit: Log Buffer. (line 61) @@ -2876,8 +2915,8 @@ Appendix D Command Index * magit-log-select-quit: Select from Log. (line 26) * magit-log-set-default-arguments: Refreshing Logs. (line 22) * magit-log-toggle-commit-limit: Log Buffer. (line 55) -* magit-log-trace-definition: Minor Mode for Buffers Visiting Files. - (line 114) +* magit-log-trace-definition: Commands for Buffers Visiting Files. + (line 84) * magit-margin-settings: Log Margin. (line 57) * magit-merge: Merging. (line 9) * magit-merge <1>: Merging. (line 89) @@ -2920,7 +2959,7 @@ Appendix D Command Index * magit-push-refspecs: Pushing. (line 41) * magit-push-tag: Pushing. (line 66) * magit-push-tags: Pushing. (line 58) -* magit-push-to-remote remote args: Pushing. (line 85) +* magit-push-to-remote remote args: Pushing. (line 92) * magit-rebase: Rebasing. (line 9) * magit-rebase-abort: Rebasing. (line 123) * magit-rebase-autosquash: Rebasing. (line 84) @@ -3010,7 +3049,7 @@ Appendix D Command Index * magit-shell-command-topdir: Running Git Manually. (line 35) * magit-show-commit: Diffing. (line 69) -* magit-show-commit <1>: Blaming. (line 78) +* magit-show-commit <1>: Blaming. (line 75) * magit-show-refs: References Buffer. (line 6) * magit-show-refs-current: References Buffer. (line 26) * magit-show-refs-head: References Buffer. (line 21) @@ -3022,8 +3061,8 @@ Appendix D Command Index (line 28) * magit-stage-file: Staging from File-Visiting Buffers. (line 10) -* magit-stage-file <1>: Minor Mode for Buffers Visiting Files. - (line 59) +* magit-stage-file <1>: Commands for Buffers Visiting Files. + (line 29) * magit-stage-modified: Staging and Unstaging. (line 36) * magit-stash: Stashing. (line 8) @@ -3075,8 +3114,8 @@ Appendix D Command Index (line 52) * magit-unstage-file: Staging from File-Visiting Buffers. (line 18) -* magit-unstage-file <1>: Minor Mode for Buffers Visiting Files. - (line 63) +* magit-unstage-file <1>: Commands for Buffers Visiting Files. + (line 33) * magit-version: Git Executable. (line 17) * magit-version <1>: Debugging Tools. (line 10) * magit-visit-ref: References Buffer. (line 181) @@ -3168,14 +3207,14 @@ Appendix E Function Index * magit-display-buffer-same-window-except-diff-v1: Switching Buffers. (line 53) * magit-display-buffer-traditional: Switching Buffers. (line 45) -* magit-file-checkout: Minor Mode for Buffers Visiting Files. - (line 165) -* magit-file-delete: Minor Mode for Buffers Visiting Files. - (line 157) -* magit-file-rename: Minor Mode for Buffers Visiting Files. - (line 153) -* magit-file-untrack: Minor Mode for Buffers Visiting Files. - (line 161) +* magit-file-checkout: Commands for Buffers Visiting Files. + (line 135) +* magit-file-delete: Commands for Buffers Visiting Files. + (line 127) +* magit-file-rename: Commands for Buffers Visiting Files. + (line 123) +* magit-file-untrack: Commands for Buffers Visiting Files. + (line 131) * magit-find-file: General-Purpose Visit Commands. (line 9) * magit-find-file-other-frame: General-Purpose Visit Commands. @@ -3255,7 +3294,6 @@ Appendix E Function Index * magit-insert-stashes: Status Sections. (line 67) * magit-insert-status-headers: Status Header Sections. (line 12) -* magit-insert-submodules: Listing Submodules. (line 35) * magit-insert-tags: References Sections. (line 25) * magit-insert-tags-header: Status Header Sections. (line 56) @@ -3283,7 +3321,7 @@ Appendix E Function Index * magit-mode-quit-window: Quitting Windows. (line 34) * magit-mode-setup: Refreshing Buffers. (line 17) * magit-push-implicitly: Pushing. (line 74) -* magit-push-to-remote: Pushing. (line 85) +* magit-push-to-remote: Pushing. (line 92) * magit-region-sections: Section Selection. (line 10) * magit-region-values: Section Selection. (line 37) * magit-repolist-column-branch: Repository List. (line 44) @@ -3399,8 +3437,6 @@ Appendix F Variable Index (line 103) * global-auto-revert-mode: Automatic Reverting of File-Visiting Buffers. (line 22) -* global-magit-file-mode: Minor Mode for Buffers Visiting Files. - (line 13) * magit-auto-revert-immediately: Automatic Reverting of File-Visiting Buffers. (line 32) * magit-auto-revert-mode: Automatic Reverting of File-Visiting Buffers. @@ -3408,12 +3444,12 @@ Appendix F Variable Index * magit-auto-revert-tracked-only: Automatic Reverting of File-Visiting Buffers. (line 55) * magit-bisect-show-graph: Bisecting. (line 55) -* magit-blame-disable-modes: Blaming. (line 168) -* magit-blame-echo-style: Blaming. (line 151) -* magit-blame-goto-chunk-hook: Blaming. (line 174) -* magit-blame-read-only: Blaming. (line 163) -* magit-blame-styles: Blaming. (line 146) -* magit-blame-time-format: Blaming. (line 158) +* magit-blame-disable-modes: Blaming. (line 165) +* magit-blame-echo-style: Blaming. (line 148) +* magit-blame-goto-chunk-hook: Blaming. (line 171) +* magit-blame-read-only: Blaming. (line 160) +* magit-blame-styles: Blaming. (line 143) +* magit-blame-time-format: Blaming. (line 155) * magit-branch-adjust-remote-upstream-alist: Branch Commands. (line 210) * magit-branch-direct-configure: Branch Commands. (line 20) * magit-branch-prefer-remote-upstream: Branch Commands. (line 165) @@ -3433,9 +3469,10 @@ Appendix F Variable Index * magit-commit-squash-confirm: Initiating a Commit. (line 88) * magit-completing-read-function: Support for Completion Frameworks. (line 27) +* magit-define-global-key-bindings: Default Bindings. (line 6) * magit-diff-adjust-tab-width: Diff Options. (line 21) -* magit-diff-buffer-file-locked: Minor Mode for Buffers Visiting Files. - (line 91) +* magit-diff-buffer-file-locked: Commands for Buffers Visiting Files. + (line 61) * magit-diff-hide-trailing-cr-characters: Diff Options. (line 90) * magit-diff-highlight-hunk-region-functions: Diff Options. (line 94) * magit-diff-highlight-indentation: Diff Options. (line 75) @@ -3456,8 +3493,6 @@ Appendix F Variable Index * magit-ediff-dwim-show-on-hunks: Ediffing. (line 73) * magit-ediff-quit-hook: Ediffing. (line 88) * magit-ediff-show-stash-with-index: Ediffing. (line 81) -* magit-file-mode-map: Minor Mode for Buffers Visiting Files. - (line 20) * magit-generate-buffer-name-function: Naming Buffers. (line 6) * magit-git-debug: Viewing Git Output. (line 28) * magit-git-debug <1>: Getting a Value from Git. @@ -3469,8 +3504,8 @@ Appendix F Variable Index * magit-list-refs-sortby: Additional Completion Options. (line 6) * magit-log-auto-more: Log Buffer. (line 69) -* magit-log-buffer-file-locked: Minor Mode for Buffers Visiting Files. - (line 118) +* magit-log-buffer-file-locked: Commands for Buffers Visiting Files. + (line 88) * magit-log-margin: Log Margin. (line 12) * magit-log-margin-show-committer-date: Log Margin. (line 49) * magit-log-section-commit-count: Status Sections. (line 136) diff --git a/elpa/magit-popup-20200306.223/magit-popup-pkg.el b/elpa/magit-popup-20200306.223/magit-popup-pkg.el deleted file mode 100644 index dd962cd0..00000000 --- a/elpa/magit-popup-20200306.223/magit-popup-pkg.el +++ /dev/null @@ -1,13 +0,0 @@ -(define-package "magit-popup" "20200306.223" "Define prefix-infix-suffix command combos" - '((emacs "24.4") - (dash "2.13.0")) - :commit "b8e886c4f2242d6c58f84d4549af712e86360db1" :keywords - '("bindings") - :authors - '(("Jonas Bernoulli" . "jonas@bernoul.li")) - :maintainer - '("Jonas Bernoulli" . "jonas@bernoul.li") - :url "https://github.com/magit/magit-popup") -;; Local Variables: -;; no-byte-compile: t -;; End: diff --git a/elpa/magit-popup-20200306.223/dir b/elpa/magit-popup-20200719.1015/dir similarity index 100% rename from elpa/magit-popup-20200306.223/dir rename to elpa/magit-popup-20200719.1015/dir diff --git a/elpa/magit-popup-20200306.223/magit-popup-autoloads.el b/elpa/magit-popup-20200719.1015/magit-popup-autoloads.el similarity index 100% rename from elpa/magit-popup-20200306.223/magit-popup-autoloads.el rename to elpa/magit-popup-20200719.1015/magit-popup-autoloads.el diff --git a/elpa/magit-popup-20200719.1015/magit-popup-pkg.el b/elpa/magit-popup-20200719.1015/magit-popup-pkg.el new file mode 100644 index 00000000..51572822 --- /dev/null +++ b/elpa/magit-popup-20200719.1015/magit-popup-pkg.el @@ -0,0 +1,13 @@ +(define-package "magit-popup" "20200719.1015" "Define prefix-infix-suffix command combos" + '((emacs "24.4") + (dash "2.13.0")) + :commit "d8585fa39f88956963d877b921322530257ba9f5" :keywords + ("bindings") + :authors + (("Jonas Bernoulli" . "jonas@bernoul.li")) + :maintainer + ("Jonas Bernoulli" . "jonas@bernoul.li") + :url "https://github.com/magit/magit-popup") +;; Local Variables: +;; no-byte-compile: t +;; End: diff --git a/elpa/magit-popup-20200306.223/magit-popup.el b/elpa/magit-popup-20200719.1015/magit-popup.el similarity index 100% rename from elpa/magit-popup-20200306.223/magit-popup.el rename to elpa/magit-popup-20200719.1015/magit-popup.el diff --git a/elpa/magit-popup-20200306.223/magit-popup.info b/elpa/magit-popup-20200719.1015/magit-popup.info similarity index 99% rename from elpa/magit-popup-20200306.223/magit-popup.info rename to elpa/magit-popup-20200719.1015/magit-popup.info index cb8f6968..00295652 100644 --- a/elpa/magit-popup-20200306.223/magit-popup.info +++ b/elpa/magit-popup-20200719.1015/magit-popup.info @@ -33,7 +33,7 @@ with the specified arguments. (transient)Top::). No new features will be added but bugs will be fixed. -This manual is for Magit-Popup version 2.13.2 (v2.13.2+1). +This manual is for Magit-Popup version 2.13.3. Copyright (C) 2015-2020 Jonas Bernoulli @@ -728,13 +728,13 @@ directly.  Tag Table: Node: Top770 -Node: Introduction2151 -Node: Usage4490 -Node: Customizing Existing Popups9187 -Node: Other Options15328 -Node: Defining Prefix and Suffix Commands16871 -Node: Defining Prefix Commands19023 -Node: Defining Suffix Commands27718 +Node: Introduction2139 +Node: Usage4478 +Node: Customizing Existing Popups9175 +Node: Other Options15316 +Node: Defining Prefix and Suffix Commands16859 +Node: Defining Prefix Commands19011 +Node: Defining Suffix Commands27706  End Tag Table -- 2.47.3