Sublime Text 3 on Ubuntu: custom keybinds in packages - sublimetext3

Problem
My problem is that the custom keybindings that I assign in Sublime Text 3 on Ubuntu are not registered. In my case, I am trying to set them for commands in the 'MarkdownPreview' package.
Setup
I have the following setup:
Ubuntu 16.04
Sublime Text 3 (build 3126)
MarkdownPreview package
Details
My MarkdownPreview.sublime-settings looks as follows (User settings):
[
{"keys": ["alt+m"], "command": "markdown_preview", "args": {"target": "browser", "parser":"markdown"}},
{"enable_mathjax": true}
]
I have already opened the console and set sublime.log_input(True) and sublime.log_commands(True).
The output in the console when pressing alt+m does show the event being registered, but no command is trigged. See this console excerpt:
key evt: backspace
command: left_delete
key evt: alt+m
key evt: control+c
command: copy
I can run the command from the command palette and the "enable_mathjax": true setting works fine

The reason this doesn't work for you is that you've put the key binding in the preferences for the package instead of in the key binding file, where Sublime can't see it.
The mathjax setting you have should be in your MarkdownPrevious.sublime-settings file, as that's a setting for the package. So that file should look like this:
{
/*
Enable or not mathjax support.
*/
"enable_mathjax": true
}
With that done, you want to select Preferences > Key Bindings (or if you're using an older version of sublime, Preferences > Key Bindings - User) and put your key binding in that file:
[
{
"keys": ["alt+m"], "command": "markdown_preview",
"args": {
"target": "browser",
"parser":"markdown"
}
},
]
This shows the complete contents of the key bindings file with only this single key binding. If you have any other custom key bindings, add this to your file without the [ and ] surrounding it (as they will already be in the file).

Related

After installation of Sublime 4 wrong order of search in files results - reverse instead of ABC, how to solve?

After installation of Sublime 4 it shows the search results (multiple files search) in reverse order instead of ABC.
Can't find any solution in Google. Even tried to change settings manually Preference -> Key bindings:
[
{ "keys": ["ctrl+f"], "command": "show_panel", "args": {"panel": "find", "reverse": false} },
{ "keys": ["ctrl+shift+f"], "command": "show_panel", "args": {"panel": "find_in_files", "reverse": false} }
]
but without result:
Searching 729 files for "veh.category"
/home/me/Projects/mycompany/myproject/app/views/veh/_fm_form.html.haml:
/home/me/Projects/mycompany/myproject/app/views/veh/_form.html.haml:
/home/me/Projects/mycompany/myproject/app/views/veh/_veh.html.haml:
/home/me/Projects/mycompany/myproject/app/views/events/_veh.html.haml:
7 matches across 5 files
Link to Sublime Forum on forum.sublimetext.com
Link to Git Sublime Issues Forum on https://github.com/sublimehq/sublime_text/issues/4700
P.S.
Ubuntu 20.04
Sublime 4107
I encounter the same problem. I thought the order is reversed, but now I think it is even unordered. Maybe it is sorted now by last modified date?
I would be interested in a solution, too.
A workaround is as follows:
use version 3 and version 4 parallel:
see https://www.sublimetext.com/docs/side_by_side.html
downloaded Sublime Text 3 and put in application folder
https://www.sublimetext.com/3
renamed Sublime Text.app to Sublime Text 3.app
created /Users/<Username>/Library/Application Support/Sublime Text 4
renamed /Users/<Username>/Library/Application Support/Sublime Text to : /Users/thomasglaser/Library/Application Support/Sublime Text 3
when starting Sublime Text 3 there was an error popup Error loading syntax file "Packages/JSON/JSON.sublime-syntax": Unable to read Packages/JSON/JSON.sublime-syntax
see https://forum.sublimetext.com/t/error-loading-syntax-file-json-error/25611/6
closed all open workspaces and projects thus tabs or windows
because of that there was the line
“syntax”: “Packages/JSON/JSON.sublime-syntax”
in file
/Users/<Username>/Library/Application Support/Sublime Text 3/Local/Session.sublime_session
after restarting sublime Text 3 no error popup came again
get rid of 'Update Availabel' Popup
see https://forum.sublimetext.com/t/how-do-i-disable-update-checks/43492/7
add line {"update_check": false,} to Preferences.sublime-settings
maybe this works only for licensed accounts

Autoformatting failed, buffer not changed : Sublime text

While setting up Python Development Environment in Sublime text 3, I wanted Auto formatting on and hence I made the following settings in Preferences > Package settings > Anaconda > Settings User
{
"auto_formatting": true,
"autoformat_ignore":
[
],
"pep8_ignore":
[
"E501"
],
"anaconda_linter_underlines": false,
"anaconda_linter_mark_style": "none",
"display_signatures": false,
"disable_anaconda_completion": true,
"python_interpreter": "/usr/local/bin/python3"
}
The auto_formatting value is set to true in user settings and it is set to false in default settings .
The auto formatting does not work out and gives me Autoformatting failed, buffer not changed error . Also tried changing auto_formatting_timeout = 5 //seconds , but that didn't work out . It would be of great help if someone could help me out .
I had the exact same issue. The problem is the last line is pointing to the wrong path for your python interpreter
Preferences > Package Settings > Anaconda > Settings - User
Delete the last line
"python_interpreter": "/usr/local/bin/python3"
Replace it with
"python_interpreter": "C:\\Users\\YOUR_NAME\\AppData\\Local\\Programs\\Python\\Python38-32\\python.EXE"
IMPORTANT: Your python interpreter path might be different to mine so find out where it is. Remember you need to use TWO backslashes in the path not ONE
Sublime is looking for python in environmental variable when you build it, and it is not able to find it there. You can test it in cmd by typing python and if it opens Microsoft store then here is the fix you can do, it worked for me. Open setting -> search for manage app execution aliases -> turn off "python.exe" and "python3.exe". Now check if you can get python in cmd by typing python, if you do then sublime problem should be fixed. If you want to know why this works follow this stack overflow

Indenting multilines/block with vscode and vim plugin

This is already on the site, but it doesn't work for me. I'm not 100% sure the answer is responsive to my situation (the question asks about vim "mode"). If it is, the context for the accepted answer isn't obvious for me.
I assume were supposed to splice the json fragment
{
"key": "shift+tab",
"command": "outdent",
"when": "editorTextFocus && !editorReadonly && !editorTabMovesFocus"
}
into our settings but it's not clear how or where. The app has a settings.json, a keybindings.json and the plugin has package.json.
I got this to work in vim itself a year or so ago IIRC, but it took a plugin and a couple of settings.
Edit to add: ctrl+[ and ctrl+] aren't functional for me. Presumably they would be w/o the vim plugin, but the plugin overrides the ctrl commands.
Just as in normal vim, typing >> and << in normal mode or > and < in visual mode will indent and un-indent lines, respectively.
Source: https://vim.fandom.com/wiki/Shifting_blocks_visually
Also: https://stackoverflow.com/a/235841/7007605
If you are using the main Vim (VSCodeVim), the standard m>, m<, :m,n>, :m,n< are not supported (see https://github.com/VSCodeVim/Vim/issues/3733).
However, this feature is supported by the Neo Vim VS Extension (asvetliakov.vscode-neovim). Note that if you go this route, you do need to install neovim (>v0.5.0) separately, which you can obtain at https://github.com/neovim/neovim/releases/nightly. Then set the path to the neovim executable/binary in the Neo Vim VS extension settings.
I remaped < and > in normal mode to ident lines while using the VSCode commands:
"vim.normalModeKeyBindingsNonRecursive": [
{
"before": ["<"],
"commands" : ["tab"]
},
{
"before": [">"],
"commands" : ["outdent"]
}
]

How do I turn on word wrap for Output window in VS code?

I'm running my code using the extension "Code Runner" and would like the output to be displayed word-wrapped. Currently when I run it, it displays the output all in a single line even if it's a long line.
I tried the setting "editor.wordWrap": "on".
This is how the output and editor look like:
Try adding this to your settings:
"[Log]": {
"editor.wordWrap": "on"
}
You can instead use the built-in debugger configuration for Python and set in launch configuration to use the "internalConsole"
{
"name": "run-test-py",
"type": "python",
"request": "launch",
"program": "${workspaceFolder}/myfile.py",
"console": "internalConsole"
},
so that the output appears in the Debug Console panel. The word wrapping for that panel is controlled by the Debug > Console: Word Wrap setting:
Set it to true:
"debug.console.wordWrap": false,
For the Debug Console you can use "debug.console.wordWrap": false,//default:true which was added in June 2019 with issue 72210

Installing Vintageous Package

I'm trying to install the Vintageous package so that I can use Vim commands in Sublime. I downloaded the Vintageous.sublime-package file and added it to the Installed Packages folder, as I was told to do here: https://github.com/guillermooo/Vintageous#vintageous.
Then I restarted Sublime, reopened it, and pressed Esc to enter command mode. Nothing happened -- Sublime is still behaving like it was before.
What am I doing wrong?
Here is my "Preferences.sublime-settings --User" file:
{
"color_scheme": "Packages/Color Scheme - Default/Monokai.tmTheme",
"create_window_at_startup": true,
"draw_white_space": "all",
"find_selected_text": true,
"font_size": 19,
"ignored_packages":
[
"ANSIescape",
"BeautifyRuby",
"Cucumber",
"Javascript Beautify",
"OmniMarkupPreviewer",
"PackageResourceViewer",
"Pretty JSON",
"ProductiveSnippetsRuby",
"SublimeCodeIntel",
"Sublimerge Pro",
"Vintage",
"WordHighlight"
],
"move_to_limit_on_up_down": false,
"open_files_in_new_window": false,
"scroll_past_end": true,
"show_full_path": true,
"tab_size": 2,
"translate_tabs_to_spaces": true
}
I would suggest you to use the Sublime Package Manager instead.
It's extremely easy.
Copy and paste the snippet you find in the installation page, and then you paste it in the Sublime console (Ctrl + `)
After that, you can simply press Ctrl + Shift + P, type in Install Package, press Enter, and then type Vintageous
The package should appear in the list
Press Enter
After you restart Sublime, it should be working

Resources