From 62ede07799ec80df2afb02d4e7747fe6941409bc Mon Sep 17 00:00:00 2001 From: TLINDEN Date: Fri, 10 Feb 2012 20:26:16 +0100 Subject: [PATCH] FIXED: Some odd typos in README and note.pod. FIXED: if ShortCd was on and one used "cd 3" and after that "cd .." then the current topic was wrong (empty $PATH). FIXED: if the current topic contained no notes and one created a new note without specifying a topic, then note did not add a proper topic (also because of empty $PATH). CHANGED: the default colors are now visible both on black and white backgrounds, see next entry. ADDED: two more color values: and . CHANGED: the color hash is now in ::main instead of ::C. --- CVS/Entries | 17 +- Changelog | 14 ++ NOTEDB/CVS/Entries | 2 +- README | 13 +- VERSION | 2 +- bin/CVS/Entries | 2 +- bin/note | 151 ++++++++------ mysql/CVS/Entries | 8 +- note.1 | 497 ++++++++++++++++++--------------------------- 9 files changed, 324 insertions(+), 382 deletions(-) diff --git a/CVS/Entries b/CVS/Entries index f831dbf..9fd0319 100644 --- a/CVS/Entries +++ b/CVS/Entries @@ -1,15 +1,14 @@ -/Makefile.PL/1.2/Thu Aug 10 09:21:56 2000// -/UPGRADE/1.1.1.1/Sat Jul 1 14:40:50 2000// -/note/1.1.1.1/Sat Jul 1 14:40:50 2000// -/note.1/1.1/Thu Aug 10 09:23:02 2000// -/note.pod/1.1/Thu Aug 10 09:23:02 2000// -/stresstest.sh/1.1.1.1/Sat Jul 1 14:40:50 2000// D/0x49//// D/NOTEDB//// D/bin//// D/config//// D/mysql//// -/Changelog/1.4/Fri Aug 11 00:03:46 2000// /NOTEDB.pm/1.2/Fri Aug 11 00:05:58 2000// -/README/1.4/Fri Aug 11 00:03:51 2000// -/VERSION/1.3/Fri Aug 11 00:03:51 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// diff --git a/Changelog b/Changelog index 3e1b75b..a684d51 100644 --- a/Changelog +++ b/Changelog @@ -1,5 +1,19 @@ ================================================================================ +1.1.1: +FIXED: Some odd typos in README and note.pod. +FIXED: if ShortCd was on and one used "cd 3" and after that "cd .." + then the current topic was wrong (empty $PATH). +FIXED: if the current topic contained no notes and one created a new + note without specifying a topic, then note did not add a + proper topic (also because of empty $PATH). +CHANGED: the default colors are now visible both on black and white + backgrounds, see next entry. +ADDED: two more color values: and . +CHANGED: the color hash is now in ::main instead of ::C. + +================================================================================ + 1.1.0: CHANGED: does no more use the external touch command to create a new file, use perls open() instead. diff --git a/NOTEDB/CVS/Entries b/NOTEDB/CVS/Entries index ff2a28f..88dfac2 100644 --- a/NOTEDB/CVS/Entries +++ b/NOTEDB/CVS/Entries @@ -1,5 +1,5 @@ -/README/1.1.1.1/Sat Jul 1 14:40:52 2000// /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 diff --git a/README b/README index 029ec6c..b4e47b9 100644 --- a/README +++ b/README @@ -1,4 +1,4 @@ -note 1.1.0 by Thomas Linden, 12/08/2000 +note 1.1.1 by Thomas Linden, 20/08/2000 ======================================= Introduction @@ -150,7 +150,7 @@ Usage 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, therwise there is no limitation). + 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. @@ -162,14 +162,13 @@ Usage 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 get a listing of all 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- - strcture. You can use the command "-t" in this case, which - will display a tree-view of your tpic-structure. You can + 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. @@ -327,7 +326,7 @@ Formatting of notes "magic-strings" for colorizing. Those strings looks much like HTML: "here is a green line of text no more green." As you see, the beginning of another color starts with a tag(kinda) of - the color and ens with an end tag . + the color and ends with an end tag . The following colors are available: black, red, green, yellow, blue, magenta, cyan and white. @@ -597,4 +596,4 @@ Contributors / Credits Last changed ============ - 12/08/2000 + 20/08/2000 diff --git a/VERSION b/VERSION index 9084fa2..524cb55 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.1.0 +1.1.1 diff --git a/bin/CVS/Entries b/bin/CVS/Entries index 7c503d5..6f77477 100644 --- a/bin/CVS/Entries +++ b/bin/CVS/Entries @@ -1,2 +1,2 @@ -/note/1.5/Fri Aug 11 00:05:58 2000// +/note/1.10/Sat Aug 19 13:38:33 2000// D diff --git a/bin/note b/bin/note index b66f045..75704cc 100755 --- a/bin/note +++ b/bin/note @@ -1,5 +1,5 @@ #!/usr/bin/perl -# $Id: note,v 1.5 2000/08/11 00:05:58 zarahg Exp $ +# $Id: note,v 1.10 2000/08/19 13:38:33 zarahg Exp $ # # # note - console notes management with database and encryption support. @@ -27,7 +27,7 @@ # use strict; -#use Data::Dumper; +use Data::Dumper; use Getopt::Long; # @@ -96,7 +96,7 @@ my ( # # internals # - $TYPE, $mode, $NoteKey, $TempDir, + $TYPE, $mode, $NoteKey, $TempDir, %Color, @LastTopic, $version, $CurTopic, $CurDepth, $WantTopic, $sizeof, %TP, $TreeType, $ListType, $SetTitle, @ArgTopics, $key, $typedef, @NumBlock, $has_nothing, @@ -118,16 +118,16 @@ $dbdriver = "binary"; $libpath = "/usr/local/lib"; $NOTEDB = $HOME . "/.notedb"; $MAX_NOTE = 4096; -$MAX_TIME = 64; +$MAX_TIME = 84; $COLOR = "YES"; -$BORDER_COLOR = "BLACK"; +$BORDER_COLOR = "bold"; $NUM_COLOR = "blue"; $NOTE_COLOR = "green"; -$TIME_COLOR = "black"; -$TOPIC_COLOR = "BLACK"; +$TIME_COLOR = "blue"; +$TOPIC_COLOR = "bold"; $TOPIC = 1; $TopicSep = '/'; -$version = "1.1.0"; +$version = "1.1.1"; if ($TOPIC) { $CurDepth = 1; # the current depth inside the topic "directory" structure... } @@ -139,6 +139,45 @@ $fnote = "note"; $fdate = "date"; $fnum = "number"; +# colors available +# \033[1m%30s\033[0m +%Color = ( 'black' => '0;30', + 'red' => '0;31', + 'green' => '0;32', + 'yellow' => '0;33', + 'blue' => '0;34', + 'magenta' => '0;35', + 'cyan' => '0;36', + 'white' => '0;37', + 'B' => '1;30', + 'BLACK' => '1;30', + 'RED' => '1;31', + 'GREEN' => '1;32', + 'YELLOW' => '1;33', + 'BLUE' => '1;34', + 'MAGENTA' => '1;35', + 'CYAN' => '1;36', + 'WHITE' => '1;37', + 'black_' => '4;30', + 'red_' => '4;31', + 'green_' => '4;32', + 'yellow_' => '4;33', + 'blue_' => '4;34', + 'magenta_' => '4;35', + 'cyan_' => '4;36', + 'white_' => '4;37', + 'blackI' => '7;30', + 'redI' => '7;31', + 'greenI' => '7;32', + 'yellowI' => '7;33', + 'blueI' => '7;34', + 'magentaI' => '7;35', + 'cyanI' => '7;36', + 'whiteI' => '7;37', + 'white_black' => '40;37;01', + 'bold' => ';01', + ); + # # process command line args # @@ -569,8 +608,7 @@ sub search ############################### LIST ################################## -sub list - { +sub list { my(@topic,@RealTopic, $i,$t,$n,$num,@CurItem,$top,$in,%res); if ($mode ne "interactive" && !$Raw) { print "\nList of all existing notes:\n\n"; @@ -587,7 +625,7 @@ sub list } foreach $num (sort { $a <=> $b } keys %res) { - $n = $res{$num}->{'note'}; + $n = $res{$num}->{'note'}; $t = $res{$num}->{'date'}; if ($TOPIC) { # this allows us to have multiple topics (subtopics!) @@ -610,18 +648,18 @@ sub list } } elsif ($topic[$CurDepth-1] eq $CurTopic || ($topic[$CurDepth] eq "" && $CurDepth ==1)) { - # cut the topic off the note-text + # cut the topic off the note-text if ($n =~ /^($TopicSep)/) { $CurItem[$i]->{'note'} = $dummy; } else { $CurItem[$i]->{'note'} = $n; } - # save for later output() call + # save for later output() call $CurItem[$i]->{'num'} = $num; $CurItem[$i]->{'time'} = $t; $i++; - # use this note for building the $PATH! + # use this note for building the $PATH! if ($RealTopic[0] eq "") { @RealTopic = @topic; } @@ -633,16 +671,25 @@ sub list } if ($TOPIC) { if ($CurTopic ne "") { - undef $PATH; - foreach (@RealTopic) { - $PATH .= $_ . $TopicSep; - last if($_ eq $CurTopic); + if ($i) { + # only if there were notes under current topic + undef $PATH; + foreach (@RealTopic) { + $PATH .= $_ . $TopicSep; + last if($_ eq $CurTopic); + } + } + else { + # it is an empty topic, no notes here + # !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + $PATH = join $TopicSep, @LastTopic; + $PATH .= $TopicSep . $CurTopic . $TopicSep; + $PATH =~ s/^\Q$TopicSep$TopicSep\E/$TopicSep/; } } else { $PATH = $TopicSep; } - # we are at top level, print a list of topics... foreach $top (sort(keys %TP)) { output("-", " => ". $top . "$TopicSep ($TP{$top} notes)", @@ -888,11 +935,11 @@ sub import sub interactive { - my($B, $BB, $menu, $char, @LastTopic, $Channel); + my($B, $BB, $menu, $char, $Channel); $Channel = $|; # create menu: - $B = ""; - $BB = ""; + $B = ""; + $BB = ""; $menu = "[" . $B . "L" . $BB . "-List "; if ($TOPIC) { $menu .= $B . "T" . $BB . "-Topics "; @@ -1006,6 +1053,7 @@ sub interactive elsif ($char =~ /^\.\.$/ || $char =~ /^cd\s*\.\.$/) { $CurDepth-- if ($CurDepth > 1); $CurTopic = $LastTopic[$CurDepth]; + pop @LastTopic; # remove last element &list; } elsif ($char =~ /^l\s+(\w+)$/) { @@ -1042,9 +1090,10 @@ sub interactive } if (@topic) { # only jump, if, and only if there were at least one topic! - push @LastTopic, "", @topic; $CurDepth = $#topic + 1; $CurTopic = pop @topic; + @LastTopic = (""); + push @LastTopic, @topic; } &list; } @@ -1211,42 +1260,7 @@ sub output sub C { - my(%Color, $default, $S, $Col, $NC, $T); - # \033[1m%30s\033[0m - %Color = ( 'black' => '0;30', - 'red' => '0;31', - 'green' => '0;32', - 'yellow' => '0;33', - 'blue' => '0;34', - 'magenta' => '0;35', - 'cyan' => '0;36', - 'white' => '0;37', - 'B' => '1;30', - 'BLACK' => '1;30', - 'RED' => '1;31', - 'GREEN' => '1;32', - 'YELLOW' => '1;33', - 'BLUE' => '1;34', - 'MAGENTA' => '1;35', - 'CYAN' => '1;36', - 'WHITE' => '1;37', - 'black_' => '4;30', - 'red_' => '4;31', - 'green_' => '4;32', - 'yellow_' => '4;33', - 'blue_' => '4;34', - 'magenta_' => '4;35', - 'cyan_' => '4;36', - 'white_' => '4;37', - 'blackI' => '7;30', - 'redI' => '7;31', - 'greenI' => '7;32', - 'yellowI' => '7;33', - 'blueI' => '7;34', - 'magentaI' => '7;35', - 'cyanI' => '7;36', - 'whiteI' => '7;37' - ); + my($default, $S, $Col, $NC, $T); $default = "\033[0m"; $S = $_[0]; foreach $Col (%Color) { @@ -1340,8 +1354,8 @@ sub gettemp sub help { - my $B = ""; - my $BB = ""; + my $B = ""; + my $BB = ""; my($S, $L, $T, $Q, $H, $N, $D, $E); $L = $B . "L" . $BB . $NOTEC; $T = $B . "T" . $BB . $NOTEC; @@ -1520,6 +1534,21 @@ sub getconfig __END__ # # $Log: note,v $ +# Revision 1.10 2000/08/19 13:38:33 zarahg +# . +# +# Revision 1.9 2000/08/14 14:14:20 zarahg +# changed bug in cd .. after cd , $PATH was empty. +# +# Revision 1.8 2000/08/14 11:21:34 zarahg +# hmmm... the default size for time was too small :-( +# +# Revision 1.7 2000/08/14 10:59:26 zarahg +# moved %Color hash from ::C() to ::main, displaying is now faster. +# +# Revision 1.6 2000/08/14 10:27:26 zarahg +# use now better color defaults and added 2 new color values, bold an white_black +# # Revision 1.5 2000/08/11 00:05:58 zarahg # 1.1.0 beta2 ready for testing # diff --git a/mysql/CVS/Entries b/mysql/CVS/Entries index f1d9103..6826494 100644 --- a/mysql/CVS/Entries +++ b/mysql/CVS/Entries @@ -1,5 +1,5 @@ -/README/1.1.1.1/Sat Jul 1 14:40:52 2000// -/install.sh/1.1.1.1/Sat Jul 1 14:40:52 2000// -/permissions/1.1.1.1/Sat Jul 1 14:40:52 2000// -/sql/1.1.1.1/Sat Jul 1 14:40:52 2000// +/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 diff --git a/note.1 b/note.1 index 042a075..64b51e4 100644 --- a/note.1 +++ b/note.1 @@ -1,12 +1,9 @@ -.rn '' }` -''' $RCSfile: note.1,v $$Revision: 1.1 $$Date: 2000/08/10 09:23:02 $ -''' -''' $Log: note.1,v $ -''' Revision 1.1 2000/08/10 09:23:02 zarahg -''' the new note manpage, source is in perl pod format -''' -''' -.de Sh +.\" Automatically generated by Pod::Man version 1.02 +.\" Sat Aug 19 15:59:14 2000 +.\" +.\" Standard preamble: +.\" ====================================================================== +.de Sh \" Subsection heading .br .if t .Sp .ne 5 @@ -14,150 +11,106 @@ \fB\\$1\fR .PP .. -.de Sp +.de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. -.de Ip +.de Ip \" List item .br .ie \\n(.$>=3 .ne \\$3 .el .ne 3 .IP "\\$1" \\$2 .. -.de Vb +.de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. -.de Ve +.de Ve \" End verbatim text .ft R .fi .. -''' -''' -''' Set up \*(-- to give an unbreakable dash; -''' string Tr holds user defined translation string. -''' Bell System Logo is used as a dummy character. -''' +.\" Set up some character translations and predefined strings. \*(-- will +.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left +.\" double quote, and \*(R" will give a right double quote. | will give a +.\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used +.\" to do unbreakable dashes and therefore won't be available. \*(C` and +.\" \*(C' expand to `' in nroff, nothing in troff, for use with C<> .tr \(*W-|\(bv\*(Tr +.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ -.ds -- \(*W- -.ds PI pi -.if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch -.if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch -.ds L" "" -.ds R" "" -''' \*(M", \*(S", \*(N" and \*(T" are the equivalent of -''' \*(L" and \*(R", except that they are used on ".xx" lines, -''' such as .IP and .SH, which do another additional levels of -''' double-quote interpretation -.ds M" """ -.ds S" """ -.ds N" """"" -.ds T" """"" -.ds L' ' -.ds R' ' -.ds M' ' -.ds S' ' -.ds N' ' -.ds T' ' +. ds -- \(*W- +. ds PI pi +. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch +. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch +. ds L" "" +. ds R" "" +. ds C` ` +. ds C' ' 'br\} .el\{\ -.ds -- \(em\| -.tr \*(Tr -.ds L" `` -.ds R" '' -.ds M" `` -.ds S" '' -.ds N" `` -.ds T" '' -.ds L' ` -.ds R' ' -.ds M' ` -.ds S' ' -.ds N' ` -.ds T' ' -.ds PI \(*p +. ds -- \|\(em\| +. ds PI \(*p +. ds L" `` +. ds R" '' 'br\} -.\" If the F register is turned on, we'll generate -.\" index entries out stderr for the following things: -.\" TH Title -.\" SH Header -.\" Sh Subsection -.\" Ip Item -.\" X<> Xref (embedded -.\" Of course, you have to process the output yourself -.\" in some meaninful fashion. -.if \nF \{ -.de IX -.tm Index:\\$1\t\\n%\t"\\$2" -.. -.nr % 0 -.rr F +.\" +.\" If the F register is turned on, we'll generate index entries on stderr +.\" for titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and +.\" index entries marked with X<> in POD. Of course, you'll have to process +.\" the output yourself in some meaningful fashion. +.if \nF \{\ +. de IX +. tm Index:\\$1\t\\n%\t"\\$2" +. . +. nr % 0 +. rr F .\} -.TH note 1 "note version 1.1.0" "10/Aug/2000" "Documentation" -.UC -.if n .hy 0 +.\" +.\" For nroff, turn off justification. Always turn off hyphenation; it +.\" makes way too many mistakes in technical documents. +.hy 0 .if n .na -.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' -.de CQ \" put $1 in typewriter font -.ft CW -'if n "\c -'if t \\&\\$1\c -'if n \\&\\$1\c -'if n \&" -\\&\\$2 \\$3 \\$4 \\$5 \\$6 \\$7 -'.ft R -.. -.\" @(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2 -. \" AM - accent mark definitions +.\" +.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). +.\" Fear. Run. Save yourself. No user-serviceable parts. .bd B 3 -. \" fudge factors for nroff and troff +. \" fudge factors for nroff and troff .if n \{\ -. ds #H 0 -. ds #V .8m -. ds #F .3m -. ds #[ \f1 -. ds #] \fP +. ds #H 0 +. ds #V .8m +. ds #F .3m +. ds #[ \f1 +. ds #] \fP .\} .if t \{\ -. ds #H ((1u-(\\\\n(.fu%2u))*.13m) -. ds #V .6m -. ds #F 0 -. ds #[ \& -. ds #] \& +. ds #H ((1u-(\\\\n(.fu%2u))*.13m) +. ds #V .6m +. ds #F 0 +. ds #[ \& +. ds #] \& .\} -. \" simple accents for nroff and troff +. \" simple accents for nroff and troff .if n \{\ -. ds ' \& -. ds ` \& -. ds ^ \& -. ds , \& -. ds ~ ~ -. ds ? ? -. ds ! ! -. ds / -. ds q +. ds ' \& +. ds ` \& +. ds ^ \& +. ds , \& +. ds ~ ~ +. ds / .\} .if t \{\ -. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" -. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' -. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' -. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' -. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' -. ds ? \s-2c\h'-\w'c'u*7/10'\u\h'\*(#H'\zi\d\s+2\h'\w'c'u*8/10' -. ds ! \s-2\(or\s+2\h'-\w'\(or'u'\v'-.8m'.\v'.8m' -. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' -. ds q o\h'-\w'o'u*8/10'\s-4\v'.4m'\z\(*i\v'-.4m'\s+4\h'\w'o'u*8/10' +. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" +. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' +. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' +. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' +. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' +. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} -. \" troff and (daisy-wheel) nroff accents +. \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' -.ds v \\k:\h'-(\\n(.wu*9/10-\*(#H)'\v'-\*(#V'\*(#[\s-4v\s0\v'\*(#V'\h'|\\n:u'\*(#] -.ds _ \\k:\h'-(\\n(.wu*9/10-\*(#H+(\*(#F*2/3))'\v'-.4m'\z\(hy\v'.4m'\h'|\\n:u' -.ds . \\k:\h'-(\\n(.wu*8/10)'\v'\*(#V*4/10'\z.\v'-\*(#V*4/10'\h'|\\n:u' -.ds 3 \*(#[\v'.2m'\s-2\&3\s0\v'-.2m'\*(#] .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' @@ -165,109 +118,127 @@ .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E -.ds oe o\h'-(\w'o'u*4/10)'e -.ds Oe O\h'-(\w'O'u*4/10)'E -. \" corrections for vroff +. \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' -. \" for low resolution devices (crt and lpr) +. \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ -. ds : e -. ds 8 ss -. ds v \h'-1'\o'\(aa\(ga' -. ds _ \h'-1'^ -. ds . \h'-1'. -. ds 3 3 -. ds o a -. ds d- d\h'-1'\(ga -. ds D- D\h'-1'\(hy -. ds th \o'bp' -. ds Th \o'LP' -. ds ae ae -. ds Ae AE -. ds oe oe -. ds Oe OE +. ds : e +. ds 8 ss +. ds o a +. ds d- d\h'-1'\(ga +. ds D- D\h'-1'\(hy +. ds th \o'bp' +. ds Th \o'LP' +. ds ae ae +. ds Ae AE .\} .rm #[ #] #H #V #F C +.\" ====================================================================== +.\" +.IX Title "NOTE 1" +.TH note 1 "note version 1.1.1" "20/Aug/2000" "Documentation" +.UC .SH "NAME" note \- a perl script for maintaining notes. .SH "SYNPOPSIS" +.IX Header "SYNPOPSIS" note [options] [ number [,number...]] .SH "DESCRIPTION" -\fBnote\fR is a small console program written in perl, which allows +.IX Header "DESCRIPTION" +\&\fBnote\fR is a small console program written in perl, which allows you to manage notes similar to programs like \*(L"knotes\*(R" but from the commandline. Note can use different database-backends for -notes-storage. It ships with a DBI\-based mysql-\fImodule\fR\|(which -can also be used for other by DBI supported DBMS), another -module, which uses a binary file for storage and a DBM module. -Note supports since version 1.0.0 \fIencryption\fR\|(IDEA or DES)! +notes-storage. It ships with a DBI-based mysql-module(which +can also be used for other by \s-1DBI\s0 supported \s-1DBMS\s0), another +module, which uses a binary file for storage and a \s-1DBM\s0 module. +Note supports since version 1.0.0 encryption(\s-1IDEA\s0 or \s-1DES\s0)! .SH "OPTIONS" -.Ip "\fI\-c, --config file\fR" 5 +.IX Header "OPTIONS" +.Ip "\fI\-c, \-\-config file\fR" 4 +.IX Item "-c, --config file" Use another config file than the default ~/.noterc. -.Ip "\fI\-l, --list [topic]\fR" 5 +.Ip "\fI\-l, \-\-list [topic]\fR" 4 +.IX Item "-l, --list [topic]" Lists all existing notes. If no topic were specified, it will display a list of all existing topics. See the section \fI\s-1TOPICS\s0\fR for details about topics. -.Ip "\fI\-L, --longlist [topic]\fR" 5 +.Ip "\fI\-L, \-\-longlist [topic]\fR" 4 +.IX Item "-L, --longlist [topic]" The same as \fI\-l\fR but prints also the timestamp of the notes. -.Ip "\fI\-t, --topic\fR" 5 +.Ip "\fI\-t, \-\-topic\fR" 4 +.IX Item "-t, --topic" Prints a list of all topics as a tree. -.Ip "\fI\-T, --longtopic\fR" 5 +.Ip "\fI\-T, \-\-longtopic\fR" 4 +.IX Item "-T, --longtopic" Prints the topic-tree with the notes under each topic. -.Ip "\fI\-s, --search string\fR" 5 +.Ip "\fI\-s, \-\-search string\fR" 4 +.IX Item "-s, --search string" Searches for trough the notes database. See the section -\fI\s-1SEARCHING\s0\fR for details about the search engine. -.Ip "\fI\-e, --edit number\fR" 5 +\&\fI\s-1SEARCHING\s0\fR for details about the search engine. +.Ip "\fI\-e, \-\-edit number\fR" 4 +.IX Item "-e, --edit number" Edit the note with the number using your default editor or the one you specified in the config file. -.Ip "\fI\-d, --delete number\fR" 5 +.Ip "\fI\-d, \-\-delete number\fR" 4 +.IX Item "-d, --delete number" Delete the note with the number . You can delete multiple notes -with one command. \*(L"1-4\*(R" deletes the notes 1,2,3,4. And \*(L"1,5,7\*(R" deletes +with one command. \*(L"1\-4\*(R" deletes the notes 1,2,3,4. And \*(L"1,5,7\*(R" deletes the specified ones. -.Ip "\fI\-D, --Dump [file | \-]\fR" 5 +.Ip "\fI\-D, \-\-Dump [file | \-]\fR" 4 +.IX Item "-D, --Dump [file | -]" Dumps all notes to the textfile . If is a \*(L"\-\*(R" it will be printed out to standard output (\s-1STDOUT\s0). -.Ip "\fI\-I, --Import file | \-\fR" 5 +.Ip "\fI\-I, \-\-Import file | -\fR" 4 +.IX Item "-I, --Import file | -" Imports a previously dumped textfile into the note database. Data will be appended by default. -You can also specify a dash \fInote \-I \-\fR instead of a , +You can also specify a dash \fInote \-I -\fR instead of a , which causes note, silently to read in a dump from \s-1STDIN\s0. -.Ip "\fI\-o, --overwrite\fR" 5 -Only suitable for use with --Import. Overwrites an +.Ip "\fI\-o, \-\-overwrite\fR" 4 +.IX Item "-o, --overwrite" +Only suitable for use with \-\-Import. Overwrites an existing notedb. Use with care. -.Ip "\fI\-r, --raw\fR" 5 +.Ip "\fI\-r, \-\-raw\fR" 4 +.IX Item "-r, --raw" Raw mode, output will not be formatted. Works not in interactive mode, only on cmd-line for list and display. That means, no colors will be used and no lines or titles. -.Ip "\fI\-i, --interactive\fR" 5 +.Ip "\fI\-i, \-\-interactive\fR" 4 +.IX Item "-i, --interactive" Start note in interactive mode. See the section \fI\s-1INTERACTIVE\s0 \s-1MODE\s0\fR for details on this mode. - -.Ip "\fI--encrypt cleartext\fR" 5 +.Ip "\fI\*(--encrypt cleartext\fR" 4 +.IX Item "encrypt cleartext" Encrypt the given clear text string. You would need that if you want to -store the mysql password not in cleartext in the \fIconfig\fR\|(if you are using +store the mysql password not in cleartext in the config(if you are using the mysql backend!). -.Ip "\fI\-h, --help\fR" 5 +.Ip "\fI\-h, \-\-help\fR" 4 +.IX Item "-h, --help" Display this help screen. -.Ip "\fI\-v, --version\fR" 5 +.Ip "\fI\-v, \-\-version\fR" 4 +.IX Item "-v, --version" Display the version number. -.Ip "\fB\-\fR" 5 -If you run note just with one dash: \fBnote \-\fR, then it will read in a new +.Ip "\fB-\fR" 4 +.IX Item "-" +If you run note just with one dash: \fBnote -\fR, then it will read in a new note from \s-1STDIN\s0 until \s-1EOF\s0. This makes it possible to pipe text into a new note, i.e.: .Sp .Vb 1 \& cat sometextfile | note - .Ve .SH "USAGE" +.IX Header "USAGE" .Sh "\s-1GENERAL\s0 \s-1USAGE\s0" +.IX Subsection "GENERAL USAGE" If you don't know, how to run note, try \*(L"note \-h\*(R" first. It will tell you all available commandline options. .PP To create a new note, simply run \*(L"note\*(R". 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, therwise there is no limitation). +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. .PP @@ -279,14 +250,13 @@ 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 get a listing of all If you want to see the timestamps, use \*(L"\-L\*(R" instead of \*(L"\-l\*(R". Read more about topics below in the section \*(L"Topics\*(R". You can also specify the topic which notes you want to see: -\*(L"\-l mytopic\*(R" does the trick. +\&\*(L"\-l mytopic\*(R" does the trick. Additional, you might want to get an overview of your topic- -strcture. You can use the command \*(L"\-t\*(R" in this case, which -will display a tree-view of your tpic-structure. You can +structure. You can use the command \*(L"\-t\*(R" in this case, which +will display a tree-view of your topic-structure. You can use the command \*(L"\-T\*(R" if you want to see the notes under each topic too. \*(L"\-T\*(R" will also show the number of each note. .PP @@ -302,8 +272,9 @@ 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 \*(L"\-d 1,2\*(R" -To delete note 1,2 and 3, use \*(L"\-d 1-3\*(R". +To delete note 1,2 and 3, use \*(L"\-d 1\-3\*(R". .Sh "\s-1SEARCHING\s0" +.IX Subsection "SEARCHING" If you cannot remember, which note you are looking for, you can use the search capability of note: \*(L"note \-s \*(R". note will search the whole note database case insensitive for @@ -325,7 +296,15 @@ If note finds a note, which first line is a topic, then it will display it's second line. .PP These rules apply for the interactive search too. +.PP +You need to know, that note searches for the expression in every +note. In other words, \*(L"moses \s-1AND\s0 lenin\*(R" searches for an occurence +of \*(L"moses\*(R" and \*(L"lenin\*(R" in \s-1ONE\s0 note. Or, if you are looking for +\&\*(L"mike \s-1OR\s0 daniel\*(R", then it searches for an occurence of \*(L"mike\*(R" or +daniel\*(L" in \s-1ONE\s0 note. Thus a note with the text \*(R"mike oldfield" will +match that search. .Sh "\s-1TOPICS\s0" +.IX Subsection "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 @@ -397,22 +376,26 @@ construction. Note: Please don't forget the prepending and appending a slash of a topic. You will get strange results without it! .Sh "\s-1INTERACTIVE\s0 \s-1MODE\s0" +.IX Subsection "INTERACTIVE MODE" If you start note with the commandline flag \fB\-i\fR, then it starts with an interactive interface. -It will start with a listing under the default top-topic ("/"). +It will start with a listing under the default top-topic (\*(L"/\*(R"). You can enter the name of a topic to change to that topic. This works similar to a filesystem structure. The current topic will be displayed on the top of the screen. .PP The following commands are available: -.Ip "\fBL [topic]\fR" 5 +.Ip "\fBL [topic]\fR" 4 +.IX Item "L [topic]" This command lists all notes with a timestamp. If you specify a topic, it will only list the notes under this topic. If you are under a certain subtopic, then it will only display the notes under this topic. -.Ip "\fBl [topic]\fR" 5 +.Ip "\fBl [topic]\fR" 4 +.IX Item "l [topic]" This commands behaves similar to \fBL\fR but it does not display the timestamp. You can achieve the same result by simply pressing enter at any time. -.Ip "\fBN\fR" 5 +.Ip "\fBN\fR" 4 +.IX Item "N" You can create a new note by simply pressing \fBN\fR or \fBn\fR. You favorite editor will be started and you can enter your note text. If you are already under a topic then this new note will automatically go to this topic. @@ -420,22 +403,27 @@ note adds an aditional line to the top of the note with the topic. But you can of course specify your own topic. .Sp Note will tell you which number it has assigned to the newly created note. -.Ip "\fBE number\fR" 5 +.Ip "\fBE number\fR" 4 +.IX Item "E number" By entering \fBE\fR or \fBe\fR and a note-number you can edit an existing note using your favorite editor. This way you can also move an existing note from one topic to another one by editing the first line of the note. -.Ip "\fBD number\fR" 5 -\fBE\fR or \fBe\fR deletes one or more existing \fInote\fR\|(s). It requires a note number -or a set of note numbers. 1-5 and 1,7,9 are possible values. +.Ip "\fBD number\fR" 4 +.IX Item "D number" +\&\fBE\fR or \fBe\fR deletes one or more existing \fInote\fR\|(s). It requires a note number +or a set of note numbers. 1\-5 and 1,7,9 are possible values. After one or more notes has been deleted note will recount all remaining notes. Say if you delete 1 and 2, then 3 will become 1, 4 will become 5 and so forth. -.Ip "\fBS [expression]\fR" 5 +.Ip "\fBS [expression]\fR" 4 +.IX Item "S [expression]" You can search for the occurence of a text in your notes-database with the command \fBS\fR or \fBs\fR. If you omit an expression note will ask you for one. -.Ip "\fBT\fR" 5 +.Ip "\fBT\fR" 4 +.IX Item "T" This prints a tree-view of your topic-structure. \fBT\fR displays the tree with notes, \fBt\fR displays just the topics without notes. -.Ip "\fBcd topic\fR" 5 +.Ip "\fBcd topic\fR" 4 +.IX Item "cd topic" Change the actual topic under which you are. This works identical like just entering the topic but it has some advantages. You can enter \fBcd ..\fR if you want to go one level up in the topic-structure. And you can enter \fBcd /\fR @@ -445,14 +433,17 @@ For this feature to be active you need to set the config option \fBShortCd\fR to \fB1\fR or \fByes\fR. If you use a number and the note with this number is under a certain topic then you will \*(L"cd\*(R" to this topic. This allows you to do kind of jumps over multiple levels of topics. -.Ip "\fB? or h\fR" 5 +.Ip "\fB? or h\fR" 4 +.IX Item "? or h" Display a short help screen. -.Ip "\fBQ\fR" 5 +.Ip "\fBQ\fR" 4 +.IX Item "Q" Quit note. .Sh "\s-1BACKUP\s0" +.IX Subsection "BACKUP" You can also dump the contents of your note-database into a -\s-1ASCII\s0\-\fItextfile\fR\|(\fI\-D\fR). You can use this file later to import it into -your note-\fIdatabase\fR\|(\-I). This is usefull, if you want quickly trans- +ASCII-textfile(\fI\-D\fR). 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). @@ -468,25 +459,26 @@ and the password. You can use the following command for reinitializing: \& $ note -D - | note -o -I - .Ve What the hell, does this do?! Step by step: -.Ip "\(bu" 5 -\fBnote \-D \-\fR creates a note-database dump and prints it out +.Ip "\(bu" 4 +\&\fBnote \-D -\fR creates a note-database dump and prints it out to stantdard output. -.Ip "\(bu" 5 -\fB|\fR this is the shell's pipe command. It takes the output +.Ip "\(bu" 4 +\&\fB|\fR 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. -.Ip "\(bu" 5 -\fBnote \-o \-I \-\fR imports a note-database dump from standard +.Ip "\(bu" 4 +\&\fBnote \-o \-I -\fR imports a note-database dump from standard input and overwrites an existing database. .PP Before you use the \fB\-o\fR switch, I consider you to make a backup! .Sh "\s-1FORMATING\s0" +.IX Subsection "FORMATING" 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 -\*(L"magic-strings\*(R" for colorizing. Those strings looks much like \s-1HTML\s0: -\*(L"here is a green line of text no more green.\*(R" -As you see, the beginning of another color starts with a \fItag\fR\|(kinda) of -the color and ens with an end tag . +\&\*(L"magic-strings\*(R" for colorizing. Those strings looks much like \s-1HTML:\s0 +\&\*(L"here is a green line of text no more green.\*(R" +As you see, the beginning of another color starts with a tag(kinda) of +the color and ends with an end tag . .PP The following colors are available: black, red, green, yellow, blue, magenta, cyan and white. @@ -505,17 +497,18 @@ character. Here are the available things, you can do: .Ve The text will be formatted using the actually note-color. .SH "ENCRYPTION" +.IX Header "ENCRYPTION" 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 \*(L"migrate\*(R" to encryption, I suggest you to follow the directions in the -file UPGRADE! +file \s-1UPGRADE\s0! .PP You can choose from different encryption algorythms. The default -is IDEA, but DES or BLOWFISH is also possible. You need to have +is \s-1IDEA\s0, but \s-1DES\s0 or \s-1BLOWFISH\s0 is also possible. You need to have installed the following additional perl-modules on your system: -MD5 +\&\s-1MD5\s0 Crypt::IDEA Crypt::DES Crypt::CBC @@ -524,11 +517,12 @@ 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! .SH "CONFIGURATION" +.IX Header "CONFIGURATION" You can use a configuration file with note but it is not required. Note will use default values if there is no config. .PP The default config file is \fB~/.noterc\fR. You may specify another -one with the commandline flag \fI--config\fR. +one with the commandline flag \fI\*(--config\fR. .PP Comments start with #, empty lines will be ignored. 1 turns an option on, 0 turns it off. @@ -538,102 +532,9 @@ by minimum one space (more spaces and/or tabs are allowed). For a detailed explanation of each possible parameter take a look at the supplied sample configuration file in \fBconfig/noterc\fR. .SH "SEE ALSO" -See the usage guide in the README or visit the note website: +.IX Header "SEE ALSO" +See the usage guide in the \s-1README\s0 or visit the note website: http://www.0x49.org. .SH "AUTHOR" -Thomas Linden - -.rn }` '' -.IX Title "NOTE 1" -.IX Name "note - a perl script for maintaining notes." - -.IX Header "NAME" - -.IX Header "SYNPOPSIS" - -.IX Header "DESCRIPTION" - -.IX Header "OPTIONS" - -.IX Item "\fI\-c, --config file\fR" - -.IX Item "\fI\-l, --list [topic]\fR" - -.IX Item "\fI\-L, --longlist [topic]\fR" - -.IX Item "\fI\-t, --topic\fR" - -.IX Item "\fI\-T, --longtopic\fR" - -.IX Item "\fI\-s, --search string\fR" - -.IX Item "\fI\-e, --edit number\fR" - -.IX Item "\fI\-d, --delete number\fR" - -.IX Item "\fI\-D, --Dump [file | \-]\fR" - -.IX Item "\fI\-I, --Import file | \-\fR" - -.IX Item "\fI\-o, --overwrite\fR" - -.IX Item "\fI\-r, --raw\fR" - -.IX Item "\fI\-i, --interactive\fR" - -.IX Item "\fI--encrypt cleartext\fR" - -.IX Item "\fI\-h, --help\fR" - -.IX Item "\fI\-v, --version\fR" - -.IX Item "\fB\-\fR" - -.IX Header "USAGE" - -.IX Subsection "\s-1GENERAL\s0 \s-1USAGE\s0" - -.IX Subsection "\s-1SEARCHING\s0" - -.IX Subsection "\s-1TOPICS\s0" - -.IX Subsection "\s-1INTERACTIVE\s0 \s-1MODE\s0" - -.IX Item "\fBL [topic]\fR" - -.IX Item "\fBl [topic]\fR" - -.IX Item "\fBN\fR" - -.IX Item "\fBE number\fR" - -.IX Item "\fBD number\fR" - -.IX Item "\fBS [expression]\fR" - -.IX Item "\fBT\fR" - -.IX Item "\fBcd topic\fR" - -.IX Item "\fB? or h\fR" - -.IX Item "\fBQ\fR" - -.IX Subsection "\s-1BACKUP\s0" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Subsection "\s-1FORMATING\s0" - -.IX Header "ENCRYPTION" - -.IX Header "CONFIGURATION" - -.IX Header "SEE ALSO" - .IX Header "AUTHOR" - +Thomas Linden