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 

LineBoard plugin
Goto page Previous  1, 2, 3 ... 24, 25, 26, 27  Next
 
Post new topic   Reply to topic    AkelPad Forum Index -> Plugins
View previous topic :: View next topic  
Author Message
Skif_off



Joined: 20 Oct 2013
Posts: 1094

PostPosted: Tue Sep 02, 2014 12:43 pm    Post subject: Reply with quote

Drums
В ветке HKCU\Software\Akelsoft\AkelPad\Recent многострочная запись (REG_MULTI_SZ) для каждого файла fileN в виде
Code:
путь\имя
кодировка
не знаю
Bookmarks=(строки через запятую)

Либо в файле сессии плагина Sessions в похожем виде.
Back to top
View user's profile Send private message
Drums



Joined: 20 Aug 2014
Posts: 9

PostPosted: Wed Sep 03, 2014 1:04 pm    Post subject: Reply with quote

Skif_off большое спасибо!
Back to top
View user's profile Send private message
Drums



Joined: 20 Aug 2014
Posts: 9

PostPosted: Sat Sep 06, 2014 1:48 am    Post subject: Reply with quote

Оказывается, записи в реестре заменяются друг другом. Я выставил, в настройках программы, значение 999, но не факт, что это поможет сохранить закладки в долгосрочной перспективе, так как я ежедневно пользуюсь большим кол-вом текстовых файлов. Есть какой-нибудь способ сохранить закладки перманентно, до ручного удаления?

Спасибо.
Back to top
View user's profile Send private message
San_dr



Joined: 06 Dec 2010
Posts: 173
Location: г.Харьков, Русь

PostPosted: Sat Sep 06, 2014 4:57 am    Post subject: Reply with quote

Drums,
У Andrey_A_A в его сборке есть скрипт Сохранение и восстановление закладок - BookmarksPlus.vbs
http://forum.ru-board.com/topic.cgi?forum=2&topic=4764#1
Back to top
View user's profile Send private message
Drums



Joined: 20 Aug 2014
Posts: 9

PostPosted: Sat Sep 06, 2014 5:37 am    Post subject: Reply with quote

Боюсь, мне понадобится помощь. С первого запуска сборки - понял, что пользоваться ей не смогу, но файл BookmarkPlus.vbc вытащить удалось. Перекинул его в C:\Windows\SysWOW64\AkelFiles\Plugs\Scripts, но он, по всей видимости, не работает, так как ничего не происходит. Сам скрипт выключенный LineBoard автоматически не загружает, как написано в описании. Что мне делать?

P.S. Так же я не до конца понял, что именно делает этот скрипт? Куда он будет сохранять закладки и т.д.

P.P.S. Functions установил, вроде как...
Back to top
View user's profile Send private message
Skif_off



Joined: 20 Oct 2013
Posts: 1094

PostPosted: Sat Sep 06, 2014 8:57 am    Post subject: Reply with quote

Drums wrote:
Что мне делать?

Для начала - открыть скрипт и прочитать комментарии, там есть два готовых пункта меню, которые вам нужны. Один момент: т.к. вы ставите с заменой блокнота, вам придется выбрать другое место хранения файла с заладками (создайте его сразу, лучше в UTF-16 LE). Можно, например, в %AppData%\AkelPad\ListBookmarks.txt или другое место, куда есть права на запись.

Однако, у меня скрипт не заработал (останавливается с ошибкой), если у вас тоже, то лучше написать автору в ЛС (он не часто заглядывает) или, наверное, перебраться сюда.
Back to top
View user's profile Send private message
Drums



Joined: 20 Aug 2014
Posts: 9

PostPosted: Sat Sep 06, 2014 9:47 am    Post subject: Reply with quote

К чёрту! Рыться в скриптах мне не дано...
Back to top
View user's profile Send private message
Skif_off



Joined: 20 Oct 2013
Posts: 1094

PostPosted: Sat Sep 06, 2014 12:00 pm    Post subject: Reply with quote

Drums
Ну нельзя так сразу сдаваться Smile Ошибку у себя нашел: проглядел дату, надо было обновить Functions.vbs (5.9->6.1, в старом не было GetAllTabListBookmarks). Кстати, файл с закладками насильно сохраняется в UTF-8.

Т.к. у вас с заменой блокнота, делаете так:

