| 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.
 |