Commit Graph

362 Commits

Author SHA1 Message Date
Nate Butler
d1361f7dfc Add new icons
We will need to do an assets clean up soon, we are currently shipping assets we are not using in the app.
2022-07-16 11:39:45 -04:00
Mikayla Maki
6675c96c8a Removed some old dbgs and comments 2022-07-15 18:42:07 -07:00
Mikayla Maki
dc120c1e05 Added settings for common terminal configurations 2022-07-15 18:27:10 -07:00
Mikayla Maki
f38206f819
Merge branch 'main' into keybindings-grind 2022-07-15 11:24:16 -07:00
Antonio Scandurra
b5765bc8cd Illustrate format_on_save external command using prettier
This gives us a chance to highlight a real-world scenario that a lot
of our users will want to use, as well as showcasing the special
`{buffer_path}` argument.
2022-07-15 09:00:10 +02:00
Mikayla Maki
98651c4b86 New key mapping system in place and working 2022-07-14 17:21:30 -07:00
Max Brunsfeld
c90fe31249
Merge pull request #1353 from zed-industries/fix-init-user-settings
Avoid copying all default settings to initial user settings
2022-07-13 17:31:10 -07:00
Max Brunsfeld
8292ba15ed Avoid copying all default settings to initial user settings
This would cause top-level default editor settings to override
language-specific default settings.

Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-07-13 17:07:41 -07:00
Mikayla Maki
f55b24ddee Fixed modal terminal bindings to not show in command palette 2022-07-13 16:39:22 -07:00
Mikayla Maki
79b7dcb596 Basic keybindings infra done 2022-07-13 16:32:25 -07:00
K Simmons
e7b1060bca fix merge error to use new default settings flow 2022-07-13 14:29:47 -07:00
Mikayla Maki
7885234fbc Added clear screan command 2022-07-13 13:19:21 -07:00
Mikayla Maki
4f9d88f3e0 Made a quick fix for modal issues, better solution pending rewrite 2022-07-13 13:06:23 -07:00
Antonio Scandurra
9677db9f8f Deploy context menu when clicking on split icon 2022-07-13 12:15:36 +02:00
Max Brunsfeld
dd554c19df
Merge pull request #1331 from zed-industries/discoverable-settings
Make settings more discoverable
2022-07-12 14:38:16 -07:00
Nate Butler
f2c932a933 Add terminal icon for status bar 2022-07-12 17:22:31 -04:00
Max Brunsfeld
0ebf417c2e Pre-populate settings.json when initializing it from Zed 2022-07-12 14:19:36 -07:00
Max Brunsfeld
7750054a45 Add application menu item to open the default settings 2022-07-12 13:38:24 -07:00
Max Brunsfeld
c02f4ea8dc Rename LanguageSettings -> EditorSettings 2022-07-12 11:42:43 -07:00
Max Brunsfeld
ec8a493700 Move all default settings from source code into the JSON file 2022-07-12 11:35:19 -07:00
Max Brunsfeld
e51dc25e1d Start moving default settings into a JSON file
Co-authored-by: Antonio Scandurra <me@as-cii.com>
2022-07-12 11:00:02 -07:00
Keith Simmons
667d031ec8
Merge pull request #1311 from zed-industries/fix-visual-paste
Fix visual paste
2022-07-08 16:54:10 -07:00
Keith Simmons
ee007f901a fix pasting at the end of the line in normal mode 2022-07-08 10:57:02 -07:00
Mikayla Maki
7c0d9f411a Added copying 2022-07-07 14:55:03 -07:00
Max Brunsfeld
7e5cf6669f Add forward and backward navigation buttons to toolbar 2022-07-06 14:05:24 -07:00
Keith Simmons
ed52f8a8a3 WIP making paste better 2022-07-05 16:52:56 -07:00
Keith Simmons
9b36e3d009 Highlight matching bracket when newest selection head is on a bracket 2022-07-01 15:06:16 -07:00
Keith Simmons
66486870aa Fix vim editor focus selection issues, cancel vim operators on escape and unbound keys 2022-06-30 12:36:02 -07:00
Mikayla Maki
2ee57c1512
Merge pull request #1255 from zed-industries/terminal-fr
WIP: Terminal
2022-06-30 11:30:28 -07:00
Max Brunsfeld
f22d69aa74 Add other standard macOS bindings for switching to next/prev tab 2022-06-29 15:33:46 -07:00
Max Brunsfeld
581c9af395 Adjust pane, tab, panel management bindings to match VS Code 2022-06-29 15:33:46 -07:00
Mikayla Maki
93dfc63f1c Added a test with max, cludged a fix for resizing 2022-06-29 13:07:44 -07:00
Mikayla Maki
e3834409dd Fixed focus issues with scrolling and input 2022-06-28 18:28:13 -07:00
Mikayla Maki
24d671ed3f First bits of polish 2022-06-28 15:45:27 -07:00
Mikayla Maki
9e55c60b6a working on selection and scrolling in terminals 2022-06-28 15:45:27 -07:00
Mikayla Maki
31bc758f35 Forgot to commit last night 2022-06-28 15:45:27 -07:00
Mikayla Maki
b36bf0c56d Finally on solid conceptual ground, able to move ahead confidently with Alacritty code 2022-06-28 15:45:27 -07:00
Antonio Scandurra
0652542f60 Introduce pane::ReopenClosedItem bound to cmd-shift-t 2022-06-27 17:44:33 +02:00
Antonio Scandurra
9defbf7c76 Bind CloseInactiveItems to alt-cmd-t 2022-06-16 14:42:55 +02:00
Antonio Scandurra
88d8696414 Display tooltip for select prev/next match buttons 2022-06-16 14:37:33 +02:00
Antonio Scandurra
649185da9c Allow toggling search options via the command palette 2022-06-16 14:28:37 +02:00
Antonio Scandurra
a835dcefa2 Toggle buffer search options via the keyboard 2022-06-16 13:44:00 +02:00
Antonio Scandurra
da1eb91935 Replace pane::Split action with Split{Left,Up,Right,Down}
This allows us to show them in the command palette.
2022-06-15 13:06:59 +02:00
Keith Simmons
a6c0ee472c Add vim bindings for hover
Allow scrolling in hover popover
2022-06-07 13:07:53 -07:00
Max Brunsfeld
7ef9de32b1 Show private projects in the contacts panel
Introduce a ProjectStore that lets you iterate through all open projects.
Allow projects to be made public by clicking the lock.
2022-06-02 17:29:11 -07:00
Antonio Scandurra
4f9c207425 Show a clickable jump icon for each diagnostic group header 2022-05-31 15:57:22 +02:00
Antonio Scandurra
20e1044d49 Merge branch 'main' into project-panel-with-new-mouse-events 2022-05-30 18:29:46 +02:00
Antonio Scandurra
6c145b2abc Show keystrokes as uppercase 2022-05-30 12:23:03 +02:00
Max Brunsfeld
e1a05d451f Add "Reset Zoom" action and application menu item 2022-05-27 13:06:12 -07:00
Keith Simmons
e93c49f4f0 Unify visual line_mode and non line_mode operators 2022-05-26 17:02:05 -07:00
Keith Simmons
61f0daa5c5 Visual line mode handles soft wraps 2022-05-26 17:02:05 -07:00
Keith Simmons
082036161f Enable copy and paste in vim mode 2022-05-26 17:02:05 -07:00
Keith Simmons
f8f316cc64 Working change and delete in line mode 2022-05-26 17:02:05 -07:00
Keith Simmons
d7d17b2148 WIP line mode operations 2022-05-26 17:02:05 -07:00
Antonio Scandurra
eedb29963c Implement CopyPath 2022-05-26 16:45:41 +02:00
Antonio Scandurra
26295334d2 Remove accidentally checked-in theme assets and scripts 2022-05-24 14:31:58 +02:00
Max Brunsfeld
acf9a59cc2
Merge pull request #1027 from zed-industries/missing-menu-commands
Add missing File menu commands, improve handling of unsaved multibuffers
2022-05-23 21:29:32 -07:00
Max Brunsfeld
7f92401bca Add key binding and menu item for Save All 2022-05-23 16:06:56 -07:00
Nathan Sobo
d8dbbf1c05 Merge remote-tracking branch 'origin/main' into invite-codes-2 2022-05-23 15:46:39 -06:00
Max Brunsfeld
21206800bc Add "Close Window" command 2022-05-20 16:53:03 -07:00
Max Brunsfeld
b08cad9ef5 Add "Save As" command 2022-05-20 16:24:42 -07:00
Max Brunsfeld
e72f5cea22 Add "New Window" command 2022-05-20 11:01:20 -07:00
Nathan Sobo
eedb8ba59f Add affordance to copy user's invite link if they have a code
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-05-19 17:57:46 -06:00
Max Brunsfeld
de99dcb0c3 Add cmd-n and cmd-o to the default keymap 2022-05-19 14:39:06 -07:00
Max Brunsfeld
7445197f4d Derive application menu key equivalents from the keymap 2022-05-19 10:04:01 -07:00
Max Brunsfeld
47591ec9a7 Ensure /assets/themes directory exists 2022-05-18 12:43:26 -07:00
Max Brunsfeld
ec41dd9f18 Remove checked-in theme JSON files
* Generate the themes on build
* In debug builds, watch the theme sources. When they change, re-generate
  the themes and reload the current theme, removing the need for the
  `theme_selector::Reload` command.

