{"action":"opened","issue":{"url":"https://api.github.com/repos/universal-ctags/ctags/issues/862","repository_url":"https://api.github.com/repos/universal-ctags/ctags","labels_url":"https://api.github.com/repos/universal-ctags/ctags/issues/862/labels{/name}","comments_url":"https://api.github.com/repos/universal-ctags/ctags/issues/862/comments","events_url":"https://api.github.com/repos/universal-ctags/ctags/issues/862/events","html_url":"https://github.com/universal-ctags/ctags/issues/862","id":145395187,"number":862,"title":"Adding varType TagEntryInfo field from Geany","user":{"login":"techee","id":713965,"avatar_url":"https://avatars.githubusercontent.com/u/713965?v=3","gravatar_id":"","url":"https://api.github.com/users/techee","html_url":"https://github.com/techee","followers_url":"https://api.github.com/users/techee/followers","following_url":"https://api.github.com/users/techee/following{/other_user}","gists_url":"https://api.github.com/users/techee/gists{/gist_id}","starred_url":"https://api.github.com/users/techee/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/techee/subscriptions","organizations_url":"https://api.github.com/users/techee/orgs","repos_url":"https://api.github.com/users/techee/repos","events_url":"https://api.github.com/users/techee/events{/privacy}","received_events_url":"https://api.github.com/users/techee/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2016-04-02T17:13:47Z","updated_at":"2016-04-02T17:13:47Z","closed_at":null,"body":"I'd like to start syncing Geany's ctags with universal-ctags and there are a few things we'd need in universal-ctags in order to have all the functionality we need. One of the things we need is a\r\n\r\nconst char *varType;\r\n\r\nfield in sTagEntryInfo. As the name suggests, it contains a string corresponding to a variable type or a return type of a function. For instance for\r\n\r\n```\r\nchar *foo;\r\n\r\nint bar() {\r\n    return 0;\r\n}\r\n```\r\n\r\nit contains \"char *\" for the variable and \"int\" for the function. We need this info to be able to perform scope-based autocompletion and also the return value of functions for tooltips. This value is non-NULL only for statically typed languages - the currently supported ones in Geany are the languages from c.c and then Pascal, Rust, Go (c.c implementation in Geany diverges quite a lot and I haven't checked how hard it would be to port it to universal-ctags - the other languages should be easy to port).\r\n\r\nIs it OK to add a new field to ctags with this information? I'd prepare a patch doing this. I've also noticed https://github.com/universal-ctags/ctags/pull/857 - one possibility would be to use custom extension field for this info (though the type info should be available for all statically typed languages so quite a big portion so one field defined for all of them might be better).\r\n\r\ncc @b4n "}}