Custom Prompt and $NestedPromptLevel
March 7, 2008 at 5:03 PM
—
Andy Schneider
I have had a custom prompt for quite some time now. I am pretty sure I got started with by using the custom prompt from the PowerShell Community Extensions.
I have tweaked it here and there and apparently at some point I dropped the part of the default prompt that used $NestedPromptLevel.
This wasn't a problem until I was reading about some great debugging techniques in PowerShell in Action by Bruce Payette which used the Nested Prompt feature.
This was quickly fixed with the following:
1: if ($NestedPromptLevel -gt 0) {$myPrompt = "PS-nested >>"} 2: Write-Host ($myPrompt)
Now my nested prompt works quite well. When I hit S to suspend, I get dropped into my custom nested prompt.
1: PS 10 > notepad
2: PS 11 > gps notepad | kill -confirm
3:
4: Confirm
5: Are you sure you want to perform this action?
6: Performing operation "Stop-Process" on Target "notepad (4512)".
7: [Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): S
8: PS-nested >> gps notepad
9:
10: Handles NPM(K) PM(K) WS(K) VM(M) CPU(s) Id ProcessName
11: ------- ------ ----- ----- ----- ------ -- -----------
12: 57 6 2000 9884 78 0.08 4512 notepad
13:
14:
15: PS-nested >>
16: PS-nested >>
17: PS-nested >>
18: PS-nested >> exit
19:
20: Confirm
21: Are you sure you want to perform this action?
22: Performing operation "Stop-Process" on Target "notepad (4512)".
23: [Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): Y
24: PS 14 >
Note to self: when messing with defaults, don't delete stuff when you don't know what they are for.
Andy
0a57d93a-bc43-4722-9777-d2f523512cfd|0|.0
Posted in:
Tags: