Author Topic: stl drop down  (Read 10010 times)

shdtech

  • Community Member
  • Posts: 12
  • Hero Points: 0
stl drop down
« on: October 01, 2010, 05:54:35 PM »
i'm using fedora , slickedit 14 , when i use vector or anything from stl , the drop down list wont appear , i cant see functions like push_back or anything to do with stl , i have tagged everything (compiler...) /usr/include , and searched in differenet forums , but nothing helped , someone please help me

shdtech

  • Community Member
  • Posts: 12
  • Hero Points: 0
Re: stl drop down
« Reply #1 on: October 04, 2010, 07:37:49 AM »
pleaaaaaaase helppp

Graeme

  • Senior Community Member
  • Posts: 2796
  • Hero Points: 347
Re: stl drop down
« Reply #2 on: October 04, 2010, 10:59:00 AM »
It works for me on slick V14.0.2.

On the tools menu, select "Tag files".  What tag files do you have under "C compiler tag files"?  If you select the tag file for your compiler libraries, in the right hand window, can you see the vector header file .../include/vector   in the list of files.

Also, what type of project did you create?  In the project properties compile/link tab, if you click the elipsis (...) button at the end of the line that starts with "Compiler:", does the dialog that comes up have "C/C++ compiler properties" in the title and does it have the correct list of include directories?

In the find symbol toolbar, if you type push_back in the "search for" edit box, do any of the STL functions appear?

Graeme

 

shdtech

  • Community Member
  • Posts: 12
  • Hero Points: 0
Re: stl drop down
« Reply #3 on: October 04, 2010, 10:38:36 PM »
everything besides stl works , i have c++ project , in the compile/link dialog i have gcc4-4-2... or something like that , i have the vector and list map .... tagged m when i press control + . on <vector> i go to the right file , but only i cant see the auto complete (drop down functions...) for vector or anyhing of that kind , non of the stl functions appear, i can see vector,map... in the list of tagged files. the list of include dirs are /usr/include and more dirs from there. any suggestions ?

Graeme

  • Senior Community Member
  • Posts: 2796
  • Hero Points: 347
Re: stl drop down
« Reply #4 on: October 04, 2010, 11:52:44 PM »
So if you have this code

   std:vector<int> abc;
   abc.

with the cursor just to the right of abc.  if you press Alt dot  (list_symbols), do you get a drop-down list at all?

Attached is the drop-down list I get.

Also as I mentioned before, if you type push_back in the find symbol toolbar, do you get any STL functions?

shdtech

  • Community Member
  • Posts: 12
  • Hero Points: 0
Re: stl drop down
« Reply #5 on: October 05, 2010, 08:01:34 AM »
it tells me no symbols found matching after i hit the alt + .

Graeme

  • Senior Community Member
  • Posts: 2796
  • Hero Points: 347
Re: stl drop down
« Reply #6 on: October 05, 2010, 10:33:15 AM »
What do you get if you type push_back in the find symbol toolbar?  If you get nothing, try changing the content of the "lookin" combo box from "use context tagging" to the name of the tag file for your C++ compiler  - it should be in the drop down list.

After you've done that I have something else to suggest...
« Last Edit: October 05, 2010, 10:36:55 AM by Graeme »

shdtech

  • Community Member
  • Posts: 12
  • Hero Points: 0
Re: stl drop down
« Reply #7 on: October 05, 2010, 02:35:05 PM »
i found it in the find symbol tool bar but is still not appearing during editing code

Graeme

  • Senior Community Member
  • Posts: 2796
  • Hero Points: 347
Re: stl drop down
« Reply #8 on: October 05, 2010, 09:57:10 PM »
ok, was that with context tagging in the find symbol toolbar or did you have to select an explicit tag file?

Did the drop-down list ever work for you (with STL classes) or has it never worked?

Next thing to try : open up one of the sample workspaces - on the project menu, select "all workspaces" -> "sample workspaces" -> "vs2003.sln".  Open the file cpp.cpp from that project and add std::vector<int> abc; abc. and see if the dropdown list appears.  If that works, try creating a small new project yourself and see if the drop-down list works.

If that still doesn't work, there may be something corrupted in your state file (vslick.sta in your configuration folder).  There's several ways to find out if the state file is the problem.
Method 1
With slick closed, backup your entire configuration folder, then delete the vslick.sta file (or vslick.stu) and also delete vrestore.slk.  Run slick and see if the drop-down works.

Method 2
When you invoke slick, use the -sc switch to select a temporary configuration folder  i.e. vs.exe -sc some-new-empty-folder.  Slick will create a new configuration folder.  Open your project and see if the drop-down list works.

If method 1 solves the problem, just carry on.  If method 2 solves the problem, you could try importing your settings from your other configuration folder (import/export in the options dialog), otherwise, create new ones.

Graeme

shdtech

  • Community Member
  • Posts: 12
  • Hero Points: 0
Re: stl drop down
« Reply #9 on: October 06, 2010, 08:14:36 PM »
i'm under linux (fedora 12) , i tried deleting .slickedit/ which is located in the home dir , and that did not help , i also opened the sample cpp and the vector drop down list did not work , it never worked before also..

Graeme

  • Senior Community Member
  • Posts: 2796
  • Hero Points: 347
