Hidden Gems: Community Edition #39680
Replies: 10 comments 7 replies
-
I don't know how hidden gem it is, but I changed the commit model to gemini-2.0-flash from my gemini api key, which is free to use. Only set up this at your config:
|
Beta Was this translation helpful? Give feedback.
-
Those 💎 were awesome! Today I Learned that file names can contain emojis (I am on a Mac.) Zed does not give a warning about this, like it does for whitespace (it probably should.) Hope you like that one, and certainly keep posting more 💎 ! |
Beta Was this translation helpful? Give feedback.
-
I setup zed so I could use it with the Maya and Houdini animation tools, for Houdini just set as external editor. For maya it needed a little more work and a script described here https://nccastaff.bournemouth.ac.uk/jmacey/post/ZedMaya/ZedMaya/ I'm also using it in class and have started to set some default stuff for students, will write this up soon. |
Beta Was this translation helpful? Give feedback.
-
zed's diff editor is incredibly nice, the i've found that i often want to use it to review other changes... because i use jj, and colocate all my git repos, i am able to run |
Beta Was this translation helpful? Give feedback.
-
[
{
"label": "lazygit",
"command": "lazygit",
"cwd": "${ZED_WORKTREE_ROOT}",
"hide": "on_success",
"use_new_terminal": true,
"allow_concurrent_runs": false,
"reveal_target": "center"
},
{
"label": "k9s",
"command": "k9s",
"cwd": "${ZED_WORKTREE_ROOT}",
"hide": "on_success",
"use_new_terminal": true,
"allow_concurrent_runs": false,
"reveal_target": "center"
}
] Keybindings similar to lazyvim: [
{
"context": "EmptyPane || SharedScreen",
"bindings": {
"space g g": ["task::Spawn", { "task_name": "lazygit" }],
"space k s": ["task::Spawn", { "task_name": "k9s" }]
}
},
] |
Beta Was this translation helpful? Give feedback.
-
Add bun test quick actions to bun test files: [
{
"label": "Bun Test",
"command": "bun test",
"args": ["\"$ZED_RELATIVE_FILE\" -t=\"$ZED_SYMBOL\""],
"tags": ["js-test", "ts-test", "bun-test", "tsx-test"]
},
] |
Beta Was this translation helpful? Give feedback.
-
Make zed behave more like lazyvim. Here are several of my keybindings that allow me to fully navigate zed without touching the mouse: [
// Allow changing panes without the mouse (ctrl + vim direction keys)
{
"bindings": {
"ctrl-h": "workspace::ActivatePaneLeft",
"ctrl-l": "workspace::ActivatePaneRight",
"ctrl-k": "workspace::ActivatePaneUp",
"ctrl-j": "workspace::ActivatePaneDown"
}
},
// Allow changing tabs without mouse (shift + vim direction keys)
{
"context": "VimControl && !menu",
"bindings": {
"L": "pane::ActivateNextItem",
"H": "pane::ActivatePreviousItem"
}
},
// Allow changing panes and tabs when the terminal is focused (ctrl + vim direction keys)
{
"context": "Terminal",
"bindings": {
"ctrl-k": "workspace::ActivatePaneUp",
"ctrl-l": "workspace::ActivatePaneRight",
"ctrl-h": "workspace::ActivatePaneLeft",
"ctrl-n": "workspace::NewTerminal",
"ctrl-shift-h": "pane::ActivatePreviousItem",
"ctrl-shift-l": "pane::ActivateNextItem"
}
},
// Add ability to navigate through menu items with (ctrl + n, ctrl + p)
// ctrl + n works by default, but ctrl + p didn't in some cases due to conflicts
{
"context": "(FileFinder || FileFinder > Picker > Editor)",
"bindings": {
"ctrl-p": null
}
},
{
"context": "",
"bindings": {
"ctrl-p": "menu::SelectPrevious"
}
},
// Auto exit insert mode and save when pressing ctrl + s
{
"context": "Editor && vim_mode == insert && !VimWaiting && !menu",
"bindings": {
"ctrl-s": ["workspace::SendKeystrokes", "escape ctrl-s"]
}
},
// Comment current line with ctrl + /, but then move the cursor to the line below after
// this allows typing ctrl + / multiple times to comment multiple lines
{
"context": "Editor",
"bindings": {
"ctrl-/": ["workspace::SendKeystrokes", "ctrl-/ down"],
}
},
] |
Beta Was this translation helpful? Give feedback.
-
I was reading in Oct the 7th "Hidden Gems" post the suggestion of using save on focus change. I wanted a behaviour JetBrains style where everything is saved instantly, change focus or not. Here my little gem: "autosave": {
"after_delay": {
"milliseconds": 0
}
} |
Beta Was this translation helpful? Give feedback.
-
Posting this tip from @baldwindavid for configuring television in Zed to act like telescope.
{
"label": "File Finder",
"command": "zed \"$(tv files)\"",
"hide": "always",
"allow_concurrent_runs": true,
"use_new_terminal": true
},
{
"label": "Find in Files",
"command": "zed \"$(tv text)\"",
"hide": "always",
"allow_concurrent_runs": true,
"use_new_terminal": true
},
"cmd-p": [
"task::Spawn",
{ "task_name": "File Finder", "reveal_target": "center" }
],
"cmd-f": [
"task::Spawn",
{ "task_name": "Find in Files", "reveal_target": "center" }
], |
Beta Was this translation helpful? Give feedback.
-
Launch Zed terminal with a new tmux session specific to the project. settings.json "terminal": {
"shell": {
"with_arguments": {
"program": "/usr/bin/bash",
"args": ["-c", "tmux new-session -A -s \"$(basename \"$PWD\")\""]
}
}
} Very useful for people who are used not having to rely on the mouse to select, copy, navigate, etc. inside the terminal. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Hey all, we just published Hidden Gems: Team Edition Part 1, the first in a series of blog posts where we document some of our favorite hidden features and personal workflows we use in Zed. We plan to write community editions for this series as well and would love to learn about your favorite tips and tricks.
Feel free to use this GitHub Discussion as a place to share your Hidden Gems and upvote those you find useful. We'll sweep through the posts here and build community editions around tips that are popular (determined by upvotes) or that we find unique and useful. We already have your GitHub handle, but if you want to leave your name as well for attribution, feel free. If needed, include screenshots as well!
Excited to learn about your hidden Zed gems! 💎
Beta Was this translation helpful? Give feedback.
All reactions