dnGREP Changelog

What's new in dnGREP 4.1.92

Apr 10, 2024
  • Changes in this release:
  • 1076 .gitignore Fixed issue where the .git folder is not always excluded when Use .gitignore flag is checked.
  • Other updates
  • This release contains an update to:
  • .NET v8.0.4

New in dnGREP 4.1.47 (Mar 13, 2024)

  • Changes in this release:
  • #1054 Search entire drive Fixed an issue trying to search from the root of the C: or D: drive with the "Include hidden folders" filter unchecked. The root of the drive is marked as a hidden folder - it is a hidden system directory. From a previous issue, long ago, there is code in dnGrep to skip checking for the hidden attribute when it is the root of the drive, but something changed in checking if the path is the root of the drive.
  • #1064 File names with match counts Added a new option "Copy file names with match count" to "More..." menu. This command will copy all the file names and match counts to the clipboard.
  • #1067 Sort by read-only Added a new option to sort the results by the read-only flag.
  • #774 Auto sort results Added a new option to the Options dialog to automatically sort the results when the search completes. The default is off, and the results are sorted only when the sort button is clicked, or the sort options are changed.
  • #1069 Highlight regular expression groups There were a couple of bugs in the code to apply highlights to regular expression capture groups. One bug had the highlight off by one character, and another has missing highlights on matches with multiple lines.
  • Themes:
  • Three new themes have been added to the themes delivered with dnGrep - change the theme in the Options dialog. The dnGrep help page has more information on Themes.
  • If you have created your own theme file, several more changes were made to the themes in this release - details can be found in the Theme revision history. If you create a theme and want to share it, please create a discussion topic and post you theme like the Deviant Dark theme - if you want to download Deviant Dark, please wait for it to be updated for this release.
  • There is a free Theme Editor application in my github account. I have added a number of features recently, including importing themes from VS Code - see the link for details.
  • Other updates:
  • This release contains an update to:
  • .NET v8.0.3
  • Updated Translations for several languages - thank-you translators! There are now 20 translations, but many of the languages need help to complete them. You are welcome and encouraged to complete or improve any of the existing translations, see Translate dnGrep for more information. Do as much or as little as you like. If you do not want to use Weblate for translations, I will take input in any format and merge the changes. Send me a note in the issues or discussions page.

New in dnGREP 4.1.27 (Feb 14, 2024)

  • This release contains an update to:
  • .NET v8.0.2
  • Some third-party libraries
  • Changes in this release:
  • 997 #1019 File type support There have been requests to support additional binary file formats such as epub and OpenDocument/LibreOffice files. If there is a .NET library available to read the document files, new plugins can be created, but I have not found any for these file types. There are applications such as Apache Tika that can be used, but they require installation beyond what can be included in the dnGrep installer. In this release there is a new Bring your own plugin where you can install the application and then tell dnGrep how to use it to extract plain text from binary formatted files. Tika can extract plain text from OpenDocument, epub, html and many other file types - see the links for more details. If you know of or find other useful applications, please create an issue or discussion to let us know about it.
  • 1034 Sticky scrolling In the results tree if a file has many lines with matches, the file node in the tree will scroll off the top as you scroll or step through the matches in the file and you lose visibility of the file context. With this option enabled, a copy of the file node will stick to the top of the results tree so it remains visible. The copy of the file node isn't collapsible and has a limited context menu. This is like sticky scrolling in Visual Studio and Visual Studio Code (and probably others), if you are familiar with those. You can disable this feature in the Options dialog - Search results - 'Enable sticky scroll in results tree' checkbox.
  • 1037 Date filter The date filter on the main window has new minutes, days, weeks, months, and years options in addition to the existing hours. These new options are also accessible through the dnGrep scripts: The "filetimerange" setting now includes these new options, and there are new "timerangefrom" and "timerangeto" settings. The "hoursfrom" and "hoursto" settings remain for backward compatibility but have the same mapping as timerangefrom and timerangeto.
  • 1033 Singleton instance Fixed a bug where starting dnGrep in singleton instance mode was starting a second instance.
  • 1026 Installer change The dnGrep installer fails to install updates to the same location as the previous installation if you chose to install somewhere other than the default location. With this release the MSI installer writes the install location to the Windows registry so it can be reused on future updates.

New in dnGREP 4.1.7 (Jan 11, 2024)

  • Failure in application startup A couple of users have reported errors loading settings at startup using v4.1.4.0. This release fixes problems updating the dnGrep.Settings.dat file to version 3 introduced in that version.

New in dnGREP 4.1.4 (Jan 10, 2024)

  • Changes in this release:
  • 973 Custom Editors/External Viewers You can now configure multiple custom editors or external viewers to open files from the search results. As before, the setup and configuration is in the Options dialog. You can use these two ways: 1) all the configured editors will be shown on the results tree context menu to open the selected file; or 2) you can optionally associate each custom editor with a set file extensions and these will be used to determine which custom editor to use to open a file when you double click on a result line, or middle mouse click on a file or result line.
  • 997 Preview window large file warning You can now configure the large file warning in the preview window. The new option is in the Search results section of the Options dialog. Set the limit of file size in KB that will trigger asking if you want to open the file. Default is 4MB.
  • 1011 Fix local date-time display Fixed a bug in the results tree tooltip and the date range filters that was not using the current region settings in Windows.
  • 1014 Search/replace with regular expression and whole word set About a year ago a change was made to how dnGrep determines what is a whole word in a regular expression search. The same change wasn't applied to the replace operation causing the replace to fail. That is now fixed.
  • 870 PDF wrap text When the text in PDF files wraps to a new line, dnGrep is not able to easily match a search pattern that spans the two lines (it is possible using the multiline option with regular expressions). What was text wrapped to a new line in the original source document is actually separate lines of text when extracted from a PDF. This release adds a new option "Multiline search" in the PDF to text section of the Options dialog (this is separate and different from the multiline option on the main window). When checked, the lines of extracted text from the PDF file will be merged into a single line for searching, but then displayed in the original format in the results (because of this, the reported number of lines with matches will be incorrect). This option will only work on simple PDF files exported as a single column of text.
  • tl;dr: In PDF files you will have the best chance of success if you search for a single word or shortest possible pattern. PDF files are by far the hardest to search accurately and reliably because they do not contain text. PDF files were designed to be visually the same when printed with any printer or viewed on any operating system. A PDF file contains a set of pages, and each page has a set of characters. Each character has a character id, font, size, color, orientation, and location to print the character. There are no words or sentences, and the letters are not written to the file in reading order. To extract text from the document, each letter is associated with its nearest neighbors, and words are formed by using the distance between characters (character and word spacing is not fixed and uniform). There is some degree of error in this process. Given a set of words, the software attempts to join them in lines or blocks of text to either mimic the layout or try to determine the reading order. There are endless different document layouts: single column, multicolumn, brochures, user guides, academic/scientific/engineering journals. A lot of research and development has been spent on solving this problem. There are commercial and open-source tools and libraries, but none that I've found available to dnGrep that does a better job than the existing PDFtoText. You can find something that works well for one document, but not for all. PDFtoText has six different options for extracting text - see the documentation under the XPDF folder in the PluginsPDFSearch directory. If you want to experiment, you can select a different option by modifying the PDFtoText command line in the dnGrep Options dialog.
  • This release contains an update to:
  • .NET v8.0.1
  • Updated Translations for several languages. There are now 20 translations, but most of the languages need help to complete them. You are welcome and encouraged to complete or improve any of the existing translations, see Translate dnGrep for more information. Do as much or as little as you like. If you do not want to use Weblate for translations, I will take input in any format and merge the changes. Send me a note in the issues or discussions page.

New in dnGREP 4.0.189 (Dec 28, 2023)

  • Changes in this release:
  • 967 PDF files with no tet Checking for PDF files with no searchable tet was added in the previous release but the check only worked for small files. This has been modified to check larger files with many pages.
  • 971 Copy command The copy command for scripting was added in the previous release. This release changes the regular epression for file name matching to be case-insensitive (it was case-sensitive). Also added a new error message if the specified match pattern failed to match a file name in the result set.
  • 968 PREV and NET button to traverse the search results There have been two recent requests to add navigation buttons to step through the search results the way the F3 and F4 function keys work. A new navigation button panel has been added with buttons for net match, net file, scroll to current line, previous match, previous file, and collapse all. The initial position is docked to the top left side of the results tree, but you can hide the panel, or move the panel to several different locations in the layout section of the Options dialog. You can also change the size of the buttons.
  • 991 Passing multiple folders via command line Fied a bug setting multiple search folders with quotes from a command line argument. These formats will now work:
  • folder "D:folder 1";"D:folder 2"
  • folder ""D:folder 1";"D:folder 2""
  • folder D:folder1;"D:folder 2"
  • folder "D:folder 1";D:folder2
  • folder D:folder1;D:folder2
  • 992 Long lines The bug was reported as 'File List Selection via Up / Down Arrow Unreliable', and the problem is the preview window takes an ecessive amount of time to load files with very long lines. The sample file to reproduce the issue contains a line with 374,598 characters on one line and 19,642 characters on another line. While dnGrep can search the file quickly and eternal editors can open the file quickly, the WPF-based preview window cannot. This bug/limitation is in the base WPF code and will likely never be fied. To work around the issue, dnGrep will truncate long lines at 8000 characters in the preview window. The file content is not changed, and match locations are preserved, but the tet rendering will stop. You can copy the whole line from the preview window or open the file in an eternal editor if you need to see the rest of the line. In the replace window, long lines will be segmented to show all the matches with some contet characters before and after each match.
  • 998 Auto detect Unicode The auto detection of file encoding has been modified to improve detection of UTF-16 and UTF-32 encoded files that have no byte order mark. For more information see the discussion in #998.
  • Archive etensions Added .lib to the set of default archive etensions. These files are output from the C and C++ compiler and are an archive file with some tet metadata and other artifacts. These files were causing problems with dnGrep's binary file detection and marking them as archive files fied that.
  • Updated Translations for several languages. A special thank-you to iejiang for the Japanese translation. And thank-you to Eric, ???, and Stoyan keeping the two Chinese and Bulgarian translations up to date. There are now 20 translations, but most of the languages need help to complete them. You are welcome and encouraged to complete or improve any of the eisting translations, see Translate dnGrep for more information. Do as much or as little as you like. If you do not want to use Weblate for translations, I will take input in any format and merge the changes. Send me a note in the issues or discussions page.

