Skip to content

Commit

Permalink
Preparing version 1.8.1 .07
Browse files Browse the repository at this point in the history
  • Loading branch information
dpradov committed Dec 11, 2023
1 parent 34035ae commit 802edf4
Show file tree
Hide file tree
Showing 49 changed files with 9,792 additions and 9,935 deletions.
14 changes: 14 additions & 0 deletions KeyNoteNF_0xFDBC8364_public.asc
@@ -0,0 +1,14 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----

mDMEZXc60hYJKwYBBAHaRw8BAQdArNzvEofDcIOnXJvsSJP5XHr0VfqP2f6Bdsua
aRz/58m0PEtleU5vdGUgTkYgKERhbmllbCBQcmFkbyBWZWxhc2NvKSA8ZHByYWRv
LmtleW5vdGVAZ21haWwuY29tPoiZBBMWCgBBFiEE62+f7Q9idWggHCEXkJ/nCf28
g2QFAmV3OtICGwMFCQWknN4FCwkIBwICIgIGFQoJCAsCBBYCAwECHgcCF4AACgkQ
kJ/nCf28g2R+BAEA6MazjJNWBjtJ93z23G5huIhLo5cRRhOiqckBhbs8P/MBAOIN
lrRPp0qWqZjKVr/MMH2l436/mjLKtzDf3HEOXB0EuDgEZXc60hIKKwYBBAGXVQEF
AQEHQJWZcwYAYaGMP7wGgPHJuYemil91bpqpG8m3W50qioZeAwEIB4h+BBgWCgAm
FiEE62+f7Q9idWggHCEXkJ/nCf28g2QFAmV3OtICGwwFCQWknN4ACgkQkJ/nCf28
g2QB+wEA9ojWcMOHQ8kyAcEw8PTF55IoEmankbFgG6ymZc3Rc5ABAJ8BeYmmxeUh
WWOeWw6H7kjD0hx6xULMGHPXKPDJ4TQK
=fE7Z
-----END PGP PUBLIC KEY BLOCK-----
84 changes: 52 additions & 32 deletions README.md
Expand Up @@ -5,49 +5,54 @@ Tabbed notebook with RichText editor, multi-level notes and strong encryption.

This project is an evolution of Tranglos Keynote (of Marek Jedlinski), with new features like:

* *Checkboxes on children of selected nodes* <br>
Selecting checkboxes for all nodes (View/Tree Checkboxes -- now View/All nodes Checkboxes) is still posible. Besides, checkboxes can be shown only on children of selected nodes (Children Checkbox)

* *Hidden nodes* <br> Capacity to work with hidden nodes. Nodes can be hidden in two ways:
* Activating a mode wich automatically hides checked nodes (Show or Hide checked nodes)
* Filtering one note's nodes or all notes under a searching criterion (Filter Tree Note)

* *Alarms on nodes*

* *Better treatment of tables*

* *Improved treatment of links*

* *Multilanguage support*

* *New kind of virtual nodes: links to other nodes (Mirror nodes)* <br>
Allow to organize the information in different ways, because nodes can be simultaneously in different notes. It will be possible to sort, rank and structuring in a free tree hierarchy, independent of the hierarchy in wich 'real' nodes reside.

* *Unicode compliant*

* *New KeyNote file format: compressed*

* *New button: 'Copy Format'*
* *Improvement in image management*
* Support for GIF, PNG, JPG, TIF, BMP, WMF, EMF and ICO
* Several image storage options: EmbeddedRTF, EmbeddedKNT, External (Zip or Folder), ExternalAndEmbeddedKNT
* Images can be saved in its own format (binary), and shown in RTF in pngblip and jpegblip, not only wmetafile8 or emfblip
* Included internal image viewer (also possible to open with external viewer)
* It is possible to change the visibility of the images in the file

A detailed explanation of the image management changes is available in [Images_Readme.txt](doc/Images_Readme.txt)

<br>
From version 1.8.0:

* *Redesigned navigation history mechanism*

* *New KeyNote file format: compressed*

* *Improved Find All* <br>
* Search is now much faster
* Excerpts from the note of the matches found are displayed, where the searched words are highlighted
* The treatment of the options 'All the words' and 'Any of the words' is extended
* Added new option: "Current node and subtree"

