衝撃のわからなさ

わかってません

2023/12/31日報

cursor(code)コマンドをtmuxから呼べるようにする

$ cursor text.txt
Unable to connect to VS Code server: Error in request.
Error: connect ENOENT /run/user/1000/vscod-ipc-614b54a3-a3dd-4446-89cd-7c8f27fb5b06.sock
    at PipeConnectWrap.afterConnect [as oncomplete] (node:net:1494:16) {
  errno: -2,
  code: 'ENOENT',
  syscall: 'connect',
  address: '/run/user/1000/vscode-ipc-614b54a3-a3dd-4446-89cd-7c8f27fb5b06.sock'
}

vscodeのterminalでtmuxを起動して実行するとこういったエラーが出てしまう状態だった。
この誤ったsocketのパスは環境変数から来ているようだったので確認していったところ、 vscode周りの環境変数がうまく引き継がれていないのが原因だった。

tmux.confに書きを設定してとりあえずセッション開始時の変数を引き継ぐようにした。

set-option -g update-environment VSCODE_GIT_ASKPASS_NODE
set-option -g update-environment VSCODE_GIT_ASKPASS_EXTRA_ARGS
set-option -g update-environment VSCODE_GIT_IPC_HANDLE
set-option -g update-environment VSCODE_GIT_ASKPASS_MAIN
set-option -g update-environment VSCODE_IPC_HOOK_CLI

impactaky/code_for_another_session を書いた

iTermでcodeコマンド使いたい

remote explorerでremote先を開いているcursorで外部terminalを開けば実現できると思っていたが違った。
https://dev.classmethod.jp/articles/visual-studio-code-change-terminal/ に従って設定してみたが、 すでに開いているiTermにフォーカスが移動しただけだった。

iTermでは別にsshした環境でcursorコマンドを使えるようにすることにした。

denoでcursor(code)コマンドを呼び出すコマンドを定義する

なんでまたshellを書くんだという気持ちになったので、deno使うことにした。
Deno + TypeScriptでzshプラグインを実装して最高になった 見たりした。
いつもplugin管理が楽だからという理由でzshプラグインにしてきたけれど、 つまりzinitで管理できればいいだけなのでcliとして単に作ればいいのではと思いcliを作ることにした。

こうすることで、deno installでインストールすることも、

deno install https://raw.githubusercontent.com/impactaky/code_for_another_session/main/code --allow-run --allow-read --allow-env --allow-sys

このようにzinitに記述して管理できるようにもなった。

zinit ice as"program"
zinit light "impactaky/code_for_another_session"

denops.vimの勉強

日報を書いているとURLをtitleをつけるのがつらいと感じ始めたので プラグイン作るかという気持ちになった。
どうせならvim plugin周りもdenoに統一しようと Deno で Vim/Neovim のプラグインを書く (denops.vim) をやった。
明日はplugin作って見るところから