New in dnGREP 4.0.151 (Nov 15, 2023)

  • Raise PDF errors: If PDF files are secured or encrypted, they will fail to open. These errors are logged to the dnGrep log file, but not shown in the results. This has been changed so the file open errors are shown in the results tree.
  • Some users thought that dnGrep had been changed to show errors for files that they previously had been able to search - but this is not the case, it is now showing errors where previously the files were silently skipped.
  • This release adds a new option to again hide the individual file errors. A new ! indicator has been added to the status bar when file read errors occur in the search, and the tooltip on the indicator shows the number of files. The status bar indicator is shown with or without the option to hide individual file errors in the results list.
  • Hiding or showing the individual file read errors can be controlled with a new option in the Options dialog in the Search results section: Show files with search errors in the results panel.
  • PDF files with no text. Also in this release, a new PDF read error has been added: if the PDF document contains no text and just images (such as a scanned document), it will also be shown as a document read error the same as secured or encrypted files.
  • Search in DOCX footnotes. The release adds new options for extracting text from Word (docx) documents. These
  • options are off by default and can be enabled/disabled in the dnGrep Options dialog.
  • Extract footnotes - this option will enable extracting footnotes and endnotes. Footnotes and endnotes are placed at the end of the document text (not by page since the text version of the document is not paginated). The footnote/endnote reference number or symbol may also be added inline in the document text in different formats. Note that including the footnote/endnote reference may affect searching across multiple words.
  • Not shown
  • Superscript - this option uses Unicode superscript characters which may not be supported in all fonts.
  • Full size character - this option will show the reference number/character as a full-size character, which may be not obvious or confusing in line with the document text.
  • Full size character with parenthesis - adding parenthesis around the reference makes them stand out more.
  • This release supports the six numbering formats for footnotes and endnotes found in the US English version of Word: numbers, upper- and lower-case letters, upper- and lower-case Roman numerals and Chicago style.
  • If you would like to see other formats, please create an issue. You will need to identify full sequence of characters and the repeat pattern when the number of footnotes exceeds the length of the sequence.
  • Extract comments - this option will enable extracting comments. The comments are also placed at the end of the document text. Comment reference numbers may also be added inline in the document text, but they are always numbers, starting at zero. The numbers may be shown in these formats:
  • Not shown
  • Subscript - this option uses Unicode subscript characters which may not be supported in all fonts.
  • Full size character with parenthesis
  • Extract headers - this option will extract the header text, once for each header format.
  • Extract footers - this o will extract the footer text, once for each footer format.
  • Extracted header and footer position - header and footer text may be extracted at the start of each document section where the header or footer changes, or all headers and footers at the end of the document.
  • Script menu. This release fixes two bugs on the Scripts menu. The first bug is if the script file name contains an underscore, the underscore was dropped in the menu. The second bug fixed is for multiple levels of script folders - the lower levels folders were not shown as submenus on the Scripts menu.
  • Bookmarks. The change in this release is to save and restore the Bookmarks column order, column size and Bookmarks window size. This allows you to arrange the bookmarks dialog to better fit your needs.
  • Copy command. A new command has been added to the Script commands, with command name "copy". This command has a bit different format than the other scripting commands as it has four optional arguments:
  • copy -match [pattern] -rename [pattern] -overwrite [True/False] -out [destination]
  • The intent of the copy command is to create file backups before modification, but can be used to copy files anywhere, optionally renaming them. The command operates on all files in the current result set.
  • The -match and -rename arguments are regular expressions. The match pattern should contain a capture group which is referenced in the rename pattern. Using regular expressions with capture groups provides many options for renaming files.
  • The default for -overwrite is false,
  • The default for the -out output directory is the same directory as the source file. The path to the destination directory may be a relative path or fully qualified path.
  • If the copy command cannot copy all files successfully, it will stop the script execution.
  • This script will find all the text files in the search path and create a backup of each file in the same directory as the original file. Overwrite is set to true to always copy the file, even if the backup file already exists. This pair of regular expressions shown in the -match and -replace will take the original filename and add a .bak extension.
  • Natural sort order of matches. The existing file sort options use character-by-character sorting which works well for many file names. But if the file names contain multiple numeric digits, the sort order is not what most users expect - for example, file 10 will sort before file 2.
  • A new option on the Sort drop-down enables natural sorting for the four file name sort options. Natural sorting is enabled by default. With natural sorting enabled, you will get this:
  • Escape quotes in custom editor options. When configuring arguments to pass to the custom editor, the %match option will be filled with the first matching text on the line. If the matching text contains quotes, the quotes will usually need to be escaped with a backslash like this " for the custom editor to read the argument. This new option is enabled by default but can be disabled in the Options dialog if it is a problem for your custom editor.
  • This release contains an update to .NET runtime:
  • .NET v7.0.14

New in dnGREP 4.0.129 (Oct 11, 2023)

  • Changes in this release:
  • Open the full .epub document: Added a new option in the archive section of Options dialog to list archive file extensions that you want to open the whole archive and not a file in the archive when doing an Open or Open with custom editorThis allows opening an epub archive as an ebook in the associated ebook readerThere may be other archive types where this is useful, but there are no preset defaults to this setting.
  • String not found in Excel with cells in Scientific format: Fixed a bug when searching Excel files that contain a cell with the value zero formatted in scientific/exponential notation.
  • Shell context menu error: Fixed a bug in when adding dnGrep to the Windows Explorer context menu from the Options dialogThe wrong file extension was being added (dnGrep.dll instead of dnGrep.exe).
  • Missing from the v.4.0.115 release note: Fixed a bug in the ordering of the pinned history list - thanks to @JieGou for the pull request.
  • Updated Translations for several languagesMany of the translations still need help to complete themYou are welcome and encouraged to complete or improve any of the existing translations, see Translate dnGrep for more informationDo as much or as little as you likeIf you do not want to use Weblate for translations, I will take input in any format and merge the changesSend me a note in the issues or discussions page.
  • This release contains an update to .NET runtime:
  • .NET v7.0.12

New in dnGREP 4.0.115 (Sep 13, 2023)

  • Changes in this release:
  • Confirmation dialogs Added three new confirmation dialogs for exiting dnGrep; two are optional, and one is not. The intention of these confirmations to prevent the 'oh no' moment when you've done something you want undo but cannot.
  • The first confirmation is when the replace in files is running and you exit from dnGrep. This dialog will block the exit because this would leave the replace partially done, probably corrupting files, and with no way to undo the changes. You should either let the replace run to completion or cancel the replace before exiting. Note you can undo the replace before you exit, but not after restarting dnGrep.
  • The second confirmation is when a Script is running, and you exit from dnGrep. This too, can leave files in an unknown state. The default for this confirmation is off, and you can enable/disable it in the Options dialog.
  • The third confirmation is when a Search has been running for a long time, or the latest Search took a long time to complete, and you exit from dnGrep. This is intended to prevent losing results that will take a long time to re-run if you accidentally exit before you are finished with them. The default duration for a long search is 10 minutes, but you can adjust that up or down. The default for this confirmation is also off.
  • 902 Filter files: dnGrep currently provides two ways to exclude or ignore files in the search: the 'Patterns to exclude' and the 'Use .gitignore' (if the search is within a git repository). This enhancement adds two more ways to specify files to exclude in addition to those two:
  • Add a file named 'dnGrep.ignore' to the starting folder of your search. The filters in this file will be applied to that folder and its subfolders.
  • Create one or more filter files with the .ignore extension and put them in dnGrep "Filters" folder: C:UsersusernameAppDataRoamingdnGREPFilters for the installed version, or the Filters subfolder under the dnGrep application folder for the portable zip version. Select a filter file to apply to the search with a new drop-down selector on the dnGrep main window. The filters in this file will be applied to all folders in the search and will be saved in the dnGrep settings and bookmarks. It will be reused on all searches until it is unselected.
  • When multiple filters are used, all of the filters all will be combined.
  • The filter file may contain regular expressions, or wildcard expressions, or both. The filter expressions are the same as you would put in the 'Patterns to exclude' box: regular expressions or wildcard expressions that match files or folders to exclude.
  • The syntax of the filter files:
  • The # symbol identifies a comment. It may be used at the start of the line or after a filter expression.
  • A line starting with [regex] or [regular expression] identifies that the following lines are regular expressions.
  • A line starting with [wildcard] or [asterisk] identifies that the following lines are wildcard expressions. This is the default if the expression type is not specified.
  • Put one expression on each line of the file.
  • You may switch expression types as many times as you want.
  • For example, this filter file will exclude the 'obj' and 'bin' folders and their subfolders:
  • filter obj and bin folders
  • [wildcard]
  • obj*
  • bin*
  • 914 and #925 Settings errors: In some countries the settings saved in the dnGrep.Settings.dat file are written in the wrong format and cannot be restored. PreviewDockedWidth and PreviewDockedHeight should have been written out to the settings file using InvariantCulture so decimal separator in the settings does not change with the local culture. The comma decimal separator is being misinterpreted when reading the file. Also fixed some numeric input fields in the Options dialog to use the local culture for the decimal separator.
  • 926 and #933 Settings errors: Fixed two more errors reading and writing the StartDate and EndDate values in the dnGrep.Settings.dat file.
  • 915 Remove empty space: The layout of the dnGrep main window has been modified to remove some whitespace top panels. Removing this space makes room for about 3 more lines of text in the results tree.
  • 918 Preview context menu: The 'Copy' command has been added to the top of the context menu to copy the selected text to the clipboard.
  • 919 XPath search error: Fixed a bug in XPath search for a particular xml/html syntax.
  • 924 Single application instance: Added an option to run a single instance of dnGrep, rather than opening multiple main windows. When this option is enabled, starting a second dnGrep will bring the first instance to the front. Also added a second option to forward the search folder from the second instance to the existing window - if you start the second instance from the Windows Explorer context menu, the first instance of dnGrep will change to the selected folder. In addition, as requested in #864, if you select multiple folders in Windows Explorer and start dnGrep, the multiple folders will be concatenated to the search path.
  • 930 Regular expression timeout: Fixed a bug applying the timeout value to the search regular expressions. You can set a regular expression match timeout in the Options, but the modified setting was not being used.
  • 931 Raise PDF errors: If PDF files are secured or encrypted, they will fail to open. These errors are logged to the dnGrep log file, but not shown in the results. This has been changed so the file open errors are shown in the results tree.
  • 937 Drag & drop file or folder: dnGrep allows you change the search path by drop the file or folder from Windows Explorer anywhere on the main window. Hold the Ctrl key to append to the existing folder. That was anywhere except the 'Folder' text box. The Folder text box has it's own drag and drop settings that did not include dropping files or folders. Modified the code so you can now also drop directly on the Folder text box to perform the same action.
  • Discord server? There is a question in the dnGrep discussions asking if anyone is interested in having a dnGrep Discord Server. If you are interested, please comment in the discussion.
  • Updated Translations for several languages. Many of the translations still need help to complete them. You are welcome and encouraged to complete or improve any of the existing translations, see Translate dnGrep for more information. Do as much or as little as you like. If you do not want to use Weblate for translations, I will take input in any format and merge the changes. Send me a note in the issues or discussions page.

