1 /*
2 Global structure for some library-related variables
3
4 Copyright (C) 2009-2025
5 Free Software Foundation, Inc.
6
7 Written by:
8 Slava Zanko <slavazanko@gmail.com>, 2009.
9
10 This file is part of the Midnight Commander.
11
12 The Midnight Commander is free software: you can redistribute it
13 and/or modify it under the terms of the GNU General Public License as
14 published by the Free Software Foundation, either version 3 of the License,
15 or (at your option) any later version.
16
17 The Midnight Commander is distributed in the hope that it will be useful,
18 but WITHOUT ANY WARRANTY; without even the implied warranty of
19 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20 GNU General Public License for more details.
21
22 You should have received a copy of the GNU General Public License
23 along with this program. If not, see <https://www.gnu.org/licenses/>.
24 */
25
26 /** \file glibcompat.c
27 * \brief Source: global structure for some library-related variables
28 *
29 */
30
31 #include <config.h>
32
33 #include "mc-version.h"
34
35 #include "global.h"
36
37 #ifdef ENABLE_SUBSHELL
38 #ifdef SUBSHELL_OPTIONAL
39 #define SUBSHELL_USE FALSE
40 #else
41 #define SUBSHELL_USE TRUE
42 #endif
43 #else
44 #define SUBSHELL_USE FALSE
45 #endif
46
47 /*** global variables ****************************************************************************/
48
49 mc_global_t mc_global =
50 {
51 .mc_version = MC_CURRENT_VERSION,
52
53 .mc_run_mode = MC_RUN_FULL,
54 .run_from_parent_mc = FALSE,
55 .midnight_shutdown = FALSE,
56
57 .sysconfig_dir = NULL,
58 .share_data_dir = NULL,
59
60 .profile_name = NULL,
61
62 .source_codepage = -1,
63 .display_codepage = -1,
64 .utf8_display = FALSE,
65
66 .message_visible = TRUE,
67 .keybar_visible = TRUE,
68
69 #ifdef ENABLE_BACKGROUND
70 .we_are_background = FALSE,
71 #endif
72
73 .widget =
74 {
75 .confirm_history_cleanup = TRUE,
76 .show_all_if_ambiguous = FALSE,
77 .is_right = FALSE
78 },
79
80 .shell = NULL,
81
82 .tty =
83 {
84 .skin = NULL,
85 .shadows = TRUE,
86 .setup_color_string = NULL,
87 .term_color_string = NULL,
88 .color_terminal_string = NULL,
89 .command_line_colors = NULL,
90 #ifndef LINUX_CONS_SAVER_C
91 .console_flag = '\0',
92 #endif
93
94 .use_subshell = SUBSHELL_USE,
95
96 #ifdef ENABLE_SUBSHELL
97 .subshell_pty = 0,
98 #endif
99
100 .xterm_flag = FALSE,
101 .disable_x11 = FALSE,
102 .slow_terminal = FALSE,
103 .disable_colors = FALSE,
104 .ugly_line_drawing = FALSE,
105 .old_mouse = FALSE,
106 .alternate_plus_minus = FALSE
107 },
108
109 .vfs =
110 {
111 .cd_symlinks = TRUE,
112 .preallocate_space = FALSE,
113 }
114
115 };
116
117 const char PACKAGE_COPYRIGHT[] = N_ ("Copyright (C) 1996-2025 the Free Software Foundation");
118
119 #undef SUBSHELL_USE
120
121 /*** file scope macro definitions ****************************************************************/
122
123 /*** file scope type declarations ****************************************************************/
124
125 /*** file scope variables ************************************************************************/
126
127 /*** file scope functions ************************************************************************/
128
129 /*** public functions ****************************************************************************/
130 /* --------------------------------------------------------------------------------------------- */