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

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в 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

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

gyra

Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
AkelPad  4.9.8 (от 18 июля 2016)
 
Страница программы | Скачать | Описание | Плагины | Форум | Скриншот (без плагинов) | Предыдущая часть темы
 


AkelPad - текстовый редактор с открытым исходным кодом, созданный, чтобы быть маленьким и быстрым.



Скачать инсталлятор (многоязычный): x86 | x64  

Скачать архив (русская версия): x86 | x64  
Скачать архив (английская версия): x86 | x64  

Скачать сборник плагинов: x86 | x64  

AkelUpdater v6.8 - обновление программы, плагинов и скриптов

Авторы:
AkelPad 4 - Шенгальц А.А.
AkelPad 3 - Шенгальц А.А.
AkelPad Classic (2.x) - Кузнецов А.И.
AkelPad - Кузнецов А.И.
 


Различные старые версии
Сборки AkelPad
Установка AkelPad 4 на Windоws 7 "С заменой Блокнота Windows"
Готовый батник (запустить перед установкой AkelPad)  для установки AkelPad 4 на Windоws 7 x86 "С заменой Блокнота Windows"
 
FAQ | Файл справки онлайн
 
Коллекция скриптов
Дополнительные синтаксические файлы
 

Всего записей: 7379 | Зарегистр. 18-02-2006 | Отправлено: 22:03 10-07-2017 | Исправлено: AlexDAT, 01:12 26-07-2019
YuS_2



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
AZJIO
Могу только на всё это сказать:
Меня переубеждать не надо, я скорее только за. Дополнительные переменные, все равно, не сломают существующую расцветку, а возможностей универсальности в настройки добавят...
Но т.к. автор работает с программой, скорее всего, по остаточному принципу: есть свободное время+желание - какие-то работы ведутся, ну а на нет и суда нет, напомню - проект некоммерческий.
Поэтому, если есть желание в реализации, то надо бы составить список переменных (как минимум, придумать им названия), привести примеры из нескольких языков перечнем, что именно требует отдельного цветовыделения (это для большего веса аргументов, чем просто обычное желание) и оформить это всё в виде заявки-предложения на офф. форуме. Тогда, возможно, если у автора будет время и желание, это и реализуется. А пока у нас тут междусобойчики-обсуждения, то получается, что все эти хотелки мы сваливаем на чужие плечи, в том числе, даже создание имен переменных...

Всего записей: 2620 | Зарегистр. 03-02-2009 | Отправлено: 17:18 05-06-2019
Skif_off

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

Цитата:
Тут 12 цветов, в AutoIt3 по умолчанию 15 цветов, чтобы раскрасить правильно.

Не такая уж и проблемма, хватило 12ти.

Цитата:
А вообще 30 цветов позволили бы создать не ограничивающий стандарт для имеющихся языков

Помимо скаазнного YuS_2, это всё добро ещё нужно парсить, сиречь - тратить ресурсы... 12 + стили шрифта - это вполне разумный минимум (13 на самом деле, есть же ещё цвет обычного текста, а это до кучи жирный, курсив и жирный+курсив).
Можно подобрать цвета так, чтобы они нормально смотрелись в разных темах, тут, вроде, получилось. И есть ещё такой подход: использовать другие цвета, обычно не используемые в подсветке текста файла (спорное, пожалуй, решение).

Всего записей: 5808 | Зарегистр. 28-01-2008 | Отправлено: 13:02 06-06-2019
AZJIO



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

Цитата:
это всё добро ещё нужно парсить
в любом случае парсить надо, будь это другая переменная. Кроме как парсить список переменных, а их там и так придостаточно, к этому ещё 1% добавишь. А скрипт AutoIt3 сильно тормозит при 1000 переменных? Я делал обработку поиска дубликатов строк на основе создания переменных, если с тем же именем то переменной назначается +1, и далее сравнивается значения переменных, где имя переменной строка до 4000 символов и работает это быстро по сравнению с иным способом, потому что внутренний движок С++ для поиска значения переменной в таблице переменных настолько быстр, что вот твой список из 300 функций или добавление автозавершения на 3000 элементов, читай на 6000 строк минимум просто в миллион раз покроют скорость определения значения переменной.
 
