UEStudio using UE wordfile (shows PHP defines()?)

This forum is user-to-user based and not regularly monitored by IDM.
Please see the note at the top of this page on how to contact IDM.

UEStudio using UE wordfile (shows PHP defines()?)

Postby corey » Mon Oct 23, 2006 6:40 pm

Two odd questions that I haven't been able to find in the forums.

UEStudio imported my UE settings, and both are installed on my system. For some reason UEStudio is using my UE wordfile, and loading it from the UE installation directory. I can't find any way to change this from within the app - is this a bug or a feature?

Even more oddly UE is now not showing any functions in my function list.

And for some reason my function list for PHP files contains all my defines.
Code: Select all
define('MYSQL_ER_HASHCHK', 1000);

Leads to an MYSQL_ER_HASHCHK entry in my Function list.

Is any of this normal? I feel like UEStudio has somehow corrupted things for both it and UE.
User avatar
corey
Newbie
 
Posts: 5
Joined: Thu Sep 02, 2004 11:00 pm

Re: UEStudio using UE wordfile (shows PHP defines()?)

Postby Mofi » Tue Oct 24, 2006 8:05 am

The wordfile can be specified at Advanced - Configuration - Editor Display - Syntax Highlighting. Are you sure UEStudio uses the same wordfile because it's not default. Only the standard wordfile.txt is identical for UEStudio and UltraEdit, but not the location of the wordfile.txt.
User avatar
Mofi
Grand Master
Grand Master
 
Posts: 4039
Joined: Thu Jul 29, 2004 11:00 pm
Location: Vienna

Re: UEStudio using UE wordfile (shows PHP defines()?)

Postby corey » Tue Oct 24, 2006 1:10 pm

I trashed my settings and started over without importing from UE and it seemed to fix this, and my other issue (PHP defines showing up in the function list). It was definitely using the UE wordfile though, ColdFusion was listed in the Highlighting menu and it was only in my UE wordfile, not UEStudio.

UEStudio (and UE) have a bug that the developers are working on where doing a find/replace for {2,} (or any other number) with PCRE reg exp crashes the app. UEStudio crashed b/c of this on my first launch after the initial import from UE and I am fairly sure that is when my settings were corrupted.
User avatar
corey
Newbie
 
Posts: 5
Joined: Thu Sep 02, 2004 11:00 pm

Re: UEStudio using UE wordfile (shows PHP defines()?)

Postby corey » Tue Oct 24, 2006 1:38 pm

I have take that back, UEStudio with fresh settings still shows PHP define()'s in the function list.
Code: Select all
define('AAA', 3);

Will result in
Code: Select all
AAA(3)
in the function list.
User avatar
corey
Newbie
 
Posts: 5
Joined: Thu Sep 02, 2004 11:00 pm

Re: UEStudio using UE wordfile (shows PHP defines()?)

Postby Mofi » Tue Oct 24, 2006 2:47 pm

Hm, the PHP language definition in standard wordfile.txt contains only 2 UE style regular expression function strings:

/Function String = "%[^t ]++function[^t ]+^([a-z0-9_&]+^)"
/Function String 1 = "%[^t ]++function[^t ]+^([~{]+^)"

As you can see a PHP function must have the word "function" at start of the line with or without preceding spaces/tabs. So your defines should not be found with the PHP function strings.

Are your defines really within a PHP section?

You know, files with the extension PHP are highlighted as HTML files with the multi-language support enabled (HTML, PHP, CSS, VBScript Active Server Pages, ...).

So if your defines are not within

Code: Select all
<?PHP

?>


the regex function strings from an other language adds the defines to the function list. You can easily check this by selecting at View - View As (Highlighting File Type) the language PHP instead of HTML and press key F8 to update the function list.
User avatar
Mofi
Grand Master
Grand Master
 
Posts: 4039
Joined: Thu Jul 29, 2004 11:00 pm
Location: Vienna

Re: UEStudio using UE wordfile (shows PHP defines()?)

Postby corey » Tue Oct 24, 2006 3:03 pm

It's bizarre. I'm using the included wordfile, I've only added Tcl/Tk. The defines were between <? and ?>, I changed that to <?PHP ?> and there was no difference. PHP is the highlighting being used, you can view a screenshot here.

FYI I get an error when trying to upload an attachment.


One followup, I've removed all other languages from my wordfile.txt and the function definitions from the PHP language, and the Function List still shows the define()'s as well as the class functions (eg, public function fetch_object() is detected). Using this same stripped down wordfile with UltraEdit shows 'No Functions!', which is expected.


It looks like it's related to the Project file. I'm using the project file I created with UE in UEStudio. If I open close the Project and open the file by itself the Function List is empty (when using my stripped down wordfile.txt).

I just tried creating a new Project in UEStudio and it has the same problem (shows defines, ignores functions in the wordfile). My project is very basic, I just include all files from a specific directory, no filters of any sort.

Even with "No Highlighting" chosen the Function List still shows the define()'s and class functions.

Here are the contents of my .prj file.

Code: Select all
[Project ID]
Signature=UE Proj: v.1
[Project Information]
Compilable=1
Use Relative Directory=1
Relative to Project File=1
Project Start=D6070A00020018000A000E00030000001C
Project Directory=C:\wwwroot\ldb
Include Sub Directories=1
Project Tagfile=
Project Wordfile=
Filter=
Using VCS=0
Save Account=0
Create Tagfile=0
CTags Legacy Support=0
Working Time=46
[Files]
0=C:\wwwroot\ldb\
[uemakeXp]
ReleaseMode=0
[Debug Settings]
Program Arguments=
Symbol Paths=
Working Directory=
Selected Debugger=0
Source Paths=
[Open Files]
Open File0=C:\wwwroot\ldb\includes\mysqli.class.php
Open File Pos0=0
Open File Line0=0
Active File Index=0
Open File Window Pos0=2,3,-1,-1,-4,-23,0,0,1392,694
Open File1=
Active File Display Mode=3
[Folders]
C:\wwwroot\ldb\=1
C:\wwwroot\ldb\ - includes=1
User avatar
corey
Newbie
 
Posts: 5
Joined: Thu Sep 02, 2004 11:00 pm

Re: UEStudio using UE wordfile (shows PHP defines()?)

Postby corey » Tue Oct 24, 2006 4:00 pm

Andy w/Support solved my problem. UEStudio uses the built-in parser to populate the function list. I turned off "Use Function Tips (if available) for Function List" in Advanced : Configuration : IDE : IntelliTips : Function Tips.

Some keywords to help other people searching for the same 'problem':
PHP define constant Function List
User avatar
corey
Newbie
 
Posts: 5
Joined: Thu Sep 02, 2004 11:00 pm


Return to UEStudio General Discussion

cron