**Use case**
Some program left garbage in terminal.

**Describe the solution you'd like**
Subset of what `reset` command does.
/// Setting value from cmd arg overrides one from config
        if (context.getSettingsRef().max_insert_block_size.changed)
            insert_format_max_block_size = context.getSettingsRef().max_insert_block_size;
        else
            insert_format_max_block_size = config().getInt("insert_format_max_block_size", context.getSettingsRef().max_insert_block_size);
        if (!is_interactive)
        
            need_render_progress = config().getBool("progress", false);
            echo_queries = config().getBool("echo", false);
            ignore_error = config().getBool("ignore-error", false);
        }
        ClientInfo & client_info = context.getClientInfo();
        client_info.setInitialQuery();
        client_info.quota_key = config().getString("quota_key", "");
        connect();
        /// Initialize DateLUT here to avoid counting time spent here as query execution time.
        const auto local_tz = DateLUT::instance().getTimeZone();
        if (!context.getSettingsRef().use_client_time_zone)
        
            const auto & time_zone = n->getServerTimezone(n_parameters.timeouts);
            if (!time_zone.empty())
            
                try
                
                    DateLUT::setDefaultTimezone(time_zone);
                }
                catch (...)
                
                    std::cerr << "Warning: could not switch to server time zone: " << time_zone
                        << ", reason: " << getCurrentExceptionMessage(/* with_stacktrace = */ false) << st