{"action":"created","issue":{"url":"https://api.github.com/repos/the-lambda-church/merlin/issues/296","labels_url":"https://api.github.com/repos/the-lambda-church/merlin/issues/296/labels{/name}","comments_url":"https://api.github.com/repos/the-lambda-church/merlin/issues/296/comments","events_url":"https://api.github.com/repos/the-lambda-church/merlin/issues/296/events","html_url":"https://github.com/the-lambda-church/merlin/issues/296","id":47618486,"number":296,"title":"Record field completion","user":{"login":"dbuenzli","id":485596,"avatar_url":"https://avatars.githubusercontent.com/u/485596?v=3","gravatar_id":"","url":"https://api.github.com/users/dbuenzli","html_url":"https://github.com/dbuenzli","followers_url":"https://api.github.com/users/dbuenzli/followers","following_url":"https://api.github.com/users/dbuenzli/following{/other_user}","gists_url":"https://api.github.com/users/dbuenzli/gists{/gist_id}","starred_url":"https://api.github.com/users/dbuenzli/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dbuenzli/subscriptions","organizations_url":"https://api.github.com/users/dbuenzli/orgs","repos_url":"https://api.github.com/users/dbuenzli/repos","events_url":"https://api.github.com/users/dbuenzli/events{/privacy}","received_events_url":"https://api.github.com/users/dbuenzli/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":3,"created_at":"2014-11-03T17:09:52Z","updated_at":"2015-05-06T12:23:10Z","closed_at":null,"body":"Another issue with merlin completion is record fields. I'd really like the following completions to happen:\r\n```ocaml\r\nmodule A = struct\r\n  type t = { merlin_should_complete : int;\r\n             this_one_aswell : int } \r\n\r\n  let new () = { me<TAB> = ... } \r\n\r\n  let new () = \r\n    let me<TAB> = ... in \r\n    { me<TAB>; }\r\nend\r\n\r\nlet v () = { A.me<TAB>; this_<TAB> (* note no prefix *) }\r\n```\r\n\r\nHere again I note that I was better supported by indiscriminate id lookup. It's nice to be able to reduce the set of completions via types but don't reduce it too much otherwise it becomes counter-productive. Related to #282.\r\n\r\n\r\n"},"comment":{"url":"https://api.github.com/repos/the-lambda-church/merlin/issues/comments/99429026","html_url":"https://github.com/the-lambda-church/merlin/issues/296#issuecomment-99429026","issue_url":"https://api.github.com/repos/the-lambda-church/merlin/issues/296","id":99429026,"user":{"login":"Fourchaux","id":4992512,"avatar_url":"https://avatars.githubusercontent.com/u/4992512?v=3","gravatar_id":"","url":"https://api.github.com/users/Fourchaux","html_url":"https://github.com/Fourchaux","followers_url":"https://api.github.com/users/Fourchaux/followers","following_url":"https://api.github.com/users/Fourchaux/following{/other_user}","gists_url":"https://api.github.com/users/Fourchaux/gists{/gist_id}","starred_url":"https://api.github.com/users/Fourchaux/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Fourchaux/subscriptions","organizations_url":"https://api.github.com/users/Fourchaux/orgs","repos_url":"https://api.github.com/users/Fourchaux/repos","events_url":"https://api.github.com/users/Fourchaux/events{/privacy}","received_events_url":"https://api.github.com/users/Fourchaux/received_events","type":"User","site_admin":false},"created_at":"2015-05-06T12:23:09Z","updated_at":"2015-05-06T12:23:09Z","body":"An extension of the record field completion to the dwim_emacs mode would be very convenient.\r\nFor example : \r\n\r\n         type t = { cafe : int;  bar : string }\r\n         let grossedora = { cafe = 69; bar = \"joe\" }\r\nthen :\r\ng.c  -> grossedora.cafe \r\n                (currently we get g.cafe & g.contents)\r\n\r\nor :\r\n\r\ngr.  -> grossedora.cafe & grossedora.bar \r\n                (currently we get gr.cafe, gr.contents, gr.bar, gr.String (?), gr.List (?)  etc ... ) \r\n\r\nThank you"}}