Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature] Tabless editing #6424

Open
1 of 6 tasks
tychedelia opened this issue Jan 24, 2024 · 5 comments
Open
1 of 6 tasks

[Feature] Tabless editing #6424

tychedelia opened this issue Jan 24, 2024 · 5 comments
Labels
enhancement [core label] setting Feedback for preferences, configuration, etc tabs Feedback for tabs behavior, navigation, style, etc

Comments

@tychedelia
Copy link
Contributor

tychedelia commented Jan 24, 2024

Check for existing issues

  • Completed

Describe the feature

I'd like to propose this feature as a roll up of a few different existing issues. Basically, the idea is to support a kind of workflow that's well supported in IntelliJ, which is to hide tabs and work only on a stack of recently opened files.

Basically, the workflow is that I never want to look at the file tree, don't want to see what tabs are open. Instead I want to only use search dialogs to access my "stack" of currently opened files. This helps reduce visual clutter but also is a good keyboard first workflow.

I believe this could be implemented as a combination of QoL fixes that benefit all users, as well as some new UI elements. Not all of these are necessary, but the missing accumulation of such unfortunately makes it impossible for me to use Zed instead of IntelliJ. 😭

There's a few outstanding changes and features that would accomplish this:

  • Select the 2nd item by default in the file finder to allow quickly switching between files.
  • Add option to hide tabs.
  • Allow currently open pseudo-files (terminal, etc) to be searched for.
  • Implement recent file finder that is distinct from file finder. This is important, e.g., in a rust project that has hundreds of mod.rs files, the recent file view narrows this to only "open" files, allowing better auto-completion.
  • Implement a recent location finder. Beyond recent files, this allows the user to store a stack of recent edited locations, allowing quickly jumping between even locations in the same file.

Existing issues:

If applicable, add mockups / screenshots to help present your vision of the feature

@tychedelia tychedelia added admin read Pending admin review enhancement [core label] triage Maintainer needs to classify the issue labels Jan 24, 2024
@JosephTLyons JosephTLyons added tabs Feedback for tabs behavior, navigation, style, etc setting Feedback for preferences, configuration, etc and removed triage Maintainer needs to classify the issue admin read Pending admin review labels Jan 25, 2024
@JosephTLyons
Copy link
Contributor

Linking this related issue:

@samuelcotterall
Copy link

Select the 2nd item by default in the file finder to allow quickly switching between files.

Whilst I’m not so concerned with “visual clutter”, I’d appreciate this behaviour. My expectation is to hit cmd + p, then enter to open the previous file.

I’ve never used IntelliJ, but I’m familiar with this feature from Sublime Text and have since reproduced it in VSCode (as described in #4663).

@tychedelia
Copy link
Contributor Author

Select the 2nd item by default in the file finder to allow quickly switching between files.

Whilst I’m not so concerned with “visual clutter”, I’d appreciate this behaviour. My expectation is to hit cmd + p, then enter to open the previous file.

Yes! This is my biggest blocker right now too.

SomeoneToIgnore pushed a commit that referenced this issue Feb 1, 2024
This PR completes the first task of the Tabless editing feature (#6424).
It makes file finder select the previously opened file by default which
allows the user to quickly switch between two last opened files by
clicking `Cmd-P + Enter`.

This feature was also requested in #4663 comments.

Release Notes:
* Improved file finder selection: currently opened item is not selected now
@alygin
Copy link
Contributor

alygin commented Feb 5, 2024

Related conversation in a PR (thanks to @JosephTLyons):

@gldtn gldtn mentioned this issue Feb 8, 2024
17 tasks
@alygin alygin mentioned this issue Feb 10, 2024
4 tasks
mikayla-maki added a commit that referenced this issue May 8, 2024
This PR is another step to tabless editing (#6424, #4963). It adds
support for tab bar settings that allow the user to change its placement
or to hide completely.

Configuraton:

```json
"tab_bar": {
  "show": true
}
```

Placemnet options are "top", "bottom" and "no".

This PR intentionally doesn't affect tab bars of other panes (Terminal
for instance) to keep code changes small. I guess we'll do the rest in
separate PRs.

Release Notes:

- Added support for configuring the editor tab bar (part of #6424,
#4963).

---------

Co-authored-by: Mikayla <mikayla@zed.dev>
osiewicz pushed a commit to RemcoSmitsDev/zed that referenced this issue May 18, 2024
This PR is another step to tabless editing (zed-industries#6424, zed-industries#4963). It adds
support for tab bar settings that allow the user to change its placement
or to hide completely.

Configuraton:

```json
"tab_bar": {
  "show": true
}
```

Placemnet options are "top", "bottom" and "no".

This PR intentionally doesn't affect tab bars of other panes (Terminal
for instance) to keep code changes small. I guess we'll do the rest in
separate PRs.

Release Notes:

- Added support for configuring the editor tab bar (part of zed-industries#6424,
zed-industries#4963).

---------

Co-authored-by: Mikayla <mikayla@zed.dev>
@net
Copy link

net commented May 30, 2024

Many thanks for shipping tab bar hiding ❤️

File tabs should be a relic of the past. Vim and Emacs had this one correct from the start.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement [core label] setting Feedback for preferences, configuration, etc tabs Feedback for tabs behavior, navigation, style, etc
Projects
None yet
Development

No branches or pull requests

5 participants