Merge remote-tracking branch 'Screwtapello/spell-replace-prompt' into master

This commit is contained in:
Maxime Coste 2020-09-22 21:26:22 +10:00
commit c6bfce0350

View File

@ -142,20 +142,27 @@ define-command spell-next %{ evaluate-commands %sh{
define-command \ define-command \
-docstring "Suggest replacement words for the current selection, against the last language used by the spell-check command" \ -docstring "Suggest replacement words for the current selection, against the last language used by the spell-check command" \
spell-replace %{ evaluate-commands %sh{ spell-replace %{
prompt \
-init %val{selection} \
-shell-script-candidates %{
options="" options=""
if [ -n "$kak_opt_spell_last_lang" ]; then if [ -n "$kak_opt_spell_last_lang" ]; then
options="-l '$kak_opt_spell_last_lang'" options="-l '$kak_opt_spell_last_lang'"
fi fi
suggestions=$(printf %s "$kak_selection" | eval "aspell -a $options" | grep '^&' | cut -d: -f2) printf %s "$kak_selection" |
menu=$(printf %s "${suggestions#?}" | awk -F', ' ' eval "aspell -a $options" |
{ sed -n -e '/^&/ { s/^[^:]*: //; s/, /\n/g; p }'
for (i=1; i<=NF; i++) } \
printf "%s", "%{"$i"}" "%{execute-keys -itersel %{c"$i"<esc>be}}" "Replace with: " \
%{
evaluate-commands -save-regs a %{
set-register a %val{text}
execute-keys c <c-r>a <esc>
} }
') }
printf 'try %%{ menu -auto-single %s }' "${menu}" }
} }
define-command -params 0.. \ define-command -params 0.. \
-docstring "Add the current selection to the dictionary" \ -docstring "Add the current selection to the dictionary" \