Powerline: Das Powerline-Standard-Shell-Design zeigt rechts keinen Git-Zweig mehr an

Erstellt am 13. Okt. 2016  ·  15Kommentare  ·  Quelle: powerline/powerline

Hallo,

Ich habe kürzlich powerline in einer neuen Laptop-ArchLinux-Installation installiert und aus irgendeinem Grund das Standard-Shell-Design verwendet. Die Git-Zweige werden nicht mehr rechts vom Terminal angezeigt. Auf meinem Bildschirm ist ziemlich viel Platz, damit er angezeigt wird, aber er wird nicht angezeigt. Ich habe es sogar mit "priority": None versucht, was immer zeigen sollte, aber das hat auch nicht funktioniert.

Powerline-Version : 2.5.1
Betriebssystem : Archlinux
Installiert von : Pacman, dem Paketmanager der Distribution

Ich habe das Standard-Shell-Design in lef.json und einige Änderungen vorgenommen, um sicherzustellen, dass es übernommen wird und die Änderungen übernommen wurden, damit wir sicher sein können, dass Powerline diese Dateien erkennt, analysiert und verwendet.

config.json

{
    "common": {
        "term_truecolor": false
    },
    "ext": {
        "ipython": {
            "colorscheme": "default",
            "theme": "in",
            "local_themes": {
                "rewrite": "rewrite",
                "out": "out",
                "in2": "in2"
            }
        },
        "pdb": {
            "colorscheme": "default",
            "theme": "default"
        },
        "shell": {
            "colorscheme": "default",
            "theme": "lef",
            "local_themes": {
                "continuation": "continuation",
                "select": "select"
            }
        },
        "tmux": {
            "colorscheme": "default",
            "theme": "default"
        },
        "vim": {
            "colorscheme": "default",
            "theme": "default",
            "local_themes": {
                "__tabline__": "tabline",

                "cmdwin": "cmdwin",
                "help": "help",
                "quickfix": "quickfix",

                "powerline.matchers.vim.plugin.nerdtree.nerdtree": "plugin_nerdtree",
                "powerline.matchers.vim.plugin.commandt.commandt": "plugin_commandt",
                "powerline.matchers.vim.plugin.gundo.gundo": "plugin_gundo",
                "powerline.matchers.vim.plugin.gundo.gundo_preview": "plugin_gundo-preview"
            }
        },
        "wm": {
            "colorscheme": "default",
            "theme": "default"
        }
    }
}

lef.json-Thema (im Grunde kopieren Einfügen von default.json für Shell)

{
    "segments": {
        "left": [
            {
                "function": "powerline.segments.shell.mode"
            },
            {
                "function": "powerline.segments.common.net.hostname",
                "priority": 10
            },
            {
                "function": "powerline.segments.common.env.user",
                "priority": 30
            },
            {
                "function": "powerline.segments.common.env.virtualenv",
                "priority": 50
            },
            {
                "function": "powerline.segments.shell.cwd",
                "priority": 10
            },
            {
                "function": "powerline.segments.shell.jobnum",
                "priority": 20
            }
        ],
        "right": [
            {
                "function": "powerline.segments.shell.last_pipe_status",
                "priority": 10
            },
            {
                "function": "powerline.segments.common.vcs.stash",
                "priority": 50
            },
            {
                "function": "powerline.segments.common.vcs.branch",
                "priority": 40
            }
        ]
    }
}

Jede Idee, wie dieses Problem behoben werden kann, wäre sehr dankbar.

VCS support cshell bug

Hilfreichster Kommentar

@LefterisJP ahhh ... habe gerade einige andere Dokumente gefunden, die besagen, dass bash die Eingabeaufforderungen auf der rechten Seite nicht unterstützt. Das erklärt, warum das Standard-Shell-Thema nicht funktioniert hat. Ich werde fortfahren und das Thema default_leftonly verwenden.

Verwenden Sie Bash oder eine andere Shell. Wenn erstere dann ist das wahrscheinlich der Grund, warum es auch bei Ihnen nicht funktioniert.

Alle 15 Kommentare

Was gibt git status aus? Können Sie versuchen, powerline.lib.vcs.guess in einer interaktiven Python-Sitzung manuell auszuführen?

@ s-ol git status und git branch funktionieren wie erwartet. Ich bin in einem Git-Repository.