Co-authored-by: Keith Simmons <keith@zed.dev>
2022-05-18 12:43:26 -07:00
Nate Butler
72ab5740f1 Update light theme borders 2022-05-17 13:14:11 -04:00
Antonio Scandurra
225536accc Merge branch 'main' into request-to-join-project 2022-05-17 14:55:20 +02:00
Nathan Sobo
7c3eebf93e Refine messages on waiting to join screen and include host avatar 2022-05-16 16:52:31 -06:00
Nate Butler
af5bb92847 Rework color schemes
Co-Authored-By: Keith Simmons <keith@the-simmons.net>
2022-05-16 18:11:22 -04:00
Antonio Scandurra
aa90c06012 Display a temporary window while remote project is loading 2022-05-16 17:45:50 +02:00
Max Brunsfeld
be51a58311 Start work on requesting to join projects
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-05-12 17:53:11 -07:00
Antonio Scandurra
c7802af88b Use cmd-9 and cmd-shift-9 to toggle contacts panel focus/visibility 2022-05-12 12:11:27 +02:00
Max Brunsfeld
f54d74eda9 Merge branch 'main' into contact-panel-keyboard-nav 2022-05-11 17:45:44 -07:00
Max Brunsfeld
72e7079005 Add the ability to expand and collapse sections of the contacts panel
Also, allow joining projects using the keyboard.
2022-05-11 17:28:35 -07:00
Max Brunsfeld
615319b2ab Rework the contact panel's styling to allow keyboard navigation
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-05-11 16:50:51 -07:00
Max Brunsfeld
0ba656aa0e Improve layout and styling of contact notifications
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-05-11 14:20:05 -07:00
Max Brunsfeld
3bc9b8ec85 Add notifications for accepted contact requests
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-05-11 11:39:01 -07:00
Antonio Scandurra
933a1f2cd6 Show badge when there are pending contact requests
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-05-11 17:39:03 +02:00
Antonio Scandurra
97d3616ed9 Show incoming request notification and implement dismissal 2022-05-11 15:13:37 +02:00
Max Brunsfeld
08a7543913 WIP - start work on keyboard navigation in contacts panel 2022-05-10 21:45:49 -07:00
Nathan Sobo
bd2ae304fa Start on workspace notifications 2022-05-10 17:46:46 -06:00
Max Brunsfeld
c5360172e4
Merge pull request #979 from zed-industries/contacts
Manage users' contact relationships on the server
2022-05-10 15:11:30 -07:00
Keith Simmons
6c57fcf9be
Merge pull request #968 from zed-industries/vim-visual-mode
Vim visual mode
2022-05-10 12:51:58 -07:00
Max Brunsfeld
b33cbccc31 Improve layout of contact panel rows
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-05-10 11:14:31 -07:00
Keith Simmons
37c921f972 Initial visual mode 2022-05-10 11:12:28 -07:00
Max Brunsfeld
2cf9659f88 Style the buttons in the contact panel and contact finder
Co-authored-by: Nathan Sobo <nathan@zed.dev>
Co-authored-by: Antonio Scandurra <me@as-cii.com>
2022-05-10 10:47:25 -07:00
Antonio Scandurra
a121576545 WIP 2022-05-10 18:25:47 +02:00
Antonio Scandurra
f81edb88fe Pull out contact finder as a picker
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-05-10 16:43:51 +02:00
Nathan Sobo
b721f0064a Start on contact finder modal
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-05-10 07:24:14 -06:00
Antonio Scandurra
09580516a0 Start on adding icon for requesting contacts 2022-05-10 12:09:24 +02:00
Antonio Scandurra
44f37afa95 Define data types for the new contacts model
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-05-06 16:24:44 +02:00
Max Brunsfeld
ea81737a88 Allow fuzzy-search for potential contacts in the contacts panel
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-05-05 14:14:44 -07:00
Nathan Sobo
342bdfc7e0 Render a user query editor in the contacts panel 2022-05-05 10:24:21 -06:00
Max Brunsfeld
4b1c46fa45 Allow deleting entries from the project panel 2022-05-04 18:00:23 -07:00
Max Brunsfeld
8fdc5c9be3 Improve the appearance of project panel filename editor
* Always layout single-line editors with a fixed height
* Preserve directory chevron when editing folder names
* Allow theming the filename editor

