forked from rswgnu/hyperbole
-
Notifications
You must be signed in to change notification settings - Fork 0
/
ChangeLog
10289 lines (7404 loc) · 446 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
2022-12-03 Bob Weiner <[email protected]>
* hpath.el (hpath:expand-with-variable): Fix to expand from local dir first
before using dirs in hpath:expand-with-variable.
* hibtypes.el (grep-msg): Add support for Ruby traceback stack messages.
* hsys-org.el (hsys-org-src-block-start-at-p): Add.
test/hsys-org-tests.el (hsys-org:src-block-start-at-p): Test it.
2022-12-02 Bob Weiner <[email protected]>
* man/hyperbole.texi (Implicit Button Types): Update Smart Key Org mode description.
hui-mouse.el (smart-org): Add doc for :dir path handling and for removing code
block results with the Assist Key. Also, make the Smart Keys work the same
when point is on a #+RESULTS headers as they do when on a code header.
2022-11-27 Bob Weiner <[email protected]>
* hmouse-tag.el (smart-tags-org-src-block-p): Add and use in 'smart-tags-file-list'
and 'smart-tags-display'.
* hmouse-tag.el (smart-tags-file-list): Add support for Org code blocks.
* hsys-org.el (hsys-org-get-value): Get attribute values from Org contexts.
* hsys-org.el (hsys-org-mode-p): Made an autoload for use by other parts of Hyperbole.
* hyrolo.el (hyrolo-hdr-format): Extend headers to 79 chars for longer file names.
(hyrolo-fgrep): Remove outer double quotes if any used to maintain spaces
in strings as they are normalized in key series.
* hypb.el (hypb:activate-interaction-log-mode): Fix so creates log buffer
if it doesn't exist.
(hypb:glob-to-regexp): Add for use with hyrolo directory file filters.
hyrolo.el (hyrolo-filter-directories): Use above function.
2022-11-26 Bob Weiner <[email protected]>
* hycontrol.el (hycontrol-frames/windows-mode): Define local modes before
global modes so keymap lookups work properly and display properly in
*Emacs Log* (interaction-log-mode).
* hui-mouse.el (smart-org): Prioritize Hyperbole buttons over the start line
of an Org block so can jump to :dir paths in such lines.
* hbut.el (hbut:fill-prefix-regexps, hbut:fill-prefix-remove): Fix so removes
full lines of comments rather than just the prefix.
* hsys-org.el (hsys-org-radio-target-def-at-p): Use 'org-radio-target-regexp'.
(hsys-org-radio-target-link-at-p): Ensure has radio target
help-echo property for better matching.
(hsys-org-internal-target-link-at-p,
hsys-org-internal-target-def-at-p,
hsys-org-internal-target-at-p): Add to handle internal targets
just like radio targets.
(hsys-org-internal-link-target-at-p): Delete and replace with
'hsys-org-internal-target-def-at-p'.
(org-internal-link-target): Rename to 'org-internal-target-link'.
(org-radio-target): Rename to 'org-radio-target-link'.
* test/hsys-org-tests.el (hsys-org:org-internal-link-target-at-p): Change
to test a regular Org target, not a radio target.
* hui-mouse.el (smart-org): Correct doc to match the context order processed.
* hact.el (htype:symbol): Add as autoload since used in "hsys-youtube.el"
autoloads.
2022-11-22 Bob Weiner <[email protected]>
* hsys-youtube.el: Add all public functions as autoloads.
2022-11-21 Bob Weiner <[email protected]>
* hycontrol.el (framemove, windmove): Conditionally requires these libs
when compiling. Autoload their move among commands bound to I/J/K/M.
(hycontrol-framemove-direction, hycontrol-framemove-up,
hycontrol-framemove-left, hycontrol-framemove-right,
hycontrol-framemove-down): Add to auto install framemove package
and move to directional frames.
(hycontrol--frames-prompt-format, hycontrol--windows-prompt-format):
Add help for new frame/window selection commands.
man/hyperbole.texi (HyControl): Add doc for new frame/window selection
commands.
* hmouse-drv.el (hkey-buffer-move): Fix to properly move windows (swapping
buffers) when builtin windmove library is used.
* hversion.el (id-info-item): Index may point to indented line immediately
after the non-indented item definition line. If so, move back a line.
2022-11-20 Bob Weiner <[email protected]>
* kotl/kimport.el (kimport:star-outline): Fix to interactively default
first arg to current filename and output arg to the same name as
input but with ".kotl" suffix.
(kimport:initialize): Add optional 'erase-flag' arg
to erase buffer before importing elements. And use in all kimport
commands.
* hactypes.el (text-toc):
hibtypes.el (text-toc): Allow TOCs in any derived text mode.
Improve efficiency and generalize section prefix.
2022-11-06 Bob Weiner <[email protected]>
* hycontrol.el (cl-lib): Add this require for cl-loop.
(hycontrol-windows-grid-number-of-windows,
hycontrol-windows-grid-valid-size-p): Add.
(hycontrol-windows-grid-by-buffer-list,
hycontrol-windows-grid-by-file-list): Add first
arg grid-size.
(hycontrol-make-windows-grid,
hycontrol-windows-grid-validate,
hycontrol-windows-grid-minimum-size,
hycontrol-windows-grid-repeatedly): Add further
input checks.
* hywconfig.el (hywconfig-delete-pop-continue,
hywconfig-yank-pop-continue): Add and call
interactively in "hui-mini.el".
* hhist.el (hhist:remove): Rename to 'hhist:pop'.
* hycontrol.el (hycontrol-windows-grid-by-file-pattern): Fix
missing 'pattern' arg in 'format' call.
* hpath.el (hpath:at-p): Ignore anchor matches to '#+' so does
not match to Org markup.
2022-11-05 Bob Weiner <[email protected]>
* hycontrol.el (hycontrol-windows-grid-by-file-pattern): Update
to use prefix arg as grid size or to autosize when not given
or given an invalid valude.
(hycontrol-windows-grid): Don't nullify prefix arg
when calling above function.
(hycontrol-make-windows-grid): Move 'hhist:add' call
here and remove from 'hycontrol-windows-grid' so it covers all
variants of windows-grid display.
* hbdata.el (hbdata:to-entry-buf): Fix bug that set 'rtn' non-nil
at times when 'key-src' file was not found. This could lead
to the wrong error, 'hui:ebut-delete', saying that you cannot
delete buttons in this buffer.
2022-10-31 Bob Weiner <[email protected]>
* kotl/kimport.el (kimport:star-heading): Allow for indented headings.
2022-10-30 Bob Weiner <[email protected]>
* hypb.el (hypb:activate-interaction-log-mode): Add to configure and
enable the interaction-log package for use with Hyperbole. It
displays a font-locked log of Emacs keys and commands executed.
* hui-mini.el (hui:menu-enter): For character input, set 'this-command'
to 'self-insert-command'.
(hui:menu-mode-map): Rebound these keys to commands by
the same name: 'hui:menu-abort', 'hui:menu-quit', 'hui-menu-select',
and 'hui:menu-top'.
(hui:menu-select): Rename this function to 'hui:menu-choose'
to avoid conflict with aliasing above and ensure all the special keys
above are displayed in cmd logs.
* hui-mini.el (hui:hypb-exit): Rename to 'hui:menu-exit-hyperbole'.
* hui-mini.el (hui:menu-select): Don't record 'read-from-minibuffer'
in command history.
(hui:menu-act): Set 'this-command' and command keys to
be the full key sequence for a Hyperbole minibuffer menu command.
Ensure this single command appears in history for clean logging.
2022-10-27 Bob Weiner <[email protected]>
* hui-mini.el (hui:menu-item-key): Add and call from 'hui:menu-item-keys'.
* hib-kbd.el (kbd-key:key-series-to-events): Add cons of t to each
event to ensure each event is added to this-command-keys.
2022-10-25 Bob Weiner <[email protected]>
* hyrolo.el (hyrolo-backward-same-level): Add and bind to {b}.
(hyrolo-forward-same-level): Add and find to {f}.
(hyrolo-next-visible-heading): Add and bind to {n}.
(hyrolo-previous-visible-heading): Add and bind to {p}.
(hyrolo-up-heading): Add and bind to {u}.
(hyrolo-helm-org-directory-rifle, hyrolo-helm-org-rifle):
Let new variable, 'helm-org-rifle-show-level-stars', be t.
2022-10-24 Bob Weiner <[email protected]>
* hui-mouse.el (smart-outline-assist, smart-outline,
(smart-outline-to-entry-end): Remove 2nd arg 'curr-entry-level'
and simplify logic.
* hyrolo.el, hyrolo-logic.el: Remove 'next-entry-exists' and
'previous-entry-exists'.
* test/hyrolo-tests.el (hyrolo-demo-move-to-beginning-and-end-of-file):
Rewrite to match new {,} and {.} bindings.
* hyrolo.el (hyrolo-to-entry-end): Remove 2nd optional arg
curr-entry-level-len.
2022-10-23 Bob Weiner <[email protected]>
* man/hyperbole.texi (HyRolo Keys):
hyrolo.el (hyrolo-to-entry-end): Make interactive and bind to {.}.
(hyrolo-to-entry-beginning): Add and bind to {,}.
Previously, these keys were bound to begin and end of buffer but
were mistakenly reversed. Also, simplify these two commands.
(previous-entry-exists): Add this free variable and use
in 'hyrolo-to-entry-beginning'.
* hbut.el (hbut:get-key-src): Add save-excursion so point does not move.
hyrolo.el (hyrolo-edit-entry): Fix so if point is not on an entry
(src is a buffer, not a string), then raise an error.
2022-10-20 Mats Lidell <[email protected]>
* hload-path.el (hyperb:dir): Use defvar. Thanks to Stefan Monnier.
2022-10-16 Mats Lidell <[email protected]>
* kotl/klink.el (hmouse-tag): Require hmouse-tag.
* hui-mouse.el (imenu): Require imenu.
* hmouse-sh.el (kmacro): Require kmacro.
* kotl/kotl-mode.el (cmpl-last-insert-location, cmpl-original-string)
(completion-to-accept):
* hyrolo.el (org-roam-directory, org-roam-db-autosync-mode)
(markdown-regex-header):
* hui-mouse.el (magit-root-section):
* hsettings.el (helm-allow-mouse):
* hmouse-info.el (Info-complete-menu-buffer):
* hmouse-drv.el (start-window):
* hload-path.el (generated-autoload-file): Declare variable.
* hargs.el (hargs:reading-symbol): Define variable.
2022-10-16 Mats Lidell <[email protected]>
* kotl/kview.el (kview:insert-contents): Don't use global name for
parameter.
(kview:set-label-separator): Remove unused variable.
* hpath.el (hpath:is-p): Initialize variable.
* hmouse-sh.el (hmouse-get-bindings, hmouse-shifted-setup): Don't use
global name for parameter.
2022-10-16 Bob Weiner <[email protected]>
* kotl/kproperty.el (kproperty:replace-separator): Drop unused 'pos' arg.
kotl/kview.el (kview:set-label-separator): Update call to above function.
2022-10-15 Bob Weiner <[email protected]>
* hui-em-but.el (hproperty:but-flash): Remove 'a' and 'b' internal
variables and replace with 'but-face'.
* hbut.el (defil): Add 'ibut:label-set' call with label start and end
positions so implicit buttons defined this way flash when activated.
* hyrolo-menu.el: Align menu entry fields for better readability.
* hbut.el (hbut:get-key-src): Add optional 'dir-flag' arg to return the
directory of the 'key-src' and use in 'klink:at-p'.
* kotl/klink.el (klink:c-style-modes): Improve doc string.
(klink:at-p): In *scratch* buffer 'lisp-interaction-mode',
allow klinks outside of comments (since this is more intuitive).
2022-10-11 Mats Lidell <[email protected]>
* Makefile (bin, eln): Show docstring warnings again.
2022-10-10 Mats Lidell <[email protected]>
* kotl/kview.el (kview:create): Shorten docs strings to be within 80 char
limit.
2022-10-09 Bob Weiner <[email protected]>
* hyrolo-logic.el (hyrolo-map-entries, hyrolo-map-kotl): Add and call from
'hyrolo-map-logic'.
2022-10-09 Mats Lidell <[email protected]>
* Update docstrings to not use unescaped quotes.
* hyrolo.el:
* hyrolo-demo.el:
* hui-mini.el:
* hui-em-but.el:
* hsys-org.el:
* hpath.el:
* hib-kbd.el:
* kotl/kview.el: Shorten docs strings to be within 80 char limit.
2022-10-08 Mats Lidell <[email protected]>
* hibtypes.el (ipython-stack-frame, ripgrep-msg): Use
line-beginning-position and line-end-position.
2022-10-08 Bob Weiner <[email protected]>
* kotl/kview.el (kcell-view:contents): Add 'prefix-flag' arg to include
autonumber prefix and indent.
(kview:map-cells): Add.
* kotl/kotl-mode.el (kotl-mode:tree-start): Use 'line-beginning-position'.
2022-10-06 Bob Weiner <[email protected]>
* test/hibtypes-tests.el (ibtypes::pathname-path-variable-test): Remove
since is a duplicate of 'ibtypes::pathname-directory-test'.
2022-10-05 Mats Lidell <[email protected]>
* hui.el:
* kotl/kotl-mode.el:
* hib-social.el
* hmail.el:
* hmouse-tag.el:
* hsettings.el:
* hsys-org.el:
* hui-mini.el: Shorten docs strings to be within 80 char limit.
2022-10-04 Mats Lidell <[email protected]>
* hui.el (hui-copy-to-register): Use hui-register-struct-at-point if on a
button.
* test/hui-register-tests.el (hui-register-test--create-register-content)
(hui-register-test--register-val-jump-to)
(hui-register-test--register-val-insert-ebut)
(hui-register-test--register-val-insert-ibut): Add test cases for
hui-register.
* Makefile (EL_COMPILE, ELC_COMPILE): Add hui-register.
2022-10-03 Mats Lidell <[email protected]>
* hui-mouse.el:
* hvar.el:
* hyrolo.el:
* hypb.el:
* hycontrol.el:
* hui-select.el:
* hpath.el:
* hibtypes.el:
* hyrolo-logic.el:
* hyperbole.el:
* hversion.el:
* hui-window.el:
* hmouse-key.el:
* hmouse-drv.el:
* hload-path.el:
* hinit.el: Shorten docs strings to be within 80 char limit.
2022-09-30 Bob Weiner <[email protected]>
* hyrolo-logic.el (hyrolo-not, hyrolo-or, hyrolo-xor, hyrolo-and):
Use narrow-to-region and 'hyrolo-next-match-function' to find matches.
Also, regexp-quote the pattern as it is a string.
(hyrolo-r-not, hyrolo-r-or, hyrolo-r-xor, hyrolo-r-and):
Use narrow-to-region and 'hyrolo-next-match-function' to find matches.
(hyrolo-fgrep-logical): Add support for using the regex
logical functions by prefacing each function with 'r-' in an expression,
e.g. (r-and regex1 (r-not regex2)).
* hyrolo.el (hyrolo-verify): Add support for 'hynote-display-buffer'.
(hyrolo-grep-file): Change 'regexp' arg to 'pattern' and update
doc to mention use of 'hyrolo-next-match-function'.
* kotl/kcell.el (kcell:parse-cell-ref): Extract this from 'kotl-mode:goto-cell'
and make an autoload so may be used externally.
2022-09-27 Bob Weiner <[email protected]>
* kotl/kcell.el (kcell:plist): Change from alias to a function so can include
a doc string.
2022-09-26 Bob Weiner <[email protected]>
* hyrolo.el (hyrolo-next-regexp-match): Add to allow for different
hyrolo entry matching functions.
(hyrolo-next-match-function): Add.
(hyrolo-grep-file): Use above variable.
2022-09-25 Bob Weiner <[email protected]>
* hyrolo-logic.el (hyrolo-logic): Fix to handle when filename list is used
rather than a buffer list.
* hui.el (hui-copy-to-register): Rename 'region' arg to 'region-flag'.
* hyrolo.el (hyrolo-add): Handle markdown-mode which doesn't have a grouping
of only space after pound (#) headings.
(markdown-mode-hook): Support hyrolo searches in markdown files.
(hyrolo-fgrep-file, hyrolo-grep-file, hyrolo-fgrep, hyrolo-grep,
hyrolo-word):
Add optional 'headline-only' argument.
* hib-doc-id.el (link-to-doc, doc-id:help): Set new 'headline-only' argument
to nil.
2022-09-24 Bob Weiner <[email protected]>
* hyrolo.el (hyrolo-display-buffer): Change buffer name from "*Hyperbole Rolo*"
to "*HyRolo*".
* test/demo-tests.el (demo-hyrolo-test):
test/hyrolo-tests.el: Replace all "*Hyperbole Rolo*" with 'hyrolo-display-buffer'.
2022-09-19 Mats Lidell <[email protected]>
* hypb.el (hypb:replace-match-string): Remove unused function.
* hact.el: Use byte-code-function-p.
2022-09-17 Bob Weiner <[email protected]>
* kotl/klink.el (klink:cell-ref-regexp): Allow for a comma between
the cell reference and a viewspec.
kotl/kcell.el (kcell:ref-to-id): Remove any comma.
2022-09-14 Mats Lidell <[email protected]>
* hmouse-sh.el:
* hywconfig.el:
* htz.el:
* hmouse-mod.el:
* hmoccur.el: Shorten docs strings to be within 80 char limit.
2022-09-13 Mats Lidell <[email protected]>
* hmouse-info.el: Shorten docs strings to be within 80 char limit.
2022-09-12 Mats Lidell <[email protected]>
* hpath.el (hpath:tramp-file-name-regexp): Handle tramp regexp from
different Emacs versions.
* test/hpath-tests.el (hpath:remote-at-p): Add test case for
hpath:remote-at-p.
2022-08-29 Bob Weiner <[email protected]>
* hbut.el (ebut:key-src): Rename to 'ebut:to-key-src'.
(hbut:key-src): Rename to 'hbut:to-key-src'.
(ibut:key-src): Rename to 'ibut:to-key-src'.
* hyrolo.el (hyrolo-verify, hyrolo-isearch, hyrolo-next-match,
hyrolo-previous-match, hyrolo-isearch-for-regexp):
Add support for use in main HyRolo file, not just match buffer.
* hui-select.el (hui-select-goto-matching-delimiter, hui-select-thing):
hui-mini.el (hui-search-web): Use Org cmd if matching key binding
called from a keyboard macro.
* hui-mini.el (hui-search-web): If in Org mode and uses org-sparse-tree
binding call that instead (previously would call hsys-org-todo-occur
for more todo filtering functionality but org has a dispatch menu
on this key with multiple functions).
2022-08-28 Bob Weiner <[email protected]>
* kotl/klink.el (klink:act): Ensure 'hact' value is returned, not
the result of the 'klink:update-label' call.
hbut.el (hbut:get-key-src): Add to get source of button without
setting as current buffer.
kotl/klink.el (klink:at-p): Use 'hbut:get-key-src' to resolve
relative klink paths properly.
* kotl/kotl-mode.el (kotl-mode:to-start-of-line):
Remove and use 'kotl-mode:beginning-of-line' instead.
* hact.el (action:commandp, action:params, actype:eval):
hargs.el (hargs:action-get):
hypb.el (hypb:debug, hypb:map-vector):
Replace use of 'hypb:emacs-byte-code-p' with builtin
'byte-code-function-p.
* hibtypes.el (elisp-compiler-msg):
Replace 'hypb:replace-match-string' with 'replace-regexp-in-string'.
* hbut.el (ibut:at-p): Fix to returns nil if name and lbl-key are both nil.
Also add support for <> and {} ibut delimiters.
* hui-mouse.el (hkey-alist): In HyRolo match buffer, test major-mode
rather than buffer name.
* hyrolo.el (hyrolo-mode): Don't reinitialize local variables to default
values when already in hyrolo-mode and mode is invoked again.
* kotl/kview.el (kcell-view:to-label-end): Remove check if in a buffer
with a kview so can be used in HyRolo match buffer as well.
(kcell-view:to-label-end): Handle no kview in in HyRolo
match buffer.
* hyrolo.el (hyrolo-kill, hyrolo-toggle-narrow-to-entry,
hyrolo-google-contacts-grep, hyrolo-grep-file,
hyrolo-display-to-entry-end, hyrolo-name-at):
kotl/kimport.el (kimport:star-entries): Don't fold case when searching
for 'hyrolo-entry-regexp'.
(hyrolo-isearch-for-regexp): Add 2nd parameter, 'fold-search-flag'
used to set 'case-fold-search'.
* hyrolo.el (hyrolo-find-file-noselect-function): Add so can customize
low-level function used by HyRolo to read in each file searched by
HyRolo.
(hyrolo-find-file): Add second optional parameter, 'find-function',
used to find the file.
(hyrolo-find-file-noselect): Add and use 'hyrolo-find-file-noselect-function'.
(hyrolo-add, hyrolo-edit, hyrolo-grep, hyrolo-helm-org-rifle,
hyrolo-grep-file, hyrolo-map-level, hyrolo-to): Update to call
'hyrolo-find-file-noselect'.
(hyrolo-add-match): Retain entry properties in match buffer.
(hyrolo-mode): Make 'outline-regexp' local in match buffer.
2022-08-27 Bob Weiner <[email protected]>
* hyrolo.el (hyrolo-file-suffix-regexp): Match only to these
file suffixes when searching for HyRolo files in directories.
(hyrolo-search-directories, hyrolo-fgrep-directories,
hyrolo-grep-directories, hyrolo-helm-org-rifle-directories):
Add these functions to do HyRolo searches over filtered filenames
in directories.
(hyrolo-org): Separate helm-org-rifle behavior into a new
command, 'hyrolo-helm-org-directory-rifle'.
(hyrolo-helm-org-rifle, hyrolo-helm-org-directory-rifle):
Let 'helm-org-rifle-show-full-contents' be true.
* hyrolo.el (hyrolo-helm-org-rifle): Limit to .org and .otl files.
* hypb.el (hypb:filter-directories, hypb:readable-directories):
Add and use in "hyrolo.el".
2022-08-21 Bob Weiner <[email protected]>
* hyrolo.el (hyrolo-set-date): Don't add a date if in a Koutline
buffer.
* hyrolo.el (hyrolo-add, hyrolo-edit, hyrolo-toggle-narrow-to-entry,
hyrolo-grep-file, hyrolo-to):
hyrolo-logic.el (hyrolo-map-logic):
Replace use of 'widen' with new function, 'hyrolo-widen',
which widens only to the textual part of a buffer, leaving
Koutline meta-data hidden, for example.
(hyrolo-edit, hyrolo-add): If in a Koutline, ensure point is
left in a valid, editable position.
(hyrolo-narrowed-p): Remove. Use 'buffer-narrowed-p' instead.
(hyrolo-show-levels): Make argument of NUM-LEVELS relative
to first matched level, so some entries are always shown.
(hyrolo-min-matched-level): Add and use in 'hyrolo-show-levels'
(hyrolo-back-to-visible-point): Add and use in
'hyrolo-show-levels'.
(hyrolo-display-matches): Move invocation of 'hyrolo-mode'
to when the match display buffer is created in 'hyrolo-set-display-buffer'.
(hyrolo-set-display-buffer): Add and used above.
2022-08-20 Bob Weiner <[email protected]>
* hyrolo.el (hyrolo-grep): Add support for 'outline-regexp' and
'outline-level' variables from multiple file types.
(hyrolo-mode): Set local value of 'outline-level' to
'hyrolo-mode-outline-level' and define that function to support
star outlines and Koutlines. Also, make 'hyrolo-entry-regexp'
local and set it to its default value, after which it may be
modified.
(hyrolo-previous-match): Change so can be used in a
predicate when a match is found.
(hyrolo-mode-outline-level): Add and use in 'hyrolo-mode'.
* kotl/kotl-mode.el (kotl-mode): Add local settings of:
'hyrolo-entry-regexp', 'outline-level', and 'outline-regexp'
specific to Koutlines.
kotl/kview.el (kview:outline-regexp): Regexp quote
use of 'kview:default-label-separator'.
(hyrolo-name-at): Change to only go to beginning of
the current line to check if at the start of a hyrolo entry;
don't do a reverse search any more.
2022-08-14 Mats Lidell <[email protected]>
* set.el:
* hyrolo-demo.el:
* hui-jmenu.el:
* hui-em-but.el:
* hsys-youtube.el: Shorten docs strings to be within 80 char limit.
* hload-path.el (hload-path--make-directory-autoloads): Use
loaddefs-generate if available.
2022-08-11 Bob Weiner <[email protected]>
* kotl/kview.el (kview:outline-regexp): Add groupings to match
to 'hyperbole-entry-regexp' when HyRolo searches kotls.
* kotl/kotl-mode.el (kotl-mode): Set this mode with 'special
property since cells are specially formatted and edited.
hyrolo.el (hyrolo-grep-file):
hyrolo-logic.el (hyrolo-map-logic): Don't widen buffers whose
major mode is marked 'special.
2022-08-08 Bob Weiner <[email protected]>
* kotl/kview.el (kview:outline-regexp): Add so can be referenced
elsewhere.
kotl/kotl-mode.el (kotl-mode): Use kview:outline-regexp.
2022-08-07 Bob Weiner <[email protected]>
* hyrolo.el (hyrolo-org, hyrolo-org-roam): Remove cddr call to filter
. and .. out since match to "\\.org$" already does. Also add
missing arguments to hyrolo-org and complete doc strings.
2022-08-07 Mats Lidell <[email protected]>
* kotl/kvspec.el: Shorten docs strings to be within 80 char limit.
2022-07-26 Mats Lidell <[email protected]>
* kotl/kproperty.el:
* kotl/klink.el:
* kotl/klabel.el:
* kotl/kfile.el:
* hib-kbd.el:
* hib-doc-id.el:
* hhist.el:
* hbut.el:
* kotl/kotl-orgtbl.el: Shorten docs strings to be within 80 char limit.
2022-07-25 Mats Lidell <[email protected]>
* kotl/kimport.el:
* kotl/kfill.el: Shorten docs strings to be within 80 char limit.
2022-07-24 Bob Weiner <[email protected]>
* hypb.el (hypb:require-package): Prompt user with y/n query before
installing a package when it is not already installed.
* hbut.el (ibut:at-p, ibut:create): Ensure lbl-key is always set to
name, if available, and lbl-start and lbl-end point to the text
start and end for an ibut.
* hibtypes.el (action): Ensure actypes:: prefix is added to any action
attribute that uses a Hyperbole actype. Also, set args attribute
to exclude the actype.
* hbut.el (ibut:create): Rewrite to prefer values from hbut:current
over any passed in individually.
* test/demo-tests.el (fast-demo-key-series-shell-cd-hyperb-dir):
FAST-DEMO: Change pushd to cd since /bin/sh does not support pushd.
* hpath.el (hpath:find): Rename filename arg to pathname and trigger
an error if not a string.
2022-07-23 Bob Weiner <[email protected]>
* hibtypes.el (action): Display the result of evaluating the action
in the minibuffer for all types of expressions.
hactypes.el (display-value, display-variable): Fix to display
Lisp-readable values.
* hui.el (hui:gibut-create): Add (ibut:create) call so 'hbut:current
stores the attributes of the newly created global button.
* hbut.el (hbut:action): If action defined, return only first
element to match the return when actype is used.
(hbut:act): Use action attribute if defined.
(ibut:create): Prevent removal of 1st arg if actype
is set.
* hibtypes.el (elisp-compiler-msg): Add support for ERT "Test <symbol>"
lines to jump to the def of the symbol and for symbol and pathname
references from backtraces in ERT output.
* hib-debbugs.el (debbugs-version-sufficient-p): Handle if version
is nil due to edebug mocking of 'find-file-noselect'.
test/hui-tests.el (hui-gibut-create-link-to-file,
hui-gibut-create-link-to-file-line,
hui-gibut-create-link-to-file-line-and-column):
test/hbut-tests.el (gbut-program-calls-ebut-program)
gbut-program-link-to-directory, gbut-program-eval-elisp,
gbut-program-link-to-file, gbut-program-link-to-file-line,
gbut-program-link-to-file-line-and-column):
Replace mock of 'find-file-noselect' with 'hpath:find-noselect'
so tests do not interfere with other calls to 'find-file-noselect'.
* test/hy-test-helpers.el (hy-test-helpers:kill-buffer):
Add to kill buffers only when they exist.
test/demo-tests.el (fast-demo-key-series-shell-apropos):
Use 'hy-test-helpers:kill-buffer'.
test/hy-test-dependencies.el (hy-test-ensure-package-installed):
Simplified by defining this function.
2022-07-22 Bob Weiner <[email protected]>
* hmouse-drv.el (hkey-debug): Use 'action' attribute if set, otherwise,
use 'actype' and 'args'.
* hbut.el (ibut:create): Add 'dir' key parameter and set as hbut:current
attribute. Remove '(or args)' as that was preventing set of
hbut:current attributes.
2022-07-21 Mats Lidell <[email protected]>
* kotl/kexport.el:
* kotl/kcell.el: Shorten docs strings to be within 80 char limit.
2022-07-20 Mats Lidell <[email protected]>
* hact.el:
* hmouse-tag.el:
* hbdata.el:
* hactypes.el:
* hib-debbugs.el:
* hargs.el: Shorten docs strings to be within 80 char limit.
2022-07-19 Mats Lidell <[email protected]>
* test/demo-tests.el (fast-demo-key-series-shell-apropos): Add optional
whitespace after command to accomodate for different versions on
apropos.
2022-07-17 Mats Lidell <[email protected]>
* hypb.el (hypb:replace-match-string): Fix obsolete version to 8.0.1.
* kotl/kotl-mode.el (kotl-mode:beginning-of-line): Rename from
kotl-mode:to-start-of-line since it is the preferred name but was
blocked due to XEmacs byte compiler bug.
(kotl-mode:to-start-of-line): Mark as obsolete from version 8.0.1.
* hmouse-sh.el (hmouse-get-bindings): Do not mention XEmacs since it is
not supported.
* kotl/kview.el:
* kotl/kotl-mode.el:
* kotl/klabel.el: Use lbl-sep-len for all defun parameters to avoid name
clash with obsolete variable label-sep-len.
* kotl/kvspec.el (kvspec:show-lines-this-cell): Use kview-label-sep-len.
* kotl/kotl-mode.el (kotl-mode:collapse-tree, kotl-mode:expand-tree): Use
kview-label-sep-len.
* kotl/kview.el (kview-label-sep-len): Rename global variable.
(kcell-view:lines-visible, kview:set-cells-status): Use it.
(label-sep-len): Mark variable as obsolete. Use kview-label-sep-len.
2022-07-17 Bob Weiner <[email protected]>
* hmouse-drv.el (hkey-debug): Add print of all button properties when on
a Hyperbole button.
* hsettings.el (hyperbole-web-search): Add optional 'return-search-expr-flag'
to return search expression rather than doing the search. Use
with Assist Key.
* hibtypes.el (action): Call ibut:create to ensure button attributes
are set properly.
hbut.el (ibut:create): Return nil if at end-of-buffer.
* hui-mouse.el (smart-imenu-item-p): Support -99 position value
that Emacs uses to indicate a rescan should be done.
* test/demo-tests.el (fast-demo-key-series-shell-cd-hyperb-dir,
fast-demo-key-series-shell-grep,
fast-demo-key-series-shell-apropos):
Use 'sh' instead of 'bash' for wider applicability.
Don't kill shell buffer if it exists before the test is invoked.
* hact.el (htype:symbol): Return nil if type-category is invalid.
2022-07-15 Mats Lidell <[email protected]>
* test/hypb-tests.el: Remove test cases for hypb:replace-match-string.
* hypb.el (hypb:replace-match-string): Mark as obsolete. Replace all
calls, in numerous places, to use replace-regexp-in-string.
2022-07-13 Stefan Monnier <[email protected]>
* hrmail.el (rmail-cease-edit, rmail-forward, rmail-get-new-mail)
(rmail-new-summary): Use `advice-add` rather than straight redefinition
or `hypb:function-overload`.
* hmh.el (mh-display-msg, mh-regenerate-headers): Use `advice-add`
rather than `hypb:function-overload`.
* hgnus.el (gnus-inews-article): Remove hack on function that was
deleted back in Nov 1995.
* hypb.el (hypb:emacs-byte-code-p): `byte-code-function-p` is always
defined in Emacs≥27.
(hypb:function-copy, hypb:function-overload)
(hypb:function-symbol-replace, hypb:map-sublists)
(hypb:constant-vector-symbol-replace): Delete functions.
2022-07-12 Bob Weiner <[email protected]>
* hbut.el (ibut:create): Add, extracted from 'ibut:at-p'; define
with cl-defun so can optionally use non-positional colon-prefixed
keyword args to specify specific args.
* hmouse-drv.el (hkey-help): Set 'assist-flag' so matches Assist Key
behavior in edges cases.
* hactypes.el (display-value): Add to display a value when a get or
value function returns that value.
hibtypes.el (action): Use 'display-value'.
2022-07-12 Mats Lidell <[email protected]>
* test/hpath-tests.el (hpath:auto-variable-alist-load-path-test): Simplify
test case to only test with unquoted file name.
* test/hui-tests.el (hui-gbut-edit-link-to-file-button): Remove test file
after test case is completed.
2022-07-11 Bob Weiner <[email protected]>
* hibtypes.el (action:help): Allow for action button assist key :help
functions, even if the action button type is not a Hyperbole type,
i.e. a regular function.
2022-07-11 Mats Lidell <[email protected]>
* test/hy-test-helpers.el (hy-test-helpers:should-last-message): Use
function messages-buffer for getting the *Messages* buffer.
* test/hui-select-tests.el (hui-select--thing): Limit test case to run in
interactive mode, i.e. make test-all.
2022-07-10 Bob Weiner <[email protected]>
* hsys-youtube.el: Add action button type to play segments of Youtube videos.
Makefile (EL_COMPILE, ELc_COMPILE):
MANIFEST: Added above file.
2022-07-06 Bob Weiner <[email protected]>
* hypb.el (hypb:require-package): Add to install a package, if necessary,
and require its library with the same name.
(hypb:helm-info): Add to require helm package and call helm-info.
2022-07-04 Bob Weiner <[email protected]>
* hypb.el (hypb:devdocs-lookup): Install and load devdocs package and then
call its 'devdocs-lookup' function.
2022-07-02 Bob Weiner <[email protected]>
* hyrolo.el (hyrolo-org, hyrolo-helm-org-rifle, hyrolo-org-roam): Add HyRolo-
based searching of Org files, helm-based searching of HyRolo files and
Hyrolo-based searching of Org Roam files.
* hsys-org.el (hsys-org-link-at-p, hsys-org-heading-at-p): Update to use
'smart-eolp' and 'smart-eobp'.
2022-06-26 Bob Weiner <[email protected]>
* hui-mouse.el (hkey-alist): Fix smart-lisp to jump to load, autoload and
require targets.
hmouse-tag.el (smart-lisp-at-load-expression-p): Ensure expr ends with
whitespace (a full word).
2022-06-25 Bob Weiner <[email protected]>
* hui-mini.el (hui:menu-forward-item, hui:menu-backward-item): Update to
handle menus without a name> prefix, e.g. a-Z menu. Also add numeric
prefix arg handling.
2022-06-20 Bob Weiner <[email protected]>
* hui-mini.el (hui:menu-to-personal-section): Add.
(hui:menu-item): Add support for inserting menu item label
into the action when the action is 'hui:menu-to-personal-section'.
(hui:menu-a-z): Add this customizable menu.
* hyrolo.el (hyrolo-add): Add newline before adding entry if point is not
at the beginning of the line for insertion, i.e. when buffer does not
end with a newline.
* hui-mini.el (hui:menu-multi-line): Add to change long minibuffer menu lines
into multi-line menus.
(hui:menu-line): Update to use 'hui:menu-multi-line'.
2022-06-19 Bob Weiner <[email protected]>
* test/demo-tests.el (fast-demo-key-series-shell-apropos): Allow optional space
before matching section number.
* hui-treemacs.el: Change to load and compile only when the treemacs package is
installed (rather than triggering an error if this is loaded when treemacs
is missing, since this can happen when building/compiling Hyperbole).
* Makefile (BATCHFLAGS): Output emacs version, sys and path information.
(LOAD_EL): Add to gen cmd line args to load all Hyperbole .el files.
(load-hyperbole): Add to allow testing of loading all of Hyperbole.
(eln): Use LOAD_EL and remove autoloads loading prior to native compiling.
* test/demo-tests.el (fast-demo-key-series-shell-apropos): Fix to handle shell startup delay.
* hypb.el (hypb:function-copy): Since many functions may become primitives
when using the native compiler, return the primitive function in such
cases rather than triggering an error.
2022-06-19 Mats Lidell <[email protected]>
* hui-select.el: Remove mention of Emacs versions in comment.
* hmoccur.el (moccur): Remove XEmacs and InfoDock font-lock code.
* hui-mouse.el: Remove mention of Emacs versions and NEXTSTEP.
* hsettings.el: Remove XEmacs from comment.
* kotl/kotl-mode.el (kotl-mode:fill-paragraph-or-region):
(kotl-mode-map): Remove XEmacs compatibility code.
* hmouse-drv.el (hmouse-use-region-p): Remove XEmacs and InfoDock
compatibility code.
* kotl/kmenu.el (id-menubar-set): Remove declared unused function.
(id-menubar-kotl): Remove unsued InfoDock menu.
(kotl-menubar-menu): Remove XEmacs compatibility code.
(kotl-mode-hook): Set hook unconditionally.
* hyrolo-menu.el (id-menubar-hyrolo): Remove InfoDock menu.
(id-menubar-set, mode-popup-menu): Remove unused public declarations.
(hyrolo-menubar-menu): Remove XEmacs compatibility code.
(hyrolo-mode-hook): Set hook unconditionally.
* hmouse-tag.el (smart-emacs-tags-file): Remove XEmacs, Infodock from doc.
(smart-tags-find-p, smart-tags-display, smart-tags-file-list):
Remove XEmacs and Infodock compatibility code.
* hmouse-mod.el (hmouse-mod-last-char): Remove XEmacs compatibility code.
* hyrolo.el (hyrolo-prompt):
(hyrolo-rename): Remove XEmacs dialog box and parameter.
* hui-window.el (hmouse-modeline-event-p): Remove XEmacs and old Emacs
compatibility code.
2022-06-18 Mats Lidell <[email protected]>
* hact.el (hact): Use defun. Patch from Stefan Monnier. Thanks Stefan.
2022-06-16 Mats Lidell <[email protected]>
* Makefile (hyperbole-autoloads.el, kotl/kotl-autoloads.el): Use
hload-path--make-directory-autoloads.
2022-06-14 Mats Lidell <[email protected]>
* hload-path.el (hload-path--make-directory-autoloads)
(hload-path--internal-make-directory-autoloads): Use defalias for
compatibility function.
(hyperb:generate-autoloads): Use it.
* hibtypes.el (cl-lib): Require cl-lib to remove package-lint warning.
* hyperbole.el: Remove defalias for compatibility with obsolete functions
since Emacs 25.1 and outline-flag-region available since 2003.
* hui-em-but.el (hproperty:good-colors): package-lint code formatting.
2022-06-13 Mats Lidell <[email protected]>
* test/demo-tests.el (fast-demo-key-series-shell-cd-hyperb-dir)
(fast-demo-key-series-shell-grep, fast-demo-key-series-shell-apropos):
Tests for shell related key series examples in the fast demo.
2022-06-12 Mats Lidell <[email protected]>
* hib-kbd.el: Replace \\s- with [ \t\n\r\f] to eliminate mode based
differences.
2022-06-09 Mats Lidell <[email protected]>
* test/demo-tests.el:
(fast-demo-key-series-window-grid-22, fast-demo-key-series-kotl-files)
(fast-demo-key-series-emacs-lisp-mode)
(fast-demo-key-series-hyperbole-dir)
(fast-demo-key-series-keep-lines-ext)
(fast-demo-key-series-keep-lines-slash)
(fast-demo-key-series-keep-lines-dired): Add tests for FAST-DEMO key
series examples.
2022-06-05 Bob Weiner <[email protected]>
* hui-mouse.el (smart-eolp): Exclude when on blank line and nothing but whitespace until eob.