powerline.lib.vcs.guess funktioniert jedoch nicht in einer interaktiven Python-Sitzung. Zumindest nehme ich an, dass es nicht funktioniert, weil es ein leeres Objekt zurückgibt. Ich weiß nicht viel über Powerline-Interna, also lassen Sie mich es einfach hier für Sie einfügen:

Python2:

Python 2.7.12 (default, Jun 28 2016, 08:31:05)
[GCC 6.1.1 20160602] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import powerline.lib.vcs as vcs
>>> vcs.guess(".", False)
<powerline.lib.vcs.git.Repository object at 0x7f495258aeb0>
>>> a = vcs.guess(".", False)
>>> a.__dict__
{}

Python3:

Python 3.5.2 (default, Jun 28 2016, 08:46:01)
[GCC 6.1.1 20160602] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import powerline.lib.vcs as vcs
>>> vcs.guess(".", False)
<powerline.lib.vcs.git.Repository object at 0x7f93f665ce58>
>>> a = vcs.guess(".", False)
>>> a.__dict__
{}

@LefterisJP Warum denkst du, dass es leer ist? __dict__ ist nicht der einzige Ort, an dem Objektattribute enthalten sein können. Tatsächlich muss es dort keine Attribute geben, die betreffende Klasse verwendet __slots__ .

Diese Funktion konnte kein "leeres" Objekt zurückgeben, sondern entweder das verwendbare Repository oder "Keine".

Sie fragen sich, ob Sie den Daemon nach Änderungen an der Konfiguration neu geladen haben (wenn Sie zsh + zpython verwenden, starten Sie zsh neu oder verwenden Sie powerline-reload-config ).

@ ZyX-I Oh ich verstehe. Wusste nichts über Pythons __slots__ . Dank dafür!

Damit:

>>> a.__slots__
('directory', 'create_watcher')

Ich habe keinen Daemon. Ich habe nur:

source /usr/lib/python2.7/site-packages/powerline/bindings/zsh/powerline.zsh

in meinem .zshrc .

Auf diese Weise funktionierte es lange Zeit auf meinem anderen Computer einwandfrei. Ich glaube nicht, dass ich jemals einen Dämon benutzt habe.

@LefterisJP Hast du das schon gelöst? Interessanterweise werden die Git-Zweige an der Eingabeaufforderung links angezeigt, wenn Sie das Thema default_leftonly.json für die Shell-Konfiguration auswählen. Es sieht so aus, als ob etwas verhindert, dass das richtige Segment auf der Shell angezeigt wird.

@LefterisJP ahhh ... habe gerade einige andere Dokumente gefunden, die besagen, dass bash die Eingabeaufforderungen auf der rechten Seite nicht unterstützt. Das erklärt, warum das Standard-Shell-Thema nicht funktioniert hat. Ich werde fortfahren und das Thema default_leftonly verwenden.

Verwenden Sie Bash oder eine andere Shell. Wenn erstere dann ist das wahrscheinlich der Grund, warum es auch bei Ihnen nicht funktioniert.

Ich benutze zsh und nicht bash. Ich hatte keine Zeit, dieses Problem weiter zu untersuchen, aber es ist immer noch da. Wie Sie auch bei Verwendung von default_leftonly.json bemerkt haben, werden die Zweige links angezeigt, bei der normalen Standardeinstellung jedoch nicht.

gleiches Problem auf Mac OS Sierra, +1

Ich habe gerade Powerline auf meinem Arch installiert und kann bestätigen, dass das Standarddesign keine Git-Zweige anzeigt. Das Wechseln zum Thema default_leftonly behebt das Problem.

Gleiches Problem mit zsh.
Gelöst durch Beenden aller hängenden powerline-daemon -Prozesse.

Der Wechsel zu default_leftonly war auch für mich notwendig, und da ich ansonsten keine Notwendigkeit oder kein Interesse an Anpassungen hatte und die Dokumente größtenteils darauf ausgerichtet sind, habe ich am Ende nur eine Konfigurationsdatei erstellt, um das Thema zu ändern: https://github.com/powerline/powerline/issues/186#issuecomment -247810572 und powerline-daemon -q --replace nach dem Anwenden der Konfiguration (beachten Sie die -q hier, um sie im Hintergrund zu erzeugen!).

Ich habe mein Thema für vim in default_leftonly geändert und immer noch nichts ...

Ich hatte auch große Probleme, die richtige Konfiguration herauszufinden. Nachdem ich es richtig verstanden hatte, schrieb ich diesen Artikel , der mich durch die Einrichtung der Stromleitung führte. Ich hoffe, es hilft.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen