ncdc 1.0 released + replaced user guide with man page
This commit is contained in:
parent
b52bfdb1ba
commit
ae08020ded
4 changed files with 689 additions and 178 deletions
193
index.cgi
193
index.cgi
|
|
@ -17,7 +17,7 @@ TUWF::register(
|
|||
qr{ncdu/scr} => \&ncduscr,
|
||||
qr{ncdc} => \&ncdc,
|
||||
qr{ncdc/faq} => \&ncdcfaq,
|
||||
qr{ncdc/guide} => \&ncdcguide,
|
||||
qr{ncdc/man} => \&ncdcmanual,
|
||||
qr{ncdc/changes} => \&ncdcchangelog,
|
||||
qr{tuwf} => \&tuwf,
|
||||
qr{tuwf/man(?:/(db|misc|request|response|xml))?}
|
||||
|
|
@ -53,6 +53,7 @@ sub home {
|
|||
E;
|
||||
end;
|
||||
h2 'Updates';
|
||||
b '2011-09-16'; txt ' ncdc 1.0 released!'; br;
|
||||
b '2011-09-15'; txt ' Added some screenshots for ncdu.'; br;
|
||||
b '2011-09-03'; txt ' ncdc 0.9 released!'; br;
|
||||
b '2011-08-26'; txt ' ncdc 0.8 released!'; br;
|
||||
|
|
@ -225,8 +226,8 @@ sub ncdc {
|
|||
|
||||
h2 'Get ncdc!';
|
||||
p;
|
||||
b 'Latest version:'; txt ' 0.9 (';
|
||||
a href => '/download/ncdc-0.9.tar.gz', 'download';
|
||||
b 'Latest version:'; txt ' 1.0 (';
|
||||
a href => '/download/ncdc-1.0.tar.gz', 'download';
|
||||
txt ' - '; a href => '/ncdc/changes', 'changes';
|
||||
txt ' - '; a href => '/download/ncdc.md5', 'md5';
|
||||
txt ' - '; a href => '/download/ncdc.sha1', 'sha1';
|
||||
|
|
@ -234,13 +235,14 @@ sub ncdc {
|
|||
txt 'You can also get the latest development version from ';
|
||||
a href => 'http://g.blicky.net/ncdc.git/', 'this git repository';
|
||||
txt '. The README includes instructions to build ncdc. Check out the ';
|
||||
a href => '/ncdc/guide', 'user guide'; txt ' to get started.';
|
||||
a href => '/ncdc/man', 'manual'; txt ' to get started.';
|
||||
end;
|
||||
|
||||
h2 'Features';
|
||||
p 'Common features that all modern DC clients (should) have:';
|
||||
ul;
|
||||
li 'Connecting to multiple hubs at the same time,';
|
||||
li 'Support for both ADC and NMDC protocols,';
|
||||
li 'Chatting and private messaging,';
|
||||
li 'Browsing the user list of a connected hub,';
|
||||
li 'Share management and file uploading,';
|
||||
|
|
@ -248,7 +250,7 @@ sub ncdc {
|
|||
li 'File list browsing,';
|
||||
li 'Single-source and TTH-checked file downloading,';
|
||||
li 'Searching for files,';
|
||||
li 'Secure hub (adcs:// and nmdcs://) and client (ADCS) connections.';
|
||||
li 'Secure hub (adcs:// and nmdcs://) and client connections on both protocols.';
|
||||
end;
|
||||
br;
|
||||
p 'Special features not commonly found in other clients:';
|
||||
|
|
@ -387,180 +389,14 @@ sub ncdcfaq {
|
|||
}
|
||||
|
||||
|
||||
sub ncdcguide {
|
||||
sub ncdcmanual {
|
||||
my $s = shift;
|
||||
$s->htmlHeader(title => 'Ncdc User Guide', page => 'ncdc', tab => 'guide');
|
||||
p 'Since the built-in documentation of ncdc is not really complete yet, it
|
||||
may be a bit hard to use for first-timers. This is a short guide to help
|
||||
you get started with ncdc and to make up for the lack of proper
|
||||
documentation. I\'m assuming that you already managed to install a recent
|
||||
version of ncdc.';
|
||||
|
||||
h2 'Starting up';
|
||||
p 'Simply run `ncdc\', and you should see something like the following screenshot:';
|
||||
img src => '/img/ncdcstart.png', style => 'margin: 5px 0 0 10px; border: 1px solid #999', alt => 'Ncdc start-up screen.';
|
||||
|
||||
h2 'Basic settings';
|
||||
p 'When you just started ncdc, the first thing you want to do is to change some basic settings:';
|
||||
pre class => 'code';
|
||||
txt '/set nick '; b 'MyNick';
|
||||
end;
|
||||
p 'And optionally, you may also want to change these:';
|
||||
pre class => 'code';
|
||||
txt '/set description '; b 'ncdc is awesome!'; br;
|
||||
txt '/set connection '; b '10'; br;
|
||||
txt '/set email '; b 'user@example.com';
|
||||
end;
|
||||
p 'What you can use with the \'connection\' setting is a bit vague, but
|
||||
you\'re safe if you just set it to your upload speed, in MBit/s. On public
|
||||
hubs, you probably don\'t want to set an email address.';
|
||||
p 'Note: these settings can also be changed on a per-hub basis. More on that below.';
|
||||
|
||||
h2 'Sharing';
|
||||
p 'You can skip this section if you don\'t intent to share any files. To add a directory to your share, use the following command:';
|
||||
pre class => 'code';
|
||||
txt '/share '; b 'Virtual_name /path/to/actual/dir';
|
||||
end;
|
||||
p "And '/path/to/actual/dir' will be shared under the virtual directory
|
||||
'Virtual_name', for which you are free to choose a name. Ncdc will
|
||||
automatically index and hash the files in this directory. You can use
|
||||
'/unshare' to remove a directory from your share and '/refresh' to
|
||||
manually keep the index updated on changes. A refresh is automatically done
|
||||
every hour by default, but can be changed using '/set autorefresh'.";
|
||||
|
||||
h2 'Active vs. passive';
|
||||
p 'By default ncdc will use passive mode. If you are connected directly to
|
||||
the internet or are behind a router that allows port forwarding, you will
|
||||
probably want to enable active mode. To do so, issue the following
|
||||
commands:';
|
||||
pre class => 'code';
|
||||
txt '/set active_ip '; b $s->reqIP; br;
|
||||
txt '/set active_port '; b '34194'; br;
|
||||
txt '/set active '; b 'true';
|
||||
end;
|
||||
p "And make sure the port you specified is properly forwarded for both TCP and UDP.";
|
||||
|
||||
h2 'Connecting to hubs';
|
||||
p "This is where ncdc differs a bit from other DC or even IRC clients. To
|
||||
connect to a hub, you first need to name and open a 'hub tab', after which
|
||||
you can use '/connect' to actually connect to the hub:";
|
||||
pre class => 'code';
|
||||
txt '/open '; b 'ncdc'; br;
|
||||
txt '/connect '; b 'adc://dc.blicky.net:2780/';
|
||||
end;
|
||||
p "The name you specify with '/open' will be used by ncdc to refer to this
|
||||
hub. After this, you can always reconnect to this hub simply by typing '/open
|
||||
ncdc', without having to use the '/connect' again.";
|
||||
p "Some settings can be changed on a per-hub basis, for example your nick.
|
||||
Using the '/set' command on a hub tab will change the setting only for that
|
||||
hub. You can use '/unset' to change a setting back to its global value.";
|
||||
|
||||
h2 'Global keybindings and commands';
|
||||
p "You have probably noticed that '/open' created a new tab, and are probably
|
||||
wondering how to switch between multiple tabs and do other funky stuff. The
|
||||
following ASCII table lists some of the global keybindings you can use:";
|
||||
pre class => 'code';
|
||||
b 'Alt+j'; txt ' open previous tab.'; br;
|
||||
b 'Alt+k'; txt ' open next tab.'; br;
|
||||
b 'Alt+h'; txt ' move current tab left.'; br;
|
||||
b 'Alt+l'; txt ' move current tab right.'; br;
|
||||
b 'Alt+<num>'; txt ' open tab with number <num>.'; br;
|
||||
b 'Alt+c'; txt ' close current tab.'; br;
|
||||
b 'Alt+n'; txt ' open the connections tab.'; br;
|
||||
b 'Alt+q'; txt ' open the download queue.'; br;
|
||||
b 'Alt+o'; txt ' open own file list.'; br;
|
||||
b 'Ctrl+c'; txt ' quit ncdc.'; br;
|
||||
end;
|
||||
p "Lots of functionality is hidden behind commands and settings, use '/help'
|
||||
to get a list of the commands and '/help <command>' for information about a
|
||||
specific commands. '/set' can be used to get the list of available
|
||||
settings, but these are not documented yet.";
|
||||
|
||||
h2 'User list';
|
||||
p "To open the user list of a hub, use the '/userlist' command or hit Alt+u.
|
||||
Here's a list of the keys you can use:";
|
||||
pre class => 'code';
|
||||
b 'j'; txt ' scroll down.'; br;
|
||||
b 'k'; txt ' scroll up.'; br;
|
||||
b 's'; txt ' order by share size.'; br;
|
||||
b 'u'; txt ' order by username.'; br;
|
||||
b 'o'; txt ' toggle sort OPs before others.'; br;
|
||||
b 'd'; txt ' toggle description column.'; br;
|
||||
b 'e'; txt ' toggle email column.'; br;
|
||||
b 'c'; txt ' toggle connection column.'; br;
|
||||
b 'i'; txt ' toggle information box.'; br;
|
||||
b 'm'; txt ' PM the selected user.'; br;
|
||||
b 'b'; txt ' browse the selected users\' list.'; br;
|
||||
end;
|
||||
|
||||
h2 'Searching';
|
||||
p "To search for files to download, use the '/search' command:";
|
||||
pre class => 'code';
|
||||
lit '/search <b>gentoo</b>';
|
||||
end;
|
||||
p style => 'font-size: 9px; padding-left: 25px; padding-bottom: 3px',
|
||||
"My apologies for using such a generic search term as example. It just
|
||||
happens to be one that doesn't advocate piracy yet gives some results on
|
||||
most hubs.";
|
||||
p "See '/help search' for more options. A new tab will be opened with the
|
||||
search results, where the following keys can be used:";
|
||||
pre class => 'code';
|
||||
b 'j/k'; txt ' the usual down/up keys.'; br;
|
||||
b 'b'; txt ' browse users\' file list.'; br;
|
||||
b 'd'; txt ' add selected file to download queue.'; br;
|
||||
b 'f'; txt ' find user in the user list.'; br;
|
||||
b 'h'; txt ' show/hide hub column.'; br;
|
||||
b 'u'; txt ' order by username.'; br;
|
||||
b 's'; txt ' order by file size.'; br;
|
||||
b 'l'; txt ' order by available slots.'; br;
|
||||
b 'n'; txt ' order by file name.'; br;
|
||||
end;
|
||||
|
||||
h2 'Browsing file lists';
|
||||
p "If you were paying attention to the previous sections, you would have
|
||||
noticed that three ways to open a file list have been mentioned: The global
|
||||
Alt+o key to open your own, the 'b' key in the user list to browse a users'
|
||||
list, and a similar 'b' key for the search results. There is a fourth
|
||||
method, and that is the '/browse' command, see '/help browse' for details
|
||||
on that one. Regardless of how you open a file list, the following keys
|
||||
are available while browsing one:";
|
||||
pre class => 'code';
|
||||
b 'j/k'; txt ' the usual down/up keys. (this is getting boring)'; br;
|
||||
b 'l'; txt ' open selected directory.'; br;
|
||||
b 'h'; txt ' open parent directory.'; br;
|
||||
b 'd'; txt ' add selected file to download queue.'; br;
|
||||
end;
|
||||
|
||||
h2 'Download queue management';
|
||||
p "Both the the search results and the file list browser have a 'd' key to
|
||||
add a file to the download queue. Any queud files will be downloaded
|
||||
automatically and this process will usually not require any further input.
|
||||
Nonetheless, there is a download queue manager which can be accessed with
|
||||
the global Alt+q key. The following keys can be used on this tab:";
|
||||
pre class => 'code';
|
||||
b 'j/k'; txt ' again, the down/up keys.'; br;
|
||||
b 'f'; txt ' find user in the user list.'; br;
|
||||
b 'd'; txt ' remove selected file from the queue.'; br;
|
||||
b 'c'; txt ' find the related download connection in the connection list.'; br;
|
||||
b '+'; txt ' increase download priority.'; br;
|
||||
b '-'; txt ' decrease download priority.'; br;
|
||||
end;
|
||||
p "A little note on the download priorities: if you see that an item has
|
||||
'ERR' as priority, this means that something went wrong while downloading.
|
||||
In these cases you have two choices: remove the item from the queue ('d'
|
||||
key), or tell ncdc to try it again by clearing the error status (that is,
|
||||
by increasing the priority. That is, the '+' key.).";
|
||||
|
||||
h2 'Connection management';
|
||||
p 'Last but not least, you can also monitor your currently active uploads and
|
||||
downloads with the connections tab, which can be accessed with Alt+n. Keys:';
|
||||
pre class => 'code';
|
||||
b 'j/k'; txt ' guess.'; br;
|
||||
b 'd'; txt ' disconnect selected connection.'; br;
|
||||
b 'i'; txt ' toggle information box.'; br;
|
||||
b 'f'; txt ' find user in the user list.'; br;
|
||||
b 'q'; txt ' find item in the download queue.'; br;
|
||||
$s->htmlHeader(title => 'Manual page', page => 'ncdc', tab => 'man');
|
||||
open my $F, '<', "$ROOT/dat/ncdc-man" or die $!;
|
||||
pre;
|
||||
txt $_ while(<$F>);
|
||||
end;
|
||||
close $F;
|
||||
$s->htmlFooter;
|
||||
}
|
||||
|
||||
|
|
@ -1015,6 +851,7 @@ sub notfound {
|
|||
my $u = lc $s->reqPath;
|
||||
($_->[0] eq $u || $_->[0] eq "$u/") && return $s->resRedirect($_->[1], 'perm') for (
|
||||
[ 'bluecubes', '/demo' ],
|
||||
[ 'ncdc/guide', '/ncdc/man' ],
|
||||
[ 'dump', '/dump' ],
|
||||
[ 'dump/index2', '/dump' ],
|
||||
[ 'dump/pmdc2-parse', '/dump' ],
|
||||
|
|
@ -1070,7 +907,7 @@ sub htmlHeader {
|
|||
div id => 'mtabs';
|
||||
a href => '/ncdc', !$o{tab} ? (class => 'sel') : (), 'main'; txt ' ';
|
||||
a href => '/ncdc/faq', $o{tab} eq 'faq' ? (class => 'sel') : (), 'Q&A'; txt ' ';
|
||||
a href => '/ncdc/guide', $o{tab} eq 'guide' ? (class => 'sel') : (), 'user guide'; txt ' ';
|
||||
a href => '/ncdc/man', $o{tab} eq 'man' ? (class => 'sel') : (), 'manual'; txt ' ';
|
||||
a href => '/ncdc/changes', $o{tab} eq 'changes' ? (class => 'sel') : (), 'changelog'; txt ' ';
|
||||
end;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue