View previous topic :: View next topic |
Author |
Message |
x-code
Joined: 20 Mar 2012 Posts: 13
|
(Separately) Posted: Tue Dec 10, 2024 00:01 Post subject: Aligned extensions (расширения в отдельном столбце)для папок |
|
|
Для файлов есть опция, как показывать расширения - вместе с именем или в отдельном столбце "Ext". А вот для директорий расширения показываются всегда вместе с именем.
Возможно ли сделать так, чтобы расширения директорий отображались в столбце "Ext", как и для файлов?
Нужно это для реализации идеи сортировки огромного количества директорий по разным критериям, которые хранятся в имени как теги (что-то типа Name.tag1.tag2.tag3.tag4), поэтому в идеале было бы вообще хорошо чтобы столбцов, подобных "Ext" было сколько угодно, и чтобы можно было настраивать разбиение имени файла на части для загрузки частей в эти столбцы, но подозреваю что такого точно нет, если только не писать свой плагин.
Кстати для симлинков на директории та же проблема - расширение всегда отображается как часть имени. |
|
Back to top |
|
|
Avada
Joined: 01 Aug 2008 Posts: 10352 Location: Россия, Саратов
|
(Separately) Posted: Tue Dec 10, 2024 07:00 Post subject: |
|
|
x-code
Нет, невозможно. И правильно. Для каталогов никаких реальных расширений быть не может, текст после последней точки всё равно является частью имени.
А насчёт использования подстрок в наборах колонок вы вместо подозрений лучше почитайте справку, где сказано и про то, что сортировка в таких колонках всё равно идёт по полной строке. Я не припоминаю сообщений, что это каким-то спецплагином удалось обойти. _________________ Даже самая богатая фантазия
Не представит себе наши безобразия. |
|
Back to top |
|
|
sa
Joined: 29 Apr 2009 Posts: 2667
|
(Separately) Posted: Tue Dec 10, 2024 08:24 Post subject: |
|
|
x-code wrote: | Возможно ли сделать так, чтобы расширения директорий отображались в столбце "Ext", как и для файлов? |
Создайте пользовательский набор колонок с колонкой [=tc.ext].
Для нескольких столбцов (колонок) попробуйте Expander2. |
|
Back to top |
|
|
Avada
Joined: 01 Aug 2008 Posts: 10352 Location: Россия, Саратов
|
(Separately) Posted: Tue Dec 10, 2024 10:36 Post subject: |
|
|
sa
Насчёт пользовательского набора с колонкой [=tc.ext] вы правы. Но это пригодится только для текста после последней точки, а не после любой (см. исходное задание). И, разумеется, только в пользовательских наборах колонок.
А как в данном случае вы применили бы плагин Expander2? (У меня нет опыта работы с ним.) _________________ Даже самая богатая фантазия
Не представит себе наши безобразия. |
|
Back to top |
|
|
sa
Joined: 29 Apr 2009 Posts: 2667
|
(Separately) Posted: Tue Dec 10, 2024 10:53 Post subject: |
|
|
Avada
В файле Expander2.ini в качестве разделителя указываем точку:
Для папки Name.tag1.tag2.tag3.tag4 в колонке
Part1 [=expander2.Part1] отображается Name,
Part2 [=expander2.Part2] отображается tag1,
Part3 [=expander2.Part3] отображается tag2 и т.д.
Добавил из ReadmeRUS.txt:
Quote: | Плагин "разбивает" имя файла на отдельные строки (с помощью заданных разделителей).
Может использоваться для расширенной сортировки.
Если разделитель содержит "\", путь тоже разбивается.
Бесконечное количество разделителей, лимит задается в файле настроек Expander2.ini.
Может использовать несколько разделителей, отделенных друг от друга символом "|" (вертикальная черта без кавычек).
Для использования укажите разделители в секции [Main] файла Expander2.ini.
...
+ может проверять части, начиная с конца имени | Если с конца имени, то так: [=expander2.Part-1] и т.д.
Last edited by sa on Tue Dec 10, 2024 14:42; edited 3 times in total |
|
Back to top |
|
|
Monarch-LFV
Joined: 22 Jul 2019 Posts: 309
|
(Separately) Posted: Tue Dec 10, 2024 11:48 Post subject: |
|
|
x-code
Для себя писал скрипт для плагина WinscriptADV:
Hidden text
Code: | ' Script for WinScriptAdv content plugin
' Разделяет имена папок и файлов по заданному разделителю (или нескольким разделителям)
' Множество разделителей, идущих подряд, считаются за один и удаляются (пример: ___ считается за _);
' Можно использовать юникодные символы как разделители
' Можно задавать порядок считывания подстрок с начала или с конца (Method)
' Лишние пробелы в начале и в конце частей удаляются
' Если файл начинается с разделителя, то он автоматически отбрасывается
'========== Изменяемые параметры =================
Sep = Array(".")
'Sep = Array("-",".",",","_") ' пример применения различных разделителей одновременно
Method = 0 ' 0 - порядок с начала имени, 1 - с конца
'=================================================
On Error Resume Next
Dim arr(9)
Set FSO = CreateObject("Scripting.FileSystemObject")
if FSO.FolderExists(filename) then
fn = FSO.GetFolder(filename).name ' Имя папки
else
fn = FSO.GetBaseName(filename) ' Имя файла
end if
for each i in Sep
fn=replace(fn, i, "*")
next
while Instr(fn, "**") > 0
fn=replace(fn, "**", "*")
wend
if left(fn, 1)="*" then fn=mid(fn, 2, len(fn))
if Right(fn, 1)="*" then fn=mid(fn, 1, len(fn)-1)
Sep="*"
q=UBound(split(fn, "*"))
Select case Method
Case 0
for i=0 to q: arr(i)=trim(split(fn, "*")(i)): next
Case 1
for i=0 to q: arr(i)=trim(split(fn, "*")(q-i)): next
End Select
content = arr(0) ' Часть 1
content1 = arr(1) ' Часть 2
content2 = arr(2) ' Часть 3
content3 = arr(3) ' Часть 4
content4 = arr(4) ' Часть 5
content5 = arr(5) ' Часть 6
content6 = arr(6) ' Часть 7
content7 = arr(7) ' Часть 8
content8 = arr(8) ' Часть 9
content9 = arr(9) ' Часть 10
|
Работает также как expander2, но еще умеет обрабатывать с конца имени, когда может быть разное количество разделителей в имени, но нужно, например, 3 последние части.
Также можно задавать одновременно разные разделители (закомментированная строка в скрипте).
В Options.ini соответственно:
Code: |
[FilenameSeparate]
; Разделяет имена папок и файлов по заданному разделителю
; Данные настраиваются в файле VBS
Script=FilenameSeparate.vbs
content=Filename_Part 1
content1=Filename_Part 2
content2=Filename_Part 3
content3=Filename_Part 4
content4=Filename_Part 5
content5=Filename_Part 6
content6=Filename_Part 7
content7=Filename_Part 8
content8=Filename_Part 9
content9=Filename_Part 10
extensions=*
FoldersPaths=1 |
|
|
Back to top |
|
|
Orion9
Joined: 01 Jan 2024 Posts: 520
|
(Separately) Posted: Tue Dec 10, 2024 14:55 Post subject: Re: Aligned extensions (расширения в отдельном столбце)для папок |
|
|
x-code wrote: | если только не писать свой плагин. |
Ну, для подобных задач свой плагин точно писать не надо Многое можно решить через WinScriptAdv, что было продемонстрировано Monarch-LFV. Для этого, правда, требуется знание скриптовых языков, но овладеть скриптовым языком гораздо проще, чем стандартным языком программирования, на котором пишут плагины.
Есть еще плагин Autorun. В нем реализован собственный скриптовый язык и недавно появилась возможность дабавлять свои кастомные поля.
Поставленную вами задачу на Autorun можно решить буквально тремя строчками:
Code: | Pragma AutorunPluginFields "C1:::SplitName" "C2:::SplitName" "C3:::SplitName" "C4:::SplitName" "C5:::SplitName" "C6:::SplitName" "C7:::SplitName" "C8:::SplitName" "C9:::SplitName" "C10:::SplitName"
Func SplitName(FileName, FieldIndex, UnitIndex)
If StrPos(FileGetAttr(FileName), "D") Then Return StrPart(FileName, ".", FieldIndex)
EndFunc |
Но это все требует, конечно, определенных знаний и умений. Поэтому если есть конкретный плагин под нужную задачу, то лучше использовать его, а я написал про Autorun лишь для полноты картины. |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|