New in dnGREP 4.0.69 (Aug 9, 2023)

  • Changes in this release:
  • 896 Pause/Resume: Search, Replace, and Script operations may be paused and resumed, or canceled while running or paused. The new pause/resume button is to the left of the existing cancel button.
  • 898 Sheet name, Slide number and Page numbers in report: Added details to the report format: the sheet name for Excel workbooks, Slide number for PowerPoint documents, and Page numbers for PDF documents. This is the Report under the More -> Save results -> Report menu item.
  • 899 Change selection on right click: On the search results tree, the right click action has been modified to change the selection before opening the context menu, except when right clicking on an already selected item. The shift and ctrl modifiers work the same as for left clicking to extend the existing selection. Also added new shortcuts for opening files:
  • Double click on a file node expands the node (existing functionality)
  • Double click on a child line opens in the custom editor if configured, otherwise the associated application (existing functionality).
  • Alt+double click on either a file node or child line opens in the associated application (new).
  • Middle mouse button click on either a file node or a child line opens in the custom editor if configured and the associated application otherwise (new).
  • 876 Copy and Move Options: Add new options to modify the destination folder for copy and move operations. See the Options dialog, under Copy files and Move files, 'Preserve source folder layout'. Checked is the existing dnGrep behavior where the folder structure will be maintained, if possible, on copy or move. Unchecking this option will copy or moves all the source files into a single destination folder.
  • 907 Error on start: Fixed a bug reading configuration files settings written by older versions. If an old setting value cannot be read, it will revert to the default value of the setting.
  • Updated Translations for several languages. Many of the translations still need help to complete them. You are welcome and encouraged to complete or improve any of the existing translations, see Translate dnGrep for more information. Do as much or as little as you like. If you do not want to use Weblate for translations, I will take input in any format and merge the changes. Send me a note in the issues or discussions page.
  • This release contains third-party updates including:
  • .NET v7.0.10

New in dnGREP 4.0.45 (Jul 12, 2023)

  • #881 Note! Launching URLs (eg. About/Help, Check for Updates/Download, etc.) is broken in v4.0.26. Because of default property change, dnGrep 4.0.26 is not able to open URLs in the user's browser. Most significant, the dnGrep update notification cannot open the link to this new release. The URLs have been fixed in this release. If you received this release notification via email, please use the link at the top of this notice to get the new release.
  • #882 dnGrep 4.0.26.0 Not opening PDF's and other files with the system configured application. This was also caused by the default property change noted in #881 and has been fixed in this release.
  • #876 Copy, Move and Delete. Added new context menu items to the results tree context menu. These new items will act on the current selected file or files. The existing Copy, Move and Delete actions on the "More" button remain, and from there they act on all of the files in the results tree.
  • #879 Function to exclude the file folder. The "Patterns to exclude" input can be used to exclude folders from the search using a pattern such as bin* to exclude the "bin" folder and its subfolders. This feature did not work for folders inside of archives, and that is now fixed.
  • #886 Options dialog. Added the F8 function key to open the Options dialog box. Changed the Options "Save" button to save and now close the dialog. Added a new custom editor command line parameter for page, which is only populated for PDF files.
  • #887 Error on start. Fixed a bug reading configuration files settings written by older versions. If an old setting value cannot be read, it will revert to the default value of the setting.
  • Updated Translations for several languages. Many of the translations still need help to complete them. You are welcome and encouraged to complete or improve any of the existing translations, see Translate dnGrep for more information. Do as much or as little as you like. If you do not want to use Weblate for translations, I will take input in any format and merge the changes. Send me a note in the issues or discussions page.

New in dnGREP 4.0.26 (Jun 16, 2023)

  • This is the first release for dnGrep running on .NET 7
  • You should see significantly faster searches. The features and functionality should match release 3.2.330, with the addition of the issues fixed below. This release is supported only on Windows 10 and Windows 11.
  • Both the msi and zip packages are self-contained, which means they include the .NET runtime with the application. The portable (zip) builds need to be self-contained, so nothing needs to be installed on the system. Making the msi packages also self-contained means there doesn't need to separate builds for msi and zip, and the user doesn't need to install the .NET runtime separately. dnGrep will be updated when Microsoft issues security patches for .NET. This release contains the .NET v7.0.7 runtime.
  • #867 Hide Bookmarks Window: fixed error when Bookmarks window is closed using the titlebar 'X' or alt+F4.
  • #871 Update version check: changed the version check to ignore prereleases.
  • #872 Finding file names in archives: fixed a bug in the code matching file names in archives.
  • One additional performance enhancement has been added since 4.0.8-rc1 for text searches. Thank-you to @yyjdelete for finding it.
  • The PluginsPDFSearch directory has been reorganized to put the XPDF files and pdftotext.exe in a subdirectory. This will make it easier for users to add additional language packs for processing PDF files.
  • Updated Translations The Serbian and Italian translations were updated - thanks to the translators: @majkinetor and @sandman91
  • Many of the translations still need help to complete them. You are welcome and encouraged to complete or improve any of the existing translations, see Translate dnGrep for more information. Do as much or as little as you like. If you do not want to use Weblate for translations, I will take input in any format and merge the changes. Send me a note in the issues or discussions page.

New in dnGREP 4.0.8 RC 1 (Jun 6, 2023)

  • Hide Bookmarks Window: fixed error when Bookmarks window is closed using the titlebar 'X' or alt+F4.

New in dnGREP 3.2.330.0 (May 29, 2023)

  • Changes in this release:
  • XPath/xml read error #861 Fixed a bug where the search results from an XPath query failed to read the xml file do to the error: "For security reasons DTD is prohibited in this XML document".
  • Updated Translations The Chinese (Traditional) and Korean translations were updated - thanks to the translators!
  • Many of the translations still need help to complete them. You are welcome and encouraged to complete or improve any of the existing translations, see Translate dnGrep for more information. Do as much or as little as you like. If you do not want to use Weblate for translations, I will take input in any format and merge the changes. Send me a note in the issues or discussions page.

New in dnGREP 3.2.306.1 (May 4, 2023)

  • Changes:
  • History lists #836 Add pin and item delete buttons to the history lists on the main window (folder, paths, search, and replace). These lists are 'most recently used' lists. The pinned items will stay in the order that you pin them, and the unpinned items will be ordered by the most recent at the top, just below the pinned items. When you pin an item, it will be added to the end of the pinned items. When you unpin an item, it will become the first unpinned item. This makes it pretty easy to set the order without adding any other controls or special keys. You can also set the order manually in the user settings file if you have a lot of pinned items.
  • Upper/lower case commands #844 Added 'Make Uppercase' and 'Make Lowercase' context menu items to the dnGrep text boxes.
  • Script updates:
  • Made a change to preserve quoted strings for path arguments.
  • Modified scripts to load command files from the local script directory in addition to the full path to the command file.
  • Added environment variables to scripts. Define name=value pair variables that can be used in other script statements and passed when calling external commands. dnGrep creates three environment variables (not case sensitive): dnGrep_logDir, dnGrep_dataDir, and dnGrep_scriptDir.
  • Windows 11 context menu #849 The request is to add dnGrep to the new Windows 11 context menu, this has not been done and the issue is still open. As an alternative, you can use the Custom Context Menu app from the Windows Store to add the context menu in Window 11. See issue #849 for details. In this release of dnGrep, the command line argument processing was modified to support multiple path or file arguments to work with the Custom Context Menu app.
  • Updated third-party libraries
  • Updated Translations - big thanks to all translators!

