โครงการนี้ให้การใช้งานการปิดบังแบบเทมเพลตที่:
นี่คือความสำเร็จอย่างหมดจดผ่าน JavaScript ในเทมเพลตการ์ดและแอปพลิเคชั่นใหม่ของคุณสมบัติการสร้างการ์ดแบบเลือกในตัวของ Anki (ยอดเยี่ยม) ประโยชน์ที่ยิ่งใหญ่ของสิ่งนี้คือคุณสามารถสร้างการ์ด Cloze จากโน้ตที่มีอยู่ซึ่งคุณอาจมีการ์ดอยู่แล้ว ไม่มีการพึ่งพาประเภทโน้ต Cloze ของ Anki หรือประเภทโน้ตอื่น ๆ ซึ่งหมายความว่าคุณไม่จำเป็นต้องโยกย้ายการ์ดของคุณไปยังประเภทโน้ตใหม่ มันเข้ากันได้กับเดสก์ท็อป Anki, Ankimobile และ Ankidroid
การเริ่มต้นใช้งานเป็นเรื่องง่าย คุณสามารถดาวน์โหลดดาดฟ้าที่ใช้ร่วมกันหรือทำตามคำแนะนำสำหรับการตั้งค่าเทมเพลตด้วยตนเอง
การจำลองฟังก์ชั่น ANKI ด้วยเทมเพลต JavaScript และการ์ดไม่ใช่เป้าหมาย เป้าหมายคือความยืดหยุ่นไม่รู้จบ คุณสามารถเพิ่มการ์ด Cloze ลงในประเภทโน้ตที่มีอยู่ ("Cloze Anything") เพียงแค่เพิ่มฟิลด์ใหม่และเทมเพลตการ์ดตามคำแนะนำที่พบที่นี่ นอกจากนี้คุณยังสามารถปรับเปลี่ยนเทมเพลตได้อย่างสมบูรณ์โดยใช้เป็นคำแนะนำ
ด้วยการตั้งค่าเริ่มต้นนี้จะจำลองฟังก์ชั่นการปิดบังของ Anki อย่างไรก็ตามเทมเพลตสามารถกำหนดค่าได้สูงและให้คุณทำสิ่งที่คุณไม่สามารถทำได้อย่างง่ายดาย ด้านล่างเป็นบทสรุปของคุณสมบัติที่มีประโยชน์บางอย่างของแม่แบบและวิธีการนี้
[...] หรือ [hint] ในกรณีของคำใบ้ เทมเพลตให้คุณปรับแต่งสิ่งนี้ ตัวอย่างเช่นคุณสามารถใช้ขีดเส้นใต้และให้รูปแบบเป็น ___ หรือคุณอาจรวมคำใบ้เช่นเดียวกับใน ___ [hint] นอกจากนี้แทนที่จะเป็นอักขระ 3 ตัวคงที่คุณอาจมีตัวละครที่ไม่ใช่อวกาศแต่ละตัว ดังนั้นคุณสามารถมี ((c1::ab cdef::hint)) กลายเป็น __ ____ [hint]((c1::`a`bc `d`ef)) สามารถแสดงผลเป็น a__ d__ คุณสามารถเลือกเปิดเผยส่วนใดส่วนหนึ่งของเนื้อหาไม่ใช่แค่ในตอนแรก โปรดทราบว่าคุณสามารถทำ a((c1::bc)) d((c1::ef)) อย่างไรก็ตามไวยากรณ์ backtick อาจสะดวกกว่าปลั๊กอินเสริมยังมีให้โดยอัตโนมัติในการทำงานด้วยตนเอง (ขั้นต่ำ) โดยอัตโนมัติซึ่งจะต้องใช้เมื่อทำตามวิธีการนี้
มีสองตัวเลือกสำหรับการเริ่มต้น:
การติดตั้งปลั๊กอินขอแนะนำให้คุณแก้ไขการ์ด Cloze ได้ง่ายขึ้น แต่ไม่จำเป็นต้องใช้
เช่นเดียวกับเทมเพลต Cloze ของ Anki คุณต้องมีฟิลด์เพื่อมีเนื้อหาปิดบัง ออกจากการประชุมเป็นความคิดที่ดีที่จะให้ชื่อฟิลด์สิ้นสุดใน ปิดบัง ในกรณีที่คุณต้องการใช้ปลั๊กอินในภายหลัง สมมติว่าคุณตั้งชื่อมัน ExpressionCloze ตามที่แนะนำในคำแนะนำ เนื้อหา Cloze ถูกป้อนในฟิลด์นี้ในลักษณะเดียวกันกับเทมเพลต Cloze ของ Anki ความแตกต่างเพียงอย่างเดียวคือแทนที่จะเป็นรูปแบบ {{c1::text}} คุณใช้ ((c1::text)) จากนั้นคุณต้องมีฟิลด์เพื่อเปิดใช้งานการ์ด Cloze แต่ละใบ ดังนั้นสมมติว่าคุณต้องการสนับสนุนสาม Clozes คุณจะเพิ่มฟิลด์ ExpressionCloze1 , ExpressionCloze2 และ ExpressionCloze3 คุณป้อนข้อความใด ๆ ที่คุณต้องการลงในฟิลด์เหล่านี้เพื่อเปิดใช้งานการ์ด Cloze ที่เกี่ยวข้อง จากการประชุมปลั๊กอินใช้ 1
ตัวอย่างเช่นสมมติว่าคุณต้องการสร้างการ์ด Cloze สำหรับแต่ละคำในนิพจน์ IK Heb Honger คุณจะเขียนฟิลด์เช่นนี้:
สำหรับการแสดงผล HTML ของตัวอย่างนี้ดูตัวอย่างการ์ดด้านหน้าและด้านหลัง
เนื่องจากแต่ละฟิลด์ปิดบังมีค่าที่ไม่ว่างเปล่า 1 จึงจะสร้างการ์ดสำหรับแต่ละ c1 ถึง c3 หากคุณลบ 1 จาก ExpressionCloze3 แล้วการ์ดจะถูกสร้างขึ้นสำหรับ c1 และ c2 เท่านั้น
มาขุดว่าทั้งหมดนี้ทำงานอย่างไร คำแนะนำที่อ้างอิงก่อนหน้านี้มีแม่แบบต่อไปนี้สำหรับการ์ด Cloze ใบแรก ขอให้สังเกตว่าเนื้อหาทั้งหมดของด้านหน้าของการ์ดถูกล้อมรอบด้วยแท็กเงื่อนไขตาม ExpressionCloze และ ExpressionCloze1 ซึ่งหมายความว่าทั้งสองฟิลด์จะต้องไม่ว่างเปล่าสำหรับการสร้างการ์ดเนื่องจากวิธีการสร้างการ์ด ANKI ดังนั้นหากฟิลด์เหล่านี้ว่างเปล่าการ์ดที่เกี่ยวข้องจะไม่ถูกสร้างขึ้น สคริปต์ ommitted จะดูที่หมายเลขที่ค่าสำหรับ data-card จะสิ้นสุดลงแล้วอัปเดตเนื้อหาภายใน cloze <div> ตามลำดับ ดังนั้นหากค่าของ data-card คือ ExpressionCloze2 มันก็รู้ว่าจะซ่อน ((c2::text)) และแสดงคนอื่น ๆ
{{#ExpressionCloze}}
{{#ExpressionCloze1}}
<div id="cloze" data-card="{{Card}}" data-cloze-show-before="all" data-cloze-show-after="all">
{{ExpressionCloze}}
</div>
{{Meaning}}
<script>
// .. ommitted ...
</script>
{{/ExpressionCloze1}}
{{/ExpressionCloze}}
เทมเพลตยังรองรับคำแนะนำในการลบ Cloze เช่นเดียวกับในระบบของ Anki ตัวอย่างเช่นสำหรับตัวอย่างด้านล่าง heb จะถูกแทนที่ด้วย [verb] แทน [...]
((c1::Ik)) ((c2::heb::verb)) ((c3::honger)).
สำหรับรายละเอียดทั้งหมดเกี่ยวกับวิธีการตั้งค่าแม่แบบการ์ดของคุณด้วยตนเองดูคำแนะนำ หรือคุณสามารถใช้ดาดฟ้าที่ใช้ร่วมกันเป็นจุดเริ่มต้นและใช้คำแนะนำเป็นข้อมูลอ้างอิงในวิธีการแก้ไขเพื่อตอบสนองความต้องการของคุณ
เทมเพลตมีการตั้งค่าหลายอย่างสำหรับการควบคุมวิธีการลบการปิดบังการแสดงผล ดูการกำหนดค่าสำหรับรายละเอียด
ปลั๊กอินทำสองสิ่งเพื่อให้คุณสามารถแก้ไขการลบ Cloze ได้ง่ายขึ้นเมื่อทำตามวิธีการนี้:
[...] ของ Anki ในตัวแก้ไขเพื่อให้คุณสามารถใช้กับโน้ตอื่น ๆ นอกเหนือจากที่ใช้ตามประเภท Cloze ของ AnkiExpressionCloze (หรือฟิลด์ชื่อคล้ายกัน) ไปยังฟิลด์อื่น ๆ ExpressionCloze1 , ExpressionCloze2 ฯลฯ ที่เปิดใช้งานการ์ด Cloze ที่สอดคล้องกัน ปุ่ม [...] ทำงานเหมือนกันเมื่อใช้กับหนึ่งในประเภทโน้ตตามประเภทการปิดบังของ Anki มิฉะนั้นหากชื่อฟิลด์จบลงด้วย การปิดบัง เช่น ExpressionCloze มันจะห่อข้อความที่เลือกเช่นใน ((c1::text)) นี่เป็นพฤติกรรมปกติของ Anki ที่มี Clozes ยกเว้นใช้วงเล็บแทนการจัดฟันแบบหยิก
ปุ่ม [...] มีคุณสมบัติที่เป็นประโยชน์ additonal ที่ถ้าคุณกดในขณะที่ฟิลด์ว่างที่ลงท้ายด้วย cloze มีโฟกัสมันจะคัดลอกข้อความจากฟิลด์อื่นที่มีชื่อเดียวกันลบคำต่อท้าย cloze ตัวอย่างเช่นหากคุณคลิกปุ่มในขณะที่มุ่งเน้นไปที่ ExpressionCloze มันจะคัดลอกข้อความจาก Expression
นอกจากนี้คุณยังสามารถแก้ไขฟิลด์ Cloze โดยไม่ต้องใช้ปุ่ม [...] ปลั๊กอินตรวจสอบการเปลี่ยนแปลงและระบุรูปแบบเช่น ((c1::text)) มันทำให้ฟิลด์ Cloze ที่สอดคล้องกันนั้นว่างเปล่าหรือมี 1 ขึ้นอยู่กับการมีการลบ Cloze ตัวอย่างเช่นหากคุณเติมเต็ม ExpressionCloze ด้วย ((c1::Ik)) ((c2::heb)) ((c3::honger)). จากนั้นมันจะเติมใน 1 สำหรับแต่ละ ExpressionCloze1 , ExpressionCloze2 และ ExpressionCloze3 ถ้าคุณแก้ไขให้เป็น ((c1::Ik)) ((c2::heb)) honger. จากนั้นมันจะทำให้ ExpressionCloze3 ว่างเปล่า
ปลั๊กอินเพิ่มการกระทำสองอย่างในเบราว์เซอร์ภายใต้การแก้ไข -> ปิดกั้นอะไรก็ได้ ทั้งคู่ทำงานในทุกสิ่งที่เลือกไว้ในเบราว์เซอร์
สิ่งนี้ทำให้การปิดบังโดยอัตโนมัติจากฟิลด์ทั้งหมด ตัวอย่างเช่นสมมติว่าคุณมีฟิลด์ชื่อ ExpressionCloze และ Expression หาก ExpressionCloze ว่างเปล่าการกระทำนี้จะทำให้เนื้อหาของ Expression ถูกคัดลอกไปยัง ExpressionCloze และกลายเป็น Cloze เช่น ((c1::content)) นอกจากนี้ยังอัปเดต ExpressionCloze1 เพื่อให้การ์ด Cloze ถูกสร้างขึ้น สิ่งนี้มีประโยชน์เมื่อคุณมีโน้ตจำนวนมากที่มีเนื้อหาสั้น ๆ ที่คุณต้องการปิดเนื้อหาทั้งหมด มันมีประสิทธิภาพมากขึ้นในการปิดกั้นสิ่งเหล่านี้เป็นกลุ่มมากกว่าทีละคน
โปรดทราบว่าสิ่งนี้คือการใช้ Cloze เพื่อสร้างบัตรการผลิต (เช่นให้ความหมายในภาษาแม่ของคุณสร้างการแสดงออกในภาษาที่คุณกำลังเรียนรู้) ดังนั้นทำไมไม่เพียงแค่สร้างเทมเพลตการ์ดการผลิตแทนที่จะใช้ Cloze? ในบางกรณีสิ่งนี้อาจมีประสิทธิภาพมากกว่าการใช้ปิดบัง อย่างไรก็ตามมีเหตุผลสองประการที่ทำให้ Cloze มีประโยชน์:
โดยทั่วไปแล้วจะทำให้แน่ใจว่าฟิลด์ Cloze นั้นสอดคล้องกับฟิลด์ที่สอดคล้องกันที่รับผิดชอบในการสร้างการ์ด ตัวอย่างเช่นถ้า ExpressionCloze มี ((c1::Ik)) ((c2::heb)) ((c3::honger)). จากนั้นสิ่งนี้จะทำให้มั่นใจได้ว่า ExpressionCloze1 , ExpressionCloze2 และ ExpressionCloze3 แต่ละอันเต็มไปด้วย 1 แต่ ExpressionCloze4 จะว่างเปล่าถ้ามันมีอยู่ การกระทำนี้ไม่จำเป็นต้องใช้ในขณะที่ใช้ปลั๊กอินเนื่องจากปลั๊กอินช่วยให้มั่นใจได้ว่าฟิลด์เหล่านี้ได้รับการอัปเดตเมื่อคุณเปลี่ยนเนื้อหา แต่ถ้าคุณทำการนำเข้าหรือถ้าคุณแก้ไขโน้ตก่อนใช้ปลั๊กอินสิ่งนี้สามารถใช้เพื่อแก้ไขฟิลด์เพื่อซิงค์
Anki ได้รับการสนับสนุนในตัวสำหรับ Cloze แล้ว แล้วทำไมต้องใช้ Cloze อะไร?
ข้อดี:
จุดด้อย:
type: คำนำหน้าเพื่อเปิดใช้งานประเภทในคำตอบไม่รองรับ แม่แบบการ์ดเข้ากันได้กับเดสก์ท็อป Anki, Ankimobile และ Ankidroid
ปลั๊กอินทำงานร่วมกับ Anki Desktop 2.1 ฉันไม่มีแผนที่จะเพิ่มการสนับสนุน 2.0
ฉันยังไม่ได้ทดสอบการโต้ตอบของปลั๊กอินกับปลั๊กอิน Cloze อื่น ๆ เช่น Cloze (ซ่อนทั้งหมด) และ cloze ซ้อนทับกัน หากคุณพบปัญหาโปรดยื่นปัญหาและฉันจะพยายามอย่างเต็มที่เพื่อแก้ไขปัญหา
ปลั๊กอินต่อไปนี้ได้รับการรายงานว่ามีปัญหาความเข้ากันได้กับปลั๊กอินนี้:
นอกเหนือจากแรงบันดาลใจที่ดึงมาจากระบบ Cloze ของ Anki แล้วยังมีปลั๊กอิน Anki Cloze ที่เกี่ยวข้องสองสามตัวที่ให้แรงบันดาลใจสำหรับคุณสมบัติที่พบที่นี่ ขอบคุณผู้เขียนทุกคนสำหรับความคิดที่ใส่เข้าไปใน Anki และปลั๊กอินเหล่านี้ที่ช่วยพัฒนาแนวคิดใหม่ ๆ
ลิขสิทธิ์ 2019-2021 Matthew Hayes
ได้รับใบอนุญาตภายใต้ใบอนุญาต Apache เวอร์ชัน 2.0 ("ใบอนุญาต"); คุณไม่สามารถใช้ไฟล์นี้ยกเว้นตามใบอนุญาต คุณอาจได้รับสำเนาใบอนุญาตที่
http://www.apache.org/licenses/license-2.0
เว้นแต่ว่ากฎหมายที่บังคับใช้หรือตกลงเป็นลายลักษณ์อักษรซอฟต์แวร์ที่แจกจ่ายภายใต้ใบอนุญาตจะถูกแจกจ่ายตาม "ตามพื้นฐาน" โดยไม่มีการรับประกันหรือเงื่อนไขใด ๆ ไม่ว่าจะโดยชัดแจ้งหรือโดยนัย ดูใบอนุญาตสำหรับภาษาเฉพาะที่ควบคุมการอนุญาตและข้อ จำกัด ภายใต้ใบอนุญาต