In Emacs, how does one emulate mouse button presses and the like using a keyboard? For example, with CEDET's Semantic (included with GNU Emacs 23.2.1), includes can be right clicked to provide a menu; how can I make that menu, and others, with the keyboard, appear as a tooltip or in the minibuffer a la M-` that allows one to access the menu bar?
You can find out what command the mouse-click is running using C-h k (describe-key), followed by the mouse-click in the appropriate place. You could then bind that to something on the keyboard.
It's not exactly what you're asking, but you should be able to use it to accomplish the same thing for all the clicks you care about.
Related
I want to switch the ctrl click functionality in Eclipse to be triggered by a middle mouse click. I saw a question here about how to disable the ctrl click functionality; I want to preserve it but give it a different or additional hot key.
Eclipse apparently can not bind commands to mouse buttons.
You could work around that limitation by using a separate program that allows you to define application specific actions for your mouse buttons, eg. X-Mouse Button Control, Logitech SetPoint (both via SO: Eclipse Back/Forward navigation using mouse buttons), or similar applications.
Or you switch to an IDE that allows mapping mouse buttons (and much more).
Eclipse can not bind it.
But you can bind it from the settings.
Try this link :
If you are using microsoft mouse.
https://support.microsoft.com/en-ca/help/269054/customize-program-specific-mouse-settings-on-your-mac
Also there are many 3rd party apps which can bind your requirement.
I use emacs in terminal mode. I know how to get the menu through F10 key. Emacs used to show the menu in terminal mode as text in a separate buffer. Either since a recent update, or I installed some package, I notice emacs starts to create a graphic drop-down list for menu items (see the screenshot). However, I only see it on one of my computer (Mac OS), my other computers still show the menu in "text mode". Can anyone tell me how to enable the graphic dropdown list menu feature? Is this a new feature of latest Emacs 24.3 or it can be enabled via some package?
This is described in the NEWS file for Emacs 24.4:
* Emacs now supports menus on text-mode terminals.
If the terminal supports a mouse, clicking on the menu bar, or on
sensitive portions of the mode line or header line, will drop down the
menu defined at that position. Likewise, clicking C-mouse-2 or
C-mouse-2 or C-mouse-3 on the text area will pop up the menus defined
for those locations.
If the text terminal does not support a mouse, you can activate the
first menu-bar menu by typing F10, which invokes `menu-bar-open'.
If you want the previous behavior, whereby F10 invoked `tmm-menubar',
customize the option `tty-menu-open-use-tmm' to a non-nil value.
(Typing M-` always invokes `tmm-menubar', even if `tty-menu-open-use-tmm'
is nil.)
Looks like a nice feature.
There is an addin for Visual Studio called MouseNavi that allows you to use mouse thumb buttons to navigate your history.
Does a similar extension exist for Eclipse?
I don't know of any Eclipse plugin that does this, but assuming you're using Windows:
This one should enable you to do what you want: http://www.highrez.co.uk/downloads/XMouseButtonControl.htm
With that tool you can assign each mouse button a sequence of keys (Alt+Left for example) and because it can be made application specific it won't interfere with other programs where you don't want that mapping.
Alt+Left and Alt+Right to navigate through the latest opened editors.
Also, Alt+L to open up the shortcuts popup, so you can see what's available.
No real mouse navigation control though (not that I know of... at least). Although, should not be very difficult to create one and attach it to the same handlers that deal with the navigation commands.
^Q takes you to last edited location. You can cycle using it. No mouse bindings.
When Eclipse shows a popup for code completion, how do you change the highlighted option using the keyboard home keys? Currently, if the thing I want is third or fourth on the list of suggestions, I have to use the mouse to select it, or use the arrow keys. Is there a way to use the keyboard home keys/ shortcuts with ctrl/alt to do this?
Arrow keys always work for me. Can you be little more specific as to what perspective, editor, etc?
I get a code completion popup when I press Ctrl + 1 in the Java editor. From then on, I can use the arrow keys to navigate.
I'm assuming you want to select from the code completion menu by X for up and Y for down. Go to Preferences > Keys and bind the commands Line Up and Line Down to X and Y, respectively. Make sure that in the When drop-down you select In Windows.
Note that after the settings are applied, X (Y) also makes the cursor go one line up (down) in the source editor. Personally, I use X = Ctrl+P and Y = Ctrl+N which means I can navigate lines and select entries from the code completion menu without lifting my hands off the keyboard.
Unfortunately, these bindings don't work with other pop-up lists in Eclipse, e.g. quick outline (Ctrl+O) or quick access (Ctrl+3). I'd love to find out how to bind these too.
I often use the Eclipse feature (Galileo) of suggested error corrections to automatically create code stubs or to refactor things. For example, I would write a method that calls other methods which don't exist yet, then move the mouse over the error message and click on "create method". Or, change this to the class name and choose "add static modifier" from the quick fixes.
I think this is very convenient because it lets me stay in one place in my code and sort of "remotely" wire up what's not currently visible on my screen. What I think is annoying though, is that I have to leave the keyboard, hover my mouse over the error symbol, wait for the tooltip to pop up, and click on the option (doing that, I sometimes move the mouse a little over the edge and the tooltip goes away again - very annoying).
Am I missing a faster method here? I can't seem to find a keyboard shortcut, but then I have overlooked stuff from the huge preference dialog before.
Ctrl+1 : Quick Fix.
(Cmd+1 on Mac)
Just put your cursor on the part you suspect you can perform an action (correction, refactoring, ...) and hit the Quick Fix shortcut. The same popup will be displayed, and you can select the right option with the up and down keys.
That, combined with Ctrl+3 (Quick Access) gives you most of eclipse features at your fingertips ;)
See also:
Eclipse Tip: Shortcut to Quick Fix
My Favorite Eclipse Shortcut: Quick Fix
Eclipse hotkeys: eclipse shortcuts gold mine.
As an additional tip, a specific type of quick fix I use all the time has a dedicated shortcut:
Alt+Shift+J: Add Javadoc comment stub for current method.
After using ctrl+1 like mentioned in the top answer, press ctrl + enter to apply the selected fix all to problems of the same category.
In general, keyboard shortcuts in IDEs (and code tools in general) are coming from a user principle that holds that the more your hands/fingers can remain poised over the keyboard (as in the f-j centered "touch typist" position), the more productive you can become. This is probably why the use of the number keypad is not encouraged, or other keys, less common to the most basic layout keyboard, are not used. Many hold that useful keyboard shortcuts should be easily reachable from this position.
One thing I will say about eclipse keyboard shortcuts is that if you use a popular Windows presentation utility called Zoom-it, you need to turn that off when using eclipse. There are several show-stopper conflicts between the two, such as Ctrl-1 and Ctrl-3.