diff options
author | zeertzjq <zeertzjq@outlook.com> | 2023-06-11 22:12:32 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-06-11 22:12:32 +0800 |
commit | bde59e81473f29944ef80ff98f6b2c88010b2df6 (patch) | |
tree | 95462bacec741f2b820f25cc37ac66303f6e9248 | |
parent | dcb341315a7d8490685036122a3ac2a09499a245 (diff) | |
download | rneovim-bde59e81473f29944ef80ff98f6b2c88010b2df6.tar.gz rneovim-bde59e81473f29944ef80ff98f6b2c88010b2df6.tar.bz2 rneovim-bde59e81473f29944ef80ff98f6b2c88010b2df6.zip |
fix(remote): restore previous --remote-expr output formatting (#23988)
- Use tostring() as that's what print() uses internally.
- Do not append trailing new line.
-rw-r--r-- | runtime/lua/vim/_editor.lua | 5 | ||||
-rw-r--r-- | src/nvim/main.c | 1 | ||||
-rw-r--r-- | test/functional/core/remote_spec.lua | 9 |
3 files changed, 7 insertions, 8 deletions
diff --git a/runtime/lua/vim/_editor.lua b/runtime/lua/vim/_editor.lua index dc396b8f65..1c7eb30b03 100644 --- a/runtime/lua/vim/_editor.lua +++ b/runtime/lua/vim/_editor.lua @@ -940,14 +940,13 @@ function vim._cs_remote(rcid, server_addr, connect_error, args) if rcid == 0 then return { errmsg = connection_failure_errmsg('Send failed.') } end - vim.fn.rpcrequest(rcid, 'nvim_input', args[2]) + vim.rpcrequest(rcid, 'nvim_input', args[2]) return { should_exit = true, tabbed = false } elseif subcmd == 'expr' then if rcid == 0 then return { errmsg = connection_failure_errmsg('Send expression failed.') } end - local expr = 'string(' .. args[2] .. ')' - local res = vim.fn.rpcrequest(rcid, 'nvim_eval', expr) + local res = tostring(vim.rpcrequest(rcid, 'nvim_eval', args[2])) return { result = res, should_exit = true, tabbed = false } elseif subcmd ~= '' then return { errmsg = 'Unknown option argument: ' .. args[1] } diff --git a/src/nvim/main.c b/src/nvim/main.c index 6a02aa3dae..6ab7391b05 100644 --- a/src/nvim/main.c +++ b/src/nvim/main.c @@ -967,7 +967,6 @@ static void remote_request(mparm_T *params, int remote_args, char *server_addr, os_exit(2); } os_msg(rvobj.data.dictionary.items[i].value.data.string.data); - os_msg("\n"); } else if (strequal(rvobj.data.dictionary.items[i].key.data, "tabbed")) { if (rvobj.data.dictionary.items[i].value.type != kObjectTypeBoolean) { os_errmsg("vim._cs_remote returned an unexpected type for 'tabbed'\n"); diff --git a/test/functional/core/remote_spec.lua b/test/functional/core/remote_spec.lua index 23aab400df..20650bef52 100644 --- a/test/functional/core/remote_spec.lua +++ b/test/functional/core/remote_spec.lua @@ -8,7 +8,6 @@ local exec_lua = helpers.exec_lua local expect = helpers.expect local funcs = helpers.funcs local insert = helpers.insert -local is_os = helpers.is_os local nvim_prog = helpers.nvim_prog local new_argv = helpers.new_argv local neq = helpers.neq @@ -105,10 +104,12 @@ describe('Remote', function() end) it('evaluate expressions', function() - local linesep = is_os('win') and '\r\n' or '\n' - eq({ "function('get')" .. linesep, '' }, run_remote('--remote-expr', 'function("get")')) - eq({ '0' .. linesep, '' }, run_remote('--remote-expr', 'setline(1, "Yo")')) + eq({ '0', '' }, run_remote('--remote-expr', 'setline(1, "Yo")')) + eq({ 'Yo', '' }, run_remote('--remote-expr', 'getline(1)')) expect('Yo') + eq({ '1.25', '' }, run_remote('--remote-expr', '1.25')) + eq({ 'no', '' }, run_remote('--remote-expr', '0z6E6F')) + eq({ '\t', '' }, run_remote('--remote-expr', '"\t"')) end) end) |