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

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

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

gyra

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

Последний релиз: 4.9.9 от 16 октября 2024
Последняя тестовая: 4.10.0 r4515 от 21 августа 2025; хроника изменений


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

Дополнения от сообщества
Программа Неофициальная компиляция из последних исходников 4.10.0 r4514 от 19.07.2025
Microsoft SDK для самостоятельной компиляции AkelPad и плагинов
NSIS 3.xx для самостоятельной компиляции AkelUpdater    
Плагины FileDialog: Диалог открытия файлов. Подробнее... Автор: dothen. Скачать: 1.3    
Help: вызов справки с поиском выделенного текста (альт. к ChmKeyword.js). Подробнее: 1, 2, видео. Автор: AZJIO. Скачать: плаг (или утилита)    
SpellCheck: проверка орфографии на движке Hunspell. Подробнее... Автор: random6_2020. Скачать: x64 (1.3.0.4) | x86 (1.3.0.5) | исходники    
TabBar: вкладки: кнопка закрытия, выделение активной. Подробнее... Автор: dothen. Скачать: 1.1, 1.2, 1.3, 1.4.    
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, 09:03 22-08-2025
yozhic



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
qonyx
Прочтите в справке синтаксис регулярных выражений — это недолго и несложно.

Всего записей: 3136 | Зарегистр. 20-03-2008 | Отправлено: 22:48 18-07-2025
qonyx

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
yozhic
я же спрашиваю не то, что мне читать, а про возможность поиска с использованием символов * и ?

Всего записей: 133 | Зарегистр. 16-04-2024 | Отправлено: 00:13 19-07-2025
Skif_off

Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
AZJIO
1. Если ${OP} сливается с цветом по умолчанию, значит с темой что-то не так.
2. Обычно принято как-то отделять функции и переменные от ключевых слов управления ходом процесса. Как по мне, как минимум в подсветке должны отличаться строки, комментарии, условные операторы и прочие ветвления.
3.

Цитата:
В моей теме дефолтный цвет шрифта и строки в кавычках по сути тот же обычный текст одного цвета

Заточить вид под себя - это удобно, но coder-файлы по возможности должны быть универсальные.
Тема тёмная? У меня все предложенные #xxxxxx выглядят не очень.

Цитата:
Звездочка вплотную может быть только с цифрами

Этот код

Код:
Dim As Integer one=6,two=3,three
three=one*two-two

валидный?
4. Цифры как разделитель не подсвечиваются внутри слова только если слово не захвачено ранее в Quotes или QuotesRE.
 
qonyx
Добавить поиск с помошью масок можно скриптом, переведя их в регэксп и учтя метасимволы (что-то типа FindReplaceEx.js от KDJ или попроще, просто подсветив все вхождения). Только зачем? Для поиска/замены в тексте традиционно используют обычный текст, esc-прследовательности и регэкспы, а чтобы из маски сделать регэксп много усилий не нужно.
Ну или плагин QSearch посмотрите.

Всего записей: 6704 | Зарегистр. 28-01-2008 | Отправлено: 02:08 19-07-2025
GGS



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

Цитата:
возможность поиска с использованием символов * и ?

Да, такая возможность есть!

Всего записей: 1051 | Зарегистр. 25-03-2002 | Отправлено: 03:59 19-07-2025
yozhic



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
qonyx (пост)
Цитата:
я же спрашиваю не то, что мне читать, а про возможность поиска с использованием символов * и ?

А там ответ на ваш вопрос.
 
Добавлено:
* = .*
? = .
это если речь о стандартных wildcards. Но вы не уточнили синтаксис, поэтому проще прочесть 3 строчки в справке про Регулярные выражения и найти соответствие самому.

Всего записей: 3136 | Зарегистр. 20-03-2008 | Отправлено: 04:24 19-07-2025
AZJIO



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

Цитата:
1. Если ${OP} сливается с цветом по умолчанию, значит с темой что-то не так.  

Я об этом ничего не говорил. ${STR} и ${OP} не одно и тоже. Я говорил что ${OP} и ${IF} по сути операторы, и во многих: AutoIt3, PureBasic это считается одним и тем же - ключевыми словами одного цвета. Хотя операторы там +-/* не одного цвета с And и прочими. Операторы и разделители там одного цвета, а ключевые слова другого.
 

Цитата:
Заточить вид под себя - это удобно, но coder-файлы по возможности должны быть универсальные.

я не против переменных, но их не хватает, из скромного обилия я не смог соорудить для всех тем как я делал для Notepad++, так как там переменные задаются для каждого языка отдельно и могут иметь разные цвета в разных языках. Я предлагал сделать общие добавочные, но если это не произошло, что толку если я задам свои переменные, а их не будет в вашей теме.
 

Цитата:
Тема тёмная?

Да тёмная, ключевой смысл не взять мои цвета, а подсветить больше чем есть.
 

Цитата:
 только если слово не захвачено ранее в Quotes или QuotesRE

ага, поэтому я у себя в подсветке PureBasic и не вижу подсвеченных чисел внутри чего либо
 
yozhic

Цитата:
это если речь о стандартных wildcards.

я бы сейчас назвал это упрощённый регвыр от майкрософт. Так что предложение воспользоваться полноценным регвром вполне логично, чем писать модуль упрощённого регвыр из полноценного, пока пишешь отпадает необходимость его использовать по мере изучения полноценного.

Всего записей: 4682 | Зарегистр. 03-05-2006 | Отправлено: 05:28 19-07-2025 | Исправлено: AZJIO, 05:36 19-07-2025
yozhic



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

Код:
while (issue) {
    if (read == true) {
        break;
    } else {
        alert("Pls, read");
    }
}

 

Всего записей: 3136 | Зарегистр. 20-03-2008 | Отправлено: 09:54 19-07-2025 | Исправлено: yozhic, 10:09 19-07-2025
Skif_off

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

Цитата:
Я об этом ничего не говорил. ${STR} и ${OP} не одно и тоже.

Не одно и то же, ${STR} упоминал только в п. 3.
Тут

Цитата:

Цитата:

Цитата:
1. Подсвечивать все функции подряд - это как-то не очень, как по мне, хорошо бы разделять доступные из коробки функции и самописные.

1. Если не подсвечивать, то они сливаются с переменными.

1. Если ${OP} сливается с цветом по умолчанию, значит с темой что-то не так.

я, видимо, не понял, что подразумевались самописные функции? (Изкоробочные-то должны подсветиться.) Мне не по душе подсвечивать всё подряд, т.к. цвет - индикатор, что с именем не напортачил и своё отличишь.
Спутать "name" и "name()" - это как-то не очень по-взрослому
 
Отвечу сам:
этот код

Код:
Dim As Integer one=6,two=3,three
three=one*two-two
Print three

онлайн-компиллер посчитал валидным и выдал 15, получается, подсвечивать "*two" как указатель нельзя.

Всего записей: 6704 | Зарегистр. 28-01-2008 | Отправлено: 06:30 20-07-2025
AZJIO



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

Цитата:
подсвечивать "*two" как указатель нельзя

тут можно либо проверить пробел впереди, потому что "one *two" как умножение выглядит плохим видом, либо проверить, что перед указателем нет числа или буквы, то есть начало строки или разделители [(=,\r\n]
точнее:

Код:
[^\w\t ][\t ]*(\*[\d_a-zA-Z]++)

 
В AutoIt3 самописные предпочтительно начинать с "_", если такового нет, то да, либо как то приоритет поменять, сначала подсветить встроенные, а потом оставшееся  самописные. Либо использовать "подсветить внутри подсвеченного".
 
Вот для функций. Первая строка перечисление всех встроенных функций, вторая строка - оставшиеся неподсвеченные предыдущей строкой, то есть прочие.

Код:
1    "(?i)\b(append|binary|bload|bsave|close|encoding|alias|freefile|beep|input)(?=\s*\()"    "\1=(0,#AAA6DB,0)    "
1    "\b([\d_a-zA-Z]{3,})(?=\s*\()"    "\1=(0,#7D8AE6,0)    "

 
А почему функции тоже как ${IF} подсвечены? Там есть Append как ключевое слово без скобок, а lof как функция со скобками. И оба ${IF}. Я думаю со скобками это функции должны подсвечиваться как функции, а без скобок как ключевое слово. Надо ещё почитать, может это как макрос в AutoIt3, то есть функция без параметров и без возврата ошибок, просто возвращает в позицию вызова результат.
 
Я перепаковал русскую справку FreeBasic, скачать с чёрным стилем.
 
Функции WinAPI (PostMessage, CreateWindowEx) не отличаются ничем, как и константы WM_CREATE, WM_DESTROY. По сути для них, для самых популярных можно выделить отдельный цвет. Типы данных тоже можно подсветить, ведь это объявление, а не действие, перменная ${VAR} вроде как не подходит для этого.
 
Добавил... универсальный тип после "As" захватывает и WinAPI типы.

Код:
 
QuotesRE:
; типы
; 0    "\b(byte|ubyte|short|ushort|long|ulong|integer|uinteger|longint|ulongint|single|double|const|pointer|ptr|unsigned|string|zstring|wstring|object)\b"    "\1=(0,#ddFF00,0)"
0    "\b(as) ([\d_a-zA-Z]+)\b"    "\1=(0,${IF},0) \2=(0,#ddFF00,0)"
; Указатель "*" исключает умножение
1    "(?:[^\d_a-zA-Z\t ][\t ]|^)\K(\*[_a-zA-Z][\d_a-zA-Z]*)"    "\1=(0,#F3CF70,0)    "
; сообщения
; 1    "\b(WM_[A-Z]+)\b"    "\1=(0,#D998DE,0)    "
; WinAPI константы  
1    "\b([A-Z]+_[A-Z]+)\b"    "\1=(0,#D998DE,0)    "
; элемент структуры
1    "([\d_a-zA-Z]+?)\.([\d_a-zA-Z]+?)"    "\1=(0,#F666FF,0) \2=(0,#FFA704,0)    "
1    "^[\t ]*\.([\d_a-zA-Z]+)"    "\1=(0,#FFA704,0)    "
1    "\b([\d_a-zA-Z]+)(?=\.)"    "\1=(0,#F666FF,0)    "
 
Delimiters:
1    0    ${DEL1}    0    }
1    0    ${DEL1}    0    {
 
Words:
0    0    ${DEL1}    0    _

Всего записей: 4682 | Зарегистр. 03-05-2006 | Отправлено: 05:54 21-07-2025 | Исправлено: AZJIO, 17:35 21-07-2025
El Sanchez



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

Цитата:
подсвечивать "*two" как указатель нельзя

Skif_off, конечно нельзя, * может быть разными операторами (мultiply или valueof)

Цитата:
тут можно либо проверить пробел впереди

AZJIO, проверяйте. До, после, что хотите.

Код:
 
type pInteger as Integer Ptr
type ppInteger as pInteger Ptr
 
dim x as Integer = 10
dim p as pInteger = @x
dim pp as ppInteger = @p
dim As ZString      *              (10+1) z => "foo"
 
print "x ="; x
print "p ="; p
print "*p ="; *p
print "pp ="; pp
print "*pp ="; *pp
print "*    pp ="; *   pp
print "**pp ="; **pp
print "** pp ="; ** pp
print "* * pp ="; * * pp
print "x *     * * pp ="; x *     * * pp
print "z ="; z
 


Цитата:
потому что "one *two" как умножение выглядит плохим видом

AZJIO, абсолютно валидный синтаксис не может быть плохим. Регулярки годятся только для токенизации, не более. Для того, чтобы знать какой это токен и его роль, нужен лексер.
 

Всего записей: 510 | Зарегистр. 23-12-2008 | Отправлено: 16:22 22-07-2025
AZJIO



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

Цитата:
нужен лексер

Только лексер не подключается к AkelPad. У PureBasic то же есть лексер, да ещё работающий для IDE написанный со Scintilla, но это не помогает подключить его к Notepad++ тоже использующего Scintilla. Во общем в мечтах красиво, а в реальности ничего.
 

Цитата:
абсолютно валидный синтаксис не может быть плохим

Но из худшего выжать лучшее. Во многих языках есть правила хорошего кода, несмотря на то что компилятор позволяет всякое. Регвыр всё же не логический анализатор, где можно создавать условия, да и то идеальный может создать только автор в совершенстве понимающий всю структуру языка, а пользователи могут только приближаться по мере изучения. К примеру если я пользуюсь PureBasic, то для него я сделал вполне устраивающий меня кодер (на 99%). А глубоко углубляться в FreeBASIC нет желания, тем более на позволительный, но нерекомендуемый синтаксис. В PureBasic тоже можно писать криво и компилятор схавает. Например "-1" в PureBasic может записываться как "- 1" с пробелом. Но такое можно получить только преобразователями кода (пользовательским инструментом), который выставляет пробелы для читабельности, но не распознаёт это как присвоение "-1", и вот тогда то с неполноценным исправителем кода я узнал, что компилятор на этом не спотыкается. И пользователи на форумах тоже находили необычные вещи. Кто бы мог подумать что так можно писать, но находятся критики при этом жалуются, мол нельзя такое, давай исправляй компилятор. И "- 1" для меня не страшно, но усложнение замедляет анализатор, по факту просто угадываешь поведение компилятора.

Всего записей: 4682 | Зарегистр. 03-05-2006 | Отправлено: 11:11 23-07-2025
yozhic



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

Всего записей: 3136 | Зарегистр. 20-03-2008 | Отправлено: 12:09 24-07-2025
Skif_off

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

Цитата:
А почему функции тоже как ${IF} подсвечены?

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

Цитата:
Там есть Append как ключевое слово без скобок, а lof как функция со скобками

Скорее всего это попытка обойти использование некоторых ключевых слов одновременно и как функций, и как режимов. Типа как Input.
К слову, не все функции со скобками и макросы умеют принимать параметры.
(Чтобы добавить фигурные скобки, нужна страничка документации или код FB (он сам себя вроде компилит).)
 
El Sanchez

Цитата:
абсолютно валидный синтаксис не может быть плохим

Он может быть плохочитаемым или нечитаемым вообще (типа килобайт 200-300 JavaScript одной строкой). Для одноразовой поделки на десяток строк, на коленке для себя - пофиг, конечно, но...

Цитата:
Регулярки годятся только для токенизации, не более. Для того, чтобы знать какой это токен и его роль, нужен лексер.

В некоторой мере от языка зависит. Тот же AutoIt, например, прекрано парсится в т.ч. регулярками (а можно и без них почти всё, простым поиском) - функции, переменные, макросы, разного рода операторы подсвечиваются, фолдинг работает. Ну и результат с регэкспами/поиском может получиться лучше, чем лексер из Scintilla, парсеры Universal Ctags или Lazarus.
А с некоторыми да, без лексера тяжеловато или никак - Ruby (если только не ориентироваться исключительно на рекомендации от сообщества, а не возможности языка вообще) или, там, YAML.
 
P.S. Вообще, coder-файлы - дело такое, когда лучше не упарываться слишком: QuotesRE - отличная вешь, пока не переборщишь или не лажанёшь; Rule ID, Parent ID, Rule file - это прекрасно, но у себя подсветку HTML откатывал; xml.coder вполне годен, но на FB2 тоже подтормаживал... Где-то надо останавливаться

Всего записей: 6704 | Зарегистр. 28-01-2008 | Отправлено: 02:27 25-07-2025
AZJIO



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Skif_off
Лексеры однопроходные скорее всего и имеют логику из-за чего их работа в десятки раз быстрее. Регвыр же каждый проходит по тексту от начала до конца документа, да ещё не с такой крутой оптимизацией как лексер. Как пример недавно мы делали tidy_css

Всего записей: 4682 | Зарегистр. 03-05-2006 | Отправлено: 10:31 25-07-2025
Skif_off

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

Цитата:
Регвыр же каждый проходит по тексту от начала до конца документа

Ага, а в лексерах они не проходят от начала до конца Конкретные лексеры "понимают" синтаксис конкретных языков, что даёт преимущества перед универсальными способами, как в AkelPad, например.  Но это же нормально, когда узкозаточенный инструмент даёт преимущества? Зато в том же AkelPad любой может написать или подправить подсветку, как минимум подсветить комментарии и строки.
В забористых случаях лексер даст сто очков вперёд, в остальном вполне можно получить плюс/минус приемлемый результат и там, и там.
У меня были проблемы только с новыми HTML/PHP, на больших XML могут быть задержки, FB2 со всем текстом в одну строку или большим количеством binary в одну строку будут подтормаживать. Подсветку HTML откатил до ввода Rule ID, а остальное - всё-таки крайние случаи (не, ну заголовочные файлы бывают и по несколько метров весом, но не часто).
 
P.S. Немного подправил freebasic.coder: не мудрствуя лукаво слил доки 1.05.0 и 1.10.1 в TXT, открыл в WinMerge, включив игнорирование регистра. Надо бы скинуть Instructor обновления с репозитория...

Всего записей: 6704 | Зарегистр. 28-01-2008 | Отправлено: 06:14 27-07-2025
AZJIO



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

Цитата:
Ага, а в лексерах они не проходят от начала до конца

лексер один раз проходит от начала до конца
в кодере 10 штук регвыр и каждый проходит от начала до конца. То есть 10 раз чтение одного и того же документа. Очевидно что в 10 раз будет больше времени затрачено. А после этого ещё и каждый раздел отработает по документу по одному разу.

Всего записей: 4682 | Зарегистр. 03-05-2006 | Отправлено: 08:07 27-07-2025 | Исправлено: AZJIO, 08:07 27-07-2025
mao_2004

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Батник AkelPad_Replacer_Admin_Context.cmd, для портабельного AkelPad.
Батник поместить в папку с AkelPad.
Что умеет:
[1] - Заменить Notepad на AkelPad
[2] - Вернуть Notepad обратно
[3] - Добавить пункт "Открыть в AkelPad" в контекстное меню
[4] - Удалить пункт "Открыть в AkelPad" из контекстного меню
 
Подробнее...

Всего записей: 917 | Зарегистр. 06-08-2004 | Отправлено: 20:55 27-07-2025 | Исправлено: mao_2004, 06:26 28-07-2025
AkulaBig

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

Всего записей: 6417 | Зарегистр. 11-03-2003 | Отправлено: 20:56 31-07-2025
Bing0

BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Сервер сценариев для типа файлов ".js" не найден нашлось какое-нибудь разумное решение? ломать RunJS ради этого блокнотика, как-то не алё

Всего записей: 65 | Зарегистр. 24-05-2025 | Отправлено: 22:25 31-07-2025
felcons

Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Хотел обратиться от незрячих пользователей, которые используют скринридер. На сколько реально в поиске сделать так, чтоб ввести фразу, и не тащиться табом, к кнопке найти далее, а чтоб по ентеру искать введенную фразу? Вот такое было в версии 2.1.4, но потом как-то его удалили. Ребята, пожалуйста, верните клавишу ентер, чтоб уже после введения фразы запускался поиск? Наперед благодарю от имени незрячих пользователей, которые используют akelpad.

Всего записей: 188 | Зарегистр. 10-07-2007 | Отправлено: 18:48 06-08-2025
Открыть новую тему     Написать ответ в эту тему

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

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


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

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

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru