blerc.template (52983B)
1 # -*- mode: sh; mode: sh-bash -*- 2 3 ## This is a template for "~/.blerc". 4 ## 5 ## To use ble.sh in bash, please set up "~/.bashrc" as follows: 6 ## 7 ## ```bash 8 ## # bashrc 9 ## 10 ## # Please put the following line in the beginning of .bashrc 11 ## # Note: Please replace $HOME/.local/share/blesh with the path to your ble.sh 12 ## [[ $- == *i* ]] && "$HOME/.local/share/blesh/ble.sh" --noattach 13 ## 14 ## # Your bashrc contents should come between the two lines. 15 ## 16 ## # Please put the following line in the end of .bashrc 17 ## [[ ${BLE_VERSION-} ]] && ble-attach 18 ## ``` 19 ## 20 21 ##----------------------------------------------------------------------------- 22 ## Basic settings 23 24 25 ## The following setting specifies the input encoding. Currently only "UTF-8" 26 ## and "C" is available. 27 28 #bleopt input_encoding=UTF-8 29 30 31 ## The following setting specifies the pager used by ble.sh. This is used to 32 ## show the help of commands (f1). 33 34 #bleopt pager=less 35 36 ## The following setting specifies the editor used by ble.sh. This is used for 37 ## the widget edit-and-execute (C-x C-e) and editor for a large amount of 38 ## command line texts. Possible values include, for example, "vim", "emacs 39 ## -nw" and "nano". 40 41 #bleopt editor=vim 42 43 44 ## The following settings sets the behavior of visible bells (vbell). 45 ## "vbell_duration" sets the time duration to show the vbell. "vbell_align" 46 ## controls the position of vbell. The value "left" (default) specifies that 47 ## the vbell should be shown up on the top left corner of the terminal. The 48 ## values "center" and "right" specify that the vbell is shown on the top 49 ## center and the top right corner, respectively. 50 51 #bleopt vbell_default_message=' Wuff, -- Wuff!! ' 52 #bleopt vbell_duration=2000 53 #bleopt vbell_align=right 54 55 56 ##----------------------------------------------------------------------------- 57 ## Line editor settings 58 59 60 ## The following settings turns on/off the audible bells and visible bells for 61 ## errors while user edit. The non-empty value turns on the bells. 62 63 #bleopt edit_abell=1 64 #bleopt edit_vbell= 65 66 67 ## The following setting turns on the delayed load of history when an non-empty 68 ## value is set. 69 70 #bleopt history_lazyload=1 71 72 73 ## The following setting turns on the delete selection mode when an non-empty 74 ## value is set. When the mode is turned on the selection is removed when a 75 ## user inserts a character. 76 77 #bleopt delete_selection_mode=1 78 79 80 ## The following settings control the indentation. "indent_offset" sets the 81 ## indent width. "indent_tabs" controls if tabs can be used for indentation or 82 ## not. If "indent_tabs" is set to 0, tabs will never be used. Otherwise 83 ## indentation is made with tabs and spaces. 84 85 #bleopt indent_offset=4 86 #bleopt indent_tabs=1 87 88 89 ## "undo_point" controls the cursor position after "undo". When "beg" or "end" 90 ## is specified, the cursor will be moved to the beginning or the end of the 91 ## dirty section, respectively. When other values are specified, the original 92 ## cursor position is reproduced. 93 94 #bleopt undo_point=end 95 96 97 ## The following setting controls forced layout calculations before graphical 98 ## operations. When a non-empty value is specified, the forced calculations are 99 ## enabled. When an empty string is set, the operations are switched to logical 100 ## ones. 101 102 #bleopt edit_forced_textmap=1 103 104 105 ## The following option controls the interpretation of lines when going to the 106 ## beginning or the end of the current line. When the value `logical` is 107 ## specified, the logical line is used, i.e., the beginning and the end of the 108 ## line is determined based on the newline characters in the edited text. When 109 ## the value `graphical` is specified, the graphical line is used, i.e., the 110 ## beginning and the end of the displayed line in the terminal is used. 111 112 #bleopt edit_line_type=graphical 113 114 115 ## The following option specifies the set of expansions performed by 116 ## magic-space with a colon-separated list of expansion types. "history", 117 ## "sabbrev", and "alias" can be specified. 118 119 #bleopt edit_magic_expand=history:sabbrev 120 121 122 ## This option configures the detailed behavior of the widget "magic-space" 123 ## with a colon-separated list. If the field "inline-sabbrev-no-insert" is 124 ## specified, the insertion of "SP" is skipped when the inline sabbrev is 125 ## performed by "magic-space". 126 127 #bleopt edit_magic_opts= 128 129 130 ## The following option controls the position of the info pane where completion 131 ## menu, mode names, and other information are shown. When the value "top" is 132 ## specified, the info pane is shown just below the command line. When the 133 ## value "bottom" is specified, the info pane is shown at the bottom of the 134 ## terminal. The default is "top". 135 136 #bleopt info_display=top 137 138 139 ## The following settings controls the prompt after the cursor left the command 140 ## line. "prompt_ps1_final" contains a prompt string. "prompt_ps1_transient" 141 ## is a colon-separated list of fields "always", "same-dir" and "trim". The 142 ## prompt is replaced by "prompt_ps1_final" if it has a non-empty value. 143 ## Otherwise, the prompt is trimmed leaving the last line if 144 ## "prompt_ps1_transient" has a field "trim". Otherwise, the prompt vanishes 145 ## if "prompt_ps1_transient" has a non-empty value. When 146 ## "prompt_ps1_transient" contains a field "same-dir", the setting of 147 ## "prompt_ps1_transient" is effective only when the current working directory 148 ## did not change since the last command line. 149 150 #bleopt prompt_ps1_final= 151 #bleopt prompt_ps1_transient=trim 152 153 154 ## The following settings controls the right prompt. "prompt_rps1" specifies 155 ## the contents of the right prompt in the format of PS1. When the cursor 156 ## leaves the current command line, the right prompt is replaced by 157 ## "prompt_rps1_final" if it has a non-empty value, or otherwise, the right 158 ## prompt vanishes if "prompt_rps1_transient" is set to a non-empty value, 159 160 #bleopt prompt_rps1='\w' 161 #bleopt prompt_rps1_final= 162 #bleopt prompt_rps1_transient='' 163 164 165 ## The following settings specify the content of terminal titles and status 166 ## lines. "prompt_xterm_title" specifies the terminal title which can be set 167 ## by "OSC 0 ; ... BEL". "prompt_screen_title" is effective inside terminal 168 ## multiplexers such as GNU screen and tmux and specifies the window title of 169 ## the terminal multiplexer which can be set by "ESC k ... ST". 170 ## "prompt_term_status" is only effective when terminfo entries "tsl" and "fsl" 171 ## (or termcap entries "ts" and "ds") are available, and specifies the content 172 ## of the status line which can be set by the terminfo entries. When each 173 ## setting has non-empty value, the content of corresponding title or status 174 ## line is replaced just before PS1 is shown. 175 176 #bleopt prompt_xterm_title= 177 #bleopt prompt_screen_title= 178 #bleopt prompt_term_status= 179 180 181 ## The following settings control the status line. "prompt_status_line" 182 ## specifies the content of the status line. If its value is empty, the status 183 ## line is not shown. "prompt_status_align" controls the position of the 184 ## content in the status line. 185 186 #bleopt prompt_status_line= 187 #bleopt prompt_status_align=left 188 189 190 ## "prompt_eol_mark" specifies the contents of the mark used to indicate the 191 ## command output is not ended with newlines. The value can contain ANSI escape 192 ## sequences. 193 194 #bleopt prompt_eol_mark=$'\e[94m[ble: EOF]\e[m' 195 196 197 ## "prompt_ruler" specifies the ruler between the previous command and the 198 ## prompt (like powerlevel10k 199 ## "POWERLEVEL9K_PROMPT_{ADD_NEWLINE,SHOW_RULER,RULER_*}"). When the empty 200 ## value is specified, the ruler is disabled. This is the default. When the 201 ## value "empty-line" is specified, an empty line is inserted between the 202 ## command and the prompt. When the other values are specified, the value is 203 ## interpreted as an ANSI sequences, and the result is repeated to fill a line. 204 205 #bleopt prompt_ruler= # no ruler (default) 206 #bleopt prompt_ruler=empty-line # empty line 207 #bleopt prompt_ruler=$'\e[94m-' # blue line 208 209 210 ## "prompt_command_changes_layout" specifies whether the commands called from 211 ## the blehook PRECMD or the variable PROMPT_COMMAND output texts to the 212 ## terminal and changes the layout. When a non-empty value is specified, 213 ## ble.sh resets the layout before running the hooks PRECMD and PROMPT_COMMAND 214 ## and restores the layout after running the hooks. When a empty value is 215 ## specified, ble.sh assumes that these hooks do not output texts to the 216 ## terminal and do not changes the cursor positions and skip the special 217 ## treatment. 218 219 #bleopt prompt_command_changes_layout= # PRECMD/PROMPT_COMMAND not output 220 #bleopt prompt_command_changes_layout=1 # PRECMD/PROMPT_COMMAND may output 221 222 223 ## "exec_restore_pipestatus" controls whether ble.sh restores PIPESTATUS of the 224 ## previous user command. When this option is set to a non-empty value, 225 ## PIPESTATUS is restored. This feature is turned off by default because it 226 ## adds extra execution costs. Note that the values of PIPESTATUS of the 227 ## previous command are always available with the array BLE_PIPESTATUS 228 ## regardless of this setting. 229 230 #bleopt exec_restore_pipestatus=1 # restores PIPESTATUS 231 232 233 ## "exec_errexit_mark" specifies the format of the mark to show the exit status 234 ## of the command when it is non-zero. If this setting is an empty string the 235 ## exit status will not be shown. The value can contain ANSI escape sequences. 236 237 #bleopt exec_errexit_mark=$'\e[91m[ble: exit %d]\e[m' 238 239 240 ## "exec_elapsed_mark" specifies the format of the command execution time 241 ## report. It takes two arguments: the first is the string that explains the 242 ## elapsed time, and the second is a number that represents the percentage of 243 ## CPU core usage. "exec_elapsed_enabled" specifies the condition that the 244 ## command execution time report is displayed after the command execution. The 245 ## condition is expressed by an arithmetic expression, where a non-zero result 246 ## causes displaying the report. In the arithmetic expression, variables 247 ## "real", "{usr,sys}{,_self,_child}", and "cpu" can be used. "real" 248 ## represents the elapsed time. "usr" and "sys" represent the user and system 249 ## time, respectively. The suffixes "_self" and "_child" represent the part 250 ## consumed in the main shell process and the other child processes including 251 ## subshells and external programs, respectively. "cpu" represents the 252 ## percentage of the CPU core usage in integer, which can be calculated by 253 ## "(usr+sys)*100/real". The other values are all in unit of milliseconds. 254 255 #bleopt exec_elapsed_mark=$'\e[94m[ble: elapsed %s (CPU %s%%)]\e[m' 256 #bleopt exec_elapsed_enabled='usr+sys>=10000' 257 258 259 ## The following setting controls the exit when jobs are remaining. When an 260 ## empty string is set, the shell will never exit with remaining jobs through 261 ## widgets. When an non-empty value is set, the shell will exit when exit is 262 ## attempted twice consecutively. 263 264 #bleopt allow_exit_with_jobs= 265 266 267 ## The following setting controls the cursor position after the move to other 268 ## history entries. When non-empty values are specified, the offset of the 269 ## cursor from the beginning of the command line is preserved. When an empty 270 ## value is specified the cursor position is the beginning or the end of the 271 ## command lines when the move is to a newer or older entry, respectively. 272 273 #bleopt history_preserve_point= 274 275 276 ## The following setting controls the history sharing. If it has non-empty 277 ## value, the history sharing is enabled. With the history sharing, the command 278 ## history is shared with the other Bash ble.sh sessions with the history 279 ## sharing turned on. 280 281 #bleopt history_share= 282 283 284 ## This option controls the target range in the command history for 285 ## "erasedups", which is performed when it is specified in "HISTCONTROL". When 286 ## this option has an empty value, the target range is the entire history as in 287 ## the plain Bash. When this option evaluates to a positive integer "count", 288 ## the target range is the last "n" entries in the command history. When this 289 ## option evaluates to a non-positive integer "offset", "offset" specifies the 290 ## beginning of the target range relative to the history count at the session 291 ## start. The end of the target range is always the end of the command 292 ## history. 293 294 #bleopt history_erasedups_limit= # entire history 295 #bleopt history_erasedups_limit=0 # only new items added in this session 296 #bleopt history_erasedups_limit=-1000 # new items and 1000 prev-session items 297 #bleopt history_erasedups_limit=1000 # last 1000 items 298 299 300 ## The following setting controls the behavior of the widget 301 ## "accept-single-line-or-newline" in the single-line editing mode. The value 302 ## is a subject of arithmetic evaluation. When it evaluates to negative 303 ## integers, the line is always accepted. When it evaluates to 0, it enters the 304 ## multiline editing mode when there is any unprocessed user inputs, or 305 ## otherwise the line is accepted. When it evaluates to a positive integer "n", 306 ## it enters the multiline editing mode when there is more than "n"unprocessed 307 ## user inputs. 308 309 #bleopt accept_line_threshold=5 310 311 312 ## The following option controls the behavior when the number of characters 313 ## exceeds the capacity specified by `line_limit_length`. The value `none` 314 ## means that the number of characters will not be checked. The value 315 ## `discard` means that the characters cannot be inserted when the number of 316 ## characters exceeds the capacity. The value `truncate` means that the 317 ## command line is truncated from its end to fit into the capacity. The value 318 ## `editor` means that the widget `edit-and-execute` will be invoked to open an 319 ## editor to edit the command line contents. 320 321 #bleopt line_limit_type=none 322 323 324 ## The following option specifies the capacity of the command line in the 325 ## number of characters. The number 0 or negative numbers means the unlimited 326 ## capacity. 327 328 #bleopt line_limit_length=10000 329 330 331 ## The following option specifies the maximal number of characters which can be 332 ## appended into the history. When this option has a positive value, commands 333 ## with the length longer than the value is not appended to the history. When 334 ## this option has a non-positive value, commands are always appended to the 335 ## history regardless of their length. 336 337 #bleopt history_limit_length=10000 338 339 340 ##----------------------------------------------------------------------------- 341 ## Terminal state control 342 343 344 ## The following setting specifies the cursor type when commands are executed. 345 ## The cursor type is specified by the argument of the control function 346 ## DECSCUSR. 347 348 #bleopt term_cursor_external=0 349 350 351 ## The following settings, external and internal, specify the "modifyOtherKeys" 352 ## states [the control function SM(>4)] when commands are executed and when 353 ## ble.sh has control, respectively. 354 355 #bleopt term_modifyOtherKeys_external=auto 356 #bleopt term_modifyOtherKeys_internal=auto 357 358 359 ## The following setting controls whether the kitty-keyboard-protocol sequences 360 ## should pass-through the terminal multiplexers when the outermost terminal is 361 ## kitty. When this option has a non-empty string, the pass-through kitty 362 ## protocol sequences are enabled. 363 ## 364 ## * This is intended to be used with tmux-3.4+. This works with tmux-3.3a and 365 ## below as far as the user does not enable CapsLock or NumLock. Note that 366 ## this might cause problems of keyboard inputs after detaching from tmux; 367 ## You might lose the control of the terminal applications that do not 368 ## support extended keys outside the terminal multiplexers. 369 ## 370 ## * This will cause the same problems when used with multiple windows in GNU 371 ## screen. You will lose the control of the terminal applications without 372 ## the support for extended keys when there are more than one ble.sh session 373 ## or when there is at least one foreground ble.sh session in GNU screen. 374 375 #bleopt term_modifyOtherKeys_passthrough_kitty_protocol=1 376 377 ##----------------------------------------------------------------------------- 378 ## Rendering options 379 380 381 ## "tab_width" specifies the width of TAB on the command line. When an empty 382 ## value is specified, the width in terminfo (tput it) is used. 383 384 #bleopt tab_width= 385 386 387 ## "char_width_mode" specifies the width of East_Asian_Width=A characters. 388 ## When the value "east" is specified, the width is 2. When the value "west" is 389 ## specified, the width is 1. When the value "emacs" is specified, the width 390 ## table (depending on characters) used in Emacs is used. When the value 391 ## "musl" is specified, the table for "wcwidth" of the musl C library in 2014 392 ## is used [Note: recent versions of musl library is more conforming to Unicode 393 ## so favor "west" or "east"]. When "auto" is specified, the character width 394 ## mode is automatically selected based on interactions with the terminal. 395 396 #bleopt char_width_mode=auto 397 398 399 ## "char_width_version" specifies the Unicode version that char width 400 ## determination bases on. When "auto" is specified, ble.sh automatically 401 ## tests the behavior of the terminal on startup and try to determine the 402 ## appropriate version. Supported versions are "4.1", "5.0", "5.2", "6.0", 403 ## "6.1", "6.2", "6.3", "7.0", "8.0", "9.0", "10.0", "11.0", "12.0", "12.1", 404 ## "13.0", "14.0", and "15.0". The default value is "auto". 405 406 #bleopt char_width_version=auto 407 408 409 ## "emoji_width" specifies the width of emoji characters. If an empty value is 410 ## specified, special treatment of emoji is disabled. 411 412 #bleopt emoji_width=2 413 414 415 ## "emoji_version" specifies the version of Unicode Emoji. Available values 416 ## 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, 417 ## and 15.0. 418 419 #bleopt emoji_version=13.1 420 421 422 ## "emoji_opts" is a colon-separated list that represents the terminal 423 ## capability for emojis. When "tpvs" and "epvs" are specified, TPVS and EPVS 424 ## (text/emoji presentation variation selectors), respectively, can be used to 425 ## change he representation of emoji characters. When "zwj" is specified, the 426 ## emoji ZWJ sequences are supported. When "ri" is specified, the flag emojis 427 ## formed by two Regional_Indicators are supported. When "unqualified" is 428 ## specified, unqualified emojis are treated as emojis as well as the qualified 429 ## emojis. 430 431 #bleopt emoji_opts=ri 432 433 434 ## This option specifies the type of the supported grapheme cluster of the 435 ## terminal. The empty string indicates that the terminal does not support the 436 ## grapheme clusters. The values "extended" and "legacy" indicate that the 437 ## terminal supports the extended and legacy grapheme clusters, respectively. 438 439 #bleopt grapheme_cluster=extended 440 441 442 ## This option controls the behavior when ble.sh receives SIGWINCH. 443 ## * When the value "redraw-safe" is specified, ble.sh redraws the new prompt 444 ## starting from the line of the current cursor position. 445 ## * When the value "redraw-prev" is specified, ble.sh tries to go to the 446 ## beginning of the current prompt and overwrite the current one. This is 447 ## similar to the behavior of GNU Readline. This possibly erase the output 448 ## of the previous command because ble.sh tries to go to the beginning of the 449 ## current prompt assuming that the number of lines in the prompt does not 450 ## change by the terminal resizing. 451 ## * When the value "redraw-here" is specified, ble.sh tries to determine the 452 ## number of lines that can be safely erased and go to the beginning of the 453 ## safe lines before the redraw. This is the default behavior. In 454 ## principle, this can also erase the previous outputs, but it would be 455 ## supposed to be rarely happen as far as the text reflowing of the terminal 456 ## behaves in a reasonable way. 457 ## * When the value "clear" is specified, the terminal content is erased and 458 ## the new prompt will be drawn at the top of the terminal. The previous 459 ## terminal contents including the command outputs will be lost. 460 461 #bleopt canvas_winch_action=redraw-here 462 463 ##----------------------------------------------------------------------------- 464 ## User input settings 465 466 ## The following setting sets the default keymap. The value "emacs" specifies 467 ## that the emacs keymap should be used. The value "vi" specifies that the vi 468 ## keymap (insert mode) should be used as the default. The value "auto" 469 ## specifies that the keymap should be automatically selected from "emacs" or 470 ## "vi" according to the current readline state "set -o emacs" or "set -o vi". 471 472 #bleopt default_keymap=auto 473 474 475 ## The following setting controls the treatment of isolated ESCs. The value 476 ## "esc" indicates that it should be treated as ESC. The value "meta" 477 ## indicates that it should be treated as Meta modifier. The value "auto" 478 ## indicates that the behavior will be switched to an appropriate side of "esc" 479 ## or "meta" depending on the current keymap. 480 481 #bleopt decode_isolated_esc=esc 482 483 484 ## The following setting specifies the byte code used to abort the currently 485 ## processed inputs. The default value 28 corresponds to "C-\". 486 487 #bleopt decode_abort_char=28 488 489 490 ## The following settings sets up the behavior for errors while user input 491 ## decoding. "error_char" is the decoding error for the current character 492 ## encoding. "error_cseq" indicates the unrecognized CSI sequences. 493 ## "error_kseq" indicates the unbound key sequences. "abell" and "vbell" turn 494 ## on/off the audible bells and visible bells on errors. If the variable is 495 ## empty the bells are turned off, or otherwise turned on. "discard" controls 496 ## if the chars/sequences will be discarded or processed in later stage. If a 497 ## non-empty value is given, chars/sequences are discarded. 498 499 #bleopt decode_error_char_abell= 500 #bleopt decode_error_char_vbell=1 501 #bleopt decode_error_char_discard= 502 #bleopt decode_error_cseq_abell= 503 #bleopt decode_error_cseq_vbell=1 504 #bleopt decode_error_cseq_discard=1 505 #bleopt decode_error_kseq_abell=1 506 #bleopt decode_error_kseq_vbell=1 507 #bleopt decode_error_kseq_discard=1 508 509 510 ## This variable sets the limit to the count of recursive calls of keyboard 511 ## macros. 512 513 #bleopt decode_macro_limit=1024 514 515 516 ## When a non-empty value is specified to this settings, the terminal's 517 ## Bracketed Paste Mode (DEC mode 2004) is enabled. This setting is 518 ## synchronized with the readline variable "enable-bracketed-paste". 519 520 #bleopt term_bracketed_paste_mode=on 521 522 ##----------------------------------------------------------------------------- 523 ## Settings for completion 524 525 526 ## The following settings turn on/off the corresponding functionalities. When 527 ## non-empty strings are set, the functionality is enabled. Otherwise, the 528 ## functionality is inactive. 529 530 #bleopt complete_auto_complete=1 531 #bleopt complete_menu_complete=1 532 #bleopt complete_menu_filter=1 533 534 535 ## If "complete_ambiguous" has non-empty values, ambiguous completion 536 ## candidates are generated for completion. 537 538 #bleopt complete_ambiguous=1 539 540 541 ## If "complete_contract_function_names" has non-empty values, the function 542 ## name candidates are grouped by prefixes of the directory-like form "*/". 543 544 #bleopt complete_contract_function_names=1 545 546 547 ## By default, ble.sh does not allow rewriting the existing text if non-unique 548 ## candidates does not contain the existing text. If this setting has 549 ## non-empty values, ble.sh rewrites the existing text. 550 551 #bleopt complete_allow_reduction=1 552 553 554 ## This option specifies the threshold to simplify the quotation type of the 555 ## inserted word. This option is evaluated as an arithmetic expression. When 556 ## this option evaluates to a negative value, the simplification of the 557 ## quotation is disabled. Otherwise, when the number of characters will be 558 ## reduced by at least the specified value, the quotation is simplified. The 559 ## default is 0, which means that the quotation is simplified unless the number 560 ## of characters increases by the simplification. 561 562 #bleopt complete_requote_threshold=0 563 564 565 ## If "complete_auto_history" has non-empty values, auto-complete searches 566 ## matching command lines from history. 567 568 #bleopt complete_auto_history=1 569 570 571 ## The following setting controls the delay of auto-complete after the last 572 ## user input. The unit is millisecond. 573 574 #bleopt complete_auto_delay=100 575 576 577 ## The setting "complete_auto_wordbreaks" is used as the delimiters for 578 ## identifying words for M-right (auto-complete/insert-word). The default 579 ## value is $' \t\n'. If the empty value is set, the default value is used. 580 581 #bleopt complete_auto_wordbreaks=$' \t\n/' 582 583 584 ## The setting "complete_auto_complete_opts" is a colon-separated list of 585 ## options: 586 ## 587 ## - The option "suppress-after-complete" controls whether auto-complete is 588 ## enabled after TAB completions. If "suppress-after-complete" is included, 589 ## auto-complete is enabled after TAB completions. Otherwise, auto-complete 590 ## is disabled after TAB completions. 591 592 #bleopt complete_auto_complete_opts=suppress-after-complete 593 594 595 ## The setting "complete_auto_menu" controls the delay of "auto-menu". When a 596 ## non-empty string is set, auto-menu is enabled. The string is evaluated as 597 ## an arithmetic expression to give the delay in milliseconds. ble.sh will 598 ## automatically show the menu of completions after the idle time (for which 599 ## user input does not arrive) reaches the delay. 600 601 #bleopt complete_auto_menu=500 602 603 604 ## When there are user inputs while generating completion candidates, the 605 ## candidates generation will be canceled to process the user inputs. The 606 ## following setting controls the interval of checking user inputs while 607 ## generating completion candidates. 608 609 #bleopt complete_polling_cycle=50 610 611 612 ## A hint on the maximum acceptable size of any data structure generated during 613 ## the completion process, beyond which the completion may be prematurely 614 ## aborted to avoid excessive processing time. "complete_limit" is used for 615 ## TAB completion. When its value is empty, the size checks are disabled. 616 ## "complete_limit_auto" is used for auto-completion. When its value is empty, 617 ## the setting "complete_limit" is used instead. "complete_limit_auto_menu" is 618 ## used for auto-menu. 619 620 #bleopt complete_limit=500 621 #bleopt complete_limit_auto=200 622 #bleopt complete_limit_auto_menu=100 623 624 625 ## The following setting controls the timeout for the pathname expansions 626 ## performed in auto-complete. When the word contains a glob pattern that 627 ## takes a long time to evaluate the pathname expansion, auto-complete based on 628 ## the filename is canceled based on the timeout setting. The value specifies 629 ## the timeout duration in milliseconds. When the value is empty, the 630 ## timeout is disabled. 631 632 #bleopt complete_timeout_auto=5000 633 634 635 ## The following setting controls the timeout for the pathname expansions to 636 ## prepare COMP_WORDS and COMP_LINE for progcomp. When the word contains a 637 ## glob pattern that takes a long time to evaluate, the pathname expansion is 638 ## canceled, and a noglob expansion is used to construct COMP_WORDS and 639 ## COMP_LINE. The value specifies ## the timeout duration in milliseconds. 640 ## When the value is empty, the timeout is disabled. 641 642 #bleopt complete_timeout_compvar=200 643 644 645 ## The following setting specifies the style of the menu to show completion 646 ## candidates. The value "dense" and "dense-nowrap" shows candidates separated 647 ## by spaces. "dense-nowrap" is different from "dense" in the behavior that it 648 ## inserts a new line before the candidates that does not fit into the 649 ## remaining part of the current line. The value "align" and "align-nowrap" 650 ## aligns the candidates. The value "linewise" shows a candidate per line. The 651 ## value "desc" and "desc-text" shows a candidate per line with description for 652 ## each. "desc-text" is different from "desc" in the behavior that it does not 653 ## interprets ANSI escape sequences in the descriptions. 654 655 #bleopt complete_menu_style=align-nowrap 656 657 658 ## When a non-empty value is specified to this setting, the matching text on 659 ## the right of the cursor is removed on the insertion of the completion. This 660 ## setting is synchronized with the readline variable "skip-completed-text". 661 662 #bleopt complete_skip_matched=on 663 664 665 ## The following setting controls the detailed behavior of menu-complete with a 666 ## colon-separated list of options: 667 ## 668 ## - When the option "insert-selection" is specified, the currently selected 669 ## menu item is temporarily inserted in the command line. 670 671 #bleopt complete_menu_complete_opts=insert-selection 672 673 674 ## When a non-empty value is specified to this setting, the highlighting of the 675 ## menu items is enabled. This setting is synchronized with the readline 676 ## variable "colored-stats". 677 678 #bleopt complete_menu_color=on 679 680 681 ## When a non-empty value is specified to this setting, the part of the menu 682 ## items matching with the already input text is highlighted. This setting is 683 ## synchronized with the readline variable "colored-completion-prefix". 684 685 #bleopt complete_menu_color_match=on 686 687 688 ## The following settings specify the maximal and minimal align widths for 689 ## complete_menu_style="align" and "align-nowrap". 690 691 #bleopt menu_align_min=4 692 #bleopt menu_align_max=20 693 694 695 ## The following setting specifies the maximal height of the menu. When this 696 ## value is evaluated to be a positive integer, the maximal line number of the 697 ## menu is limited to that value. 698 699 #bleopt complete_menu_maxlines=10 700 701 702 ## The following settings specify the prefix of the menu items. "menu_prefix" 703 ## specifies the default prefix for any menu-style. 704 ## "menu_{align,desc,linewise,dense}_prefix" specify the prefixes in the 705 ## respective menu-styles. The value is specified by a printf format, where 706 ## the first argument is the index of the candidate. ANSI escape sequences can 707 ## also be used. For example, the candidate index can be shown by setting the 708 ## value '%d '. The default value is empty. 709 710 #bleopt menu_align= 711 #bleopt menu_align_prefix='\e[1m%d:\e[m ' 712 #bleopt menu_desc_prefix='\e[1m%d.\e[m ' 713 #bleopt menu_linewise_prefix='\e[1;36m%d:\e[m ' 714 #bleopt menu_dense_prefix='\e[1;32m>\e[m ' 715 716 717 ## The following setting specifies the minimum column width for the multicolumn 718 ## description for `complete_menu_style=desc'. When the empty value is 719 ## specified, the multicolumn mode is disabled. 720 721 #bleopt menu_desc_multicolumn_width=65 722 723 724 ## When this Readline setting is enabled, the cases of alphabets are ignored on 725 ## completion generation. 726 727 #bind 'set completion-ignore-case off' 728 729 730 ## When this Readline setting is turned on, suffixes are added to the filename 731 ## completions in the menu. The characters "@", "/" and "*" are added to 732 ## symbolic links, directories and executables, respectively. 733 734 #bind 'set visible-stats off' 735 736 737 ## When this Readline setting is turned on, the suffix "/" is inserted after 738 ## the insertion of directory names. 739 740 #bind 'set mark-directories on' 741 742 743 ## When this Readline setting is turned on, the suffix "/" is inserted after 744 ## symbolic links pointing to directories. 745 746 #bind 'set mark-symlinked-directories on' 747 748 749 ## When this Readline setting is turned on, the filenames starting with "." is 750 ## also generated as possible completions. 751 752 #bind 'set match-hidden-files on' 753 754 755 ## By default, when filenames of the form "dir/file*" is shown in the menu, the 756 ## part of the directory name "dir/" is omitted. When this Readline setting is 757 ## turned on, the directory name of filename completions are not omitted. 758 759 #bind 'set menu-complete-display-prefix off' 760 761 762 ## This option specifies a colon-separated list of glob patterns of sabbrev 763 ## names ignored in generating the sabbrev completion candidates. 764 765 #bleopt complete_source_sabbrev_ignore= 766 767 768 ## This is a colon-separated list of options. When the field 769 ## `no-empty-completion` is specified, the sabbrev completion candidates are 770 ## not generated when the word to complete is empty. 771 772 #bleopt complete_source_sabbrev_opts=no-empty-completion 773 774 ##----------------------------------------------------------------------------- 775 ## Color settings 776 777 ## The setting "term_index_colors" specifies the number of index colors used to 778 ## specify colors in the terminal. The value "auto" means that the use of 779 ## index colors are determined based on the terminfo database and the value of 780 ## TERM shell variable. Otherwise, the value is evaluated as an arithmetic 781 ## expression. When it is evaluated to 256, the index colors are assumed to be 782 ## xterm 256-color palette (16 basic + 6x6x6 color cube + 24 gray scale). When 783 ## it is evaluated to 88, the index colors are assumed to be xterm 88-color 784 ## palette (16 basic + 4x4x4 color cube + 8 gray scale). When it is evaluated 785 ## to 0, ble.sh will never use the index colors to set colors. When it is 786 ## evaluated to other integers, the value specifies the maximum available 787 ## index. 788 789 #bleopt term_index_colors=256 790 791 792 ## The setting "term_true_colors" specifies the format of 24-bit color escape 793 ## sequences supported by your terminal. The value "semicolon" indicates the 794 ## format "CSI 3 8 ; 2 ; R ; G ; B m". The value "colon" indicates the format 795 ## "CSI 3 8 : 2 : R : G : B m". The other value implies that the terminal does 796 ## not support 24-bit color sequences. In this case, ble.sh tries to output 797 ## indexed color sequences or basic color sequences with properly reduced 798 ## colors. 799 800 #bleopt term_true_colors=semicolon 801 802 803 ## The setting "filename_ls_colors" can be used to import the filename coloring 804 ## scheme by the environment variable LS_COLORS. 805 806 #bleopt filename_ls_colors="$LS_COLORS" 807 808 809 ## The following settings enable or disable the syntax highlighting. When the 810 ## setting "highlight_syntax" has a non-empty value, the syntax highlighting is 811 ## enabled. When the setting "highlight_filename" has a non-empty value, the 812 ## highlighting based on the filename and the command name is enabled during 813 ## the process of the syntax highlighting. Similarly, when the setting 814 ## "highlight_variable" has a non-empty value, the highlighting based on the 815 ## variable type is enabled. All of these settings have non-empty values by 816 ## default. 817 818 #bleopt highlight_syntax= 819 #bleopt highlight_filename= 820 #bleopt highlight_variable= 821 822 823 ## The following settings control the timeout and user-input cancellation of 824 ## the pathname expansions performed in the syntax highlighting. When the word 825 ## contains a glob pattern that takes a long time to evaluate the pathname 826 ## expansion, the syntax highlighting based on the filename is canceled based 827 ## on the timeouts specified by these settings. "highlight_timeout_sync" / 828 ## "highlight_timeout_async" specify the timeout durations in milliseconds to 829 ## be used for the foreground / background syntax highlighting, respectively. 830 ## When the timeout occurred in the foreground, the syntax highlighting will be 831 ## deferred to the background syntax highlighting. When the timeout occurred 832 ## in the background, the syntax highlighting for the filename is canceled. 833 ## When the value is empty, the corresponding timeout is disabled. 834 ## "syntax_eval_polling_interval" specifies the maximal interval between the 835 ## user-input checking. 836 837 #bleopt highlight_timeout_sync=500 838 #bleopt highlight_timeout_async=5000 839 #bleopt syntax_eval_polling_interval=50 840 841 842 ## The following settings specify graphic styles of each faces. 843 844 #ble-face -s region fg=white,bg=60 845 #ble-face -s region_insert fg=blue,bg=252 846 #ble-face -s region_match fg=white,bg=55 847 #ble-face -s region_target fg=black,bg=153 848 #ble-face -s disabled fg=242 849 #ble-face -s overwrite_mode fg=black,bg=51 850 #ble-face -s auto_complete fg=238,bg=254 851 #ble-face -s menu_filter_fixed bold 852 #ble-face -s menu_filter_input fg=16,bg=229 853 #ble-face -s vbell reverse 854 #ble-face -s vbell_erase bg=252 855 #ble-face -s vbell_flash fg=green,reverse 856 #ble-face -s prompt_status_line fg=231,bg=240 857 858 #ble-face -s syntax_default none 859 #ble-face -s syntax_command fg=brown 860 #ble-face -s syntax_quoted fg=green 861 #ble-face -s syntax_quotation fg=green,bold 862 #ble-face -s syntax_escape fg=magenta 863 #ble-face -s syntax_expr fg=navy 864 #ble-face -s syntax_error bg=203,fg=231 865 #ble-face -s syntax_varname fg=202 866 #ble-face -s syntax_delimiter bold 867 #ble-face -s syntax_param_expansion fg=purple 868 #ble-face -s syntax_history_expansion bg=94,fg=231 869 #ble-face -s syntax_function_name fg=92,bold 870 #ble-face -s syntax_comment fg=gray 871 #ble-face -s syntax_glob fg=198,bold 872 #ble-face -s syntax_brace fg=37,bold 873 #ble-face -s syntax_tilde fg=navy,bold 874 #ble-face -s syntax_document fg=94 875 #ble-face -s syntax_document_begin fg=94,bold 876 #ble-face -s command_builtin_dot fg=red,bold 877 #ble-face -s command_builtin fg=red 878 #ble-face -s command_alias fg=teal 879 #ble-face -s command_function fg=92 # fg=purple 880 #ble-face -s command_file fg=green 881 #ble-face -s command_keyword fg=blue 882 #ble-face -s command_jobs fg=red,bold 883 #ble-face -s command_directory fg=navy,underline 884 #ble-face -s argument_option fg=teal 885 #ble-face -s argument_option fg=black,bg=225 886 #ble-face -s filename_directory underline,fg=26 887 #ble-face -s filename_directory_sticky underline,fg=white,bg=26 888 #ble-face -s filename_link underline,fg=teal 889 #ble-face -s filename_orphan underline,fg=teal,bg=224 890 #ble-face -s filename_setuid underline,fg=black,bg=220 891 #ble-face -s filename_setgid underline,fg=black,bg=191 892 #ble-face -s filename_executable underline,fg=green 893 #ble-face -s filename_other underline 894 #ble-face -s filename_socket underline,fg=cyan,bg=black 895 #ble-face -s filename_pipe underline,fg=lime,bg=black 896 #ble-face -s filename_character underline,fg=white,bg=black 897 #ble-face -s filename_block underline,fg=yellow,bg=black 898 #ble-face -s filename_warning underline,fg=red 899 #ble-face -s filename_url underline,fg=blue 900 #ble-face -s filename_ls_colors underline 901 #ble-face -s varname_array fg=orange,bold 902 #ble-face -s varname_empty fg=31 903 #ble-face -s varname_export fg=200,bold 904 #ble-face -s varname_expr fg=92,bold 905 #ble-face -s varname_hash fg=70,bold 906 #ble-face -s varname_number fg=64 907 #ble-face -s varname_readonly fg=200 908 #ble-face -s varname_transform fg=29,bold 909 #ble-face -s varname_unset fg=124 910 911 #ble-face -s cmdinfo_cd_cdpath fg=26,bg=155 912 913 ##----------------------------------------------------------------------------- 914 ## Keybindings 915 916 917 ## The default mapping of <SP> in ble.sh is magic-space which performs history 918 ## and sabbrev expansion before inserting a space. If you want to insert just 919 ## a space without expansions as Bash's default, use the following setting: 920 921 #ble-bind -f 'SP' 'self-insert' 922 923 924 ## The default mapping of `/' (<slash>) in ble.sh is magic-slash which performs 925 ## sabbrev expansions of the name ` ~*'. If you want to insert just a slash 926 ## without expansions as Bash's default, use the following setting: 927 928 #ble-bind -f '/' 'self-insert' 929 930 931 ## If you want to search the already input string using <up> and <down> keys, 932 ## use the following setting: 933 934 #ble-bind -f up 'history-search-backward' 935 #ble-bind -f down 'history-search-forward' 936 937 938 ## If you want to immediately run the matched command by RET, you can specify 939 ## the option "immediate-accept" to nsearch widgets: 940 941 #ble-bind -f up 'history-search-backward immediate-accept' 942 #ble-bind -f down 'history-search-forward immediate-accept' 943 944 945 ## If you want to kill/copy words including the spaces preceding them, you can 946 ## use the following keybindings: 947 948 #ble-bind -f C-w 'kill-region-or kill-uword' 949 #ble-bind -f M-w 'copy-region-or copy-uword' 950 951 ##----------------------------------------------------------------------------- 952 ## Settings for Emacs mode 953 954 function blerc/emacs-load-hook { 955 #---------------------------------------------------------------------------- 956 # Settings for the mode indicator 957 958 ## The following option specifies the content of the mode indicator shown in 959 ## the info line as a prompt sequence. 960 961 #bleopt prompt_emacs_mode_indicator='\q{keymap:emacs/mode-indicator}' 962 963 964 ## The following option specifies the multiline mode name used in the prompt 965 ## sequence \q{keymap:emacs/mode-indicator} in the multiline editing mode. 966 967 # default 968 #bleopt keymap_emacs_mode_string_multiline=$'\e[1m-- MULTILINE --\e[m' 969 # do not show the mode name 970 #bleopt keymap_emacs_mode_string_multiline= 971 972 #---------------------------------------------------------------------------- 973 # Keybindings 974 975 ## The default mapping of RET and C-m inserts newline with multiline commands 976 ## or incomplete commands. With the following setting, RET and C-m always 977 ## causes the execution of the command even in the multiline mode or when the 978 ## command is not syntactically completed. 979 980 #ble-bind -f 'C-m' accept-line 981 #ble-bind -f 'RET' accept-line 982 983 984 ## With the following settings, M-backspace (whose actual key sequence 985 ## depends on your terminal) will kill the backward word as in the default 986 ## readline. 987 988 #ble-bind -f 'M-C-?' kill-backward-cword 989 #ble-bind -f 'M-DEL' kill-backward-cword 990 #ble-bind -f 'M-C-h' kill-backward-cword 991 #ble-bind -f 'M-BS' kill-backward-cword 992 993 return 0 994 } 995 blehook/eval-after-load keymap_emacs blerc/emacs-load-hook 996 997 ##----------------------------------------------------------------------------- 998 ## Settings for Vim mode 999 1000 function blerc/vim-load-hook { 1001 ((_ble_bash>=40300)) && builtin bind 'set keyseq-timeout 1' 1002 1003 #---------------------------------------------------------------------------- 1004 # Settings for the mode indicator 1005 1006 ## The following option specifies the content of the mode indicator shown in 1007 ## the info line as a prompt sequence. 1008 1009 #bleopt prompt_vi_mode_indicator='\q{keymap:vi/mode-indicator}' 1010 1011 1012 ## The following option controls whether the prompt sequence 1013 ## \q{keymap:vi/mode-indicator} is activated. When this option has a 1014 ## non-empty value, \q{keymap:vi/mode-indicator} is expanded to the mode 1015 ## indicator. Otherwise, \q{keymap:vi/mode-indicator} is expanded to the 1016 ## empty string. 1017 1018 #bleopt keymap_vi_mode_show=1 1019 1020 1021 ## The following options specify the name of modes in 1022 ## \q{keymap:vi/mode-indicator}. 1023 1024 #bleopt keymap_vi_mode_name_insert=INSERT 1025 #bleopt keymap_vi_mode_name_replace=REPLACE 1026 #bleopt keymap_vi_mode_name_vreplace=VREPLACE 1027 #bleopt keymap_vi_mode_name_visual=VISUAL 1028 #bleopt keymap_vi_mode_name_select=SELECT 1029 #bleopt keymap_vi_mode_name_linewise=LINE 1030 #bleopt keymap_vi_mode_name_blockwise=BLOCK 1031 1032 1033 ## This option specifies the result of \q{keymap:vi/mode-indicator} in the 1034 ## normal mode. For example, if you want to show an explicit name of the 1035 ## normal mode like in other modes, please use the following setting: 1036 1037 #bleopt keymap_vi_mode_string_nmap:=$'\e[1m-- NORMAL --\e[m' 1038 1039 1040 ## This option specifies that all the prompts should be recalculated on the 1041 ## mode change. When this option has a non-empty value, the prompt will be 1042 ## recalculated. 1043 1044 #bleopt keymap_vi_mode_update_prompt= 1045 1046 #---------------------------------------------------------------------------- 1047 # Keybindings 1048 1049 ## The following setting sets up the keymap settings with Meta modifiers. 1050 ## With this setting, M-RET can be used to insert a newline in the 1051 ## commandline. 1052 1053 #ble-decode/keymap:vi_imap/define-meta-bindings 1054 1055 ## In this case, C-RET can be optionally configured so that it forcibly 1056 ## executes the command. 1057 1058 #ble-bind -m vi_imap -f 'C-RET' 'accept-line' 1059 1060 ## The default mapping of <M-backspace> (whose actual key sequence depends on 1061 ## your terminal) copies the previous shell word in the kill ring. Instead, 1062 ## the following settings will kill the backward word as in the default 1063 ## readline. 1064 1065 #ble-bind -m vi_imap -f 'M-C-?' kill-backward-cword 1066 #ble-bind -m vi_imap -f 'M-DEL' kill-backward-cword 1067 #ble-bind -m vi_imap -f 'M-C-h' kill-backward-cword 1068 #ble-bind -m vi_imap -f 'M-BS' kill-backward-cword 1069 1070 1071 ## The default mapping of RET and C-m in the insert mode inserts newline with 1072 ## multiline commands or incomplete commands. They moves the cursor position 1073 ## to the next line in the normal mode. Instead, with the following setting, 1074 ## RET and C-m always causes the execution of the command even in the 1075 ## multiline mode or when the command is not syntactically completed. 1076 1077 #ble-bind -m vi_imap -f 'C-m' accept-line 1078 #ble-bind -m vi_imap -f 'RET' accept-line 1079 #ble-bind -m vi_nmap -f 'C-m' accept-line 1080 #ble-bind -m vi_nmap -f 'RET' accept-line 1081 1082 1083 ## The default mapping of C-o is vi_imap/single-command-mode. If you want to 1084 ## execute the current command line and load the next history entry with 1085 ## <C-o>, use the following setting: 1086 1087 #ble-bind -m vi_imap -f 'C-o' 'accept-and-next' 1088 1089 1090 ## The default mapping of C-k is kill-forward-line. If you want to input 1091 ## digraphs with <C-k>{char1}{char2}, use the following setting: 1092 1093 #ble-bind -m vi_imap -f 'C-k' 'vi_imap/insert-digraph' 1094 1095 1096 ## The default mapping of C-c is vi_imap/normal-mode-without-insert-leave 1097 ## (imap), vi-command/cancel (nmap). If you instead want to discard the 1098 ## current line and go to the next line, you can bind C-c to 'discard-line': 1099 1100 #ble-bind -m vi_imap -f 'C-c' discard-line 1101 #ble-bind -m vi_nmap -f 'C-c' discard-line 1102 1103 1104 ## The default mapping of 'g g' and G moves the current position in the 1105 ## command history. If you would like to move the cursor position in the 1106 ## current command entry, you can overwrite the bindings as follows. 1107 1108 #ble-bind -m vi_nmap -f 'g g' vi-command/first-nol 1109 #ble-bind -m vi_omap -f 'g g' vi-command/first-nol 1110 #ble-bind -m vi_xmap -f 'g g' vi-command/first-nol 1111 #ble-bind -m vi_nmap -f 'G' vi-command/last-line 1112 #ble-bind -m vi_omap -f 'G' vi-command/last-line 1113 #ble-bind -m vi_xmap -f 'G' vi-command/last-line 1114 1115 1116 ## The default mapping of 'C-r' in the normal mode is "vi_nmap/redo". If you 1117 ## want to use the incremental search mode from Emacs in the Vim mode (as in 1118 ## Readline), please use the following keybinding. 1119 1120 #ble-bind -m vi_nmap -f 'C-r' history-isearch-backward 1121 1122 #---------------------------------------------------------------------------- 1123 # Cursor shapes and other terminal settings 1124 1125 ## Cursor settings 1126 1127 #ble-bind -m vi_nmap --cursor 2 1128 #ble-bind -m vi_imap --cursor 5 1129 #ble-bind -m vi_omap --cursor 4 1130 #ble-bind -m vi_xmap --cursor 2 1131 #ble-bind -m vi_smap --cursor 2 1132 #ble-bind -m vi_cmap --cursor 0 1133 1134 ## DECSCUSR setting 1135 ## 1136 ## If you don't have the entry Ss in terminfo, yet your terminal supports 1137 ## DECSCUSR, please comment out the following line to enable DECSCUSR. 1138 ## 1139 #_ble_term_Ss=$'\e[@1 q' 1140 1141 ## Control sequences that will be output on entering each mode 1142 #bleopt term_vi_nmap= 1143 #bleopt term_vi_imap= 1144 #bleopt term_vi_omap= 1145 #bleopt term_vi_xmap= 1146 #bleopt term_vi_smap= 1147 #bleopt term_vi_cmap= 1148 1149 #---------------------------------------------------------------------------- 1150 # Miscellaneous settings 1151 1152 ## This option controls the frequency of recording "undo". When the value 1153 ## "more" is specified, "undo" will be recorded for various operations in 1154 ## "vi_imap". 1155 1156 #bleopt keymap_vi_imap_undo= 1157 1158 1159 ## This option controls the behavior of motion in select mode. The value is 1160 ## a list of words separated by commas. When the word "stopsel" is contained 1161 ## in this option, ble.sh exits the select mode with a motion in select mode. 1162 1163 #bleopt keymap_vi_keymodel= 1164 1165 1166 ## This option sets the upper limit of the maximal depth of recurrence of 1167 1168 ## replaying keyboard macros. 1169 #bleopt keymap_vi_macro_depth=64 1170 1171 1172 ## This option specifies the operator name when the user input "g@" in normal 1173 ## mode. The function "ble/keymap:vi/operator:$value", where "$value" is the 1174 ## value of this setting, is used as the implementation of the operator. 1175 1176 #bleopt keymap_vi_operatorfunc= 1177 1178 1179 ## When this option has a non-empty value, "/", "?", "n", "N" search the word 1180 ## on the current position. When this option has the empty value, these keys 1181 ## follows the behavior of `vim`. 1182 1183 #bleopt keymap_vi_search_match_current= 1184 1185 #---------------------------------------------------------------------------- 1186 # plugins 1187 1188 ## vim-surround 1189 1190 #ble-import vim-surround 1191 #bleopt vim_surround_45:=$'$( \r )' 1192 #bleopt vim_surround_61:=$'$(( \r ))' 1193 1194 ## vim-arpeggio 1195 1196 #ble-import vim-arpeggio 1197 #bleopt vim_arpeggio_timeoutlen=10 1198 #ble/lib/vim-arpeggio.sh/bind -s jk 'hello' 1199 1200 ## vim-airline 1201 1202 #ble-import vim-airline 1203 #bleopt vim_airline_theme=light 1204 #bleopt vim_airline_section_a='\e[1m\q{lib/vim-airline/mode}' 1205 #bleopt vim_airline_section_b='\q{lib/vim-airline/gitstatus}' 1206 #bleopt vim_airline_section_c='\w' 1207 #bleopt vim_airline_section_x='bash' 1208 #bleopt vim_airline_section_y='$_ble_util_locale_encoding[unix]' 1209 #bleopt vim_airline_section_z=' \q{history-percentile} \e[1m!\q{history-index}/\!\e[22m \q{position}' 1210 #bleopt vim_airline_left_sep=$'\uE0B0' 1211 #bleopt vim_airline_left_alt_sep=$'\uE0B1' 1212 #bleopt vim_airline_right_sep=$'\uE0B2' 1213 #bleopt vim_airline_right_alt_sep=$'\uE0B3' 1214 #bleopt vim_airline_symbol_branch=$'\uE0A0' 1215 #bleopt vim_airline_symbol_dirty=$'\u26A1' 1216 } 1217 blehook/eval-after-load keymap_vi blerc/vim-load-hook 1218 1219 ##----------------------------------------------------------------------------- 1220 ## Internal settings 1221 1222 ## This option sets the interval of checking new user inputs. The value is 1223 ## evaluated as an arithmetic expression. On the evaluation, a shell variable 1224 ## "ble_util_idle_elapsed" is provided for the time since the last user input 1225 ## in millisecond. This option is used for the polling for the background 1226 ## execution when there is no user inputs. 1227 1228 #bleopt idle_interval='ble_util_idle_elapsed>600000?500:(ble_util_idle_elapsed>60000?200:(ble_util_idle_elapsed>5000?100:20))' 1229 1230 1231 ## This option specifies a colon-separated list of custom search paths of "ble-import". 1232 1233 #bleopt import_path="${XDG_DATA_HOME:-$HOME/.local/share}/blesh/local" 1234 1235 1236 ## When a non-empty value is specified to this option, displays the internal 1237 ## syntax analysis information and the syntax tree. This is only effective in 1238 ## devel versions. 1239 1240 #bleopt syntax_debug= 1241 1242 1243 ## When the option "debug_xtrace" contains a non-empty value, xtrace (set -x) 1244 ## is enabled for the internal processing of ble.sh. The value is used for the 1245 ## xtrace output log filename. [ Caution: The file size of the log file can 1246 ## soon grow up to hundred megabytes or to gigabytes. ] The option 1247 ## "debug_xtrace_ps4" specifies the value of PS4 for xtrace enabled by 1248 ## "debug_xtrace". 1249 1250 #bleopt debug_xtrace=~/blesh.xtrace 1251 #bleopt debug_xtrace_ps4='+ ' 1252 1253 1254 ## When the option "debug_idle" contains a non-empty value, the background 1255 ## tasks currently running are shown in the info panel. 1256 1257 #bleopt debug_idle=1 1258 1259 1260 ## [The setting "openat_base" needs to be set before ble.sh is loaded or 1261 ## specified in the source options. Therefore the value should be assigned 1262 ## directly to the shell variable "bleopt_openat_base" instead of using 1263 ## "bleopt" command.] 1264 ## 1265 ## This setting "openat_base" specifies the starting number of the file 1266 ## descriptors which ble.sh internally uses in Bash 4.0 or lower. The value of 1267 ## this setting is used as the number for the first file descriptor of internal 1268 ## use, and the next value is used for the second file descriptor, and so on. 1269 ## When you want to use the default value 30 and succeeding number 31, 32, 1270 ## etc. for other purposes, please set to this settings another value which 1271 ## does not conflict with file descriptors of other purposes. 1272 1273 # echo "usage: e.g. source out/ble.sh -o openat_base=30" 1274 1275 1276 ## It specifies the context of the command execution. The value "gexec" 1277 ## specifies that the user command is evaluated in global contexts. The value 1278 ## "exec" (ble-0.3 and before) specified that the user command is evaluated in 1279 ## a function, but the support is removed in ble-0.4 because this is only 1280 ## remained for a debugging purpose and not tested well. 1281 1282 #bleopt internal_exec_type=gexec 1283 1284 1285 ## This option sets the message that Bash outputs when "C-d" is input by user. 1286 ## This value is used to detect that the user inputs "C-d" in Bash 3. 1287 1288 #bleopt internal_ignoreeof_trap='Use "exit" to leave the shell.' 1289 1290 1291 ## This option controls the output of stack dump when assertion is failed in 1292 ## ble.sh. When the value is evaluated to be non-zero, the stack dump is 1293 ## printed for assertion failures. 1294 1295 #bleopt internal_stackdump_enabled=0 1296 1297 1298 ## When a non-empty value is specified to this option, the standard output and 1299 ## standard error from Bash is not output to the terminal. When the value is 1300 ## empty, ble.sh tries to realize the line editing allowing Bash to output its 1301 ## own standard output and error. This setting has a flickering problem and 1302 ## only left for debugging purpose, so it is not tested. Normally a non-empty 1303 ## value should be specified so as to suppress the standard output and error 1304 ## from Bash. 1305 1306 #bleopt internal_suppress_bash_output=1