คอมไพเลอร์ CoffeeScript เขียนในบริสุทธิ์ CoffeeScript ใช้ DSL ขนาดเล็กด้านบนของเครื่องกำเนิดไฟฟ้า parser Jison และสามารถใช้ได้เป็นยูทิลิตี้ Node.js
คอมไพเลอร์หลัก แต่ไม่ได้ขึ้นอยู่กับโหนดและสามารถทำงานในสภาพแวดล้อมเซิร์ฟเวอร์อื่น ๆ ข้าง JavaScript หรือในเบราว์เซอร์
CoffeeScript ใช้งูหลามสไตล์ช่องว่างอย่างมีนัยสำคัญดังนั้นปลายสายจะถือเป็นตอนจบรหัสเช่นกัน
มีอะไรใหม่ ในข่าวประชาสัมพันธ์ฉบับนี้.
- แก้ไขข้อผิดพลาดโหมดนาฬิกานำมาใช้ใน 1.9.1 เมื่อรวบรวมหลายไฟล์ที่มีชื่อไฟล์เดียวกัน.
- แก้ไขข้อผิดพลาดสำหรับผลผลิตที่มีรอบการแสดงออกนี้.
- เพิ่มตัวเลือกทับทิมสไตล์ -r จะ REPL ซึ่งช่วยให้โมดูลที่ต้องดำเนินการก่อนที่จะมี --eval หรือ --interactive.
- ใน & # x3c; ประเภทสคริปต์ = & quot; text / CoffeeScript & quot; & # x3e; แท็กที่เป็นไปได้เพื่อหลีกเลี่ยงการร้องขอเบราว์เซอร์ที่ซ้ำกันสำหรับไฟล์ .coffee ตอนนี้คุณสามารถใช้แอตทริบิวต์ข้อมูล src แทน src.
- แก้ไขข้อผิดพลาดเล็ก ๆ น้อย ๆ สำหรับ IE8, ES5 ที่เข้มงวดและการแสดงออกปกติ Browserify.
สิ่งที่ใหม่ ในรุ่น 1.9.2:
- แก้ไขข้อผิดพลาดโหมดนาฬิกานำมาใช้ใน 1.9.1 เมื่อรวบรวมหลายไฟล์ที่มีชื่อไฟล์เดียวกัน.
- แก้ไขข้อผิดพลาดสำหรับผลผลิตที่มีรอบการแสดงออกนี้.
- เพิ่มตัวเลือกทับทิมสไตล์ -r จะ REPL ซึ่งช่วยให้โมดูลที่ต้องดำเนินการก่อนที่จะมี --eval หรือ --interactive.
- ใน & # x3c; ประเภทสคริปต์ = & quot; text / CoffeeScript & quot; & # x3e; แท็กที่เป็นไปได้เพื่อหลีกเลี่ยงการร้องขอเบราว์เซอร์ที่ซ้ำกันสำหรับไฟล์ .coffee ตอนนี้คุณสามารถใช้แอตทริบิวต์ข้อมูล src แทน src.
- แก้ไขข้อผิดพลาดเล็ก ๆ น้อย ๆ สำหรับ IE8, ES5 ที่เข้มงวดและการแสดงออกปกติ Browserify.
มีอะไรใหม่ ในรุ่น 1.9.1:
- CoffeeScript ขณะนี้สนับสนุนกำเนิด ES6 เครื่องกำเนิดไฟฟ้าเป็นเพียงฟังก์ชั่นที่ทำให้.
- แยกที่มีประสิทธิภาพมากขึ้นและข้อความผิดพลาดที่ดีขึ้นสำหรับสตริงและ regexes -. โดยเฉพาะอย่างยิ่งที่เกี่ยวกับการแก้ไข
- เปลี่ยนกลยุทธ์ในการสร้างชื่อตัวแปรภายในคอมไพเลอร์.
- คงเข้ากันได้ REPL กับรุ่นล่าสุดของโหนดและ Io.js.
- ต่างๆแก้ไขข้อผิดพลาด.
สิ่งที่ใหม่ ในรุ่น 1.8.0:
- ตัวเลือก --join ของ CLI อยู่ในขณะนี้ เลิก.
- แหล่งที่มาของแผนที่ตอนนี้ใช้ .js.map เป็นไฟล์นามสกุลแทนเพียง .map.
- CLI ตอนนี้ออกด้วยรหัสทางออก 1 เมื่อไม่สามารถเขียนไฟล์ไปยังดิสก์.
- คอมไพเลอร์ไม่เกิดปัญหาอีกต่อไปใน unterminated สายเดียวที่ยกมา.
- ข้อมูลสถานที่คงที่ interpolations สตริงซึ่งทำให้แผนที่แหล่งที่มาออกจากซิงค์.
- เครื่องหมายผิดพลาดในข้อความผิดพลาดคือตอนนี้ตำแหน่งที่ถูกต้องถ้ารหัสเยื้องกับแท็บ.
- แก้ไขข้อผิดพลาดเล็กน้อยในการจัดรูปแบบแผนที่ patched แหล่ง CoffeeScript ร่องรอยของสแต็ค.
- ประกอบ %% ขณะนี้ coerces สิทธิของตัวถูกดำเนินการเพียงครั้งเดียว.
- ตอนนี้มันเป็นไปได้ที่จะต้องใช้ไฟล์ CoffeeScript จาก Cakefiles โดยไม่ต้องลงทะเบียนคอมไพเลอร์เป็นครั้งแรก.
- CoffeeScript REPL มีการส่งออกในขณะนี้และสามารถที่จำเป็นต้องใช้ 'กาแฟสคริปต์ / repl.
มีอะไรใหม่ ในรุ่น 1.7.0:
- ข้อความผิดพลาดที่ดีขึ้น, แผนที่แหล่งที่มาและร่องรอยสแต็ค แหล่งที่มาของแผนที่ตอนนี้ใช้การปรับปรุง // ไวยากรณ์ #.
- ชั้นนำ ตอนนี้ปิดการโทรทั้งหมดที่เปิดให้สามารถไวยากรณ์ผูกมัดง่าย.
- วงเล็บปิดขณะนี้คุณสามารถเยื้องและดังนั้นจึงไม่ก่อให้เกิดข้อผิดพลาดที่ไม่คาดคิด.
- เพิ่ม ** // %% และผู้ประกอบการและ ... การขยายตัวในรายการพารามิเตอร์และการแสดงออก destructuring.
- การจัดรูปแบบของการรวบรวมความคิดเห็นบล็อกได้รับการปรับปรุง.
- ไม่มีโฟลเดอร์ -p เพิ่มเติมบน Windows.
- เลือกวัตถุส่งผ่านไปยัง CoffeeScript ไม่กลายพันธุ์อีกต่อไป.
มีอะไรใหม่ ในรุ่น 1.6.3:
- CoffeeScript REPL ตอนนี้จำได้ว่าประวัติของคุณระหว่างการประชุม เช่นเดียวกับที่เหมาะสมควร REPL.
- ตอนนี้สามารถใช้ในโหนดต้องโหลดไฟล์ .coffee.md ความรู้ด้าน CoffeeScript เบราว์เซอร์, ข้อความ / ความรู้-CoffeeScript แท็กสคริปต์.
- คำสั่งกาแฟ --lint เก่าได้ถูกลบออก มันเป็นประโยชน์ในขณะที่ แต่เดิมที่ทำงานเกี่ยวกับคอมไพเลอร์ แต่ได้รับการค้นพบโดย JSHint ตอนนี้คุณอาจใช้ -l จะผ่านไฟล์รู้ในกว่า stdio.
มีอะไรใหม่ ในรุ่น 1.6.1:
- คงถดถอย 1.5.0 กับสายหลายนัย กับวัตถุนัยเยื้อง การรวมกันของสายงานโดยปริยายและวัตถุโดยปริยายโดยทั่วไปควรจะแยกวิเคราะห์ที่ดีกว่าตอนนี้ -. แต่ก็ยังไม่ได้เป็นรูปแบบที่ดีรังพวกเขามากเกินไป
- .coffee.md อยู่ในขณะนี้ได้รับการสนับสนุนเป็นนามสกุลไฟล์ CoffeeScript รู้สำหรับเครื่องมือที่มีอยู่ .litcoffee ยังคงเป็นหนึ่งที่ยอมรับ.
- แก้ไขรายย่อยหลายรอบคุณสมบัติสมาชิกวิธีการที่ถูกผูกไว้และซุปเปอร์ในการประกาศระดับ.
สิ่งที่ใหม่ ในรุ่น 1.5.0:
- CoffeeScript REPL จะขึ้นอยู่ในขณะนี้บนโหนด js REPL และควรทำงานได้ดีขึ้นและอื่น ๆ กันเอง.
- กลับค่าอย่างชัดเจนจากการก่อสร้างเป็นที่ต้องห้ามในขณะนี้ หากคุณต้องการที่จะกลับค่าโดยพลการใช้ฟังก์ชั่นคอนสตรัคไม่ได้.
- ตอนนี้สามารถห่วงมากกว่าอาร์เรย์หลังโดยไม่ต้องมีการจัดการด้วยตนเองกับดัชนี: สำหรับรายการในรายการโดย -1
- สถานที่แหล่งที่มาจะถูกเก็บไว้ในขณะนี้ใน CoffeeScript AST แม้ว่าแผนที่แหล่งที่ยังไม่ได้ถูกปล่อยออกมา.
มีอะไรใหม่ ในรุ่น 1.4.0:
- คอมไพเลอร์ CoffeeScript ขณะนี้ไมโครซอฟท์แถบ UTF-8 BOM ถ้ามีช่วยให้คุณสามารถรวบรวมไฟล์ที่มา BOM-borked.
- คง Node / เรียบเรียงคำเตือนคัดค้านโดยการเอา registerExtension และย้ายจาก path.exists เพื่อ fs.exists.
- ปรับแต่งขนาดเล็กเพื่อรวบรวมแดง, backticks, หั่นและข้อผิดพลาดสำหรับคีย์ตัวอักษรที่ซ้ำกันในวัตถุ.
มีอะไรใหม่ ในรุ่น 1.3.2:
- ภายในของฟังก์ชั่นที่ซ้อนกันภายในของวิธีการเช่น ก็ตอนนี้เป็นไปได้ที่จะเรียกซุปเปอร์น่าเชื่อถือมากขึ้น (เดินซ้ำขึ้นไป).
- ตัวแปรชื่อวงไม่ได้มีการกำหนดขอบเขตการวิเคราะห์พฤติกรรมที่แตกต่างจากตัวแปรอื่น ๆ ในท้องถิ่น.
- แก้ไขสำหรับเครื่องหมายซุกซ่อนอยู่ภายใน LHS ของ destructuring ที่ได้รับมอบหมาย.
- การแก้ไขที่จะรวบรวมเวลาของเราโหมดเข้มงวดห้ามของตัวอักษรแปด.
มีอะไรใหม่ ในรุ่น 1.3.1:
- REPL ตอนนี้มีประโยชน์ใหม่หลายสาย โหมดสำหรับการป้อนบล็อกขนาดใหญ่ของรหัส มันมีประโยชน์เมื่อตัวอย่างการคัดลอกและวางลงใน REPL เข้าสู่โหมดหลายสายพร้อม Ctrl-V คุณอาจตอนนี้การป้อนข้อมูลโดยตรงลงในท่อ REPL.
- CoffeeScript ตอนนี้พิมพ์สร้างหัวรุ่น CoffeeScript ที่ด้านบนของแต่ละไฟล์ที่รวบรวม.
- การกำหนดเงื่อนไขของตัวแปรที่ไม่ได้กำหนดไว้ก่อนหน้านี้หรือ b = ตอนนี้ถือว่าผิดพลาดทางไวยากรณ์.
- ปรับแต่งเพื่อให้ความหมายของสิ่งที่ต้องทำซึ่งขณะนี้สามารถใช้งานได้ง่ายขึ้นจำลอง namespace: ทำ (x = 1, y = 2) - & # x3e; ...
- ดัชนีห่วงอยู่ในขณะนี้ไม่แน่นอนภายในย้ำห่วงและไม่เปลี่ยนรูประหว่างพวกเขา.
- ปลายทางทั้งสองชิ้นจะได้รับอนุญาตในขณะนี้ที่จะถูกมองข้ามเพื่อความมั่นคงได้อย่างมีประสิทธิภาพสร้างสำเนาตื้นของรายการ.
- ปรับแต่งเพิ่มเติมและ improvments กาแฟ --watch ภายใต้โหนดของ & quot; ใหม่ & quot; ดูไฟล์ API ดูตอนนี้จะเตือนโดยค่าเริ่มต้นถ้าคุณแนะนำไวยากรณ์ผิดพลาดเป็นสคริปต์ดู ในขณะนี้เรายังไม่สนใจไดเรกทอรีที่ซ่อนโดยค่าเริ่มต้นเมื่อดูซ้ำ.
มีอะไรใหม่ ในรุ่น 1.2.0:
- การปรับปรุงหลาย --watch และเครื่องชงกาแฟ - ร่วม ตอนนี้คุณอาจจะใช้ทั้งสองร่วมกันเช่นเดียวกับการเพิ่มและลบไฟล์และไดเรกทอรีที่อยู่ในโฟลเดอร์ --watch'd.
- คำสั่งโยนในขณะนี้สามารถนำมาใช้เป็นส่วนหนึ่งของการแสดงออก.
- บล็อกความคิดเห็นที่ด้านบนของไฟล์ในขณะนี้จะปรากฏขึ้นที่ด้านนอกของเสื้อคลุมปิดเพื่อความปลอดภัย.
- แก้ไขจำนวนเล็กน้อย 1.1.3 ถดถอยต้องทำอย่างไรกับผู้ประกอบการต่อท้ายและสายที่ยังไม่เสร็จและที่สำคัญมากขึ้น 1.1.3 การถดถอยที่ก่อให้เกิดการทำงานที่ถูกผูกไว้ภายในฟังก์ชั่นระดับที่ถูกผูกไว้ที่จะมีการไม่ถูกต้องนี้.
มีอะไรใหม่ ในรุ่น 1.1.3:
- CoffeeScript รวบรวม JS ตอนนี้สิ่งที่พยายามที่จะออกจากพื้นที่และ ให้มันสามารถอ่านได้อย่างที่คุณเห็นในตัวอย่างในหน้านี้.
- ตอนนี้สามารถโทรสุดในวิธีการระดับชั้นในร่างกายของชั้นเรียนและวิธีการเรียนที่ถูกผูกไว้ในขณะนี้รักษาบริบทที่ถูกต้องของพวกเขา.
- JavaScript ได้ให้การสนับสนุนเสมอตัวเลขฐานแปด 010 คือ 8 และตัวเลขฐานสิบหก 0xf คือ 15 แต่ตอนนี้ยัง CoffeeScript สนับสนุนเลขฐานสอง. 0b10 2
- โมดูล CoffeeScript ได้รับการซ้อนกันภายใต้ไดเรกทอรีย่อยที่จะทำให้มันง่ายขึ้นที่จะต้องใช้องค์ประกอบแต่ละส่วนแยกกันโดยไม่ต้องใช้ NPM ตัวอย่างเช่นหลังจากการเพิ่มโฟลเดอร์ CoffeeScript เพื่อเส้นทางของคุณ: ต้อง (สคริปต์กาแฟ / lexer)
- มีใหม่เป็น & quot; การเชื่อมโยง & quot; มีบทบาทสำคัญในพยายาม CoffeeScript บนหน้าเว็บนี้ ใช้มันเพื่อรับความคิดเห็นร่วมกันสำหรับสคริปต์ตัวอย่างของคุณ.
- กาแฟมี --watch ตอนนี้ทำงานเฉพาะบน Node.js 0.6.0 และสูงกว่า แต่ตอนนี้ยังใช้งานได้อย่างถูกต้องบน Windows.
มีอะไรใหม่ ในรุ่น 1.1.2:
- CoffeeScript ใช้ Function.prototype.bind พื้นเมือง ฟังก์ชั่นตัวอักษรผูกพันที่มีให้บริการ.
- สำหรับการแก้ไข: การจัดรูปแบบบล็อกแสดงความคิดเห็น = สะสมโทรนัยกับโครงสร้างการควบคุม, การภาวนาโดยนัยของลอง / จับบล็อกข้อโต้แย้ง variadic รั่วไหลจากขอบเขตท้องถิ่นหมายเลขบรรทัดในข้อผิดพลาดไวยากรณ์ต่อไปนี้ heregexes เข้าถึงทรัพย์สินในตัวอักษรจำนวนวงเล็บ มุ่งวิธีการเรียนและซุปเปอร์ที่มีชื่อที่สงวนไว้ยกเครื่อง REPL อัฒภาครวบรวมติดต่อกันบล็อกแสดงความคิดเห็นในวัตถุที่เรียกว่าโดยปริยายและข้อผิดพลาด Chrome.
มีอะไรใหม่ ในรุ่น 1.1.1:.
- ปล่อยแก้ไขข้อผิดพลาดสำหรับชั้นเรียนที่มีฟังก์ชั่นคอนสตรัคภายนอก
มีอะไรใหม่ ในรุ่น 1.1.0:
- เมื่อใช้ผ่านทางปฏิบัติการกาแฟ process.argv และ เพื่อนกันแล้วรายงานกาแฟแทนโหนด.
- เข้ากันได้ดีกับโมดูล Node.js 0.4.x การเปลี่ยนแปลงการค้นหา.
- การส่งออกใน REPL อยู่ในขณะนี้ colorized เช่นโหนดคือ.
- ให้ CoffeeScripts ตัดแบ่งของคุณชื่อเมื่อใช้ --join มีผลบังคับใช้ในขณะนี้.
- แก้ไขสำหรับ lexing สารประกอบส่วน / = เป็น regex ตั้งใจ.
- แท็กข้อความ / CoffeeScript ทั้งหมดในขณะนี้ควรจะดำเนินการในลำดับที่พวกเขากำลังรวม.
- แก้ไขปัญหากับ subclasses ขยายโดยใช้ฟังก์ชั่นคอนสตรัคภายนอก.
- คงห่วงอนันต์ขอบในกรณี addImplicitParentheses.
- คงชะลอตัวชี้แจงกับโซ่ยาวของสายฟังก์ชั่น.
- Globals ไม่รั่วไหลเข้าไปใน CoffeeScript REPL.
- พารามิเตอร์ splatted มีการประกาศในท้องถิ่นเพื่อฟังก์ชั่น.
มีอะไรใหม่ ในรุ่น 1.0.1:.
- แก้ไขข้อผิดพลาดที่มีการระบุ lexer Unicode
- ปรับปรุง REPL เข้ากันได้กับ Node.js 0.3.7.
- คงต้องทางญาติใน REPL.
- ลากกลับมาและกลับไม่ได้กำหนดจะเพิ่มประสิทธิภาพในขณะนี้ออกไป.
- ต้องหยุดแกน Node.js & quot; util & quot; โมดูลสำหรับกลับเข้ากันได้กับ Node.js 0.2.5.
- แก้ไขกรณีที่ผลตอบแทนตามเงื่อนไขที่จะทำให้เกิด fallthrough ในงบเปลี่ยน.
- วัตถุว่างที่เพิ่มประสิทธิภาพในการกำหนด destructuring.
มีอะไรใหม่ ในรุ่น 0.6.2:
- คำสั่งกาแฟในขณะนี้จะรักษาโครงสร้างไดเรกทอรีเมื่อรวบรวม ไดเรกทอรีเต็มรูปแบบของสคริป คงที่สองที่ได้รับการละเว้นการป้องกันไม่ให้คอมไพเลอร์ CoffeeScript จากการทำงานที่อาศัยอยู่ภายใน Internet Explorer ตอนนี้มีไวยากรณ์สำหรับความคิดเห็นบล็อกในทำนองเดียวกันกับ heredocs CoffeeScript ของ ECMA ซื่อสัตว์แบบแห้งแบบการจับคู่ได้รับการสนับสนุนในขณะนี้ที่ชื่อของสถานที่ให้บริการเป็นเช่นเดียวกับชื่อของค่า: {ชื่อยาว}: บำบัด จับคู่รูปแบบที่ได้รับอนุญาตขณะนี้อยู่ในตัวแปรเข้าใจ เว้นแต่จะได้รับอนุญาตในขณะนี้ในรูปแบบบล็อก จนกว่าลูปที่ถูกเพิ่มเป็นตรงกันข้ามในขณะที่ลูป งบสวิทช์ที่ได้รับอนุญาตตอนนี้ไม่มีข้อวัตถุสวิทช์ เข้ากันได้กับ Node.js v0.1.95.
ต้องการ
- Node.js 0.8.0 หรือสูงกว่า
ความคิดเห็นที่ไม่พบ