Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » AkelPad (часть 2)
Текстовый редактор с открытым исходным кодом

Модерирует : gyra, Maz

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197

Открыть новую тему     Написать ответ в эту тему

gyra

Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
 AkelPad
текстовый редактор с открытым исходным кодом, созданный, чтобы быть маленьким и быстрым
Авторы: Шенгальц А. А. (aka Instructor; версии 3–4); Кузнецов А. И. (версии 1–2)

Последний релиз: 4.9.9 от 16 октября 2024
Последняя тестовая: 4.10.0 r4531 от 4 марта 2026; хроника изменений


Скачать
Программа релиз 4.9.9: многоязычная [exe]: x86 | x64; русская [zip]: x86 | x64; английская [zip]: x86 | x64      
тестовая (dev) 4.10.0 r4531 английская [zip]: x86 | x64 (соответствует r4531 исходников)    
Плагины полный авторский комплект: x86 | x64    
Скрипты авторская подборка: Instructor | KDJ | VladSh | Infocatcher    
Синтаксические файлы авторские дополнения к комплектным: akelpad.sf.net    
Шрифты авторская модификация для использования с плагином Fonts.dll: akelpad.sf.net    
Обновления авторская утилита AkelUpdater v6.9

Дополнения от сообщества
Программа Неофициальная компиляция из последних исходников 4.10.0 r4531 от 4.3.2026
Microsoft SDK для самостоятельной компиляции AkelPad и плагинов
NSIS 3.xx для самостоятельной компиляции AkelUpdater    
Плагины FileDialog: Диалог открытия файлов. Автор: dothen. Скачать: 1.3    
Help: вызов справки с поиском выделенного текста (альт. к ChmKeyword.js). Подробнее: 1, 2, видео. Автор: AZJIO. Скачать: плаг (или утилита)    
SpellCheck: проверка орфографии на движке Hunspell. Автор: random6_2020. Скачать (1.3.0.6): x64 | x86 | исходники    
TabBar: вкладки: кнопка закрытия, выделение активной, etc. Автор: dothen. Скачать: 2.5, библиотека TabBarEx.dll.    
TagsView: разбор исходного кода при помощи ctags. Подробнее: akelpad.sf.net | github. Автор: DV. Скачать: 0.5b github | sf.net    
Скрипты akelpad.sf.net | Infocatcher :: github | DV :: github | AZJIO | Andrey_A_A    
Синтаксические файлы • подборки: Lenchik & Drugmix & Skif_off | cuprum | Infocatcher :: github | VladSh | Andrey_A_A    
единым списком по расширениям (включая авторские, а также не вошедшие в перечисленные подборки)    
Утилиты ShellExt: пункт в контекстное меню проводника. Подробнее... Автор: Ralph Shane. Скачать: 4.8.3.0    
AnotherFileNearby: создание слепка редактируемого файла. Подробнее... Автор: AZJIO. Скачать: YaD    
Цветовые темы Atom One Dark Pro    
Сборки местная коллекция    
в составе сборок часто содержатся скрипты и синтаксические файлы, не имеющие самостоятельных ссылок, и потому не перечисленные в шапке

Помощь
Справка из исходников | FAQ 1 | FAQ 2
Справка от AZJIO: онлайн | в формате CHM (с дополнениями от сообщества)
Coder-файл: справочные комментарии на русском языке
Установка AkelPad 4 на Windоws 7 с заменой Блокнота Windows

Всего записей: 7932 | Зарегистр. 18-02-2006 | Отправлено: 22:03 10-07-2017 | Исправлено: yozhic, 10:35 05-03-2026
AkulaBig

Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
testuser3

Цитата:
CommentsAdd.js

Я применяю плагин toggleComments.js. Это одна кнопочка.

Всего записей: 6980 | Зарегистр. 11-03-2003 | Отправлено: 11:25 19-02-2026
testuser3

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
AkulaBig
Я тоже сначала им попользовался, но там примитивная логика - одна строка // если больше одной строки /**/. При том, второй вариант обязателно ставится с переносами, а тупая подстветка перестает подсвечивать комент как комент из-за переносов. Получается хочешь скрыть блок от глаз, а он нифига не скрывается, и к тому же крадет 2 дополнительные строки, какой тогда смысл?

