summary refs log tree commit diff
path: root/pkgs/shells/fish/builtin_status.patch
blob: dd6d79713b4cb2eafdc6d89ccd71a9e24ac47b82 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
commit 5145ca56b0ac1e5e284ab6dfa6fdecc5e86e59b8
Author: Jakob Gillich <jakob@gillich.me>
Date:   Sat Dec 26 04:57:06 2015 +0100

    prefix status command with builtin

diff --git a/etc/config.fish b/etc/config.fish
index 0683f40..9297a85 100644
--- a/etc/config.fish
+++ b/etc/config.fish
@@ -6,7 +6,7 @@
 # Some things should only be done for login terminals
 #
 
-if status --is-login
+if builtin status --is-login
 
 	#
 	# Set some value for LANG if nothing was set before, and this is a
diff --git a/share/functions/__fish_config_interactive.fish b/share/functions/__fish_config_interactive.fish
index 9b27fb9..d1c704b 100644
--- a/share/functions/__fish_config_interactive.fish
+++ b/share/functions/__fish_config_interactive.fish
@@ -101,7 +101,7 @@ function __fish_config_interactive -d "Initializations that should be performed
         eval "$__fish_bin_dir/fish -c 'fish_update_completions > /dev/null ^/dev/null' &"
     end
 
-	if status -i
+	if builtin status -i
 		#
 		# Print a greeting
 		#
@@ -128,14 +128,14 @@ function __fish_config_interactive -d "Initializations that should be performed
 	#
 
 	function __fish_repaint --on-variable fish_color_cwd --description "Event handler, repaints the prompt when fish_color_cwd changes"
-		if status --is-interactive
+		if builtin status --is-interactive
 			set -e __fish_prompt_cwd
 			commandline -f repaint ^/dev/null
 		end
 	end
 
 	function __fish_repaint_root --on-variable fish_color_cwd_root --description "Event handler, repaints the prompt when fish_color_cwd_root changes"
-		if status --is-interactive
+		if builtin  status --is-interactive
 			set -e __fish_prompt_cwd
 			commandline -f repaint ^/dev/null
 		end
@@ -191,7 +191,7 @@ function __fish_config_interactive -d "Initializations that should be performed
 	# Notify vte-based terminals when $PWD changes (issue #906)
 	if test "$VTE_VERSION" -ge 3405 -o "$TERM_PROGRAM" = "Apple_Terminal"
 		function __update_vte_cwd --on-variable PWD --description 'Notify VTE of change to $PWD'
-			status --is-command-substitution; and return
+			builtin status --is-command-substitution; and return
 			printf '\033]7;file://%s%s\a' (hostname) (pwd | __fish_urlencode)
 		end
 	end
diff --git a/share/functions/__fish_git_prompt.fish b/share/functions/__fish_git_prompt.fish
index 0117894..4e4b60f 100644
--- a/share/functions/__fish_git_prompt.fish
+++ b/share/functions/__fish_git_prompt.fish
@@ -728,7 +728,7 @@ for var in repaint describe_style show_informative_status showdirtystate showsta
 	set varargs $varargs --on-variable __fish_git_prompt_$var
 end
 function __fish_git_prompt_repaint $varargs --description "Event handler, repaints prompt when functionality changes"
-	if status --is-interactive
+	if builtin status --is-interactive
 		if test $argv[3] = __fish_git_prompt_show_informative_status
 			# Clear characters that have different defaults with/without informative status
 			for name in cleanstate dirtystate invalidstate stagedstate stateseparator untrackedfiles upstream_ahead upstream_behind
@@ -746,7 +746,7 @@ for var in '' _prefix _suffix _bare _merging _cleanstate _invalidstate _upstream
 end
 set varargs $varargs --on-variable __fish_git_prompt_showcolorhints
 function __fish_git_prompt_repaint_color $varargs --description "Event handler, repaints prompt when any color changes"
-	if status --is-interactive
+	if builtin status --is-interactive
 		set -l var $argv[3]
 		set -e _$var
 		set -e _{$var}_done
@@ -766,7 +766,7 @@ for var in cleanstate dirtystate invalidstate stagedstate stashstate statesepara
 	set varargs $varargs --on-variable __fish_git_prompt_char_$var
 end
 function __fish_git_prompt_repaint_char $varargs --description "Event handler, repaints prompt when any char changes"
-	if status --is-interactive
+	if builtin status --is-interactive
 		set -e _$argv[3]
 		commandline -f repaint ^/dev/null
 	end
