Seite 1 von 1

Kate, Pâté und Python 3

Verfasst: Donnerstag 18. Juli 2013, 05:14
von Malachite
Moin,

ich möchte ein Plugin für Kate in Python 3 schreiben, was Kate laut diesem Blogpost seit KDE 4.10 unterstützt. Sollte es zumindest. Leider weiß ich noch nicht, wie ich Kate beibringe, dass mein Plugin auch in Python 3 geschrieben ist, daher wird es mit Python 2.7 geladen, was zu einem SyntaxError führt, wenn ich solche Sachen wie Funktionsannotationen verwende.

Was ich schon versucht habe:
  • Zuerst natürlich das Offensichtlichste: Die Shebang zu /usr/bin/env python3 ändern.
  • Nachdem das nicht geklappt hat, habe ich mein Plugin mit der Endung .py3 versehen, was dazu geführt hat, dass Kate es ignoriert.
Dann ist mir aufgefallen, dass das Modul PyKate4 überhaupt nicht für Python 3 existiert (haben die Ubuntu-Maintainer gepennt?). Ich weiß nicht ob ein Symlink was bringt, aber selbst wenn, Kate lädt das Plugin immer noch mit Python 2.7.

System:
Python 3.3.1 und 2.7.4
Kubuntu 13.04
Kate 3.10.4 mit KDE 4.10.4

Kann mir jemand helfen?

Re: Kate, Pâté und Python 3

Verfasst: Donnerstag 18. Juli 2013, 08:09
von BlackJack
@Malachite: Kate beziehungsweise das Plugin ist gegen Python 2.7 gelinkt, da kannst Du gar nichts machen. Jedenfalls nichts was den Aufwand rechtfertigen würde. IMHO.

Die meisten Linux-Distributionen gehen noch von Python 2.7 als Standard-Python aus. Python 3 kann man verwenden wenn man nichts weiter benötigt, beziehungsweise sich *sicher* ist, dass schon alles was man für ein Projekt benötigt (auch in naher Zukunft), bereits portiert und leicht verfüg-/installierbar ist. Ansonsten ist Python 3 IMHO noch nicht für den allgemeinen, praktischen Einsatz brauchbar.

Solange sich Python 3 nicht als Standard-Python bei der Mehrzahl der Linux-Distributionen etabliert hat, überwiegen IMHO die Umstände die man damit hat, die wenigen Vorteile von der Version 3.

Re: Kate, Pâté und Python 3

Verfasst: Donnerstag 18. Juli 2013, 12:23
von Malachite
BlackJack hat geschrieben:@Malachite: Kate beziehungsweise das Plugin ist gegen Python 2.7 gelinkt, da kannst Du gar nichts machen. Jedenfalls nichts was den Aufwand rechtfertigen würde. IMHO.
Ich kann also unter Kubuntu kein Kate kompilieren, das gegen Python 3 gelinkt ist? Könnte ich denn Kate unter Arch, das Python 3 als Standard hat, kompilieren und die Binary dann unter Kubuntu verwenden? Gibt es keine Möglichkeit, dass Kate beide Versionen unterstützt? Ansonsten würde ich auf Arch umsteigen, das hatte ich eh vor.

Re: Kate, Pâté und Python 3

Verfasst: Donnerstag 18. Juli 2013, 13:54
von BlackJack
@Malachite: Natürlich kannst Du unter Ubuntu ein Kate kompilieren, aber genau das meinte ich mit dem Aufwand den man nicht rechtfertigen kann. Da hängt ja ein Haufen Abhängigkeiten dran für die Du dann mindestens erst einmal die ganzen Entwicklerpakete installieren musst.

Ein Binary von einer anderen Distribution würde ich nicht verwenden. Wie gesagt, hängen da ein paar Abhängigkeiten dran, und die müssten sich auf beiden Systemen identisch verhalten. Das ist Glücksspiel.

Beide Versionen Unterstützen könnte schwierig werden, denn das Binary muss ja gegen *einen* Python-Interpreter gelinkt werden.

Umstieg auf Arch ist wohl die insgesamt schmerzloseste Lösung. Insbesondere wenn Du das sowieso vor hattest.

Re: Kate, Pâté und Python 3

Verfasst: Donnerstag 18. Juli 2013, 18:31
von Leonidas
Malachite hat geschrieben:Könnte ich denn Kate unter Arch, das Python 3 als Standard hat, kompilieren und die Binary dann unter Kubuntu verwenden? Gibt es keine Möglichkeit, dass Kate beide Versionen unterstützt?
Das wird ziemlich sicher nicht funktionieren, da Arch idR neuere Pakete hat, also die Versionen gegen die das Arch-Kate gelinkt ist können unter Kubuntu nicht aufgelöst werden.

Wenn du Kate für Python 3 kompilieren willst kannst du das machen, aber dann besser auf Ubuntu aus den Ubuntu-Paketquellen die man dann entsprechend anpassen muss.