Всего записей: 116 | Зарегистр. 18-02-2017 | Отправлено: 12:17 19-02-2026 | Исправлено: testuser3, 12:17 19-02-2026
AkulaBig

Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
testuser3

Цитата:
там примитивная логика - одна строка // если больше одной строки /**/.

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

Всего записей: 6980 | Зарегистр. 11-03-2003 | Отправлено: 12:40 19-02-2026
VSHY

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
testuser3
Цитата:
В JScript, что реально нету аналога функций String() и Space(), т.е. нельзя создать строку одной командой?

Код:
var result = new Array(count + 1).join(str);


Всего записей: 1238 | Зарегистр. 19-05-2008 | Отправлено: 15:20 19-02-2026
testuser3

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
var result = new Array(count + 1).join(str);  

Дело в чем, я просто раньше видел возгласы, что мол в js по шире выбор строковых функций чем в vbs.. Кстати сегодня рылся на другом форуме, и опять наткнулся на такое. Но я не вижу там обилие строковых функций.
В VBS есть более правильных целых две функции Space() и String(), которые создают строку одним выделением. Конечно VBS на самом деле тоже урезанное г.. и VBA на самом деле.., но я не знал, что на столько скудно с этим в JScript.

Всего записей: 116 | Зарегистр. 18-02-2017 | Отправлено: 16:19 19-02-2026
destiny_child



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Вы еще не забывайте! Плагин Scripts для AkelPad использует очень старый движок JScript (Microsoft Scripting Engine),  
основанный на ECMAScript 3 (1999–2009) с минимальными расширениями. ES6+ фич тут не предвидится!

Всего записей: 5286 | Зарегистр. 01-04-2006 | Отправлено: 16:59 19-02-2026
testuser3

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Вы еще не забывайте!
Я не забываю в том числе еще про то, что он на самом деле это не самый плохой движек, в сравнении с очень многими, а очень даже прикольный, учитывая еще то, как интересно он тут интегрирован

Всего записей: 116 | Зарегистр. 18-02-2017 | Отправлено: 17:07 19-02-2026
AkulaBig

Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
destiny_child
Разве автор сейчас не обновил движок до последнего? Ведь сейчас не надо отключать в Винде легаси.

Всего записей: 6980 | Зарегистр. 11-03-2003 | Отправлено: 17:24 19-02-2026
destiny_child



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Так Легаси это и есть тот старый движок, ещё времен величия Ослика.
Конечно те или иные правки были внесены. Но в любом случае код не добавил , не улучшил поддержку  
движка до уровня ES6+. Вроде была не то попытка, не то просто обсуждение о том, что пора движок от
Гугла V8 подключать, мол, тогда вторая жизнь откроется у функционала скриптинга. Но больше ничего  
такого не читал/не слышал...
 
Я вот мучаю скрипт бекапа безымянных вкладок, кое-что по инерции из современного JS вписал и....
Исполнение накрылось медным тазом.... Хотя я даже ИИ спросил - прокатит ли по поддержке он?

Всего записей: 5286 | Зарегистр. 01-04-2006 | Отправлено: 21:08 19-02-2026 | Исправлено: destiny_child, 21:08 19-02-2026
testuser3

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
destiny_child

Цитата:
Я вот мучаю скрипт бекапа безымянных вкладок, кое-что по инерции из современного JS вписал и....
Исполнение накрылось медным тазом....

Там в инклюдах в файле jsBeautifier.js есть реализации многих функций из нового JS.

Всего записей: 116 | Зарегистр. 18-02-2017 | Отправлено: 03:55 20-02-2026 | Исправлено: testuser3, 03:57 20-02-2026
testuser3

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Сделал свой комментировщик, чтоб не парились мозги
CommentsAdd2.js

Всего записей: 116 | Зарегистр. 18-02-2017 | Отправлено: 10:28 20-02-2026 | Исправлено: testuser3, 09:13 21-02-2026
destiny_child



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
а вот и бекапер
 
Вроде получилось и вроде работает. Кидаем в нужную папку Scripts в сборке,
добавляем в INI файле AkelPad'a в переменную CmdLineBegin=/Call("Scripts::Main",1,"ScratchSession.js")
и запускаем редактор как обычно...
 
Логика такая: каждые 45 секунд по таймеру все безымянные вкладки с непустым содержимым сейвятся в папку  
var TEMP_DIR = "C:\\TEMP\\AkelPadScratch\\"; // Папка для временных файлов  - меняйте куда вам удобнее.
Если пользователь САМ принудительно закроет такую вкладку - то её бекап грохается. Юзер САМ так решил!
ЕСЛИ программу просто закроем не глядя - то все эти вкладки "без имени" опять пересохранятся с последним содержимым
в папку TEMP_DIR. Причем запроса "А что делать с изменениями?" уже не будет! Причем его не будет именно и только для
таких вот вкладок. Если изменения сделали во вкладке с реальным файлом - то там всё по старому, с запросом
Ну и собственно при открытии с нуля опять редактора - если такие бекапы будут найдены - то они будут открыты так же
как безымянные новые вкладки в конце списка тех файлов, что могут быть открыть в рамках работы плагина Sessions.
 
Ну и разумеется всё это только для почитателей истинного MDI оконного режима редактора. Уж сорри...
 
Сами бекапы - чууууточку бинарны в пределах первых 12 байт, так что не удивляйтесь, когда будете их просто смотреть  
для проверки/сверки. Лучше всего проверять - просто довершившись автоматике закрытия/открытия редактора)))

Всего записей: 5286 | Зарегистр. 01-04-2006 | Отправлено: 13:33 21-02-2026 | Исправлено: destiny_child, 13:39 21-02-2026
testuser3

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
destiny_child
Проверил ваш скрипт на "голом" АкелПэде x86ом с отключенным плагином Sessions. В CmdLineBegin прописал то что нужно, создал папку C:\TEMP\AkelPadScratch. При первом включении, вышло уведомление, о том, что нужен режим MDI, включил режим MDI, перезагрузил, пооткрывал вкладки, немного повводил текста, выключил включил, вкладки открываются, но текст в них не восстанавивается. Иногда при выключении выскакиевает ошибка "Кодовая страница 1070 (точно не помню, по моему эта) не поддерживается". Дальше в тестирование углублялся, посколку занят своими поделками, которые у меня ползуще тянутся по беспечному склону горы Фудзи-Яма, однако желаю успехов в начинаниях и продолжениях!

Всего записей: 116 | Зарегистр. 18-02-2017 | Отправлено: 14:45 21-02-2026 | Исправлено: testuser3, 14:47 21-02-2026
destiny_child



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Кодовая страница 1070 ????
а это вообще что такое? Её в списке самого редактора нет! вы КАК там тестировали? в виртуалке досовского времени?
И да, если кодовая страница не сохранилась - то восстановления не будет. Это понятно. Но это и есть самый первый
вопрос - а ЧТО это за страница?????????
 
Добавлено:
Ну и если можете помочь, то в скрипте сразу строку
Код:
if (!mandatory) return;
ищем, комментируем
перезапускаем всё и рядом с создаваемыми файлами бекапа будет лежать файл лога. Его сюда.
Равно как и наверное INI Файл настроек редактора...
 
И я скромно надеюсь, что до первого закрытия редактора вы хотя бы 47 секунд выждали?
 
Добавлено:
И сам файл бекапа, если что - встроенным функционалом редактора сохраняется!
AkelPad.SaveFile... - т.е. если есть ошибка - то это уже ошибка редактора!
И кстати - какой версии билдец?

Всего записей: 5286 | Зарегистр. 01-04-2006 | Отправлено: 14:59 21-02-2026 | Исправлено: destiny_child, 15:09 21-02-2026
testuser3

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
У меня вот какой вопрос возник.  При создании скрипта комментирования возникла идея:  
Допустим у мне есть закомментированный блок текста, и мне не нравится как он закомментирован. Явыделяю его и нажимаю Ctrl+K, но не как обычно, а делаю "двойной клик". Т.е., по сути, скрипт должен сработать 2 раза, но при этом, первая запущенная копия скрипта, должна увидеть, что выделенный текст уже закомментирован, ожидать запуск 2й копии, чтобы как-то сообщить ей, о том, что она 2я. Это, в принципе, сделать легко, первый скрипт усыпляем, на, допустим 300 мс, а в это время запустится 2я копия и увидит, что она вторая с помощью AkelPad.ScriptHandle и т.о. поймет, что был "двойной клик" и сделает действие для сего события. Но, попутно возник вопрос, а есть ли у AkelPad какие-нибудь встроенные средства для обмена данными между скриптами, допустим какие-то глобальные свойства в которые один скрипт может записать какие-то данные и завершиться, а другой запущенный скрипт их прочитать? В принципе-то, при желании, такое можно смострючить своими силами, но интересно, предусмотрел и автор что-нибудь эдакое?

