equal
deleted
inserted
replaced
246 suggestions(word) |
246 suggestions(word) |
247 } |
247 } |
248 result.getOrElse(Nil).map(recover_case) |
248 result.getOrElse(Nil).map(recover_case) |
249 } |
249 } |
250 |
250 |
251 def complete_enabled(word: String): Boolean = complete(word).nonEmpty |
|
252 |
|
253 def completion(rendering: Rendering, caret: Text.Offset): Option[Completion.Result] = |
251 def completion(rendering: Rendering, caret: Text.Offset): Option[Completion.Result] = |
254 { |
252 { |
255 val caret_range = rendering.before_caret_range(caret) |
253 val caret_range = rendering.before_caret_range(caret) |
256 for { |
254 for { |
257 word <- Spell_Checker.current_word(rendering, caret_range) |
255 word <- Spell_Checker.current_word(rendering, caret_range) |
261 items = |
259 items = |
262 words.map(w => Completion.Item(word.range, word.info, "", List(w, descr), w, 0, false)) |
260 words.map(w => Completion.Item(word.range, word.info, "", List(w, descr), w, 0, false)) |
263 } yield Completion.Result(word.range, word.info, false, items) |
261 } yield Completion.Result(word.range, word.info, false, items) |
264 } |
262 } |
265 } |
263 } |
266 |
|
267 |
264 |
268 class Spell_Checker_Variable |
265 class Spell_Checker_Variable |
269 { |
266 { |
270 private val no_spell_checker: (String, Option[Spell_Checker]) = ("", None) |
267 private val no_spell_checker: (String, Option[Spell_Checker]) = ("", None) |
271 private var current_spell_checker = no_spell_checker |
268 private var current_spell_checker = no_spell_checker |