ubfox å vs osx å?


10

Không chắc đây là câu hỏi ubfox hay osx, nhưng tôi sẽ bắt đầu ở đây. Tôi sẽ để nó cho các mod để chuyển câu hỏi sang AskDifferent nếu phù hợp hơn.

Tôi đã chuyển một tập tin từ ubfox sang osx bằng scp trên máy apple. Tôi chỉnh sửa tập tin trên máy apple. Sau đó, tôi di chuyển tệp trở lại, một lần nữa sử dụng scp trên máy apple.

Tên tệp của tệp nguồn là Documents / trettiårsfirarätare .

  • Mã nguồn: Documents/trettiårsfirarätare

Tên tệp tôi nhận được có tên Documents / trettiårsfirarätare .

  • Mã nguồn: Documents/trettia˚rsfirara¨tare

Trong khi chúng có thể trông giống nhau, các chữ cái å và ä thực sự khác nhau giữa chúng. Tôi đã không thay đổi tên của tập tin.

Điều này tạo ra sự khác biệt nhỏ về mặt kỹ thuật đối với tôi, tôi chỉ thay đổi tên của tệp thành cái mà ub Ubuntu coi là å và ä, nhưng nó làm tôi tò mò.

Bạn có thể giải thích cho tôi tại sao điều này xảy ra?


1
Vấn đề này có thể sẽ liên quan đến Unicode. Chuyện gì xảy ra nếu bạn scp (hoặc equiv.) Sao chép từ OS X để Ubuntu (hoặc Ubuntu OS X), nhưng trên máy Ubuntu?
david6

Tôi đã xem xét câu hỏi này dưới dạng mac và không thấy bất kỳ sự khác biệt nào giữa các dòng, bây giờ khi tôi quay lại máy tính xách tay Ubuntu của mình, tôi đã thấy các ô vuông ngay lập tức, ngay cả trước khi chỉnh sửa của Takkat.
Alvar

Tôi sẽ không thử scp-ing từ ubfox sang osx trên ubfox do máy apple không có sshd, nhưng scp-ing trên osx là đủ để thay đổi tên tệp. Tôi chỉ sao chép nó qua lại một lần và tên đã được thay đổi, vì vậy có vẻ như scp là ứng dụng thay đổi tên.
azzid

Câu trả lời:


8

Trong tên gốc Tài liệu / trettiårsfirarätare phạm, chữ cái åvà được thể hiện trong nội bộ là U + 00E5 LATIN NHỎ LỚP A VỚI RING TRÊN. Đây là đại diện phổ biến của nhân vật này. Trong tên tệp bạn đã quay lại, nó đã được chuyển thành cặp ký tự U + 0061 LATIN SMALL LETTER A U + 030A COMBINING RING TRÊN. Điều này được cho phép, nhưng không phổ biến; điều đó có nghĩa là phân rã những gì khác nhau thành một nhân vật cơ bản và một dấu hiệu kết hợp. Các đại diện này được tuyên bố là tương đương chính tắc trong Unicode; điều này có nghĩa là bản trình bày trực quan thường được dự kiến ​​là giống nhau, nhưng nó không cần (ở đây, tại SO, như được xem trong Firefox, không phải vậy - điều này phụ thuộc vào phông chữ và phần mềm kết xuất). Các chương trình có thể coi chúng là tương đương, nhưng chúng không cần. Trong một hệ thống tập tin, ví dụ, chúng có thể được coi là khác nhau.

Tương tự như vậy, chữ cái ä Lời được phân tách thành U + 0061 LATIN NHỎ THƯA MỘT BỆNH NHÂN U + 0308 COMBINING DIAERESIS.

Lý do cho điều này là không rõ ràng. Có thể một số phần mềm mà Nghĩ rằng, nó nên chuyển đổi chuỗi thành một dạng chuẩn hóa để phân tách tất cả các ký tự có thể phân tách được, có thể là Dạng chuẩn hóa Unicode D (NFD)

Phần còn lại là một chút bí ẩn. Những gì bạn chỉ định là Hồi Sourcecode, cho tên tệp mà bạn đã lấy lại, Tài liệu / trettia˚rsfirara¨tare, các hình thức phân tách đã được thay thế: các dấu phụ đã được thay thế bằng các bản sao khoảng cách của chúng, các ký tự Mùi. Điều này là không bình thường và nó thay đổi cả danh tính của dữ liệu và kết xuất của nó.


Phần SourceCode không được tôi thêm vào. Tôi có thể thấy rằng có một sự khác biệt giữa các chữ cái trong biểu diễn trực quan của chúng, å đầu tiên có vòng nhỏ hơn vòng thứ hai, nhưng khác với các chuỗi trông giống nhau. Chúng không hiệu quả khi sử dụng hoàn thành tab bash.
azzid

Trên thực tế å là một lá thư riêng của nó, nó không chỉ là một một với một dấu dấu phụ, giống như h là một chữ cái và không chỉ và n với một dấu dấu phụ.
kasperd
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.