0 голосов
757 просмотров

Есть несколько других сообщений, в которых упоминается процессор (CPU), но я не уверен, напрямую ли моя проблема с этим связана, поэтому я начал новую тему. Извините, если мне следовало ответить в более ранней теме.
Я всегда считал, что PT8 немного медленный, но у меня много ресурсов, которые прокручиваются одновременно, поэтому я решил, что это просто так. Я надеялся, что PT9 будет быстрее, но он такой же. Обычно у меня открыт Chrome, но даже когда я его закрываю, это не кажется ускоряющим процессом. Некоторые поиски действительно быстрые, даже если у них много результатов (например, «reckon» нашёл 275 результатов менее чем за секунду), но некоторые очень медленные и на самом деле никогда не дают результатов (например, «. (see» занял несколько минут, прежде чем мне пришлось использовать диспетчер задач, чтобы закрыть PT, несколько раз). Когда это происходит, процессор, кажется, загружен почти на 100%.

Я использую Windows 10 (1903) и у меня 16 ГБ ОЗУ. Процессор, если это кому-то что-то говорит, такой:
image

Есть ли у кого-нибудь идеи, как ускорить PT в целом или заставить работать все поиски?

Переведено машиной с языка English
Paratext от (213 очков)
снова показан | 757 просмотров

3 Ответов

0 голосов
Лучший ответ

Пожалуйста, сообщайте о таких проблемах через Help > Give feedback. Ни один поиск не должен занимать больше нескольких секунд на приличном компьютере.
Такой тип проблемы обычно возникает из-за того, что мы создаем регулярное выражение внутри для выполнения поиска, и у нас было несколько случаев, когда сгенерированное регулярное выражение создает бесконечный цикл с отрицательным просмотром назад (известным как катастрофический возврат и никогда не завершается). Похоже, вы нашли еще один случай этой проблемы.

Переведено машиной с языка English
от [Expert]
(16,7тыс. очков)

снова показан

Сообщено

Переведено машиной с языка English

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

Может ли кто-нибудь сказать мне правильные варианты «RegexBuddy» для вариантов регулярных выражений, используемых в следующих местах:

  • Paratext 9 Find/Replace
  • Paratext 9 RegexPal
  • Changes.txt, FinalChanges.txt, PrintDraftChanges.txt, DBLchanges.txt и т. д.
  • SIL Encoding Converters
  • Grep Styles in InDesign
Переведено машиной с языка English
0 голосов

Ну, вы определенно нашли лучшее поисковое выражение для тестирования разработчиками. Я только что поискал
. (see
в полном библейском проекте и начал замерять время. Я сдался через 4,5 минуты и отменил поиск. У меня процессор i7 10-го поколения с 6 ядрами и 16 ГБ ОЗУ, поэтому это может парализовать компьютер любого человека.

Я только что попробовал 9.1, и он не работает лучше.

Переведено машиной с языка English
от [Moderator]
(1,3тыс. очков)

снова показан

Если вы снимете отметку с поля «Игнорировать различия в пробелах» (под More>>), это изменит ситуацию?

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

Переведено машиной с языка English

12 секунд. Кажется, у нас есть проблема с опцией «Игнорировать различия в пробелах».

Переведено машиной с языка English
0 голосов

Я могу ответить только за PT9 Find/Replace, RegexPal, PrintDraftChanges.txt и DBLchanges.txt. Все они используют встроенный движок регулярных выражений .Net: C# (.NET 2.0–4.8 & .NET Core 1.0–3.0).

Переведено машиной с языка English
от [Expert]
(16,7тыс. очков)

снова показан

В этом безобидном тексте скрыто нечто очень важное. Вы имеете в виду, что Paratext 9 RegExPal теперь использует тот же вариант регулярных выражений, что и Paratext Find/Replace? Это огромная и очень желанная новость, хотя мне придется пересмотреть мою библиотеку регулярных выражений. Это того стоит.

Переведено машиной с языка English

Я думаю, что да. Это немного сложно.

В Paratext 7.x RegExPal использовал Python для выполнения поиска по регулярным выражениям. Чтобы упростить код в Paratext 8, мы перешли на использование IronPython, который является реализацией Python с использованием .Net. Судя по исходному коду IronPython, похоже, что он использует движок регулярных выражений .Net для реализации регулярных выражений Python.

Однако, поскольку есть небольшие различия между обычным Python и реализациями регулярных выражений .Net, я предполагаю, что IronPython должен вносить небольшие изменения в выражения, чтобы сделать их совместимыми с реализацией .Net. Я не на 100% уверен, делает ли он какую-то обработку RE, чтобы заставить его работать, или эти изменения могут сделать IronPython немного отличным от обычного .Net или нет. :sweat_smile:

Переведено машиной с языка English

Я хотел бы отметить, что в Find (Поиск) переводы строк игнорируются, поэтому вы не можете искать что-то вроде \\s .*, чтобы найти заголовки разделов. Даже если вы включаете (?-s), переводы строк игнорируются.

Переведено машиной с языка English

anon848905, ограничение, которое вы отмечаете в диалоговом окне Find (Поиск), проблематично. В последние месяцы многие выражения, которыми я делюсь с пользователями, больше не работают (если они в pt9) из-за этого «игнорирования перевода строк». Я часто использую «до» с помощью отрицательных классов… самые распространенные из них:

  • до новой строки: [^\r]+
  • до следующего маркера (на той же строке) [^\r\\]+

Эти выражения (или техника) для ограничения поиска контекстом больше не работают.

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

Переведено машиной с языка English

Одно из того, что вы можете сделать, чтобы поделиться сложным поиском RegEx с другими пользователями, — это экспортировать список RegExPal, немного поправить его в текстовом редакторе и отправить им для открытия в окне списка (List Window).

Переведено машиной с языка English

Похожие вопросы

0 голосов
1 ответ 194 просмотров
Two of our translators are reporting PT 7.5 freezing on their computers. They are both Windows 8.1 and PT is up-to- ... what PT was doing that made this happen? Thank you, mnjames
mnjames 1,9тыс. задал вопрос июн 23, 2015
Welcome to Support Bible, where you can ask questions and receive answers from other members of the community.
May the God who gives endurance and encouragement give you the same attitude of mind toward each other that Christ Jesus had.
Romans 15:5
3,045 вопросов
6,005 ответов
5,671 комментариев
2,026 пользователей