Page 23 of 24
Posted: Thu Mar 31, 2016 6:20 pm
by VladSh
InFive wrote:до сих пор не могу въехать как пользоваться Сессиями, поэтому и не пользуюсь Сессиями...
надо выбрать время чтобы разобраться как оно работает и как с ним работать... а пока Избранное рулит...
Проще пареной репы.
Открываете все свои избранные файлы в окне akelpad'а.
Открываете диалог сессий, жмёте сохранить, даёте имя сессии, к примеру, "Избранное".
Жмёте "Закрыть", - все файлы сессии закроются.
Потом открываете ещё файлы какой-нибудь другой тематики, о5 -> Сохранить -> Закрыть.
И так наколбашиваете сколько угодно сессий, т.е. "Избранных".
Потом скачиваете скрипт
SessionMenu.js Kley'я. Моя кнопка для него пока такая:
Code: Select all
"Меню сессий" Call("Scripts::Main", 1, "SessionMenu.js", `-m="%m" -i="%i" -p=1 -e=0`) Icon("%a\AkelFiles\Plugs\Sessions.dll", 0)
Жмёте на неё - profit!
Posted: Sat Apr 02, 2016 7:55 am
by VladSh
Скрипт работает класно, но хотелось бы всё-таки в с ContextMenu-плагине иметь специальный пункт SESSIONS. Такое решение позволит сделать кнопку со стрелкой, и можно будет нажимать и на кнопку (вызов диалога), и можно будет жать на стрелочку для выбора файлов сессии (также, как сейчас работает скрипт).
И предложение открывать диалог на какой-либо определённой сессии в силе.
Также хотелось бы иметь возможность программного доступа к функции "Удалить несуществующие" для определённой сессии, типа
Code: Select all
"Удалить несуществующие" Call("Sessions::Main", 6, "SESSION_NAME")
Добавлено:
Хотелось бы иметь возможность встраивать панель сессий не только сверху, но и с любой стороны экрана.
Было бы здорово, к примеру открыть по комбинации клавиш панель слева по всей высоте, а потом чтобы выше или ниже можно было открыть ещё и панель Explorer-плагина.
В идеале хотелось бы добавить в плаг возможность записи последних файлов, тогда RecentFiles был бы вовсе ненужен. И реестр не засоряется (реальная портативность), и по функционалу всё было бы вместе и очень удобно. Это конечно если сделать возможность встраивания в меню и на кнопки подменю определённой сессии.
Posted: Sat Apr 02, 2016 12:01 pm
by Kley
VladSh
VladSh wrote:хотелось бы всё-таки в с ContextMenu-плагине иметь специальный пункт SESSIONS. Такое решение позволит сделать кнопку со стрелкой
Тулбар:
Code: Select all
"Sessions" Call("Sessions::Main") Menu("SessionsMenu") Icon("%a\AkelFiles\Plugs\Sessions.dll", 0)
Контекстное меню:
Code: Select all
"SessionsMenu"
{
"OnExit" Call("Scripts::Main", 1, "SessionMenu.js", `-s="OnExit"`)
"OnExit-1" Call("Scripts::Main", 1, "SessionMenu.js", `-s="OnExit-1"`)
"OnExit-2" Call("Scripts::Main", 1, "SessionMenu.js", `-s="OnExit-2"`)
}
VladSh wrote:Хотелось бы иметь возможность встраивать панель сессий не только сверху, но и с любой стороны экрана.
Просто попробуйте переместить окошко плагина (любого плагина), за заголовок, в нужную сторону до появления пунктирной рамки. Или я опять не о том?
Posted: Sat Apr 02, 2016 4:31 pm
by VladSh
Kley wrote:
Вы предлагаете пользователям после каждого изменения (добавления или удаления) сессий лазить и править меню?
Kley wrote:Просто попробуйте переместить окошко плагина (любого плагина), за заголовок, в нужную сторону до появления пунктирной рамки.
Да, вспомнил, проскакивало где-то здесь.
Хоть такое поведение и неочевидно, но часть вопроса действительно снимается. При открытии панели Explorer-плагина он отображается справа от панели сессий. Может быть подскажете, как их пристыковать друг над другом? И когда один закрываешь, чтобы второй автоматически занимал всю высоту?
Posted: Sat Apr 02, 2016 4:55 pm
by Kley
VladSh
VladSh wrote:как их пристыковать друг над другом?
Думаю, в AkelPad, ни как. Но расположение окон плагинов по типу Photoshop (одно над другим) было бы здорово.
Posted: Sat Apr 02, 2016 5:24 pm
by InFive
VladSh wrote:
Проще пареной репы.
ага, что-то не похоже... надо время потратить для этого, а это не означет проще чего-то там...
-------------------------------------------
итак, добавил несколько файлов в сессию "Избранное" из Избранного...
затем хочу изменить порядок файлов при отображении во всплывающем меню, для этого запускаю диалог плагина Session, делаю в диалоге порядок файлов другой, но во всплывающем меню порядок не меняется (даже после перезагрузки AP)...
что, открыть файл с сесcией и поменять местами в файле с сессией? ну это же не проще "паренной репы"...
у меня много файлов в Избранном, если перенести в сессию Избранное, и если я захочу изменить порядок файлов в сессии через диалог плагина, то в меню сессий не будет изменений...
далее, файлов в сессии может быть много файлов, а оно и будет, если я перенесу всё Избранное в сессию Избранное... но Избранное не помещается на один экран (у меня высота разрешения экрана 900), надо делать прокрутку списка Избранного... как сделано меню в сессиях, также прокрутками? нельзя ли сделать, чтобы если список не помещается на экране, чтобы продолжение списка было во второй колонке меню, а не делать тупую прокрутку по одному пункту?
Posted: Sun Apr 03, 2016 11:00 am
by VladSh
InFive
1. Затраченное время на оба варианта одинаковое.
2. По поводу порядка. Если Kley читает это, то, думаю, добавит параметр, отвечающий за сортировку. Или может быть какое-то другое решение.
3. Непомещение списка на экране - проблема не только скрипта сессий, это общая проблема. Т.е. не может быть чисто его недостатком.
И по большей части это проблема не функционала, а организации работы с файлами конкретного пользователя. Можно разбить все эти огромные простыни файлов на разные сессии.
Конечно диалог сессий отстаёт от избранного отсутствием кнопок "Вверх", "Вниз" и т.д. Но, по моему, другие его достоинства в сочетанием со скриптом перевешивают.
Хотя в идеале (я ещё несколько лет назад предлагал) - объединить эти плаги (Sessions, RecentFiles) и функционал "Избранного" в один. Наверное это займёт много работы, потому наверное не делается... И ещё непонятно, нужно ли это ещё кому-то. Если только мне, тогда естественно, что это ненужно.
Posted: Sun Apr 03, 2016 12:30 pm
by InFive
VladSh
спасибо
Posted: Tue Apr 05, 2016 4:57 pm
by Kley
InFive
InFive wrote:затем хочу изменить порядок файлов при отображении во всплывающем меню
Диалог Sessions:
http://akelpad.sourceforge.net/ru/plugins.php
1. Работа с проектами.
2. Сохранение и восстановление MDI сессии программы.
Именно сессии: нужные вкладки и с тем расположением, какое Вам нужно.
А копаться в... в не отсортированном меню... Тем более если оно
InFive wrote:не помещается на один экран
Или, как?
Добавлено:
>>
Posted: Fri Oct 05, 2018 5:25 pm
by Eskander88
Подскажите пожалуйста, как можно реализовать с помощью скрипта такую функцию для Sessions::Main :
Чтобы при закрытии всех вкладок автоматически сохранялась сессия last.session?
Posted: Thu Oct 11, 2018 12:22 pm
by [Yustas.NeO]
Пара предложений:
1. При отключенном режиме "Показывать путь файлов" хотелось бы иметь возможность видеть полный путь во всплывающей подсказке.
2. Хотелось бы видеть опцию "Показывать полный путь" в меню плагина.
Posted: Thu Oct 11, 2018 6:45 pm
by Eskander88
Eskander88 wrote:Подскажите пожалуйста, как можно реализовать с помощью скрипта такую функцию для Sessions::Main :
Чтобы при закрытии всех вкладок автоматически сохранялась сессия last.session?
Ссори, разобрался.. функция доступна в настройках плагина,
Sessions::Main \ Настройки \ Сохранять при выходе \ [ OneExit ]
Posted: Tue Dec 18, 2018 10:12 am
by Andrey_A_A
Предложение для плагина:
1. Добавить функционал - сохранять сессию "OnExit.session" каждые 5 минут (выбор) - это поможет иметь "живую" сессию при "падении" программы или "крахе" системы.
2. Изменить принцип сохранения маркерованного текста в сессии, сейчас есть проблемы:
а) Есть документ в с маркированными 1000 строками.
В процессе работы удалили 900, но при сохранении сессии все несуществующие маркеры сохраняются в файл session.
Соответственно при открытии сессии документ в 100 строк имеет в памяти ещё 900 маркерованных строк, которые не существуют.
Более того, запись несуществующих маркеров записывается в файл не в строку /Name=... а с новых строк каждый фрагмент, образуя кашу из кода...
Т.е. нужно записывать в session не то что в памяти, а по факту - те маркеры, которые есть в документе.
б) В документе выделены 10 строк, длина которых более 10.000 символов и все они попадают в session
Предложение прописывать начальные и конечные позиции вместо всей маркерованной фразы:
/Marks=(#FF033E,#CDCD00,1,0,1000001,23150-33150)
Это сократит размер файла session
в) То же самое касается когда отмечены десятки длинных строк одним цветом. Они построчно ложатся в сессию
Предложение записывать в сессию не построчно, а начальный и конечный индекс одного и того- же цвета, что тоже отразится на уменьшении размера файла сессии.
3. Может быть нужно добавить Call("Coder::HighLight", N) - очистка памяти документа от несуществующих маркеров - это будет полезно для скриптов, работающих на удаление/перемещение/замену..., которые не касаются маркеров, хотя маркеры в памяти после работы скриптов остаются (как оказалось)
----------
Проблемы обнаружены не только мной, а группой пользователей: в течении года не могли понять почему AkelPad падает либо медленно открывается, выяснилось, что у тех, кто не пользовался Call("Coder::HighLight", 3) - снять все отметки, файл OnExit.session перевалил за несколько мегабайт, из-за мусора которого, AkelPad, просто "вставал в ступор".
Posted: Tue Dec 18, 2018 2:33 pm
by opk44
1.
Andrey_A_A wrote:...сохранять сессию "OnExit.session" каждые 5 минут (выбор) - это поможет...
Сессия "OnExit" связана с конкретным событием - выходом из программы. Почему, если "уж очень хочется", не пользоваться принудительным сохранением
Кто вам там запретит использовать "OnExit" вместо "FILE"?
2. Если несуществующие маркеры действительно в файл сессии записываются, то это следует как баг квалифицировать.
документ в с маркированными 1000 строками...
выделены 10 строк, длина которых более 10.000 символов...
Если это не "сферический конь в вакууме", то зачем так делать? Можно же иначе поступить:
Птица с сохранения выделения в сессиях снята, достаточно сохранения положения каретки в общих настройках. При необходимости устанавливается закладка.
Маркировать строки тысячами, чтобы потом просматривать глазами и удалять руками? Так никакого здоровья не хватит. Цепляем файл к БД и фильтруем sql-запросами. На худой конец есть "LinesFilter.js".
Posted: Wed Dec 19, 2018 4:07 pm
by Andrey_A_A
opk44, все что я выше писал - не выдумано, а действительно нужно. И написал пожелание не к вам, а к автору. Если автор реализует - будет хорошо.
Все ваши советы (типа "уж очень хочется, то делай так", "сферический конь в вакууме", "Кто вам там запретит") пусты и давно пройдены и смахивает на "ну надо что-то написать..."
