GNU Octave 7.1.0
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
gui-preferences-ed.h
Go to the documentation of this file.
1////////////////////////////////////////////////////////////////////////
2//
3// Copyright (C) 2017-2022 The Octave Project Developers
4//
5// See the file COPYRIGHT.md in the top-level directory of this
6// distribution or <https://octave.org/copyright/>.
7//
8// This file is part of Octave.
9//
10// Octave is free software: you can redistribute it and/or modify it
11// under the terms of the GNU General Public License as published by
12// the Free Software Foundation, either version 3 of the License, or
13// (at your option) any later version.
14//
15// Octave is distributed in the hope that it will be useful, but
16// WITHOUT ANY WARRANTY; without even the implied warranty of
17// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18// GNU General Public License for more details.
19//
20// You should have received a copy of the GNU General Public License
21// along with Octave; see the file COPYING. If not, see
22// <https://www.gnu.org/licenses/>.
23//
24////////////////////////////////////////////////////////////////////////
25
26#if ! defined (octave_gui_preferences_ed_h)
27#define octave_gui_preferences_ed_h 1
28
29#if defined (HAVE_QSCINTILLA)
30#include <Qsci/qsciscintilla.h>
31#endif
32
33#include "gui-preferences.h"
35
36// Editor preferences
37
38// Lexer
39
40const gui_pref
41ed_color_mode ("editor/color_mode", QVariant (0));
42
43const int ed_max_lexer_styles = 64;
44const int ed_max_style_number = 128;
45
46// Code completion
47
48const gui_pref
49ed_code_completion_octave_builtins ("editor/codeCompletion_octave_builtins",
50 QVariant (true));
51
52const gui_pref
53ed_code_completion_octave_functions ("editor/codeCompletion_octave_functions",
54 QVariant (true));
55
56const gui_pref
57ed_code_completion_keywords ("editor/codeCompletion_keywords", QVariant (true));
58
59const gui_pref
60ed_code_completion_document ("editor/codeCompletion_document", QVariant (true));
61
62const gui_pref
63ed_code_completion_replace ("editor/codeCompletion_replace", QVariant (false));
64
65const gui_pref
66ed_code_completion_case ("editor/codeCompletion_case", QVariant (true));
67
68const gui_pref
69ed_code_completion ("editor/codeCompletion", QVariant (true));
70
71const gui_pref
72ed_code_completion_threshold ("editor/codeCompletion_threshold", QVariant (3));
73
74// Code formatting
75
76const gui_pref
77ed_code_folding ("editor/code_folding", QVariant (true));
78
79const gui_pref
80ed_auto_indent ("editor/auto_indent", QVariant (true));
81
82const gui_pref
83ed_tab_indents_line ("editor/tab_indents_line", QVariant (false));
84
85const gui_pref
86ed_backspace_unindents_line ("editor/backspace_unindents_line",
87 QVariant (false));
88
89const gui_pref
90ed_show_indent_guides ("editor/show_indent_guides", QVariant (false));
91
92const gui_pref
93ed_indent_uses_tabs ("editor/indent_uses_tabs", QVariant (false));
94
95const gui_pref
96ed_indent_width ("editor/indent_width", QVariant (2));
97
98const gui_pref
99ed_tab_width ("editor/tab_width", QVariant (2));
100
101const gui_pref
102ed_auto_endif ("editor/auto_endif", QVariant (1));
103
104// Long line handling
105
106const gui_pref
107ed_long_line_column ("editor/long_line_column", QVariant (80));
108
109const gui_pref
110ed_long_line_marker ("editor/long_line_marker", QVariant (true));
111
112const gui_pref
113ed_long_line_marker_line ("editor/long_line_marker_line", QVariant (true));
114
115const gui_pref
116ed_long_line_marker_background ("editor/long_line_marker_background",
117 QVariant (false));
118
119const gui_pref
120ed_wrap_lines ("editor/wrap_lines", QVariant (false));
121
122const gui_pref
123ed_break_lines ("editor/break_lines", QVariant (false));
124
125const gui_pref
126ed_break_lines_comments ("editor/break_lines_comments", QVariant (false));
127
128// Other
129
130const gui_pref
131ed_highlight_all_occurrences ("editor/highlight_all_occurrences",
132 QVariant (true));
133
134const gui_pref
135ed_show_Line_numbers ("editor/showLineNumbers", QVariant (true));
136
137const gui_pref
138ed_line_numbers_size ("editor/line_numbers_size", QVariant ( 0));
139
140const gui_pref
141ed_show_edit_status_bar ("editor/show_edit_status_bar", QVariant (true));
142
143const gui_pref
144ed_highlight_current_line ("editor/highlightCurrentLine", QVariant (true));
145
146const gui_pref
147ed_show_white_space ("editor/show_white_space", QVariant (false));
148
149const gui_pref
150ed_show_white_space_indent ("editor/show_white_space_indent", QVariant (false));
151
152const gui_pref
153ed_show_line_numbers ("editor/showLineNumbers", QVariant (true));
154
155const gui_pref
156ed_show_eol_chars ("editor/show_eol_chars", QVariant (false));
157
158const gui_pref
159ed_show_toolbar ("editor/show_toolbar", QVariant (true));
160
161const gui_pref
162ed_show_hscroll_bar ("editor/show_hscroll_bar", QVariant (true));
163
164
165
166// Octave comment strings
167
168const gui_pref
169ed_comment_str_old ("editor/octave_comment_string", QVariant (0));
170
171const gui_pref
172ed_comment_str ("editor/oct_comment_str", QVariant (0));
173
174const gui_pref
175ed_uncomment_str ("editor/oct_uncomment_str", QVariant (1 + 2 + 4 + 8));
176
177const QString
178ed_last_comment_str ("editor/oct_last_comment_str");
179
180const QStringList
181ed_comment_strings (QStringList () << "##" << "#" << "%"<< "%%" << "%!");
182
184
185// Session data
186
187const gui_pref
188ed_restore_session ("editor/restoreSession", QVariant (true));
189
190const gui_pref
191ed_session_names ("editor/savedSessionTabs", QVariant (QStringList ()));
192
193const gui_pref
194ed_session_enc ("editor/saved_session_encodings", QVariant (QStringList ()));
195
196const gui_pref
197ed_session_ind ("editor/saved_session_tab_index", QVariant (QStringList ()));
198
199const gui_pref
200ed_session_lines ("editor/saved_session_lines", QVariant (QStringList ()));
201
202// Tabs
203const QStringList
205 << QT_TRANSLATE_NOOP ("octave::settings_dialog", "Top")
206 << QT_TRANSLATE_NOOP ("octave::settings_dialog", "Bottom")
207 << QT_TRANSLATE_NOOP ("octave::settings_dialog", "Left")
208 << QT_TRANSLATE_NOOP ("octave::settings_dialog", "Right"));
209
210const gui_pref
211ed_tab_position ("editor/tab_position", QVariant (QTabWidget::North));
212
213const gui_pref
214ed_tabs_rotated ("editor/tabs_rotated", QVariant (false));
215
216const gui_pref
217ed_tabs_max_width ("editor/tabs_max_width", QVariant (0));
218
219// File handling
220
221const gui_pref
222ed_force_newline ("editor/force_newline", QVariant (true));
223
224const gui_pref
225ed_rm_trailing_spaces ("editor/rm_trailing_spaces", QVariant (true));
226
227#if defined (HAVE_QSCINTILLA)
228#if defined (Q_OS_WIN32)
229const int os_eol_mode = QsciScintilla::EolWindows;
230#else
231const int os_eol_mode = QsciScintilla::EolUnix;
232#endif
233#else
234const int os_eol_mode = 2;
235#endif
236
237const gui_pref
238ed_default_eol_mode ("editor/default_eol_mode", QVariant (os_eol_mode));
239
240const gui_pref
241ed_show_dbg_file ("editor/show_dbg_file", QVariant (true));
242
243const gui_pref
244ed_default_enc ("editor/default_encoding", QVariant ("UTF-8"));
245
246const gui_pref
247ed_create_new_file ("editor/create_new_file", QVariant (false));
248
249const gui_pref
250ed_hiding_closes_files ("editor/hiding_closes_files", QVariant (false));
251
252const gui_pref
253ed_always_reload_changed_files ("editor/always_reload_changed_files",
254 QVariant (false));
255
256const gui_pref
257ed_mru_file_list ("editor/mru_file_list", QVariant ());
258
259const gui_pref
260ed_mru_file_encodings ("editor/mru_file_encodings", QVariant ());
261
262// The find dialog
263
265{
273 FIND_DLG_SEL = 128
275
276// Dialog position, the default will be calculated from the editor's geometry
277const gui_pref
278ed_fdlg_pos ("editor/fdgl_pos", QVariant (QPoint (0, 0)));
279
280const gui_pref
281ed_fdlg_opts ("editor/fdgl_opts", QVariant (FIND_DLG_WRAP));
282
283const gui_pref
284ed_fdlg_search ("editor/fdgl_search", QVariant ());
285const gui_pref
286ed_fdlg_replace ("editor/fdgl_replace", QVariant ());
287
288#endif
const gui_pref ed_tabs_rotated("editor/tabs_rotated", QVariant(false))
const gui_pref ed_always_reload_changed_files("editor/always_reload_changed_files", QVariant(false))
const gui_pref ed_comment_str_old("editor/octave_comment_string", QVariant(0))
const gui_pref ed_indent_uses_tabs("editor/indent_uses_tabs", QVariant(false))
const gui_pref ed_code_completion("editor/codeCompletion", QVariant(true))
const gui_pref ed_show_hscroll_bar("editor/show_hscroll_bar", QVariant(true))
const gui_pref ed_code_completion_octave_functions("editor/codeCompletion_octave_functions", QVariant(true))
const gui_pref ed_auto_endif("editor/auto_endif", QVariant(1))
const gui_pref ed_show_toolbar("editor/show_toolbar", QVariant(true))
const gui_pref ed_uncomment_str("editor/oct_uncomment_str", QVariant(1+2+4+8))
const gui_pref ed_show_white_space("editor/show_white_space", QVariant(false))
const gui_pref ed_create_new_file("editor/create_new_file", QVariant(false))
const gui_pref ed_mru_file_encodings("editor/mru_file_encodings", QVariant())
const gui_pref ed_color_mode("editor/color_mode", QVariant(0))
const gui_pref ed_session_names("editor/savedSessionTabs", QVariant(QStringList()))
const gui_pref ed_line_numbers_size("editor/line_numbers_size", QVariant(0))
const gui_pref ed_wrap_lines("editor/wrap_lines", QVariant(false))
const gui_pref ed_highlight_current_line("editor/highlightCurrentLine", QVariant(true))
const gui_pref ed_fdlg_opts("editor/fdgl_opts", QVariant(FIND_DLG_WRAP))
const gui_pref ed_fdlg_pos("editor/fdgl_pos", QVariant(QPoint(0, 0)))
const gui_pref ed_tabs_max_width("editor/tabs_max_width", QVariant(0))
const gui_pref ed_break_lines("editor/break_lines", QVariant(false))
const gui_pref ed_break_lines_comments("editor/break_lines_comments", QVariant(false))
const QString ed_last_comment_str("editor/oct_last_comment_str")
const gui_pref ed_long_line_marker("editor/long_line_marker", QVariant(true))
const gui_pref ed_tab_position("editor/tab_position", QVariant(QTabWidget::North))
const QStringList ed_tab_position_names(QStringList()<< QT_TRANSLATE_NOOP("octave::settings_dialog", "Top")<< QT_TRANSLATE_NOOP("octave::settings_dialog", "Bottom")<< QT_TRANSLATE_NOOP("octave::settings_dialog", "Left")<< QT_TRANSLATE_NOOP("octave::settings_dialog", "Right"))
const gui_pref ed_tab_indents_line("editor/tab_indents_line", QVariant(false))
const int ed_max_lexer_styles
const gui_pref ed_code_completion_octave_builtins("editor/codeCompletion_octave_builtins", QVariant(true))
const gui_pref ed_show_edit_status_bar("editor/show_edit_status_bar", QVariant(true))
const gui_pref ed_code_completion_threshold("editor/codeCompletion_threshold", QVariant(3))
const gui_pref ed_fdlg_search("editor/fdgl_search", QVariant())
const gui_pref ed_code_completion_document("editor/codeCompletion_document", QVariant(true))
const gui_pref ed_backspace_unindents_line("editor/backspace_unindents_line", QVariant(false))
const gui_pref ed_restore_session("editor/restoreSession", QVariant(true))
const gui_pref ed_code_completion_case("editor/codeCompletion_case", QVariant(true))
const int os_eol_mode
find_dialog_options
@ FIND_DLG_CASE
@ FIND_DLG_REGX
@ FIND_DLG_WRAP
@ FIND_DLG_WORDS
@ FIND_DLG_MORE
@ FIND_DLG_START
@ FIND_DLG_SEL
@ FIND_DLG_BACK
const gui_pref ed_rm_trailing_spaces("editor/rm_trailing_spaces", QVariant(true))
const gui_pref ed_default_enc("editor/default_encoding", QVariant("UTF-8"))
const gui_pref ed_long_line_marker_background("editor/long_line_marker_background", QVariant(false))
const QStringList ed_comment_strings(QStringList()<< "##"<< "#"<< "%"<< "%%"<< "%!")
const gui_pref ed_mru_file_list("editor/mru_file_list", QVariant())
const int ed_max_style_number
const gui_pref ed_show_dbg_file("editor/show_dbg_file", QVariant(true))
const gui_pref ed_show_white_space_indent("editor/show_white_space_indent", QVariant(false))
const gui_pref ed_session_ind("editor/saved_session_tab_index", QVariant(QStringList()))
const gui_pref ed_show_line_numbers("editor/showLineNumbers", QVariant(true))
const gui_pref ed_highlight_all_occurrences("editor/highlight_all_occurrences", QVariant(true))
const gui_pref ed_show_eol_chars("editor/show_eol_chars", QVariant(false))
const gui_pref ed_session_lines("editor/saved_session_lines", QVariant(QStringList()))
const gui_pref ed_show_indent_guides("editor/show_indent_guides", QVariant(false))
const gui_pref ed_code_folding("editor/code_folding", QVariant(true))
const gui_pref ed_force_newline("editor/force_newline", QVariant(true))
const gui_pref ed_indent_width("editor/indent_width", QVariant(2))
const gui_pref ed_fdlg_replace("editor/fdgl_replace", QVariant())
const gui_pref ed_tab_width("editor/tab_width", QVariant(2))
const gui_pref ed_comment_str("editor/oct_comment_str", QVariant(0))
const gui_pref ed_hiding_closes_files("editor/hiding_closes_files", QVariant(false))
const gui_pref ed_long_line_column("editor/long_line_column", QVariant(80))
const gui_pref ed_default_eol_mode("editor/default_eol_mode", QVariant(os_eol_mode))
const gui_pref ed_code_completion_replace("editor/codeCompletion_replace", QVariant(false))
const gui_pref ed_show_Line_numbers("editor/showLineNumbers", QVariant(true))
const int ed_comment_strings_count
const gui_pref ed_code_completion_keywords("editor/codeCompletion_keywords", QVariant(true))
const gui_pref ed_auto_indent("editor/auto_indent", QVariant(true))
const gui_pref ed_session_enc("editor/saved_session_encodings", QVariant(QStringList()))
const gui_pref ed_long_line_marker_line("editor/long_line_marker_line", QVariant(true))