Inhaltsplugin: DirSize bei großen Verzeichnissen

German support forum

Moderators: Hacker, Stefan2, white

karsten26
Junior Member
Junior Member
Posts: 9
Joined: 2006-01-21, 14:10 UTC

Inhaltsplugin: DirSize bei großen Verzeichnissen

Post by *karsten26 »

ich habe das sehr nützliche Inhalts-Plugin "DirSizeCalc" installiert, welches u.A. die Größe von Ordnern anzeigt.
Ein Problem habe ich aber damit: Wenn man z.B. das Root-Verzeichnis einer Festplatte anzeigt dauert die Größenberechnung ewig, TotalCommander reagiert in dieser Zeit nicht. Meißtens passiert das wenn ich aus irgendeinem Unterverzeichnis zum Root wechsel und vergesse vorher die Ansicht Umzuschalten. Ideal wäre hier eine Möglichkeit das ganze abzubrechen bzw. eine andere Ansicht zu wählen ohne vorher eine halbe Ewigkeit zu warten bis die Größenberechnung abgeschlossen ist und TotalCommander wieder Reagiert.
User avatar
StickyNomad
Power Member
Power Member
Posts: 1933
Joined: 2004-01-10, 00:15 UTC
Location: Germany

Post by *StickyNomad »

2karsten26

Hm, ich verwende DirsizeCalc ebenfalls und lasse die Größe mit [=dirsizecalc.Größe (Hintergrund).bytes] anzeigen.

Und auch bevor die Größenberechnung abgeschlossen ist, kann ich ohne Probleme weiterarbeiten.
karsten26
Junior Member
Junior Member
Posts: 9
Joined: 2006-01-21, 14:10 UTC

Post by *karsten26 »

zuerst war ich etwas verwirrt, denn als ich es gerade ausprobiert habe hat es bei mir auch funktioniert... Habe dann das Problem allerdings doch noch gefunden: Das ganze passiert nur dann wenn man nach der Größe sortiert hat.
User avatar
Lefteous
Power Member
Power Member
Posts: 9536
Joined: 2003-02-09, 01:18 UTC
Location: Germany
Contact:

Post by *Lefteous »

2karsten26
Das ganze passiert nur dann wenn man nach der Größe sortiert hat.
Das ist richtig. TC sammelt in diesem Fall erst alle Daten vom Inhaltsplugin und sortiert dann. Es ist dieses Warten, was dazu führt, dass das Programm nicht mehr reagiert. Ich habe diese Problematik während der Entwicklung der Inhaltsplugin-Schnittstelle mit Ghisler diskutiert, hatte aber auch keinen wirklich guten Vorschlag, wie man das besser machen könnte. Vielleicht hast du ja eine Idee?
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 50475
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

Mich würde auch interessieren, wie man das aus Anwendersicht lösen könnte. Total Commander kann ja erst dann nach Datum sortieren, wenn er dieses für alle Einträge ermittelt hat...
Author of Total Commander
https://www.ghisler.com
karsten26
Junior Member
Junior Member
Posts: 9
Joined: 2006-01-21, 14:10 UTC

Post by *karsten26 »

Vorschläge:

Ausreichend wäre eigentlich schon eine Möglichkeit den Sortiervorgang abzubrechen (eine andere Sortierung zu wählen) bevor die Größenberechnung abgeschlossen ist. (entweder durch direktes anwählen, oder z.b. "ESC"--> Sortierung nach Name)


Ansonsten:
nicht ewig warten, sondern z.B. alle 2s Sortierung mit aktuell vorhandenen Daten aktualisieren. (keine Daten = 0)
icfu
Power Member
Power Member
Posts: 6052
Joined: 2003-09-10, 18:33 UTC

Post by *icfu »

@ghisler:
Mich würde auch interessieren, wie man das aus Anwendersicht lösen könnte. Total Commander kann ja erst dann nach Datum sortieren, wenn er dieses für alle Einträge ermittelt hat...
1. geht's um die Größe, nicht ums Datum.
2. hat der TC ja auch auch sonst kein Problem damit, die Listbox zu refreshen, wenn sich irgendwas geändert hat. Wenn man von der Standardanzeige auf DirSizeCalc umschaltet, kann man prima beobachten, wie die Verzeichnisgrößen nach und nach aufsummiert werden.

