Page 1 of 1

Not enough memory?

Posted: Tue Dec 12, 2017 9:02 am
by sexy96
number of text lines: 130000
after about 10 minutes, pops up:

Image
Fatal error: not enough memory. It is recommended to end the program.

Can you increase this memory?

Re: Not enough memory?

Posted: Tue Dec 12, 2017 3:39 pm
by DV
The memory is most likely consumed by the Undo buffer.
Try to call the following script after massive replacements:

ClearUndo.js

Code: Select all

var WM_USER = 0x0400;
var AEM_EMPTYUNDOBUFFER = WM_USER + 2055;
var hEditWnd = AkelPad.GetEditWnd();
AkelPad.SendMessage(hEditWnd, AEM_EMPTYUNDOBUFFER, 0, 0);

Posted: Tue Dec 12, 2017 4:18 pm
by sexy96
I gave this file "ClearUndo.js" to:
D:\AkelPad86\AkelFiles\Plugs\Scripts\

How do you call it at the right time?

Posted: Tue Dec 12, 2017 7:40 pm
by KDJ
sexy96

Before replace operation disable undo by setting undo limit to zero:
Settings -> Editor 1 -> Undo limit.

Posted: Wed Dec 13, 2017 6:52 am
by sexy96
Gdy pomylę się w zamienianiu, będę musiał robić wszystko od nowa :cry:
To nie rozwiązuje problemu.
To lepiej niech się zacina. AkelPad muszę wtedy wyłączać przez Task Manager.

Mam nastawione 9999 i wyłączony limit.
Undo dalej działa. Nie wiem jaki jest wówczas limit,
ale nie limit jest powodem tego, tylko za mały bufor pamięci.

Może można zrobić tak aby komunikat ostrzegawczy pokazywał się,
przed zapełnieniem pamięci?

Posted: Wed Dec 13, 2017 11:58 am
by DV
sexy96 wrote:How do you call it at the right time?
Having this simple script, just call it manually after massive replacements that surely do not need to be undone via Undo.
A better solution would be to include the functionality of this simple script into a more complicated script running in background that will monitor AkelPad's memory usage and asks whether the Undo buffer needs to be cleared when the memory usage becomes high. But such a script needs to be written :)
Another, completely alternative, approach would be to use 64-bit AkelPad - thus allowing it to utilize _all_ the available memory without 2 GB limit caused by a 32-bit application. But surely it assumes you are using 64-bit Windows.

Posted: Wed Dec 13, 2017 4:45 pm
by sexy96
Używam Akelpad 32-bit tylko dlatego że Aspell nie chce działać w 64-bit.

Jeżeli ustawię limit cofnięć na 0 i go wyłączę, to Undo nie działa.
A jeżeli ustawię limit na max 9999 i też go wyłączę wtedy Undo działa.
Jaki jest wtedy limit cofnięć przy wyłączonym limicie?

Posted: Wed Dec 13, 2017 6:13 pm
by KDJ
sexy96

Nie bardzo rozumiem, jak można ustawić limit cofnięć na 9999 i go wyłączyć.
Wg mnie możliwość cofnięcia ustala się przez ustawienie limitu cofnięć.
Jeśli limit jest równy 0, to możliwośc cofnięcia jest wyłączona.
Jeśli limit jest większy od 0, to możliwość cofnięcia jest włączona.

Posted: Wed Dec 13, 2017 7:49 pm
by sexy96
Image

Po lewej Undo nie działa, po prawej działa
pomimo że, oba są wyłączone.

Posted: Wed Dec 13, 2017 8:12 pm
by KDJ
sexy96

Nie!!!
Na obrazku z lewej "Undo" jest wyłączone a na obrazku z prawej "Undo" jest włączone.
Kontrolka "Szczegóły" nie służy do ustawiania możliwości cofnięcia.

Posted: Wed Dec 13, 2017 8:22 pm
by sexy96
tzn. że szczegóły służą do cofanie po jednym znaku.

To jak mam te szczegóły wyłączone to tej pamięci starczy na dłużej?