mirror of https://github.com/Chizi123/.emacs.d.git

Chizi123
2018-11-21 e75a20334813452c6912c090d70a0de2c805f94d
commit | author | age
5cb5f7 1 ;ELC
C 2 ;;; Compiled
3 ;;; in Emacs version 26.1
4 ;;; with all optimizations.
5
6 ;;; This file contains utf-8 non-ASCII characters,
7 ;;; and so cannot be loaded into Emacs 22 or earlier.
8 (and (boundp 'emacs-version)
9      (< (aref emacs-version (1- (length emacs-version))) ?A)
10      (string-lessp emacs-version "23")
11      (error "`%s' was compiled for Emacs 23 or later" #$))
12
13 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
14
15
16 (byte-code "\300\301!\210\300\302!\210\300\303!\210\300\304!\210\305\306\307\310\311DD\312\313\314\315\316&\210\305\317\307\310\320DD\321\322\323\313\324\315\325&    \207" [require cl-lib dash crm magit-popup custom-declare-variable magit-completing-read-function funcall function #[0 "\300\207" [magit-builtin-completing-read] 1] "Function to be called when requesting input from the user.\n\nIf you have enabled `ivy-mode' or `helm-mode', then you don't\nhave to customize this option; `magit-builtin-completing-read'\nwill work just fine.  However, if you use Ido completion, then\nyou do have to use `magit-ido-completion-read', because Ido is\nless well behaved than the former, more modern alternatives.\n\nIf you would like to use Ivy or Helm completion with Magit but\nnot enable the respective modes globally, then customize this\noption to use `ivy-completing-read' or\n`helm--completing-read-default'.  If you choose to use\n`ivy-completing-read', note that the items may always be shown in\nalphabetical order, depending on your version of Ivy." :group magit-essentials :type (radio (function-item magit-builtin-completing-read) (function-item magit-ido-completing-read) (function-item ivy-completing-read) (function-item helm--completing-read-default) (function :tag "Other function")) magit-dwim-selection #[0 "\300\207" [((magit-stash-apply nil t) (magit-stash-branch nil t) (magit-stash-branch-here nil t) (magit-stash-format-patch nil t) (magit-stash-drop nil ask) (magit-stash-pop nil ask) (forge-browse-commit nil t) (forge-browse-branch nil t) (forge-browse-remote nil t) (forge-browse-issue nil t) (forge-browse-pullreq nil t) (forge-edit-topic-title nil t) (forge-edit-topic-labels nil t) (forge-edit-topic-assignees nil t) (forge-visit-issue nil t) (forge-visit-pullreq nil t))] 1] "When not to offer alternatives and ask for confirmation.\n\nMany commands by default ask the user to select from a list of\npossible candidates.  They do so even when there is a thing at\npoint that they can act on, which is then offered as the default.\n\nThis option can be used to tell certain commands to use the thing\nat point instead of asking the user to select a candidate to act\non, with or without confirmation.\n\nThe value has the form ((COMMAND nil|PROMPT DEFAULT)...).\n\n- COMMAND is the command that should not prompt for a choice.\n  To have an effect, the command has to use the function\n  `magit-completing-read' or a utility function which in turn uses\n  that function.\n\n- If the command uses `magit-completing-read' multiple times, then\n  PROMPT can be used to only affect one of these uses.  PROMPT, if\n  non-nil, is a regular expression that is used to match against\n  the PROMPT argument passed to `magit-completing-read'.\n\n- DEFAULT specifies how to use the default.  If it is t, then\n  the DEFAULT argument passed to `magit-completing-read' is used\n  without confirmation.  If it is `ask', then the user is given\n  a chance to abort.  DEFAULT can also be nil, in which case the\n  entry has no effect." :package-version (magit . "2.12.0") magit-commands (repeat (list (symbol :tag "Command") (choice (const :tag "for all prompts" nil) (regexp :tag "for prompts matching regexp")) (choice (const :tag "offer other choices" nil) (const :tag "require confirmation" ask) (const :tag "use default without confirmation" t))))] 10)
17 (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 safe-with-wip)))
18 (byte-code "\301\302\303\304\305DD\306\307\310\311\312\311\313\314\315\316\317\320\321\322BBBF& \210\301\323\303\304\324DD\325\307\326\311\327\314\315\330\331\320\321\332BBBF&    \210\301\333\303\304\334DD\335\307\336\311\327\314\337&    \210\301\340\303\304\341DD\342\307\343\311\327\314\344&    \210\301\345\303\304\346DD\347\307\350\311\327\314\351&    \210\301\352\303\304\353DD\354\307\355\311\327\314\356&    \207" [magit--confirm-actions custom-declare-variable magit-no-confirm funcall function #[0 "\300\207" [nil] 1] "A list of symbols for actions Magit should not confirm, or t.\n\nMany potentially dangerous commands by default ask the user for\nconfirmation.  Each of the below symbols stands for an action\nwhich, when invoked unintentionally or without being fully aware\nof the consequences, could lead to tears.  In many cases there\nare several commands that perform variations of a certain action,\nso we don't use the command names but more generic symbols.\n\nApplying changes:\n\n  `discard' Discarding one or more changes (i.e. hunks or the\n  complete diff for a file) loses that change, obviously.\n\n  `reverse' Reverting one or more changes can usually be undone\n  by reverting the reversion.\n\n  `stage-all-changes', `unstage-all-changes' When there are both\n  staged and unstaged changes, then un-/staging everything would\n  destroy that distinction.  Of course that also applies when\n  un-/staging a single change, but then less is lost and one does\n  that so often that having to confirm every time would be\n  unacceptable.\n\nFiles:\n\n  `delete' When a file that isn't yet tracked by Git is deleted\n  then it is completely lost, not just the last changes.  Very\n  dangerous.\n\n  `trash' Instead of deleting a file it can also be move to the\n  system trash.  Obviously much less dangerous than deleting it.\n\n  Also see option `magit-delete-by-moving-to-trash'.\n\n  `resurrect' A deleted file can easily be resurrected by\n  \"deleting\" the deletion, which is done using the same command\n  that was used to delete the same file in the first place.\n\n  `untrack' Untracking a file can be undone by tracking it again.\n\n  `rename' Renaming a file can easily be undone.\n\nSequences:\n\n  `reset-bisect' Aborting (known to Git as \"resetting\") a\n  bisect operation loses all information collected so far.\n\n  `abort-rebase' Aborting a rebase throws away all already\n  modified commits, but it's possible to restore those from the\n  reflog.\n\n  `abort-merge' Aborting a merge throws away all conflict\n  resolutions which has already been carried out by the user.\n\n  `merge-dirty' Merging with a dirty worktree can make it hard to\n  go back to the state before the merge was initiated.\n\nReferences:\n\n  `delete-unmerged-branch' Once a branch has been deleted it can\n  only be restored using low-level recovery tools provided by\n  Git.  And even then the reflog is gone.  The user always has\n  to confirm the deletion of a branch by accepting the default\n  choice (or selecting another branch), but when a branch has\n  not been merged yet, also make sure the user is aware of that.\n\n  `delete-pr-branch' When deleting a branch that was created from\n  a pull request and if no other branches still exist on that\n  remote, then `magit-branch-delete' offers to delete the remote\n  as well.  This should be safe because it only happens if no\n  other refs exist in the remotes namespace, and you can recreate\n  the remote if necessary.\n\n  `drop-stashes' Dropping a stash is dangerous because Git stores\n  stashes in the reflog.  Once a stash is removed, there is no\n  going back without using low-level recovery tools provided by\n  Git.  When a single stash is dropped, then the user always has\n  to confirm by accepting the default (or selecting another).\n  This action only concerns the deletion of multiple stashes at\n  once.\n\nEdit published history:\n\n  Without adding these symbols here, you will be warned before\n  editing commits that have already been pushed to one of the\n  branches listed in `magit-published-branches'.\n\n  `amend-published' Affects most commands that amend to \"HEAD\".\n\n  `rebase-published' Affects commands that perform interactive\n  rebases.  This includes commands from the commit popup that\n  modify a commit other than \"HEAD\", namely the various fixup\n  and squash variants.\n\n  `edit-published' Affects the commands `magit-edit-line-commit'\n  and `magit-diff-edit-hunk-commit'.  These two commands make\n  it quite easy to accidentally edit a published commit, so you\n  should think twice before configuring them not to ask for\n  confirmation.\n\n  To disable confirmation completely, add all three symbols here\n  or set `magit-published-branches' to nil.\n\nRemoving modules:\n\n  `remove-modules' When you remove the working directory of a\n  module that does not contain uncommitted changes, then that is\n  safer than doing so when there are uncommitted changes and/or\n  when you also remove the gitdir.  Still, you don't want to do\n  that by accident.\n\n  `remove-dirty-modules' When you remove the working directory of\n  a module that contains uncommitted changes, then those changes\n  are gone for good.  It is better to go to the module, inspect\n  these changes and only if appropriate discard them manually.\n\n  `trash-module-gitdirs' When you remove the gitdir of a module,\n  then all unpushed changes are gone for good.  It is very easy\n  to forget that you have some unfinished work on an unpublished\n  feature branch or even in a stash.\n\n  Actually there are some safety precautions in place, that might\n  help you out if you make an unwise choice here, but don't count\n  on it.  In case of emergency, stay calm and check the stash and\n  the `trash-directory' for traces of lost work.\n\nVarious:\n\n  `kill-process' There seldom is a reason to kill a process.\n\nGlobal settings:\n\n  Instead of adding all of the above symbols to the value of this\n  option you can also set it to the atom `t', which has the same\n  effect as adding all of the above symbols.  Doing that most\n  certainly is a bad idea, especially because other symbols might\n  be added in the future.  So even if you don't want to be asked\n  for confirmation for any of these actions, you are still better\n  of adding all of the respective symbols individually.\n\n  When `magit-wip-before-change-mode' is enabled then these actions\n  can fairly easily be undone: `discard', `reverse',\n  `stage-all-changes', and `unstage-all-changes'.  If and only if\n  this mode is enabled, then `safe-with-wip' has the same effect\n  as adding all of these symbols individually." :package-version (magit . "2.1.0") :group magit-essentials magit-commands :type choice (const :tag "Always require confirmation" nil) (const :tag "Never require confirmation" t) set :tag "Require confirmation except for" magit-slow-confirm #[0 "\300\207" [(drop-stashes)] 1] "Whether to ask user \"y or n\" or \"yes or no\" questions.\n\nWhen this is nil, then `y-or-n-p' is used when the user has to\nconfirm a potentially destructive action.  When this is t, then\n`yes-or-no-p' is used instead.  If this is a list of symbols\nidentifying actions, then `yes-or-no-p' is used for those,\n`y-or-no-p' for all others.  The list of actions is the same as\nfor `magit-no-confirm' (which see)." (magit . "2.9.0") magit-miscellaneous (const :tag "Always ask \"yes or no\" questions" t) (const :tag "Always ask \"y or n\" questions" nil) "Ask \"yes or no\" questions only for" magit-no-message #[0 "\300\207" [nil] 1] "A list of messages Magit should not display.\n\nMagit displays most echo area messages using `message', but a few\nare displayed using `magit-message' instead, which takes the same\narguments as the former, FORMAT-STRING and ARGS.  `magit-message'\nforgoes printing a message if any member of this list is a prefix\nof the respective FORMAT-STRING.\n\nIf Magit prints a message which causes you grief, then please\nfirst investigate whether there is another option which can be\nused to suppress it.  If that is not the case, then ask the Magit\nmaintainers to start using `magit-message' instead of `message'\nin that case.  We are not proactively replacing all uses of\n`message' with `magit-message', just in case someone *might* find\nsome of these messages useless.\n\nMessages which can currently be suppressed using this option are:\n* \"Turning on magit-auto-revert-mode...\"" (magit . "2.8.0") (repeat string) magit-ellipsis #[0 "\300\207" [8230] 1] "Character used to abbreviate text.\n\nCurrently this is used to abbreviate author names in the margin\nand in process buffers to elide `magit-git-global-arguments'." (magit . "2.1.0") character magit-update-other-window-delay #[0 "\300\207" [0.2] 1] "Delay before automatically updating the other window.\n\nWhen moving around in certain buffers, then certain other\nbuffers, which are being displayed in another window, may\noptionally be updated to display information about the\nsection at point.\n\nWhen holding down a key to move by more than just one section,\nthen that would update that buffer for each section on the way.\nTo prevent that, updating the revision buffer is delayed, and\nthis option controls for how long.  For optimal experience you\nmight have to adjust this delay and/or the keyboard repeat rate\nand delay of your graphical environment or operating system." (magit . "2.3.0") number magit-view-git-manual-method #[0 "\300\207" [info] 1] "How links to Git documentation are followed from Magit's Info manuals.\n\n`info'  Follow the link to the node in the `gitman' Info manual\n        as usual.  Unfortunately that manual is not installed by\n        default on some platforms, and when it is then the nodes\n        look worse than the actual manpages.\n\n`man'   View the respective man-page using the `man' package.\n\n`woman' View the respective man-page using the `woman' package." (magit . "2.9.0") (choice (const :tag "view info manual" info) (const :tag "view manpage using `man'" man) (const :tag "view manpage using `woman'" woman))] 18)
19 (defvar magit-completing-read--silent-default nil)
20 #@1820 Read a choice in the minibuffer, or use the default choice.
21
22 This is the function that Magit commands use when they need the
23 user to select a single thing to act on.  The arguments have the
24 same meaning as for `completing-read', except for FALLBACK, which
25 is unique to this function and is described below.
26
27 Instead of asking the user to choose from a list of possible
28 candidates, this function may instead just return the default
29 specified by DEF, with or without requiring user confirmation.
30 Whether that is the case depends on PROMPT, `this-command' and
31 `magit-dwim-selection'.  See the documentation of the latter for
32 more information.
33
34 If it does use the default without the user even having to
35 confirm that, then `magit-completing-read--silent-default' is set
36 to t, otherwise nil.
37
38 If it does read a value in the minibuffer, then this function
39 acts similarly to `completing-read', except for the following:
40
41 - If REQUIRE-MATCH is nil and the user exits without a choice,
42   then nil is returned instead of an empty string.
43
44 - If REQUIRE-MATCH is non-nil and the users exits without a
45   choice, an user-error is raised.
46
47 - FALLBACK specifies a secondary default that is only used if
48   the primary default DEF is nil.  The secondary default is not
49   subject to `magit-dwim-selection' — if DEF is nil but FALLBACK
50   is not, then this function always asks the user to choose a
51   candidate, just as if both defaults were nil.
52
53 - ": " is appended to PROMPT.
54
55 - PROMPT is modified to end with " (default DEF|FALLBACK): "
56   provided that DEF or FALLBACK is non-nil, that neither
57   `ivy-mode' nor `helm-mode' is enabled, and that
58   `magit-completing-read-function' is set to its default value of
59   `magit-builtin-completing-read'.
60
61 (fn PROMPT COLLECTION &optional PREDICATE REQUIRE-MATCH INITIAL-INPUT HIST DEF FALLBACK)
62 (defalias 'magit-completing-read #[2050 "\304\205\305\306\307\310\311\312\313!\314\"\315\316%    \"8\211\203>\211\317=\2038\320\321\322 #!\2032\202\201\323\324!\202\201\325\202\201\204E\262\n \n\326P\203] \235\204] B\202_\n\n\n\n\n\n&\211\327\230\203~\205\323\330!\202\211\266\202\207" [magit-completing-read--silent-default magit-dwim-selection this-command magit-completing-read-function nil 2 -first make-byte-code 257 "\211@A\211@A\211A    =\205$?\206$\300\303\304\305#)\266\203\266\202\207" vconcat vector [this-command inhibit-changing-match-data nil t string-match] 15 "\n\n(fn ARG0)" ask y-or-n-p format "%s %s? " user-error "Abort" t ": " "" "Nothing selected"] 18 (#$ . 14387)])
63 #@19 
64
65 (fn COLLECTION)
66 (defalias 'magit--completion-table #[257 "\300\301\302\303\304!\305\"\306\307%\207" [make-byte-code 771 "\211\301=\203\302\207\303\300$\207" vconcat vector [metadata (metadata (display-sort-function . identity)) complete-with-action] 8 "\n\n(fn STRING PRED ACTION)"] 7 (#$ . 16955)])
67 #@134 Magit wrapper for standard `completing-read' function.
68
69 (fn PROMPT CHOICES &optional PREDICATE REQUIRE-MATCH INITIAL-INPUT HIST DEF)
70 (defalias 'magit-builtin-completing-read #[1794 "\303\300!\203\n\204!\303\301!\203    \204!\304\"\262\305!\262\306K\307\310\311\312\313!\314\"\315$\216\306\316M\210\317\320&*\207" [helm-mode ivy-mode ivy-sort-functions-alist boundp magit-prompt-with-default magit--completion-table completion-pcm--all-completions make-byte-code 0 "\301\300M\207" vconcat vector [completion-pcm--all-completions] 2 magit-completion-pcm--all-completions nil completing-read] 16 (#$ . 17270)])
71 #@523 Read multiple items from CHOICES, separated by SEP.
72
73 Set up the `crm' variables needed to read multiple values with
74 `read-from-minibuffer'.
75
76 SEP is a regexp matching characters that can separate choices.
77 When SEP is nil, it defaults to `crm-default-separator'.
78 DEFAULT, HIST, and KEYMAP are passed to `read-from-minibuffer'.
79 When KEYMAP is nil, it defaults to `crm-local-completion-map'.
80
81 Unlike `completing-read-multiple', the return value is not split
82 into a list.
83
84 (fn PROMPT CHOICES &optional SEP DEFAULT HIST KEYMAP)
85 (defalias 'magit-completing-read-multiple #[1538 "\206\306!\307\310\311\312\313K\314\315\316\317\320!\321\"\322$\216\313\323M\210\324\2051\325\326\"\327Q\312\206:\312    &)\262\211\330\230\203U\211\262\204U\331\332!\210.\211\207" [crm-default-separator crm-separator crm-completion-table choose-completion-string-functions minibuffer-completion-table minibuffer-completion-confirm magit--completion-table (crm--choose-completion-string) crm--collection-fn t nil completion-pcm--all-completions make-byte-code 0 "\301\300M\207" vconcat vector [completion-pcm--all-completions] 2 magit-completion-pcm--all-completions read-from-minibuffer format " (%s)" ": " "" user-error "Nothing selected" helm-completion-in-region-default-sort-fn crm-local-completion-map] 14 (#$ . 17912)])
86 #@287 Read multiple strings in the minibuffer, with completion.
87 Like `completing-read-multiple' but don't mess with order of
88 TABLE.  Also bind `helm-completion-in-region-default-sort-fn'
89 to nil.
90
91 (fn PROMPT TABLE &optional PREDICATE REQUIRE-MATCH INITIAL-INPUT HIST DEF INHERIT-INPUT-METHOD)
92 (defalias 'magit-completing-read-multiple* #[2050 "\306\216\307K\310\311\312\313\314!\315\"\316$\216\307\317M\210\320\321\322\"\210\323\324=?\205&\325!\2034\f\2025 \326\327\n\326            &\203T\211\330\230\203T\262\331\324#-\266\202)\262)\207" [minibuffer-completion-table minibuffer-completion-predicate minibuffer-completion-confirm crm-completion-table crm-local-must-match-map crm-local-completion-map #[0 "\300\301\302\"\207" [remove-hook choose-completion-string-functions crm--choose-completion-string] 3] completion-pcm--all-completions make-byte-code 0 "\301\300M\207" vconcat vector [completion-pcm--all-completions] 2 magit-completion-pcm--all-completions add-hook choose-completion-string-functions crm--choose-completion-string crm--collection-fn t magit--completion-table nil read-from-minibuffer "" split-string helm-completion-in-region-default-sort-fn crm-separator] 18 (#$ . 19247)])
93 #@313 Ido-based `completing-read' almost-replacement.
94
95 Unfortunately `ido-completing-read' is not suitable as a
96 drop-in replacement for `completing-read', instead we use
97 `ido-completing-read+' from the third-party package by the
98 same name.
99
100 (fn PROMPT CHOICES &optional PREDICATE REQUIRE-MATCH INITIAL-INPUT HIST DEF)
101 (defalias 'magit-ido-completing-read #[1794 "\300\301\302\303#\203\301&\207\304\305\306\307#\210\310&\207" [require ido-completing-read+ nil t display-warning magit "ido-completing-read+ is not installed\n\nTo use Ido completion with Magit you need to install the\nthird-party `ido-completing-read+' packages.  Falling\nback to built-in `completing-read' for now." :error magit-builtin-completing-read] 15 (#$ . 20470)])
102 #@19 
103
104 (fn PROMPT DEF)
105 (defalias 'magit-prompt-with-default #[514 "\211\203G\300V\203\301\302O\303\230\203\304\305\306\301O#\207\207" [2 -2 nil ": " format "%s (default %s): " 0] 7 (#$ . 21241)])
106 (defvar magit-minibuffer-local-ns-map (byte-code "\301 \302\"\210\303\304\305#\210\303\306\305#\210\211\207" [minibuffer-local-map make-sparse-keymap set-keymap-parent define-key " " magit-whitespace-disallowed "    "] 5))
107 #@55 Beep to tell the user that whitespace is not allowed.
108 (defalias 'magit-whitespace-disallowed #[0 "\301 \210\302\303!\210\304\305 \207" [defining-kbd-macro ding message "Whitespace isn't allowed here" nil force-mode-line-update] 2 (#$ . 21673) nil])
109 #@493 Read a string from the minibuffer, prompting with string PROMPT.
110
111 This is similar to `read-string', but
112 * empty input is only allowed if DEFAULT-VALUE is non-nil in
113   which case that is returned,
114 * whitespace is not allowed and leading and trailing whitespace is
115   removed automatically if NO-WHITESPACE is non-nil,
116 * ": " is appended to PROMPT, and
117 * an invalid DEFAULT-VALUE is silently ignored.
118
119 (fn PROMPT &optional INITIAL-INPUT HISTORY DEFAULT-VALUE INHERIT-INPUT-METHOD NO-WHITESPACE)
120 (defalias 'magit-read-string #[1537 "\203:\203 @\262;\204\303\262\303\304\305\306P\"\205&    \303&\307\310\230\203=\203=\262\203J\211\311\312\"\"\262\310\230\203V\313\314!\202q\203p\315\303\316\317#)\266\203\203p\313\320!\202q)\207" [minibuffer-completion-table magit-minibuffer-local-ns-map inhibit-changing-match-data nil read-from-minibuffer magit-prompt-with-default ": " #[514 "\300 \301\302\303\304\305!\306\"\307$\216\310\"\203\311\312\313\211$\202)\207" [match-data make-byte-code 0 "\301\300\302\"\207" vconcat vector [set-match-data evaporate] 3 string-match replace-match #1="" t] 9 "\n\n(fn REGEXP STRING)"] #1# "\\`\\(?:[     \n ]+\\)" "\\(?:[     \n ]+\\)\\'" user-error "Need non-empty input" "[     \n]" t string-match "Input contains whitespace"] 15 (#$ . 21930)])
121 #@134 Call `magit-read-string' with non-nil NO-WHITESPACE.
122
123 (fn PROMPT &optional INITIAL-INPUT HISTORY DEFAULT-VALUE INHERIT-INPUT-METHOD)
124 (defalias 'magit-read-string-ns #[1281 "\300\301&\207" [magit-read-string t] 12 (#$ . 23258)])
125 #@37 
126
127 (fn PROMPT VERBOSE &rest CLAUSES)
128 (defalias 'magit-read-char-case '(macro . #[642 "\300\301\302\303\304\305#\205\306\307QE\310\311\312\"DE\311\313\"BB\207" [pcase read-char-choice concat mapconcat cadr ", " ", or [C-g] to abort" " " quote mapcar car #[257 "\211@AAB\207" [] 3 "\n\n(fn IT)"]] 11 (#$ . 23498)]))
129 (byte-code "\300\301\302\303#\304\301\305\306#\207" [function-put magit-read-char-case lisp-indent-function 2 put edebug-form-spec (form form &rest (characterp form body))] 5)
130 #@192 Ask user a "y or n" or a "yes or no" question using PROMPT.
131 Which kind of question is used depends on whether
132 ACTION is a member of option `magit-slow-confirm'.
133
134 (fn PROMPT &optional ACTION)
135 (defalias 'magit-y-or-n-p #[513 "\301=\204\211\203\211\235\203\302!\207\303!\207" [magit-slow-confirm t yes-or-no-p y-or-n-p] 4 (#$ . 24005)])
136 (defvar magit--no-confirm-alist '((safe-with-wip magit-wip-before-change-mode discard reverse stage-all-changes unstage-all-changes)))
137 #@68 
138
139 (fn ACTION &optional PROMPT PROMPT-N NOABORT (ITEMS nil SITEMS))
140 (defalias 'magit-confirm #[1153 "\211\205\302\211A\262\242\203\303\304\305\306G\\D\"\210\307\206!\310PG\"\262\307\2062\311!\310P@\"\262\302=\204i\302=\204`>\204`\312\313\314\315\316\317\f!\320\"\321\322%    \"\203i?\206\255\211\202\242\204v\323\"\202\242\211G\324U\203\212\323\"\203\245\211\202\242\211G\324V\203\245\323\325\326\327#\330Q\"\203\245\211\206\255?\205\255\331\332!\207" [magit-no-confirm magit--no-confirm-alist t signal wrong-number-of-arguments magit-confirm 5 format "? " magit-confirm-make-prompt cl-member-if make-byte-code 257 "\211@A\211@A\211\211    >\205$\300>\205$?\206$\302!\205$J\266\203\207" vconcat vector [magit-no-confirm boundp] 10 "\n\n(fn ARG0)" magit-y-or-n-p 1 mapconcat identity "\n" "\n\n" user-error "Abort"] 14 (#$ . 24490)])
141 (byte-code "\300\301\302\303#\300\207" [function-put magit-confirm lisp-indent-function defun] 4)
142 #@38 
143
144 (fn ACTION FILES &optional PROMPT)
145 (defalias 'magit-confirm-files #[770 "\205\211\204 \300!\262\301\302P\303P\304%\207" [magit-confirm-make-prompt magit-confirm " %s" " %i files" nil] 9 (#$ . 25492)])
146 #@15 
147
148 (fn ACTION)
149 (defalias 'magit-confirm-make-prompt #[257 "\300!\301\302\303\304\305O\226\305\306OP#\207" [symbol-name replace-regexp-in-string "-" " " 0 1 nil] 9 (#$ . 25712)])
150 #@126 Like `read-number' but return value is a string.
151 DEFAULT may be a number or a numeric string.
152
153 (fn PROMPT &optional DEFAULT)
154 (defalias 'magit-read-number-string #[513 "\300\301;\203\302!\202\"!\207" [number-to-string read-number string-to-number] 7 (#$ . 25899)])
155 #@139 Show a shell command that runs an uncustomized Emacs with only Magit loaded.
156 See info node `(magit)Debugging Tools' for more information.
157 (defalias 'magit-emacs-Q-command #[0 "\302\303    P\304\305\306\307\310\311\312\310\313\314\"!\"\315\316\317\320!!D\"BBBB\321#\322\323\324\"\210\325!\207" [invocation-directory invocation-name mapconcat shell-quote-argument "-Q" "--eval" "(setq debug-on-error t)" append cl-mapcan #[257 "\300D\207" ["-L"] 3 "\n\n(fn DIR)"] delete-dups #[257 "\300!\211\203\301!C\202\302\235?\205\303\304\"\207" [locate-library file-name-directory ("lv" "transient") error "Cannot find mandatory dependency %s"] 5 "\n\n(fn LIB)"] ("dash" "ghub" "graphql" "lv" "magit-popup" "transient" "treepy" "with-editor" "magit" "git-commit") "-l" file-name-sans-extension locate-library "magit" " " message "Uncustomized Magit command saved to kill-ring, %s" "please run it in a terminal." kill-new] 13 (#$ . 26178) nil])
158 #@308 Bind variables to submatches according to VARLIST then evaluate BODY.
159 Bind the symbols in VARLIST to submatches of the current match
160 data, starting with 1 and incrementing by 1 for each symbol.  If
161 the last match was against a string, then that has to be provided
162 as STRING.
163
164 (fn VARLIST STRING &rest BODY)
165 (defalias 'magit-bind-match-strings '(macro . #[642 "\300\301!\302C\303DC\303\304 \305\302\306\307\310!\311\"\312$\216\313\305\314\315\307\310  \"\316\"\317\320%\n\")\262BBE\207" [cl-gensym "string" 0 let match-data make-byte-code "\301\300\302\"\207" vconcat vector [set-match-data evaporate] 3 mapcar 257 "\211\302\301\211\242T\240\300ED\207" [match-string] 5 "\n\n(fn IT)"] 17 (#$ . 27127)]))
166 (byte-code "\300\301\302\303#\304\301\305\306#\207" [function-put magit-bind-match-strings lisp-indent-function 2 put edebug-form-spec (listp form body)] 5)
167 #@38 Delete the rest of the current line.
168 (defalias 'magit-delete-line #[0 "`\300 T|\207" [line-end-position] 2 (#$ . 28002)])
169 #@119 Delete text matched by last search.
170 If optional NUM is specified, only delete that subexpression.
171
172 (fn &optional NUM)
173 (defalias 'magit-delete-match #[256 "\211\206\300\224\206 \300\225|\207" [0] 3 (#$ . 28131)])
174 #@55 Return the first line of FILE as a string.
175
176 (fn FILE)
177 (defalias 'magit-file-line #[257 "\300!\205%\301\302!r\211q\210\303\304\305\306\307!\310\"\311$\216\312!\210\313e\314 \"*\262\207" [file-regular-p generate-new-buffer " *temp*" make-byte-code 0 "\301\300!\205    \302\300!\207" vconcat vector [buffer-name kill-buffer] 2 insert-file-contents buffer-substring-no-properties line-end-position] 8 (#$ . 28353)])
178 #@175 Return a list of strings containing one element per line in FILE.
179 Unless optional argument KEEP-EMPTY-LINES is t, trim all empty lines.
180
181 (fn FILE &optional KEEP-EMPTY-LINES)
182 (defalias 'magit-file-lines #[513 "\300!\205'\301\302!r\211q\210\303\304\305\306\307!\310\"\311$\216\312!\210\313\314 \315?#*\262\207" [file-regular-p generate-new-buffer " *temp*" make-byte-code 0 "\301\300!\205    \302\300!\207" vconcat vector [buffer-name kill-buffer] 2 insert-file-contents split-string buffer-string "\n"] 9 (#$ . 28775)])
183 #@218 Set the header-line using STRING.
184 Propertize STRING with the `magit-header-line' face if no face is
185 present, and pad the left and right sides of STRING equally such
186 that it will align with the text area.
187
188 (fn STRING)
189 (defalias 'magit-set-header-line-format #[257 "\301\302\303\304#\301\302\303\305\306\307\310\311\312 @\313=\205\314BBBE#Q\211G\315\316\317\320%\203T\321\316\317#\211:\204N\322\"\203N\323\316\324\320%\210\323S\320%\210\262\202Y\301\317\325#\211\207" [header-line-format propertize " " display (space :align-to 0) space :width + left-fringe left-margin window-current-scroll-bars left (scroll-bar) text-property-not-all 0 face nil get-text-property magit-face-property-all add-face-text-property 1 magit-header-line] 13 (#$ . 29305)])
190 #@71 Return non-nil if FACE is present in all of STRING.
191
192 (fn FACE STRING)
193 (defalias 'magit-face-property-all #[514 "\300\211\301\211\300\203 \302\202\303\304#\262\204#\301\262\300\211\262\203N\305\304#\262:\2037>\202;=\204H\300\262\300\211\262\203N\300\262\202\207" [nil t 0 next-single-property-change face get-text-property] 11 (#$ . 30086)])
194 #@94 Like `format-spec' but preserve text properties in SPECIFICATION.
195
196 (fn FORMAT SPECIFICATION)
197 (defalias 'magit--format-spec #[514 "\300\301!r\211q\210\302\303\304\305\306!\307\"\310$\216c\210eb\210\311\312\313\314#\203\205\313f\315=\203/\316\317!\210\202\320\321!\203~\322\317!\323\322\310!!\211\236\211\204I\324\325\"\210\211A\262\326\312\327Q\"\330\303\331P\"\203c\211c\210\202g\332!\210\303\224G\\\303\225G\\|\210\303\224S\303\224|\266\202\324\333!\210\202\334 *\207" [generate-new-buffer " *temp*" make-byte-code 0 "\301\300!\205    \302\300!\207" vconcat vector [buffer-name kill-buffer] 2 search-forward "%" nil t 37 delete-char 1 looking-at "\\([-0-9.]*\\)\\([a-zA-Z]\\)" match-string string-to-char error "Invalid format character: `%%%c'" format "s" next-property-change " " insert-and-inherit "Invalid format string" buffer-string] 11 (#$ . 30466)])
198 #@26 Kill the current buffer.
199 (defalias 'magit-kill-this-buffer #[0 "\300p!\207" [kill-buffer] 2 (#$ . 31353) nil])
200 #@187 Like `file-accessible-directory-p' but work around an Apple bug.
201 See http://debbugs.gnu.org/cgi/bugreport.cgi?bug=21573#17
202 and https://github.com/magit/magit/issues/2295.
203
204 (fn FILENAME)
205 (defalias 'magit-file-accessible-directory-p #[257 "\300!\205    \301!\207" [file-directory-p file-accessible-directory-p] 3 (#$ . 31471)])
206 (byte-code "\302\303\"\203\f\304\305\306\"\210    \307W\2033\310\311\312\"\210\313\314\315\311#\210\310\316\317\"\210\313\320\315\316#\210\310\321\322\"\210\313\323\315\321#\210\302\207" [emacs-version emacs-major-version version<= "25.1" eval-after-load vc-git #[0 "\300\301\302\"\207" [defalias vc-git-conflicted-files #[257 "\300\301\302#\211\205\303\304\305#\306\211\203=\211@\307\310\"\2036\311\312\"\311\313\"\314\232\2034\315    \"B\262\266A\266\202\202\262\207" [vc-git--run-command-string "diff-files" "--name-status" split-string "\n" omit-nulls nil string-match "\\([ MADRCU?!]\\)[     ]+\\(.+\\)" match-string 1 2 "U" expand-file-name] 11 "Return the list of files with conflicts in DIRECTORY.\n\n(fn DIRECTORY)"]] 3] 27 defalias vc-git--call@bug21559 #[899 "    \203\n\302B\303$)\207" [process-environment revert-buffer-in-progress-p "GIT_OPTIONAL_LOCKS=0" apply] 9 "Backport https://debbugs.gnu.org/cgi/bugreport.cgi?bug=21559.\n\n(fn FN BUFFER COMMAND &rest ARGS)"] advice-add vc-git--call :around vc-git-command@bug21559 #[1156 "    \203\n\302B\303%)\207" [process-environment revert-buffer-in-progress-p "GIT_OPTIONAL_LOCKS=0" apply] 11 "Backport https://debbugs.gnu.org/cgi/bugreport.cgi?bug=21559.\n\n(fn FN BUFFER OKSTATUS FILE-OR-LIST &rest FLAGS)"] vc-git-command auto-revert-handler@bug21559 #[257 "\301\211 )\207" [revert-buffer-in-progress-p t] 2 "Backport https://debbugs.gnu.org/cgi/bugreport.cgi?bug=21559.\n\n(fn FN)"] auto-revert-handler] 4)
207 #@34 
208
209 (fn PREFIX PATTERN TABLE PRED)
210 (defalias 'magit-completion-pcm--all-completions #[1028 "\304!\203\305@P#\207\306!\211\nB\305@;\203%@\202&\307P#\310!\2044\211\202]\311\211\203X\211@\311\312\313#)\266\203\203Q\211B\262A\266\202\2026\210\211\237\262*\207" [completion-ignore-case case-fold-search completion-regexp-list inhibit-changing-match-data completion-pcm--pattern-trivial-p all-completions completion-pcm--pattern->regex "" functionp nil t string-match] 16 (#$ . 33305)])
211 #@542 Prevent `whitespace-mode' from being turned on in Magit buffers.
212
213 Because `whitespace-mode' uses font-lock and Magit does not, they
214 are not compatible.  Therefore you cannot turn on that minor-mode
215 in Magit buffers.  If you try to enable it anyway, then this
216 advice prevents that.
217
218 If the reason the attempt is made is that `global-whitespace-mode'
219 is enabled, then that is done silently.  However if you call the local
220 minor-mode interactively, then that results in an error.
221
222 See `magit-diff-paint-whitespace' for an alternative.
223
224 (fn FN)
225 (defalias 'whitespace-dont-turn-on-in-magit-mode #[257 "\302\303!\204    \211 \207\304    \300=\205\305\306!\207" [whitespace-mode this-command derived-mode-p magit-mode nil user-error "Whitespace mode NOT enabled because it is not compatible with Magit"] 3 (#$ . 33826)])
226 (advice-add 'whitespace-turn-on :around 'whitespace-dont-turn-on-in-magit-mode)
227 #@352 Initialize SYMBOL based on EXP.
228 Set the symbol, using `set-default' (unlike
229 `custom-initialize-reset' which uses the `:set' function if any.)
230 The value is either the symbol's current value
231  (as obtained using the `:get' function), if any,
232 or the value in the symbol's `saved-value' property if any,
233 or (last of all) the value of EXP.
234
235 (fn SYMBOL EXP)
236 (defalias 'magit-custom-initialize-reset #[514 "\300\3011\302!\303N\211\203\211!\202\266\2020\2020\210\304\305N\211\203,\211@\202-\262!\"\207" [set-default-toplevel-value (error) default-toplevel-value custom-get eval saved-value] 8 (#$ . 34725)])
237 #@15 
238
239 (fn SYMBOL)
240 (defalias 'magit-hook-custom-get #[257 "\300\301\"\203 \302!\207\303\304N@!\302!\305\306N\211\2036\211@\211>\204*\211>\203/\211B\262A\266\202\202\210\211\203P\211@\211>\204I\211B\262A\266\202\2028\210\211\237\207" [symbol-file defvar default-toplevel-value eval standard-value nil custom-options] 8 (#$ . 35348)])
241 #@26 
242
243 (fn FN &optional FORK)
244 (defalias 'Info-follow-nearest-node--magit-gitman #[513 "\203>\301`\302\303#\211\203:\304\305\"\203:\306\267\2024\307\310!\210\310\311\312\"!\202=\307\313!\210\313\311\312\"!\202=\314\315!\202=!\207!\207" [magit-view-git-manual-method Info-get-token "\\*note[ \n    ]+" "\\*note[ \n    ]+\\([^:]*\\):\\(:\\|[ \n    ]*(\\)?" string-match "^(gitman)\\(.+\\)" #s(hash-table size 2 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (man 26 woman 39)) require man match-string 1 woman user-error "Invalid value for `magit-view-git-documentation'"] 7 (#$ . 35706)])
245 (advice-add 'Info-follow-nearest-node :around 'Info-follow-nearest-node--magit-gitman)
246 #@35 
247
248 (fn FN LINK DESCRIPTION FORMAT)
249 (defalias 'org-man-export--magit-gitman #[1028 "\211\301=\203\302\303\304\305#)\266\203\203\306\307\310#\207#\207" [inhibit-changing-match-data texinfo "\\`git" nil t string-match replace-regexp-in-string "%s" "\n@ifinfo\n@ref{%s,,,gitman,}.\n@end ifinfo\n@ifhtml\n@html\nthe <a href=\"http://git-scm.com/docs/%s\">%s(1)</a> manpage.\n@end html\n@end ifhtml\n@iftex\nthe %s(1) manpage.\n@end iftex\n"] 11 (#$ . 36405)])
250 (advice-add 'org-man-export :around 'org-man-export--magit-gitman)
251 #@248 Display a message at the bottom of the screen, or not.
252 Like `message', except that if the users configured option
253 `magit-no-message' to prevent the message corresponding to
254 FORMAT-STRING to be displayed, then don't.
255
256 (fn FORMAT-STRING &rest ARGS)
257 (defalias 'magit-message #[385 "\301\302\303\203/\203/@\203\301\262\202#\304\"\203#\211\262\210\211T\262A\262\202\266\211\262?\205=\305\306#\207" [magit-no-message nil t 0 string-prefix-p apply message] 10 (#$ . 36947)])
258 #@160 Display a message at the bottom of the screen, but don't log it.
259 Like `message', except that `message-log-max' is bound to nil.
260
261 (fn FORMAT-STRING &rest ARGS)
262 (defalias 'magit-msg #[385 "\301\302\303#)\207" [message-log-max nil apply message] 6 (#$ . 37448)])
263 (provide 'magit-utils)