_________________________
Меня вот заинтересовал вопрос, видел на форуме плаг-пример, вот этот бы плаг в PureBasic, чтобы попробовать своё что-то сделать, в js я почти не понимаю, кроме того что он некоторыми вещами похож на язык программирования, но вот если бы PureBasic, то не пришлось бы изучать js.
 
Панель лога у неё есть подсветка? Там где "Найти всё" получаем лог с прыжком к месту в тексте. Но список в светлой теме.
 
Нехватало ещё хоткея на коментирование/раскомментирование, поставил toggleComments.js, повесил хоткей Ctrl+Q, для pb в строку после 102 добавил

Код:
ahk: [ null, null, [";"] ],
pb: "ahk",

то есть pb как ahk или можно было конкретно указать pb: [ null, null, [";"] ],
работает!

Всего записей: 4014 | Зарегистр. 03-05-2006 | Отправлено: 18:47 06-06-2019 | Исправлено: AZJIO, 20:05 06-06-2019
YuS_2



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

Цитата:
видел на форуме плаг-пример, вот этот бы плаг в PureBasic, чтобы попробовать своё что-то сделать

все плагины могут служить примером, ибо исходный код открыт.
На счет purebasic - а почему не powershell, python, ruby, perl ... и т.д., и т.п. ?
А .js - потому, что плагин:

Цитата:
Scripts плагин основан на технологии Windows Scripting Host (WSH),
таким образом, Вы можете использовать различные Windows Component
Object Model (COM) объекты. Например, Вы можете осуществить
поиск по регулярным выражениям, используя RegExp объект, работать
с файлами, используя FileSystemObject объект, создавать ярлыки,
работать с реестром Windows, используя WshShell объект, или
работать с функциями сети, используя WshNetwork объект. Также Вы
можете создавать и запускать скрипты, которые взаимодействуют с
внешними приложениями, поддерживающими Automation (такими как
Word и Excel).

WSH встроен в windows, а purebasic? Но возражать ведь никто не будет, если кто-то возьмется и напишет такой плагин...

Всего записей: 2620 | Зарегистр. 03-02-2009 | Отправлено: 11:44 07-06-2019
AZJIO



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
YuS_2
Потому что purebasic конвертируется в asm, поэтому на выходе полноценный плаг (dll) как будто он написан на С++, с разницей лишь код на purebasic. А все остальные языки всего лишь нужно изучать 2-4 года, если хочешь писать, а не на половину клянчить по каждой мелочи. Ну а также если воткнуть AutoIt3 куда нибудь в плаги, то он также может получить доступ к объекту RichEdit и у него в наборе 100 функций для работы с ним, хоть сам откроет файл обработает и воткнёт, или вытащит из окна обработает и воткнёт. НО только AutoIt3 несколько МБ вместе с UDF, а на PureBasic плаг получился бы маленьким - 100кб.
Я вчера, кстати, хотел найти описание работы плага-примера, но только сейчас нашёл что плаг-пример в закачках на главной (просто подзабыл где я его видел), а в поиске надо было искать "AkelDLL".

Всего записей: 4014 | Зарегистр. 03-05-2006 | Отправлено: 15:25 07-06-2019 | Исправлено: AZJIO, 15:48 07-06-2019
YuS_2



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

Цитата:
поэтому на выходе полноценный плаг (dll)

а, так это совсем о другом речь... я-то думал, что требуется плаг по аналогу Scripts, только для purebasic...
 

Цитата:
но только сейчас нашёл что плаг-пример в закачках на главной

Да, просто страницы закачек и плагинов разделены, не сразу найти можно. Возможно, в шапку прямую ссылку на плагины лучше занести.Так оно уже там...
http://akelpad.sourceforge.net/ru/plugins.php
- там и пример, и все плагины с исходными кодами представлены...
 

Всего записей: 2620 | Зарегистр. 03-02-2009 | Отправлено: 17:08 07-06-2019 | Исправлено: YuS_2, 17:09 07-06-2019
AZJIO



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
YuS_2
Всё это хорошо, но я бы никогда не написал плаг для Notepad++ просматривая даже шаблон плага, не говоря уже о готовых плагах на С++, где кроме прочего наворочено всего в куче. Но мне удалось разобраться, когда шаблон плага был написан на PureBasic, а в крайнем случае было бы обсуждение плага. Ладно, глаза боятся а руки делают, попробую.
 
yozhic
Что-то там какой-то костыль в ExecuteDocument.js. Какие то стороние скрипты прикручены для просмотра HTML и т.д. Разве нельзя из winapi использовать shellexecute, которая откроет файл таким образом как это происходит кликом в проводнике. Если файл ассоциирован на открытие в определённой программе, он в ней и откроется. А вот для EXE возможно использовать типа RUN в AutoIt3 или RunProgram в PureBasic.
 
Ну хоть попытку сделал
Код:
AkelPad.Exec('C:\\Program Files\\Mozilla Firefox\\firefox.exe "' + pEditFile + '"');
для HTML

Всего записей: 4014 | Зарегистр. 03-05-2006 | Отправлено: 20:31 07-06-2019 | Исправлено: AZJIO, 00:01 08-06-2019
kot1313



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ПОдскажите пожалуйста, как
Вставить в начало выделенныз строк  
Слово REM или ::
Нашел кнопку Вставить (море разноовбразных вставок),  
но там искомых символов нет ...
Всё есть, в т.ч. точка с запятой, а вот REM или :: нет
Странно. Неужели никто не вставляет комментарии в батники ?

Всего записей: 1799 | Зарегистр. 11-12-2002 | Отправлено: 00:57 08-06-2019
AZJIO



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
kot1313
Открыть скрипт toggleComments.js, изменить правило переключения комментариев.
Использовать рег.выр. типа \n заменить на \n REM
 
_______________
Посмотрел плаг Лог, есть срикт поиска "Найти все", который суёт найденное в консоль. Я посмотрел настройки, там есть псевдоним темы, задал au3, он включил чёрную тему. В описании сказано что надо указывать с точкой типа .html, но не важно, я создал псевдоним sss.coder и указал там рег.выр

Код:
QuotesRE:
1    "\(\d+,\d+\)"    "\0=(0,#AFE7B3,0)"
1    "^\d+:"    "\0=(0,#E3CEAB,0)"
то есть искать фрагменты типа (14,35) чтобы подсветить и число в начале количество найденных. Но видимо он подключает только только цвет фона и текста. Как то плаг консоли в Notepad++ имел возможность поиска в ней текстов по шаблону чтобы их подсветить, тем самым делая результаты вывод более форматированными и удобными для чтения. В справке по плагу пока не нашёл этих вещей с цветом, кроме как описать способы вызова и вывода в консоль и прыжок из неё к строке. Вот в плаге поиска ещё бы подсветить найдённое в консоли.

Всего записей: 4014 | Зарегистр. 03-05-2006 | Отправлено: 01:17 08-06-2019
kot1313



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

Цитата:
Открыть скрипт toggleComments.js, изменить правило переключения комментариев.

В этом файле 1177 строчек кода.
А где конкретно изменить это правило.
поиском по слову "переключен" в этом файле ничего не нашел...
За помощь конечно спасибо
Но ...
 
PS1 Мне всего-то надо иногда (раз в квартал) закомментировать\вставить REM в несколько строчек батника
Это занимает вручную меньше минуты.
Думал, что в акелпаде эта функция вставки есть - выделил+нажал на кнопку=добавил REM в начало строчек.
 
PS2 Если я буду изучать язык программирования, то на это уйдёт неделя-другая ...
А Смысл ? Если я бы хотел это сделать, то сделал бы исчо лет 20-30 назад.
Тем более, что Fortran4 давным-давно сдал на 5 (на ЕС1065)    
На перфокартах и перфоленте - терминалы тогда были тока для избранных ...
 
PS3 Алгоритм "Поиск и замена" я использовал несколько лет назад, но проще закомментировать строчки вручную,  
а не использовать метод "через Пекин по пластунски"
 
Добавлено:
Исчо вопрос на засыпку !
Можно ли из акелпада, нажав хоткей, сразу попасть в проводник на файл,  
который в данный момент открыт и активен (если открыто несколько файлов) ?

Всего записей: 1799 | Зарегистр. 11-12-2002 | Отправлено: 03:24 08-06-2019 | Исправлено: kot1313, 03:34 08-06-2019
mig73



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
kot1313
Вы используете старый скрипт toggleComments.js. В последнем скрипте toggleComments.js Version: 0.4.4 - 1303 строки и комментарии для командных файлов предусмотрены. Править ничего не надо, просто выделить строки и нажать для комментария и нажать ещё раз для отмены.  Для bat и cmd по умолчанию предлагается именно "::", можно по умолчанию сделать и rem, но не заморачивался за ненадобностью.
 
