Autosave jupyter workspace - jupyter

Is it possible to autosave jupyter lab workspace?
This doesn't seem available in the docs.

Turns out this it is very easy. Just need to specify the workspace in the jupyter-lab's address.
For example, if the port number is 8000,
For project1,
https://localhost:8000/lab/workspaces/project1
For project2,
https://localhost:8000/lab/workspaces/project1
In my experience, jupyter-lab auto-saves the workspaces, so when you close and reopen the address (tab in the web browser), the workspace will contain all the tabs as there were when you left them.
That's very convenient for managing different projects. I am bit ashamed that I never learnt about this during my past 3-4 years where I have used jupyter-lab almost everyday. In my experience, without this functionality, managing different projects can be is very tedious and messy.

Related

Cinnamon show an application in all workspaces

I have a number of monitors. I typically move between up to 4 or 5 workspaces for different areas of focus during the day (simply different projects, PyCharm for Python projects vs Eclipse for Java projects, e-mail and project management activities, etc.)
I would like to throw a chat application up on a monitor that would be mapped into all workspaces so that it's always up attracting my attention and doesn't change when I change workspaces.
I don't see in Cinnamon any option to do this and find no search expression getting me help in Google to solve it.
At the moment, this is not possible in Cinnamon. It is a long standing feature request (since 2012!).
However, there are alternatives to it. Namely, the program devilspie2 (available in the repositories) allows one to manage windows and their placement, with the help of a small Lua script.
Here1 is how I stick my Firefox and Pidgin window on all workspaces, while some other windows in a given workspace WORK (because I don't want to see them when I'm not working (: ).
-- Make windows of all these apps visible on all workspaces
GLOBAL_WINDOWS='Firefox;System Monitor;Pidgin'
if (GLOBAL_WINDOWS:find(get_application_name())) then
pin_window();
end
-- Firefox should be tall maximised
if (get_application_name() == 'Firefox') then
maximize_vertically();
end
-- Put the Sublime on their correct workspaces
if (get_application_name() == 'Sublime Text' and get_window_name():find('WORK')) then
set_window_workspace(4);
end
This should be placed in a config file in your home directory. Check the documentation :). And don't forget to set devilspie2 as the first startup app.
1 also posted in that issue

How many projects/folders/files can eclipse (the editor) safely handle?

I am always the first one to jump on any latest Eclipse release thinking that it would solve some of the issue that i have with slowness but i am always disappointed. The DLTK thing that keeps running, memory heap issues, internal error occurred ....
The latest version that I have tried is KEPLER
I know that I can close the projects that i am not using, disable validation, remove projects from the build path, hack into their myriad of codes and change settings but really?
I have to admit my workspace has only 5 projects but more than TWO HUNDRED heavy duty folders. within those folders you have for example, Drupal, Wordpress and so on..
I have used visual studio for years with 5 times as much projects without this kind of slowness but that is besides the point. Let's go back to eclipse.
looking at my settings, some people might say: why don't you create a projects for each of those folders? I tried that but the DLTK indexer keeps on indexing every projects in my workspace unless i close them. WOW!!! Create multiple workspace is out of the questions, if i have to do that i will just ignore Eclipse all together.
My hardware is decent and I have SSD Drive and plenty of RAMs.
What is the largest amount of projects or files can Eclipse safely handle? What about the DLTK what are its limitations?
How large is too large?
What doesn't visual studio seem to suffer from the same slowness? Is the problem java related or with the data structure? Can Eclipse handle that amount of projects?
I know that there are a lot of moving parts and answering these questions is not black and white but why is this thing indexing even the stuffs that i am not using?
I would like to get some opinions on how to use this editor effectively?
While the number of projects/files is not exactly "limited" (beside the resources of the host machine), the number of open editors is.
Eclipse 2019-09 proposes by default 99.
Close editors automatically when reaching 99 open editors
The preference to close editors automatically is now enabled by default.
It will be triggered when you have opened 99 files.
If you continue to open editors, old editors will be closed to protect you from performance problems.
You can modify this setting in the Preferences dialog via the General > Editors > Close editors automatically preference.
IDEs are slow by nature because they do a lot.
I would never use eclipse for webdev stuff like wordpress.
You should be leaving your library files outside of your main project as external folders so that eclipse discounts them. That way you can just have the files you need in your workspace.
Also, try closing the projects you aren't working on by right clicking and choosing "close project"
Personally I use vim and FTP to handle this stuff. Eclipse is nice and integrated but very chunky.

Eclipse - Universal Preferences Across All Workspaces?

