madskristensen / filenesting Goto Github PK
View Code? Open in Web Editor NEWNest files in Solution Explorer
License: Other
Nest files in Solution Explorer
License: Other
I'm not sure if the csproj files support this ability, but some sort of virtual parent node would be great.
For example, in my MVC project, I would like to put all of my third-party JS libraries in a ThirdParty "folder", but I don't want it to be a physical folder on the file system, just a collapsible node in Solution Explorer. Currently I have a 0-byte text file called Third Party and just nest everything under that, but that's pretty hacky.
Hi,
I get this error message "An item with the same key has already been added" in a message box when I try to nest (right click/File Nesting/Nest item...) a js file and also a js.map file generated by a ts file. Even if I add those files to the project, I get the same result. I didn't take a look at the code yet, but I guess there's a dictionary involved there...
My project is an ASP.NET web app with many other ts files in the Scripts folder. The name of the file is something like company.area.module.ts (.js and .js.map). There are also other folders under Scripts.
Could you please take a look?
Thanks.
When opening any solution first time after Visual Studio starts, a generic error message is displayed.
When opening any solution first time after Visual Studio starts, a generic error message is displayed:
The 'VSPackage' package did not load correctly.
The problem may have been caused by a configuration change or by the installation of another extension. You can get more information by examining the file 'C:\Users\Giorgi.Chakhidze\AppData\Roaming\Microsoft\VisualStudio\12.0\ActivityLog.xml'.
Restarting Visual Studio could help resolve this issue.
From ActivityLog.xml it is clear, that File Nesting depends on Microsoft.VisualStudio.Shell.11.0
assembly Version=14.0.0.0
, - a component of Visual Studio 2015 (which is NOT installed).
Relevant entries from ActivityLog.xml:
<entry>
<record>1404</record>
<time>2016/04/18 12:18:32.350</time>
<type>Information</type>
<source>VisualStudio</source>
<description>Entering function CVsPackageInfo::HrInstantiatePackage</description>
<guid>{6C799BC4-0D4C-4172-98BC-5D464B612DCA}</guid>
</entry>
<entry>
<record>1405</record>
<time>2016/04/18 12:18:32.350</time>
<type>Warning</type>
<source>VisualStudio</source>
<description>Unexpected system error mode before loading package [VSPackage]</description>
<guid>{6C799BC4-0D4C-4172-98BC-5D464B612DCA}</guid>
</entry>
<entry>
<record>1406</record>
<time>2016/04/18 12:18:32.350</time>
<type>Information</type>
<source>VisualStudio</source>
<description>Begin package load [VSPackage]</description>
<guid>{6C799BC4-0D4C-4172-98BC-5D464B612DCA}</guid>
</entry>
<entry>
<record>1407</record>
<time>2016/04/18 12:18:32.350</time>
<type>Error</type>
<source>VisualStudio</source>
<description>CreateInstance failed for package [VSPackage]</description>
<guid>{6C799BC4-0D4C-4172-98BC-5D464B612DCA}</guid>
<hr>80070002</hr>
<errorinfo>Could not load file or assembly 'Microsoft.VisualStudio.Shell.11.0, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified.</errorinfo>
</entry>
<entry>
<record>1408</record>
<time>2016/04/18 12:18:32.350</time>
<type>Error</type>
<source>VisualStudio</source>
<description>End package load [VSPackage]</description>
<guid>{6C799BC4-0D4C-4172-98BC-5D464B612DCA}</guid>
<hr>80004005 - E_FAIL</hr>
<errorinfo>Could not load file or assembly 'Microsoft.VisualStudio.Shell.11.0, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified.</errorinfo>
</entry>
Package that is intended for Visual Studio 2013 should not have dependency on Visual Studio 2015.
Only adding this because VS 2015 is listed as being supported (even if it's not officially released yet)
This is happening in an ASP.NET 5 website in Visual Studio 2015 RC. By default, Visual Studio is doing some nesting automatically with similarly named files, but I wanted some more control over what is nested within what, so I got this extension. Unfortunately, when I try to right click and nest a file somewhere else, I get the error "Unable to add project item "path/to/file": ADDRESULT_Cancel", and when I try to un-nest a file, I get the error "Exception has been thrown by the target of an invocation". I've tried uninstalling and reinstalling with the same results. Any idea what's going on there?
Software:
trying to click on 'Auto-nest selected items', when one or several files are selected.
I suppose, this is because the assembly version 12.0 is from previous Visual Studio.
I'm testing on the Web Project and Cordova project in VS2015. And auto nesting files could work on typescript of web project but not on Cordova project,
It seems like the nesting filters only apply to specific file extensions. Is there a reason why C# is not included?
Un-nesting a nest item causes the un-nested item to be deleted from the file system. The entry for the item still exists in the project, however the original file is deleted.
Extension is deleted un-nested items, though it certainly shouldn't.
The file is un-nested but remains undeleted.
Pressing Alt+F normally opens the File menu. This is a fundamental key shortcut that extensions shouldn't touch. When the File Nesting extension is enabled, pressing Alt+F does not open the File menu. Instead, the status bar says, "(Alt+F) was pressed. Waiting for second key of chord...".
This a regression in FileNesting 1.8.
Hi @madskristensen,
I recently want to use this extension but get an error.
For some types of project (here PHP created with PHP Tools for Visual Studio by Devsense) the feature implemented by this extension simply doesn't work.
More specifically, when it's inside a subfolder, the Un-nest option is available but raise the error "This action isn't valid with the current config" on click.
Visual Studio 2013.2
Project file extension is .phpproj
.
I guess this is not the simplest thing to do in the VS api, but that would be the best option from usability standpoint. Simply select multiple files, drop them on another file and the selected files getting grouped under the drop target.
This worked fine for me in VS2013, but since updating to 2015, this no longer works. I can manually nest each file & choose it's parent from a list, but this become a hassle very quickly.
I am using version 2.2.26 of this extension.
When I try to nest a file on a Shared Project, the ADDRESULT_Cancel is returned and the operation is cancelled.
Please add support for that project type. :)
We use the nesting tool for nesting resx files with a bunch of locales, but auto nesting doesn't recognize the files
For example, if we have resx files with different locales:
Content.resx
Content.en-FF.resx
Content.en-US.resx
Content.de-DE.resx
It should nest them as follows:
Content.resx
--Content.en-FF.resx
--Content.en-US.resx
--Content.de-DE.resx
Although I can nest them manually, this is seriously painful in some cases where we may have dozens of translations
I should be able to enable auto-nesting and/or select all my un-nested files and auto-next them all with one click.
The file format of FILENAME.{locale}.resx is pretty easily nestable without accidentally nesting items so I think it's a straightforward request.
Windows 7 x64
Visual Studio 2015 Preview
VC++ dll project.
File Nesting -> Nest Item -> stdafx.h -> Select Parent -> stdafx.cpp
I just installed this extension in Visual Studio 2013 to try it out but I always get the following error when I select a file and click on "Nest item...":
I should probably mention that this is in an portable F# project if that is causing issues. And these are the Visual Studio extensions I have installed:
When I manually nest a C# file, I have these files:
LocationService.cs
LocationService.android.cs
LocationService.ios.cs
LocationService.wpf.cs
LocationService.silverlight.cs
LocationService.winrt.cs
LocationService.wp.cs
I want to nest all the platform specific implementation under the LocationService.cs. To do so, I currently use manual nesting. When I hit the link manual, it shows the dialog with AccelerometerService (while it could be smarter and select the first item matching the first 5 characters, or even more advanced logic like:
Not sure if this is even possible, but it would be awesome if just dragging a file onto another in the solution explorer caused them to nest. No more need for menus I guess ;).
Currently, when you do that in VS, you get a useless "Cannot move [file]. The destination folder is the same as the source folder.". Would be awesome if that could be overriden for file-over-file dragging.
Hi, i really like this extension. But if you want to nest more then one single item, it is pretty hard to choose the right parent in the dialog box every time.
My suggestion is to allow to select multiple files and show only the selected files in the dialog instead of all (maybe all when only one file is selected). To make it simple, the files should be ordered by shortest first, because this is the most obvious thing.
Since the shortest is the most obvious thing, it would be also great to have an option to always choose the shorted and skip the dialog.
When I try to copy & paste (duplicate) a file in the Solution Explorer when the file is nested this is not working. Maybe it should work the same way like a normal file so you can easily duplicated it..
Actually, when I try to do this it doesn't work but seems Visual Studio freezes for a while and response very slowly 2-3 minutes..
File Nesting doesn't work at all in ASP.NET Core projects on Visual Studio 2015 Update 2.
It is expected that FileChild.txt should get nested under FileParent.txt.
Currently points to http://vsixgallery.com/https%3a%2f%2fgithub.com%2fmadskristensen%2fFileNesting%2fissues/
which doesn't work :)
every project have many scripts and styles files. some jquery files, some bootstrap files and other libraries that usually start with jquery. and bootstrap. or standard naming is a [library].[plugin].[js/css]
please add file nesting with folders that automatically create folder with library and show plugin.js in folder's.
I think it is good idea can add in new version of visual studio for easy manage many library scripts.
thank you for share this extension. please add advanced nesting algorithm for nesting files. for example by file extensions or regular expression pattern. and add map file to nesting javascript files.
Is it possible to get VS 2012 support with this extension?
file nesting does not work in visual studio 2013 nodejs projects.
When I am nesting i18n files, there are many, and they don't always follow the dot notation for determining region. The manual process is slow since it requires a popup window.
It would be nice to just have a (ctrl|alt) + shift + drag & drop feature, or on the popup, support several drag and drop changes that commit when closing the window.
when i right click to nest file i get this error
"unable to add project item wwwroot\css\main.css ADDResult_Cancel"
also none of other features are working like autonest
thanks in advanced.
Hi,
when I'm using the File Nesting add-in and the Funnel add-in together, then the "Analyzers" entry is no longer shown below the "References" entry of a project.
It seems to be some kind of interoperability problem because:
So it looks like if only 1 Add-in is enabled, then the Analyzers entry is shown but as soon as both are enabled, the Analyzers entry vanishes.
BR,
Ralf
Selected:
expected nesting, but nothing happend.
Every time I enable this extension after a while I find it disabled. If I enable it again than I can use it, but at the next startup of Visual Studio the extesion is again disabled.
File Nesting doesn't work in Node Tools projects on Visual Studio 2015.
project file extention ".njsproj"
I can't see the "File Nesting" option when right-click on files/project in Solution Explorer.
In addition, I tried to enable Auto Nesting via Tools -> Options -> File Nesting and its doesn't work.
Does not work anymore
This is not longer working on Visual studio 2013, does nothing automatically or manually.
Nest Files
Throw a Error when vs start.
Could not load file or assembly “VsixLogger, Version=1.0.15.0, Culture=en-US, PublicKeyToken=null” or one of its dependencies.
<entry>
<record>546</record>
<time>2016/04/16 02:45:55.222</time>
<type>Error</type>
<source>VisualStudio</source>
<description>SetSite failed for package [VSPackage][未能加载文件或程序集“VsixLogger, Version=1.0.15.0, Culture=en-US, PublicKeyToken=null”或它的某一个依赖项。系统找不到指定的文件。]:{ 在 MadsKristensen.FileNesting.VSPackage.Initialize()
 在 Microsoft.VisualStudio.Shell.Package.Microsoft.VisualStudio.Shell.Interop.IVsPackage.SetSite(IServiceProvider sp)}</description>
<guid>{6C799BC4-0D4C-4172-98BC-5D464B612DCA}</guid>
<hr>80070002</hr>
<errorinfo>未能加载文件或程序集“VsixLogger, Version=1.0.15.0, Culture=en-US, PublicKeyToken=null”或它的某一个依赖项。系统找不到指定的文件。</errorinfo>
</entry>
<entry>
<record>547</record>
<time>2016/04/16 02:45:55.223</time>
<type>Error</type>
<source>VisualStudio</source>
<description>End package load [VSPackage]</description>
<guid>{6C799BC4-0D4C-4172-98BC-5D464B612DCA}</guid>
<hr>80070002</hr>
<errorinfo>未能加载文件或程序集“VsixLogger, Version=1.0.15.0, Culture=en-US, PublicKeyToken=null”或它的某一个依赖项。系统找不到指定的文件。</errorinfo>
</entry>
In the folder "\AppData\Local\Microsoft\VisualStudio\14.0\Extensions\laxwgtzb.bak" :
In a Tools for Apache Cordova project, nesting doesn't work:
While trying to nest angular.min.js into angular.js
If I have 2 folders, both with parent files with the same name, and I try to nest, the nested item is attached to the wrong parent.
Note that the "file1.js" should be nested under "file1.ts" from the folder "NewFolder2", not the "file1.ts" from the folder "NewFolder1".
Thanks!
The plugin doesn't seem to be working for jsproj projects (specifically we are using the Multi-Device Hybrid App template with TypeScript, but the same problem exists with The built-in JavaScript "Blank App (Windows)" project template).
In our other csproj with Automatic Nesting enabled, once we include the js and map file in the solution for a given ts file, it will automatically nest properly. In a jsproj file the automatic nesting does not occur, and we are unable to perform manual nesting either. Instead we receive the following error message.
System.ArgumentNullException: Value cannot be null.
Parameter name: path
(See below for full stack trace)
Steps to reproduce:
The project system has encountered an error.
Value cannot be null.
Parameter name: path
A diagnostic log has been written to the following location: "C:\Users\Justin\AppData\Local\Temp\VsProjectFault_76ecdc4f-5636-4e78-8bef-5f8e6abeb1d2.failure.txt".
Full Stack Trace:
=====================
5/20/2014 7:44:20 AM
Recoverable
System.ArgumentNullException: Value cannot be null.
Parameter name: path
at Microsoft.Requires.NotNull[T](T value, String parameterName)
at Microsoft.VisualStudio.ProjectSystem.VS.Implementation.Package.ProjectNode.NodeFromPath(String path)
at System.Linq.Enumerable.WhereSelectArrayIterator`2.MoveNext()
at Microsoft.VisualStudio.ProjectSystem.VS.Implementation.Package.ProjectNode.<AddItemWithSpecificAsync>d__2a4.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.VisualStudio.ProjectSystem.VS.Implementation.Package.ProjectNode.<>c__DisplayClasse3.<<AddItem>b__e2>d__e5.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.VisualStudio.Threading.JoinableTask.CompleteOnCurrentThread()
at Microsoft.VisualStudio.Threading.JoinableTask`1.CompleteOnCurrentThread()
at Microsoft.VisualStudio.ProjectSystem.ThreadHandlingMultithreaded.ExecuteSynchronously[T](Func`1 asyncAction)
at Microsoft.VisualStudio.ProjectSystem.VS.Implementation.Package.ProjectNode.<>c__DisplayClass201.<HrInvoke>b__200()
at Microsoft.VisualStudio.ProjectSystem.Utilities.HResult.Invoke(Func`1 action, IServiceProvider vsShellServiceProvider, IProjectFaultHandlerService projectFaultHandlerService)
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at Microsoft.VisualStudio.ProjectSystem.Utilities.CommonProjectSystemTools.Rethrow(Exception ex)
at Microsoft.VisualStudio.ProjectSystem.ProjectErrorReporting.<>c__DisplayClass5.<SubmitErrorReport>b__3()
at Microsoft.VisualStudio.ProjectSystem.ExceptionFilter.<>c__DisplayClass2.<Guard>b__0()
at GuardMethodClass.GuardMethod(Func`1 , Func`2 , Func`2 )
===================
5/20/2014 7:45:34 AM
Recoverable
System.ArgumentNullException: Value cannot be null.
Parameter name: path
at Microsoft.Requires.NotNull[T](T value, String parameterName)
at Microsoft.VisualStudio.ProjectSystem.VS.Implementation.Package.ProjectNode.NodeFromPath(String path)
at System.Linq.Enumerable.WhereSelectArrayIterator`2.MoveNext()
at Microsoft.VisualStudio.ProjectSystem.VS.Implementation.Package.ProjectNode.<AddItemWithSpecificAsync>d__2a4.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.VisualStudio.ProjectSystem.VS.Implementation.Package.ProjectNode.<>c__DisplayClasse3.<<AddItem>b__e2>d__e5.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.VisualStudio.Threading.JoinableTask.CompleteOnCurrentThread()
at Microsoft.VisualStudio.Threading.JoinableTask`1.CompleteOnCurrentThread()
at Microsoft.VisualStudio.ProjectSystem.ThreadHandlingMultithreaded.ExecuteSynchronously[T](Func`1 asyncAction)
at Microsoft.VisualStudio.ProjectSystem.VS.Implementation.Package.ProjectNode.<>c__DisplayClass201.<HrInvoke>b__200()
at Microsoft.VisualStudio.ProjectSystem.Utilities.HResult.Invoke(Func`1 action, IServiceProvider vsShellServiceProvider, IProjectFaultHandlerService projectFaultHandlerService)
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at Microsoft.VisualStudio.ProjectSystem.Utilities.CommonProjectSystemTools.Rethrow(Exception ex)
at Microsoft.VisualStudio.ProjectSystem.ProjectErrorReporting.<>c__DisplayClass5.<SubmitErrorReport>b__3()
at Microsoft.VisualStudio.ProjectSystem.ExceptionFilter.<>c__DisplayClass2.<Guard>b__0()
at GuardMethodClass.GuardMethod(Func`1 , Func`2 , Func`2 )
===================
Hi, we recently wanted to start using this plugin and it works well for some items, such as Web Applications and Windows Forms.
However when you create an Empty ASP.NET Website the plugin doesn't appear to load, we don't even get the option on the right-click menu of "File Nesting". This occurs if you load a new Website or open a pre-existing site.
Could you please take a look at this as we very much would like to use this for nesting .js files under our web forms in our Websites.
Thanks
I believe a nice feature would be able to do the following
Having a view ex:
/Areas/CustomerManager/Views/Customer/Edit.cshtml
the Javascript
/Areas/CustomerManager/Views/Customer/Edit.js
Would be a nested file automatically..
Ideally when renaming the root file, the children files would be renamed too accordingly.
It would need to be smart to rename only the prefix of the name and leave the file extensions intact.
When creating an MVC project (Empty- > MVC) right when opening Visual Studio I get this error. The project does not get fully generated:
When closing the partially created solution and creating a new one, the message is not displayed and the solution is created without issue:
The error returns when I restart Visual Studio (and try creating a new solution).
The problem goes away entirely once I disable the FileNesting extension (and restarting Visual Studio).
I've gone through my ActivityLog.xml and the only error I found was this:
<entry>
<record>1584</record>
<time>2015/04/28 19:39:05.884</time>
<type>Error</type>
<source>Extension Manager</source>
<description>Extension will not be loaded because an extension with the same ID 'Microsoft.Windows.DevelopmentKit.Desktop' is already loaded at C:\PROGRAM FILES (X86)\COMMON FILES\MICROSOFT\EXTENSIONMANAGER\EXTENSIONS\MICROSOFT\WINDOWS KITS\8.0\DESKTOP SDK\...</description>
<path>C:\PROGRAM FILES (X86)\COMMON FILES\MICROSOFT\EXTENSIONMANAGER\EXTENSIONS\MICROSOFT\WINDOWS KITS\8.1\DESKTOP SDK\</path>
</entry>
There is also a significant number of warnings. If needed I can share.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.