Sublime Forum

A neater Project Manager

#1

Simple Project Manager for Sublime Text 3
Dont’t have any idea what *.sublime-project and *.sublime-workspace are doing? Don’t like the project system of Sublime Text and think that it is too much?

SideBarFolders is a lot lighter than the bulit-in project system, but it does not have any management functionality at all. I really hate that a folder cannot be easily removed in SideBarFolders. Now, you have a new option other than SiderBarFolders. Simple Project Manager helps in managing multiple projects with a minimal amount of effort. It is inspired by Atom’s Project Manager.

https://raw.githubusercontent.com/randy3k/Simple-Project-Manager/master/spm.png

Installation

You can install SPM via Package Control. To launch the Simple Project Manager, you can either open it under the Project menu, or use the hotkey ctrl+cmd+p (ctrl+alt+p for windows/linux).

Check https://sublime.wbond.net/packages/Simple%20Project%20Manager for details.


Update:

A new project manager is created: github.com/randy3k/Project-Manager
It is more powerful than Simple Project Manager.

0 Likes

#2

This plugins looks interesting. I find the current project system usable, but a little clunky.

I’ve been playing around with SMP for about half-an-hour and I’m a bit confused.

  • How do I refresh project configuration after I make a change to the SMP settings file? (I think opening and closing the project does the trick.)
  • As far as I can tell workspaces are completely ignored. I don’t use multiple workspace per project, but I do like preserving my open files between sessions. Also the workspace files include other useful information (such as GoTo patterns, the currently selected build system, etc.). How are these handled in SMP?

P.S. Kinda ballsy to replace the default project system binding. IMO it’s better to provide example keybindings and let users configure their own. More of a hassle at the outset, but fewer headaches down the road. After all, Sublime isn’t IA Writer :smile:

0 Likes

#3

After spending a few minutes with this plugin I’m liking it way better than the built-in project manager. Good job ! :smile:

0 Likes

#4

[quote=“quodlibet”]This plugins looks interesting. I find the current project system usable, but a little clunky.

I’ve been playing around with SMP for about half-an-hour and I’m a bit confused.

  • How do I refresh project configuration after I make a change to the SMP settings file? (I think opening and closing the project does the trick.)

[/quote]

You are right. I shall make it automatic in next upgrade. “settings.add_on_change” should do the job. :smile:

I am not sure if there is any method to load and save workspaces via the api. I am happy to implement it if anyone can point me to some references.

[quote=“quodlibet”]

P.S. Kinda ballsy to replace the default project system binding. IMO it’s better to provide example keybindings and let users configure their own. More of a hassle at the outset, but fewer headaches down the road. After all, Sublime isn’t IA Writer :smile:[/quote]

I really not like the default project manager and I have never used the quick switch project feature. :sunglasses:

0 Likes

#5

I like the SMP interface and being able to set up all my projects in one place. You can do that with Sublime as well (see below), but the UI is really clunky.

But it’s a no go for me if SMP doesn’t preserve the the view between session (as the default project system does via the workspace files). I’m don’t know if you can tap into the workspace system via the API. There’s a lot of really useful stuff you lose when you ditch the workspaces: remembering buffers, the build system, history for autocomplete, console, GoTo and more.

It takes your plugin elsewhere and you may not want to do this at all, but it seems to me that SMP (or something like it) can server as an interface to the project system (which would automatically take care of the workspaces as well). In terms of configuration, instead of having one file you would have a directory with a file for each project (User/SMP/Whatever.sublime-project). That would allow you to use the project system as-is, but simplify the user’s interaction with it.

Or am I not seeing this right?

Alex

0 Likes

#6

Thanks your for your comments. I agree that it is a big loss for not being able to use the workspaces. When I first developed SPM, I also had an idea of putting all *.sublime-project and *.sublime-workspace files under a directory and let SPM manages it. Some how, I gave up this idea and chose to use a configure file.

There are advantages solid advantages of keeping the *.sublime-workspace files together with their sublime-project files. I just try to modified some code to demonstrate this idea. It turns out this approach is quite workable. SPM stands for SIMPLE project manager. It is time for an non-simple project manager. :sunglasses:

0 Likes

#7

Fair enough. Unfortunately it’s back to the default for me :frowning:

Alex

0 Likes

#8

