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 

Scripts discussion (2)
Goto page Previous  1, 2, 3 ... 75, 76, 77 ... 94, 95, 96  Next
 
Post new topic   This topic is locked: you cannot edit posts or make replies.    AkelPad Forum Index -> Plugins
View previous topic :: View next topic  
Author Message
KDJ



Joined: 06 Mar 2010
Posts: 1344
Location: Poland

PostPosted: Mon Aug 12, 2013 9:16 pm    Post subject: Reply with quote

Please help me.
I'm not sure if I am correctly calculated the size of the structure PAINTSTRUCT on x64.
Code:
typedef struct tagPAINTSTRUCT {
                        //offset    size   padding
  HDC  hdc;             //     0       8         0
  BOOL fErase;          //     8       4         0
  RECT rcPaint;         //    12     4*4         0
  BOOL fRestore;        //    28       4         0
  BOOL fIncUpdate;      //    32       4         0
  BYTE rgbReserved[32]; //    36    32*1         4
} PAINTSTRUCT, *PPAINTSTRUCT;

size = 36 + 32*1 + 4 = 72
Back to top
View user's profile Send private message
FeyFre



Joined: 07 Aug 2007
Posts: 2038
Location: Vinnitsa, Ukraine

PostPosted: Tue Aug 13, 2013 12:01 am    Post subject: Reply with quote

KDJ, yes, offsets and size are correct.
Back to top
View user's profile Send private message AIM Address Yahoo Messenger MSN Messenger
DV



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

PostPosted: Tue Aug 13, 2013 7:23 am    Post subject: Reply with quote

Вопрос больше алгоритмический: как с некоторой долей вероятности определить, является ли последовательность символов словом или текстом? Моей первоначальной мыслью было отталкиваться от встречаемости различных символов, но как же её применить, к примеру, в случае последовательности симовлов "power"? Каждый символ встречается ровно 1 раз, т.е. каждый символ имеет "вес" 1/5 в пределах последовательности "power" - и что дальше? Confused
Back to top
View user's profile Send private message
FeyFre



Joined: 07 Aug 2007
Posts: 2038
Location: Vinnitsa, Ukraine

PostPosted: Tue Aug 13, 2013 11:42 am    Post subject: Reply with quote

Я так понимаю, текст/слова из неизвестного алфавита, и соответственно неизвестно, что из символов является ограничителем/разделителем слов.
Я бы делал так:
Сразу предупреждаю, решение подходит для конкретных языков, а не абстрактного понятия текста.
Раз "с долей вероятности" то первый инструмент который напрашивается для работы это статистика. Начнем с текста:
1. Считаем частоту вхождения буковок. Показатель этот не архиважный, но может помочь. Например с определением языка текста( а значит и основного набора букв). По этой статистике мы также можем вычленить а какие же из символов могут быть разделители(их вероятнее всего меньше всех).
2. Считаем статистику пар символов, триплетов символов(4 и больше уже нету смысла, да и накладно). Сортируем. Ну а дальше эвристика. По полученной картине должны оценить "да" или "нет". На ум приходит два способа:
1. На основании базы знаний. Частота появления определенных пар, триплетов(тех что появляются чаще в аппробируемом тексте) должна коррелировать со значениями для них в базе. Если у нас есть результат из п.1 по разделителям, то статистику пар/триплетов с их участием можно не считать. Если нет, то отбрасываем только редкие.
2. Эвристически. В человеческом языке буквы используются неравномерно. Соответственно если это текст, то распределение статистики будет иметь какую-нибудь узнаваемую форму. Задача сводится к поиске более подходящей формы. Фактически этот способ близнец первого(с базой знаний), с той разницей что там мы должны таскать за собой базу, а тут мы эту базу помним аналитически, например в виде формул(с тремя интегралами обязательно Laughing ).
Преимущества/недостатки способов - отдельно обдумать надо.

По поводу слова.. Статистика явно тут пасует, ибо мало данных. Разве что выделят пары/триплеты и сверять с базой. Опять таки, если есть только одно слово, то толку нам это не даст.

Вот такие вот соображения.
Back to top
View user's profile Send private message AIM Address Yahoo Messenger MSN Messenger
DV



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

PostPosted: Tue Aug 13, 2013 1:56 pm    Post subject: Reply with quote

Да уж... Пожалуй, в этом случае трудно придумать что-то лучше решения "в лоб" для проверки сочетаний, которых _не_ являются словами точно.
Например:
[a-zA-Z]+[0-9]+[a-zA-Z]+
[0-9]+[a-zA-Z]+[0-9]+
Back to top
View user's profile Send private message
KDJ



Joined: 06 Mar 2010
Posts: 1344
Location: Poland

PostPosted: Tue Aug 13, 2013 5:59 pm    Post subject: Reply with quote

