AkelPad Forum Index AkelPad
Support forum
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

[Request] Плагин — дерево открытых файлов

 
Post new topic   Reply to topic    AkelPad Forum Index -> Plugins
View previous topic :: View next topic  
Author Message
[Yustas.NeO]



Joined: 12 Mar 2007
Posts: 262

PostPosted: Thu Dec 01, 2016 4:52 pm    Post subject: [Request] Плагин — дерево открытых файлов Reply with quote

Приветствую всех!

Сможет кто-нибудь написать плагин (и скрипт?), отображающий список открытых файлов в виде дерева (сворачивающегося) ?

P.S. Желательно, с запоминанием места в дереве для уже однажды открытых файлов и настраиваемым контекстным меню.

Спасибо!


Last edited by [Yustas.NeO] on Mon Dec 05, 2016 2:44 pm; edited 3 times in total
Back to top
View user's profile Send private message
Skif_off



Joined: 20 Oct 2013
Posts: 1023

PostPosted: Thu Dec 01, 2016 5:16 pm    Post subject: Reply with quote

[Yustas.NeO]
Code:
"Выбор окна..." Command(4327)

?
Back to top
View user's profile Send private message
FeyFre



Joined: 07 Aug 2007
Posts: 2204
Location: Vinnitsa, Ukraine

PostPosted: Thu Dec 01, 2016 9:38 pm    Post subject: Reply with quote

[Yustas.NeO]
Дали бы сразу определение что такое дерево
как должны листья узлы корни формироваться
и т.д.
я пока какой-то необходимости не вижу таком подходе
Back to top
View user's profile Send private message AIM Address Yahoo Messenger MSN Messenger
DV



Joined: 16 Nov 2006
Posts: 972
Location: Kyiv, Ukraine

PostPosted: Thu Dec 01, 2016 9:41 pm    Post subject: Reply with quote

Вот, кстати, почему в главном меню в подменю "Окно" отсутствует эта команда - "Диалог выбора окна" с горячей клавишей F10?
Ведь сейчас единственный способ узнать о её существовании - это наткнуться на неё в справке. (К слову, я узнал о ней из справки пару лет назад, а потом благополучно забыл, поскольку нигде больше она не фигурирует.)
Back to top
View user's profile Send private message
FeyFre



Joined: 07 Aug 2007
Posts: 2204
Location: Vinnitsa, Ukraine

PostPosted: Fri Dec 02, 2016 12:04 am    Post subject: Reply with quote

DV
Ну ради справедливости, на неё можно наткнуться также и HotKeys->All Keys. Полезнее доки оказалось... ибо там светится недокументированная фича - хоткеи которые себе скрипты доназначают(и плагины тоже).

ЗЫ: и по ходу дела выяснил что мой history.js крешит АР как собака бешенная
Back to top
View user's profile Send private message AIM Address Yahoo Messenger MSN Messenger
Skif_off



Joined: 20 Oct 2013
Posts: 1023

PostPosted: Fri Dec 02, 2016 6:49 am    Post subject: Reply with quote

DV
Она не отсутствует в меню по умолчанию:
Code:
        SET(4)
            #Только для MDI
            MDIDOCUMENTS
        UNSET(4)
        SET(2)
            #Только для PMDI
            SEPARATOR1
            "Выбор окна..." Command(4327)
        UNSET(2)



А вообще, можно как-то получить список всех открытых файлов?
Back to top
View user's profile Send private message
[Yustas.NeO]



Joined: 12 Mar 2007
Posts: 262

PostPosted: Fri Dec 02, 2016 2:26 pm    Post subject: Reply with quote

И узел и лист -- любой открытый в AkelPad файл.
Дерево формируется перетаскиванием одного узла на другой.
Запоминается в виде путь_к_файлу_2 является вложенным для путь_к_файлу_1 (относительное расположение вкладок на одном уровне еще стоит продумать). Если путь_к_файлу_1 еще не открыт -- открывать в корне дерева.

Как выглядит дерево, наверное не совсем принципиально, главное чтобы узлы можно было перетягивать и сворачивать, и было запоминание расположения.
Может выглядеть и как дерево в regedit, и как вкладки в расширении Tree Style Tab для FireFox (может кто знает).


