_LHarc-Shell 3.10 ½1994 by Christian Grunenberg Fr die einwandfreie Funktionalit„t der Shell sowie LHarc kann und will ich nicht garantieren und bernehme daher keinerlei Verantwortung fr Sch„den jeglicher Art, die von der Shell oder LHarc verursacht werden. Die Benutzung dieser Utilities erfolgt auf eigene Gefahr! _~šbergabe-Parameter beim Programmstart: Wird der Shell beim Aufruf ein Archiv bergeben, z.B. indem die Shell im Desktop als Anwendung fr LZH-Archive angemeldet wurde, so wird sofort das Inhaltsverzeichnis des Archivs in der Shell angezeigt. Durch Drcken einer der Shift-Tasten wird dieses Archiv sofort unter Be- achtung der eingestellten Optionen und Pfade entpackt. _~Funktionen der Menleiste: --- _~Bedeutung und Bedienung der Elemente der Verzeichnis-Fenster: ~ Ordner-/Datei-Eintrag: -> Einfack-Klick: Eintrag (de-) selektieren => Block(de-)selektion durch Gedrckthalten der Maustaste -> Doppel-Klick auf Datei-Eintrag: Informationen anzeigen Archiv-Eintrag: Archiv einlesen Ordner-Eintrag: Ordner ”ffnen ~ Zeichen vor Dateinamen:  => Ordner  => LHarc-Archiv ã => verschlsselte Datei * => Datei mit Kommentar  => Datei mit 'Nur lesen'-Status Uhrensymbol: Datei-Datum gleich aktuelles Datum Helle Darstellung: Datei mit 'Hidden'- oder 'System'-Attribut ~ Archiv-Titelzeile: -> Einfach-Klick: Verzeichnis neu einlesen -> Doppel-Klick : Archiv-Informationen anzeigen ~ Laufwerks-Titelzeile: -> Einfach-Klick: Verzeichnis und freien Speicherplatz neu einlesen -> Doppel-Klick : Laufwerks-Informationen anzeigen ~ '' = Closer-Button: -> Einfach-Klick: in bergeordnetes Verzeichnis wechseln -> Doppel-Klick : in Wurzelverzeichnis wechseln => befindet man sich bereits im Wurzelverzeichnis, so wird der File- selector aufgerufen, in dem man den neuen Pfad setzen kann ~ '' = Select-Button: -> sind bereits alle Dateien selektiert, so deselektiert ein Klick auf diesen Button alle Dateien -> sind nur einzelne oder keine Dateien selektiert, so selektiert ein Klick auf diesen Button alle Dateien ~ '' = Deselect-Button: -> alle Dateien deselektieren _~Optionen/Funktionen der Shell: Hinter den meisten Optionen bzw. Kommandos stehen (teilweise in Klammern) die entsprechenden LHarc-Schalter bzw. -Kommandos, sofern es entsprechende M”glichkeiten in der TTP-Version gibt. Hierdurch sollten die Zusammenh„nge zwischen den beiden Versionen deutlich werden. Mit Hilfe der Suchen-Funk- tion ist es so m”glich, die entsprechenden Punkte in der Anleitung aufzu- suchen. __Haupt-Dialog: ~ 'Add-Mode': (s.a. LHarc-Anleitung,'Kommandos') -> Auswahl des Einpack-Kommandos ~ 'Encryption': (LHarc-Option '-Y') -> Dateien beim Ein-/Auspacken ver-/entschlsseln (Pažwort-Schutz) ~ 'Overwrite': (LHarc-Option '-c') -> bereits vorhandene Dateien mit gleichem Namen beim Ein-/Auspacken berschreiben ~ 'Recursive subdirectories': (LHarc-Option '-r') -> Einpacken: Unterverzeichnisse ebenfalls durchsuchen und einpacken -> Auspacken: Ursprngliche Ordnerstruktur wieder herstellen __LHarc-Options: ~ 'Set archive date to newest file included': (LHarc-Option '-t') -> setzt das Dateidatum des Archivs auf das Datum der neuesten Datei im Archiv ~ 'No message at query (e.g. deletes)': (LHarc-Option '-m') -> keine Sicherheitsabfragen (z.B. beim L”schen oder šberschreiben von Dateien) ~ 'Move files (delete original files)': (LHarc-Option '-d') -> Originaldateien nach dem Kommando l”schen (auch beim Auspacken!) ~ 'Display free disk space also on TOS 1.0/1.2': -> freien Speicherplatz auf dem Laufwerk auch vor TOS 1.4 anzeigen ~ 'Working directory': (LHarc-Option '-w') -> Arbeitsverzeichnis fr tempor„res Archiv ~ 'Header': (LHarc-Option '-k') -> Format der Datei-Header im Archiv ~ 'Unix-compatible': (LHarc-Option '-s') -> Unix-kompatible Archiv-Header erzeugen __Shell-Options: ~ 'Sort by': -> Auswahl des Sortier-Kriteriums ~ 'Sort backwards': -> Rckw„rts sortieren ~ 'Memory': (LHarc-Option '-L') -> Speicherbedarf bzw. Gr”že der Buffer pro Datei konfigurieren: 'Minimal': 24 KB, kein zus„tzlicher Speicher erforderlich 'Medium': 24 KB bis 128 KB, der gesamte Speicherbedarf bleibt aber grunds„tzlich unter 50% des freien Speichers 'Maximum': 24 KB bis 512 KB, maximal 1.5 MB Speicherbedarf Zus„tzlich werden noch evtl. bis zu 150 KB fr den Einpackalgo- rithmus ben”tigt. ~ 'Indicator': (LHarc-Option '-n') -> Auswahl des Prozež-Indikators ~ 'Display': -> Auswahl des Datei-Viewers (Shell, externer Viewer oder View- Protokoll) ~ 'Viewer': -> (externer) Datei-Viewer ~ 'Concurrently': -> Datei-Viewer unter Multi-Tasking parallel starten ~ 'Use VA_START': -> Ist der Viewer bereits im Speicher vorhanden (z.B. durch Parallel- Start unter Multi-Tasking oder als Accessory unter TOS), so wird an diesen nur die Meldung VA_START zum Anzeigen der Datei gesendet ~ 'Wildcards case-sensitive': (LHarc-Option '-S') -> Grož-/Kleinschreibung der Dateinamen und Wildcards wird beachtet ~ 'Turbo-Mode': -> Umschalten auf einen besonders schnellen Modus, bei dem allerdings kein Abbruch von Funktionen m”glich ist und mehr Speicher ben”tigt wird ~ 'Go in the curr. dir. on startup': -> aktuelles Verzeichnis nach Programmstart anzeigen ~ 'Fileselector on startup': -> Fileselector nach Programmstart aufrufen ~ 'Close and quit': -> die Shell wird beendet, nachdem das letzte Fenster geschlossen wurde ~ 'Auto-save settings': -> die Einstellungen werden beim Programmende automatisch gesichert __Dialog-Options: ~ 'Dialogs': -> Wahl zwischen 'Fliegenden Dialogen' und Fensterdialogen ~ 'Color': -> Farbe des Dialog-Hintergrunds ~ 'Pattern': -> Muster des Dialog-Hintergrunds ~ 'Dialogs to mouse': -> Dialoge zur Mausposition ~ 'Save pos. of main-dialog': -> Position des Haupt-Dialoges speichern, so daž dieser beim n„chsten Programmstart an der gleichen Stelle ge”ffnet wird ~ 'Draw grow/shrink boxes': -> sich vergr”žernde/verkleinernde Boxen beim ™ffnen/Schliežen von Fenstern/Dialogen zeichnen ~ 'Titles with frame': -> šberschriften umrahmen ~ 'Small titles': -> Kleine Schrift fr šberschriften __Extract-Options: ~ 'Destination': (LHarc-Option '-g') -> Zielverzeichnis beim Auspacken w„hlen: 'Curr. dir.': aktuelles Verzeichnis 'Automatic': automatische Wahl zwischen 'Curr. dir' und 'Folder' 'Folder': Ordner mit Archivnamen ~ 'Don't set time and date': (LHarc-Option '-i') -> Zeit und Datum von ausgepackten Dateien werden nicht auf die Originalwerte gesetzt ~ 'Done set attributes': (LHarc-Option '-i') -> Attribute von ausgepackten Dateien werden nicht auf Originalwert gesetzt ~ 'No crc-check': (LHarc-Option '-C') -> Prfsummenbildung beim Auspacken/Testen von Dateien ausschalten, so daž auch defekte Dateien ausgepackt werden k”nnen __Compress-Options: ~ 'Clear archive-bit': (LHarc-Option '-b') -> Archiv-Bit nach Einpacken der Dateien l”schen ~ 'Only changed files': (LHarc-Option '-y') -> nur Dateien mit gesetztem Archiv-Bit (=die Datei wurde ver„ndert) einpacken ~ 'Any file-attribute': (LHarc-Option '-a') -> Dateien mit beliebigem Datei-Attribut, also auch versteckte sowie System-Dateien, einpacken, wobei die Option 'Only changed files' weiterhin beachtet wird. ~ 'File newer than date': (LHarc-Option '-N') -> nur Dateien jnger als Datum einpacken ~ 'Store uncompressed': (LHarc-Option '-U') -> die angegebenen Dateien werden ungepackt archiviert (sinnvoll bei bereits vorgepackten Dateien) ~ 'Algorithm': (LHarc-Optionen '-u','-4','-o','-l','-5') -> Auswahl des Pack-Algorithmus ~ 'Force compression': (LHarc-Optionen '-o2','-l2','-52') -> Kompression auch dann erzwingen, wenn die komprimierte Datei l„nger als das Original ist __Font: ~ 'Font': -> Auswahl des Zeichensatzes fr Verzeichnisfenster/Anzeigefenster ~ 'Size': -> Gr”že des Zeichensatzes in Punkt ~ 'Tabulator': -> Tabulatorweite einstellen, keine Tabulatoren-Expansion durch '0' __Search string: ~ 'Position': -> ab aktueller Position ('Cursor') bzw. ab Anfang ('Global') suchen ~ 'Backwards': -> Rckw„rts suchen ~ 'Ignore case': -> Grož-/Kleinschreibung ignorieren ~ 'Whole word': -> nach kompletten W”rtern suchen (nur im Text-Modus anw„hlbar) _~Bedienung: _EnhancedGEM-Dialoge: ~ Allgemein: -> Dialoge im Hintergrund k”nnen mit der Maus bedient werden, wenn zus„tzlich die rechte Maustaste gedrckt wird. -> fliegende Dialoge springen zur Mausposition bei Mausklick aužer- halb des Dialogs ~ Hotkeys: -> in Dialogen mit Edit-Feldern muž zur Aktivierung eines Hotkeys zus„tzlich die Alternate-Taste gedrckt werden -> in Popups und Dialogen ohne Edit-Felder kann die Alternate- Taste optional gedrckt werden -> durch zus„tzliches Drcken einer Shift-Taste wird ein Doppel- klick simuliert ~ erweiterte Eingabem”glichkeiten in EDIT-Feldern: -> exakte Cursorpositionierung per Maus -> Sprung zum ersten/letzen Eingabefeld (Home/Shift-Home, Shift-Up/Down) -> Wort vor/zurck (Ctrl-Left/Right) -> Sprung zum Anfang/Ende des Eingabesfeldes (Shift-Left/Right) -> vorheriges Eingabefeld (Shift-Tab/Shift-Enter/Shift-Return/Up) -> n„chstes Eingabefeld (Tab/Enter/Down) -> Eingabefeld l”schen (Escape) -> Eingabefeld hinter Cursor l”schen (Shift-Delete) -> Eingabebox fr Sonderzeichen (Shift-Insert) -> History-Funktion der letzten eingegebenen Texte -> Ctrl-Up/Down => mit Shift-Taste: Text im History suchen -> Clipboarduntersttzung: -> Ctrl-X: Text ausschneiden und in Clipboard legen -> Ctrl-C: Text in Clipboard ablegen -> Ctrl-V: Text einfgen => mit Shift-Taste: Text an Clipboard/EDIT-Feld anh„ngen ~ Popup-Mens: -> Cursor Left/Up: vorheriger Eintrag -> Cursor Right/Down: n„chster Eintrag -> Home/Shift-Home: erster/letzter Eintrag -> Escape/Undo: Abbruch -> Space/Return: Auswahl des aktuellen Eintrags _Haupt-Dialog: ~ 'List'/'Path': Die Wildcards bzw. Pfade in den Popups 'List' bzw. 'Path' im Hauptdialog k”nnen durch Anwahl eines Eintrags mit gedrckter Shift-Taste bzw. durch einen Doppelklick mit dem aktuellen Wert belegt werden. Die Eintr„ge k”n- nen durch Abspeichern der Konfiguration dauerhaft gesichert werden. Zum Aufrufen dieser Popups ber den Hotkey muž zus„tzlich eine Shift-Taste gedrckt werden, ansonsten wird nur der Editcursor entsprechend gesetzt. Ebenso fhrt ein Einfach-Klick in den Editbereich nur zu einer Positio- nierung des Eingabe-Cursors, zum Aufruf der Popups muž ein Doppelklick bzw. ein Einfach-Klick aužerhalb des Edit-Bereichs erfolgen. ~ 'Extract'/'Compress': Durch Anwahl der Buttons 'Extract' bzw. 'Compress' durch einen Doppel- klick oder ber Shift-Alternate-Hotkey k”nnen die Popups 'Destination' sowie 'Compress' aufgerufen werden, sofern nicht die Dialoge 'Extract-Options' bzw. 'Compress-Options' ge”ffnet sind. _Bedienung der Anzeige-Funktion: Cursor-Up/Down -> Zeile hoch/runter Cursor-Left/Right -> Spalte links/rechts Shift-Cursor-Up/Down -> Seite hoch/runter Shift-Cursor-Left/Right -> Seite links/rechts Home/Shift-Home -> Anfang/Ende des Textes Maus-Klick -> Block deselektieren Gedrckthalten der Maustaste -> Block selektieren _~Geschwindigkeit: Durch eine optimale Wahl der eingestellten Parameter l„žt sich die Ge- schwindigkeit der Shell etwas erh”hen, v.a. beim Auspacken oder Testen von Archiven. Dazu sollte der 'Indicator' auf `None', 'Memory' auf 'Maximum' und 'Dialogs' auf 'Flying' eingestellt werden. Alternativ kann auch die Option 'Turbo-Mode' gesetzt werden, wobei es dann aller- dings nicht mehr m”glich ist, Packer-Funktionen abzubrechen. _~View-Protokoll: Die LZH-Shell untersttzt eine Reihe moderner Kommunikationsprotokolle wie z.B. XAcc-2, AV, View oder Drag & Drop. Durch diese Protokolle wird Kommunikation sowie Datenaustausch zwischen verschiedenen Anwendungen erm”glicht, z.B. k”nnen Accessories unter TOS Tastendrcke an die Haupt- applikation weiterreichen, wenn sie den Tastendruck nicht ben”tigen. Mit Hilfe des View-Protokolls wurde ein Standard verabschiedet, der den Aufruf von externen Dateiviewern fr den Programmierer vereinfachen und die M”glichkeiten fr den Anwender erweitern soll. Was sind nun die Vor- teile dieses Protokolls? Ist ein Datei-Betrachter, der diesen Standard untersttzt, im Speicher geladen - sei es als Accessory unter TOS oder auch als Anwendung unter MultiTasking - so meldet sich dieser bei der LZH-Shell bzw. die Shell sucht den Dateibetrachter. Anhand dieser Meldung erkennt z.B. die Shell, welche Dateien der Dateiviewer darstellen kann und entscheidet dann selbst„ndig, ob der Viewer aufgerufen wird oder die interne Anzeige- funktion bzw. eine externer Viewer verwendet wird. Leider ist es jedoch so, daž bisher nur sehr wenige Programme diesen Standard untersttzen (z.B. ShowImage, GEM-View oder 'Zeig's mir'). Des- wegen untersttzt die Shell auch „ltere Versionen obiger Programme, die das Protokoll noch nicht untersttzten, sowie 1stView und 1stGuide, um die verbreitesten Dateiviewer ansprechen zu k”nnen. Damit die Shell auch dann den Dateiviewer findet, wenn dieser noch nicht im Speicher vorhanden ist, muž entweder die Environment-Variable 'View' (Grož-/Kleinschreibung beachten!) auf den Pfad des Viewers gesetzt werden oder der Dateiviewer ber die Option 'Viewer' angegeben werden, wobei letztere L”sung fr den Anwender sicherlich einfacher ist, aber nur mit der LHarc-Shell funktioniert. Die Shell l„dt dann den Dateiviewer nach. Empfehlenswert ist es allerdings, den Viewer immer geladen zu haben (z.B. als Accessory), da es nur so immer m”glich ist, die M”glichkeiten des View-Protokolls auszunutzen. In diesem Fall muž auch keine Environment- Variable gesetzt werden. Unter Multi-Tasking k”nnen auch Viewer als externe Applikation angemeldet werden, die die Meldung VA_START verstehen und parallel gestartet werden. (Option 'Concurrently') Ist der Viewer noch nicht geladen, wird er paral- lel gestartet und bei weiteren Aufrufen wird nur noch die Meldung VA_START an den Viewer geschickt. Diese Kommunikation ist zwar nicht so leistungs- f„hig wie das View-Protokoll, aber einfacher fr den Anwender. _~AV-Protokoll: Die LZH-Shell versteht die Nachricht 'VA_START' (sowie einige weitere Nachrichten, die aber fr den Anwender uninteressant sind), so daž mit dieser Nachricht Archive an die Shell bergeben werden k”nnen. Daher sol- lte die Shell im Desktop bzw. anderen Oberfl„chen (z.B. Gemini oder Chat- win) so angemeldet werden, daž VA_START verwendet wird, wenn die Shell unter MultiTasking bereits im Speicher vorhanden ist. _~Drag & Drop: Unter MultiTOS wird das neue Drag&Drop-Protokoll untersttzt, so daž Archive vom Desktop oder „hnlichen Programmen (z.B. Gemini) auf das Hauptfenster der Shell gezogen werden k”nnen, worauf deren Inhaltsver- zeichnis geladen und angezeigt wird. Unter anderen MultiTasking-Umgebungen wie z.B. MagiX! oder Geneva wird nur dann Drag&Drop untersttzt, wenn ein Desktop verwendet wird, der das AV-Protokoll untersttzt (z.B. Gemini) _~Unix-Wildcards: '*' beliebige Zeichenkette (Allquantor) '?' ein beliebiges Zeichen (Existenzquantor) '@' Sonderzeichenquotierung/Interpunktions-Zeichen (z.B.: '@*' steht fr das Zeichen '*' und nicht fr den All- quantor) '[a-f|h]' Menge von Zeichen (ein Buchstabe von 'a' bis 'f' sowie 'h') Dabei kann das Oder-Zeichen '|' auch weggelassen werden. Eben- so k”nnen mehrere Angaben in einer Menge gemacht werden, also z.B. '[a-eo-sxyz]' (entspricht den Buchstaben 'a' bis 'e','o' bis 's' sowie 'x','y' und 'z'). Sonderzeichenquotierung ist innerhalb von Mengen ebenfalls m”glich, aber nur fr die Zeichen '-', '|' und '^' von Bedeutung. '[^akn]' Ausschliežende Menge von Zeichen (weder 'a','k' noch 'n') Es k”nnen mehrere Wildcards durch Komma getrennt angegeben werden, z.B. steht '*.C,*.S' fr alle C- und Assembler-Quelltexte. Ntzlich ist dies v.a. bei einer Wildcardangabe hinter einem Pfad. __Beispiele: '*','*.*' -> jeweils alle Dateien '*.?*' -> Dateien, die eine Erweiterung des Dateinamens besitzen, also z.B. 'LABER.DOC', aber nicht 'TEXT' '*.C' -> alle C-Quelltexte '*.[CS]' -> alle C- und Assembler-Quelltexte '[^A]*' -> Dateien, deren Name nicht mit 'A' beginnt '*[A-C]' -> Dateien, deren Name entweder mit 'A','B' oder 'C' endet '*.TXT,*.DOC' -> alle Texte sowie Dokumente '*[ABC]*' -> Dateien, deren Name ein 'A','B' oder 'C' enth„lt _~Selbstextrahierende Archive (SFX): Ab der Version 3.10 ist es m”glich, ber das Kommando 'Make SFX' bzw. mit Hilfe des externen Utilities 'MAKE_SFX' SFX-Archive zu erstellen. Dabei mužten geringfgige Einschr„nkungen gemacht werden, damit der SFX-Loader eine m”glichst geringe Gr”že hat. 1. Es werden nur folgende Algorithmen untersttzt: -lhd- -> Ordner -lh0- -> ungepackte LHarc-Dateien -lz4- -> ungepackte Larc-Dateien -lh5- -> LHA-gepackte Dateien (lh5-Algorithmus) Fr „ltere Algorithmen (lz5,lh1) muž auf andere SFX-Utilities wie z.B. 'SFX_LARC' und 'SFXLHARC' von Markus Fritze zurckgegriffen werden. 2. Verschlsselte Dateien werden nicht untersttzt Zu Beachten ist, daž der SFX-Entpacker eines Archivs verlorengeht, wenn dieses Archiv mit LHarc bzw. der Shell bearbeitet wird, d.h. nach der Bearbeitung muž das SFX-Archiv neu erstellt werden (entweder ber das Kommando 'Make SFX' oder mit dem Utility 'MAKE_SFX'). Ebenso haben einige „ltere LHarc-Versionen bzw. LHarc-Varianten auf anderen Rechnern aufgrund der Struktur des SFX-Loaders teilweise Probleme mit SFX-Archiven, was sich aber nicht vermeiden lies. U.a. wird teilweise gemeldet, daž sich am Ende des Archivs ber- flssige bzw. zerst”rte Daten befinden. _~Kommandozeilenparameter: LHarc [] [{{-|/}{[-|+|0-3|