diff --git a/share/functions/cd.fish b/share/functions/cd.fish
index 8faa469..10168d7 100644
--- a/share/functions/cd.fish
+++ b/share/functions/cd.fish
@@ -5,7 +5,7 @@
 function cd --description "Change directory"
 
 	# Skip history in subshells
-	if status --is-command-substitution
+	if builtin status --is-command-substitution
 		builtin cd $argv
 		return $status
 	end
@@ -33,4 +33,3 @@ function cd --description "Change directory"
 
 	return $cd_status
 end
-
diff --git a/share/functions/eval.fish b/share/functions/eval.fish
index 052d417..5eeb12a 100644
--- a/share/functions/eval.fish
+++ b/share/functions/eval.fish
@@ -23,17 +23,17 @@ function eval -S -d "Evaluate parameters as a command"
 	# used interactively, like less, wont work using eval.
 
 	set -l mode
-	if status --is-interactive-job-control
+	if builtin status --is-interactive-job-control
 		set mode interactive
 	else
-		if status --is-full-job-control
+		if builtin status --is-full-job-control
 			set mode full
 		else
 			set mode none
 		end
 	end
-	if status --is-interactive
-		status --job-control full
+	if builtin status --is-interactive
+		builtin status --job-control full
 	end
 	__fish_restore_status $status_copy
 
@@ -60,6 +60,6 @@ function eval -S -d "Evaluate parameters as a command"
 	echo "begin; $argv "\n" ;end <&3 3<&-" | source 3<&0
 	set -l res $status
 
-	status --job-control $mode
+	builtin status --job-control $mode
 	return $res
 end
diff --git a/share/functions/history.fish b/share/functions/history.fish
index fd2b91f..12d28d7 100644
--- a/share/functions/history.fish
+++ b/share/functions/history.fish
@@ -38,7 +38,7 @@ function history --description "Deletes an item from history"
         end
     else
         #Execute history builtin without any argument
-        if status --is-interactive
+        if builtin status --is-interactive
             builtin history | eval $pager
         else
             builtin history
diff --git a/share/functions/psub.fish b/share/functions/psub.fish
index 67863ad..dd0e08b 100644
--- a/share/functions/psub.fish
+++ b/share/functions/psub.fish
@@ -40,7 +40,7 @@ function psub --description "Read from stdin into a file and output the filename
 
 	end
 
-	if not status --is-command-substitution
+	if not builtin status --is-command-substitution
 		echo psub: Not inside of command substitution >&2
 		return 1
 	end
diff --git a/share/tools/web_config/sample_prompts/classic_git.fish b/share/tools/web_config/sample_prompts/classic_git.fish
index 39f3ab8..601fa19 100644
--- a/share/tools/web_config/sample_prompts/classic_git.fish
+++ b/share/tools/web_config/sample_prompts/classic_git.fish
@@ -17,25 +17,25 @@ function fish_prompt --description 'Write out the prompt'
 		set -g __fish_classic_git_functions_defined
 
 		function __fish_repaint_user --on-variable fish_color_user --description "Event handler, repaint when fish_color_user changes"
-			if status --is-interactive
+			if builtin status --is-interactive
 				commandline -f repaint ^/dev/null
 			end
 		end
-		
+
 		function __fish_repaint_host --on-variable fish_color_host --description "Event handler, repaint when fish_color_host changes"
-			if status --is-interactive
+			if builtin status --is-interactive
 				commandline -f repaint ^/dev/null
 			end
 		end
-		
+
 		function __fish_repaint_status --on-variable fish_color_status --description "Event handler; repaint when fish_color_status changes"
-			if status --is-interactive
+			if builtin status --is-interactive
 				commandline -f repaint ^/dev/null
 			end
 		end
 
 		function __fish_repaint_bind_mode --on-variable fish_key_bindings --description "Event handler; repaint when fish_key_bindings changes"
-			if status --is-interactive
+			if builtin status --is-interactive
 				commandline -f repaint ^/dev/null
 			end
 		end
diff --git a/tests/test_util.fish b/tests/test_util.fish
index 22744b3..576dbc4 100644
--- a/tests/test_util.fish
+++ b/tests/test_util.fish
@@ -4,7 +4,7 @@
 if test "$argv[1]" = (status -f)
     echo 'test_util.fish requires sourcing script as argument to `source`' >&2
     echo 'use `source test_util.fish (status -f); or exit`' >&2
-    status --print-stack-trace >&2
+    builtin status --print-stack-trace >&2
     exit 1
 end