Co-authored-by: Antonio Scandurra <me@as-cii.com>
2022-05-04 10:28:44 -07:00
Max Brunsfeld
12d45f1655 Clean up project panel theme 2022-05-04 10:28:08 -07:00
Antonio Scandurra
aa4919a76f
Merge pull request #964 from zed-industries/transpose
Introduce `Editor::transpose` bound to `ctrl-t`
2022-05-04 10:04:55 +02:00
Keith Simmons
5e2e859413
Merge pull request #947 from zed-industries/misc-normal-commands
Misc vim normal commands
2022-05-03 10:29:29 -07:00
Antonio Scandurra
3ee4d90c19 Parameterize avatar_margin and assign it a default of 8 2022-05-03 18:04:53 +02:00
Antonio Scandurra
070607c821 Implement Editor::transpose without accounting for multi-byte chars 2022-05-03 14:33:43 +02:00
Keith Simmons
b2138f5935 Add insert line above and below 2022-05-02 11:49:10 -07:00
Keith Simmons
833a7b6e76 WIP just missing insert line above and below 2022-05-02 11:49:10 -07:00
Antonio Scandurra
5d0c3c43e8 Add right padding to titlebar instead of margins on elements
This fixes a visual glitch causing the avatar to be shown too close to
the right edge of the window when the share icon was not present.
2022-05-02 09:27:37 +02:00
Nate Butler
f63444ce6d Update base16 theme occurrence style
- Update base16 theme occurrence style to be visible
- Update match styles to use the blend scaling value
  - This makes it so matches are less loud in light themes
