How can I mimic my OS X workflow on Windows 7? - linux

I initially switched from Windows to OS X because I didn't understand SSH enough to reliably solve that problem in my Windows env.
Since then, I've come to prefer the following from OS X:
Keyboard mapping
oh-my-zsh CLI
Alfred
I'd like to replicate my OS X development environment on my Windows 7 PC as closely as possible, preferably to include the advantages offered by the above preferences.
My workflow includes the use of VirtualBox + Vagrant (Linux boxes) Git, and CLI > GUI.
Thanks in advance.

It seems like mainly you want a *nix style command line on Windows. You should give Cygwin a try then. It (basically) gives you just that (plus the ability to compile POSIX source to run on a Windows machine).
If you use Git more than anything else on the command line, you can just use Git-Bash (http://msysgit.github.io/).
You can use Launchy as a direct replacement for Alfred.
Keyboard mapping... I'm not sure. You can just search for a keyboard mapper for Windows (I found this http://msdn.microsoft.com/en-us/goglobal/bb964665.aspx with a quick search).

Related

How can I jump to function definitions using VS Code in SSH remote development

Okay I am new to Embedded Linux development.
Right now, I am trying to setup the development environment as efficiently as possible.
I have a python code running on a lightweight Linux based device, that is located remotely
So far I was able to setup my VS Code on my Windows system, in such a way that I can edit the files directly on the remote Linux device.
I followed the instructions below
https://code.visualstudio.com/docs/remote/ssh
https://code.visualstudio.com/docs/remote/ssh-tutorial
Now that I am able to edit my files directly, I face only one obstacle.
I find it hard to traverse to a function/method definition.
In my windows system, I could just Ctrl+LeftClick on a method/function, and it would take me there.
But here when I opened VS Code with the terminal running remotely, I have to do a Ctrl+F and search in the VS Code editor, which is like working on a notepad.
Does anyone know how to get around this?
On my main windows system, I am able to jump to method definitions quickly by Ctrl+LefClick-ing them.
Hope the question is clear enough.
Install the Python extension on the remote server and select the Python interpreter on the Linux device in VS code:
Press Ctrl+Shift+P to bring up the command palette and run the command Python: Select Interpreter.

Testing Linux shell script in or from Windows environment, without jumping from window to windows

I'm usually using VM/linux to run scripts, copying script using putty
or writing them directly there, but some times too many opened windows is not that comfortable..
I was recently trying to run shell script, using RUN option in Notepad++
to use build in Ubuntu in win10 anniversary, but can't really manage to get the right syntax to do it.. and didn't find any plugin to do so..
I would appreciate if anyone can put me to the right path in this one.
I found that it is also possible to do it using sygwin, by C:\cygwin\bin\bash --login -c "command.sh" but again its an extra software piece... and bit far from natural Linux environment, and slight different paths etc..
there is also a solutions to run some shell IDE using X11 using Xming, to work with Linux VM without switching between the opened windows. but in this case Question is the where can I find a proper shell IDE for linux, capable to run shell scripts directly from it, without living the IDE window, like all other IDE's do ?
any real solution would be appreciated.
It will NOT replace a pure Linux environment but, it is a closest I've seen
https://www.tutorialspoint.com/execute_bash_online.php

Set foreground window for Windows program running under Wine

I'm looking for a way to programmatically manipulate a windows program running on Linux under Wine.
Is there something similar on Linux to the Windows SetWindowForeground win32 command?
A function that sets a window by name to the foreground, that will work with a Windows program running under Wine on Linux?
Doe's wine use X11? If so I may be able to utilize this answer, will experiment and circle back
In Linux application windows (including your wine apps window) are managed by your desktop environment's Window Manager (WM). The Window Manager controls how windows are placed and the controls which operate on the windows (resizing, minimize, maxize etc).
Unfortunately there is no standardised Window Manager the major desktop environments (GNOME, KDE etc) have developed their own Window Managers and some people run stand alone WMs like IceWM or more exotic tiling WMs etc.
KDE's WM is called KWin, Gnome's is Mutter, Unity uses Compiz (I think - haven't used Ubuntu for a long time).
When the WM is running in an X sesion it probably uses X11 API internally to raise and lower windows.
However most modern WMs will prevent userpace X calls from popping up windows (because of security concerns etc) You will need to use the WM's wrapper functions. I think Wayland (whenever it is finally available) will have a proper secure API so this shouldn't be an issue.
The short answer to your question is any program you write will likely need to be Windows Manager specific and you should consult the documentation for your WM.
Long Answer - there is a freedesktop.org standard called Extended Windows Manager Hints I'm not sure how good conformance to the spec is among differing WMs (major ones like Gnome and kDE should be good). The property you are interested in is Window State (NET_WM_STATE)
See: http://standards.freedesktop.org/wm-spec/wm-spec-1.3.html
I hope that helps - my knowledge of WMs is probably outdated but should steer you in the right direction - I haven't really played around with WMs since GLX first came out and Compositing (wobbly windows and all that jazz) was in vogue.
You can use X11 window manager xdotool or X window manager wmctrl.
Consider the following scenario. A MS windows application titled WordWeb Installer running in wine on Ubuntu on workspace 2. Current workspace : 1. To switch to workspace 2 and focus the wine app execute
wmctrl -R wordweb or
xdotool windowactivate $( xdotool search --name wordweb )

Xserver on Windows7

I have been using X11 with windows Maker provided with cygwin package for multi windows in windows Xp. Currently I am moving to windows 7 but unable to install cygwin.
Is there any other multi windowing system like windows maker for cygwin on windows ?
Thanks for your help in advance.
~ JJA
I really like to use MobaXterm as nice ssh client, but more importantly as very lightweight and fast X server for Windows.
Typical usage on Windows: start MobaXterm, then from its console ssh user#linux-box. Now, you can simply execute any GUI program on your Linux box, like gedit, eclipse, etc., and it simply works! This is because MobaXterm automatically supports forwarding of you graphical DISPLAY from Linux to Windows.
This method for remote access works much faster than VNC. Performance is actually similar to Remote Desktop, if not even faster.

Bash shell in one of Eclipse's windows

I use Eclipse under a Linux machine (Ubuntu) and I usually have to use the shell a lot when I program - e.g., to use source control, perform builds. Is there a way to make gnome-terminal (or any other bash terminal for that matter) part of the eclipse views, so I can dock it where ever I want in the Eclipse work area?
In order to get an integrated terminal use: http://elt.googlecode.com

Resources