Всего записей: 116 | Зарегистр. 18-02-2017 | Отправлено: 15:11 21-02-2026 | Исправлено: testuser3, 15:13 21-02-2026
AkulaBig

Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ранее не использовал плагин Scroll. Теперь понадобилось подключить его. Отрабатывает прекрасно. Но закрыть Акельку после его использования невозможно. Вешает так, что через диспетчер приходится снимать Акельку.
Есть ли у кого-нибудь такая-же проблема и как ее решить?

Всего записей: 6980 | Зарегистр. 11-03-2003 | Отправлено: 15:13 21-02-2026
destiny_child



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
testuser3 (пост)
Цитата:
Т.е., по сути, скрипт должен сработать 2 раза, но при этом, первая запущенная копия скрипта, должна увидеть, что выделенный текст уже закомментирован, ожидать запуск 2й копии, чтобы как-то сообщить ей, о том, что она 2я

Ну так не дать запуститься второй? ScriptNoMutex(ULT_LOCKMULTICOPY)
 
Добавлено:
AkulaBig (пост)
Цитата:
Ранее не использовал плагин Scroll.

Был включен с момента первого использования редактора - никаких проблем...

Всего записей: 5286 | Зарегистр. 01-04-2006 | Отправлено: 15:23 21-02-2026
testuser3

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Ну так не дать запуститься второй?

Ну, по умному, конечно, лучше не дать запустится второму, а перехватить второй Ctrl+K.. Надо подумать над этим. Но тем не менее, вопрос не снимается по обмену данными между скриптамми, посколку это может быть полезно в других случаях.
 
Добавлено:

Цитата:
Кодовая страница 1070 ????  

Счас поймал эту ошибку  

Цитата:
"1075" кодовая страница не поддерживается


Цитата:
if (!mandatory) return;
ищем, комментируем
перезапускаем всё и рядом с создаваемыми файлами бекапа будет лежать файл лога. Его сюда.
Равно как и наверное INI Файл настроек редактора...  

Log-файл
 
 
Добавлено:
Версия Акельдыка 4.9.9 x86, оконный режим Многооконный (MDI)

Всего записей: 116 | Зарегистр. 18-02-2017 | Отправлено: 15:38 21-02-2026 | Исправлено: testuser3, 15:52 21-02-2026
destiny_child



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
testuser3 (пост)
Цитата:
Версия Акельдыка 4.9.9 x86

А что мешает взять последний 64 битный билд 4.10? что из шапки? Ну реально. Это что-то с чем-то....
 
Ну ок, спасибо за лог - ща почитаем.
 
Добавлено:
Ах да! Я же еще просил текст, что вы набирали и сохраняли - в отдельном UTF-8 файле (сохраните другим редактором)  
ну - и сам файл бекапа тогда уж. Ибо из того что я увидел - это просто ад в вашей либо настройке ОС, либо в самой системе...

Всего записей: 5286 | Зарегистр. 01-04-2006 | Отправлено: 16:12 21-02-2026
AkulaBig

Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
destiny_child

Цитата:
Был включен с момента первого использования редактора - никаких проблем...

Придется глубоко копать. Момент подвисания отследить не могу, так как работаю над реальным проектом и не до тестов.

Всего записей: 6980 | Зарегистр. 11-03-2003 | Отправлено: 16:19 21-02-2026
Открыть новую тему     Написать ответ в эту тему

Страницы: 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 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197

Компьютерный форум Ru.Board » Компьютеры » Программы » AkelPad (часть 2)


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.Board
© Ru.B0ard 2000-2026

LiteCoin: LgY72v35StJhV2xbt8CpxbQ9gFY6jwZ67r

Рейтинг.ru