changeset 21051:b5844e2bf088

(ENCODE_FILE): Moved from fileio.c. Use default-file-name-coding-system if file-name-coding-system is nil. (DECODE_FILE): New macro.
author Kenichi Handa <handa@m17n.org>
date Tue, 03 Mar 1998 07:18:46 +0000
parents 13e905e1d33c
children eea2c6235bd1
files src/coding.h
diffstat 1 files changed, 22 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/src/coding.h	Tue Mar 03 07:18:46 1998 +0000
+++ b/src/coding.h	Tue Mar 03 07:18:46 1998 +0000
@@ -487,6 +487,28 @@
       s2 = c2 + 0x7E;					\
   } while (0)
 
+/* Encode the file name NAME using the specified coding system
+   for file names, if any.  */
+#define ENCODE_FILE(name)						   \
+  (! NILP (Vfile_name_coding_system)					   \
+   && XFASTINT (Vfile_name_coding_system) != 0				   \
+   ? Fencode_coding_string (name, Vfile_name_coding_system, Qt)		   \
+   : (! NILP (Vdefault_file_name_coding_system)				   \
+      && XFASTINT (Vdefault_file_name_coding_system)			   \
+      ? Fencode_coding_string (name, Vdefault_file_name_coding_system, Qt) \
+      : name))
+
+/* Decode the file name NAME using the specified coding system
+   for file names, if any.  */
+#define DECODE_FILE(name)						   \
+  (! NILP (Vfile_name_coding_system)					   \
+   && XFASTINT (Vfile_name_coding_system) != 0				   \
+   ? Fdecode_coding_string (name, Vfile_name_coding_system, Qt)		   \
+   : (! NILP (Vdefault_file_name_coding_system)				   \
+      && XFASTINT (Vdefault_file_name_coding_system)			   \
+      ? Fdecode_coding_string (name, Vdefault_file_name_coding_system, Qt) \
+      : name))
+
 /* Extern declarations.  */
 extern int decode_coding P_ ((struct coding_system *, unsigned char *,
 			      unsigned char *, int, int));