Смысл примерно (но не ограничиваясь) следующий:
приходится держать много открытых файлов по разным тематикам, и горизонтальное расположение вкладок не очень удобно из-за того, что видно только пару десятков из них. Вертикальное расположение было бы гораздо удобнее (особенно если высота каждого заголовка не большая), а сворачивание и вложенность решит проблему с раскладыванием по темам.

Как-то так
Back to top
View user's profile Send private message
opk44



Joined: 16 Jan 2010
Posts: 470

PostPosted: Fri Dec 02, 2016 3:15 pm    Post subject: Reply with quote

[Yustas.NeO]
1. Не понятно, на каком основании один файл-"узел" должен подчинять другой файл-"лист".
2. Сама идея превратить AkelPad в некий "динамический аутлайнер" довольно интересная.
Back to top
View user's profile Send private message
F. Phoenix



Joined: 24 Dec 2011
Posts: 164

PostPosted: Fri Dec 02, 2016 8:20 pm    Post subject: Reply with quote

Плюсану топику. Поддержка кастомных древовидных списков приблизит AkelPad к полноценным IDE, а конфигурацию деревьев наверняка удобно будет сохранять в XML, как это сделано в проектах Visual Studio.

Но предложу несколько другой вариант. Примерно такой:
Code:
Группа файлов (виртуальная папка)
└┬─ Файл 1
 ├─ Файл 2
 ├─ Файл 3
 │  └─ Зависимый файл
 └─ Группа файлов
    └─ Файл
Back to top
View user's profile Send private message
[Yustas.NeO]



Joined: 12 Mar 2007
Posts: 262

PostPosted: Mon Dec 05, 2016 1:33 pm    Post subject: Reply with quote

opk44 wrote:
[Yustas.NeO]
1. Не понятно, на каком основании один файл-"узел" должен подчинять другой файл-"лист".
На основании перетягивания заголовка одного файла на заголовок другого.


F. Phoenix wrote:
конфигурацию деревьев наверняка удобно будет сохранять в XML
XML или JSON — не принципиально. Важно, чтобы в настройках сохранялась информация о "месте расположения" файла даже для закрытых (можно в настройках для файла сохранять open="true/false")

F. Phoenix wrote:
предложу несколько другой вариант. Примерно такой:
Code:
Группа файлов (виртуальная папка)
└┬─ Файл 1
 ├─ Файл 2
 ├─ Файл 3
 │  └─ Зависимый файл
 └─ Группа файлов
    └─ Файл
Раньше почему-то я отмёл для себя вариант с "виртуальными папками", но пожалуй он мне снова нравится Smile Главное, чтобы была неограниченная вложенность.


[Yustas.NeO] wrote:
Запоминается в виде путь_к_файлу_2 является вложенным для путь_к_файлу_1. Если путь_к_файлу_1 еще не открыт — открывать в корне дерева.
Передумал: если путь_к_файлу_1 еще не открыт — открывать в вышеобозначенной "виртуальной папке", чтобы сохранилось дерево.
Back to top
View user's profile Send private message
F. Phoenix



Joined: 24 Dec 2011
Posts: 164

PostPosted: Mon Dec 05, 2016 2:18 pm    Post subject: Reply with quote

[Yustas.NeO] wrote:
Главное, чтобы была неограниченная вложенность
И поддержка путей относительно проектного файла.
Ну и желательно чтоб по клику на этом файле AkelPad открывался с прописанной конфигурацией файлов, без необходимости вручную запускать какие-либо дополнительные команды и скрипты.
Back to top
View user's profile Send private message
[Yustas.NeO]



Joined: 12 Mar 2007
Posts: 262

PostPosted: Mon Dec 05, 2016 2:45 pm    Post subject: Reply with quote

F. Phoenix wrote:
[Yustas.NeO] wrote:
Главное, чтобы была неограниченная вложенность
И поддержка путей относительно проектного файла.
Ну и желательно чтоб по клику на этом файле AkelPad открывался с прописанной конфигурацией файлов, без необходимости вручную запускать какие-либо дополнительные команды и скрипты.
Я имел ввиду только дерево открытых файлов. Хотя дерево проектов (в виде братского плагина) тоже неплохая мысль.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    AkelPad Forum Index -> Plugins All times are GMT
Page 1 of 1

 
Jump to:  
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


SourceForge.net Logo Powered by phpBB © 2001, 2005 phpBB Group