Добавочный вопрос тоже давно реализован. Для этого нужно подключить плагин Explorer (Explorer.dll). Кнопка этого плагина включает сбоку панель, в которой сразу подсвечивается активный файл в дереве и путь где он находится. Этот плагин входит в стандартный сборник плагинов для AkelPad из шапки.

Всего записей: 5235 | Зарегистр. 24-02-2010 | Отправлено: 05:13 08-06-2019
yozhic



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
AZJIO (пост)
Цитата:
Разве нельзя из winapi использовать shellexecute

Можно, конечно. Но там прикручен скрипт от KDJ (HTMLView.js, кажется), который запускает IE во фрейме (COM-объект). Это намного шустрее. И идее «Быстрого просмотра» больше соответствует: открыл, взглядом окинул, по Esc закрыл = пара секунд. Firefox же (у меня Vivaldi) пока заведётся, пока то, пока сё...

Всего записей: 1522 | Зарегистр. 20-03-2008 | Отправлено: 09:42 08-06-2019
Alextpp



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

Цитата:
ПОдскажите пожалуйста, как
Вставить в начало выделенныз строк  
Слово REM или ::
Нашел кнопку Вставить (море разноовбразных вставок),  
но там искомых символов нет ...  

В Акель нет мультикареток? В CudaText  я бы просто поставил каретку, потом Selection / More carets / Down Until end, это добавит каретки на все строки. И ввод ::

Всего записей: 948 | Зарегистр. 01-11-2004 | Отправлено: 14:22 08-06-2019
yozhic



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alextpp (пост)
Цитата:
В Акель нет мультикареток?

Есть ColumnPaste:
   
А так чтоб в разных местах и не строго по вертикали, и через строку – такого, да, нету.

Всего записей: 1522 | Зарегистр. 20-03-2008 | Отправлено: 14:37 08-06-2019
Andrey_A_A



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Alextpp, в сборке AkelPad Image скрипт InsertParagraph.vbs

Код:
-"Вставить REM. в начало выделенных строк" Call("Scripts::Main", 1, "InsertParagraph.vbs", `"REM "`) Icon("%a\AkelPadImage.dll",591)


Всего записей: 623 | Зарегистр. 15-08-2011 | Отправлено: 15:01 08-06-2019
YuS_2



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

Цитата:
Думал, что в акелпаде эта функция вставки есть - выделил+нажал на кнопку=добавил REM в начало строчек.

Да всё есть, только терпение и труд - всё перетрут
В смысле надо читать справку, форум и учиться... иначе никак.
1. Копируем в буфер то, что необходимо вставить в начало строк.
2. Делаем вертикальное выделение от первой к последней строке либо наоборот: Alt+Shift+DownArrow/UpArrow, либо Alt+ЛКМ с удержанием
3. Alt+V
Всё.
 

Цитата:
Можно ли из акелпада, нажав хоткей, сразу попасть в проводник на файл,  
который в данный момент открыт и активен (если открыто несколько файлов) ?

Можно даже проводник в AP открыть и он будет переходить в папки по переходу по вкладкам(файлам)

Всего записей: 2620 | Зарегистр. 03-02-2009 | Отправлено: 15:50 08-06-2019
RootKey

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Для себя добавил поиск по словам на ленту и дополнительные параметры при вызове скрипта SearchReplace.js  
Может кому пригодится
   
пример вызова

Код:
 
AkelPad.Call("Scripts::Main", 1, "SearchReplace.js", "-DefButtonID=1017 -FindWords=1 -Direction=4 -RegExp=1 -Sensitive=0 -EscSequences=1", "");
 

https://www.upload.ee/files/10068042/SearchReplace.js.html
 
 
 
 

Всего записей: 159 | Зарегистр. 31-03-2016 | Отправлено: 19:07 08-06-2019 | Исправлено: RootKey, 19:19 08-06-2019
AZJIO



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

Цитата:
поиском по слову "переключен"  
Вот если найдёшь там фразу "AZJIO не прав", тогда можешь успокоиться. А если серьёзно строка:

