<blockquote>
<p>Basic logic looks fine, and I personally like the table driven approach [...]</p>
</blockquote>

<p>To be clear, I didn't mean to imply it was a bad approach or anything, just that it's relatively complex and having it combined in with the other changes makes it more difficult to review, fully understand (especially in the future), or event to back-out specific parts if bugs are found, etc.</p>

<blockquote>
<p>Disagree with <a href="https://github.com/codebrainz" class="user-mention">@codebrainz</a> on the need to split a PR of this size now its not made in steps [...]</p>
</blockquote>

<p>Depends if the intermediate commits exist and were just squashed together or not. If they exist, it's trivial unsplit, otherwise it might arguably be too much hassle.</p>

<p style="font-size:small;-webkit-text-size-adjust:none;color:#666;">—<br>Reply to this email directly or <a href="https://github.com/geany/geany/pull/637#issuecomment-137301459">view it on GitHub</a>.<img alt="" height="1" src="https://github.com/notifications/beacon/ABDrJ5KOoyGj0Xmc0u5NR5S_nmGpIFqFks5ot6MigaJpZM4F1KFb.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/637#issuecomment-137301459"></link>
  <meta itemprop="name" content="View Pull Request"></meta>
</div>
<meta itemprop="description" content="View this Pull Request on GitHub"></meta>
</div>