patch 8.2.3071: shell options are not set properly for PowerShell
Problem: Shell options are not set properly for PowerShell.
Solution: Use better option defaults. (Mike Willams, closes #8459)
diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt
index 4356381..7fb2534 100644
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -9878,9 +9878,11 @@
shellescape({string} [, {special}]) *shellescape()*
Escape {string} for use as a shell command argument.
- On MS-Windows, when 'shellslash' is not set, it will enclose
- {string} in double quotes and double all double quotes within
- {string}.
+ On MS-Windows, when the 'shell' contains powershell then it
+ will enclose {string} in single quotes and will double up all
+ internal single quotes. With other values for 'shell' when
+ 'shellslash' is not set, it will enclose {string} in double
+ quotes and double all double quotes within {string}.
Otherwise it will enclose {string} in single quotes and
replace all "'" with "'\''".
@@ -11040,7 +11042,8 @@
:exe "redir > " . tmpfile
< For Unix, the file will be in a private directory |tempfile|.
For MS-Windows forward slashes are used when the 'shellslash'
- option is set or when 'shellcmdflag' starts with '-'.
+ option is set or when 'shellcmdflag' starts with '-' except
+ when when 'shell' contains powershell.
term_ functions are documented here: |terminal-function-details|