2022-04-30 00:47:07 -04:00
Nate Butler
f4dbe4d976 Update projectBrowser styles 2022-04-29 01:35:58 -04:00
Nate Butler
67181a16c0 Update search style 2022-04-29 01:24:21 -04:00
Nate Butler
70a7bd2747 Style out of date message 2022-04-29 01:06:44 -04:00
Nate Butler
a352f8bad4 Update status bar style 2022-04-29 00:59:08 -04:00
Max Brunsfeld
d9497d49de 🎨 Use Interactive wrapper for search option buttons 2022-04-28 15:29:03 -07:00
Max Brunsfeld
8481834847 Give hover state to picker items, keystrokes in command palette 2022-04-28 15:17:56 -07:00
Max Brunsfeld
a60c75e343 Rename Selector -> Picker in theme 2022-04-28 14:45:32 -07:00
Max Brunsfeld
c51d5b9165 Remove accidental background color on unhovered ok indicator
A follow-up to #921
2022-04-28 12:44:37 -07:00
Max Brunsfeld
e48a975b1e Give no-error diagnostic indicator a hover state 2022-04-28 12:35:20 -07:00
Max Brunsfeld
6578ae5393 Use Interactive helper to theme titlebar buttons 2022-04-28 12:08:15 -07:00
Nate Butler
b41bf65c96 Statusbar style tweaks 2022-04-28 14:52:31 -04:00
Max Brunsfeld
772f4579fc Restructure status bar theme to style interactive elements more concisely
Introduce an `Interactive` wrapper type that allows themes to selectively
override properties of items in a hovered or active state.
2022-04-28 10:59:32 -07:00
Max Brunsfeld
e88156645d Update the styling of the lsp status indicator 2022-04-27 16:48:33 -07:00
Max Brunsfeld
a3700e0dd8 Combine diagnostic status w/ diagnostic message indicators
Improve the indicator styling
2022-04-27 14:25:39 -07:00
Max Brunsfeld
9e87be722e Start re-styling diagnostic indicator in status bar 2022-04-27 14:25:39 -07:00
Nate Butler
b23ff7c3ad Update semantic status colors in all themes
- for `ok`, `error`, `warning` and `info`:
  - backgroundColor values were all placeholder. Add real values
  - Update border values to new style
