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

Create new file from a list of customizable templates straight from the folder context menu #27712

Open
cgaarden opened this issue Aug 1, 2023 · 12 comments · May be fixed by #33136
Open

Create new file from a list of customizable templates straight from the folder context menu #27712

cgaarden opened this issue Aug 1, 2023 · 12 comments · May be fixed by #33136
Assignees
Labels
Area-Context Menu Related to context menu bugs or enhancements. Usually this is the File Explorer context menu Idea-New PowerToy Suggestion for a PowerToy Needs-Community Feedback We need additional help with how something should act / look Product-File Explorer Power Toys that touch explorer like Preview Pane Status-In progress This issue or work-item is under development

Comments

@cgaarden
Copy link

cgaarden commented Aug 1, 2023

Description of the new feature / enhancement

Create new file or folder from a list of customizable templates straight from the folder context menu

Steps to create a new object

  1. In a folder (incl. the Desktop) right click / bring up the context menu
  2. From a new submenu "Create" (or some other name)
  3. Select the template of your choice
  4. After clicking, the new file/folder/object is copied from the template and file object is entered into rename mode

Steps to configure the list of templates

  1. In a folder (incl. the Desktop) right click / bring up the context menu
  2. From a new submenu "Create" (or some other name)
  3. Click the "Open Templates" folder menu item

Other options

  • Remove or Replace or integrate the existing "New" submenu items
  • Prompt/wizard to help me customize the object to be created. e.g. add support for replacement of certain tokens in plain text - can be made more advanced over time with customizable wizards on create etc.

I implemented this many years ago, and love to implement/partner on a version as part of PowerToys. See also https://www.onegreatworld.com/Download/Windows/My%20Templates/

Scenario when this would be used?

When creating new objects, the existing New context menu is practically useless (sorry! :-) )

  1. I can't easily configure the list of items
  2. I can't configure multiple of the same object type
  3. I can't template folders

Supporting information

https://www.onegreatworld.com/Download/Windows/My%20Templates/

@cgaarden cgaarden added the Needs-Triage For issues raised to be triaged and prioritized by internal Microsoft teams label Aug 1, 2023
@Aaron-Junker Aaron-Junker added the Idea-New PowerToy Suggestion for a PowerToy label Aug 29, 2023
@Jay-o-Way
Copy link
Collaborator

Jay-o-Way commented Jan 27, 2024

Sounds like you want specific files in the c:\Windows\ShellNew folder. Have you tried placing new files here? They should be used as the template when you click "New >" in the menu.
/needinfo

@microsoft-github-policy-service microsoft-github-policy-service bot added Needs-Author-Feedback The original author of the issue/PR needs to come back and respond to something and removed Needs-Triage For issues raised to be triaged and prioritized by internal Microsoft teams labels Jan 27, 2024
@cgaarden
Copy link
Author

Hi Jay-o-Way,

Thank you for having a look!

AFAIK, I'm don't think you can customize the existing "New" menu without using the registry. e.g. you copy your file template into a folder that windows have access to, and then you add a FileName key under the .ext/... /ShellNew.

Note: Even when using the registry there are a couple of limitations of the existing "New" functionality:

  1. You can't have multiple versions of the same file type, e.g. if you wanted multiple Word document.docx templates or Markdown.md templates you couldn't do that.

  2. You can't template folders, e.g. let's say that you have a commonly used "New business template folder" that includes Outreach.docx, Presentation.pptx, etc. you wouldn't be able to template that folder and have all those nested objected copied as well.

  3. With the proposed way, there will be a per user specific "New+ Template" folder, and users will be able to just drop files and folders into that folder. 2) And then when want to create a file or folder, they right click then we just render all those files in a "New+" context menu and then New+ will just copy the file/folder over to the destination folder. 3) Similarly, if they want to remove a template from the New+ menu, they just remove the file/folder from the "New+ Template" folder

Kind regards,
Christian

Here a screenshot of what I mean:
image

@microsoft-github-policy-service microsoft-github-policy-service bot added Needs-Triage For issues raised to be triaged and prioritized by internal Microsoft teams Needs-Team-Response An issue author responded so the team needs to follow up and removed Needs-Author-Feedback The original author of the issue/PR needs to come back and respond to something labels Jan 28, 2024
@Jay-o-Way
Copy link
Collaborator

You've got a point there.

@cgaarden
Copy link
Author

@Jay-o-Way I've created an early spec and made it available here https://docs.google.com/document/d/10R9UiUanGkTqnGfuBNuymJYlOhilfaKMextq86Slzh0/edit

Do you know if there might be interest in making something like this part of PowerToys or do you already have good signal that is likely not the case?

Either way, thanks again!

Best regards, Christian

@cgaarden
Copy link
Author

cgaarden commented Mar 3, 2024

A short video of a very early version of New+ running on my local dev box

New+.very.very.early.version.mp4

A recording in slightly higher fidelity
https://youtu.be/6zZ_6i9JWpE?si=EFO192LrhHJOT3A0

@ethanfangg
Copy link
Contributor

I'd be curious to know what you have in mind for settings here.

I would say turning off/replacing the existing "New..." menu would be a non-goal for this work (can always be addressed elsewhere/separately if needed).

For me, the biggest open question is where the templates folder is kept & can the user change or specify the path? Essentially it sounds like we would be duplicating files/folders from that path into the current context/directory. Do we overcomplicate things for the user by having them need to think about where on their device a template is stored and should we instead have the settings for this feature contain some sort of "Upload" that can handle the addition of new templates and show all existing templates in the settings (so that the user doesn't need to navigate to some templates folder in File Explorer)?

@ethanfangg
Copy link
Contributor

Some user cans for consideration...

  • Users can enable/disable New+ (Off by default)
  • Users can reorder items in the New+ list
  • Users can add new items/templates to their New+ list of options
  • Users can remove items/templates from their New+ list of options
  • Users can edit existing items/templates in their New+ list of options
  • Users can specify an icon for each of the items/templates in their New+ list of options
  • Users can engage in renaming their newly created items directly after creation by New+

New+ should also only show up as an item if a right-click is made in File Explorer AND has no selection.

@cgaarden
Copy link
Author

Some user cans for consideration...

  • Users can enable/disable New+ (Off by default)
  • Users can reorder items in the New+ list
  • Users can add new items/templates to their New+ list of options
  • Users can remove items/templates from their New+ list of options
  • Users can edit existing items/templates in their New+ list of options
  • Users can specify an icon for each of the items/templates in their New+ list of options
  • Users can engage in renaming their newly created items directly after creation by New+

New+ should also only show up as an item if a right-click is made in File Explorer AND has no selection.

Thanks a lot @ethanfangg! Really greatly appreciate your thoughts and feeback, and for sharing these use cases and previous thoughts.

I'm building out the initial spec here including your feedback. https://docs.google.com/document/d/10R9UiUanGkTqnGfuBNuymJYlOhilfaKMextq86Slzh0/edit (please let know if you can't access/comment etc. )

Re the templates/items themselves, they would by default be stored under the user's Document folder. And there would just be one copy of the template per user per machine.

One drawback with storing the templates as regular Windows Explorer items is that the user can't easily reorder items other than naming items alphabetically. We could potentially introduce a new folder view type or use could just name them 1. ... 2. .... and we can strip the numbering (as an example for Arabic numerals sorted language)

Happy to provide an offline demo etc. of a very early implementation. LMK.

All the best,
Christian

@cgaarden
Copy link
Author

Latest version

image

@Jay-o-Way
Copy link
Collaborator

@cgaarden I see you link to the onegreatworld website, but would you consider a GitHub repository? This would be very useful for people who want to look into how it works, and people who want to help you etc. You can also place docs/specs here, instead of Google.

@cgaarden
Copy link
Author

@cgaarden I see you link to the onegreatworld website, but would you consider a GitHub repository? This would be very useful for people who want to look into how it works, and people who want to help you etc. You can also place docs/specs here, instead of Google.

@Jay-o-Way just to confirm. Are you suggesting that I create a new public GitHub repository with the latest code and spec before possible PowerToys repository inclusion? And then collab in the new separate repo until the spec and toy has been further developed? And then at that later point we consider inclusion in PowerToys?

Thank you!

@Jay-o-Way
Copy link
Collaborator

@cgaarden Well, that is exactly what I thought of 🙂 But that's mostly because I don't know how or "where" you currently build your app, and how much it's finished. Or, how much it's compatible with PowerToys, if that's what you're going for. But there have been other new applets in the past that didn't have this either, so it's not required. It's all up to you.

@ethanfangg ethanfangg added Needs-Community Feedback We need additional help with how something should act / look Status-In progress This issue or work-item is under development Product-File Explorer Power Toys that touch explorer like Preview Pane Area-Context Menu Related to context menu bugs or enhancements. Usually this is the File Explorer context menu and removed Needs-Triage For issues raised to be triaged and prioritized by internal Microsoft teams Needs-Team-Response An issue author responded so the team needs to follow up labels May 3, 2024
@cgaarden cgaarden linked a pull request May 29, 2024 that will close this issue
10 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area-Context Menu Related to context menu bugs or enhancements. Usually this is the File Explorer context menu Idea-New PowerToy Suggestion for a PowerToy Needs-Community Feedback We need additional help with how something should act / look Product-File Explorer Power Toys that touch explorer like Preview Pane Status-In progress This issue or work-item is under development
Projects
Status: No status
Development

Successfully merging a pull request may close this issue.

4 participants