New in dnGREP 3.2.279.0 (Feb 21, 2023)

  • Find text in Preview pane Fixed a bug introduced in the previous release that broke the local "Find" feature in the Preview pane. In the Preview pane, press F3 to do a secondary text search in the current file.
  • #664 Option to change how many files to search in parallel Made three changes for this - first, the default has been changed to utilize however many threads the underlying scheduler provides. Second, a setting has been added to the Options dialog to set a fixed limit on how many concurrent tasks will be used. This means you can decrease the number, but default (No fixed limit) will always use a many as can be scheduled. And third, if you are interested, a log message has been added to the dnGrep log file to record how many parallel tasks were used in the search. Previously, dnGrep has been setting a fixed limit on the number of concurrent tasks to 80% of logical processors. When parallel processing was first added to dnGrep, and without this limit, the user interface would sometimes become unresponsive because all the threads were busy. It appears the .NET runtime has been fixed now, but if you have a problem with dnGrep or other applications becoming unresponsive, you can set a fixed limit in the options.
  • #808 Web and email addresses search results not highlighted in the Preview pane The logic for determining the text color in the preview pane was overriding the match highlights with link text color. The text coloring logic was changed to highlight the matches with just background color. Also enabled current line highlight in the Preview pane.
  • #808 Show selected match statistics in the status bar Added three values to the right side of the status bar when a line with matches is selected in the results tree. First is the number of matches on the selected line. Second is the number of the first match on the line and total number of matches in the file. Third is the number of the first match on the line with respect to the total number of matches in all the files.
  • #811 Copy/Move files overwrite confirmation Added a new confirmation dialog that includes new "Yes to all", "No to all" and "Do not ask again". "Yes to all" and "No to all" apply to just the current Copy or Move operation. Checking "Do not ask again" will save the answer for all future Copy or Move operations but can be reset from the Options dialog.
  • #812 Keyboard shortcut for folder field Added the 'alt+o' accelerator key to jump to the folder input field on the main form, and 'alt+y' for Everything users. This applies to the English UI, and accelerators have also been added to some of the other translations.
  • #813 Regular expressions with whole word option The issue is if the regular expression starts or ends with a non-word character. Unlike case-sensitive, there is no 'whole word' flag in regular expressions to automatically find whole words, so dnGrep tries to help the user by adding a b word boundary anchor on both ends of the user-supplied expression. If the expression starts with a non-word character such as #, then b# will never match because there is no word boundary transition between another non-word character and the # character. For more details, see issue #813. The whole word option has been changed to this expression: (?<=W|b|^)(pattern)(?=W|b|$). This seems to match was other applications do and should meet most users needs. For other special cases, you can uncheck the whole word option and modify your regular expression as needed.
  • #827 Copy status bar statistics The request was to copy the match counts and file counts from the main window status bar to compare results from different search variations. To avoid making another change to the UI, these have been added as a message in dnGrep log file. The fields at the to the end log message are the raw numbers separated by tabs so you can copy and paste them directly into Excel.
  • #828 Slow search and cannot cancel The issue here was with binary files and whole word search. The test case included binary *.lib files in the search, and the *.lib files were not detected as binary files. Second, is the "Whole word" setting on binary files: there are no 'lines' in a binary file, so the line lengths are very long - millions of characters, and the code has to check each character for a start of word boundary and +n characters for end of word boundary. The test for binary files has been changed to fix this false negative, but the revised test may give false positives for UTF-32 encoded files (which I think will be uncommon). A number of additional checks for Cancel have been added to lower-level loops in the code.
  • Translations Many of the translations need help to complete them. You are welcome and encouraged to complete or improve any of the existing translations, see Translate dnGrep for more information. Do as much or as little as you like. If you do not want to use Weblate for translations, I will take input in any format and merge the changes. Send me a note in the issues or discussions page.

New in dnGREP 3.2.242.0 (Jan 7, 2023)

  • Changes in this release:
  • Issues:
  • #238 Portable version: After many years, this release now includes a portable, zip file version of dnGrep. Just unzip to a directory or drive of your choice. User settings and log files will be written to the application directory, if it is writable; otherwise, the application data directory will be used. The portable version should work on either 32-bit or 64-bit systems, but I don't have a 32-bit OS to test it. The binary files in the portable version are files from 64-bit MSI build but are not signed (which is a separate post-build step for the MSI releases).
  • #791 First time search: Fixed bug for null search string.
  • #792 File extension options: In the Options dialog, changed the list of file extensions for archives and plug-ins to allow editing the file extension list directly.
  • #790 Syntax colors: Added syntax colors to the Preview pane/window for many more languages. The new highlighting files are sourced from ICSharpCode.TextEditor-Lexers.
  • #794 Select syntax highlighting: Added code to load syntax highlight files from the local disk to extend or replace the highlighting definitions included in dnGrep. The application will search for *.xshd files in appDataRoamingdnGREP and subdirectories (or in the application directory/subdirectories in portable mode). File extension associations can be modified by updating the extensions attribute in the SyntaxDefinition.
  • #795 Syntax highlight colors are not editable: You can now override any part of the Syntax highlighting files (*.xshd) by editing an existing file or supplying a new file in the application data directory (appDataRoamingdnGREP). For reference, link to the embedded syntax files. Files and file associations from the external data directory will be used in preference to the embedded files.
  • #802 Goto next match: The existing F3, F4, Shift+F3, Shift+F4 function keys move the selection in the Results tree which in turn scrolls the Preview pane so that line is visible. Fixed a bug where the function keys did not work if the Preview window is un-docked from the main window.
  • Updated some third-party libraries.
  • If you missed the previous release, Scripting was added in that release. Scripts can be used to automate all of the properties and functions on the dnGrep main window. Create and save scripts, run them from the Scripts menu, or call them from a command line argument. Scripts can search, replace, sort, create reports, copy results, move, copy, or delete files, use bookmarks, and call external commands. See the scripting commands for more information.

New in dnGREP 3.1.197.0 (Dec 4, 2022)

  • Scripts:
  • Scripting is new in this release. Scripts can be used to automate all of the properties and functions on the dnGrep main window. Create and save scripts, run them from the Scripts menu, or call them from a command line argument. Scripts can search, replace, sort, create reports, copy results, move, copy, or delete files, use bookmarks, and call external commands. See the scripting commands for more information.
  • Issues:
  • #757 Move to recycle bin Added new context menu item to the search results to move files to the recycle bin.
  • #759 Pin bookmark window Added a "pin" button to the bookmark window so it will stay open after selecting a bookmark to use.
  • #765 PDF page number Added an option to show the PDF page number in place of the line number in the results tree and preview window. The page number is repeated for each matching line on the page. These numbers match the page number controls in PDF readers, but not the number on page on the document page if there are non-numbered pages at the start the document.
  • #768 Bookmark name Added an optional bookmark name field to bookmarks. The bookmark name may be used to organize and find bookmarks, and are required to use a bookmark in a script. The order of the bookmarks in the bookmark window is now saved, and you can reorder them to organize them as you like.
  • #769 Everything quotes Fixed bugs adding quotes to paths in Everything search terms.
  • #782 Explorer context menu Added a new context menu item to the search results to open the Explorer context menu for the selected files.
  • Delete files option Added a new option to specify what the Delete files command does - send the files to the recycle bin, or permanently delete the files. The new default is to send to the recycle bin. This option only affects the Delete files command from the "More..." menu or script, not the new "Move files to recycle bin" context menu item.
  • Translations:
  • Added català, eesti and italiano translations. Thank-you for the new translations.
  • These and many of the other translations need help to complete them. You are welcome and encouraged to complete or improve any of the existing translations, see Translate dnGrep for more information. Do as much or as little as you like: there are some translations missing just a few phrases, and some new languages that need to be more complete before being included in a dnGrep release.

New in dnGREP 3.0.154.0 (Sep 5, 2022)

  • Locked file check: the previous release added a check to see if files are locked by another application when checking for read-only files. This check can be very slow and made dnGrep unresponsive at times. This locked file check has been removed and reverted to the previous error handling for locked files.
  • #717 Settings file format: In the dnGREP.Settings.dat file, data that was previous saved as binary data is now all plain text. Your existing settings file will be converted to the new format on first use.
  • #745 Preview window clear: When all files have been removed from the results list, the Preview window is now cleared.
  • #746 Everything search path: When in Everything search mode, the path is now enclosed in quotes when the path contains spaces. This applies when starting dnGrep from File Explorer or command line, using the file/folder selection dialog, drag and drop a folder on the dnGrep window, and when changing from Regular Expression or Wildcard search mode.
  • Added français translation. Thank-you for the new translation!
  • You are welcome and encouraged to add new translations or improve any of the existing translations, see Translate dnGrep for more information. Do as much or as little as you like: there are some translations missing just a few phrases, and some new languages that need to be more complete before being included in a dnGrep release.
  • Future release I am thinking about adding scripting in a future release, maybe sometime this winter when I have more time. Click the discussion link below for more information or if you want to contribute your thoughts.

New in dnGREP 3.0.136.0 (Aug 21, 2022)

  • 698 Option to show only matched strings. The request was to provide a way to output only the matches from regular expression searches, like the --only-matching argument in PCRE grep. dnGrep already has Text and CSV reports to save or copy the search results. This release adds a new Report options dialog on the More ? menu to customize the Text and CSV reports in a number of ways, including to show only matches or only capture groups - see Result Options for all the options. While working on this enhancement, several bugs in highlighting capture groups in the results tree and test window were also fixed.
  • 703 Show context lines flag not always respected. Fixed bug in one code path showing context lines without checking ShowLinesInContext flag.
  • 704 Show the output of PdfToText in the preview pane instead of the raw data. The dnGrep preview window is only able to show the contents of plain text files and does not display formatted documents like PDF, Word, Excel, and PowerPoint. When searching these documents, dnGrep extracts text from the document and searches the extracted text. This release adds a new feature to show the text extracted from PDF, Word, Excel, and PowerPoint files in the preview window. This isn't intended to be accurate rendering of the document, but to show what dnGrep is using for the search and to give more context to the matched text. For PDF files, dnGrep already creates temporary text files as part of the search, so there is no added overhead for showing the plain text. For other document types there is additional overhead to save the text file - you may not want to enable it when searching large Word documents. The feature can be enabled/disabled in the plug-ins section of the Options dialog.
  • 705 Convert spaces to tab bug. This release fixes a number of issues: dnGrep now allows whitespace as a valid search pattern; whitespace is preserved in the saved settings; the text search is modified to not return overlapping matches on repeating characters (similar to the behavior of regex search); fixed a bug in the test window to update results as search pattern changes. On the main window, the search and replace pattern tooltips are now conditional on the type of search selected and a tooltip has been added to show special patterns for inserting tab, return, and newline in the replace operation.
  • 708 Keep existing "last modified date". Added an option to the Replace window to keep the previous last modified date of the file when the file replace operation is completed. Use this option with caution: it will likely cause problems with applications or some source control systems that use last modified date to detect when a file has been changed outside of that application.
  • 709 Replace not enabled. Two changes have been made to address this issue: First, when the Replace button is not enabled, there is a new tooltip to indicate why replace is not available. Second, a new context menu item has been added to the results list panel that will change files to writable when the file has the read-only attribute set. dnGrep does not allow replacements in read-only files, but you can use this command to make files writable before starting the replace. Note that not all files can be made writable, this only applies to text files with the read-only attribute and not to document files, archives, or binary files that dnGrep is not able to modify.
  • 710 Cancel does not always stop the Search within a reasonable time. Added cancel checks in the document search plug-ins (PDF, Word, Excel, and PowerPoint). There could be other areas that Cancel could be checked more frequently, but additional information is needed to find them.
  • 715 Preview panel cannot be restored. This release adds a fix for floating panel restore.
  • 716 Maximize size of results panel. There have been a number of window layout requests or suggestions to increase the size of the results panel. A button and function key (F7) have been added to the main window to maximize/restore the search results panel to increase the number of visible results lines. There is also a new option in 'Search results' section of the Options dialog to automatically maximize the results window when the search is run and the first result is returned.
  • 716 Add copy version to clipboard button. Added a button in the About dnGrep dialog box to copy the application version number to the clipboard.
  • 718 "Search in archives" option not respected with Everything search. Small change to add the archive filter to Everything search.
  • 725 When you delete search result, cursor disappears. Added code to select the next search result after deleting one or more files from the results list to retain focus on the list.
  • Added Portuguese and Serbian translations. Thank-you to the new translators! I would tag you here if I knew who you are on github.