I like to use several different workspaces, so as to keep everything organized. However, its annoying to have to copy the .settings folder to all my workspaces just because I added a keyboard shortcut. I'm looking for a way to update the preferences of all my workspaces whenever I change the preferences in one workspace. The settings I care about are keyboard shortcuts, code style, fonts, etc.
I have found this plugin which might be useful, but doesn't seem to be exactly what I'm looking for.
Ideally, I could have my settings saved in the cloud somewhere. On startup, Eclipse will check if workspace settings and the settings in the cloud differ, and if so, import them from the cloud. If I change any settings, then these preferences should be exported to the cloud. This way I also have my preferences on my school's lab machines.
Does anybody know a way to make this work? I'm all ears.
Thanks
Short answer: no. The easiest thing is probably just manually configure your preferences on those two or three PCs where you use Eclipse, and move on.
Longer answer: yes, you can copy (and standardize) Eclipse settings (e.g. for a standard configuration across your development shop). Here's a good article explaining how:
http://www.javalobby.org/java/forums/t18678.html
Finally, there's still no easy way (AFAIK) to safely and reliably UNINSTALL plug-ins as of the latest/greatest version (Indigo, Eclipse 3.7). So if you find yourself experimenting with a lot of plug-ins .. some of which you might ultimately wish to get rid of ... then maybe your best bet is installing Eclipse on a VM (say, VBox or VMWare, running Linux or Windows). Use your VM as a little "sandbox" where you can try stuff out, and easily clone (if you like it) or blow it away (if you don't).
IMHO...

Multiple sub-workspaces in Eclipse

I write code in several languages (Python, C, C++, and Java) using Eclipse. Is it possible to designate a directory on my machine (say /home/workspace/) as the "primary" workspace for any Eclipse session, but then to have subfolders, /home/workspace/python, /home/workspace/java, etc., in which I can create new Eclipse projects.
I don't want to have to navigate menus and select different workspaces for each session of Eclipse that I start up. I would rather just always have permission to manipulate any projects from a variety of folders at any time, but I can't find a clear answer about whether this can be done and how to do it.
As I understand your question; You want to have one workspace, but be able to code in several different languages without switching workspace but at the same time keep the projects separated?
First I would suggest you consider several workspaces, I find it convenient to keep settings and projects in separate workspaces. I rarely have to switch language that often.
But. I think what you want to do is to keep several working sets. You create one java working set, one C++ set and associate your different projects with a working set. Then you can minimize the java working set when you are running C++. For working sets you dont need any subfolders on the harddrive.
You might also want to look into Mylyn. Its a great tool for those who often are switching context. It saves the context (eclipse perspective, open files, etc) as associated with a task.
How about setting Eclipse to prompt for the workspace at launch? It wouldn't allow you to work in two languages at once, but should do the trick otherwise.
An Eclipse workspace can contain projects slated for different languages and those projects can live anywhere on your hard drive. There are at least two ways to do what you want. When creating a new project, uncheck the Use default location checkbox and browse to or specify the folder where you want your project to live. If a project already exists import the project into the workspace using the File->Import menu option and then select Existing Projects into workspace. In the next screen make sure the checkbox for Copy projects into workspace is not selected. This will leave the source files in the original folder.
In the Project explorer view, all the projects are going to look like they live at the root level. However you can group related projects into working sets. Then select just the working set you're interested in and all the others will disappear from view.
A warning is in order if you make use of eclipse variables in external tools (and possibly elsewhere). The syntax you use for paths needs to be adjusted. For example with projects outside the workspace this syntax ${workspace_loc:/MyProject/MyFile.txt} is no longer the same as this syntax ${workspace_loc}/MyProject/MyFile.txt

eclipse (eclipse distribution/projects/workspaces) synched over several stations with Dropbox/SVN

I am trying to setup eclipse and the project/workspaces to works smoothly and efficiently over 3 different computers (not in the same LAN).
Right now I have to do this in every computer:
install a plugin
customize eclipse.ini
customize prefs (I'll keep prefs.epf inside \eclipse folder and keep it synched with care)
I would like to avoid it so I won't end up with different versions of plugins etc in different computers. In order to achieve this, I have decided the following:
\eclipse distribution
I intend to put my \eclipse distribution under Dropbox. The reason for that is to use the exact same eclipse install in the 3 computers I use.
Projects
Projects (src and all resources etc) are synched by using SVN/Hg (I keep some projects under one, others in the other). No problem here. But the same project is stored in different drive/path in different computers (C:\projects\projectA and D:\projectA for example).
Workspaces
I use a different workspace for each project (or group of related projects). So I run eclipse with
-data \path-to-.metadata
My question is, where do I put worskpace folders, and do I synch them?? I have two options:
I keep workspaces inside Dropbox, this way they are synched automaticaly. But will it work?? As pointed out previously the same project can be in diff drive/path in two computers. This is the approach taken by this stackoverflow guy, but not sure if he had diff. drives etc.
I keep workspaces outside Dropbox, they are NOT synched. My question here is whether the same \eclipse will open -data \workspaceAInComputerA and then later open -data workspaceAInComputerB having both same names, projects etc but being totally separate workspaces.
It sounds a bit convoluted maybe but I think it's worth setting it right for long term usage. Anyone can recommend a setup??
thanks
ps: I don't want to keep taking a usb with me so don't suggest any 'portable eclipse' thing please!
This guy seems to have put his workspaces in Dropbox and it seems to be working for him. Personally, I'm putting the Entire eclipse directory + some sdk's in dropbox - we'll see how that goes!
UPDATE: This went horribly wrong for me - just going to use svn/git