Deutsches AutoHotkey Homepage AutoHotkey Community
Wir helfen uns gegenseitig aus der Patsche
 
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   RegistrierenRegistrieren 
 ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

UPath

 
Neues Thema eröffnen   Neue Antwort erstellen    AutoHotkey Community Foren-Übersicht -> Skripte & Funktionen
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Tuncay



Anmeldedatum: 28.10.2006
Beiträge: 127
Wohnort: Berlin

BeitragVerfasst am: Sa Okt 28, 2006 7:53 pm    Titel: UPath Antworten mit Zitat

Hallo, ich stelle mal kurz UPath vor. Es ist eine Bibliothek mit Funktionen, um genau zu sein handelt es sich um eine Hauptfunktion. Es wandelt einen Unix ähnlichen Pfad in einen Windows Pfad um und gibt den absoluten Pfad zurück. Darum geht es hauptsächlich.

Zum Beispiel wird aus einem einfachen Dateiname.txt ein E:\dateien\dokumente\Dateiname.txt. Wenn vor dem Pfad ein "/" steht, dann wird vom aktuellen root (Stammverzeichnis) des Skriptes ausgegangen, z.B. E:\Dateiname.txt. Durch die Angabe von Optionen oder Wildcards hat man einige zusätzliche Möglichkeiten der Verwendung von UPath. Weitere Informationen können sie der englischsprachig gehaltenen manual entnehmen.

Auf der Webseite zu UPath können sie sich auch das Skript samt Testdateien und Dokumentation herunterladen.

Falls es sich als totaler Quatsch entpuppen sollte, werde ich es wieder aufgeben, also bitte schreibt hier eure Meinung rein was ihr davon haltet.

Der Quelltext ist nun zu groß um hier hinein zu passen, also lass ich es nur noch downloadbar.

_________________
Manchmal ist es /falsch/ das "richtige" zu tun.


Zuletzt bearbeitet von Tuncay am Mo Nov 13, 2006 10:21 pm, insgesamt 5-mal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden MSN Messenger
BoBo
Gast





BeitragVerfasst am: So Okt 29, 2006 9:36 am    Titel: Antworten mit Zitat

Respekt. Very Happy

Zitat:
Falls es sich als totaler Quatsch entpuppen sollte, werde ich es wieder aufgeben
Denke nicht das du dies tun solltest. Selbst wenn du mit der Zeit das Interesse an einem Projekt verlierts, könnte es doch als Einstiegspunkt für Andere dienen. Wär doch doof das Rad neu erfinden zu lassen, oder?

Zitat:
Weitere Informationen können sie dem Quelltext entnehmen
Sofern man/frau Englisch kann. Wink
Interesant wäre es zu erfahren welche (Alltags)situation/Aufgabenstellung dich dazu motiviert hat dieses Script zu schreiben. Dem Einen oder Anderen von uns könnte der Verwendungszweck noch etwas unklar sein ...

Danke nochmal. Cool
Nach oben
Tuncay



Anmeldedatum: 28.10.2006
Beiträge: 127
Wohnort: Berlin

BeitragVerfasst am: Di Okt 31, 2006 9:16 pm    Titel: Warum UPath? Antworten mit Zitat

Ja, warum eigentlich? (Schnell Tuncay, denk dir was aus!)^^
Als erstes möchte ich sagen, das UPath aus rein persönlichen Bedürfnissen heraus entstanden ist. Deshalb erwarte ich auch nicht, das es jemand anderem wie mir wirklich von nutzen sein wird (die Hoffnung stirbt zuletzt). Nun denn, „Hallo Welt!“, da ist es trotzdem.
UPath könnte vielleicht diejenigen interessieren, die zum Beispiel eigene Skripten auf portablen USB-Sticks schreiben. Da ich nur aus Internet Cafés aus online bin, beschäftige ich mich mit dem Thema Portabilität viel (Gott sei dank gibt es FirefoxPortable!).

Motivation 1
Ich mag Pfadangaben mit einem Slash („/“ wie unter Unix) mehr wie solche mit einem Backslash („\“ wie unter Windows). Dieser ist (auf Deutschen Tastenbelegungen) einen Tick einfacher einzugeben.
Ok, das kann ja wohl nicht der einzige Grund sein.

