Closed WritingWithFire closed 2 years ago
我看到上述截图显示了释义部分的html格式。能不能查看和对比一下词头字段(比如这里是blonde)的html格式的(失效)前后对比?因为目前格式的css是藏在词头的
不管是损坏前还是损坏后的卡片,expression字段的html格式都只有单词本身(还是说我查看html格式的方法是错的?)
不知道你用什么看到。应该在anki客户端的卡片编辑界面看。
你要不把你的模版给我一份。存一张卡片打包一个apkg,发给我。然后给我看看你的odh里的anki选项,主要是字段映射。我明天下载一个最新版anki看看能不能重现你的问题
是这个吗
我是点击这里看到的
ODH选项:
我的卡片: DBUG.zip
看了一下我这边已经重现了这个问题。
本来ODH在制卡的时候,前端代码里,会把一段css样式附在definition(单一释义)或者definitions(全部释义) 字段里 https://github.com/ninja33/ODH/blob/35f5f4ec764b12dacdddbb7751bc0156d8e4a87f/src/fg/js/frontend.js#L146-L148
样式在词典脚本里,是这个样子的 https://github.com/ninja33/ODH/blob/35f5f4ec764b12dacdddbb7751bc0156d8e4a87f/src/dict/builtin_encn_Collins.js#L111-L122
这么做主要是为了考虑到有的人完全不会使用anki的样式区,那用ODH制卡的时候,可以得到和弹窗一样的“所见即所得”的卡片。
如果你制卡后,完全没点进过释义区,那么这段css还是保留得
但如果你点进这个释义区,再出来,那么anki得自动保存,就把这段css给escape掉了,这个可能是新版的新特性,防止你放一些非html的脚本或者样式。
一个补救的办法是把这段css 直接放到你卡片模板的样式区。那么不管释义区的css有没有消失,这段样式始终有效
问题已经解决了,谢谢老黄。
参见:https://github.com/ninja33/ODH/issues/238
上述issue中,我曾经提到过格式失效的问题,但之前我把它归因于ODH的制卡问题,在2.1.50更新到2.1.51之后,ODH制卡失败的bug被修复了,但是格式失效依然存在,其触发方式和我之提到过的触发方式是一样的,这次值得注意的是:ODH制卡之后,第一次浏览卡片,格式是正常的(可就是说ODH正常工作),第二次(不一定是第二次,也可能是浏览多次之后)浏览的时候格式失效。
损坏之前:
损坏之后:
其他有价值的发现: 这个失效是可以同步到手机上面的,如下:![1f99faac1a39547f5865fa6be3fb3b8](https://user-images.githubusercontent.com/66851780/165536981-01863791-0602-44dc-be2c-c864b2ed7ef9.jpg)
虽然这和ODH无关,但我希望得到这个问题的答案。。。以及如何将失效的卡片恢复