+ Language const * language = getLanguage(cur, cmd.getArg(1));
+ docstring word = from_utf8(cmd.getArg(0));
+ if (word.empty()) {
+ word = cur.selectionAsString(false);
+ if (word.size() > 100)
+ break;
+ if (word.empty()) {
+ // Get word or selection
+ selectWordWhenUnderCursor(cur, WHOLE_WORD);
+ word = cur.selectionAsString(false);
+ }
+ }
+ WordLangTuple wl(word, language);
+ if (!bv->buffer().params().spellignored(wl)) {
+ cur.recordUndoBufferParams();
+ bv->buffer().params().spellignore().push_back(wl);
+ cur.recordUndo();
+ // trigger re-check
+ WordLangTuple wl;
+ docstring_list suggestions;
+ Paragraph const & par = cur.paragraph();
+ pos_type from = cur.pos();
+ pos_type to = from;
+ par.spellCheck(from, to, wl, suggestions, true, true);
+ }
+ break;
+ }
+
+ case LFUN_SPELLING_REMOVE_LOCAL: {