I'm using Find in path feature. I've configured a scope which excludes test files. How can I run the search with this files excluded? It seems that at the moment the search can be run either in the selected directory or using scope. Can't both be combined?
Related
I want Doxygen to ignore, bypass, not search the following directories of my project:
*/.svn/*
*/docs/*
*/Properties/*
*/bin/*
According to the Doxygen FAQ:
How can I exclude all test directories from my directory tree?
Simply put an exclude pattern like this in the configuration file:
EXCLUDE_PATTERNS = */test/*
So, my Doxygen file looks like this:
# If the value of the INPUT tag contains directories, you can use the
# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude
# certain files from those directories. Note that the wildcards are matched
# against the file with absolute path, so to exclude all test directories
# for example use the pattern */test/*
EXCLUDE_PATTERNS = */.svn/* \
*/docs/* \
*/published/* \
*/bin/* \
*/obj/*
The output from Doxygen is:
Searching for include files...
Searching for example files...
Searching for images...
Searching for files in directory c:/Test_Fixtures/pc_application/docs
Searching for files in directory c:/Test_Fixtures/pc_application/docs/.svn
Searching for files in directory c:/Test_Fixtures/pc_application/docs/.svn/prop-base
Searching for files in directory c:/Test_Fixtures/pc_application/docs/.svn/props
Searching for files in directory c:/Test_Fixtures/pc_application/docs/.svn/text-base
Searching for files in directory c:/Test_Fixtures/pc_application/docs/.svn/tmp
Searching for files in directory c:/Test_Fixtures/pc_application/docs/.svn/tmp/prop-base
Searching for files in directory c:/Test_Fixtures/pc_application/docs/.svn/tmp/props
Searching for files in directory c:/Test_Fixtures/pc_application/docs/.svn/tmp/text-base
Searching for files in directory c:/Test_Fixtures/pc_application/docs/html
Searching for files in directory c:/Test_Fixtures/pc_application/docs/html/.svn
Searching for files in directory c:/Test_Fixtures/pc_application/docs/html/.svn/prop-base
Searching for files in directory c:/Test_Fixtures/pc_application/docs/html/.svn/props
Searching for files in directory c:/Test_Fixtures/pc_application/docs/html/.svn/text-base
Searching for files in directory c:/Test_Fixtures/pc_application/docs/html/.svn/tmp
Searching for files in directory c:/Test_Fixtures/pc_application/docs/html/.svn/tmp/prop-base
Searching for files in directory c:/Test_Fixtures/pc_application/docs/html/.svn/tmp/props
Searching for files in directory c:/Test_Fixtures/pc_application/docs/html/.svn/tmp/text-base
Searching for files in directory c:/Test_Fixtures/pc_application/docs/html/search
Searching for files in directory c:/Test_Fixtures/pc_application/docs/html/search/.svn
Searching for files in directory c:/Test_Fixtures/pc_application/docs/html/search/.svn/prop-base
Searching for files in directory c:/Test_Fixtures/pc_application/docs/html/search/.svn/props
Searching for files in directory c:/Test_Fixtures/pc_application/docs/html/search/.svn/text-base
Searching for files in directory c:/Test_Fixtures/pc_application/docs/html/search/.svn/tmp
Searching for files in directory c:/Test_Fixtures/pc_application/docs/html/search/.svn/tmp/prop-base
Searching for files in directory c:/Test_Fixtures/pc_application/docs/html/search/.svn/tmp/props
Searching for files in directory c:/Test_Fixtures/pc_application/docs/html/search/.svn/tmp/text-base
Searching for files in directory c:/Test_Fixtures/pc_application/docs/rtf
Searching for files in directory c:/Test_Fixtures/pc_application/docs/rtf/.svn
Searching for files in directory c:/Test_Fixtures/pc_application/docs/rtf/.svn/prop-base
Searching for files in directory c:/Test_Fixtures/pc_application/docs/rtf/.svn/props
Searching for files in directory c:/Test_Fixtures/pc_application/docs/rtf/.svn/text-base
Searching for files in directory c:/Test_Fixtures/pc_application/docs/rtf/.svn/tmp
Searching for files in directory c:/Test_Fixtures/pc_application/docs/rtf/.svn/tmp/prop-base
Searching for files in directory c:/Test_Fixtures/pc_application/docs/rtf/.svn/tmp/props
Searching for files in directory c:/Test_Fixtures/pc_application/docs/rtf/.svn/tmp/text-base
Which clearly shows that the EXCLUDE_PATTERNS is not working.
I also have the EXCLUDE option set as:
# The EXCLUDE tag can be used to specify files and/or directories that should
# excluded from the INPUT source files. This way you can easily exclude a
# subdirectory from a directory tree whose root is specified with the INPUT tag.
EXCLUDE = ../.svn \
../docs \
../published \
../docs/.svn \
../docs/.svn
Which is not working either.
So, the USD$ 100000 question is: How do I make Doxygen exclude, bypass, ignore, stay clear of specified directories or folders (preferably something that works)?
I am using the Doxygen Wizard on Windows 7 on 64-bit CPU platform, and Doxygen 1.7.3.
Note that the wildcards are matched against the file with absolute path
So, just use absolute paths for your exclusions ;)
PS: BTW, I have struggled too many times with that. This small mention on the doxyfile's comment seems to go unnoticed too often.
Oops, I missed the detail that you had already tried that. Maybe it's an issue with the multi-line value: try inlining all the paths, using just a space as separator. That (plus absolute patterns) is enough on the few systems I have been using doxygen lately.
I have done some deeper testing, and also taken another look at the doxyfile's documentation.
The correct syntax is using space for separation. If you really want to go multi-line, the supported and documented syntax would be:
EXCLUDE_PATTERNS = */.svn/*
EXCLUDE_PATTERNS += */docs/*
EXCLUDE_PATTERNS += */published/*
# and so on
Also, take a closer look at how exclude patterns work: the directory itself is included, then everything within it will be tested against the exclude patterns and (since it will always match), be excluded on a file-per-file basis.
So take a closer look at your output: the Searching for files in directory lines are supposed to be there (doxygen will search the directory, but find nothing on it because everything is being excluded); are you getting Parsing code for file or Generating docs for for any of the contents on those directories? If you don't get any of those, this means that everything is working fine (directories are searched, but nothing on them is included). If the files are indeed being included, give the space separation or the += syntax a try. I see nothing on the docs even hinting that your \ syntax could work (of course, I may have overlooked something).
How do I make Doxygen exclude, bypass, ignore, stay clear of specified directories or folders (preferably something that works)?
Use the INPUT configuration option!
INPUT = src other_folder README.md
As mentioned, exclude patterns will still consider the files in the directories, and not parse them based on it matching the regex. Specifying folders and files to be considered will achieve the desired result of not even searching the folders in the first place, which can dramatically improve generation time.
Note that this needs the EXCLUDE directive to be empty, or the searching will happen.
Precisions from David C.'s comment:
More precisely, adding a directory to the EXCLUDE directive causes everything in that directory to be searched. You can exclude specific files (that would otherwise by hit by the INPUT directive) without blowing up the search process.
Note that I can see a similar phenomenon when I use doxygen. However, that happens when the tool searches for example files and images:
Searching for example files...
Searching for files in directory .../wpkg/mainline/documentation
Searching for files in directory .../wpkg/mainline/documentation/.svn
Searching for files in directory .../wpkg/mainline/documentation/.svn/prop-base
[...]
Searching for images...
Searching for files in directory .../wpkg/mainline/documentation
Searching for files in directory .../wpkg/mainline/documentation/.svn
Searching for files in directory .../wpkg/mainline/documentation/.svn/prop-base
[...]
As you have the the EXCLUDE_PATTERNS setup to ignore the .svn sub-directories. I suppose that's a bug in doxygen which should check for those exclusions when scanning for examples and images.
Also it looks like it could be that it prints all the directories on the screen, but properly ignores them as before using them it checks the exclusion patterns. But that is just a guess; although it seems someone says that's the way it works here:
http://doxygen.10944.n7.nabble.com/EXCLUDE-DIRECTORY-PATTERN-td2185.html
I am using WebStorm 2018.2.6
I want to be able to exclude a few folders and file extensions from my searches (when using 'Find in Path'). I set up some scopes to do this, but when I use them, it includes node_modules.
Node_modules are marked as excluded in the Project window. Node_modules is not selectable in the scopes builder. I have typed in the path as I know it but the search still does not exclude it.
If I select 'In Project' instead of 'Scope' when searching, it works as desired but it doesn't allow me to exclude other files I'd like to exclude.
Is there a way to do this?
The problem is that node_modules are only partially excluded - direct dependencies listed in package.json are added to JavaScript libraries and thus included.
To exclude node_modules completely, use In Project scope for searching. JavaScript libraries are only included when using Directory scope with corresponding folder selected, or when using custom scope with explicit filters. Note that excluding libraries from custom scope is a bit tricky... To make it work, you need to prefix your scope pattern with file[your_project_name]:*/&& to overwrite the default scope - see https://youtrack.jetbrains.com/issue/IDEA-145142#comment=27-1156171 for explanation
Related feature request: IDEA-103560
Following up on this question about including source files. I am including a Chapel modules that contains one file called classes.chpl, but my current project also has a classes.chpl. What is the correct disambiguation pattern? When I do
chpl -M/path/src
it notes the conflict, then chooses the classes.chpl in the current directory. Should I compile the module for export as in this page or is there another pattern.
== UPDATE ==
The directory structure looks like
projA/alpha.chpl
/classes.chpl
projB/beta.chpl
/classes.chpl
Where each project depends on the classes in the respective classes.chpl file. Trying to compile projA I am currently using
chpl alpha.chpl -M../projB/
But this causes a conflict, as it tries to use projA/classes.cphl for the classes in both beta.chpl and alpha.chpl.
As described in the module search paths tech note, the Chapel compiler searches for user modules by, in this order:
Looking at .chpl files specified on the command line
Looking at other .chpl files in the directories containing the files specified on the command line
Looking at .chpl files in the paths specified via the -M option or the CHPL_MODULE_PATH environment variable
Since the compiler finds the classes.chpl from the project directory using rule 2, and only finds the /path/src/classes.chpl with rule 3, it chooses the one in the project directory. To get it to choose /path/src/classes.chpl instead, you can specify it on the command line so it is found with rule 1.
chpl mainModule.chpl /path/src/classes.chpl
I'd like to add a directory containing .ado files to the ado-path. This directory contains several subdirectories, corresponding to different projects. The .ado files are in these subdirectories.
However, when I type adopath + directory, commands in the .ado files are not recognized by Stata. I need to enter adopath + directory/subdirectory for each subdirectory. Is there a way around it?
Stata has a rule that in addition to the directories (etc.) explicitly named in the adopath, it will also look off those in subdirectories named by an individual letter for programs whose names begin with that letter.
Thus suppose you are invoking a command whatever and your named directories include c:\ado\plus. Stata's searches will include c:\ado\plus\w if that exists and a program file has not yet been found.
However, Stata doesn't promise to search in all subdirectories and it will pay attention to the initial letter of the program name.
Having .ado files specific to a project would best be accommodated by changing to the directory involved while working on that project. If you prefer not to do that, then you need to name specific directories fully if they don't match your adopath as extended by this single letter rule.
This is a matter of personal style, but I have never thought of any ados I wrote as specific to a particular project. Do-files yes, but not ados. But your project do-file might start with additions to the adopath and finish with reversing those.
I'm trying to build opencv2 as a universal framework. I am systematically removing the files/folders that I do not need. But I am running into this issue where the include files are not found. See the image below:
The following image clearly shows that the file is indeed there.
One of the contractors working with us said he had put the include files into the same directory as the source files and rename them according to their file structure but using "." instead of "/" as shown below:
But that means that I must go through all of the files that include files and change the include statement to use "." instead of "/". REALLY?
Is this true? Or do we have a configuration set wrong?
You need to setup search paths for your target in Build Settings->Search Paths->Header search paths.