10

I just started using python-mode in emacs and I noticed that while the major mode has an option for commenting out a region ((py-comment-region) which is bound (C-c #))there is no option to uncomment the code block which is already commented. I checked all the active keybinds in python-mode and could not find any relevant key. Am I missing something?

I did think of a couple of work arounds like using (delete-rectangular) (bound to C-x r d) to delete the comments. Another method would be to bind the (comment-or-uncomment-region) to some key and start using that.

But is there any option provided in python-mode itself by default?

Pulimon
  • 1,776
  • 4
  • 31
  • 45

4 Answers4

17

Not sure about your setup but I use M-; and it works for me.

LWZ
  • 11,670
  • 22
  • 61
  • 79
10

How to uncomment code block in emacs python-mode?

Select code, e.g. with Ctrl-Space to mark and cursor over desired code.

Then, meta-semicolon: Meta-;

That's escape then ;s or hold down Alt-;

The same method will also comment code.

Russia Must Remove Putin
  • 374,368
  • 89
  • 403
  • 331
2

Most comment region functions will uncomment a region with C-u comment-region-function

Squidly
  • 2,707
  • 19
  • 43
  • When I use `C-u`, emacs instantly changes the text selection to the beginning of the file to the first letter of my last selection. – Anthony Kong Nov 16 '17 at 03:28
1

I'm using comment-dwim which is really smart and can be used for both commenting and un-commenting active regions. It works for the python mode as well.

You can find more information in emacs comment commands.

Oleg Pavliv
  • 20,462
  • 7
  • 59
  • 75