ฉันจะลบ ^ M ออกจากไฟล์ของฉันในข้อความประเสริฐ 3 ได้อย่างไร


22

เมื่อฉันทำคอมไพล์ในสาขาของฉันฉันเห็นว่าการสิ้นสุดบรรทัดมีอักขระ ^ M:

การสิ้นสุดสาย ^ M

ฉันต้องการแทนที่สิ่งเหล่านี้ด้วยการสิ้นสุดบรรทัด Unix ก่อนที่จะทำการเปลี่ยนแปลงของฉัน

ฉันใช้ Ubuntu 14.04, git และ sublime text 3

ขอบคุณสำหรับความช่วยเหลือของคุณ.

แก้ไข:

ฉันกำลังมองหาวิธีที่จะเปลี่ยนการสิ้นสุดบรรทัดในข้อความประเสริฐ 3 ไม่ได้ใช้ยูทิลิตี้หรือคำสั่งอื่น ๆ

คำตอบ:


15

สิ่งนี้สามารถทำได้โดยไม่ต้องใช้ปลั๊กอินผ่านเมนูที่ด้านบนหรือผ่านแถบสถานะ (แต่คุณต้องเปิดใช้งานคุณสมบัติ)

หากต้องการเปลี่ยนผ่านเมนูที่ด้านบนให้คลิกมุมมอง -> การสิ้นสุดบรรทัด -> เลือกประเภทการสิ้นสุดบรรทัดที่ต้องการ

วิธีเปิดใช้งานผ่านแถบสถานะ: คลิกการกำหนดค่าตามความชอบ -> การตั้งค่าจากนั้นเพิ่มตำแหน่ง"show_line_endings": true,ระหว่าง{}วงเล็บทางด้านขวา ในที่สุดให้บันทึกการเปลี่ยนแปลงของคุณ

สิ่งนี้ทำให้ส่วนเล็ก ๆ ทางด้านขวาของแถบสถานะที่ปรากฏขึ้นที่ด้านล่าง มันบอกคุณเข้ารหัส EOL ปัจจุบันและโดยการคลิกที่กล่องและเลือกประเภทที่แตกต่างมันเปลี่ยนไฟล์ EOL ตัวละครสำหรับคุณ

ตัวเลือกที่มีประโยชน์อีกอย่างคือการเข้ารหัสไฟล์ซึ่งสามารถเปิดใช้งานในแถบสถานะได้เช่นกันโดยทำตามการตั้งค่าเดียวกันด้านบน แต่ยังเพิ่ม"show_encoding": true,ระหว่าง{}เครื่องหมาย


สิ่งนี้ทำงานเป็นพิเศษเมื่อคุณถ่ายโอนไฟล์จาก windows ไปยังเซิร์ฟเวอร์เพราะในเซิร์ฟเวอร์นั้นยากที่จะแก้ไขไฟล์ ขอบคุณ
Luis Cabrera Benito

ตอนนี้ควรเป็นคำตอบที่ได้รับการยอมรับ
ลูคัส

14

คุณสามารถใช้dos2unixคำสั่งในลินุกซ์ (แพคเกจ dos2unix) หรือการเปลี่ยนแปลงตอนจบบรรทัดใน Sublime ข้อความในรายการเมนูดู / สายตอนจบ


8

^Mคือ\r(Control-M หรือ carriage return)

อาจเป็นเพราะผู้ใช้ที่กำหนดไฟล์ใช้ windows ซึ่งใช้\r\nสำหรับการสิ้นสุดบรรทัด Linux ใช้เท่านั้น\nดังนั้นคุณจะเห็น^Mที่ท้ายบรรทัด

คุณอาจต้องการทำอย่างใดอย่างหนึ่งต่อไปนี้:

  • 'แก้ไข' ไฟล์ให้มีการ\nสิ้นสุดบรรทัด (ใช้เครื่องมือเช่นdos2unix) และคอมมิชชัน ในกรณีนี้คุณจะต้องต่อสู้กับผู้ใช้รายอื่นยกเว้นว่าคุณสามารถทำให้พวกเขาทำตามด้านล่าง
  • กำหนดค่าการติดตั้ง git ของคุณทั้งสองเพื่อจัดการการสิ้นสุดบรรทัดอย่างถูกต้องสำหรับแต่ละสภาพแวดล้อม - เช่น: /programming/10418975/how-to-change-line-ending-settings
  • กำหนดค่า Sublime เพื่อเปิดไฟล์ด้วย ' Windows line endings '

4

ผู้ที่อาจไม่ต้องการติดตั้งปลั๊กอินเพิ่มเติมเพื่อลบ ^ M บรรทัดใหม่

  1. ในการตั้งค่าข้อความประเสริฐเพิ่ม"trim_trailing_white_space_on_save": true,ในการลบพื้นที่โดยอัตโนมัติเมื่อบันทึก (ขั้นตอนนี้อาจเป็นทางเลือก)

  2. ในไฟล์ที่คุณกำลังเปิดให้คลิกที่มุมล่างขวาของข้อความประเสริฐ เปลี่ยนWindowsเป็นUnixและบันทึก

  1. ^ M หายไป สนุก.

3

ฉันพบปลั๊กอินข้อความประเสริฐที่แปลงการลงท้ายบรรทัดในไฟล์ที่เปิดทั้งหมดเป็น Unix / Windows / Mac OS 9

การติดตั้ง

  1. เปิด Sublime และไปที่การตั้งค่า> เรียกดูแพ็คเกจ จะเป็นการเปิดหน้าต่าง
  2. ดาวน์โหลดหรือคัดลอกเนื้อหาของที่เก็บนี้ไปยังโฟลเดอร์ที่มีชื่อตรงกับชื่อแพ็คเกจในแพ็คเกจ / โฟลเดอร์ที่คุณเปิดในขั้นตอนก่อนหน้า:

/home/YOUR_USERNAME/.config/sublime-text-3/Packages

การใช้

  1. กลับไปที่ประเสริฐแล้วเปิดไฟล์ทั้งหมดที่คุณต้องการแปลง
  2. เมื่อไฟล์ทั้งหมดเปิดขึ้นกด CTRL + SHIFT + P แล้วค้นหาและเลือก“ การสิ้นสุดบรรทัดไปยังมุมมองทั้งหมด: Unix”
  3. กดปุ่ม CTRL + ALT + S เพื่อบันทึกไฟล์ที่เปิดอยู่ทั้งหมด

พื้นที่เก็บข้อมูลถูกลบไปแล้ว?
AnnanFay
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.