<blockquote>
<p>I agree, but I don't think TM is the right API at present for this purpose. I'm just worried we're boxing ourselves in a corner if we expose a lot of the API and then need to make massive sweeping changes to it in order to accommodate useful APIs for plugins to provide these kinds of features.</p>
</blockquote>

<p>Yes, therefore this PR which aims to improve TM's interface so that it can be up to the task.<br>
We can freely change and improve TM, and do so in backward compatible ways, just as with the rest of Geany.</p>

<p>But, IMO, we definitely need something in Geany that can marshall tags, whether they come from ctags, some advanced llvm based system or some static file (GNU GLOBAL, anyone?). This way we can ensure that competing plugins pay nice and provide a consistent user interface. We can also change just Geany for new tag-related features and not touch every plugin.</p>

<p style="font-size:small;-webkit-text-size-adjust:none;color:#666;">—<br />You are receiving this because you are subscribed to this thread.<br />Reply to this email directly, <a href="https://github.com/geany/geany/pull/1187#issuecomment-242851265">view it on GitHub</a>, or <a href="https://github.com/notifications/unsubscribe-auth/ABDrJ3QJXObWD0_9vHe4xQRGEX0X4fdVks5qj1TvgaJpZM4JqVBL">mute the thread</a>.<img alt="" height="1" src="https://github.com/notifications/beacon/ABDrJ64I7VrvOua7iE4e32PSuAy60DC9ks5qj1TvgaJpZM4JqVBL.gif" width="1" /></p>
<div itemscope itemtype="http://schema.org/EmailMessage">
<div itemprop="action" itemscope itemtype="http://schema.org/ViewAction">
  <link itemprop="url" href="https://github.com/geany/geany/pull/1187#issuecomment-242851265"></link>
  <meta itemprop="name" content="View Pull Request"></meta>
</div>
<meta itemprop="description" content="View this Pull Request on GitHub"></meta>
</div>

<script type="application/json" data-scope="inboxmarkup">{"api_version":"1.0","publisher":{"api_key":"05dde50f1d1a384dd78767c55493e4bb","name":"GitHub"},"entity":{"external_key":"github/geany/geany","title":"geany/geany","subtitle":"GitHub repository","main_image_url":"https://cloud.githubusercontent.com/assets/143418/17495839/a5054eac-5d88-11e6-95fc-7290892c7bb5.png","avatar_image_url":"https://cloud.githubusercontent.com/assets/143418/15842166/7c72db34-2c0b-11e6-9aed-b52498112777.png","action":{"name":"Open in GitHub","url":"https://github.com/geany/geany"}},"updates":{"snippets":[{"icon":"PERSON","message":"@kugel- in #1187: \u003e I agree, but I don't think TM is the right API at present for this purpose. I'm just worried we're boxing ourselves in a corner if we expose a lot of the API and then need to make massive sweeping changes to it in order to accommodate useful APIs for plugins to provide these kinds of features.\r\n\r\nYes, therefore this PR which aims to improve TM's interface so that it can be up to the task.\r\nWe can freely change and improve TM, and do so in backward compatible ways, just as with the rest of Geany.\r\n\r\nBut, IMO, we definitely need something in Geany that can marshall tags, whether they come from ctags, some advanced llvm based system or some static file (GNU GLOBAL, anyone?). This way we can ensure that competing plugins pay nice and provide a consistent user interface. We can also change just Geany for new tag-related features and not touch every plugin."}],"action":{"name":"View Pull Request","url":"https://github.com/geany/geany/pull/1187#issuecomment-242851265"}}}</script>