User Tools

Site Tools


Search

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
Search [2016/07/18 21:45]
JMichaelTX DRAFT changes to Search topic
Search [2017/02/22 14:15]
JMichaelTX
Line 1: Line 1:
 {{:​search-find-magnify-icon.png?​nolink|}} {{:​search-find-magnify-icon.png?​nolink|}}
 +====== Searching in Keyboard Maestro ======
 +
 +**There are several different types of searches in Keyboard Maestro**
 +  * [[manual:​Search_Strings|Searching for Macros in the Keyboard Maestro Editor]]
 +  * [[Actions|Macro Actions]] that Search the [[action:​Search_Clipboard|Clipboard]] and [[action:​Search_Variable|Variables]]
 +  * Searching this Wiki (see below)
 +
 +`~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~`
 +
 ====== Searching the Wiki ====== ====== Searching the Wiki ======
  
-Search is done through the Search box in top row (when using the default [[template]]).\\ +Search is done through the Search box in top row (Shortcut Key <​key>​⌃<​/key><​key>​⌥<​/key><​key>​F<​/key>).
-FIXME -- This was taken directly from the [[https://www.dokuwiki.org/search|DokuWiki site]], and needs to be revised to better fit the Keyboard Maestro Wiki. +
-  * 2016-07-18 20:44 CT (Mon-- I have made some updates, but it still need work.+
  
-While the Keyboard Maestro Wiki home page provides a list of major topics, ​one of the best ways to find information about Keyboard Maestro is via the wiki search. ​ The Keyboard Maestro Wiki is powered by the DokuWiki platform, so you will see references to "​DokuWiki"​ below that apply to the Keyboard Maestro Wiki.+While the Keyboard Maestro Wiki home page provides a list of major topics, ​a good way to find information about Keyboard Maestro is via the wiki search. ​ The Keyboard Maestro Wiki is powered by the DokuWiki platform, so you will see references to "​DokuWiki"​ below that apply to the Keyboard Maestro Wiki.
  
 ===== Syntax ===== ===== Syntax =====
Line 12: Line 19:
 By default, DokuWiki performs logical AND search. That means all the words you put in the query will be used. Search is always case insensitive. By default, DokuWiki performs logical AND search. That means all the words you put in the query will be used. Search is always case insensitive.
  
-DokuWiki'​s advanced search query syntaxes are described below. All of the syntaxes can be combined together. In this section, we'll use square brackets ​''​[ ... ]'' ​to represent characters entered in the Search Box.+DokuWiki'​s advanced search query syntaxes are described below. All of the syntaxes can be combined together. In this section, we'll use square brackets ​`[ ... ]to represent characters entered in the Search Box.
  
 ==== Partial matching ==== ==== Partial matching ====
  
-* You can perform a partial matching by prefixing and/or suffixing an asterisk ​''​*'' ​to a keyword. ​+* You can perform a partial matching by prefixing and/or suffixing an asterisk ​`*to a keyword. ​
  
 === Any Characters As a Prefix === === Any Characters As a Prefix ===
  
 If you enter an asterisk before the keyword, then it will match text in topics that begin with anything (or nothing) plus the keyword If you enter an asterisk before the keyword, then it will match text in topics that begin with anything (or nothing) plus the keyword
-  * For example, searching for ''​[ wiki ]'' ​will only find "​wiki",​\\but searching for ''​[ *wiki ]'' ​will also find "​DokuWiki"​. ​+  * For example, searching for `[ wiki ]will only find "​wiki",​ but searching for `[ *wiki ]will also find "​DokuWiki"​. ​
  
 === Any Characters as a Suffix === === Any Characters as a Suffix ===
  
-You can also perform ​''​[ doku* ]''​+You can also perform ​`[ doku* ]`
  
 === Using a Wildcard as both the Prefix and Suffix === === Using a Wildcard as both the Prefix and Suffix ===
  
-and ''​[ *okuwik* ]'' ​(partial matching).+and `[ *okuwik* ](partial matching).
  
-However, the asterisk cannot be used within a keyword.\\ +However, the asterisk cannot be used within a keyword. 
-For example, searching ​''​[ doku*iki ]'' ​will not find anything for you.  ​+For example, searching ​`[ doku*iki ]will not find anything for you.  ​
  
 ==== Terms you want to exclude (-) ==== ==== Terms you want to exclude (-) ====
  
-You can attach a minus sign ''​-'' ​immediately before a keyword to exclude pages that contain this keyword from your search results. For example, the query ''​[ dokuwiki -plugin ]'' ​will find pages which contain "​DokuWiki"​ but do not contain "​plugin"​.+You can attach a minus sign `-immediately before a keyword to exclude pages that contain this keyword from your search results. For example, the query `[ dokuwiki -plugin ]will find pages which contain "​DokuWiki"​ but do not contain "​plugin"​.
  
-You can use this syntax ​''​-'' ​not just for a keyword, but also for a partial matching, a phrase search, a namespace search and a grouping search described below. For example, you can use the query ''​%%[ -"​phrase you want to exclude"​ ]%%'' ​to exclude exact phrase. ​+You can use this syntax ​`-not just for a keyword, but also for a partial matching, a phrase search, a namespace search and a grouping search described below. For example, you can use the query `[ -"​phrase you want to exclude"​ ]to exclude exact phrase. ​
  
 ==== Phrase search (""​) ==== ==== Phrase search (""​) ====
  
-You can search for exact phrases by putting double quotes around a set of words, e.g. ''​%%[ "​installing dokuwiki"​ ]%%''​.+You can search for exact phrases by putting double quotes around a set of words, e.g. `[ "​installing dokuwiki"​ ]`.
  
 ==== Search within a namespace (@) ==== ==== Search within a namespace (@) ====
  
-You can restrict the search to namespaces. To search pages within a namespace, prefix ​''​@'' ​or ''​ns:'' ​to the namespace. To not search pages within a namespace, prefix ​''​^'' ​or ''​-ns:'' ​to the namespace.+You can restrict the search to namespaces. To search pages within a namespace, prefix ​`@or `ns:to the namespace. To not search pages within a namespace, prefix ​`^or `-ns:to the namespace.
  
-For example, the query ''​[ dokuwiki @wiki ^wiki:docs ]'' ​will find pages which contain a word "​dokuwiki"​ and are within "​wiki"​ namespace but not within "​wiki:​docs"​ namespace. The query ''​[ dokuwiki ns:wiki -ns:​wiki:​docs ]'' ​will do the same thing.+For example, the query `[ dokuwiki @wiki ^wiki:docs ]will find pages which contain a word "​dokuwiki"​ and are within "​wiki"​ namespace but not within "​wiki:​docs"​ namespace. The query `[ dokuwiki ns:wiki -ns:​wiki:​docs ]will do the same thing.
  
 ==== The OR operator (|) ==== ==== The OR operator (|) ====
  
-By default DokuWiki performs a logical AND search, but you can also use a logical OR search by using ''​|'' ​or ''​or'' ​as a separator of your search terms. For example, the query ''​[ plugin | template ]'' ​will find pages which contain either "​plugin"​ or "​template"​ or both. The query ''​[ plugin or template ]'' ​will do the same thing. You may use OR as a simple alternative to [[#Partial matching (*)]], e.g. in finding pages about people with spelling variations as ''​[ Frank | Fränk ]''​.+By default DokuWiki performs a logical AND search, but you can also use a logical OR search by using `|or `oras a separator of your search terms. For example, the query `[ plugin | template ]will find pages which contain either "​plugin"​ or "​template"​ or both. The query `[ plugin or template ]will do the same thing. You may use OR as a simple alternative to [[#Partial matching (*)]], e.g. in finding pages about people with spelling variations as `[ Frank | Fränk ]`.
  
-The OR operator has a lower precedence than the default AND operator. That is, the query ''​[ dokuwiki plugin | template ]'' ​can be represented as ''​[ (dokuwiki plugin) | template ]''​, not as ''​[ dokuwiki (plugin | template) ]''​. Instead, use a grouping syntax as described below.+The OR operator has a lower precedence than the default AND operator. That is, the query `[ dokuwiki plugin | template ]can be represented as `[ (dokuwiki plugin) | template ]`, not as `[ dokuwiki (plugin | template) ]`. Instead, use a grouping syntax as described below.
  
-If you want to [[#Search within a namespace (@) |restrict your search on a namespace]],​ you **have** to group your search with "​()",​ otherwise a search ​''​[ plugin | template @plugin]'' ​will behave as ''​[ (plugin) | (template @plugin)]''​, i.e. searching for "​plugin"​ OR "​template @plugin"​ over //all// namespaces, but not as you may intend searching "​plugin"​ OR "​template"​ over the //plugin// namespace, the latter being correctly expressed as ''​[ (plugin | template) @plugin]''​.+If you want to [[#Search within a namespace (@) |restrict your search on a namespace]],​ you **have** to group your search with "​()",​ otherwise a search ​`[ plugin | template @plugin]will behave as `[ (plugin) | (template @plugin) ]`, i.e. searching for "​plugin"​ OR "​template @plugin"​ over //all// namespaces, but not as you may intend searching "​plugin"​ OR "​template"​ over the //plugin// namespace, the latter being correctly expressed as `[ (plugin | template) @plugin ]`.
 ==== Grouping search ==== ==== Grouping search ====
  
-You can group search terms by enclosing terms with parentheses ​''​( ... )''​. Having the highest precedence, parentheses may be used to force precedence.+You can group search terms by enclosing terms with parentheses ​`( ... )`. Having the highest precedence, parentheses may be used to force precedence.
  
-For example, the query ''​[ dokuwiki -(plugin | @plugin) ]'' ​will find pages which contain a word "​DokuWiki"​ but not contain a word "​plugin"​ and also are not within a namespace "​plugin"​.+For example, the query `[ dokuwiki -(plugin | @plugin) ]will find pages which contain a word "​DokuWiki"​ but not contain a word "​plugin"​ and also are not within a namespace "​plugin"​.
  
 ===== Quicksearch ===== ===== Quicksearch =====
  
-You can enter the beginning of a [[pagename]] into the search box and wait half a second. In most modern browsers you will automatically get a popup with matching pagenames.+You can enter the beginning of a //pagename// (eg "​Sear"​) ​into the search box and wait half a second. In most modern browsers you will automatically get a popup with matching pagenames.
  
 ===== OpenSearch ===== ===== OpenSearch =====
- 
-{{ :​opensearch.png|OpenSearch in Firefox}} 
  
 [[http://​www.opensearch.org/​|OpenSearch]] is a standard to make it easy to integrate a website'​s search into your browser. It is supported by all modern browsers. DokuWiki is OpenSearch enabled. [[http://​www.opensearch.org/​|OpenSearch]] is a standard to make it easy to integrate a website'​s search into your browser. It is supported by all modern browsers. DokuWiki is OpenSearch enabled.
Line 77: Line 82:
   - open your wiki in the browser   - open your wiki in the browser
   - click the little arrow on the left of your search field   - click the little arrow on the left of your search field
-  - choose "​Add ​DokuWiki" ​((It might be named different if your Wiki is named different)) +  - choose "​Add ​Keyboard Maestro Forum"
- +
-===== Some Background on the Searchindex ===== +
- +
-DokuWiki now uses an index to search even big wikis very fast, to be able to find anything the index needs to be filled with current data. Information about a page's content is added and updated when a page is viewed by a user. Each page includes an invisible image ([[wp>​webbug]]) which calls the index update process if needed.((Note that the webbug is used for other tasks, too.  See http://​forum.dokuwiki.org/​post/​3116)) ​ (That is, if the timestamp of the page is newer than the timestamp of the index file.) +
- +
-The index consists of files called ''​page.idx'',​ ''​w//​[n]//​.idx''​ and ''​i//​[n]//​.idx''​ located in the index directory. ''​w//​[n]//​.idx''​ contains a list of all words (except stopwords) with a length of //n// that appear on the wiki pages. For every line in ''​w//​[n]//​.idx''​ there is a line in the corresponding ''​i//​[n]//​.idx''​ file that contains page references in the form of ''​pn*freq''​. ''​pn''​ is a line number for ''​page.idx'',​ ''​freq''​ denotes how often the word appears on the page. Multiple page references are separated with a colon.+
  
-The [[indexer]] uses a language specific stopword file which contains a list of very common words which will never be indexed (e.g. the word ''​the''​ in English). Searching for such a word will not return any hits. This stopword file is located in language folder of the DokuWiki installation,​ that is <​dokuwiki>/​inc/​lang/<​language>/​stopwords.txt so you can edit the file in proper folder for adding or removing words not indexed for that language. 
  
-If you upgraded your wiki from an older version without an index, your search won't return anything until the index is built. You can either wait until this happens by browsing your wiki or install the [[plugin:​searchindex]] plugin. You can also use the provided [[cli|commandline script]] for updating the index. 
Search.txt · Last modified: 2023/10/10 03:11 by peternlewis