Anzeige:
Ergebnis 1 bis 3 von 3

Thema: [zsh] zshenv, Eigenheiten

  1. #1
    affenkopp
    Registriert seit
    Aug 2003
    Ort
    62.80.113.200#linuxforen.de
    Beiträge
    2.689

    [zsh] zshenv, Eigenheiten

    Gleich von vorne weg: Dies ist kein HowTo wie man die ZShell in allem drum und dran konfiguriert (davon gibt es schon genügend bei google )

    Servus Leute!

    Meine zshenv ist mittlerweile im IRC von Linuxforen.de recht beliebt geworden, hier folgen die Erklärungen wie sich das ganze bedienen lässt.
    Für die die noch nich damit gearbeitet haben: Diese Datei gehört in euer ~


    Erweiterungen
    Completion mit Menü
    Bei mehreren Auswahlmöglichkeiten ist bei den meisten Shells in der Standardconfig ein beep mit den Auswahlmöglichkeiten voreingestellt, allerdings muss man diese dann selbst tippen. Meine Änderung: Bei mehreren Möglichkeiten erhält man ein Menü mit Cursorsteuerung, um einem die Arbeit zu erleichtern.
    Screenshot


    Rekursive Completion
    Die Completion funktioniert auch Rückwärts (Screenshot) und in der Mitte eines Befehls, außerdem werden Rechtschreibfehler nach Möglichkeit korrigiert


    History
    Ist bei der bash in der Basisconfig gang und gäbe, bei der zsh muss sie manuell eingebunden werden. In der vorliegenden Config wird alles nach ~/.history gespeichert und lässt sich von allen zshs des Users mit Shift+Cursor rauf/runter abfragen; ausserdem kann man mit dem Historykürzel !? suchen.
    Mit Ctrl-r wird ein search-Dialog für die History aufgerufen, was einige Leute für komfortabler halten


    Job-Completion
    Bei Job-orientierten Prozessen (z.b. kill, killall und renice) werden die Jobs completet und als Menü dargestellt
    Vorher
    Nachher
    Außerdem werden auch Printerjobs aufgeführt wenn lp* aufgerufen wird.


    AutoCD
    Da cd VERZEICHNIS etwas lang ist, ist es auf VERZEICHNIS gekürzt worden. Hierbei gilt: Befehl hat Vorrang vor Verzeichnis, d.h. wenn ihr ein Verzeichnis "test" habt, geht es nicht, test zu tippen, weil das schon ein Programm ist und dann aufgerufen wird.
    Screenshot
    Außerdem wird bei einem CD nur noch Verzeichnisse und links auf diese angezeigt, Dateien werden ausgeblendet.


    Netz-Completion
    Bei Internet-orientierten Befehlen werden die in /etc/hosts bekannten Hosts completet.
    Screenshot

    Und dann noch ein Paar Bindings um die Arbeit zu beschleunigen
    Del, Ins, Home, End wie üblich eingebunden
    PgUp, PgDown Wort vor/zurück
    Alt-c Wörter tauschen
    Alt-y Buchstaben tauschen
    Alt-1/2 Undo/Redo
    ... ../..
    .... ../../..
    ..... ../../../..
    ...... ../../../../..



    Sind zwar nicht alle eingebauten Features, aber sollte das Arbeiten um einiges beschleunigen


    Eigene Bindings:
    Eigene Tasturkürzel werden in der .zshconfig über "bindkey" eingebunden :
    Code:
    bindkey '^[[3~' delete-char   bzw bindkey 'CODE' AKTION
    Die Tastaturcodes kann man z.B. dadurch herausfinden, dass man aus einer Konsole heraus ein X-abhängiges Programm startet (mein Tip: xeyes ). Mögliche Aktionen bekommt man mit
    Code:
    man zshzle
    in der Konsole.


    Falls Bugs bei der zshenv auftreten oder Änderungen gewünscht sind, PM an mich


    Special Thx to

    MiGo (hat beim Debuggen geholfen)
    Sepp2k (für den Prompt) (ich mein es war Sepp2k, falls das falsch is werd ich das schnellstmöglich korrigieren )
    Netzmeister (für dieses Forum)
    Zhong Shao (für die zsh)


    Thx To

    Jan/WilliaM (dafür dass er mir die config nach nem datencrash wieder gegeben hat/Betatesting)
    AceTheFace
    mehlvogel
    und noch einige andere
    Geändert von Hun (27.08.04 um 19:03 Uhr)
    GPG-KeyID: 0xF9C481FD

  2. #2
    affenkopp
    Registriert seit
    Aug 2003
    Ort
    62.80.113.200#linuxforen.de
    Beiträge
    2.689
    Update

    Eigentlich vorerst nur ein weiteres Binding, Alt-S um das zuletzt getippte Wort zu kopieren (ist sinnvoll um z.B. eine Date.bak zu erstellen)


    Um eigene Funktionen einzubauen/vorhandene zu verändern:
    Schaut euch mal in $fpath um, da sind alle schon vorgefertigten, sind leicht verständlich


    Praktische Funktionen die ich euch nicht vorenthalten will (Standardeinstellung):
    Alt-H: Rufe zum aktuellen Befehl die Manpage auf, führe die Zeile nach schließen der man fort
    Alt-Q: Speichere die aktuelle Zeile in einem Buffer und lösche sie, nachdem der neue Befehl beendet ist fahre mit der vorherigen fort (Nützlich um bei langen Befehlen schnell mal einen kurzen dazwischen zu schieben)


    MFG



    ToDo:
    Mehr Funktionen für Completion schreiben
    Das ganze übersichtlich in .zshrc (für Befehle) und .zshenv (für aliases und variablen) gliedern
    Geändert von Hun (29.11.04 um 16:03 Uhr)
    GPG-KeyID: 0xF9C481FD

  3. #3
    affenkopp
    Registriert seit
    Aug 2003
    Ort
    62.80.113.200#linuxforen.de
    Beiträge
    2.689
    Update

    Diesesmal schön untergliedert in Zshenv und Zshrc
    In der env stehen Variablen und Aliases
    In der rc steht alles um die shell selber einzustellen

    Hinzugefügt

    Mail-Benachrichtigung
    (Bei allen Maildirs, die in der Variable in der zshenv stehen, bekommt man wenn was neues da ist eine selbst definierte zeile - bringt nur was beim Einsatz von fetchmail o.ä.)

    Ein paar zusätzliche Aliases
    (War eigentlich nur zu faul, die rauszunehmen, aber vielleicht haben da noch mehr Leute interesse daran, vor allem das mit irssi ist praktisch wenn man öfter X neu startet..)

    Mathematische Funktionen
    (Relativ einfach, werden wie Shell-Variablen behandelt, nach C-Syntax alles was zwischen $(( )) steht (die Abstände vor und nach den Klammern sind wichtig)

    Erweitertes Auto-CD
    (Kann störend sein, falls nicht gewünscht die Zeile
    Code:
    cdpath=(~ .)
    aus der zshenv entfernen;
    Es wird nach Priorität erst in ein Verzeichnis in ~ gewechselt (brauch ich öfter, ist wahrscheinlich bei vielen anders. Beispiel
    Code:
    /data/foo %  cd t
    /home/hun/t/ %
    Links

    ZSHENV
    ZSHRC




    Viel Spaß an alle
    GPG-KeyID: 0xF9C481FD

Ähnliche Themen

  1. Antworten: 283
    Letzter Beitrag: 31.03.19, 14:13
  2. Red Hat Eigenheiten
    Von Wonderboy im Forum System installieren und konfigurieren
    Antworten: 3
    Letzter Beitrag: 02.06.03, 22:20

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •