Files
TerminalPolyjuice/nushell/modules/pj_historyhintcomplete.nu
T
gwbeip deb4e45c4e fix(nushell): improve robustness and clarify abstraction boundaries
- pj_completions: merge into $env.config instead of replacing it wholesale
- pj_completions: use parse-time const for cache dir instead of pwd fallback
- pj_fzf / pj_historyhintcomplete: null-safe keybindings access via ? and default
- pj_helix: replace $env.OS (Windows-only) with $nu.os-info.name; extract shared launcher
- pj_prompt: fix off-by-one in git OID substring (0..7 -> 0..<7)
- pj_prompt: use $nu.os-info.name for OS detection instead of sys host hostname
- pj_prompt: cache git availability in static base, skip per-render which call
- pj_prompt: bind LAST_EXIT_CODE once in right-prompt closure
- pj_brew / pj_uv: add --ignore-errors to hide-env calls
- pj_aliases: convert quote/dadjoke to defs with try/catch error handling
- pj_deepseek: guard curl availability before invoking
- pj_zoxide: add ? to $nu.os-info.name access
- pj_starship: fix null-to-nuon producing "null" string; broaden detection
- nu_polyjuice: load pj_starship module
2026-07-31 00:31:04 +08:00

40 lines
1.1 KiB
Nu

const alt_l_history_completion = {
name: alt_l_history_completion
modifier: alt
keycode: char_l
mode: [emacs, vi_insert, vi_normal]
event: {
until: [
{ send: historyhintcomplete }
{ send: menuright }
{ send: right }
]
}
}
const alt_uppercasel_history_completion = {
name: alt_uppercasel_history_completion
modifier: alt_shift
keycode: char_l
mode: [emacs, vi_insert, vi_normal]
event: {
until: [
{ send: historyhintwordcomplete }
{ edit: movewordright, select: false}
]
}
}
export-env {
mut existing = ($env.config.keybindings? | default [])
if not ($existing | where name == "alt_l_history_completion" | is-not-empty) {
$existing = ($existing | append [$alt_l_history_completion])
}
if not ($existing | where name == "alt_uppercasel_history_completion" | is-not-empty) {
$existing = ($existing | append [$alt_uppercasel_history_completion])
}
$env.config = ($env.config? | default {} | upsert keybindings $existing)
}