Motivation 2
Ursprünglich wollte ich die gesamte Unix/Linux Pfad-Philosophie auf AutoHotkey übertragen. Das wäre für portable Skripten relativ praktisch, da der Wurzelpfad immer mit einem Slash „/“ beginnt. Natürlich kann man das auch in einem Skript per Variablen lösen, aber das erfordert in mancher Hinsicht mehrere Schritte. Es soll einfach die Notation einer Pfadangabe vereinfachen, ohne sich über sonstige AutoHotkey spezifischen Dinge Gedanken zu machen.

Motivation 3
UPath liefert immer den vollständigen Pfad einer Angabe, auch wenn dieser eine relative war. Das ist ein Hauptanwendungszweck für mich, da ich öfters mal den vollständigen Pfad benötigte, auch wenn ich eine relative Angabe gemacht habe. Zum Beispiel wäre es kein leichtes von einer Angabe wie dateiname.txt den Laufwerksbuchstaben herauszufinden. Je nach WorkingDir kann es sogar sehr schwierig werden, wenn man sich nicht die Zeit nimmt um die AutoHotkey-Dokumentation zu studieren. Nun genügt ein einfaches:
Upath(„dateiname.txt“)
Auch werden Wildcards („*“ und „?“) und der „.“ (Punkt für aktuelles Verzeichnis) und „..“ (Doppelpunkt für übergeordnetes Verzeichnis) auch zu einem vollständigem und absoluten Pfad expandiert. Nebenbei wird die Groß- und Kleinschreibung automatisch zu dem Korrigiert, wie es auf der Festplatte gespeichert ist.

Motivation 4
Wenn das angegebene Verzeichnis existiert, dann erhält es immer einen abschließenden Schrägstrich („\“), egal ob dieser vorher mit angegeben war oder nicht. Das ist deshalb nützlich, weil man sich nicht mehr Gedanken darum machen muss, wenn man zum Beispiel mit Variablen Verzeichnispfade zusammen setzt. AutoHotkey ist da nicht immer Konsistent.

Motivation 5
Dadurch das die UPath-Pfadangabe nur aus einem String besteht (außer den Optionen, aber da lasse ich mir noch was einfallen), können sie auch innerhalb von Konfigurationsdateien verwendet werden. Eine UPath unterstützende Anwendung oder Skript kann dann den String ganz einfach auswerten und variablen Bezug nehmen.

