<p>In <a href="https://github.com/geany/geany-plugins/pull/322#discussion_r48687409">spellcheck/src/speller.c</a>:</p>
<pre style='color:#555'>>  
>    g_return_val_if_fail(sc_speller_dict != NULL, 0);
>    g_return_val_if_fail(doc != NULL, 0);
>    g_return_val_if_fail(line != NULL, 0);
>  
> +  /* add ' (single quote) temporarily to wordchars
> +   * to be able to check for "doesn't", "isn't" and similar */
> +  wordchars_len = scintilla_send_message(doc->editor->sci, SCI_GETWORDCHARS, 0, 0);
> +  wordchars_orig = g_malloc0(wordchars_len + 1);
> +  scintilla_send_message(doc->editor->sci, SCI_GETWORDCHARS, 0, (sptr_t)wordchars_orig);
> +  if (! strchr(wordchars_orig, '\''))
> +  {
> +          GString *wordchars_new = g_string_new(wordchars_orig);
</pre>
<p>depending on whether it's a hot spot, you could also simply add the <code>'</code> to the orig string and truncate the last byte afterward (instead of copying the string)</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-plugins/pull/322/files#r48687409">view it on GitHub</a>.<img alt="" height="1" src="https://github.com/notifications/beacon/ABDrJ1uzA1Je7S0MjPfkJk43ZwQRZD2Sks5pWDE_gaJpZM4G9mOX.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-plugins/pull/322/files#r48687409"></link>
  <meta itemprop="name" content="View Pull Request"></meta>
</div>
<meta itemprop="description" content="View this Pull Request on GitHub"></meta>
</div>