'Edit in an external editor
Recommended: SciTE (e.g. to go to line where an error did occur)'

def external_editor(self, filename, goto=(-1)):

    editor_path = CONF.get('internal_console', 'external_editor/path')
    goto_option = CONF.get('internal_console', 'external_editor/gotoline')
    try:
        args = [filename]
        if ((goto > 0) and goto_option):
            args.append('%s%d'.format(goto_option, goto))
        programs.run_program(editor_path, args)
    except OSError:
        self.write_error(('External    editor    was    not    found:    %s\n' % editor_path))
