mirror of
				https://github.com/KevinMidboe/linguist.git
				synced 2025-10-29 17:50:22 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			29 lines
		
	
	
		
			651 B
		
	
	
	
		
			Fish
		
	
	
	
	
	
			
		
		
	
	
			29 lines
		
	
	
		
			651 B
		
	
	
	
		
			Fish
		
	
	
	
	
	
 | 
						|
function eval -S -d "Evaluate parameters as a command"
 | 
						|
 | 
						|
	# If we are in an interactive shell, eval should enable full
 | 
						|
	# job control since it should behave like the real code was
 | 
						|
	# executed.  If we don't do this, commands that expect to be
 | 
						|
	# used interactively, like less, wont work using eval.
 | 
						|
 | 
						|
	set -l mode
 | 
						|
	if status --is-interactive-job-control
 | 
						|
		set mode interactive
 | 
						|
	else
 | 
						|
		if status --is-full-job-control
 | 
						|
			set mode full
 | 
						|
		else
 | 
						|
			set mode none
 | 
						|
		end
 | 
						|
	end
 | 
						|
	if status --is-interactive
 | 
						|
		status --job-control full
 | 
						|
	end
 | 
						|
 | 
						|
	echo "begin; $argv ;end eval2_inner <&3 3<&-" | . 3<&0
 | 
						|
	set -l res $status
 | 
						|
 | 
						|
	status --job-control $mode
 | 
						|
	return $res
 | 
						|
end
 |