Релиз AkelPad 4.7.4

Russian main discussion
  • Author
  • Message
Offline
Posts: 2247
Joined: Tue Aug 07, 2007 2:03 pm
Location: Vinnitsa, Ukraine

Post by FeyFre »

1. Сменить значок сообщения на информационный
Низя. Информационные сообщения не подразумевают за собой вмешательства в действия сообщающего. Просто уведомляет "что-то произошло". Знак восклицания - это уже случай "Эй, хозяин, у меня проблема, подскажи что делать!", вот тут именно он уместен больше всего.

Offline
Posts: 670
Joined: Thu Jun 03, 2010 8:47 am
Location: Сочи, Хоста
Contact:

Post by Andrey_A_A »

а может так сделать: после нажатия на кнопку обновить
Это конечно лучший вариант. Но могут оставаться не сохранённые или безымянные документы. Хотя можно сделать проверку, если таковых нет, после нажатие на кнопку "Обновить" можно закрывать программу без дополнительных запросов, а если есть - дать сообщение: "У Вас есть не сохранённые документы, сохраните и ..."

Offline
Posts: 1862
Joined: Mon Aug 06, 2007 1:07 pm
Contact:

Post by Infocatcher »

Instructor wrote:Видимо шаблоны старые, были сохранены когда еще не было галочки "регулярные выражения".
Видимо надо было старый формат, когда были только регулярные выражения, трактовать соответствующе. :)
Instructor wrote:Выделение памяти лишает смысла реализацию регулярных выражений в программе, т.к. основное преимущество перед SearchReplace.js при поиске - это потребление памяти.
Я, может, никогда не пробовал делать парсер регулярных выражений, но все же что мешает использовать уже имеющуюся в памяти строку?
Или, если уж совсем никак, наращивать предобработанную строку по мере необходимости.
Instructor wrote:
AkelHistory-Rus.txt wrote:Добавлено: возможность при замене с использованием регулярных выражений использовать специальные символы: $\r, $\n, $\t, $\u0000, $\x00 и т.д.
Тестовая
Ммм... я все же за стандартные esc-последовательности.
Иначе нужна справка и/или кнопка с выпадающим списком для вставки.
Да и вообще не очень удобно держать в голове, куда в каком виде записывать.
И особенно не стоит так делать в рамках одного диалога. Да и даже только с учетом SearchReplace.js тоже не стоило бы.

В тестовой работает только при использовании «заменить все», по найти -> заменить не работает.

А вот и пример незапоминания скобок – с ними тоже не работает при единичной замене.

Offline
Posts: 876
Joined: Tue Jul 24, 2007 8:54 am

Post by Fr0sT »

Добавлено: возможность при замене с использованием регулярных выражений использовать специальные символы: $\r, $\n, $\t, $\u0000, $\x00 и т.д.
Круто, отличная фича! В стандартных регулярках чтобы сделать замену на перевод строки голову сломаешь, а тут всё удобно.
Только в самом деле надо покумекать насчет подсказок. Возможно, что-то вроде этого:
Image Image

Offline
Posts: 1862
Joined: Mon Aug 06, 2007 1:07 pm
Contact:

Post by Infocatcher »

Так, едем дальше. :)

[а-яё]+ не умеет игнорировать регистр
[a-z]+ – тоже, но A все же находит.

И, аналогично, [^a-z]+ находит заглавную латиницу. Но A тоже не находит. :)

[^?]+ находит вовсе не то, что ожидается.
(Дело в том, что все реализации, которые я видел, не требуют экранирования специальных символов внутри [групп].)

Что: ^("|')|\1$
Чем: ""
Удаляет только первую кавычку.
Пример в контексте текстового редактора сферичен, просто вспомнилась похожая проблема с PHP. :)
Last edited by Infocatcher on Tue Apr 10, 2012 7:01 am, edited 1 time in total.

Offline
Posts: 1862
Joined: Mon Aug 06, 2007 1:07 pm
Contact:

Post by Infocatcher »

Кстати, если поиск сразу ничего не нашел, то хочется вместо
AkelPad
---------------------------
Search finished.
---------------------------
ОК
видеть что-то соответствующее.

