Mac OS Lion เปลี่ยนไปใช้การใช้งานตัวดึงข้อมูลบรรทัด (LF '\ n') สำหรับการขึ้นบรรทัดใหม่แทนที่จะส่งคืนค่าขนส่ง (CR '\ r') หรือไม่


29

ฉันเปลี่ยนมาใช้ Lion ซักพักแล้วเพิ่งสังเกตว่าเมื่อฉันบันทึกไฟล์ข้อความใน TextEdit จะใช้ LF เพื่อแบ่งบรรทัด ฉันมองไปรอบ ๆ ทุกที่ที่ฉันนึกถึงในคอมพิวเตอร์ Lion ของฉันและไม่พบหลักฐานของไฟล์ที่ใช้ CR ในการขึ้นบรรทัดใหม่แม้ว่าฉันจะจำได้ว่า Macs มักจะใช้ CR เสมอแม้จะใช้ Unix โดยใช้ LF และ Windows โดยใช้ CR + LF เมื่อฉันรู้ว่า OS X ใช้ Unix ฉันก็ตรวจสอบ Snow Leopard ของฉันและรู้สึกผิดหวังที่มันยังใช้ CR อยู่

ดังนั้น Lion จึงเปลี่ยนมาใช้ LF

สิ่งที่แปลกประหลาดที่สุดคือฉันค้นหาทั่วทั้งเว็บและไม่พบหลักฐานใด ๆ ของ Lion โดยใช้ LF

คำตอบ:


43

ฉันจำได้ว่า Macs มักจะใช้ CR แม้จะใช้ Unix โดยใช้ LF และ Windows โดยใช้ CR + LF

หน่วยความจำของคุณคือจากครั้งเก่าที่ดีแม้ว่า: Mac OS X เป็น POSIX สอดคล้อง Unix LFใช้ระบบปฏิบัติการยูนิกซ์ทั่วไป

CR เป็น relict จาก "คลาสสิค" Mac OS มันไม่ได้ใช้อีกต่อไป

ตัวอย่างเช่นตรวจสอบ manpage ของunix2dos( focus mining ):

ในไฟล์ข้อความ DOS / Windows การขึ้นบรรทัดใหม่หรือที่รู้จักในชื่อ newline คือการรวมกันของอักขระสองตัว: Carriage Return (CR) ตามด้วย Line Feed (LF) ในไฟล์ข้อความ Unix ตัวแบ่งบรรทัดเป็นอักขระตัวเดียว: Line Feed (LF) ในไฟล์ข้อความ Mac ก่อนถึง Mac OS X ตัวแบ่งบรรทัดคืออักขระ Carriage Return (CR) ตัวเดียว ทุกวันนี้ Mac OS ใช้ตัวแบ่งบรรทัดสไตล์ Unix (LF)

ข้อมูลอ้างอิงที่เชื่อถือได้มากขึ้น: Shell Scripting Primer: การออกแบบสคริปต์สำหรับการปรับใช้ข้ามแพลตฟอร์ม

เครื่องมือบรรทัดคำสั่งใน Mac OS X (และตัวแปรอื่น ๆ ของ UNIX หรือ Linux) ใช้การสิ้นสุดบรรทัดสไตล์ UNIX ซึ่งหมายความว่าแต่ละบรรทัดในไฟล์ข้อความลงท้ายด้วยอักขระขึ้นบรรทัดใหม่ (อักขระ 10 / 0xA มักจะเป็นตัวย่อ LF)

แอปพลิเคชัน Mac รุ่นเก่าจำนวนมากใช้การสิ้นสุดบรรทัด "Mac-style" ซึ่งหมายความว่าแต่ละบรรทัดในไฟล์ข้อความลงท้ายด้วยอักขระการคืนสินค้า (อักขระ 13 / 0xD มักจะเป็นตัวย่อ CR)


ฉันจำได้เป็นพิเศษเกี่ยวกับ Snow Leopard ที่ใช้ CR
Matt

1
ฉันรู้สึกกับเสือดาวหิมะและมันไม่ได้ใช้ผลตอบแทนการขนส่งทั้งใน TextEdit, TextWrangler, TextMate, เสียงเรียกเข้า, emacs นาโนเมื่อสะท้อนไปยังแฟ้มและอื่น ๆ และมีการอ้างอิงแบบกึ่งเผด็จการเกี่ยวกับเรื่องนั้นดังนั้นคุณต้องตั้งค่าตัวแก้ไขของคุณบน Snow Leopard เพื่อใช้การคืนค่าขนส่ง
slhck

8
ฉันคิดออก: ปัญหาอยู่กับ Microsoft Excel เมื่อคุณบันทึกไฟล์ CSV ใน Mac ไฟล์นั้นจะใช้ CR
Matt

5
ทีนี้พูดถึงซอฟต์แวร์ของ Microsoft ใน OS X ฉันรู้ว่ามีปัญหากับไฟล์ CSV ของ Excel แต่ฉันพบปัญหาด้วยตัวเอง
slhck

ขอบคุณสำหรับคำตอบนี้! ฉันพยายามที่จะเพิ่ม TI 89 โปรแกรมที่เก็บ Git ฉันว่าสิ้นทั้งหมดใน\rและGit จะมีปัญหากับมัน
NobleUplift
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.