summary refs log tree commit diff
path: root/etc/CodeQWERTY.bundle/Contents/Resources/CodeQWERTY.keylayout
diff options
context:
space:
mode:
authorJune McEnroe <june@causal.agency>2020-12-23 14:19:58 -0500
committerJune McEnroe <june@causal.agency>2020-12-23 15:56:18 -0500
commite50150458145caddac0fb0e2dd75cf99042e2b06 (patch)
tree22ad917fc6cab92659d5c23733ef78bdc9255cd2 /etc/CodeQWERTY.bundle/Contents/Resources/CodeQWERTY.keylayout
parentBind libedit's secret filename completion function (diff)
downloadsrc-e50150458145caddac0fb0e2dd75cf99042e2b06.tar.gz
src-e50150458145caddac0fb0e2dd75cf99042e2b06.zip
Cache the expanded prompt for editline
Previously, the prompt would be expanded every time editline called the
getprompt callback. I think the code may have been written assuming that
editline only calls getprompt once per prompt, but it may actually call
it many times, for instance every time you type backspace. This results
not only in slower editing from expanding complex prompts repeatedly, it
also consumes more and more stack memory each time getprompt is called.
This can be seen by setting PS1 to some command substitution, typing
many characters at the prompt, then holding backspace and observing
memory usage. Thankfully all this stack memory is freed between prompts
by the stackmark calls around el_gets.

This change causes prompt expansion to always happen in the setprompt
call, as it would when editline is disabled, and a cached copy of the
prompt is saved for getprompt to return every time editline calls it.
Since getprompt is no longer doing expansion, the stackmark calls
surrounding el_gets can be removed.
Diffstat (limited to '')
0 files changed, 0 insertions, 0 deletions
rc?id=4a7269cbd3e269e6349682ac54c82ae1057d8ffd&follow=1'>Simplify colors syntax in zsh promptJune McEnroe 2016-08-29Color rubyStringDelimiter as StringJune McEnroe 2016-08-24Highlight rubyDefine as StructureJune McEnroe 2016-08-23Remove scroll bindings from nvim configJune McEnroe 2016-08-17Highlight Search with black foregroundJune McEnroe 2016-08-15Remove gruvboxJune McEnroe 2016-08-04Remove march from SSH configJune McEnroe 2016-08-01Disable tab indicators in iTermJune McEnroe 2016-07-30Color PreProc DarkGreenJune McEnroe 2016-07-29Color Structure and Typedef in grayJune McEnroe 2016-07-27Color comments DarkBlue and LightBlueJune McEnroe 2016-07-27Color macros in yellowJune McEnroe 2016-07-26Colorscheme colors and schemesJune McEnroe 2016-07-26Add ''subtle'' colorschemeJune McEnroe 2016-07-26Add htoprcJune McEnroe 2016-07-24Add may and refactor ssh configJune McEnroe 2016-07-18Disable cursorlineJune McEnroe 2016-07-18Use hard constrast gruvbox darkJune McEnroe 2016-07-15Remove vim configurationJune McEnroe 2016-07-15Add readline to README configurations listJune McEnroe 2016-07-15Add vendor script to READMEJune McEnroe 2016-07-15Pull latest pathogen and gruvboxJune McEnroe