SF.net SVN: geany: [779] trunk
eht16 at users.sourceforge.net
eht16 at xxxxx
Fri Sep 1 17:08:10 UTC 2006
Revision: 779
http://svn.sourceforge.net/geany/?rev=779&view=rev
Author: eht16
Date: 2006-09-01 10:07:49 -0700 (Fri, 01 Sep 2006)
Log Message:
-----------
Split filetype PHP/HTML into PHP and HTML.
Modified Paths:
--------------
trunk/ChangeLog
trunk/TODO
trunk/data/filetype_extensions.conf
trunk/src/callbacks.c
trunk/src/filetypes.c
trunk/src/filetypes.h
trunk/src/highlighting.c
trunk/src/highlighting.h
trunk/src/keybindings.c
trunk/src/msgwindow.c
trunk/src/sci_cb.c
trunk/src/sci_cb.h
Added Paths:
-----------
trunk/data/filetypes.html
Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog 2006-09-01 15:48:56 UTC (rev 778)
+++ trunk/ChangeLog 2006-09-01 17:07:49 UTC (rev 779)
@@ -2,6 +2,10 @@
* src/document.c, src/dialogs.c, src/prefs.c, src/callbacks.c,
src/interface.c, geany.glade: Fixed some typos.
+ * src/filetypes.c, src/highlighting.c, src/keybindings.c,
+ src/sci_cb.c, data/filetypes.html, data/filetype_extensions.conf,
+ src/callbacks.c, src/msgwindow.c:
+ Split filetype PHP/HTML into PHP and HTML.
2006-09-01 Frank Lanitz <frank at frank.uvena.de>
Modified: trunk/TODO
===================================================================
--- trunk/TODO 2006-09-01 15:48:56 UTC (rev 778)
+++ trunk/TODO 2006-09-01 17:07:49 UTC (rev 779)
@@ -5,19 +5,20 @@
Geany 0.8 or later:
+ o fix problems when loading global.tags and other tags files are
+ already loaded
o Go to xxx - definable command
o documentation: list and explain filetype modes
+ o documentation: preferences
o user-definable auto completion structs
- o documentation: preferences
- o save build includes & arguments
- o separate filetype for HTML
+ o save build includes & arguments (->project management)
o don't override Scintilla keybindings by default
o allow use of custom global tags files
o common default highlighting all in one config file
+ o project management
o (DBUS)
o (startup notification)
o (indent wrapped lines - Scintilla issue)
o (inverting highlighting by selection - Scintilla issue)
- o (project management)
o (folder tree in the sidebar)
o (improved Windows support)
Modified: trunk/data/filetype_extensions.conf
===================================================================
--- trunk/data/filetype_extensions.conf 2006-09-01 15:48:56 UTC (rev 778)
+++ trunk/data/filetype_extensions.conf 2006-09-01 17:07:49 UTC (rev 779)
@@ -12,7 +12,7 @@
Ferite=*.fe;
CAML=*.ml;*.mli;
Perl=*.pl;*.perl;*.pm;
-PHP=*.php;*.php3;*.php4;*.php5;*.html;*.htm;
+PHP=*.php;*.php3;*.php4;*.php5;*.phtml;
Python=*.py;*.pyw;
Ruby=*.rb;*.rhtml;
Tcl=*.tcl;*.tk;*.wish;
@@ -20,6 +20,7 @@
Make=*.mak;*.mk;Makefile*;makefile*;
XML=*.xml;*.sgml;
Docbook=*.docbook;
+HTML=*.htm;*.html;*.shtml;*.hta;*.htd;*.htt;*.cfm;
CSS=*.css;
SQL=*.sql;
LaTeX=*.tex;*.sty;*.idx;
@@ -27,3 +28,4 @@
Conf=*.conf;*.ini;config;*rc;*.cfg;
Diff=*.diff;*.patch;
None=*;
+
Added: trunk/data/filetypes.html
===================================================================
--- trunk/data/filetypes.html (rev 0)
+++ trunk/data/filetypes.html 2006-09-01 17:07:49 UTC (rev 779)
@@ -0,0 +1,31 @@
+# For complete documentation of this file, please see Geany's main documentation
+[styling]
+# styling for PHP/HTML is done in filetypes.xml
+
+
+[settings]
+# the following characters are these which a "word" can contains, see documentation
+wordchars=_#&abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789
+
+# if only single comment char is supported like # in this file, leave comment_close blank
+# these comments are used for PHP, the comments used in HTML are in filetypes.xml
+comment_open=<!--
+comment_close=-->
+
+# set to false if a comment character/string should start at column 0 of a line, true uses any
+# indention of the line, e.g. setting to true causes the following on pressing CTRL+d
+ #command_example();
+# setting to false would generate this
+# command_example();
+# This setting works only for single line comments
+comment_use_indent=true
+
+[build_settings]
+# %f will be replaced by the complete filename
+# %e will be replaced by the filename without extension
+# (use only one of it at one time)
+# use a syntax checker and ignore the formatted output
+compiler=tidy %f >/dev/null
+
+# the file will be opened with the default browser which can be set in the preferences dialog
+run_cmd=builtin
Modified: trunk/src/callbacks.c
===================================================================
--- trunk/src/callbacks.c 2006-09-01 15:48:56 UTC (rev 778)
+++ trunk/src/callbacks.c 2006-09-01 17:07:49 UTC (rev 779)
@@ -1716,6 +1716,12 @@
msgwin_status_add(_("Failed to execute the view program"));
}
}
+ else if (doc_list[idx].file_type->id == GEANY_FILETYPES_HTML)
+ {
+ gchar *uri = g_strconcat("file:///", g_path_skip_root(doc_list[idx].file_name), NULL);
+ utils_start_browser(uri);
+ g_free(uri);
+ }
else
{
// save the file only if the run command uses it
Modified: trunk/src/filetypes.c
===================================================================
--- trunk/src/filetypes.c 2006-09-01 15:48:56 UTC (rev 778)
+++ trunk/src/filetypes.c 2006-09-01 17:07:49 UTC (rev 779)
@@ -60,8 +60,8 @@
FILETYPE_UID_D, // 21
FILETYPE_UID_FORTRAN, // 22
FILETYPE_UID_DIFF, // 23
- FILETYPE_UID_FERITE // 24
- //FILETYPE_UID_HTML, // 25
+ FILETYPE_UID_FERITE, // 24
+ FILETYPE_UID_HTML // 25
};
@@ -100,9 +100,9 @@
case FILETYPE_UID_ALL: return filetypes[GEANY_FILETYPES_ALL];
case FILETYPE_UID_D: return filetypes[GEANY_FILETYPES_D];
case FILETYPE_UID_FORTRAN: return filetypes[GEANY_FILETYPES_FORTRAN];
- case FILETYPE_UID_DIFF: return filetypes[GEANY_FILETYPES_DIFF];
+ case FILETYPE_UID_DIFF: return filetypes[GEANY_FILETYPES_DIFF];
case FILETYPE_UID_FERITE: return filetypes[GEANY_FILETYPES_FERITE];
- //case FILETYPE_UID_HTML: return filetypes[GEANY_FILETYPES_HTML];
+ case FILETYPE_UID_HTML: return filetypes[GEANY_FILETYPES_HTML];
default: return NULL;
}
}
@@ -322,16 +322,15 @@
filetypes[GEANY_FILETYPES_PHP]->lang = 6;
filetypes[GEANY_FILETYPES_PHP]->name = g_strdup("PHP");
filetypes[GEANY_FILETYPES_PHP]->has_tags = TRUE;
- filetypes[GEANY_FILETYPES_PHP]->title = g_strdup(_("PHP / HTML source file"));
+ filetypes[GEANY_FILETYPES_PHP]->title = g_strdup(_("PHP source file"));
filetypes[GEANY_FILETYPES_PHP]->extension = g_strdup("php");
- filetypes[GEANY_FILETYPES_PHP]->pattern = g_new0(gchar*, 7);
+ filetypes[GEANY_FILETYPES_PHP]->pattern = g_new0(gchar*, 6);
filetypes[GEANY_FILETYPES_PHP]->pattern[0] = g_strdup("*.php");
filetypes[GEANY_FILETYPES_PHP]->pattern[1] = g_strdup("*.php3");
filetypes[GEANY_FILETYPES_PHP]->pattern[2] = g_strdup("*.php4");
filetypes[GEANY_FILETYPES_PHP]->pattern[3] = g_strdup("*.php5");
- filetypes[GEANY_FILETYPES_PHP]->pattern[4] = g_strdup("*.html");
- filetypes[GEANY_FILETYPES_PHP]->pattern[5] = g_strdup("*.htm");
- filetypes[GEANY_FILETYPES_PHP]->pattern[6] = NULL;
+ filetypes[GEANY_FILETYPES_PHP]->pattern[4] = g_strdup("*.phtml");
+ filetypes[GEANY_FILETYPES_PHP]->pattern[5] = NULL;
filetypes[GEANY_FILETYPES_PHP]->style_func_ptr = styleset_php;
filetypes[GEANY_FILETYPES_PHP]->comment_open = g_strdup("//");
filetypes[GEANY_FILETYPES_PHP]->comment_close = NULL;
@@ -504,6 +503,32 @@
filetypes_init_build_programs(filetypes[GEANY_FILETYPES_DOCBOOK]);
filetypes_create_menu_item(filetype_menu, filetypes[GEANY_FILETYPES_DOCBOOK]->title, filetypes[GEANY_FILETYPES_DOCBOOK]);
+#define HTML
+ filetypes[GEANY_FILETYPES_HTML] = g_new0(filetype, 1);
+ filetypes[GEANY_FILETYPES_HTML]->id = GEANY_FILETYPES_HTML;
+ filetypes[GEANY_FILETYPES_HTML]->uid = FILETYPE_UID_HTML;
+ filetypes[GEANY_FILETYPES_HTML]->item = NULL;
+ filetypes[GEANY_FILETYPES_HTML]->lang = -2;
+ filetypes[GEANY_FILETYPES_HTML]->name = g_strdup("HTML");
+ filetypes[GEANY_FILETYPES_HTML]->has_tags = FALSE;
+ filetypes[GEANY_FILETYPES_HTML]->title = g_strdup(_("HTML source file"));
+ filetypes[GEANY_FILETYPES_HTML]->extension = g_strdup("html");
+ filetypes[GEANY_FILETYPES_HTML]->pattern = g_new0(gchar*, 8);
+ filetypes[GEANY_FILETYPES_HTML]->pattern[0] = g_strdup("*.htm");
+ filetypes[GEANY_FILETYPES_HTML]->pattern[1] = g_strdup("*.html");
+ filetypes[GEANY_FILETYPES_HTML]->pattern[2] = g_strdup("*.shtml");
+ filetypes[GEANY_FILETYPES_HTML]->pattern[3] = g_strdup("*.hta");
+ filetypes[GEANY_FILETYPES_HTML]->pattern[4] = g_strdup("*.htd");
+ filetypes[GEANY_FILETYPES_HTML]->pattern[5] = g_strdup("*.htt");
+ filetypes[GEANY_FILETYPES_HTML]->pattern[6] = g_strdup("*.cfm");
+ filetypes[GEANY_FILETYPES_HTML]->pattern[7] = NULL;
+ filetypes[GEANY_FILETYPES_HTML]->style_func_ptr = styleset_html;
+ filetypes[GEANY_FILETYPES_HTML]->comment_open = g_strdup("<!--");
+ filetypes[GEANY_FILETYPES_HTML]->comment_close = g_strdup("-->");
+ filetypes_init_build_programs(filetypes[GEANY_FILETYPES_HTML]);
+ filetypes_create_menu_item(filetype_menu, filetypes[GEANY_FILETYPES_HTML]->title, filetypes[GEANY_FILETYPES_HTML]);
+ filetypes_create_newmenu_item(template_menu, filetypes[GEANY_FILETYPES_HTML]->title, filetypes[GEANY_FILETYPES_HTML]);
+
#define CSS
filetypes[GEANY_FILETYPES_CSS] = g_new0(filetype, 1);
filetypes[GEANY_FILETYPES_CSS]->id = GEANY_FILETYPES_CSS;
Modified: trunk/src/filetypes.h
===================================================================
--- trunk/src/filetypes.h 2006-09-01 15:48:56 UTC (rev 778)
+++ trunk/src/filetypes.h 2006-09-01 17:07:49 UTC (rev 779)
@@ -52,9 +52,7 @@
GEANY_FILETYPES_MAKE,
GEANY_FILETYPES_XML,
GEANY_FILETYPES_DOCBOOK,
-/*
GEANY_FILETYPES_HTML,
-*/
GEANY_FILETYPES_CSS,
GEANY_FILETYPES_SQL,
GEANY_FILETYPES_LATEX,
Modified: trunk/src/highlighting.c
===================================================================
--- trunk/src/highlighting.c 2006-09-01 15:48:56 UTC (rev 778)
+++ trunk/src/highlighting.c 2006-09-01 17:07:49 UTC (rev 779)
@@ -864,7 +864,7 @@
types[GEANY_FILETYPES_PHP] = g_new(style_set, 1);
types[GEANY_FILETYPES_PHP]->keywords = NULL;
- styleset_get_wordchars(config, config_home, GEANY_FILETYPES_PHP, GEANY_WORDCHARS"$");
+ styleset_get_wordchars(config, config_home, GEANY_FILETYPES_PHP, GEANY_WORDCHARS);
filetypes_get_config(config, config_home, GEANY_FILETYPES_PHP);
// load global tags file for PHP autocompletion
@@ -876,6 +876,48 @@
global_php_tags_loaded = TRUE;
g_free(file);
}
+
+ g_key_file_free(config);
+ g_key_file_free(config_home);
+ g_free(f0);
+ g_free(f);
+}
+
+
+void styleset_php(ScintillaObject *sci)
+{
+ if (types[GEANY_FILETYPES_PHP] == NULL) styleset_php_init();
+
+ styleset_common(sci, 7);
+
+ SSM(sci, SCI_SETPROPERTY, (sptr_t) "phpscript.mode", (sptr_t) "1");
+ SSM(sci, SCI_SETLEXER, SCLEX_HTML, 0);
+
+ SSM(sci, SCI_AUTOCSETMAXHEIGHT, app->autocompletion_max_height, 0);
+
+ // use the same colouring as for XML
+ styleset_markup(sci);
+
+ SSM(sci, SCI_SETWORDCHARS, 0, (sptr_t) types[GEANY_FILETYPES_PHP]->wordchars);
+}
+
+
+static void styleset_html_init(void)
+{
+ GKeyFile *config = g_key_file_new();
+ GKeyFile *config_home = g_key_file_new();
+ gchar *f0 = g_strconcat(app->datadir, G_DIR_SEPARATOR_S "filetypes.html", NULL);
+ gchar *f = g_strconcat(app->configdir, G_DIR_SEPARATOR_S GEANY_FILEDEFS_SUBDIR G_DIR_SEPARATOR_S "filetypes.html", NULL);
+
+ styleset_load_file(config, f0, G_KEY_FILE_KEEP_COMMENTS, NULL);
+ g_key_file_load_from_file(config_home, f, G_KEY_FILE_KEEP_COMMENTS, NULL);
+
+ types[GEANY_FILETYPES_HTML] = g_new(style_set, 1);
+ types[GEANY_FILETYPES_HTML]->keywords = NULL;
+
+ styleset_get_wordchars(config, config_home, GEANY_FILETYPES_HTML, GEANY_WORDCHARS);
+ filetypes_get_config(config, config_home, GEANY_FILETYPES_HTML);
+
// load global tags file for HTML entities autocompletion
if (! app->ignore_global_tags && ! global_html_tags_loaded)
{
@@ -892,13 +934,12 @@
}
-void styleset_php(ScintillaObject *sci)
+void styleset_html(ScintillaObject *sci)
{
- if (types[GEANY_FILETYPES_PHP] == NULL) styleset_php_init();
+ if (types[GEANY_FILETYPES_HTML] == NULL) styleset_html_init();
styleset_common(sci, 7);
- SSM(sci, SCI_SETPROPERTY, (sptr_t) "phpscript.mode", (sptr_t) "1");
SSM(sci, SCI_SETLEXER, SCLEX_HTML, 0);
SSM(sci, SCI_AUTOCSETMAXHEIGHT, app->autocompletion_max_height, 0);
@@ -906,7 +947,7 @@
// use the same colouring for HTML; XML and so on
styleset_markup(sci);
- SSM(sci, SCI_SETWORDCHARS, 0, (sptr_t) types[GEANY_FILETYPES_PHP]->wordchars);
+ SSM(sci, SCI_SETWORDCHARS, 0, (sptr_t) types[GEANY_FILETYPES_HTML]->wordchars);
}
Modified: trunk/src/highlighting.h
===================================================================
--- trunk/src/highlighting.h 2006-09-01 15:48:56 UTC (rev 778)
+++ trunk/src/highlighting.h 2006-09-01 17:07:49 UTC (rev 779)
@@ -54,6 +54,8 @@
void styleset_php(ScintillaObject *sci);
+void styleset_html(ScintillaObject *sci);
+
void styleset_java(ScintillaObject *sci);
void styleset_pascal(ScintillaObject *sci);
Modified: trunk/src/keybindings.c
===================================================================
--- trunk/src/keybindings.c 2006-09-01 15:48:56 UTC (rev 778)
+++ trunk/src/keybindings.c 2006-09-01 17:07:49 UTC (rev 779)
@@ -735,7 +735,7 @@
{
gint idx = document_get_cur_idx();
if (idx == -1 || ! doc_list[idx].is_valid) return;
- sci_cb_show_calltip(doc_list[idx].sci, -1, idx);
+ sci_cb_show_calltip(idx, -1);
}
static void cb_func_edit_macrolist(void)
Modified: trunk/src/msgwindow.c
===================================================================
--- trunk/src/msgwindow.c 2006-09-01 15:48:56 UTC (rev 778)
+++ trunk/src/msgwindow.c 2006-09-01 17:07:49 UTC (rev 779)
@@ -435,7 +435,15 @@
}
break;
}
-
+ case GEANY_FILETYPES_HTML:
+ {
+ // line 78 column 7 - Warning: <table> missing '>' for end of tag
+ pattern = " ";
+ field_min_len = 4;
+ field_idx_line = 1;
+ field_idx_file = -1;
+ break;
+ }
default: return;
}
@@ -457,6 +465,15 @@
return;
}
+ // let's stop here if there is no filename in the error message
+ if (field_idx_file == -1)
+ {
+ // we have no filename in the error message, so take the current one and hope it's correct
+ *filename = g_strdup(doc_list[document_get_cur_idx()].file_name);
+ g_strfreev(fields);
+ return;
+ }
+
// skip some characters at the beginning of the filename, at the moment only "./"
// can be extended if other "trash" is known
if (strncmp(fields[field_idx_file], "./", 2) == 0) skip_dot_slash = 2;
Modified: trunk/src/sci_cb.c
===================================================================
--- trunk/src/sci_cb.c 2006-09-01 15:48:56 UTC (rev 778)
+++ trunk/src/sci_cb.c 2006-09-01 17:07:49 UTC (rev 779)
@@ -155,7 +155,7 @@
}
case '(':
{ // show calltips
- sci_cb_show_calltip(sci, pos, idx);
+ sci_cb_show_calltip(idx, pos);
break;
}
case ')':
@@ -171,19 +171,19 @@
}
case ' ':
{ // if and for autocompletion
- if (app->pref_editor_auto_complete_constructs) sci_cb_auto_forif(sci, pos, idx);
+ if (app->pref_editor_auto_complete_constructs) sci_cb_auto_forif(idx, pos);
break;
}
case '[':
case '{':
{ // Tex auto-closing
sci_cb_auto_close_bracket(sci, pos, nt->ch); // Tex auto-closing
- sci_cb_show_calltip(sci, pos, idx);
+ sci_cb_show_calltip(idx, pos);
break;
}
case '}':
{ // closing bracket handling
- if (doc_list[idx].use_auto_indention) sci_cb_close_block(sci, pos - 1);
+ if (doc_list[idx].use_auto_indention) sci_cb_close_block(idx, pos - 1);
break;
}
default: sci_cb_start_auto_complete(idx, pos, FALSE);
@@ -274,7 +274,7 @@
}
// " * " auto completion in multiline C/C++ comments
sci_cb_auto_multiline(sci, pos);
- if (app->pref_editor_auto_complete_constructs) sci_cb_auto_latex(sci, pos, idx);
+ if (app->pref_editor_auto_complete_constructs) sci_cb_auto_latex(idx, pos);
}
@@ -372,22 +372,29 @@
}
-void sci_cb_close_block(ScintillaObject *sci, gint pos)
+void sci_cb_close_block(gint idx, gint pos)
{
gint x = 0, cnt = 0;
- gint start_brace = brace_match(sci, pos);
- gint line = sci_get_line_from_position(sci, pos);
- gint line_start = sci_get_position_from_line(sci, line);
- gint line_len = sci_get_line_length(sci, line);
- // set eol_char_len to 0 if on last line, because there is no EOL char
- gint eol_char_len = (line == (SSM(sci, SCI_GETLINECOUNT, 0, 0) - 1)) ? 0 :
- utils_get_eol_char_len(document_find_by_sci(sci));
- gint lexer = SSM(sci, SCI_GETLEXER, 0, 0);
+ gint start_brace, line, line_start, line_len, eol_char_len, lexer;
gchar *text, *line_buf;
+ ScintillaObject *sci;
+ if (idx == -1 || ! doc_list[idx].is_valid || doc_list[idx].file_type == NULL) return;
+
+ sci = doc_list[idx].sci;
+
+ lexer = SSM(sci, SCI_GETLEXER, 0, 0);
if (lexer != SCLEX_CPP && lexer != SCLEX_HTML && lexer != SCLEX_PASCAL && lexer != SCLEX_BASH)
return;
+ start_brace = brace_match(sci, pos);
+ line = sci_get_line_from_position(sci, pos);
+ line_start = sci_get_position_from_line(sci, line);
+ line_len = sci_get_line_length(sci, line);
+ // set eol_char_len to 0 if on last line, because there is no EOL char
+ eol_char_len = (line == (SSM(sci, SCI_GETLINECOUNT, 0, 0) - 1)) ? 0 :
+ utils_get_eol_char_len(document_find_by_sci(sci));
+
// check that the line is empty, to not kill text in the line
line_buf = g_malloc(line_len + 1);
sci_get_line(sci, line, line_buf);
@@ -440,19 +447,20 @@
}
-gboolean sci_cb_show_calltip(ScintillaObject *sci, gint pos, gint idx)
+gboolean sci_cb_show_calltip(gint idx, gint pos)
{
- gint orig_pos = pos; //the position for the calltip
+ gint orig_pos = pos; // the position for the calltip
gint lexer;
gint style;
gchar word[GEANY_MAX_WORD_LENGTH];
TMTag *tag;
const GPtrArray *tags;
+ ScintillaObject *sci;
- if (sci == NULL) return FALSE;
+ if (idx == -1 || ! doc_list[idx].is_valid || doc_list[idx].file_type == NULL) return FALSE;
+ sci = doc_list[idx].sci;
lexer = SSM(sci, SCI_GETLEXER, 0, 0);
- if (idx == -1 || ! doc_list[idx].is_valid || doc_list[idx].file_type == NULL) return FALSE;
word[0] = '\0';
if (pos == -1)
@@ -571,7 +579,7 @@
ScintillaObject *sci;
gboolean ret = FALSE;
- if (idx < 0 || ! doc_list[idx].is_valid || doc_list[idx].sci == NULL) return FALSE;
+ if (idx < 0 || ! doc_list[idx].is_valid || doc_list[idx].file_type == NULL) return FALSE;
sci = doc_list[idx].sci;
line = sci_get_line_from_position(sci, pos);
@@ -612,8 +620,13 @@
}
-void sci_cb_auto_latex(ScintillaObject *sci, gint pos, gint idx)
+void sci_cb_auto_latex(gint idx, gint pos)
{
+ ScintillaObject *sci;
+
+ if (idx == -1 || ! doc_list[idx].is_valid || doc_list[idx].file_type == NULL) return;
+ sci = doc_list[idx].sci;
+
if (sci_get_char_at(sci, pos - 2) == '}')
{
gchar *eol, *buf, *construct;
@@ -685,23 +698,29 @@
}
-void sci_cb_auto_forif(ScintillaObject *sci, gint pos, gint idx)
+void sci_cb_auto_forif(gint idx, gint pos)
{
static gchar buf[16];
gchar *eol;
gchar *construct;
gint lexer, style;
gint i;
+ ScintillaObject *sci;
- if (sci == NULL || idx == -1 || ! doc_list[idx].is_valid) return;
+ if (idx == -1 || ! doc_list[idx].is_valid || doc_list[idx].file_type == NULL) return;
+ sci = doc_list[idx].sci;
lexer = SSM(sci, SCI_GETLEXER, 0, 0);
style = SSM(sci, SCI_GETSTYLEAT, pos - 2, 0);
// only for C, C++, Java, Perl and PHP
- if (lexer != SCLEX_CPP &&
- lexer != SCLEX_HTML &&
- lexer != SCLEX_PERL)
+ if (doc_list[idx].file_type->id != GEANY_FILETYPES_PHP &&
+ doc_list[idx].file_type->id != GEANY_FILETYPES_C &&
+ doc_list[idx].file_type->id != GEANY_FILETYPES_D &&
+ doc_list[idx].file_type->id != GEANY_FILETYPES_CPP &&
+ doc_list[idx].file_type->id != GEANY_FILETYPES_PERL &&
+ doc_list[idx].file_type->id != GEANY_FILETYPES_JAVA &&
+ doc_list[idx].file_type->id != GEANY_FILETYPES_FERITE)
return;
// return, if we are in a comment, or when SCLEX_HTML but not in PHP
@@ -713,9 +732,9 @@
style == SCE_C_STRING ||
style == SCE_C_CHARACTER ||
style == SCE_C_PREPROCESSOR)) return;
- if (lexer == SCLEX_HTML && ! (style >= 118 && style <= 127)) return;
+ //if (lexer == SCLEX_HTML && ! (style >= 118 && style <= 127)) return;
- if (lexer == SCLEX_HTML && (
+ if (doc_list[idx].file_type->id == GEANY_FILETYPES_PHP && (
style == SCE_HPHP_SIMPLESTRING ||
style == SCE_HPHP_HSTRING ||
style == SCE_HPHP_COMMENTLINE ||
Modified: trunk/src/sci_cb.h
===================================================================
--- trunk/src/sci_cb.h 2006-09-01 15:48:56 UTC (rev 778)
+++ trunk/src/sci_cb.h 2006-09-01 17:07:49 UTC (rev 779)
@@ -35,18 +35,18 @@
gchar **html_entities;
-// callback func called by all editors when a signals arises
+// callback func called by all editors when a signal arises
void on_editor_notification(GtkWidget* editor, gint scn, gpointer lscn, gpointer user_data);
gboolean sci_cb_start_auto_complete(gint idx, gint pos, gboolean force);
void sci_cb_get_indent(ScintillaObject *sci, gint pos, gboolean use_this_line);
-void sci_cb_close_block(ScintillaObject *sci, gint pos);
+void sci_cb_close_block(gint idx, gint pos);
-void sci_cb_auto_forif(ScintillaObject *sci, gint pos, gint idx);
+void sci_cb_auto_forif(gint idx, gint pos);
-void sci_cb_auto_latex(ScintillaObject *sci, gint pos, gint idx);
+void sci_cb_auto_latex(gint idx, gint pos);
void sci_cb_show_macro_list(ScintillaObject *sci);
@@ -54,7 +54,7 @@
void sci_cb_find_current_word(ScintillaObject *sci, gint pos, gchar *word, size_t wordlen);
-gboolean sci_cb_show_calltip(ScintillaObject *sci, gint pos, gint idx);
+gboolean sci_cb_show_calltip(gint idx, gint pos);
void sci_cb_do_comment(gint idx);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Commits
mailing list