aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorT727 <74924917+T-727@users.noreply.github.com>2023-04-22 13:04:05 +0300
committerGitHub <noreply@github.com>2023-04-22 12:04:05 +0200
commitd9f78b63361e00a7f623ebb5b869606ac653b180 (patch)
tree35760a843eb7eae6ecfa4d8124bbee53c242c1e4
parente9b85acfbb8d3b1dd6f92deb187800be757c6c68 (diff)
downloadrneovim-d9f78b63361e00a7f623ebb5b869606ac653b180.tar.gz
rneovim-d9f78b63361e00a7f623ebb5b869606ac653b180.tar.bz2
rneovim-d9f78b63361e00a7f623ebb5b869606ac653b180.zip
docs(powershell): use tee.exe instead of Tee-Object
Problem: Tee-Object does not create a file if it does not receive input for example when :grep does not find matches. and so nvim tries to open a nonexistent errorfile causing an error. Solution: use tee.exe instead of Tee-Object
-rw-r--r--runtime/doc/options.txt4
-rw-r--r--test/functional/ex_cmds/make_spec.lua4
-rw-r--r--test/functional/helpers.lua4
3 files changed, 5 insertions, 7 deletions
diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt
index 7842394245..46d3f153c2 100644
--- a/runtime/doc/options.txt
+++ b/runtime/doc/options.txt
@@ -5225,9 +5225,9 @@ A jump table for the options with a short description can be found at |Q_op|.
*shell-powershell*
To use PowerShell: >
let &shell = executable('pwsh') ? 'pwsh' : 'powershell'
- let &shellcmdflag = '-NoLogo -ExecutionPolicy RemoteSigned -Command [Console]::InputEncoding=[Console]::OutputEncoding=[System.Text.UTF8Encoding]::new();$PSDefaultParameterValues[''Out-File:Encoding'']=''utf8'';'
+ let &shellcmdflag = '-NoLogo -ExecutionPolicy RemoteSigned -Command [Console]::InputEncoding=[Console]::OutputEncoding=[System.Text.UTF8Encoding]::new();$PSDefaultParameterValues[''Out-File:Encoding'']=''utf8'';Remove-Alias -Force -ErrorAction SilentlyContinue tee;'
let &shellredir = '2>&1 | %%{ "$_" } | Out-File %s; exit $LastExitCode'
- let &shellpipe = '2>&1 | %%{ "$_" } | Tee-Object %s; exit $LastExitCode'
+ let &shellpipe = '2>&1 | %%{ "$_" } | tee %s; exit $LastExitCode'
set shellquote= shellxquote=
< This option cannot be set from a |modeline| or in the |sandbox|, for
diff --git a/test/functional/ex_cmds/make_spec.lua b/test/functional/ex_cmds/make_spec.lua
index f42e21e4cb..8d903330b1 100644
--- a/test/functional/ex_cmds/make_spec.lua
+++ b/test/functional/ex_cmds/make_spec.lua
@@ -24,10 +24,8 @@ describe(':make', function()
it('captures stderr & non zero exit code #14349', function ()
nvim('set_option', 'makeprg', testprg('shell-test')..' foo')
local out = eval('execute("make")')
- -- Make program exit code correctly captured
- matches('\nshell returned 3', out)
-- Error message is captured in the file and printed in the footer
- matches('\n.*%: Unknown first argument%: foo', out)
+ matches('[\r\n]+.*[\r\n]+Unknown first argument%: foo[\r\n]+%(1 of 1%)%: Unknown first argument%: foo', out)
end)
it('captures stderr & zero exit code #14349', function ()
diff --git a/test/functional/helpers.lua b/test/functional/helpers.lua
index 2e373467d0..6e668b22b0 100644
--- a/test/functional/helpers.lua
+++ b/test/functional/helpers.lua
@@ -552,7 +552,7 @@ function module.set_shell_powershell(fake)
end
local shell = found and (is_os('win') and 'powershell' or 'pwsh') or module.testprg('pwsh-test')
local cmd = 'Remove-Item -Force '..table.concat(is_os('win')
- and {'alias:cat', 'alias:echo', 'alias:sleep', 'alias:sort'}
+ and {'alias:cat', 'alias:echo', 'alias:sleep', 'alias:sort', 'alias:tee'}
or {'alias:echo'}, ',')..';'
module.exec([[
let &shell = ']]..shell..[['
@@ -562,7 +562,7 @@ function module.set_shell_powershell(fake)
let &shellcmdflag .= '$PSDefaultParameterValues[''Out-File:Encoding'']=''utf8'';'
let &shellcmdflag .= ']]..cmd..[['
let &shellredir = '2>&1 | %%{ "$_" } | Out-File %s; exit $LastExitCode'
- let &shellpipe = '2>&1 | %%{ "$_" } | Tee-Object %s; exit $LastExitCode'
+ let &shellpipe = '2>&1 | %%{ "$_" } | tee %s; exit $LastExitCode'
]])
return found
end