-
-
Notifications
You must be signed in to change notification settings - Fork 85
/
blerc.template
1468 lines (1025 loc) · 59.1 KB
/
blerc.template
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
# -*- mode: sh; mode: sh-bash -*-
## This is a template for "~/.blerc".
##
## To use ble.sh in bash, please set up "~/.bashrc" as follows:
##
## ```bash
## # bashrc
##
## # Please put the following line in the beginning of .bashrc
## # Note: Please replace $HOME/.local/share/blesh with the path to your ble.sh
## [[ $- == *i* ]] && source "$HOME/.local/share/blesh/ble.sh" --noattach
##
## # Your bashrc contents should come between the two lines.
##
## # Please put the following line in the end of .bashrc
## [[ ! ${BLE_VERSION-} ]] || ble-attach
## ```
##
##-----------------------------------------------------------------------------
## Basic settings
## The following setting specifies the input encoding. Currently only "UTF-8"
## and "C" is available.
#bleopt input_encoding=UTF-8
## The following setting specifies the pager used by ble.sh. This is used to
## show the help of commands (f1).
#bleopt pager=less
## The following setting specifies the editor used by ble.sh. This is used for
## the widget edit-and-execute (C-x C-e) and editor for a large amount of
## command line texts. Possible values include, for example, "vim", "emacs
## -nw" and "nano".
#bleopt editor=vim
## The following settings sets the behavior of visible bells (vbell). The
## option "vbell_duration" sets the time duration to show the vbell. The
## option "vbell_align" controls the position of vbell with a colon-separated
## fields. The fields "left", "center", and "right" specify that the vbell
## should be shown up on the left, center, and right, respectively, in the
## terminal display. The default is "right". The field "panel" specify that
## vbell should be shown below the command line within the line editor
## interface (as far as the line editor is currently active). The faces
## "vbell", "vbell_erase", and "vbell_flash" specify the graphic style of the
## vbell, the one after vbell is erased, and the one used to blink the vbell,
## respectively.
#bleopt vbell_default_message=' Wuff, -- Wuff!! '
#bleopt vbell_duration=2000
#bleopt vbell_align=right
#ble-face vbell='reverse'
#ble-face vbell_erase='bg=252'
#ble-face vbell_flash='fg=green,reverse'
##-----------------------------------------------------------------------------
## Line editor settings
## This option controls the behavior of the bell in the line editing by
## colon-separated values. When "abell", "vbell", and "visual" are contained,
## the audible bells, the visible bells, and the visual bells are enabled. The
## audible bell sends BEL to the terminal. The visible bell shows the message
## on the terminal display. The visual bell is the GNU-Screen style bell that
## flashes the terminal display by turning on DECSCNM in a short moment. Old
## settings "edit_vbell" and "edit_abell" should be updated to use "edit_bell".
#bleopt edit_bell=abell
## The following setting turns on the delayed load of history when an non-empty
## value is set.
#bleopt history_lazyload=1
## The following setting turns on the delete selection mode when an non-empty
## value is set. When the mode is turned on the selection is removed when a
## user inserts a character.
#bleopt delete_selection_mode=1
## The following settings control the indentation. "indent_offset" sets the
## indent width. "indent_tabs" controls if tabs can be used for indentation or
## not. If "indent_tabs" is set to 0, tabs will never be used. Otherwise
## indentation is made with tabs and spaces.
#bleopt indent_offset=4
#bleopt indent_tabs=1
## "undo_point" controls the cursor position after "undo". When "beg" or "end"
## is specified, the cursor will be moved to the beginning or the end of the
## dirty section, respectively. When other values are specified, the original
## cursor position is reproduced.
#bleopt undo_point=end
## The following setting controls forced layout calculations before graphical
## operations. When a non-empty value is specified, the forced calculations are
## enabled. When an empty string is set, the operations are switched to logical
## ones.
#bleopt edit_forced_textmap=1
## The following option controls the interpretation of lines when going to the
## beginning or the end of the current line. When the value `logical` is
## specified, the logical line is used, i.e., the beginning and the end of the
## line is determined based on the newline characters in the edited text. When
## the value `graphical` is specified, the graphical line is used, i.e., the
## beginning and the end of the displayed line in the terminal is used.
#bleopt edit_line_type=graphical
## The following option specifies the set of expansions performed by
## magic-space with a colon-separated list of expansion types. "history",
## "sabbrev", "alias", and "autocd" can be specified.
#bleopt edit_magic_expand=history:sabbrev
## This option configures the detailed behavior of the widget "magic-space"
## with a colon-separated list. If the field "inline-sabbrev-no-insert" is
## specified, the insertion of "SP" is skipped when the inline sabbrev is
## performed by "magic-space".
#bleopt edit_magic_opts=
## This option specifies the expansions performed on accept-line by a
## colon-separated list. The expansion is performed in a similar way as Bash's
## history expansion. When "sabbrev", "alias", "autocd", and "history" is
## specified, the respective expansions are attempted on the command line.
## When "verify" is specified, if sabbrev, alias, or autocd expansions changed
## the command line, the execution of the command line is canceled so the user
## can examine or continue to edit the expanded line. The history expansion
## can be controlled by "shopt -s histverify" in a similar manner. When
## "verify-syntax" is specified and any expansions change the command string, a
## syntax check is performed. The command execution is canceled when the
## command string is not syntactically complete. When "history-line" is
## specified, the history expansion replaces the command line instead of just
## printing the expansion result. The default value of this option is empty.
#bleopt edit_magic_accept=sabbrev
## The following option controls the position of the info pane where completion
## menu, mode names, and other information are shown. When the value "top" is
## specified, the info pane is shown just below the command line. When the
## value "bottom" is specified, the info pane is shown at the bottom of the
## terminal. The default is "top".
#bleopt info_display=top
## The following settings controls the prompt after the cursor left the command
## line. "prompt_ps1_final" contains a prompt string. "prompt_ps1_transient"
## is a colon-separated list of fields "always", "same-dir" and "trim". The
## prompt is replaced by "prompt_ps1_final" if it has a non-empty value.
## Otherwise, the prompt is trimmed leaving the last line if
## "prompt_ps1_transient" has a field "trim". Otherwise, the prompt vanishes
## if "prompt_ps1_transient" has a non-empty value. When
## "prompt_ps1_transient" contains a field "same-dir", the setting of
## "prompt_ps1_transient" is effective only when the current working directory
## did not change since the last command line.
#bleopt prompt_ps1_final=
#bleopt prompt_ps1_transient=trim
## The following settings controls the right prompt. "prompt_rps1" specifies
## the contents of the right prompt in the format of PS1. When the cursor
## leaves the current command line, the right prompt is replaced by
## "prompt_rps1_final" if it has a non-empty value, or otherwise, the right
## prompt vanishes if "prompt_rps1_transient" is set to a non-empty value,
#bleopt prompt_rps1='\w'
#bleopt prompt_rps1_final=
#bleopt prompt_rps1_transient=''
## The following settings specify the content of terminal titles and status
## lines. "prompt_xterm_title" specifies the terminal title which can be set
## by "OSC 0 ; ... BEL". "prompt_screen_title" is effective inside terminal
## multiplexers such as GNU screen and tmux and specifies the window title of
## the terminal multiplexer which can be set by "ESC k ... ST".
## "prompt_term_status" is only effective when terminfo entries "tsl" and "fsl"
## (or termcap entries "ts" and "ds") are available, and specifies the content
## of the status line which can be set by the terminfo entries. When each
## setting has non-empty value, the content of corresponding title or status
## line is replaced just before PS1 is shown.
#bleopt prompt_xterm_title=
#bleopt prompt_screen_title=
#bleopt prompt_term_status=
## The following settings control the status line. "prompt_status_line"
## specifies the content of the status line. If its value is empty, the status
## line is not shown. "prompt_status_align" controls the position of the
## content in the status line. The face "prompt_status_line" specifies the
## default graphic style of the status line.
#bleopt prompt_status_line=
#bleopt prompt_status_align=left
#ble-face prompt_status_line='fg=231,bg=240'
## "prompt_eol_mark" specifies the contents of the mark used to indicate the
## command output is not ended with newlines. The value can contain ANSI escape
## sequences.
#bleopt prompt_eol_mark=$'\e[94m[ble: EOF]\e[m'
## "prompt_ruler" specifies the ruler between the previous command and the
## prompt (like powerlevel10k
## "POWERLEVEL9K_PROMPT_{ADD_NEWLINE,SHOW_RULER,RULER_*}"). When the empty
## value is specified, the ruler is disabled. This is the default. When the
## value "empty-line" is specified, an empty line is inserted between the
## command and the prompt. When the other values are specified, the value is
## interpreted as an ANSI sequences, and the result is repeated to fill a line.
#bleopt prompt_ruler= # no ruler (default)
#bleopt prompt_ruler=empty-line # empty line
#bleopt prompt_ruler=$'\e[94m-' # blue line
## "prompt_command_changes_layout" specifies whether the commands called from
## the blehook PRECMD or the variable PROMPT_COMMAND output texts to the
## terminal and changes the layout. When a non-empty value is specified,
## ble.sh resets the layout before running the hooks PRECMD and PROMPT_COMMAND
## and restores the layout after running the hooks. When a empty value is
## specified, ble.sh assumes that these hooks do not output texts to the
## terminal and do not changes the cursor positions and skip the special
## treatment.
#bleopt prompt_command_changes_layout= # PRECMD/PROMPT_COMMAND not output
#bleopt prompt_command_changes_layout=1 # PRECMD/PROMPT_COMMAND may output
## "exec_restore_pipestatus" controls whether ble.sh restores PIPESTATUS of the
## previous user command. When this option is set to a non-empty value,
## PIPESTATUS is restored. This feature is turned off by default because it
## adds extra execution costs. Note that the values of PIPESTATUS of the
## previous command are always available with the array BLE_PIPESTATUS
## regardless of this setting.
#bleopt exec_restore_pipestatus=1 # restores PIPESTATUS
## "edit_marker" and "edit_marker_error" define the default styles of the
## markers [ble: ...] used by ble.sh. "edit_marker" is used for the normal
## notifications, and "edit_marker_error" is used for the error information.
## When they are set to an empty string, those markers are disabled (unless
## additional information other than the markers needs to be output after the
## markers). Those default styles can be overridden by specific mark settings,
## such as `exec_errexit_mark`, `exec_elapsed_mark`, and `exec_exit_mark`.
#bleopt edit_marker=$'\e[94m[ble: %s]\e[m'
#bleopt edit_marker_error=$'\e[91m[ble: %s]\e[m'
## "exec_errexit_mark" specifies the format of the mark to show the exit status
## of the command when it is non-zero. If this setting is an empty string, the
## exit status will not be shown. The value can contain ANSI escape sequences.
#bleopt exec_errexit_mark=$'\e[91m[ble: exit %d]\e[m'
## "exec_elapsed_mark" specifies the format of the command execution time
## report. It takes two arguments: the first is the string that explains the
## elapsed time, and the second is a number that represents the percentage of
## CPU core usage. "exec_elapsed_enabled" specifies the condition that the
## command execution time report is displayed after the command execution. The
## condition is expressed by an arithmetic expression, where a non-zero result
## causes displaying the report. In the arithmetic expression, variables
## "real", "{usr,sys}{,_self,_child}", and "cpu" can be used. "real"
## represents the elapsed time. "usr" and "sys" represent the user and system
## time, respectively. The suffixes "_self" and "_child" represent the part
## consumed in the main shell process and the other child processes including
## subshells and external programs, respectively. "cpu" represents the
## percentage of the CPU core usage in integer, which can be calculated by
## "(usr+sys)*100/real". The other values are all in unit of milliseconds.
#bleopt exec_elapsed_mark=$'\e[94m[ble: elapsed %s (CPU %s%%)]\e[m'
#bleopt exec_elapsed_enabled='usr+sys>=10000'
## "exec_exit_mark" specifies the marker printed when the bash session ends.
## When an empty string is specified, the marker is disabled.
#bleopt exec_exit_mark=$'\e[94m[ble: exit]\e[m'
## The following setting controls the exit when jobs are remaining. When an
## empty string is set, the shell will never exit with remaining jobs through
## widgets. When an non-empty value is set, the shell will exit when exit is
## attempted twice consecutively.
#bleopt allow_exit_with_jobs=
## The following setting controls the cursor position after the move to other
## history entries. When non-empty values are specified, the offset of the
## cursor from the beginning of the command line is preserved. When an empty
## value is specified the cursor position is the beginning or the end of the
## command lines when the move is to a newer or older entry, respectively.
#bleopt history_preserve_point=
## The following setting controls the history sharing. If it has non-empty
## value, the history sharing is enabled. With the history sharing, the command
## history is shared with the other Bash ble.sh sessions with the history
## sharing turned on.
#bleopt history_share=
## This option controls the target range in the command history for
## "erasedups", which is performed when it is specified in "HISTCONTROL". When
## this option has an empty value, the target range is the entire history as in
## the plain Bash. When this option evaluates to a positive integer "count",
## the target range is the last "n" entries in the command history. When this
## option evaluates to a non-positive integer "offset", "offset" specifies the
## beginning of the target range relative to the history count at the session
## start. The end of the target range is always the end of the command
## history.
#bleopt history_erasedups_limit= # entire history
#bleopt history_erasedups_limit=0 # only new items added in this session
#bleopt history_erasedups_limit=-1000 # new items and 1000 prev-session items
#bleopt history_erasedups_limit=1000 # last 1000 items
## The following setting controls the behavior of the widget
## "accept-single-line-or-newline" in the single-line editing mode. The value
## is a subject of arithmetic evaluation. When it evaluates to negative
## integers, the line is always accepted. When it evaluates to 0, it enters the
## multiline editing mode when there is any unprocessed user inputs, or
## otherwise the line is accepted. When it evaluates to a positive integer "n",
## it enters the multiline editing mode when there is more than "n"unprocessed
## user inputs.
#bleopt accept_line_threshold=5
## The following option controls the behavior when the number of characters
## exceeds the capacity specified by `line_limit_length`. The value `none`
## means that the number of characters will not be checked. The value
## `discard` means that the characters cannot be inserted when the number of
## characters exceeds the capacity. The value `truncate` means that the
## command line is truncated from its end to fit into the capacity. The value
## `editor` means that the widget `edit-and-execute` will be invoked to open an
## editor to edit the command line contents.
#bleopt line_limit_type=none
## The following option specifies the capacity of the command line in the
## number of characters. The number 0 or negative numbers means the unlimited
## capacity.
#bleopt line_limit_length=10000
## The following option specifies the maximal number of characters which can be
## appended into the history. When this option has a positive value, commands
## with the length longer than the value is not appended to the history. When
## this option has a non-positive value, commands are always appended to the
## history regardless of their length.
#bleopt history_limit_length=10000
##-----------------------------------------------------------------------------
## Terminal state control
## When the follwoing setting is set to a non-empty value, ble.sh saves the TTY
## state at the end of the command executation and restores it before the next
## command execution. This adds a slight overload of running an extra call of
## stty. If this is enabled, when a command breaks the TTY state, the effect
## remains in later commands.
#bleopt term_stty_restore=1
## The following setting specifies the cursor type when commands are executed.
## The cursor type is specified by the argument of the control function
## DECSCUSR.
#bleopt term_cursor_external=0
## The following settings, external and internal, specify the "modifyOtherKeys"
## states [the control function SM(>4)] when commands are executed and when
## ble.sh has control, respectively.
#bleopt term_modifyOtherKeys_external=auto
#bleopt term_modifyOtherKeys_internal=auto
## The following setting controls whether the kitty-keyboard-protocol sequences
## should pass-through the terminal multiplexers when the outermost terminal is
## kitty. When this option has a non-empty string, the pass-through kitty
## protocol sequences are enabled.
##
## * This is intended to be used with tmux-3.4+. This works with tmux-3.3a and
## below as far as the user does not enable CapsLock or NumLock. Note that
## this might cause problems of keyboard inputs after detaching from tmux;
## You might lose the control of the terminal applications that do not
## support extended keys outside the terminal multiplexers.
##
## * This will cause the same problems when used with multiple windows in GNU
## screen. You will lose the control of the terminal applications without
## the support for extended keys when there are more than one ble.sh session
## or when there is at least one foreground ble.sh session in GNU screen.
#bleopt term_modifyOtherKeys_passthrough_kitty_protocol=1
##-----------------------------------------------------------------------------
## Rendering options
## "tab_width" specifies the width of TAB on the command line. When an empty
## value is specified, the width in terminfo (tput it) is used.
#bleopt tab_width=
## "char_width_mode" specifies the width of East_Asian_Width=A characters.
## When the value "east" is specified, the width is 2. When the value "west" is
## specified, the width is 1. When the value "emacs" is specified, the width
## table (depending on characters) used in Emacs is used. When the value
## "musl" is specified, the table for "wcwidth" of the musl C library in 2014
## is used [Note: recent versions of musl library is more conforming to Unicode
## so favor "west" or "east"]. When "auto" is specified, the character width
## mode is automatically selected based on interactions with the terminal.
#bleopt char_width_mode=auto
## "char_width_version" specifies the Unicode version that char width
## determination bases on. When "auto" is specified, ble.sh automatically
## tests the behavior of the terminal on startup and try to determine the
## appropriate version. Supported versions are "4.1", "5.0", "5.2", "6.0",
## "6.1", "6.2", "6.3", "7.0", "8.0", "9.0", "10.0", "11.0", "12.0", "12.1",
## "13.0", "14.0", "15.0", and "15.1". The default value is "auto".
#bleopt char_width_version=auto
## "emoji_width" specifies the width of emoji characters. If an empty value is
## specified, special treatment of emoji is disabled.
#bleopt emoji_width=2
## "emoji_version" specifies the version of Unicode Emoji. Available values
## are 0.6, 0.7, 1.0, 2.0, 3.0, 4.0, 5.0, 11.0, 12.0, 12.1, 13.0, 13.1, 14.0,
## 15.0, and 15.1.
#bleopt emoji_version=13.1
## "emoji_opts" is a colon-separated list that represents the terminal
## capability for emojis. When "tpvs" and "epvs" are specified, TPVS and EPVS
## (text/emoji presentation variation selectors), respectively, can be used to
## change he representation of emoji characters. When "zwj" is specified, the
## emoji ZWJ sequences are supported. When "ri" is specified, the flag emojis
## formed by two Regional_Indicators are supported. When "unqualified" is
## specified, unqualified emojis are treated as emojis as well as the qualified
## emojis.
#bleopt emoji_opts=ri
## This option specifies the type of the supported grapheme cluster of the
## terminal. The empty string indicates that the terminal does not support the
## grapheme clusters. The values "extended" and "legacy" indicate that the
## terminal supports the extended and legacy grapheme clusters, respectively.
#bleopt grapheme_cluster=extended
## This option controls the behavior when ble.sh receives SIGWINCH.
## * When the value "redraw-safe" is specified, ble.sh redraws the new prompt
## starting from the line of the current cursor position.
## * When the value "redraw-prev" is specified, ble.sh tries to go to the
## beginning of the current prompt and overwrite the current one. This is
## similar to the behavior of GNU Readline. This possibly erase the output
## of the previous command because ble.sh tries to go to the beginning of the
## current prompt assuming that the number of lines in the prompt does not
## change by the terminal resizing.
## * When the value "redraw-here" is specified, ble.sh tries to determine the
## number of lines that can be safely erased and go to the beginning of the
## safe lines before the redraw. This is the default behavior. In
## principle, this can also erase the previous outputs, but it would be
## supposed to be rarely happen as far as the text reflowing of the terminal
## behaves in a reasonable way.
## * When the value "clear" is specified, the terminal content is erased and
## the new prompt will be drawn at the top of the terminal. The previous
## terminal contents including the command outputs will be lost.
#bleopt canvas_winch_action=redraw-here
##-----------------------------------------------------------------------------
## User input settings
## The following setting sets the default keymap. The value "emacs" specifies
## that the emacs keymap should be used. The value "vi" specifies that the vi
## keymap (insert mode) should be used as the default. The value "auto"
## specifies that the keymap should be automatically selected from "emacs" or
## "vi" according to the current readline state "set -o emacs" or "set -o vi".
#bleopt default_keymap=auto
## The following setting controls the treatment of isolated ESCs. The value
## "esc" indicates that it should be treated as ESC. The value "meta"
## indicates that it should be treated as Meta modifier. The value "auto"
## indicates that the behavior will be switched to an appropriate side of "esc"
## or "meta" depending on the current keymap.
#bleopt decode_isolated_esc=esc
## The following setting specifies the byte code used to abort the currently
## processed inputs. The default value 28 corresponds to "C-\".
#bleopt decode_abort_char=28
## The following settings sets up the behavior for errors while user input
## decoding. "error_char" is the decoding error for the current character
## encoding. "error_cseq" indicates the unrecognized CSI sequences.
## "error_kseq" indicates the unbound key sequences. "abell" and "vbell" turn
## on/off the audible bells and visible bells on errors. If the variable is
## empty the bells are turned off, or otherwise turned on. "discard" controls
## if the chars/sequences will be discarded or processed in later stage. If a
## non-empty value is given, chars/sequences are discarded.
#bleopt decode_error_char_abell=
#bleopt decode_error_char_vbell=1
#bleopt decode_error_char_discard=
#bleopt decode_error_cseq_abell=
#bleopt decode_error_cseq_vbell=1
#bleopt decode_error_cseq_discard=1
#bleopt decode_error_kseq_abell=1
#bleopt decode_error_kseq_vbell=1
#bleopt decode_error_kseq_discard=1
## This variable sets the limit to the count of recursive calls of keyboard
## macros.
#bleopt decode_macro_limit=1024
## When a non-empty value is specified to this settings, the terminal's
## Bracketed Paste Mode (DEC mode 2004) is enabled. This setting is
## synchronized with the readline variable "enable-bracketed-paste".
#bleopt term_bracketed_paste_mode=on
##-----------------------------------------------------------------------------
## Settings for completion
## The following settings turn on/off the corresponding functionalities. When
## non-empty strings are set, the functionality is enabled. Otherwise, the
## functionality is inactive.
#bleopt complete_auto_complete=1
#bleopt complete_menu_complete=1
#bleopt complete_menu_filter=1
## If "complete_ambiguous" has non-empty values, ambiguous completion
## candidates are generated for completion.
#bleopt complete_ambiguous=1
## If "complete_contract_function_names" has non-empty values, the function
## name candidates are grouped by prefixes of the directory-like form "*/".
#bleopt complete_contract_function_names=1
## By default, ble.sh does not allow rewriting the existing text if non-unique
## candidates does not contain the existing text. If this setting has
## non-empty values, ble.sh rewrites the existing text.
#bleopt complete_allow_reduction=1
## This option specifies the threshold to simplify the quotation type of the
## inserted word. This option is evaluated as an arithmetic expression. When
## this option evaluates to a negative value, the simplification of the
## quotation is disabled. Otherwise, when the number of characters will be
## reduced by at least the specified value, the quotation is simplified. The
## default is 0, which means that the quotation is simplified unless the number
## of characters increases by the simplification.
#bleopt complete_requote_threshold=0
## If "complete_auto_history" has non-empty values, auto-complete searches
## matching command lines from history.
#bleopt complete_auto_history=1
## The following setting controls the delay of auto-complete after the last
## user input. The unit is millisecond.
#bleopt complete_auto_delay=100
## The face "auto_complete" can be used to specify the graphic style of the
## suggestion by auto-complete. The default style is choosed just to make it
## work in both the terminals with light and dark backgrounds. A better style
## can be specified based on the user's preference.
#ble-face auto_complete='fg=238,bg=254' # default
#ble-face auto_complete='fg=231,bg=69' # blue background
#ble-face auto_complete='fg=240,underline,italic' # darker background
## The setting "complete_auto_wordbreaks" is used as the delimiters for
## identifying words for M-right (auto-complete/insert-word). The default
## value is $' \t\n'. If the empty value is set, the default value is used.
#bleopt complete_auto_wordbreaks=$' \t\n/'
## The setting "complete_auto_complete_opts" is a colon-separated list of
## options:
##
## - The option "suppress-after-complete" controls whether auto-complete is
## enabled after TAB completions. If "suppress-after-complete" is included,
## auto-complete is enabled after TAB completions. Otherwise, auto-complete
## is disabled after TAB completions.
#bleopt complete_auto_complete_opts=suppress-after-complete
## The faces "menu_filter_fixed" and "menu_filter_input" can be used to specify
## the graphic styles of the part of the text that is used to filter the menu
## items by the menu-filter feature.
#ble-face menu_filter_fixed='bold'
#ble-face menu_filter_input='fg=16,bg=229'
## The setting "complete_auto_menu" controls the delay of "auto-menu". When a
## non-empty string is set, auto-menu is enabled. The string is evaluated as
## an arithmetic expression to give the delay in milliseconds. ble.sh will
## automatically show the menu of completions after the idle time (for which
## user input does not arrive) reaches the delay.
#bleopt complete_auto_menu=500
## When there are user inputs while generating completion candidates, the
## candidates generation will be canceled to process the user inputs. The
## following setting controls the interval of checking user inputs while
## generating completion candidates.
#bleopt complete_polling_cycle=50
## A hint on the maximum acceptable size of any data structure generated during
## the completion process, beyond which the completion may be prematurely
## aborted to avoid excessive processing time. "complete_limit" is used for
## TAB completion. When its value is empty, the size checks are disabled.
## "complete_limit_auto" is used for auto-completion. When its value is empty,
## the setting "complete_limit" is used instead. "complete_limit_auto_menu" is
## used for auto-menu.
#bleopt complete_limit=500
#bleopt complete_limit_auto=200
#bleopt complete_limit_auto_menu=100
## The following setting controls the timeout for the pathname expansions
## performed in auto-complete. When the word contains a glob pattern that
## takes a long time to evaluate the pathname expansion, auto-complete based on
## the filename is canceled based on the timeout setting. The value specifies
## the timeout duration in milliseconds. When the value is empty, the
## timeout is disabled.
#bleopt complete_timeout_auto=5000
## The following setting controls the timeout for the pathname expansions to
## prepare COMP_WORDS and COMP_LINE for progcomp. When the word contains a
## glob pattern that takes a long time to evaluate, the pathname expansion is
## canceled, and a noglob expansion is used to construct COMP_WORDS and
## COMP_LINE. The value specifies ## the timeout duration in milliseconds.
## When the value is empty, the timeout is disabled.
#bleopt complete_timeout_compvar=200
## The following setting specifies the style of the menu to show completion
## candidates. The value "dense" and "dense-nowrap" shows candidates separated
## by spaces. "dense-nowrap" is different from "dense" in the behavior that it
## inserts a new line before the candidates that does not fit into the
## remaining part of the current line. The value "align" and "align-nowrap"
## aligns the candidates. The value "linewise" shows a candidate per line. The
## value "desc" and "desc-text" shows a candidate per line with description for
## each. "desc-text" is different from "desc" in the behavior that it does not
## interprets ANSI escape sequences in the descriptions.
#bleopt complete_menu_style=align-nowrap
## When a non-empty value is specified to this setting, the matching text on
## the right of the cursor is removed on the insertion of the completion. This
## setting is synchronized with the readline variable "skip-completed-text".
#bleopt complete_skip_matched=on
## The following setting controls the detailed behavior of menu-complete with a
## colon-separated list of options. When the option "insert-selection" is
## specified, the currently selected menu item is temporarily inserted in the
## command line. When "hidden" is specified, "insert-selection" is enabled,
## and additionally, the completion menu is hidden by default. The default is
## "insert-selection".
#bleopt complete_menu_complete_opts=insert-selection
## When a non-empty value is specified to this setting, the highlighting of the
## menu items is enabled. This setting is synchronized with the readline
## variable "colored-stats".
#bleopt complete_menu_color=on
## When a non-empty value is specified to this setting, the part of the menu
## items matching with the already input text is highlighted. This setting is
## synchronized with the readline variable "colored-completion-prefix".
#bleopt complete_menu_color_match=on
## The following settings specify the maximal and minimal align widths for
## complete_menu_style="align" and "align-nowrap".
#bleopt menu_align_min=4
#bleopt menu_align_max=20
## The following setting specifies the maximal height of the menu. When this
## value is evaluated to be a positive integer, the maximal line number of the
## menu is limited to that value.
#bleopt complete_menu_maxlines=10
## The following settings specify the prefix of the menu items. "menu_prefix"
## specifies the default prefix for any menu-style.
## "menu_{align,desc,linewise,dense}_prefix" specify the prefixes in the
## respective menu-styles. The value is specified by a printf format, where
## the first argument is the index of the candidate. ANSI escape sequences can
## also be used. For example, the candidate index can be shown by setting the
## value '%d '. The default value is empty.
#bleopt menu_align=
#bleopt menu_align_prefix='\e[1m%d:\e[m '
#bleopt menu_desc_prefix='\e[1m%d.\e[m '
#bleopt menu_linewise_prefix='\e[1;36m%d:\e[m '
#bleopt menu_dense_prefix='\e[1;32m>\e[m '
## The following setting specifies the minimum column width for the multicolumn
## description for `complete_menu_style=desc'. When the empty value is
## specified, the multicolumn mode is disabled.
#bleopt menu_desc_multicolumn_width=65
## These faces control graphics styles used in the menu descriptions. Face
## "menu_desc_default" is used as a default highlighting of the description.
## Face "menu_desc_type" is used for the prefix string "(type) " to indicate
## the type of the menu item. Face "menu_desc_quote" is used to quote strings
## embedded in the descriptions.
#ble-face menu_desc_default=none
#ble-face menu_desc_type=ref:syntax_delimiter
#ble-face menu_desc_quote=ref:syntax_quoted
## When this Readline setting is enabled, the cases of alphabets are ignored on
## completion generation.
#bind 'set completion-ignore-case off'
## When this Readline setting is turned on, suffixes are added to the filename
## completions in the menu. The characters "@", "/" and "*" are added to
## symbolic links, directories and executables, respectively.
#bind 'set visible-stats off'
## When this Readline setting is turned on, the suffix "/" is inserted after
## the insertion of directory names.
#bind 'set mark-directories on'
## When this Readline setting is turned on, the suffix "/" is inserted after
## symbolic links pointing to directories.
#bind 'set mark-symlinked-directories on'
## When this Readline setting is turned on, the filenames starting with "." is
## also generated as possible completions.
#bind 'set match-hidden-files on'
## By default, when filenames of the form "dir/file*" is shown in the menu, the
## part of the directory name "dir/" is omitted. When this Readline setting is
## turned on, the directory name of filename completions are not omitted.
#bind 'set menu-complete-display-prefix off'
## This option specifies a colon-separated list of glob patterns of sabbrev
## names ignored in generating the sabbrev completion candidates.
#bleopt complete_source_sabbrev_ignore=
## This is a colon-separated list of options. When the field
## `no-empty-completion` is specified, the sabbrev completion candidates are
## not generated when the word to complete is empty.
#bleopt complete_source_sabbrev_opts=no-empty-completion
##-----------------------------------------------------------------------------
## Color settings
## The setting "term_index_colors" specifies the number of index colors used to
## specify colors in the terminal. The value "auto" means that the use of
## index colors are determined based on the terminfo database and the value of
## TERM shell variable. Otherwise, the value is evaluated as an arithmetic
## expression. When it is evaluated to 256, the index colors are assumed to be
## xterm 256-color palette (16 basic + 6x6x6 color cube + 24 gray scale). When
## it is evaluated to 88, the index colors are assumed to be xterm 88-color
## palette (16 basic + 4x4x4 color cube + 8 gray scale). When it is evaluated
## to 0, ble.sh will never use the index colors to set colors. When it is
## evaluated to other integers, the value specifies the maximum available
## index.
#bleopt term_index_colors=256
## The setting "term_true_colors" specifies the format of 24-bit color escape
## sequences supported by your terminal. The value "semicolon" indicates the
## format "CSI 3 8 ; 2 ; R ; G ; B m". The value "colon" indicates the format
## "CSI 3 8 : 2 : R : G : B m". The other value implies that the terminal does
## not support 24-bit color sequences. In this case, ble.sh tries to output
## indexed color sequences or basic color sequences with properly reduced
## colors.
#bleopt term_true_colors=semicolon
## The setting "filename_ls_colors" can be used to import the filename coloring
## scheme by the environment variable LS_COLORS.
#bleopt filename_ls_colors="$LS_COLORS"
## The following settings enable or disable the syntax highlighting. When the
## setting "highlight_syntax" has a non-empty value, the syntax highlighting is
## enabled. When the setting "highlight_filename" has a non-empty value, the
## highlighting based on the filename and the command name is enabled during
## the process of the syntax highlighting. Similarly, when the setting
## "highlight_variable" has a non-empty value, the highlighting based on the
## variable type is enabled. All of these settings have non-empty values by
## default.
#bleopt highlight_syntax=
#bleopt highlight_filename=
#bleopt highlight_variable=
## The following settings control the timeout and user-input cancellation of
## the pathname expansions performed in the syntax highlighting. When the word
## contains a glob pattern that takes a long time to evaluate the pathname
## expansion, the syntax highlighting based on the filename is canceled based
## on the timeouts specified by these settings. "highlight_timeout_sync" /
## "highlight_timeout_async" specify the timeout durations in milliseconds to
## be used for the foreground / background syntax highlighting, respectively.
## When the timeout occurred in the foreground, the syntax highlighting will be
## deferred to the background syntax highlighting. When the timeout occurred
## in the background, the syntax highlighting for the filename is canceled.
## When the value is empty, the corresponding timeout is disabled.
## "syntax_eval_polling_interval" specifies the maximal interval between the
## user-input checking.
#bleopt highlight_timeout_sync=500
#bleopt highlight_timeout_async=5000
#bleopt syntax_eval_polling_interval=50
## The following setting limits the number of expanded words to process in
## highlighting a single grammatical word. When this setting is set to an
## empty string, the number of expanded words to process is unlimited.
#bleopt highlight_eval_word_limit=200
## If set to a non-empty value, the setting "color_scheme" specifies a preset
## graphic styles for basic faces. The supported schemes are found in the
## subdirectory "contrib/scheme". The default value is "default".
#bleopt color_scheme=base16
## The following settings specify graphic styles of corresponding faces. Faces
## used for specific features are described in the respective sections.
#ble-face -s region fg=231,bg=60
#ble-face -s region_insert fg=27,bg=254
#ble-face -s region_match fg=231,bg=55
#ble-face -s region_target fg=black,bg=153
#ble-face -s disabled fg=242
#ble-face -s overwrite_mode fg=black,bg=51
#ble-face -s syntax_default none
#ble-face -s syntax_command fg=brown
#ble-face -s syntax_quoted fg=green
#ble-face -s syntax_quotation fg=green,bold
#ble-face -s syntax_escape fg=magenta
#ble-face -s syntax_expr fg=63
#ble-face -s syntax_error bg=203,fg=231
#ble-face -s syntax_varname fg=202
#ble-face -s syntax_delimiter bold
#ble-face -s syntax_param_expansion fg=133
#ble-face -s syntax_history_expansion bg=94,fg=231
#ble-face -s syntax_function_name fg=99,bold
#ble-face -s syntax_comment fg=gray
#ble-face -s syntax_glob fg=198,bold
#ble-face -s syntax_brace fg=37,bold
#ble-face -s syntax_tilde fg=63,bold
#ble-face -s syntax_document fg=100
#ble-face -s syntax_document_begin fg=100,bold
#ble-face -s command_builtin_dot fg=red,bold
#ble-face -s command_builtin fg=red
#ble-face -s command_alias fg=teal
#ble-face -s command_function fg=99 # fg=133
#ble-face -s command_file fg=green
#ble-face -s command_keyword fg=blue
#ble-face -s command_jobs fg=red,bold
#ble-face -s command_directory fg=63,underline
#ble-face -s command_suffix fg=231,bg=28
#ble-face -s command_suffix_new fg=231,bg=124
#ble-face -s argument_option fg=teal
#ble-face -s argument_option fg=black,bg=225
#ble-face -s filename_directory underline,fg=33
#ble-face -s filename_directory_sticky underline,fg=231,bg=26
#ble-face -s filename_link underline,fg=teal
#ble-face -s filename_orphan underline,fg=16,bg=224
#ble-face -s filename_setuid underline,fg=black,bg=220
#ble-face -s filename_setgid underline,fg=black,bg=191
#ble-face -s filename_executable underline,fg=green
#ble-face -s filename_other underline
#ble-face -s filename_socket underline,fg=cyan,bg=black
#ble-face -s filename_pipe underline,fg=lime,bg=black
#ble-face -s filename_character underline,fg=231,bg=black
#ble-face -s filename_block underline,fg=yellow,bg=black
#ble-face -s filename_warning underline,fg=red
#ble-face -s filename_url underline,fg=blue
#ble-face -s filename_ls_colors underline
#ble-face -s varname_array fg=orange,bold
#ble-face -s varname_empty fg=31