/
changelog
3072 lines (1737 loc) · 135 KB
/
changelog
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
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
shmuel 13.10.2017 21:28:18 +0200 - build 625
1. M#3515: eval("@filename"): в окружение не добавляется _filename
zg 13.10.2017 13:36:39 +0300 - build 624
1. у DN_GOTFOCUS и DN_KILLFOCUS Param1 = -1, если они приходят при получении или потере диалогом фокуса.
shmuel 13.10.2017 11:40:50 +0200 - build 623
1. LuaFAR: minor refactoring.
shmuel 12.10.2017 16:44:33 +0200 - build 622
1. LuaFAR: M#3458: Падение Far в far.Timer при малых значениях периода
zg 08.10.2017 14:46:34 +0300 - build 621
1. 0003514: Возможность задать приоритет макросов, определяемым через MCTL_ADDMACRO.
shmuel 30.09.2017 14:46:04 +0200 - build 620
1. Откат 619, т.к. не учитывается возможность вызова диалога из независимых от плагина lua_State.
2. LuaFAR: уточнение 377.1 (были падения, если far.DialogInit() вызывалась из макроса, затем макрос
завершался, затем вызывалась far.DialogRun()).
zg 30.09.2017 14:12:54 +0300 - build 619
1. диалоговая процедура использует текущий lua_State, а не тот, который использовался при создании диалога.
zg 29.09.2017 11:09:07 +0300 - build 618
1. уточнение 617.
zg 28.09.2017 19:12:08 FLE Daylight Time - build 617
1. поддержка немодальных диалогов.
shmuel 27.08.2017 14:24:18 +0200 - build 616
1. С форума:
lua:@empty.lua qwerty.asdf
После этого не гаснет индикатор работы макроса в левом верхнем углу.
shmuel 24.08.2017 15:16:45 +0200 - build 615
1. MCTL_GETLASTERROR можно теперь вызывать и после исполнения MSSC_POST и MCTL_EXECSTRING.
2. MCTL_EXECSTRING теперь учитывает флаг KMFLAGS_SILENTCHECK.
shmuel 23.08.2017 13:06:35 +0200 - build 614
1. Флаг KMFLAGS_SILENTCHECK игнорировался в команде MSSC_POST.
shmuel 17.08.2017 16:44:24 +0200 - build 613
1. LuaFAR: возвращаемые значения DM_LISTSETCURPOS теперь отсчитываются от 1.
shmuel 13.08.2017 22:15:40 +0200 - build 612
1. Уточнение build 611: порядковые номера - буквы не всегда работали как "горячие клавиши".
shmuel 07.08.2017 15:25:23 +0200 - build 611
1. M#3464: Предложение корректировки формы меню "Исполнить макрос".
Изменение: порядковые номера пунктов не подсвечены, но тем не менее являются "горячими клавишами".
В дополнение к ним пользователь может назначить и подсвеченные "горячие клавиши".
shmuel 03.08.2017 16:13:49 +0200 - build 610
1. Уточнение 609.3 (были удвоенные бэкслеши в путях).
shmuel 31.07.2017 17:05:07 +0200 - build 609
1. LuaFAR: добавлена функция win.IsProcess64bit().
2. Изменено значение по умолчанию для package.cpath. Вместо %FARPROFILE%\Macros\modules\?.dll
теперь используется %FARPROFILE%\Macros\lib32\?.dll или %FARPROFILE%\Macros\lib64\?.dll
в зависимости от битности процесса.
3. Папки %FARPROFILE%\Macros\modules, %FARPROFILE%\Macros\lib32 и %FARPROFILE%\Macros\lib64
создаются плагином автоматически.
shmuel 23.06.2017 10:09:22 +0200 - build 608
1. LuaFAR: minor refactoring and GCC warnings.
shmuel 16.05.2017 11:42:28 +0200 - build 607
1. LuaFAR: (FIX) функция far.ShowHelp неправильно обрабатывала флаг FHELP_GUID.
shmuel 11.05.2017 13:00:01 +0200 - build 606
1. M#3432: Краткая справка по синтаксису командной строки LuaMacro (lua:)
shmuel 01.05.2017 22:01:38 +0200 - build 605
1. LuaFAR: Запретить обработку событий в редакторе, вьювере и панелях во время вывода сообщения
об ошибке (продолжение build 523).
shmuel 12.04.2017 22:47:30 +0200 - build 604
1. LuaFAR: ещё раз дополнительная оптимизация unicode.utf8.sub.
shmuel 10.04.2017 11:12:30 +0200 - build 603
1. LuaFAR: дополнительная оптимизация unicode.utf8.sub.
shmuel 08.04.2017 14:16:00 +0200 - build 602
1. LuaFAR: оптимизация unicode.utf8.sub для неотрицательных аргументов + рефакторинг.
shmuel 07.04.2017 00:52:17 +0200 - build 601
1. LuaFAR (продолжение build 165):
сброс разрешения floating point exceptions при вызове макрофункций (в частности: Plugin.SyncCall).
shmuel 31.03.2017 19:41:21 +0200 - build 600
1. LuaFAR: refactoring.
shmuel 15.03.2017 17:05:28 +0200 - build 599
1. LuaFAR: suppress compiler warning.
shmuel 15.03.2017 16:18:38 +0200 - build 598
1. LuaFAR: suppress compiler warning.
shmuel 13.02.2017 01:39:25 +0200 - build 597
1. LuaFAR: refactoring.
shmuel 23.01.2017 11:29:08 +0200 - build 596
1. M#3387: Словосочетание "Sort mode" в меню режимов сортировки не переводится на язык интерфейса
shmuel 29.11.2016 15:21:02 +0200 - build 595
1. Убрана поддержка старого формата файла клавиатурного макроса (см. комментарий к билду 454).
shmuel 13.11.2016 17:59:43 +0200 - build 594
1. M#3303: far.Menu: клавиши для BreakKeys
LuaFAR: 3-й параметр far.Menu может быть и строкой - перечислением ключей, разделённых пробелами.
Однако на семантике возвращаемых значений функции это изменение не сказывается, например
при 3-м параметре равном "Ins CtrlF1" и нажатии CtrlF1, первое возвращаемое значение
будет сформировано как таблица {BreakKey="CtrlF1"}.
shmuel 11.11.2016 18:17:36 +0200 - build 593
1. LuaFAR: editor.DeleteSessionBookmark(EditorId,position) - make parameter 'position' 1-based.
shmuel 25.10.2016 18:53:41 +0200 - build 592
1. M#3303: far.Menu: клавиши для BreakKeys
LuaFAR: far.Menu теперь понимает обозначения AccelKey также именами, принятыми в Far-макросах.
shmuel 22.10.2016 19:36:48 +0200 - build 591
1. M#3303: far.Menu: клавиши для BreakKeys
LuaFAR: наряду с "виртуальными" именами ключей, far.Menu теперь понимает и обозначения BreakKey
именами, принятыми в Far-макросах.
shmuel 20.10.2016 19:36:54 +0200 - build 590
1. M#3275: Allow plugins to load and edit unsaved macro
Макробраузер при нажатии F4/AltF4 на несохранённом клавиатурном макросе вызывает фаровский диалог "Macro settings".
zg 06.10.2016 21:01:03 +0200 - build 589
1. LuaFAR: far.CreateUserControl().rawhandle возвращает адрес буфера в виде light userdata.
2. LuaFAR: far.GetDlgItem[6] для DI_USERCONTROL возвращает адрес буфера в виде light userdata.
zg 01.10.2016 15:20:33 +0200 - build 588
1. moonscript 0.5.0.
zg 01.10.2016 15:07:26 +0200 - build 587
1. LuaFAR: в таком коде
buffer=far.CreateUserControl(10,10)
buffer[1]={Char="1"}
вместо 1 выводился символ с кодом 1.
shmuel 29.09.2016 18:57:45 +0200 - build 586
1. LuaFAR: улучшено сообщение об ошибке при передаче аргумента - несуществующего флага типа string.
Сообщение теперь включает в себя переданный флаг.
shmuel 25.09.2016 21:29:41 +0200 - build 585
1. Продолжение 584: заменяем в traceback табы тремя пробелами - для лучшего восприятия.
shmuel 25.09.2016 00:04:30 +0200 - build 584
1. M#3013: Отображать traceback при ошибках, возникающих в процессе загрузки макрофайлов.
shmuel 06.09.2016 09:45:50 +0200 - build 583
1. MCT_GETMACRO дополнительно возвращает информацию о том, является ли макрос клавиатурным.
shmuel 22.08.2016 19:14:55 +0200 - build 582
1. LuaFAR: BreakKey в far.Menu() сделан полностью регистронезависимым.
shmuel 13.08.2016 18:24:05 +0200 - build 581
1. Уточнения 579,580.
shmuel 18.07.2016 17:55:32 +0200 - build 580
1. Макро-браузер отображает поле "id" в диалоге информации о макросе.
shmuel 18.07.2016 15:59:19 +0200 - build 579
1. В таблицы определений Macro и Event добавлено опциональное поле "id" типа string.
shmuel 04.07.2016 17:35:59 +0200 - build 578
1. LuaFAR: добавлена функция win.GetKeyState.
shmuel 26.06.2016 19:28:14 +0200 - build 577
1. Уточнение 576.2.
shmuel 26.06.2016 16:39:39 +0200 - build 576
1. Расширение возможностей функции Panel.SetCustomSortMode().
2. Расширение возможностей функции Panel.CustomSortMenu().
shmuel 14.06.2016 14:26:10 +0200 - build 575
1. LuaFAR (generic plugin): ExitFARW экспортируется всегда (убраны директивы условной компиляции).
shmuel 14.06.2016 12:35:08 +0200 - build 574
1. LuaFAR: LF_ExitFAR(), после вызова export.ExitFAR(), удаляет все незакрытые таймеры (если таковые
имеются), что предотвращает падения: (1) на выходе из Far и (2) при пересоздании lua_State
с помощью _G.RecreateLuaState=true.
shmuel 11.06.2016 20:36:21 +0200 - build 573
1. LuaFAR: экспериментальная альтернативная реализация far.Timer и свойств/методов объекта таймера.
(Как побочное явление данной реализации, LuaFAR больше не поддерживает Windows 2000).
shmuel 08.06.2016 15:00:53 +0200 - build 572
1. LuaFAR: far.Timer(N, ...) при N<1 подвешивал Far.
shmuel 08.06.2016 00:23:44 +0200 - build 571
1. LuaFAR: fix unicode.utf8.gmatch and add a specific test for it.
zg 08.05.2016 13:40:15 +0200 - build 570
1. LuaFAR: поддержка WTYPE_COMBOBOX.
shmuel 21.04.2016 23:04:40 +0200 - build 569
1. LuaFAR: функция far.PasteFromClipboard теперь возвращает всю строку, полученную от Far,
а не до первого символа '\0'.
shmuel 10.04.2016 14:36:10 +0200 - build 568
1. Изменение в поведении mf.iif() при Expr==0 для более полной совместимости с оригиналом.
shmuel 17.03.2016 18:18:54 +0200 - build 567
1. Кастомные сортировки в панелях повреждали содержимое внутренних структур FileListItem
(это проявлялось при сборке Far с GCC 5.2 или 5.3).
Алгоритм кастомной сортировки пришлось изменить, теперь нет прямой манипуляции с памятью.
shmuel 13.03.2016 21:46:38 +0200 - build 566
1. Уточнение 565.
shmuel 13.03.2016 01:28:38 +0200 - build 565
1. В функции Panel.LoadCustomSortMode таблица параметров может включать в себя опциональное поле
'Condition' (функцию). Данная функция может использоваться, например, в интерактивном режиме
работы для изменения параметров сортировки, а также для её отмены.
shmuel 08.03.2016 23:42:18 +0200 - build 564
1. Рефакторинг.
shmuel 07.03.2016 19:41:34 +0200 - build 563
1. LuaFAR: продолжение M#3175.
- Убрана функция win.DeleteRegKeyEx.
- Функция win.DeleteRegKey принимает дополнительный параметр AccessMask (который игнорируется,
если операционная система не поддерживает функцию RegDeleteKeyExW).
shmuel 06.03.2016 17:37:26 +0200 - build 562
1. LuaFAR: фикс во внутренней функции GetFarColor для совместимости с LuaJIT 2.1.0-beta2.
shmuel 03.03.2016 21:40:00 +0200 - build 561
1. В определение стационарных макросов добавлено опциональное поле sortpriority - для управления
порядком расположения макросов в меню "Исполнить макрос".
shmuel 25.02.2016 16:15:44 +0200 - build 560
1. В winapi.lua добавлены 2 константы и 5 определений функций.
shmuel 20.02.2016 00:08:38 +0200 - build 559
1. Исправлен мелкий баг в функции Panel.CustomSortMenu.
shmuel 19.02.2016 23:36:00 +0200 - build 558
1. Меню, выводимому функцией Panel.CustomSortMenu, присвоен GUID "C323FBCF-6803-4F2C-B8B4-E576E7F125DC".
shmuel 19.02.2016 21:32:01 +0200 - build 557
1. M#3175: "Отключить в LuaMacro редирект WOW64 для функций работы с реестром"
LuaFAR: добавлена функция win.DeleteRegKeyEx. Описание в мануале.
shmuel 12.02.2016 12:41:32 +0200 - build 556
1. LuaFAR: fix handling PPIF_SELECTED.
shmuel 08.02.2016 23:14:30 +0200 - build 555
1. M#3175: "Отключить в LuaMacro редирект WOW64 для функций работы с реестром"
LuaFAR: Во все функции работы с реестром, кроме win.DeleteRegKey, добавлен параметр "AccessMask".
shmuel 02.02.2016 12:53:04 +0200 - build 554
1. Функция Keys: добавлены новые специальные ключи:
"EnOut" - разрешить вывод на экран (то же, что mmode(1,0))
"DisOut" - запретить вывод на экран (то же, что mmode(1,1))
2. Функция Keys: перед каждым ключом может быть указан множитель, например "3*Down" эквивалентно "Down Down Down".
shmuel 26.01.2016 16:09:42 +0200 - build 553
1. Префиксы, добавляемые функцией CommandLine, не работали, если не состояли полностью из "символов слова" ("%w+").
Теперь в этих префиксах допускаются любые символы, кроме двоеточия и пробелов.
shmuel 20.12.2015 15:08:21 +0200 - build 552
1. LuaFAR: fix function win.SetRegKey.
shmuel 18.12.2015 22:09:39 +0200 - build 551
1. Ещё одно уточнение 549.
shmuel 18.12.2015 20:17:25 +0200 - build 550
1. Уточнение 549.
shmuel 18.12.2015 18:48:29 +0200 - build 549
1. LuaFAR: добавлена функция win.DeleteRegValue.
shmuel 18.12.2015 14:09:39 +0200 - build 548
1. Удалена макрофункция printf (mf.printf и _G.printf).
shmuel 13.12.2015 08:52:51 +0200 - build 547
1. При старте Фар не исполнялись автостартующие макросы, у которых area="Common".
zg 08.12.2015 03:51:59 +0200 - build 546
1. moonscript 0.4.0.
shmuel 15.11.2015 09:10:25 +0200 - build 545
1. Уточнение 543.
shmuel 11.11.2015 12:17:37 +0200 - build 544
1. MoonScript 0.3.2.
shmuel 10.11.2015 18:19:12 +0200 - build 543
1. LuaFAR (generic plugin):
Очередная (после билда 533) попытка справиться с ситуацией, когда экспортируемые функции плагина
вызываются из разных потоков с перекрытием во времени. "Перекрывающие" вызовы, поступающие не из
"перекрываемого" потока, должны игнорироваться (холостой возврат без исполнения).
shmuel 01.11.2015 14:10:39 +0200 - build 542
1. Откат 540-541. Данный вид события может быть получен имеющимися средствами (mf.postmacro() из макрофайла).
shmuel 31.10.2015 22:34:42 +0200 - build 541
1. Уточнение 540.
shmuel 31.10.2015 19:33:22 +0200 - build 540
1. Добавлен новый вид события: group="MacrosLoaded". Обработчики вызываются по завершению загрузки макрофайлов.
shmuel 28.10.2015 19:17:43 +0200 - build 539
1. Рефакторинг (синхронный с рефакторингом в Far build 4450).
shmuel 28.10.2015 13:23:40 +0200 - build 538
1. Изменение API: загрузочные функции 'Macro' и 'Event' теперь возвращают true в случае успеха,
а не число-идентификатор макроса/события, как было раньше.
2. Рефакторинг.
shmuel 26.10.2015 19:07:00 +0200 - build 537
1. Приоритет по умолчанию у общих (area="Common") макросов теперь такой же, как у прочих макросов, то-есть 50.
shmuel 25.10.2015 17:24:57 +0200 - build 536
1. Продолжение 516:
a) пункты меню выбора макроса выводятся отсортированными;
б) заголовок консоли показывает заголовок данного меню;
shmuel 16.10.2015 19:08:56 +0200 - build 535
1. Откат билда 533 (перестал работать макро-API в FarNet и PowerShellFar).
shmuel 13.10.2015 16:17:58 +0200 - build 534
1. LuaFAR (generic plugin):
Возвращение установки переменной _G.IsLuaStateRecreated = true, отменённой в билде 529.
shmuel 13.10.2015 13:37:15 +0200 - build 533
1. LuaFAR (generic plugin):
Полное игнорирование вызовов экспортируемых плагином функций, произведенных из неосновного потока Фара.
Пусть лучше не работает, но не падает.
(Защита, сделанная в build 127, снимается как излишняя).
shmuel 06.10.2015 07:38:08 +0200 - build 532
1. Рефакторинг.
shmuel 02.10.2015 00:42:24 +0200 - build 531
1. LuaFAR: несколько изменилась интерпретация значения, возвращаемого export.ProcessConsoleInput - см. мануал.
2. M#2944: Добавить обработку ProcessConsoleInputW.
shmuel 26.09.2015 00:42:09 +0200 - build 530
1. Загрузка макросов: при обнаружении несуществующих имён флагов выдаются сообщения об ошибке.
shmuel 23.09.2015 19:34:14 +0200 - build 529
1. LuaFAR + generic plugin:
a) При загрузке и перезагрузке стартового скрипта плагина ему передаётся один аргумент булевого типа:
true - при первой загрузке скрипта и при загрузке, вызванной значением _G.RecreateLuaState.
false - при перезагрузке скрипта, вызванной значением far.ReloadDefaultScript.
b) Отменяется установка _G.IsLuaStateRecreated = true перед перезагрузкой, вызванной значением
_G.RecreateLuaState (в этом более нет надобности, в связи с пунктом "a").
2. LuaMacro: косметическая правка в плагине, связанная с пунктом "1".
shmuel 18.09.2015 19:42:34 +0200 - build 528
1. Уточнение 526.
shmuel 18.09.2015 13:00:27 +0200 - build 527
1. Уточнение 526.
shmuel 18.09.2015 12:29:10 +0200 - build 526
1. LuaFAR: M#2384: Нужна глобальная таблица guid'ов диалогов фара.
--> Таблица far.Guids.
shmuel 04.09.2015 21:48:41 +0200 - build 525
1. M#3067: LuaFAR: far.SubscribeDialogDrawEvents не срабатывает в момент Msg==F.DN_INITDIALOG and Event==F.DE_DLGPROCINIT
shmuel 31.08.2015 18:33:16 +0200 - build 524
1. M#3068: LuaFAR: не работает изменение цветовых атрибутов в DN_CTLCOLORDLGITEM
shmuel 17.08.2015 18:56:17 +0200 - build 523
1. M#3035: LuaFAR: Запретить обработку событий в диалогах во время вывода сообщения об ошибке
shmuel 06.08.2015 22:31:56 +0200 - build 522
1. M#3050: Падение при непрерывном вызове DM_KEY
shmuel 26.07.2015 03:06:22 +0200 - build 521
1. LuaFAR: убрано лишнее поле StructSize из таблицы, возвращаемой по DM_GETDIALOGINFO.
shmuel 17.06.2015 23:31:43 +0200 - build 520
1. Меню выбора макроса присвоен GUID ("165AA6E3-C89B-4F82-A0C5-C309243FD21B").
shmuel 16.06.2015 14:56:31 +0200 - build 519
1. Уточнение 518.
shmuel 16.06.2015 14:16:24 +0200 - build 518
1. Продолжение 516: если пользователь назначил свой хоткей, то он имеет преимущество перед
автоматически назначаемым.
shmuel 16.06.2015 12:37:41 +0200 - build 517
1. Вместо локальной переменной 'status' использовалась глобальная.
shmuel 15.06.2015 17:46:15 +0200 - build 516
1. Пункты меню выбора макроса (выводимого, когда есть несколько макросов, назначенных на одно
кнопкосочетание) автоматически нумеруются, и их номера являются горячими клавишами.
shmuel 04.06.2015 21:57:25 +0200 - build 515
1. Вызов error() без параметра при загрузке макросов полностью нарушал эту самую загрузку.
shmuel 21.05.2015 23:38:29 +0200 - build 514
1. M#2794: MenuItem: возможность определить имя пункта строкой, а не функцией.
shmuel 07.05.2015 16:59:03 +0200 - build 513
1. LuaFAR: добавлены функции win.GetCurrentDir и win.SetCurrentDir.
shmuel 03.05.2015 16:07:30 +0200 - build 512
1. LuaFAR (generic plugin): запуск плагином "%FARPROFILE%\luafar_init.lua" обусловлен флагом
компиляции -DRUN_LUAFAR_INIT при сборке плагина.
2. Плагин LuaMacro собирается с заданным флагом компиляции -DRUN_LUAFAR_INIT.
shmuel 02.05.2015 19:57:59 +0200 - build 511
1. LuaFAR (generic plugin):
- Параметр ENV_PREFIX ликвидирован. Переменные окружения при инициализации плагина теперь
игнорируются, за исключением %FARPROFILE%.
- Перед первой загрузкой стартового Lua-файла плагина производится исполнение скрипта
"%FARPROFILE%\luafar_init.lua", если таковой имеется.
- Скрипт исполняется также при перезагрузках, вызванных исполнением _G.RecreateLuaState = true.
- Скрипт не исполняется при перезагрузках, вызванных установкой far.ReloadDefaultScript = true.
zg 22.04.2015 21:33:27 +0200 - build 510
1. Far 3.0 API 4353.
shmuel 21.04.2015 16:19:03 +0200 - build 509
1. LuaFAR (generic plugin):
Параметр ENV_PREFIX больше не имеет значения по умолчанию: ни в C-файле, ни в мейк-файле.
Теперь для того, чтобы LuaFAR-плагин при инициализации обрабатывал переменные окружения,
параметр ENV_PREFIX должен быть задан явно при сборке плагина.
shmuel 17.04.2015 00:31:25 +0200 - build 508
1. M#2986: far /e падает при попытке вызвать юзер меню макросом.
shmuel 12.04.2015 23:18:52 +0200 - build 507
1. Рефакторинг.
shmuel 10.04.2015 17:44:53 +0200 - build 506
1. LuaFAR: изменения, связанные с функцией far.SubscribeDialogDrawEvents:
- Функция не обрабатывает параметры и не возвращает значения.
- При открытии каждого нового диалога группа событий перерисовки не передаётся
в export.ProcessDialogEvent, покуда не будет вызвана far.SubscribeDialogDrawEvents.
shmuel 10.04.2015 01:00:29 +0200 - build 505
1. Рефакторинг.
shmuel 08.04.2015 21:29:15 +0200 - build 504
1. Командная строка: символ '=' можно использовать также и при вызове файла-скрипта, то-есть перед
символом '@'.
shmuel 07.04.2015 13:05:26 +0200 - build 503
1. Мелкий рефакторинг.
shmuel 07.04.2015 00:27:31 +0200 - build 502
1. M#2685: Выполнять заданные в командной строке lua: скрипты синхронно.
shmuel 30.03.2015 16:43:55 +0200 - build 501
1. LuaFAR: оптимизация по скорости far.MakeMenuItems (и, опосредованно, far.Show).
shmuel 27.03.2015 14:27:00 +0200 - build 500
1. LuaFAR: мелкий рефакторинг.
2. Уточнение 493: eval(s,0) снова исполняется в окружении вызывающего его макроса.
shmuel 26.03.2015 09:34:26 +0200 - build 499
1. Добавлена функция-заглушка NoCommandLine, по аналогии с функциями NoMacro, NoEvent, NoMenuItem.
shmuel 25.03.2015 16:11:10 +0200 - build 498
1. Добавлена возможность загрузки из макрофайлов пользовательских префиксов командной строки.
Этим занимается новая загрузочная функция 'CommandLine'.
zg 21.03.2015 14:29:00 +0200 - build 497
1. LuaFAR-плагины без ExitFARW, использующие luaplug.c могли падать при выгрузке, если оставались
не удалённые lua-переменные, в __gc методе которых вызывались функции farapi.
zg 21.03.2015 00:39:48 +0200 - build 496
1. Far 3.0 API 4321
shmuel 19.03.2015 09:18:45 +0200 - build 495
1. Уточнение 494.
shmuel 18.03.2015 20:34:15 +0200 - build 494
1. LuaFAR (библиотека regex): падение при большом количестве captures (несколько десятков) из-за
отсутствовавшего вызова lua_checkstack.
shmuel 17.03.2015 17:57:24 +0200 - build 493
1. С форума: Запуск lua: mf.postmacro(eval,"F1") приводит к ошибке "bad argument #1 to 'getfenv'
(invalid level)".
shmuel 15.03.2015 15:48:33 +0200 - build 492
1. LuaFAR (библиотека bit64): устранение зависимости результатов сдвиговых операций при величинах
сдвига >= 64 от применяемого компилятора.
shmuel 13.03.2015 16:38:56 +0200 - build 491
1. LuaFAR: неправильно работал far.AdvControl("ACTL_GETARRAYCOLOR").
zg 08.03.2015 02:30:10 +0200 - build 490
1. moonscript 0.3.1.
zg 07.03.2015 02:15:16 +0200 - build 489
1. moonscript: issue #177 fix.
zg 05.03.2015 02:31:50 +0200 - build 488
1. moonscript 0.3.0.
shmuel 02.03.2015 19:01:59 +0200 - build 487
1. LuaFAR: убрана функция far.LuafarVersion.
shmuel 21.02.2015 19:30:30 +0200 - build 486
1. Рефакторинг.
shmuel 21.02.2015 00:56:10 +0200 - build 485
1. Рефакторинг.
shmuel 17.02.2015 00:44:37 +0200 - build 484
1. Расширение API в области возвращаемых значений для eval(S,2).
2. Рефакторинг.
shmuel 14.02.2015 16:35:25 +0200 - build 483
1. LuaFAR: неправильная передача обработчику диалога параметра Param2 при событии DN_HOTKEY.
shmuel 08.02.2015 17:47:16 +0200 - build 482
1. LuaFAR (generic plugin):
Размер структур PluginStartupInfo и FarStandardFunctions определяется теперь не при компиляции,
а динамически, по значениям полей StructSize в аргументе, полученном от Far в SetStartupInfoW().
Это позволит LuaFAR-плагинам автоматически поддерживать добавляемые функции Plugins API без
необходимости перекомпиляции плагина.
shmuel 06.02.2015 17:07:16 +0200 - build 481
1. Уточнение build 476: после вызова Plugin.Call и завершения макроса не производилась перерисовка редактора.
shmuel 03.02.2015 01:48:32 +0200 - build 480
1. LuaFAR: добавлена функция far.FarClock. Документация следует.
shmuel 28.01.2015 22:30:52 +0200 - build 479
1. LuaFAR: x64 warnings.
shmuel 28.01.2015 19:19:30 +0200 - build 478
1. LuaFAR: добавлена функция win.system.
shmuel 21.01.2015 23:59:12 +0200 - build 477
1. Рефакторинг.
shmuel 21.01.2015 16:51:11 +0200 - build 476
1. Рефакторинг.
zg 20.01.2015 03:10:50 +0200 - build 475
1. 0002912: В диалогах DM_SETTEXT, DM_GETTEXT не позволяют работать со строками содержащими '\0'.
shmuel 17.01.2015 23:05:52 +0200 - build 474
1. Рефакторинг.
shmuel 15.01.2015 16:59:48 +0200 - build 473
1. LuaFAR: исправлены два бага в библиотеке bit64.
shmuel 14.01.2015 00:19:06 +0200 - build 472
1. Рефакторинг.
shmuel 13.01.2015 19:29:57 +0200 - build 471
1. Рефакторинг, уточнения.
shmuel 12.01.2015 20:52:17 +0200 - build 470
1. Уточнение 465.1.
2. Уточнение 469.
3. Рефакторинг.
shmuel 11.01.2015 19:58:26 +0200 - build 469
1. Рефакторинг.
shmuel 07.01.2015 10:26:06 +0200 - build 468
1. LuaFAR: добавлена функция win.OutputDebugString.
shmuel 06.01.2015 23:42:23 +0200 - build 467
1. Уточнение 465.1.
shmuel 06.01.2015 18:27:55 +0200 - build 466
1. Уточнение 465.1.
shmuel 03.01.2015 21:20:32 +0200 - build 465
1. eval(S,2) снова, как это было до перевода макросистемы на Lua, запускает на исполнение
соответствующий макрос, а не просто вызывает его функцию 'action'.
2. Рефакторинг.
shmuel 01.01.2015 20:34:10 +0200 - build 464
1. Рефакторинг.
shmuel 31.12.2014 00:11:10 +0200 - build 463
1. Far.DisableHistory(-1) не запрещал добавления в историю при последующих вызовах Panel.SetPath().
2. Рефакторинг.
shmuel 26.12.2014 19:26:13 +0200 - build 462
1. Рефакторинг: прекращено использование фаровских регулярных выражений для внутренних нужд плагина.
shmuel 15.12.2014 00:46:09 +0200 - build 461
1. LuaFAR: добавлена обработка функций export.GetContentFields и export.GetContentData.
zg 06.12.2014 00:17:49 +0200 - build 460
1. Panel.AddCustomDataCallback удалена.
zg 03.12.2014 17:52:55 +0200 - build 459
1. уточнение 457. данные для одной и той же колонки не замещают друг друга, а склеиваются.
zg 03.12.2014 11:22:55 +0200 - build 458
1. в обработчик Panel.AddCustomDataCallback данные приходят в виде {guid="строка"}.
zg 03.12.2014 03:57:46 +0200 - build 457
1. экспериментально. продолжение 456. поддержка колонок C1-C9.
zg 30.11.2014 12:05:23 +0200 - build 456
1. Panel.AddCustomDataCallback: добавляет новый обработчик данных для кастом колонок.
zg 29.11.2014 13:27:38 +0200 - build 455
1. уточнение поддержки UTF-8 BOM для moonscript.
shmuel 28.11.2014 20:27:54 +0200 - build 454
1. Продолжение 452: добавлена поддержка загрузки старого формата файла клавиатурного макроса.
* Сохранение будет производиться в новом формате.
* Через полгода поддержку старого формата следует убрать.
shmuel 27.11.2014 23:44:56 +0200 - build 453
1. Уточнение 452.
shmuel 27.11.2014 21:06:15 +0200 - build 452
1. Файловый формат клавиатурного макроса сделан подобным формату стационарного макроса.
Сохранённые клавиатурные макросы прежнего формата должны быть преобразованы в новый.
shmuel 24.11.2014 02:05:58 +0200 - build 451
1. LuaFAR: в функциях editor.Editor и viewer.Viewer значение по умолчанию параметра Title,
передаваемое в Фар - NULL, а не FileName, как было до сих пор. См. M#2867.
shmuel 19.11.2014 13:16:10 +0200 - build 450
1. M#2609: LuaFAR: защита от ошибок в far.SaveScreen/RestoreScreen.
shmuel 13.11.2014 13:42:23 +0200 - build 449
1. LuaFAR: меню, выводимое функцией far.Show, может быть закрыто и нажатием клавиши Space.
shmuel 05.11.2014 13:21:11 +0200 - build 448
1. Из окружения макроса не убирались "загрузочные" функции MenuItem и NoMenuItem.
shmuel 05.11.2014 12:25:16 +0200 - build 447
1. Ещё раз M#2726.
shmuel 04.11.2014 23:09:39 +0200 - build 446
1. M#2726: mbrowser.lua:73: bad argument #3 to 'format' (invalid multibyte string).
shmuel 02.11.2014 16:46:25 +0200 - build 445
1. LuaFAR: устранён ещё один баг в обработке флагов типа userdata ("int64").
shmuel 02.11.2014 00:52:08 +0200 - build 444
1. LuaFAR: устранены 2 однотипных бага в обработке флагов типа userdata ("int64").
shmuel 01.11.2014 20:06:42 +0200 - build 443
1. LuaFAR: рефакторинг.
shmuel 30.10.2014 22:51:40 +0200 - build 442
1. LuaFAR (generic plugin): рефакторинг.
shmuel 29.10.2014 18:14:31 +0200 - build 441
1. Команды macro:post и lm:post больше не поддерживаются.
2. LuaFAR: добавлена экспортируемая функция LF_GetLuafarAPI, позволяющая LuaFAR-плагину (той его
части, что на C) пользоваться многими сервисными функциями LuaFAR.
shmuel 29.10.2014 01:04:04 +0200 - build 440
1. При многократной перезагрузке макросов (far.MacroLoadAll) среднее время перезагрузки устойчиво
возрастало. Заметил, что для проявления этого нежелательного эффекта необходимы два фактора:
а) перезагрузка библиотеки MoonScript
б) хотя бы один вызов pcall(require,"inexistent") при загрузке какого-либо макрофайла
Эффект убран прекращением перезагрузки библиотеки MoonScript при перезагрузке макросов.
Механизм данного эффекта мне на данный момент не ясен.
shmuel 27.10.2014 16:31:01 +0200 - build 439
1. LuaFAR (generic plugin): рефакторинг.
shmuel 27.10.2014 13:55:29 +0200 - build 438
1. LuaFAR (generic plugin): рефакторинг.
shmuel 25.10.2014 19:08:38 +0200 - build 437
1. LuaFAR: рефакторинг.
shmuel 22.10.2014 10:28:20 +0200 - build 436
1. Исправлен баг в функции mf.msave.
shmuel 20.10.2014 21:01:14 +0200 - build 435
1. M#2840: mload/msave: работать с локальным профилем.
w17 09.10.2014 02:53:15 +0200 - build 434
1. LuaFAR: build recovered after plugin.hpp changes
shmuel 02.10.2014 21:47:41 +0200 - build 433
1. Продолжение 328.2.
shmuel 21.09.2014 12:16:52 +0200 - build 432
1. Продолжение 431: mf.msave сохраняет связи между таблицами и их метатаблицами.
shmuel 20.09.2014 19:34:52 +0200 - build 431
1. Переделка сериализации данных, в результате чего функция mf.msave дополнительно поддерживает:
(1) ключи-таблицы
(2) таблицы с рекурсивными вложениями
shmuel 07.09.2014 19:22:01 +0200 - build 430
1. Небольшая оптимизация 429.2.
shmuel 06.09.2014 13:36:28 +0200 - build 429
1. Уточнение 428.
2. M#2793: MenuItem: нужна возможность задать разный текст для пунктов в разных меню.
shmuel 06.09.2014 00:51:16 +0200 - build 428
1. M#2792: MenuItem: заменить wtype на area.
Подробности - в мануале (статья "Добавление пунктов в меню плагинов").
shmuel 03.09.2014 23:52:40 +0200 - build 427
1. Продолжение 425.
shmuel 03.09.2014 16:13:53 +0200 - build 426
1. Продолжение 425.
shmuel 03.09.2014 01:25:51 +0200 - build 425
1. M#2705: Far.GetConfig (на замену Far.Cfg_Get).
shmuel 01.09.2014 23:48:28 +0200 - build 424
1. M#2724: LuaFAR: MIF_SELECTED для far.Menu.
shmuel 28.08.2014 21:36:52 +0200 - build 423
1. 'MacroPath' в luamacro.ini должно быть внутри секции [General].
shmuel 27.08.2014 21:22:51 +0200 - build 422
1. LuaFAR: продолжение 419.2.
shmuel 27.08.2014 00:29:48 +0200 - build 421
1. Уточнение 420.
shmuel 26.08.2014 23:15:21 +0200 - build 420
1. macro:load поддерживает явное указание путей, с которых будут грузиться макрофайлы.
shmuel 26.08.2014 21:16:27 +0200 - build 419
1. MCTL_LOADALL поддерживает явное указание путей, с которых будут грузиться макрофайлы.
2. LuaFAR: far.MacroLoadAll поддерживает явное указание путей, с которых будут грузиться макрофайлы.
shmuel 25.08.2014 20:23:55 +0200 - build 418
1. Мелкий рефакторинг.
shmuel 24.08.2014 11:37:48 +0200 - build 417
1. Уточнение 414.
shmuel 23.08.2014 09:43:48 +0200 - build 416
1. Уточнение 414.
shmuel 23.08.2014 03:11:07 +0200 - build 415
1. Поддержка UTF-8 BOM в luamacro.ini.
shmuel 23.08.2014 02:13:33 +0200 - build 414
1. M#2469: Общие макросы.
Добавлен файл luamacro.example.ini, активируется при его переименовании в luamacro.ini.
В нём может быть установлено значение `MacroPath`, указывающее, с каких путей будут загружаться
стационарные макрофайлы. Значение по умолчанию: %FARPROFILE%\Macros\scripts.
shmuel 23.08.2014 00:31:33 +0200 - build 413
1. mf.usermenu: режим "синхронного вызова" был сломан (в билде Far 3.0.3914).
shmuel 20.08.2014 12:25:13 +0200 - build 412
1. Упрощение вызова макробраузера, ставшее возможным благодаря изменениям в Far 3.0.4059.
shmuel 15.08.2014 19:20:35 +0200 - build 411
1. `eval(S,2)` возвращает `-3`, если было выведено меню выбора макроса, и это меню было отменено пользователем.
shmuel 14.08.2014 23:55:27 +0200 - build 410
1. Могли исполняться макросы во время загрузки макросов (например, при выводе диалога).