Forum Archive

Comment/Uncomment block of lines

regrunger

I am a new user and I can not find a way to comment/uncomment the selected block of code.
I use Pythonista v.3.2 on iPad

Could anybody help me to find this option in UI or suggest a solution to fix this moment because each line commenting is very uncomfortable for me?

pulbrich

Put the following code to your sites packages folder and create a shortcut under the wrench tool.


#Comment/Uncomment selected lines

import editor

text = editor.get_text()
selection = editor.get_line_selection()
selected_text = text[selection[0]:selection[1]]
is_comment = selected_text.strip().startswith('#')
replacement = ''
for line in selected_text.splitlines():
    if is_comment:
        if line.strip().startswith('#'):
            replacement += line[line.find('#') + 1:] + '\n'
        else:
            replacement += line + '\n'
    else:
        replacement += '#' + line + '\n'

editor.replace_text(selection[0], selection[1], replacement)
editor.set_selection(selection[0], selection[0] + len(replacement) - 1)

cvp

You can also put a line with 3 quotes above and under these lines

'''
these 
lines 
are 
commented
''' 
regrunger

Thank you for the help!

Ivan_OE

A big THANK to you pulbrich :)

pulbrich

@Ivan_OE I didn’t write this code, only use it. But I am happy if it helped.