* configure.ac:
* COPYING * gnoemoe/gm-app.c: * gnoemoe/dialogs/gm-preferences-dialog.c: * gnoemoe/gm-ui.h: * gnoemoe/widgets/gm-app-view.c: * gnoemoe/widgets/gm-editor-view.c: * gnoemoe/widgets/gm-commands.c: * gnoemoe/Makefile.am: * ui/gm-preferences.glade: * ui/gm-ui.xml: Made the code parser compile time optional * README: fixed indentation * po/Makefile.in.in: new and improved
This commit is contained in:
parent
d2e3ffb9b2
commit
a6548af4c9
3
COPYING
3
COPYING
|
@ -340,7 +340,8 @@ library. If this is what you want to do, use the GNU Library General
|
|||
Public License instead of this License.
|
||||
|
||||
|
||||
These files are subject to the licence below:
|
||||
These files are subject to the licence below (only when configured without
|
||||
--disable-parser):
|
||||
gnoemoe/parser/
|
||||
ast.c, ast.h, functions.c, functions.h,
|
||||
keywords.gperf, keywords.h, list.c, list.h,
|
||||
|
|
18
ChangeLog
18
ChangeLog
|
@ -1,3 +1,21 @@
|
|||
2006-12-08 Jesse van den Kieboom <jesse@icecrew.nl>
|
||||
* configure.ac:
|
||||
* COPYING
|
||||
* gnoemoe/gm-app.c:
|
||||
* gnoemoe/dialogs/gm-preferences-dialog.c:
|
||||
* gnoemoe/gm-ui.h:
|
||||
* gnoemoe/widgets/gm-app-view.c:
|
||||
* gnoemoe/widgets/gm-editor-view.c:
|
||||
* gnoemoe/widgets/gm-commands.c:
|
||||
* gnoemoe/Makefile.am:
|
||||
* ui/gm-preferences.glade:
|
||||
* ui/gm-ui.xml:
|
||||
|
||||
Made the code parser compile time optional
|
||||
|
||||
* README: fixed indentation
|
||||
* po/Makefile.in.in: new and improved
|
||||
|
||||
2006-12-08 Jesse van den Kieboom <jesse@icecrew.nl>
|
||||
* gnoemoe/gm-options.h: return false when loading fails
|
||||
|
||||
|
|
4
README
4
README
|
@ -60,8 +60,8 @@ Simple install procedure:
|
|||
% gzip -cd gnoemoe-2.0.10.tar.gz | tar xvf - # unpack the sources
|
||||
% cd gnoemoe-2.0.10 # change to the toplevel directory
|
||||
% ./configure # run the `configure' script
|
||||
% make # build gedit
|
||||
% make # build gnoemoe
|
||||
[ Become root if necessary ]
|
||||
% make install # install gedit
|
||||
% make install # install gnoemoe
|
||||
|
||||
See the file 'INSTALL' for more detailed information.
|
||||
|
|
19
configure.ac
19
configure.ac
|
@ -51,11 +51,23 @@ PKG_CHECK_MODULES(PACKAGE, [
|
|||
AC_SUBST(PACKAGE_CFLAGS)
|
||||
AC_SUBST(PACKAGE_LIBS)
|
||||
|
||||
dnl Check for perfect hash function generator
|
||||
AC_CHECK_PROG([GPERF],[gperf],[gperf])
|
||||
|
||||
AC_PATH_PROG(GLIB_GENMARSHAL, glib-genmarshal)
|
||||
|
||||
AC_ARG_ENABLE(parser, [ --disable-parser disable use of the moo code parser in the editor],
|
||||
parseren=$enableval, parseren=yes)
|
||||
|
||||
if test "_$parseren" = "_yes"; then
|
||||
AC_DEFINE([HAVE_PARSER], 1, [MOO code parser is enabled])
|
||||
AM_CONDITIONAL(HAS_PARSER, true)
|
||||
parsermsg="enjoy parsing"
|
||||
|
||||
dnl Check for perfect hash function generator
|
||||
AC_CHECK_PROG([GPERF],[gperf],[gperf])
|
||||
else
|
||||
AM_CONDITIONAL(HAS_PARSER, false)
|
||||
parsermsg="(user disabled)"
|
||||
fi
|
||||
|
||||
AC_ARG_ENABLE(ruby, [ --disable-ruby disable use of the ruby scripting support],
|
||||
rubyen=$enableval, rubyen=yes)
|
||||
|
||||
|
@ -216,6 +228,7 @@ data/Makefile
|
|||
|
||||
echo
|
||||
echo Building with ruby ............. : $rubyen $rubymsg
|
||||
echo Building with parser ........... : $parseren $parsermsg
|
||||
echo Building with libnotify ........ : $have_libnotify $libnotify_version
|
||||
echo Install prefix ................. : $prefix
|
||||
echo Install share .................. : $datadir
|
||||
|
|
|
@ -1,6 +1,9 @@
|
|||
## Process this file with automake to produce Makefile.in
|
||||
# SUBDIRS = test
|
||||
SUBDIRS = parser
|
||||
|
||||
if HAS_PARSER
|
||||
SUBDIRS = parser
|
||||
endif
|
||||
|
||||
CLEANFILES =
|
||||
INCLUDES = \
|
||||
-I$(srcdir) \
|
||||
|
@ -35,14 +38,17 @@ gnoemoe_SOURCES += $(BUILT_SOURCES) \
|
|||
gm-debug.c gm-debug.h \
|
||||
list.c list.h
|
||||
|
||||
|
||||
EXTRA_DIST = gm-marshal.list \
|
||||
widgets/Makefile.include \
|
||||
dialogs/Makefile.include \
|
||||
mcp/Makefile.include \
|
||||
mcp/Makefile.classes
|
||||
|
||||
gnoemoe_LDADD = @PACKAGE_LIBS@ $(INTLLIBS) @RUBY_LIBS@ @NOTIFY_LIBS@ parser/libparser.la
|
||||
gnoemoe_LDADD = @PACKAGE_LIBS@ $(INTLLIBS) @RUBY_LIBS@ @NOTIFY_LIBS@
|
||||
|
||||
if HAS_PARSER
|
||||
gnoemoe_LDADD += parser/libparser.la
|
||||
endif
|
||||
|
||||
if HAS_RUBY
|
||||
gnoemoe_SOURCES += gm-scripts.c gm-scripts.h
|
||||
|
|
|
@ -39,8 +39,11 @@ void on_gm_preferences_dialog_check_button_alt_editor_clicked(
|
|||
GtkButton *button, gpointer user_data);
|
||||
void on_gm_preferences_dialog_check_button_needs_terminal_clicked(
|
||||
GtkButton *button, gpointer user_data);
|
||||
|
||||
#ifdef HAVE_PARSER
|
||||
void on_gm_preferences_dialog_check_button_auto_syntax_clicked(
|
||||
GtkButton *button, gpointer user_data);
|
||||
#endif
|
||||
|
||||
gboolean on_gm_preferences_dialog_entry_alt_editor_focus_out(GtkEntry *entry,
|
||||
GdkEventFocus *event, gpointer user_data);
|
||||
|
@ -328,9 +331,13 @@ gm_preferences_dialog_run() {
|
|||
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(
|
||||
gm_preferences_dialog_widget("check_button_needs_terminal")),
|
||||
gm_options_get_int(options, "editor_needs_terminal"));
|
||||
|
||||
#ifdef HAVE_PARSER
|
||||
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(
|
||||
gm_preferences_dialog_widget("check_button_auto_syntax")),
|
||||
gm_options_get_int(options, "auto_check_syntax"));
|
||||
gtk_widget_show(gm_preferences_dialog_widget("frame_internal_editor"));
|
||||
#endif
|
||||
|
||||
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(
|
||||
gm_preferences_dialog_widget("check_button_show_object_number")),
|
||||
|
@ -371,9 +378,12 @@ gm_preferences_dialog_run() {
|
|||
glade_xml_signal_connect(preferences->xml,
|
||||
"on_check_button_needs_terminal_clicked", G_CALLBACK(
|
||||
on_gm_preferences_dialog_check_button_needs_terminal_clicked));
|
||||
|
||||
#ifdef HAVE_PARSER
|
||||
glade_xml_signal_connect(preferences->xml,
|
||||
"on_check_button_auto_syntax_clicked", G_CALLBACK(
|
||||
on_gm_preferences_dialog_check_button_auto_syntax_clicked));
|
||||
#endif
|
||||
|
||||
glade_xml_signal_connect(preferences->xml,
|
||||
"on_combo_box_scheme_changed", G_CALLBACK(
|
||||
|
@ -499,6 +509,7 @@ on_gm_preferences_dialog_check_button_needs_terminal_clicked(
|
|||
"editor_needs_terminal", active);
|
||||
}
|
||||
|
||||
#ifdef HAVE_PARSER
|
||||
void
|
||||
on_gm_preferences_dialog_check_button_auto_syntax_clicked(
|
||||
GtkButton *button, gpointer user_data) {
|
||||
|
@ -507,7 +518,7 @@ on_gm_preferences_dialog_check_button_auto_syntax_clicked(
|
|||
gm_options_set_int(gm_app_options(gm_app_instance()),
|
||||
"auto_check_syntax", active);
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
gboolean
|
||||
on_gm_preferences_dialog_entry_alt_editor_focus_out(GtkEntry *entry,
|
||||
|
|
|
@ -42,7 +42,10 @@ struct poptOption poptions[] = {
|
|||
|
||||
#define GM_APP_GET_PRIVATE(object)(G_TYPE_INSTANCE_GET_PRIVATE((object), \
|
||||
GM_TYPE_APP, GmAppPrivate))
|
||||
void gm_app_destroy_worlds(GmApp *app);
|
||||
|
||||
static void gm_app_destroy_worlds(GmApp *app);
|
||||
static void on_signal_term(int signum);
|
||||
static void on_signal_hup(int signum);
|
||||
|
||||
struct _GmAppPrivate {
|
||||
gchar *path;
|
||||
|
@ -200,7 +203,7 @@ gm_app_init(GmApp *app) {
|
|||
}
|
||||
|
||||
/* Private functions */
|
||||
void
|
||||
static void
|
||||
gm_app_destroy_worlds(GmApp *app) {
|
||||
GList *item;
|
||||
|
||||
|
@ -262,14 +265,18 @@ on_gm_app_save_session(GnomeClient * client, gint phase,
|
|||
return TRUE;
|
||||
}
|
||||
|
||||
void
|
||||
static void
|
||||
gm_app_create_settings(GmApp *app) {
|
||||
app->priv->options = gm_options_new();
|
||||
|
||||
gm_options_set(app->priv->options, "editor_alternative", "0");
|
||||
gm_options_set(app->priv->options, "editor_embed", "0");
|
||||
gm_options_set(app->priv->options, "editor_needs_terminal", "0");
|
||||
|
||||
#ifdef HAVE_PARSER
|
||||
gm_options_set(app->priv->options, "auto_check_syntax", "1");
|
||||
#endif
|
||||
|
||||
gm_options_set(app->priv->options, "worlds_saved_state", "");
|
||||
gm_options_set(app->priv->options, "search_direction_world", "1");
|
||||
gm_options_set(app->priv->options, "search_direction", "0");
|
||||
|
@ -301,7 +308,7 @@ gm_app_create_settings(GmApp *app) {
|
|||
gm_options_set(app->priv->options, "userlist_use_state_icon", "1");
|
||||
}
|
||||
|
||||
void
|
||||
static void
|
||||
gm_app_load_worlds(GmApp *app, gboolean autoload) {
|
||||
GDir *handle = g_dir_open(app->priv->worlds_path, 0, NULL);
|
||||
char *name, *path;
|
||||
|
@ -337,7 +344,7 @@ gm_app_load_worlds(GmApp *app, gboolean autoload) {
|
|||
}
|
||||
}
|
||||
|
||||
void
|
||||
static void
|
||||
gm_app_convert_old_color_configuration(GmApp *app, gchar const *colors_path) {
|
||||
guint i;
|
||||
gchar const *color, *value;
|
||||
|
@ -392,7 +399,7 @@ gm_app_convert_old_color_configuration(GmApp *app, gchar const *colors_path) {
|
|||
g_object_unref(G_OBJECT(table));
|
||||
}
|
||||
|
||||
void
|
||||
static void
|
||||
gm_app_initialize(GmApp *app) {
|
||||
gchar *colors_path;
|
||||
|
||||
|
@ -433,7 +440,7 @@ gm_app_initialize(GmApp *app) {
|
|||
g_free(colors_path);
|
||||
}
|
||||
|
||||
void
|
||||
static void
|
||||
gm_app_run(GmApp *app) {
|
||||
gchar **wrlds;
|
||||
const gchar *savedState;
|
||||
|
@ -529,8 +536,6 @@ gm_app_new(int argc, char *argv[]) {
|
|||
return NULL;
|
||||
}
|
||||
|
||||
|
||||
|
||||
return app;
|
||||
}
|
||||
|
||||
|
@ -623,6 +628,9 @@ main(int argc, char *argv[]) {
|
|||
application = gm_app_new(argc, argv);
|
||||
|
||||
if (application) {
|
||||
signal(SIGTERM, on_signal_term);
|
||||
signal(SIGHUP, on_signal_hup);
|
||||
|
||||
gm_app_run(application);
|
||||
g_object_unref(application);
|
||||
}
|
||||
|
@ -630,3 +638,13 @@ main(int argc, char *argv[]) {
|
|||
return 0;
|
||||
}
|
||||
|
||||
/* Signal handlers */
|
||||
static void
|
||||
on_signal_term(int signum) {
|
||||
gtk_main_quit();
|
||||
}
|
||||
|
||||
static void
|
||||
on_signal_hup(int signum) {
|
||||
gtk_main_quit();
|
||||
}
|
||||
|
|
|
@ -53,9 +53,11 @@ static const GtkActionEntry gm_editor_entries[] =
|
|||
{"EditorSaveClose", GM_STOCK_SAVE_CLOSE, N_("Save and close"), NULL,
|
||||
N_("Save editor contents and close editor"),
|
||||
G_CALLBACK(on_action_editor_save_close)},
|
||||
#ifdef HAVE_PARSER
|
||||
{"EditorParse", GTK_STOCK_EXECUTE, N_("Check code"), "<control><shift>P",
|
||||
N_("Check code for warnings and errors"),
|
||||
G_CALLBACK(on_action_editor_parse)},
|
||||
#endif
|
||||
{"EditorClose", GTK_STOCK_CLOSE, N_("Close"), NULL,
|
||||
N_("Close current editor"),
|
||||
G_CALLBACK(on_action_editor_close)}
|
||||
|
|
|
@ -316,6 +316,9 @@ gm_app_view_create_ui(GmAppView *view) {
|
|||
GError *error = NULL;
|
||||
GtkActionGroup *action_group;
|
||||
GtkAction *action;
|
||||
#ifdef HAVE_PARSER
|
||||
guint merge_id;
|
||||
#endif
|
||||
|
||||
view->priv->manager = gtk_ui_manager_new();
|
||||
|
||||
|
@ -384,6 +387,18 @@ gm_app_view_create_ui(GmAppView *view) {
|
|||
"/MenuBar/EditMenu/EditScriptsMenu"), FALSE);
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_PARSER
|
||||
merge_id = gtk_ui_manager_new_merge_id(view->priv->manager);
|
||||
gtk_ui_manager_add_ui(view->priv->manager, merge_id,
|
||||
"/MenuBar/EditorMenu/EditorMenuAdditions", "EditorParseMenu",
|
||||
"EditorParse", GTK_UI_MANAGER_MENUITEM, FALSE);
|
||||
|
||||
merge_id = gtk_ui_manager_new_merge_id(view->priv->manager);
|
||||
gtk_ui_manager_add_ui(view->priv->manager, merge_id,
|
||||
"/ToolBar/EditorToolAdditions", "EditorParseTool",
|
||||
"EditorParse", GTK_UI_MANAGER_TOOLITEM, FALSE);
|
||||
#endif
|
||||
|
||||
action = gm_app_view_action(view, "/MenuBar/WorldMenu/WorldOpenMenu");
|
||||
g_object_set(action, "short-label", _("Open"), NULL);
|
||||
}
|
||||
|
@ -1572,11 +1587,13 @@ on_gm_app_view_world_view_notebook_switch_page(GtkNotebook *notebook,
|
|||
gtk_action_group_set_sensitive(view->priv->editor_action_group,
|
||||
GM_IS_EDITOR_VIEW(page));
|
||||
|
||||
#ifdef HAVE_PARSER
|
||||
if (GM_IS_EDITOR_VIEW(page)) {
|
||||
gtk_action_set_sensitive(gm_app_view_action(view,
|
||||
"/ToolBar/EditorParseTool"), gm_editor_is_code(
|
||||
"/ToolBar/EditorToolAdditions/EditorParseTool"), gm_editor_is_code(
|
||||
gm_editor_view_editor(GM_EDITOR_VIEW(page))));
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
void
|
||||
|
|
|
@ -198,10 +198,12 @@ on_action_editor_save_close(GtkAction *action, GmAppView *view) {
|
|||
gm_editor_close(gm_editor_view_editor(editor_view));
|
||||
}
|
||||
|
||||
#ifdef HAVE_PARSER
|
||||
void
|
||||
on_action_editor_parse(GtkAction *action, GmAppView *view) {
|
||||
gm_editor_view_check_syntax(gm_app_view_active_editor_view(view));
|
||||
}
|
||||
#endif
|
||||
|
||||
void
|
||||
on_action_editor_close(GtkAction *action, GmAppView *view) {
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
#ifdef HAVE_CONFIG_H
|
||||
#include <config.h>
|
||||
#endif
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <gtksourceview/gtksourceview.h>
|
||||
|
@ -13,10 +17,13 @@
|
|||
#include "gm-options.h"
|
||||
#include "gm-color-table.h"
|
||||
#include "gm-app.h"
|
||||
#include "parser/gm-parser.h"
|
||||
#include "gm-source-style-scheme.h"
|
||||
#include "gm-searchable.h"
|
||||
|
||||
#ifdef HAVE_PARSER
|
||||
#include "parser/gm-parser.h"
|
||||
#endif
|
||||
|
||||
#define GM_EDITOR_VIEW_GET_PRIVATE(object)( \
|
||||
G_TYPE_INSTANCE_GET_PRIVATE((object), \
|
||||
GM_TYPE_EDITOR_VIEW, GmEditorViewPrivate))
|
||||
|
@ -25,6 +32,7 @@ struct _GmEditorViewPrivate {
|
|||
GmWorld *world;
|
||||
GmEditor *editor;
|
||||
|
||||
#ifdef HAVE_PARSER
|
||||
GtkExpander *expander;
|
||||
GtkWidget *message_area;
|
||||
GtkWidget *error_area;
|
||||
|
@ -38,6 +46,8 @@ struct _GmEditorViewPrivate {
|
|||
guint hide_error_handler;
|
||||
gboolean expanding;
|
||||
gboolean was_expanded;
|
||||
#endif
|
||||
|
||||
GtkSourceView *source_view;
|
||||
};
|
||||
|
||||
|
@ -71,10 +81,13 @@ void on_gm_editor_view_font_changed(GmColorTable *color_table,
|
|||
gchar const *desc, GmEditorView *view);
|
||||
void on_gm_editor_view_modified_changed(GtkTextBuffer *buffer,
|
||||
GmEditorView *view);
|
||||
|
||||
#ifdef HAVE_PARSER
|
||||
void on_gm_editor_view_changed(GtkTextBuffer *buffer,
|
||||
GmEditorView *view);
|
||||
void on_gm_editor_view_expander(GObject *object, GParamSpec *param_spec,
|
||||
GmEditorView *view);
|
||||
#endif
|
||||
|
||||
G_DEFINE_TYPE_EXTENDED(GmEditorView, gm_editor_view, GTK_TYPE_VBOX, 0, \
|
||||
G_IMPLEMENT_INTERFACE(GM_TYPE_SEARCHABLE, \
|
||||
|
@ -96,6 +109,8 @@ gm_editor_view_searchable_get_text_view(GmSearchable *sea) {
|
|||
|
||||
static void
|
||||
gm_editor_view_finalize(GObject *object) {
|
||||
|
||||
#ifdef HAVE_PARSER
|
||||
GmEditorView *obj = GM_EDITOR_VIEW(object);
|
||||
|
||||
if (obj->priv->timeout_handler) {
|
||||
|
@ -104,6 +119,7 @@ gm_editor_view_finalize(GObject *object) {
|
|||
if (obj->priv->hide_error_handler) {
|
||||
g_source_remove(obj->priv->hide_error_handler);
|
||||
}
|
||||
#endif
|
||||
|
||||
G_OBJECT_CLASS(gm_editor_view_parent_class)->finalize(object);
|
||||
}
|
||||
|
@ -209,15 +225,19 @@ gm_editor_view_create_source_view(GmEditorView *view) {
|
|||
if (gm_editor_is_code(view->priv->editor)) {
|
||||
gtk_source_buffer_set_highlight(GTK_SOURCE_BUFFER(buffer), TRUE);
|
||||
|
||||
#ifdef HAVE_PARSER
|
||||
g_signal_connect(buffer, "changed",
|
||||
G_CALLBACK(on_gm_editor_view_changed), view);
|
||||
#endif
|
||||
} else {
|
||||
gtk_source_buffer_set_highlight(GTK_SOURCE_BUFFER(buffer), FALSE);
|
||||
gtk_source_buffer_set_check_brackets(GTK_SOURCE_BUFFER(buffer), FALSE);
|
||||
}
|
||||
|
||||
#ifdef HAVE_PARSER
|
||||
gtk_text_buffer_create_tag(buffer, "gm_error", "underline",
|
||||
PANGO_UNDERLINE_ERROR, NULL);
|
||||
#endif
|
||||
|
||||
g_signal_connect(buffer, "modified_changed",
|
||||
G_CALLBACK(on_gm_editor_view_modified_changed), view);
|
||||
|
@ -227,6 +247,7 @@ gm_editor_view_create_source_view(GmEditorView *view) {
|
|||
return GTK_SOURCE_VIEW(source_view);
|
||||
}
|
||||
|
||||
#ifdef HAVE_PARSER
|
||||
static gboolean
|
||||
gm_editor_view_paint_message_area(GtkWidget *widget, GdkEventExpose *event,
|
||||
GmEditorView *view) {
|
||||
|
@ -336,6 +357,7 @@ gm_editor_view_create_message_area(GmEditorView *view) {
|
|||
gtk_box_pack_start(GTK_BOX(view->priv->error_area),
|
||||
view->priv->warning_frame, TRUE, TRUE, 0);
|
||||
}
|
||||
#endif
|
||||
|
||||
static void
|
||||
gm_editor_view_init(GmEditorView *obj) {
|
||||
|
@ -344,8 +366,10 @@ gm_editor_view_init(GmEditorView *obj) {
|
|||
gtk_box_set_spacing(GTK_BOX(obj), 0);
|
||||
gtk_box_set_homogeneous(GTK_BOX(obj), FALSE);
|
||||
|
||||
#ifdef HAVE_PARSER
|
||||
gm_editor_view_create_message_area(obj);
|
||||
gtk_box_pack_start(GTK_BOX(obj), obj->priv->message_area, FALSE, FALSE, 0);
|
||||
#endif
|
||||
}
|
||||
|
||||
GmEditorView *
|
||||
|
@ -397,6 +421,7 @@ gm_editor_view_save(GmEditorView *view) {
|
|||
gm_editor_save(view->priv->editor);
|
||||
}
|
||||
|
||||
#ifdef HAVE_PARSER
|
||||
gboolean
|
||||
gm_editor_view_no_errors(GmEditorView *view) {
|
||||
gtk_widget_hide(view->priv->message_area);
|
||||
|
@ -574,6 +599,14 @@ gm_editor_view_parse(GmEditorView *view) {
|
|||
return ret;
|
||||
}
|
||||
|
||||
static gboolean
|
||||
idle_grab_focus(gpointer user_data) {
|
||||
g_message("Grabbing focus");
|
||||
gtk_widget_grab_focus(GTK_WIDGET(user_data));
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
void
|
||||
gm_editor_view_check_syntax(GmEditorView *view) {
|
||||
int ret = gm_editor_view_parse(view);
|
||||
|
@ -583,6 +616,8 @@ gm_editor_view_check_syntax(GmEditorView *view) {
|
|||
gtk_widget_hide(view->priv->message_area);
|
||||
gm_info_dialog(_("No errors are found"),
|
||||
GTK_WINDOW(gm_find_parent(GTK_WIDGET(view), GTK_TYPE_WINDOW)));
|
||||
|
||||
g_timeout_add(100, idle_grab_focus, view->priv->source_view);
|
||||
} else {
|
||||
gtk_expander_set_expanded(view->priv->expander, TRUE);
|
||||
gtk_widget_show(view->priv->message_area);
|
||||
|
@ -590,6 +625,7 @@ gm_editor_view_check_syntax(GmEditorView *view) {
|
|||
gtk_widget_queue_draw(view->priv->message_area);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
/* Callbacks */
|
||||
|
||||
|
@ -620,6 +656,7 @@ on_gm_editor_view_modified_changed(GtkTextBuffer *buffer,
|
|||
gtk_text_buffer_get_modified(buffer));
|
||||
}
|
||||
|
||||
#ifdef HAVE_PARSER
|
||||
gboolean
|
||||
gm_editor_view_timeout(GmEditorView *view) {
|
||||
gm_editor_view_parse(view);
|
||||
|
@ -660,3 +697,4 @@ on_gm_editor_view_expander(GObject *object, GParamSpec *param_spec,
|
|||
|
||||
gtk_widget_queue_draw(view->priv->message_area);
|
||||
}
|
||||
#endif
|
||||
|
|
|
@ -22,7 +22,6 @@ PACKAGE = @PACKAGE@
|
|||
VERSION = @VERSION@
|
||||
|
||||
SHELL = /bin/sh
|
||||
@SET_MAKE@
|
||||
|
||||
srcdir = @srcdir@
|
||||
top_srcdir = @top_srcdir@
|
||||
|
@ -34,9 +33,8 @@ exec_prefix = @exec_prefix@
|
|||
datadir = @datadir@
|
||||
datarootdir = @datarootdir@
|
||||
libdir = @libdir@
|
||||
localedir = $(libdir)/locale
|
||||
gnulocaledir = $(datadir)/locale
|
||||
gettextsrcdir = $(datadir)/glib-2.0/gettext/po
|
||||
DATADIRNAME = @DATADIRNAME@
|
||||
itlocaledir = $(prefix)/$(DATADIRNAME)/locale
|
||||
subdir = po
|
||||
install_sh = @install_sh@
|
||||
# Automake >= 1.8 provides @mkdir_p@.
|
||||
|
@ -46,7 +44,6 @@ mkdir_p = $(install_sh) -d
|
|||
INSTALL = @INSTALL@
|
||||
INSTALL_DATA = @INSTALL_DATA@
|
||||
|
||||
CC = @CC@
|
||||
GMSGFMT = @GMSGFMT@
|
||||
MSGFMT = @MSGFMT@
|
||||
XGETTEXT = @XGETTEXT@
|
||||
|
@ -55,31 +52,22 @@ INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
|
|||
MSGMERGE = INTLTOOL_EXTRACT=$(INTLTOOL_EXTRACT) srcdir=$(srcdir) $(INTLTOOL_UPDATE) --gettext-package $(GETTEXT_PACKAGE) --dist
|
||||
GENPOT = INTLTOOL_EXTRACT=$(INTLTOOL_EXTRACT) srcdir=$(srcdir) $(INTLTOOL_UPDATE) --gettext-package $(GETTEXT_PACKAGE) --pot
|
||||
|
||||
DEFS = @DEFS@
|
||||
CFLAGS = @CFLAGS@
|
||||
CPPFLAGS = @CPPFLAGS@
|
||||
ALL_LINGUAS = @ALL_LINGUAS@
|
||||
|
||||
INCLUDES = -I.. -I$(top_srcdir)/intl
|
||||
PO_LINGUAS=$(shell if test -r $(srcdir)/LINGUAS; then grep -v "^\#" $(srcdir)/LINGUAS; fi)
|
||||
|
||||
COMPILE = $(CC) -c $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) $(XCFLAGS)
|
||||
POFILES=$(shell if test -n "$(PO_LINGUAS)"; then LINGUAS="$(PO_LINGUAS)"; else LINGUAS="$(ALL_LINGUAS)"; fi; for lang in $$LINGUAS; do printf "$$lang.po "; done)
|
||||
|
||||
SOURCES =
|
||||
POFILES = @POFILES@
|
||||
GMOFILES = @GMOFILES@
|
||||
DISTFILES = ChangeLog Makefile.in.in POTFILES.in \
|
||||
$(POFILES) $(SOURCES)
|
||||
DISTFILES = ChangeLog Makefile.in.in POTFILES.in $(POFILES)
|
||||
EXTRA_DISTFILES = POTFILES.skip Makevars LINGUAS
|
||||
|
||||
POTFILES = \
|
||||
#This Gets Replace for some reason
|
||||
|
||||
CATALOGS = @CATALOGS@
|
||||
CATOBJEXT = @CATOBJEXT@
|
||||
CATALOGS=$(shell if test -n "$(PO_LINGUAS)"; then LINGUAS="$(PO_LINGUAS)"; else LINGUAS="$(ALL_LINGUAS)"; fi; for lang in $$LINGUAS; do printf "$$lang.gmo "; done)
|
||||
|
||||
.SUFFIXES:
|
||||
.SUFFIXES: .c .o .po .pox .gmo .mo .msg .cat
|
||||
|
||||
.c.o:
|
||||
$(COMPILE) $<
|
||||
.SUFFIXES: .po .pox .gmo .mo .msg .cat
|
||||
|
||||
.po.pox:
|
||||
$(MAKE) $(GETTEXT_PACKAGE).pot
|
||||
|
@ -105,76 +93,63 @@ all-no:
|
|||
$(GETTEXT_PACKAGE).pot: $(POTFILES)
|
||||
$(GENPOT)
|
||||
|
||||
install: install-exec install-data
|
||||
install-exec:
|
||||
install: install-data
|
||||
install-data: install-data-@USE_NLS@
|
||||
install-data-no: all
|
||||
install-data-yes: all
|
||||
$(mkdir_p) $(DESTDIR)$(datadir)
|
||||
@catalogs='$(CATALOGS)'; \
|
||||
for cat in $$catalogs; do \
|
||||
cat=`basename $$cat`; \
|
||||
case "$$cat" in \
|
||||
*.gmo) destdir=$(gnulocaledir);; \
|
||||
*) destdir=$(localedir);; \
|
||||
esac; \
|
||||
lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \
|
||||
dir=$(DESTDIR)$$destdir/$$lang/LC_MESSAGES; \
|
||||
$(mkdir_p) $$dir; \
|
||||
if test -r $$cat; then \
|
||||
$(INSTALL_DATA) $$cat $$dir/$(GETTEXT_PACKAGE).mo; \
|
||||
echo "installing $$cat as $$dir/$(GETTEXT_PACKAGE).mo"; \
|
||||
$(mkdir_p) $(DESTDIR)$(itlocaledir)
|
||||
if test -n "$(PO_LINGUAS)"; then \
|
||||
linguas="$(PO_LINGUAS)"; \
|
||||
else \
|
||||
$(INSTALL_DATA) $(srcdir)/$$cat $$dir/$(GETTEXT_PACKAGE).mo; \
|
||||
echo "installing $(srcdir)/$$cat as" \
|
||||
linguas="$(ALL_LINGUAS)"; \
|
||||
fi; \
|
||||
for lang in $$linguas; do \
|
||||
dir=$(DESTDIR)$(itlocaledir)/$$lang/LC_MESSAGES; \
|
||||
$(mkdir_p) $$dir; \
|
||||
if test -r $$lang.gmo; then \
|
||||
$(INSTALL_DATA) $$lang.gmo $$dir/$(GETTEXT_PACKAGE).mo; \
|
||||
echo "installing $$lang.gmo as $$dir/$(GETTEXT_PACKAGE).mo"; \
|
||||
else \
|
||||
$(INSTALL_DATA) $(srcdir)/$$lang.gmo $$dir/$(GETTEXT_PACKAGE).mo; \
|
||||
echo "installing $(srcdir)/$$lang.gmo as" \
|
||||
"$$dir/$(GETTEXT_PACKAGE).mo"; \
|
||||
fi; \
|
||||
if test -r $$cat.m; then \
|
||||
$(INSTALL_DATA) $$cat.m $$dir/$(GETTEXT_PACKAGE).mo.m; \
|
||||
echo "installing $$cat.m as $$dir/$(GETTEXT_PACKAGE).mo.m"; \
|
||||
if test -r $$lang.gmo.m; then \
|
||||
$(INSTALL_DATA) $$lang.gmo.m $$dir/$(GETTEXT_PACKAGE).mo.m; \
|
||||
echo "installing $$lang.gmo.m as $$dir/$(GETTEXT_PACKAGE).mo.m"; \
|
||||
else \
|
||||
if test -r $(srcdir)/$$cat.m ; then \
|
||||
$(INSTALL_DATA) $(srcdir)/$$cat.m \
|
||||
if test -r $(srcdir)/$$lang.gmo.m ; then \
|
||||
$(INSTALL_DATA) $(srcdir)/$$lang.gmo.m \
|
||||
$$dir/$(GETTEXT_PACKAGE).mo.m; \
|
||||
echo "installing $(srcdir)/$$cat as" \
|
||||
echo "installing $(srcdir)/$$lang.gmo.m as" \
|
||||
"$$dir/$(GETTEXT_PACKAGE).mo.m"; \
|
||||
else \
|
||||
true; \
|
||||
fi; \
|
||||
fi; \
|
||||
done
|
||||
if test "$(PACKAGE)" = "glib"; then \
|
||||
$(mkdir_p) $(DESTDIR)$(gettextsrcdir); \
|
||||
$(INSTALL_DATA) $(srcdir)/Makefile.in.in \
|
||||
$(DESTDIR)$(gettextsrcdir)/Makefile.in.in; \
|
||||
else \
|
||||
: ; \
|
||||
fi
|
||||
|
||||
# Empty stubs to satisfy archaic automake needs
|
||||
dvi info tags TAGS ID:
|
||||
|
||||
# Define this as empty until I found a useful application.
|
||||
installcheck:
|
||||
|
||||
uninstall:
|
||||
catalogs='$(CATALOGS)'; \
|
||||
for cat in $$catalogs; do \
|
||||
cat=`basename $$cat`; \
|
||||
lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \
|
||||
rm -f $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE).mo; \
|
||||
rm -f $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE).mo.m; \
|
||||
rm -f $(DESTDIR)$(gnulocaledir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE).mo; \
|
||||
rm -f $(DESTDIR)$(gnulocaledir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE).mo.m; \
|
||||
if test -n "$(PO_LINGUAS)"; then \
|
||||
linguas="$(PO_LINGUAS)"; \
|
||||
else \
|
||||
linguas="$(ALL_LINGUAS)"; \
|
||||
fi; \
|
||||
for lang in $$linguas; do \
|
||||
rm -f $(DESTDIR)$(itlocaledir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE).mo; \
|
||||
rm -f $(DESTDIR)$(itlocaledir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE).mo.m; \
|
||||
done
|
||||
if test "$(PACKAGE)" = "glib"; then \
|
||||
rm -f $(DESTDIR)$(gettextsrcdir)/Makefile.in.in; \
|
||||
fi
|
||||
|
||||
check: all $(GETTEXT_PACKAGE).pot
|
||||
|
||||
dvi info tags TAGS ID:
|
||||
|
||||
mostlyclean:
|
||||
rm -f core core.* *.pox $(GETTEXT_PACKAGE).pot *.old.po cat-id-tbl.tmp
|
||||
rm -fr *.o
|
||||
rm -f *.pox $(GETTEXT_PACKAGE).pot *.old.po cat-id-tbl.tmp
|
||||
rm -f .intltool-merge-cache
|
||||
|
||||
clean: mostlyclean
|
||||
|
@ -188,7 +163,7 @@ maintainer-clean: distclean
|
|||
@echo "it deletes files that may require special tools to rebuild."
|
||||
rm -f Makefile.in.in
|
||||
|
||||
distdir = ../$(GETTEXT_PACKAGE)-$(VERSION)/$(subdir)
|
||||
distdir = ../$(PACKAGE)-$(VERSION)/$(subdir)
|
||||
dist distdir: $(DISTFILES)
|
||||
dists="$(DISTFILES)"; \
|
||||
extra_dists="$(EXTRA_DISTFILES)"; \
|
||||
|
@ -204,10 +179,12 @@ dist distdir: $(DISTFILES)
|
|||
update-po: Makefile
|
||||
$(MAKE) $(GETTEXT_PACKAGE).pot
|
||||
tmpdir=`pwd`; \
|
||||
catalogs='$(CATALOGS)'; \
|
||||
for cat in $$catalogs; do \
|
||||
cat=`basename $$cat`; \
|
||||
lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \
|
||||
if test -n "$(PO_LINGUAS)"; then \
|
||||
linguas="$(PO_LINGUAS)"; \
|
||||
else \
|
||||
linguas="$(ALL_LINGUAS)"; \
|
||||
fi; \
|
||||
for lang in $$linguas; do \
|
||||
echo "$$lang:"; \
|
||||
result="`$(MSGMERGE) -o $$tmpdir/$$lang.new.po $$lang`"; \
|
||||
if $$result; then \
|
||||
|
@ -223,7 +200,7 @@ update-po: Makefile
|
|||
fi; \
|
||||
fi; \
|
||||
else \
|
||||
echo "msgmerge for $$cat failed!"; \
|
||||
echo "msgmerge for $$lang.gmo failed!"; \
|
||||
rm -f $$tmpdir/$$lang.new.po; \
|
||||
fi; \
|
||||
done
|
||||
|
|
|
@ -1258,8 +1258,7 @@
|
|||
</child>
|
||||
|
||||
<child>
|
||||
<widget class="GtkFrame" id="frame16">
|
||||
<property name="visible">True</property>
|
||||
<widget class="GtkFrame" id="frame_internal_editor">
|
||||
<property name="label_xalign">0</property>
|
||||
<property name="label_yalign">0.5</property>
|
||||
<property name="shadow_type">GTK_SHADOW_NONE</property>
|
||||
|
|
|
@ -35,7 +35,7 @@
|
|||
<menu name="EditorMenu" action="Editor">
|
||||
<menuitem name="EditorSaveMenu" action="EditorSave"/>
|
||||
<menuitem name="EditorSaveCloseMenu" action="EditorSaveClose"/>
|
||||
<menuitem name="EditorParseMenu" action="EditorParse"/>
|
||||
<placeholder name="EditorMenuAdditions"/>
|
||||
<separator/>
|
||||
<menuitem name="EditorCloseMenu" action="EditorClose"/>
|
||||
</menu>
|
||||
|
@ -50,7 +50,7 @@
|
|||
<separator/>
|
||||
<toolitem name="EditorSaveTool" action="EditorSave"/>
|
||||
<toolitem name="EditorSaveCloseTool" action="EditorSaveClose"/>
|
||||
<toolitem name="EditorParseTool" action="EditorParse"/>
|
||||
<placeholder name="EditorToolAdditions"/>
|
||||
<separator/>
|
||||
<placeholder name="ToolOps_2"/>
|
||||
<separator/>
|
||||
|
|
Reference in New Issue