https://www.duolingo.com/VV-2005

Не работает DuoTweak

Перестал работать DuoTweak на главной странице. На вкладке -Форум появляется и появляется словарь. При возврате на главную исчезает и соответственно не меняется язык клавиатуры. Переустановка скрипта не помогает. Кто сталкивался с подобным и есть ли решение.

1 год назад

27 комментариев


https://www.duolingo.com/katarina686313

Есть. Это решение может работать практически на всех сайтах. Зайдите на форум. Нaжмите F12. Вы попадете в настройки браузера. Нажмите консоль. Скопируйте этот код - duo.old_web_url_whitelist=["^.+"]; и нажмите Enter. При этом нельзя перезагружать браузер. Это нужно будет делать постоянно.

1 год назад

https://www.duolingo.com/VV-2005

Спасибо! Получилось.

1 год назад

https://www.duolingo.com/saturn110
saturn110
  • 25
  • 7
  • 188

Как вариант пользуюсь Punto Switcher - кому лень раскладку переключать, но хочет пользоваться новой версией сайта.

1 год назад

https://www.duolingo.com/FieryCat
FieryCat
  • 25
  • 24
  • 13
  • 4
  • 1393

Вас перевели на новый код, в котором DuoTweak не работает. Форум все еще на старом коде.

1 год назад

https://www.duolingo.com/Svyat_Liza
Svyat_Liza
  • 21
  • 20
  • 15
  • 12
  • 11
  • 6
  • 4
  • 4
  • 827

Здравствуйте! :)

Перестал работать DuoTweak на главной странице. На вкладке -Форум появляется и появляется словарь.

У меня тоже самое.
Плюс: в списке изучаемых языков, когда я смотрю их с главной, отображаются только языки с русского, остальных нет.
screen Когда я захожу в чужой профиль, там теперь показывается сколько ХР до следующего уровня (хотя я что-то не помню, может, это было и до обновлений.
screen А так-у меня на ноуте, когда я зашла в навык французского, там кнопка "Закрепить навык" была вверху, а там месте, где она раньше была, написано "Эта реклама помогает нам сохранять обучение бесплатным", но самой рекламы не было. screen Скорей бы всё снова заработало, как надо! :)

1 год назад

https://www.duolingo.com/lesya__88

простите не подскажите почему когда я захожу с телефона нельзя зайти в аккаунт, которым я пользуюсь на ноуте, зачем просит создать новый акаунт???Спасибо

1 год назад

https://www.duolingo.com/katarina686313

Видимо, вы нажали - Создать аккаунт. Нужно найти кнопку - У меня уже есть аккаунт - или - Войти.

1 год назад

https://www.duolingo.com/Skay91
Skay91
  • 18
  • 7
  • 274

Захожу на сайт, давно небыл, и вижу что дизайн новый, дуотвик отвалился полностью :( Лично мне надоедало постоянно перключать раскладку. ПОковырялся в скрипте дуотвик, нашел еще один вариант реализации в интернете (тоже на данный момент нерабочий). Ну и занялся скрещиванием. Вроде все получилось и работает. Оно умееет автоматически транслировать клавиши в английскую, русскую, немецкую, украинскую раскладки :) Если кому тоже не хватало этого, пробуйте пользуйтесь

DuoKeySwitcher

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

1 год назад

https://www.duolingo.com/FieryCat
FieryCat
  • 25
  • 24
  • 13
  • 4
  • 1393

И тут обфускация кода :(

1 год назад

https://www.duolingo.com/Skay91
Skay91
  • 18
  • 7
  • 274

Взял пример с ДуоТвик. Но если отформатировать код то все вполне видно, просто у функций названия не совсем те. Коды в символы перевести не долго, можно какой нибудь скриптик написать в один проход. Да в интернете есть всякие деобфускаторы

Так как реверсил чужой код, не выкладывать же наработки без разрешения, поэтому тоже обфускацию сделал.

1 год назад

https://www.duolingo.com/FieryCat
FieryCat
  • 25
  • 24
  • 13
  • 4
  • 1393

А что, обфускация кода снимает проблему использование кода без разрешения автора? ;) Сдается мне, что ваши цели были другие.

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

1 год назад

https://www.duolingo.com/Skay91
Skay91
  • 18
  • 7
  • 274

И какие мои цели? Проблему не снимает, но оне не хотел афишировать, ну и я не буду его код афишировать, хоть там и осталось полторы строчки. Его вариант расширению языковых раскладок практически не подлежал, а в данном случае, просто добавить еще один массив символов. только думаю 4 языка достаточно.

Какое активное исопльзование массивов? там почти нет их, точнее один, для строковых переменных. Там больше подтормаживает первая прогрузка JQuery, так как на сайте теперь к ней не обратиться, приходится самому грузить. Благо расширение для пользовательских скриптов это делает грамотно.

95% функционала DuoTweak востановлению не подлежит (разве форумные фишки можно еще раскурить). В новой версии сайта выпилили все что только можно было исопльзовать %) то, что для textarea оставили атрибудт lang за счастье, а то про автопереключение в нужную раскладку можно было бы забыть. В упражнениях где вводтся только слово ,хорошо дают только на языке интерфейса а просят на изучаемом.

Вообще не понимаю кодеров которые все это делают. Как будто совершенно разные команды на аутсорсе пишут, мобильное приложение / сайт, не имеют почти пересекающегося функционала, и ресурсов, только дерево одно и уроки. Как так можно делать %)

1 год назад

https://www.duolingo.com/FieryCat
FieryCat
  • 25
  • 24
  • 13
  • 4
  • 1393

> Какое активное исопльзование массивов?

Каждое обращение к переменной, каждый вызов функции порождает обращение как минимум к одному массиву, а в среднем используется два, причем один из их, как правило, ассоциирован по ключу. Пример из вашего кода, последняя команда: wg5[_0x4443[264]]();. Есть команды с шестью обращениями к двум массивам там, где можно обойтись совсем без них.

> Если вы так сильно хотите, могу убрать обфускацию, мне так то все равно

Я сильно не хочу. Дело исключительно ваше и поступайте как хотите. Само по себе переключение раскладки мне не нужно, я уже ранее писал об этом. А чужой код смотрю для самообразования. Но так получилось, что в мире много скриптов которые я еще не смотрел и которые не обфусцированы.

> на js никогда не писал

Аналогично. На нем пишу только для duolingo.

1 год назад

https://www.duolingo.com/Skay91
Skay91
  • 18
  • 7
  • 274

Тот момент в коде. там и у меня массив). я развернул код который был в дуотвик, и на его основе уже пилил все. А там все функции были вмссиве. Я это менять не стал, тем более встретил подобное применение и в других местах где много связных функций. Сомневаюсь что если оно будет просто функциями - будет быстрее чем с массивом. Ну и не в данном случае, мы не с такими данными работаем где каждая милесекунда на счету.

А писать простыню кода - нет увольте, если в условии много что выполняется - инкапсулируй.

Сейчас уберу обфускацию .

1 год назад

https://www.duolingo.com/Skay91
Skay91
  • 18
  • 7
  • 274

убрал) будут конструктивные предложения - пулреквесты принимаются.

Можно посмотреть на ваши скрипты? интересно что еще людям тут на дуо может требоваться. Особенно с учетом такого урезания функционала.

1 год назад

https://www.duolingo.com/FieryCat
FieryCat
  • 25
  • 24
  • 13
  • 4
  • 1393

Можно посмотреть на ваши скрипты?

Да, можно: https://github.com/liuch/duolingo-scripts. Часть из них уже не актуальна в связи с последними нововведениями. Точнее, пока точно работают только два: DuoDirectLinks и DuoMoreLingots. У меня все руки не доходят до обновления тех, которые актуальны и удаления тех, что дополняют уже отключенный функционал.

убрал) будут конструктивные предложения - пулреквесты принимаются.

Ага, вижу. Серьезные предложения от меня ждать не стоит, т.к. для этого скрипт надо использовать, а я предпочитаю классический метод переключения раскладки :) Но что сразу бросилось в глаза, так это использование переменной при формировании html строки в функции showIndicaorLanguage. Если при обновлении кода в подсказке появится один из спец символов, поедет вся страница. Возможно это наследие DuoTweak, там такого кода было полно. Я бы это сделал через установку значения атрибута. Так безопасней.

1 год назад

https://www.duolingo.com/Skay91
Skay91
  • 18
  • 7
  • 274

Вообще, если есть полезные скрипты, давно надо было в теме собрать и прекрепить, вместо того же DuoTweak который уже ну никак неактуален, и автор пропал.

1 год назад

https://www.duolingo.com/Skay91
Skay91
  • 18
  • 7
  • 274

Замечание хорошее. Но в тултипе неоткуда взяться спецсимволам, так как мы сами задаем текст сообщения. А в lang - до этого куча проверок, чтоб данный вариант был в таблицах символов. Но Вы правы. поправлю потом.

Я тоже предпочтал классический вариант. Но на дуолинго часто переключать туда обратно приходится. А во время теста на время так парой еще отвлекся а потом набрана каша))

П.С.: квадратные скобки не всегда обращение к массиву. это один из вариантов нотации. И тот и другой вариант абсолютно равнозначны.

ALT

1 год назад

https://www.duolingo.com/FieryCat
FieryCat
  • 25
  • 24
  • 13
  • 4
  • 1393

Но в тултипе неоткуда взяться спецсимволам, так как мы сами задаем текст сообщения.

Это пока неоткуда. А вдруг в следующей версии тултип будет формироваться динамически? В одном известном нам скрипте данные вставлялись прямо из ответа сервера и массива локализации без каких либо проверок. Может сначала те данные тоже были статичными :)

1 год назад

https://www.duolingo.com/Skay91
Skay91
  • 18
  • 7
  • 274

P.P.S.: глянул скрипты, кажется я на них натыкался недавно :) очень много обработок получается вешается на document, и при достаточном количестве скриптов, это будет вызывать тормоза страницы. (я так же написал хех). Лучше привязываться к конкретным элементам, пытаться.

P.P.P.S: как же неудобно без ленты. :(

1 год назад

https://www.duolingo.com/FieryCat
FieryCat
  • 25
  • 24
  • 13
  • 4
  • 1393

Привязка к конкретным элементам тоже не идеальна. Бывает такое, что события об изменении элементов не прилетают. Возможно что разработчики просто смешивают jquery вызовы с прямой правкой DOM. В погружении это было точно. Оттого там память дико текла. В большинстве случаев ajax запросов не так много. Бывает, что на порядок меньше, чем правок нужных мне элементов. Вспоминаем про популярные посты. Да и работа с DOM через JS не такая и быстрая. Так что не факт, не факт... Но и не отрицаю, что вы правы. В своем коде стараюсь обходить задержки, где это возможно.

p.p.p.s. Угу :(

1 год назад

https://www.duolingo.com/Skay91
Skay91
  • 18
  • 7
  • 274

что и требовалось доказать. есть обфускация кода или нет - не имеет значения. Никто все равно не правит скрипт. Никто даже не написал что он не работает ни в коменте ни на гите. Видно как оно нужно.

Ппц упростили сайт, они бы еще на чистый хтмл перешли %)

11 месяцев назад

https://www.duolingo.com/FieryCat
FieryCat
  • 25
  • 24
  • 13
  • 4
  • 1393

Я не знаю что вы доказывали, но мне даже на email писали (нашли же!). Вот, свежий пример с обфускацией (неделя назад): https://www.duolingo.com/comment/25279632 Человеку сильно приперло, он нашел куда написать, даже если автор не доступен.

Лично я вашим скриптом не пользуюсь, зачем бы мне его править? Правда я и Дуотвиком (из ссылки выше) не пользуюсь, но человек попросил, а у меня было немного свободного времени.

Лично мне обфускация кода мешает хоть как-то начать доверять скрипту. А править чужие скрипты я предпочитаю через авторов, если они доступны :)

11 месяцев назад

https://www.duolingo.com/Skay91
Skay91
  • 18
  • 7
  • 274

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

П.с.: ппц, как упрощая настолько сайт, можно в итоге иметь детские болезни. Нарпимер кэш - я свой прогресс дропнул, а на форуме везде отметка 10 лвл))

11 месяцев назад

https://www.duolingo.com/FieryCat
FieryCat
  • 25
  • 24
  • 13
  • 4
  • 1393

На счет нет смысла - я с вами не соглашусь. Как я у же писал ранее, в чужие скрипты я не так уж редко смотрю, в том числе для того, чтобы узнать как это сделано у других. По крайней мере для меня есть смысл, даже если я не использую этот скрипт. Дело ваше. Я не вижу смысл офусцировать свой JS код, т.к. это не только уменьшает доверие к коду и автору, но и вообще лишнее действие, не приносящее абсолютно никакой выгоды в данном конкретном случае.

На счет обновленного форума - это не единственная его болезнь. Я по этому поводу даже отдельный пост написал.

11 месяцев назад
Изучайте язык всего по 5 минут день. Абсолютно бесплатно.