diff --git a/src/components/DiskInfo.vue b/src/components/DiskInfo.vue
index 2180809..f1aa175 100644
--- a/src/components/DiskInfo.vue
+++ b/src/components/DiskInfo.vue
@@ -37,19 +37,4 @@ pre {
color: #c0c0c0;
border: 1px solid rgba(255, 255, 255, 0.3);
}
-
-:deep(ul) {
- padding: 0;
-}
-
-:deep(ul ul) {
- padding: 0 0 0 1.5em;
-}
-
-:deep(li) {
- list-style: none;
- line-height: 1.5rem;
- margin: 0;
- padding: 0;
-}
diff --git a/src/floppy/disk.ts b/src/floppy/disk.ts
index 9d23ab5..244b1f9 100644
--- a/src/floppy/disk.ts
+++ b/src/floppy/disk.ts
@@ -192,34 +192,35 @@ export class FloppyDisk {
return chain
}
- addDirectory(listing: string, entries: TDirEntry[]) {
- listing += '\n
'
-
+ addDirectory(listing: string, path: string[], entries: TDirEntry[]) {
for (let i = 0; i < entries.length; i++) {
const entry = entries[i]
- if (entry.type !== 'standard-entry') {
+ if (
+ entry.type !== 'standard-entry' ||
+ entry.attributes.volumeId ||
+ entry.name === '..' ||
+ entry.name === '.'
+ ) {
continue
}
- if (entry.name === '.' || entry.name === '..' || entry.attributes.volumeId) {
- // do nothing
- } else if (entry.attributes.directory) {
- listing += `\n- ${entry.name}\\`
- listing = this.addDirectory(listing, entry.subDirEntries)
- listing += '
\n'
+ listing += `${path.join('\\') + '\\'}${entry.name}`
+
+ if (entry.attributes.directory) {
+ listing += '\\
'
+ listing = this.addDirectory(listing, [...path, entry.name], entry.subDirEntries)
} else {
- listing += `\n- ${entry.name}
\n`
+ listing += '
'
}
}
- listing += '\n
'
return listing
}
buildFileListing(): string {
- let listing = 'A:\\'
- listing += this.addDirectory('', this.rootDirEntries ?? [])
- listing += '
'
+ let listing = '\\
'
+ listing += this.addDirectory('', [''], this.rootDirEntries ?? [])
+ listing += '
'
return listing
}
}