I am having a hard time adjusting to vscode vim i want to remap append mode key "a" to key "h" .
what should I type in command <"help plzz">
Related
I'm attempting to modify my keybindings in Atom.
So far I've been successful in adding a custom new keybindings via the keymap.cson file. However, I've encountered a problem when attempting to override a default one.
I'm trying to replace the default Ctrl + Shift + S, which is bound to Save as by default, to perform the Save all command instead. Of course, merely adding didn't work, so after a while I figured out I should unset! the key combination first. Now it looked way more promissing in the Key Binding Resolver.
This keymap produced following output in the Key Binding Resolver:
'body':
'unset!': 'core:save-as'
'ctrl-shift-S': 'core:save-all' # Key Binding Resolver claims this works fine
# but it doesn't do anything
'ctrl-shift-E': 'editor-stats:toggle' # works fine
'atom-text-editor':
'ctrl-shift-A': 'bracket-matcher:select-inside-brackets' # works fine
Despite that, however, the key binding Ctrl + Shift + S doesn't save anything at all. Accessing the command from the context menu works fine. I've searched the web, the core:save-all command seems to exist, it even has a default keybinding on Mac.
I am using the latest version of Atom on Windows 10, made sure no package conflicts with the keybind.
I'm really confused about this.
You can find commands by using the command palette.
Mac: CmdShiftP
Windows/Linux: CtrlShiftP
Looking for "save all" there, the only match for me is
Window: Save All
Ignore whatever key binding it may show next to it. What is important is the command name, "Window: Save All". You can convert that to a command selector with these steps:
Lowercase everything
Remove the space after :
Replace other spaces with -
This yields your selector: window:save-all.
So your key binding should be:
'ctrl-shift-s': 'window:save-all'
As the command's name suggests, this will save all tabs in all panes in the current window. It should not affect anything in other Atom windows.
I use the IntelliJ IDEA's Embedded Local Terminal quite a lot, but there is one thing that is driving me nuts : special and accented characters do not work.
This is what should but is not working :
HOME key to go to the beginning of the line : does nothing
END key to go to the end of the line : does nothing
[CTRL + left arrow] to go to previous word : prints D
[CTRL + right arrow] to go to next word : prints C
all accented characters : prints nothing at first, then ? when I hit another key
There are probably other combinations that should but do not work ... but these are the most annoying ones.
I'm using :
Ubuntu 16.04 virtual box guest running on a Windows 10 host
IntelliJ IDEA 2016.2.4
zsh
oh-my-zsh
Important notes :
in a GNU Terminal (outside of IntelliJ then) everything works perfectly, so I don't think that the "running inside a VM" thing is the source of the problem.
if I run bash instead of zsh the special characters are working (home, end, next work, etc...) but I still don't have propre support of accented characters (prints �), and I'd really prefer using zsh.
showkey --scancodes prints Couldn't get a file descriptor referring to the console
if I start od -c I get ^[[H for the HOME key and ^[[F for the END key
showkey --ascii works and prints ^[[H too for the HOME key
What I did already :
checked that the TERM variable is not overridden in .zshrc
add bindkey "${terminfo[khome]}" beginning-of-line and end of line equivalent in .zshrc
add lines (that seemd appropriate) in .inputrc for readline (OK I see now that this was useless as Zsh does not use readline)
edit : I could make the home/end keys work (see accepted answer below), but not the CTRL+LEFT and CTRL+RIGHT key (for forward-word and backward-word). After some more digging this seems to be an issue with IntelliJ not 100% properly emulating the terminal. 4
There is an issue here, with interesting input from an oh-my-zsh contributor : https://youtrack.jetbrains.com/issue/IDEA-118848#comment=27-1292473
They consider ditching smkx (which appears to be the root of the problem) from oh-my-zsh soon. I've checked out this PR and now my keys work fine (still need the bindings, but CTRL+LEFT and CTRL+RIGHT are ok now)
edit: accented/special characters are now properly supported in IntelliJ (yeehaa !), be sure to have at least the following version : IntelliJ IDEA 2016.3.1, Build #IC-163.9166.29, built on December 9, 2016
I can appreciate that zsh works fine outside IntelliJ.
Step 1
Find the correct key codes being used by the terminal inside Intellij. This will depend on the OS you are using. For OSX and Linux od -c followed by pressing the keys will result in the key code being emitted.
Step 2
Once you have the keycodes, modify your ~/.zshrc :
bindkey "$HOME_KEY_CODE_FROM_STEP_1" beginning-of-line
bindkey "$END_KEY_CODE_FROM_STEP_1" end-of-line
for example (as was the case for the OP):
bindkey "^[[H" beginning-of-line
bindkey "^[[F" end-of-line
and restart the terminal.
Shortcut key to get the previous command in ksh
What is the shorcut key to get the previous command that was used in ksh?
I have tried using the history command but that is not my requirement.
I want to know the shortcut key.
If you first set the editor mode to "vi";
set -o vi
Then you can access history by entering command mode (press Esc key), and using either the up arrow or the 'k' key.
From there, vi editing syntax works - e.g. to edit the line enter insert mode ('i') etc. Hitting return will re-execute the command, and Ctrl-C will cancel.
I've just created a build system named XeLaTeX by creating a file named XeLaTeX.sublime-build in the User directory of Sublime Text, whose content is:
{
"cmd": ["xelatex.exe","-synctex=1","-interaction=nonstopmode","$file_base_name"]
}
What should I do, if I want to bind my F1 key to this specific build system?
Note: Ctrl + B, the default build system should not be influenced. That is to say, I could use Ctrl + B to use the default one, and the key F1, the new system, is also available at the same time.
Maybe there is another way to achieve this. Add the following text to Default(Windows).sublime-keymap will execute the command:
{"keys": ["f1"], "command": "exec", "args": {"cmd": ["xelatex.exe","-synctex=1","-interaction=nonstopmode","$file_base_name"]}},
However, $file_base_name is not defined here. Is there any method to pass current file (base_)name to exec?
I nailed it by myself.
AFAIK, there is no such a way to pass current file name through key binding, and it's not possible to use key binding to specify a certain build system. Thus, writing a Python script is of necessity.
There are only three steps.
1. Save the following content to /Data/Package/User/compile_with_xelatex.py:
import sublime, sublime_plugin
class CompileWithXelatexCommand(sublime_plugin.TextCommand):
def run(self, edit):
self.view.window().run_command('exec', {'cmd': ["xelatex.exe","-synctex=1","-interaction=nonstopmode", self.view.file_name()[:-4]]})
2. Add a line to /Data/Packages/User/Default(<your-plat>).sublime-keymap
{"keys": ["f1"], "command": "compile_with_xelatex"},
3. Open your LaTeX source file with Sublime Text, and then press F1 to compile it with XeLaTeX.
Indeed, it's a little tricky, but it works like a charm for me.
Build systems work by either selecting them specifically in the Tools -> Build System menu, or by using a selector to match a specific syntax. If you want to use a selector, add the following line to your XeLaTeX.sublime-build file (make sure to add a comma , after the first line, the file needs to be valid JSON):
"selector": "text.tex.latex"
The build command is already bound to CtrlB and F7, but if you also want it bound to F1, open Preferences -> Key Bindings-User and add the following line if you already have custom key bindings:
{ "keys": ["f1"], "command": "build" }
If the file is empty, just add opening and closing square brackets [ ] at the beginning and end of the file, respectively, as it also needs to be valid JSON.
Now, whenever you open a LaTeX file, you should be able to hit F1 to build it. If for some reason it doesn't work (if, for example, you have other build systems for LaTeX installed by plugins like LaTeXTools), then just select Tools -> Build Systems -> XeLaTeX, and everything should work properly.
Your example will work, if you give parameter "$file_basename" not "$file_base_name".
I am ssh-ing into a server and when I am editing files, the Delete key does not delete; instead it prints "^?"
How can I fix this so that the Delete key actually deletes the character before the cursor?
At the shell:
$ stty erase ^V<delete key>
where ^V is control-V, followed by the key you wish to use as the Delete key. Then, of course, press Enter.