Searching for files and folders
In order to compete with other desktop search applications, TagSpaces offers a variety of search related features, which are described in this section.
The user can switch to the search area by clicking the
Cmd+3 key combination (configurable in the Setting). For the desktop app there is also a global key combination for opening TagSpaces in search mode. Just press
Cmd+Shift+f to get there.
The search query in the basic search consists of two components. The first one is just a simple free text which searched in the index. The second component is a list of tags. It is possible to define very precise tag queries by including and excluding tags. Please see the next section for more details. The search algorithm considers with different weight the following fields from the index.
- The file or folder name
- The tags assigned to the file or folder
- The description added to the file or the folder
- The name of the parent directory of a given file is also considered by the search algorithm. So for example if you are searching for photos from you vacation in USA and the folder where these files are located contains the word USA (e.g. '20160301 vacation usa 70D'), then the search will list all the files located directly in this folder.
- The content of TXT, MD and HTML, if the full text search is activated for the current location. The full text search for these files is a pro feature.
The search algorithm has a build-in fuzziness, meaning that if the search query contains a misspelled word, TagSpaces will try to find files and folder with the best guessed similar names.
- The tag search is strict, without fuzziness, if you are not sure about the exact name of a tag, write in the free text query.
- The search is case insensitive.
The search functionality can be targeted to deliver result for the following scopes:
- (1) Current location, which is the default scope
- (2) Current folder including all sub-folders, which in the case of the root folder in a locations is the same as the first scope
- (3) All locations pro. You can find out more in the Global Search section of the documentation.
Searching for tags
In order to provide a boolean search support for tags, the search user interface for tags was split in three input fields:
- Must contain all of the tags - all of the tags listed here should be attached to the files or directories (logical AND search)
- At least one tag - any file or folder which contains one of the specified here tags will be included (logical OR search)
- None of these tags - entries which have one the tags listed here will be excluded from the search results (negative search)
Note: After opening of a certain location, the application starts to index in background all the files and folders from this location recursively. During the indexing time the search is not available to the user, but all other functionalities are accessible. Opening of location containing more the 100000 files could lead to performance issues, during the index or later by search.
TagSpaces has an integrated file and folder search functionality based on an index, which is created immediately after the user opens a given location. The indexing process may take some resources on opening the location, but delivers later accurate and up to date search results.
Note: If your location contains a huge amount of files (> 20000) it is recommended to split it in two or more location or to disable the indexing on location start (which is a pro feature). Disabling the indexing at start may also be useful for location based in a networks like on NAS systems or AWS S3 buckets.
If you decide to disable the automatic indexing, you should do this step manually on regular based in order to have a working and accurate search functionality. The index can be updated in the following ways:
- In the menu of every location in the location manager there is an item called "Refresh Location Index"
All indexes can be update at once from the search menu with the option "Update all location indexes"
Limiting the search results
By default, TagSpaces is limiting the amount of the found search results to 1000 files. This limitation is also valid for the maximum files, which can be displayed in a single folder. The reason for adding such limitation is the fact that pagination is not typical for file managers and for now we do not want to add such. In tab general of the Settings there is a field where you can increase or decrease this limit. See the next screenshot.
The search options described in this section are available only in the Pro and Enterprise editions of TagSpaces. In addition to the searching by files name and by tag, the advanced search supports the following filter criteria:
Search by type
In the file type dropdown you can specify types of the files you want to search. The file types are grouped in the following sections:
- Pictures and Photos: JPG, PNG, GIF, etc.
- Documents: PDF, ODF, DOCX, EXL, etc.
- Notes: MD, TXT, HTML, etc.
- Audio files: OGG, MP3, WAV, etc.
- Video files: WEBM, OGV, MP4, etc.
- Archives: ZIP, RAR, TGZ, 7Z, etc.
- Bookmarks: URL, LNK, etc.
- eBook EPUB, MOBI, AZW, PRC, etc.
In addition to that there are some special filters:
- Folders - selecting this options will limit the search to only folders
- Files - selecting this option will limit the search to only files
- Untagged files or folders - this options will show only files and folders witch are not tagged
Search by file size
In this dropdown you can filter for files by their size. The following options are supported:
- Empty - will filter files with zero size
- Tiny - will filter files smaller than 10KB
- Very small - will filter files smaller than 100KB
- Small - will filter files smaller than 1MB
- Medium - will filter files smaller than 50MB
- Large - will filter files smaller than 1GB
- Huge - will filter files bigger that 1GB
Search by last modified date
Here you can specify in which period the files you are searching should have been modified. This filter supports the following options:
- Today - will show files and folders modified today
- Yesterday - will show results modified yesterday
- Past 7 days - will show results modified in the last 7 days
- Past 30 days - will shows results modified in the last 30 days
- Past 6 months - will show files and folders modified in the last 6 months from today
- Past year - will show files and folders modified in the last 12 months from today
- More than one year - will show files and folder older than one year
Search by time period
This filter is still work in progress.
Search by GPS coordinates
This filter is still work in progress.
Full text search for TXT, MD and HTML
After activating the full text search with the checkbox in the properties of a given location (see next screenshot), TagSpaces will try to extract and index the text content of supported file formats.
These file formats are currently supported:
- HTML - files in HTML format, used for notes in rich text format
- MD - markdown files
- TXT - plain text files
Note: This feature is still in beta state and could lead to performance issues if you are dealing with many and/or big text files.
Starting with version 3.5, TagSpaces Pro offers searching in all locations. We call this feature "Global search". It works on local and remote S3 based locations. The feature can be activated by clicking the Global-button in the search area, as seen in the following screenshot.
Once in Global search-mode you will see one additional search options called "Force re-indexing all locations". Activating this checkbox will force TagSpaces to create a new index for every location before in searches in it. This options will deliver most accurate search result but can take more time, especially re-indexing remote locations or locations containing many files.
All other search related settings should work as known from the single location search. The search result limit is applying here, so once reached TagSpaces will stop the search and will no go in the remaining un-searched locations.
Note: Global search should be considered as a feature in Beta status. There could be some edge cases which are not functioning correctly. Please share any glitches with us, we will try to fix them.
Work in progress