mirror of
				https://github.com/tmux-plugins/tmux-resurrect.git
				synced 2025-11-03 16:32:13 +00:00 
			
		
		
		
	Add cmdline strategy
This commit is contained in:
		
				
					committed by
					
						
						*Kim Zick (rummik)
					
				
			
			
				
	
			
			
			
						parent
						
							b020b2481e
						
					
				
				
					commit
					edd8132bef
				
			
							
								
								
									
										23
									
								
								save_command_strategies/cmdline.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										23
									
								
								save_command_strategies/cmdline.sh
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,23 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
 | 
			
		||||
CURRENT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
 | 
			
		||||
 | 
			
		||||
PANE_PID="$1"
 | 
			
		||||
CPID=$(pgrep -P $PANE_PID)
 | 
			
		||||
 | 
			
		||||
exit_safely_if_empty_ppid() {
 | 
			
		||||
	if [ -z "$PANE_PID" ]; then
 | 
			
		||||
		exit 0
 | 
			
		||||
	fi
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
full_command() {
 | 
			
		||||
	[[ -z "$CPID" ]] && exit 0
 | 
			
		||||
	base64 /proc/${CPID}/cmdline
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
main() {
 | 
			
		||||
	exit_safely_if_empty_ppid
 | 
			
		||||
	full_command
 | 
			
		||||
}
 | 
			
		||||
main
 | 
			
		||||
@@ -298,6 +298,9 @@ restore_all_pane_processes() {
 | 
			
		||||
			while IFS=$d read session_name window_number pane_index dir pane_full_command; do
 | 
			
		||||
				dir="$(remove_first_char "$dir")"
 | 
			
		||||
				pane_full_command="$(remove_first_char "$pane_full_command")"
 | 
			
		||||
				if base64 -d <<< $pane_full_command >/dev/null 2>&1; then
 | 
			
		||||
					pane_full_command=$(base64 -d <<< $pane_full_command | perl -ne 'print join(" ", map quotemeta, split(/\000/)), "\n"')
 | 
			
		||||
				fi
 | 
			
		||||
				restore_pane_process "$pane_full_command" "$session_name" "$window_number" "$pane_index" "$dir"
 | 
			
		||||
			done
 | 
			
		||||
	fi
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user