New in dnGREP 3.0.84.0 (Jun 26, 2022)

  • Changes in this release:
  • Personalize dnGrep This release adds a new feature where you can hide unused controls on the main window. The Options dialog has a new section to mark controls as visible or hidden when in personalize mode. Using the Personalize menu item under the Settings menu, toggle the personalize mode on and off to show all controls, or only the ones you use most frequently. The value or state of the hidden controls are still used, so you can set them to your desired default value. Please comment if there is a control you would like to hide that isn't included in the options.
  • 682 Search statistics: Changed the search complete status bar message to also show the total number of matches found in all files.
  • 684 Row number in Excel files: There was an issue with dnGrep reporting different row numbers in the search results than the row number in the Excel file. The difference occurred when cells in the Excel data contained newline characters. dnGrep has been changed to convert in-cell newlines to spaces to preserve the row numbers.
  • 688 Copy results exception: Fixed a bug running the 'Copy results' command where dnGrep was throwing an exception for empty files.
  • Translations have been updated - thank-you translators! You are welcome and encouraged to add new translations, or improve any of the existing translations, see Translate dnGrep for more information. Do as much or as little as you like: there are some translations missing just a few phrases, and some new languages that need more translated before being included in a dnGrep release.

New in dnGREP 3.0.64.0 (Jun 3, 2022)

  • Changes in this release:
  • 656 Slow searching in archive files: this release contains many changes for improving performance when searching in archive files. It also includes fixes and enhancements in applying filters to archive files. You should see substantial reduction in search time in most archives - 10x or more.
  • 658 Match indicators in scrollbar: the dnGrep Preview window has a local file search Ctrl+F to search for other strings in the selected file. The match locations for the local search have been added to the vertical scrollbar in addition to the main search indicators. In this release limits have been added to the number of match indicators shown in the scrollbar to improve performance in large files with a large number of matches.
  • 660 Skip search in remote cloud storage files: Cloud storage files such as OneDrive or SharePoint that are not physically stored on the local disk have an attribute marking the file to be downloaded when accessed. If these files are included in a search, they must be retrieved from the remote storage to the local file system. A new option has been added to the file filters: Skip remote cloud storage files. When checked, dnGrep will exclude these files from the search. When unchecked, the files will be downloaded.
  • 665 Jump to next or previous file: Currently the F3 and F4 keys will move the selection in the Results window to the next or previous match. This change adds new keys 'Shift+F3andShift+F4` to move the selection to the first match in the next file, or the last match in the previous file.
  • 670 Search fails in some .docx files: Fixed a bug that was throwing an error and causing some .docx files to be missed.
  • Other changes:
  • Some third-party libraries have been updated.
  • Translations have been updated - thank-you translators! You are welcome and encouraged to add new translations, or improve any of the existing translations, see Translate dnGrep for more information.

New in dnGREP 3.0.42.0 (Mar 27, 2022)

  • Changes in this release:
  • 635 Regular expressions: fixed another bug related to regular expressions ending in a dot. This one was failing to match strings not at the end of a line. All of these issues are a result of dnGrep code trying to work around the way the .NET regular expression engine matches the end of the line, which only works with Unix line endings (n) and not with Windows line endings (rn). dnGrep has code to make both line endings work the same way.
  • 646 The Boolean operators feature has been completely rewritten to include new operators and now allows mixing operators to create complex expressions. See the Boolean Operators help page for full details on the new features.
  • #48 One character off: fixed a bug where the initial character of the file name the Preview window heading is missing.
  • 650 Check for new version: added a menu item to the Help menu to check for new a new version of dnGrep. The existing periodic check for new versions remains as-is.
  • Some translations have been updated. You are welcome and encouraged to add new translations, or improve any of the existing translations, see Translate dnGrep for more information.

New in dnGREP 3.0.29.0 (Feb 28, 2022)

  • Changes in this release:
  • The español translation has been added. Updates to the Bulgarian and Chinese (Traditional) translations. You are welcome and encouraged to add new translations, or improve any of the existing translations, see Translate dnGrep for more information.
  • Folder linked bookmark: fixed an issue where a folder linked bookmark was reapplied, resetting the current search properties, when the Options dialog is opened and closed.
  • Windows 11 snap layouts: added support for snap layouts.
  • #629 Word doc save popups: added a flag to not save changes when searching old style Word documents.
  • #636 Font problem: added missing initializer for the Results font - Results were using the default font, not the user selected font.
  • #634 Highlight matches in scrollbar: Added markers to the Preview pane scrollbar to indicate where the matches are found in the file. Also added the relative file path to the file name in the Preview pane title.
  • #635 Regular expressions ending in dot: fixed an issue where the code wasn't checking if the ending dot was escaped.
  • #638 Add templates for the Custom Editor and Compare Application settings in the Options dialog.
  • #639 Command line arguments: fixed an bug in processing the old-style command line arguments.
  • Custom Editor and Compare Application templates is a new feature in the Options Dialog. Selecting a template will attempt to locate the named application on your system, and set default command line arguments. You can still configure the application path and arguments manually. If you have other applications you would like to see listed, please post your requests in the linked discussion page or to Issue #638. The information needed is:
  • The typical installation directory or directories
  • The name of the application exe file
  • Suggested command line arguments for calling the application from dnGrep

New in dnGREP 3.0.0.0 (Jan 17, 2022)

  • After 500 builds of the 2.9 release, it seemed like a good time to change to 3.0.
  • Code signing: the big news with this release is that dnGrep releases are now signed with a code signing certificate provided by SignPath.io, certificate by SignPath Foundation. A big thank-you to SignPath for their support of open-source software.
  • Starting with this 3.0 release, you will no longer get the "Unknown Publisher" warning from Windows. However, at least initially, you will see and almost identical Microsoft Defender SmartScreen warning for an "unrecognized app". Click the "More info" link, you should see the publisher as SignPath Foundation (if you don't see SignPath as the publisher, don't install it), and then you can click the "Run anyway" button. With the code signing certificate, the application has to gain reputation before this warning is not shown any more (i.e. installed by a threshold number of users, there is no official documentation on how this works exactly). And since the application reputation is associated with the certificate, this process will be repeated in three years when the certificate is renewed.
  • The dnGrep install kits and the application binary files are signed. The signed files mean the code you see in GitHub is the code built on AppVeyor, scanned for malware, and signed on SignPath. Code signing is applied only to dnGrep project code in the dnGrep GitHub repository release branch and built on AppVeyor. The dnGrep install kit contains third-party libraries used by dnGrep, which may or may not be signed.
  • Other changes:
  • The Chinese (Traditional) translation has been added. Other translations have been updated, thank-you to all the translators. See here if you want contribute to the translations.
  • Issue #612 PowerPoint search: the OpenXML plug-in has been enhanced to also search in PowerPoint files.
  • Issue #614 Validation color: the validation messages for Regular expressions, XPath and Byte search patterns have been colored on dnGrep's main window, as there are on the test window.
  • Issue #615 Byte search test expression: the Test window has been enhanced to include testing Byte patterns.
  • Issue #616 Bookmark sections: the dnGrep bookmark feature has been enhanced to allow disabling parts of the bookmark. Over time the number of properties stored in the bookmark as grown, and previously all bookmark properties are applied when the bookmark is used. With this change, the bookmark has been split into three sections of file source, file filters, and content search. By default, all three sections are enabled. But you can edit each bookmark to enable or disable each of the three sections.
  • Issue #617 Icon refresh: the dnGrep application icon and images have been updated thanks to a contribution from @Mr-Administrator
  • Lastly, I am planning update the .NET build version used by dnGrep to .NET 4.8, which has long term support on all versions of Windows. Most users are probably already have the .NET 4.8 runtime installed, but if you think this will be a problem for you, please comment using the Join Discussion button below.

New in dnGREP 2.9.482 (Dec 29, 2021)

  • Modified some of the English labels and messages for consistency and clarity. Made some layout changes to accommodate longer strings in some languages.
  • Added Russian Русский and partial Norwegian Bokmål translations.
  • If you would like to see dnGrep in a different language or improve an existing translation, contributions are welcome - see the information in the first post.
  • #542 Byte search line length - Renamed the "Hex" search type to "Byte". Added a new option to set the line length of the search results to 8, 16, 32, 64 or 128 bytes.
  • #589 Replace window layout option - added a new option to show the Replace window without file preview. This option will be faster for large files and many matches, but does not allow selecting individual matches for replacement (selected matches are by whole file only).
  • #601 Highlight and result text bug - fixed two bugs in displaying the match results with overlapping matches. For example, when searching for 99 and the file contains 999 dnGrep will find two matches the first two nines, and the second two nines. The match highlights in the result tree will overlap and will now highlight all three nines. The Replace window will allow selection of either the first match or the second match, but will fail if both are selected (it cannot replace the second nine twice).

New in dnGREP 2.9.428 (Nov 1, 2021)

  • Sunset theme is broken: fixed bug loading themes from the directory used in portable app mode.
  • Fix for PDF files not loading in custom editor.
  • Cancel does not stop search: added check for cancel while searching for .gitignore files. Also excluded some special folders from searching for .gitignore files such as C:Program Files and C:Windows to avoid wasted time when searching from the root C:.

