Disabling super (windows) keybinding in Ubuntu-12.04 - emacs

As an emacs user, I would like to have <super> generally available to me as a modifier. I've had some success in disabling Ubuntu's default hotkeys, but am having trouble with <super>-s. The default behavior is to launch the workspace switcher, and I haven't found a way to change that. I've been using CompizConfig Settings Manager for my successful changes.

Install compizconfig-settings-manager (sudo apt-get install compizconfig-settings-manager)
Start it (ccsm) and go to Ubuntu Unity Plugin -> Behavior
Disable the keybinding "Key to starts the switcher"
If that does not work, go for the hard way:
Start gconf-editor
Edit->Find. Search for <Super>s (with the <>), with the "Search also in key values" option clicked.
Edit the matches at your leisure

If you don't (want to) have compizconfig-settings-manager installed, you can use
gconftool-2 --set "/apps/compiz-1/plugins/unityshell/screen0/options/show_launcher" --type string ""
to disable the key mapping
( http://linux.die.net/man/1/gconftool-2 )

Related

No selectable SSH Agent in Eclipse 2020-12 (4.18.0)

I was looking into adding my RSA keys into Keychain in my mac (macOS Sierra if that matters). One of the things that I found was to use ssh-agents so that whenever you generate a key, it will get added automatically to Keychain.
The problem is that I can't see any agent in the SSH Agent list in Eclipse SSH2 settings window. Am I missing anything?
I saw this post Eclipse git and ssh-agent but the plugin is not maintained anymore. I can't seem to find a way to add the export statement into an init script as I'm not sure which file that is.
Thanks
Eclipse JGit can now work with the standard ssh-agent, so you need to run
ssh-add
on the command line of your Mac and provide the passphrase to your keys so the ssh-agent can load your keys and offer them to Eclipse over the socket.
This support is pretty new, see https://bugs.eclipse.org/bugs/show_bug.cgi?id=541274 #howlger mentioned.
An earlier solution, which still works, is to set the GIT_SSH environment variable for Eclipse so that JGit uses the system SSH with the standard ssh-agent. The process to set environment variables for Applications in macOS is described here: Setting environment variables on eclipse

Adding click autocompletion to conda env activate script

I'm using a Python library which uses click autocompletion. Since I've installed the library in a conda env, I'd like the autocomplete to be associated with it. (Also, since it isn't installed in my primary Python env, adding eval "$(_FOO_BAR_COMPLETE=source_zsh foo-bar)" to my .zshrc doesn't work.) The documentation for the library I'm using says "if gradient was installed in a virtual environment, the following has to be added to the activate script":
eval "$(_GRADIENT_COMPLETE=source gradient)"
I originally added this to ~/miniconda3/envs/my_env/lib/python3.6/venv/scripts/common/activate, but the autocompletion didn't work. Running
source ~/miniconda3/envs/my_env/lib/python3.6/venv/scripts/common/activate
does work, but my shell prepends via __VENV_DIR__ to the prompt, and the fact that this doesn't happen automatically when I run conda activate myenv makes me think this is the wrong way to do it (for one, it isn't disabled when I do conda deactivate my_env).
What I'm looking for is the canonical way to add a script to run upon conda activate x, then end upon conda deactivate x. This seems very close, but it's for adding shell variables with export and unset. Is there a way to do it with click's autocomplete?
Following a small modification of the instructions in the docs seemed to work for me - I placed the eval statement in env_vars.sh, and nothing in deactivate.d.
My understanding is that export is persistent in the shell throughout sessions, and so must be undone with a corresponding unset. Whereas eval only works for that session, so as soon as the conda env is deactivated it no longer has an effect.
Would be happy to hear more from someone with a deeper understanding of bash/conda under the hood!

App can't be opened because it is from an unidentified developer

I installed Mac OS X Mavericks (10.9) yesterday and since then I am not able to start my Eclipse. I am attaching a screenshot of the message I see.
Is there a workaround for this?
I found a solution in Fix the “App can’t be opened because it is from an unidentified developer” Error in Mac OS X.
It's because of the Security options.
Go to System Preferences... > Security & Privacy and there should be a button saying Open Anyway, under the General tab.
You can avoid doing this by changing the options under Allow apps downloaded from:, however I would recommend keeping it at the default Mac App Store and identified developers.
An easier way to open a document from an unidentified developer, if you know it's safe, is to control-click on the file icon and then select "Open." You will then be given the option of opening it regardless of its unidentified source.
Right-click (or control-click) the application in question and choose "Open"
In terminal type the command:
xattr -d com.apple.quarantine [file path here]
Once you click enter it will no longer have that problem. Its annoying that apple adds a quarantine to files automatically. I do not know how to turn this off but there probably is a way...
You can also use the xattr command as in Stack Overflow question How do I remove the "extended attributes" on a file in Mac OS X?.
Just remove the com.apple.quarantine attribute. It works even if you don't have an administrator account, which can be a plus. After that, the app isn't considered "downloaded" and is therefore not blocked.
It is prohibiting the opening of Eclipse app because it was not registered with Apple by an identified developer. This is a security feature, however, you can override the security setting and open the app by doing the following:
Locate the Eclipse.app (eclipse/Eclipse.app) in Finder. (Make sure you use Finder so that you can perform the subsequent steps.)
Press the Control key and then click the Eclipse.app icon.
Choose Open from the shortcut menu.
Click the Open button when the alert window appears.
The last step will add an exception for Eclipse to your security settings and now you will be able to open it without any warnings.
Note, these steps work for other *.app apps that may encounter the same issue.
you can modify the gatekeeper settings by running the following command
To disable to allow apps from anywhere to be installed use the following command in terminal ::
sudo spctl --master-disable
To re-enable use the following command
sudo spctl --master-enable
I had the same problem, Eclipse would not start. Found this link and it worked like a charm:
Can't click Menu Bar Items in Eclipse
Java is messed-up on Maverick, need to download and install from here:
http://support.apple.com/kb/DL1572?viewlocale=en_US&locale=en_US
Control Click the application in the Applications folder, not lauchpad. Choose open and then you get an options to actually open it.
Right click > Open.
Or, you can go into System Preferences, Security & Privacy, and set the restrictions on opening apps there.
I had got the same error.
Because of security reasons, I could not see option for allowing Apps downloaded from Anywhere in System preference-> Security Tab.
I removed the extended attribute from Zip file by below command.
xattr -d com.apple.quarantine [Zip file path]
And then got below error:-
org.eclipse.e4.core.di.InjectionException: java.lang.NoClassDefFoundError: javax/annotation/PostConstruct
Resolved it by uninstalling all different versions of java and installed just 1.8.0_231.
Worked finally.
In your terminal, simply run
sudo spctl --master-disable
in order to allow apps be downloaded from any developer
Open terminal, go to extracted folder of eclipse and run the following command:
./eclipse -clean
Terminal type:
Last login: Thu Dec 20 08:28:43 on console
~  sudo spctl --master-disable
Password:
~  spctl --status
assessments disabled
~ 
System Preferences->Security & Privacy
Open Terminal, Go to the eclipse folder, Run ./eclipse
Try looking into Gatekeeper. I am not sure of too much Mac stuff, but I heard that you can enable it in there.

Filtering ZSH history by command

I was told that in ZSH you could do something like command and then when you hit up it would filter the history based on the given command. But when I try this it just cycles the history like bash does. Is this disabled by default?
Hit Ctrl+R, type some letters, it will find the previous command with these letters, keep hitting Ctrl+R to continue through the previous findings.
Works in bash, zsh (and other shells i suppose).
What i personally like to have is: type some letters, press Up, the previous commands starting with the same letters appear. Very powerful, i love it.
You have to bind the keys you want to history-beginning-search-backward and history-beginning-search-forward.
In case it's not enough for you, zsh has a lot of options, try to look in Zsh Line Editor and tell us.
For bash, less powerful but more common, Bash commands for history.
Use exclamation point:
> !<starts-with this string>
You can arrow up/down through all commands that started with that. I use "!v" all the time to get my previous command for opening a file with Vim.
You can also use a question mark to search beyond matching the beginning of the string,
> !?status
Can find "git status".
Use percol to dynamically search and navigate through your history with Ctrl-r.
install percol: sudo pip install percol
add the zsh-history-search code snippet to your .zshrc file.
After a Ctrl-r, you can see your whole history in the same window. Searching for a keyword (dynamically) narrows that list down. You can use key-bindings (like this emacs like config) to navigate up and down the list and eventually make a selection.
Here is a search for all sudo install commands available in history with sudo make install selected.
Enter issues the selected command.
We can also use fzf to fuzzy search the command history interactively.
Here is how to install:
git clone --depth 1 https://github.com/junegunn/fzf.git ~/.fzf
~/.fzf/install
Say yes to all its configs. After that, restart your zsh shell, and press Ctrl-R, whoa, interactive command history search pops up. Enjoy!
With the vim keybindings activated in zsh you can use vi-history-search-backward (/) when in vi command mode.
That's a feature available in fish, but it seems like someone made a zsh plugin for it. It's not available in standard ZSH.
If you don't want to add any keybindings, you can search by default using Ctrl+R to move backward & Ctrl+S to move forward.
You can start search with any of the key shortcuts Ctrl+R or Ctrl+S

Eclipse "paste" command broken

I am on OS X 10.8.2 and Eclipse Juno; Copy/Paste/Cut suddenly broke. No response inside Eclipse.
Maybe a rogue plug-in (?) but that doesn't matter, can I just reset the values?
Which combination should I bind to COMMAND+{C,V,X}?
Paste from the clipboard in "Editing Text"
Paste from the clipboard in "Dialogs and Windows"
Paste from the clipboard in "Windows"
Other?
If you know how to do this in a preferences file, even better, I use keyConfigurationId="org.eclipse.ui.defaultAcceleratorConfiguration" but I don't know how to choose these parameters for the keyBinding rule in
org.eclipse.ui.workbench/org.eclipse.ui.commands:
contextId
commandId
In my installation, those commands are set to in "Dialogs and Windows". You should be able to also get that automatically by hitting the "Restore Command" button after selecting one of those commands. Or in very hard cases, use "Restore Defaults" in the bottom right corner to recreate all key bindings.
If you use the Android Development tools, please upgrade to the latest version, as a copy-paste-issue was fixed in ADT 20.0.2, which occurred for many Eclipse Juno users.
That all said, you really should upgrade to SR1, as that is a bugfix release, no feature release. So chances are very high it fixes more problems than it introduces.