MySQL में कमांडलाइन अनकी फ्लैशकार्ड संपादित करने के लिए


3

मुझे 77777 में एक छोटा सा बदलाव करने की जरूरत है Anki फ्लैशकार्ड, अधिमानतः प्रोग्रामेटिक रूप से, उनके प्रतिस्थापित टूल का उपयोग करके नहीं जो पर्याप्त नहीं है। मैंने मूल रूप से CSV फ़ाइलों के रूप में डेटा आयात किया है जहाँ डेटा को संशोधित करना आसान है। मुझे उनका जवाब मिला समर्थन : वे MySQL को डेटाबेस के रूप में उपयोग कर रहे हैं:

खैर, शुरुआत के लिए, मुझे लगता है कि एक की समझ की आवश्यकता होगी   MySQL डेटाबेस को पढ़ना और लिखना। अगर यह कुछ आप नहीं है   पता है, मैं वहीं रुक जाऊंगा।

मैं उदाहरण के लिए उनके डेटाबेस स्कीमा को जानना चाहूंगा। उदाहरण pseudocommand जिसे मैं एक डेक पर चलाना चाहूंगा

sed s/;/1)/ [anki-deck's-cards]

जहां केवल नईलाइन्स की पहली प्रविष्टियों का मिलान होता है। दरअसल, आवश्यकता कुछ सरल अंकगणित करने की है। मैं उनके MySQL के संबंधक विवरण को नहीं जानता। मैं उनके MySQL विवरण का अवलोकन प्राप्त करना चाहूंगा।

आप एंकी फ्लैशकार्ड में डेक में कार्ड कैसे संपादित कर सकते हैं?


यदि परिवर्तन ऐसा है कि कार्ड का केवल एक ही पक्ष बदलता है, तो आप यह सुनिश्चित करते हुए अद्यतन किए गए CSV फ़ाइल को फिर से आयात कर सकते हैं कि कार्ड में आगे (या पीछे) की समान सामग्री है जो फिर से जोड़े जाने के बजाय अधिलेखित / अपडेट की गई हैं। तब आप दूसरी तरफ बदलाव कर सकते हैं, यदि आवश्यक हो, और दोहराएं। क्या इससे आपकी समस्या हल हो जाएगी?
musically_ut

जवाबों:


2

एपीकेजी फाइलों में एक एम्बेडेड साइक्लाइट डेटाबेस फाइल होती है। उदाहरण के लिए डेक दक्षिण अमेरिका की राजधानी को Capital_Cities_of_South_America.apkg के रूप में डाउनलोड किया जाता है जो वास्तव में एक ज़िप फ़ाइल है। इसे खोलना कई फाइलें निकालेगा

$ unzip ../Capital_Cities_of_South_America.apkg
Archive:  ../Capital_Cities_of_South_America.apkg
  inflating: collection.anki2        
 extracting: 0                       
 extracting: 1                       
 extracting: 2                       
 extracting: 3                       
 extracting: 4                       
 extracting: 5                       
 extracting: 6                       
 extracting: 7                       
 extracting: 8                       
 extracting: 9                       
 extracting: 10                      
 extracting: 11                      
  inflating: media                   
$

लेकिन दिलचस्प एक संग्रह है ।anki2 जो एक साइक्लाइट फाइल है।

$ sqlite3 collection.anki2   
SQLite version 3.13.0 2016-05-18 10:57:30
Enter ".help" for usage hints.
sqlite> .tables
cards   col     graves  notes   revlog
sqlite> .dump notes
PRAGMA foreign_keys=OFF;
BEGIN TRANSACTION;
CREATE TABLE notes (
    id              integer primary key,   /* 0 */
    guid            text not null,         /* 1 */
    mid             integer not null,      /* 2 */
    mod             integer not null,      /* 3 */
    usn             integer not null,      /* 4 */
    tags            text not null,         /* 5 */
    flds            text not null,         /* 6 */
    sfld            integer not null,      /* 7 */
    csum            integer not null,      /* 8 */
    flags           integer not null,      /* 9 */
    data            text not null          /* 10 */
);
INSERT INTO "notes" VALUES(1475868715241,'P1Dh$4r;;P',1475850444584,1476205558,13,' South_America capitals ','Capital of French Guiana?Cayenne<div><br /></div><div><img src="053_Hood_135.jpg" /></div>','Capital of French Guiana?',511387741,0,'');
INSERT INTO "notes" VALUES(1476020723949,'D3h>i:~1(}',1475850444584,1476205484,13,' South_America capitals ','Capital of Brazil?Brasilia<div><br /></div><div><img src="brasilia-006.jpg" /></div>','Capital of Brazil?',139249191,0,'');
INSERT INTO "notes" VALUES(1476020740304,'I=w5}{qq&z',1475850444584,1476021426,4,' South_America capitals ','Capital of Argentina?Buenos Aires','Capital of Argentina?',4279953785,0,'');
INSERT INTO "notes" VALUES(1476020761836,'PpW<QQ2n;<',1475850444584,1476205269,13,' South_America capitals ','Capital of Chile?Santiago<div><br /></div><div><img src="santiago.jpg" /><br /><div><br /></div><div><br /></div></div>','Capital of Chile?',857145718,0,'');
INSERT INTO "notes" VALUES(1476020893034,'AQILm-om{w',1475850444584,1476205286,13,' South_America capitals ','Capital of Suriname?Paramaribo<div><br /></div><div><img src="paste-68513318306560.jpg" /><br /><div><br /></div><div><br /></div></div>','Capital of Suriname?',3475624840,0,'');
INSERT INTO "notes" VALUES(1476021133011,'ssX|ur}vz;',1475850444584,1476205460,13,' South_America capitals ','Capital of Guyana?Georgetown<div><br /></div><div><img src="georgetown-guyana.jpg" /></div>','Capital of Guyana?',1383243232,0,'');
INSERT INTO "notes" VALUES(1476021159549,'d_}(&UOcN0',1475850444584,1476205474,13,' South_America capitals ','Capital of Venezuela?Caracas<div><br /></div><div><img src="CaracasAvila.jpg" /></div>','Capital of Venezuela?',3460219780,0,'');
INSERT INTO "notes" VALUES(1476021305082,'hF6^dUFOU_',1475850444584,1476205202,13,' South_America capitals ','Capital of Colombia?Bagota<div><br /></div><div><!--anki--><img src="asuncion-paraguay.jpg" /></div>','Capital of Colombia?',3745298320,0,'');
INSERT INTO "notes" VALUES(1476021329578,'BF<CKCw&@X',1475850444584,1476021353,4,' South_America capitals ','Capital of Ecuador?Quito','Capital of Ecuador?',93805795,0,'');
INSERT INTO "notes" VALUES(1476021353212,'s-x)P3;UJ+',1475850444584,1476205337,13,' South_America capitals ','Capital of Peru?Lima<div><br /></div><div><img src="lima-miraflores-rw.jpg" /></div>','Capital of Peru?',1899195448,0,'');
INSERT INTO "notes" VALUES(1476021369814,'p~,SBD&um#',1475850444584,1476205352,13,' South_America capitals ','Capital of Bolivia?La Paz<div><br /></div><div><img src="La_Paz_Skyline.jpg" /></div>','Capital of Bolivia?',2475357406,0,'');
INSERT INTO "notes" VALUES(1476021495601,'h(+l3fJs48',1475850444584,1476205311,13,' South_America capitals ','Capital of Uruguay?Montevideo<div><br /></div><div><img src="montevideo-uruguay.jpg" /></div><div><br /></div><div>[sound:rec1476205311.mp3]</div>','Capital of Uruguay?',3423412928,0,'');
INSERT INTO "notes" VALUES(1476021520017,'g[QWvAO[:]',1475850444584,1476205181,13,' South_America capitals ','Capital of Paraguay?Asuncion<div><br /></div><div><img src="asuncion-paraguay.jpg" /></div><div><br /></div><div>[sound:rec1476205181.mp3]</div>','Capital of Paraguay?',3088135100,0,'');
CREATE INDEX ix_notes_usn on notes (usn);
CREATE INDEX ix_notes_csum on notes (csum);
COMMIT;
sqlite> 

इस बिंदु पर आप मानक sql कमांड वाली प्रविष्टियों को अपडेट करने के लिए स्वतंत्र हैं।


यहाँ कुछ बुनियादी उदाहरण देना बहुत अच्छा होगा, आदि आपके सभी Anki कार्ड में एक टाइपो को प्रतिस्थापित करते हैं।
Léo Léopold Hertz 준영

1
के साथ JSON को निर्यात संपादन के लिए CrowdAnki प्लगइन शायद एक आसान रास्ता होगा।
hlovdal

0

Aki के मैनुअल में एक सहायता है, aki कार्ड XML में लिखे गए हैं, और टे टेम्पलेट में एक सिमिलैट सिंटैक्सिस है http://ankisrs.net/docs/manual.html#cards-and-templates

आयात कर रहा है   Anki पाठ फ़ाइलों को आयात कर सकता है, निर्यात फीचर, Mnemosyne 2.0 .db फ़ाइलों और SuperMemo .xml फ़ाइलों द्वारा निर्मित अनकी डेक पैक कर सकता है। फ़ाइल आयात करने के लिए, फ़ाइल मेनू पर क्लिक करें और फिर "आयात करें"।


1
वे अपने सिस्टम के साथ MySQL डेटाबेस का उपयोग कर रहे हैं। XML एक अलग कहानी है।
Léo Léopold Hertz 준영
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.