New in dnGREP 2.9.400 (Sep 29, 2021)

  • Fixed:
  • Bookmarks with Everything searches: the Everything search query is now saved in the Bookmarks. The layout of the Bookmark Details dialog has been changed to more closely follow the layout of the main window and the test expression window.
  • Hide missing files in Everything search: added checks for invalid drives and missing files when processing the file list returned from Everything. When the Everything index may contain files from disconnected drives, these missing files won't fill the results list with error messages. The status bar will show the number of skipped files when the search is complete.

New in dnGREP 2.9.391 (Sep 23, 2021)

  • Changes in this release:
  • The main purpose of this release is to make changes to the string resources to assist the translations. In addition, there a number of changes to properly render right to left reading languages. No translations are included in this release.
  • Two other changes have been made to issues fixed in the previous release:
  • 529 Check for valid source folder: removed all checks for valid source folder until the Search button is clicked. There were some additional checks running in the process of updating the UI state.
  • 545 Pass date fields to Everything search: Reformatted the date queries appended to the Everything search to use less than and greater than when only one date is specified.

New in dnGREP 2.9.378 (Sep 12, 2021)

  • Two big enhancements and six smaller changes in this release:
  • #520 Restore from maximized: added another change to set the preview panel size when restoring.
  • #528 Simple Translate Option: added the capability to translate dnGrep into different languages by moving all the text into resource assemblies, and dynamically switch languages with a selection on the Options dialog. This release only contains an English language resource, but more will be added when translations are completed. This is where you can help: if you want to see dnGrep in your language, please help with a translation. See here for more information. With this release you can create a translation by editing an XML file, and loading it into the running application to see the results.
  • #529 Check for valid source folder: moved the check for valid source paths to when the Search button is clicked. Previously the Search button would be disabled if the source folder is invalid.
  • #530 Add hot keys for Search and Replace fields. Alt+f and Alt+p will change the input focus to these fields. Also added F6 and Shift+F6 to expand all and collapse all search results.
  • #539 Word document disable macros: In the old style Word document (*.doc) search plugin, dnGrep disables running any macros when searching the documents.
  • #541 Detect file encoding: fixed a bug when detecting the file encoding when search for files rather than searching within files. If the file is not found, the error is now captured and reported the same way as when searching within files.
  • #542 Search for Hex string: added a new feature to search files in binary mode. The source files may be either text or binary. The search string is one or more hexadecimal numbers representing byte values (00 to ff inclusive). The hex numbers are space delimited: 68 65 78 20. A wildcard, either ? or ??, will match one byte of any value. The search string is converted to a byte array and the file is searched in 4kb blocks for matching sequences of bytes. Search results will not overlap. For example, if you search for 2 null values (00 00) a sequence of three consecutive null values in the file will match once on the first two nulls, and not a second time on the second two nulls. A sequence of four null values will match twice, not three times. The search results are shown as hex values: formatted with 16 bytes per line. The line number field on the left is the offset from the start of the file to the first byte on the line. To the right of the 16 byte values is a text representation of the bytes on that line, if they are printable values. To convert the bytes to text, the file encoding is used if dnGrep is in auto-encoding mode, or the user set encoding. If the file is binary, the system default encoding is used if the user has not selected a specific encoding.
  • #545 Pass date fields to Everything search: if the Everything search service is installed and dnGrep is set to use Everything, then dnGrep will append the date and file size filters to the Everything search string so that filtering will be done by Everything and not dnGrep. There was a bug in dnGrep that prevented using those filters with Everything searches.

New in dnGREP 2.9.349 (Jul 22, 2021)

  • Issue #520 Restore from Maximized: fixed issue setting position of splitter bar for preview pane when restoring a maximized window. Also fixed issue with saved "normal" window size when the main window is maximized.

New in dnGREP 2.9.345 (Jun 28, 2021)

  • Issue #498 Explorer Context Menu and Admin Options: Changed the way dnGrep checks for Admin permission to allow removing Explorer Context Menu. Prior versions of this code have not worked on all systems, but this is working on the systems I've tested.
  • Issue #500 Bounds exception and Error Messages: fixed startup error setting negative window size. Changed all the error message dialogs to include the application name.
  • Issue #503 PDF files skipped when filename as Spanish accent: Updated the default pdftotext.exe to version 4.03, which correctly sets the output filename including the Spanish accent.
  • Issue #505 Regex error when the $ token is escaped: fixed to correctly handle the escaped $ token.
  • Issue #507 Wrap text in search results: added option to wrap text in the search results tree. The option check box is in the expander panel below the results.
  • Issue #508 Select all: fixed the select all (ctrl-a) in the results tree to select all the file matches, even if they are not visible in the tree. Select all will also select all the line results, only if they are expanded in the tree. This change also adds select to start (ctrl-shift-home) and select to end (ctrl-shift-end).
  • Issue #513 Inactive caption colors: added two new color keys to the theme file, Caption.Background.Inactive and Caption.Foreground.Inactive that are applied to the Window caption when the window is inactive.
  • Updated third-party libraries.

New in dnGREP 2.9.326 (Mar 1, 2021)

  • Changes in this release:
  • Issue #485 Copy File Names: Added a fall back method for copying data to the clipboard if the initial attempt fails. Also, if the clipboard is locked by anotehr application, dnGrep will attempt to find the application and display the name. See Issue #485 for more details.
  • Issue #477 Capture Group Search: Fixed a problem with case-sensitive processing in the previous release (made it case-insensitive).
  • Issue #487 Explorer Context Menu: Changed the Options dialog text and tooltip to be more clear. Changed to initialize the checkbox and show the current state when not running dnGrep as Administrator.

New in dnGREP 2.9.319.0 Beta (Feb 17, 2021)

  • Changes in this release:
  • Issue #478 Preview pane placement: added a second dock location to the bottom of the main window. When the Preview pane is enabled and docked, the pane will automatically move to the right or bottom side dock location based on the width and height of the main window. There is also a new context menu on the preview pane to enable/disable automatic positioning and to select the dock location.
  • Issue #476 Keyboard shortcut for next and previous match: added two new keyboard shortcuts - F3 and F4 to select the next or previous match line in the results tree.
  • Issue #481 Failed to load 7z.dll on x86 installation: fixed bug, set dll load path to the correct 7zip dll file.
  • Issue #477 Capture Group Search: added a new feature that allows using part of the file name in the search pattern within that file.
  • A simple example would be to search for the file extension in the contents of the file - such as "xml" in xml files and "html" in html files (of course those will almost always succeed).
  • Note: This has not been extensively tested and should be considered experimental. I don't expect that this feature will see a lot of use, but I don't think you can achieve this any other way.

New in dnGREP 2.9.304.0 (Feb 16, 2021)

  • 471 Restore window position: this release fixes the bug introduced in the previous two builds where the window position is not restored for users in many locales (incorrect rectangle string format written to the dnGrep.setttings.dat file).

New in dnGREP 2.9.304.0 Beta (Jan 4, 2021)

  • #471 Restore window position: this release fixes the bug introduced in the previous two builds where the window position is not restored for users in many locales (incorrect rectangle string format written to the dnGrep.setttings.dat file).

New in dnGREP 2.9.299.0 Beta (Jan 1, 2021)

  • Changes in this release:
  • 467 Error on startup:
  • Fixed error with uninitialized font size
  • Fixed error with theme initialization in portable mode
  • Added checks for negative window widths and heights
  • Added checks prevent writing settings files in the install directory under Program Files when running as Administrator
  • Removed installer step to start and stop dnGrep during installation

New in dnGREP 2.9.291.0 Beta (Dec 30, 2020)

  • Updates for portable runtime: Made three changes of file locations to the local directory when the directory is writable:
  • Moved the window layout settings to the dnGrep.settings.dat file.
  • Moved the directory for Grep_Error_Log.xml.
  • Load theme files from the local directory.
  • Now, if you build a portable version, nothing is written or loaded from outside the local directory. The dnGrep build still does not have a zip build, but as noted in #238 you can easily create one using Universal Extractor.
  • For normal installations to Program Files, these files will remain in the previous location (AppDataRoamingdnGrep).
  • Syntax Highlighting:
  • Added mapping for different flavors of JavaScript
  • Added mapping for cshtml and vbhtml
  • Added mappings for different php file extensions
  • Added mappings for different markdown file extensions
  • Added syntax rules for json and yaml
  • Updated syntax for c# to add new keywords
  • Export Results:
  • Added new command line arguments to write results files on completion of the configured search. Added another command line argument to exit the application after the search/results file output. The new command line arguments are:
  • /rpt [file name] or -rpt [file name] or -report [file name] for the report format
  • /txt [file name] or -txt [file name] or - text [file name] for the plain text format
  • /csv [file name] or -csv [file name] for the csv file format
  • /x or -x or -exit to exit dnGrep after the initial run
  • Library Update:
  • updated third-party libraries to the latest releases
  • changed the log file output to use the standard NLog xml format from the custom format in the dnGrep libaray.
  • updated error logging in the dnGrep code to use the preferred NLog api.

New in dnGREP 2.9.282 Beta (Nov 15, 2020)

  • Changes in this release:
  • Add = character as a whole word boundary for plain text search
  • Fixed bug in .gitignore filter to remove quotes around path and file names when there are spaces in the path

New in dnGREP 2.9.270 Beta (Sep 13, 2020)

  • Changes in this release:
  • Issues #437 and #440 Fixed bug in replace function when search pattern is a regex with lookback/lookahead or other anchors such as b that define the match, but are not part of the match.
  • Issue #442 Added new command line parameters (and maintain support the existing arguments as-is for backward compatibility). The new arguments use flags to set more properties. See issue #442 for details and run dnGrep -h to see the list of all command line parameters and examples.
  • Issue #445 Add a new option in file filters to Follow symbolic links. The initial value is false/unchecked for backward compatibility, but your selection will be saved in the user settings file. Also added this flag to the bookmarks.

