Since we now all know that Kate is holy (thanks to rms. By accident, he obviously confused Kate with emacs, though) let’s have a look at what’s going on. In the last months Kate development is quite active, so here is a quick update:
- new: on-the-fly spell checking thanks to Michel Ludwig. Highlights include e.g. spell checking in comments of source code or latex parts. Also, constructs like sch\”on work in latex.
- extended scripting support in the command line, more on that later
- more and more mature vi input mode
- lots of bug fixing. quite impressive bug squashing by Pascal Létourneau for more than 4 months now
- lots of refactoring and code cleanups thanks to Bernhard!
- “Find in Files” appears by default again in the tool view,
- “File Browser” uses UrlNavigator, huge code cleanup
- convenience updates of syntax highlighting
- delayed highlighting of code folding ranges to prevent flickering on mouse move
- new command line commands: ‘toggle-header’ in the Open Header plugin. ‘grep’ and ‘find-in-files’
- haskell and lilypond indenter
- much, much more, see commits for details.
Thanks to all contributors involved in Kate development. Keep it up
Christoph just added an awesome and long awaited feature: on-the-fly spellchecking. ‘Kate’s xml highlighting files now have an additional attribute in the itemData section: spellChecking=”true/false”. C++ comments and strings can be spellchecked now Same for all other languages such as Latex. Really big thanks to Michel Ludwig for the patch, good work! Screenshot for latex highlighting:
This blog is mainly about documenting the process how to run Kate Part’s test regression suite and probably not much use for other developers.
Step I: Setup the environment
- create the file ~/.testkateregression. The content of this file is a single line pointing to the folder of the checkout of the test regression suite data. For me this is
- Create the folder where you checkout the suite
- Change to this folder
- Checkout the data:
svn co svn://anonsvn.kde.org/home/kde/trunk/tests/katetests
Now all the data is there for testing.
Step II: Run the test suite
- go to your build directory of kate (e.g. kdelibs/build/kate/tests/
- run the complete suite:
- run specific tests, e.g. for the c indenter:
./testkateregression.shell -t indent/csmart
Just a quicky: I wrote a little plugin for KTextEditor which supplies you with basic error checking when you save documents. Currently only PHP (via
- usual tools for compiling C++, e.g. gcc.
- Qt development packages, i.e. under Ubuntu:
sudo aptitude install libqt4-dev
- KDE 4.2 with development packages for kdelibs and kdebase, i.e. under Ubuntu:
sudo aptitude install kdebase-dev kdebase-workspace-dev kdelibs5-dev. Note: You’ll need the experimental KDE 4.2 packages activated as of now, see for example the Kubuntu news on KDE 4.2 RC1 for hints.
- proper setup of environment variables, read this techbase article for more information. the
.bashrc linked there should be enough for most people
- For PHP support: a PHP executable which supports the
-l switch for linting
Get the sources for the linter plugin from KDE SVN and compile it, using e.g. the functions supplied via the
.bashrc mentioned above:
# go to your development folder
# checkout sources
svn co svn://anonsvn.kde.org/home/kde/trunk/playground/devtools/kte_linter
# build base linter plugin
# build php linter plugin
# update sycoca
# start editor and select the plugins - happy coding!
Support for more languages
If you know good linters drop me a note. But it would be even better if you could write your own linter plugin. It’s pretty easy, take a look at one of the existing plugins for a skeleton & documentation.
Right now each plugin returns a hardcoded list of highlighting-modes which it supports for linting. This should be made configurable so that custom highlighting modes are supported
- make error messages more pretty