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

Readable and Combinable Profile #172756

Closed
josStorer opened this issue Jan 30, 2023 · 1 comment
Closed

Readable and Combinable Profile #172756

josStorer opened this issue Jan 30, 2023 · 1 comment
Assignees
Labels
user-profiles User profile management

Comments

@josStorer
Copy link

Related Issue:

The current exported .code-profile file is defined as follows

interface IUserDataProfileTemplate {
	readonly name: string;
	readonly shortName?: string;
	readonly settings?: string;
	readonly keybindings?: string;
	readonly tasks?: string;
	readonly snippets?: string;
	readonly globalState?: string;
	readonly extensions?: string;
}

The actual output can be found at #148829 (comment)

@sandy081 thinks that editing a .code-profile file is a good candidate for an extension, but I think it would be more beneficial to generate more readable json files directly from vscode

For example, we can create some repos like awesome-vscode-profiles by community, or we can build an official profile marketplace to create a more out-of-the-box experience for different development environments

The current workspace approach and Extension Pack approach available in vscode are not good enough for the user experience, and with vscode Profile, we can switch development environments/configurations more easily, but the current .code-profile output file does not facilitate code management, which is not conducive to community development, and I think it is also bad to ask everyone to install a third-party extension for editing

With vscode Profile, community project scaffolding, and automated configuration scripts for different development environments, it would be possible to help users set up a development environment in a split second

In addition, I also suggest that different profiles be enabled at the same time, so that the user can combine them and choose which profile's configuration items to take. And for the item of extensions, we can enable multiple profiles

For example, we can enable a profile, the extensions of which are suitable for general text editing, such as TODO, KeyMap, etc., while for some programming languages (e.g. c#), or specific development environments (e.g. Unity3D), we can enable the special profiles of them at the same time

Maybe profiles are not designed to meet these, but I think it's a useful feature to be able to switch quickly between different environments instead of enabling them all. I don't think there is an elegant solution for vscode to use currently.

@sandy081
Copy link
Member

sandy081 commented Mar 2, 2023

Thanks for the feedback.

@sandy081 thinks that editing a .code-profile file is a good candidate for an extension, but I think it would be more beneficial to generate more readable json files directly from vscode

At that time, VS Code does not have a way to define/preview a profile. Since we have made profile a first class concept in VS Code and one can use VS Code to draft a profile and generate .code-profile template out of it. There is no need of an extension to draft or preview a profile now. Please note that the some of the information in the file is cryptic (global state). So I still think there is no strong reason to make the profile template a readable.

In addition, I also suggest that different profiles be enabled at the same time,

Interesting thought! Since the feature is still new and fresh. I would wait for more user feedback.

Closing this issue, since there is no action to be taken here.

@sandy081 sandy081 closed this as completed Mar 2, 2023
@github-actions github-actions bot locked and limited conversation to collaborators Apr 16, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
user-profiles User profile management
Projects
None yet
Development

No branches or pull requests

4 participants