kelciour
Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Цитата: Вообще жаль, что анки не позволяет редактировать карту прямо при просмотре. | В принципе для Anki 2.1 можно соорудить простенький костыль, воспользовавшись свойством contenteditable для добавления возможности редактирования текста в шаблон карточки и чуть-чуть изменив код аддона "Replay buttons on card" для сохранения отредактированного текста. По ссылке пример колоды и модифицированная версия аддона Replay buttons on card. Например, добавить в шаблон карточки: Код: <div contenteditable="true" data-field="Definition">{{Definition}}</div> | где data-field аттрибут совпадает с именем поля. И следующий код: Код: <script> var elements = document.querySelectorAll('div[contenteditable="true"]'); for (var i = 0; i < elements.length; i++) { elements[i].addEventListener("input", function() { pycmd("ankisave" + this.dataset.field + "#" + this.innerHTML); }, false); } </script> | И в аддоне "Replay buttons on card" изменить функцию review_link_handler_wrapper, добавив сохранение переданного значения: Код: def review_link_handler_wrapper(reviewer, url): """Play the sound or call the original link handler.""" if url.startswith("ankiplay"): play(url[8:]) elif url.startswith("ankisave"): fld, val = url.replace("ankisave", "").split("#") reviewer.card.note()[fld] = val reviewer.card.note().flush() else: original_review_link_handler(reviewer, url) | Добавлено: Аналогичным образом можно, например, при клике по картинке копировать ее в отдельное поле. По ссылке пример шаблона, аналогичным образом модифицированный аддон Replay buttons on card и файлик adobe_images.py (Adobe Stock) для использования с аддоном Fast Word Query. Для отображения картинок использовался jQuery аддон Image Picker. Добавлено: Цитата: Да и браузер сделан неудобно | Возможно, в каком-нибудь случае покажется удобным слегка поменять положение панелей в обозревателе карточек, передвинув блок с полями текущей карточки из нижней части экрана направо, т.е. справа от списка карточек. Для этого при активном основном окне Anki нажать на Код: чтобы открыть отладочную консоль и скопировать и вставить следующие строчки Код: browser = aqt.dialogs.open("Browser", mw) browser.form.splitter.setOrientation(Qt.Horizontal) | и нажать Ctrl+Enter. Чтобы вернуть всё, как было, т.к. изменения постоянные, скопировать и вставить следующие строчки: Код: browser = aqt.dialogs.open("Browser", mw) browser.form.splitter.setOrientation(Qt.Vertical) | и нажать Ctrl+Enter. Вроде как работает в Anki 2.0 и Anki 2.1. |