{"action":"created","issue":{"url":"https://api.github.com/repos/company-mode/company-mode/issues/79","labels_url":"https://api.github.com/repos/company-mode/company-mode/issues/79/labels{/name}","comments_url":"https://api.github.com/repos/company-mode/company-mode/issues/79/comments","events_url":"https://api.github.com/repos/company-mode/company-mode/issues/79/events","html_url":"https://github.com/company-mode/company-mode/issues/79","id":29409385,"number":79,"title":"Merging disparate backends","user":{"login":"dgutov","id":271877,"avatar_url":"https://avatars.githubusercontent.com/u/271877?v=3","gravatar_id":"","url":"https://api.github.com/users/dgutov","html_url":"https://github.com/dgutov","followers_url":"https://api.github.com/users/dgutov/followers","following_url":"https://api.github.com/users/dgutov/following{/other_user}","gists_url":"https://api.github.com/users/dgutov/gists{/gist_id}","starred_url":"https://api.github.com/users/dgutov/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dgutov/subscriptions","organizations_url":"https://api.github.com/users/dgutov/orgs","repos_url":"https://api.github.com/users/dgutov/repos","events_url":"https://api.github.com/users/dgutov/events{/privacy}","received_events_url":"https://api.github.com/users/dgutov/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":12,"created_at":"2014-03-14T03:51:44Z","updated_at":"2015-09-14T10:11:37Z","closed_at":"2014-03-16T05:03:58Z","body":"`company-backends` allows list elements containing several backends. If it sees one, the results from the contained group are merged on an equal basis: if at least one of them returns a non-nil prefix, that prefix is returned, and all completion candidates returned from backends that respond with the same prefix are merged.\r\n\r\nProblem: some backends are tied to specific major or minor modes, and others work in just about any context (like `dabbrev-code`, `keywords` and `yasnippet`). So creating a group containing one of the latter set and putting it at the front of `company-backends` virtually guarantees that no other elements of that list will be ever used.\r\n\r\nProposal: add a keyword that will separate \"primary\" backends from \"secondary\" backends in a group. `company--multi-backend-adapter` will only consider `prefix` results from backends before that keyword, and if all of them return nil, the next element in `company-backends` will be tried.\r\n\r\nWhat name to use for the keyword?\r\n\r\nCurrent candidates: `:secondary`, `:and`, `:skip-prefix`."},"comment":{"url":"https://api.github.com/repos/company-mode/company-mode/issues/comments/140027669","html_url":"https://github.com/company-mode/company-mode/issues/79#issuecomment-140027669","issue_url":"https://api.github.com/repos/company-mode/company-mode/issues/79","id":140027669,"user":{"login":"vspinu","id":1363467,"avatar_url":"https://avatars.githubusercontent.com/u/1363467?v=3","gravatar_id":"","url":"https://api.github.com/users/vspinu","html_url":"https://github.com/vspinu","followers_url":"https://api.github.com/users/vspinu/followers","following_url":"https://api.github.com/users/vspinu/following{/other_user}","gists_url":"https://api.github.com/users/vspinu/gists{/gist_id}","starred_url":"https://api.github.com/users/vspinu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vspinu/subscriptions","organizations_url":"https://api.github.com/users/vspinu/orgs","repos_url":"https://api.github.com/users/vspinu/repos","events_url":"https://api.github.com/users/vspinu/events{/privacy}","received_events_url":"https://api.github.com/users/vspinu/received_events","type":"User","site_admin":false},"created_at":"2015-09-14T10:11:37Z","updated_at":"2015-09-14T10:11:37Z","body":"It's a coherent implementation, and it's easy to program with. From user's prospective, it's all lisp, people are used to nested lists. It should be straightforward to make a nice customization interface for this.\r\n "}}