Jump to content
Korean Random
StranikS_Scan

PjOrion - редактирование, компиляция, декомпиляция, обфускация модов (Версия: 1.3.5 Дата: 11.08.2019)

Пользуетесь ли вы Орионом?  

310 members have voted

You do not have permission to vote in this poll, or see the poll results. Please sign in or register to vote in this poll.

Recommended Posts

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

Использование табов для вложенных блоков даёт возможность менять его размер в редакторе.
Например, для сценариев sh можно использовать таб шириной в 8 символов, так как количество уровней вложенности в них редко превышает 2-3.
В объектно-ориентированных языках гораздо больше уровней, из-за чего лучше использовать табы шириной в 4 символа.
В XML/HTML приходится использовать табы шириной в 2 символа, так как там очень много уровней.

Выравнивание блоков - ещё один аспект оформления исходника, в котором табы выигрывают.

veryLong.Class.Name.Prop1           = func1(SomeARGS);
veryLong.Class.Name.Property.Second = func2(SomeARGS);

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

  • При наборе текста вам нужно будет вручную вводить каждый пробел.
  • При редактировании нужно будет снова вставлять\удалять пробелы. Но это решается использованием режима вставки.

При использовании табов таких проблем нет, так как при редактированнии нужно поставить лишь один таб, и блоки будут выровнены автоматически.

Edited by Azbuka
  • Upvote 2

Share this post


Link to post

Short link
Share on other sites

Странник привет, видел видишь всё только молчишь.

И всем привет господа читеры и программисты.

 

Такой вопрос. Можно ли CUDA присобачить к игре и высчитывать то что нужно через эту библиотеку Nvidia?

И как это сделать?

Edited by KACTET
  • Downvote 1

Share this post


Link to post

Short link
Share on other sites

У меня два подозрения, либо регистронезависимость включена в игре, либо юзается co_filename вместо имени фала. У меня в Орионе и как я понимаю в стандартном питоне ни чего такого нет. Как это включить и где?

Я вроде нашел. Нужно создать переменную окружения:

PYTHONCASEOK
    If this is set, Python ignores case in import statements. This only works on Windows, OS X, OS/2, and RiscOS.

Share this post


Link to post

Short link
Share on other sites
Я вроде нашел.

 

C:\Python27>python.exe -?

usage: C:\Python27\python.exe [option] ... [-c cmd | -m mod | file | -] [arg] ...

Options and arguments (and corresponding environment variables):

-B     : don't write .py[co] files on import; also PYTHONDONTWRITEBYTECODE=x

-c cmd : program passed in as string (terminates option list)

-d     : debug output from parser; also PYTHONDEBUG=x

-E     : ignore PYTHON* environment variables (such as PYTHONPATH)

-h     : print this help message and exit (also --help)

-i     : inspect interactively after running script; forces a prompt even

         if stdin does not appear to be a terminal; also PYTHONINSPECT=x

-m mod : run library module as a script (terminates option list)

-O     : optimize generated bytecode slightly; also PYTHONOPTIMIZE=x

-OO    : remove doc-strings in addition to the -O optimizations

-R     : use a pseudo-random salt to make hash() values of various types be

         unpredictable between separate invocations of the interpreter, as

         a defense against denial-of-service attacks

-Q arg : division options: -Qold (default), -Qwarn, -Qwarnall, -Qnew

-s     : don't add user site directory to sys.path; also PYTHONNOUSERSITE

-S     : don't imply 'import site' on initialization

-t     : issue warnings about inconsistent tab usage (-tt: issue errors)

-u     : unbuffered binary stdout and stderr; also PYTHONUNBUFFERED=x

         see man page for details on internal buffering relating to '-u'

-v     : verbose (trace import statements); also PYTHONVERBOSE=x

         can be supplied multiple times to increase verbosity

-V     : print the Python version number and exit (also --version)

-W arg : warning control; arg is action:message:category:module:lineno

         also PYTHONWARNINGS=arg

-x     : skip first line of source, allowing use of non-Unix forms of #!cmd

-3     : warn about Python 3.x incompatibilities that 2to3 cannot trivially fix

file   : program read from script file

-      : program read from stdin (default; interactive mode if a tty)

arg ...: arguments passed to program in sys.argv[1:]

 

Other environment variables:

PYTHONSTARTUP: file executed on interactive startup (no default)

PYTHONPATH   : ';'-separated list of directories prefixed to the

               default module search path.  The result is sys.path.

PYTHONHOME   : alternate <prefix> directory (or <prefix>;<exec_prefix>).

               The default module search path uses <prefix>\lib.

PYTHONCASEOK : ignore case in 'import' statements (Windows).

PYTHONIOENCODING: Encoding[:errors] used for stdin/stdout/stderr.

PYTHONHASHSEED: if this variable is set to 'random', the effect is the same

   as specifying the -R option: a random value is used to seed the hashes of

   str, bytes and datetime objects.  It can also be set to an integer

   in the range [0,4294967295] to get hash values with a predictable seed.

 

Edited by fecell

Share this post


Link to post

Short link
Share on other sites

 

 

hex-viewer в Орионе планируется?

 

Нету нужного компонента.

 

А ты вообще о каком хексе? В смысле байт-код разбирать редактировать и собирать обратно? 

Share this post


Link to post

Short link
Share on other sites

В смысле байт-код разбирать редактировать и собирать обратно?

Просто посмотреть.

Нету нужного компонента.

Grid не прокатит?

Share this post


Link to post

Short link
Share on other sites

 

 

Grid не прокатит?

 

Ну не серьезно же как-то. Хотя я тут вспомнил что TSynEdit поддерживает режим столбцы/колонки. Погляжу.

 

А вообще зачем тебе это нужно?

Share this post


Link to post

Short link
Share on other sites

Чем HxD не устривает или тот супер-пупер MultiEx Commander?

я просто про планы спросил)

меня сейчас устраивает N++ с hex плагином, но он часто падает и в нем нельзя выбрать кодировку символов в правом столбце.

Share this post


Link to post

Short link
Share on other sites

я просто про планы спросил)

меня сейчас устраивает N++ с hex плагином, но он часто падает и в нем нельзя выбрать кодировку символов в правом столбце.

 

Покажи скрин как это вообще выглядит?

Share this post


Link to post

Short link
Share on other sites

я hiew32 для хекса использовал много лет, сейчас бесплатный аналог "biew" использую.

красивостей нет - все в консольном виде, зато функциональный по самое не хочу.

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

Проще реализовать возможность запуска внешнего приложения для этой цели.

Или https://github.com/monkeycz/pychrysanthemum использовать для редактирования байткода незащищенных скриптов.

Edited by fecell

Share this post


Link to post

Short link
Share on other sites

Вот еще один вопрос возник. Берем текст, в котором трижды встречается слово ну пусть PYTHON и выделяем одни из трех экземпляров этого слова в редакторе, Орион при этом подсвечивает два остальных слова и пишет кол-во найденных слов в статус баре "Repeats: 3". Проблема вот с этим количеством - сколько нужно писать 3 или 2? Вроде бы три, но один экземпляр слова как бы мы сами уже выделили.

Edited by StranikS_Scan

Share this post


Link to post

Short link
Share on other sites

а еще при снятии выделения Repeats: 3 остается...

 

Но через пару секов исчезает. Это сделано чтобы не напрягаться.

Share this post


Link to post

Short link
Share on other sites

Но через пару секов исчезает. Это сделано чтобы не напрягаться.

не, ну я сразу понял, что это фича)

Share this post


Link to post

Short link
Share on other sites

Вышло обновление 1.3.2

------------

 

Полный список изменений достаточно большой, с ним можно ознакомится в первом посте. Ниже напишу, что сделано из особо интересного:

  1. Перенёс в нативный код компонента TSynEditor все свои велосипеды - это подсветку отступов, выделений, парных скобок, подчеркиваний и всякого другого, зачем это сделано и что дало думаю догадаться не сложно, если скажем какой-то мой велосипед весил 200 строк, то после его реализации внутри кода компонента на это уже требуется 10-20 строк, а то и 4-5. Понятно что при этом исчезают тормоза с отрисовкой текста в редакторе, ни чего не мерцает все отрисовывается быстро и без косяков. Кстати параллельно с этим сразу же запилил подкраску строк стилями как в других редакторах, когда выделают текст и выбирают для него цвет фона.
  2. Наконец-то стали доступны для использования в редакторе табы как они есть. Они подсвечиваются в виде двойных стрелочек. Сейчас в программе можно задать режим вставки табов, либо как они есть #9, либо с автозаменой на пробелы (как было раньше). Любой желающий может переключиться с одного режима на другой в любой момент внизу через статус-бар или в окне настроек программы.
  3. Добавил простейшие элементы дебаггинга, оказалось что в Python4Delphi они были доступны изначально и требовалось всего лишь их правильно заюзать.
    • Сделал проверку синтаксиса скрипта налету, путем вызова функции PyParser_SimpleParseString с последующим извлечением инфы об ошибке через PyErr_Print. Ошибка пишется в статус-баре, а чтобы её было заметно сделал так что строка курсора меняет свой цвет на розовый
    • И также через обработку PyErr_Print сделал перехват ошибки при выполнении скрипта пока только через Exec script и Execute script, строчка где возникла ошибка выделяется ярким красным цветом.
  4. Добавил в главное меню и в статус бар выпадающее меню чтобы можно было отключаться/подключаться к Питону, также в настройках добавил опции чтоб можно было запустить программу без подключения к Питону.

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

Edited by StranikS_Scan
  • Upvote 3

Share this post


Link to post

Short link
Share on other sites

Отлично!

Теперь можно нормально работать.

Не любил я эти баги отрисовки...

 

Осталась только проблема мелкого шрифта на hidpi мониторах.

Edited by ShadowHunterRUS

Share this post


Link to post

Short link
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...