home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 January / usenetsourcesnewsgroupsinfomagicjanuary1994.iso / sources / std_unix / mod.std.unix.v7 / text0015.txt < prev    next >
Encoding:
Internet Message Format  |  1987-06-30  |  2.9 KB

  1. Date: Fri, 3 Oct 86 12:26:22 PDT
  2. From: sun!gorodish!guy@utastro.UUCP (Guy Harris)
  3.  
  4. > From: mark@cbosgd.att.com (Mark Horton)
  5. > Subject: Case sensitive file names
  6.  
  7. > I think this is a mistake.  UNIX is the only major operating system
  8. > that treats things like file names, logins, host names, and commands
  9. > as case sensitive.
  10.  
  11. It's been a while since I used Multics; I think it was case-sensitive.  Of
  12. course, I don't know whether it counts as "major" here or not; I don't know
  13. how many sites are around.  Are you sure there are no others?
  14.  
  15. > It's also reasonable to leave the case alone, but ignore case in
  16. > comparisons.
  17.  
  18. This would probably be the best scheme (I think the Xerox Alto's operating
  19. system did this).  Some people may want to use mixed case in file names for
  20. aesthetic reasons, for example.
  21.  
  22. > There is also probably a good argument for keeping it case sensitive
  23. > (after all, there are probably 5 or 6 people out there who really need
  24. > both makefile and Makefile...
  25.  
  26. This means UNIX probably can't change, at least not without a fair bit of
  27. pain.  I know of at least one directory on a UNIX system that has both
  28. "makefile" and "Makefile" in it; this would cause some upset on a
  29. case-mapping UNIX system.
  30.  
  31. However, there is another problem with case mapping.  It's dependent on the
  32. language the text is in!  Doing case mapping is all very well and good for
  33. English-speaking users; the algorithm for mapping characters between cases
  34. in English is straightforward.  However, in German "ss" is a single special
  35. character in lower-case but "SS" in upper case.  Even if you don't have
  36. anomalies like this, the current schemes proposed by AT&T for "international
  37. UNIX" use various ISO codes; this means that the character whose hex value
  38. is E6 is the "ae" diaresis in the ISO Latin Alphabet #1, and thus matches
  39. the character whose hex value is C6 (which is the "AE" diaresis); however,
  40. in the JIS C6226 Kanji set, it is probably the first byte of a two-byte
  41. sequence representing a Kanji sysmbol, and I don't think it gets case mapped
  42. at all.
  43.  
  44. This means that the operating system would have to know what character set a
  45. particular character was in, so that it could map its case correctly; this
  46. would be best done with sequences embedded in the file name indicating
  47. shifts in the character set to which bytes belong.  (These same sequences
  48. should be used in text files, character strings in programs, etc..  Other
  49. suggestions include a per-file character set designator, that would
  50. presumably apply to any files containing character strings, including
  51. directories; however, this means that *all* strings in that file must be in
  52. the same character set, which is not always a reasonable restriction.)  It
  53. would then have to know how to do case mapping for all character sets
  54. supported by the system, and would have to be modified or have new
  55. information supplied to it if a new character set was to be supported.
  56.  
  57. Volume-Number: Volume 7, Number 16
  58.  
  59.