Skip to content

Use extended attributes on macOS to save/load text encoding  #83

@gingerbeardman

Description

@gingerbeardman

Proposal

Use xattr (extended attributes) on macOS to save/load text encoding with file.

BBEdit is the only editor I've found that already does this.

Also you should honour any existing com.apple.TextEncoding when loading and keep it when saving.

Background

  • Text Encoding has to either be set manually, or guessed by scanning the file
  • Both of these tasks take time

Benefits

  • loading time can be reduced
  • text encoding can be more persistent
  • can still be changed and rewritten at any point

Details

debug command:
xattr -p -l com.apple.TextEncoding "/path/to/file.txt"

output:
file.txt
com.apple.TextEncoding: Shift_JIS;2561

to set xattr (from terminal):
xattr -w com.apple.TextEncoding "Shift_JIS;2561" "/path/to/file.txt"

References

these may help with implementation:

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions