On Mon, Nov 11, 2013 at 5:57 PM, Sven Brauch <svenbrauch@googlemail.com> wrote:
On Monday 11 November 2013 12:55:06 J. Pablo Martín Cobos wrote:
> Because the pep8,
> pyflakes and parse syntax checker will report errors, because the syntax is
> different in python 2 and python 3.
Okay, I looked a bit more and this is indeed a valid concern.

The problem is that some of the plugins (pep8 and the ipython console, at
least) call straight into the mentioned tools and do something with them, and
the tools (e.g. ipython console) will be the version of the language kate was
linked against.

For most of the tools the solution is imo easy: e.g. pep8 should just be
called as a program and the output should be parsed. It's very simple ... yes,
not as elegant, but who cares.

For ipython however it's less obvious ... I'm not sure how the problem could
be solved here. The only solution I found is based on creating a widget and
then letting a new process draw into the widget, but that sort of sucks
(especially I'm not sure how portable it is). That's more work and more bad
than just keeping the current situation, so not worth it imo.

What I said earlier in the thread was referring only to what language should
be available for writing the plugins, assuming plugins which are just doing
stuff but not actually _importing python tools and using them in-process_.
For this issue, I'm not sure how to proceed. Possibly the "link against both
libs" is indeed the best solution.

Why, exactly, do we need to link against iPython?  Why can't there just be a console that launches iPython, or an html canvas that iPython writes to?