* *New internal KNT links*, vinculated to markers, not only to caret position

* *Added 'KeyNote' as target format in File | Export*
* *Improved treatment of links, and new internal KNT links*, vinculated to markers, not only to caret position

* *Improved Clipboard Capture / Web Clip*

* *Better treatment of tables*

* *Checkboxes on children of selected nodes* <br>
Selecting checkboxes for all nodes (View/Tree Checkboxes -- now View/All nodes Checkboxes) is still posible. Besides, checkboxes can be shown only on children of selected nodes (Children Checkbox)

* *Hidden nodes* <br> Capacity to work with hidden nodes. Nodes can be hidden in two ways:
* Activating a mode wich automatically hides checked nodes (Show or Hide checked nodes)
* Filtering one note's nodes or all notes under a searching criterion (Filter Tree Note)

* *New kind of virtual nodes: links to other nodes (Mirror nodes)* <br>
Allow to organize the information in different ways, because nodes can be simultaneously in different notes. It will be possible to sort, rank and structuring in a free tree hierarchy, independent of the hierarchy in wich 'real' nodes reside.

* *New button: 'Copy Format'*

* *Added 'KeyNote' as target format in File | Export*

* *Alarms on nodes*

* *Added a new property, "Default Zoom"*, and new action: View | Alternative Margins

* *Multilanguage support*



<br><br>

Expand All @@ -74,13 +79,27 @@ From version 1.7.9 Beta 7, a new option have been added that offer the possibili
<br><br>