Sobald also DirSizeCalc einen Wert für ein Verzeichnis zurückliefert, gibt es einen Refresh und die Anzeige wird angepaßt. Das ganze steuerbar über einen benutzerdefinierten INI-Eintrag WatchDirsRefreshInterval mit Angabe in Sekunden als Ergänzung zum bereits existierenden WatchDirs-Feature.

Icfu
This account is for sale
User avatar
Lefteous
Power Member
Power Member
Posts: 9536
Joined: 2003-02-09, 01:18 UTC
Location: Germany
Contact:

Post by *Lefteous »

2icfu
Ich bin mir nicht sicher, ob dass die beste Lösung wäre. Das wäre - wenn ich dich richtig verstanden habe - ein Art visuelles Sortieren. Ich weiß nicht, ob du eine Vorstellung davon hast wieviele Anzeigeaktualisierungen bei einem Verzeichnis mit 100 Unterverzeichnissen nötig wären. Korrigier mich bitte, wenn ich deinen Vorschlag missverstanden habe.

Selbst wenn man die Anzeige nur einmal aktualisiert - wenn alle Werte vorliegen - könnte es für den Anwender verwirrend sein, wenn plötzlich die Anzeige sortiert wird - je nachdem was man gerade macht. Auf der anderen Seite könnte man dieses Argument natürlich auch bei der internen Verzeichnisgrößenberechnung anbringen. Ich denke das ist der beste Kompromiss.

Was meiner Meinung nach auf jeden Fall geändert werden müsste ist das Verhalten bei "bei Bedarf" Feldern. Diese sollte auch bei Sortierung nach dieser Spalte erst dann berechnet werden, wenn der Benutzer es explizit angefordert hat.
icfu
Power Member
Power Member
Posts: 6052
Joined: 2003-09-10, 18:33 UTC

Post by *icfu »

ein Art visuelles Sortieren
Jep.
Selbst wenn man die Anzeige nur einmal aktualisiert - wenn alle Werte vorliegen - könnte es für den Anwender verwirrend sein, wenn plötzlich die Anzeige sortiert wird- je nachdem was man gerade macht.
Directory Opus berechnet die Verzeichnisgrößen in Echtzeit, mich verwirrt das nicht. Im Gegenteil mag ich es, daß ich weiterarbeiten kann und da wirklich "im Hintergrund" gerechnet wird, ohne mich mit Wartezeit zu belästigen, was ich vom TC leider nicht behaupten kann.
Was meiner Meinung nach auf jeden Fall geändert werden müsste ist das Verhalten bei "bei Bedarf" Feldern. Diese sollte auch bei Sortierung nach dieser Spalte erst dann berechnet werden, wenn der Benutzer es angefordert hat.
Jep, dann könnte ich DirSizeCalc auch ständig aktiviert lassen, jedenfall abgesehen von Archiven...

Icfu
This account is for sale
User avatar
Lefteous
Power Member
Power Member
Posts: 9536
Joined: 2003-02-09, 01:18 UTC
Location: Germany
Contact:

Post by *Lefteous »

Directory Opus berechnet die Verzeichnisgrößen in Echtzeit
Es geht nicht um die Berechnung sondern um die ständige Neusortierung. Weshalb wäre denn einmal Sortieren zu wenig?
Jep, dann könnte ich DirSizeCalc auch ständig aktiviert lassen, jedenfall abgesehen von Archiven...
Probier doch mal bitte die neueste Version.
icfu
Power Member
Power Member
Posts: 6052
Joined: 2003-09-10, 18:33 UTC

Post by *icfu »

Es geht nicht um die Berechnung sondern um die ständige Neusortierung.
Es geht um beides:
1. sieht man, wie die Größen aufsummiert werden und zwar sobald man ein Verzeichnis betritt.
2. wird erst am Schluß sortiert. In der Tat reicht das aus, aber wenn es möglich wäre, auch Zwischenergebnisse zu bekommen, fänd' ich das angenehm.
Probier doch mal bitte die neueste Version.
Ich habe DirSizeCalc 2.00 Beta 2 installiert. Wenn es 'ne neuere gibt, werde ich das tun.

Icfu
This account is for sale
User avatar
Lefteous
Power Member
Power Member
Posts: 9536
Joined: 2003-02-09, 01:18 UTC
Location: Germany
Contact:

Post by *Lefteous »