I have written another package: Project Manager, github.com/randy3k/Project-Manager

It is essentially a duplicate of SPM, but with the support of workspace files. It is appreciated if you can help testing it out and give some feedbacks.
Now, the sublime-project and sublime-workspace files are stored under /User/Projects/. And Project Manager helps in organizing the two files.

:smiley:

0 Likes

#9

You’re a machine! :smile:

For my devious purposes, this looks more useful than SMP. I’ll be able to test it more thoroughly over the weekend.

Some things I noticed:

  • One of my concerns with SMP is how I would deal with multiple paths (on different computers). In SMP you provide the “path_*” setting, which doesn’t to seem to work in PM. (Because you’re using vanilla project files, presumably.) Because my User folder and most of my projects live in Dropbox I can use relative paths like “…/…/…/…/…/…/Project Folder/”, but I’m sure I’ll run into trouble eventually. Any ideas about this?

  • I missed the rename option from SMP.

  • As with SMP, project configuration is not instantly picked up – which, honestly, I only noticed because I’m fiddling with the settings for testing purposes :smile:

Alex

0 Likes

#10

Now, it is not quite possible to use “path_*” setting as the contents of sublime-project files are never touched. I can’t think of a way to support it now except having multiple files…

Just add it.

Perhaps, reloading the settings can be triggered when the sublime-project is saved. One dirty trick for the moment is to reopen the project again. Since the workspace is used, your open files and unsaved work will not be discarded. :smile:

0 Likes

#11

[quote=“randy3k”]
Just add it.[/quote]

?

0 Likes

#12

[quote=“quodlibet”]

?[/quote]

You should now see an option

0 Likes

#13

OK, sorry. Package Control didn’t pick up the update. I had to reinstall the package for some reason.

BTW, renaming projects is not as straight-forward as renaming the .sublime-project file. There’s also a reference in the .sublime-workspace file that needs to be changed. Otherwise it throws up an error. (And there may be more complexity to this. I didn’t have a chance to fiddle too much.)

Ah, where are the good ol’ days of the Simple Project Manager? :smiling_imp:

Alex

0 Likes

#14

I just installed it and really quite like it. Thank you very much for the plugin!

0 Likes

#15

[quote=“quodlibet”]OK, sorry. Package Control didn’t pick up the update. I had to reinstall the package for some reason.

BTW, renaming projects is not as straight-forward as renaming the .sublime-project file. There’s also a reference in the .sublime-workspace file that needs to be changed. Otherwise it throws up an error. (And there may be more complexity to this. I didn’t have a chance to fiddle too much.)

Ah, where are the good ol’ days of the Simple Project Manager? :smiling_imp:

Alex[/quote]

The corresponding changes in the sublime-workspace file has already been made.
github.com/randy3k/Project-Mana … pm.py#L134

I trashed my SPM files…SPM is just deprecated.

0 Likes

#16

I’ve been quite happy with Project Manager thus far, though the paths issue is a bit a of a problem. It occurred to me that perhaps we’ve been thinking about this backwards. It might be more optimal to keep the project and workspace files within the project’s folder hierarchy and then keep an index of the projects in the User folder. That way you could define computer-specific paths in this custom index to the vanilla project files.

What do you think?

0 Likes

#17

I start to believe that different sublime-project files should be used for the same project even on different platforms. May be I am wrong, but anyway, storing platform dependent settings in a single sublime-project file is difficult.

0 Likes

#18

I’ve had some trouble with project build system across OSs. But the other settings would be identical, no?

0 Likes

#19

Also, GitHub’s recommended gitignore settings for Sublime Text – as close an industry standard as I’m aware of – recommends that “project files should be checked into the repository, unless a significant proportion of contributors will probably not be using SublimeText”

github.com/github/gitignore/blo … nore#L9-11

So maybe including the project files in the within the project root and keeping the custom index of projects in User is the way to go. The benefit is your nicer UI, path settings, while maintaining compatibility with the buffoons who don’t use PM :smile:

0 Likes

#20

Sorry for the long delay…I didn’t check this forum regularly. (side note: why still using phpbb??? it is so vintage…)

Perhaps, we could copy the local .sublime-project to /Users/Projects/ based on the modified time.
(Are github staff forced to use atom!? :smiling_imp: )

0 Likes