You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I'm using tcsh as my default shell and every time I execute :GoDef, I get the following error:
Error detected while processing function go#def#Jump[18]..go#util#System:
E484: Can't open file /var/folders/gy/y60619bd0t95zcxs326y1f8r0000gn/T/vufGvHW/0
Expected behavior
I would expect that the cursor jumps to the definition of the method or type.
Steps to reproduce:
Create a short program with a simple function and a call to this function, e.g.
package main
func main() {
foo()
}
func foo() {}
Set the shell to tcsh (:set shell='/bin/tcsh'), navigate the cursor to the call of foo in the main function and execute :GoDef.
Configuration
vim version: 7.4
vim-go version: current master
go version: 1.6.2
Problem
The function go#def#Jump builds the command with the use of shellescape. So the filename is surrounded by single quotation marks and the executed system call looks like
guru definition 'foo.go':#123
which seems to produce the error. If the system call would look like
guru definition 'foo.go:#123'
it should run with all major shells (including tcsh).
Possible Solution
I would suggest building the command in the go#def#Jump function with
thank you very much for pushing the change to the master. I played a little bit with :GoDef and it seems to work now.
Actually I would like to avoid switching the shell for Vim. All the features I use are working so far. If there are any major problems in the future which are not fixable that easily, maybe I will consider configuring another shell. Thanks for the information.
Actual behavior
I'm using tcsh as my default shell and every time I execute
:GoDef
, I get the following error:Expected behavior
I would expect that the cursor jumps to the definition of the method or type.
Steps to reproduce:
Create a short program with a simple function and a call to this function, e.g.
Set the shell to tcsh (
:set shell='/bin/tcsh'
), navigate the cursor to the call offoo
in themain
function and execute:GoDef
.Configuration
Problem
The function
go#def#Jump
builds the command with the use ofshellescape
. So the filename is surrounded by single quotation marks and the executed system call looks likewhich seems to produce the error. If the system call would look like
it should run with all major shells (including tcsh).
Possible Solution
I would suggest building the command in the
go#def#Jump
function withinstead. Or do I miss any edge cases?
The text was updated successfully, but these errors were encountered: