warpdotdev / Warp

Warp is a modern, Rust-based terminal with AI built in so you and your team can build great software, faster.
https://warp.dev
Other
20.78k stars 349 forks source link

Should the "Automatically "Warpify" subshells" string always be printed in a new shell? #3429

Open robinkaty opened 1 year ago

robinkaty commented 1 year ago

Discord username (optional)

No response

Describe the bug

$f{"hook": "SourcedRcFileForWarp", "value": { "shell": "zsh"}}?% on each opening of terminal window.

To reproduce

open terminal

Expected behavior

I don't expect to see this on every open of the shell.

Screenshots

No response

Operating system

MacOS

Operating system and version

Monterey 12.6.8

Shell Version

zsh 5.8.1 (x86_64-apple-darwin21.0)

Current Warp version

v0.2023.07.18.08.03.stable_00

Regression

No, this bug or issue has existed throughout my experience using Warp

Recent working Warp date

unknown

Additional context

No response

Does this block you from using Warp daily?

No

Is this a Warp specific issue? (i.e. does it happen in Terminal, iTerm, Kitty, etc.)

No, this same issue happens in Warp and other terminals.

Warp Internal (ignore): linear-label:b8107fdf-ba31-488d-b103-d271c89cac3e

None

robinkaty commented 1 year ago

If I open a zsh shell by running zsh I get: rgranger@RMP1 ~ % zsh rgranger@RMP1 ~ % [ -z $WARP_BOOTSTRAPPED ] && eval 'setopt hist_ignore_space; unsetopt ZLE; WARP_IS_SUBSHELL=1; WARP_SESSION_ID="$(command -p date +%s)$RANDOM"; _hostname=$(command -pv hostname >/dev/null 2>&1 && command -p hostname 2>/dev/null || command -p uname -n); _user=$(command -pv whoami >/dev/null 2>&1 && command -p whoami 2>/dev/null || echo $USER); _msg=$(printf "{\"hook\": \"InitShell\", \"value\": {\"session_id\": $WARP_SESSION_ID, \"shell\": \"zsh\", \"user\": \"$_user\", \"hostname\": \"$_hostname\", \"is_subshell\": true}}" | command -p od -An -v -tx1 | command -p tr -d " \n"); printf '"'"'\x1b\x50\x24\x64%s\x9c'"'"' $_msg; unset _hostname _user _msg;' Success! This subshell spawned by zsh has been Warpified. ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣼⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣶⡄⠀ ⠀⢀⣤⣤⣤⣤⣤⣤⣤⣤⣤⣤⣤⣴⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠀ ⣴⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠀ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠀ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠀ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠀ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠀ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠀ ⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠟⠀ ⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠋⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠁⠀⠀ ⠈⠛⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠿⠏⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀

To always Warpify the subshell for this command, add the following command to the end of your .zshrc:

printf '\eP$f{"hook": "SourcedRcFileForWarp", "value": { "shell": "zsh" }}\x9c'

Learn more: https://docs.warp.dev/features/subshells.

warpdotdev-devx[bot] commented 1 year ago

I see, yeah the success output with the warp icon, etc. is always printed to show that the Warpification has been completed with success. But I see how this could be a bit annoying every time and should be an option.

robinkaty commented 1 year ago

Do you mind a quick question? I have been working on an ssh_alias to change the terminal font color on my mac terminal automatically when I ssh to another host, seems to help keep me from doing something stupid on the wrong computer. Can you change the font properties in the warp terminal by issuing an escape code or function call?  

jloewe commented 9 months ago

Has there been any progress on this? I would love to see an option to disable the message or at least to minimize it to a single line.

dzejkob23 commented 7 months ago

NOTE: This command printf '\eP$f{"hook": "SourcedRcFileForWarp", "value": { "shell": "zsh" }}\x9c' at the end of the .zshrc file breaks the Android Studio terminal. Once you open the Android Studio and the Terminal tool there, it's frozen until you hit control + c. I had to remove printf '\eP$f{"hook": "SourcedRcFileForWarp", "value": { "shell": "zsh" }}\x9c' from .zshrc to fix that.

fraterivan commented 6 months ago

My "problem" is the same, I wish we could disable that automatic message, as it is a bit annoying imho.

jpmorby commented 5 months ago

fyi this also breaks the new Laravel Herd app .. (the NodeJS manager portion anyway). Took me an age to figure out it was this one line in my rather lengthy .zsh_rc file which was doing it too

dingtang2008 commented 5 months ago

same here with orbstack cmd orb

davidgroves commented 3 months ago

Same frustration here, would like a way to disable the notification.

It is telling me to add the printf hook to my .bashrc, which is exactly what I have done to get the message to appear in the first place !