New in dnGREP 2.9.263 Beta (Aug 14, 2020)

  • Issue #428:
  • PDF Results Preview: The character encoding used to write the PDF to text file conversion affects the characters shown in the plain text file. The previous release changed the encoding from the system default encoding to UTF-8 with a byte order mark, and updated the PdfToText utility from version 3 to version 4. However, these changes affected other character conversions. In this release a new dnGrep option has been added so users can fine tune PdfToText to meet thier needs. Users can now set the PdfToText command line options if the default configuration isn't working. To adjust the PdfToText command line options, first run PdfToText.exe in C:Program FilesdnGREPPluginsPdfSearch with the -h or -? argument to see the list of available command line arguments. Then modify the command line arguments in the dnGrep Options dialog. You can also replace the PdfToText application in C:Program FilesdnGREPPluginsPdfSearch if you prefer a different version than the one shipped with dnGrep. However, you will have to do that after each dnGrep install.
  • Issue #434:
  • Report Listing for Boolean Operator: The Results Report has been modified to show the matched and un-matched search patterns when using the Boolean 'or' search. Also rearranged the search results menu to make the three report options more obvious.

New in dnGREP 2.9.256 Beta (Jun 21, 2020)

  • Fix fr #428 PDF results-preview: wrng character: The encding detectin cde is incrrectly detecting sme files using the default encding. Changed pdfttext argument t utput plain text in UTF-8.
  • Fix fr #429 Plugins des nt lad because f TUpper's default culture behaviur: Remved the culture-dependent TUpper t match the plugin cnfig tkens.
  • Updated sme Nuget packages.

New in dnGREP 2.9.248 Beta (May 31, 2020)

  • Fix for #418 - Arithmetic operation resulted in an overflow. This is a WPF bug when the main monitor is positioned below the second monitor. In this release, the change was applied to all dnGrep windows in addition to the main window fixed in the previous release.
  • Added new feature to duplicate bookmarks as requested in #415
  • Updated some third party libraries.

New in dnGREP 2.9.241 Beta (Apr 10, 2020)

  • Fix for #417 - Show context lines before match. This bug appears in a multiline search with matching text spanning multiple lines.
  • Fix for #418 - Arithmetic operation resulted in an overflow. This is a WPF bug when the main monitor is positioned below the second monitor.