FeyFre
Thank you very much for checking the size of PAINTSTRUCT structure.
Fixed: size of PAINTSTRUCT x64 in AkelPadMethodsView.js and Translator.js.
Back to top
View user's profile Send private message
Infocatcher



Joined: 06 Aug 2007
Posts: 1616

PostPosted: Wed Aug 14, 2013 5:24 am    Post subject: Reply with quote

KDJ wrote:
Fixed: size of PAINTSTRUCT x64 in AkelPadMethodsView.js and Translator.js.

The same bug in SearchReplace.js?
Code:
      if (ps=AkelPad.MemAlloc(64 /*sizeof(PAINTSTRUCT)*/))
Back to top
View user's profile Send private message Visit poster's website
Instructor
Site Admin


Joined: 06 Jul 2006
Posts: 5324

PostPosted: Wed Aug 14, 2013 8:41 am    Post subject: Reply with quote

Infocatcher
Исправлено.
Back to top
View user's profile Send private message Send e-mail
Infocatcher



Joined: 06 Aug 2007
Posts: 1616

PostPosted: Wed Aug 14, 2013 2:53 pm    Post subject: Reply with quote

converter.js
Fix size of PAINTSTRUCT x64

runScript.js
Fix size of PAINTSTRUCT x64
Fix refresh (F5): remove arguments for deleted files
Back to top
View user's profile Send private message Visit poster's website
KDJ



Joined: 06 Mar 2010
Posts: 1344
Location: Poland

PostPosted: Wed Aug 14, 2013 9:29 pm    Post subject: Reply with quote

x64 versions:
ChooseFont_function.js
FontDialogMonospace.js
ChooseFont_examples.js
ScreenView.js
Back to top
View user's profile Send private message
Instructor
Site Admin


Joined: 06 Jul 2006
Posts: 5324

PostPosted: Thu Aug 15, 2013 8:36 am    Post subject: Reply with quote

KDJ wrote:
About AkelPad 4.8.5 dev.
Test version
Back to top
View user's profile Send private message Send e-mail
KDJ



Joined: 06 Mar 2010
Posts: 1344
Location: Poland

PostPosted: Thu Aug 15, 2013 2:07 pm    Post subject: Reply with quote

Instructor
Thank You very much.

Script test version: AkelPadManualSettings.js

Noticed errors:
1. If you change the following options, effect is visible only after restarting AkelPad:
- MouseOptions with 16 /*MO_NONEWLINEMOUSESELECT*/, 32 /*MO_NOWHEELFONTCHANGE*/, 64 /*MO_MARGINSELUNWRAPLINE*/, 128 /*MO_MBUTTONDOWNNOSCROLL*/,
- PaintOptions,
- ShowModify,
- StatusPosType,
- WordBreak.
2. Does not work:
- TabOptionsMDI with 524288 /*TAB_ADD_AFTERCURRENT*/, 1048576 /*TAB_NOADD_LBUTTONDBLCLK*/, 2097152 /*TAB_NOADD_MBUTTONDOWN*/, 4194304 /*TAB_NODEL_LBUTTONDBLCLK*/, 8388608 /*TAB_NODEL_MBUTTONDOWN*/.
Back to top
View user's profile Send private message
Instructor
Site Admin


Joined: 06 Jul 2006
Posts: 5324

PostPosted: Thu Aug 15, 2013 3:54 pm    Post subject: Reply with quote

KDJ
Test version

Added notes:
AkelDLL.h wrote:
#define MIS_WORDBREAKCUSTOM 117 //(DWORD)lParam - "WordBreak" flags. Changes are applied for a new edit windows.
#define MIS_PAINTOPTIONS 121 //(DWORD)lParam - "PaintOptions" flags, see PAINT_* defines. Changes are applied for a new edit windows.
#define MIS_RICHEDITCLASS 125 //(BOOL)lParam - "RichEditClass" type. Changes are applied for a new edit windows.


AkelPadManualSettings.js - very useful script. Some notes:
- Typo:
UrlCommand wrote:
Example: Exec(`"%ProgramFiles%\Mozilla Firefox\firefox.exe" "%u"`)

- Requiest to add "Apply" button.
Back to top
View user's profile Send private message Send e-mail
KDJ



Joined: 06 Mar 2010
Posts: 1344
Location: Poland

PostPosted: Thu Aug 15, 2013 9:44 pm    Post subject: Reply with quote

Instructor
Now everything works perfectly.

AkelPadManualSettings.js
Added "Apply" button.
Bugs fixed.
Back to top
View user's profile Send private message
KDJ



Joined: 06 Mar 2010
Posts: 1344
Location: Poland

PostPosted: Fri Aug 16, 2013 11:22 am    Post subject: Reply with quote

AkelPadManualSettings.js
Added Russian language.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   This topic is locked: you cannot edit posts or make replies.    AkelPad Forum Index -> Plugins All times are GMT
Goto page Previous  1, 2, 3 ... 75, 76, 77 ... 94, 95, 96  Next
Page 76 of 96

 
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