Как выводить в окно журнала в perforce client p4v с помощью настраиваемых инструментов

Мы разрабатываем специальные инструменты на Python и выводим сообщения во время выполнения скрипта. Он отображается в p4win, но мы в основном используем p4v, и результат не отображается в окне журнала.

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


person Eric Fortin    schedule 09.04.2010    source источник


Ответы (1)


Когда Python направляет свой вывод в канал, а не прямо на терминал, он по умолчанию буферизует свой вывод. Я думаю, вы можете обойти это, либо передав параметр «-u» при вызове Python (например, python -u myscript.py arg1 arg2), чтобы он не буферизовался, либо вызывая sys.stdout.flush() во всем сценарии в любое время, когда вы хотите, чтобы он был добрался до P4V.

Смотрите также:

http://kb.perforce.com/article/914/sending-script-output-to-p4vs-custom-tool-terminal

(Похоже, что этот вопрос был задан, и на него был дан ответ после того, как вы задали здесь, в Stack Overflow. Извините, если вы уже хорошо об этом знаете.)

person Weeble    schedule 03.11.2010
comment
Я думаю, проблема в том, что OP хотел отправить вывод в окно журнала P4V, а не в пользовательское окно терминала. Я тоже. - person yoyo; 23.07.2014
comment
О, я вижу. Я почти уверен, что это невозможно. Прости. Мой ответ действительно для вывода в то, что P4V называет окном терминала. Я не думаю, что есть способ подключиться к панели журнала. - person Weeble; 23.07.2014
comment
Хм, это очень плохо. Уверен, что P4Win его поддержал. Ну что ж. - person yoyo; 23.07.2014