2022-04-27 14:25:39 -07:00
Max Brunsfeld
68a7f99c14 Update sidebar toggle icons 2022-04-27 14:25:39 -07:00
Max Brunsfeld
7f63ed3835 Allow styling sidebar icons and groups in themes 2022-04-27 14:25:39 -07:00
Max Brunsfeld
0291f2d54a Move sidebar toggle buttons to the status bar 2022-04-27 14:25:39 -07:00
Antonio Scandurra
c955645bc0 Update share icon and swap its posiiton 2022-04-26 14:35:13 +02:00
Max Brunsfeld
5ec30323b8
Merge pull request #913 from zed-industries/update-themes
Add sulphurpool theme, update solarized
2022-04-25 16:16:56 -07:00
Nate Butler
a2591ce1e2 Create common base16 theme constructor
Co-Authored-By: Keith Simmons <keith@the-simmons.net>
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2022-04-25 19:11:38 -04:00
Nate Butler
9338cd9cf8 Add cave theme
Sneaking one more in, cave is a nice cool dark theme that isn't super blue.
2022-04-25 18:19:49 -04:00
Nate Butler
a3adefcf0d Remove generated JSON for the Forest theme 2022-04-25 18:14:10 -04:00
Nate Butler
e28d1828f0 Add sulphurpool theme, update solarized
Co-Authored-By: Keith Simmons <keith@the-simmons.net>
2022-04-25 18:07:24 -04:00
Max Brunsfeld
ec6652af73 Remove some novel key bindings
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-04-25 11:56:03 -07:00
Keith Simmons
50b5b56f60 Update solarized theme to match main 2022-04-22 15:04:45 -07:00
Keith Simmons
a1576b7dca fix solarized element backgrounds 2022-04-22 14:58:45 -07:00
Keith Simmons
d0ee686e09 add solarized dark and light syntax themes 2022-04-22 14:58:45 -07:00
Keith Simmons
c61ae6f31f
Merge pull request #877 from zed-industries/misc-normal-commands
Add inclusive vs exclusive motions to vim mode
2022-04-22 14:25:56 -07:00
Max Brunsfeld
f881c2aa92
Merge pull request #892 from zed-industries/syntax-theme-fixes
Syntax theme fixes
2022-04-22 13:24:31 -07:00
Max Brunsfeld
d330f909e6 Allow each theme to style all aspects of syntax highlighting
Previously, some syntax highlights were controlled in editor.ts,
and shared across all themes.