- кладете BookmarksPlus.vbs в \AkelFiles\Plugs\Scripts, Functions.vbs в \AkelFiles\Plugs\Scripts\Include (брать из самой свежей сборки);
- т.к. у обычных программ, не запущенных с правами администратора, нет права записи в системные каталоги, создаете, например, в C:\Users\%User%\AppData\Roaming\ папку AkelPad, в нее кладете пустой текстовый файл ListBookmarks.txt, можете сразу указать кодировку UTF-8, но необязательно - скрипт сделает это насильно. Если выберете другое место, обратите внимание на переменные среды Windows, абсолютные пути не всегда удобны;
- добавляете в меню (плагин ContextMenu или на тулбар, но тогда нужны иконки) три пункта
Code:
-"Сохранить закладки всех открытых документов в файл ListBookmarks.txt" Call("Scripts::Main", 1, "BookmarksPlus.vbs", `"4" "%AppData%\AkelPad\ListBookmarks.txt"`)
-"Установить закладки открытым документам, прописанным в файле ListBookmarks.txt" Call("Scripts::Main", 1, "BookmarksPlus.vbs", `"5" "%AppData%\AkelPad\ListBookmarks.txt"`)
-"Заменить закладки открытым  документам, прописанными в файле ListBookmarks.txt" Call("Scripts::Main", 1, "BookmarksPlus.vbs", `"6" "%AppData%\AkelPad\ListBookmarks.txt"`)

Текст лучше все-таки подсократить, неприлично длинное название пунктов. Или даже сделать вложенным меню

Code:
"Сохранение/восстановление закладок"
{
 -"Сохранить закладки открытых файлов" Call("Scripts::Main", 1, "BookmarksPlus.vbs", `"4" "%AppData%\AkelPad\ListBookmarks.txt"`)
 -"Установить закладки открытым файлам" Call("Scripts::Main", 1, "BookmarksPlus.vbs", `"5" "%AppData%\AkelPad\ListBookmarks.txt"`)
 -"Заменить закладки открытым файлам" Call("Scripts::Main", 1, "BookmarksPlus.vbs", `"6" "%AppData%\AkelPad\ListBookmarks.txt"`)
}

До кучи:
Code:
"Открыть ListBookmarks.txt" OpenFile("%AppData%\AkelPad\ListBookmarks.txt")

Много не проверял, но со скриптом есть одна проблема: после того, как отработает, открывает файл ListBookmarks.txt. Непонятно, зачем?


З.Ы. Кстати, обратите внимание на LineBoardBookmarks.js (брать удобнее отсюда). Русификация: в самом низу скрипта вместо
Code:
//  else if (AkelPad.GetLangId(0 /*LANGID_FULL*/) == 1049 /*Russian*/)
...здесь пара-тройка десятков строк
//    sTxtReplaceWith   = "replace with:";
//  }

вставьте это

Code:
  else if (AkelPad.GetLangId(0 /*LANGID_FULL*/) == 1049 /*Russian*/)
  {
    sTxtInvalidArg    = "Неверный параметр: ";
    sTxtCut           = "Вырезать строки";
    sTxtCopy          = "Копировать строки";
    sTxtOpenInTab     = "Открыть в новой вкладке";
    sTxtPasteTo       = "Вставить в (переписать) строки";
    sTxtReplace       = "Заменить строки";
    sTxtDelete        = "Удалить строки";
    sTxtSelection     = "Выделенные строки";
    sTxtBookmarkLines = "Снабдить строки закладками";
    sTxtUnmarkLines   = "Убрать закладки";
    sTxtInverseBooks  = "Инвертировать закладки";
    sTxtGoTo          = "Перейти к";
    sTxtNext          = "Следующая";
    sTxtPrevious      = "Предыдущая";
    sTxtShowPanel     = "Показать панель";
    sTxtShowRuler     = "Показать линейку";
    sTxtLBSettings    = "Настройки плагина LineBoard...";
    sTxtBookLinesAll  = "С закладками";
    sTxtUnLinesAll    = "Без закладок";
    sTxtBookLinesSel  = "С закладками в выделенном";
    sTxtUnLinesSel    = "Без закладок в выделенном";
    sTxtExpand        = "Расширить к ближайшей закладке";
    sTxtExpandTop     = "Расширить вверх к предыдущей закладке";
    sTxtExpandBottom  = "Расширить вниз к следующей закладке";
    sTxtReduce        = "Уменьшить к ближайшей закладке";
    sTxtReduceTop     = "Уменьшить сверху к следующей закладке";
    sTxtReduceBottom  = "Уменьшить снизу к предыдущей закладке";
    sTxtAll           = "Все";
    sTxtInSel         = "В выделенном";
    sTxtReplaceWith   = "заменить на:";
  }

