1 /*******************************************************************************
2 *                                                                              *
3 * fileUtils.h -- Nirvana Editor File Utilities Header File                     *
4 *                                                                              *
5 * Copyright 2003 The NEdit Developers                                          *
6 *                                                                              *
7 * This is free software; you can redistribute it and/or modify it under the    *
8 * terms of the GNU General Public License as published by the Free Software    *
9 * Foundation; either version 2 of the License, or (at your option) any later   *
10 * version. In addition, you may distribute versions of this program linked to  *
11 * Motif or Open Motif. See README for details.                                 *
12 *                                                                              *
13 * This software is distributed in the hope that it will be useful, but WITHOUT *
14 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or        *
15 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for    *
16 * more details.                                                                *
17 *                                                                              *
18 * You should have received a copy of the GNU General Public License along with *
19 * software; if not, write to the Free Software Foundation, Inc., 59 Temple     *
20 * Place, Suite 330, Boston, MA  02111-1307 USA                                 *
21 *                                                                              *
22 * Nirvana Text Editor                                                          *
23 * July 31, 2001                                                                *
24 *                                                                              *
25 *******************************************************************************/
26 
27 #ifndef NEDIT_FILEUTILS_H_INCLUDED
28 #define NEDIT_FILEUTILS_H_INCLUDED
29 
30 enum fileFormats {UNIX_FILE_FORMAT, DOS_FILE_FORMAT, MAC_FILE_FORMAT};
31 
32 int ParseFilename(const char *fullname, char *filename, char *pathname);
33 int ExpandTilde(char *pathname);
34 const char* GetTrailingPathComponents(const char* path,
35                                       int noOfComponents);
36 int NormalizePathname(char *pathname);
37 int CompressPathname(char *pathname);
38 int ResolvePath(const char * pathIn, char * pathResolved);
39 
40 int FormatOfFile(const char *fileString);
41 void ConvertFromDosFileString(char *inString, int *length,
42      char* pendingCR);
43 void ConvertFromMacFileString(char *fileString, int length);
44 int ConvertToDosFileString(char **fileString, int *length);
45 void ConvertToMacFileString(char *fileString, int length);
46 char *ReadAnyTextFile(const char *fileName, int forceNL);
47 
48 #endif /* NEDIT_FILEUTILS_H_INCLUDED */
49