Offline
Posts: 2247
Joined: Tue Aug 07, 2007 2:03 pm
Location: Vinnitsa, Ukraine

Post by FeyFre »

Code: Select all

Что: ^("|')|\1$
Я что-то не распарсил эту регулярку. Что она должна найти? `"` либо `'` либо первую захваченную группу, которой нет. Оно вообще должно было бы матернутся на синтаксис. И это всё должно быть на всю строку.

Offline
Posts: 3217
Joined: Wed Nov 29, 2006 1:19 pm
Location: Киев, Русь
Contact:

Post by VladSh »

Клацать "Обновление..." как-то боязно, т.к. не понятно, что произойдёт, может оно опять переедет мои файлы?
Раз добавили "Обновлятор" в меню, то вместо огромной командной строки, по моему, лучше задавать настройки в интерфейсе и сохранять их (возможно общий числовой флаг в ini) + отображать состояние при следующем открытии. Настройки:
Radiobutton:
- обновлять;
- загружать обновления.
Checkbox'ы для "обновлять":
- программу и плагины;
- скрипты;
- что там ещё?...

Offline
Posts: 1862
Joined: Mon Aug 06, 2007 1:07 pm
Contact:

Post by Infocatcher »

FeyFre wrote:

Code: Select all

Что: ^("|')|\1$
Я что-то не распарсил эту регулярку. Что она должна найти? `"` либо `'` либо первую захваченную группу, которой нет. Оно вообще должно было бы матернутся на синтаксис. И это всё должно быть на всю строку.
По логике – должно убирать обрамляющие кавычки.
Хотя странно, мне казалось, что где-то такое все же работало – сейчас проверил, в js тоже не хочет.

Но тогда есть другой неработающий пример:
Что: ^("|')([\s\S]*)\1$
Чем: $2

Offline
Posts: 2247
Joined: Tue Aug 07, 2007 2:03 pm
Location: Vinnitsa, Ukraine

Post by FeyFre »

Code: Select all

Что: ^("|')([\s\S]*)\1$
Вот это называется "убить обрамляющие кавычки", а то было неверно. Ибо вторая альтернатива ссылалась на группу, которая есть только в первой альтернативе, что взаимоисключающее.

Code: Select all

Что: ^("|')([\s\S]*)\1$
Тут может не работать по другой причине - жадность. [\s\S]* съедает всё, в том числе последнюю кавычку. Я пытался разобраться, есть ли какой-то способ отключить её - что-то не нашел.

Offline
Posts: 1862
Joined: Mon Aug 06, 2007 1:07 pm
Contact:

Post by Infocatcher »

FeyFre
С ^("|')([\s\S]*?)\1$ тоже не работает.
При этом на js работают оба варианта.

Offline
Posts: 2247
Joined: Tue Aug 07, 2007 2:03 pm
Location: Vinnitsa, Ukraine

Post by FeyFre »

Code: Select all

^("|')([\s\S]*?)\1$
Это уж слишком глубоко пошли.
Найти регулярку: ^" (найти кавычку в начале строки)
Текст

Code: Select all


"
""
""
"
""""
""
"
"""
"""
"""

Находит всё. Пробовать что-то по сложнее можно после того как это исправят.

Offline
Site Admin
Posts: 6311
Joined: Thu Jul 06, 2006 7:20 am

Re: Релиз AkelPad 4.7.4

Post by Instructor »

Обновлено.

Offline
Posts: 84
Joined: Fri May 28, 2010 1:28 pm

Post by private_joker »

Instructor
Спасибо. :)

Offline
Site Admin
Posts: 6311
Joined: Thu Jul 06, 2006 7:20 am

Post by Instructor »

Infocatcher wrote:[а-яё]+ не умеет игнорировать регистр
[^?]+ находит вовсе не то, что ожидается.
Тестовая
Infocatcher wrote:Но тогда есть другой неработающий пример:
Что: ^("|')([\s\S]*)\1$
Чем: $2
Почему конструкция "[\s\S]*" должна остановится на кавычке?
Post Reply