blob: f2d3e8f3b935e33d7a565ddc637d3f2416e55ffb (
plain) (
blame)
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
|
hook global BufSetOption filetype=(?:javascript|typescript|jsx|tsx) %{
define-snippet buffer snip-react-component
define-snippet buffer snip-react-usestate
}
define-command snip-react-usestate %{
prompt 'Name: ' %{
set-register n %val{text}
prompt 'Initial value: ' %{
set-register v %val{text}
evaluate-commands %sh{
st=$(echo "$kak_reg_n" | sed 's/^[A-Z]/\L\0/')
setst="set$(echo "$kak_reg_n" | sed 's/^[a-z]/\U\0/')"
echo "execute-keys '<esc>,iconst [$st, $setst] = useState($kak_reg_v);<esc>'"
}
}
}
}
define-command snip-react-component %{
prompt 'Component name: ' %{
execute-keys "<esc>,itype %val{text}Prop = {<ret>}<ret><ret>"
execute-keys "<esc>,iexport const %val{text} = ({ }: %val{text}Prop) => {<ret>"
execute-keys " return <lt>div><lt>/div>;"
execute-keys "<ret>};<esc>kwlt;"
}
}
|