What I want to do is gray out text with a pound sign (#) in SublimeText, therefore the code will not be read over. This used to be a feature, but no longer works, however.
Do you mean the how to comment out in Python using Sublime text? You can just select the lines you want to comment out and then press ctrl + / (in Windows) or cmd + / (in MacOS)
Related
What I want to do is
Open four "Sublime Text" windows, e.g. type subl . for 4 times
Replace opened windows to each corner, i.e. one is left-top, one is left-bottom, one is right-top, one is right-bottom
I can do this task manually, however, it's awesome if I can automate this process.
You can use split-screen feature of Sublime Text. Below key combination will split your Sublime Text into 4 screens.
- For Linux, shift + alt + 5
- For Mac, cmd + option + 5
If you select a text you can add multiple tab spaces to the all lines simultaneously.
For that you must select the n lines of the code and press the key tab. If you want
remove the tab spaces should select the text and press shift+tab.
I was programming in my job and I accidentally discovered this in the IDE eclipse. I test the same process
in the Sublime Text and Geany and it works too.
Y suposse and pressume that works for the most of text editor
I can confirm the answer from kelgwiin for sublime text.
Depending on your platform you could also do the following in sublime text:
Linux: Hold shift and the right mouse button, then move the mouse up or down to make a column selection.
Windows + OS X: Simply hold down the mousewheel and move your mouse up and and down to select the columns.
Hope this helps!
On Geany you can create by using Alt+Shift+Mouse (Windows) or Ctrl-Shift-Mouse (*x) a multiline cursor or an rectange selection, where you can work on many lines at the same time. This is only working for lines 'in row' so you cannot choose line 9 and lines 12-16 and lines 23-44 to be edited at the same time.
I install sublime text 3 and this bundle for mathematica: https://github.com/dehowell/mathematica-tmbundle.
However, when I text edit under the Mathematica mode, I have shortkey conflict issues mainly with three commands, Documentation for Current Word (control + H), Execute current statement / selection (shift + enter), and Execute current document (command + R). All these 3 shortcuts have been already taken by default in sublime text. For example, (control + H) is replacement in sublime.
I tried to modify the user keymap in sublime text, but it does not work. I think the right way is to modify that bundle posted on GitHub.
Can anyone help me how to fix this? I want to use this textmate bundle because the bundle for sublime text is really bad.
You can change the shortcuts if you set keyEquivalent in the corresponding .tmCommand file to another value.
The original shortcut for "Documentation for Current Word" can be found at this line: https://github.com/dehowell/mathematica-tmbundle/blob/master/Commands/Documentation%20for%20Current%20Word.tmCommand#L15
The syntax is easy, just use set whatever letter / key you want and use one / two / three of the following modifiers: ^ (Control), ~ (Option), # (Command)
I love cocoa style keyboard shortcuts and am constantly frustrated that Terminal doesn't behave in the same way. Does anyone know how to set common cocoa-style keyboard shortcuts in Terminal.app?
I found a blog post that describes how to do this in iTerm: http://blog.jcoffin.com/2008/12/06/mac-keyboard-shortcuts-iterm/. However, I like Terminal.app better for a number of reasons.
Terminal.app allows you to define custom keyboard shortcuts, but it doesn't let you use the command key. It also doesn't let you define a key for "delete", but for some reason allows "forward delete" (?).
The main ones I want are:
Option + ←/→ for moving the cursor a full word
Command + ←/→ for moving to the start/end of a line
Option + Del for deleting a full word
Command + Del for deleting a line
If I could just have these I would be happy :-)
I followed the instructions in this blog post from Allan Odgaard (of TextMate fame) to set up:
opt-arrow for word-movement
ctrl-arrow for moving to start/end of the line (though, to be honest, I end up using ctrl-a and ctrl-e much more often)
forward-delete (based on this comment which says to map it to ctrl-opt-d)
You can also check the "Use option as meta key" item to get opt-delete to perform word-deletion.
Unfortunately, as Allan says, you cannot bind to the normal delete key, nor can you use the Command key as a modifier.
You could use the ones from Unix terminal (shell), I think they work the same in Terminal app:
full word forward: Esc + F
full word backward: Esc + B
end of the line: Ctrl + E
beginning of the line: Ctrl + A
delete full word (cursor at the end of the word): Esc + Backspace (Mac Del?)
delete the whole command line: Ctrl + C
Tried to map it from Preferences -> Settings -> Keyboard, but the "key" combo box has only "forward delete" but no "delete". My keyboard on the other hand has only "delete" and no "forward delete"!
Is there some other way to do it except from the preferences?
Enable option key as meta key
Go to Terminal > Preferences > Profiles > Keyboard
Check Use option key as meta key.
Image
On macOS High Sierra 10.13.6, captured on October 23, 2018.
Notes
Many applications (including bash and tcsh) treat Meta-Delete as "backward delete word."
OS X's terminal runs bash, which includes readline support. Follow Glomek's advice and tell terminal to use option as meta key (or else use Esc) and then you've got a bunch of handy options: Ctrl+w deletes prev word (as does Meta+delete as mentioned), but you can also use Meta+f and Meta+b to walk forward and backwards thru words, Ctrl+a and Ctrl+e to beginning and end of line, Ctrl+k delete (kill) from cursor to end of line, and a bunch more.
See http://www.bigsmoke.us/readline/shortcuts for a nice little reference table.
Delete a word going back:
Ctr-w.
Command Editing Shortcuts
Ctrl + a – go to the start of the command line
Ctrl + e – go to the end of the command line
Ctrl + k – delete from cursor to the end of the command line
Ctrl + u – delete from cursor to the start of the command line
Ctrl + w – delete from cursor to start of word (i.e. delete backwards one word)
Ctrl + y – paste word or text that was cut using one of the deletion shortcuts (such as the one above) after the cursor
Ctrl + xx – move between start of command line and current cursor position (and back again)
Alt + b – move backward one word (or go to start of word the cursor is currently on)
Alt + f – move forward one word (or go to end of word the cursor is currently on)
Alt + d – delete to end of word starting at cursor (whole word if cursor is at the beginning of word)
Alt + c – capitalize to end of word starting at cursor (whole word if cursor is at the beginning of word)
Alt + u – make uppercase from cursor to end of word
Alt + l – make lowercase from cursor to end of word
Alt + t – swap current word with previous
Ctrl + f – move forward one character
Ctrl + b – move backward one character
Ctrl + d – delete character under the cursor
Ctrl + h – delete character before the cursor
Ctrl + t – swap character under cursor with the previous one
Command Recall Shortcuts
Ctrl + r – search the history backwards
Ctrl + g – escape from history searching mode
Ctrl + p – previous command in history (i.e. walk back through the command history)
Ctrl + n – next command in history (i.e. walk forward through the command history)
Alt + . – use the last word of the previous command
Command Control Shortcuts
Ctrl + l – clear the screen
Ctrl + s – stops the output to the screen (for long running verbose command)
Ctrl + q – allow output to the screen (if previously stopped using command above)
Ctrl + c – terminate the command
Ctrl + z – suspend/stop the command
Bash Bang (!) Commands
Bash also has some handy features that use the ! (bang) to allow you to do some funky stuff with bash commands.
!! – run last command
!blah – run the most recent command that starts with ‘blah’ (e.g. !ls)
!blah:p – print out the command that !blah would run (also adds it as the latest
command in the command history)
!$ – the last word of the previous command (same as Alt + .)
!$:p – print out the word that !$ would substitute
!* – the previous command except for the last word (e.g. if you type _find somefile.txt /, then !* would give you _find somefile.txt)
!*:p – print out what !* would substitute
⌃W (control+W) is not the same thing than meta + delete (ESC+delete if you don't have checked use option as meta key)
meta+delete will treat / _ as word delimiter where ^W will consider space as delimiter.
e.g.
using ESC+Bakcspace on (cursor at the end)
rm /dira/dirb/file1
gives
rm /dira/dirb/
while ^W on the same will give
rm
So it is better to use \033\177 rather than ^W when defining the modifying the terminal profile.
That way you are really mapping ⌥⌫ to what esc⌫ is doing and you keep having ^W to erase word based on space delimiter.
I would love to be able to post an image on how do this but as a newbies I can't.
refer to bouke comment to see how to modify terminal profile.
By default meta backspace does a backwards word yank in most shells. If you press escape and then press backspace, that pretty much works everywhere.
In your Terminal's profile, you can bind ⌥⌫ (option+delete) to ⌃W (control+W), so it works similar to other apps.
If you are using Iterm2 (which is like the regular terminal of OSX just better :)
you can use this like to change this behavior:
You need to set your left ⌥ key to act as an escape character. This can be done going to iTerm2 > Preferences > Profiles > Keys.
With Natural Text Editing preset enabled in Profile -> Keys.
You can simply remove the word
Backward with alt + delete
Forward with fn + alt + delete