1"use strict";(globalThis.webpackChunkmy_website||=[]).push([[195],{73613(e,t,s){s.r(t),s.d(t,{assets:()=>o,contentTitle:()=>r,default:()=>d,frontMatter:()=>a,metadata:()=>n,toc:()=>c});const n=JSON.parse('{"id":"Kaizen Plugin/05 Fast File Search","title":"Fast File Search","description":"Fast File Search","source":"@site/docs/Kaizen Plugin/05 Fast File Search.md","sourceDirName":"Kaizen Plugin","slug":"/Kaizen Plugin/05 Fast File Search","permalink":"/docs/Kaizen Plugin/05 Fast File Search","draft":false,"unlisted":false,"tags":[],"version":"current","frontMatter":{},"sidebar":"tutorialSidebar","previous":{"title":"Close Topics and Snippets","permalink":"/docs/Kaizen Plugin/04 Close Topics and Snippets"},"next":{"title":"Open Last Changed File","permalink":"/docs/Kaizen Plugin/06 Open Last Changed File"}}');var i=s(74848),l=s(28453);const a={},r="Fast File Search",o={},c=[{value:"To search for files",id:"to-search-for-files",level:2},{value:"Search by tag (file tags and meta tags)",id:"search-by-tag-file-tags-and-meta-tags",level:2},{value:"Preview matches",id:"preview-matches",level:2},{value:"Right-click a result",id:"right-click-a-result",level:2},{value:"Tips",id:"tips",level:2}];function h(e){const t={code:"code",em:"em",h1:"h1",h2:"h2",header:"header",li:"li",ol:"ol",p:"p",strong:"strong",ul:"ul",...(0,l.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(t.header,{children:(0,i.jsx)(t.h1,{id:"fast-file-search",children:"Fast File Search"})}),"\n",(0,i.jsx)(t.p,{children:(0,i.jsx)(t.strong,{children:"Fast File Search"})}),"\n",(0,i.jsx)(t.p,{children:(0,i.jsx)(t.em,{children:"Kaizen Plugin \u26a1 tab \u2192 File group"})}),"\n",(0,i.jsx)(t.p,{children:"The Fast File Search feature allows you to quickly find and open files using wildcards and REGEX patterns, making it faster than standard Flare search."}),"\n",(0,i.jsx)(t.h2,{id:"to-search-for-files",children:"To search for files"}),"\n",(0,i.jsxs)(t.ol,{children:["\n",(0,i.jsxs)(t.li,{children:["Click ",(0,i.jsx)(t.strong,{children:"Fast File Search"})," in the File group (or press the F key tip)."]}),"\n",(0,i.jsxs)(t.li,{children:["Enter a file name pattern (semicolon-separated wildcards):","\n",(0,i.jsxs)(t.ul,{children:["\n",(0,i.jsxs)(t.li,{children:["The default is ",(0,i.jsx)(t.code,{children:"*.htm;*.flsnp;*.css"})," \u2014 topics, snippets, and stylesheets."]}),"\n",(0,i.jsxs)(t.li,{children:["Add more patterns as needed, e.g. ",(0,i.jsx)(t.code,{children:"*.fltoc;*.flvar;*.flmco;*.fltar"})," for TOCs, variables, micro content, and targets."]}),"\n",(0,i.jsxs)(t.li,{children:["Note: ",(0,i.jsx)(t.code,{children:"*.htm"})," also matches ",(0,i.jsx)(t.code,{children:".html"})," files (Windows treats 3-character extension patterns as matching longer extensions too), so ",(0,i.jsx)(t.code,{children:".html"})," topics are always included."]}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(t.li,{children:["Optionally enter a file content pattern to only list files containing that text:","\n",(0,i.jsxs)(t.ul,{children:["\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.strong,{children:"Normal"})," mode does a plain text search."]}),"\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.strong,{children:"REGEX"})," mode treats the pattern as a regular expression (you get a clear message if the expression is invalid)."]}),"\n",(0,i.jsx)(t.li,{children:"Both modes ignore case."}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(t.li,{children:["Optionally pick a ",(0,i.jsx)(t.strong,{children:"Tag filter"})," to only list files carrying a specific tag (see below)."]}),"\n",(0,i.jsx)(t.li,{children:"Select a file from the results."}),"\n",(0,i.jsx)(t.li,{children:"Press Enter or double-click to open the file."}),"\n"]}),"\n",(0,i.jsx)(t.h2,{id:"search-by-tag-file-tags-and-meta-tags",children:"Search by tag (file tags and meta tags)"}),"\n",(0,i.jsxs)(t.p,{children:["If your project defines File Tag Sets (",(0,i.jsx)(t.code,{children:".flfts"}),") or Meta Tag Sets (",(0,i.jsx)(t.code,{children:".flmeta"}),"), a ",(0,i.jsx)(t.strong,{children:"Tag filter"}),' row appears with two dropdowns, so you can find e.g. all topics with Status = "In Progress" without crafting a find/replace query:']}),"\n",(0,i.jsxs)(t.ul,{children:["\n",(0,i.jsxs)(t.li,{children:["The first dropdown lists every file tag set (shown as ",(0,i.jsx)(t.em,{children:"File tags: SetName"}),") and every meta tag name defined in the project (shown as ",(0,i.jsx)(t.em,{children:"Meta tag: name"}),"). Choose ",(0,i.jsx)(t.em,{children:"(no tag filter)"})," to switch the filter off."]}),"\n",(0,i.jsxs)(t.li,{children:["The second dropdown lists the values of the chosen set \u2014 the tags of a file tag set, or the known values of a meta tag. Choose ",(0,i.jsx)(t.em,{children:"(any)"})," to match files carrying any value from the set. For meta tags you can also type a value directly."]}),"\n",(0,i.jsx)(t.li,{children:"The tag filter is combined (AND) with the file name pattern and the content pattern."}),"\n"]}),"\n",(0,i.jsxs)(t.p,{children:["The check is XML-aware: file tags are matched against the topic's ",(0,i.jsx)(t.code,{children:"MadCap:fileTags"})," attribute and meta tags against the ",(0,i.jsx)(t.code,{children:"<meta>"})," elements in the topic head \u2014 plain body text that merely mentions a tag name never causes a false match. Files that are not valid XML simply don't match."]}),"\n",(0,i.jsx)(t.p,{children:"If the project has no tag sets at all, the Tag filter row is hidden."}),"\n",(0,i.jsx)(t.h2,{id:"preview-matches",children:"Preview matches"}),"\n",(0,i.jsx)(t.p,{children:"The pane to the right of the results shows why the selected file matched:"}),"\n",(0,i.jsxs)(t.ul,{children:["\n",(0,i.jsxs)(t.li,{children:["With a content pattern, each matching line is listed as ",(0,i.jsx)(t.code,{children:"line 123: ..."})," with the matched text highlighted, so you can triage many hits without opening them in Flare."]}),"\n",(0,i.jsx)(t.li,{children:"Up to 20 matching lines are shown per file, and very long lines are truncated, keeping the preview instant even for large files."}),"\n",(0,i.jsx)(t.li,{children:"Without a content pattern, the first lines of the selected file are shown instead."}),"\n",(0,i.jsx)(t.li,{children:"The window is resizable, and the splitter between the result list and the preview can be dragged."}),"\n"]}),"\n",(0,i.jsx)(t.h2,{id:"right-click-a-result",children:"Right-click a result"}),"\n",(0,i.jsx)(t.p,{children:"Right-click one or more results to get a context menu with:"}),"\n",(0,i.jsxs)(t.ul,{children:["\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.strong,{children:"Open in VS Code"})," \u2014 opens the selected files in Visual Studio Code, e.g. for raw XHTML/CSS editing or multi-file regex work. The plugin looks for VS Code in the standard per-user and machine-wide install locations, then for ",(0,i.jsx)(t.code,{children:"code.cmd"})," on your PATH; if VS Code is not installed you get a short message instead of a silent failure."]}),"\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.strong,{children:"Open in Flare"})," \u2014 same as double-clicking or ",(0,i.jsx)(t.strong,{children:"Open selected topics"}),"."]}),"\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.strong,{children:"Copy full path"})," \u2014 copies the full path(s) of the selected files to the clipboard (one per line)."]}),"\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.strong,{children:"Show in Explorer"})," \u2014 opens a Windows Explorer window with each selected file highlighted."]}),"\n"]}),"\n",(0,i.jsx)(t.p,{children:"All context menu actions work on multi-row selections (Ctrl-click or Shift-click to select multiple results)."}),"\n",(0,i.jsx)(t.h2,{id:"tips",children:"Tips"}),"\n",(0,i.jsxs)(t.ul,{children:["\n",(0,i.jsx)(t.li,{children:"The search is much faster than built-in Flare search for large projects"}),"\n",(0,i.jsx)(t.li,{children:"Searches content files (topics, snippets, stylesheets, and other XML files) and project files"}),"\n",(0,i.jsxs)(t.li,{children:["Stylesheets are searched too: find any CSS class or property with a content pattern like ",(0,i.jsx)(t.code,{children:"PageTitle"})," or ",(0,i.jsx)(t.code,{children:"font-family"})]}),"\n",(0,i.jsx)(t.li,{children:"If Flare cannot open a result (some file types, such as stylesheets, may be rejected by Flare's editor), the file is o
1pened in your system's default editor instead"}),"\n",(0,i.jsx)(t.li,{children:"Your last-used file pattern and search mode are remembered between sessions"}),"\n"]})]})}function d(e={}){const{wrapper:t}={...(0,l.R)(),...e.components};return t?(0,i.jsx)(t,{...e,children:(0,i.jsx)(h,{...e})}):h(e)}},28453(e,t,s){s.d(t,{R:()=>a,x:()=>r});var n=s(96540);const i={},l=n.createContext(i);function a(e){const t=n.useContext(l);return n.useMemo(function(){return"function"==typeof e?e(t):{...t,...e}},[t,e])}function r(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:a(e.components),n.createElement(l.Provider,{value:t},e.children)}}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.