Pygin — Python adapter
Pygin — Python adapter
не удаётся установить причину, устойчиво проявляется: плагины и макросы не добавляю, добавляю Lunatic Python модуль Lua,
при наличии pygin adapter (тестовый плагин не важен), при вводе в командной строке
получаю в консоль строку «ModuleNotFoundError: No module named 'lua'» и сообшение от LuaMacro
без pygin получаю в консоль вывод питона «['__name__', '__doc__', '__package__', '__loader__', '__spec__', 'execute', 'eval', 'globals', 'require']», как и ожидалось.
при наличии pygin adapter (тестовый плагин не важен), при вводе в командной строке
Code: Select all
lua:require"python";python.import"lua";print(python.eval("lua.__dir__()"))
без pygin получаю в консоль вывод питона «['__name__', '__doc__', '__package__', '__loader__', '__spec__', 'execute', 'eval', 'globals', 'require']», как и ожидалось.
-
- Posts: 6840
- Joined: Thu 23 Mar, 2006 21:36
- Location: Israel
- Has thanked: 41 times
- Been thanked: 530 times
Pygin — Python adapter
Сейчас впервые попробовал сабж - и вот первый багрепорт
Выбираю из меню "Do console stuff" и получаю:
113 - это custom sort mode.
Выбираю из меню "Do console stuff" и получаю:
После чего Фар можно только прибить.╔════════ Pygin: Python exception ═════════╗ ║ ValueError: 113 is not a valid SortModes ║ ╟──────────────────────────────────────────╢ ║ Traceback (most recent call last): ║ ║ File "enum.py", line 291, in __call__ ║ ║ File "enum.py", line 533, in __new__ ║ ║ File "enum.py", line 546, in _missing_ ║ ╟──────────────────────────────────────────╢ ║ { OK } ║ ╚══════════════════════════════════════════╝
113 - это custom sort mode.
Last edited by Shmuel on Tue 29 Aug, 2017 15:52, edited 1 time in total.
-
- Posts: 6840
- Joined: Thu 23 Mar, 2006 21:36
- Location: Israel
- Has thanked: 41 times
- Been thanked: 530 times
Pygin — Python adapter
DrKnS, ещё один репорт:
1. Переношу папку helloworld из Plugins в %FARHOME%
2. Выхожу из Far и запускаю его снова.
3. Плагин как ни странно не только появляется в меню плагинов, но и работает.
tstr, модуль "lua" отсутствует в полном соответствии с кодом библиотеки, если интерпретатор Питона уже инициализирован.
То есть, если Pygin загружается до LuaMacro, то py-hash работать не будет. Это плохо, да, но что-то придумаем (срочность не обещаю, поскольку в сентябре будет напряжёнка на работе).
1. Переношу папку helloworld из Plugins в %FARHOME%
2. Выхожу из Far и запускаю его снова.
3. Плагин как ни странно не только появляется в меню плагинов, но и работает.
tstr, модуль "lua" отсутствует в полном соответствии с кодом библиотеки, если интерпретатор Питона уже инициализирован.
То есть, если Pygin загружается до LuaMacro, то py-hash работать не будет. Это плохо, да, но что-то придумаем (срочность не обещаю, поскольку в сентябре будет напряжёнка на работе).
Pygin — Python adapter
Shmuel, да, адаптер должен по замыслу грузиться до всех возможных плагинов, это ожидаемо.
ясно, будем пока независимо смотреть, не взбалтывая )
- DrKnS
- Posts: 6114
- Joined: Thu 04 Aug, 2005 06:44
- Location: Kyiv
- Has thanked: 12 times
- Been thanked: 426 times
Pygin — Python adapter
Спасибо, поправил.
Теперь в случае custom sort mode PanelInfo.SortMode будет int, а не SortModes. Возможно, не самый лучший вариант, но другого я не знаю.
Не могу повторить. Решение о том, откуда грузить плагины, как бы принимает Far, а не адаптер, так что у меня даже идей никаких нет.
-
- Posts: 6840
- Joined: Thu 23 Mar, 2006 21:36
- Location: Israel
- Has thanked: 41 times
- Been thanked: 530 times
Pygin — Python adapter
Это был ложный багрепорт. То есть описанное поведение действительно наблюдалось, но причиной была установленная у меня в ярлыке папка Фара под ключом /p.
- DrKnS
- Posts: 6114
- Joined: Thu 04 Aug, 2005 06:44
- Location: Kyiv
- Has thanked: 12 times
- Been thanked: 426 times
Pygin — Python adapter
Не ставя под сомнение код библиотеки, хочу отметить, что у меня почему-то в описанной ситуации работает и py-hash, и пример с "lua:require" выше.
-
- Posts: 6840
- Joined: Thu 23 Mar, 2006 21:36
- Location: Israel
- Has thanked: 41 times
- Been thanked: 530 times
Pygin — Python adapter
Ясно, что у вас что-то идёт по-другому, чем на моей системе. Я продебаггировал - в библиотеке примерно такой код (несущественное опущено):
Code: Select all
/* Initialize Python interpreter */
if (!Py_IsInitialized()) {
..............................
/* Import 'lua' automatically. */
luam = PyImport_ImportModule("lua");
..............................
}
- DrKnS
- Posts: 6114
- Joined: Thu 04 Aug, 2005 06:44
- Location: Kyiv
- Has thanked: 12 times
- Been thanked: 426 times
Pygin — Python adapter
Да, действительно.
Вы, скорее всего, работаете с релизной версией, взятой с appveyor, которая использует python36.dll (как и lunatic), а я просто запускал из IDE debug, использущий python36_d.dll.
Pygin — Python adapter
Как сложно для Python плагинов ввести автоматические GUID вида plugname/type/name? Например hello-world/menu/main-menu?
В рамках плагина тогда у каждого меню будет просто имя - легко читается и находится.
В рамках плагина тогда у каждого меню будет просто имя - легко читается и находится.
- HaRT
- Moderator
- Posts: 10869
- Joined: Tue 30 Aug, 2005 17:21
- Has thanked: 221 times
- Been thanked: 358 times
Pygin — Python adapter
Это будут уже не GUID.
P.S.
Даже мне уже надоели ваши регулярные высказывания по этому давно человечеством решённому вопросу.
Расскажите, наконец, доходчиво, что у вас за проблема с гуидами. Может её и решать надо совсем другими средствами, чем те, которые вы всё время предлагаете.
Фар есть инструмент, а не нянька. © 2009 DrKnS
- cmd.exe
- Posts: 378
- Joined: Fri 16 Apr, 2010 18:26
- Location: Нижний Новгород
- Has thanked: 181 times
- Been thanked: 10 times
- Contact:
Pygin — Python adapter
Почему не будет? Если из ИмениПагина, ИмениБиблиотекиПлагина, РасширенияБиблиотекиПлагина генерировать GUID для временных данных. Данный метод использует Винда в сессиях пользователей. Пусть "Юзер" голову ломает, какой гуид от какого плагина.
I've been using Vim for about 2 years now, mostly because I can't figure out how to exit it. (c) I Am Devloper
I know nothing except the fact of my ignorance. (с) Socrates
I know nothing except the fact of my ignorance. (с) Socrates
- HaRT
- Moderator
- Posts: 10869
- Joined: Tue 30 Aug, 2005 17:21
- Has thanked: 221 times
- Been thanked: 358 times
Pygin — Python adapter
Фар есть инструмент, а не нянька. © 2009 DrKnS