Ну или возьмите у Andrey_A_A готовый (версию скрипта сначала проверьте), только там что-то было не совсем то или без перевода, не помню.
Back to top
View user's profile Send private message
Drums



Joined: 20 Aug 2014
Posts: 9

PostPosted: Sat Sep 06, 2014 12:40 pm    Post subject: Reply with quote

Skif_off большое спасибо за помощь! Всё работает. К сожалению, самостоятельно открывается ListBookmarks.txt. И правда, зачем? Никак не исправить?

LineBoardBookmarks.js:

Что именно этот скрипт делает? Я закинул его в C:\Windows\SysWOW64\AkelFiles\Plugs\Scripts, но ничего не произошло.

Добавлено:

Есть пример контекстного меню для сохранения закладок только выбранного файла (одно окно в режиме многооконности), а не всех? Иначе удаляет все закладки, если файлы не открыты.
Back to top
View user's profile Send private message
Skif_off



Joined: 20 Oct 2013
Posts: 1094

PostPosted: Sat Sep 06, 2014 1:40 pm    Post subject: Reply with quote

Drums
Не знаю, как поправить, нужно смотреть. Посмотрите BookmarksPlus.vbs, в начале были ключи запуска, может там что-то подходящее? Или выложите вместе с Functions.vbs на rghost.ru, например, я с телефона.

Скрипт отнюдь не достаточно положить Smile Его нужно вызвать или прописать запуск вместе с AkelPad. Как правило, в начале скрипта более-менее подробно написано, что и как.
LineBoardBookmarks.js существенно расширяет возможности использования закладок (по переводу уже должно быть понятно), странно, что его у вас еще нет Smile У себя (есть кнопка на панели, есть пункт меню) запускаю без параметров:
Code:
-"Операции с закладками" Call("Scripts::Main", 1, "LineBoardBookmarks.js")

меню появляется в позиции курсора.

З.Ы. Наверное, пора попросить Instructor перенести крайние сообщения в тему обсуждения скриптов?
Back to top
View user's profile Send private message
Drums



Joined: 20 Aug 2014
Posts: 9

PostPosted: Sun Sep 07, 2014 12:58 am    Post subject: Reply with quote

Удалось запустить LineBoardBookmarks.js, спасибо. Но ничего полезного для себя не нашёл.

Меня всё ещё интересует вот это: "Есть пример контекстного меню для сохранения закладок только выбранного файла (одно окно в режиме многооконности), а не всех? Иначе удаляет все закладки, если файлы не открыты." Есть варианты?
Back to top
View user's profile Send private message
Skif_off



Joined: 20 Oct 2013
Posts: 1094

PostPosted: Sun Sep 07, 2014 1:16 pm    Post subject: Reply with quote

Drums wrote:
Меня всё ещё интересует вот это:

Как вы себе это представляете? Файл закладок кладется рядом с нужным файлом?

Вообще, в Functions.vbs есть готовая функция GetListBookmarks().
Back to top
View user's profile Send private message
Akuro



Joined: 27 Mar 2015
Posts: 47

PostPosted: Wed Apr 15, 2015 7:25 am    Post subject: Reply with quote

Sometimes I lose my bookmarks.
Where do bookmarks get saved? Into what file?
Back to top
View user's profile Send private message
DV



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

PostPosted: Wed Apr 15, 2015 8:38 am    Post subject: Reply with quote

Akuro wrote:
Where do bookmarks get saved? Into what file?

The bookmarks, marked text (if any) and folded parts (if any) are saved by the Session plugin. By default, it's saved to the file "AkelFiles\Plugs\Sessions\OnExit.session".
Back to top
View user's profile Send private message
Akuro



Joined: 27 Mar 2015
Posts: 47

PostPosted: Wed Apr 15, 2015 9:03 am    Post subject: Reply with quote

DV
I don't have a file "OnExit.session"
Only .session files named after my saved sessions. Which explains why it kept the bookmarks for these files residing in saved sessions, but not for my other - non-sessioned bookmarks. Or so I think.

Went to settings and enabled "Save on exit: OnExit" - I had this DISabled because I thought it would always save my sessions on exit. Which is something I don't want.

So, thanks for this information. This will - hopefully - solve my problem. Smile
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
Goto page Previous  1, 2, 3 ... 24, 25, 26, 27  Next
Page 25 of 27

 
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