-
Notifications
You must be signed in to change notification settings - Fork 0
/
project
34 lines (28 loc) · 2.97 KB
/
project
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
задачи:
1. отображение основной информации о теме
из файла темы
2. книжка: контекст(+папки без контекста)/папка/файл[имя|расширение|тип|размер]: информация
2.1. нужно иметь список с оригинальными файлами (количеством симлинков на них), чтобы отоб
3. нужно иметь полный список имён значков, их размеры
полный список дэдлиноков
размеры и все данные значков
инструменты:
поиск и размножение элементов в XML (можно для них сделать <!-- тут такое началось -->%подстановка_1% блаблабла %подстановка_2%<!-- тут такое закончилось -->)
получалка данных с файлов и преобразовалка их в массив json или ini
переделанный ini: ГОТОВО! readinif_flat doini_flat
можно сохранять в общий массив:
arr[file1.icon][секция1:параметр1]=значение1
arr[file1.icon][секция1:параметр2]=значение2
средства для получения списка файлов:
получение физического массива FTS (там все симлинки имеют тип symlink и имеют linkval)
получение логического массива FTS (там только дохлые линки имеют тип symlink, но НЕ имеют linkval)
получение массива с дохлыми линками на основе этих двух
средство для получения списка оригинальных файлов, а не линков (НУЖНЫ FTS_P и FTS_L):
физ-массив, рекурсивный проход по нему с получением относительных путей всех ФАЙЛОВ
средство для получения симлинков на каждый файл (НУЖЕН СПИСОК РЕАЛЬНЫХ ФАЙЛОВ|можно просто сверять в двух FTS. КАК?):
рекурсивно по физ-массиву с получением linkval:
если начинается с / выводить как ошибку
остальные прикреплять к текущему пути и, если есть в них /\.\.*\//, проводить abspath
полученный linkval использовать как ветку массива (если такой файл есть! -- надо определит, не дэдлинки ли это), листья -- симлинки с относительным темы путём
как определять дэдлинк?
в лог-массиве это симлинк, тогда его игнорировать