1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<!--
/*
* $calcurse: manual_it.html,v 1.14 2010-03-29 18:18:04 culot Exp $
*
* Copyright (c) 2004-2010 Frederic Culot <frederic@culot.org>
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* - Redistributions of source code must retain the above
* copyright notice, this list of conditions and the
* following disclaimer.
*
* - Redistributions in binary form must reproduce the above
* copyright notice, this list of conditions and the
* following disclaimer in the documentation and/or other
* materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
*/
-->
<html>
<head>
<title>Documentazione di <code>calcurse</code></title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style type="text/css" media="all">
@import url(manual.css);
</style>
</head>
<body>
<div id="mainContent">
<h1 id="title">
<span class="main"><code>calcurse</code> - un organizer testuale</span></h1>
<div class="warn">
<h1>Abstract</h1> Questo manuale descrive le funzionalità
di <code>calcurse</code>, e il suo utilizzo. Innanzitutto vengono
descritti la procedura di installazione a partire dai sorgenti e le
opzioni della linea di comando; successivamente viene presentata
l'interfaccia utente e tutte le opzioni di configurazione che
modificano il comportamento di <code>calcurse</code>. Infine viene
descritta la procedura per la segnalazione dei bachi e come
partecipare allo sviluppo di calcurse.
</div>
<div id="toc">
<h1>Table of Contents</h1>
<ul>
<li><a href="#intro">1. Introduzione</a></li>
<li><a href="#overview">2. Panoramica</a>
<ul>
<li><a href="#overview_history">2.1 Storia dello sviluppo</a></li>
<li><a href="#overview_features">2.2 Principali caratteristiche</a></li>
</ul></li>
<li><a href="#install">3. Installazione</a>
<ul>
<li><a href="#install_requirements">3.1 Requisiti</a>
<ul>
<li><a href="#install_requirements_ncurses">3.1.1 Librerie <code>ncurses</code></a></li>
<li><a href="#install_requirements_gettext">3.1.2 Librerie <code>gettext</code></a></li>
</ul></li>
<li><a href="#install_process">3.2 Procedura di installazione</a></li>
</ul></li>
<li><a href="#basics">4. Elementi di base di <code>calcurse</code></a>
<ul>
<li><a href="#basics_invocation">4.1 Avvio</a>
<ul>
<li><a href="#basics_invocation_commandline">4.1.1 Argomenti della linea di comando</a></li>
<li><a href="#basics_invocation_variable">4.1.2 Variabili d'ambiente per l'i18n</a></li>
<li><a href="#basics_invocation_environment">4.1.3 Altre variabili d'ambiente</a></li>
</ul></li>
<li><a href="#basics_interface">4.2 Interfaccia utente</a>
<ul>
<li><a href="#basics_interface_noninteractive">4.2.1 Modo non interattivo</a></li>
<li><a href="#basics_interface_interactive">4.2.2 Modo interattivo</a></li>
</ul></li>
<li><a href="#basics_daemon"><span class="todo">4.3 Background mode</span></a></li>
<li><a href="#basics_files">4.4 Files di <code>calcurse</code></a></li>
<li><a href="#basics_import_export"><span class="todo">4.5 Import/Export capabilities</span></a>
<ul>
<li><a href="#basics_import"><span class="todo">4.5.1 Import</span></a></li>
<li><a href="#basics_export"><span class="todo">4.5.2 Export</span></a></li>
</ul></li>
<li><a href="#basics_help">4.6 Aiuto in linea</a></li>
</ul></li>
<li><a href="#options">5. Opzioni</a>
<ul>
<li><a href="#options_general">5.1 Opzioni generali</a></li>
<li><a href="#options_keys"><span class="todo">5.2 Key bindings</span></a>
<li><a href="#options_colors">5.3 Temi dei colori</a></li>
<li><a href="#options_layout">5.4 Configurazione dell'interfaccia</a></li>
<li><a href="#options_sidebar"><span class="todo">5.5 Sidebar configuration</span></a></li>
<li>
<a href="#options_notify">5.6 Configurazioni della barra di
notifica</a>
</li>
</ul></li>
<li><a href="#known_bugs">6. Bachi conosciuti</a></li>
<li><a href="#bugs">7. Riportare i bachi e feedback</a></li>
<li><a href="#contribute">8. Come contribuire</a>
<ul>
<li><a href="#contribute_documentation">8.1 Tradurre la documentazione</a></li>
<li><a href="#contribute_i18n">8.2 i18n <code>calcurse</code></a>
<ul>
<li><a href="#contribute_i18n_overview">8.2.1 Panoramica</a></li>
<li><a href="#contribute_i18n_translator">8.2.2 Compiti del traduttore</a></li>
<li><a href="#contribute_i18n_po-files">8.2.3 File po</a></li>
</ul></li>
</ul></li>
<li><a href="#links">9. Links</a>
<ul>
<li><a href="#links_homepage">9.1 Homepage di <code>calcurse</code></a></li>
<li><a href="#links_list">9.2 Lista degli annunci di <code>calcurse</code></a></li>
<li><a href="#links_rss">9.3 Feed RSS di <code>calcurse</code></a></li>
<li><a href="#links_others"><div class="todo">9.4 Other links</div></a></li>
</ul></li>
<li><a href="#thanks">10. Ringraziamenti</a></li>
</ul>
</div>
<h1>1. Introduzione<a name="intro"></a></h1>
<p>
<code>Calcurse</code> è un programma testuale per la gestione
dell'agenda. Permette la gestione degli eventi, degli appuntamenti
e dei compiti quotidiani: un sistema configurabile di avvisi ricorda
all'utente l'avvicinarsi delle scadenze; l'interfaccia testuale può
essere personalizzata secondo le necessità dell'utente. Tutti i
comandi sono documentati da un sistema d'aiuto in linea.
</p>
<h1>2. Panoramica<a name="overview"></a></h1>
<h2>2.1 Storia dello sviluppo<a name="overview_history"></a></h2>
<p>
Ho cominciato a pensare a questo progetto mentre stavo finendo il
mio dottorato in astrofisica... Stava diventando piuttosto difficile
organizzare la mia vita per cui avevo veramente necessità di un
valido strumento per aiutarmi in questo compito difficile ;)
</p>
<p>
Personalmente apprezzo i programmi con interfaccia utente testuale
perché sono semplici, veloci, portabili ed efficienti perciò ho
pensato di realizzare un semplice calendario testuale.
Inoltre volevo imparare il linguaggio <code>C</code> che avevo usato
solo durante i miei studi secondari; perciò ho pensato che questo
sarebbe stato un buon progetto per organizzarmi e per imparare
qualche nozione di <code>C</code>!
</p>
<p>
Sfortunatamente ho finito il mio dottorato prima di aver
terminato <code>calcurse</code>; in ogni modo ho continuato a
lavorarci sperando che potesse risultare utile anche ad altre
persone. Perciò eccolo qua....
</p>
<p>
Perché il nome 'calcurse'? Perché è semplicemente l'unione di
'CALendar' e 'nCURSEs', dal nome delle librerie usate per realizzare
l'interfaccia utente.
</p>
<h2>2.2 Principali
caratteristiche<a name="overview_features"></a></h2>
<p>
<code>Calcurse</code> è multi-piattaforma e vuole essere leggero,
veloce e affidabile; deve essere usato all'interno della console o
in un terminale, localmente o su un computer remoto mediante una
connessione di tipo ssh.
</p>
<p>
<code>Calcurse</code> può essere usato in due diversi modi,
interattivo e non-interattivo. Nel primo modo permette all'utente di
controllare la propria agenda praticamente ovunque grazie
all'interfaccia testuale.
Il secondo modo permette di aggiungere appuntamenti semplicemente
usando appropriati argomenti alla linea di comando all'interno di un
compito di cron o di uno script di avvio della shell.
</p>
<p>
Inoltre <code>calcurse</code> è stato realizzato pensando all'utente
finale perciò cerca di essere quanto più semplice possibile. Questo
comporta un completo aiuto in linea oltre ad una barra di stato in
cui sono elencate tutte le azioni disponibili.
Anche l'interfaccia utente è configurabile permettendo di poter
scegliere fra diverse combinazioni di colori e layout.
<span class="todo">Key bindings are also configurable, to fit everyone's needs.</span>
Infine un sistema configurabile di allarmi ricorda all'utente
l'avvicinarsi degli appuntamenti.
<span class="todo">The reminders are sent even if the user's interface
is not running, as calcurse is able to run in background.</span>
</p>
<h1>3. Installazione<a name="install"></a></h1>
<h2>3.1 Requisiti<a name="install_requirements"></a></h2>
<h3>3.1.1 Librerie <code>ncurses</code><a name="install_requirements_ncurses"></a></h3>
<p>
<code>Calcurse</code> richiede esclusivamente un
compilatore <code>C</code> quale <code>cc</code>
oppure <code>gcc</code> nonché le librerie <code>ncurses</code>.
È piuttosto difficile non avere le
librerie <code>ncurses</code> già correttamente installate sul
proprio computer ma nel caso è possibile trovarle all'indirizzo:
<pre>http://ftp.gnu.org/pub/gnu/ncurses/</pre>
</p>
<div class="todo">
<p class="rq"><span class="valorize">Note:</span>
It is also possible to link <code>calcurse</code> against the
<code>ncursesw</code> library (ncurses with support for unicode).
However, UTF-8 is not yet supported by <code>calcurse</code>.</p>
</div>
<h3>3.1.2 Librerie <code>gettext</code><a name="install_requirements_gettext"></a></h3>
<p>
<code>Calcurse</code> ha il supporto per la localizzazione
(<span class="emp">i18n</span> da qui in avanti) attraverso
l'utilità <code>gettext</code> perciò può usare messaggi in molte
lingue se compilato con il relativo supporto
(detto <span class="emp">NLS</span>).
</p>
<p>
Comunque <span class="emp">NLS</span> è opzionale e se non lo si
desiderasse è possibile disabilitarlo dando
l'opzione <code>--disable-nls</code> a <code>configure</code> (vedi
la sezione <a href="#install_process">Procedura
d'installazione</a>).
Per verificare che le utilità <code>gettext</code> sono installate
sul vostro computer cercate il file di header <code>libintl.h</code>
ad esempio:
</p>
<pre>locate libintl.h</pre>
<p>
Nel caso non troviate il file potete ottenere i sorgenti
di <code>gettext</code> al seguente indirizzo:
</p>
<pre>http://ftp.gnu.org/pub/gnu/gettext/</pre>
<p>
<p class="rq"><span class="valorize">Nota:</span>
Se anche si fosse trovato il file <code>libintl.h</code>
potrebbe essere necessario specificarne la posizione durante
la <a href="#install_process">procedura d'installazione</a>
usando l'opzione <code>--with-libintl-prefix</code>
con <code>configure</code>.
Questo perché <code>configure</code> potrebbe non essere in
grado di localizzarlo se fosse stato installato in una
posizione inusuale.
</p>
<h2>3.2 Procedura d'installazione<a name="install_process"></a></h2>
<p>
Innanzitutto è necessario scompattare l'archivio contenente i
sorgenti:
</p>
<pre>tar zxvf calcurse-2.8.tar.gz</pre>
<p>
Una volta verificati i requisiti e scompattato l'archivio la
procedura d'installazione è piuttosto semplice visto che segue i tre
passi standard:
<ol>
<li><code>./configure</code></li>
<li><code>make</code></li>
<li><code>make install</code> (potrebbero essere necessari i
diritti di root)</li>
</ol>
</p>
<p>
Usate <code>./configure --help</code> per l'elenco delle opzioni
possibili.
</p>
<h1>4. Elementi di base di <code>calcurse</code><a name="basics"></a></h1>
<h2>4.1 Avvio<a name="basics_invocation"></a></h2>
<h3>4.1.1 Argomenti della linea di comando<a name="basics_invocation_commandline"></a></h3>
<p>
<code>Calcurse</code> accetta le seguenti opzioni della linea di
comando (sia nel formato breve che in quello lungo):
</p>
<p>
<dl>
<dt><code>-a, --appointment</code></dt>
<dd>
Mostra gli appuntamenti e gli eventi per il giorno corrente e
poi esce.
<p class="rq"><span class="valorise">Nota:</span> il calendario
dal quale leggere gli appuntamenti può essere specificato con
l'opzione '-c'.
</p>
</dd>
<dt><code>-c <file>, --calendar <file></code></dt>
<dd>
Indica il file calendario da usare.
Il calendario predefinito è <code>~/.calcurse/apts</code> (vedi
la sezione <a href="#basics_files"><code>calcurse</code>
files</a>).
</dd>
<dt><code>-d <data|num>, --day <data|num></code></dt>
<dd>
Mostra gli appuntamenti per la data indicata o per il numero
indicato per i giorni futuri a seconda del formato
dell'argomento. Sono possibili due formati:
<ul>
<li>una data <span class="todo">(possible formats described below).</span></li>
<li>un numero 'n'.</li>
</ul>
Nel primo caso viene mostrata la lista degli appuntamenti per la
data indicata; nel secondo caso viene mostrata la lista per gli
'n' giorni futuri.
Ad esempio digitando <code>calcurse -d 3</code> verrà mostrata
la lista degli appuntamenti di oggi, domani e dopodomani.
<div class="todo">
Possible formats for specifying the date are defined inside the
general configuration menu (see
<a href="#options_general">General options</a>), using the
<code>input_datefmt</code> variable.
</div>
<p class="rq"><span class="valorise">Nota:</span> così come con
l'argomento '-a' il calendario dal quale leggere gli
appuntamenti può essere specificato con l'argomento '-c'.</p>
</dd>
<dt><code>-D <dir>, --directory <dir></code></dt>
<dd>
<div class="todo">
Specify the data directory to use. This option is
incompatible with -c. If not specified, the
default directory is <code>'~/.calcurse/'</code>.
</div>
</dd>
<dt><code>-h, --help</code></dt>
<dd>
Stampa la versione breve del testo che descrive le opzioni della
riga di comando ed esce.</dd>
<dt><code>-i <file>, --import <file></code></dt>
<dd>
<div class="todo">
Import the icalendar data contained in <code>file</code>.
</div>
</dd>
<dt><code>-n, --next</code></dt>
<dd>
Stampa il prossimo appuntamento nelle successive 24 ore ed esce.
Il tempo stampato indica le ore e i minuti mancanti
all'appuntamento.
<p class="rq"><span class="valorise">Nota:</span> il calendario
dal quale leggere gli appuntamenti può essere specificato con
l'opzione '-c'.</p>
</dd>
<dt><code>-N, --note</code></dt>
<dd>
<div class="todo">
When used with the '-a' or '-t' flag, also print note content
if one is associated with the displayed item.
</div>
</dd>
<dt><code>-r[num], --range[=num]</code></dt>
<dd>
<div class="todo">
Print events and appointments for the num number of
days and exit. If no num is given, a range of 1 day
is considered.
</div>
</dd>
<dt><code>-s[date], --startday[=date]</code></dt>
<dd>
<div class="todo">
Print events and appointments from date and exit.
If no date is given, the current day is considered.
</div>
</dd>
<dt><code>-S<regex>, --search=<regex></code></dt>
<dd>
<div class="todo">
When used with the '-a', '-d', '-r', '-s', or '-t' flag,
print only the items having a description that matches the given
regular expression.
</div>
</dd>
<dt><code>--status</code></dt>
<dd>
<div class="todo">
Display the status of running instances of calcurse. If
calcurse is running, this will tell if the interactive
mode was launched or if calcurse is running in background.
The process pid will also be indicated.
</div>
</dd>
<dt><code>-t[num], --todo[=num]</code></dt>
<dd>
Stampa la lista delle 'attività' ed esce. Se viene specificato
anche il numero <code>num</code> opzionale vengono stampate
esclusivamente le attività che hanno priorità pari al numero
stesso.
<div class="todo">
The priority number must be between 1 (highest) and 9 (lowest). It is also possible
to specify '0' for the priority, in which case only completed tasks will be shown.</p>
</div>
</dd>
<dt><code>-v, --version</code></dt>
<dd>
Stampa la versione di <code>calcurse</code> ed esce.
</dd>
<dt><code>-x[format], --export[=format]</code></dt>
<dd><div class="todo">
Export user data to specified format. Events, appointments and
todos are converted and echoed to stdout.
Two possible formats are available: ical and pcal
(see section <a href="#links_others">Links</a> below).
If the optional argument <code>format</code> is not given,
ical format is selected by default.
</div>
<p class="rq"><span class="valorise">Nota:</span> è possibile
reindirizzare lo standard output per salvare i dati su un file
con un comando del tipo
<code>$ calcurse --export > my_data.dat</code></p>
</dd>
</dl>
<h3>4.1.2 Variabili d'ambiente per l'i18n<a name="basics_invocation_variable"></a></h3>
<p>
<code>Calcurse</code> può essere compilato con il supporto per la
localizzazione
(vedi <a href="#install_requirements_gettext">librerie
<code>gettext</code></a>).
Di conseguenza, se preferite che i messaggi del programma vengano
mostrati nella vostra lingua, innanzitutto verificate che questa sia
disponibile nel file <code>po/LINGUAS</code>: questo file indica
quali lingue sono supportate mostrando il codice di due lettere
corrispondente (ad esempio <span class="emp">fr</span> indica il
francese). Nel caso in cui la vostra lingua non fosse presente
sarebbe estremamente apprezzabile il vostro aiuto nella traduzione
di <code>calcurse</code> (vedi la sezione <a href="#contribute">Come
contribuire</a>).</p>
<p>
Se invece la vostra lingua è presente avviate <code>calcurse</code>
con il seguente comando:</p>
<pre>LC_ALL=fr_FR calcurse</pre>
<p>
dove <span class="emp">fr_FR</span> è il nome della localizzazione
d'esempio che deve essere sostituita dal nome della localizzazione
desiderata.
</p>
<p>
È anche necessario indicare il set di caratteri da usare
perché in alcuni casi gli accenti e altri caratteri simili non
vengono mostrati correttamente. Questo set di caratteri è indicato
all'inizio del file po corrispondente alla localizzazione prescelta:
ad esempio nel file fr.po viene indicato l'uso del set iso-8859-1 e
di conseguenza dovete avviare <code>calcurse</code> con il seguente
comando:</p>
<pre>LC_ALL=fr_FR.ISO8859-1 calcurse</pre>
<h3>4.1.3 Altre variabili
d'ambiente<a name="basics_invocation_environment"></a></h3>
<p>
Le seguenti variabili d'ambiente modificano il funzionamento
di <code>calcurse</code>:</p>
<dl>
<dt><code>VISUAL</code></dt>
<dd>Indica l'editor usato per scrivere le note.
</dd>
<dt><code>EDITOR</code></dt>
<dd>Se non viene impostata la variabile <code>VISUAL</code> viene
usato l'editor indicato dalla variabile <code>EDITOR</code> come
editor di default; se non viene definita nessuna variabile viene
usato l'editor <code>/usr/bin/vi</code>.
</dd>
<dt><code>PAGER</code></dt>
<dd>Specifica il visualizzatore di default usato per leggere le
note. Se questa variabile non viene impostata viene
usato <code>/usr/bin/less</code>.
</dd>
</dl>
<h2>4.2 Interfaccia utente<a name="basics_interface"></a></h2>
<h3>4.2.1 Modalità non-interattiva<a name="basics_interface_noninteractive"></a></h3>
<p>
Quando <code>calcurse</code> viene avviato con una delle opzioni
<code>-a</code>, <code>-d</code>, <code>-h</code>, <code>-n</code>, <code>-t</code>, <code>-v</code>, <code>-x</code>
funziona nella modalità non-interattiva; questo significa che dopo
aver mostrato le informazioni richieste <code>calcurse</code> esce riportando al
prompt della shell.</p>
<p>
In questo modo è possibile ad esempio aggiungere una linea
siffatta <code>'calcurse --todo --appointment'</code> nel file di
avvio della shell per mostrare al logon un elenco dei compiti e
degli appuntamenti previsti per la data odierna.</p>
<h3>4.2.2 Modalità interattiva<a name="basics_interface_interactive"></a></h3>
<div class="todo">
<p class="rq"><span class="valorise">Note:</span>
Key bindings that are indicated in this manual correspond to
the default ones, defined when <code>calcurse</code> is launched
for the first time. If those key bindings do not suit user's needs,
it is possible to change them within the keys configuration menu
(see <a href="#options_keys">key bindings</a>).</p>
</div>
<p>
Se viene avviato senza argomenti oppure solo con
l'opzione <code>'-c'</code> <code>calcurse</code> si avvia nella modalità
interattiva; in questa modalità viene mostrata un'interfaccia
contenente tre differenti sezioni (fra le quali è possibile passare
con il tasto 'TAB'), una barra di notifica ed una barra di stato
(vedi la figura sotto).
</p>
<pre>
Sezione appuntamenti ---. .--- Sezione calendario
| |
v v
+------------------------------------++----------------------------+
| Appointments || Calendar |
|------------------------------------||----------------------------|
| (|) April 6, 2006 || April 2006 |
| ||Mon Tue Wed Thu Fri Sat Sun |
| || 1 2 |
| || 3 4 5 6 7 8 9 |
| || 10 11 12 13 14 15 16 |
| || 17 18 19 20 21 22 23 |
| || 24 25 26 27 28 29 30 |
| || |
| |+----------------------------+
| |+----------------------------+
| || ToDo | Sezione
| ||----------------------------| attività
| || | |
| || | |
| || |<--.
| || |
+------------------------------------++----------------------------+
|---[ Mon 2006-11-22 | 10:11:43 ]---(apts)----> 01:20 :: lunch <---|<--.
+------------------------------------------------------------------+ barra di notifica
| ? Help R Redraw H/L -/+1 Day G GoTo C Config |
| Q Quit S Save J/K -/+1 Week Tab Chg View |<-.
+------------------------------------------------------------------+ |
|
barra di stato
</pre>
<p>
La prima sezione rappresenta un calendario dove è possibile
evidenziare una particolare data; la seconda sezione contiene la
lista degli eventi e degli appuntamenti per la data evidenziata; ed
infine la terza sezione contiene la lista delle attività non
assegnate a nessun giorno particolare.</p>
<div class="todo">
<p>
Depending on the selected view, the calendar could either display
a monthly (default as shown in previous figure) or weekly view.
The weekly view would look like the following:</p>
<pre>
+------------------------------------+
| Calendar |
|----------------------------(# 13)--|
| Mon Tue Wed Thu Fri Sat Sun |
| 29 30 31 01 02 03 04 |
| <----+-- slice 1: 00:00 to 04:00 AM
| -- -- -- -- -- -- |
| <----+-- slice 2: 04:00 to 08:00 AM
| -- -- -- -- -- -- |
| <----+-- slice 3: 08:00 to 12:00 AM
| - -- -- -- -- -- -- - <-+-- midday
| <----+-- slice 4: 12:00 to 04:00 PM
| -- -- -- -- -- -- |
| <----+-- slice 5: 04:00 to 08:00 PM
| -- -- -- -- -- -- |
| <----+-- slice 6: 08:00 to 12:00 PM
+------------------------------------+
</pre>
<p>
The current week number is displayed on the top-right side of the panel
(<span class="emp"># 13</span> meaning it is the 13th week of the year
in the above example). The seven days of the current week are displayed
in column. Each day is divided into slices of 4 hours each (6 slices in
total, see figure above). A slice will appear in a different color if
an appointment falls into the corresponding time-slot.
</p>
</div>
<p>
Nella sezione degli appuntamenti si può notare il
segno <span class="emp">'(|)'</span> accanto alla data indicante la
fase lunare secondo la seguente tabella:
<dl class="compact">
<dt>'<code> |) </code>':</dt>
<dd>primo quarto</dd>
<dt>'<code> (|) </code>':</dt>
<dd>plenilunio</dd>
<dt>'<code> (| </code>':</dt>
<dd>terzo quarto</dd>
<dt>'<code> | </code>':</dt>
<dd>novilunio</dd>
<dt>nessun segno:</dt>
<dd>la fase della luna non corrisponde a nessuna di queste</dd>
</dl>
</p>
<p>
Nell'ultima riga dello schermo si trova la barra di stato che
indica le azioni possibili e le relative scorciatoie di tastiera.
</p>
<p>
Al di sopra della barra di notifica si trova la barra di notifica
che indica (da destra a sinistra): la data e l'ora correnti, il file
calendario attualmente in uso (apts nella figura precedente, che è
il nome di default, vedi la prossima sezione) e il prossimo
appuntamento nelle successive 24 ore; nella figura d'esempio viene
indicato l'appuntamento per il pranzo fra un'ora e venti.
</p>
<p class="rq"><span class="valorise">Nota:</span> alcune azioni, quali
modifica o aggiunta di una voce, richiedono l'inserimento del testo
mediante l'editor a linea compreso nel programma.</p>
<p>
All'interno di questo editor se appare una linea maggiore
dell'ampiezza dello schermo vengono mostrati i caratteri '>',
'*', o '<' nell'ultima colonna nel caso ci siano altri caratteri
successivamente, prima o dopo della posizione corrente; è inoltre
possibile scorrere orizzontalmente.</p>
<p>
Inoltre alcuni comandi sono collegati ad alcune scorciatoie. Di
seguito sono elencati alcuni comandi (dove '^' indica per il tasto
Control):
<dl class="compact">
<dt><code>^a</code>:</dt>
<dd>sposta il cursore all'inizio della riga di input</dd>
<dt><code>^b</code>:</dt>
<dd>sposta il cursore indietro</dd>
<dt><code>^d</code>:</dt>
<dd>cancella il carattere davanti</dd>
<dt><code>^e</code>:</dt>
<dd>sposta il cursore alla fine della riga di input</dd>
<dt><code>^f</code>:</dt>
<dd>sposta il cursore avanti</dd>
<dt><code>^h</code>:</dt>
<dd>cancella il carattere dietro</dd>
<dt><code>^k</code>:</dt>
<dd>cancella dal cursore fino alla fine della riga di input</dd>
<dt><code>ESCAPE</code>:</dt>
<dd>cancella la modifica</dd>
</dl>
</p>
<div class="todo">
<h2>4.3 Background mode<a name="basics_daemon"></a></h2>
<p>When the daemon mode is enabled in the notification configuration menu
(see <a href="#options_notify">Notify-bar settings</a>), <code>calcurse</code> will stay
in background when the user interface is not running. In background mode,
<code>calcurse</code> checks for upcoming appointments and runs the user-defined
notification command when necessary. When the user interface is started again,
the daemon automatically stops.</p>
<p><code>calcurse</code> background activity can be logged (set the
<code>notify-daemon_log</code> variable in the notification configuration
<a href="#options_notify">menu</a>), and in that case, information about the daemon
start and stop time, reminders' command launch time, signals received... will be written
in the <code>daemon.log</code> file (see section <a href="#basics_files">files</a>).</p>
<p>
Using the <code>--status</code> command line option (see section
<a href="#basics_invocation_commandline">Command line arguments</a>),
one can know if <code>calcurse</code> is currently running in background or not.
If the daemon is running, a message like the following one will be displayed (the pid of
the daemon process will be shown):
<pre>calcurse is running in background (pid 14536)</pre>
<p class="rq"><span class="valorise">Note:</span>
To stop the daemon, just send the <code>TERM</code> signal to it, using a command such as:
<code>'kill daemon_pid'</code>, where <span class="emp">daemon_pid</span> is the process id
of the daemon (14536 in the above example).
</p>
</div>
<h2>4.4 File di <code>calcurse</code><a name="basics_files"></a></h2>
<p>
Al primo avvio di <code>calcurse</code> viene creata nella vostra
directory <code>$HOME</code>
<div class="todo">(or in the directory you specified with the -D option)</div>
questa gerarchia di directory:
</p>
<pre>
$HOME/.calcurse/
|___notes/
|___conf
|___keys
|___apts
|___todo
</pre>
<dl class="compact">
<dt><code>notes/</code>:</dt>
<dd>questa sotto-directory contiene le descrizioni delle note
allegate agli appuntamenti, eventi o attività. Per ogni nota viene
creato un file di testo con un nome creato dalla funziona
mkstemp(3) che dovrebbe essere unico ma senza alcuna correlazione
evidente con la descrizione dell'oggetto al quale viene collegato.
</dd>
<dt><code>conf</code>:</dt>
<dd>questo file contiene le configurazioni dell'utente</dd>
<dt><code>keys</code>:</dt>
<dd><span class="todo">this file contains the user-defined key bindings</span></dd>
<dt><code>apts</code>:</dt>
<dd>questo file contiene gli eventi e gli appuntamenti
dell'utente</dd>
<dt><code>todo</code>:</dt>
<dd>questo file contiene l'elenco delle attività</dd>
</dl>
<div class="todo">
<p class="rq"><span class="valorise">Note:</span>
If the logging of calcurse daemon activity was set in the notification
configuration menu, the extra file <code>daemon.log</code> will appear
in calcurse data directory. This file contains logs about calcurse activity
when running in background.
</p>
</div>
<div class="todo">
<h2>4.5 Import/Export capabilities<a name="basics_import_export"></a></h2>
<p>
The import and export capabilities offered by <code>calcurse</code>
are described below.
</p>
<h3>4.5.1 Import<a name="basics_import"></a></h3>
<p>
Data in icalendar format as described in the rfc2445 specification
(see <a href="#links_others">links</a> section below) can be imported
into calcurse. Calcurse ical parser is based on version 2.0 of this
specification, but for now on, only a subset of it is supported.
</p>
<p>
The following icalendar properties are handled by calcurse:
<ul>
<li><code>VTODO</code> items:<br>
"PRIORITY", "VALARM", "SUMMARY", "DESCRIPTION"</li>
<li><code>VEVENT</code> items:<br>
"DTSTART", "DTEND", "DURATION", "RRULE", "EXDATE", "VALARM", "SUMMARY",
"DESCRIPTION"</li>
</ul>
</p>
<p>
The icalendar "DESCRIPTION" property will be converted into calcurse format
by adding a note to the item. If a "VALARM" property is found, the item
will be flagged as important and the user will get a notification (this is
only applicable to appointments).
</p>
<p>
Here are the properties that are not implemented:
<ul>
<li>negative time durations are not taken into account (item is skipped)</li>
<li>some recurence frequences are not recognize:<br>
"SECONDLY" / "MINUTELY" / "HOURLY"</li>
<li>some recurrence keywords are not recognized
(all those starting with 'BY'):<br>
"BYSECOND" / "BYMINUTE" / "BYHOUR" / "BYDAY" / "BYMONTHDAY"<br>
"BYYEARDAY" / "BYWEEKNO" / "BYMONTH" / "BYSETPOS"<br>
plus "WKST"</li>
<li>the recurrence exception keyword "EXRULE" is not recognized</li>
<li>timezones are not taken into account</li>
</ul>
</p>
<h3>4.5.2 Export<a name="basics_export"></a></h3>
<p>
Two possible export formats are available: <code>ical</code> and
<code>pcal</code> (see section <a href="#links_others">Links</a> below
to find out about those formats).
</p>
</div>
<h2>4.6 Aiuto in linea<a name="basics_help"></a></h2>
<p>
In ogni momento è possibile richiedere il sistema dell'aiuto in
linea premendo il tasto '?': una volta avviato si possono richiedere
le informazioni su un certo comando premendo il tasto relativo.
</p>
<h1>5. Opzioni<a name="options"></a></h1>
<p>
Tutti i parametri di <code>calcurse</code> sono configurabili dal menù
Configuration accessibile premendo il tasto 'C' che porta ad un
sotto-menù con quattro possibili scelte: premendo ancora 'C' si
raggiunge alla configurazione dello schema dei colori; premendo 'L'
è possibile scegliere la configurazione dell'interfaccia dello
schermo principale di <code>calcurse</code> (praticamente le posizioni relative
dei tre pannelli); premendo 'G' è possibile modificare alcune
opzioni generali;
<span class="todo">pressing 'K' opens the key bindings configuration
menu,</span>
ed infine premendo 'N' è possibile modificare le
impostazioni della barra di notifica.
</p>
<h2>5.1 Opzioni generali<a name="options_general"></a></h2>
<p>
Queste opzioni controllano il comportamento generale di <code>calcurse</code>:
</p>
<dl>
<dt><code>auto_save</code>
(default: <span class="emp">yes</span>)</dt>
<dd>
Questa opzione permette di salvare automaticamente i dati
dell'utente all'uscita del programma.
<p class="rq"><span class="valorise">attenzione:</span> i
dati non verranno salvati automaticamente se impostato
a <span class="emp">no</span>. Questo comporta che sarà
necessario premere 'S' per salvare i dati eventualmente
modificati.
</dd>
<dt><code><span class="todo">periodic_save</code>
(default: <span class="emp">0</span>)</span></dt>
<dd><span class="todo">If different from '0', user's data will be automatically
saved every <span class="emp">periodic_save</span> minutes.
When an automatic save is performed, two asterisks
(i.e. '<code>**</code>') will appear on the top right-hand side
of the screen).</span>
</dd>
<dt><code>confirm_quit</code>
(default: <span class="emp">yes</span>)</dt>
<dd>
Se impostato a <span class="emp">yes</span> è necessario
confermare l'uscita dal programma; altrimenti premendo 'Q'
<code>calcurse</code> esce senza chiedere conferma.
</dd>
<dt><code>confirm_delete</code>
(default: <span class="emp">yes</span>)
</dt>
<dd>
Se viene impostata a <span class="emp">yes</span> premendo
'D' per cancellare una voce (che può essere
un'<span class="emp">attività</span>,
un <span class="emp">appuntamento</span>, o
un <span class="emp">evento</span>) è necessario
confermare. Altrimenti non è necessaria alcuna conferma.
</dd>
<dt><code>skip_system_dialogs</code>
(default: <span class="emp">no</span>)
</dt>
<dd>
Impostando questa opzione a <span class="emp">yes</span>
non verranno più mostrati i messaggi di sistema
riguardanti il salvataggio e la lettura dei dati, utile
per velocizzare le operazioni di input e output.
</dd>
<dt><code>skip_progress_bar</code>
(default: <span class="emp">no</span>)</dt>
<dd>
Se impostato a <span class="emp">yes</span> non verrà
visualizzata la barra di avanzamento che indica il
salvataggio in corso dei files insieme al file che viene
salvato (vedi la
sezione <a href="#basics_files"><code>calcurse</code> files</a>).
</dd>
<dt><code><span class="todo">calendar_default_view</span></code>
(default: <span class="emp">0</span>)</dt>
<dd><span class="todo">If set to <span class="emp">0</span>, the monthly calendar view will be
displayed by default otherwise it is the weekly view that will be displayed.</span>
</dd>
<dt><code>week_begins_on_monday</code>
(default: <span class="emp">yes</span>)</dt>
<dd>
Con questa opzione è possibile indicare con quale giorno,
domenica o lunedì, far iniziare la settimana nella
finestra del calendario.
</dd>
<dt><code><span class="todo">output_datefmt</code>
(default: <span class="emp">%D</span>)</span></dt>
<dd><span class="todo">This option indicates the format to be used when displaying dates
in non-interactive mode. Using the default values, dates are displayed the
following way: <span class="emp">mm/dd/aa</span>.
You can see all of the possible formats by typing <code>man 3 strftime</code>
inside a terminal.</span></dd>
<dt><code><span class="todo">input_datefmt</code>
(default: <span class="emp">1</span>)</span></dt>
<dd><span class="todo">This option indicates the format that will be used to enter dates in
<span class="emp">calcurse</span>. Four choices are available:</span>
<ol>
<li>mm/dd/yyyy</li>
<li>dd/mm/yyyy</li>
<li>yyyy/mm/dd</li>
<li>yyyy-mm-dd</li>
</ol>
</dd>
</dl>
<div class="todo">
<h2>5.2 Key bindings<a name="options_keys"></a></h2>
<p>
One can define it's own keybindings within the 'Keys' configuration
menu. The default keys look like the one used by the <code>vim</code>
editor, especially the displacement keys. Anyway, within this
configuration menu, users can redefine all of the keys available from
within calcurse's user interface.</p>
<p>
To define new keybindings, first highlight the action to which it will
apply. Then, delete the actual key binding if necessary, and add a new
one. You will then be asked to press the key corresponding to the new
binding. It is possible to define more than one key binding for a single
action.</p>
<p>
An automatic check is performed to see if the new key binding
is not already set for another action. In that case, you will be asked
to choose a different one. Another check is done when exiting from this
menu, to make sure all possible actions have a key associated with it.</p>
<p>
The following keys can be used to define bindings:
<ul>
<li>lower-case, upper-case letters and numbers, such as 'a', 'Z', '0'</li>
<li>CONTROL-key followed by one of the above letters</li>
<li>escape, horizontal tab, and space keys</li>
<li>arrow keys (up, down, left, and right)</li>
<li>'HOME' and 'END' keys</li>
</ul> </p>
<p>
While inside the key configuration menu, an online help is available for
each one of the available actions. This help briefly describes what the
highlighted action is used for.</p>
</div>
<h2>5.3 Color themes<a name="options_colors"></a></h2>
<p>
Il tema del colore di <code>calcurse</code> può essere personalizzato a seconda
delle necessità dell'utente. Nella pagina di configurazione è
possibile cambiare i colori dello sfondo e del primo piano del tema
predefinito: usando i tasti cursore o i tasti di movimento definiti
per lo spostamento in <code>calcurse</code>, il tasto 'X' o lo spazio per
selezionare il colore l'utente può vedere l'anteprima del tema
prescelto. È anche possibile mantenere i colori predefiniti del
terminale selezionando la relativa opzione nella lista.
</p>
<p>
Il tema scelto viene applicato ai bordi del pannello, ai titoli,
alle indicazioni delle scorciatoie da tastiera e in generale alle
informazioni mostrate nella barra di stato. Fra gli altri è anche
presente un tema in bianco e nero per usarlo sui terminali monocromatici.
</p>
<p class="rq">
<span class="valorise">Nota:</span> i colori possono anche
non essere supportati a seconda del tipo di terminale e dal
valore della variabile d'ambiente <code>$TERM</code>; nel
caso in cui il tipo di terminale non li supportasse apparirà
un messaggio d'errore provando a cambiare i colori.
Se sapete che il vostro terminale supporta i colori ma
questi non appaiono provate ad impostare la variabile
<code>$TERM</code> ad un altro valore (come ad
esempio <span class="emp">xterm-xfree86</span>).
</p>
<h2>5.4 Configurazione del layout<a name="options_layout"></a></h2>
<p>
Il layout è la posizione dei pannelli all'interno dello schermo di
<code>calcurse</code>. Il layout predefinito è così disposto: il pannello del
calendario in alto a destra, il pannello delle attività in basso a
destra e il pannello degli appuntamenti sul lato sinistro dello
schermo (vedi la figura della
sezione <a href="#basics_interface_interactive">Modo
interattivo</a>).
Scegliendo un altro layout è possibile personalizzare l'aspetto di
<code>calcurse</code> a seconda delle necessità.
</p>
<div class="todo">
<p>
The following option is used to modify the layout configuration:</p>
<dl>
<dt><code>layout</code>
(default: <span class="emp">0</span>)</dt>
<dd>Eight different layouts are to be chosen from (see layout
configuration screen for the description of the available layouts).</dd>
</dl>
</div>
<div class="todo">
<h2>5.5 Sidebar configuration<a name="options_sidebar"></a></h2>
<p>
The sidebar is the part of the screen which contains two panels:
the calendar and, depending on the chosen layout, either the todo
list or the appointment list.</p>
<p>
The following option is used to change the width of the sidebar:</p>
<dl>
<dt><code>side-bar_width</code>
(default: <span class="emp">0</span>)</dt>
<dd>Width (in percentage, 0 being the minimum width) of the side bar.</dd>
</dl>
</div>
<h2>5.6 Impostazioni della barra delle notifiche<a name="options_notify"></a></h2>
<p>
Le seguenti opzioni modificano il comportamento della barra delle
notifiche:
</p>
<dl>
<dt><code>notify-bar_show</code>
(default: <span class="emp">yes</span>)</dt>
<dd>
Questa opzione imposta la visibilità della barra delle notifiche.
</dd>
<dt><code>notify-bar_date</code>
(default: <span class="emp">%a %F</span>)</dt>
<dd>
Questa opzione imposta il formato utilizzato per la data mostrata
all'interno della barra delle notifiche. È possibile vedere
tutti i possibili formati digitando <code>man 3 strftime</code>
all'interno di un terminale.
</dd>
<dt><code>notify-bar_time</code>
(default: <span class="emp">%T</span>)</dt>
<dd>
Questa opzione imposta il formato utilizzato per mostrare l'orario
all'interno della barra delle notifiche. È possibile vedere
tutti i possibili formati digitando <code>man 3 strftime</code>
all'interno di un terminale.
</dd>
<dt><code>notify-bar_warning</code>
(default: <span class="emp">300</span>)</dt>
<dd>
Nel caso sia presente un appuntamento marcato come 'important'
nell'intervallo definito (in secondi) nella variabile
'notify-bar_warning' viene mostrata lampeggiante la descrizione
dell'appuntamento stesso all'interno della barra delle notifiche.
Inoltre viene eseguito il comando definito
dall'opzione <code>notify-bar_command</code>.
In questo modo è possibile essere avvisati dell'avvicinarsi
di un appuntamento.
</dd>
<dt><code>notify-bar_command</code>
(default: <span class="emp">printf '\a'</span>)</dt>
<dd>
Questa opzione imposta il comando che deve essere avviato
all'avvicinarsi di un appuntamento marcato come 'important'. Il
comando viene passato alla shell che lo deve interpretare. Per
sapere quale tipo di shell è in uso verificare il valore della
variabile d'ambiente <code>$SHELL</code>; nel caso questa
variabile non sia impostata viene usata <code>/bin/sh</code>.
<p class="rq"><span class="valorise">Esempio:</span>
Ammesso che sul sistema in uso sia disponibile il
comando <code>mail</code> il seguente comando permette di
ricevere la notifica con un messaggio di posta elettronica di un
appuntamento imminente (la descrizione dell'appuntamento viene
inclusa anche nel corpo del messaggio):
</p>
<code>
calcurse --next | mail -s "[calcurse] upcoming appointment!" user@host.com
</code>
</dd>
<dt><code><span class="todo">notify-daemon_enable</code>
(default: <span class="emp">no</span>)</span></dt>
<dd><span class="todo">If set to yes, daemon mode will be enabled, meaning <code>calcurse</code>
will run into background when the user's interface is exited. This will allow the
notifications to be launched even when the interface is not running. More details
can be found in section <a href="#basics_daemon">'Background mode'</a>.</span>
</dd>
<dt><code><span class="todo">notify-daemon_log</code>
(default: <span class="emp">no</span>)</span></dt>
<dd><span class="todo">If set to yes, <code>calcurse</code> daemon activity will be logged (see section
<a href="#basics_files">files</a></span>).
</dd>
</dl>
<h1>6. Bachi conosciuti<a name="known_bugs"></a></h1>
<p>
L'evidenziazione delle voci appare scorretta usando calcurse con un
tema bianco e nero insieme alla variabile <code>$TERM</code>
impostata a <span class="emp">xterm-color</span>.
Per risolvere questo baco, così come affermato da Thomas E. Dickey
(manutentore di <code>xterm</code>), si deve usare il
valore <span class="emp">xterm-xfree86</span> per la
variabile <code>$TERM</code>:
</p>
<blockquote class="rq">
"The xterm-color value for $TERM is a bad choice for XFree86 xterm
because it is commonly used for a terminfo entry which happens to
not support bce. Use the xterm-xfree86 entry which is distributed
with XFree86 xterm (or the similar one distributed with ncurses)."
</blockquote>
<h1>7. Segnalazione dei bachi e feedback<a name="bugs"></a></h1>
<p>
Siete invitati a segnalare i bachi e quant'altro a:
</p>
<pre>calcurse .at. culot .dot. org</pre>
<p>
oppure direttamente all'autore:
</p>
<pre>frederic .at. culot .dot. org</pre>
<h1>8. Come contribuire<a name="contribute"></a></h1>
<p>
Se siete interessati a collaborare al progetto dovreste prima di
tutto segnalare pregi e difetti oppure funzionalità mancanti in
<code>calcurse</code>.
Attualmente è possibile partecipare alle traduzioni dei messaggi e
del manuale di <code>calcurse</code>
</p>
<p class="rq"><span class="valorise">Nota:</span> ogni aiuto ad
aumentare il supporto all'internazionalizzazione di <code>calcurse</code> è
benvenuto ma prima di cominciare scrivete a
<code>calcurse-i18n .at. culot .dot. org</code>
per evitare di duplicare gli sforzi.
</p>
<h2>8.1 Tradurre la documentazione<a name="contribute_documentation"></a></h2>
<p>
La directory <span class="emp">doc/</span> del pacchetto dei
sorgenti contiene anche le versioni già tradotte del manuale di
<code>calcurse</code>; se il manuale non è ancora stato tradotto nella vostra
lingua ogni aiuto in tal senso sarà più che apprezzato.
</p>
<p>
Per fare questo è sufficiente copiare il file contenente il manuale
con il nome <code>manual_XX.html</code>
dove <span class="emp">XX</span> identifica il vostro linguaggio:
questo file deve essere tradotto ed inviato all'autore
(vedi <a href="#bugs">Riportare i bachi e feedback</a>) così che
possa essere incluso nel successivo rilascio
di <code>calcurse</code>.
</p>
<h2>8.2 <code>calcurse</code> i18n<a name="contribute_i18n"></a></h2>
<p>
Le utilità di <code>calcurse</code> producono messaggi multi-lingua,
così come ricordato in precedenza: questa sezione contiene
informazioni sulla traduzione di questi messaggi nella vostra
lingua; queste informazioni sono però incomplete in quanto sono
concentrate sull'uso di <code>gettext</code>
per <code>calcurse</code>. Per informazioni maggiormente
approfondite e per comprendere il Grande Disegno che sottintende al
Supporto delle Lingue fate riferimento al manuale di
<code>GNU gettext</code>:
</p>
<pre>http://www.gnu.org/software/gettext/manual/</pre>
<p>
Fondamentalmente sono tre le figure coinvolte nel processo di
traduzione: gli sviluppatori, i coordinatori per la lingua e i
traduttori. Dopo una rapida scorsa al funzionamento del meccanismo
verrà illustrato il compito dei traduttori.
</p>
<h3>8.2.1 Panoramica<a name="contribute_i18n_overview"></a></h3>
<p>
Per essere in grado di mostrare i messaggi nel linguaggio definito
dall'utente sono necessari due passaggi:
l'<span class="emp">internazionalizzazione</span> (i18n) e
la <span class="emp">localizzazione</span> (l10n).
</p>
<p>
i18n è la possibilità per <code>calcurse</code> di supportare svariati linguaggi
che viene inserita dagli sviluppatori, i quali indicano come
traducibili i messaggi e prevedono un sistema per mostrarli tradotti
mentre il programma sta funzionando.
</p>
<p>
l10n è invece il rendere <code>calcurse</code> così programmato adatto al
linguaggio definito dall'utente traducendo le stringhe predefinite
dagli sviluppatori e impostando le variabili d'ambiente così che
<code>calcurse</code> sia in grado di mostrare le stringhe tradotte.
</p>
<p>
Le stringhe traducibili vengono innanzitutto indicate come tali nei
sorgenti <code>C</code>, poi raccolte in un file modello
(<span class="emp">calcurse.pot</span> - la cui
estensione <span class="emp">pot</span>
significa <span class="emp">portable object template</span>). Il
contenuto del file modello viene successivamente inserito nei file
per la traduzione per ogni linguaggio (ad
esempio <span class="emp">fr.po</span> per il francese, la cui
estensione <span class="emp">po</span> sta
per <span class="emp">portable object</span>, cioè leggibile e
modificabile dagli umani).
Ogni gruppo di traduzione prende questo file, ne traduce le stringhe
e poi le invia indietro agli sviluppatori.
Al momento della compilazione viene prodotta una versione binaria di
questo file per ragioni d'efficienza (nel nostro
esempio <span class="emp">fr.mo</span> -
dove <span class="emp">mo</span> sta per <span class="emp">machine
object</span>, cioè leggibile dai programmi) e successivamente
installato.
A questo punto <code>calcurse</code> sarà in grado di usare questo file
traducendo le stringhe a seconda delle variabili d'ambiente
impostate dall'utente.
</p>
<h3>8.2.2 Compiti dei traduttori<a name="contribute_i18n_translator"></a></h3>
<p>
Questi sono i passaggi da seguire qualora si volesse iniziare una
nuova traduzione:
</p>
<ul>
<li>
Innanzitutto si deve trovare quale sia la sigla che individua il
linguaggio prescelto: ad esempio 'fr_FR' o più semplicemente 'fr'
indica il francese. Questo sarà il valore a cui impostare la e
variabile d'ambiente <code>LC_ALL</code> perché il programma
mostri correttamente le stringhe tradotte (vedi
<a href="#basics_invocation_variable">Variabili d'ambiente per
l'i18</a>).
</li>
<li>
Poi si dovrà creare un nuovo file 'po' all'interno della
directory <span class="emp">po/</span> usando un file modello con
il seguente comando:
<code>'msginit -i calcurse.pot -o fr.po -l fr --no-translator'</code>.
Nel caso in cui il comando <code>msginit</code> non sia
disponibile sul sistema in uso copiate semplicemente il
file <span class="emp">calcurse.pot</span> con il nome (nel nostro
esempio) <span class="emp">fr.po</span> e modificatene gli header
a mano.
</li>
</ul>
<p>
A questo punto è possibile iniziare la traduzione del
file <span class="emp">fr.po</span> appena creato.
</p>
<h3>8.2.3 I file po<a name="contribute_i18n_po-files"></a></h3>
<p>
Il formato dei file po è relativamente semplice essendo composti di
quattro componenti:
</p>
<ol>
<li>
<span class="emp">Linee locations:</span> indicano la posizione in
cui si trovano le stringhe (nome del file e numero di linea) nel
caso sia necessario avere un po' di contesto.
</li>
<li>
<span class="emp">Linee msgid:</span> le stringhe da tradurre.
</li>
<li>
<span class="emp">Linee msgstr:</span> le stringhe tradotte.
</li>
<li>
<span class="emp">Linee che iniziano con '#':</span> commenti (alcuni
con significati speciali come spiegato più avanti).
</li>
</ol>
<p>
Praticamente è necessario tradurre le suddette linee marcate
con <span class="emp">msgstr</span> con la traduzione delle linee
marcate con <span class="emp">msgid</span>
</p>
<p>
<span class="valorise">Alcune note:</span>
<dl>
<dt>
<span class="emp">Stringhe fuzzy</span>
</dt>
<dd>
Potrete trovare alcune stringhe marcate con un
commento <code>"#, fuzzy"</code>, stringhe che <code>calcurse</code> non
userà finché non verrà preso qualche provvedimento. Questo
perché la stringa in questione è stata cambiata nei sorgenti del
programma oppure perché <code>gettext</code> ha tentato di
'indovinarne' il significato basandosi su altre stringhe simili
già presenti nel file. Questo comporta la necessità di
controllare la traduzione.
Alcune volte la stringa originale è stata modificata per
correggere un errore ortografico; in questo caso non è
necessaria alcuna azione. Altre volte però la traduzione non è
più corretta per cui è necessario rivederla.
Una volta che la traduzione può essere considerata corretta è
sufficiente rimuovere la linea <code>"#, fuzzy"</code> e questa
verrà usata normalmente.
</dd>
<dt>
<span class="emp">Stringhe c-format e sequenze speciali</span>
</dt>
<dd>
Alcune stringhe potranno avere il commento <code>"#, c-format"</code>.
Questo indica che una componente della stringa ha un particolare
significato per il programma e che quindi avrà lasciata
inalterata. Ad esempio la sequenze come <code>"%s"</code>
vengono sostituite dal programma con altre stringhe.
Ci sono anche le sequenze del tipo <code>\n</code>
e <code>\t</code> che non devono essere modificate perché la
prima indica un ritorno a capo e la seconda una tabulazione.
</dd>
<dt>
<span class="emp">Le traduzioni possono avere ritorno a
capo</span>
</dt>
<dd>
Se le linee sono troppo lunghe possono essere interrotte così:
<pre>
msgid ""
"some very long line"
"another line"
</pre>
</dd>
<dt>
<span class="emp">Header dei file po</span>
</dt>
<dd>
Nelle prime righe del file po la prima stringa costituisce un
header contenente alcune informazioni che devono essere
completate. Questi header sono:
<pre>
"Content-Type: text/plain; charset=utf-8\n"
</pre>
È anche necessario compilare il campo 'Last-Translator'
di modo che altri potenziali collaboratori possano contattarvi
per unire gli sforzi o per segnalare errori e
correzioni. È possibile usare anche un soprannome o
aggiungere un indirizzo di posta elettronica come ad esempio:
<pre>
"Last-Translator: Frederic Culot <frederic@culot.org>\n"
</pre></dd>
<dt>
<span class="emp">Commenti</span>
</dt>
<dd>
Aggiungere commenti (indicati dalle linee che iniziano con il
carattere '#') può essere un valido modo per indicare problemi o
difficoltà trovate nella traduzione ad altri collaboratori o in
generale ai partecipanti alla traduzione.
</dd>
<dt>
<span class="emp">Dimensione delle stringhe</span>
</dt>
<dd>
<code>Calcurse</code> è un programma per la console scritto
usando le librerie 'curses' per cui può essere fortemente
limitato dalle dimensioni (in particolare dal numero di colonne)
del terminale, limitazioni che è necessario tenere a mente
mentre si traduce. Spesso una stringa deve essere tutta compresa
in una singola linea (la cui dimensione standard è di 80
caratteri). Ponete attenzione e verificate che la vostra
traduzione si adatti alla posizione prevista sullo schermo.
</dd>
<dt>
<span class="emp">Alcuni utili strumenti</span>
</dt>
<dd>
Il file po ha una struttura estremamente semplice per cui può
essere modificato anche direttamente con un normale editor di
testi; in ogni caso è possibile anche usare degli strumenti
specializzati:
<ul>
<li>
<code>poEdit</code> (<a href="http://www.poedit.org/" target="_blank">http://www.poedit.org/</a>)
</li>
<li>
<code>KBabel</code>
(<a href="http://i18n.kde.org/tools/kbabel/" target="_blank">http://i18n.kde.org/tools/kbabel/</a>)
</li>
<li>
<code>GTranslator</code>
(<a href="http://gtranslator.sourceforge.net/" target="_blank">http://gtranslator.sourceforge.net/</a>)
</li>
<li>
<code>Emacs</code> po mode
</li>
<li>
<code>Vim</code> po mode
</li>
</ul>
</dd>
<dt>
<span class="emp">E per chiudere</span>
</dt>
<dd>
Mi auguro che troviate soddisfazione nel contribuire ad un mondo
maggiormente internazionalizzato. :) Se avete altre domande non
esitate a contattarmi all'indirizzo
<span class="emp">frederic .at. culot .dot. org</span>.
</dd>
</dl>
<h1>9. Link<a name="links"></a></h1>
<p>
Questa sezione contiene link e riferimenti che possono risultare
interessanti.
</p>
<h2>9.1 Homepage di <code>calcurse</code><a name="links_homepage"></a></h2>
<p>
L'homepage di <code>calcurse</code> è
</p>
<pre>http://culot.org/calcurse</pre>
<h2>9.2 Mailing list degli annunci di <code>calcurse</code><a name="links_list"></a></h2>
<p>
Se siete interessati al progetto e volete ricevere gli annunci
relativi ai rilasci delle nuove versioni (o all'inserimento di nuove
funzionalità) potete iscrivervi alla mailing list degli annunci di
<code>calcurse</code>.
</p>
<p>
Per iscriversi alla lista inviate un messaggio
all'indirizzo <span class="emp">calcurse-announce .at. culot
.dot. org</span> con "subscribe" nel soggetto.
</p>
<h2>9.3 Feed rss di <code>calcurse</code><a name="links_rss"></a></h2>
<p>
Un'altra possibilità per ricevere questi annunci è l'iscrizione al
feed RSS all'indirizzo:
</p>
<pre>http://culot.org/calcurse/news_rss.xml</pre>
<p>
Questo feed viene aggiornato ogni volta viene pubblicata una nuova
versione con la descrizione delle funzionalità aggiunte.
</p>
<h2><div class="todo">9.4 Other links</div><a name="links_others"></a></h2>
<div class="todo">
<p>
You may want to look at the ical format specification (rfc2445) at:
<pre>http://tools.ietf.org/html/rfc2445</pre>
<p>
The pcal project page can be found at:
<pre>http://pcal.sourceforge.net/</pre>
</div>
<h1>10. Ringraziamenti<a name="thanks"></a></h1>
<p>
È giunto il momento per ringraziare le persone senza le quali
questo programma non esisterebbe. Questa è la lista:
<ul>
<li>
Alex per le sue patch, per il suo aiuto e consigli per la
programmazione in <code>C</code>
</li>
<li>
Gwen per il testing e per i consigli in generale sulle migliorie
da apportare a <code>calcurse</code>
</li>
<li>
Herbert per aver impacchettato <code>calcurse</code> per FreeBSD
</li>
<li>
Zul per aver impacchettato <code>calcurse</code> per NetBSD
</li>
<li>
Wain, Steffen e Ronald per aver
impacchettato <code>calcurse</code> per Archlinux
</li>
<li>
Kevin, Ryan, e fEnIo per aver
impacchettato <code>calcurse</code> per Debian e Ubuntu
</li>
<li>
Pascal per aver impacchettato <code>calcurse</code> per
Slackware
</li>
<li>
Alexandre e Markus per aver impacchettato <code>calcurse</code>
per Mac OsX e Darwin
</li>
<li>
Igor per aver impacchettato <code>calcurse</code> per ALT Linux
</li>
<li>
Joel per il suo script calendar che ha inspirato la vista a
calendario per <code>calcurse</code>
</li>
<li>
Michael Schulz e Chris M. per la traduzione in tedesco
di <code>calcurse</code> e del manuale
</li>
<li>
Jose Lopez per la traduzione in spagnolo
di <code>calcurse</code> e del manuale
</li>
<li>
Neil Williams per la traduzione inglese
</li>
<li>
Tony per la sua patch che ha contribuito a migliorare la
funzione recur_item_inday()
<span class="todo">, and for implementing the date format configuration options</span>
</li>
<li>
Jeremy Roon per la traduzione olandese
</li>
<li>
Leandro Noferini per la traduzione italiana
</li>
<li><div class="todo">Erik Saule for its patch implementing the '-N', '-s', '-S', '-r' and '-D' flags</div></li>
<li>
le persone che hanno scritto software che mi piace e che
mi ha inspirato, e specialmente:
<ul>
<li>
<code>vim</code> per i tasti di movimento
</li>
<li>
<code>orpheus</code> e <code>abook</code> per la
documentazione
</li>
<li>
<code>pine</code> e <code>aptitude</code> per l'interfaccia
utente testuale
</li>
<li><span class="todo"><code>tmux</code> for coding style</span></li>
</ul>
</li>
</ul>
</p>
<p>
Ed infine ancora molti ringraziamenti a tutti gli utenti
di <code>calcurse</code> che mi hanno inviato i loro commenti.
</p>
<div class="footer">
Copyright © 2004-2010 Frédéric Culot<br>
Calcurse version 2.8 - Last change: March 29, 2010<br>
</div>
</div>
</body>
</html>
|