This section is not yet written.
This section is not yet written.
The star search dialog, opened through the Stars->Search menu option, allows you to search for stars whose name matches a given set of whitespace-separated tokens. All stars that have at least one matching name field are shown in the table of results, whose appearance matches that of the chart data dialog with the addition of another column, as shown below.
In the simplest case, you can type in the exact name of the star you want, for instance Alpha Centauri, into the text entry field at the top of the dialog. If desired, you can check the "Case sensitive" checkbox to require that the search be performed in a case-sensitive manner. Then click the "Search" button or press Enter. The result or results will be displayed in the table below. If you have a large file such as the SKY2000 catalog open, it may take several seconds before the results appear. (If no matching stars are found, an error message will pop up.)
The first column in the table, "Star", shows the (first) name field of each star in which the search match was found. The second column, "Also known as", displays an alternate name or designation of each star. If the search match was found in the star's primary name field, the secondary name field is shown here. If the match was found in a name field other than the primary one, the primary name field is shown here.
All other columns are the same as in the chart data dialog. You may need to scroll to the right to see some of the columns, or down to see some of the search results. As with the chart data dialog, the stars in the results table may be sorted by any column by simply clicking on the column header. (In the image above, they are sorted on the contents of the "Also known as" column.)
Please note that unlike the chart data and Hertzsprung-Russell diagram windows, the star search dialog is not automatically updated as parameters of the main StarPlot window are changed. To have a change in the user-set distance units or coordinate system take effect in the star search dialog, you will need to close it by clicking the "Close" button at the bottom of the dialog, and then re-opening it from the menu (or by pressing Control-S).
More advanced use cases may require the use of some special characters, described in detail below. The special characters currently recognized by StarPlot are " * [ ] ^, the space, and the lowercase Greek letters α β γ etc., should you be able to enter them conveniently on your keyboard. Additional characters that are currently passed through verbatim but may be specially interpreted by future versions of StarPlot are @ = $ | { } ? \ and _. It is quite unlikely that any of these characters should conflict with any star names or designations in StarPlot data files.
After any leading or trailing whitespace is stripped from the search string, the star search function is implemented in the following way:
Quote mark interpretation. If the first and last characters in the search string are double-quote marks ", then StarPlot presumes an (almost) exact match of the search string to a star name is desired. Step 2 below is performed, but brackets and carets are not inserted into the replacements for constellation names and Greek letters. Steps 3 and 4 below are skipped, so that brackets, carets, and spaces are treated like any other character. Exact matches (not substring matches) to star name fields are required.
Special string replacement. Certain substrings and special characters in the search string are automatically replaced. Constellation names in the genitive form, for instance Coronae Borealis, are replaced by their three-letter constellation abbreviation enclosed in brackets, for instance [CrB]. Lowercase Greek letters, for instance ε, are replaced by their spelled-out, capitalized English names preceded by a caret, for instance ^Epsilon. (The meanings of the brackets and caret are explained below.) Each of these two transformations is done at most once, since no star name or designation includes more than one constellation name or Greek letter. Finally, every asterisk character * is replaced by a degree symbol °. This is done for the convenience of people (most of us!) who don't have a degree character easily accessible on their keyboards. For this to work, your star data files (in particular, any degree signs embedded in them) must be encoded in UTF-8, not ISO-8859-something.
Tokenization. If the search string includes any whitespace after the special string replacement, it is split up at the whitespace into individual tokens.
Interpretation of syntax characters. Any caret ^ at the beginning of a token is interpreted to mean that the token must occur at the beginning of any star name field. At most one caret-preceded token is permitted in the search string, for obvious reasons. Any token enclosed in brackets [ ] is required to match a set of non-whitespace characters in the name field that is preceded by a space and followed by either another space or by end-of-string. (That is, such a token must be an exact match, except possibly for case-sensitivity, of a "word" in the name field other than the first "word".)
Matching. Every star record is read in order from the currently open star data file(s). For each star record, all name fields are inspected. A name field is considered a match only if every token in the search string matches some part of the name. Tokens cannot overlap within the name; hence a search string Betelg geuse will not match the star name Betelgeuse. Note, therefore, that the order of the tokens in the search string does not matter.
The rationale for the constellation name replacement is that (a) constellation names are presumed to be represented by their abbreviations in StarPlot data files, in order to conserve disk space; (b) there is no star designation in which the constellation name comes first. Similarly, Greek letters are presumed (for portability) to be always spelled out in StarPlot data files, and the star designation format (Bayer designations) that uses Greek letters always has them appear at the beginning. If the user simply enters a search string α Centauri, it is internally converted to ^Alpha [Cen], which will do the right thing.
As another example, consider a search for the string Tau, which could represent either a Greek letter or the abbreviation for the constellation genitive form "Tauri". This search will turn up both stars with Bayer designation τ such as τ Ceti, and stars in the constellation Taurus, such as α Tauri (better known as Aldebaren). However, a search for [Tau] or Tauri will turn up only the stars in Taurus, while a search for the letter τ or for ^Tau will produce only stars with τ in their Bayer designations. (The search string τ Tauri or equivalently ^Tau [Tau] turns up only the single star in the intersection of the two sets.)
For a third example, consider a search for the star HD 12. The search string HD 12 will also turn up HD 123, HD 1234, etc. But the search strings HD [12] or "HD 12" will give the desired result, unless of course the star is not present in the current data file. (Note, though, that a star designated HD 12b — perhaps a secondary in a binary system? — will now not be matched.)
A note on reverse compatibility: Prior to StarPlot version 0.95.5, in step 2 above, only the constellation name replacement was carried out, and the bracketing of constellation abbreviations was not performed. No transformation was performed on Greek letters or asterisks. Steps 1 and 4 were not performed (so that quote marks, carets and brackets had no special meaning). Prior to StarPlot version 0.92.3, no constellation name replacement was performed on the search string, either.
This section is not yet written.