mirror of
https://codeberg.org/scip/note.git
synced 2025-12-17 12:41:10 +01:00
CHANGED: added the correct installation instructions to the README file.
REMOVED: removed the usage guidelines from te README file. This information
were redundant because its also contained in the manpage.
FIXED: on FreeBSD the setting of MaxLen to 'auto' had no effect because the
output of 'stty -a' which I use in note to determine the actual
size of the terminal, is different from that on linux.
ADDED: topics can now be abbreviated in interactive mode, which
avoids typing. abbreviation works only if an explicit
match could be found, otherwise the available topics that
matches will be suggested.
This commit is contained in:
14
CVS/Entries
14
CVS/Entries
@@ -1,14 +0,0 @@
|
|||||||
D/0x49////
|
|
||||||
D/NOTEDB////
|
|
||||||
D/bin////
|
|
||||||
D/config////
|
|
||||||
D/mysql////
|
|
||||||
/NOTEDB.pm/1.2/Fri Aug 11 00:05:58 2000//
|
|
||||||
/Makefile.PL/1.2/Fri Aug 11 00:03:47 2000//
|
|
||||||
/UPGRADE/1.1.1.1/Fri Aug 11 00:03:51 2000//
|
|
||||||
/stresstest.sh/1.1.1.1/Fri Aug 11 00:03:57 2000//
|
|
||||||
/Changelog/1.7/Sat Aug 19 13:56:13 2000//
|
|
||||||
/README/1.5/Sat Aug 19 13:58:19 2000//
|
|
||||||
/VERSION/1.4/Sat Aug 19 13:57:57 2000//
|
|
||||||
/note.1/1.2/Sat Aug 19 14:00:17 2000//
|
|
||||||
/note.pod/1.2/Sat Aug 19 13:57:20 2000//
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
NOTE
|
|
||||||
13
Changelog
13
Changelog
@@ -1,3 +1,16 @@
|
|||||||
|
================================================================================
|
||||||
|
1.2.1:
|
||||||
|
CHANGED: added the correct installation instructions to the README file.
|
||||||
|
REMOVED: removed the usage guidelines from te README file. This information
|
||||||
|
were redundant because its also contained in the manpage.
|
||||||
|
FIXED: on FreeBSD the setting of MaxLen to 'auto' had no effect because the
|
||||||
|
output of 'stty -a' which I use in note to determine the actual
|
||||||
|
size of the terminal, is different from that on linux.
|
||||||
|
ADDED: topics can now be abbreviated in interactive mode, which
|
||||||
|
avoids typing. abbreviation works only if an explicit
|
||||||
|
match could be found, otherwise the available topics that
|
||||||
|
matches will be suggested.
|
||||||
|
|
||||||
================================================================================
|
================================================================================
|
||||||
1.2.0:
|
1.2.0:
|
||||||
CHANGED: using Makemaker instead of self-written code in Makefile.PL
|
CHANGED: using Makemaker instead of self-written code in Makefile.PL
|
||||||
|
|||||||
@@ -1,5 +0,0 @@
|
|||||||
/binary.pm/1.3/Fri Aug 11 00:05:58 2000//
|
|
||||||
/dbm.pm/1.3/Fri Aug 11 00:05:58 2000//
|
|
||||||
/mysql.pm/1.3/Fri Aug 11 00:05:58 2000//
|
|
||||||
/README/1.1.1.1/Fri Aug 11 00:03:59 2000//
|
|
||||||
D
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
NOTE/NOTEDB
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
zarahg@cvs.htnews.sourceforge.net:/cvsroot/htnews
|
|
||||||
443
README
443
README
@@ -1,4 +1,4 @@
|
|||||||
note 1.2.0 by Thomas Linden, 28/02/2003
|
note 1.2.1 by Thomas Linden, 03/03/2003
|
||||||
=======================================
|
=======================================
|
||||||
|
|
||||||
Introduction
|
Introduction
|
||||||
@@ -98,30 +98,35 @@ Requirements
|
|||||||
Installation
|
Installation
|
||||||
============
|
============
|
||||||
|
|
||||||
Unpack the tar-ball and issue the command:
|
Unpack the tar-ball and issue the following command:
|
||||||
|
|
||||||
$ perl Makefile.PL
|
$ perl Makefile.PL
|
||||||
It will ask you a few questions about file destinations.
|
|
||||||
The script will find itself the proper destinations for
|
|
||||||
the files. So, if you agree with it, simply press ENTER.
|
|
||||||
However, you may decide to use other destinations. In this
|
|
||||||
case, enter it, when asked. This maybe usefull, if you are
|
|
||||||
installing it in your ome-directory and if you are not root!
|
|
||||||
|
|
||||||
For installation instructions for the mysql database installation
|
This creates the Makefile neccessary for installing.
|
||||||
see mysql/README.
|
You may add some additional variables to the commandline, the
|
||||||
|
most important one is PREFIX.
|
||||||
|
|
||||||
If want to use another SQL database, i.e. postgresql then set
|
Then enter the following command to prepare the installation
|
||||||
the option "DbDriver" to the name of the responding DBI-driver
|
process:
|
||||||
and create a symlink of this name like this:
|
|
||||||
/usr/lib/perl5/siteperl/NOTEDB $ ln -s mysql.pm oracle.pm
|
|
||||||
The functionality is the same, but not the name!
|
|
||||||
|
|
||||||
The default binary file backend does not need any special installation
|
$ make
|
||||||
procedure, you need only to spceify a filename in your config file.
|
|
||||||
|
After that, you are ready to install. Become root and issue:
|
||||||
|
|
||||||
|
# make install
|
||||||
|
|
||||||
|
The installation process installs all modules for every available
|
||||||
|
data backend (binary, dbm and mysql). The default note configuration
|
||||||
|
does not require additional perl modules.
|
||||||
|
If you want to use the mysql backend refer to the installation
|
||||||
|
instructions for the mysql database installation in mysql/README.
|
||||||
|
|
||||||
The DBM backend(NOTEDB::dbm) requires the existence of a directory,
|
The DBM backend(NOTEDB::dbm) requires the existence of a directory,
|
||||||
which you must specify in your config using the option "DbName".
|
which you must specify in your config using the option "DbName".
|
||||||
|
|
||||||
|
If you want to use encryption support, you will need at least
|
||||||
|
Crypt:CBC and Crypt::Blowfish (or Crypt::DES or whatever).
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Configuration
|
Configuration
|
||||||
@@ -142,399 +147,7 @@ Configuration
|
|||||||
Usage
|
Usage
|
||||||
=====
|
=====
|
||||||
|
|
||||||
If you don't know, how to run note, try "note -h" first.
|
Refer to the note(1) manpage for usage instructions.
|
||||||
It will tell you all available commandline options.
|
|
||||||
|
|
||||||
To create a new note, simply run "note". You can enter
|
|
||||||
the note (the length is by default limited to 4096 bytes,
|
|
||||||
which you can change from your config file if you are using
|
|
||||||
the binary backend, otherwise there is no limitation).
|
|
||||||
End by typing a . on a line itself. note will tell you the
|
|
||||||
number of the note.
|
|
||||||
|
|
||||||
If you want to view the note, type "note 1", if the notenumber
|
|
||||||
was 1.
|
|
||||||
|
|
||||||
If you want to get an overview of all notes, type "note -l".
|
|
||||||
You will get a list of all notes, containing the number,
|
|
||||||
the first line and the creation date. If topic-support is
|
|
||||||
turned on (which is by default), then all subtopics under the
|
|
||||||
current topic will be displayed first.
|
|
||||||
If you want to see the timestamps, use "-L" instead of "-l".
|
|
||||||
Read more about topics below in the section "Topics".
|
|
||||||
You can also specify the topic which notes you want to see:
|
|
||||||
"-l mytopic" does the trick.
|
|
||||||
Additional, you might want to get an overview of your topic-
|
|
||||||
structure. You can use the command "-t" in this case, which
|
|
||||||
will display a tree-view of your topic-structure. You can
|
|
||||||
use the command "-T" if you want to see the notes under each
|
|
||||||
topic too. "-T" will also show the number of each note.
|
|
||||||
|
|
||||||
To edit a certain note, type "note -e 1". It will invoke your
|
|
||||||
editor (vi or pico). You can edit it, after saving, note
|
|
||||||
will store the changed note to the database.
|
|
||||||
|
|
||||||
Of course you can drop a certain note: "note -d 1" deletes
|
|
||||||
note number 1. If a note in the middle or the beginning of
|
|
||||||
the database will be deleted, note will recount the other
|
|
||||||
existent notes. For example there are 3 notes, number 1, 2
|
|
||||||
and 3. If you delete number 2, then number 3 will become
|
|
||||||
number 2.
|
|
||||||
You can also make use of the extended delete-syntax:
|
|
||||||
To delete note 1 and 2, use "-d 1,2"
|
|
||||||
To delete note 1,2 and 3, use "-d 1-3".
|
|
||||||
|
|
||||||
If you cannot remember, which note you are looking for, you
|
|
||||||
can use the search capability of note: "note -s <searchstring>".
|
|
||||||
note will search the whole note database case insensitive for
|
|
||||||
an occurence of this string and tell you the number and first-
|
|
||||||
line it have.
|
|
||||||
You can extend the searchstring using B<AND>, B<OR> ( and ) and
|
|
||||||
shell-like wildcards:
|
|
||||||
|
|
||||||
$ note -s "moses AND lenin"
|
|
||||||
|
|
||||||
or:
|
|
||||||
|
|
||||||
$ note -s "(mike OR ar??ld) AND (jackson OR schwarzen*)"
|
|
||||||
|
|
||||||
If note finds a note, which first line is a topic, then it will
|
|
||||||
display it's second line.
|
|
||||||
If you want to search for ? or * then you have to surround the
|
|
||||||
searchstring with apostrophs ("").
|
|
||||||
These rules apply for the interactive search too.
|
|
||||||
|
|
||||||
Instead of using note from the commandline you can use the
|
|
||||||
interactive mode. Run note with "note -i". If you need assistance
|
|
||||||
type "?" or "h" at the ">" prompt. The interactive mode
|
|
||||||
provides you the most functions of note.
|
|
||||||
|
|
||||||
You can also dump the contents of your note-database into a
|
|
||||||
ASCII-textfile(-D). You can use this file later to import it into
|
|
||||||
your note-database(-I). This is usefull, if you want quickly trans-
|
|
||||||
fer your notes from one host to another (i.e. you could mail
|
|
||||||
your note-dump form your office to home and import it there
|
|
||||||
for further use).
|
|
||||||
The dumps from the two versions of note are in the same format.
|
|
||||||
Using dumps it is also possible to reinitialize your database. You
|
|
||||||
can use the "-o" switch which causes note to overwrite your existing
|
|
||||||
database. This is very handy if you changed heavily your config. And
|
|
||||||
it is required, if you changed: encryption, db-driver, (binary-format)
|
|
||||||
and the password. You can use the following command for reinitializing:
|
|
||||||
$ note -D - | note -o -I -
|
|
||||||
What the hell, does it?! Step by step:
|
|
||||||
o "note -D -" creates a note-database dump and prints it out
|
|
||||||
to stantdard output.
|
|
||||||
o "|" this is the shell's pipe command. It takes the output
|
|
||||||
of the left program and gives it to the right program as
|
|
||||||
standard input.
|
|
||||||
o "note -o -I -" imports a note-database dump from standard
|
|
||||||
input and overwrites an existing database.
|
|
||||||
Before you use the "-o" switch, I consider yuo to make a backup!
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Topics
|
|
||||||
======
|
|
||||||
|
|
||||||
If topic-support is turned on (which is by default), the various
|
|
||||||
notes are sorted under various topics. There is no special database
|
|
||||||
field for the topic. Instead the topic will be stored right in the
|
|
||||||
note.
|
|
||||||
If the first line of your note contains some text bordered by slashes
|
|
||||||
(or whatever you prefer, set "TopicSeparator" in your config! default
|
|
||||||
is slash), then note will consider it as the topic of this certain
|
|
||||||
note. For examle:
|
|
||||||
/TodoList/
|
|
||||||
If you are using topics, no data after the topic is allowed, if there
|
|
||||||
is any text, note will consider it as a subtopic! Therefore, don't for-
|
|
||||||
get to put a newline after the topic-line.
|
|
||||||
|
|
||||||
If you are in interactive mode, you can "cd" to a different note simply
|
|
||||||
by typing it's name at the command-prompt, or you can use the well-known
|
|
||||||
syntax "cd topic".
|
|
||||||
The list-command will only show you notes under this topic. If you
|
|
||||||
create a new note, it will automagically inserted under the current
|
|
||||||
topic (note will prepend the string "/topicname/" to the text of your
|
|
||||||
note).
|
|
||||||
You can use some enhanced capabilities of the cd command. If you turn on
|
|
||||||
the "ShortCd" parameter in your configuration, then you can cd to a
|
|
||||||
note number (and thus - to it's topic) i.e. "cd 13" jumps to the topic
|
|
||||||
of the note number 13. You can always go one level up using the "cd .."
|
|
||||||
command and you can go to the top-level topic using "cd /".
|
|
||||||
|
|
||||||
You can create at any time from any point a new topic. Just create a new
|
|
||||||
note and type the name of the new topic bordered by slashes (or
|
|
||||||
TopicSeparator) at the first line of this note. After saving, there
|
|
||||||
will be available a new topic with one note in it.
|
|
||||||
|
|
||||||
You can create as many subtopics as you like, the format is similar to
|
|
||||||
a filesystem-path. An example, say, you want to create such a
|
|
||||||
structure:
|
|
||||||
|
|
||||||
(root - top level)
|
|
||||||
|
|
|
||||||
|----test
|
|
||||||
| |----subtopic
|
|
||||||
| | |--note 1
|
|
||||||
| | |--note 2
|
|
||||||
| |
|
|
||||||
| |--note 4
|
|
||||||
|
|
|
||||||
|--note 3
|
|
||||||
|
|
||||||
Then you may create those 4 new notes:
|
|
||||||
--- snip ---
|
|
||||||
/test/subtopic/
|
|
||||||
note 1
|
|
||||||
--- snip ---
|
|
||||||
/test/subtopic/
|
|
||||||
note 2
|
|
||||||
--- snip ---
|
|
||||||
note 3
|
|
||||||
--- snip ---
|
|
||||||
/test/
|
|
||||||
note 4
|
|
||||||
--- snip ---
|
|
||||||
|
|
||||||
I hope, you got the point ;-)
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
If a note does not contain the "magic" /topic/ construction on the first
|
|
||||||
line, it will be listed under the "root" of note, that is the point
|
|
||||||
you are at the startup of note.
|
|
||||||
|
|
||||||
You can subsequently move a note without a topic to a certain topic.
|
|
||||||
Simply edit it and insert at the first line the above mentioned
|
|
||||||
construction.
|
|
||||||
|
|
||||||
Note: Please don't forget the prepending and appending a slash of a
|
|
||||||
topic. You will get strange results without it!
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Formatting of notes
|
|
||||||
===================
|
|
||||||
|
|
||||||
Another very nice feature is the possibility to format the note-text
|
|
||||||
(as much as shell allows it). First, you can use the note-internal
|
|
||||||
"magic-strings" for colorizing. Those strings looks much like HTML:
|
|
||||||
"<green>here is a green line of text</green> no more green."
|
|
||||||
As you see, the beginning of another color starts with a tag(kinda) of
|
|
||||||
the color <colorname> and ends with an end tag </colorname>.
|
|
||||||
|
|
||||||
The following colors are available:
|
|
||||||
black, red, green, yellow, blue, magenta, cyan and white.
|
|
||||||
|
|
||||||
Beside colorizing text, you can also create bold or underlined text! If
|
|
||||||
you decide to use this (additional) feature, you need to set the
|
|
||||||
Config-Option "FormatNotes" to 1 which turns it on.
|
|
||||||
Usage is very straightforward, if a word (a word is defined as some
|
|
||||||
text with at least one space surrounded) is between a magic mark-
|
|
||||||
character. Here are the available things, you can do:
|
|
||||||
|
|
||||||
bold: **word**
|
|
||||||
underlined: __word__
|
|
||||||
inverse: {{word}}
|
|
||||||
|
|
||||||
The text will be formatted using the actually note-color.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Cache
|
|
||||||
=====
|
|
||||||
|
|
||||||
If you have many notes stored in your database then you might
|
|
||||||
find the cache feature useful. Chaching is currently supported
|
|
||||||
by the binary and the mysql backend. Set the configuration
|
|
||||||
parameter "Cache" to "1" or "yes" to turn caching on.
|
|
||||||
Note will then use an internal copy of your notes-database for
|
|
||||||
the list/search/tree commands instead of every time accessing
|
|
||||||
the physically database. If something changed (i.e. you edited
|
|
||||||
a note or added a new one) then the database will be used and
|
|
||||||
the cache will be updated.
|
|
||||||
A "%" character at the top left of the screen indicates that
|
|
||||||
the cache is in use.
|
|
||||||
I consider you not to use the cache feature if you are using
|
|
||||||
multiple instances of note accessing the same database.
|
|
||||||
The cache is turned off by default.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Scripting
|
|
||||||
=========
|
|
||||||
|
|
||||||
Since version 1.0.3 there are some additions which allows you to use
|
|
||||||
note in scripts, without user-interaction. You might run a special
|
|
||||||
script as cronjob, which adds a note under a certain topic every week.
|
|
||||||
Or the like.
|
|
||||||
|
|
||||||
Here are the possibilies you have:
|
|
||||||
|
|
||||||
You can add a new note through a pipe, another commands output becomes
|
|
||||||
note's input:
|
|
||||||
$ cat /var/spool/news/daily | note -
|
|
||||||
This command adds the content of a file "daily" as a new note. Note
|
|
||||||
the dash - it stands for "Standard Input". Note will be completely
|
|
||||||
silent and it will not ask for something.
|
|
||||||
|
|
||||||
Suppose you are using encryption. You might wonder, how note will get
|
|
||||||
your passphrase? The solution: You need to set up an environment
|
|
||||||
variable which contains the password:
|
|
||||||
$ export NOTE_PASSWD=secret
|
|
||||||
If the variable is present, note will not ask you for a passphrase!
|
|
||||||
|
|
||||||
Another thingy you might find useful is the -r (--raw) command-line
|
|
||||||
flag. This turns note into raw mode , which means it will only print the
|
|
||||||
data without any formatting. Raw mode is available for list and display,
|
|
||||||
since it makes no sense, interactive mode does not support raw mode.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Format of the notedb (binary backend)
|
|
||||||
=====================================
|
|
||||||
|
|
||||||
The database where the notes are stored is a binary fixed record length
|
|
||||||
file of the following format:
|
|
||||||
It consists of three fixed length fields per entry. The fields
|
|
||||||
have the following types:
|
|
||||||
o Number: Integer (1 byte)
|
|
||||||
o Note: String (default 1024 bytes)
|
|
||||||
o Time: String (default 64 bytes)
|
|
||||||
You can change the sizes of the fields "Note" and "Time" in
|
|
||||||
the configfile "~/.noterc". If it does not exist, the above
|
|
||||||
defaults will be used.
|
|
||||||
If the data to be stored is smaller then the size of the field,
|
|
||||||
it will be filled with ZERO's ("\0"). The Note and the Time
|
|
||||||
fields will be uuencoded before storage. Of course, this is
|
|
||||||
no security, never mind...
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
The note-database (mysql backend)
|
|
||||||
=================================
|
|
||||||
|
|
||||||
The sql-database for the mysql version has the following design:
|
|
||||||
+--------+---------+------+-----+---------+----------------+
|
|
||||||
| Field | Type | Null | Key | Default | Extra |
|
|
||||||
+--------+---------+------+-----+---------+----------------+
|
|
||||||
| number | int(10) | | PRI | 0 | auto_increment |
|
|
||||||
| note | text | YES | | NULL | |
|
|
||||||
| date | text | YES | | NULL | |
|
|
||||||
+--------+---------+------+-----+---------+----------------+
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Format of the ASCII-dump file (note -D)
|
|
||||||
=======================================
|
|
||||||
|
|
||||||
The dump of a note-database (if you use note -D) has the following
|
|
||||||
format:
|
|
||||||
|
|
||||||
--- snip ---
|
|
||||||
Number: 1
|
|
||||||
Timestamp: 14.01.2000 00:25:01
|
|
||||||
This is a sample text
|
|
||||||
in a sample note.
|
|
||||||
|
|
||||||
Number: 2
|
|
||||||
Timestamp: 14.01.2000 02:37:40
|
|
||||||
And this is another sample
|
|
||||||
of a note.
|
|
||||||
--- snip ---
|
|
||||||
|
|
||||||
You can reimport a dump into your note-database with "note -I <file>"
|
|
||||||
Existing notes will not overwritten, note will append the imported
|
|
||||||
data to your note-database.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Security
|
|
||||||
========
|
|
||||||
|
|
||||||
If you are using the MySQL driver, refer to the mysql
|
|
||||||
manual for more informations about security of mysql databases:
|
|
||||||
http://www.mysql.org/Manual_chapter/manual_Privilege_system.html
|
|
||||||
|
|
||||||
If you are using notes proprietary binary driver, then
|
|
||||||
the permission 0600 of the file "~/.notedb" is strongly required!
|
|
||||||
|
|
||||||
Additional, you can turn on encryption from the config file.
|
|
||||||
Simply set UseEncryption to 1. Please note, that you need
|
|
||||||
to decide, if you want to use encryption before the first use
|
|
||||||
of note! If have already a note database and want to "migrate"
|
|
||||||
to encryption, I suggest you to follow the directions in the
|
|
||||||
file UPGRADE!
|
|
||||||
|
|
||||||
You can choose from different encryption algorythms. The default
|
|
||||||
is IDEA, but DES or BLOWFISH is also possible. You need to have
|
|
||||||
installed the following additional perl-modules on your system:
|
|
||||||
MD5
|
|
||||||
Crypt::IDEA
|
|
||||||
Crypt::DES
|
|
||||||
Crypt::CBC
|
|
||||||
|
|
||||||
After turning on encryption, note will ask you for a passphrase
|
|
||||||
everytime it runs! It will *not* store this passphrase!
|
|
||||||
So, don't forget it! Be careful!
|
|
||||||
|
|
||||||
If you are using the mysql backend and if your mysql database
|
|
||||||
requires a password then you can store an encrypted version of
|
|
||||||
your mysql password instead of the cleartext one.
|
|
||||||
You need to turn on the config-parameter "encrypt_passwd" (set it
|
|
||||||
to 1). Then you need to create an encrypted string from your
|
|
||||||
mysql-password using note's commandline option --encrypt <string>.
|
|
||||||
Note will ask you for a passphrase which will be used to encrypt
|
|
||||||
the mysql-password. This passphrase must be exactly the same as
|
|
||||||
you use for mysql itself. That means you need to use encryption.
|
|
||||||
The string you get from this command must be saved in your config
|
|
||||||
file as attribute to "DbPasswd". Later on note will decrypt that
|
|
||||||
string using the supplied note-passphrase (that's why it must be
|
|
||||||
the same used for encrypt) and pass the result to the mysql server.
|
|
||||||
|
|
||||||
Once note have encrypted some data using this passphrase, you
|
|
||||||
cannot simply switch to another passphrase, because all data
|
|
||||||
within the database needs to be encrypted using the same passphrase!
|
|
||||||
If you want to change the passphrase for any reason, please read
|
|
||||||
the file UPGRADE and follow it's directions!
|
|
||||||
Someday I will add a "change passwd" function, which will do all
|
|
||||||
these things for you. Someday, I said...
|
|
||||||
For now you can use the "re-initialze database" functionality, mentioned
|
|
||||||
earlier in the "Usage" section (at the end of the section).
|
|
||||||
|
|
||||||
Note: To make sure, the encrypted data can be stored properly,
|
|
||||||
it will be uuencoded after encryption.
|
|
||||||
|
|
||||||
Note: *If* you forgot your passphrase and *if* you don't have
|
|
||||||
a backup of your database without encryption, PLEASE
|
|
||||||
don't bother me with "helpme" emails! If you don't know
|
|
||||||
the phrase, then the data can't be decrypted. Even if it
|
|
||||||
is possible - I am not responsible for that!
|
|
||||||
|
|
||||||
Note: How does note know, if the passphrase was incorrect? It uses the
|
|
||||||
specified phrase and encodes at least one note (the first one)
|
|
||||||
and checks if the decrypted timestamp field matches the following
|
|
||||||
expression: "^\d+\.\d+". Translated from perl to human:
|
|
||||||
the timestamp must begin with minimum one digit (possibly more),
|
|
||||||
followed by one dot, followed by minimum one digit (possibly
|
|
||||||
more).
|
|
||||||
Chances are bad, that a wrong passphrase will cause a timestamp
|
|
||||||
matching the rule above. If you have other experiences, please
|
|
||||||
drop me a mail!
|
|
||||||
|
|
||||||
For the paranoid: do not use the cache-feature, 'cause note stores a
|
|
||||||
copy of your note database in RAM if cache support is turned on.
|
|
||||||
This means an attacker could access your (unencrypted!) notes.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -550,14 +163,12 @@ Comments
|
|||||||
License
|
License
|
||||||
=======
|
=======
|
||||||
|
|
||||||
This script comes with absolutely NO WARRANTY. It is distributed under
|
This program comes with absolutely NO WARRANTY. It is distributed under
|
||||||
the terms of the GNU General Public License. Use it at your own risk :-)
|
the terms of the GNU General Public License. Use it at your own risk :-)
|
||||||
You can read the complete GPL at: http://www.gnu.org/copyleft/gpl.html
|
You can read the complete GPL at: http://www.gnu.org/copyleft/gpl.html
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Recources
|
Recources
|
||||||
=========
|
=========
|
||||||
|
|
||||||
@@ -567,8 +178,6 @@ Recources
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Author and Copyright
|
Author and Copyright
|
||||||
====================
|
====================
|
||||||
|
|
||||||
@@ -576,8 +185,6 @@ Author and Copyright
|
|||||||
note is Copyright of Thomas Linden.
|
note is Copyright of Thomas Linden.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Contributors / Credits
|
Contributors / Credits
|
||||||
======================
|
======================
|
||||||
|
|
||||||
@@ -595,4 +202,4 @@ Contributors / Credits
|
|||||||
Last changed
|
Last changed
|
||||||
============
|
============
|
||||||
|
|
||||||
28/02/2003
|
03/03/2003
|
||||||
|
|||||||
@@ -1,2 +0,0 @@
|
|||||||
/note/1.10/Sat Aug 19 13:38:33 2000//
|
|
||||||
D
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
NOTE/bin
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
zarahg@cvs.htnews.sourceforge.net:/cvsroot/htnews
|
|
||||||
32
bin/note
32
bin/note
@@ -126,7 +126,7 @@ $TIME_COLOR = "blue";
|
|||||||
$TOPIC_COLOR = "bold";
|
$TOPIC_COLOR = "bold";
|
||||||
$TOPIC = 1;
|
$TOPIC = 1;
|
||||||
$TopicSep = '/';
|
$TopicSep = '/';
|
||||||
$version = "1.2.0";
|
$version = "1.2.1";
|
||||||
if ($TOPIC) {
|
if ($TOPIC) {
|
||||||
$CurDepth = 1; # the current depth inside the topic "directory" structure...
|
$CurDepth = 1; # the current depth inside the topic "directory" structure...
|
||||||
}
|
}
|
||||||
@@ -916,6 +916,10 @@ sub determine_width {
|
|||||||
if ($wide =~ /columns (\d+?);/) {
|
if ($wide =~ /columns (\d+?);/) {
|
||||||
$maxlen = $1 - 33; # (33 = timestamp + borders)
|
$maxlen = $1 - 33; # (33 = timestamp + borders)
|
||||||
}
|
}
|
||||||
|
elsif ($wide =~ /; (\d+?) columns;/) {
|
||||||
|
# bsd
|
||||||
|
$maxlen = $1 - 33; # (33 = timestamp + borders)
|
||||||
|
}
|
||||||
else {
|
else {
|
||||||
# stty didn't work
|
# stty didn't work
|
||||||
$maxlen = 80 - 33;
|
$maxlen = 80 - 33;
|
||||||
@@ -932,6 +936,10 @@ sub clear {
|
|||||||
if ($height =~ /rows (\d+?);/) {
|
if ($height =~ /rows (\d+?);/) {
|
||||||
$hoch = $1;
|
$hoch = $1;
|
||||||
}
|
}
|
||||||
|
elsif ($height =~ /; (\d+?) rows;/) {
|
||||||
|
# bsd
|
||||||
|
$hoch = $1;
|
||||||
|
}
|
||||||
};
|
};
|
||||||
if (!$hoch) {
|
if (!$hoch) {
|
||||||
# stty didn't work
|
# stty didn't work
|
||||||
@@ -1119,9 +1127,29 @@ sub interactive {
|
|||||||
$CurDepth++;
|
$CurDepth++;
|
||||||
&list;
|
&list;
|
||||||
}
|
}
|
||||||
|
else {
|
||||||
|
# try incomplete match
|
||||||
|
my @matches;
|
||||||
|
foreach my $topic (keys %TP) {
|
||||||
|
if ($topic =~ /^$char/) {
|
||||||
|
push @matches, $topic;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
my $nm = scalar @matches;
|
||||||
|
if ($nm == 1) {
|
||||||
|
# match on one incomplete topic, use this
|
||||||
|
$LastTopic[$CurDepth] = $CurTopic;
|
||||||
|
$CurTopic = $matches[0];
|
||||||
|
$CurDepth++;
|
||||||
|
&list;
|
||||||
|
}
|
||||||
|
elsif ($nm > 1) {
|
||||||
|
print "available topics: " . join( "," , @matches) . "\n";
|
||||||
|
}
|
||||||
else {
|
else {
|
||||||
print "\nunknown command!\n";
|
print "\nunknown command!\n";
|
||||||
}
|
}
|
||||||
|
}
|
||||||
undef $unchar;
|
undef $unchar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1130,7 +1158,7 @@ sub interactive {
|
|||||||
|
|
||||||
sub usage
|
sub usage
|
||||||
{
|
{
|
||||||
print qq~This is the program note $version by Thomas Linden (c) 1999-2000.
|
print qq~This is the program note $version by Thomas Linden (c) 1999-2003.
|
||||||
It comes with absolutely NO WARRANTY. It is distributed under the
|
It comes with absolutely NO WARRANTY. It is distributed under the
|
||||||
terms of the GNU General Public License. Use it at your own risk :-)
|
terms of the GNU General Public License. Use it at your own risk :-)
|
||||||
|
|
||||||
|
|||||||
@@ -1,2 +0,0 @@
|
|||||||
/noterc/1.5/Fri Aug 11 00:04:03 2000//
|
|
||||||
D
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
NOTE/config
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
zarahg@cvs.htnews.sourceforge.net:/cvsroot/htnews
|
|
||||||
@@ -1,5 +0,0 @@
|
|||||||
/README/1.1.1.1/Fri Aug 11 00:04:04 2000//
|
|
||||||
/install.sh/1.1.1.1/Fri Aug 11 00:04:04 2000//
|
|
||||||
/permissions/1.1.1.1/Fri Aug 11 00:04:05 2000//
|
|
||||||
/sql/1.1.1.1/Fri Aug 11 00:04:05 2000//
|
|
||||||
D
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
NOTE/mysql
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
zarahg@cvs.htnews.sourceforge.net:/cvsroot/htnews
|
|
||||||
17
note.pod
17
note.pod
@@ -338,6 +338,8 @@ Say if you delete 1 and 2, then 3 will become 1, 4 will become 5 and so forth.
|
|||||||
You can search for the occurence of a text in your notes-database with the
|
You can search for the occurence of a text in your notes-database with the
|
||||||
command B<S> or B<s>. If you omit an expression note will ask you for one.
|
command B<S> or B<s>. If you omit an expression note will ask you for one.
|
||||||
|
|
||||||
|
If your search criteria matches on exactly one entry, note will display
|
||||||
|
that note entry instead of displaying its number.
|
||||||
|
|
||||||
=item B<T>
|
=item B<T>
|
||||||
|
|
||||||
@@ -350,13 +352,18 @@ notes, B<t> displays just the topics without notes.
|
|||||||
Change the actual topic under which you are. This works identical like just
|
Change the actual topic under which you are. This works identical like just
|
||||||
entering the topic but it has some advantages. You can enter B<cd ..> if
|
entering the topic but it has some advantages. You can enter B<cd ..> if
|
||||||
you want to go one level up in the topic-structure. And you can enter B<cd />
|
you want to go one level up in the topic-structure. And you can enter B<cd />
|
||||||
to go to the top of the structure.
|
to go to the top of the structure. You can always leave out the 'cd' keyword too.
|
||||||
|
|
||||||
Additional it is possible to enter a note-number instead of a topic name.
|
Additional it is possible to enter a note-number instead of a topic name.
|
||||||
For this feature to be active you need to set the config option B<ShortCd>
|
For this feature to be active you need to set the config option B<ShortCd>
|
||||||
to B<1> or B<yes>. If you use a number and the note with this number is
|
to B<1> or B<yes>. If you use a number and the note with this number is
|
||||||
under a certain topic then you will "cd" to this topic. This allows you
|
under a certain topic then you will "cd" to this topic. This allows you
|
||||||
to do kind of jumps over multiple levels of topics.
|
to do kind of jumps over multiple levels of topics.
|
||||||
|
|
||||||
|
If is possible to abbreviate a topic. This works only if the abbreviation
|
||||||
|
matches on one single topic. If it matches more than one topic then the
|
||||||
|
available ones will be suggested.
|
||||||
|
|
||||||
=item B<? or h>
|
=item B<? or h>
|
||||||
|
|
||||||
Display a short help screen.
|
Display a short help screen.
|
||||||
@@ -488,18 +495,14 @@ at the supplied sample configuration file in B<config/noterc>.
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
=head1 SEE ALSO
|
|
||||||
|
|
||||||
See the usage guide in the README or visit the note website:
|
|
||||||
http://www.0x49.org.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
=head1 AUTHOR
|
=head1 AUTHOR
|
||||||
|
|
||||||
Thomas Linden <tom@daemon.de>
|
Thomas Linden <tom@daemon.de>
|
||||||
|
|
||||||
|
|
||||||
|
=head1 VERSION
|
||||||
|
|
||||||
|
1.2.1 (03/03/2003)
|
||||||
|
|
||||||
=cut
|
=cut
|
||||||
@@ -1,55 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
# create notes with topics which then represents the corresponding
|
|
||||||
# directory structure. Depending on how many files the directory
|
|
||||||
# contains, the resulting note-database may become very large.
|
|
||||||
# It will then have thousands of notes!
|
|
||||||
STARTDIR=$1
|
|
||||||
case $STARTDIR in
|
|
||||||
"")
|
|
||||||
echo "usage: stresstest.sh <directory>"
|
|
||||||
exit 1
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
LOCPFAD=`echo $STARTDIR | grep "^[a-zA-Z0-9.]"`
|
|
||||||
case $LOCPFAD in
|
|
||||||
"")
|
|
||||||
#echo nix
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
STARTDIR=`echo $STARTDIR | sed 's/^\.*//'`
|
|
||||||
STARTDIR="`pwd`/$STARTDIR"
|
|
||||||
STARTDIR=`echo $STARTDIR | sed 's/\/\//\//g'`
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
|
|
||||||
stress ()
|
|
||||||
{
|
|
||||||
FILES=""
|
|
||||||
for file in `ls $1|sort`
|
|
||||||
do
|
|
||||||
echo "$1/$file"
|
|
||||||
if [ -d "$1/$file" ] ; then
|
|
||||||
stress "$1/$file"
|
|
||||||
else
|
|
||||||
#echo "$1/" > /tmp/$$
|
|
||||||
#echo $file >> /tmp/$$
|
|
||||||
#`cat /tmp/$$ | note -`
|
|
||||||
FILES="$FILES $file"
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
echo "$1/" > /tmp/$$
|
|
||||||
echo "$FILES" >> /tmp/$$
|
|
||||||
case $FILES in
|
|
||||||
"")
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
RES=`cat /tmp/$$ | note -`
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
FILES=""
|
|
||||||
}
|
|
||||||
|
|
||||||
stress $STARTDIR
|
|
||||||
Reference in New Issue
Block a user