Я хочу использовать внешние инструменты для автоматизации внутреннего выполнения сценариев, создаваемых в настоящее время, с помощью сочетания клавиш. Единственное, что я могу найти по этому вопросу, это здесь . Но я думаю, что это должно быть устаревшим, потому что это производит синтаксическую ошибку, о которой я не могу найти никакой полезной информации. Я знаю, что python3 нуждается в скобках после print
, поэтому я пробовал с и без, но выдает ту же ошибку. Как ни странно, print commands.getoutput(line))
выдает синтаксическую ошибку, распознающую пропущенную открывающую скобку.
Также я изменил «комментарий» (я думаю) в верхней части инструмента на python3
, полагая, что интерпретатор будет обрабатывать любые круглые скобки, происходящие немного более изящно, но это не пойдет, потому что commands
очевидно перестал существовать сейчас.
Очевидно, я хочу код, который будет делать то, что я хочу, но ответы, проливающие свет на ошибку, также предпочтительнее. Мне важно знать, что на самом деле происходит.
РЕДАКТИРОВАТЬ Доказательство того, что мой синтаксис точен
РЕДАКТИРОВАТЬ Я понял, что проблема может быть связана с моим кодом, потому что Ранее я работал с многостраничным скриптом, поэтому открыл новый документ и попробовал следующие простые утверждения. Результаты интересные, но ничего не говорите.
Вход
True == True
Выход
Running tool: run source
sh: 1: True: not found
Done.
Хм, ладно.
Вход
True==True
Выход
Running tool: run source
Done.
О! Может быть, он сделал расчет, но он просто не распечатал его!
Вход
print(True==True)
Выход
Running tool: run source
sh: 1: Syntax error: word unexpected (expecting ")")
Done.
... Вернуться к исходной точке Я думаю.
Входные данные
print True==True
Выходные данные
Running tool: run source
sh: 2: Syntax error: ";" unexpected
Done.
Какая точка с запятой?!
РЕДАКТИРОВАТЬ Итак, я думал, что у меня проблема решена ниже. Не так уж много получается ... Я только что понял, что это не отвечает на вопрос! Я спросил, можно ли отправить выбранный код в терминал Gedit для выполнения. Идея состояла в том, чтобы создать IDLE-подобный режим, где я мог бы вооружить терминал классами, функциями и переменными из моего документа, а затем взаимодействовать с ним вживую. Внешние инструменты используют «панель вывода», которая помещается во вкладку рядом со встроенным терминалом Python. Он выполняет код за кулисами, а затем отображает весь вывод одновременно. Его нельзя использовать для получения пользовательского ввода.
Я понятия не имею, почему ошибки читают способ, которым они сделали, но чистой удачей я действительно создавал функционирующий код...
Это идет как это:
Плагин
#!/usr/bin/env python3
import sys
exec(sys.stdin.read())
- Сочетание клавиш: Alt+R---или независимо от того, что Вы довольны
- Сохраняют: Ничто
- Вход: Текущий выбор (значение по умолчанию к документу)
- Вывод: Дисплей в нижней области
- Применимость: документы |Python 3
|All Вводят
print(True == True)
Вывод
Running tool: run source
True
Done.
РЕДАКТИРОВАНИЕ , я только что понял, что это не отвечает на вопрос! Я спросил, возможно ли отправить выбранный код на gedit ТЕРМИНАЛ для выполнения. Идея состояла в том, чтобы иметь НЕАКТИВНОЕ как настроенный, где я мог вооружить терминал классами, функциями и переменными из моего документа и затем взаимодействовать с нею живой. Внешние инструменты используют 'Панель Output', которая вставляется во вкладку около встроенного терминала Python. Это выполняет код негласно и затем отображает полный вывод все одновременно. Это не может использоваться для получения ввода данных пользователем.