1 diff -Nru bluefish-0.11.orig/src/bluefish.c bluefish-0.11/src/bluefish.c
2 --- bluefish-0.11.orig/src/bluefish.c 2003-07-27 17:26:58.000000000 +0200
3 +++ bluefish-0.11/src/bluefish.c 2003-11-19 12:48:08.000000000 +0100
6 GtkWidget *splash_window;
7 #endif /* #ifndef NOSPLASH */
9 + gchar *home_etc = getenv("HOME_ETC");
13 bindtextdomain(PACKAGE,LOCALEDIR);
15 #endif /* #ifndef NOSPLASH */
18 - gchar *filename = g_strconcat(g_get_home_dir(), "/.bluefish/dir_history", NULL);
19 + gchar *filename = g_strconcat(home_etc ? home_etc : g_get_home_dir(), "/.bluefish/dir_history", NULL);
20 main_v->recent_directories = get_stringlist(filename, NULL);
24 gchar *shortcutfilename;
25 GtkSettings* gtksettings = gtk_settings_get_default();
26 g_object_set(G_OBJECT(gtksettings), "gtk-can-change-accels", TRUE, NULL);
27 - shortcutfilename = g_strconcat(g_get_home_dir(), "/.bluefish/menudump_2", NULL);
28 + shortcutfilename = g_strconcat(home_etc ? home_etc : g_get_home_dir(), "/.bluefish/menudump_2", NULL);
29 gtk_accel_map_load(shortcutfilename);
30 g_free(shortcutfilename);
36 - gchar *filename = g_strconcat(g_get_home_dir(), "/.bluefish/dir_history", NULL);
37 + gchar *home_etc = getenv("HOME_ETC");
38 + gchar *filename = g_strconcat(home_etc ? home_etc : g_get_home_dir(), "/.bluefish/dir_history", NULL);
39 put_stringlist_limited(filename, main_v->recent_directories, main_v->props.max_dir_history);
42 diff -Nru bluefish-0.11.orig/src/fref.c bluefish-0.11/src/fref.c
43 --- bluefish-0.11.orig/src/fref.c 2003-07-27 17:26:58.000000000 +0200
44 +++ bluefish-0.11/src/fref.c 2003-11-19 12:45:04.000000000 +0100
48 static void fref_popup_menu_rescan_lcb(GtkWidget *widget,gpointer user_data) {
49 - gchar *userdir = g_strconcat(g_get_home_dir(), "/.bluefish/", NULL);
50 + gchar *home_etc = getenv("HOME_ETC");
51 + gchar *userdir = g_strconcat(home_etc ? home_etc : g_get_home_dir(), "/.bluefish/", NULL);
52 DEBUG_MSG("fref_popup_menu_rescan_lcb, started\n");
53 fref_rescan_dir(PKGDATADIR);
54 fref_rescan_dir(userdir);
55 diff -Nru bluefish-0.11.orig/src/menu.c bluefish-0.11/src/menu.c
56 --- bluefish-0.11.orig/src/menu.c 2003-07-27 17:26:58.000000000 +0200
57 +++ bluefish-0.11/src/menu.c 2003-11-19 12:49:55.000000000 +0100
60 void recent_menu_init() {
62 + gchar *home_etc = getenv("HOME_ETC");
63 GList *filenames=NULL, *tmp, *tmp2, *newlist=NULL;
64 gint recent_file_count=0;
66 DEBUG_MSG("open_recent_list, started\n");
67 - recentfile = g_strconcat(g_get_home_dir(), "/.bluefish/recentlist", NULL);
68 + recentfile = g_strconcat(home_etc ? home_etc : g_get_home_dir(), "/.bluefish/recentlist", NULL);
69 filenames = get_stringlist(recentfile, filenames);
71 filenames = add_to_stringlist(menus.recent_files, _("(none)"));
75 gchar *tmpfilename, *recentfile;
76 - recentfile = g_strconcat(g_get_home_dir(), "/.bluefish/recentlist", NULL);
77 + gchar *home_etc = getenv("HOME_ETC");
78 + recentfile = g_strconcat(home_etc ? home_etc : g_get_home_dir(), "/.bluefish/recentlist", NULL);
79 /* save the new list */
80 tmpfilename = g_strconcat(filename, "\n", NULL);
81 DEBUG_MSG("add_to_recent_list, trying to append to %s\n", recentfile);
82 diff -Nru bluefish-0.11.orig/src/rcfile.c bluefish-0.11/src/rcfile.c
83 --- bluefish-0.11.orig/src/rcfile.c 2003-07-27 18:19:58.000000000 +0200
84 +++ bluefish-0.11/src/rcfile.c 2003-11-19 12:56:12.000000000 +0100
86 void rcfile_parse_main(void)
89 + gchar *home_etc = getenv("HOME_ETC");
91 DEBUG_MSG("rcfile_parse_main, started\n");
94 /*Make the config_rc list ready for filling with data and set default values */
95 main_configlist = props_init_main(NULL);
97 - filename = g_strconcat(g_get_home_dir(), "/.bluefish/rcfile_v2", NULL);
98 + filename = g_strconcat(home_etc ? home_etc : g_get_home_dir(), "/.bluefish/rcfile_v2", NULL);
99 if (!parse_config_file(main_configlist, filename)) {
100 /* should we initialize some things ?? */
103 main_v->props.filefilters = g_list_append(main_v->props.filefilters, arr);
105 if (main_v->props.reference_files == NULL) {
106 - gchar *userdir = g_strconcat(g_get_home_dir(), "/.bluefish/", NULL);
107 + gchar *userdir = g_strconcat(home_etc ? home_etc : g_get_home_dir(), "/.bluefish/", NULL);
108 /* if the user does not yet have any function reference files, set them to default values */
109 fref_rescan_dir(PKGDATADIR);
110 fref_rescan_dir(userdir);
114 static gint rcfile_save_main(void) {
115 - gchar *filename = g_strconcat(g_get_home_dir(), "/.bluefish/rcfile_v2", NULL);
116 + gchar *home_etc = getenv("HOME_ETC");
117 + gchar *filename = g_strconcat(home_etc ? home_etc : g_get_home_dir(), "/.bluefish/rcfile_v2", NULL);
118 return save_config_file(main_configlist, filename);
121 @@ -607,13 +609,14 @@
122 void rcfile_parse_highlighting(void) {
125 + gchar *home_etc = getenv("HOME_ETC");
127 DEBUG_MSG("rcfile_parse_highlighting, started\n");
129 highlighting_configlist = NULL;
130 init_prop_arraylist(&highlighting_configlist, &main_v->props.highlight_patterns, "patterns:", 0);
132 - filename = g_strconcat(g_get_home_dir(), "/.bluefish/highlighting", NULL);
133 + filename = g_strconcat(home_etc ? home_etc : g_get_home_dir(), "/.bluefish/highlighting", NULL);
134 defaultfile = return_first_existing_filename(PKGDATADIR"highlighting.default",
135 "data/highlighting.default",
136 "../data/highlighting.default",NULL);
139 static gint rcfile_save_highlighting(void) {
141 - gchar *filename = g_strconcat(g_get_home_dir(), "/.bluefish/highlighting", NULL);
142 + gchar *home_etc = getenv("HOME_ETC");
143 + gchar *filename = g_strconcat(home_etc ? home_etc : g_get_home_dir(), "/.bluefish/highlighting", NULL);
144 retval = save_config_file(highlighting_configlist, filename);
148 void rcfile_parse_custom_menu(void) {
151 + gchar *home_etc = getenv("HOME_ETC");
152 DEBUG_MSG("rcfile_parse_custom_menu, started\n");
154 custom_menu_configlist = NULL;
156 init_prop_arraylist(&custom_menu_configlist, &main_v->props.cmenu_insert, "cmenu_insert:", 0);
157 init_prop_arraylist(&custom_menu_configlist, &main_v->props.cmenu_replace, "cmenu_replace:", 0);
159 - filename = g_strconcat(g_get_home_dir(), "/.bluefish/custom_menu", NULL);
160 + filename = g_strconcat(home_etc ? home_etc : g_get_home_dir(), "/.bluefish/custom_menu", NULL);
161 defaultfile = return_first_existing_filename(PKGDATADIR"custom_menu.default",
162 "data/custom_menu.default",
163 "../data/custom_menu.default",NULL);
166 static gint rcfile_save_custom_menu(void) {
168 - gchar *filename = g_strconcat(g_get_home_dir(), "/.bluefish/custom_menu", NULL);
169 + gchar *home_etc = getenv("HOME_ETC");
170 + gchar *filename = g_strconcat(home_etc ? home_etc : g_get_home_dir(), "/.bluefish/custom_menu", NULL);
171 retval = save_config_file(custom_menu_configlist, filename);
176 #define DIR_MODE (S_IRWXU | S_IRGRP | S_IXGRP | S_IROTH | S_IXOTH) /* same as 0755 */
177 void rcfile_check_directory(void) {
178 - gchar *rcdir = g_strconcat(g_get_home_dir(), "/.bluefish", NULL);
179 + gchar *home_etc = getenv("HOME_ETC");
180 + gchar *rcdir = g_strconcat(home_etc ? home_etc : g_get_home_dir(), "/.bluefish", NULL);
181 if (!g_file_test(rcdir, G_FILE_TEST_IS_DIR)) {
182 mkdir(rcdir, DIR_MODE);
188 - gchar *shortcutfilename = g_strconcat(g_get_home_dir(), "/.bluefish/menudump_2", NULL);
189 + gchar *home_etc = getenv("HOME_ETC");
190 + gchar *shortcutfilename = g_strconcat(home_etc ? home_etc : g_get_home_dir(), "/.bluefish/menudump_2", NULL);
191 gtk_accel_map_save(shortcutfilename);
192 g_free(shortcutfilename);