aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--autoload/repl/repl.kak4
-rw-r--r--autoload/repl/repl_modes.kak23
2 files changed, 8 insertions, 19 deletions
diff --git a/autoload/repl/repl.kak b/autoload/repl/repl.kak
index bd47a67..5c55209 100644
--- a/autoload/repl/repl.kak
+++ b/autoload/repl/repl.kak
@@ -69,8 +69,8 @@ define-command xrepl-send-command %{
value="$kak_selection"
if ! [ -z "$transform" ]; then
# Available values in transform script
- export kak_buffile kak_selection kak_selection_desc kak_cursor_line kak_cursor_column kak_config
- value=$(echo "$kak_selection" | sh -c "$transform")
+ export kak_buffile kak_selection kak_selection_desc kak_cursor_line kak_cursor_column kak_config KAK_BUNDLE_EXEC
+ value=$(echo "$kak_selection" | sh -c "$transform" 2>&1)
fi
echo -e "xrepl-send-text %{$value\n}"
}
diff --git a/autoload/repl/repl_modes.kak b/autoload/repl/repl_modes.kak
index f059789..657f2a5 100644
--- a/autoload/repl/repl_modes.kak
+++ b/autoload/repl/repl_modes.kak
@@ -2,13 +2,6 @@ define-repl-mode global s 'Shell' %{ set global xrepl_current_cmd '$SHELL' }
define-repl-mode global n 'Node' %{ set global xrepl_current_cmd 'node' }
define-repl-mode global a 'AI: Claude' %{ set global xrepl_current_cmd 'claude' }
-# TODO: doesnt work
-# define-repl-mode global C 'Custom' %{
-# prompt -shell-completion 'Command: ' '
-# set global xrepl_current_cmd "node"
-# '
-# }
-
hook global BufSetOption filetype=haskell %{
define-repl-mode buffer h 'Haskell: cabal test' %{
set global xrepl_current_cmd 'cabal test'
@@ -17,19 +10,15 @@ hook global BufSetOption filetype=haskell %{
}
hook global BufSetOption filetype=ruby %{
- # TODO: Make generic
define-repl-mode buffer c 'Rails console' %{
- set global xrepl_current_cmd "just server-rails c"
+ set global xrepl_current_cmd '${KAK_BUNDLE_EXEC:-"bundle exec"} rails console'
}
define-repl-mode buffer r 'Rspec' %{
set global xrepl_current_cmd '$SHELL'
set global xrepl_current_transform 'cat > /dev/null
- path="$kak_buffile"
- if [ $kak_cursor_line -gt 5 ]; then
- path="$path:$kak_cursor_line"
- fi
- KAK_BUNDLE_EXEC=${KAK_BUNDLE_EXEC:-"bundle exec"}
- echo "$KAK_BUNDLE_EXEC rspec -fd $path"
+ path=$(realpath -s --relative-to="$PWD" "$kak_buffile")
+ if [ "$kak_cursor_line" -gt 5 ]; then path="$path:$kak_cursor_line"; fi
+ echo "eval \${KAK_BUNDLE_EXEC:-"bundle exec"} rspec -fd ''$path'' "
'
set global xrepl_current_clear_screen true
}
@@ -40,7 +29,7 @@ hook global BufSetOption filetype=(?:javascript|typescript|jsx|tsx) %{
# set global xrepl_current_cmd '(echo "::$kak_config::" | tee foob) && '
define-repl-mode buffer c 'Cypress' %{
set global xrepl_current_cmd '$SHELL'
- set global xrepl_current_transform 'cat > /dev/null
+ set global xrepl_current_transform 'cat > /dev/null;
cypress_config_files="cypress.config.json cypress.config.ts cypress.config.js"
project=$($kak_config/scripts/utils.sh find_closest "$kak_buffile" $cypress_config_files)
echo "npx cypress run --headless --e2e -P" "''$project''" "--spec ''$kak_buffile'';"
@@ -49,7 +38,7 @@ hook global BufSetOption filetype=(?:javascript|typescript|jsx|tsx) %{
}
define-repl-mode global j 'Jest' %{
set global xrepl_current_cmd '$SHELL'
- set global xrepl_current_transform 'cat > /dev/null
+ set global xrepl_current_transform 'cat > /dev/null;
echo "sh -c \\"cd ''$(dirname "$kak_buffile")''; npx jest --runTestsByPath ''$kak_buffile''\\";"
'
set global xrepl_current_clear_screen true