New in dnGREP 2.9.229 Beta (Mar 11, 2020)

  • Fix for drag and drop bug where a file in the Results Tree gets written to the Search in Folder box (#407)

New in dnGREP 2.9.226 Beta (Mar 9, 2020)

  • Added drag and drop of files or folders from Windows Explorer into dnGrep. Drop a file or folder to replace the current selection, or ctrl + drop to append to the current selection.
  • Updated to the Test window layout, and made the Test window auto-update the Search and Replace as changes are made.
  • Added group highlight feature identified in issue #365. There is a new option check box in the footer of the main window, and on the test window. When checked, each regular expression capture group will be highlighted in a different background color, and tool tips will show the group name (used in replacements) and group text.
  • Improved handling of line end characters in regular expression searches. The .NET regular expression engine treats the different line ending characters - rn, n, r - differently. Modifications were made so the rn and r line ends work like n.
  • Fixed a bug where the match highlight did not show if non-printing characters (such as line endings) were captured in the match.
  • Fixed the arrow keys issue identified in #400

New in dnGREP 2.9.215 Beta (Feb 9, 2020)

  • Changes in this release:
  • Search Settings per Folder (#353) The feature allows associating a bookmark with a search path. There is a new ? button next to the bookmark button to add a bookmark to the current path. Later, when that path is selected again, the bookmark will be applied. Also the release adds a few more search options to the bookmark.
  • File or Subfolder Filter (#249 and #353) This feature adds processing path wildcards in the 'Search in Folder' box. The wildcard may be used to filter subfolders or to filter files within a folder. Only Windows wildcards (* and ?) are allowed, not regular expressions. The filter expression may only be in the final segment of the path.
  • Match Highlighting (#358) Added a checkbox to enable/disable highlighting the match text in the results tree and in the preview window. The checkbox is in the new panel below the results tree.
  • Show Result Lines in Context (#361) Added a new control to the main window, in a new panel below the results tree. The lines before/lines after is same as in the dnGrep Options window, and will apply to the next set of search results.
  • Result Tree text zoom Added a zoom control for the results tree, similar to the one on the preview window. The results tree also zooms in and out using the mouse wheel or pinch gesture on a touch screen.
  • Quoted Text in Search Path (#184) You can add quotes in the 'Search in Folder' box to help resolve paths that contain commas and/or semi-colons. Normally comma and semi-colon are assumed to be separators to specify multiple search paths. When a directory name contains a comma or semi-colon, dnGrep can often resolve the path without needing to add quotes, but there are some rare cases as shown in #184 where it is necessary to add quotes.
  • Fixed a bug where changing the "Replace with" text after searching would disable the Replace button.

New in dnGREP 2.9.196 Beta (Jan 21, 2020)

  • Archive file search:
  • Fixed a couple of bugs recursively searching for files in archives. Fixed a bug where dnGrep failed to recognize cpio archives by file signature. Fixed a bug opening embedded archives that are a single archive file, such as within an an rpm file.
  • File comparison:
  • Added a new feature to do file comparisons from dnGrep using external applications such as WinMerge, Beyond Compare, or KDiff3. To use this feature, register your compare application in the dnGrep Options dialog, like the custom editor option. When configured, you can select two or three files in the results list, right click, and then choose "Compare files' from the context menu. dnGrep will start the compare application with the selected files. You can also configure additional arguments - check your compare application documentation for additional command line arguments you may want to use.
  • Boolean operators:
  • Added new feature to combine multiple search patterns for Regex and Text searches (#337 and #386). There is a new "Boolean operators" checkbox in the Search panel to enable this feature. When checked, you can add use 'AND' or 'OR' between multiple search patterns in the "Search for" box. When using multiple Boolean operators, they must be the same: you cannot use both ANDs and ORs in one search.
  • The AND and OR operators are not case sensitive, and must be separated from the search pattern by a single space. Additional spaces become part of the search pattern.
  • DnGrep will run each search pattern, and combine the results. If two matches overlap, they will be joined into a single match.
  • If the search type was "Text" you will be able to also use the Replace function. However, Replace is not enabled for Regex searches with Boolean operators. Regex Replace is far more complicated with many special cases, and is not suitable for the combined result sets.

New in dnGREP 2.9.181 Beta (Nov 3, 2019)

  • The release fixes three issues:
  • Save Search Options: added new save for search options when the "Search" button is clicked.
  • Add fallback for the GetDpiForMonitor method when dnGrep is run on older versions of Windows
  • Set minimum and maximum size of the Preview window so splitter bar does not disappear. Also added limit when setting initial window sizes.

New in dnGREP 2.9.174 Beta (Oct 22, 2019)

  • Fixes for dialog window positions on high DPI monitors, and save/restore window positions on secondary monitors. Also added larger images to the application icon.
  • Fix for lost file type changes when installing application updates #357 (see note below)
  • Added LISP syntax highlighting #360
  • Fix for encoding detection issue #364
  • In this release modifying plug-in options has been moved from the plug-in config files in the (application installation directory) to the user options file in the AppDataRoamingdnGrep directory. You can edit the plug-in options in dnGrep's options dialog. The application should not have been requiring users to edit files under Program Files as there is not a good way to preserve those changes when the application updates are installed.

New in dnGREP 2.9.164 Beta (Oct 14, 2019)

  • Fixes for dialog window positions on high DPI monitors, and save/restore window positions on secondary monitors. Also added larger images to the application icon.
  • Fix for lost file type changes when installing application updates #357 (see note below)
  • Added LISP syntax highlighting #360
  • Fix for encoding detection issue #364
  • In this release modifying plug-in options has been moved from the plug-in config files in the (application installation directory) to the user options file in the AppDataRoamingdnGrep directory. You can edit the plug-in options in dnGrep's options dialog. The application should not have been requiring users to edit files under Program Files as there is not a good way to preserve those changes when the application updates are installed

New in dnGREP 2.9.163 Beta (Jul 29, 2019)

  • Add fix to preview files that are open for write, such as application log files.

New in dnGREP 2.9.160 Beta (Jul 22, 2019)

  • This release contains fixes for these issues:
  • #346 Index out of bounds
  • When checking the file encoding
  • #347 Invalid text highlight
  • Fixes a bug by checking the encoding of files inside archives
  • #349 Change file share mode for plain text
  • Allows reading files that are open for write, such as application log files.

New in dnGREP 2.9.143 Beta (Jun 9, 2019)

  • Color themes have been added to the UI (request #312 ), and themes are user customizable.
  • The application installer has also been fixed so that ngen will run to generate native images for the application and dlls.
  • All changes in this release are to the user interface; nothing in the application logic has been changed. The layout of the Options dialog has been updated. A minor bug where the selection in the grep results tree is sometimes lost was fixed.
  • If you are running on a version of Windows 10 that supports light and dark modes, dnGrep will switch modes based on that setting. On any version of Windows, you can choose a color theme from the Options dialog in dnGrep.
  • The installation of dnGrep comes with three themes: Light, Dark and Sunset. The Light and Dark themes are contained in the the application executable, and the Sunset theme is an external file. The Sunset theme is an example of a theme file, and you can use it as a template for new custom themes. dnGrep will load theme files from the APPDATAdnGrep folder (typically that is C:UsersyouraccountAppDataRoamingdnGrep).
  • The themed controls used in dnGrep were extracted from the default WPF controls using Blend. With a few exceptions, all the colors used in each control were extracted as named brush resources. Each control has a unique set of color names, which makes for a lot of named resources, but gives better control over the colors used. The theme files contain the collection of colored brushes, plus a few other options. The theme file must have a .xaml extension and follow the sample file format. All elements in the sample theme files are required, and the theme will not load if any are missing. Check the dnGrep error log if your theme does not load. If you are working on customizing a theme, you can quickly reload the theme by pressing ctrl+F5 on the main window, or from the Options dialog.

New in dnGREP 2.9.140 Beta (Apr 9, 2019)

  • New feature: the preview window is dockable in the main window (Issue #323 and several other requests).
  • Fix for UTF-8 Byte Order Mark when replacing text - dnGrep was not matching the BOM in the original file (Issue #277).
  • Updated the Bookmarks dialog and added additional properties to the Bookmark. The Bookmark Detail dialog shows the properties now saved in a bookmark. Existing bookmarks should work as before, and can be updated to use the extended properties. As before, a bookmark is identified by a combination of the Search text, Replace text and File pattern.
  • Fixed an error when previewing a file when there are no search matches in the file result. This happens when you use dnGrep to search for all files matching the file pattern by leaving the 'Search for' text empty.
  • Fixed problem finding/highlighting searched-for words in Word (*.doc) documents (Issue #241)

New in dnGREP 2.9.127 Beta (Mar 6, 2019)

  • This release includes a new Replace dialog that allows the user to mark search results for replacement by individual match, all matches in a file, or all matches in all files. Issue #301
  • It also adds the Esc key handler to the close the Preview Window, and fixes a crash when the Esc is pressed in the Main Window. Pressing Esc in the Main Window will cancel a running search. Issue #322

New in dnGREP 2.9.118 Beta (Feb 5, 2019)

  • Addresses #321

New in dnGREP 2.9.81.0 Beta (Jun 18, 2018)

  • New features/fixes:
  • Speed improvements, parallel search option, per #290

New in dnGREP 2.9.77.0 Beta (Jun 18, 2018)

  • New features/fixes:
  • New features/fixes: Add OpenXmlEngine #289

New in dnGREP 2.9.68.0 Beta (Jun 18, 2018)

  • New features/fixes:
  • Improvements to archive search (#283).

New in dnGREP 2.9.64.0 Beta (Jun 18, 2018)

  • New features/fixes:
  • #275, #279
  • Fix for Issue #269 installer is missing Newtonsoft.json library (PR #274)
  • Changes for slow performance on large files #271
  • Progress and cancel #267
  • Multiselect Tree #264
  • Fixes in pull request #256
  • Fixes in pull request #253
  • Fixes in pull request #247
  • Lots of dependency updates and fixes detailed in Baseline update #246
  • UI tweaks to top bar

New in dnGREP 2.8.16 (Jun 18, 2018)

  • New features/fixes:
  • Plugins working again since v2.8.9 beta.
  • Can now exclude directories by name (e.g. Obj* to exclude Obj directories).
  • Prettier output for search time (e.g. "3m 13.579s" insead of "193579ms").
  • Better encoding detection per issue #207 (issue 400 from old, Google Code project)
  • Now being built on AppVeyor.
  • Fixed #224 (can now have leading/trailing separators in ignore paths)

New in dnGREP 2.7.2 (Dec 17, 2014)

  • The v2.7.2 release brought over from Google Code.
  • Fixed lost settings when opening options (issue 170)
  • Fixed lost settings when opening test window (issue 173)

New in dnGREP 2.7.1.0 Beta 2 (Nov 28, 2013)

  • Moved help file to Google Code wiki and linked it from the tool
  • Fixed missing file path in Win XP and Win 7 ( issue 164 )
  • Fixed bug with multiline search ( issue 165 )
  • Fixed preview windows appearing even after show preview is unchecked ( issue 166 )
  • Multiline related fixes (issue 136 and issue 167 )

New in dnGREP 2.7.0.0 Beta (Nov 28, 2013)

  • Updated UI (including Windows 8 styling)
  • Brought back "context lines" ( issue 142 )
  • Improved memory usage and performance with large search results ( issue 123 )
  • Improved XPath search highlighting
  • Added support for shebang based file selection ( issue 138 ) - e.g. "Paths that match" and "Paths to ignore" can now contain patterns such as "#!python;#!sh"
  • Added ability to start search from command line by passing in query as a last argument ( issue 159 ) - e.g. dnGrep.exe "c:\path" "\s\w+"
  • Added keyword "%pattern" for alternate editor setup ( issue 158 )
  • Implemented option to stop after first match ( issue 150 )
  • Added CSV copy to clipboard ( issue 144 )
  • Added menu option to always allow opening with either custom or default editor (issue 152)
  • Refactored to use MVVM pattern and migrated to XUnit for unit testing
  • Fix for the test tool (issue 136)
  • Misc bug fixes ( issue 141 , issue 149 )

New in dnGREP 2.6.3.0 (Nov 28, 2013)

  • Significantly improved search performance (~5-10 times) and reduced memory footprint ( issue 123 )
  • Improved start-up time ( issue 105 )
  • Preview window with "sticky" behaviour ( issue 116 )
  • Increased results space by collapsing file filters
  • Added regex and xpath validation ( issue 131 )
  • Disable file filters when single file is selected ( issue 115 )
  • Added restore of window size ( issue 104 )
  • Added ability to exclude folders from search path ( issue 103 )
  • Improved open file location by selecting file as well
  • Enabled advance >> button when search for is not used ( issue 119 )
  • Added ability to generate GUIDs (using $(guid) in replace)
  • Minor enhancement to pattern test window ( issue 77 )
  • Improved shell integration ( issue 96 , issue 97 )
  • Misc bug fixes ( issue 100 , issue 106 , issue 99 , issue 111 , issue 93 , issue 94 , issue 95, issue 114 , issue 117 , issue 121 , issue 123 , issue 124 , issue 127 , issue 128 , issue 129 )
  • Fixed misc. issues in the first Beta (thanks everyone who tested it)

New in dnGREP 2.6.0.0 Beta 2 (Nov 28, 2013)

  • Significantly improved search performance (~5-10 times) and reduced memory footprint ( issue 123 )
  • Fixed misc. issues in the first Beta (thanks everyone who tested it)
  • Misc. improvements based on feedback ( issue 121 , issue 123 , issue 124 )

New in dnGREP 2.6.0.0 Beta (Nov 28, 2013)

  • Improved start-up time ( issue 105 )
  • Preview window ( issue 116 )
  • Increased results space by collapsing file filters
  • Disable file filters when single file is selected ( issue 115 )
  • Added restore of window size ( issue 104 )
  • Enabled advance >> button when search for is not used ( issue 119 )
  • Added ability to generate GUIDs (using $(guid) in replace)
  • Minor enhancement to pattern test window ( issue 77 )
  • Improved shell integration ( issue 96 , issue 97 )
  • Misc bug fixes ( issue 100 , issue 106 , issue 99 , issue 111 , issue 93 , issue 94 , issue 95, issue 114 , issue 117 )

New in dnGREP 2.5.0.0 (Feb 16, 2012)

  • Added info about search pattern and folder path to window title ( issue 83 )
  • Added description of replacement patterns to help and hint ( issue 88 )
  • Enabled searching in folders with ";" and "," in the name ( issue 68 )
  • Made the line number column expandable ( issue 85 )
  • Implemented better regex validation in main window and test ( issue 78 )
  • Changed prerequisites to .NET 4.0 Client Profile to to reduce size
  • Fixed issues related to Unix style line breaks
  • Misc. defect fixes ( issue 75 , issue 80 , issue 81 , issue 82 , issue 87 )

New in dnGREP 2.4.0 (Feb 16, 2012)

  • Upgraded to .NET 4.0 to improve "blurry" fonts on Windows XP - to disable ClearType go to Options > User Interface and uncheck the appropriate checkbox ( issue 39 )
  • Fixed XPath search
  • Added drop down list for previous search paths ( issue 71 )
  • Added functionality to clear old searches from drop downs ( issue 70 )
  • Added option to have results tree be always expanded ( issue 70 )

New in dnGREP 2.3.1 (Feb 16, 2012)

  • Bug fix related to file search (certain files were skipped from search)
  • Added splash screen to address WPF related slow start ( issue 64 )

New in dnGREP 2.3.0 (Feb 16, 2012)

  • Added history to filter text fields (via drop down field) ( issue 62 )
  • Improved Cancel button performance when searching large directories ( issue 57 )
  • Added context menu to copy path to clipboard (in addition to Ctrl + C hotkey) ( issue 61 )
  • Implemented line separator when "show in context" is used ( issue 58 )
  • Misc. bug fixes ( issue 55 , issue 56 )
  • Misc. Windows 7 bug fixes ( issue 56 , issue 50 )
  • Implemented new installer

New in dnGREP 2.2.0 (Feb 16, 2012)

  • Added option to exclude binary files from search - used algorithm from winGrep ( issue 41 )
  • Extended tree view to support copy to clipboard via Ctrl + C ( issue 42 ) and drag-and-drop to external editor ( issue 54 )
  • Added quick access to past search and replace patterns similar to other search tools ( issue 37 )
  • Converted search window from tool-window to standard window to add minimize and maximize buttons ( issue 22 , issue 47 )
  • Extended "files that match" pattern to support commas along with semi-colons to provide multiple patterns ( issue 49 )
  • Misc. defect fixes ( issue 44 , issue 45 , issue 51 , issue 52 , issue 53 )

New in dnGREP 2.1.0 (Feb 16, 2012)

  • Implemented "whole word" search functionality ( issue 35 )
  • Added ability to specify file patterns to "exclude" (e.g. "*.jpg;*.gif;*.png") ( issue 32 )
  • Added support for unix-style wildcards in asterisk search (e.g. "t[a-z]st-fil?.*") ( issue 33 )
  • Fixed UI issues with Options window ( issue 39 , issue 38 )
  • Added "Search Params" options tab which currently allows to customize phonetic search "fuzzyness"
  • Implemented feature to copy file names returned in search into clipboard ( issue 16 )
  • Number of misc. defect fixes ( issue 36 , issue 40 )

New in dnGREP 2.0.0 (Feb 16, 2012)

  • Version 2.0 is a complete re-write of the front-end using WPF framework and now requires .NET 3.5 SP1
  • Includes a new type of search - phonetic (based on agrep algorithm)
  • Added search result highlighting
  • Added ability to drag and drop files and folders from Explorer into dnGREP ( issue 33 )
  • Added ability to delete nodes from the result ( issue 34 )
  • Fixed inconsistency between test form and main search ( issue 31 )
  • Number of other misc. improvements and enhancements

New in dnGREP 0.10.1.19944 (Oct 7, 2009)

  • Implemented "context view" (ability to see N number of lines before the matched result and M lines after) ( issue 9 )
  • Added "Case Insensitive" search to Regex search
  • Added display of number of matches in the result tree