Co-authored-by: Keith Simmons <keith@zed.dev>
2022-04-22 12:43:01 -07:00
Nathan Sobo
92f040df00 Apply cursor styles during paint
This makes the editor's cursor an IBeam and properly deals with nested cursor styles.

Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-04-22 10:54:18 -06:00
Nathan Sobo
30f2604a8d Map shift-backspace to backspace
A user pointed out that it was weird that this didn't work and violated their muscle memory.
2022-04-22 06:04:12 -06:00
Keith Simmons
5ea782de21 Add inclusive vs exclusive motions to vim mode 2022-04-21 16:50:23 -07:00
Max Brunsfeld
14cf51638c 🎨 Tweak order of default key bindings 2022-04-21 15:28:15 -07:00
Max Brunsfeld
490b65b55f Reuse Confirm action in chat panel, go-to-line, and project search 2022-04-21 15:24:05 -07:00
Max Brunsfeld
d43f194342 Organize default key bindings into categories 2022-04-21 14:07:14 -07:00
Max Brunsfeld
066b4faf61 Restructure KeyMap file, make it easy to edit in Zed
Add a JSON schema for this file so that autocomplete can be used for the actions.
2022-04-21 13:35:10 -07:00
Antonio Scandurra
fb87bacc7e Merge branch 'main' into auto-update 2022-04-21 09:53:06 +02:00
Nate Butler
ea11f2e183 Increase min-width for all Pickers, minor style changes
- Increases the Picker min-width from 500 to 540
- Makes some changes to the styling of keyboard shortcuts in the command palette
2022-04-20 11:54:57 -04:00
Nate Butler
484204c2a0 Reduce key icon size to avoid extra padding on command palette item
- Also remove unneeded imports
2022-04-19 02:48:35 -04:00
Nate Butler
408f8d4297 Update inputs, tabs, pickers, autocomplete 2022-04-19 02:34:45 -04:00
Max Brunsfeld
0af129d50a Use primary text color for keystrokes in command palette 2022-04-18 18:14:45 -07:00
Max Brunsfeld
3bbc021a7e Use Picker in Outline view 2022-04-18 17:11:39 -07:00
Max Brunsfeld
bde52d5c93 Add basic styling to keystrokes in command palette 2022-04-18 17:11:37 -07:00
Max Brunsfeld
4630071f58 Start work on a command palette 2022-04-18 17:11:08 -07:00
Nate Butler
2a72c618b8
Merge pull request #833 from zed-industries/update-dark-theme-feature-color
update feature color in dark theme
2022-04-18 19:35:42 -04:00
Nate Butler
ec704cae25 update feature color in dark theme 2022-04-17 22:37:08 -04:00
Keith Simmons
63278041e1 Add c and d operators to vim normal mode
Extracted motions from normal mode
Changed vim_submode to be vim_operator to enable better composition of operators
2022-04-15 16:05:50 -07:00
Max Brunsfeld
2ea2ba358f Add back toggle sidebar key bindings 2022-04-13 11:14:10 -07:00
Max Brunsfeld
1e0182f6c7 Add back key binding for confirming completions with tab 2022-04-13 10:35:05 -07:00
Nate Butler
726045e78e Update theme feature colors
- border focus color
- Text feature color
- Match & active match highlight color

Matches should be more legible now in both themes. `activeMatch` is still not hooked up on the rust side, so it won't take any effect yet.

Co-Authored-By: gibusu <95764254+gibusu@users.noreply.github.com>
2022-04-12 12:44:38 -04:00
Max Brunsfeld
949fbe7cd3 Allow dumping the project diagnostic view's state as JSON
Also, improve DebugElements action so that it shows the JSON in an editor.

Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-04-11 19:51:46 -07:00
Max Brunsfeld
add0dad6d7 Use '*' to represent the default context in keymap files
Co-authored-by: Keith Simmons <keith@zed.dev>
2022-04-11 17:17:03 -07:00
Max Brunsfeld
c065f283aa Move assets to their own crate, load keymaps in vim tests
Also, move assets folder to the top-level.

Co-authored-by: Keith Simmons <keith@zed.dev>
2022-04-11 15:54:52 -07:00