aboutsummaryrefslogtreecommitdiff
path: root/autoload/snippets/typescript.kak
diff options
context:
space:
mode:
authorAkshay Nair <phenax5@gmail.com>2025-10-30 09:24:20 +0530
committerAkshay Nair <phenax5@gmail.com>2025-10-31 13:25:43 +0530
commitf69a19a4bd00ad92843b903db3d5967d11095edd (patch)
tree3459238e342f04346039286b8301578c6fdaae08 /autoload/snippets/typescript.kak
parent406432cd53c168390221ae37a41724eda5b867c9 (diff)
downloadkakoune-config-f69a19a4bd00ad92843b903db3d5967d11095edd.tar.gz
kakoune-config-f69a19a4bd00ad92843b903db3d5967d11095edd.zip
Dumb snippets
Diffstat (limited to 'autoload/snippets/typescript.kak')
-rw-r--r--autoload/snippets/typescript.kak65
1 files changed, 25 insertions, 40 deletions
diff --git a/autoload/snippets/typescript.kak b/autoload/snippets/typescript.kak
index 86f46e7..f2d3e8f 100644
--- a/autoload/snippets/typescript.kak
+++ b/autoload/snippets/typescript.kak
@@ -1,42 +1,27 @@
-# declare-option -hidden str-list snippet_list
+hook global BufSetOption filetype=(?:javascript|typescript|jsx|tsx) %{
+ define-snippet buffer snip-react-component
+ define-snippet buffer snip-react-usestate
+}
-# define-command snippets-insert %{
-# evaluate-commands %sh{
-# cmds="echo $(echo "$kak_opt_snippet_list" | sed 's/=.*//')"
-# # TODO: Fix this shit
-# echo "prompt -menu -shell-script-candidates '$cmd' 'Snippet: ' 'evaluate-commands %val{text}'"
-# }
-# }
+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>'"
+ }
+ }
+ }
+}
-# map global normal <c-p> ':snippets-insert<ret>'
-
-# define-command define-snippet -params 3 %{
-# set-option -add %arg{1} snippet_list %sh{ echo -e "$2=$3\n" }
-# }
-
-# define-snippet global "React component" snip-react-component
-# define-snippet global "React useState" snip-react-usestate
-
-# # hook global BufSetOption filetype=(?:javascript|typescript) %{
-# # define-snippet buffer "React component" snip-react-component
-# # define-snippet buffer "React useState" snip-react-usestate
-# # }
-
-# define-command snip-react-usestate %{
-# prompt 'Name: ' %{
-# evaluate-commands %sh{
-# echo "info %{$kak_text}"
-# st=$(echo "$kak_text" | sed 's/^[A-Z]/\L\0/')
-# setst="set$(echo "$kak_text" | sed 's/^[a-z]/\U\0/')"
-# echo "execute-keys '<esc>,iconst [$st, $setst] = useState();<esc>'"
-# }
-# }
-# }
-
-# define-command snip-react-component %{
-# prompt 'Component name: ' %{
-# execute-keys "<esc>,iconst %val{text} = ({ children }: React.PropsWithChildren) => {<ret>"
-# execute-keys " return <lt>div><lt>/div>;"
-# execute-keys "<ret>}<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;"
+ }
+}