Merge remote-tracking branch 'notepad3_orig_rizone/master'

This commit is contained in:
Rainer Kottenhoff 2018-02-06 16:52:34 +01:00
commit f6af601548
46 changed files with 3132 additions and 251 deletions

View File

@ -0,0 +1,587 @@
==================================================
Rizonesoft Notepad3 CHANGES
==================================================
--------------------------------------------------
Version 3.18.131.862 (31 January 2018)
--------------------------------------------------
- Fix: Correct in-memory encoding/re-coding of text.
- Fix: Join Lines (preserve paragraphs) issue.
- New: Accelerator Key "Ctrl+Alt+J" -> Fuse Lines (:= Join Lines, line-breaks NOT replaced by Space).
- Fix: Byte counting for selection.
- Fix: Bug in joining lines algorithm.
- Fix: Alt+H should open history file access dialog not help menu (add ? to revert to known access key).
- CR: Reverting back to "?" for help menu and activation (Alt+?) key.
- CR: Accelerator Key F1 now opens Online Documentation in browser.
- Cleanup: Highlight current line stuff gathered.
- Added: Setting2 parameter to adjust "Mark Occ" and "Hyperlink" styling delay.
- Fix: Revisit usage of "Mark Occurrences" and "Hyperlink Styling" delay usage.
- Fix: Rectangular selection: (virtual empty) selection persists after clear.
- Cleanup: Customize Schemes... Style Names.
- Fixes: Performance for several modify text operations.
- Fix: Sentencecase some strings in "Customize Schemes...".
- Refactoring: Usage of undo/redo action stack.
- Fix: SpeedUp undo/redo action collections.
- Fix: Lock NotifyUpdate and TargetSelection in case of multi action redo/undo and target replacements.
- Fix: Handling of document modified flag in case of NotifyChange bypass.
- Enhancement: Canonical initial Notepad3.ini.
- Fix: Redo/undo and jump-to behavior having an active selection.
- Refactor: set/replace selection handling.
- Fix: Wrong test on rectangular selection.
- Enhancement: add empty sections to initial settings file (.ini) to force a canonical order.
- Fix: More select and replace target issues.
- Fix: Toggle All folds behavior.
- CR: Changed inifile for Portable Apps Notepad3.
- Fix: TAB indentation handling according to predecessors (NP2).
- Fix: selection (anchor and current caret position) handling.
- Enh: Version check for Visual Studio 2017 v.15.5.5.
- Fix: "Line Comment" id noselection and current pos == indent pos.
- Fix: Initial .ini-file: unused section removed.
- Fix: Support scintilla msg: SCN_NEEDSHOWN (EXPAND folded sections if needed).
- Revert: Accelerator Key "Alt+UP/DOWN" for navigation (jump) between folded section headlines.
- Enhancement: Added Accelerator Keys: Alt+LEFT/RIGHT to FOLD/EXPAND folding section.
- Fix: Avoid some issues regarding folding, using SCI_SETAUTOMATICFOLD.
- Fix: Revert TAB + Selection action corresponding to VisualStudio's behavior.
- Fix: Sensible handling of "Block -> (Un)Indent" for different kinds of selections.
- Fix: Font selection dialog does not reset some styles correctly.
- Fix: Preserve selection on Line Comment toggle.
- Enhancement: Make selection block indentation similar to VisualStudio's.
- Fix: Char2Hex: Remove limit single byte selection.
--------------------------------------------------
Version 3.18.113.828 (13 January 2018)
--------------------------------------------------
- Performance: Redraw indicator ranges (Mark Occurrences) only if needed - avoiding recursive SCN_UPDATEUI notifications.
- Mark Occurrences: force position progress in case of zero-length matches.
- Performance: Mark Occurrence triggers enhancements.
- Convenience: Re-introduce "max mark occurrence counter" to avoid lazy UI.
(Set .ini section [Settings2] MarkOccurrencesMaxCount=-1 for unlimited (MAX_INT)).
- Fix: Correct counting of found matches.
- Fix: Broken find/replace (regex) on groups.
- Performance: Tuning delay parameter of "Mark Occurrences" (instantly).
- Performance: Remove test for set already, if indicator does not change.
- Fixing several Mark Occurrences (instantly) issues.
- Fix: Some customizing scheme issues (relative font size hierarchy).
- Fix: Document modified flag not set properly (title, toolbar & statusbar only).
- Fix: Renaming menu entries Edit: "Clear" -> "Delete"
- Enhancement: structured "Mark Occurrences" menu hierarchy.
- Fix: Menu "Mark Occurrences" whole word matching: add check indicator if one of word matching options (selected/current) is used.
- Change: Menu "Mark Occurrences" whole word matching: radio button behavior.
- Fixes Regarding Scheme customizing (rel. size) and View Menu (Mark Occ.).
- Fix: Regex replacement on look-ahead assertion.
- Fix: relative font sizing of non-default-style entries in custom schemes.
- Fix: Font selection box title display.
- Fix: clean coding for "relative sizing hierarchy".
- Feature: "Customize Schemes..." UI change to represent "relative sizing hierarchy".
- Fix: Update view on style change in "Customize schemes..."
- Fix: Bug regarding "Reset" button in "Customizing Schemes..." dialog.
- Fix: Bug in detect and style Hyperlink Hotspot.
- Feature: Initial version of Nim Lexer. Added Scintilla project and header for Nim lexer.
- Performance: Non visible styling during idle time.
- Performance: Cache page instead of line only.
- Change: Option "after visible" for styling in background (idle time).
- Update: Compiler version 191225834 (VS2017 V.15.5.3).
- Fix: Loosing state of "Transform Backslashes" while switching regex/wildcard search.
- Fix: Block "mark occurrences" event on transaction pair: (SCI_TARGETFROMSELECTIO, SCI_REPLACETARGET).
- Fix: protect SCI target transactions by a guard to break recursion of Mark Occurrences caused by ChangeNotification() events.
- Fix: Handle "2nd Default Styles" as separate standard (2nd) lexer module.
- Fix: Handling initial 1st or 2nd default style in case of "Default Text", shown on int "Customize Schemes...".
- Fix: Crash on navigation between schemes beyond start/end of tree view.
- Fix: Disable (using 1st Default Style) "Associated filename extensions" for "2nd Default Style".
- Fix: Clone associated filename extension list of Default Style (for 2nd Default Style).
- Enhancement: status bar information about usage of 2nd Default Style.
- Change: View "2nd Default Style" as (dbl-clickable) status bar item.
- Cleanup: NimLexer = NimrodLexer -> rely on Scintilla distribution for Nim(rod) lexer.
- Change: Word Wrap mode from WORD to SPACE to avoid wrapping at style change edges.
- Fix: move word wrap start symbol to margin (new WW mode SPACE (instead of WORD))".
- Fix: Mark Occurrences timeout on Find/Replace.
- Fix: Optimized status bar partitioning.
- Fix: Revert naming for "2nd Default Text".
- Clean Code: Reasonable assumption for memory allocation of style handling (backup, save, load).
- Tuning: Statusbar Partitioning.
- Fix: Bug on switching between 1st and 2nd standard lexers.
- Fix: Selection of 1st or 2nd standard lexer (Default Text) based on Use2ndStandard flag.
- Change: Onigmo RegEx syntax dialect.
- Change: Onigmo regex engine: use PERL 5.10 syntax + enable "\<" and "\>" word boundary matching.
- Fix: Onigmo regex engine PERL syntax: supporting named groups referencing in replacement text.
- Enhancement: Statusbar: Count number of bytes in current encoding.
- Change: Replace Windows Notepad Installer version only.
- Change: Executables not compressed with UPX.
--------------------------------------------------
Version 3.18.105.802 (5 January 2018)
--------------------------------------------------
- Fix: Custom toolbar images ini settings added.
- Fix: Add hints for free text style properties in "Customize Schemes...".
- Fix: Test version numbers for month Jan - Sep (mono digit).
- Fix: Redundant echo of expected version string.
- Fix: Toggle line comments were placed at line end.
- Feature: (Mark Occurences) instant word highligting.
- Added: Switch to draw all occurrences in visible area only.
- Opt: Delayed mark all occurrences for better UI response.
- Enhancement: Async mark all occurrences via timer (UI response).
- Fix: "Match Current Word" should not highlight partial word matches in other lines.
- Added: Hyperlink Hotspot Style updates on UpdateUI event (visible area only)
- Fix: Fetching wrong visible document line number in case of hidden or wrapped lines.
- Fix: Ignoring queued timer event, if timer has been killed.
- Performance: Optimizing timer handling to avoid multiple calls of complex methods.
- Fix: use current lexer's default text font size as base font size for relative sizing of other styles.
- Performance: Fixed some issuses, which eat up CPU.
- Fix: mark occurrences counter not updated in time.
- Minor performance enhancements.
--------------------------------------------------
Version 3.17.1228.783 (28 December 2017)
--------------------------------------------------
- Fix: Update coloring on window message WM_SYSCOLORCHANGE, including Hyperlink hotspot colors.
- Feature: Java sourcecode to compile a class which acts as a standalone tool for decrypting Notepad3's encrypted files.
- Fix: Crash on empty password for encryption tool.
- Added batch script to bulk encrypt files of given directory with encryption tool.
- Fix: Existing bash test script for encryption tool.
- Fix: Onigmo regex: . matches any charakter and does not stop at line breaks.
- Fix: Onigmo regex: remove extend mode, where # is used as line rest comment.
- Feature: Regex - "Dot matches all" vs. "Dot does not match line-breaks" switchable by option in find/replace dialog.
- Feature: inticator style used for matching braces too.
- Fix: Change hard coded default values for matching brace styling according to new style (indicator).
- Fix: font styling of Hyperlinks are not reset to default if feature is switched off.
--------------------------------------------------
Version 3.17.1223.778 (23 December 2017)
--------------------------------------------------
- Fix: Hyperlink feature related delay of font changing.
- Added more triggers for Hyperlink style updated.
- Refactoring: Cleanup trigger points for URL Hotspot styling.
- Fix: Last hyperlink was restyled to lexer's style (not desired hotspot style).
- Feature: Replaced DeelX with Onigmo regular expression engine.
- Fix: Default lexer style changed a litle bit after first UI update.
- Fix: Redraw bug in case of SCI_COLOURISE.
- Fix: Removed some Hyperlink dection triggerpoints, which might be collide with SEARCHINTARGET and REPLACETARGET race conditions (seperate threads).
- Fix: Removed unneccessary Hyperlink trigger-point from InitInstance().
- Fix: Performance issue while pasting long text from clipboard.
- Fix: Local memory freeing.
- Fix: Complete set of font weights for syntax scheme.
- Fix: Prepare fixing race-condition search/replace target vs. selection.
- Fix: Set target range only for search/replace and not for paste after modifying selection (race-condition search/replace target vs. selection).
- Fix: Transform backslashes for regex find/replace.
- Feature: Added Scintilla's indicator styles to scheme config for "Mark Occurences".
- Fix: Out of range fallback for indicator string retrieval.
- Fix: Issue regarding TransformBackslash handler (regex vs. std & find vs. replace).
- Fix: Replace dialog: Resize regex text box to not overlay other control.
- Fix: Enable more hyperlink styling trigger points, since "replace target" race-conditions have been fixed and fast regex engine (Onigmo) is integrated.
- Fix: Issue regarding applying lexer style while hyperlink feature is active.
- Fix: Reverting to buffered draw, until screen flickering issues are clarified.
- Fix: Onigmo regex engine handling string/line end meta char '$' independent of EOL mode.
- Fix: Replace-all with look-behind assertion.
- Update: uthash to version 2.0.2.
- Fix: Onigmo word boundaries issues (incl. "double" escaped esc) (not solved yet: multi escaped esc).
- Fix: Customize schemes issues (now Default Font: is applied to "Default Text" and "Current Lexers" Default Font).
- Fix: Allow (horiz.)TAB chars in selection copied to find/replace dialog search box on pop up time (Ctrl+F).
- Fix: Setting "Default Font..." will clear current lexer's default font - inherits global default font then.
- Fix: "Default Font..." configuration issue.
- Minor fixes for Onigmo interface class.
- Fix: "Default Font..." add check for current scheme is not default text already.
- Enhanced style copy method.
- Refactoring: Style Select Font dialog.
- Fix: Schemes in alphabetical order (displayed names).
- Feature: Dual configuration of Default Text Font or Current Scheme's Default Text Font.
- Fix: Bug on font selection - global vs. current scheme.
- Fix: More bugs regarding standard lexer handling.
- Fix: Using WYSIWYG fonts (screen vs. printer).
- Added Online Documentation menu item.
- Fix: Inconsistencies: cut,copy,replace,... mainmenu and context menu vs. toolbar.
- Fix: New Font selection feature: 2nd Default Font not supported completely.
- Fix: setting/changing encryption pass-phrase did not trigger "file modified" flag.
- Fix: Problem with 1st vs. 2nd Default Text Scheme selection.
- Fix: Inconsistency 1st vs. 2nd Default Text Font selection.
- Fix: Use Standard Lexer on new (empty) files.
- General bug fixes and code cleanup.
--------------------------------------------------
Version 3.17.1210.729 (10 December 2017)
--------------------------------------------------
- Fix: flashing of Search text-box of find/replace dialog in case of Win7 Classic theme
- [Settings2] section default values (and comment out if not changed) of initially distributed Notepad3.ini
- Feature: Added Awk Script syntax highlighting (Python lexer based)
- Fix: Edit/Special : URL encoding/decoding for full UTF8 (non ASCII) characters.
- Refactoring: Platform independent URL decoding.
- Fix: Gibberish output if URL decoded again (2nd time).
- Fix: URL decoding, if encoding has "%#nnn" formatted ASCII chars.
- Fix: HTML character encoding starts with ampersand, not percent char.
- Fix: URL encoding: Added flag URL_ESCAPE_PERCENT for UrlEscape().
- Feature: URL Hotspot (first version).
- Fix: Added version info for VS2017 v.15.5
- Feature: Enhanced URL Hotspot highlighting.
- Refactoring and enhancements for Hyperlink Hotspot feature.
- Fix: Consistent texts for "Hyperlink Hotspots".
- Feature: open Hyperlink in NP3 (if applicable: "file://...").
- Added some more places, where Hotspot style redrawing does not slow down responsiveness.
- Fix: Hyperlink Hotspots turned off by default. (not stable enough to force the feature).
- Fix: Normal setup can now clean replace Windows Notepad registry keys.
- Feature: Update notification in Notepad3 setup.
- Code Cleanup
--------------------------------------------------
Version 3.17.1202.715 (2 December 2017)
--------------------------------------------------
- #191 Revert to Scintilla's old (default) font rendering technology. Modern DirectWrite available at [Settings2] SciDirectWriteTech=1
- Fix: Removed unused mouse wheel message interception.
- Fix: Disabling buffered draw. (Scintilla: "Current platforms perform window buffering so it is almost always better for this option to be turned off.")
- Fix: Font Smoothing: [Settings2] SciFontQuality=n has no effect on some special fonts (preserving old behavior if not defined).
- Workaround: #192 Drag n' drop from 32-bit process on Notepad3 x64 window
- Renaming of drag n' drop methods.
- Fix: Adapt text for messagebox: no valid drop-file.
- Fix: issue regarding Accelerator keys for find/replace dialog.
- Feature: Additionally show full path to current directory in windows title.
- Fix: Minipath full path display in titlebar (no dbl-slash in case of drive letter only).
- Fix: Mark occurrences: Outline frame of indicator box shouls have same aplpha channel color (configurable alpha2:nnn).
- Change request: move "Mark Occurrences" check box from menu to find/replace dialog options.
- Fix: Find/replace dialog: mark occurrences: use standard save/restore settings behavior.
--------------------------------------------------
Version 3.17.1124.690 (24 November 2017)
--------------------------------------------------
- Fix: Revert to Scintilla's default mouse down and mouse wheel capture mode.
- Fix: "Mark All Occurrences" setting of find/replace dialog should only be persisted, if "Save Settings on Exit" is enabled.
- Fix: UpdateLineNumberWidth() triggers cleanup.
- Adapt: C/C++ styles - keyword vs. typedefs.
- Fix: Issue with update of line number margin width.
- Fix: Transform backslash issues.
Fix: C/C++ keywords and types.
Timer call for mark occurrences during find/replace.
- Fix: lookaround regex (DeelX) matches were not replaced.
- Optimized DeelX regex interface.
- Fix: Issue regarding find/replace empty-string.
- Fix: Adapt DeelX RE interface according to enhanced find/replace dialog.
- Fix: Issue #173 - regex/wildcard search: replacement string not used if "Check All Occurrences" is active.
- Changed SDK version target to 10.0.16299.0
- Feature: find/replace mark occurrences.
- Feature: Indicator in find text box, if search string is matched in document.
- Feature: validate regexpr.
- Fix: Recoding minipath's version.h to UTF-8 (Sig), because it contains codepage dependant copyright sign.
- Fix: Corrections to .vcproj settings inconsistencies (reported in release build process).
- Feature: Auto remember bookmarks in recent file history.
- Fix: undo/redo issues (if no selection choosen).
- Fix: Consecutive DEL/BACKSP undo/redo broken (wrapped by unconditional selection undo/redo).
- Feature: Mark occurrences coloring is now configurable via "Customize Schemes...".
- Fix: Issues found by static code analysis.
- Minor fix for DeelX RegEx engine.
- Major refactoring of find/replace regex evaluation.
- Fix: Bug in getting string length from dialog box readout.
- New "D" and "Go" programming language support.
- Update: Scintilla Lib v.4.0.2 (402).
- Fix: Break criteria for "replace all in range".
- Fix: Issues found regarding zero-length matches using regex anchors, including infinite loops on replace all.
- Fix: RegEx start anchor adjustment.
- Enhance: comments with useful web links.
- Fix: Problem with regex line start and replacements at line end.
- Move position after replacement (EditReplace()).
- Refactoring of "Replace All" methods.
- Split C++ Keywords in two parts (1st: standard keywords, 2nd: keywords starting with double underscore "__xxx").
- Minor polish of Readme.md.
Put changes compared to Notepad2-mod into Readme.md.
- Repair empty resource file (Notepad3.rc).
- Bookmark Enhancements
- Swap text fields in Find/Replace dialog.
- Fix: Issues regarding selection undo/redo.
- Fix: Issues regarding margins configuration.
- Added Book Mark style (Color Background and Alpha) to customize schemes...
- Replaced old bookmark pixmap (visible margin) by Scintilla's BOOKMARK marker style.
- Update: Compiler version detection.
- Feature: "Swap Strings" button in Find/Replace dialog.
- Fix: Issue #139 and #143 (remove selection undo/redo for non-text-changing operations on selections).
- Fix: issue #144 (Left arrow no longer moves to previous line).
- Fix: issue #145 (Mark Occurrences Counter is broken).
- Increase buffers for edit box in "Customize Schemes..." dialog.
- Fix: Pasting clipboard content into selection box should replace text and cancel selection then.
- Minor bug fixes and more...
--------------------------------------------------
Version 2.17.1023.632 (23 October 2017)
--------------------------------------------------
~ Fix: pasting clipboard content into selection box should replace text and
cancel selection then (in case of swapping clipboard, the selection is preserved).
~ Changed buffers for operating edit box in customize schemes.
~ Implemented Feature Request #51 (buffer size of file extension edit box).
~ First prottotype of VirtualSpace RectangularSelection by default (very old
behavior can be turned on by [Settings2] DenyVirtualSpaceAccess=1).
~ Added switch ([Settings2] UseOldStyleBraceMatching) to preserve old style
brace matching behavior.
~ Applied patch from Neil Hodgson (Master of Scintilla Lib - respond to
scintilla lib issue report #1976).
~ Fixed .ini paths for np3portableapps.
~ Restore wrongly discarded np3portableapps .ini files for NP3Portable,
redirecting .ini reading to correct path.
~ Documentation: Minor changes to Notepad3.txt.
~ Documentation: doc/Notepad3.txt - add description of [Section2] .ini settings
(mostly taken from orig. Notepad2 FAQs).
~ Remove settings for "Favorites" directory -> NP3 uses then users system
default folder (%USERPROFILE%\Favorites).
~ Default to modern displays settings, using Scintilla's new technology
: SciDirectWriteTech=1, SciFontQuality=3
~ Settings [Section2] (cannot be set via GUI) add all possible names and
default values, if applicable.
~ License.txt: switch to UTF-8 encoding.
~ Feature: Show warning before loading file with unknown (custom schemes) file
name extension.
~ Add code snippet (activation only prepare for future extensions).
~ Fix: Crash in Favorites management.
~ Small code refactoring (replacing deprecated methods).
--------------------------------------------------
Version 2.17.1016.610 (16 October 2017)
--------------------------------------------------
~ File History Dlg: rename button "Remove" -> "Discard"
(discard selected item from file history list).
~ Added remove button for list items.
~ Checkbox for "preserve caret position" settings.
~ Removed unnecessary build artifacts from np3portable.
~ Minor bugfixes for session feature
(file history: remember caret pos and encoding).
--------------------------------------------------
Version 2 Build 605 (15 October 2017)
--------------------------------------------------
~ Fix: Crash on accessing UndoRedo structure while NP3 instance has
not been initialized completely (.LOG file opening bug).
--------------------------------------------------
Version 2 Build 600 (15 October 2017)
--------------------------------------------------
~ Fix: Virtual space access: column indicator.
~ Fix: Customize Schemes... Font... selection: bold/italic now detected
(bold: if selection >= FW_SEMIBOLD)
--------------------------------------------------
Version 2 Build 583 (11 October 2017)
--------------------------------------------------
~ Fix: syntax error on exit script.
~ Cleanup AHK testing script, add test artifacts.
~ Fix: Try to retrieve correct file version for Notepad3Portable creator.
~ Fix: StatusBar Col display is not correct in case of Virtual Space Access.
~ Generalized internal multi-byte codepage definitions (code cleanup).
~ AHK test script for NP3 GUI tests.
~ Fix: locale / language independant version patching batch for Notepad3Portable
~ Fix: version patching for Notepad3 PortableApps build batch.
~ Fix: Recode to ANSI (in case of Chinese ANSI code-page)
--------------------------------------------------
Version 2 Build 568 (8 October 2017)
--------------------------------------------------
~ Prettier Browse Icon.
~ Fix: Reverting "reload as UTF-8 not work bugfix".
~ Fix: Texture glitch on "Browse" button.
~ Updated the Run Dialog icon.
~ Fix: Binary directory to build portable app.
~ Code comment for completeness.
~ Fix: In-text encoding (convert encoding).
~ Fix: minor StatusBar string corrections.
~ StatusBar information enhancements.
~ Fix: Support pasting position at virtual space.
~ Fix: Move caret to convenient position after pasting clipboard
(no current selection).
~ Fix: Virtual space navigation and rectangular selection (minor issues)
(allow "Virtual Space Rectangular Selection"
also allows moving Caret into virtual space (beyond line end))
~ Fix: Copy/Cut & Paste of current line (in case of no selection -
Visual Studio behavior - using SCI's MSDEVLineSelect).
~ Enhanced clipboard recoding detection.
~ Fix: Bug in code-page related text conversion.
--------------------------------------------------
Version 2 Build 548 (3 October 2017)
--------------------------------------------------
~ Fix: Made corrections to build 505 change log (spelling, grammar, etc).
~ Fix: FILE status becomes [MODIFIED] when doing CONTROL+A to select ALL.
~ Fix: Paste from clipboard to ANSI code page:
unnecessary switching encoding to UTF-8.
~ Fix: Undo/Redo of virtual space selection rectangle not correct.
~ Fix: StatusBar SelectionCount (Sel) : count chars instead of bytes.
~ Fix: Punctuation chars for "Accelerated Word Navigation" (Settings2:
ExtendedWhiteSpaceChars= add non word chars here).
~ Fix: Do mouse wheel scrolling in editor area only.
~ Fix: DPI awareness in manifest.
~ Code cleanup
~ Fix: word delimiter in case of "Accelerated Word Navigation".
~ Correct UFT Spelling on Encoding menu.
--------------------------------------------------
Version 2 Build 505 (23 September 2017)
--------------------------------------------------
+ 1st chunk of StrSafe migration.
+ Some more StrSafe changes
+ Fix: manually edited settings (SciDirectWriteTech, SciFontQuality)
should be placed in settings section [Settings2].
+ Extended default "space char set" for "Accelerated Word Navigation" to avoid
unexpected "accelerated word navigation" behavior, space-char extension is
restricted to 7-bit ASCII char set (ignoring specified non-7-bit-ASCII chars).
+ StrSafe adaptions
+ Fixed: settings SciFontQuality have been overwritten by Scheme configuration.
(Fonts: Calibri, Cambria, Candara, Consolas, Constantia, Corbel, Segoe UI are using
'cleartype smoothing' (SC_EFF_QUALITY_LCD_OPTIMIZED) by default, if not
configured in Schema definition for Lexer)
+ Added font "Source Code Pro" to list of special fonts for cleartype smoothing.
+ Fix: undo destructive operation on selection (rectangle) does not restore
selection or preserves selection mode (extends selection on caret movement)
-> need to send SCI_CANCEL at the end of restored selection.
+ Found bug caused by StrSafe migration
(COUNTOF() for buffer size must not be used on buffer pointer)
+ migrate StrCpyN() and StrCatBuff() to corresponding StrSafe.h methods
+ Adapted lstrcpyn() calls according to StrSafe.h requirements.
+ Refactoring of "Accelerated Word Navigation" to be compliant with Scintillas
WhiteSpace and Punctuation defines.
+ "Accelerated Word Navigation" activation influences "Mark Occurrences" (whole word) if set
+ Extended: Remember selection undo / redo
+ Added undo / redo selection to more operations
+ Found Scintilla 400 method "SCI_CUT" (cut selection) broken: lost last char
replaced by SCI_COPY & SCI_CLEAR combination (for now).
+ changes to EditGetClipboardText() solved the SCI_CUT problem, so it can be
switched back from SCI_COPY & SCI_CLEAR to SCI_CUT
(byte alignment in 64-bit, i am nut sure)
+ switching Scintilla internal codepage to UTF-8 only (resp. Japanese,
Chinese and Korean DBCS) single-byte encoding is supported externally and
converted (fore and back) to UTF-8 internally, this simplifies
i.e. clipboard exchange, etc.
+ Removed support for obsolete Korean Johab (1361) codepage.
+ Fixed ConvertText() according to internal SCI codepage
+ Refactoring: Encoding handling
+ More operations for selections undo/redo.
+ Enabled "unlimited" (as in Scintilla Lib: dep. on memory and INT_MAX)
undo / redo selection history using utarray from uthash header library
(https://troydhanson.github.io/uthash/index.html)
+ Moved crypto readme to doc dir
+ remove internal codepage support for Chinese, Japan, Korean DBCS use
generalized UTF-8 codepage instead
(conversions do not work as expected within scintilla lib)
- Dropping Windows XP support , using compiler toolset vc141 Win SDK 10.0.
(current VC++ redistributable needed?)
+ Replaced lstrcmp() and lstrcmpi() by StrSafe (helper.h defined) methods.
+ Relaunch elevated keeping current changes in a buffer.
+ Fixed some problems for feature "relaunch elevated preserve changes".
+ First AppVeyor config
+ Remember window position in case of "relaunch elevated".
+ Fixed memory initialization problem during InitInstance()
+ Enhanced consistency between toolbar (save button) and titlebar (modified marker)
+ "Relaunch elevated": use current .ini-file instead of new user's (Admin's) .ini
+ Cleanup tmp filebuffer, if elevation has been rejected.
+ Fixed crash in case of wrong Encoding (detection)
+ Changed version display on Help/About.
+ New Powershell script to patch version numbers
+ appveyor.yml using same powershell commands to patch version
- Remove FindReplaceDlg handle declared as external from compilation unit
Edit.c - not really needed here. (externals (handles / pointers) seemed to
be a problem on module init instance time in 64-bit)
+ Fixed: Open find dialog the first time (new NP3 instance) while
clipboard is empty, NP3 crashes (try to LocalFree() static allocated memory)
+ Fixed: RegExpr "Find previous" corrected (find mode "left to right" has been
used, which has not the intended behavior).
+ Updated Compiler Info.
+ Added build.txt (and .ps1 changes) for Local Build Version patching
(common AppVeyor/Local script).
+ Fixed issue "Convert to Title Case" while selected text is all upper case.
+ Fixed broken "Complete Word" feature (Ctrl+Enter/Return).
+ Changed accelerator key for feature "Complete Word" from Ctrl+Enter to Ctrl+Alt+Enter.
+ Added feature "Insert New (empty) Line above current line Ctrl+Enter (as in VisualStudio).
+ Code cleanup
+ Added new Settings "Virtual Space on Rectangular Selection" used to select.
rectangle not delimited by line endings (but including virtual space).
+ Readme.txt Updated. (Thanks Will)
--------------------------------------------------
Version 2 Build 450 (18 August 2017)
--------------------------------------------------
- Fixed "file modified" flag not set on Ctrl+X actions
- Fixed re-enable accidentally disabled toolbar buttons (find, replace, clear, toggle-folds, file-launch)
- Fixed remove obsolete settings entry, never read (SciDrawTechnology)
- Fixed crash: not a good idea to make char array (char*) external to other compilation unit.
- Fixed wrong shortcut in menu on word navigation (Ctrl+LEFT/RIGHT)
- Renamed encoding menu item: "Recode No FileVars" (Alt+F8) =>> "Ignore Encoding Tags" (Alt-F8)
- UTF-8 encoding of License.txt (fixing: different ANSI codepage for copyright sign)
- Update to Scintilla 400 (early bird) pre-release.
--------------------------------------------------
Version 2 Build 440 (16 August 2017)
--------------------------------------------------
- Fixed unicode conversion error fixed in .rc
- Added Del/Back Selection preserving on Undo/Redo
- Fix: restore "rectangular" selection too on "Selection Cut" Undo/Redo
- Cut Selection (Ctrl-X) will preserve Selection on Undo/Redo
- Fixed Toolbar Button "Save" has to be enabled on encoding changes
- Fixed bug on path compare for editing own settings file (.ini) to disable "save settings" menu entries (should be case insensitive)
- Zero initializing string buffers (hardening code while searching an issue regarding "Recent Files" list in "relative paths" mode
- Added Enabling/Disabling Save-Button in toolbar according to file modified indicator.
- Menu integration of "hidden" commands
- Fixing and cleanup build for Notepad3Portable
--------------------------------------------------
Version 2 Build 432 (10 August 2017)
--------------------------------------------------
- Fixed issue #35 (preserve FileExtension settings while switching Styles / 2nd Default Scheme).
- Enlarge some string buffers for dialogs.
- Fixed np3encrypt vcxproj files.
- Added command line option ( /v ) to print file immediately and quit (like Window's original notepad.exe /p option).
- Added printing additional option /v dialog to allow access to the Printer dialog (as on Menu: Print... ).
- Initial version of PortableApps.com Launche and Installer build.
- Build environment, to create Notepad3Portable (according to Portableapps.com) (x86/x64).
--------------------------------------------------
Version 2 Build 422 (10 August 2017)
--------------------------------------------------
- Cleanup manifest handling
- Minipath DPI aware false
--------------------------------------------------
Version 2 Build 411 (9 August 2017)
--------------------------------------------------
- Reintroduce HighDPI toolbar
- Fixed nullptr access while pressing "favorites" toolbar button on 'virgin' Notepad3 ToolBar
- Added VS2017 .vcproj files and adapted Compiler Tool Set accordingly
- Integrate Scintillas DirectWrite technology
- Minor cleanups reported by CppCheck v.1.79
- Added VisualStudio's Editor Behaviour for Ctrl-C and Ctrl-X
- Fixed broken Ctrl-Q (toggle line comments)
--------------------------------------------------
Version 2 Build 398 (13 June 2017)
--------------------------------------------------
- Updated Scintilla to version 3.7.5
- Don't use 2nd default syntax scheme by default. (Issue #21)
- Added Microsoft Visual C++ 2017 (vc141) support.
- Bigger Toolbar Buttons (24px). Should be big enough now. (Issue #21)
--------------------------------------------------
Version 1 Build 388 (06 January 2017)
--------------------------------------------------
- Updated Scintilla to version 3.7.2
- MiniPath now works on Windows XP
--------------------------------------------------
Version 1 Build 386 (08 December 2016)
--------------------------------------------------
- Crypto Module: code cleanup
- Crypto Module: Replaced LocalAlloc/GlobalAlloc by HeapAlloc methods.
- Integration of DeelX RegExpr engine (http://www.regexlab.com/en/deelx/)
- Update to Scintilla 371 (NP2 adaption due to deprecated data types).
- clean-code Solution (instead of "magic numbers").
- Fixed block selecting cause crash.
- Added RaPeHoff to the contributors list.
--------------------------------------------------
Version 1 Build 350 (05 September 2016)
--------------------------------------------------
- Updated HTML Keywords
- Updated Scintilla to version 3.6.7
- Added Microsoft Visual C++ Update 3 version number
--------------------------------------------------
Version 1 Build 330 (24 June 2016)
--------------------------------------------------
- Fixed Compiler warnings
- Updated to Scintilla 3.6.6
- Updated Apache Keywords for version 2.4
- Removed Visual Studio 2010 to 2013 Support
- Added Visual Studio 2015 Update 2 version number
- Added Support for Inno Setup 5.5.9
- Fixed Favorites Function
- Updated Rizonesoft Versions Program
- Implemented a new versioning scheme

View File

@ -0,0 +1,35 @@
Notepad3 and MiniPath Copyright © 2008-2016 Rizonesoft, All rights reserved.
https://www.rizonesoft.com
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
3. Neither the name of Florian Balmer nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
==================================================
License for Scintilla and SciTE
==================================================
Copyright 1998-2002 by Neil Hodgson <neilh@scintilla.org>
All Rights Reserved
Permission to use, copy, modify, and distribute this software and its documentation for any purpose and without fee is hereby granted, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation.
NEIL HODGSON DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL NEIL HODGSON BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGESWHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
==================================================
License for Onigmo (Oniguruma-mod) RegEx Engine
==================================================
Copyright (c) 2002-2009 K.Kosako <sndgk393 AT ybb DOT ne DOT jp>
Copyright (c) 2011-2014 K.Takata <kentkt AT csc DOT jp>
All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Binary file not shown.

View File

@ -0,0 +1,68 @@
================================================================================
= =
= Notepad3 - light-weight Scintilla-based text editor for Windows =
= =
= (c) Rizonesoft 2008-2018 =
= https://www.rizonesoft.com =
= =
================================================================================
Description
--------------------------------------------------------------------------------
Notepad like text editor based on the Scintilla source code. Notepad3 based on
code from Notepad2 and MiniPath on code from metapath.
--------------------------------------------------------------------------------
Changes compared to Flo's official Notepad2 (made in Notepad2-mod):
--------------------------------------------------------------------------------
- Code folding
- Support for bookmarks
- Option to mark all occurrences of a word
- Updated Scintilla component
- Word auto-completion
- Syntax highlighting support for AutoHotkey (AHK), AutoIt3, AviSynth, Bash,
CMake, CoffeeScript, Inno Setup, LaTeX, Lua, Markdown, NSIS, Ruby, Tcl,
YAML and VHDL scripts.
- Improved support for NFO ANSI art
- Other various minor changes and tweaks
--------------------------------------------------------------------------------
Changes compared to the Notepad2-mod fork:
--------------------------------------------------------------------------------
- Additional syntax highlighting support for Awk, D, golang, MATLAB
- State of the art Regular Expression search engine (Onigmu)
- New toolbar icons based on Yusuke Kamiyaman's Fugue Icons
(Purchased by Rizonesoft)
- Hyperlink Hotspot highlighting
(single click Open in Browser (Ctrl) / Load in Editor (Alt))
- New program icon and other small cosmetic changes
- In-App support for AES-256 Rijndael encryption/decryption of files.
(incl. external commandline tool for batch processing)
- Virtual Space rectangular selection box (Alt-Key down)
- High-DPI awareness, including high definition toolbar icons
- Undo/Redo preserves selection
- File History preserves Caret position (optional)
and remembers encoding of file
- Accelerated word navigation
- Preserve caret position of items in file history
- Count occurrences of a marked selection or word
- Count and Mark occurrences of matching search/find expression
- Visual Studio style copy/paste current line (no selection)
- Insert GUIDs
- Dropped support for Windows XP version
- Other various minor changes, tweaks and bugfixes
--------------------------------------------------------------------------------
Supported Operating Systems:
--------------------------------------------------------------------------------
Windows 7, 8, 8.1 and 10 both 32-bit and 64-bit
--------------------------------------------------------------------------------
Contributors
--------------------------------------------------------------------------------
- Rainer Kottenhoff
- Florian Balmer ( http://www.flos-freeware.ch )
- XhmikosR ( http://xhmikosr.github.io/notepad2-mod/ )
- Kai Liu ( http://code.kliu.org/misc/notepad2/ )
- RL Vision
- Aleksandar Lekov
- Bruno Barbieri

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,587 @@
==================================================
Rizonesoft Notepad3 CHANGES
==================================================
--------------------------------------------------
Version 3.18.131.862 (31 January 2018)
--------------------------------------------------
- Fix: Correct in-memory encoding/re-coding of text.
- Fix: Join Lines (preserve paragraphs) issue.
- New: Accelerator Key "Ctrl+Alt+J" -> Fuse Lines (:= Join Lines, line-breaks NOT replaced by Space).
- Fix: Byte counting for selection.
- Fix: Bug in joining lines algorithm.
- Fix: Alt+H should open history file access dialog not help menu (add ? to revert to known access key).
- CR: Reverting back to "?" for help menu and activation (Alt+?) key.
- CR: Accelerator Key F1 now opens Online Documentation in browser.
- Cleanup: Highlight current line stuff gathered.
- Added: Setting2 parameter to adjust "Mark Occ" and "Hyperlink" styling delay.
- Fix: Revisit usage of "Mark Occurrences" and "Hyperlink Styling" delay usage.
- Fix: Rectangular selection: (virtual empty) selection persists after clear.
- Cleanup: Customize Schemes... Style Names.
- Fixes: Performance for several modify text operations.
- Fix: Sentencecase some strings in "Customize Schemes...".
- Refactoring: Usage of undo/redo action stack.
- Fix: SpeedUp undo/redo action collections.
- Fix: Lock NotifyUpdate and TargetSelection in case of multi action redo/undo and target replacements.
- Fix: Handling of document modified flag in case of NotifyChange bypass.
- Enhancement: Canonical initial Notepad3.ini.
- Fix: Redo/undo and jump-to behavior having an active selection.
- Refactor: set/replace selection handling.
- Fix: Wrong test on rectangular selection.
- Enhancement: add empty sections to initial settings file (.ini) to force a canonical order.
- Fix: More select and replace target issues.
- Fix: Toggle All folds behavior.
- CR: Changed inifile for Portable Apps Notepad3.
- Fix: TAB indentation handling according to predecessors (NP2).
- Fix: selection (anchor and current caret position) handling.
- Enh: Version check for Visual Studio 2017 v.15.5.5.
- Fix: "Line Comment" id noselection and current pos == indent pos.
- Fix: Initial .ini-file: unused section removed.
- Fix: Support scintilla msg: SCN_NEEDSHOWN (EXPAND folded sections if needed).
- Revert: Accelerator Key "Alt+UP/DOWN" for navigation (jump) between folded section headlines.
- Enhancement: Added Accelerator Keys: Alt+LEFT/RIGHT to FOLD/EXPAND folding section.
- Fix: Avoid some issues regarding folding, using SCI_SETAUTOMATICFOLD.
- Fix: Revert TAB + Selection action corresponding to VisualStudio's behavior.
- Fix: Sensible handling of "Block -> (Un)Indent" for different kinds of selections.
- Fix: Font selection dialog does not reset some styles correctly.
- Fix: Preserve selection on Line Comment toggle.
- Enhancement: Make selection block indentation similar to VisualStudio's.
- Fix: Char2Hex: Remove limit single byte selection.
--------------------------------------------------
Version 3.18.113.828 (13 January 2018)
--------------------------------------------------
- Performance: Redraw indicator ranges (Mark Occurrences) only if needed - avoiding recursive SCN_UPDATEUI notifications.
- Mark Occurrences: force position progress in case of zero-length matches.
- Performance: Mark Occurrence triggers enhancements.
- Convenience: Re-introduce "max mark occurrence counter" to avoid lazy UI.
(Set .ini section [Settings2] MarkOccurrencesMaxCount=-1 for unlimited (MAX_INT)).
- Fix: Correct counting of found matches.
- Fix: Broken find/replace (regex) on groups.
- Performance: Tuning delay parameter of "Mark Occurrences" (instantly).
- Performance: Remove test for set already, if indicator does not change.
- Fixing several Mark Occurrences (instantly) issues.
- Fix: Some customizing scheme issues (relative font size hierarchy).
- Fix: Document modified flag not set properly (title, toolbar & statusbar only).
- Fix: Renaming menu entries Edit: "Clear" -> "Delete"
- Enhancement: structured "Mark Occurrences" menu hierarchy.
- Fix: Menu "Mark Occurrences" whole word matching: add check indicator if one of word matching options (selected/current) is used.
- Change: Menu "Mark Occurrences" whole word matching: radio button behavior.
- Fixes Regarding Scheme customizing (rel. size) and View Menu (Mark Occ.).
- Fix: Regex replacement on look-ahead assertion.
- Fix: relative font sizing of non-default-style entries in custom schemes.
- Fix: Font selection box title display.
- Fix: clean coding for "relative sizing hierarchy".
- Feature: "Customize Schemes..." UI change to represent "relative sizing hierarchy".
- Fix: Update view on style change in "Customize schemes..."
- Fix: Bug regarding "Reset" button in "Customizing Schemes..." dialog.
- Fix: Bug in detect and style Hyperlink Hotspot.
- Feature: Initial version of Nim Lexer. Added Scintilla project and header for Nim lexer.
- Performance: Non visible styling during idle time.
- Performance: Cache page instead of line only.
- Change: Option "after visible" for styling in background (idle time).
- Update: Compiler version 191225834 (VS2017 V.15.5.3).
- Fix: Loosing state of "Transform Backslashes" while switching regex/wildcard search.
- Fix: Block "mark occurrences" event on transaction pair: (SCI_TARGETFROMSELECTIO, SCI_REPLACETARGET).
- Fix: protect SCI target transactions by a guard to break recursion of Mark Occurrences caused by ChangeNotification() events.
- Fix: Handle "2nd Default Styles" as separate standard (2nd) lexer module.
- Fix: Handling initial 1st or 2nd default style in case of "Default Text", shown on int "Customize Schemes...".
- Fix: Crash on navigation between schemes beyond start/end of tree view.
- Fix: Disable (using 1st Default Style) "Associated filename extensions" for "2nd Default Style".
- Fix: Clone associated filename extension list of Default Style (for 2nd Default Style).
- Enhancement: status bar information about usage of 2nd Default Style.
- Change: View "2nd Default Style" as (dbl-clickable) status bar item.
- Cleanup: NimLexer = NimrodLexer -> rely on Scintilla distribution for Nim(rod) lexer.
- Change: Word Wrap mode from WORD to SPACE to avoid wrapping at style change edges.
- Fix: move word wrap start symbol to margin (new WW mode SPACE (instead of WORD))".
- Fix: Mark Occurrences timeout on Find/Replace.
- Fix: Optimized status bar partitioning.
- Fix: Revert naming for "2nd Default Text".
- Clean Code: Reasonable assumption for memory allocation of style handling (backup, save, load).
- Tuning: Statusbar Partitioning.
- Fix: Bug on switching between 1st and 2nd standard lexers.
- Fix: Selection of 1st or 2nd standard lexer (Default Text) based on Use2ndStandard flag.
- Change: Onigmo RegEx syntax dialect.
- Change: Onigmo regex engine: use PERL 5.10 syntax + enable "\<" and "\>" word boundary matching.
- Fix: Onigmo regex engine PERL syntax: supporting named groups referencing in replacement text.
- Enhancement: Statusbar: Count number of bytes in current encoding.
- Change: Replace Windows Notepad Installer version only.
- Change: Executables not compressed with UPX.
--------------------------------------------------
Version 3.18.105.802 (5 January 2018)
--------------------------------------------------
- Fix: Custom toolbar images ini settings added.
- Fix: Add hints for free text style properties in "Customize Schemes...".
- Fix: Test version numbers for month Jan - Sep (mono digit).
- Fix: Redundant echo of expected version string.
- Fix: Toggle line comments were placed at line end.
- Feature: (Mark Occurences) instant word highligting.
- Added: Switch to draw all occurrences in visible area only.
- Opt: Delayed mark all occurrences for better UI response.
- Enhancement: Async mark all occurrences via timer (UI response).
- Fix: "Match Current Word" should not highlight partial word matches in other lines.
- Added: Hyperlink Hotspot Style updates on UpdateUI event (visible area only)
- Fix: Fetching wrong visible document line number in case of hidden or wrapped lines.
- Fix: Ignoring queued timer event, if timer has been killed.
- Performance: Optimizing timer handling to avoid multiple calls of complex methods.
- Fix: use current lexer's default text font size as base font size for relative sizing of other styles.
- Performance: Fixed some issuses, which eat up CPU.
- Fix: mark occurrences counter not updated in time.
- Minor performance enhancements.
--------------------------------------------------
Version 3.17.1228.783 (28 December 2017)
--------------------------------------------------
- Fix: Update coloring on window message WM_SYSCOLORCHANGE, including Hyperlink hotspot colors.
- Feature: Java sourcecode to compile a class which acts as a standalone tool for decrypting Notepad3's encrypted files.
- Fix: Crash on empty password for encryption tool.
- Added batch script to bulk encrypt files of given directory with encryption tool.
- Fix: Existing bash test script for encryption tool.
- Fix: Onigmo regex: . matches any charakter and does not stop at line breaks.
- Fix: Onigmo regex: remove extend mode, where # is used as line rest comment.
- Feature: Regex - "Dot matches all" vs. "Dot does not match line-breaks" switchable by option in find/replace dialog.
- Feature: inticator style used for matching braces too.
- Fix: Change hard coded default values for matching brace styling according to new style (indicator).
- Fix: font styling of Hyperlinks are not reset to default if feature is switched off.
--------------------------------------------------
Version 3.17.1223.778 (23 December 2017)
--------------------------------------------------
- Fix: Hyperlink feature related delay of font changing.
- Added more triggers for Hyperlink style updated.
- Refactoring: Cleanup trigger points for URL Hotspot styling.
- Fix: Last hyperlink was restyled to lexer's style (not desired hotspot style).
- Feature: Replaced DeelX with Onigmo regular expression engine.
- Fix: Default lexer style changed a litle bit after first UI update.
- Fix: Redraw bug in case of SCI_COLOURISE.
- Fix: Removed some Hyperlink dection triggerpoints, which might be collide with SEARCHINTARGET and REPLACETARGET race conditions (seperate threads).
- Fix: Removed unneccessary Hyperlink trigger-point from InitInstance().
- Fix: Performance issue while pasting long text from clipboard.
- Fix: Local memory freeing.
- Fix: Complete set of font weights for syntax scheme.
- Fix: Prepare fixing race-condition search/replace target vs. selection.
- Fix: Set target range only for search/replace and not for paste after modifying selection (race-condition search/replace target vs. selection).
- Fix: Transform backslashes for regex find/replace.
- Feature: Added Scintilla's indicator styles to scheme config for "Mark Occurences".
- Fix: Out of range fallback for indicator string retrieval.
- Fix: Issue regarding TransformBackslash handler (regex vs. std & find vs. replace).
- Fix: Replace dialog: Resize regex text box to not overlay other control.
- Fix: Enable more hyperlink styling trigger points, since "replace target" race-conditions have been fixed and fast regex engine (Onigmo) is integrated.
- Fix: Issue regarding applying lexer style while hyperlink feature is active.
- Fix: Reverting to buffered draw, until screen flickering issues are clarified.
- Fix: Onigmo regex engine handling string/line end meta char '$' independent of EOL mode.
- Fix: Replace-all with look-behind assertion.
- Update: uthash to version 2.0.2.
- Fix: Onigmo word boundaries issues (incl. "double" escaped esc) (not solved yet: multi escaped esc).
- Fix: Customize schemes issues (now Default Font: is applied to "Default Text" and "Current Lexers" Default Font).
- Fix: Allow (horiz.)TAB chars in selection copied to find/replace dialog search box on pop up time (Ctrl+F).
- Fix: Setting "Default Font..." will clear current lexer's default font - inherits global default font then.
- Fix: "Default Font..." configuration issue.
- Minor fixes for Onigmo interface class.
- Fix: "Default Font..." add check for current scheme is not default text already.
- Enhanced style copy method.
- Refactoring: Style Select Font dialog.
- Fix: Schemes in alphabetical order (displayed names).
- Feature: Dual configuration of Default Text Font or Current Scheme's Default Text Font.
- Fix: Bug on font selection - global vs. current scheme.
- Fix: More bugs regarding standard lexer handling.
- Fix: Using WYSIWYG fonts (screen vs. printer).
- Added Online Documentation menu item.
- Fix: Inconsistencies: cut,copy,replace,... mainmenu and context menu vs. toolbar.
- Fix: New Font selection feature: 2nd Default Font not supported completely.
- Fix: setting/changing encryption pass-phrase did not trigger "file modified" flag.
- Fix: Problem with 1st vs. 2nd Default Text Scheme selection.
- Fix: Inconsistency 1st vs. 2nd Default Text Font selection.
- Fix: Use Standard Lexer on new (empty) files.
- General bug fixes and code cleanup.
--------------------------------------------------
Version 3.17.1210.729 (10 December 2017)
--------------------------------------------------
- Fix: flashing of Search text-box of find/replace dialog in case of Win7 Classic theme
- [Settings2] section default values (and comment out if not changed) of initially distributed Notepad3.ini
- Feature: Added Awk Script syntax highlighting (Python lexer based)
- Fix: Edit/Special : URL encoding/decoding for full UTF8 (non ASCII) characters.
- Refactoring: Platform independent URL decoding.
- Fix: Gibberish output if URL decoded again (2nd time).
- Fix: URL decoding, if encoding has "%#nnn" formatted ASCII chars.
- Fix: HTML character encoding starts with ampersand, not percent char.
- Fix: URL encoding: Added flag URL_ESCAPE_PERCENT for UrlEscape().
- Feature: URL Hotspot (first version).
- Fix: Added version info for VS2017 v.15.5
- Feature: Enhanced URL Hotspot highlighting.
- Refactoring and enhancements for Hyperlink Hotspot feature.
- Fix: Consistent texts for "Hyperlink Hotspots".
- Feature: open Hyperlink in NP3 (if applicable: "file://...").
- Added some more places, where Hotspot style redrawing does not slow down responsiveness.
- Fix: Hyperlink Hotspots turned off by default. (not stable enough to force the feature).
- Fix: Normal setup can now clean replace Windows Notepad registry keys.
- Feature: Update notification in Notepad3 setup.
- Code Cleanup
--------------------------------------------------
Version 3.17.1202.715 (2 December 2017)
--------------------------------------------------
- #191 Revert to Scintilla's old (default) font rendering technology. Modern DirectWrite available at [Settings2] SciDirectWriteTech=1
- Fix: Removed unused mouse wheel message interception.
- Fix: Disabling buffered draw. (Scintilla: "Current platforms perform window buffering so it is almost always better for this option to be turned off.")
- Fix: Font Smoothing: [Settings2] SciFontQuality=n has no effect on some special fonts (preserving old behavior if not defined).
- Workaround: #192 Drag n' drop from 32-bit process on Notepad3 x64 window
- Renaming of drag n' drop methods.
- Fix: Adapt text for messagebox: no valid drop-file.
- Fix: issue regarding Accelerator keys for find/replace dialog.
- Feature: Additionally show full path to current directory in windows title.
- Fix: Minipath full path display in titlebar (no dbl-slash in case of drive letter only).
- Fix: Mark occurrences: Outline frame of indicator box shouls have same aplpha channel color (configurable alpha2:nnn).
- Change request: move "Mark Occurrences" check box from menu to find/replace dialog options.
- Fix: Find/replace dialog: mark occurrences: use standard save/restore settings behavior.
--------------------------------------------------
Version 3.17.1124.690 (24 November 2017)
--------------------------------------------------
- Fix: Revert to Scintilla's default mouse down and mouse wheel capture mode.
- Fix: "Mark All Occurrences" setting of find/replace dialog should only be persisted, if "Save Settings on Exit" is enabled.
- Fix: UpdateLineNumberWidth() triggers cleanup.
- Adapt: C/C++ styles - keyword vs. typedefs.
- Fix: Issue with update of line number margin width.
- Fix: Transform backslash issues.
Fix: C/C++ keywords and types.
Timer call for mark occurrences during find/replace.
- Fix: lookaround regex (DeelX) matches were not replaced.
- Optimized DeelX regex interface.
- Fix: Issue regarding find/replace empty-string.
- Fix: Adapt DeelX RE interface according to enhanced find/replace dialog.
- Fix: Issue #173 - regex/wildcard search: replacement string not used if "Check All Occurrences" is active.
- Changed SDK version target to 10.0.16299.0
- Feature: find/replace mark occurrences.
- Feature: Indicator in find text box, if search string is matched in document.
- Feature: validate regexpr.
- Fix: Recoding minipath's version.h to UTF-8 (Sig), because it contains codepage dependant copyright sign.
- Fix: Corrections to .vcproj settings inconsistencies (reported in release build process).
- Feature: Auto remember bookmarks in recent file history.
- Fix: undo/redo issues (if no selection choosen).
- Fix: Consecutive DEL/BACKSP undo/redo broken (wrapped by unconditional selection undo/redo).
- Feature: Mark occurrences coloring is now configurable via "Customize Schemes...".
- Fix: Issues found by static code analysis.
- Minor fix for DeelX RegEx engine.
- Major refactoring of find/replace regex evaluation.
- Fix: Bug in getting string length from dialog box readout.
- New "D" and "Go" programming language support.
- Update: Scintilla Lib v.4.0.2 (402).
- Fix: Break criteria for "replace all in range".
- Fix: Issues found regarding zero-length matches using regex anchors, including infinite loops on replace all.
- Fix: RegEx start anchor adjustment.
- Enhance: comments with useful web links.
- Fix: Problem with regex line start and replacements at line end.
- Move position after replacement (EditReplace()).
- Refactoring of "Replace All" methods.
- Split C++ Keywords in two parts (1st: standard keywords, 2nd: keywords starting with double underscore "__xxx").
- Minor polish of Readme.md.
Put changes compared to Notepad2-mod into Readme.md.
- Repair empty resource file (Notepad3.rc).
- Bookmark Enhancements
- Swap text fields in Find/Replace dialog.
- Fix: Issues regarding selection undo/redo.
- Fix: Issues regarding margins configuration.
- Added Book Mark style (Color Background and Alpha) to customize schemes...
- Replaced old bookmark pixmap (visible margin) by Scintilla's BOOKMARK marker style.
- Update: Compiler version detection.
- Feature: "Swap Strings" button in Find/Replace dialog.
- Fix: Issue #139 and #143 (remove selection undo/redo for non-text-changing operations on selections).
- Fix: issue #144 (Left arrow no longer moves to previous line).
- Fix: issue #145 (Mark Occurrences Counter is broken).
- Increase buffers for edit box in "Customize Schemes..." dialog.
- Fix: Pasting clipboard content into selection box should replace text and cancel selection then.
- Minor bug fixes and more...
--------------------------------------------------
Version 2.17.1023.632 (23 October 2017)
--------------------------------------------------
~ Fix: pasting clipboard content into selection box should replace text and
cancel selection then (in case of swapping clipboard, the selection is preserved).
~ Changed buffers for operating edit box in customize schemes.
~ Implemented Feature Request #51 (buffer size of file extension edit box).
~ First prottotype of VirtualSpace RectangularSelection by default (very old
behavior can be turned on by [Settings2] DenyVirtualSpaceAccess=1).
~ Added switch ([Settings2] UseOldStyleBraceMatching) to preserve old style
brace matching behavior.
~ Applied patch from Neil Hodgson (Master of Scintilla Lib - respond to
scintilla lib issue report #1976).
~ Fixed .ini paths for np3portableapps.
~ Restore wrongly discarded np3portableapps .ini files for NP3Portable,
redirecting .ini reading to correct path.
~ Documentation: Minor changes to Notepad3.txt.
~ Documentation: doc/Notepad3.txt - add description of [Section2] .ini settings
(mostly taken from orig. Notepad2 FAQs).
~ Remove settings for "Favorites" directory -> NP3 uses then users system
default folder (%USERPROFILE%\Favorites).
~ Default to modern displays settings, using Scintilla's new technology
: SciDirectWriteTech=1, SciFontQuality=3
~ Settings [Section2] (cannot be set via GUI) add all possible names and
default values, if applicable.
~ License.txt: switch to UTF-8 encoding.
~ Feature: Show warning before loading file with unknown (custom schemes) file
name extension.
~ Add code snippet (activation only prepare for future extensions).
~ Fix: Crash in Favorites management.
~ Small code refactoring (replacing deprecated methods).
--------------------------------------------------
Version 2.17.1016.610 (16 October 2017)
--------------------------------------------------
~ File History Dlg: rename button "Remove" -> "Discard"
(discard selected item from file history list).
~ Added remove button for list items.
~ Checkbox for "preserve caret position" settings.
~ Removed unnecessary build artifacts from np3portable.
~ Minor bugfixes for session feature
(file history: remember caret pos and encoding).
--------------------------------------------------
Version 2 Build 605 (15 October 2017)
--------------------------------------------------
~ Fix: Crash on accessing UndoRedo structure while NP3 instance has
not been initialized completely (.LOG file opening bug).
--------------------------------------------------
Version 2 Build 600 (15 October 2017)
--------------------------------------------------
~ Fix: Virtual space access: column indicator.
~ Fix: Customize Schemes... Font... selection: bold/italic now detected
(bold: if selection >= FW_SEMIBOLD)
--------------------------------------------------
Version 2 Build 583 (11 October 2017)
--------------------------------------------------
~ Fix: syntax error on exit script.
~ Cleanup AHK testing script, add test artifacts.
~ Fix: Try to retrieve correct file version for Notepad3Portable creator.
~ Fix: StatusBar Col display is not correct in case of Virtual Space Access.
~ Generalized internal multi-byte codepage definitions (code cleanup).
~ AHK test script for NP3 GUI tests.
~ Fix: locale / language independant version patching batch for Notepad3Portable
~ Fix: version patching for Notepad3 PortableApps build batch.
~ Fix: Recode to ANSI (in case of Chinese ANSI code-page)
--------------------------------------------------
Version 2 Build 568 (8 October 2017)
--------------------------------------------------
~ Prettier Browse Icon.
~ Fix: Reverting "reload as UTF-8 not work bugfix".
~ Fix: Texture glitch on "Browse" button.
~ Updated the Run Dialog icon.
~ Fix: Binary directory to build portable app.
~ Code comment for completeness.
~ Fix: In-text encoding (convert encoding).
~ Fix: minor StatusBar string corrections.
~ StatusBar information enhancements.
~ Fix: Support pasting position at virtual space.
~ Fix: Move caret to convenient position after pasting clipboard
(no current selection).
~ Fix: Virtual space navigation and rectangular selection (minor issues)
(allow "Virtual Space Rectangular Selection"
also allows moving Caret into virtual space (beyond line end))
~ Fix: Copy/Cut & Paste of current line (in case of no selection -
Visual Studio behavior - using SCI's MSDEVLineSelect).
~ Enhanced clipboard recoding detection.
~ Fix: Bug in code-page related text conversion.
--------------------------------------------------
Version 2 Build 548 (3 October 2017)
--------------------------------------------------
~ Fix: Made corrections to build 505 change log (spelling, grammar, etc).
~ Fix: FILE status becomes [MODIFIED] when doing CONTROL+A to select ALL.
~ Fix: Paste from clipboard to ANSI code page:
unnecessary switching encoding to UTF-8.
~ Fix: Undo/Redo of virtual space selection rectangle not correct.
~ Fix: StatusBar SelectionCount (Sel) : count chars instead of bytes.
~ Fix: Punctuation chars for "Accelerated Word Navigation" (Settings2:
ExtendedWhiteSpaceChars= add non word chars here).
~ Fix: Do mouse wheel scrolling in editor area only.
~ Fix: DPI awareness in manifest.
~ Code cleanup
~ Fix: word delimiter in case of "Accelerated Word Navigation".
~ Correct UFT Spelling on Encoding menu.
--------------------------------------------------
Version 2 Build 505 (23 September 2017)
--------------------------------------------------
+ 1st chunk of StrSafe migration.
+ Some more StrSafe changes
+ Fix: manually edited settings (SciDirectWriteTech, SciFontQuality)
should be placed in settings section [Settings2].
+ Extended default "space char set" for "Accelerated Word Navigation" to avoid
unexpected "accelerated word navigation" behavior, space-char extension is
restricted to 7-bit ASCII char set (ignoring specified non-7-bit-ASCII chars).
+ StrSafe adaptions
+ Fixed: settings SciFontQuality have been overwritten by Scheme configuration.
(Fonts: Calibri, Cambria, Candara, Consolas, Constantia, Corbel, Segoe UI are using
'cleartype smoothing' (SC_EFF_QUALITY_LCD_OPTIMIZED) by default, if not
configured in Schema definition for Lexer)
+ Added font "Source Code Pro" to list of special fonts for cleartype smoothing.
+ Fix: undo destructive operation on selection (rectangle) does not restore
selection or preserves selection mode (extends selection on caret movement)
-> need to send SCI_CANCEL at the end of restored selection.
+ Found bug caused by StrSafe migration
(COUNTOF() for buffer size must not be used on buffer pointer)
+ migrate StrCpyN() and StrCatBuff() to corresponding StrSafe.h methods
+ Adapted lstrcpyn() calls according to StrSafe.h requirements.
+ Refactoring of "Accelerated Word Navigation" to be compliant with Scintillas
WhiteSpace and Punctuation defines.
+ "Accelerated Word Navigation" activation influences "Mark Occurrences" (whole word) if set
+ Extended: Remember selection undo / redo
+ Added undo / redo selection to more operations
+ Found Scintilla 400 method "SCI_CUT" (cut selection) broken: lost last char
replaced by SCI_COPY & SCI_CLEAR combination (for now).
+ changes to EditGetClipboardText() solved the SCI_CUT problem, so it can be
switched back from SCI_COPY & SCI_CLEAR to SCI_CUT
(byte alignment in 64-bit, i am nut sure)
+ switching Scintilla internal codepage to UTF-8 only (resp. Japanese,
Chinese and Korean DBCS) single-byte encoding is supported externally and
converted (fore and back) to UTF-8 internally, this simplifies
i.e. clipboard exchange, etc.
+ Removed support for obsolete Korean Johab (1361) codepage.
+ Fixed ConvertText() according to internal SCI codepage
+ Refactoring: Encoding handling
+ More operations for selections undo/redo.
+ Enabled "unlimited" (as in Scintilla Lib: dep. on memory and INT_MAX)
undo / redo selection history using utarray from uthash header library
(https://troydhanson.github.io/uthash/index.html)
+ Moved crypto readme to doc dir
+ remove internal codepage support for Chinese, Japan, Korean DBCS use
generalized UTF-8 codepage instead
(conversions do not work as expected within scintilla lib)
- Dropping Windows XP support , using compiler toolset vc141 Win SDK 10.0.
(current VC++ redistributable needed?)
+ Replaced lstrcmp() and lstrcmpi() by StrSafe (helper.h defined) methods.
+ Relaunch elevated keeping current changes in a buffer.
+ Fixed some problems for feature "relaunch elevated preserve changes".
+ First AppVeyor config
+ Remember window position in case of "relaunch elevated".
+ Fixed memory initialization problem during InitInstance()
+ Enhanced consistency between toolbar (save button) and titlebar (modified marker)
+ "Relaunch elevated": use current .ini-file instead of new user's (Admin's) .ini
+ Cleanup tmp filebuffer, if elevation has been rejected.
+ Fixed crash in case of wrong Encoding (detection)
+ Changed version display on Help/About.
+ New Powershell script to patch version numbers
+ appveyor.yml using same powershell commands to patch version
- Remove FindReplaceDlg handle declared as external from compilation unit
Edit.c - not really needed here. (externals (handles / pointers) seemed to
be a problem on module init instance time in 64-bit)
+ Fixed: Open find dialog the first time (new NP3 instance) while
clipboard is empty, NP3 crashes (try to LocalFree() static allocated memory)
+ Fixed: RegExpr "Find previous" corrected (find mode "left to right" has been
used, which has not the intended behavior).
+ Updated Compiler Info.
+ Added build.txt (and .ps1 changes) for Local Build Version patching
(common AppVeyor/Local script).
+ Fixed issue "Convert to Title Case" while selected text is all upper case.
+ Fixed broken "Complete Word" feature (Ctrl+Enter/Return).
+ Changed accelerator key for feature "Complete Word" from Ctrl+Enter to Ctrl+Alt+Enter.
+ Added feature "Insert New (empty) Line above current line Ctrl+Enter (as in VisualStudio).
+ Code cleanup
+ Added new Settings "Virtual Space on Rectangular Selection" used to select.
rectangle not delimited by line endings (but including virtual space).
+ Readme.txt Updated. (Thanks Will)
--------------------------------------------------
Version 2 Build 450 (18 August 2017)
--------------------------------------------------
- Fixed "file modified" flag not set on Ctrl+X actions
- Fixed re-enable accidentally disabled toolbar buttons (find, replace, clear, toggle-folds, file-launch)
- Fixed remove obsolete settings entry, never read (SciDrawTechnology)
- Fixed crash: not a good idea to make char array (char*) external to other compilation unit.
- Fixed wrong shortcut in menu on word navigation (Ctrl+LEFT/RIGHT)
- Renamed encoding menu item: "Recode No FileVars" (Alt+F8) =>> "Ignore Encoding Tags" (Alt-F8)
- UTF-8 encoding of License.txt (fixing: different ANSI codepage for copyright sign)
- Update to Scintilla 400 (early bird) pre-release.
--------------------------------------------------
Version 2 Build 440 (16 August 2017)
--------------------------------------------------
- Fixed unicode conversion error fixed in .rc
- Added Del/Back Selection preserving on Undo/Redo
- Fix: restore "rectangular" selection too on "Selection Cut" Undo/Redo
- Cut Selection (Ctrl-X) will preserve Selection on Undo/Redo
- Fixed Toolbar Button "Save" has to be enabled on encoding changes
- Fixed bug on path compare for editing own settings file (.ini) to disable "save settings" menu entries (should be case insensitive)
- Zero initializing string buffers (hardening code while searching an issue regarding "Recent Files" list in "relative paths" mode
- Added Enabling/Disabling Save-Button in toolbar according to file modified indicator.
- Menu integration of "hidden" commands
- Fixing and cleanup build for Notepad3Portable
--------------------------------------------------
Version 2 Build 432 (10 August 2017)
--------------------------------------------------
- Fixed issue #35 (preserve FileExtension settings while switching Styles / 2nd Default Scheme).
- Enlarge some string buffers for dialogs.
- Fixed np3encrypt vcxproj files.
- Added command line option ( /v ) to print file immediately and quit (like Window's original notepad.exe /p option).
- Added printing additional option /v dialog to allow access to the Printer dialog (as on Menu: Print... ).
- Initial version of PortableApps.com Launche and Installer build.
- Build environment, to create Notepad3Portable (according to Portableapps.com) (x86/x64).
--------------------------------------------------
Version 2 Build 422 (10 August 2017)
--------------------------------------------------
- Cleanup manifest handling
- Minipath DPI aware false
--------------------------------------------------
Version 2 Build 411 (9 August 2017)
--------------------------------------------------
- Reintroduce HighDPI toolbar
- Fixed nullptr access while pressing "favorites" toolbar button on 'virgin' Notepad3 ToolBar
- Added VS2017 .vcproj files and adapted Compiler Tool Set accordingly
- Integrate Scintillas DirectWrite technology
- Minor cleanups reported by CppCheck v.1.79
- Added VisualStudio's Editor Behaviour for Ctrl-C and Ctrl-X
- Fixed broken Ctrl-Q (toggle line comments)
--------------------------------------------------
Version 2 Build 398 (13 June 2017)
--------------------------------------------------
- Updated Scintilla to version 3.7.5
- Don't use 2nd default syntax scheme by default. (Issue #21)
- Added Microsoft Visual C++ 2017 (vc141) support.
- Bigger Toolbar Buttons (24px). Should be big enough now. (Issue #21)
--------------------------------------------------
Version 1 Build 388 (06 January 2017)
--------------------------------------------------
- Updated Scintilla to version 3.7.2
- MiniPath now works on Windows XP
--------------------------------------------------
Version 1 Build 386 (08 December 2016)
--------------------------------------------------
- Crypto Module: code cleanup
- Crypto Module: Replaced LocalAlloc/GlobalAlloc by HeapAlloc methods.
- Integration of DeelX RegExpr engine (http://www.regexlab.com/en/deelx/)
- Update to Scintilla 371 (NP2 adaption due to deprecated data types).
- clean-code Solution (instead of "magic numbers").
- Fixed block selecting cause crash.
- Added RaPeHoff to the contributors list.
--------------------------------------------------
Version 1 Build 350 (05 September 2016)
--------------------------------------------------
- Updated HTML Keywords
- Updated Scintilla to version 3.6.7
- Added Microsoft Visual C++ Update 3 version number
--------------------------------------------------
Version 1 Build 330 (24 June 2016)
--------------------------------------------------
- Fixed Compiler warnings
- Updated to Scintilla 3.6.6
- Updated Apache Keywords for version 2.4
- Removed Visual Studio 2010 to 2013 Support
- Added Visual Studio 2015 Update 2 version number
- Added Support for Inno Setup 5.5.9
- Fixed Favorites Function
- Updated Rizonesoft Versions Program
- Implemented a new versioning scheme

View File

@ -0,0 +1,35 @@
Notepad3 and MiniPath Copyright © 2008-2016 Rizonesoft, All rights reserved.
https://www.rizonesoft.com
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
3. Neither the name of Florian Balmer nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
==================================================
License for Scintilla and SciTE
==================================================
Copyright 1998-2002 by Neil Hodgson <neilh@scintilla.org>
All Rights Reserved
Permission to use, copy, modify, and distribute this software and its documentation for any purpose and without fee is hereby granted, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation.
NEIL HODGSON DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL NEIL HODGSON BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGESWHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
==================================================
License for Onigmo (Oniguruma-mod) RegEx Engine
==================================================
Copyright (c) 2002-2009 K.Kosako <sndgk393 AT ybb DOT ne DOT jp>
Copyright (c) 2011-2014 K.Takata <kentkt AT csc DOT jp>
All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Binary file not shown.

View File

@ -0,0 +1,68 @@
================================================================================
= =
= Notepad3 - light-weight Scintilla-based text editor for Windows =
= =
= (c) Rizonesoft 2008-2018 =
= https://www.rizonesoft.com =
= =
================================================================================
Description
--------------------------------------------------------------------------------
Notepad like text editor based on the Scintilla source code. Notepad3 based on
code from Notepad2 and MiniPath on code from metapath.
--------------------------------------------------------------------------------
Changes compared to Flo's official Notepad2 (made in Notepad2-mod):
--------------------------------------------------------------------------------
- Code folding
- Support for bookmarks
- Option to mark all occurrences of a word
- Updated Scintilla component
- Word auto-completion
- Syntax highlighting support for AutoHotkey (AHK), AutoIt3, AviSynth, Bash,
CMake, CoffeeScript, Inno Setup, LaTeX, Lua, Markdown, NSIS, Ruby, Tcl,
YAML and VHDL scripts.
- Improved support for NFO ANSI art
- Other various minor changes and tweaks
--------------------------------------------------------------------------------
Changes compared to the Notepad2-mod fork:
--------------------------------------------------------------------------------
- Additional syntax highlighting support for Awk, D, golang, MATLAB
- State of the art Regular Expression search engine (Onigmu)
- New toolbar icons based on Yusuke Kamiyaman's Fugue Icons
(Purchased by Rizonesoft)
- Hyperlink Hotspot highlighting
(single click Open in Browser (Ctrl) / Load in Editor (Alt))
- New program icon and other small cosmetic changes
- In-App support for AES-256 Rijndael encryption/decryption of files.
(incl. external commandline tool for batch processing)
- Virtual Space rectangular selection box (Alt-Key down)
- High-DPI awareness, including high definition toolbar icons
- Undo/Redo preserves selection
- File History preserves Caret position (optional)
and remembers encoding of file
- Accelerated word navigation
- Preserve caret position of items in file history
- Count occurrences of a marked selection or word
- Count and Mark occurrences of matching search/find expression
- Visual Studio style copy/paste current line (no selection)
- Insert GUIDs
- Dropped support for Windows XP version
- Other various minor changes, tweaks and bugfixes
--------------------------------------------------------------------------------
Supported Operating Systems:
--------------------------------------------------------------------------------
Windows 7, 8, 8.1 and 10 both 32-bit and 64-bit
--------------------------------------------------------------------------------
Contributors
--------------------------------------------------------------------------------
- Rainer Kottenhoff
- Florian Balmer ( http://www.flos-freeware.ch )
- XhmikosR ( http://xhmikosr.github.io/notepad2-mod/ )
- Kai Liu ( http://code.kliu.org/misc/notepad2/ )
- RL Vision
- Aleksandar Lekov
- Bruno Barbieri

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,587 @@
==================================================
Rizonesoft Notepad3 CHANGES
==================================================
--------------------------------------------------
Version 3.18.131.862 (31 January 2018)
--------------------------------------------------
- Fix: Correct in-memory encoding/re-coding of text.
- Fix: Join Lines (preserve paragraphs) issue.
- New: Accelerator Key "Ctrl+Alt+J" -> Fuse Lines (:= Join Lines, line-breaks NOT replaced by Space).
- Fix: Byte counting for selection.
- Fix: Bug in joining lines algorithm.
- Fix: Alt+H should open history file access dialog not help menu (add ? to revert to known access key).
- CR: Reverting back to "?" for help menu and activation (Alt+?) key.
- CR: Accelerator Key F1 now opens Online Documentation in browser.
- Cleanup: Highlight current line stuff gathered.
- Added: Setting2 parameter to adjust "Mark Occ" and "Hyperlink" styling delay.
- Fix: Revisit usage of "Mark Occurrences" and "Hyperlink Styling" delay usage.
- Fix: Rectangular selection: (virtual empty) selection persists after clear.
- Cleanup: Customize Schemes... Style Names.
- Fixes: Performance for several modify text operations.
- Fix: Sentencecase some strings in "Customize Schemes...".
- Refactoring: Usage of undo/redo action stack.
- Fix: SpeedUp undo/redo action collections.
- Fix: Lock NotifyUpdate and TargetSelection in case of multi action redo/undo and target replacements.
- Fix: Handling of document modified flag in case of NotifyChange bypass.
- Enhancement: Canonical initial Notepad3.ini.
- Fix: Redo/undo and jump-to behavior having an active selection.
- Refactor: set/replace selection handling.
- Fix: Wrong test on rectangular selection.
- Enhancement: add empty sections to initial settings file (.ini) to force a canonical order.
- Fix: More select and replace target issues.
- Fix: Toggle All folds behavior.
- CR: Changed inifile for Portable Apps Notepad3.
- Fix: TAB indentation handling according to predecessors (NP2).
- Fix: selection (anchor and current caret position) handling.
- Enh: Version check for Visual Studio 2017 v.15.5.5.
- Fix: "Line Comment" id noselection and current pos == indent pos.
- Fix: Initial .ini-file: unused section removed.
- Fix: Support scintilla msg: SCN_NEEDSHOWN (EXPAND folded sections if needed).
- Revert: Accelerator Key "Alt+UP/DOWN" for navigation (jump) between folded section headlines.
- Enhancement: Added Accelerator Keys: Alt+LEFT/RIGHT to FOLD/EXPAND folding section.
- Fix: Avoid some issues regarding folding, using SCI_SETAUTOMATICFOLD.
- Fix: Revert TAB + Selection action corresponding to VisualStudio's behavior.
- Fix: Sensible handling of "Block -> (Un)Indent" for different kinds of selections.
- Fix: Font selection dialog does not reset some styles correctly.
- Fix: Preserve selection on Line Comment toggle.
- Enhancement: Make selection block indentation similar to VisualStudio's.
- Fix: Char2Hex: Remove limit single byte selection.
--------------------------------------------------
Version 3.18.113.828 (13 January 2018)
--------------------------------------------------
- Performance: Redraw indicator ranges (Mark Occurrences) only if needed - avoiding recursive SCN_UPDATEUI notifications.
- Mark Occurrences: force position progress in case of zero-length matches.
- Performance: Mark Occurrence triggers enhancements.
- Convenience: Re-introduce "max mark occurrence counter" to avoid lazy UI.
(Set .ini section [Settings2] MarkOccurrencesMaxCount=-1 for unlimited (MAX_INT)).
- Fix: Correct counting of found matches.
- Fix: Broken find/replace (regex) on groups.
- Performance: Tuning delay parameter of "Mark Occurrences" (instantly).
- Performance: Remove test for set already, if indicator does not change.
- Fixing several Mark Occurrences (instantly) issues.
- Fix: Some customizing scheme issues (relative font size hierarchy).
- Fix: Document modified flag not set properly (title, toolbar & statusbar only).
- Fix: Renaming menu entries Edit: "Clear" -> "Delete"
- Enhancement: structured "Mark Occurrences" menu hierarchy.
- Fix: Menu "Mark Occurrences" whole word matching: add check indicator if one of word matching options (selected/current) is used.
- Change: Menu "Mark Occurrences" whole word matching: radio button behavior.
- Fixes Regarding Scheme customizing (rel. size) and View Menu (Mark Occ.).
- Fix: Regex replacement on look-ahead assertion.
- Fix: relative font sizing of non-default-style entries in custom schemes.
- Fix: Font selection box title display.
- Fix: clean coding for "relative sizing hierarchy".
- Feature: "Customize Schemes..." UI change to represent "relative sizing hierarchy".
- Fix: Update view on style change in "Customize schemes..."
- Fix: Bug regarding "Reset" button in "Customizing Schemes..." dialog.
- Fix: Bug in detect and style Hyperlink Hotspot.
- Feature: Initial version of Nim Lexer. Added Scintilla project and header for Nim lexer.
- Performance: Non visible styling during idle time.
- Performance: Cache page instead of line only.
- Change: Option "after visible" for styling in background (idle time).
- Update: Compiler version 191225834 (VS2017 V.15.5.3).
- Fix: Loosing state of "Transform Backslashes" while switching regex/wildcard search.
- Fix: Block "mark occurrences" event on transaction pair: (SCI_TARGETFROMSELECTIO, SCI_REPLACETARGET).
- Fix: protect SCI target transactions by a guard to break recursion of Mark Occurrences caused by ChangeNotification() events.
- Fix: Handle "2nd Default Styles" as separate standard (2nd) lexer module.
- Fix: Handling initial 1st or 2nd default style in case of "Default Text", shown on int "Customize Schemes...".
- Fix: Crash on navigation between schemes beyond start/end of tree view.
- Fix: Disable (using 1st Default Style) "Associated filename extensions" for "2nd Default Style".
- Fix: Clone associated filename extension list of Default Style (for 2nd Default Style).
- Enhancement: status bar information about usage of 2nd Default Style.
- Change: View "2nd Default Style" as (dbl-clickable) status bar item.
- Cleanup: NimLexer = NimrodLexer -> rely on Scintilla distribution for Nim(rod) lexer.
- Change: Word Wrap mode from WORD to SPACE to avoid wrapping at style change edges.
- Fix: move word wrap start symbol to margin (new WW mode SPACE (instead of WORD))".
- Fix: Mark Occurrences timeout on Find/Replace.
- Fix: Optimized status bar partitioning.
- Fix: Revert naming for "2nd Default Text".
- Clean Code: Reasonable assumption for memory allocation of style handling (backup, save, load).
- Tuning: Statusbar Partitioning.
- Fix: Bug on switching between 1st and 2nd standard lexers.
- Fix: Selection of 1st or 2nd standard lexer (Default Text) based on Use2ndStandard flag.
- Change: Onigmo RegEx syntax dialect.
- Change: Onigmo regex engine: use PERL 5.10 syntax + enable "\<" and "\>" word boundary matching.
- Fix: Onigmo regex engine PERL syntax: supporting named groups referencing in replacement text.
- Enhancement: Statusbar: Count number of bytes in current encoding.
- Change: Replace Windows Notepad Installer version only.
- Change: Executables not compressed with UPX.
--------------------------------------------------
Version 3.18.105.802 (5 January 2018)
--------------------------------------------------
- Fix: Custom toolbar images ini settings added.
- Fix: Add hints for free text style properties in "Customize Schemes...".
- Fix: Test version numbers for month Jan - Sep (mono digit).
- Fix: Redundant echo of expected version string.
- Fix: Toggle line comments were placed at line end.
- Feature: (Mark Occurences) instant word highligting.
- Added: Switch to draw all occurrences in visible area only.
- Opt: Delayed mark all occurrences for better UI response.
- Enhancement: Async mark all occurrences via timer (UI response).
- Fix: "Match Current Word" should not highlight partial word matches in other lines.
- Added: Hyperlink Hotspot Style updates on UpdateUI event (visible area only)
- Fix: Fetching wrong visible document line number in case of hidden or wrapped lines.
- Fix: Ignoring queued timer event, if timer has been killed.
- Performance: Optimizing timer handling to avoid multiple calls of complex methods.
- Fix: use current lexer's default text font size as base font size for relative sizing of other styles.
- Performance: Fixed some issuses, which eat up CPU.
- Fix: mark occurrences counter not updated in time.
- Minor performance enhancements.
--------------------------------------------------
Version 3.17.1228.783 (28 December 2017)
--------------------------------------------------
- Fix: Update coloring on window message WM_SYSCOLORCHANGE, including Hyperlink hotspot colors.
- Feature: Java sourcecode to compile a class which acts as a standalone tool for decrypting Notepad3's encrypted files.
- Fix: Crash on empty password for encryption tool.
- Added batch script to bulk encrypt files of given directory with encryption tool.
- Fix: Existing bash test script for encryption tool.
- Fix: Onigmo regex: . matches any charakter and does not stop at line breaks.
- Fix: Onigmo regex: remove extend mode, where # is used as line rest comment.
- Feature: Regex - "Dot matches all" vs. "Dot does not match line-breaks" switchable by option in find/replace dialog.
- Feature: inticator style used for matching braces too.
- Fix: Change hard coded default values for matching brace styling according to new style (indicator).
- Fix: font styling of Hyperlinks are not reset to default if feature is switched off.
--------------------------------------------------
Version 3.17.1223.778 (23 December 2017)
--------------------------------------------------
- Fix: Hyperlink feature related delay of font changing.
- Added more triggers for Hyperlink style updated.
- Refactoring: Cleanup trigger points for URL Hotspot styling.
- Fix: Last hyperlink was restyled to lexer's style (not desired hotspot style).
- Feature: Replaced DeelX with Onigmo regular expression engine.
- Fix: Default lexer style changed a litle bit after first UI update.
- Fix: Redraw bug in case of SCI_COLOURISE.
- Fix: Removed some Hyperlink dection triggerpoints, which might be collide with SEARCHINTARGET and REPLACETARGET race conditions (seperate threads).
- Fix: Removed unneccessary Hyperlink trigger-point from InitInstance().
- Fix: Performance issue while pasting long text from clipboard.
- Fix: Local memory freeing.
- Fix: Complete set of font weights for syntax scheme.
- Fix: Prepare fixing race-condition search/replace target vs. selection.
- Fix: Set target range only for search/replace and not for paste after modifying selection (race-condition search/replace target vs. selection).
- Fix: Transform backslashes for regex find/replace.
- Feature: Added Scintilla's indicator styles to scheme config for "Mark Occurences".
- Fix: Out of range fallback for indicator string retrieval.
- Fix: Issue regarding TransformBackslash handler (regex vs. std & find vs. replace).
- Fix: Replace dialog: Resize regex text box to not overlay other control.
- Fix: Enable more hyperlink styling trigger points, since "replace target" race-conditions have been fixed and fast regex engine (Onigmo) is integrated.
- Fix: Issue regarding applying lexer style while hyperlink feature is active.
- Fix: Reverting to buffered draw, until screen flickering issues are clarified.
- Fix: Onigmo regex engine handling string/line end meta char '$' independent of EOL mode.
- Fix: Replace-all with look-behind assertion.
- Update: uthash to version 2.0.2.
- Fix: Onigmo word boundaries issues (incl. "double" escaped esc) (not solved yet: multi escaped esc).
- Fix: Customize schemes issues (now Default Font: is applied to "Default Text" and "Current Lexers" Default Font).
- Fix: Allow (horiz.)TAB chars in selection copied to find/replace dialog search box on pop up time (Ctrl+F).
- Fix: Setting "Default Font..." will clear current lexer's default font - inherits global default font then.
- Fix: "Default Font..." configuration issue.
- Minor fixes for Onigmo interface class.
- Fix: "Default Font..." add check for current scheme is not default text already.
- Enhanced style copy method.
- Refactoring: Style Select Font dialog.
- Fix: Schemes in alphabetical order (displayed names).
- Feature: Dual configuration of Default Text Font or Current Scheme's Default Text Font.
- Fix: Bug on font selection - global vs. current scheme.
- Fix: More bugs regarding standard lexer handling.
- Fix: Using WYSIWYG fonts (screen vs. printer).
- Added Online Documentation menu item.
- Fix: Inconsistencies: cut,copy,replace,... mainmenu and context menu vs. toolbar.
- Fix: New Font selection feature: 2nd Default Font not supported completely.
- Fix: setting/changing encryption pass-phrase did not trigger "file modified" flag.
- Fix: Problem with 1st vs. 2nd Default Text Scheme selection.
- Fix: Inconsistency 1st vs. 2nd Default Text Font selection.
- Fix: Use Standard Lexer on new (empty) files.
- General bug fixes and code cleanup.
--------------------------------------------------
Version 3.17.1210.729 (10 December 2017)
--------------------------------------------------
- Fix: flashing of Search text-box of find/replace dialog in case of Win7 Classic theme
- [Settings2] section default values (and comment out if not changed) of initially distributed Notepad3.ini
- Feature: Added Awk Script syntax highlighting (Python lexer based)
- Fix: Edit/Special : URL encoding/decoding for full UTF8 (non ASCII) characters.
- Refactoring: Platform independent URL decoding.
- Fix: Gibberish output if URL decoded again (2nd time).
- Fix: URL decoding, if encoding has "%#nnn" formatted ASCII chars.
- Fix: HTML character encoding starts with ampersand, not percent char.
- Fix: URL encoding: Added flag URL_ESCAPE_PERCENT for UrlEscape().
- Feature: URL Hotspot (first version).
- Fix: Added version info for VS2017 v.15.5
- Feature: Enhanced URL Hotspot highlighting.
- Refactoring and enhancements for Hyperlink Hotspot feature.
- Fix: Consistent texts for "Hyperlink Hotspots".
- Feature: open Hyperlink in NP3 (if applicable: "file://...").
- Added some more places, where Hotspot style redrawing does not slow down responsiveness.
- Fix: Hyperlink Hotspots turned off by default. (not stable enough to force the feature).
- Fix: Normal setup can now clean replace Windows Notepad registry keys.
- Feature: Update notification in Notepad3 setup.
- Code Cleanup
--------------------------------------------------
Version 3.17.1202.715 (2 December 2017)
--------------------------------------------------
- #191 Revert to Scintilla's old (default) font rendering technology. Modern DirectWrite available at [Settings2] SciDirectWriteTech=1
- Fix: Removed unused mouse wheel message interception.
- Fix: Disabling buffered draw. (Scintilla: "Current platforms perform window buffering so it is almost always better for this option to be turned off.")
- Fix: Font Smoothing: [Settings2] SciFontQuality=n has no effect on some special fonts (preserving old behavior if not defined).
- Workaround: #192 Drag n' drop from 32-bit process on Notepad3 x64 window
- Renaming of drag n' drop methods.
- Fix: Adapt text for messagebox: no valid drop-file.
- Fix: issue regarding Accelerator keys for find/replace dialog.
- Feature: Additionally show full path to current directory in windows title.
- Fix: Minipath full path display in titlebar (no dbl-slash in case of drive letter only).
- Fix: Mark occurrences: Outline frame of indicator box shouls have same aplpha channel color (configurable alpha2:nnn).
- Change request: move "Mark Occurrences" check box from menu to find/replace dialog options.
- Fix: Find/replace dialog: mark occurrences: use standard save/restore settings behavior.
--------------------------------------------------
Version 3.17.1124.690 (24 November 2017)
--------------------------------------------------
- Fix: Revert to Scintilla's default mouse down and mouse wheel capture mode.
- Fix: "Mark All Occurrences" setting of find/replace dialog should only be persisted, if "Save Settings on Exit" is enabled.
- Fix: UpdateLineNumberWidth() triggers cleanup.
- Adapt: C/C++ styles - keyword vs. typedefs.
- Fix: Issue with update of line number margin width.
- Fix: Transform backslash issues.
Fix: C/C++ keywords and types.
Timer call for mark occurrences during find/replace.
- Fix: lookaround regex (DeelX) matches were not replaced.
- Optimized DeelX regex interface.
- Fix: Issue regarding find/replace empty-string.
- Fix: Adapt DeelX RE interface according to enhanced find/replace dialog.
- Fix: Issue #173 - regex/wildcard search: replacement string not used if "Check All Occurrences" is active.
- Changed SDK version target to 10.0.16299.0
- Feature: find/replace mark occurrences.
- Feature: Indicator in find text box, if search string is matched in document.
- Feature: validate regexpr.
- Fix: Recoding minipath's version.h to UTF-8 (Sig), because it contains codepage dependant copyright sign.
- Fix: Corrections to .vcproj settings inconsistencies (reported in release build process).
- Feature: Auto remember bookmarks in recent file history.
- Fix: undo/redo issues (if no selection choosen).
- Fix: Consecutive DEL/BACKSP undo/redo broken (wrapped by unconditional selection undo/redo).
- Feature: Mark occurrences coloring is now configurable via "Customize Schemes...".
- Fix: Issues found by static code analysis.
- Minor fix for DeelX RegEx engine.
- Major refactoring of find/replace regex evaluation.
- Fix: Bug in getting string length from dialog box readout.
- New "D" and "Go" programming language support.
- Update: Scintilla Lib v.4.0.2 (402).
- Fix: Break criteria for "replace all in range".
- Fix: Issues found regarding zero-length matches using regex anchors, including infinite loops on replace all.
- Fix: RegEx start anchor adjustment.
- Enhance: comments with useful web links.
- Fix: Problem with regex line start and replacements at line end.
- Move position after replacement (EditReplace()).
- Refactoring of "Replace All" methods.
- Split C++ Keywords in two parts (1st: standard keywords, 2nd: keywords starting with double underscore "__xxx").
- Minor polish of Readme.md.
Put changes compared to Notepad2-mod into Readme.md.
- Repair empty resource file (Notepad3.rc).
- Bookmark Enhancements
- Swap text fields in Find/Replace dialog.
- Fix: Issues regarding selection undo/redo.
- Fix: Issues regarding margins configuration.
- Added Book Mark style (Color Background and Alpha) to customize schemes...
- Replaced old bookmark pixmap (visible margin) by Scintilla's BOOKMARK marker style.
- Update: Compiler version detection.
- Feature: "Swap Strings" button in Find/Replace dialog.
- Fix: Issue #139 and #143 (remove selection undo/redo for non-text-changing operations on selections).
- Fix: issue #144 (Left arrow no longer moves to previous line).
- Fix: issue #145 (Mark Occurrences Counter is broken).
- Increase buffers for edit box in "Customize Schemes..." dialog.
- Fix: Pasting clipboard content into selection box should replace text and cancel selection then.
- Minor bug fixes and more...
--------------------------------------------------
Version 2.17.1023.632 (23 October 2017)
--------------------------------------------------
~ Fix: pasting clipboard content into selection box should replace text and
cancel selection then (in case of swapping clipboard, the selection is preserved).
~ Changed buffers for operating edit box in customize schemes.
~ Implemented Feature Request #51 (buffer size of file extension edit box).
~ First prottotype of VirtualSpace RectangularSelection by default (very old
behavior can be turned on by [Settings2] DenyVirtualSpaceAccess=1).
~ Added switch ([Settings2] UseOldStyleBraceMatching) to preserve old style
brace matching behavior.
~ Applied patch from Neil Hodgson (Master of Scintilla Lib - respond to
scintilla lib issue report #1976).
~ Fixed .ini paths for np3portableapps.
~ Restore wrongly discarded np3portableapps .ini files for NP3Portable,
redirecting .ini reading to correct path.
~ Documentation: Minor changes to Notepad3.txt.
~ Documentation: doc/Notepad3.txt - add description of [Section2] .ini settings
(mostly taken from orig. Notepad2 FAQs).
~ Remove settings for "Favorites" directory -> NP3 uses then users system
default folder (%USERPROFILE%\Favorites).
~ Default to modern displays settings, using Scintilla's new technology
: SciDirectWriteTech=1, SciFontQuality=3
~ Settings [Section2] (cannot be set via GUI) add all possible names and
default values, if applicable.
~ License.txt: switch to UTF-8 encoding.
~ Feature: Show warning before loading file with unknown (custom schemes) file
name extension.
~ Add code snippet (activation only prepare for future extensions).
~ Fix: Crash in Favorites management.
~ Small code refactoring (replacing deprecated methods).
--------------------------------------------------
Version 2.17.1016.610 (16 October 2017)
--------------------------------------------------
~ File History Dlg: rename button "Remove" -> "Discard"
(discard selected item from file history list).
~ Added remove button for list items.
~ Checkbox for "preserve caret position" settings.
~ Removed unnecessary build artifacts from np3portable.
~ Minor bugfixes for session feature
(file history: remember caret pos and encoding).
--------------------------------------------------
Version 2 Build 605 (15 October 2017)
--------------------------------------------------
~ Fix: Crash on accessing UndoRedo structure while NP3 instance has
not been initialized completely (.LOG file opening bug).
--------------------------------------------------
Version 2 Build 600 (15 October 2017)
--------------------------------------------------
~ Fix: Virtual space access: column indicator.
~ Fix: Customize Schemes... Font... selection: bold/italic now detected
(bold: if selection >= FW_SEMIBOLD)
--------------------------------------------------
Version 2 Build 583 (11 October 2017)
--------------------------------------------------
~ Fix: syntax error on exit script.
~ Cleanup AHK testing script, add test artifacts.
~ Fix: Try to retrieve correct file version for Notepad3Portable creator.
~ Fix: StatusBar Col display is not correct in case of Virtual Space Access.
~ Generalized internal multi-byte codepage definitions (code cleanup).
~ AHK test script for NP3 GUI tests.
~ Fix: locale / language independant version patching batch for Notepad3Portable
~ Fix: version patching for Notepad3 PortableApps build batch.
~ Fix: Recode to ANSI (in case of Chinese ANSI code-page)
--------------------------------------------------
Version 2 Build 568 (8 October 2017)
--------------------------------------------------
~ Prettier Browse Icon.
~ Fix: Reverting "reload as UTF-8 not work bugfix".
~ Fix: Texture glitch on "Browse" button.
~ Updated the Run Dialog icon.
~ Fix: Binary directory to build portable app.
~ Code comment for completeness.
~ Fix: In-text encoding (convert encoding).
~ Fix: minor StatusBar string corrections.
~ StatusBar information enhancements.
~ Fix: Support pasting position at virtual space.
~ Fix: Move caret to convenient position after pasting clipboard
(no current selection).
~ Fix: Virtual space navigation and rectangular selection (minor issues)
(allow "Virtual Space Rectangular Selection"
also allows moving Caret into virtual space (beyond line end))
~ Fix: Copy/Cut & Paste of current line (in case of no selection -
Visual Studio behavior - using SCI's MSDEVLineSelect).
~ Enhanced clipboard recoding detection.
~ Fix: Bug in code-page related text conversion.
--------------------------------------------------
Version 2 Build 548 (3 October 2017)
--------------------------------------------------
~ Fix: Made corrections to build 505 change log (spelling, grammar, etc).
~ Fix: FILE status becomes [MODIFIED] when doing CONTROL+A to select ALL.
~ Fix: Paste from clipboard to ANSI code page:
unnecessary switching encoding to UTF-8.
~ Fix: Undo/Redo of virtual space selection rectangle not correct.
~ Fix: StatusBar SelectionCount (Sel) : count chars instead of bytes.
~ Fix: Punctuation chars for "Accelerated Word Navigation" (Settings2:
ExtendedWhiteSpaceChars= add non word chars here).
~ Fix: Do mouse wheel scrolling in editor area only.
~ Fix: DPI awareness in manifest.
~ Code cleanup
~ Fix: word delimiter in case of "Accelerated Word Navigation".
~ Correct UFT Spelling on Encoding menu.
--------------------------------------------------
Version 2 Build 505 (23 September 2017)
--------------------------------------------------
+ 1st chunk of StrSafe migration.
+ Some more StrSafe changes
+ Fix: manually edited settings (SciDirectWriteTech, SciFontQuality)
should be placed in settings section [Settings2].
+ Extended default "space char set" for "Accelerated Word Navigation" to avoid
unexpected "accelerated word navigation" behavior, space-char extension is
restricted to 7-bit ASCII char set (ignoring specified non-7-bit-ASCII chars).
+ StrSafe adaptions
+ Fixed: settings SciFontQuality have been overwritten by Scheme configuration.
(Fonts: Calibri, Cambria, Candara, Consolas, Constantia, Corbel, Segoe UI are using
'cleartype smoothing' (SC_EFF_QUALITY_LCD_OPTIMIZED) by default, if not
configured in Schema definition for Lexer)
+ Added font "Source Code Pro" to list of special fonts for cleartype smoothing.
+ Fix: undo destructive operation on selection (rectangle) does not restore
selection or preserves selection mode (extends selection on caret movement)
-> need to send SCI_CANCEL at the end of restored selection.
+ Found bug caused by StrSafe migration
(COUNTOF() for buffer size must not be used on buffer pointer)
+ migrate StrCpyN() and StrCatBuff() to corresponding StrSafe.h methods
+ Adapted lstrcpyn() calls according to StrSafe.h requirements.
+ Refactoring of "Accelerated Word Navigation" to be compliant with Scintillas
WhiteSpace and Punctuation defines.
+ "Accelerated Word Navigation" activation influences "Mark Occurrences" (whole word) if set
+ Extended: Remember selection undo / redo
+ Added undo / redo selection to more operations
+ Found Scintilla 400 method "SCI_CUT" (cut selection) broken: lost last char
replaced by SCI_COPY & SCI_CLEAR combination (for now).
+ changes to EditGetClipboardText() solved the SCI_CUT problem, so it can be
switched back from SCI_COPY & SCI_CLEAR to SCI_CUT
(byte alignment in 64-bit, i am nut sure)
+ switching Scintilla internal codepage to UTF-8 only (resp. Japanese,
Chinese and Korean DBCS) single-byte encoding is supported externally and
converted (fore and back) to UTF-8 internally, this simplifies
i.e. clipboard exchange, etc.
+ Removed support for obsolete Korean Johab (1361) codepage.
+ Fixed ConvertText() according to internal SCI codepage
+ Refactoring: Encoding handling
+ More operations for selections undo/redo.
+ Enabled "unlimited" (as in Scintilla Lib: dep. on memory and INT_MAX)
undo / redo selection history using utarray from uthash header library
(https://troydhanson.github.io/uthash/index.html)
+ Moved crypto readme to doc dir
+ remove internal codepage support for Chinese, Japan, Korean DBCS use
generalized UTF-8 codepage instead
(conversions do not work as expected within scintilla lib)
- Dropping Windows XP support , using compiler toolset vc141 Win SDK 10.0.
(current VC++ redistributable needed?)
+ Replaced lstrcmp() and lstrcmpi() by StrSafe (helper.h defined) methods.
+ Relaunch elevated keeping current changes in a buffer.
+ Fixed some problems for feature "relaunch elevated preserve changes".
+ First AppVeyor config
+ Remember window position in case of "relaunch elevated".
+ Fixed memory initialization problem during InitInstance()
+ Enhanced consistency between toolbar (save button) and titlebar (modified marker)
+ "Relaunch elevated": use current .ini-file instead of new user's (Admin's) .ini
+ Cleanup tmp filebuffer, if elevation has been rejected.
+ Fixed crash in case of wrong Encoding (detection)
+ Changed version display on Help/About.
+ New Powershell script to patch version numbers
+ appveyor.yml using same powershell commands to patch version
- Remove FindReplaceDlg handle declared as external from compilation unit
Edit.c - not really needed here. (externals (handles / pointers) seemed to
be a problem on module init instance time in 64-bit)
+ Fixed: Open find dialog the first time (new NP3 instance) while
clipboard is empty, NP3 crashes (try to LocalFree() static allocated memory)
+ Fixed: RegExpr "Find previous" corrected (find mode "left to right" has been
used, which has not the intended behavior).
+ Updated Compiler Info.
+ Added build.txt (and .ps1 changes) for Local Build Version patching
(common AppVeyor/Local script).
+ Fixed issue "Convert to Title Case" while selected text is all upper case.
+ Fixed broken "Complete Word" feature (Ctrl+Enter/Return).
+ Changed accelerator key for feature "Complete Word" from Ctrl+Enter to Ctrl+Alt+Enter.
+ Added feature "Insert New (empty) Line above current line Ctrl+Enter (as in VisualStudio).
+ Code cleanup
+ Added new Settings "Virtual Space on Rectangular Selection" used to select.
rectangle not delimited by line endings (but including virtual space).
+ Readme.txt Updated. (Thanks Will)
--------------------------------------------------
Version 2 Build 450 (18 August 2017)
--------------------------------------------------
- Fixed "file modified" flag not set on Ctrl+X actions
- Fixed re-enable accidentally disabled toolbar buttons (find, replace, clear, toggle-folds, file-launch)
- Fixed remove obsolete settings entry, never read (SciDrawTechnology)
- Fixed crash: not a good idea to make char array (char*) external to other compilation unit.
- Fixed wrong shortcut in menu on word navigation (Ctrl+LEFT/RIGHT)
- Renamed encoding menu item: "Recode No FileVars" (Alt+F8) =>> "Ignore Encoding Tags" (Alt-F8)
- UTF-8 encoding of License.txt (fixing: different ANSI codepage for copyright sign)
- Update to Scintilla 400 (early bird) pre-release.
--------------------------------------------------
Version 2 Build 440 (16 August 2017)
--------------------------------------------------
- Fixed unicode conversion error fixed in .rc
- Added Del/Back Selection preserving on Undo/Redo
- Fix: restore "rectangular" selection too on "Selection Cut" Undo/Redo
- Cut Selection (Ctrl-X) will preserve Selection on Undo/Redo
- Fixed Toolbar Button "Save" has to be enabled on encoding changes
- Fixed bug on path compare for editing own settings file (.ini) to disable "save settings" menu entries (should be case insensitive)
- Zero initializing string buffers (hardening code while searching an issue regarding "Recent Files" list in "relative paths" mode
- Added Enabling/Disabling Save-Button in toolbar according to file modified indicator.
- Menu integration of "hidden" commands
- Fixing and cleanup build for Notepad3Portable
--------------------------------------------------
Version 2 Build 432 (10 August 2017)
--------------------------------------------------
- Fixed issue #35 (preserve FileExtension settings while switching Styles / 2nd Default Scheme).
- Enlarge some string buffers for dialogs.
- Fixed np3encrypt vcxproj files.
- Added command line option ( /v ) to print file immediately and quit (like Window's original notepad.exe /p option).
- Added printing additional option /v dialog to allow access to the Printer dialog (as on Menu: Print... ).
- Initial version of PortableApps.com Launche and Installer build.
- Build environment, to create Notepad3Portable (according to Portableapps.com) (x86/x64).
--------------------------------------------------
Version 2 Build 422 (10 August 2017)
--------------------------------------------------
- Cleanup manifest handling
- Minipath DPI aware false
--------------------------------------------------
Version 2 Build 411 (9 August 2017)
--------------------------------------------------
- Reintroduce HighDPI toolbar
- Fixed nullptr access while pressing "favorites" toolbar button on 'virgin' Notepad3 ToolBar
- Added VS2017 .vcproj files and adapted Compiler Tool Set accordingly
- Integrate Scintillas DirectWrite technology
- Minor cleanups reported by CppCheck v.1.79
- Added VisualStudio's Editor Behaviour for Ctrl-C and Ctrl-X
- Fixed broken Ctrl-Q (toggle line comments)
--------------------------------------------------
Version 2 Build 398 (13 June 2017)
--------------------------------------------------
- Updated Scintilla to version 3.7.5
- Don't use 2nd default syntax scheme by default. (Issue #21)
- Added Microsoft Visual C++ 2017 (vc141) support.
- Bigger Toolbar Buttons (24px). Should be big enough now. (Issue #21)
--------------------------------------------------
Version 1 Build 388 (06 January 2017)
--------------------------------------------------
- Updated Scintilla to version 3.7.2
- MiniPath now works on Windows XP
--------------------------------------------------
Version 1 Build 386 (08 December 2016)
--------------------------------------------------
- Crypto Module: code cleanup
- Crypto Module: Replaced LocalAlloc/GlobalAlloc by HeapAlloc methods.
- Integration of DeelX RegExpr engine (http://www.regexlab.com/en/deelx/)
- Update to Scintilla 371 (NP2 adaption due to deprecated data types).
- clean-code Solution (instead of "magic numbers").
- Fixed block selecting cause crash.
- Added RaPeHoff to the contributors list.
--------------------------------------------------
Version 1 Build 350 (05 September 2016)
--------------------------------------------------
- Updated HTML Keywords
- Updated Scintilla to version 3.6.7
- Added Microsoft Visual C++ Update 3 version number
--------------------------------------------------
Version 1 Build 330 (24 June 2016)
--------------------------------------------------
- Fixed Compiler warnings
- Updated to Scintilla 3.6.6
- Updated Apache Keywords for version 2.4
- Removed Visual Studio 2010 to 2013 Support
- Added Visual Studio 2015 Update 2 version number
- Added Support for Inno Setup 5.5.9
- Fixed Favorites Function
- Updated Rizonesoft Versions Program
- Implemented a new versioning scheme

View File

@ -0,0 +1,35 @@
Notepad3 and MiniPath Copyright © 2008-2016 Rizonesoft, All rights reserved.
https://www.rizonesoft.com
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
3. Neither the name of Florian Balmer nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
==================================================
License for Scintilla and SciTE
==================================================
Copyright 1998-2002 by Neil Hodgson <neilh@scintilla.org>
All Rights Reserved
Permission to use, copy, modify, and distribute this software and its documentation for any purpose and without fee is hereby granted, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation.
NEIL HODGSON DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL NEIL HODGSON BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGESWHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
==================================================
License for Onigmo (Oniguruma-mod) RegEx Engine
==================================================
Copyright (c) 2002-2009 K.Kosako <sndgk393 AT ybb DOT ne DOT jp>
Copyright (c) 2011-2014 K.Takata <kentkt AT csc DOT jp>
All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Binary file not shown.

View File

@ -0,0 +1,68 @@
================================================================================
= =
= Notepad3 - light-weight Scintilla-based text editor for Windows =
= =
= (c) Rizonesoft 2008-2018 =
= https://www.rizonesoft.com =
= =
================================================================================
Description
--------------------------------------------------------------------------------
Notepad like text editor based on the Scintilla source code. Notepad3 based on
code from Notepad2 and MiniPath on code from metapath.
--------------------------------------------------------------------------------
Changes compared to Flo's official Notepad2 (made in Notepad2-mod):
--------------------------------------------------------------------------------
- Code folding
- Support for bookmarks
- Option to mark all occurrences of a word
- Updated Scintilla component
- Word auto-completion
- Syntax highlighting support for AutoHotkey (AHK), AutoIt3, AviSynth, Bash,
CMake, CoffeeScript, Inno Setup, LaTeX, Lua, Markdown, NSIS, Ruby, Tcl,
YAML and VHDL scripts.
- Improved support for NFO ANSI art
- Other various minor changes and tweaks
--------------------------------------------------------------------------------
Changes compared to the Notepad2-mod fork:
--------------------------------------------------------------------------------
- Additional syntax highlighting support for Awk, D, golang, MATLAB
- State of the art Regular Expression search engine (Onigmu)
- New toolbar icons based on Yusuke Kamiyaman's Fugue Icons
(Purchased by Rizonesoft)
- Hyperlink Hotspot highlighting
(single click Open in Browser (Ctrl) / Load in Editor (Alt))
- New program icon and other small cosmetic changes
- In-App support for AES-256 Rijndael encryption/decryption of files.
(incl. external commandline tool for batch processing)
- Virtual Space rectangular selection box (Alt-Key down)
- High-DPI awareness, including high definition toolbar icons
- Undo/Redo preserves selection
- File History preserves Caret position (optional)
and remembers encoding of file
- Accelerated word navigation
- Preserve caret position of items in file history
- Count occurrences of a marked selection or word
- Count and Mark occurrences of matching search/find expression
- Visual Studio style copy/paste current line (no selection)
- Insert GUIDs
- Dropped support for Windows XP version
- Other various minor changes, tweaks and bugfixes
--------------------------------------------------------------------------------
Supported Operating Systems:
--------------------------------------------------------------------------------
Windows 7, 8, 8.1 and 10 both 32-bit and 64-bit
--------------------------------------------------------------------------------
Contributors
--------------------------------------------------------------------------------
- Rainer Kottenhoff
- Florian Balmer ( http://www.flos-freeware.ch )
- XhmikosR ( http://xhmikosr.github.io/notepad2-mod/ )
- Kai Liu ( http://code.kliu.org/misc/notepad2/ )
- RL Vision
- Aleksandar Lekov
- Bruno Barbieri

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,587 @@
==================================================
Rizonesoft Notepad3 CHANGES
==================================================
--------------------------------------------------
Version 3.18.131.862 (31 January 2018)
--------------------------------------------------
- Fix: Correct in-memory encoding/re-coding of text.
- Fix: Join Lines (preserve paragraphs) issue.
- New: Accelerator Key "Ctrl+Alt+J" -> Fuse Lines (:= Join Lines, line-breaks NOT replaced by Space).
- Fix: Byte counting for selection.
- Fix: Bug in joining lines algorithm.
- Fix: Alt+H should open history file access dialog not help menu (add ? to revert to known access key).
- CR: Reverting back to "?" for help menu and activation (Alt+?) key.
- CR: Accelerator Key F1 now opens Online Documentation in browser.
- Cleanup: Highlight current line stuff gathered.
- Added: Setting2 parameter to adjust "Mark Occ" and "Hyperlink" styling delay.
- Fix: Revisit usage of "Mark Occurrences" and "Hyperlink Styling" delay usage.
- Fix: Rectangular selection: (virtual empty) selection persists after clear.
- Cleanup: Customize Schemes... Style Names.
- Fixes: Performance for several modify text operations.
- Fix: Sentencecase some strings in "Customize Schemes...".
- Refactoring: Usage of undo/redo action stack.
- Fix: SpeedUp undo/redo action collections.
- Fix: Lock NotifyUpdate and TargetSelection in case of multi action redo/undo and target replacements.
- Fix: Handling of document modified flag in case of NotifyChange bypass.
- Enhancement: Canonical initial Notepad3.ini.
- Fix: Redo/undo and jump-to behavior having an active selection.
- Refactor: set/replace selection handling.
- Fix: Wrong test on rectangular selection.
- Enhancement: add empty sections to initial settings file (.ini) to force a canonical order.
- Fix: More select and replace target issues.
- Fix: Toggle All folds behavior.
- CR: Changed inifile for Portable Apps Notepad3.
- Fix: TAB indentation handling according to predecessors (NP2).
- Fix: selection (anchor and current caret position) handling.
- Enh: Version check for Visual Studio 2017 v.15.5.5.
- Fix: "Line Comment" id noselection and current pos == indent pos.
- Fix: Initial .ini-file: unused section removed.
- Fix: Support scintilla msg: SCN_NEEDSHOWN (EXPAND folded sections if needed).
- Revert: Accelerator Key "Alt+UP/DOWN" for navigation (jump) between folded section headlines.
- Enhancement: Added Accelerator Keys: Alt+LEFT/RIGHT to FOLD/EXPAND folding section.
- Fix: Avoid some issues regarding folding, using SCI_SETAUTOMATICFOLD.
- Fix: Revert TAB + Selection action corresponding to VisualStudio's behavior.
- Fix: Sensible handling of "Block -> (Un)Indent" for different kinds of selections.
- Fix: Font selection dialog does not reset some styles correctly.
- Fix: Preserve selection on Line Comment toggle.
- Enhancement: Make selection block indentation similar to VisualStudio's.
- Fix: Char2Hex: Remove limit single byte selection.
--------------------------------------------------
Version 3.18.113.828 (13 January 2018)
--------------------------------------------------
- Performance: Redraw indicator ranges (Mark Occurrences) only if needed - avoiding recursive SCN_UPDATEUI notifications.
- Mark Occurrences: force position progress in case of zero-length matches.
- Performance: Mark Occurrence triggers enhancements.
- Convenience: Re-introduce "max mark occurrence counter" to avoid lazy UI.
(Set .ini section [Settings2] MarkOccurrencesMaxCount=-1 for unlimited (MAX_INT)).
- Fix: Correct counting of found matches.
- Fix: Broken find/replace (regex) on groups.
- Performance: Tuning delay parameter of "Mark Occurrences" (instantly).
- Performance: Remove test for set already, if indicator does not change.
- Fixing several Mark Occurrences (instantly) issues.
- Fix: Some customizing scheme issues (relative font size hierarchy).
- Fix: Document modified flag not set properly (title, toolbar & statusbar only).
- Fix: Renaming menu entries Edit: "Clear" -> "Delete"
- Enhancement: structured "Mark Occurrences" menu hierarchy.
- Fix: Menu "Mark Occurrences" whole word matching: add check indicator if one of word matching options (selected/current) is used.
- Change: Menu "Mark Occurrences" whole word matching: radio button behavior.
- Fixes Regarding Scheme customizing (rel. size) and View Menu (Mark Occ.).
- Fix: Regex replacement on look-ahead assertion.
- Fix: relative font sizing of non-default-style entries in custom schemes.
- Fix: Font selection box title display.
- Fix: clean coding for "relative sizing hierarchy".
- Feature: "Customize Schemes..." UI change to represent "relative sizing hierarchy".
- Fix: Update view on style change in "Customize schemes..."
- Fix: Bug regarding "Reset" button in "Customizing Schemes..." dialog.
- Fix: Bug in detect and style Hyperlink Hotspot.
- Feature: Initial version of Nim Lexer. Added Scintilla project and header for Nim lexer.
- Performance: Non visible styling during idle time.
- Performance: Cache page instead of line only.
- Change: Option "after visible" for styling in background (idle time).
- Update: Compiler version 191225834 (VS2017 V.15.5.3).
- Fix: Loosing state of "Transform Backslashes" while switching regex/wildcard search.
- Fix: Block "mark occurrences" event on transaction pair: (SCI_TARGETFROMSELECTIO, SCI_REPLACETARGET).
- Fix: protect SCI target transactions by a guard to break recursion of Mark Occurrences caused by ChangeNotification() events.
- Fix: Handle "2nd Default Styles" as separate standard (2nd) lexer module.
- Fix: Handling initial 1st or 2nd default style in case of "Default Text", shown on int "Customize Schemes...".
- Fix: Crash on navigation between schemes beyond start/end of tree view.
- Fix: Disable (using 1st Default Style) "Associated filename extensions" for "2nd Default Style".
- Fix: Clone associated filename extension list of Default Style (for 2nd Default Style).
- Enhancement: status bar information about usage of 2nd Default Style.
- Change: View "2nd Default Style" as (dbl-clickable) status bar item.
- Cleanup: NimLexer = NimrodLexer -> rely on Scintilla distribution for Nim(rod) lexer.
- Change: Word Wrap mode from WORD to SPACE to avoid wrapping at style change edges.
- Fix: move word wrap start symbol to margin (new WW mode SPACE (instead of WORD))".
- Fix: Mark Occurrences timeout on Find/Replace.
- Fix: Optimized status bar partitioning.
- Fix: Revert naming for "2nd Default Text".
- Clean Code: Reasonable assumption for memory allocation of style handling (backup, save, load).
- Tuning: Statusbar Partitioning.
- Fix: Bug on switching between 1st and 2nd standard lexers.
- Fix: Selection of 1st or 2nd standard lexer (Default Text) based on Use2ndStandard flag.
- Change: Onigmo RegEx syntax dialect.
- Change: Onigmo regex engine: use PERL 5.10 syntax + enable "\<" and "\>" word boundary matching.
- Fix: Onigmo regex engine PERL syntax: supporting named groups referencing in replacement text.
- Enhancement: Statusbar: Count number of bytes in current encoding.
- Change: Replace Windows Notepad Installer version only.
- Change: Executables not compressed with UPX.
--------------------------------------------------
Version 3.18.105.802 (5 January 2018)
--------------------------------------------------
- Fix: Custom toolbar images ini settings added.
- Fix: Add hints for free text style properties in "Customize Schemes...".
- Fix: Test version numbers for month Jan - Sep (mono digit).
- Fix: Redundant echo of expected version string.
- Fix: Toggle line comments were placed at line end.
- Feature: (Mark Occurences) instant word highligting.
- Added: Switch to draw all occurrences in visible area only.
- Opt: Delayed mark all occurrences for better UI response.
- Enhancement: Async mark all occurrences via timer (UI response).
- Fix: "Match Current Word" should not highlight partial word matches in other lines.
- Added: Hyperlink Hotspot Style updates on UpdateUI event (visible area only)
- Fix: Fetching wrong visible document line number in case of hidden or wrapped lines.
- Fix: Ignoring queued timer event, if timer has been killed.
- Performance: Optimizing timer handling to avoid multiple calls of complex methods.
- Fix: use current lexer's default text font size as base font size for relative sizing of other styles.
- Performance: Fixed some issuses, which eat up CPU.
- Fix: mark occurrences counter not updated in time.
- Minor performance enhancements.
--------------------------------------------------
Version 3.17.1228.783 (28 December 2017)
--------------------------------------------------
- Fix: Update coloring on window message WM_SYSCOLORCHANGE, including Hyperlink hotspot colors.
- Feature: Java sourcecode to compile a class which acts as a standalone tool for decrypting Notepad3's encrypted files.
- Fix: Crash on empty password for encryption tool.
- Added batch script to bulk encrypt files of given directory with encryption tool.
- Fix: Existing bash test script for encryption tool.
- Fix: Onigmo regex: . matches any charakter and does not stop at line breaks.
- Fix: Onigmo regex: remove extend mode, where # is used as line rest comment.
- Feature: Regex - "Dot matches all" vs. "Dot does not match line-breaks" switchable by option in find/replace dialog.
- Feature: inticator style used for matching braces too.
- Fix: Change hard coded default values for matching brace styling according to new style (indicator).
- Fix: font styling of Hyperlinks are not reset to default if feature is switched off.
--------------------------------------------------
Version 3.17.1223.778 (23 December 2017)
--------------------------------------------------
- Fix: Hyperlink feature related delay of font changing.
- Added more triggers for Hyperlink style updated.
- Refactoring: Cleanup trigger points for URL Hotspot styling.
- Fix: Last hyperlink was restyled to lexer's style (not desired hotspot style).
- Feature: Replaced DeelX with Onigmo regular expression engine.
- Fix: Default lexer style changed a litle bit after first UI update.
- Fix: Redraw bug in case of SCI_COLOURISE.
- Fix: Removed some Hyperlink dection triggerpoints, which might be collide with SEARCHINTARGET and REPLACETARGET race conditions (seperate threads).
- Fix: Removed unneccessary Hyperlink trigger-point from InitInstance().
- Fix: Performance issue while pasting long text from clipboard.
- Fix: Local memory freeing.
- Fix: Complete set of font weights for syntax scheme.
- Fix: Prepare fixing race-condition search/replace target vs. selection.
- Fix: Set target range only for search/replace and not for paste after modifying selection (race-condition search/replace target vs. selection).
- Fix: Transform backslashes for regex find/replace.
- Feature: Added Scintilla's indicator styles to scheme config for "Mark Occurences".
- Fix: Out of range fallback for indicator string retrieval.
- Fix: Issue regarding TransformBackslash handler (regex vs. std & find vs. replace).
- Fix: Replace dialog: Resize regex text box to not overlay other control.
- Fix: Enable more hyperlink styling trigger points, since "replace target" race-conditions have been fixed and fast regex engine (Onigmo) is integrated.
- Fix: Issue regarding applying lexer style while hyperlink feature is active.
- Fix: Reverting to buffered draw, until screen flickering issues are clarified.
- Fix: Onigmo regex engine handling string/line end meta char '$' independent of EOL mode.
- Fix: Replace-all with look-behind assertion.
- Update: uthash to version 2.0.2.
- Fix: Onigmo word boundaries issues (incl. "double" escaped esc) (not solved yet: multi escaped esc).
- Fix: Customize schemes issues (now Default Font: is applied to "Default Text" and "Current Lexers" Default Font).
- Fix: Allow (horiz.)TAB chars in selection copied to find/replace dialog search box on pop up time (Ctrl+F).
- Fix: Setting "Default Font..." will clear current lexer's default font - inherits global default font then.
- Fix: "Default Font..." configuration issue.
- Minor fixes for Onigmo interface class.
- Fix: "Default Font..." add check for current scheme is not default text already.
- Enhanced style copy method.
- Refactoring: Style Select Font dialog.
- Fix: Schemes in alphabetical order (displayed names).
- Feature: Dual configuration of Default Text Font or Current Scheme's Default Text Font.
- Fix: Bug on font selection - global vs. current scheme.
- Fix: More bugs regarding standard lexer handling.
- Fix: Using WYSIWYG fonts (screen vs. printer).
- Added Online Documentation menu item.
- Fix: Inconsistencies: cut,copy,replace,... mainmenu and context menu vs. toolbar.
- Fix: New Font selection feature: 2nd Default Font not supported completely.
- Fix: setting/changing encryption pass-phrase did not trigger "file modified" flag.
- Fix: Problem with 1st vs. 2nd Default Text Scheme selection.
- Fix: Inconsistency 1st vs. 2nd Default Text Font selection.
- Fix: Use Standard Lexer on new (empty) files.
- General bug fixes and code cleanup.
--------------------------------------------------
Version 3.17.1210.729 (10 December 2017)
--------------------------------------------------
- Fix: flashing of Search text-box of find/replace dialog in case of Win7 Classic theme
- [Settings2] section default values (and comment out if not changed) of initially distributed Notepad3.ini
- Feature: Added Awk Script syntax highlighting (Python lexer based)
- Fix: Edit/Special : URL encoding/decoding for full UTF8 (non ASCII) characters.
- Refactoring: Platform independent URL decoding.
- Fix: Gibberish output if URL decoded again (2nd time).
- Fix: URL decoding, if encoding has "%#nnn" formatted ASCII chars.
- Fix: HTML character encoding starts with ampersand, not percent char.
- Fix: URL encoding: Added flag URL_ESCAPE_PERCENT for UrlEscape().
- Feature: URL Hotspot (first version).
- Fix: Added version info for VS2017 v.15.5
- Feature: Enhanced URL Hotspot highlighting.
- Refactoring and enhancements for Hyperlink Hotspot feature.
- Fix: Consistent texts for "Hyperlink Hotspots".
- Feature: open Hyperlink in NP3 (if applicable: "file://...").
- Added some more places, where Hotspot style redrawing does not slow down responsiveness.
- Fix: Hyperlink Hotspots turned off by default. (not stable enough to force the feature).
- Fix: Normal setup can now clean replace Windows Notepad registry keys.
- Feature: Update notification in Notepad3 setup.
- Code Cleanup
--------------------------------------------------
Version 3.17.1202.715 (2 December 2017)
--------------------------------------------------
- #191 Revert to Scintilla's old (default) font rendering technology. Modern DirectWrite available at [Settings2] SciDirectWriteTech=1
- Fix: Removed unused mouse wheel message interception.
- Fix: Disabling buffered draw. (Scintilla: "Current platforms perform window buffering so it is almost always better for this option to be turned off.")
- Fix: Font Smoothing: [Settings2] SciFontQuality=n has no effect on some special fonts (preserving old behavior if not defined).
- Workaround: #192 Drag n' drop from 32-bit process on Notepad3 x64 window
- Renaming of drag n' drop methods.
- Fix: Adapt text for messagebox: no valid drop-file.
- Fix: issue regarding Accelerator keys for find/replace dialog.
- Feature: Additionally show full path to current directory in windows title.
- Fix: Minipath full path display in titlebar (no dbl-slash in case of drive letter only).
- Fix: Mark occurrences: Outline frame of indicator box shouls have same aplpha channel color (configurable alpha2:nnn).
- Change request: move "Mark Occurrences" check box from menu to find/replace dialog options.
- Fix: Find/replace dialog: mark occurrences: use standard save/restore settings behavior.
--------------------------------------------------
Version 3.17.1124.690 (24 November 2017)
--------------------------------------------------
- Fix: Revert to Scintilla's default mouse down and mouse wheel capture mode.
- Fix: "Mark All Occurrences" setting of find/replace dialog should only be persisted, if "Save Settings on Exit" is enabled.
- Fix: UpdateLineNumberWidth() triggers cleanup.
- Adapt: C/C++ styles - keyword vs. typedefs.
- Fix: Issue with update of line number margin width.
- Fix: Transform backslash issues.
Fix: C/C++ keywords and types.
Timer call for mark occurrences during find/replace.
- Fix: lookaround regex (DeelX) matches were not replaced.
- Optimized DeelX regex interface.
- Fix: Issue regarding find/replace empty-string.
- Fix: Adapt DeelX RE interface according to enhanced find/replace dialog.
- Fix: Issue #173 - regex/wildcard search: replacement string not used if "Check All Occurrences" is active.
- Changed SDK version target to 10.0.16299.0
- Feature: find/replace mark occurrences.
- Feature: Indicator in find text box, if search string is matched in document.
- Feature: validate regexpr.
- Fix: Recoding minipath's version.h to UTF-8 (Sig), because it contains codepage dependant copyright sign.
- Fix: Corrections to .vcproj settings inconsistencies (reported in release build process).
- Feature: Auto remember bookmarks in recent file history.
- Fix: undo/redo issues (if no selection choosen).
- Fix: Consecutive DEL/BACKSP undo/redo broken (wrapped by unconditional selection undo/redo).
- Feature: Mark occurrences coloring is now configurable via "Customize Schemes...".
- Fix: Issues found by static code analysis.
- Minor fix for DeelX RegEx engine.
- Major refactoring of find/replace regex evaluation.
- Fix: Bug in getting string length from dialog box readout.
- New "D" and "Go" programming language support.
- Update: Scintilla Lib v.4.0.2 (402).
- Fix: Break criteria for "replace all in range".
- Fix: Issues found regarding zero-length matches using regex anchors, including infinite loops on replace all.
- Fix: RegEx start anchor adjustment.
- Enhance: comments with useful web links.
- Fix: Problem with regex line start and replacements at line end.
- Move position after replacement (EditReplace()).
- Refactoring of "Replace All" methods.
- Split C++ Keywords in two parts (1st: standard keywords, 2nd: keywords starting with double underscore "__xxx").
- Minor polish of Readme.md.
Put changes compared to Notepad2-mod into Readme.md.
- Repair empty resource file (Notepad3.rc).
- Bookmark Enhancements
- Swap text fields in Find/Replace dialog.
- Fix: Issues regarding selection undo/redo.
- Fix: Issues regarding margins configuration.
- Added Book Mark style (Color Background and Alpha) to customize schemes...
- Replaced old bookmark pixmap (visible margin) by Scintilla's BOOKMARK marker style.
- Update: Compiler version detection.
- Feature: "Swap Strings" button in Find/Replace dialog.
- Fix: Issue #139 and #143 (remove selection undo/redo for non-text-changing operations on selections).
- Fix: issue #144 (Left arrow no longer moves to previous line).
- Fix: issue #145 (Mark Occurrences Counter is broken).
- Increase buffers for edit box in "Customize Schemes..." dialog.
- Fix: Pasting clipboard content into selection box should replace text and cancel selection then.
- Minor bug fixes and more...
--------------------------------------------------
Version 2.17.1023.632 (23 October 2017)
--------------------------------------------------
~ Fix: pasting clipboard content into selection box should replace text and
cancel selection then (in case of swapping clipboard, the selection is preserved).
~ Changed buffers for operating edit box in customize schemes.
~ Implemented Feature Request #51 (buffer size of file extension edit box).
~ First prottotype of VirtualSpace RectangularSelection by default (very old
behavior can be turned on by [Settings2] DenyVirtualSpaceAccess=1).
~ Added switch ([Settings2] UseOldStyleBraceMatching) to preserve old style
brace matching behavior.
~ Applied patch from Neil Hodgson (Master of Scintilla Lib - respond to
scintilla lib issue report #1976).
~ Fixed .ini paths for np3portableapps.
~ Restore wrongly discarded np3portableapps .ini files for NP3Portable,
redirecting .ini reading to correct path.
~ Documentation: Minor changes to Notepad3.txt.
~ Documentation: doc/Notepad3.txt - add description of [Section2] .ini settings
(mostly taken from orig. Notepad2 FAQs).
~ Remove settings for "Favorites" directory -> NP3 uses then users system
default folder (%USERPROFILE%\Favorites).
~ Default to modern displays settings, using Scintilla's new technology
: SciDirectWriteTech=1, SciFontQuality=3
~ Settings [Section2] (cannot be set via GUI) add all possible names and
default values, if applicable.
~ License.txt: switch to UTF-8 encoding.
~ Feature: Show warning before loading file with unknown (custom schemes) file
name extension.
~ Add code snippet (activation only prepare for future extensions).
~ Fix: Crash in Favorites management.
~ Small code refactoring (replacing deprecated methods).
--------------------------------------------------
Version 2.17.1016.610 (16 October 2017)
--------------------------------------------------
~ File History Dlg: rename button "Remove" -> "Discard"
(discard selected item from file history list).
~ Added remove button for list items.
~ Checkbox for "preserve caret position" settings.
~ Removed unnecessary build artifacts from np3portable.
~ Minor bugfixes for session feature
(file history: remember caret pos and encoding).
--------------------------------------------------
Version 2 Build 605 (15 October 2017)
--------------------------------------------------
~ Fix: Crash on accessing UndoRedo structure while NP3 instance has
not been initialized completely (.LOG file opening bug).
--------------------------------------------------
Version 2 Build 600 (15 October 2017)
--------------------------------------------------
~ Fix: Virtual space access: column indicator.
~ Fix: Customize Schemes... Font... selection: bold/italic now detected
(bold: if selection >= FW_SEMIBOLD)
--------------------------------------------------
Version 2 Build 583 (11 October 2017)
--------------------------------------------------
~ Fix: syntax error on exit script.
~ Cleanup AHK testing script, add test artifacts.
~ Fix: Try to retrieve correct file version for Notepad3Portable creator.
~ Fix: StatusBar Col display is not correct in case of Virtual Space Access.
~ Generalized internal multi-byte codepage definitions (code cleanup).
~ AHK test script for NP3 GUI tests.
~ Fix: locale / language independant version patching batch for Notepad3Portable
~ Fix: version patching for Notepad3 PortableApps build batch.
~ Fix: Recode to ANSI (in case of Chinese ANSI code-page)
--------------------------------------------------
Version 2 Build 568 (8 October 2017)
--------------------------------------------------
~ Prettier Browse Icon.
~ Fix: Reverting "reload as UTF-8 not work bugfix".
~ Fix: Texture glitch on "Browse" button.
~ Updated the Run Dialog icon.
~ Fix: Binary directory to build portable app.
~ Code comment for completeness.
~ Fix: In-text encoding (convert encoding).
~ Fix: minor StatusBar string corrections.
~ StatusBar information enhancements.
~ Fix: Support pasting position at virtual space.
~ Fix: Move caret to convenient position after pasting clipboard
(no current selection).
~ Fix: Virtual space navigation and rectangular selection (minor issues)
(allow "Virtual Space Rectangular Selection"
also allows moving Caret into virtual space (beyond line end))
~ Fix: Copy/Cut & Paste of current line (in case of no selection -
Visual Studio behavior - using SCI's MSDEVLineSelect).
~ Enhanced clipboard recoding detection.
~ Fix: Bug in code-page related text conversion.
--------------------------------------------------
Version 2 Build 548 (3 October 2017)
--------------------------------------------------
~ Fix: Made corrections to build 505 change log (spelling, grammar, etc).
~ Fix: FILE status becomes [MODIFIED] when doing CONTROL+A to select ALL.
~ Fix: Paste from clipboard to ANSI code page:
unnecessary switching encoding to UTF-8.
~ Fix: Undo/Redo of virtual space selection rectangle not correct.
~ Fix: StatusBar SelectionCount (Sel) : count chars instead of bytes.
~ Fix: Punctuation chars for "Accelerated Word Navigation" (Settings2:
ExtendedWhiteSpaceChars= add non word chars here).
~ Fix: Do mouse wheel scrolling in editor area only.
~ Fix: DPI awareness in manifest.
~ Code cleanup
~ Fix: word delimiter in case of "Accelerated Word Navigation".
~ Correct UFT Spelling on Encoding menu.
--------------------------------------------------
Version 2 Build 505 (23 September 2017)
--------------------------------------------------
+ 1st chunk of StrSafe migration.
+ Some more StrSafe changes
+ Fix: manually edited settings (SciDirectWriteTech, SciFontQuality)
should be placed in settings section [Settings2].
+ Extended default "space char set" for "Accelerated Word Navigation" to avoid
unexpected "accelerated word navigation" behavior, space-char extension is
restricted to 7-bit ASCII char set (ignoring specified non-7-bit-ASCII chars).
+ StrSafe adaptions
+ Fixed: settings SciFontQuality have been overwritten by Scheme configuration.
(Fonts: Calibri, Cambria, Candara, Consolas, Constantia, Corbel, Segoe UI are using
'cleartype smoothing' (SC_EFF_QUALITY_LCD_OPTIMIZED) by default, if not
configured in Schema definition for Lexer)
+ Added font "Source Code Pro" to list of special fonts for cleartype smoothing.
+ Fix: undo destructive operation on selection (rectangle) does not restore
selection or preserves selection mode (extends selection on caret movement)
-> need to send SCI_CANCEL at the end of restored selection.
+ Found bug caused by StrSafe migration
(COUNTOF() for buffer size must not be used on buffer pointer)
+ migrate StrCpyN() and StrCatBuff() to corresponding StrSafe.h methods
+ Adapted lstrcpyn() calls according to StrSafe.h requirements.
+ Refactoring of "Accelerated Word Navigation" to be compliant with Scintillas
WhiteSpace and Punctuation defines.
+ "Accelerated Word Navigation" activation influences "Mark Occurrences" (whole word) if set
+ Extended: Remember selection undo / redo
+ Added undo / redo selection to more operations
+ Found Scintilla 400 method "SCI_CUT" (cut selection) broken: lost last char
replaced by SCI_COPY & SCI_CLEAR combination (for now).
+ changes to EditGetClipboardText() solved the SCI_CUT problem, so it can be
switched back from SCI_COPY & SCI_CLEAR to SCI_CUT
(byte alignment in 64-bit, i am nut sure)
+ switching Scintilla internal codepage to UTF-8 only (resp. Japanese,
Chinese and Korean DBCS) single-byte encoding is supported externally and
converted (fore and back) to UTF-8 internally, this simplifies
i.e. clipboard exchange, etc.
+ Removed support for obsolete Korean Johab (1361) codepage.
+ Fixed ConvertText() according to internal SCI codepage
+ Refactoring: Encoding handling
+ More operations for selections undo/redo.
+ Enabled "unlimited" (as in Scintilla Lib: dep. on memory and INT_MAX)
undo / redo selection history using utarray from uthash header library
(https://troydhanson.github.io/uthash/index.html)
+ Moved crypto readme to doc dir
+ remove internal codepage support for Chinese, Japan, Korean DBCS use
generalized UTF-8 codepage instead
(conversions do not work as expected within scintilla lib)
- Dropping Windows XP support , using compiler toolset vc141 Win SDK 10.0.
(current VC++ redistributable needed?)
+ Replaced lstrcmp() and lstrcmpi() by StrSafe (helper.h defined) methods.
+ Relaunch elevated keeping current changes in a buffer.
+ Fixed some problems for feature "relaunch elevated preserve changes".
+ First AppVeyor config
+ Remember window position in case of "relaunch elevated".
+ Fixed memory initialization problem during InitInstance()
+ Enhanced consistency between toolbar (save button) and titlebar (modified marker)
+ "Relaunch elevated": use current .ini-file instead of new user's (Admin's) .ini
+ Cleanup tmp filebuffer, if elevation has been rejected.
+ Fixed crash in case of wrong Encoding (detection)
+ Changed version display on Help/About.
+ New Powershell script to patch version numbers
+ appveyor.yml using same powershell commands to patch version
- Remove FindReplaceDlg handle declared as external from compilation unit
Edit.c - not really needed here. (externals (handles / pointers) seemed to
be a problem on module init instance time in 64-bit)
+ Fixed: Open find dialog the first time (new NP3 instance) while
clipboard is empty, NP3 crashes (try to LocalFree() static allocated memory)
+ Fixed: RegExpr "Find previous" corrected (find mode "left to right" has been
used, which has not the intended behavior).
+ Updated Compiler Info.
+ Added build.txt (and .ps1 changes) for Local Build Version patching
(common AppVeyor/Local script).
+ Fixed issue "Convert to Title Case" while selected text is all upper case.
+ Fixed broken "Complete Word" feature (Ctrl+Enter/Return).
+ Changed accelerator key for feature "Complete Word" from Ctrl+Enter to Ctrl+Alt+Enter.
+ Added feature "Insert New (empty) Line above current line Ctrl+Enter (as in VisualStudio).
+ Code cleanup
+ Added new Settings "Virtual Space on Rectangular Selection" used to select.
rectangle not delimited by line endings (but including virtual space).
+ Readme.txt Updated. (Thanks Will)
--------------------------------------------------
Version 2 Build 450 (18 August 2017)
--------------------------------------------------
- Fixed "file modified" flag not set on Ctrl+X actions
- Fixed re-enable accidentally disabled toolbar buttons (find, replace, clear, toggle-folds, file-launch)
- Fixed remove obsolete settings entry, never read (SciDrawTechnology)
- Fixed crash: not a good idea to make char array (char*) external to other compilation unit.
- Fixed wrong shortcut in menu on word navigation (Ctrl+LEFT/RIGHT)
- Renamed encoding menu item: "Recode No FileVars" (Alt+F8) =>> "Ignore Encoding Tags" (Alt-F8)
- UTF-8 encoding of License.txt (fixing: different ANSI codepage for copyright sign)
- Update to Scintilla 400 (early bird) pre-release.
--------------------------------------------------
Version 2 Build 440 (16 August 2017)
--------------------------------------------------
- Fixed unicode conversion error fixed in .rc
- Added Del/Back Selection preserving on Undo/Redo
- Fix: restore "rectangular" selection too on "Selection Cut" Undo/Redo
- Cut Selection (Ctrl-X) will preserve Selection on Undo/Redo
- Fixed Toolbar Button "Save" has to be enabled on encoding changes
- Fixed bug on path compare for editing own settings file (.ini) to disable "save settings" menu entries (should be case insensitive)
- Zero initializing string buffers (hardening code while searching an issue regarding "Recent Files" list in "relative paths" mode
- Added Enabling/Disabling Save-Button in toolbar according to file modified indicator.
- Menu integration of "hidden" commands
- Fixing and cleanup build for Notepad3Portable
--------------------------------------------------
Version 2 Build 432 (10 August 2017)
--------------------------------------------------
- Fixed issue #35 (preserve FileExtension settings while switching Styles / 2nd Default Scheme).
- Enlarge some string buffers for dialogs.
- Fixed np3encrypt vcxproj files.
- Added command line option ( /v ) to print file immediately and quit (like Window's original notepad.exe /p option).
- Added printing additional option /v dialog to allow access to the Printer dialog (as on Menu: Print... ).
- Initial version of PortableApps.com Launche and Installer build.
- Build environment, to create Notepad3Portable (according to Portableapps.com) (x86/x64).
--------------------------------------------------
Version 2 Build 422 (10 August 2017)
--------------------------------------------------
- Cleanup manifest handling
- Minipath DPI aware false
--------------------------------------------------
Version 2 Build 411 (9 August 2017)
--------------------------------------------------
- Reintroduce HighDPI toolbar
- Fixed nullptr access while pressing "favorites" toolbar button on 'virgin' Notepad3 ToolBar
- Added VS2017 .vcproj files and adapted Compiler Tool Set accordingly
- Integrate Scintillas DirectWrite technology
- Minor cleanups reported by CppCheck v.1.79
- Added VisualStudio's Editor Behaviour for Ctrl-C and Ctrl-X
- Fixed broken Ctrl-Q (toggle line comments)
--------------------------------------------------
Version 2 Build 398 (13 June 2017)
--------------------------------------------------
- Updated Scintilla to version 3.7.5
- Don't use 2nd default syntax scheme by default. (Issue #21)
- Added Microsoft Visual C++ 2017 (vc141) support.
- Bigger Toolbar Buttons (24px). Should be big enough now. (Issue #21)
--------------------------------------------------
Version 1 Build 388 (06 January 2017)
--------------------------------------------------
- Updated Scintilla to version 3.7.2
- MiniPath now works on Windows XP
--------------------------------------------------
Version 1 Build 386 (08 December 2016)
--------------------------------------------------
- Crypto Module: code cleanup
- Crypto Module: Replaced LocalAlloc/GlobalAlloc by HeapAlloc methods.
- Integration of DeelX RegExpr engine (http://www.regexlab.com/en/deelx/)
- Update to Scintilla 371 (NP2 adaption due to deprecated data types).
- clean-code Solution (instead of "magic numbers").
- Fixed block selecting cause crash.
- Added RaPeHoff to the contributors list.
--------------------------------------------------
Version 1 Build 350 (05 September 2016)
--------------------------------------------------
- Updated HTML Keywords
- Updated Scintilla to version 3.6.7
- Added Microsoft Visual C++ Update 3 version number
--------------------------------------------------
Version 1 Build 330 (24 June 2016)
--------------------------------------------------
- Fixed Compiler warnings
- Updated to Scintilla 3.6.6
- Updated Apache Keywords for version 2.4
- Removed Visual Studio 2010 to 2013 Support
- Added Visual Studio 2015 Update 2 version number
- Added Support for Inno Setup 5.5.9
- Fixed Favorites Function
- Updated Rizonesoft Versions Program
- Implemented a new versioning scheme

View File

@ -0,0 +1,35 @@
Notepad3 and MiniPath Copyright © 2008-2016 Rizonesoft, All rights reserved.
https://www.rizonesoft.com
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
3. Neither the name of Florian Balmer nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
==================================================
License for Scintilla and SciTE
==================================================
Copyright 1998-2002 by Neil Hodgson <neilh@scintilla.org>
All Rights Reserved
Permission to use, copy, modify, and distribute this software and its documentation for any purpose and without fee is hereby granted, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation.
NEIL HODGSON DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL NEIL HODGSON BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGESWHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
==================================================
License for Onigmo (Oniguruma-mod) RegEx Engine
==================================================
Copyright (c) 2002-2009 K.Kosako <sndgk393 AT ybb DOT ne DOT jp>
Copyright (c) 2011-2014 K.Takata <kentkt AT csc DOT jp>
All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Binary file not shown.

View File

@ -0,0 +1,68 @@
================================================================================
= =
= Notepad3 - light-weight Scintilla-based text editor for Windows =
= =
= (c) Rizonesoft 2008-2018 =
= https://www.rizonesoft.com =
= =
================================================================================
Description
--------------------------------------------------------------------------------
Notepad like text editor based on the Scintilla source code. Notepad3 based on
code from Notepad2 and MiniPath on code from metapath.
--------------------------------------------------------------------------------
Changes compared to Flo's official Notepad2 (made in Notepad2-mod):
--------------------------------------------------------------------------------
- Code folding
- Support for bookmarks
- Option to mark all occurrences of a word
- Updated Scintilla component
- Word auto-completion
- Syntax highlighting support for AutoHotkey (AHK), AutoIt3, AviSynth, Bash,
CMake, CoffeeScript, Inno Setup, LaTeX, Lua, Markdown, NSIS, Ruby, Tcl,
YAML and VHDL scripts.
- Improved support for NFO ANSI art
- Other various minor changes and tweaks
--------------------------------------------------------------------------------
Changes compared to the Notepad2-mod fork:
--------------------------------------------------------------------------------
- Additional syntax highlighting support for Awk, D, golang, MATLAB
- State of the art Regular Expression search engine (Onigmu)
- New toolbar icons based on Yusuke Kamiyaman's Fugue Icons
(Purchased by Rizonesoft)
- Hyperlink Hotspot highlighting
(single click Open in Browser (Ctrl) / Load in Editor (Alt))
- New program icon and other small cosmetic changes
- In-App support for AES-256 Rijndael encryption/decryption of files.
(incl. external commandline tool for batch processing)
- Virtual Space rectangular selection box (Alt-Key down)
- High-DPI awareness, including high definition toolbar icons
- Undo/Redo preserves selection
- File History preserves Caret position (optional)
and remembers encoding of file
- Accelerated word navigation
- Preserve caret position of items in file history
- Count occurrences of a marked selection or word
- Count and Mark occurrences of matching search/find expression
- Visual Studio style copy/paste current line (no selection)
- Insert GUIDs
- Dropped support for Windows XP version
- Other various minor changes, tweaks and bugfixes
--------------------------------------------------------------------------------
Supported Operating Systems:
--------------------------------------------------------------------------------
Windows 7, 8, 8.1 and 10 both 32-bit and 64-bit
--------------------------------------------------------------------------------
Contributors
--------------------------------------------------------------------------------
- Rainer Kottenhoff
- Florian Balmer ( http://www.flos-freeware.ch )
- XhmikosR ( http://xhmikosr.github.io/notepad2-mod/ )
- Kai Liu ( http://code.kliu.org/misc/notepad2/ )
- RL Vision
- Aleksandar Lekov
- Bruno Barbieri

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -134,6 +134,11 @@ Source: minipath.ini; DestDir: {userappdata}\Rizone
Source: {#bindir}\Release_x64_v141\np3encrypt.exe; DestDir: {app}; Flags: ignoreversion; Check: Is64BitInstallMode()
Source: {#bindir}\Release_x86_v141\np3encrypt.exe; DestDir: {app}; Flags: ignoreversion; Check: not Is64BitInstallMode()
Source: Update\wyUpdate\64\update.exe; DestDir: {app}; Flags: ignoreversion; Check: Is64BitInstallMode()
Source: Update\wyUpdate\86\update.exe; DestDir: {app}; Flags: ignoreversion; Check: not Is64BitInstallMode()
Source: Update\wyUpdate\64\client.wyc; DestDir: {app}; Flags: ignoreversion; Check: Is64BitInstallMode()
Source: Update\wyUpdate\86\client.wyc; DestDir: {app}; Flags: ignoreversion; Check: not Is64BitInstallMode()
[Dirs]
Name: "{userappdata}\Rizonesoft\Notepad3\Favorites"

View File

@ -1 +1 @@
862
867

View File

@ -3,7 +3,7 @@
<assemblyIdentity
name="Notepad3"
processorArchitecture="*"
version="3.18.131.862"
version="3.18.205.867"
type="win32"
/>
<description>Notepad3</description>

View File

@ -641,40 +641,107 @@ BOOL EditPaste(HWND hwnd, BOOL bSwapClipBoard)
}
const int clipLen = lstrlenA(pClip);
const int iCurPos = SciCall_GetCurrentPos();
const int iAnchorPos = SciCall_GetAnchor();
const BOOL bIsSelRect = SciCall_IsSelectionRectangle();
const BOOL bIsSelEmpty = SciCall_IsSelectionEmpty();
int token = BeginUndoAction();
if (bIsSelRect)
if (bSwapClipBoard) { SciCall_Copy(); }
if (SciCall_IsSelectionRectangle())
{
IgnoreNotifyChangeEvent();
EditEnterTargetTransaction();
const int selCount = (int)SendMessage(hwnd, SCI_GETSELECTIONS, 0, 0);
if (lineCount <= 1) {
SciCall_SetMultiPaste(SC_MULTIPASTE_EACH);
SciCall_Paste();
SciCall_SetMultiPaste(SC_MULTIPASTE_ONCE);
}
else {
const int selCount = (int)SendMessage(hwnd, SCI_GETSELECTIONS, 0, 0);
for (int s = 0; s < selCount; ++s)
{
const int selCaret = (int)SendMessage(hwnd, SCI_GETSELECTIONNCARET, (WPARAM)s, 0);
const int selAnchor = (int)SendMessage(hwnd, SCI_GETSELECTIONNANCHOR, (WPARAM)s, 0);
SciCall_SetTargetRange(selAnchor, selCaret);
SciCall_ReplaceTarget(clipLen, pClip);
char* pClipLine = pClip;
// remove line-break from last line
if (*pClipLine != '\0') { StrTrimA(pClipLine, "\r\n"); }
for (int s = 0; s < selCount; ++s) {
// get lines from clip
char *ln = pClipLine;
int lnLen = 0;
while (*ln != '\0') {
if (s < (selCount - 1)) {
if (*ln == '\n' || *ln == '\r') {
if ((*ln == '\r') && (*(ln + 1) == '\n')) { ++ln; }
++ln; // next line
break;
}
else { ++ln; ++lnLen; }
}
else { ++ln; ++lnLen; } // last line
}
const int selCaretPos = (int)SendMessage(hwnd, SCI_GETSELECTIONNCARET, (WPARAM)s, 0);
const int selAnchorPos = (int)SendMessage(hwnd, SCI_GETSELECTIONNANCHOR, (WPARAM)s, 0);
int virtualSpaceLen = 0;
int selTargetStart = 0;
int selTargetEnd = 0;
if (selCaretPos < selAnchorPos) {
selTargetStart = selCaretPos;
selTargetEnd = selAnchorPos;
virtualSpaceLen = (int)SendMessage(hwnd, SCI_GETSELECTIONNCARETVIRTUALSPACE, (WPARAM)s, 0);
}
else {
selTargetStart = selAnchorPos;
selTargetEnd = selCaretPos;
virtualSpaceLen = (int)SendMessage(hwnd, SCI_GETSELECTIONNANCHORVIRTUALSPACE, (WPARAM)s, 0);
}
if (virtualSpaceLen > 0) {
char* pPadStr = LocalAlloc(LPTR, (virtualSpaceLen + clipLen + 1) * sizeof(char));
if (pPadStr) {
SIZE_T size = LocalSize(pPadStr) - sizeof(char);
FillMemory(pPadStr, virtualSpaceLen, ' ');
pPadStr[virtualSpaceLen] = '\0';
StringCchCatNA(pPadStr, size, pClipLine, lnLen);
SciCall_SetTargetRange(selTargetStart, selTargetEnd);
SciCall_ReplaceTarget(lstrlenA(pPadStr), pPadStr);
LocalFree(pPadStr);
}
else {
SciCall_SetTargetRange(selTargetStart, selTargetEnd);
SciCall_ReplaceTarget(lnLen, pClipLine);
}
}
else // no virtual space to pad
{
SciCall_SetTargetRange(selTargetStart, selTargetEnd);
SciCall_ReplaceTarget(lnLen, pClipLine);
}
SendMessage(hwnd, SCI_SETSELECTIONNCARET, (WPARAM)s, (LPARAM)selTargetStart);
SendMessage(hwnd, SCI_SETSELECTIONNANCHOR, (WPARAM)s, (LPARAM)selTargetStart);
if (virtualSpaceLen > 0) {
SendMessage(hwnd, SCI_SETSELECTIONNCARETVIRTUALSPACE, (WPARAM)s, (LPARAM)virtualSpaceLen);
SendMessage(hwnd, SCI_SETSELECTIONNANCHORVIRTUALSPACE, (WPARAM)s, (LPARAM)virtualSpaceLen);
}
pClipLine = ln; // next clip line
}
}
EditLeaveTargetTransaction();
}
else if (bIsSelEmpty)
{
SciCall_Paste();
if (bSwapClipBoard) {
SciClearClipboard();
}
}
else {
ObserveNotifyChangeEvent();
if (bSwapClipBoard) {
SciCall_Copy();
}
SciCall_ReplaceSel(pClip);
}
else // Selection: SC_SEL_STREAM, SC_SEL_LINES, SC_SEL_THIN
{
const int iCurPos = SciCall_GetCurrentPos();
const int iAnchorPos = SciCall_GetAnchor();
if (SciCall_IsSelectionEmpty())
SciCall_Paste();
else
SciCall_ReplaceSel(pClip);
if (bSwapClipBoard) {
if (iCurPos < iAnchorPos)
@ -682,10 +749,14 @@ BOOL EditPaste(HWND hwnd, BOOL bSwapClipBoard)
else
EditSelectEx(hwnd, iAnchorPos, iAnchorPos + clipLen);
}
else if (iCurPos < iAnchorPos)
else if (iCurPos < iAnchorPos)
{
EditSelectEx(hwnd, iCurPos, iCurPos);
}
}
EndUndoAction(token);
LocalFree(pClip);
return TRUE;
}
@ -3146,14 +3217,14 @@ void EditPadWithSpaces(HWND hwnd,BOOL bSkipEmpty,BOOL bNoUndoGroup)
}
for (iLine = iLineStart; iLine <= iLineEnd; iLine++) {
int iPos = SciCall_GetLineEndPosition(iLine);
const int iPos = SciCall_GetLineEndPosition(iLine);
iMaxColumn = max(iMaxColumn, SciCall_GetColumn(iPos));
}
}
else {
int iCurPos = SciCall_GetCurrentPos();
int iAnchorPos = SciCall_GetAnchor();
const int iCurPos = SciCall_GetCurrentPos();
const int iAnchorPos = SciCall_GetAnchor();
iRcCurLine = SciCall_LineFromPosition(iCurPos);
iRcAnchorLine = SciCall_LineFromPosition(iAnchorPos);
@ -3176,16 +3247,17 @@ void EditPadWithSpaces(HWND hwnd,BOOL bSkipEmpty,BOOL bNoUndoGroup)
}
pmszPadStr = LocalAlloc(LPTR, (iMaxColumn + 2) * sizeof(char));
SIZE_T size = LocalSize(pmszPadStr) - sizeof(char);
if (pmszPadStr) {
SIZE_T size = LocalSize(pmszPadStr) - sizeof(char);
FillMemory(pmszPadStr, size, ' ');
pmszPadStr[size] = '\0';
if (!bNoUndoGroup)
if (!bNoUndoGroup) {
token = BeginUndoAction();
}
IgnoreNotifyChangeEvent();
EditEnterTargetTransaction();
@ -3213,15 +3285,15 @@ void EditPadWithSpaces(HWND hwnd,BOOL bSkipEmpty,BOOL bNoUndoGroup)
pmszPadStr[iPadLen] = ' ';
}
LocalFree(pmszPadStr);
EditLeaveTargetTransaction();
ObserveNotifyChangeEvent();
if (pmszPadStr)
LocalFree(pmszPadStr);
}
if (!bNoUndoGroup && (token >= 0))
if (!bNoUndoGroup && (token >= 0)) {
EndUndoAction(token);
}
if (!bIsRectangular && (SciCall_LineFromPosition(iSelStart) != SciCall_LineFromPosition(iSelEnd)))
{

View File

@ -975,9 +975,9 @@ LRESULT CALLBACK MainWndProc(HWND hwnd,UINT umsg,WPARAM wParam,LPARAM lParam)
if (!bDenyVirtualSpaceAccess)
{
if (GetAsyncKeyState(VK_MENU) & SHRT_MIN) // ALT-KEY DOWN
SendMessage(g_hwndEdit, SCI_SETVIRTUALSPACEOPTIONS, (SCVS_RECTANGULARSELECTION | SCVS_USERACCESSIBLE), 0);
SendMessage(g_hwndEdit, SCI_SETVIRTUALSPACEOPTIONS, (SCVS_RECTANGULARSELECTION | SCVS_NOWRAPLINESTART | SCVS_USERACCESSIBLE), 0);
else
SendMessage(g_hwndEdit, SCI_SETVIRTUALSPACEOPTIONS, SCVS_RECTANGULARSELECTION, 0);
SendMessage(g_hwndEdit, SCI_SETVIRTUALSPACEOPTIONS, (SCVS_RECTANGULARSELECTION | SCVS_NOWRAPLINESTART), 0);
}
switch(umsg)
@ -1198,7 +1198,8 @@ LRESULT MsgCreate(HWND hwnd,WPARAM wParam,LPARAM lParam)
// Properties
SendMessage(g_hwndEdit, SCI_SETYCARETPOLICY, CARET_SLOP | CARET_EVEN | CARET_STRICT, iCurrentLineVerticalSlop);
SendMessage(g_hwndEdit, SCI_SETVIRTUALSPACEOPTIONS, (bDenyVirtualSpaceAccess ? SCVS_NONE : SCVS_RECTANGULARSELECTION), 0);
SendMessage(g_hwndEdit, SCI_SETVIRTUALSPACEOPTIONS,
(bDenyVirtualSpaceAccess ? SCVS_NONE : (SCVS_RECTANGULARSELECTION | SCVS_NOWRAPLINESTART)), 0);
// Tabs
SendMessage(g_hwndEdit,SCI_SETUSETABS,!bTabsAsSpaces,0);
@ -2942,9 +2943,7 @@ LRESULT MsgCommand(HWND hwnd, WPARAM wParam, LPARAM lParam)
{
if (flagPasteBoard)
bLastCopyFromMe = TRUE;
int token = BeginUndoAction();
EditPaste(g_hwndEdit, FALSE);
EndUndoAction(token);
UpdateToolbar();
UpdateStatusbar();
}
@ -2954,9 +2953,7 @@ LRESULT MsgCommand(HWND hwnd, WPARAM wParam, LPARAM lParam)
{
if (flagPasteBoard)
bLastCopyFromMe = TRUE;
int token = BeginUndoAction();
EditPaste(g_hwndEdit, TRUE);
EndUndoAction(token);
UpdateToolbar();
UpdateStatusbar();
}
@ -5405,7 +5402,8 @@ LRESULT MsgNotify(HWND hwnd,WPARAM wParam,LPARAM lParam)
if (pnmh->idFrom == IDC_EDIT) {
if (pnmh->code == SCN_MODIFIED) {
// check for ADDUNDOACTION step
if (scn->modificationType & SC_MOD_CONTAINER) {
if (scn->modificationType & SC_MOD_CONTAINER)
{
if (scn->modificationType & SC_PERFORMED_UNDO) {
RestoreAction(scn->token, UNDO);
}
@ -7330,22 +7328,28 @@ void InvalidateSelections()
int BeginUndoAction()
{
int token = -1;
UndoRedoSelection_t sel = { -1, -1, -1, -1, 0, 0, 0, 0, 0, 0, 0, 0 };
UndoRedoSelection_t sel = INIT_UNDOREDOSEL;
sel.selMode_undo = (int)SendMessage(g_hwndEdit,SCI_GETSELECTIONMODE,0,0);
sel.rectSelVS_undo = (int)SendMessage(g_hwndEdit,SCI_GETVIRTUALSPACEOPTIONS,0,0);
if ((sel.selMode_undo == SC_SEL_STREAM) || (sel.selMode_undo == SC_SEL_LINES)) {
sel.anchorPos_undo = SciCall_GetAnchor();
sel.curPos_undo = SciCall_GetCurrentPos();
}
else // SC_SEL_RECTANGLE | SC_SEL_THIN
switch (sel.selMode_undo)
{
case SC_SEL_RECTANGLE:
case SC_SEL_THIN:
sel.anchorPos_undo = (int)SendMessage(g_hwndEdit, SCI_GETRECTANGULARSELECTIONANCHOR, 0, 0);
sel.curPos_undo = (int)SendMessage(g_hwndEdit, SCI_GETRECTANGULARSELECTIONCARET, 0, 0);
if ((sel.rectSelVS_undo & SCVS_RECTANGULARSELECTION) != 0) {
if (sel.rectSelVS_undo & SCVS_RECTANGULARSELECTION) {
sel.anchorVS_undo = (int)SendMessage(g_hwndEdit, SCI_GETRECTANGULARSELECTIONANCHORVIRTUALSPACE, 0, 0);
sel.curVS_undo = (int)SendMessage(g_hwndEdit, SCI_GETRECTANGULARSELECTIONCARETVIRTUALSPACE, 0, 0);
}
break;
case SC_SEL_LINES:
case SC_SEL_STREAM:
default:
sel.anchorPos_undo = (int)SendMessage(g_hwndEdit, SCI_GETANCHOR, 0, 0);
sel.curPos_undo = (int)SendMessage(g_hwndEdit, SCI_GETCURRENTPOS, 0, 0);
break;
}
token = UndoRedoActionMap(-1, &sel);
if (token >= 0) {
@ -7365,24 +7369,30 @@ int BeginUndoAction()
void EndUndoAction(int token)
{
if (token >= 0) {
UndoRedoSelection_t sel = { -1, -1, -1, -1, 0, 0, 0, 0, 0, 0, 0, 0 };
UndoRedoSelection_t sel = INIT_UNDOREDOSEL;
if (UndoRedoActionMap(token, &sel) >= 0) {
sel.selMode_redo = (int)SendMessage(g_hwndEdit, SCI_GETSELECTIONMODE, 0, 0);
sel.rectSelVS_redo = (int)SendMessage(g_hwndEdit, SCI_GETVIRTUALSPACEOPTIONS, 0, 0);
if ((sel.selMode_redo == SC_SEL_STREAM) || (sel.selMode_redo == SC_SEL_LINES)) {
sel.anchorPos_redo = SciCall_GetAnchor();
sel.curPos_redo = SciCall_GetCurrentPos();
}
else // SC_SEL_RECTANGLE | SC_SEL_THIN
switch (sel.selMode_redo)
{
case SC_SEL_RECTANGLE:
case SC_SEL_THIN:
sel.anchorPos_redo = (int)SendMessage(g_hwndEdit, SCI_GETRECTANGULARSELECTIONANCHOR, 0, 0);
sel.curPos_redo = (int)SendMessage(g_hwndEdit, SCI_GETRECTANGULARSELECTIONCARET, 0, 0);
if ((sel.rectSelVS_redo & SCVS_RECTANGULARSELECTION) != 0) {
if (sel.rectSelVS_redo & SCVS_RECTANGULARSELECTION) {
sel.anchorVS_redo = (int)SendMessage(g_hwndEdit, SCI_GETRECTANGULARSELECTIONANCHORVIRTUALSPACE, 0, 0);
sel.curVS_redo = (int)SendMessage(g_hwndEdit, SCI_GETRECTANGULARSELECTIONCARETVIRTUALSPACE, 0, 0);
}
break;
case SC_SEL_LINES:
case SC_SEL_STREAM:
default:
sel.anchorPos_redo = (int)SendMessage(g_hwndEdit, SCI_GETANCHOR, 0, 0);
sel.curPos_redo = (int)SendMessage(g_hwndEdit, SCI_GETCURRENTPOS, 0, 0);
break;
}
}
UndoRedoActionMap(token,&sel); // set with redo action filled
@ -7398,45 +7408,67 @@ void EndUndoAction(int token)
//
void RestoreAction(int token, DoAction doAct)
{
UndoRedoSelection_t sel = { -1, -1, -1, -1, 0, 0, 0, 0, 0, 0, 0, 0 };
if (UndoRedoActionMap(token,&sel) >= 0)
{
const int anchorPos = (doAct == UNDO ? sel.anchorPos_undo : sel.anchorPos_redo);
const int currPos = (doAct == UNDO ? sel.curPos_undo : sel.curPos_redo);
UndoRedoSelection_t sel = INIT_UNDOREDOSEL;
if (UndoRedoActionMap(token, &sel) >= 0)
{
// we are inside undo/redo transaction, so do delayed PostMessage() instead of SendMessage()
#define ISSUE_MESSAGE PostMessage
#define ISSUE_MESSAGE PostMessage
ISSUE_MESSAGE(g_hwndEdit, SCI_CANCEL, 0, 0); // prepare - not needed ?
const int _anchorPos = (doAct == UNDO ? sel.anchorPos_undo : sel.anchorPos_redo);
const int _curPos = (doAct == UNDO ? sel.curPos_undo : sel.curPos_redo);
// Ensure that the first and last lines of a selection are always unfolded
// This needs to be done _before_ the SCI_SETSEL message
const int anchorPosLine = SciCall_LineFromPosition(anchorPos);
const int currPosLine = SciCall_LineFromPosition(currPos);
const int anchorPosLine = SciCall_LineFromPosition(_anchorPos);
const int currPosLine = SciCall_LineFromPosition(_curPos);
ISSUE_MESSAGE(g_hwndEdit, SCI_ENSUREVISIBLE, anchorPosLine, 0);
if (anchorPosLine != currPosLine) { ISSUE_MESSAGE(g_hwndEdit, SCI_ENSUREVISIBLE, currPosLine, 0); }
const int selectionMode = (doAct == UNDO ? sel.selMode_undo : sel.selMode_redo);
ISSUE_MESSAGE(g_hwndEdit,SCI_SETSELECTIONMODE,(WPARAM)selectionMode,0);
const int virtualSpaceOpt = (doAct == UNDO ? sel.rectSelVS_undo : sel.rectSelVS_redo);
ISSUE_MESSAGE(g_hwndEdit,SCI_SETVIRTUALSPACEOPTIONS,(WPARAM)virtualSpaceOpt,0);
if ((selectionMode == SC_SEL_STREAM) || (selectionMode == SC_SEL_LINES)) {
ISSUE_MESSAGE(g_hwndEdit,SCI_SETANCHOR,(WPARAM)anchorPos,0);
ISSUE_MESSAGE(g_hwndEdit,SCI_SETCURRENTPOS,(WPARAM)currPos,0);
}
else // SC_SEL_RECTANGLE | SC_SEL_THIN
const int selectionMode = (doAct == UNDO ? sel.selMode_undo : sel.selMode_redo);
ISSUE_MESSAGE(g_hwndEdit, SCI_SETSELECTIONMODE, (WPARAM)selectionMode, 0);
const int virtualSpaceOpt = (doAct == UNDO ? sel.rectSelVS_undo : sel.rectSelVS_redo);
ISSUE_MESSAGE(g_hwndEdit, SCI_SETVIRTUALSPACEOPTIONS, (WPARAM)virtualSpaceOpt, 0);
// independant from selection mode
ISSUE_MESSAGE(g_hwndEdit, SCI_SETANCHOR, (WPARAM)_anchorPos, 0);
ISSUE_MESSAGE(g_hwndEdit, SCI_SETCURRENTPOS, (WPARAM)_curPos, 0);
switch (selectionMode)
{
ISSUE_MESSAGE(g_hwndEdit, SCI_SETRECTANGULARSELECTIONANCHOR, (WPARAM)anchorPos, 0);
ISSUE_MESSAGE(g_hwndEdit, SCI_SETRECTANGULARSELECTIONCARET, (WPARAM)currPos, 0);
if ((virtualSpaceOpt & SCVS_RECTANGULARSELECTION) != 0) {
case SC_SEL_RECTANGLE:
ISSUE_MESSAGE(g_hwndEdit, SCI_SETRECTANGULARSELECTIONANCHOR, (WPARAM)_anchorPos, 0);
ISSUE_MESSAGE(g_hwndEdit, SCI_SETRECTANGULARSELECTIONCARET, (WPARAM)_curPos, 0);
// fall-through
case SC_SEL_THIN:
if (virtualSpaceOpt & SCVS_RECTANGULARSELECTION) {
int anchorVS = (doAct == UNDO ? sel.anchorVS_undo : sel.anchorVS_redo);
int currVS = (doAct == UNDO ? sel.curVS_undo : sel.curVS_redo);
ISSUE_MESSAGE(g_hwndEdit, SCI_SETRECTANGULARSELECTIONANCHORVIRTUALSPACE, (WPARAM)anchorVS, 0);
ISSUE_MESSAGE(g_hwndEdit, SCI_SETRECTANGULARSELECTIONCARETVIRTUALSPACE, (WPARAM)currVS, 0);
if ((anchorVS != 0) || (currVS != 0)) {
ISSUE_MESSAGE(g_hwndEdit, SCI_SETRECTANGULARSELECTIONANCHORVIRTUALSPACE, (WPARAM)anchorVS, 0);
ISSUE_MESSAGE(g_hwndEdit, SCI_SETRECTANGULARSELECTIONCARETVIRTUALSPACE, (WPARAM)currVS, 0);
}
}
}
ISSUE_MESSAGE(g_hwndEdit, SCI_CANCEL, 0, 0);
break;
#undef ISSUE_MASSAGE
case SC_SEL_LINES:
case SC_SEL_STREAM:
default:
// nothing to do herer
break;
}
// set current state
ISSUE_MESSAGE(g_hwndEdit, SCI_SETVIRTUALSPACEOPTIONS,
(bDenyVirtualSpaceAccess ? SCVS_NONE : (SCVS_RECTANGULARSELECTION | SCVS_NOWRAPLINESTART)), 0);
//ISSUE_MESSAGE(g_hwndEdit, SCI_CANCEL, 0, 0);
#undef ISSUE_MASSAGE
}
}
@ -7448,8 +7480,7 @@ void RestoreAction(int token, DoAction doAct)
//
int UndoRedoActionMap(int token, UndoRedoSelection_t* selection)
{
if (UndoRedoSelectionUTArray == NULL)
return -1;
if (UndoRedoSelectionUTArray == NULL) { return -1; }
static unsigned int iTokenCnt = 0;
@ -7458,32 +7489,31 @@ int UndoRedoActionMap(int token, UndoRedoSelection_t* selection)
if (selection == NULL) {
// reset / clear
SendMessage(g_hwndEdit,SCI_EMPTYUNDOBUFFER,0,0);
SendMessage(g_hwndEdit, SCI_EMPTYUNDOBUFFER, 0, 0);
utarray_clear(UndoRedoSelectionUTArray);
utarray_init(UndoRedoSelectionUTArray,&UndoRedoSelection_icd);
utarray_init(UndoRedoSelectionUTArray, &UndoRedoSelection_icd);
iTokenCnt = 0U;
return -1;
}
if (!(BOOL)SendMessage(g_hwndEdit,SCI_GETUNDOCOLLECTION,0,0)) {
return -1;
}
if (!SciCall_GetUndoCollection()) { return -1; }
// get or set map item request ?
if (token >= 0 && utoken < iTokenCnt) {
if ((token >= 0) && (utoken < iTokenCnt))
{
if (selection->anchorPos_undo < 0) {
// this is a get request
*selection = *(UndoRedoSelection_t*)utarray_eltptr(UndoRedoSelectionUTArray,utoken);
*selection = *(UndoRedoSelection_t*)utarray_eltptr(UndoRedoSelectionUTArray, utoken);
}
else {
// this is a set request (fill redo pos)
utarray_insert(UndoRedoSelectionUTArray,(void*)selection,utoken);
utarray_insert(UndoRedoSelectionUTArray, (void*)selection, utoken);
}
// don't clear map item here (token used in redo/undo again)
}
else if (token < 0) {
else if (token < 0) {
// set map new item request
utarray_insert(UndoRedoSelectionUTArray,(void*)selection,iTokenCnt);
utarray_insert(UndoRedoSelectionUTArray, (void*)selection, iTokenCnt);
token = (int)iTokenCnt;
iTokenCnt = (iTokenCnt < INT_MAX) ? (iTokenCnt + 1) : 0U; // round robin next
}

View File

@ -70,6 +70,9 @@ typedef struct _undoSel
}
UndoRedoSelection_t;
#define INIT_UNDOREDOSEL { SC_SEL_STREAM, -1, -1, 0, 0, 0, SC_SEL_STREAM, -1, -1, 0, 0, 0 }
typedef enum {
UNDO = TRUE,
REDO = FALSE

View File

@ -12,7 +12,7 @@
#undef APSTUDIO_READONLY_SYMBOLS
/////////////////////////////////////////////////////////////////////////////
// Englisch (USA) resources
// English (United States) resources
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
@ -77,7 +77,7 @@ BEGIN
MENUITEM "Save &Copy...\tCtrl+F6", IDM_FILE_SAVECOPY
MENUITEM "&Read Only", IDM_FILE_READONLY
MENUITEM SEPARATOR
MENUITEM "Set Encryption Passphrase", IDM_SETPASS
MENUITEM "Set Encr&yption Passphrase", IDM_SETPASS
MENUITEM SEPARATOR
POPUP "&Launch"
BEGIN
@ -125,7 +125,7 @@ BEGIN
MENUITEM "Propert&ies...", IDM_FILE_PROPERTIES
MENUITEM "Create &Desktop Link", IDM_FILE_CREATELINK
MENUITEM SEPARATOR
MENUITEM "Browse...\tCtrl+M", IDM_FILE_BROWSE
MENUITEM "&Browse...\tCtrl+M", IDM_FILE_BROWSE
POPUP "&Favorites"
BEGIN
MENUITEM "&Open Favorites...\tAlt+I", IDM_FILE_OPENFAV
@ -143,30 +143,30 @@ BEGIN
MENUITEM SEPARATOR
MENUITEM "Cu&t\tCtrl+X", IDM_EDIT_CUT
MENUITEM "&Copy\tCtrl+C", IDM_EDIT_COPY
MENUITEM "Copy A&ll\tAlt+C", IDM_EDIT_COPYALL
MENUITEM "Copy &Add\tCtrl+E", IDM_EDIT_COPYADD
MENUITEM "C&opy All\tAlt+C", IDM_EDIT_COPYALL
MENUITEM "Cop&y Add\tCtrl+E", IDM_EDIT_COPYADD
MENUITEM "&Paste\tCtrl+V", IDM_EDIT_PASTE
MENUITEM "S&wap\tCtrl+K", IDM_EDIT_SWAP
MENUITEM "Delete\tDel", IDM_EDIT_CLEAR
MENUITEM "&Swap\tCtrl+K", IDM_EDIT_SWAP
MENUITEM "&Delete\tDel", IDM_EDIT_CLEAR
MENUITEM "Clear Clipboar&d", IDM_EDIT_CLEARCLIPBOARD
MENUITEM "&Select All\tCtrl+A", IDM_EDIT_SELECTALL
MENUITEM "Select &All\tCtrl+A", IDM_EDIT_SELECTALL
MENUITEM SEPARATOR
POPUP "&Words"
BEGIN
MENUITEM "Complete Word\tCtrl+Alt+Enter", IDM_EDIT_COMPLETEWORD
MENUITEM "&Complete Word\tCtrl+Alt+Enter", IDM_EDIT_COMPLETEWORD
MENUITEM SEPARATOR
MENUITEM "Cursor Word Left\tCtrl+Left", CMD_CTRLLEFT
MENUITEM "Cursor Word Right\tCtrl+Right", CMD_CTRLRIGHT
MENUITEM "Delete Word Left\tCtrl+Back", CMD_CTRLBACK
MENUITEM "Delete Word Right\tCtrl+Del", CMD_CTRLDEL
MENUITEM "Cursor Word &Left\tCtrl+Left", CMD_CTRLLEFT
MENUITEM "Cursor Word &Right\tCtrl+Right", CMD_CTRLRIGHT
MENUITEM "&Delete Word Left\tCtrl+Back", CMD_CTRLBACK
MENUITEM "Delete &Word Right\tCtrl+Del", CMD_CTRLDEL
END
POPUP "L&ines"
POPUP "&Lines"
BEGIN
MENUITEM "Move &Up\tCtrl+Shift+Up", IDM_EDIT_MOVELINEUP
MENUITEM "&Move Down\tCtrl+Shift+Down", IDM_EDIT_MOVELINEDOWN
MENUITEM SEPARATOR
MENUITEM "&Cut Line\tCtrl+X,Ctrl+Shift+X", IDM_EDIT_CUTLINE
MENUITEM "C&opy Line\tCtrl+C,Ctrl+Shift+C", IDM_EDIT_COPYLINE
MENUITEM "Cut &Line\tCtrl+X,Ctrl+Shift+X", IDM_EDIT_CUTLINE
MENUITEM "&Copy Line\tCtrl+C,Ctrl+Shift+C", IDM_EDIT_COPYLINE
MENUITEM "D&elete Line\tCtrl+Shift+D", IDM_EDIT_DELETELINE
MENUITEM "&Duplicate Line\tCtrl+D", IDM_EDIT_DUPLICATELINE
MENUITEM SEPARATOR
@ -208,8 +208,8 @@ BEGIN
MENUITEM "&Remove Blank Lines\tAlt+R", IDM_EDIT_REMOVEBLANKLINES
MENUITEM SEPARATOR
MENUITEM "&Modify Lines...\tAlt+M", IDM_EDIT_MODIFYLINES
MENUITEM "Alig&n Lines...\tAlt+J", IDM_EDIT_ALIGN
MENUITEM "S&ort Lines...\tAlt+O", IDM_EDIT_SORTLINES
MENUITEM "&Align Lines...\tAlt+J", IDM_EDIT_ALIGN
MENUITEM "&Sort Lines...\tAlt+O", IDM_EDIT_SORTLINES
END
POPUP "C&onvert"
BEGIN
@ -226,7 +226,7 @@ BEGIN
MENUITEM "Ta&bify Indent\tCtrl+Alt+T", IDM_EDIT_CONVERTSPACES2
MENUITEM "Untabi&fy Indent\tCtrl+Alt+S", IDM_EDIT_CONVERTTABS2
END
POPUP "I&nsert"
POPUP "&Insert"
BEGIN
MENUITEM "&New Line Above\tCtrl+Enter", CMD_CTRLENTER
MENUITEM SEPARATOR
@ -234,74 +234,74 @@ BEGIN
MENUITEM SEPARATOR
MENUITEM "&Encoding Identifier\tCtrl+F8", IDM_EDIT_INSERT_ENCODING
MENUITEM SEPARATOR
MENUITEM "Time/Date (&Short Form)\tCtrl+F5", IDM_EDIT_INSERT_SHORTDATE
MENUITEM "&Time/Date (Short Form)\tCtrl+F5", IDM_EDIT_INSERT_SHORTDATE
MENUITEM "Time/Date (&Long Form)\tCtrl+Shift+F5", IDM_EDIT_INSERT_LONGDATE
MENUITEM "Update &Timestamps\tShift+F5", CMD_TIMESTAMPS
MENUITEM "&Update Timestamps\tShift+F5", CMD_TIMESTAMPS
MENUITEM SEPARATOR
MENUITEM "&Filename\tCtrl+F9", IDM_EDIT_INSERT_FILENAME
MENUITEM "&Path and Filename\tCtrl+Shift+F9", IDM_EDIT_INSERT_PATHNAME
MENUITEM SEPARATOR
MENUITEM "&GUID\tCtrl+Shift+.", IDM_EDIT_INSERT_GUID
END
POPUP "Spec&ial"
POPUP "&Miscellaneous"
BEGIN
MENUITEM "Line Comment (&Toggle)\tCtrl+Q", IDM_EDIT_LINECOMMENT
MENUITEM "Stream &Comment\tCtrl+Shift+Q", IDM_EDIT_STREAMCOMMENT
MENUITEM "&Line Comment (Toggle)\tCtrl+Q", IDM_EDIT_LINECOMMENT
MENUITEM "&Stream Comment\tCtrl+Shift+Q", IDM_EDIT_STREAMCOMMENT
MENUITEM SEPARATOR
MENUITEM "URL &Encode\tCtrl+Shift+E", IDM_EDIT_URLENCODE
MENUITEM "&URL Encode\tCtrl+Shift+E", IDM_EDIT_URLENCODE
MENUITEM "URL &Decode\tCtrl+Shift+R", IDM_EDIT_URLDECODE
MENUITEM SEPARATOR
MENUITEM "Esca&pe C Chars\tCtrl+Alt+E", IDM_EDIT_ESCAPECCHARS
MENUITEM "&Escape C Chars\tCtrl+Alt+E", IDM_EDIT_ESCAPECCHARS
MENUITEM "&Unescape C Chars\tCtrl+Alt+R", IDM_EDIT_UNESCAPECCHARS
MENUITEM SEPARATOR
MENUITEM "C&har To Hex\tCtrl+Alt+X", IDM_EDIT_CHAR2HEX
MENUITEM "Hex To Cha&r\tCtrl+Alt+C", IDM_EDIT_HEX2CHAR
MENUITEM "&Char To Hex\tCtrl+Alt+X", IDM_EDIT_CHAR2HEX
MENUITEM "&Hex To Char\tCtrl+Alt+C", IDM_EDIT_HEX2CHAR
MENUITEM SEPARATOR
MENUITEM "&Find Matching Brace\tCtrl+B", IDM_EDIT_FINDMATCHINGBRACE
MENUITEM "&Select To Matching Brace\tCtrl+Shift+B", IDM_EDIT_SELTOMATCHINGBRACE
MENUITEM "Select To &Matching Brace\tCtrl+Shift+B", IDM_EDIT_SELTOMATCHINGBRACE
MENUITEM SEPARATOR
MENUITEM "Select To Ne&xt\tCtrl+Alt+F2", IDM_EDIT_SELTONEXT
MENUITEM "Select To Pre&vious\tCtrl+Alt+Shift+F2", IDM_EDIT_SELTOPREV
MENUITEM "Select To &Next\tCtrl+Alt+F2", IDM_EDIT_SELTONEXT
MENUITEM "Select To &Previous\tCtrl+Alt+Shift+F2", IDM_EDIT_SELTOPREV
END
MENUITEM SEPARATOR
POPUP "Bookmarks"
POPUP "Boo&kmarks"
BEGIN
MENUITEM "Toggle\tCtrl+F2", BME_EDIT_BOOKMARKTOGGLE
MENUITEM "&Toggle\tCtrl+F2", BME_EDIT_BOOKMARKTOGGLE
MENUITEM SEPARATOR
MENUITEM "Goto Next\tF2", BME_EDIT_BOOKMARKNEXT
MENUITEM "Goto Previous\tShift+F2", BME_EDIT_BOOKMARKPREV
MENUITEM "Goto &Next\tF2", BME_EDIT_BOOKMARKNEXT
MENUITEM "Goto &Previous\tShift+F2", BME_EDIT_BOOKMARKPREV
MENUITEM SEPARATOR
MENUITEM "Clear All\tAlt+F2", BME_EDIT_BOOKMARKCLEAR
MENUITEM "&Clear All\tAlt+F2", BME_EDIT_BOOKMARKCLEAR
END
MENUITEM SEPARATOR
MENUITEM "&Find...\tCtrl+F", IDM_EDIT_FIND
MENUITEM "Sa&ve Find Text\tAlt+F3", IDM_EDIT_SAVEFIND
MENUITEM "Find Ne&xt\tF3", IDM_EDIT_FINDNEXT
MENUITEM "Find Pre&vious\tShift+F3", IDM_EDIT_FINDPREV
MENUITEM "Find &Next\tF3", IDM_EDIT_FINDNEXT
MENUITEM "Find Previous\tShift+F3", IDM_EDIT_FINDPREV
MENUITEM "R&eplace...\tCtrl+H", IDM_EDIT_REPLACE
MENUITEM "Replace Ne&xt\tF4", IDM_EDIT_REPLACENEXT
MENUITEM "&Goto...\tCtrl+G", IDM_EDIT_GOTOLINE
END
POPUP "&View"
BEGIN
MENUITEM "&Syntax Scheme...\tF12", IDM_VIEW_SCHEME
MENUITEM "Synta&x Scheme...\tF12", IDM_VIEW_SCHEME
MENUITEM "&2nd Default Scheme\tShift+F12", IDM_VIEW_USE2NDDEFAULT
MENUITEM "&Customize Schemes...\tCtrl+F12", IDM_VIEW_SCHEMECONFIG
MENUITEM "&Global Default Font...\tAlt+F12", IDM_VIEW_FONT
MENUITEM "Current Scheme's &Default Font...\tCtrl+Alt+F12", IDM_VIEW_CURRENTSCHEME
MENUITEM "Global &Default Font...\tAlt+F12", IDM_VIEW_FONT
MENUITEM "Current Sc&heme's Default Font...\tCtrl+Alt+F12", IDM_VIEW_CURRENTSCHEME
MENUITEM SEPARATOR
MENUITEM "Word W&rap\tCtrl+W", IDM_VIEW_WORDWRAP
MENUITEM "&Long Line Marker\tCtrl+Shift+L", IDM_VIEW_LONGLINEMARKER
MENUITEM "Indentation &Guides\tCtrl+Shift+G", IDM_VIEW_SHOWINDENTGUIDES
MENUITEM "Indent&ation Guides\tCtrl+Shift+G", IDM_VIEW_SHOWINDENTGUIDES
MENUITEM SEPARATOR
MENUITEM "Show &Whitespace\tCtrl+Shift+8", IDM_VIEW_SHOWWHITESPACE
MENUITEM "Show Line &Endings\tCtrl+Shift+9", IDM_VIEW_SHOWEOLS
MENUITEM "Show Wrap S&ymbols\tCtrl+Shift+0", IDM_VIEW_WORDWRAPSYMBOLS
MENUITEM "Show Wra&p Symbols\tCtrl+Shift+0", IDM_VIEW_WORDWRAPSYMBOLS
MENUITEM SEPARATOR
MENUITEM "Hyperlink Hotspots\tCtrl+Alt+H", IDM_VIEW_HYPERLINKHOTSPOTS
MENUITEM "Visual &Brace Matching\tCtrl+Shift+V", IDM_VIEW_MATCHBRACES
MENUITEM "Highlight C&urrent Line\tCtrl+Shift+I", IDM_VIEW_HILITECURRENTLINE
POPUP "Mark &Occurrences"
MENUITEM "H&yperlink Hotspots\tCtrl+Alt+H", IDM_VIEW_HYPERLINKHOTSPOTS
MENUITEM "&Visual Brace Matching\tCtrl+Shift+V", IDM_VIEW_MATCHBRACES
MENUITEM "Hi&ghlight Current Line\tCtrl+Shift+I", IDM_VIEW_HILITECURRENTLINE
POPUP "Mar&k Occurrences"
BEGIN
MENUITEM "&Active", IDM_VIEW_MARKOCCUR_ONOFF
MENUITEM SEPARATOR
@ -322,9 +322,9 @@ BEGIN
MENUITEM "Code &Folding\tCtrl+Shift+Alt+F", IDM_VIEW_FOLDING
MENUITEM "&Toggle All Folds\tCtrl+Shift+F", IDM_VIEW_TOGGLEFOLDS
MENUITEM SEPARATOR
MENUITEM "Sh&ow Toolbar", IDM_VIEW_TOOLBAR
MENUITEM "Show Tool&bar", IDM_VIEW_TOOLBAR
MENUITEM "C&ustomize Toolbar...", IDM_VIEW_CUSTOMIZETB
MENUITEM "Sh&ow Statusbar", IDM_VIEW_STATUSBAR
MENUITEM "Show &Statusbar", IDM_VIEW_STATUSBAR
MENUITEM SEPARATOR
MENUITEM "Zoom &In\tCtrl++", IDM_VIEW_ZOOMIN
MENUITEM "Zoom &Out\tCtrl+-", IDM_VIEW_ZOOMOUT
@ -338,8 +338,8 @@ BEGIN
MENUITEM "&Long Line Settings...", IDM_VIEW_LONGLINESETTINGS
MENUITEM "Auto In&dent Text", IDM_VIEW_AUTOINDENTTEXT
MENUITEM "Auto Close &HTML/XML\tCtrl+Shift+H", IDM_VIEW_AUTOCLOSETAGS
MENUITEM "Auto Complete Wo&rds", IDM_VIEW_AUTOCOMPLETEWORDS
MENUITEM "&Accelerated Word Navigation", IDM_VIEW_ACCELWORDNAV
MENUITEM "A&uto Complete Words", IDM_VIEW_AUTOCOMPLETEWORDS
MENUITEM "Accelerated Word Navi&gation", IDM_VIEW_ACCELWORDNAV
MENUITEM SEPARATOR
MENUITEM "&Reuse Window", IDM_VIEW_REUSEWINDOW
MENUITEM "Sticky Window &Position", IDM_VIEW_STICKYWINPOS
@ -362,9 +362,9 @@ BEGIN
MENUITEM "&Minimize Notepad3", IDM_VIEW_ESCMINIMIZE
MENUITEM "E&xit Notepad3", IDM_VIEW_ESCEXIT
END
MENUITEM "Sa&ve Before Running Tools", IDM_VIEW_SAVEBEFORERUNNINGTOOLS
MENUITEM "Save &Before Running Tools", IDM_VIEW_SAVEBEFORERUNNINGTOOLS
MENUITEM "Remember Recent F&iles", IDM_VIEW_NOSAVERECENT
MENUITEM "Preserve Caret &Position", IDM_VIEW_NOPRESERVECARET
MENUITEM "Preser&ve Caret Position", IDM_VIEW_NOPRESERVECARET
MENUITEM "Remember S&earch Strings", IDM_VIEW_NOSAVEFINDREPL
MENUITEM SEPARATOR
MENUITEM "Save Settings On E&xit", IDM_VIEW_SAVESETTINGS
@ -377,7 +377,7 @@ BEGIN
MENUITEM SEPARATOR
MENUITEM "&About...\tShift+F1", IDM_HELP_ABOUT
MENUITEM "&Command Line Help", IDM_HELP_CMD
MENUITEM "Check for Updates", IDM_HELP_UPDATECHECK
MENUITEM "Check for &Updates", IDM_HELP_UPDATECHECK
END
END
@ -584,6 +584,7 @@ BEGIN
VK_DIVIDE, IDM_EDIT_LINECOMMENT, VIRTKEY, CONTROL, NOINVERT
VK_DIVIDE, IDM_EDIT_STREAMCOMMENT, VIRTKEY, SHIFT, CONTROL, NOINVERT
VK_NUMPAD0, IDM_VIEW_RESETZOOM, VIRTKEY, CONTROL, NOINVERT
VK_NUMPAD0, IDM_FILE_NEWWINDOW2, VIRTKEY, ALT, NOINVERT
VK_MULTIPLY, IDM_VIEW_TRANSPARENT, VIRTKEY, CONTROL, NOINVERT
VK_OEM_COMMA, CMD_JUMP2SELSTART, VIRTKEY, CONTROL, NOINVERT
VK_OEM_MINUS, IDM_VIEW_ZOOMOUT, VIRTKEY, CONTROL, NOINVERT
@ -655,26 +656,26 @@ STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | DS_NOFAILCREATE | WS_POPUP | WS
CAPTION "Find Text"
FONT 8, "MS Shell Dlg", 0, 0, 0x0
BEGIN
LTEXT "Search Strin&g:",IDC_STATIC,7,7,46,8
COMBOBOX IDC_FINDTEXT,7,17,192,116,CBS_DROPDOWN | CBS_AUTOHSCROLL | WS_VSCROLL | WS_TABSTOP
CONTROL "Match &case",IDC_FINDCASE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,37,53,10
CONTROL "Match &whole word only",IDC_FINDWORD,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,49,89,10
CONTROL "Match &beginning of word only",IDC_FINDSTART,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,61,110,10
CONTROL "&Transform backslashes",IDC_FINDTRANSFORMBS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,73,85,10
CONTROL "Regular &expression search",IDC_FINDREGEXP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,85,96,10
CONTROL "Dot matches &all",IDC_DOT_MATCH_ALL,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,18,96,65,10
CONTROL "&Don't wrap around",IDC_NOWRAP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,125,37,75,10
CONTROL "C&lose after find",IDC_FINDCLOSE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,125,49,65,10
CONTROL "Mark &Occurrences",IDC_ALL_OCCURRENCES,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,125,61,73,10
CONTROL "W&ildcard Search",IDC_WILDCARDSEARCH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,125,85,63,10
DEFPUSHBUTTON "&Find Next",IDOK,216,7,50,14
PUSHBUTTON "Find &Previous",IDC_FINDPREV,216,24,50,14
PUSHBUTTON "Close",IDCANCEL,216,41,50,14
CONTROL "<a>Goto Replace (Ctrl+H)</a>",IDC_TOGGLEFINDREPLACE,
"SysLink",0x0,125,104,74,10
LTEXT "Search Strin&g:",IDC_STATIC,7,7,46,8
CONTROL "<a>(?)</a>",IDC_REGEXPHELP,"SysLink",0x0,106,85,14,10
CONTROL "<a>(?)</a>",IDC_BACKSLASHHELP,"SysLink",0x0,106,73,14,10
CONTROL "W&ildcard Search",IDC_WILDCARDSEARCH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,125,85,63,10
CONTROL "<a>(?)</a>",IDC_WILDCARDHELP,"SysLink",0x0,191,85,14,10
CONTROL "Mark &Occurrences",IDC_ALL_OCCURRENCES,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,125,61,73,10
CONTROL "Regular &expression search",IDC_FINDREGEXP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,85,96,10
CONTROL "Dot matches &all",IDC_DOT_MATCH_ALL,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,18,96,65,10
END
IDD_REPLACE DIALOGEX 0, 0, 273, 147
@ -682,17 +683,18 @@ STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | DS_NOFAILCREATE | WS_POPUP | WS
CAPTION "Replace Text"
FONT 8, "MS Shell Dlg", 0, 0, 0x0
BEGIN
LTEXT "Search Strin&g:",IDC_STATIC,7,7,46,8
COMBOBOX IDC_FINDTEXT,7,17,192,116,CBS_DROPDOWN | CBS_AUTOHSCROLL | WS_VSCROLL | WS_TABSTOP
LTEXT "Replace wit&h:",IDC_STATIC,7,35,44,8
COMBOBOX IDC_REPLACETEXT,7,46,192,116,CBS_DROPDOWN | CBS_AUTOHSCROLL | WS_VSCROLL | WS_TABSTOP
CONTROL "Match &case",IDC_FINDCASE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,66,53,10
CONTROL "Match &whole word only",IDC_FINDWORD,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,78,89,10
CONTROL "Match &beginning of word only",IDC_FINDSTART,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,90,110,10
CONTROL "Regular &expression search",IDC_FINDREGEXP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,114,97,10
CONTROL "&Transform backslashes",IDC_FINDTRANSFORMBS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,102,89,10
CONTROL "Regular &expression search",IDC_FINDREGEXP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,114,97,10
CONTROL "Dot matches &all",IDC_DOT_MATCH_ALL,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,18,125,65,10
CONTROL "&Don't wrap around",IDC_NOWRAP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,125,66,75,10
CONTROL "C&lose after replace",IDC_FINDCLOSE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,125,78,77,10
CONTROL "Mark &Occurrences",IDC_ALL_OCCURRENCES,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,125,90,73,10
CONTROL "W&ildcard Search",IDC_WILDCARDSEARCH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,125,114,63,10
DEFPUSHBUTTON "&Find Next",IDOK,216,7,50,14
PUSHBUTTON "Find &Previous",IDC_FINDPREV,216,24,50,14
PUSHBUTTON "&Replace",IDC_REPLACE,216,41,50,14
@ -702,12 +704,11 @@ BEGIN
PUSHBUTTON "Close",IDCANCEL,216,127,50,14
CONTROL "<a>Goto Find (Ctrl+F)</a>",IDC_TOGGLEFINDREPLACE,
"SysLink",0x0,125,131,74,10
LTEXT "Search Strin&g:",IDC_STATIC,7,7,46,8
LTEXT "Replace wit&h:",IDC_STATIC,7,35,44,8
CONTROL "<a>(?)</a>",IDC_REGEXPHELP,"SysLink",0x0,107,114,14,10
CONTROL "<a>(?)</a>",IDC_BACKSLASHHELP,"SysLink",0x0,107,102,14,10
CONTROL "W&ildcard Search",IDC_WILDCARDSEARCH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,125,114,63,10
CONTROL "<a>(?)</a>",IDC_WILDCARDHELP,"SysLink",0x0,191,114,14,10
CONTROL "Mark &Occurrences",IDC_ALL_OCCURRENCES,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,125,90,73,10
CONTROL "Dot matches &all",IDC_DOT_MATCH_ALL,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,18,125,65,10
END
IDD_RUN DIALOGEX 0, 0, 229, 96
@ -715,12 +716,12 @@ STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSM
CAPTION "Run"
FONT 8, "MS Shell Dlg", 0, 0, 0x0
BEGIN
ICON IDI_RUN,IDC_STATIC,10,7,21,20
LTEXT "Type the name of a program, folder, document, or internet resource, and Windows will open it for you.",IDC_STATIC,39,7,179,17
EDITTEXT IDC_COMMANDLINE,10,35,208,13,ES_AUTOHSCROLL
PUSHBUTTON "Browse...",IDC_SEARCHEXE,163,69,55,16
DEFPUSHBUTTON "OK",IDOK,47,69,55,16
PUSHBUTTON "Cancel",IDCANCEL,105,69,55,16
ICON IDI_RUN,IDC_STATIC,10,7,20,20
LTEXT "Type the name of a program, folder, document, or internet resource, and Windows will open it for you.",IDC_STATIC,39,7,179,17
END
IDD_OPENWITH DIALOGEX 0, 0, 165, 129
@ -730,9 +731,9 @@ FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
CONTROL "",IDC_OPENWITHDIR,"SysListView32",LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_SHAREIMAGELISTS | LVS_AUTOARRANGE | LVS_NOCOLUMNHEADER | WS_BORDER | WS_TABSTOP,7,7,151,69
PUSHBUTTON "",IDC_GETOPENWITHDIR,7,83,13,13
LTEXT "Click here to specify the directory with links to your favorite applications.",IDC_OPENWITHDESCR,26,83,132,18
DEFPUSHBUTTON "OK",IDOK,52,108,50,14
PUSHBUTTON "Cancel",IDCANCEL,108,108,50,14
LTEXT "Click here to specify the directory with links to your favorite applications.",IDC_OPENWITHDESCR,26,83,132,18
SCROLLBAR IDC_RESIZEGRIP3,7,112,10,10
END
@ -741,7 +742,6 @@ STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSM
CAPTION "Encoding"
FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
LTEXT "&Default encoding:",IDC_STATIC,7,7,58,8
CONTROL "",IDC_ENCODINGLIST,"ComboBoxEx32",CBS_DROPDOWNLIST | WS_CLIPSIBLINGS | WS_VSCROLL | WS_TABSTOP,7,20,166,128
CONTROL "Skip automatic &Unicode detection.",IDC_NOUNICODEDETECTION,
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,43,124,10
@ -753,6 +753,7 @@ BEGIN
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,73,102,10
DEFPUSHBUTTON "OK",IDOK,68,97,50,14
PUSHBUTTON "Cancel",IDCANCEL,123,97,50,14
LTEXT "&Default encoding:",IDC_STATIC,7,7,58,8
END
IDD_DEFEOLMODE DIALOGEX 0, 0, 180, 78
@ -760,7 +761,6 @@ STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSM
CAPTION "Line Endings"
FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
LTEXT "&Default line ending mode:",IDC_STATIC,7,7,82,8
COMBOBOX 100,7,20,98,196,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
CONTROL "&Ensure consistent line endings when saving.",IDC_CONSISTENTEOLS,
"Button",BS_AUTOCHECKBOX | BS_VCENTER | WS_TABSTOP,7,48,157,10
@ -768,6 +768,7 @@ BEGIN
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,60,121,10
DEFPUSHBUTTON "OK",IDOK,123,7,50,14
PUSHBUTTON "Cancel",IDCANCEL,123,24,50,14
LTEXT "&Default line ending mode:",IDC_STATIC,7,7,82,8
END
IDD_LINENUM DIALOGEX 0, 0, 186, 47
@ -775,12 +776,12 @@ STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSM
CAPTION "Goto"
FONT 8, "MS Shell Dlg", 0, 0, 0x0
BEGIN
LTEXT "&Line:",IDC_STATIC,7,7,16,8
EDITTEXT IDC_LINENUM,7,24,46,14,ES_AUTOHSCROLL
LTEXT "&Column:",IDC_STATIC,63,7,27,8
EDITTEXT IDC_COLNUM,63,24,46,14,ES_AUTOHSCROLL
DEFPUSHBUTTON "OK",IDOK,129,7,50,14
PUSHBUTTON "Cancel",IDCANCEL,129,24,50,14
LTEXT "&Line:",IDC_STATIC,7,7,16,8
LTEXT "&Column:",IDC_STATIC,63,7,27,8
END
IDD_FILEMRU DIALOGEX 0, 0, 269, 154
@ -789,10 +790,10 @@ CAPTION "Open Recent File"
FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
CONTROL "",IDC_FILEMRU,"SysListView32",LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_SHAREIMAGELISTS | LVS_AUTOARRANGE | LVS_NOCOLUMNHEADER | WS_BORDER | WS_TABSTOP,7,7,255,97
CONTROL "&Save recent file list on exit.",IDC_SAVEMRU,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,121,96,10
CONTROL "&Preserve caret position.",IDC_PRESERVECARET,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,106,96,10
DEFPUSHBUTTON "OK",IDOK,154,133,50,14,WS_DISABLED
CONTROL "&Save recent file list on exit.",IDC_SAVEMRU,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,121,96,10
PUSHBUTTON "Discard",IDC_REMOVE,212,106,50,14,WS_DISABLED
DEFPUSHBUTTON "OK",IDOK,154,133,50,14,WS_DISABLED
PUSHBUTTON "Cancel",IDCANCEL,212,133,50,14
SCROLLBAR IDC_RESIZEGRIP,7,137,10,10
END
@ -831,7 +832,8 @@ CAPTION "Customize Schemes"
FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
CONTROL "",IDC_STYLELIST,"SysTreeView32",TVS_SHOWSELALWAYS | TVS_SINGLEEXPAND | WS_BORDER | WS_HSCROLL | WS_TABSTOP,7,7,164,240
LTEXT "",IDC_STYLELABEL,181,171,279,8
EDITTEXT IDC_STYLEEDIT_ROOT,181,152,279,12,ES_AUTOHSCROLL
EDITTEXT IDC_STYLEEDIT,181,183,279,12,ES_AUTOHSCROLL
PUSHBUTTON "For&e...",IDC_STYLEFORE,181,201,46,14
PUSHBUTTON "&Back...",IDC_STYLEBACK,232,201,46,14
PUSHBUTTON "&Font...",IDC_STYLEFONT,283,201,42,14
@ -843,12 +845,11 @@ BEGIN
PUSHBUTTON "E&xport...",IDC_EXPORT,237,233,50,14
DEFPUSHBUTTON "OK",IDOK,355,233,50,14
PUSHBUTTON "Cancel",IDCANCEL,410,233,50,14
LTEXT "",IDC_STYLELABEL,181,171,279,8
GROUPBOX "Info",IDC_STATIC,180,7,280,127
ICON IDI_STYLES,IDC_STATIC,189,19,20,20
LTEXT "Customize Schemes",IDC_TITLE,220,25,200,12
LTEXT "Filename extensions must be separated by ;\n\nStyle format:\nfont:Name;size:nn;bold;italic;underline;fore:#ffffff;back:#bbbbbb;eolfilled\n\nStyle properties can be copied using copy and paste or drag and drop.\n\nThe ""Preview"" button will not apply any changes.",IDC_STATIC,197,50,252,70
EDITTEXT IDC_STYLEEDIT,181,183,279,12,ES_AUTOHSCROLL
EDITTEXT IDC_STYLEEDIT_ROOT,181,152,279,12,ES_AUTOHSCROLL
LTEXT "",IDC_STYLELABEL_ROOT,181,141,279,8
END
@ -857,15 +858,15 @@ STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSM
CAPTION "Tab Settings"
FONT 8, "MS Shell Dlg", 0, 0, 0x0
BEGIN
LTEXT "&Tabulator width:",IDC_STATIC,7,10,54,8
EDITTEXT 100,67,7,30,14,ES_AUTOHSCROLL
LTEXT "&Indentation size:",IDC_STATIC,7,30,55,8
EDITTEXT 101,67,27,30,14,ES_AUTOHSCROLL
CONTROL "Insert tabs as &spaces.",102,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,47,87,10
CONTROL "Tab &key reformats indentation.",103,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,59,115,10
CONTROL "&Backspace key reformats indentation.",104,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,71,137,10
DEFPUSHBUTTON "OK",IDOK,117,7,50,14
PUSHBUTTON "Cancel",IDCANCEL,117,24,50,14
LTEXT "&Tabulator width:",IDC_STATIC,7,10,54,8
LTEXT "&Indentation size:",IDC_STATIC,7,30,55,8
END
IDD_LONGLINES DIALOGEX 0, 0, 184, 55
@ -873,12 +874,12 @@ STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSM
CAPTION "Long Lines"
FONT 8, "MS Shell Dlg", 0, 0, 0x0
BEGIN
LTEXT "&Limit for long lines:",IDC_STATIC,7,10,60,8
EDITTEXT 100,77,7,30,14,ES_AUTOHSCROLL
CONTROL "Show &edge line.",101,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,7,27,67,10
CONTROL "Change &background color.",102,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,7,38,100,10
DEFPUSHBUTTON "OK",IDOK,127,7,50,14
PUSHBUTTON "Cancel",IDCANCEL,127,24,50,14
LTEXT "&Limit for long lines:",IDC_STATIC,7,10,60,8
END
IDD_WORDWRAP DIALOGEX 0, 0, 196, 100
@ -903,38 +904,38 @@ STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSM
CAPTION "Page Setup"
FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
GROUPBOX "Paper",1073,8,8,224,56,WS_GROUP
LTEXT "Si&ze:",1089,16,24,36,8
COMBOBOX 1137,64,23,160,160,CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL | WS_GROUP | WS_TABSTOP
LTEXT "&Source:",1090,16,45,36,8
COMBOBOX 1138,64,42,160,160,CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL | WS_GROUP | WS_TABSTOP
GROUPBOX "Orientation",1072,8,69,64,56,WS_GROUP
EDITTEXT 1155,120,82,28,12,WS_GROUP
EDITTEXT 1157,196,82,28,12,WS_GROUP
EDITTEXT 1156,120,103,28,12,WS_GROUP
EDITTEXT 1158,196,103,28,12,WS_GROUP
CONTROL "P&ortrait",1056,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,16,82,52,12
CONTROL "L&andscape",1057,"Button",BS_AUTORADIOBUTTON,16,103,52,12
GROUPBOX "Margins",1075,80,69,152,56,WS_GROUP
LTEXT "&Left:",1102,88,85,32,8
EDITTEXT 1155,120,82,28,12,WS_GROUP
LTEXT "&Top:",1104,88,104,32,8
EDITTEXT 1156,120,103,28,12,WS_GROUP
LTEXT "&Right:",1103,164,85,32,8
EDITTEXT 1157,196,82,28,12,WS_GROUP
LTEXT "&Bottom:",1105,164,104,32,8
EDITTEXT 1158,196,103,28,12,WS_GROUP
GROUPBOX "Headers and Footers",1074,8,130,224,56,WS_GROUP
LTEXT "&Header:",IDC_STATIC,16,146,36,8
COMBOBOX 32,64,145,160,160,CBS_DROPDOWNLIST | WS_VSCROLL | WS_GROUP | WS_TABSTOP
LTEXT "&Footer:",IDC_STATIC,16,167,36,8
COMBOBOX 33,64,164,160,160,CBS_DROPDOWNLIST | WS_VSCROLL | WS_GROUP | WS_TABSTOP
GROUPBOX "Print Colors",1076,8,191,224,37,WS_GROUP
LTEXT "Mo&de:",IDC_STATIC,16,207,36,8
COMBOBOX 34,64,206,160,160,CBS_DROPDOWNLIST | WS_VSCROLL | WS_GROUP | WS_TABSTOP
GROUPBOX "Zoom",IDC_STATIC,240,170,108,58,WS_GROUP
LTEXT "Print zoo&m (-10 to +20):",IDC_STATIC,248,188,92,8
EDITTEXT 30,298,206,42,12,ES_AUTOHSCROLL
CONTROL "",31,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS | UDS_HOTTRACK,282,205,11,14
DEFPUSHBUTTON "OK",1,190,237,50,14,WS_GROUP
PUSHBUTTON "Cancel",2,244,237,50,14
PUSHBUTTON "&Printer...",1026,298,237,50,14
CONTROL "",31,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS | UDS_HOTTRACK,282,205,11,14
EDITTEXT 30,298,206,42,12,ES_AUTOHSCROLL
COMBOBOX 1137,64,23,160,160,CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL | WS_GROUP | WS_TABSTOP
COMBOBOX 1138,64,42,160,160,CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL | WS_GROUP | WS_TABSTOP
GROUPBOX "Paper",1073,8,8,224,56,WS_GROUP
LTEXT "Si&ze:",1089,16,24,36,8
LTEXT "&Source:",1090,16,45,36,8
GROUPBOX "Orientation",1072,8,69,64,56,WS_GROUP
GROUPBOX "Margins",1075,80,69,152,56,WS_GROUP
LTEXT "&Left:",1102,88,85,32,8
LTEXT "&Top:",1104,88,104,32,8
LTEXT "&Right:",1103,164,85,32,8
LTEXT "&Bottom:",1105,164,104,32,8
GROUPBOX "Headers and Footers",1074,8,130,224,56,WS_GROUP
LTEXT "&Header:",IDC_STATIC,16,146,36,8
LTEXT "&Footer:",IDC_STATIC,16,167,36,8
GROUPBOX "Print Colors",1076,8,191,224,37,WS_GROUP
LTEXT "Mo&de:",IDC_STATIC,16,207,36,8
GROUPBOX "Zoom",IDC_STATIC,240,170,108,58,WS_GROUP
LTEXT "Print zoo&m (-10 to +20):",IDC_STATIC,248,188,92,8
GROUPBOX "Preview",IDC_STATIC,240,8,108,157
CONTROL "",1080,"Static",SS_WHITERECT,254,47,80,80
CONTROL "",1081,"Static",SS_GRAYRECT,334,51,4,80
@ -948,9 +949,9 @@ FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
CONTROL "",IDC_FAVORITESDIR,"SysListView32",LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_SHAREIMAGELISTS | LVS_AUTOARRANGE | LVS_NOCOLUMNHEADER | WS_BORDER | WS_TABSTOP,7,7,151,69
PUSHBUTTON "",IDC_GETFAVORITESDIR,7,83,13,13
LTEXT "Click here to specify the directory with links to your favorite files.",IDC_FAVORITESDESCR,26,83,132,18
DEFPUSHBUTTON "OK",IDOK,52,108,50,14
PUSHBUTTON "Cancel",IDCANCEL,108,108,50,14
LTEXT "Click here to specify the directory with links to your favorite files.",IDC_FAVORITESDESCR,26,83,132,18
SCROLLBAR IDC_RESIZEGRIP3,7,112,10,10
END
@ -959,36 +960,36 @@ STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSM
CAPTION "Add to Favorites"
FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
LTEXT "Enter the name for the new favorites item:",IDC_STATIC,7,7,158,8
EDITTEXT 100,7,22,158,14,ES_AUTOHSCROLL
DEFPUSHBUTTON "OK",IDOK,59,45,50,14,WS_DISABLED
PUSHBUTTON "Cancel",IDCANCEL,115,45,50,14
LTEXT "Enter the name for the new favorites item:",IDC_STATIC,7,7,158,8
END
IDD_PASSWORDS DIALOG 0, 0, 311, 122
IDD_PASSWORDS DIALOGEX 0, 0, 311, 122
STYLE DS_SETFONT | DS_MODALFRAME | DS_SETFOREGROUND | DS_FIXEDSYS | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Encryption"
FONT 8, "MS Shell Dlg"
FONT 8, "MS Shell Dlg", 0, 0, 0x0
BEGIN
DEFPUSHBUTTON "OK",IDOK,245,94,50,14
PUSHBUTTON "Cancel",IDCANCEL,184,94,50,14
CONTROL "Set New Master Key",IDC_CHECK1,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,107,60,84,10
EDITTEXT IDC_EDIT1,17,35,276,14,ES_AUTOHSCROLL | WS_GROUP
EDITTEXT IDC_EDIT2,17,74,277,14
LTEXT "Optional Master Key",IDC_STATIC,18,61,66,10,SS_SUNKEN | NOT WS_GROUP
PUSHBUTTON "Cancel",IDCANCEL,184,94,50,14
DEFPUSHBUTTON "OK",IDOK,245,94,50,14
CONTROL "Encrypt using Passphrase",IDC_CHECK2,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,18,21,98,10
CONTROL "Set New Master Key",IDC_CHECK1,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,107,60,84,10
CONTROL "Reuse Master Key",IDC_CHECK3,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,218,60,76,10
LTEXT "Optional Master Key",IDC_STATIC,18,61,66,10,SS_SUNKEN | NOT WS_GROUP
GROUPBOX "Passphrase",IDC_STATIC,7,7,297,108
END
IDD_READPW DIALOG 0, 0, 299, 84
IDD_READPW DIALOGEX 0, 0, 299, 84
STYLE DS_SETFONT | DS_MODALFRAME | DS_SETFOREGROUND | DS_FIXEDSYS | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Decrypt File"
FONT 8, "MS Shell Dlg"
FONT 8, "MS Shell Dlg", 0, 0, 0x0
BEGIN
EDITTEXT IDC_EDIT3,16,24,267,14,ES_PASSWORD | ES_AUTOHSCROLL | WS_GROUP
DEFPUSHBUTTON "OK",IDOK,233,54,50,14
PUSHBUTTON "Cancel",IDCANCEL,175,54,50,14
EDITTEXT IDC_EDIT3,16,24,267,14,ES_PASSWORD | ES_AUTOHSCROLL | WS_GROUP
CONTROL "decrypt using the master key",IDC_CHECK3,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,17,60,148,10
LTEXT "This file has a master key",IDC_STATICPW,16,47,89,11,NOT WS_GROUP
GROUPBOX "Passphrase",IDC_STATIC,7,7,285,70
@ -999,10 +1000,10 @@ STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSM
CAPTION "Column Wrap"
FONT 8, "MS Shell Dlg", 0, 0, 0x0
BEGIN
LTEXT "&Boundary:",IDC_STATIC,7,7,34,8
EDITTEXT IDC_COLUMNWRAP,7,24,46,14,ES_AUTOHSCROLL
DEFPUSHBUTTON "OK",IDOK,73,7,50,14
PUSHBUTTON "Cancel",IDCANCEL,73,24,50,14
LTEXT "&Boundary:",IDC_STATIC,7,7,34,8
END
IDD_MODIFYLINES DIALOGEX 0, 0, 182, 110
@ -1010,21 +1011,21 @@ STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSM
CAPTION "Modify Lines"
FONT 8, "MS Shell Dlg", 0, 0, 0x0
BEGIN
LTEXT "&Prefix text to lines:",IDC_STATIC,7,7,62,8
EDITTEXT 100,7,18,98,14,ES_AUTOHSCROLL
LTEXT "&Append text to lines:",IDC_STATIC,7,37,68,8
EDITTEXT 101,7,48,98,14,ES_AUTOHSCROLL
LTEXT "$(L)",200,7,72,14,8
LTEXT "$(N)",202,7,82,15,8
LTEXT "$(I)",204,7,92,13,8
LTEXT "$(0L)",201,30,72,18,8
LTEXT "$(0N)",203,30,82,19,8
LTEXT "$(0I)",205,30,92,17,8
LTEXT "Document line number.",IDC_STATIC,57,72,74,8
LTEXT "Continuous number.",IDC_STATIC,57,82,66,8
LTEXT "Continuous number (zero-based).",IDC_STATIC,57,92,109,8
DEFPUSHBUTTON "OK",IDOK,125,7,50,14
PUSHBUTTON "Cancel",IDCANCEL,125,24,50,14
LTEXT "$(L)",200,7,72,14,8
LTEXT "$(0L)",201,30,72,18,8
LTEXT "Document line number.",IDC_STATIC,57,72,74,8
LTEXT "$(N)",202,7,82,15,8
LTEXT "$(0N)",203,30,82,19,8
LTEXT "Continuous number.",IDC_STATIC,57,82,66,8
LTEXT "$(I)",204,7,92,13,8
LTEXT "$(0I)",205,30,92,17,8
LTEXT "Continuous number (zero-based).",IDC_STATIC,57,92,109,8
LTEXT "&Prefix text to lines:",IDC_STATIC,7,7,62,8
LTEXT "&Append text to lines:",IDC_STATIC,7,37,68,8
END
IDD_INSERTTAG DIALOGEX 0, 0, 182, 70
@ -1032,12 +1033,12 @@ STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSM
CAPTION "Insert HTML/XML Tag"
FONT 8, "MS Shell Dlg", 0, 0, 0x0
BEGIN
LTEXT "&Opening tag (with attributes):",IDC_STATIC,7,7,97,8
EDITTEXT 100,7,18,98,14,ES_AUTOHSCROLL
LTEXT "&Closing tag (can be edited):",IDC_STATIC,7,37,90,8
EDITTEXT 101,7,48,98,14,ES_AUTOHSCROLL
DEFPUSHBUTTON "OK",IDOK,125,7,50,14
PUSHBUTTON "Cancel",IDCANCEL,125,24,50,14
LTEXT "&Opening tag (with attributes):",IDC_STATIC,7,7,97,8
LTEXT "&Closing tag (can be edited):",IDC_STATIC,7,37,90,8
END
IDD_ENCLOSESELECTION DIALOGEX 0, 0, 182, 70
@ -1045,12 +1046,12 @@ STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSM
CAPTION "Enclose Selection"
FONT 8, "MS Shell Dlg", 0, 0, 0x0
BEGIN
LTEXT "Insert &before selection:",IDC_STATIC,7,7,76,8
EDITTEXT 100,7,18,98,14,ES_AUTOHSCROLL
LTEXT "Insert &after selection:",IDC_STATIC,7,37,71,8
EDITTEXT 101,7,48,98,14,ES_AUTOHSCROLL
DEFPUSHBUTTON "OK",IDOK,125,7,50,14
PUSHBUTTON "Cancel",IDCANCEL,125,24,50,14
LTEXT "Insert &before selection:",IDC_STATIC,7,7,76,8
LTEXT "Insert &after selection:",IDC_STATIC,7,37,71,8
END
IDD_INFOBOX DIALOGEX 0, 0, 244, 71
@ -1058,11 +1059,11 @@ STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSM
CAPTION "Notepad3"
FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
ICON IDR_MAINWND,IDC_INFOBOXICON,7,7,21,20
LTEXT "",IDC_INFOBOXTEXT,35,7,202,34
DEFPUSHBUTTON "OK",IDOK,187,50,50,14
CONTROL "&Don't display this message again.",IDC_INFOBOXCHECK,
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,54,122,10
ICON IDR_MAINWND,IDC_INFOBOXICON,7,7,20,20
LTEXT "",IDC_INFOBOXTEXT,35,7,202,34
END
IDD_INFOBOX2 DIALOGEX 0, 0, 244, 71
@ -1070,12 +1071,12 @@ STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSM
CAPTION "Notepad3"
FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
ICON IDR_MAINWND,IDC_INFOBOXICON,7,7,21,20
LTEXT "",IDC_INFOBOXTEXT,35,7,202,34
PUSHBUTTON "&Yes",IDYES,131,50,50,14
PUSHBUTTON "&No",IDNO,187,50,50,14
CONTROL "&Don't display this message again.",IDC_INFOBOXCHECK,
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,54,122,10
ICON IDR_MAINWND,IDC_INFOBOXICON,7,7,20,20
LTEXT "",IDC_INFOBOXTEXT,35,7,202,34
END
IDD_INFOBOX3 DIALOGEX 0, 0, 244, 71
@ -1083,12 +1084,12 @@ STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSM
CAPTION "Notepad3"
FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
ICON IDR_MAINWND,IDC_INFOBOXICON,7,7,21,20
LTEXT "",IDC_INFOBOXTEXT,35,7,202,34
DEFPUSHBUTTON "OK",IDOK,131,50,50,14
PUSHBUTTON "Cancel",IDCANCEL,187,50,50,14
CONTROL "&Don't display this message again.",IDC_INFOBOXCHECK,
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,54,122,10
ICON IDR_MAINWND,IDC_INFOBOXICON,7,7,20,20
LTEXT "",IDC_INFOBOXTEXT,35,7,202,34
END
IDD_SORT DIALOGEX 0, 0, 184, 140
@ -1114,10 +1115,10 @@ STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSM
CAPTION "Recode"
FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
LTEXT "Select source &encoding to reload file:",IDC_STATIC,7,7,119,8
CONTROL "",IDC_ENCODINGLIST,"SysListView32",LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_AUTOARRANGE | LVS_NOCOLUMNHEADER | WS_BORDER | WS_TABSTOP,7,19,151,87
DEFPUSHBUTTON "OK",IDOK,53,114,50,14,WS_DISABLED
PUSHBUTTON "Cancel",IDCANCEL,108,114,50,14
LTEXT "Select source &encoding to reload file:",IDC_STATIC,7,7,119,8
SCROLLBAR IDC_RESIZEGRIP4,7,118,10,10
END
@ -1126,10 +1127,10 @@ STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSM
CAPTION "Encoding"
FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
LTEXT "Select current file &encoding:",IDC_STATIC,7,7,90,8
CONTROL "",IDC_ENCODINGLIST,"SysListView32",LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_AUTOARRANGE | LVS_NOCOLUMNHEADER | WS_BORDER | WS_TABSTOP,7,19,151,87
DEFPUSHBUTTON "OK",IDOK,53,114,50,14,WS_DISABLED
PUSHBUTTON "Cancel",IDCANCEL,108,114,50,14
LTEXT "Select current file &encoding:",IDC_STATIC,7,7,90,8
SCROLLBAR IDC_RESIZEGRIP4,7,118,10,10
END
@ -1310,6 +1311,10 @@ BEGIN
BOTTOMMARGIN, 115
END
IDD_READPW, DIALOG
BEGIN
END
IDD_COLUMNWRAP, DIALOG
BEGIN
LEFTMARGIN, 7
@ -1934,12 +1939,12 @@ BEGIN
63268 "Ordered List"
END
#endif // Englisch (USA) resources
#endif // English (United States) resources
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// Deutsch (Schweiz) resources
// German (Switzerland) resources
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_DES)
LANGUAGE LANG_GERMAN, SUBLANG_GERMAN_SWISS
@ -1968,7 +1973,7 @@ END
#endif // APSTUDIO_INVOKED
#endif // Deutsch (Schweiz) resources
#endif // German (Switzerland) resources
/////////////////////////////////////////////////////////////////////////////

View File

@ -97,7 +97,6 @@ __forceinline LRESULT SciCall_##fn(type1 var1, type2 var2) { \
//
// Selection, positions and information
//
//
DeclareSciCallR0(IsDocModified, GETMODIFY, bool);
DeclareSciCallR0(IsSelectionEmpty, GETSELECTIONEMPTY, bool);
DeclareSciCallR0(IsSelectionRectangle, SELECTIONISRECTANGLE, bool);
@ -123,6 +122,8 @@ DeclareSciCallV2(ReplaceTarget, REPLACETARGET, DocPos, length, LPCCH, text);
DeclareSciCallV1(SetAnchor, SETANCHOR, DocPos, position);
DeclareSciCallV1(SetCurrentPos, SETCURRENTPOS, DocPos, position);
DeclareSciCallV1(SetMultiPaste, SETMULTIPASTE, int, option);
DeclareSciCallV1(GotoPos, GOTOPOS, DocPos, position);
DeclareSciCallV1(GotoLine, GOTOLINE, DocPos, line);
DeclareSciCallR1(PositionBefore, POSITIONBEFORE, DocPos, DocPos, position);
@ -150,7 +151,6 @@ DeclareSciCallR0(GetCharacterPointer, GETCHARACTERPOINTER, LPCCH);
//
// Scrolling and automatic scrolling
//
//
DeclareSciCallV0(ChooseCaret, CHOOSECARETX);
DeclareSciCallV0(ScrollCaret, SCROLLCARET);
DeclareSciCallV2(SetXCaretPolicy, SETXCARETPOLICY, int, caretPolicy, int, caretSlop);
@ -162,7 +162,6 @@ DeclareSciCallV2(ScrollRange, SCROLLRANGE, DocPos, secondaryPos, DocPos, primary
//
// Style definition
//
//
DeclareSciCallR1(StyleGetFore, STYLEGETFORE, COLORREF, int, styleNumber);
DeclareSciCallR1(StyleGetBack, STYLEGETBACK, COLORREF, int, styleNumber);
DeclareSciCallV2(SetStyling, SETSTYLING, DocPosCR, length, int, style);
@ -173,7 +172,6 @@ DeclareSciCallR0(GetEndStyled, GETENDSTYLED, int);
//
// Margins
//
//
DeclareSciCallV2(SetMarginType, SETMARGINTYPEN, int, margin, int, type);
DeclareSciCallV2(SetMarginWidth, SETMARGINWIDTHN, int, margin, int, pixelWidth);
DeclareSciCallV2(SetMarginMask, SETMARGINMASKN, int, margin, int, mask);
@ -186,7 +184,6 @@ DeclareSciCallV2(SetFoldMarginHiColour, SETFOLDMARGINHICOLOUR, bool, useSetting,
//
// Markers
//
//
DeclareSciCallV2(MarkerDefine, MARKERDEFINE, int, markerNumber, int, markerSymbols);
DeclareSciCallV2(MarkerSetFore, MARKERSETFORE, int, markerNumber, COLORREF, colour);
DeclareSciCallV2(MarkerSetBack, MARKERSETBACK, int, markerNumber, COLORREF, colour);
@ -196,7 +193,6 @@ DeclareSciCallV2(MarkerSetBack, MARKERSETBACK, int, markerNumber, COLORREF, colo
//
// Indicators
//
//
DeclareSciCallR2(IndicatorValueAt, INDICATORVALUEAT, int, int, indicatorID, DocPos, position);
DeclareSciCallV2(IndicatorFillRange, INDICATORFILLRANGE, DocPos, position, DocPos, length);
@ -219,15 +215,21 @@ DeclareSciCallV1(EnsureVisible, ENSUREVISIBLE, int, line);
//
// Lexer
//
//
DeclareSciCallV2(SetProperty, SETPROPERTY, const char *, key, const char *, value);
//=============================================================================
//
// Undo/Redo Stack
//
DeclareSciCallR0(GetUndoCollection, GETUNDOCOLLECTION, bool);
//=============================================================================
//
// SetTechnology
//
//
DeclareSciCallV1(SetBufferedDraw, SETBUFFEREDDRAW, bool, value);
DeclareSciCallV1(SetTechnology, SETTECHNOLOGY, int, technology);
@ -236,13 +238,17 @@ DeclareSciCallV1(SetTechnology, SETTECHNOLOGY, int, technology);
//
// Utilities
//
//
#define SciClearClipboard() SciCall_CopyText(0, NULL)
#define SciClearClipboard() SciCall_CopyText(0, "")
#define IsSingleLineSelection() \
(SciCall_LineFromPosition(SciCall_GetCurrentPos()) == SciCall_LineFromPosition(SciCall_GetAnchor()))
#define GetEOLLen() ((SciCall_GetEOLMode() == SC_EOL_CRLF) ? 2 : 1)
//=============================================================================
#endif //_NP3_SCICALL_H_

View File

@ -5,7 +5,7 @@
// //////////////////////////////////////////////////////////
#define VERSION_MAJOR 3
#define VERSION_MINOR 18
#define VERSION_REV 131
#define VERSION_BUILD 862
#define VERSION_REV 205
#define VERSION_BUILD 867
#define SCINTILLA_VER 402
#define ONIGMO_REGEX_VER 6.1.3