Код:
bat: [ null, null, ["::", "rem "] ],
если исправишь на
Код:
bat: [ null, null, ["REM ", "::"] ],
то смысл следующий первый элемент приоритетный, последний второсортный. Допустим коментарий с REM, делаешь хоткей и REM убирается, делаешь опять хоткей и вместо REM приоритетный вид :: отсюда вывод сделай приоритетным REM, тогда :: будет заменятся на REM при двукратном переключении. Я этого ничего не знал, просто попробовал и всё. И у меня REM чувствителен к регистру, то есть rem не убирает REM, а REM  не убирает rem. Метод тыка.
 

Цитата:
Можно ли из акелпада, нажав хоткей, сразу попасть в проводник на файл,  
что-то похожее на это:
Код:
AkelPad.Exec('C:\\Program Files\\Mozilla Firefox\\firefox.exe "' + pEditFile + '"');
только explorer вместо firefox, и AkelPad.GetEditFile(0); вместо pEditFile, просто последняя переменная. И на эту строку-скрипт повешать хоткей. Вот сделал
Код:
AkelPad.Exec('C:\\Windows\\explorer.exe /select,"' + AkelPad.GetEditFile(0) + '"');
или даже так
Код:
AkelPad.Exec('%windir%\\explorer.exe /select,"' + AkelPad.GetEditFile(0) + '"');

 
yozhic хоткеи помедленней я не успеваю фотографировать. Как кучу строк вставил? Я бы нажимал несколько раз дублировать строку.

Всего записей: 4014 | Зарегистр. 03-05-2006 | Отправлено: 19:26 08-06-2019 | Исправлено: AZJIO, 19:49 08-06-2019
YuS_2



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

Цитата:
Я бы нажимал несколько раз дублировать строку.

этот алгоритм:

Цитата:
1. Копируем в буфер то, что необходимо вставить в начало строк.  
2. Делаем вертикальное выделение от первой к последней строке либо наоборот: Alt+Shift+DownArrow/UpArrow, либо Alt+ЛКМ с удержанием  
3. Alt+V  

работает и для целых строк, только сначала создаются пустые строки...

Всего записей: 2620 | Зарегистр. 03-02-2009 | Отправлено: 19:53 08-06-2019
AZJIO



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Есть опция "Сохранять время файла". Уж не помню как она по умолчанию, но я естественно отвечаю "конечно", я же должен видеть что файл изменился и отсортировался вверх по времени. Оказываются какое время сохранять то ведь не сказано, и сохраняет старое время, как будто файл не изменялся, я потом парюсь какие же я файлы обновил чтобы добавить их в новый комплект (по работе). Вроде мелочь, но если нет точного понятия что имеется ввиду, то значит названо неправильно, а надо "Сохранять старое время файла" или "Не изменять время файла".
 
reg-файл для добавления в конт. меню
 
На счёт дубликатов строк и выделенного, кстати часто нужна функция чтобы выделенное вставлялось в конец строки, например у вес есть перечисление zd34, zd7, zd89, zd678 мне нужно добавить ещё десяток, но ", zd" повторяемая часть а числа разные, я выделяю ", zd" и жму Ctrl+D и получу "zd34, zd7, zd89, zd, zd678", в итоге мне приходится делать Ctrl+C, перенести курсор в конец строки, нажать Ctrl+V несколько раз, или 1 раз, потом выделить снова и жать Ctrl+D, хотя зачем не важно ведь каким хоткеем добавлять. В итоге было бы удобно добавить хоткей Ctrl+Shift+D, зажать Ctrl+Shift и несколько раз нажать D. Уже сделал
 
Упростил

Код:
var sSelText=AkelPad.GetSelText();
if (sSelText=="") {
  AkelPad.Call("Scripts::Main", 1, "LinesSelectCopyMoveDuplicate.js", "D 1")
  WScript.Quit();
}  
 
var nSelStart=AkelPad.GetSelStart();
var nSelEnd=AkelPad.GetSelEnd();
AkelPad.SetSel(nSelEnd, nSelEnd);
AkelPad.ReplaceSel(sSelText);
AkelPad.SetSel(nSelStart, nSelEnd);

Всего записей: 4014 | Зарегистр. 03-05-2006 | Отправлено: 02:11 09-06-2019 | Исправлено: AZJIO, 07:41 09-06-2019
Открыть новую тему     Написать ответ в эту тему

Страницы: 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

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

Имя:
Пароль:
Сообщение

Для вставки имени, кликните на нем.

Опции сообщенияДобавить свою подпись
Подписаться на получение ответов по e-mail
Добавить тему в личные закладки
Разрешить смайлики?
Запретить коды


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

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

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru