Azbuka 278 #309094 Posted January 9, 2016 (edited) Терпеть не могу исходники, в которых используются пробелы как отступы и для выравнивания блоков.Использование табов для вложенных блоков даёт возможность менять его размер в редакторе.Например, для сценариев sh можно использовать таб шириной в 8 символов, так как количество уровней вложенности в них редко превышает 2-3.В объектно-ориентированных языках гораздо больше уровней, из-за чего лучше использовать табы шириной в 4 символа.В XML/HTML приходится использовать табы шириной в 2 символа, так как там очень много уровней.Выравнивание блоков - ещё один аспект оформления исходника, в котором табы выигрывают. veryLong.Class.Name.Prop1 = func1(SomeARGS); veryLong.Class.Name.Property.Second = func2(SomeARGS); Если в данном примере использовать пробелы, то возникают две проблемы: При наборе текста вам нужно будет вручную вводить каждый пробел. При редактировании нужно будет снова вставлять\удалять пробелы. Но это решается использованием режима вставки. При использовании табов таких проблем нет, так как при редактированнии нужно поставить лишь один таб, и блоки будут выровнены автоматически. Edited January 9, 2016 by Azbuka 2 Quote Share this post Link to post Short link Share on other sites
KACTET 317 #309994 Posted January 16, 2016 (edited) Странник привет, видел видишь всё только молчишь. И всем привет господа читеры и программисты. Такой вопрос. Можно ли CUDA присобачить к игре и высчитывать то что нужно через эту библиотеку Nvidia? И как это сделать? Edited January 16, 2016 by KACTET 1 Quote Share this post Link to post Short link Share on other sites
SkepticalFox 1,420 #310236 Posted January 18, 2016 У меня два подозрения, либо регистронезависимость включена в игре, либо юзается co_filename вместо имени фала. У меня в Орионе и как я понимаю в стандартном питоне ни чего такого нет. Как это включить и где?Я вроде нашел. Нужно создать переменную окружения: PYTHONCASEOK If this is set, Python ignores case in import statements. This only works on Windows, OS X, OS/2, and RiscOS. Quote Share this post Link to post Short link Share on other sites
fecell 124 #310329 Posted January 19, 2016 (edited) Я вроде нашел. 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 January 19, 2016 by fecell Quote Share this post Link to post Short link Share on other sites
SkepticalFox 1,420 #310389 Posted January 19, 2016 (edited) @fecell, это к чему было? @StranikS_Scan, hex-viewer в Орионе планируется? Плагин для N++ довольно нестабильный( Edited January 19, 2016 by ShadowHunterRUS Quote Share this post Link to post Short link Share on other sites
StranikS_Scan 4,115 #310411 Posted January 19, 2016 hex-viewer в Орионе планируется? Нету нужного компонента. А ты вообще о каком хексе? В смысле байт-код разбирать редактировать и собирать обратно? Quote Share this post Link to post Short link Share on other sites
SkepticalFox 1,420 #310412 Posted January 19, 2016 В смысле байт-код разбирать редактировать и собирать обратно?Просто посмотреть. Нету нужного компонента.Grid не прокатит? Quote Share this post Link to post Short link Share on other sites
StranikS_Scan 4,115 #310413 Posted January 19, 2016 Grid не прокатит? Ну не серьезно же как-то. Хотя я тут вспомнил что TSynEdit поддерживает режим столбцы/колонки. Погляжу. А вообще зачем тебе это нужно? Quote Share this post Link to post Short link Share on other sites
SkepticalFox 1,420 #310414 Posted January 19, 2016 А вообще зачем тебе это нужно?да так... бинарники повсюду. Quote Share this post Link to post Short link Share on other sites
StranikS_Scan 4,115 #310415 Posted January 19, 2016 да так... бинарники повсюду. Чем HxD не устривает или тот супер-пупер MultiEx Commander? http://youtu.be/1IabAWG948Y Quote Share this post Link to post Short link Share on other sites
SkepticalFox 1,420 #310416 Posted January 19, 2016 Чем HxD не устривает или тот супер-пупер MultiEx Commander?я просто про планы спросил) меня сейчас устраивает N++ с hex плагином, но он часто падает и в нем нельзя выбрать кодировку символов в правом столбце. Quote Share this post Link to post Short link Share on other sites
StranikS_Scan 4,115 #310417 Posted January 19, 2016 я просто про планы спросил) меня сейчас устраивает N++ с hex плагином, но он часто падает и в нем нельзя выбрать кодировку символов в правом столбце. Покажи скрин как это вообще выглядит? Quote Share this post Link to post Short link Share on other sites
SkepticalFox 1,420 #310418 Posted January 19, 2016 Quote Share this post Link to post Short link Share on other sites
fecell 124 #310466 Posted January 20, 2016 (edited) я hiew32 для хекса использовал много лет, сейчас бесплатный аналог "biew" использую. красивостей нет - все в консольном виде, зато функциональный по самое не хочу. реализовывать в Орионе просмотр (и возможно редактирование) в хексе кажется излишним - достойный функционал делать долго, а на "залепуху" все равно время тратить на реализацию, а востребовано это будет лишь однажды - посмотреть и понять что толку от хекс просмотра никакого. Проще реализовать возможность запуска внешнего приложения для этой цели. Или https://github.com/monkeycz/pychrysanthemum использовать для редактирования байткода незащищенных скриптов. Edited January 20, 2016 by fecell Quote Share this post Link to post Short link Share on other sites
StranikS_Scan 4,115 #310662 Posted January 21, 2016 (edited) Вот еще один вопрос возник. Берем текст, в котором трижды встречается слово ну пусть PYTHON и выделяем одни из трех экземпляров этого слова в редакторе, Орион при этом подсвечивает два остальных слова и пишет кол-во найденных слов в статус баре "Repeats: 3". Проблема вот с этим количеством - сколько нужно писать 3 или 2? Вроде бы три, но один экземпляр слова как бы мы сами уже выделили. Edited January 21, 2016 by StranikS_Scan Quote Share this post Link to post Short link Share on other sites
SkepticalFox 1,420 #310666 Posted January 21, 2016 Вот еще один вопрос возник.а еще при снятии выделения Repeats: 3 остается... Quote Share this post Link to post Short link Share on other sites
StranikS_Scan 4,115 #310669 Posted January 21, 2016 а еще при снятии выделения Repeats: 3 остается... Но через пару секов исчезает. Это сделано чтобы не напрягаться. Quote Share this post Link to post Short link Share on other sites
SkepticalFox 1,420 #310671 Posted January 21, 2016 Но через пару секов исчезает. Это сделано чтобы не напрягаться.не, ну я сразу понял, что это фича) Quote Share this post Link to post Short link Share on other sites
StranikS_Scan 4,115 #311523 Posted January 30, 2016 (edited) Вышло обновление 1.3.2 ------------ Полный список изменений достаточно большой, с ним можно ознакомится в первом посте. Ниже напишу, что сделано из особо интересного: Перенёс в нативный код компонента TSynEditor все свои велосипеды - это подсветку отступов, выделений, парных скобок, подчеркиваний и всякого другого, зачем это сделано и что дало думаю догадаться не сложно, если скажем какой-то мой велосипед весил 200 строк, то после его реализации внутри кода компонента на это уже требуется 10-20 строк, а то и 4-5. Понятно что при этом исчезают тормоза с отрисовкой текста в редакторе, ни чего не мерцает все отрисовывается быстро и без косяков. Кстати параллельно с этим сразу же запилил подкраску строк стилями как в других редакторах, когда выделают текст и выбирают для него цвет фона. Наконец-то стали доступны для использования в редакторе табы как они есть. Они подсвечиваются в виде двойных стрелочек. Сейчас в программе можно задать режим вставки табов, либо как они есть #9, либо с автозаменой на пробелы (как было раньше). Любой желающий может переключиться с одного режима на другой в любой момент внизу через статус-бар или в окне настроек программы. Добавил простейшие элементы дебаггинга, оказалось что в Python4Delphi они были доступны изначально и требовалось всего лишь их правильно заюзать. Сделал проверку синтаксиса скрипта налету, путем вызова функции PyParser_SimpleParseString с последующим извлечением инфы об ошибке через PyErr_Print. Ошибка пишется в статус-баре, а чтобы её было заметно сделал так что строка курсора меняет свой цвет на розовый И также через обработку PyErr_Print сделал перехват ошибки при выполнении скрипта пока только через Exec script и Execute script, строчка где возникла ошибка выделяется ярким красным цветом. Добавил в главное меню и в статус бар выпадающее меню чтобы можно было отключаться/подключаться к Питону, также в настройках добавил опции чтоб можно было запустить программу без подключения к Питону. Вообщем изменений много, потому возможны косячки причем там, где их раньше не было. Поэтому просьба косячки, если видите, сразу их записывать и сюда публиковать, чтоб я мог подправить. Edited January 30, 2016 by StranikS_Scan 3 Quote Share this post Link to post Short link Share on other sites
SkepticalFox 1,420 #311529 Posted January 30, 2016 (edited) Отлично! Теперь можно нормально работать. Не любил я эти баги отрисовки... Осталась только проблема мелкого шрифта на hidpi мониторах. Edited January 30, 2016 by ShadowHunterRUS Quote Share this post Link to post Short link Share on other sites