Остановить сублимированный текст при выполнении бесконечного цикла

Когда я делаю что-то вроде

while True:
    print('loop')

и выполнить этот код в возвышенном состоянии, я не могу его остановить. Я должен вручную убить процесс и перезапустить возвышенное.

Есть ли способ установить какой-то 'max_execution_time' или любой другой способ обхода, который позволяет нам прекратить это?

Ответ 1

Вы хотите использовать Ctrl + Break. Для вашей собственной информации просто перейдите в раздел " Инструменты" в Sublime Text, и вы увидите "Отменить сборку" и указанную выше горячую клавишу. Это будет хорошо работать для бесконечных циклов. Достаточно сказать, у меня было то же самое! ;)


Для пользователей Windows нет клавиши Break, поэтому зайдите в "Настройки"> "Привязки клавиш" и измените строку

{ "keys": ["ctrl+break"], "command": "cancel_build" }

на другой ярлык, такой как Ctrl + Alt + B

Ответ 2

Для меня (в Linux) на клавиатуре нет клавиши break, и этот ярлык каким-то образом связан с другой комбинацией: ctrl + alt + c.

Вы можете найти, где он связан в меню Tools:

введите описание изображения здесь

После прерывания вашего script вы должны увидеть текст [Cancelled], напечатанный на консоли sublimetext.

Ответ 3

У вас есть пара вариантов. Вы можете установить огромное количество итераций (я на самом деле делаю это с большинством циклов, пока я полностью не отлаживаю код, чтобы избежать бесконечных циклов цикла): Так, например,

max_iterations = 100000000
while i < max_iterations:
   print("Hello World")

Альтернативой будет использование временного модуля для синхронизации времени выполнения вашего кода, подобного этому

import time
max_execution_time = 10000000 #this will be in seconds
start_time = time.clock()
elapsed_time = 0   
while elapsed_time < max_execution_time:
    elapsed_time = time.clock() = start_time
    #Your loop code here

Ответ 4

Для MacOS:

cmd + option + esc

заставить выйти

Ответ 5

Комбинация ctrl+break.

В Windows нет кнопки разрыва, поэтому вы можете перейти в " Preferences > Key Bindings и добавить на стороне пользователя:

{ "keys": ["ctrl+c"], "command": "cancel_build"}

Теперь, нажав Ctrl + C, выполнение остановится. Конечно, вы можете изменить комбинацию на то, что вы хотите.

Ответ 6

Просто нажмите клавиши CTRL + C в MacOS.