### Installation
There is no installation project at this moment. You can copy all the files in release archives (eg, "Release_XXXXXX.zip") in a new folder, as KeyNote NF doesn't need installation to work.
If you prefer, you can install original [KeyNote (version 1.6.5)](http://www.tranglos.com/free/files/kntsetup.exe) and then copy only the files contained in the new release (zip file), in the installed folder, replacing the original ones. At least the new version will include the executable, `keynote.exe`.
Please, see the file [BetaReleases_README.txt](https://github.com/dpradov/keynote-nf/files/12590485/BetaReleases_README.txt) for more information about how to install or update to a Beta release.

Since version 1.8.1 there is a setup program (based in Inno Setup, by Jordan Russell)
Download the <b>[latest release](https://github.com/dpradov/keynote-nf/releases/latest)</b>
<br><br>

### KeyNote NF Release Key
Since the release of version 1.8.1 KeyNote NF is signed using GPG with the following key:

Signer: KeyNote NF (Daniel Prado Velasco)
E-mail: dprado.keynote@gmail.com
Key ID: 0xFDBC8364
Key fingerprint: EB6F 9FED 0F62 7568 201C 2117 909F E709 FDBC 8364
Created: 2023-12-11
Expires: 2026-12-11

https://github.com/dpradov/keynote-nf/blob/master/KeyNoteNF_0xFDBC8364_public.asc

It is also included SHA256 hash file (.sh256)

More info in [VerifyingReleases.txt](doc/VerifyingReleases.txt)


### Bugs, new Features
For any bug report, patch proposal or feature request, add an entry into the [Issue tracker](https://github.com/dpradov/keynote-nf/issues).
Please, be specific; it is preferable to create several issues instead of only one very
Expand All @@ -95,7 +114,8 @@ In case you fork the repository or clone it to your desktop, in the [README_Sour
### Copyright and license
The initial developer of KeyNote is Marek Jedlinski, copyright 2000-2005.

The adaptation to Delphi 2006 and the new functionalities added since version 1.7.0 corresponds to Daniel Prado Velasco, copyright 2007-2017.
The adaptation to Delphi 2006 and the new functionalities added since version 1.7.0 corresponds to Daniel Prado Velasco, copyright 2007-2023.
In august 2023, with the version 1.8.0, the code was migrated from Borland Delphi 2006 to to Embarcadero Delphi CE 11.3 (Community Edition 11.3 Alexandria).

Code released under the [Mozilla Public License 2.0](./LICENSE.txt). This license applies only to units written by the authors of KeyNote and KeyNote NF: Marek Jedlinski and Daniel Prado, respectively.
Note: KeyNote was originally licensed by MPL 1.1. I have contacted with Marek and have obtained his approval to update to MPL 2.0.
Expand Down
207 changes: 207 additions & 0 deletions Setup.iss
@@ -0,0 +1,207 @@
// -- KeyNote NF.iss --
//
#pragma verboselevel 9

#define AppName "KeyNote NF"
#define AppFileExe "keynote.exe"
#define Version "1.8.1.7"
#define AppVersion "1.8.1 .07"
;#define AppVersion GetVersionNumbersString("..\Output\bin\keynote.exe")
#define DefaultProfile "{app}\Profiles\Default"

#define _KNT_FILETYPE 'KeyNote file'
#define _KNE_FILETYPE 'KeyNote encrypted file'
#define _KNM_FILETYPE 'KeyNote macro'
#define _KNL_FILETYPE 'KeyNote plugin'


[Setup]
AppName={#AppName}
AppVersion={#AppVersion}
VersionInfoVersion={#Version}
AppCopyright=Copyright (C) 2007-2023 Daniel Prado Velasco (C) 2000-2005 Marek Jedlinski
;AppComments=
AppContact=Daniel Prado Velasco <dprado.keynote@gmail.com>
AppPublisher=Daniel Prado Velasco
AppPublisherURL=https://github.com/dpradov/keynote-nf
AppReadmeFile=https://github.com/dpradov/keynote-nf#readme
AppSupportURL=https://github.com/dpradov/keynote-nf/issues
AppUpdatesURL=https://github.com/dpradov/keynote-nf/releases
WizardStyle=modern
DefaultDirName={autopf}\{#AppName}
DefaultGroupName={#AppName}
AllowNoIcons=yes
UninstallDisplayIcon={app}\{#AppFileExe}
LicenseFile={#file AddBackslash(SourcePath) + "doc\License_agreement.txt"}
OutputDir=..\..\Output
OutputBaseFilename=kntSetup_{#Version}
TouchDate=2023-12-11
TouchTime=22:00
SetupIconFile=keynote_Icon.ico
WizardImageFile=resources\keynote_4.bmp
WizardSmallImageFile=resources\keynote_0.bmp, resources\keynote_1.bmp, resources\keynote_2.bmp, resources\keynote_3.bmp
WizardImageStretch=no
DisableWelcomePage=no
Uninstallable=not WizardIsTaskSelected('portablemode')
ChangesAssociations=WizardIsTaskSelected('associate')

InfoBeforeFile=doc\NotesBeforeSetup.txt
InfoAfterFile=doc\history.txt


[Types]
Name: "full"; Description: "Full installation"
Name: "compact"; Description: "Compact installation"
Name: "custom"; Description: "Custom installation"; Flags: iscustom

[Components]
Name: "main"; Description: "Program Files"; Types: full compact custom; Flags: fixed
Name: "help"; Description: "Help File"; Types: full
Name: "plugins"; Description: "Plugins"; Types: full


[Tasks]
Name: portablemode; Description: "&Portable Mode (no uninstallation support)"; Flags: unchecked
Name: desktopicon; Description: "Create a &Shortcut on the &Desktop"; Components: main; Flags: unchecked
Name: associate; Description: "Associate KeyNote NF with the .knt, kne and .knm file extension"; Flags: unchecked
; GroupDescription: "Additional icons:"


[Dirs]
;Name: "{app}\lang"
Name: "{app}\macros"; Permissions: users-modify
Name: "{app}\plugins"; Permissions: users-modify;
Name: "{app}\templates"; Permissions: users-modify
Name: "{app}\Profiles" ; Permissions: users-modify
Name: "{app}\Profiles\Default"
Name: "{app}\Profiles\Default\macros"
Name: "{app}\Profiles\Help"
Name: "{app}\help\kntHelpFiles"; Permissions: users-modify; Components: help
;Flags: uninsalwaysuninstall uninsneveruninstall

[InstallDelete]
;Type: files; Name: "{app}\doc\fileformat_1.6.5.txt"

[UninstallDelete]
Type: files; Name: "{app}\Profiles\Help\keynote.mgr"
Type: files; Name: "{app}\Profiles\Help\keynote.mru"


[Files]
Source: "..\Output\bin\{#AppFileExe}"; DestDir: "{app}"; Components: main; Flags: touch
Source: "..\Output\bin\kntutils.dll" ; DestDir: "{app}" ; Components: main
;Source: "Lang\keynote.lan"; DestDir: "{app}" ; Components: main
Source: "general\keyboard.css"; DestDir: "{app}" ; Components: main
Source: "misc_files\clip.wav"; DestDir: "{app}" ; Components: main; Flags: onlyifdoesntexist
Source: "misc_files\alert.wav"; DestDir: "{app}" ; Components: main; Flags: onlyifdoesntexist
Source: "doc\Help\KeyNote.chm"; DestDir: "{app}" ; Components: help
Source: "misc_files\KeyNote.tip"; DestDir: "{app}" ; Components: main

; Profiles
Source: "doc\Profiles.txt"; DestDir: "{app}\Profiles" ; Components: main

; {#DefaultProfile}
Source: "misc_files\dateformats.txt"; DestDir: "{#DefaultProfile}" ; Components: main; Flags: onlyifdoesntexist
Source: "misc_files\timeformats.txt"; DestDir: "{#DefaultProfile}" ; Components: main; Flags: onlyifdoesntexist
Source: "misc_files\keynote.kns" ; DestDir: "{#DefaultProfile}" ; Components: main; Flags: onlyifdoesntexist
Source: "misc_files\keynote.exp" ; DestDir: "{#DefaultProfile}" ; Components: main; Flags: onlyifdoesntexist
Source: "misc_files\keynote.icn" ; DestDir: "{#DefaultProfile}" ; Components: main; Flags: onlyifdoesntexist
Source: "misc_files\nodehead.rtf" ; DestDir: "{#DefaultProfile}" ; Components: main; Flags: onlyifdoesntexist
Source: "misc_files\notehead.rtf" ; DestDir: "{#DefaultProfile}" ; Components: main; Flags: onlyifdoesntexist
;Source: "misc_files\keyboard.ini"; DestDir: "{#DefaultProfile}" ; Components: main; Flags: onlyifdoesntexist

; Help profile
Source: "misc_files\keynote_Help.ini"; DestDir: "{app}\Profiles\Help"; DestName: "keynote.ini" ; Components: help
Source: "misc_files\dateformats.txt" ; DestDir: "{app}\Profiles\Help" ; Components: help; Flags: onlyifdoesntexist
Source: "misc_files\timeformats.txt" ; DestDir: "{app}\Profiles\Help" ; Components: help; Flags: onlyifdoesntexist
Source: "misc_files\keynote.kns" ; DestDir: "{app}\Profiles\Help" ; Components: help; Flags: onlyifdoesntexist
Source: "resources\keynote_hlp.ico" ; DestDir: "{app}\Profiles\Help" ; Components: help

; {app}\macros
Source: "macros\examples\_AutoNewFile.knm"; DestDir: "{app}\macros\examples" ; Components: main
Source: "macros\examples\_AutoNewNode.knm"; DestDir: "{app}\macros\examples" ; Components: main
Source: "macros\examples\_AutoNewNote.knm"; DestDir: "{app}\macros\examples" ; Components: main
Source: "macros\examples\_AutoNewTree.knm"; DestDir: "{app}\macros\examples" ; Components: main
Source: "macros\examples\_Test_Macro.knm" ; DestDir: "{app}\macros\examples" ; Components: main

; {app}\doc
Source: "doc\history.txt"; DestDir: "{app}\doc" ; Components: main
Source: "doc\acknowledgments.txt"; DestDir: "{app}\doc"; Components: main
Source: "doc\References.md"; DestDir: "{app}\doc" ; Components: main
Source: "README.md"; DestDir: "{app}\doc" ; Components: main; Flags: isreadme
Source: "LICENSE.txt"; DestDir: "{app}\doc" ; Components: main;
Source: "doc\README_News.txt"; DestDir: "{app}\doc" ; Components: main
Source: "doc\kn_fileformat\fileformat.txt"; DestDir: "{app}\doc" ; Components: main
Source: "doc\kn_fileformat\fileformat_1.6.5.txt"; DestDir: "{app}\doc" ; Components: main
Source: "doc\kn_fileformat\fileformat.knt"; DestDir: "{app}\doc" ; Components: main
Source: "doc\kn_fileformat\fileformat_minimal.knt"; DestDir: "{app}\doc"; Components: main
Source: "doc\kn_fileformat\fileformat_readme.txt"; DestDir: "{app}\doc" ; Components: main
Source: "misc_files\wordweb.txt"; DestDir: "{app}\doc" ; Components: main
Source: "doc\Changes in 1.8.0 Beta1-6.txt"; DestDir: "{app}\doc" ; Components: main
Source: "doc\Changes in 1.8.1 Beta1-6.txt"; DestDir: "{app}\doc" ; Components: main
Source: "doc\Images_Readme.txt"; DestDir: "{app}\doc" ; Components: main
Source: "doc\dart.txt"; DestDir: "{app}\doc" ; Components: main
Source: "doc\dart_format.txt"; DestDir: "{app}\doc" ; Components: main

; {app}\help
Source: "doc\Help\hlp_1.6.5\KN_Handbook_1.6.knt"; DestDir: "{app}\help\kntHelpFiles" ; Components: help
Source: "doc\Help\hlp_1.6.5\KN_Help_1.6.knt"; DestDir: "{app}\help\kntHelpFiles" ; Components: help
Source: "doc\Help\hlp_1.6.5\KN_Help_Readme.txt"; DestDir: "{app}\help\kntHelpFiles" ; Components: help
Source: "doc\cmdline.txt"; DestDir: "{app}\help" ; Components: help
Source: "doc\Comments on KNT file formats.txt"; DestDir: "{app}\help" ; Components: help
Source: "misc_files\sample.knt"; DestDir: "{app}\help" ; Components: help

; {app}\templates
Source: "misc_files\Meeting template - sample.rtf"; DestDir: "{app}\templates"; Flags: onlyifdoesntexist

; {app}\plugins
Source: "plugins\examples\funckey.knl"; DestDir: "{app}\plugins" ; Components: plugins
Source: "plugins\examples\funckey_readme.txt"; DestDir: "{app}\plugins" ; Components: plugins
Source: "plugins\examples\kncalendar.knl"; DestDir: "{app}\plugins" ; Components: plugins
Source: "plugins\examples\readme.txt"; DestDir: "{app}\plugins" ; Components: plugins

; confirmoverwrite promptifolder


[Icons]
Name: "{group}\{#AppName}"; Filename: "{app}\{#AppFileExe}"
Name: "{group}\{#AppName} GitHub"; Filename: "https://github.com/dpradov/keynote-nf"
Name: "{group}\{#AppName} GitHub - Issues"; Filename: "https://github.com/dpradov/keynote-nf/issues"
Name: "{autodesktop}\{#AppName}"; Filename: "{app}\{#AppFileExe}"; Tasks: desktopicon

; Links to help files
Name: "{app}\KeyNote Help 1.6"; Filename: "{app}\{#AppFileExe}"; Parameters: "Profiles\Help\keynote.ini help\kntHelpFiles\KN_Help_1.6.knt"; Components: help; IconFilename: "{app}\Profiles\Help\keynote_hlp.ico"
Name: "{app}\KeyNote Handbook"; Filename: "{app}\{#AppFileExe}"; Parameters: "Profiles\Help\keynote.ini help\kntHelpFiles\KN_Handbook_1.6.knt"; Components: help; IconFilename: "{app}\Profiles\Help\keynote_hlp.ico"
Name: "{app}\help\KeyNote Help chm"; Filename: "{app}\keynote.chm"; Components: help
Name: "{app}\help\KeyNote Help 1.6"; Filename: "{app}\{#AppFileExe}"; Parameters: "Profiles\Help\keynote.ini help\kntHelpFiles\KN_Help_1.6.knt"; Components: help; IconFilename: "{app}\Profiles\Help\keynote_hlp.ico"
Name: "{app}\help\KeyNote Handbook"; Filename: "{app}\{#AppFileExe}"; Parameters: "Profiles\Help\keynote.ini help\kntHelpFiles\KN_Handbook_1.6.knt"; Components: help; IconFilename: "{app}\Profiles\Help\keynote_hlp.ico"

Name: "{app}\help\Profiles.txt"; Filename: "{app}\Profiles\Profiles.txt"; Components: help


[Registry]
; Associate .knt, .kne, .knm files with Keynote (requires ChangesAssociations=yes)
Root: HKA; Subkey: "Software\Classes\.knt\OpenWithProgids"; ValueType: string; ValueName: "{#_KNT_FILETYPE}.knt"; ValueData: ""; Flags: uninsdeletevalue
Root: HKA; Subkey: "Software\Classes\{#_KNT_FILETYPE}"; ValueType: string; ValueName: ""; ValueData: "{#_KNT_FILETYPE}"; Flags: uninsdeletekey
Root: HKA; Subkey: "Software\Classes\{#_KNT_FILETYPE}\DefaultIcon"; ValueType: string; ValueName: ""; ValueData: "{app}\{#AppFileExe},0"
Root: HKA; Subkey: "Software\Classes\{#_KNT_FILETYPE}\shell\open\command"; ValueType: string; ValueName: ""; ValueData: """{app}\{#AppFileExe}"" ""%1"""
Root: HKA; Subkey: "Software\Classes\Applications\{#AppFileExe}\SupportedTypes"; ValueType: string; ValueName: ".knt"; ValueData: ""

Root: HKA; Subkey: "Software\Classes\.kne\OpenWithProgids"; ValueType: string; ValueName: "{#_KNE_FILETYPE}.kne"; ValueData: ""; Flags: uninsdeletevalue
Root: HKA; Subkey: "Software\Classes\{#_KNE_FILETYPE}"; ValueType: string; ValueName: ""; ValueData: "{#_KNE_FILETYPE}"; Flags: uninsdeletekey
Root: HKA; Subkey: "Software\Classes\{#_KNE_FILETYPE}\DefaultIcon"; ValueType: string; ValueName: ""; ValueData: "{app}\{#AppFileExe},0"
Root: HKA; Subkey: "Software\Classes\{#_KNE_FILETYPE}\shell\open\command"; ValueType: string; ValueName: ""; ValueData: """{app}\{#AppFileExe}"" ""%1"""
Root: HKA; Subkey: "Software\Classes\Applications\{#AppFileExe}\SupportedTypes"; ValueType: string; ValueName: ".kne"; ValueData: ""

Root: HKA; Subkey: "Software\Classes\.knm\OpenWithProgids"; ValueType: string; ValueName: "{#_KNM_FILETYPE}.knm"; ValueData: ""; Flags: uninsdeletevalue
Root: HKA; Subkey: "Software\Classes\{#_KNM_FILETYPE}"; ValueType: string; ValueName: ""; ValueData: "{#_KNM_FILETYPE}"; Flags: uninsdeletekey
Root: HKA; Subkey: "Software\Classes\{#_KNM_FILETYPE}\DefaultIcon"; ValueType: string; ValueName: ""; ValueData: "{app}\{#AppFileExe},0"
Root: HKA; Subkey: "Software\Classes\{#_KNM_FILETYPE}\shell\open\command"; ValueType: string; ValueName: ""; ValueData: """{app}\{#AppFileExe}"" ""%1"""
Root: HKA; Subkey: "Software\Classes\Applications\{#AppFileExe}\SupportedTypes"; ValueType: string; ValueName: ".knm"; ValueData: ""

Root: HKA; Subkey: "Software\Classes\.knm\OpenWithProgids"; ValueType: string; ValueName: "{#_KNL_FILETYPE}.knm"; ValueData: ""; Flags: uninsdeletevalue
Root: HKA; Subkey: "Software\Classes\{#_KNL_FILETYPE}"; ValueType: string; ValueName: ""; ValueData: "{#_KNL_FILETYPE}"; Flags: uninsdeletekey
Root: HKA; Subkey: "Software\Classes\{#_KNL_FILETYPE}\DefaultIcon"; ValueType: string; ValueName: ""; ValueData: "{app}\{#AppFileExe},0"
Root: HKA; Subkey: "Software\Classes\{#_KNL_FILETYPE}\shell\open\command"; ValueType: string; ValueName: ""; ValueData: """{app}\{#AppFileExe}"" ""%1"""
Root: HKA; Subkey: "Software\Classes\Applications\{#AppFileExe}\SupportedTypes"; ValueType: string; ValueName: ".knm"; ValueData: ""

Binary file added doc/Changes in 1.8.1 Beta1-6_Details.7z
Binary file not shown.

0 comments on commit 802edf4

Please sign in to comment.