Làm cách nào để chuyển đổi các ký tự dòng mới của DOS / Windows sang định dạng Unix trong GNU Emacs?


38

Có cách nào để bảo GNU Emacs chuyển đổi các ký tự dòng mới của DOS / Windows trong một tệp sang định dạng Unix không?


Bạn có thể nhấp vào nút nhỏ trong modeline và lưu lại.
abo-abo

@ abo-abo: Nút nhỏ nào?
Charo

2
Cái thứ hai từ bên trái, với kiểu dáng Unix :.
abo-abo

2
Với DOS, nó là vậy (DOS).
abo-abo

Câu trả lời:


43

Nếu dòng chế độ hiển thị một (DOS)chỉ báo, nhấp vào nó hai lần để chuyển sang :nghĩa mới của Unix và sau đó lưu tệp.

Nếu bạn không thể nhấp vào dòng chế độ hoặc thích giải pháp dựa trên bàn phím, hãy chạy lệnh C-x RET f( set-buffer-file-coding-system) và nhập unix. Điều này sẽ thay đổi mã hóa các dòng mới mà không thay đổi mã hóa của các ký tự khác. (Bạn cũng có thể thay đổi mã hóa của các ký tự khác bằng cách nhập một cái gì đó như utf-8-unix.)


1
C-x RET f (set-buffer-file-coding-system) ->M-x set-buffer-file-coding-system RET
CodyChan

@CodyChan C-x RET flà ràng buộc mặc định cho set-buffer-file-coding-system.
Gilles 'SO- đừng trở nên xấu xa'

Tôi đã ràng buộc một chức năng C-x C-mvà hiện tại tôi đang sử dụng Emacs trong thiết bị đầu cuối từ xa, khi tôi thực thi C-x RETtrong Emacs, nó nói rằng nó bị ràng buộc với chức năng mà tôi ràng buộc C-x C-m, tôi nghĩ M-x phù hợp với mọi người.
CodyChan

1
@CodyChan Tôi cung cấp các ràng buộc mặc định (như tài liệu Emacs) bởi vì nó hữu ích cho hầu hết người đọc. Rõ ràng, nếu bạn đã thay đổi các ràng buộc mặc định, bạn không thể sử dụng các ràng buộc mặc định. Bạn có thể sử dụng M-xvới tên hàm được chỉ định trong ngoặc đơn, không có điểm nào lặp lại nó. Xin lưu ý rằng đó RETlà điều tương tự C-m, đó là những gì mà phím Return gửi trên thiết bị đầu cuối - một ràng buộc chỉ áp dụng cho khóa Return trong GUI sẽ sử dụng return.
Gilles 'Somali dừng tà ác'

4

Lưu tệp và Emacs sẽ tự động sử dụng char dòng mới chính xác khi ghi bộ đệm vào tệp, theo giá trị của buffer-file-coding-system.

Để biết giá trị của hệ thống mã hóa tệp đệm là gì, hãy gọi describe-variablesau đó buffer-file-coding-systemhoặc chạy describe-coding-systemlệnh mà bạn có thể thực hiện bằng cách nhấp vào ký tự thứ hai của dòng chế độ hoặc nhấn C-h C. Để đặt giá trị của nó, hãy gọi set-buffer-file-coding-system( C-x RET f) và tab để chọn cái bạn muốn.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.