The spelling check doesn't work on kate and kwrite 5. Reproducible: Always Steps to Reproduce: 1. Try to execute a spelling check to a file. Console output: katepart: katepart: katepart: new range: [ (0, 0) -> (1, 0) ] katepart: old range: [ (0, 0) -> (0, 0) ] katepart: [ (1, 0) -> (1, 0) ] katepart: [ (0, 0) -> (0, 11) ] katepart: KTextEditor::DocumentPrivate(0x961d400) [ (0, 0) -> (0, 10) ] katepart: KTextEditor::DocumentPrivate(0x961d400) [ (0, 0) -> (0, 10) ] "en_US" katepart: added [ (0, 0) -> (0, 10) ] "en_US" to the queue, which has a length of 1 katepart: katepart: erasing range QPair([(0, 0) -> (0, 10) ] , "en_US" ) katepart: added [ (0, 0) -> (1, 0) ] katepart: exited as there is nothing to do katepart: KTextEditor::DocumentPrivate(0x961d400) [ (0, 0) -> (1, 0) ] katepart: [ (0, 0) -> (1, 0) ] katepart: KTextEditor::DocumentPrivate(0x961d400) [ (0, 0) -> (0, 10) ] katepart: KTextEditor::DocumentPrivate(0x961d400) [ (0, 0) -> (0, 10) ] "en_US" katepart: added [ (0, 0) -> (0, 10) ] "en_US" to the queue, which has a length of 1 katepart: for the range [ (0, 0) -> (0, 10) ] katepart: [ (0, 0) -> (0, 10) ] katepart: next spell checking "dictioarri" SpellerPlugin *HunspellClient::createSpeller(const QString &language) ; "en_US" HunspellDict::HunspellDict( const QString& lang ): "en_US" dddddd 0xae0ec90 SpellerPlugin *HunspellClient::createSpeller(const QString &language) ; "en_US" HunspellDict::HunspellDict( const QString& lang ): "en_US" dddddd 0xae16470 SpellerPlugin *HunspellClient::createSpeller(const QString &language) ; "en_US" HunspellDict::HunspellDict( const QString& lang ): "en_US" dddddd 0xae16308 SpellerPlugin *HunspellClient::createSpeller(const QString &language) ; "en_US" HunspellDict::HunspellDict( const QString& lang ): "en_US" dddddd 0x9f77660 SpellerPlugin *HunspellClient::createSpeller(const QString &language) ; "en_US" HunspellDict::HunspellDict( const QString& lang ): "en_US" dddddd 0xae161b8 SpellerPlugin *HunspellClient::createSpeller(const QString &language) ; "en_US" HunspellDict::HunspellDict( const QString& lang ): "en_US" dddddd 0x9f77f50 katepart: on-the-fly spell check done, queue length 0
Can also confirm it's happening on Kubuntu Vivid, with Kate 5.0.0 using KDE Frameworks 5.7.0. Here's the console output (for opening Kate, typing something and activating Automatic Spell Check): kf5.kiconthemes: "Theme tree: (Breeze)" QObject::disconnect: No such slot KRecursiveFilterProxyModel::_q_sourceDataChanged(QModelIndex,QModelIndex,QVector<int>) The font for use in the terminal has not been matched exactly. Perhaps it has not been found properly. The font for use in the terminal has not been matched exactly. Perhaps it has not been found properly. HunspellClient::HunspellClient katepart: created QObject::connect: No such signal KateBuffer::respellCheckBlock(KTextEditor::DocumentPrivate*,int,int) katepart: katepart: katepart: katepart: new range: [ (0, 0) -> (1, 0) ] katepart: old range: [ (0, 0) -> (0, 0) ] katepart: [ (1, 0) -> (1, 0) ] katepart: [ (0, 0) -> (0, 14) ] katepart: KTextEditor::DocumentPrivate(0x962380) [ (0, 0) -> (0, 14) ] katepart: KTextEditor::DocumentPrivate(0x962380) [ (0, 0) -> (0, 14) ] "" katepart: added [ (0, 0) -> (0, 14) ] "" to the queue, which has a length of 1 katepart: katepart: erasing range QPair([(0, 0) -> (0, 14) ] , "" ) katepart: added [ (0, 0) -> (1, 0) ] katepart: exited as there is nothing to do katepart: KTextEditor::DocumentPrivate(0x962380) [ (0, 0) -> (1, 0) ] katepart: [ (0, 0) -> (1, 0) ] katepart: KTextEditor::DocumentPrivate(0x962380) [ (0, 0) -> (0, 14) ] katepart: KTextEditor::DocumentPrivate(0x962380) [ (0, 0) -> (0, 14) ] "" katepart: added [ (0, 0) -> (0, 14) ] "" to the queue, which has a length of 1 katepart: for the range [ (0, 0) -> (0, 14) ] katepart: [ (0, 0) -> (0, 14) ] katepart: next spell checking "sdfsdfsdfsdfds" katepart: on-the-fly spell check done, queue length 0
I can't reproduce this. Is the other spellcheck functionality working? When you try to switch language, do you see languages in selection or is it empty?
I can see the languages listed. http://i.imgur.com/N7PRHFD.png
Is spellcheck "dialog" working? I.E. does it find the problematic words? It might be problem in KF5, not directly in kate/kwrite. Is there a way to test the spellcheck in another KF5 application?
No it doesn't work. Tested for Kate and Kwrite. Can you name any other application using the same spelling mechanism?
I can also see the list of languages in the `dictionary` selector, and select different ones, but with the same result (eg. no words underlined regardless of what I type). The Spellcheck dialog is working and finding wrong words correctly. The only broken part seems to be the `on-the-fly spell check` that's supposed the underline wrong words. I'm running Konversation version 1.6-beta1 based on KDE Frameworks 5.7.0, and the on-the-fly spell check is working there. If you type wrong words in the text input, they are underlined. So it seems to be related only to ktexteditor.
This is a problem with current implementation using QSaveFile to write data. That one is using QTemporaryFile and that one is forcing new file to be created with 0600 rights, which makes sense for temporary file. There is no way I can see to tell the QTemporaryFile(Engine) to create file with different rights. So the only way IMHO to circumvent this would to compute the correct rights after the KTE is trought saving.
Oh, crap wrong window:) Sorry guys:)
I can say without a doubt, SpellCheck does Not work in opensuse 13.1 distro of KDE. My kate version is: # kate --version Qt: 4.8.6 KDE Development Platform: 4.14.4 Kate: 3.14.4 * in yast, Kate is reported as ver: 4.14.3-1.31 libktexteditor - Advanced Text Editor library version: 4.14.3-1.31 (i think) I have hunspell, ispell, ipsell-american installed and in 'Configure Kate' > Spelling it looks to be using Engish (US of A)
What is the status on this bug? It's a pretty major regression in functionality, and I'm confused why it's not getting more attention.
On-the-fly-spell checking _setting_ is/was broken in Frameworks 5.7 A temporary fix is committed in master to read the setting, but a proper fix needs changes in Sonnet. I have a review request for Sonnet pending. Spellchecking works otherwise here. Landis: Your problem is probably a distro/config problem, because spellchecking works in Kate in Kubuntu as far back as I remember :)
@Kåre Särs - You are correct. Manually initiating a spell check works fine. It's just on-the-fly checking which does not work.
I have the same issue with spell checking in Fedora 22 KDE, with Plasma 5. Spell checking doesn't work with kate, konversation or any kde apps. I use kf5-sonnet 5.10.0
This bug is still there. Archlinux kf5 5.14.1 kmail 15.08.1 Autospellcheck in kmail does not work. Manual spell check works.
Is this still an issue with current Frames 5.21 and KWrite/Kate?
Works for me now. Kate 15.12.3. KDE Frameworks 5.20.0 Arch
Has been working for some time on my system, too. Arch Linux, Kate 15.12.3, Frameworks 5.21.0 It also works in KWrite and KMail 5.1.3.
Works here too. Arch Linux with: Kate 16.04.0 KDE Frameworks 5.21.0 Qt 5.6.0 (built against 5.6.0) KMail 5.2.0
Tools->Spelling->Spelling works for me, but Automatic Spell Checking still does not work. Kubuntu packages. Kate 15.12.3 Kate Part Version 5.21.0 Using: KDE Frameworks 5.21.0 Qt 5.5.1 (built against 5.5.1) The xcb windowing system
Neither automatic nor manual spell checking works (german spell checking) Arch Kate 16.04.0 Frameworks 5.21 Qt 5.6 I didn't check for Qt5.5
For me it was a font issue. Automatic spellchecking (English) works just fine with the DejaVu font, but not with the Hack font. Manual checking works with any font. Arch Kate 16.04 / Kile Git Frameworks 5.21 Qt 5.6
(In reply to Alex from comment #21) > For me it was a font issue. Automatic spellchecking (English) works just > fine with the DejaVu font, but not with the Hack font. Manual checking works > with any font. > > Arch > Kate 16.04 / Kile Git > Frameworks 5.21 > Qt 5.6 Thank you so much for that info, Alex! I have been suffering from lack of spellcheck highlighting in Kate since Kate 15.10 and continuing into 16.04 (I'm using Kubuntu). I had set my default system font to Liberation Sans, and that turned out to be the cause of no spellcheck highlighting in Kate. I've now set my default font in Kate to Noto Mono, and highlighting works again. Really glad to have got this annoying problem fixed at last!
Same here, automatic spell checking working/not working depends on font. Liberation Mono doesn't work, DejaVu Sans Mono does. However, i should add that even with Liberation autochecking works for some lines: those that have dynamic word wrap continuation and aren't bold. // debian sid, kate 15.08.3, kde frameworks 5.16.0, qt 5.5.1
Hello: I've done some tests of the automatic spell checking in Kate, in different distributions, using the "British English" dictionary. And these are my results: Kubuntu 16.04 ..................... Sonnet 5.18.0 ......... Behaves buggy Kubuntu 16.04 + Backports PPA ..... Sonnet 5.22.0 ......... Behaves buggy Fedora 24 ......................... Sonnet 5.22.0 ......... It (almost) does not work Manjaro 2016-06-25 ................ Sonnet 5.23.0 ......... It (almost) does not work Where I say "Behaves buggy", I mean the following: Right words are not marked ............................................. OK Wrong words (like "ddff") are marked ................................... OK Wrong words that look like right words (such as "copolo") are marked ... WRONG So, if I input words like "tetete" or "macoco", which doesn't exist in English, the spell checker accepts them. It's really weird. Where I say "It (almost) does not work", I mean that it marks some words randomly, in an erratic way. So in this state, this functionality is useless. In all cases I've installed all the available dictionaries of the language (myspell, aspell, hunspell). Changing the font hasn't had any effect in my case.
negora: How is marking "copolo" as a spelling error wrong? I'm running Kubuntu 16.04 with KDE Neon packages and "copolo", "tetete" and "macoco" are marked as spelling mistakes as they should.
Kåre Särs: I'm sorry, but I didn't explain myself very well. Where it said "WRONG", it should have said "FAILS". I didn't mean that marking that words as spelling errors were wrong. What was wrong was not marking them, of course. In all the distributions that I mentioned, this thing failed. Could you tell me which versions of Kate and Sonnet are currently packaged in KDE Neon? That way, I could open a ticket in the respective bug report systems of the other distributions.
After many attempts, I've found out the cause of my problem with the automatic spell checker. The distributions that I've tested have an option enabled by default in "System Settings" -> "Regional Settings" -> "Spell Check". It's called "Enable autodetection of language", and it's supposed to allow the spell checking in documents or fragments with words in multiple languages, simultaneously. However, even when I only had the English dictionaries installed in my system, the spell checking didn't work well. As I already said, It accepted words that aren't right words in British English, which is the language of my system. Some minutes ago, I've tried to disable this option, and the spell checking has started to work fine. So, Is it a bug in the auto-detection of the language? Or is it the expected behaviour? (because of something that I still don't know). Thank you.
Please check for this bug in your kwrite https://bugs.kde.org/show_bug.cgi?id=366291 And vote
Problem with line height :/ *** This bug has been marked as a duplicate of bug 335988 ***