Question

I'm learning Emacs after over two years of using Notepad++ as my default editor. I'm still hung up on a few things, but I find myself kind of enjoying working with it.

My question is simple: in Notepad++, when I wanted to go to a specific line of my file, I used CTRL+G. Emacs, for some perplexing reason, requires me to do M-x goto-line [enter] $linenumber [enter].

I can't believe there isn't a shortcut for that. I must be googling wrong, surely?

Was it helpful?

Solution

M-g g or M-g M-g are the default bindings for goto-line.

And, the easiest way to find this is either M-x where-is RET goto-line RET which will list the bindings for the command goto-line, or you can type C-h b which lists all the bindings for the current buffer (and then you can peruse the bindings to see if goto-line is there, or to discover other useful commands & bindings.

OTHER TIPS

Trey Jackson's answer is correct, but another useful thing to know in emacs is how to discover this sort of thing on your own. In your case, you know the name of the command -- goto-line. If you type 'C-h w' (Control+h and then w), Emacs will as you "Where is command: ". Type goto-line and hit enter, and it will tell you what keystrokes (if any) are bound to that command.

There are a bunch more similar features. 'C-h k' does the inverse -- asks you for a keystroke and then tells you the command it runs; 'C-h b' shows all current keybindings; 'C-h a' will search for a string, so you might type 'C-h a goto' to search for commands with "goto" in the name; 'C-h v' describes variables; 'C-h f' describes functions; etc.

If you're an emacs newbie, this webpage gives a detailed explanation on how to find specific line numbers.

For me (on a mac), it was M-x goto-line (where I get the "M" meta key by pressing and immediately releasing the escape button).

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top