Skip to content

Instantly share code, notes, and snippets.

Claude Code Session: Controlling nvim via tmux

Demonstrating Claude Code driving nvim in a separate tmux pane — opening files, creating splits, and using vim plugins.


User

using tmux send-keys open nvim to the RASP decompilation grader with that line highlighted

Patch Claude Code's "btw" Side Questions Feature

Enable the hidden "btw" side questions feature that's implemented but disabled.

Step 1: Find and backup cli.js

CLI_JS=$(which claude | xargs readlink -f | xargs dirname)/cli.js
echo "cli.js: $CLI_JS"
ls -la "$CLI_JS"
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
#!/usr/bin/env nix-shell
#! nix-shell -i runhaskell -p "haskellPackages.ghcWithPackages (pkgs: [pkgs.shqq])"
{-# LANGUAGE QuasiQuotes #-}
import System.ShQQ (sh)
import System.Environment (getArgs)
parseOp :: Num a => Char -> a -> a -> a
parseOp '+' = (+)
parseOp '-' = (-)
#include <stdio.h>
#include <wchar.h>
#include <locale.h>
#include <stdlib.h>
#include <termios.h>
#include <unistd.h>
static int MapSizeRow = 10 + 2; //map size with boundaries in vertical direction
static int MapSizeCol = 20 + 2; //map size with boundaries in horizontal direction
-- Message -> State -> State
measure updateRecv :: Int -> Int -> Int
measure updateSend :: Int -> Int -> Int
undefined as rforall a. a
undefined = 0
assert :: {v:Bool | v} -> Unit
assert = \tru -> Unit
-- tick and tock with session types in Mist
-- Message -> State -> State
measure updateRecv :: Int -> Int -> Int
measure updateSend :: Int -> Int -> Int
undefined as rforall a. a
undefined = 0
assert :: {v:Bool | v} -> Unit
{-# LANGUAGE TypeFamilies, DeriveFunctor #-}
module Expr where
import Data.Functor.Foldable
data ExprF a
= ConstF Double
| AddF a a
| SubF a a
| MulF a a
#toolbar-menubar[inactive] + #TabsToolbar {
//visibility: collapse;
}
#sidebar-box[sidebarcommand="treestyletab_piro_sakura_ne_jp-sidebar-action"] #sidebar-header {
display: none;
}
splitter {
padding: 5px;
/* Hide various elements */
#back-button[disabled = "true"],
#forward-button[disabled = "true"],
#new-tab-button,
.scrollbutton-down,
.scrollbutton-up
{ display: none !important; }
/* Hide splitter, when using Tree Style Tab. */
#sidebar-box[sidebarcommand="treestyletab_piro_sakura_ne_jp-sidebar-action"] + #sidebar-splitter {