Re: Редактор игр
У меня дома нет python3
На работе буду в птнц.

Simple text adventure interpreter for Unix and Windows
You are not logged in. Please login or register.
У меня дома нет python3
На работе буду в птнц.
Если заслуженный тестировщик поставит сегодня-таки линух, скачает и поставит нужные пакеты и у него все заработает, то он отпишется ![]()
Совершенно не работает. Где её вызывать? Или она автоматическая?
Ничего не подчёркивает. Даже специально написал абракадабру.
Вызываю как python3.1 PyIge.pyw
Залил окончательную версию спеллера в SVN.
Нужно перекомпилировать формы при помощи файла compile.py. Это как обычно.
По умолчанию проверка орфографии отключена, и при непосредственном наборе текста подчеркивать не будет, потому что существенно вешает программу.
Работает всё следующим образом. Когда кода написано уже прилично, идём на вкладку код, и на панели справа нажимаем кнопку проверки орфографии. Если aspell правильно установлен и настроен на Русский словарь, то начнется процесс проверки орфографии. Если aspell в системе не найден, то будет выведено сообщение о невозможности проверки ошибок.
Если всё норм, то стиль текста пропадет (не получилось сделать по другому), и среди черного текста красным выделится текущее направильное слово. Можно навести курсор на слово и в подсказке увидеть варианты исправления, которые предлагает aspell. Если слово действительно неправильное, то щелкаем кнопку для исправления (карандашик на фоне таблички), или просто два раза кликаем по этому слову. Нас перенесет на вкладку, где ошибочное слово будет выделено, и его можно исправить. Исправляем слово, и снова переходим на вкладку код. При переходе, код генерируется заново, и, так как проверка орфографии активирована, то будет найдено следующее ошибочное слово.
Если слово правильное, или если оно неправильное, но вы хотите именно его, то вы нажимаете кнопку игнорировать слово (знак минуса на фоне таблички), тогда это слово занесется в игнор-лист, и при следующем появлении будет пропущено.
Так, постепенно, фиксятся все ошибки: либо непосредственным исправлением, либо игнорированием. Когда все ошибки найдены, то выведется сообщение, что проверка орфографии завершена. Можно будет переключиться на другой файл, и проверить орфографию там, или продолжить писать игру.
Не рекомендуется постоянно держать режим проверки орфографии включенным, так как это провоцирует задержки.
Также, игнор-лист можно редактировать и заполнять вручную, он находится в папке HOME/.PyIge/ignore.txt
Если понадобится, то можно использовать альтернативный спеллер, например не менее популярный hunspell.
Мне не сложно написать его поддержку.
P.S. Чтобы проверить, что aspell правильно работает, достаточно в командной строке набрать
aspell -a
и повводить туда разные русские слова. Посмотреть, что он выдает.
В винде пока вообще не тестировал нет виндового аспела.
В убунте всё из репов встало сразу и без ошибок.
Last edited by Simba (2010-07-28 20:38:35)
Простите, какую кнопку?
Last edited by Oreolek (2010-07-29 06:05:30)
Простите, какую кнопку?
Вот эту
(см. аттач)
Не забываем перекомпилировать формы при апдейте с SVN при помощи скрипта compyle.py!
alexander@Cortez:~/Программы/pyige/trunk$ ./compile.py
Cannot find file: icons/16x16/spellcheck.png
Compiling user interface files... [DONE]
При включении кнопки он выдаёт, что проверка орфографии недоступна. aspell -a работает на ура.
Oreolek
Стрянно.
Зайди в файл MainIge.py, в функцию InitSpell (строчка 129).
После except, добавь команду raise, таким образом
try:
....
....
except:
raise
self.speller = None
self.IgnoreList = None
При запуске программы в консоли вылетит ошибка. Выложи её текст. Посмотрим, на каком этапе мы свалились ![]()
Cannot find file: icons/16x16/spellcheck.png
иконка потерялась.
добавил её в svn.
Last edited by Simba (2010-07-29 11:48:35)
alexander@Cortez:~/Программы/pyige/trunk$ ./PyIge.pyw
An internal error occured. Please report all the output of the program,
including the following traceback, to developers of PyIge.
Traceback (most recent call last):
File "./PyIge.pyw", line 1157, in <module>
main(sys.argv)
File "./PyIge.pyw", line 1148, in main
window = IgeMainWin()
File "./PyIge.pyw", line 26, in __init__
IgeMain.__init__(self)
File "/home/alexander/Программы/pyige/trunk/MainIge.py", line 33, in __init__
self.InitSpell()
File "/home/alexander/Программы/pyige/trunk/MainIge.py", line 134, in InitSpell
open(path, 'w', encoding = 'utf-8').close()
IOError: [Errno 13] Отказано в доступе: '/home/alexander/.PyIge/ignore.txt'
С ошибкой разобрался. Раньше я запускал PyIge под sudo, поэтому ~/.PyIge создалось с owner=root.И все файлы в нём аналогично. Проверка правописания работает.
Last edited by Oreolek (2010-07-29 13:03:11)
Отлично! ![]()
Добавил автокомиляцию форм и ресурсов при первом запуске.
Теперь можно делать чек-аут, и сразу запускать PyIge.py прямо из гнома/кде/експлоера или что там у вас ![]()
Но внимание! Если вы сделали апдейт из свн, то всё-таки придется запускать compile.py вручную, потому что старые файлы присутствуют.
короче так и не собрал.
Пошел венду ремонтировать
Simba! Оч. прошу!
Сделай плз, чтобы можно было room в xroom переделывать -- страшно не хватает!
Подумай все-таки, что со скроллбарами делать? И с переносом строк. Я сам его убирал, но у меня горизонтальный скроллбар висит постоянно...
Автодополнение без хоткея, плз!
Хотя бы первое, мне не хочется комнаты по новой создавать!
Ну добавлю еще пожелание:
Подсветка ключевых слов инстеда типа room, obj... была бы кстати.
excelenter, ну ты привереда!
подсветку obj, room и т.д. не могу сделать, потому что вручную сложно и неприкольно, а лексер Lua не позволяет менять набор зарезервированных слов к сожалению. Есть варианты, которые можно покрутить, но это слишком маленькая фишка, чтобы убивать на неё столько времени. Овчинка выделки не стоит.
Я отключил нижний скрулбар из соображений ненужности. Если развернуть редактор на весь экран, то вмещается почти весь код.
Сделаю оцпию: нижний скрулбар+ нет переноса строк или нет нижнего скрулбара, и есть перенос строк.
Насчет пустого вертикального пока не знаю что сказать. Посмотрел другие IDE на scintilla, там всё нормально. У меня не получается с ним сладить(( Как найду решение - переделаю.
Остальные поправки принимаю. Они будут включены в следующий коммит. Плюс, автодополнение не будет пропадать при нажатии backspace. Ну и подтверждение удаления тоже будет опция, как ты просил. Благо, механизм работы с настройками в Qt проработан грамотно!
Когда в далекие времена я программировал на Delphi сохранение их в реестр Windows, то матерился в голос! Это при том, что проще Дельфи на том момент не было ничего, а слово Линукс не вызывало в голове никаких ассоциаций, кроме может быть Пингвина.
Last edited by Simba (2010-07-29 19:58:11)
Ну если сложно с подсветкой, то не надо, пофиг.
За остальное -- спасибо ![]()
На будущее:
В автодополнение так же можно засунуть переменные, находящиеся в блоках var, global
Их еще надо оттуда получить...
Проверил. Орфография работает.
2Peter
Взято с оффсайта Питона.
I decided to write something in 3.x but now someone wants to use it who only has 2.x. What do I do?
In addition to the 2to3 tool which allows 3.x code to be generated from 2.x source code, there's also the 3to2 tool, which aims to convert 3.x code back to 2.x code. In theory, this should work even better than going the other direction, since 3.x doesn't have as many nasty corner cases for the converter to handle (getting rid of as many of those as possible was one of the main reasons for breaking backward compatibility after all!). However, code which makes heavy use of 3.x only features (such as function annotations or extended tuple unpacking) is unlikely to be converted successfully.
It's probably also fair to say that 3to2 is the road less traveled compared to 2to3 at this stage, so you might come across a few rough edges here and there. However, if you want to write 3.x code, it's definitely an idea worth exploring.
Так что, всё должно получится! Где-то через неделю у меня будет интернет, поэскперементирую с этим ![]()
Это было бы здорово!
Еще бы импорт игр и все -- полное счастье ![]()
Добавил кнопку быстрого преобразования room в xroom и наоборот.
Исправил, когда autocompletion list исчезал при нажатии backspace.
Обновление в SVN, требуется перекомпиляция форм.
Сейчас добавляю новые настройки.
Peter, импорт - это чтобы существующие игры магическим образом превращались в "редакторнные"? В принципе квантового кота я в сумме часа за 4 перенес, а он не маленький...
Импорт нет, а экспорт игры в zip-архив можно попробовать. Понадобится еще один диалог, где нужно указывать, какие файлы включать в архив.
Вот бы ввести стандарт, что вся музфка хранится в директории mus, а вся графика в директории gfx...
Last edited by Simba (2010-08-01 16:48:20)
Имхо немного неудобно то, что автодополнение обновляется при сохранении -- иногда в списке просто нету того, что нужно, и приходится пересохранять.
И жду автодополнение без хоткея
Simba!
На винде последняя ревизия не работает ВООБЩЕ!
Вроде компилирую, все как обычно, но при запуске -- тишина.
Косячок.
Кое-что подправил, проверь сейчас.
Под виндой в следующий раз, если глюки, то файл PyIge.pyw открой в IDLE, запусти, и весь вывод красным мне на анализ ![]()
Все ок! Работает! Спасибо
Про глюки учту.
Powered by PunBB, supported by Informer Technologies, Inc.
Currently installed 7 official extensions. Copyright © 2003–2009 PunBB.