2icfu
sieht man, wie die Größen aufsummiert werden und zwar sobald man ein Verzeichnis betritt.
Naja das ist doch aber logisch, oder?
wird erst am Schluß sortiert. In der Tat reicht das aus, aber wenn es möglich wäre, auch Zwischenergebnisse zu bekommen, fänd' ich das angenehm.
Naja da sind wir wohl anderer Meinung. Ich finde Zwischenergebnisse bei der Sortierung sind schwer als solche zu erkennen. Wenn z. B. alle sichtbaren Verzeichnisse berechnet und somit auch sortiert wurden, andere aber nicht, dann sieht man das nicht.
Ich habe DirSizeCalc 2.00 Beta 2 installiert. Wenn es 'ne neuere gibt, werde ich das tun.
Es gibt da noch einige Probleme, aber ich hoffe Ghisler wird diese noch beseitigen. Die grundsätzliche Funktionalität ist aber vorhanden.
icfu
Power Member
Power Member
Posts: 6052
Joined: 2003-09-10, 18:33 UTC

Post by *icfu »

Ich finde Zwischenergebnisse bei der Sortierung sind schwer als solche zu erkennen. Wenn z. B. alle sichtbaren Verzeichnisse berechnet und somit auch sortiert wurden, andere aber nicht, dann sieht man das nicht.
Da könnte man ja ein visuelles Warnsignal absetzen, solange die Gesamtoperation noch nicht abgeschlossen ist. Über die Form können wir diskutieren, wenn es ansteht, aber mir fälllt da so einiges ein, von aufdringlich bis dezent. Hat für mich aber keine Priorität, wäre nur ein Nice-To-Have. Hauptsache, die Verzeichnisse kann ich sofort betreten und irgendwann wird sortiert.
Es gibt da noch einige Probleme, aber ich hoffe Ghisler wird diese noch beseitigen. Die grundsätzliche Funktionalität ist aber vorhanden.
Ja, das hast Du ja immer wieder gesagt: Wenn Du nur so könntest, wie Du wolltest. :)

Icfu
This account is for sale
User avatar
Lefteous
Power Member
Power Member
Posts: 9536
Joined: 2003-02-09, 01:18 UTC
Location: Germany
Contact:

Post by *Lefteous »

2icfu
Ja, das hast Du ja immer wieder gesagt: Wenn Du nur so könntest, wie Du wolltest.
Ich meinte das so, dass ich die Werte, die der TC übermittelt eben anzeige. Soll heißen: Ich muss im Grunde nichts mehr zusätzlich einbauen. Wenn es irgendwann vollständig funktioniert, dann wird es wohl "von alleine" gehen :-)
DrTob
Junior Member
Junior Member
Posts: 5
Joined: 2013-09-05, 14:06 UTC

Post by *DrTob »

Ich möchte das nochmal aufgreifen: Mittlerweile (?) kommt zwar ein Dialog mit dem man die Operation theoretisch abbrechen kann (-> ESC zum Abbrechen + Abbrechen-Schaltfläche) Leider ist es mir in der Regel nicht möglch die entsprechende Option auszuwählen, weil TotalCommander nicht reagiert.
Gerade war ich wieder versehentlich auf C:\ bei aktivierter Sortierung nach Verzeichnisgröße. TotalCommander war daraufhin nicht mehr nutzbar. Ich habe es weder geschafft den Vorgang zu unterbrechen, nocht eine andere Sortierung auszuwählen.
Wenn ich gewartet habe bis der Vorgang abgeschlossen war hat ein Klick in TC sofort eine Aktualisierung, und damit erneuter Blokade geführt.
Einzige Lösung: TC beenden (-> Task beenden) und in der INI manuell eine anderes Verzeichnis als Startverzeichnis wählen.

Ich würde mir hier entweder eine funktionierendes "Abbrechen" wünschen, oder eine Sortierung im Hintergrund:

Noch nicht berechnete Verzeichnise kommen ans Ende der Liste (= Größe 0).
Da die Verzeichnisgröße nicht langsam "aufsummiert" wird, sehe ich auch nicht das Problem, dass man nicht erkennt ob die Sortierung nun fertig ist oder nicht. In der Spalte "Größe" wird (Ist-Zustand) bei noch nicht abgeschlossener Größenberechnung "Dir" angezeigt (noch nicht berechnet/sortiert) oder die korrekte Verzeichnisgröße. In dem Moment in dem die Größe eines Verzeichnisses ermittelt wurde kann dieses dann entsprechend einsortiert werden.
Post Reply