Motivation 6
Durch Angabe von Optionen sind komplexeres möglich. Zum Beispiel gibt ein --all alle gefundenen Pfade als eine Semikolon getrennte Liste wieder (nützlich, wenn man Wildcards benutzt). Mit einem --subdirs werden außerdem alle Unterverzeichnisse nach dem Pfad durchsucht. Natürlich lassen sie sich kombinieren.
Weitere Optionen werde ich noch einbauen, sofern diese sinnvoll sind.
Optionen werden als zweites Argument an UPath gegeben, zum Beispiel:
UPath(„/Verzeichnis/*.txt“, „--all“)
_________________
Manchmal ist es /falsch/ das "richtige" zu tun.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden MSN Messenger
BoBo
Gast





BeitragVerfasst am: Di Okt 31, 2006 11:25 pm    Titel: Antworten mit Zitat

Danke für deine Ausführungen. Cool
Nach oben
Tuncay



Anmeldedatum: 28.10.2006
Beiträge: 127
Wohnort: Berlin

BeitragVerfasst am: Di Okt 31, 2006 11:33 pm    Titel: Antworten mit Zitat

Übrigens bitteschön. Smile

Exclamation Achtung: Dieses Skript befindet sich in einem sehr frühen Entwicklungsstadium und enthält Fehler. Ich habe schon ein paar Fehler bereinigt (zum Teil verheerende!) und füge weitere Features hinzu. Benutzt dieses Skript auf keinen Fall in einer Produktiv-Umgebung!
_________________
Manchmal ist es /falsch/ das "richtige" zu tun.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden MSN Messenger
Tuncay



Anmeldedatum: 28.10.2006
Beiträge: 127
Wohnort: Berlin

BeitragVerfasst am: Sa Nov 04, 2006 8:40 pm    Titel: Update Antworten mit Zitat

Endlich habe ich mal wieder mehr Zeit gehabt. So konnte ich das Skript samt manual endlich als neue Version fertig bringen. Die Beschreibung habe ich nun als zurätzliche Textdatei im Archiv gespeichert. Das Skript enthält nun nur noch die Versionsinformationen und den eigentlichen Quelltext.

Hier die Änderungen und Fehlerbeseitigungen in Deutsch:

  • Fehler beseitigt: Wenn beide Optionen auf zusammen angegeben wurden, so wurde nur nach Dateien gesucht.
  • Fehler beseitigt: Manchmal wurde in der Systemvariablen PATH nichts gefunden, wenn nicht zusätlich eine der Optionen "-f" oder "-d" angegeben wurden.
  • Fehler beseitigt: Endlich werden alle Pfade in der Systemvariablen PATH durchsucht, nicht nur das erste gefundene.
  • Fehler beseitigt: Wenn bei einer Pfadangabe ein abschliessendes Slash "/" oder "\" Backslash angehangen wurde und der Pfad existierte, so wurde dieser nicht weiter verarbeitet und als nicht existent angesehen.
  • Fehler beseitigt: Falls keine Option angegeben wurde, so wurde nur nach Dateien gesucht, nicht aber Verzeichnisse. Jetzt wird bei Fehlen von Optionen Dateien und nach Verzeichnissen gesucht.

  • Neu: Optionen können nun in der Kurzform "-as" (statt "-a -s") zusammengefasst werden. Das gilt natürlich für alle Optionen.
  • Neu: Option "-s" b.z.w. "--system" hinzugefügt. Jetzt werden standardmäßig die Systemdateien ausgeblendet und können mit dieser Option erst gefunden werden.
  • Neu: Dokumentation in externe Datei "UPath.man.txt" ausgelagert. Ebenso die History "UPath.history.txt" mit den Informationen jeder Versionsänderungen.
  • Neu: Absolute Windows Pfadangaben die mit einem Laufwerksbuchstaben beginnen, werden nun übernommen und verarbeitet.


Bitte schreibt eure Meinung rein.
_________________
Manchmal ist es /falsch/ das "richtige" zu tun.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden MSN Messenger
Tuncay



Anmeldedatum: 28.10.2006
Beiträge: 127
Wohnort: Berlin

BeitragVerfasst am: Mo Nov 13, 2006 9:11 pm    Titel: Antworten mit Zitat

Hab die Version 0.3 endlich fertig. Es unterstützt nun Reguläre Ausdrücke und ausserdem die RunUPath() Funktion weiterentwickelt. Im englischen Forum habe ich auch einen Thread hierzu erstellt: UPath - More than unix like accessing files and folders
_________________
Manchmal ist es /falsch/ das "richtige" zu tun.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden MSN Messenger
Tuncay



Anmeldedatum: 28.10.2006
Beiträge: 127
Wohnort: Berlin

BeitragVerfasst am: So Nov 26, 2006 5:38 pm    Titel: Update Antworten mit Zitat

Auf Version 0.4 upgedated. Hier einige der Änderungen:

  • Einige Fehler behoben.
  • AutoHotkey version check wird nun nicht mehr gemacht.
  • Neue Option "q" und "--quot" implementiert. Damit werden alle zurückgelieferten Pfade automatisch zwischen doppelten Anführungstriche gesetzt.
  • Den separator " << ", welches reguläre Ausdrücke im Pfad erlaubt, habe ich nun in diese Zeichenfolge " || " geändert. ... wegen XML Dateien ...
  • Neue Option "--envonly" implementiert um nur im PATH zu suchen, wohingegen "--env" so geändert wurde, das damit vorher zusätzlich noch im WorkingDir gesucht wird.
  • RunUPath weiter ausgebaut. Nun nimmer er auch Argumente an die Skripte an und den Wait Befehl um RunWait statt Run zu nutzen.

_________________
Manchmal ist es /falsch/ das "richtige" zu tun.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden MSN Messenger
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    AutoHotkey Community Foren-Übersicht -> Skripte & Funktionen Alle Zeiten sind GMT
Seite 1 von 1

 
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.


Powered by phpBB © 2001, 2005 phpBB Group
Deutsche Übersetzung von phpBB.de