Re: stl drop down
« Reply #10 on: October 06, 2010, 09:35:35 PM »
i'm under linux (fedora 12) , i tried deleting .slickedit/ which is located in the home dir , and that did not help , i also opened the sample cpp and the vector drop down list did not work , it never worked before also..

So how long have you been using slickedit for and how long has it not been working for?

Has it worked on previous versions of slickedit?

In Linux, the file to delete is vslick.stu  - but I guess if it never worked, that won't help - but you still could try it.

Can you confirm that when you say "the vector drop down list did not work" you mean that you get "no symbols found" message?

Can you confirm that the drop down list does work for your own code using the workspace tag file?

Does function argument help work for C++ library functions like push_back  (Alt + comma)?

Please answer all of the above questions.

Also, what is the exact version of slickedit you are using (help about) and do you have the latest hotfixes installed?
« Last Edit: October 06, 2010, 09:44:10 PM by Graeme »

shdtech

  • Community Member
  • Posts: 12
  • Hero Points: 0
Re: stl drop down
« Reply #11 on: October 07, 2010, 01:00:54 PM »
So how long have you been using slickedit for and how long has it not been working for?

a few monthes , never worked for stl

Can you confirm that when you say "the vector drop down list did not work" you mean that you get "no symbols found" message?

yes

Can you confirm that the drop down list does work for your own code using the workspace tag file?

yes and not only that , it works for like printf or any other standard c function..


Does function argument help work for C++ library functions like push_back  (Alt + comma)?
no.

Also, what is the exact version of slickedit you are using (help about) and do you have the latest hotfixes installed?

SlickEdit Version 14.0.2.2



/home/hdanial-l/.slickedit/14.0.2/hotfixes/hotfix_se1402_cumulative.zip (Revision: 26)
/home/hdanial-l/.slickedit/14.0.2/hotfixes/hotfix_loader_se1402.zip (Revision: 1)






Graeme

  • Senior Community Member
  • Posts: 2796
  • Hero Points: 347
Re: stl drop down
« Reply #12 on: October 08, 2010, 10:56:35 AM »
Well, I have no idea what the problem is but there are some more things you could try.

Try rebuilding the tag file - tools -> tagfiles -> select the tag file -> rebuild.

Try creating a completely new tag file for C++ - see creating language specific tag file in the help.

Try installing another C++ compiler e.g. http://developer.amd.com/cpu/open64/Pages/default.aspx
or STLPORT.

Does Alt + dot (list_members) work for template classes of your own?

Regarding printf, what drop-down list are you referring to here  - list_members doesn't apply to printf?
Does code help work for binary_search - a template function?

If you use Ctrl+dot on vector<int> abc; with the cursor on "vector" do you get a list of vector constructors?

Try invoking slick with the -sc switch as I mentioned before, using a new empty folder (vs.exe -sc new-empty-folder), create the compiler tag file (tools -> tagfiles -> auto-tag), then create a brand new c++ file (without opening a project), add a vector declaration etc. and see if code help works.  Then open your c++ project and see if code help works.

Graeme

jeronimo69

  • New Community Member
  • Posts: 1
  • Hero Points: 0
Re: stl drop down
« Reply #13 on: October 23, 2010, 01:37:49 AM »
 ;D

Yes!!!

I had the same problem, but Method 2 fixed it.

Thanks a lot.

I tried to rebuild the compiler's tag file, re-tag compiler header files, remove it and build it again, but nothing helped...

Is there any connection with the fixes provided? May after the fix the sc dir should be changed?

How can that state file/s be damaged?

Graeme

  • Senior Community Member
  • Posts: 2796
  • Hero Points: 347
Re: stl drop down
« Reply #14 on: October 25, 2010, 01:44:04 AM »

Quote
Is there any connection with the fixes provided? May after the fix the sc dir should be changed?

What do you mean by "fixes provided"?  When you use the -sc switch, it forces slick to use the specified folder for your configuration data.  If the folder is empty, slick creates a new configuration folder for you and creates a new vslick.sta ( or .stu) state file (I think it's a copy of rescue.sta from your slick installation folder).  Hence you start with a clean state file.

Below is a quote from the help file about vslick.sta

Quote
A binary file that contains dialog boxes, menus, macro pcode, key bindings, and all other configuration data not stored in one of the other configuration files. Both user and system configuration information is stored here.

The state file contains global variables as well as a lot of executable macro pcode which the slick interpreter executes.  I think its purpose is to make slick start up fast and run fast.  I don't know exactly how it gets corrupted but it seems that it does because quite often, obscure problems with slick can be solved by deleting the state file, forcing slick to create a new one.

The state file gets modified on disk only when you change your configuration settings or if you use a command like set-var to change the value of a global variable etc, so normally, your state file shouldn't be changing and if something gets corrupted due to unintended behaviour in slick, resulting in bad values in some global variables or corruption of the macro pcode in memory, your state file on disk shouldn't be affected.  I guess people are often fiddling with configuration settings like key bindings that result in the state file being updated on disk fairly often though.  The slick interpreter does runtime checking or various sorts so I would have thought it could avoid corrupting the macro pcode but I don't know if this is the case or whether the pcode can be corrupted from the slickedit core code or not.

In tools -> options -> application options -> exit I have the "save configuration" option set to "always prompt before saving" which means that when I close slick, I get the choice of whether or not the configuration is saved and the state file is updated or not.  I don't think I've ever experienced corruption of the state file except when I've been developing my own slick macros and they crash in strange ways.

Graeme