Author Topic: Python tagging  (Read 2967 times)

jporkkahtc

  • Senior Community Member
  • Posts: 2620
  • Hero Points: 210
  • Text
Python tagging
« on: September 16, 2016, 08:56:06 PM »

I was having trouble with Slick resolving os.path.exists.
It could resolve os.path.splitext though.

So, then I restarted with a fresh config of VS: I chose VC6 emulation and no other customization.


I loaded an existing workspace with one python project, with one file in it.


Tools->TagFiles
"Python" tag files was empty.


I messed around in the editor trying to look up os, path, splitext and exists.
Now Tools->TagFiles: "Python" tag files was no longer empty - it references plugin:\\.....

Odd1: Why doesn't python show in the list of things available in "Auto tag"?
What triggers the creation of the Python tag file?
Is it Python 2 or 3?


Bug1: When I try to complete "os.path.exi", or "os.path.bas", Slick complains "Unable to locate definition of type 'os'.
Yet, Ctrl+. on os.path.basename takes me directly to plugin:\\com_slickedit.base\sysconfig\tagging\builtins\python.tagdoc


Bug2: The first time I did Ctrl+. on "os", it jumped to that tagdoc file, status says "press Ctrl+, to go back", yet Ctrl+, would not go back. (I can't repro, but I might have to try with another clean configuration).



Bug3: With SymbolColoring enabled, and highlight unknown symbols, I get:


                 extension = os.path.splitext(filename)[1]


"Splitext" is unknown.




Dennis

  • Senior Community Member
  • Posts: 3989
  • Hero Points: 519
Re: Python tagging
« Reply #1 on: September 17, 2016, 12:25:28 AM »
Reproduced.  Looks like an error in python.tagdoc.

The Python tag files is dynamically generated when you try to do a tagging operation in a Python file.  It's not part of Auto-tag because it doesn't have to tag massive libraries like we do for C++ or Java.

Dennis

  • Senior Community Member
  • Posts: 3989
  • Hero Points: 519
Re: Python tagging
« Reply #2 on: September 19, 2016, 02:14:40 PM »
This will be fixed in RC2.  However, you will need to rebuild your Python tag file.