summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--README2
-rw-r--r--core/opiealarm/opiealarm.c2
-rw-r--r--etc/dict/words2
-rw-r--r--help/opie-sh/node3.html2
-rw-r--r--help/opie-sh/node9.html2
-rw-r--r--noncore/apps/odict/eng_ita.dic2
-rw-r--r--noncore/apps/opie-console/filereceive.cpp2
-rw-r--r--noncore/apps/opie-console/filetransfer.cpp2
-rw-r--r--noncore/net/opieftp/opieftp.cpp2
-rw-r--r--noncore/settings/backup/backuprestore.cpp4
-rw-r--r--noncore/settings/networksettings/interfaces/interface.cpp8
-rw-r--r--noncore/settings/networksettings/interfaces/interfaces.cpp44
-rw-r--r--noncore/settings/networksettings/interfaces/interfacesetupimp.cpp2
-rw-r--r--noncore/settings/networksettings/module.h2
-rw-r--r--noncore/settings/networksettings/ppp/pppmodule.cpp2
-rw-r--r--noncore/settings/networksettings/wlan/wextensions.cpp2
-rw-r--r--noncore/settings/networksettings/wlan/wlanmodule.cpp2
-rw-r--r--noncore/settings/tabmanager/tabmanager.cpp12
-rw-r--r--noncore/unsupported/mail2/TODO2
-rw-r--r--noncore/unsupported/mail2/folderwidget.cpp6
-rw-r--r--qmake/generators/mac/pbuilder_pbx.cpp2
-rw-r--r--x11/ipc/server/ocopserver.cpp2
22 files changed, 53 insertions, 55 deletions
diff --git a/README b/README
index 0075bde..cb7d5d4 100644
--- a/README
+++ b/README
@@ -1,86 +1,86 @@
1. How to use the Opie build system
====================================
There's a tutorial document at:
http://www.uv-ac.de/opiedev/opiedev.html
The API reference currently is at:
http://handhelds.org/~zecke/apidocs/index.html
You will need qvfb, uic and
(if you want to develop applications) designer
compiled and linked against qt-x11.
That means you must download and configure/make it.
wget ftp://ftp.trolltech.com/qt/source/qt-x11-2.3.2.tar.gz
(Alternatively, you can get static binaries from http://www.vanille.de/tools)
The recommended version of Qt embedded is qt-embedded-2.3.7
You can get it from:
ftp://ftp.trolltech.com/qt/source/qt-embedded-2.3.7.tar.bz2
Set QTDIR to point to your qt/embedded source tree, such as:
export QTDIR=/opt/qt-2.3.7
You need to do set the OPIEDIR environment variable:
export OPIEDIR=`pwd`
or
export OPIEDIR=~/projects/sources/opie
or whereever you placed the Opie sources.
You need to adjust your runtime library search path,
so that the Qt/Embedded and Opie libraries can be found:
export LD_LIBRARY_PATH=$OPIEDIR/lib:$QTDIR/lib:$LD_LIBRARY_PATH
You have to apply the qte<version>-all.patch to the Qt/Embedded
sources and copy the qconfig-qpe.h file to $QTDIR/src/tools:
cd $QTDIR; cat $OPIEDIR/qt/qte<version>*.patch | patch -p0
cp $OPIEDIR/qt/qpe-config.h $QTDIR/src/tools
You are now ready to configure and build Qt/Embedded
cd $QTDIR
echo 'yes' | ./configure -qconfig qpe -depths 4,16,24,32 -system-jpeg -system-libpng -system-zlib -no-xft -qvfb
make
Once you have these compiled, be sure to set the PATH to ensure your (cross)compiler
is available.
Then do the following in the opie source tree:
make clean
make menuconfig
Now you can move through the menu and select or deselect anything..
Exit and save the configuration and enter "make" to create opie...
Have fun with it !
If you get into trouble there are other makefile targets
make clean-configs
is a useful one.
2. Used Libraries
================
The following Libraries are used in Opie.
-For a successfull build you must install these librarys and headers.
+For a successful build you must install these librarys and headers.
The versions are known-good versions. If you successfully try newer ones,
commit a new README or send a mail to opie-devel@handhelds.org
* libsdl 1.2
http://www.libsdl.org/download-1.2.php
* libxine 1.0 beta 11
http://prdownloads.sourceforge.net/xine/
* libpcap 0.7.2
http://www.tcpdump.org/release/
* libetpan 0.31
http://prdownloads.sourceforge.net/libetpan/ + patch in noncore/net/mail/libetpanstuff
* libsqlite 2.8.6
http://www.sqlite.org/download.html
diff --git a/core/opiealarm/opiealarm.c b/core/opiealarm/opiealarm.c
index 90a743f..422865c 100644
--- a/core/opiealarm/opiealarm.c
+++ b/core/opiealarm/opiealarm.c
@@ -1,384 +1,384 @@
/*
* opiealarm.c
*
* This program is for extracting the event time/date out
* of /var/run/resumeat and setting the RTC alarm to that time/date.
* It is designed to run via a script just before the iPAQ
* is suspended and right after the iPAQ resumes operation.
*
* written and copyrighted by Robert Griebl <sandman@handhelds.org>
*/
#include <stdio.h>
#include <linux/rtc.h>
#include <sys/ioctl.h>
#include <sys/time.h>
#include <sys/types.h>
#include <fcntl.h>
#include <unistd.h>
#include <errno.h>
#include <time.h>
#include <stdlib.h>
#include <syslog.h>
#include <signal.h>
#include <errno.h>
#include <string.h>
#define PIDFILE "/var/run/opiealarm.pid"
#define TIMEFILE "/var/run/resumeat"
#define APMFILE "/proc/apm"
int resume ( int resuspend );
int suspend ( int fix_rtc );
int main ( int argc, char **argv );
int fork_with_pidfile ( void );
int kill_with_pidfile ( void );
void remove_pidfile ( void );
void usage ( void );
void sig_handler_child ( int sig );
void sig_handler_parent ( int sig );
int onac ( void );
static int opiealarm_was_running;
static pid_t parent_pid = 0;
void sig_handler_child ( int sig )
{
// child got SIGUSR2 -> cleanup pidfile and exit
remove_pidfile ( );
exit ( 0 );
}
void sig_handler_parent ( int sig )
{
// parent got SIGUSR1 -> safe to exit now
parent_pid = 0;
exit ( 0 );
}
void usage ( void )
{
fprintf ( stderr, "Usage: opiealarm -s [-f] | -r [-a]\n\n" );
fprintf ( stderr, "\t-s\tSuspend mode: set RTC alarm\n" );
fprintf ( stderr, "\t-f \tFix RTC, if RTC and system have more than 5sec difference (suspend mode)\n" );
fprintf ( stderr, "\t-r\tResume mode: kill running opiealarm\n" );
fprintf ( stderr, "\t-a <x>\tResuspend in <x> seconds (resume mode)\n\n" );
exit ( 1 );
}
int fork_with_pidfile ( void )
{
FILE *fp;
pid_t pid;
pid = fork ( );
if ( pid > 0 ) {
// We can not just exit now, because the kernel could suspend
// the iPAQ just before the child process sets the RTC.
// Solution: just wait for SIGUSR1 - the child process will
// signal this when it thinks it is safe to exit.
signal ( SIGUSR1, sig_handler_parent );
while ( 1 )
sleep ( 1000 );
exit ( 0 );
}
else if ( pid < 0 ) {
perror ( "forking failed" );
return 0;
}
// sleep( 60 );
// child process needs to react to SIGUSR2. This is sent when
// a new opiealarm process is started.
signal ( SIGUSR2, sig_handler_child );
// save pid
if (( fp = fopen ( PIDFILE, "w" ))) {
fprintf ( fp, "%d", getpid ( ));
fclose ( fp );
// detach
close ( 0 );
close ( 1 );
close ( 2 );
setpgid ( 0, 0 );
return 1;
}
else {
perror ( PIDFILE );
return 0;
}
}
int kill_with_pidfile ( void )
{
FILE *fp;
pid_t pid;
int res = 0;
// terminate a running opiealarm child process
// return 1 if we really killed one
if (( fp = fopen ( PIDFILE, "r" ))) {
if ( fscanf ( fp, "%d", &pid ) == 1 )
res = ( kill ( pid, SIGUSR2 ) == 0 ) ? 1 : 0;
fclose ( fp );
}
return res;
}
void remove_pidfile ( void )
{
// child is about to exit - cleanup
unlink ( PIDFILE );
signal ( SIGUSR2, SIG_DFL );
}
int main ( int argc, char **argv )
{
int mode = 0;
int ac_resusp = 0;
int fix_rtc = 0;
int opt;
while (( opt = getopt ( argc, argv, "a:frs" )) != EOF ) {
switch ( opt ) {
case 's':
mode = 's';
break;
case 'r':
mode = 'r';
break;
case 'a':
ac_resusp = atoi ( optarg );
if ( ac_resusp < 30 ) {
ac_resusp = 120;
fprintf ( stderr, "Warning: resuspend timeout must be >= 30 sec. -- now set to 120 sec\n" );
}
break;
case 'f':
fix_rtc = 1;
break;
default:
usage ( );
}
}
if ( geteuid ( ) != 0 ) {
fprintf ( stderr, "You need root priviledges to run opiealarm." );
return 2;
}
if ( !mode )
usage ( );
parent_pid = getpid ( );
// kill running opiealarm
opiealarm_was_running = kill_with_pidfile ( );
remove_pidfile ( );
switch ( mode ) {
case 'r': opt = resume ( ac_resusp );
break;
case 's':
default : opt = suspend ( fix_rtc );
break;
}
parent_pid = 0;
return opt;
}
int suspend ( int fix_rtc )
{
FILE *fp = NULL;
char buf [64];
time_t alrt, syst, rtct;
struct tm alr, sys, rtc;
int fd;
int rtc_sys_diff;
if ( !fork_with_pidfile ( ))
return 3;
// we are the child process from here on ...
tzset ( ); // not sure if it is really needed -- it probably doesn't hurt ...
time ( &syst );// get the UNIX system time
sys = *localtime ( &syst );
do {
if (( fd = open ( "/dev/misc/rtc", O_RDWR )) < 0 )
if (( fd = open ( "/dev/rtc", O_RDWR )) < 0 )
break; // ( 1, "rtc" );
memset ( &rtc, 0, sizeof ( struct tm )); // get the RTC time
if ( ioctl ( fd, RTC_RD_TIME, &rtc ) < 0 )
break; // ( 1, "ioctl RTC_RD_TIME" );
rtct = mktime ( &rtc );
rtc_sys_diff = ( syst - rtct ) - sys. tm_gmtoff; // calculate the difference between system and hardware time
if ( fix_rtc && (( rtc_sys_diff < -3 ) || ( rtc_sys_diff > 3 ))) {
struct tm set;
set = *gmtime ( &syst );
// if the difference between system and hardware time is more than 3 seconds,
// we have to set the RTC (hwclock --systohc), or alarms won't work reliably.
if ( ioctl ( fd, RTC_SET_TIME, &set ) < 0 )
break; // ( 1, "ioctl RTC_SET_TIME" );
}
// read the wakeup time from TIMEFILE
if (!( fp = fopen ( TIMEFILE, "r" )))
break; // ( 1, TIMEFILE );
if ( !fgets ( buf, sizeof( buf ) - 1, fp ))
break; // ( 1, TIMEFILE );
fclose ( fp );
fp = NULL;
alrt = atoi ( buf ); // get the alarm time
if ( alrt == 0 )
break; // ( 0, TIMEFILE " contains an invalid time description" );
alrt -= 5; // wake up 5 sec before the specified time
alr = *gmtime ( &alrt );
if ( ioctl ( fd, RTC_ALM_SET, &alr ) < 0 ) // set RTC alarm time
break; // ( 1, "ioctl RTC_ALM_SET" );
if ( ioctl ( fd, RTC_AIE_ON, 0 ) < 0 )
break; // ( 1, "ioctl RTC_AIE_ON" ); // enable RTC alarm irq
// tell the parent it is safe to exit now .. we have set the RTC alarm
kill ( parent_pid, SIGUSR1 );
if ( read ( fd, buf, sizeof( unsigned long )) < 0 ) // wait for the RTC alarm irq
break; // ( 1, "read rtc alarm" );
// iPAQ woke up via RTC irq -- otherwise we would have received a SIGUSR2
// from the "resume instance" of opiealarm.
if ( ioctl ( fd, RTC_AIE_OFF, 0 ) < 0 ) // disable RTC alarm irq
break; // ( 1, "ioctl RTC_AIE_OFF" );
close ( fd );
fd = -1;
remove_pidfile ( );
return 0;
} while ( 0 );
if ( fp != NULL )
fclose ( fp );
if ( fd != -1 )
close ( fd );
kill ( parent_pid, SIGUSR1 );
while ( 1 ) // pretend that we are waiting on RTC, so opiealarm -r can kill us
sleep ( 1000 ); // if we don't do this, the "resuspend on AC" would be triggerd
return 0;
}
int onac ( void )
{
FILE *fp;
int on = 0;
// check the apm proc interface for AC status
if (( fp = fopen ( APMFILE, "r" ))) {
int ac = 0;
if ( fscanf ( fp, "%*[^ ] %*d.%*d 0x%*x 0x%x 0x%*x 0x%*x %*d%% %*i %*c", &ac ) == 1 )
on = ( ac == 0x01 ) ? 1 : 0;
fclose ( fp );
}
return on;
}
int resume ( int resuspend )
{
FILE *fp;
// re-suspend when on AC (optional) when woken up via RTC
if ( !opiealarm_was_running ) {
// if opiealarm -s didn't wake up via RTC, the old process gets killed
// by kill_by_pidfile(), which is recorded in opiealarm_was_running
if ( resuspend && onac ( )) {
time_t start, now;
char *argv [4];
if ( !fork_with_pidfile ( ))
return 4;
// we can't wait for the resuspend timeout in the parent process.
// so we fork and tell the parent it can exit immediatly
kill ( parent_pid, SIGUSR1 );
// sleep <resuspend> seconds - this method is much more precise than sleep() !
time ( &start );
do {
sleep ( 1 );
time ( &now );
} while (( now - start ) < resuspend );
if ( onac ( )) { // still on ac ?
argv[0] = "qcop";
argv[1] = "QPE/Desktop";
argv[2] = "suspend()";
argv[3] = 0;
// hard coded for now ...but needed
// another way would be to simulate a power-button press
setenv ( "LOGNAME", "root", 1 );
setenv ( "HOME", "/root", 1 );
setenv ( "LD_LIBRARY_PATH", "/opt/QtPalmtop/lib", 1 );
setenv ( "QTDIR", "/opt/QtPalmtop", 1 );
remove_pidfile ( );
- // no need for system() since this process is no longer usefull anyway
+ // no need for system() since this process is no longer useful anyway
execv ( "/opt/QtPalmtop/bin/qcop", argv );
perror ( "exec for qcop failed" );
return 5;
}
}
}
return 0;
}
diff --git a/etc/dict/words b/etc/dict/words
index 1568032..0f14205 100644
--- a/etc/dict/words
+++ b/etc/dict/words
@@ -1,16832 +1,16832 @@
Aarhus
Aaron
Ababa
aback
abaft
abandon
abandoned
abandoning
abandonment
abandons
abase
abased
abasement
abasements
abases
abash
abashed
abashes
abashing
abasing
abate
abated
abatement
abatements
abater
abates
abating
Abba
abbe
abbey
abbeys
abbot
abbots
Abbott
abbreviate
abbreviated
abbreviates
abbreviating
abbreviation
abbreviations
Abby
abdomen
abdomens
abdominal
abduct
abducted
abduction
abductions
abductor
abductors
abducts
Abe
abed
Abel
Abelian
Abelson
Aberdeen
Abernathy
aberrant
aberration
aberrations
abet
abets
abetted
abetter
abetting
abeyance
abhor
abhorred
abhorrent
abhorrer
abhorring
abhors
abide
abided
abides
abiding
Abidjan
Abigail
Abilene
abilities
ability
abject
abjection
abjections
abjectly
abjectness
abjure
abjured
abjures
abjuring
ablate
ablated
ablates
ablating
ablation
ablative
ablaze
able
abler
ablest
ably
Abner
abnormal
abnormalities
abnormality
abnormally
Abo
aboard
abode
abodes
abolish
abolished
abolisher
abolishers
abolishes
abolishing
abolishment
abolishments
abolition
abolitionist
abolitionists
abominable
abominate
aboriginal
aborigine
aborigines
abort
aborted
aborting
abortion
abortions
abortive
abortively
aborts
Abos
abound
abounded
abounding
abounds
about
above
aboveboard
aboveground
abovementioned
abrade
abraded
abrades
abrading
Abraham
Abram
Abrams
Abramson
abrasion
abrasions
abrasive
abreaction
abreactions
abreast
abridge
abridged
abridges
abridging
abridgment
abroad
abrogate
abrogated
abrogates
abrogating
abrupt
abruptly
abruptness
abscess
abscessed
abscesses
abscissa
abscissas
abscond
absconded
absconding
absconds
absence
absences
absent
absented
absentee
absenteeism
absentees
absentia
absenting
absently
absentminded
absents
absinthe
absolute
absolutely
absoluteness
absolutes
absolution
absolve
absolved
absolves
absolving
absorb
absorbed
absorbency
absorbent
absorber
absorbing
absorbs
absorption
absorptions
absorptive
abstain
abstained
abstainer
abstaining
abstains
abstention
abstentions
abstinence
abstract
abstracted
abstracting
abstraction
abstractionism
abstractionist
abstractions
abstractly
abstractness
abstractor
abstractors
abstracts
abstruse
abstruseness
absurd
absurdities
absurdity
absurdly
Abu
abundance
abundant
abundantly
abuse
abused
abuses
abusing
abusive
abut
abutment
abuts
abutted
abutter
abutters
abutting
abysmal
abysmally
abyss
abysses
Abyssinia
Abyssinian
Abyssinians
acacia
academia
academic
academically
academics
academies
academy
Acadia
Acapulco
accede
acceded
accedes
accelerate
accelerated
accelerates
accelerating
acceleration
accelerations
accelerator
accelerators
accelerometer
accelerometers
accent
accented
accenting
accents
accentual
accentuate
accentuated
accentuates
accentuating
accentuation
accept
acceptability
acceptable
acceptably
acceptance
acceptances
accepted
accepter
accepters
accepting
acceptor
acceptors
accepts
access
accessed
accesses
accessibility
accessible
accessibly
accessing
accession
accessions
accessories
accessors
accessory
accident
accidental
accidentally
accidently
accidents
acclaim
acclaimed
acclaiming
acclaims
acclamation
acclimate
acclimated
acclimates
acclimating
acclimatization
acclimatized
accolade
accolades
accommodate
accommodated
accommodates
accommodating
accommodation
accommodations
accompanied
accompanies
accompaniment
accompaniments
accompanist
accompanists
accompany
accompanying
accomplice
accomplices
accomplish
accomplished
accomplisher
accomplishers
accomplishes
accomplishing
accomplishment
accomplishments
accord
accordance
accorded
accorder
accorders
according
accordingly
accordion
accordions
accords
accost
accosted
accosting
accosts
account
accountability
accountable
accountably
accountancy
accountant
accountants
accounted
accounting
accounts
Accra
accredit
accreditation
accreditations
accredited
accretion
accretions
accrue
accrued
accrues
accruing
acculturate
acculturated
acculturates
acculturating
acculturation
accumulate
accumulated
accumulates
accumulating
accumulation
accumulations
accumulator
accumulators
accuracies
accuracy
accurate
accurately
accurateness
accursed
accusal
accusation
accusations
accusative
accuse
accused
accuser
accuses
accusing
accusingly
accustom
accustomed
accustoming
accustoms
ace
aces
acetate
acetone
acetylene
Achaean
Achaeans
ache
ached
aches
achievable
achieve
achieved
achievement
achievements
achiever
achievers
achieves
achieving
Achilles
aching
acid
acidic
acidities
acidity
acidly
acids
acidulous
Ackerman
Ackley
acknowledge
acknowledgeable
acknowledged
acknowledgement
acknowledgements
acknowledger
acknowledgers
acknowledges
acknowledging
acknowledgment
acknowledgments
acme
acne
acolyte
acolytes
acorn
acorns
acoustic
acoustical
acoustically
acoustician
acoustics
acquaint
acquaintance
acquaintances
acquainted
acquainting
acquaints
acquiesce
acquiesced
acquiescence
acquiescent
acquiesces
acquiescing
acquirable
acquire
acquired
acquires
acquiring
acquisition
acquisitions
acquisitive
acquisitiveness
acquit
acquits
acquittal
acquitted
acquitter
acquitting
acre
acreage
acres
acrid
acrimonious
acrimony
acrobat
acrobatic
acrobatics
acrobats
acronym
acronyms
acropolis
across
acrylic
act
Acta
Actaeon
acted
acting
actinium
actinometer
actinometers
action
actions
activate
activated
activates
activating
activation
activations
activator
activators
active
actively
activism
activist
activists
activities
activity
Acton
actor
actors
actress
actresses
Acts
actual
actualities
actuality
actualization
actually
actuals
actuarial
actuarially
actuate
actuated
actuates
actuating
actuator
actuators
acuity
acumen
acute
acutely
acuteness
acyclic
acyclically
ad
Ada
adage
adages
adagio
adagios
Adair
Adam
adamant
adamantly
Adams
Adamson
adapt
adaptability
adaptable
adaptation
adaptations
adapted
adapter
adapters
adapting
adaptive
adaptively
adaptor
adaptors
adapts
add
added
addend
addenda
addendum
adder
adders
addict
addicted
addicting
addiction
addictions
addicts
adding
Addis
Addison
addition
additional
additionally
additions
additive
additives
additivity
address
addressability
addressable
addressed
addressee
addressees
addresser
addressers
addresses
addressing
Addressograph
adds
adduce
adduced
adduces
adducible
adducing
adduct
adducted
adducting
adduction
adductor
adducts
Adelaide
Adele
Adelia
Aden
adept
adequacies
adequacy
adequate
adequately
adhere
adhered
adherence
adherent
adherents
adherer
adherers
adheres
adhering
adhesion
adhesions
adhesive
adhesives
adiabatic
adiabatically
adieu
Adirondack
Adirondacks
adjacency
adjacent
adjective
adjectives
adjoin
adjoined
adjoining
adjoins
adjourn
adjourned
adjourning
adjournment
adjourns
adjudge
adjudged
adjudges
adjudging
adjudicate
adjudicated
adjudicates
adjudicating
adjudication
adjudications
adjunct
adjuncts
adjure
adjured
adjures
adjuring
adjust
adjustable
adjustably
adjusted
adjuster
adjusters
adjusting
adjustment
adjustments
adjustor
adjustors
adjusts
adjutant
adjutants
Adkins
Adler
Adlerian
administer
administered
administering
administerings
administers
administrable
administrate
administration
administrations
administrative
administratively
administrator
administrators
admirable
admirably
admiral
admirals
admiralty
admiration
admirations
admire
admired
admirer
admirers
admires
admiring
admiringly
admissibility
admissible
admission
admissions
admit
admits
admittance
admitted
admittedly
admitter
admitters
admitting
admix
admixed
admixes
admixture
admonish
admonished
admonishes
admonishing
admonishment
admonishments
admonition
admonitions
ado
adobe
adolescence
adolescent
adolescents
Adolph
Adolphus
Adonis
adopt
adopted
adopter
adopters
adopting
adoption
adoptions
adoptive
adopts
adorable
adoration
adore
adored
adores
adorn
adorned
adornment
adornments
adorns
adrenal
adrenaline
Adrian
Adriatic
Adrienne
adrift
adroit
adroitness
ads
adsorb
adsorbed
adsorbing
adsorbs
adsorption
adulate
adulating
adulation
adult
adulterate
adulterated
adulterates
adulterating
adulterer
adulterers
adulterous
adulterously
adultery
adulthood
adults
adumbrate
adumbrated
adumbrates
adumbrating
adumbration
advance
advanced
advancement
advancements
advances
advancing
advantage
advantaged
advantageous
advantageously
advantages
advent
adventist
adventists
adventitious
adventure
adventured
adventurer
adventurers
adventures
adventuring
adventurous
adverb
adverbial
adverbs
adversaries
adversary
adverse
adversely
adversities
adversity
advert
advertise
advertised
advertisement
advertisements
advertiser
advertisers
advertises
advertising
advice
advisability
advisable
advisably
advise
advised
advisedly
advisee
advisees
advisement
advisements
adviser
advisers
advises
advising
advisor
advisors
advisory
advocacy
advocate
advocated
advocates
advocating
Aegean
aegis
Aeneas
Aeneid
Aeolus
aerate
aerated
aerates
aerating
aeration
aerator
aerators
aerial
aerials
aeroacoustic
Aerobacter
aerobic
aerobics
aerodynamic
aerodynamics
aeronautic
aeronautical
aeronautics
aerosol
aerosolize
aerosols
aerospace
Aeschylus
Aesop
aesthetic
aesthetically
aesthetics
afar
affable
affair
affairs
affect
affectation
affectations
affected
affecting
affectingly
affection
affectionate
affectionately
affections
affective
affects
afferent
affianced
affidavit
affidavits
affiliate
affiliated
affiliates
affiliating
affiliation
affiliations
affinities
affinity
affirm
affirmation
affirmations
affirmative
affirmatively
affirmed
affirming
affirms
affix
affixed
affixes
affixing
afflict
afflicted
afflicting
affliction
afflictions
afflictive
afflicts
affluence
affluent
afford
affordable
afforded
affording
affords
affricate
affricates
affright
affront
affronted
affronting
affronts
Afghan
Afghanistan
Afghans
aficionado
afield
afire
aflame
afloat
afoot
afore
aforementioned
aforesaid
aforethought
afoul
afraid
afresh
Africa
African
Africanization
Africanizations
Africanize
Africanized
Africanizes
Africanizing
Africans
Afrikaans
Afrikaner
Afrikaners
aft
after
aftereffect
afterglow
afterimage
afterlife
aftermath
aftermost
afternoon
afternoons
aftershock
aftershocks
afterthought
afterthoughts
afterward
afterwards
again
against
Agamemnon
agape
agar
agate
agates
Agatha
age
aged
Agee
ageless
agencies
agency
agenda
agendas
agent
agents
ager
agers
ages
Aggie
Aggies
agglomerate
agglomerated
agglomerates
agglomeration
agglutinate
agglutinated
agglutinates
agglutinating
agglutination
agglutinin
agglutinins
aggrandize
aggravate
aggravated
aggravates
aggravation
aggregate
aggregated
aggregately
aggregates
aggregating
aggregation
aggregations
aggression
aggressions
aggressive
aggressively
aggressiveness
aggressor
aggressors
aggrieve
aggrieved
aggrieves
aggrieving
aghast
agile
agilely
agility
aging
agitate
agitated
agitates
agitating
agitation
agitations
agitator
agitators
agleam
aglow
Agnes
Agnew
agnostic
agnostics
ago
agog
agonies
agonize
agonized
agonizes
agonizing
agonizingly
agony
agrarian
agree
agreeable
agreeably
agreed
agreeing
agreement
agreements
agreer
agreers
agrees
Agricola
agricultural
agriculturally
agriculture
ague
Agway
ah
ahead
Ahmadabad
Ahmedabad
aid
Aida
aide
aided
Aides
aiding
aids
Aiken
ail
Aileen
aileron
ailerons
ailing
ailment
ailments
aim
aimed
aimer
aimers
aiming
aimless
aimlessly
aims
Ainu
Ainus
air
airbag
airbags
airborne
Airbus
aircraft
airdrop
airdrops
aired
Airedale
airer
airers
Aires
airfare
airfield
airfields
airflow
airfoil
airfoils
airframe
airframes
airily
airing
airings
airless
airlift
airlifts
airline
airliner
airlines
airlock
airlocks
airmail
airmails
airman
airmen
airplane
airplanes
airport
airports
airs
airship
airships
airspace
airspeed
airstrip
airstrips
airtight
airway
airways
airy
aisle
Aitken
ajar
Ajax
Akers
akimbo
akin
Akron
Al
Alabama
Alabamans
Alabamian
alabaster
alacrity
Aladdin
Alameda
Alamo
Alamos
Alan
Alar
alarm
alarmed
alarming
alarmingly
alarmist
alarms
alas
Alaska
Alaskan
Alastair
alba
albacore
Albania
Albanian
Albanians
Albany
albatross
albeit
Alberich
Albert
Alberta
Alberto
Albrecht
Albright
album
albumin
albums
Albuquerque
Alcestis
alchemy
Alcibiades
Alcmena
Alcoa
alcohol
alcoholic
alcoholics
alcoholism
alcohols
Alcott
alcove
alcoves
Aldebaran
Alden
alder
alderman
aldermen
Aldrich
ale
Alec
Aleck
alee
alert
alerted
alertedly
alerter
alerters
alerting
alertly
alertness
alerts
Aleut
Aleutian
Alex
Alexander
Alexandra
Alexandre
Alexandria
Alexandrine
Alexei
Alexis
Alfa
alfalfa
Alfonso
Alfred
Alfredo
alfresco
alga
algae
algaecide
algebra
algebraic
algebraically
algebras
Algenib
Alger
Algeria
Algerian
Algiers
alginate
ALGOL
Algol
Algonquian
Algonquin
algorithm
algorithmic
algorithmically
algorithms
Alhambra
Ali
alias
aliased
aliases
aliasing
alibi
alibis
Alice
Alicia
alien
alienate
alienated
alienates
alienating
alienation
aliens
alight
align
aligned
aligning
alignment
alignments
aligns
alike
aliment
aliments
alimony
Alison
Alistair
alive
alkali
alkaline
alkalis
alkaloid
alkaloids
alkyl
all
Allah
Allan
allay
allayed
allaying
allays
allegation
allegations
allege
alleged
allegedly
alleges
Alleghenies
Allegheny
allegiance
allegiances
alleging
allegoric
allegorical
allegorically
allegories
allegory
Allegra
allegretto
allegrettos
allele
alleles
allemande
Allen
Allendale
Allentown
allergic
allergies
allergy
alleviate
alleviated
alleviates
alleviating
alleviation
alley
alleys
alleyway
alleyways
alliance
alliances
allied
allies
alligator
alligators
Allis
Allison
alliteration
alliterations
alliterative
allocatable
allocate
allocated
allocates
allocating
allocation
allocations
allocator
allocators
allophone
allophones
allophonic
allot
allotment
allotments
allots
allotted
allotter
allotting
allow
allowable
allowably
allowance
allowances
allowed
allowing
allows
alloy
alloys
Allstate
allude
alluded
alludes
alluding
allure
allurement
alluring
allusion
allusions
allusive
allusiveness
ally
allying
Allyn
alma
Almaden
almanac
almanacs
almighty
almond
almonds
almoner
almost
alms
almsman
alnico
aloe
aloes
aloft
aloha
alone
aloneness
along
alongside
aloof
aloofness
aloud
Alpert
alpha
alphabet
alphabetic
alphabetical
alphabetically
alphabetics
alphabetize
alphabetized
alphabetizes
alphabetizing
alphabets
alphanumeric
Alpheratz
Alphonse
alpine
Alps
already
Alsatian
Alsatians
also
Alsop
Altair
altar
altars
alter
alterable
alteration
alterations
altercation
altercations
altered
alterer
alterers
altering
alternate
alternated
alternately
alternates
alternating
alternation
alternations
alternative
alternatively
alternatives
alternator
alternators
alters
Althaea
although
altitude
altitudes
altogether
Alton
Altos
altruism
altruist
altruistic
altruistically
alum
aluminum
alumna
alumnae
alumni
alumnus
alundum
Alva
Alvarez
alveolar
alveoli
alveolus
Alvin
always
Alyssa
am
Amadeus
amain
amalgam
amalgamate
amalgamated
amalgamates
amalgamating
amalgamation
amalgams
Amanda
amanuensis
amaretto
Amarillo
amass
amassed
amasses
amassing
amateur
amateurish
amateurishness
amateurism
amateurs
amatory
amaze
amazed
amazedly
amazement
amazer
amazers
amazes
amazing
amazingly
Amazon
Amazons
ambassador
ambassadors
amber
ambiance
ambidextrous
ambidextrously
ambient
ambiguities
ambiguity
ambiguous
ambiguously
ambition
ambitions
ambitious
ambitiously
ambivalence
ambivalent
ambivalently
amble
ambled
ambler
ambles
ambling
ambrosial
ambulance
ambulances
ambulatory
ambuscade
ambush
ambushed
ambushes
Amdahl
Amelia
ameliorate
ameliorated
ameliorating
amelioration
amen
amenable
amend
amended
amending
amendment
amendments
amends
amenities
amenity
amenorrhea
Amerada
America
American
Americana
Americanism
Americanization
Americanizations
Americanize
Americanizer
Americanizers
Americanizes
Americans
Americas
americium
Ames
Amharic
Amherst
amiable
amicable
amicably
amid
amide
amidst
Amiga
amigo
amino
amiss
amity
Amman
Ammerman
ammo
ammonia
ammoniac
ammonium
ammunition
amnesty
Amoco
amoeba
amoebae
amoebas
amok
among
amongst
Amontillado
amoral
amorality
amorist
amorous
amorphous
amorphously
amortize
amortized
amortizes
amortizing
Amos
amount
amounted
amounter
amounters
amounting
amounts
amour
amperage
ampere
amperes
ampersand
ampersands
Ampex
amphetamine
amphetamines
amphibian
amphibians
amphibious
amphibiously
amphibology
amphitheater
amphitheaters
ample
amplification
amplified
amplifier
amplifiers
amplifies
amplify
amplifying
amplitude
amplitudes
amply
ampoule
ampoules
amputate
amputated
amputates
amputating
Amsterdam
Amtrak
amulet
amulets
amuse
amused
amusedly
amusement
amusements
amuser
amusers
amuses
amusing
amusingly
Amy
amyl
an
Anabaptist
Anabaptists
Anabel
anachronism
anachronisms
anachronistically
anaconda
anacondas
Anacreon
anaerobic
anagram
anagrams
Anaheim
anal
Analects
analog
analogical
analogies
analogous
analogously
analogue
analogues
analogy
analyses
analysis
analyst
analysts
analytic
analytical
analytically
analyticities
analyticity
analyzable
analyze
analyzed
analyzer
analyzers
analyzes
analyzing
anaphora
anaphoric
anaphorically
anaplasmosis
anarchic
anarchical
anarchism
anarchist
anarchists
anarchy
Anastasia
anastomoses
anastomosis
anastomotic
anathema
Anatole
Anatolia
Anatolian
anatomic
anatomical
anatomically
anatomy
ancestor
ancestors
ancestral
ancestry
anchor
anchorage
anchorages
anchored
anchoring
anchorite
anchoritism
anchors
anchovies
anchovy
ancient
anciently
ancients
ancillary
and
Andalusia
Andalusian
Andalusians
Andean
anders
Andersen
Anderson
Andes
anding
Andorra
Andover
Andre
Andrea
Andrei
Andrew
Andrews
Andromache
Andromeda
Andy
anecdotal
anecdote
anecdotes
anechoic
anemia
anemic
anemometer
anemometers
anemometry
anemone
anesthesia
anesthetic
anesthetically
anesthetics
anesthetize
anesthetized
anesthetizes
anesthetizing
anew
angel
Angela
Angeleno
Angelenos
Angeles
angelic
Angelica
Angelina
Angeline
Angelo
angels
anger
angered
angering
angers
Angie
angiography
angle
angled
angler
anglers
Angles
Anglia
Anglican
Anglicanism
Anglicanize
Anglicanizes
Anglicans
angling
Anglo
Anglophilia
Anglophobia
Angola
Angora
angrier
angriest
angrily
angry
angst
angstrom
anguish
anguished
angular
angularly
Angus
Anheuser
anhydrous
anhydrously
aniline
animal
animals
animate
animated
animatedly
animately
animateness
animates
animating
animation
animations
animator
animators
animism
animized
animosity
anion
anionic
anions
anise
aniseikonic
anisotropic
anisotropy
Anita
Ankara
ankle
ankles
Ann
Anna
annal
Annalist
Annalistic
annals
Annapolis
Anne
Annette
annex
annexation
annexed
annexes
annexing
Annie
annihilate
annihilated
annihilates
annihilating
annihilation
anniversaries
anniversary
annotate
annotated
annotates
annotating
annotation
annotations
announce
announced
announcement
announcements
announcer
announcers
announces
announcing
annoy
annoyance
annoyances
annoyed
annoyer
annoyers
annoying
annoyingly
annoys
annual
annually
annuals
annuity
annul
annular
annuli
annulled
annulling
annulment
annulments
annuls
annulus
annum
annunciate
annunciated
annunciates
annunciating
annunciator
annunciators
anode
anodes
anodize
anodized
anodizes
anoint
anointed
anointing
anoints
anomalies
anomalous
anomalously
anomaly
anomic
anomie
anon
anonymity
anonymous
anonymously
anorexia
another
Anselm
Anselmo
ANSI
answer
answerable
answered
answerer
answerers
answering
answers
ant
Antaeus
antagonism
antagonisms
antagonist
antagonistic
antagonistically
antagonists
antagonize
antagonized
antagonizes
antagonizing
antarctic
Antarctica
Antares
ante
anteater
anteaters
antecedent
antecedents
antedate
antelope
antelopes
antenna
antennae
antennas
anterior
anthem
anthems
anther
anthologies
anthology
Anthony
anthracite
anthropological
anthropologically
anthropologist
anthropologists
anthropology
anthropomorphic
anthropomorphically
anti
antibacterial
antibiotic
antibiotics
antibodies
antibody
antic
anticipate
anticipated
anticipates
anticipating
anticipation
anticipations
anticipatory
anticoagulation
anticompetitive
antics
antidisestablishmentarianism
antidote
antidotes
Antietam
antiformant
antifundamentalist
antigen
antigens
Antigone
antihistorical
Antilles
antimicrobial
antimony
antinomian
antinomy
Antioch
antipathy
antiphonal
antipode
antipodes
antiquarian
antiquarians
antiquate
antiquated
antique
antiques
antiquities
antiquity
antiredeposition
antiresonance
antiresonator
antisemitic
antisemitism
antiseptic
antisera
antiserum
antislavery
antisocial
antisubmarine
antisymmetric
antisymmetry
antithesis
antithetical
antithyroid
antitoxin
antitoxins
antitrust
antler
antlered
Antoine
Antoinette
Anton
Antonio
Antonovics
Antony
ants
Antwerp
anus
anvil
anvils
anxieties
anxiety
anxious
anxiously
any
anybody
anyhow
anymore
anyone
anyplace
anything
anytime
anyway
anywhere
aorta
apace
Apaches
Apalachicola
apart
apartment
apartments
apathetic
apathy
ape
aped
aperiodic
aperiodicity
aperture
apes
Apetalous
apex
aphasia
aphasic
aphelion
aphid
aphids
aphonic
aphorism
aphorisms
Aphrodite
apiaries
apiary
apical
apiece
aping
apish
aplenty
aplomb
apocalypse
apocalyptic
Apocrypha
apocryphal
apogee
apogees
Apollinaire
Apollo
Apollonian
apologetic
apologetically
apologia
apologies
apologist
apologists
apologize
apologized
apologizes
apologizing
apology
apostate
apostle
apostles
apostolic
apostrophe
apostrophes
apothecary
apothegm
apotheoses
apotheosis
Appalachia
Appalachian
Appalachians
appall
appalled
appalling
appallingly
Appaloosas
appanage
apparatus
apparel
appareled
apparent
apparently
apparition
apparitions
appeal
appealed
appealer
appealers
appealing
appealingly
appeals
appear
appearance
appearances
appeared
appearer
appearers
appearing
appears
appease
appeased
appeasement
appeases
appeasing
appellant
appellants
appellate
appellation
append
appendage
appendages
appended
appender
appenders
appendices
appendicitis
appending
appendix
appendixes
appends
appertain
appertains
appetite
appetites
appetizer
appetizing
Appia
Appian
applaud
applauded
applauding
applauds
applause
apple
Appleby
applejack
apples
Appleton
appliance
appliances
applicability
applicable
applicant
applicants
application
applications
applicative
applicatively
applicator
applicators
applied
applier
appliers
applies
applique
apply
applying
appoint
appointed
appointee
appointees
appointer
appointers
appointing
appointive
appointment
appointments
appoints
Appomattox
apportion
apportioned
apportioning
apportionment
apportionments
apportions
apposite
appraisal
appraisals
appraise
appraised
appraiser
appraisers
appraises
appraising
appraisingly
appreciable
appreciably
appreciate
appreciated
appreciates
appreciating
appreciation
appreciations
appreciative
appreciatively
apprehend
apprehended
apprehensible
apprehension
apprehensions
apprehensive
apprehensively
apprehensiveness
apprentice
apprenticed
apprentices
apprenticeship
apprise
apprised
apprises
apprising
approach
approachability
approachable
approached
approacher
approachers
approaches
approaching
approbate
approbation
appropriate
appropriated
appropriately
appropriateness
appropriates
appropriating
appropriation
appropriations
appropriator
appropriators
approval
approvals
approve
approved
approver
approvers
approves
approving
approvingly
approximate
approximated
approximately
approximates
approximating
approximation
approximations
appurtenance
appurtenances
apricot
apricots
April
Aprils
apron
aprons
apropos
apse
apsis
apt
aptitude
aptitudes
aptly
aptness
aqua
aquaria
aquarium
Aquarius
aquatic
aqueduct
aqueducts
aqueous
aquifer
aquifers
Aquila
Aquinas
Arab
arabesque
Arabia
Arabian
Arabianize
Arabianizes
Arabians
Arabic
Arabicize
Arabicizes
arable
Arabs
Araby
Arachne
arachnid
arachnids
Aramco
Arapaho
arbiter
arbiters
arbitrarily
arbitrariness
arbitrary
arbitrate
arbitrated
arbitrates
arbitrating
arbitration
arbitrator
arbitrators
arbor
arboreal
arbors
arc
arcade
arcaded
arcades
Arcadia
Arcadian
arcane
arced
arch
archaic
archaically
archaicness
archaism
archaize
archangel
archangels
archbishop
archdiocese
archdioceses
arched
archenemy
archeological
archeologist
archeology
Archer
archers
archery
arches
archetype
archfool
Archibald
Archie
Archimedes
arching
archipelago
archipelagoes
architect
architectonic
architects
architectural
architecturally
architecture
architectures
archival
archive
archived
archiver
archivers
archives
archiving
archivist
archly
arcing
arclike
ARCO
arcs
arcsine
arctangent
arctic
Arcturus
Arden
ardent
ardently
ardor
arduous
arduously
arduousness
are
area
areas
arena
arenas
Arequipa
Ares
Argentina
Argentinian
Argive
Argo
argon
Argonaut
argonauts
Argonne
Argos
argot
arguable
arguably
argue
argued
arguer
arguers
argues
arguing
argument
argumentation
argumentative
arguments
Argus
Ariadne
Arianism
Arianist
Arianists
arid
aridity
Aries
aright
arise
arisen
ariser
arises
arising
arisings
aristocracy
aristocrat
aristocratic
aristocratically
aristocrats
Aristotelian
Aristotle
arithmetic
arithmetical
arithmetically
arithmetics
arithmetize
arithmetized
arithmetizes
Arizona
ark
Arkansan
Arkansas
Arlen
Arlene
Arlington
arm
Armada
armadillo
armadillos
Armageddon
Armagnac
armament
armaments
Armata
armchair
armchairs
Armco
armed
Armenia
Armenian
armer
armers
armful
armhole
armies
arming
armistice
armload
Armonk
armor
armored
armorer
armory
Armour
armpit
armpits
arms
Armstrong
army
Arnold
aroma
aromas
aromatic
arose
around
arousal
arouse
aroused
arouses
arousing
ARPA
ARPANET
Arpanet
arpeggio
arpeggios
arrack
Arragon
arraign
arraigned
arraigning
arraignment
arraignments
arraigns
arrange
arranged
arrangement
arrangements
arranger
arrangers
arranges
arranging
arrant
array
arrayed
arrays
arrears
arrest
arrested
arrester
arresters
arresting
arrestingly
arrestor
arrestors
arrests
Arrhenius
arrival
arrivals
arrive
arrived
arrives
arriving
arrogance
arrogant
arrogantly
arrogate
arrogated
arrogates
arrogating
arrogation
arrow
arrowed
arrowhead
arrowheads
arrows
arroyo
arroyos
arsenal
arsenals
arsenic
arsine
arson
art
Artemia
Artemis
arterial
arteries
arteriolar
arteriole
arterioles
arteriosclerosis
artery
artful
artfully
artfulness
arthritis
arthropod
arthropods
Arthur
artichoke
artichokes
article
articles
articulate
articulated
articulately
articulateness
articulates
articulating
articulation
articulations
articulator
articulators
articulatory
Artie
artifact
artifacts
artifice
artificer
artifices
artificial
artificialities
artificiality
artificially
artificialness
artillerist
artillery
artisan
artisans
artist
artistic
artistically
artistry
artists
artless
arts
Arturo
artwork
Aruba
Aryan
Aryans
as
asbestos
ascend
ascendancy
ascendant
ascended
ascendency
ascendent
ascender
ascenders
ascending
ascends
ascension
ascensions
ascent
ascertain
ascertainable
ascertained
ascertaining
ascertains
ascetic
asceticism
ascetics
ASCII
ascot
ascribable
ascribe
ascribed
ascribes
ascribing
ascription
aseptic
ash
ashamed
ashamedly
ashen
Asher
ashes
Asheville
Ashland
Ashley
ashman
Ashmolean
ashore
ashtray
ashtrays
Asia
Asian
Asians
Asiatic
Asiaticization
Asiaticizations
Asiaticize
Asiaticizes
Asiatics
aside
Asilomar
asinine
ask
askance
asked
asker
askers
askew
asking
asks
asleep
asocial
asp
asparagus
aspect
aspects
aspen
aspersion
aspersions
asphalt
asphyxia
aspic
aspirant
aspirants
aspirate
aspirated
aspirates
aspirating
aspiration
aspirations
aspirator
aspirators
aspire
aspired
aspires
aspirin
aspiring
aspirins
ass
assail
assailant
assailants
assailed
assailing
assails
Assam
assassin
assassinate
assassinated
assassinates
assassinating
assassination
assassinations
assassins
assault
assaulted
assaulting
assaults
assay
assayed
assaying
assemblage
assemblages
assemble
assembled
assembler
assemblers
assembles
assemblies
assembling
assembly
assent
assented
assenter
assenting
assents
assert
asserted
asserter
asserters
asserting
assertion
assertions
assertive
assertively
assertiveness
asserts
asses
assess
assessed
assesses
assessing
assessment
assessments
assessor
assessors
asset
assets
assiduity
assiduous
assiduously
assign
assignable
assigned
assignee
assignees
assigner
assigners
assigning
assignment
assignments
assigns
assimilate
assimilated
assimilates
assimilating
assimilation
assimilations
assist
assistance
assistances
assistant
assistants
assistantship
assistantships
assisted
assisting
assists
associate
associated
associates
associating
association
associational
associations
associative
associatively
associativity
associator
associators
assonance
assonant
assort
assorted
assortment
assortments
assorts
assuage
assuaged
assuages
assume
assumed
assumes
assuming
assumption
assumptions
assurance
assurances
assure
assured
assuredly
assurer
assurers
assures
assuring
assuringly
Assyria
Assyrian
Assyrianize
Assyrianizes
Assyriology
Astaire
Astaires
Astarte
astatine
aster
asterisk
asterisks
asteroid
asteroidal
asteroids
asters
asthma
Aston
astonish
astonished
astonishes
astonishing
astonishingly
astonishment
Astor
Astoria
astound
astounded
astounding
astounds
astral
astray
astride
astringency
astringent
astrology
astronaut
astronautics
astronauts
astronomer
astronomers
astronomical
astronomically
astronomy
astrophysical
astrophysics
astute
astutely
astuteness
Asuncion
asunder
asylum
asymmetric
asymmetrically
asymmetry
asymptomatically
asymptote
asymptotes
asymptotic
asymptotically
asynchronism
asynchronous
asynchronously
asynchrony
at
Atalanta
Atari
atavistic
Atchison
ate
atemporal
Athabascan
atheism
atheist
atheistic
atheists
Athena
Athenian
Athenians
Athens
atherosclerosis
athlete
athletes
athletic
athleticism
athletics
Atkins
Atkinson
Atlanta
Atlantic
Atlantica
Atlantis
atlas
atmosphere
atmospheres
atmospheric
atoll
atolls
atom
atomic
atomically
atomics
atomization
atomize
atomized
atomizes
atomizing
atoms
atonal
atonally
atone
atoned
atonement
atones
atop
Atreus
atrocious
atrociously
atrocities
atrocity
atrophic
atrophied
atrophies
atrophy
atrophying
Atropos
attach
attache
attached
attacher
attachers
attaches
attaching
attachment
attachments
attack
attackable
attacked
attacker
attackers
attacking
attacks
attain
attainable
attainably
attained
attainer
attainers
attaining
attainment
attainments
attains
attempt
attempted
attempter
attempters
attempting
attempts
attend
attendance
attendances
attendant
attendants
attended
attendee
attendees
attender
attenders
attending
attends
attention
attentional
attentionality
attentions
attentive
attentively
attentiveness
attenuate
attenuated
attenuates
attenuating
attenuation
attenuator
attenuators
attest
attested
attesting
attests
attic
Attica
attics
attire
attired
attires
attiring
attitude
attitudes
attitudinal
Attlee
attorney
attorneys
attract
attracted
attracting
attraction
attractions
attractive
attractively
attractiveness
attractor
attractors
attracts
attributable
attribute
attributed
attributes
attributing
attribution
attributions
attributive
attributively
attrition
attune
attuned
attunes
attuning
Atwater
Atwood
atypical
atypically
Auberge
Aubrey
auburn
Auckland
auction
auctioneer
auctioneers
audacious
audaciously
audaciousness
audacity
audible
audibly
audience
audiences
audio
audiogram
audiograms
audiological
audiologist
audiologists
audiology
audiometer
audiometers
audiometric
audiometry
audit
audited
auditing
audition
auditioned
auditioning
auditions
auditor
auditorium
auditors
auditory
audits
Audrey
Audubon
Auerbach
Augean
auger
augers
aught
augment
augmentation
augmented
augmenting
augments
augur
augurs
august
Augusta
Augustan
Augustine
augustly
augustness
Augustus
aunt
aunts
aura
aural
aurally
auras
Aurelius
aureole
aureomycin
Auriga
aurora
Auschwitz
auscultate
auscultated
auscultates
auscultating
auscultation
auscultations
auspice
auspices
auspicious
auspiciously
austere
austerely
austerity
Austin
Australia
Australian
Australianize
Australianizes
Australis
Austria
Austrian
Austrianize
Austrianizes
authentic
authentically
authenticate
authenticated
authenticates
authenticating
authentication
authentications
authenticator
authenticators
authenticity
author
authored
authoring
authoritarian
authoritarianism
authoritative
authoritatively
authorities
authority
authorization
authorizations
authorize
authorized
authorizer
authorizers
authorizes
authorizing
authors
authorship
autism
autistic
auto
autobiographic
autobiographical
autobiographies
autobiography
autocollimator
autocorrelate
autocorrelation
autocracies
autocracy
autocrat
autocratic
autocratically
autocrats
autodecrement
autodecremented
autodecrements
autodialer
autofluorescence
autograph
autographed
autographing
autographs
autoincrement
autoincremented
autoincrements
autoindex
autoindexing
automata
automate
automated
automates
automatic
automatically
automating
automation
automaton
automobile
automobiles
automotive
autonavigator
autonavigators
autonomic
autonomous
autonomously
autonomy
autopilot
autopilots
autopsied
autopsies
autopsy
autoregressive
autos
autosuggestibility
autotransformer
autumn
autumnal
autumns
auxiliaries
auxiliary
avail
availabilities
availability
available
availably
availed
availer
availers
availing
avails
avalanche
avalanched
avalanches
avalanching
avant
avarice
avaricious
avariciously
avenge
avenged
avenger
avenges
avenging
Aventine
Aventino
avenue
avenues
aver
average
averaged
averages
averaging
Avernus
averred
averrer
averring
avers
averse
aversion
aversions
avert
averted
averting
averts
Avery
Avesta
avian
aviaries
aviary
aviation
aviator
aviators
avid
avidity
avidly
Avignon
avionic
avionics
Avis
Aviv
avocado
avocados
avocation
avocations
Avogadro
avoid
avoidable
avoidably
avoidance
avoided
avoider
avoiders
avoiding
avoids
Avon
avouch
avow
avowal
avowed
avows
await
awaited
awaiting
awaits
awake
awaken
awakened
awakening
awakens
awakes
awaking
award
awarded
awarder
awarders
awarding
awards
aware
awareness
awash
away
awe
awed
awesome
awful
awfully
awfulness
awhile
awkward
awkwardly
awkwardness
awl
awls
awning
awnings
awoke
awry
ax
axed
Axel
axer
axers
axes
axial
axially
axing
axiological
axiom
axiomatic
axiomatically
axiomatization
axiomatizations
axiomatize
axiomatized
axiomatizes
axiomatizing
axioms
axis
axle
axles
axolotl
axolotls
axon
axons
aye
Ayers
ayes
Aylesbury
azalea
azaleas
Azerbaijan
azimuth
azimuths
Azores
Aztec
Aztecan
azure
Babbage
babble
babbled
babbles
babbling
Babcock
babe
Babel
Babelize
Babelizes
babes
babied
babies
Babka
baboon
baboons
Babul
baby
babyhood
babying
babyish
Babylon
Babylonian
Babylonians
Babylonize
Babylonizes
babysit
babysitting
baccalaureate
Bacchus
Bach
bachelor
bachelors
bacilli
bacillus
back
backache
backaches
backarrow
backbend
backbends
backboard
backbone
backbones
backdrop
backdrops
backed
backer
backers
backfill
backfiring
background
backgrounds
backhand
backing
backlash
backlog
backlogged
backlogs
backorder
backpack
backpacks
backplane
backplanes
backplate
backs
backscatter
backscattered
backscattering
backscatters
backside
backslash
backslashes
backspace
backspaced
backspaces
backspacing
backstage
backstairs
backstitch
backstitched
backstitches
backstitching
backstop
backtrack
backtracked
backtracker
backtrackers
backtracking
backtracks
backup
backups
Backus
backward
backwardness
backwards
backwater
backwaters
backwoods
backyard
backyards
bacon
bacteria
bacterial
bacterium
bad
bade
Baden
badge
badger
badgered
badgering
badgers
badges
badlands
badly
badminton
badness
Baffin
baffle
baffled
baffler
bafflers
baffling
bag
bagatelle
bagatelles
bagel
bagels
baggage
bagged
bagger
baggers
bagging
baggy
Baghdad
Bagley
bagpipe
bagpipes
Bagrodia
Bagrodias
bags
bah
Bahama
Bahamas
Bahrein
bail
Bailey
Baileys
bailiff
bailiffs
bailing
Baird
Bairdi
Bairn
bait
baited
baiter
baiting
baits
Baja
bake
baked
Bakelite
baker
bakeries
bakers
Bakersfield
bakery
bakes
Bakhtiari
baking
baklava
Baku
balalaika
balalaikas
balance
balanced
balancer
balancers
balances
balancing
Balboa
balconies
balcony
bald
balding
baldly
baldness
Baldwin
bale
baleful
baler
bales
Balfour
Bali
Balinese
balk
Balkan
Balkanization
Balkanizations
Balkanize
balkanized
Balkanizes
balkanizing
Balkans
balked
balkiness
balking
balks
balky
ball
ballad
ballads
Ballard
Ballards
ballast
ballasts
balled
baller
ballerina
ballerinas
ballers
ballet
ballets
ballgown
balling
ballistic
ballistics
balloon
ballooned
ballooner
ballooners
ballooning
balloons
ballot
ballots
ballpark
ballparks
ballplayer
ballplayers
ballroom
ballrooms
balls
ballyhoo
balm
balms
balmy
balsa
balsam
Baltic
Baltimore
Baltimorean
balustrade
balustrades
Balzac
Bamako
Bamberger
Bambi
bamboo
ban
Banach
banal
banally
banana
bananas
Banbury
Bancroft
band
bandage
bandaged
bandages
bandaging
banded
bandied
bandies
banding
bandit
bandits
bandpass
bands
bandstand
bandstands
bandwagon
bandwagons
bandwidth
bandwidths
bandy
bandying
bane
baneful
bang
banged
banging
Bangladesh
bangle
bangles
Bangor
bangs
Bangui
banish
banished
banishes
banishing
banishment
banister
banisters
banjo
banjos
bank
banked
banker
bankers
banking
bankrupt
bankruptcies
bankruptcy
bankrupted
bankrupting
bankrupts
Banks
banned
banner
banners
banning
banquet
banqueting
banquetings
banquets
bans
banshee
banshees
bantam
banter
bantered
bantering
banters
Bantu
Bantus
baptism
baptismal
baptisms
Baptist
Baptiste
baptistery
baptistries
baptistry
Baptists
baptize
baptized
baptizes
baptizing
bar
barb
Barbados
Barbara
barbarian
barbarians
barbaric
barbarism
barbarities
barbarity
barbarous
barbarously
barbecue
barbecued
barbecues
barbed
barbell
barbells
barber
barbital
barbiturate
barbiturates
Barbour
barbs
Barcelona
Barclay
bard
bards
bare
bared
barefaced
barefoot
barefooted
barely
bareness
barer
bares
barest
barflies
barfly
bargain
bargained
bargaining
bargains
barge
barges
barging
Barhop
baring
baritone
baritones
barium
bark
barked
barker
barkers
barking
barks
barley
Barlow
barn
Barnabas
Barnard
Barnes
Barnet
Barnett
Barney
Barnhard
barns
barnstorm
barnstormed
barnstorming
barnstorms
Barnum
barnyard
barnyards
barometer
barometers
barometric
baron
baroness
baronial
baronies
barons
barony
baroque
baroqueness
Barr
barrack
barracks
barrage
barrages
barred
barrel
barrelled
barrelling
barrels
barren
barrenness
Barrett
barricade
barricades
barrier
barriers
barring
barringer
Barrington
Barron
barrow
Barry
Barrymore
Barrymores
bars
Barstow
Bart
bartender
bartenders
barter
bartered
bartering
barters
Barth
Bartholomew
Bartlett
Bartok
Barton
basal
basalt
Bascom
base
baseball
baseballs
baseband
baseboard
baseboards
based
Basel
baseless
baseline
baselines
basely
baseman
basement
basements
baseness
baser
bases
bash
bashed
bashes
bashful
bashfulness
bashing
BASIC
Basic
basic
basically
basics
Basie
basil
basin
basing
basins
basis
bask
basked
basket
basketball
basketballs
baskets
basking
Basque
bass
basses
basset
Bassett
bassinet
bassinets
bastard
bastards
baste
basted
bastes
basting
bastion
bastions
bat
Batavia
batch
batched
Batchelder
batches
Bateman
Bates
bath
bathe
bathed
bather
bathers
bathes
bathing
bathos
bathrobe
bathrobes
bathroom
bathrooms
baths
bathtub
bathtubs
Bathurst
Batista
baton
batons
Bator
bats
battalion
battalions
batted
Battelle
batten
battens
batter
battered
batteries
battering
batters
battery
batting
battle
battled
battlefield
battlefields
battlefront
battlefronts
battleground
battlegrounds
battlement
battlements
battler
battlers
battles
battleship
battleships
battling
bauble
baubles
baud
Baudelaire
Bauer
Bauhaus
Bausch
bauxite
Bavaria
Bavarian
bawdy
bawl
bawled
bawling
bawls
Baxter
bay
Bayda
bayed
Bayes
Bayesian
baying
Baylor
bayonet
bayonets
Bayonne
bayou
bayous
Bayport
Bayreuth
bays
bazaar
bazaars
be
beach
beached
beaches
beachhead
beachheads
beaching
beacon
beacons
bead
beaded
beading
beadle
beadles
beads
beady
beagle
beagles
beak
beaked
beaker
beakers
beaks
beam
beamed
beamer
beamers
beaming
beams
bean
beanbag
beaned
beaner
beaners
beaning
beans
bear
bearable
bearably
beard
bearded
beardless
beards
Beardsley
bearer
bearers
bearing
bearings
bearish
bears
beast
beastly
beasts
beat
beatable
beatably
beaten
beater
beaters
beatific
beatification
beatify
beating
beatings
beatitude
beatitudes
beatnik
beatniks
Beatrice
beats
beau
Beauchamps
Beaujolais
Beaumont
Beauregard
beaus
beauteous
beauteously
beauties
beautifications
beautified
beautifier
beautifiers
beautifies
beautiful
beautifully
beautify
beautifying
beauty
beaver
beavers
Beaverton
becalm
becalmed
becalming
becalms
became
because
Bechtel
beck
Becker
Beckman
beckon
beckoned
beckoning
beckons
Becky
become
becomes
becoming
becomingly
bed
bedazzle
bedazzled
bedazzlement
bedazzles
bedazzling
bedbug
bedbugs
bedded
bedder
bedders
bedding
bedevil
bedeviled
bedeviling
bedevils
bedfast
Bedford
bedlam
bedpost
bedposts
bedraggle
bedraggled
bedridden
bedrock
bedroom
bedrooms
beds
bedside
bedspread
bedspreads
bedspring
bedsprings
bedstead
bedsteads
bedtime
bee
Beebe
beech
Beecham
beechen
beecher
beef
beefed
beefer
beefers
beefing
beefs
beefsteak
beefy
beehive
beehives
been
beep
beeps
beer
beers
bees
beet
Beethoven
beetle
beetled
beetles
beetling
beets
befall
befallen
befalling
befalls
befell
befit
befits
befitted
befitting
befog
befogged
befogging
before
beforehand
befoul
befouled
befouling
befouls
befriend
befriended
befriending
befriends
befuddle
befuddled
befuddles
befuddling
beg
began
beget
begets
begetting
beggar
beggarly
beggars
beggary
begged
begging
begin
beginner
beginners
beginning
beginnings
begins
begot
begotten
begrudge
begrudged
begrudges
begrudging
begrudgingly
begs
beguile
beguiled
beguiles
beguiling
begun
behalf
behave
behaved
behaves
behaving
behavior
behavioral
behaviorally
behaviorism
behavioristic
behaviors
behead
beheading
beheld
behemoth
behemoths
behest
behind
behold
beholden
beholder
beholders
beholding
beholds
behoove
behooves
beige
Beijing
being
beings
Beirut
Bela
belabor
belabored
belaboring
belabors
belated
belatedly
belay
belayed
belaying
belays
belch
belched
belches
belching
Belfast
belfries
belfry
Belgian
Belgians
Belgium
Belgrade
belie
belied
belief
beliefs
belies
believable
believably
believe
believed
believer
believers
believes
believing
belittle
belittled
belittles
belittling
Belize
bell
Bella
Bellamy
Bellatrix
bellboy
bellboys
belle
belles
Belleville
bellhop
bellhops
bellicose
bellicosity
bellies
belligerence
belligerent
belligerently
belligerents
Bellingham
Bellini
bellman
bellmen
Bellovin
bellow
bellowed
bellowing
bellows
bells
bellum
bellwether
bellwethers
Bellwood
belly
bellyache
-bellyfull
+bellyful
Belmont
Beloit
belong
belonged
belonging
belongings
belongs
beloved
below
Belshazzar
belt
belted
belting
Belton
belts
Beltsville
Belushi
bely
belying
bemoan
bemoaned
bemoaning
bemoans
Ben
Benares
bench
benched
benches
benchmark
benchmarking
benchmarks
bend
bendable
Bender
benders
bending
Bendix
bends
beneath
Benedict
Benedictine
benediction
benedictions
Benedikt
benefactor
benefactors
beneficence
beneficences
beneficent
beneficial
beneficially
beneficiaries
beneficiary
benefit
benefited
benefiting
benefits
benefitted
benefitting
Benelux
benevolence
benevolent
Bengal
Bengali
benighted
benign
benignly
Benjamin
Bennett
Bennington
Benny
Benson
bent
Bentham
Bentley
Bentleys
Benton
Benz
Benzedrine
benzene
Beograd
Beowulf
bequeath
bequeathal
bequeathed
bequeathing
bequeaths
bequest
bequests
berate
berated
berates
berating
Berea
bereave
bereaved
bereavement
bereavements
bereaves
bereaving
bereft
Berenices
Beresford
beret
berets
Bergen
Bergland
Berglund
Bergman
Bergson
Bergsten
Bergstrom
beribboned
beriberi
Beringer
Berkeley
berkelium
Berkowitz
Berkshire
Berkshires
Berlin
Berliner
Berliners
Berlinize
Berlinizes
Berlioz
Berlitz
Berman
Bermuda
Bern
Bernadine
Bernard
Bernardine
Bernardino
Bernardo
berne
Bernet
Bernhard
Bernice
Bernie
Berniece
Bernini
Bernoulli
Bernstein
Berra
berries
berry
berserk
Bert
berth
Bertha
berths
Bertie
Bertram
Bertrand
Berwick
beryl
beryllium
beseech
beseeches
beseeching
beset
besets
besetting
beside
besides
besiege
besieged
besieger
besiegers
besieging
besmirch
besmirched
besmirches
besmirching
besotted
besotter
besotting
besought
bespeak
bespeaks
bespectacled
bespoke
Bess
Bessel
Bessemer
Bessemerize
Bessemerizes
Bessie
best
bested
bestial
besting
bestir
bestirring
bestow
bestowal
bestowed
bests
bestseller
bestsellers
bestselling
bet
beta
betatron
betel
Betelgeuse
Bethesda
Bethlehem
betide
betray
betrayal
betrayed
betrayer
betraying
betrays
betroth
betrothal
betrothed
bets
Betsey
Betsy
Bette
better
bettered
bettering
betterment
betterments
betters
Betties
betting
Betty
between
betwixt
bevel
beveled
beveling
bevels
beverage
beverages
Beverly
bevy
bewail
bewailed
bewailing
bewails
beware
bewhiskered
bewilder
bewildered
bewildering
bewilderingly
bewilderment
bewilders
bewitch
bewitched
bewitches
bewitching
beyond
Bhagavad-Gita
Bhutan
Bialystok
Bianco
biannual
bias
biased
biases
biasing
bib
bibbed
bibbing
Bible
bibles
biblical
biblically
bibliographic
bibliographical
bibliographies
bibliography
bibliophile
bibs
bicameral
bicarbonate
bicentennial
bicep
biceps
bicker
bickered
bickering
bickers
biconcave
biconnected
biconvex
bicycle
bicycled
bicycler
bicyclers
bicycles
bicycling
bid
biddable
bidden
bidder
bidders
biddies
bidding
Biddle
biddy
bide
bidirectional
bids
Bien
biennial
biennium
Bienville
bier
Bierce
bifocal
bifocals
bifurcate
big
Bigelow
bigger
biggest
Biggs
bight
bights
bigness
bigot
bigoted
bigotry
bigots
biharmonic
bijection
bijections
bijective
bijectively
bike
bikes
biking
bikini
bikinis
bilabial
bilateral
bilaterally
Bilbao
Bilbo
bile
bilge
bilges
bilinear
bilingual
bilk
bilked
bilking
bilks
bill
billboard
billboards
billed
biller
billers
billet
billeted
billeting
billets
billiard
billiards
Billie
Billiken
Billikens
billing
Billings
billion
billions
billionth
billow
billowed
billows
bills
Biltmore
bimetallic
bimetallism
Bimini
bimodal
bimolecular
bimonthlies
bimonthly
bin
binaries
binary
binaural
bind
binder
binders
binding
bindings
binds
bing
binge
binges
Bingham
Binghamton
bingo
Bini
binocular
binoculars
binomial
bins
binuclear
biochemical
biochemist
biochemistry
biofeedback
biographer
biographers
biographic
biographical
biographically
biographies
biography
biological
biologically
biologist
biologists
biology
biomedical
biomedicine
biophysical
biophysicist
biophysics
biopsies
biopsy
bioscience
biosphere
biostatistic
biosynthesize
biota
biotic
bipartisan
bipartite
biped
bipeds
biplane
biplanes
bipolar
biracial
birch
birchen
birches
bird
birdbath
birdbaths
birdie
birdied
birdies
birdlike
birds
birefringence
birefringent
Birgit
Birmingham
Birminghamize
Birminghamizes
birth
birthday
birthdays
birthed
birthplace
birthplaces
birthright
birthrights
births
Biscayne
biscuit
biscuits
bisect
bisected
bisecting
bisection
bisections
bisector
bisectors
bisects
bishop
bishops
Bismarck
Bismark
bismuth
bison
bisons
bisque
bisques
Bissau
bistable
bistate
bit
bitch
bitches
bite
biter
biters
bites
biting
bitingly
bitmap
BITNET
bits
bitten
bitter
bitterer
bitterest
bitterly
bitterness
bitternut
bitterroot
bitters
bittersweet
bitumen
bituminous
bitwise
bivalve
bivalves
bivariate
bivouac
bivouacs
biweekly
bizarre
Bizet
blab
blabbed
blabbermouth
blabbermouths
blabbing
blabs
black
blackberries
blackberry
blackbird
blackbirds
blackboard
blackboards
Blackburn
blacked
blacken
blackened
blackening
blackens
blacker
blackest
Blackfeet
Blackfoot
Blackfoots
blacking
blackjack
blackjacks
blacklist
blacklisted
blacklisting
blacklists
blackly
blackmail
blackmailed
blackmailer
blackmailers
blackmailing
blackmails
Blackman
Blackmer
blackness
blackout
blackouts
blacks
blacksmith
blacksmiths
Blackstone
Blackwell
Blackwells
bladder
bladders
blade
blades
Blaine
Blair
Blake
Blakey
blamable
blame
blamed
blameless
blamelessness
blamer
blamers
blames
blameworthy
blaming
blanch
Blanchard
Blanche
blanched
blanches
blanching
bland
blandly
blandness
blank
blanked
blanker
blankest
blanket
blanketed
blanketer
blanketers
blanketing
blankets
blanking
blankly
blankness
blanks
Blanton
blare
blared
blares
blaring
blase
blaspheme
blasphemed
blasphemes
blasphemies
blaspheming
blasphemous
blasphemously
blasphemousness
blasphemy
blast
blasted
blaster
blasters
blasting
blasts
blatant
blatantly
Blatz
blaze
blazed
blazer
blazers
blazes
blazing
bleach
bleached
bleacher
bleachers
bleaches
bleaching
bleak
bleaker
bleakly
bleakness
blear
bleary
bleat
bleating
bleats
bled
bleed
bleeder
bleeding
bleedings
bleeds
Bleeker
blemish
blemishes
blend
blended
blender
blending
blends
Blenheim
bless
blessed
blessing
blessings
blew
blight
blighted
blimp
blimps
blind
blinded
blinder
blinders
blindfold
blindfolded
blindfolding
blindfolds
blinding
blindingly
blindly
blindness
blinds
blink
blinked
blinker
blinkers
blinking
blinks
Blinn
blip
blips
bliss
blissful
blissfully
blister
blistered
blistering
blisters
blithe
blithely
blitz
blitzes
blitzkrieg
blizzard
blizzards
bloat
bloated
bloater
bloating
bloats
blob
blobs
bloc
Bloch
block
blockade
blockaded
blockades
blockading
blockage
blockages
blocked
blocker
blockers
blockhouse
blockhouses
blocking
blocks
blocs
bloke
blokes
Blomberg
Blomquist
blond
blonde
blondes
blonds
blood
bloodbath
blooded
bloodhound
bloodhounds
bloodied
bloodiest
bloodless
bloods
bloodshed
bloodshot
bloodstain
bloodstained
bloodstains
bloodstream
bloody
bloom
bloomed
bloomers
Bloomfield
blooming
Bloomington
blooms
blooper
blossom
blossomed
blossoms
blot
blots
blotted
blotting
blouse
blouses
blow
blower
blowers
blowfish
blowing
blown
blowout
blows
blowup
blubber
bludgeon
bludgeoned
bludgeoning
bludgeons
blue
blueberries
blueberry
bluebird
bluebirds
bluebonnet
bluebonnets
bluefish
blueness
blueprint
blueprints
bluer
blues
bluest
bluestocking
bluff
bluffing
bluffs
bluing
bluish
Blum
Blumenthal
blunder
blunderbuss
blundered
blundering
blunderings
blunders
blunt
blunted
blunter
bluntest
blunting
bluntly
bluntness
blunts
blur
blurb
blurred
blurring
blurry
blurs
blurt
blurted
blurting
blurts
blush
blushed
blushes
blushing
bluster
blustered
blustering
blusters
blustery
Blythe
boa
boar
board
boarded
boarder
boarders
boarding
boardinghouse
boardinghouses
boards
Boarsh
boast
boasted
boaster
boasters
boastful
boastfully
boasting
boastings
boasts
boat
boater
boaters
boathouse
boathouses
boating
boatload
boatloads
boatman
boatmen
boats
boatsman
boatsmen
boatswain
boatswains
boatyard
boatyards
bob
bobbed
Bobbie
bobbin
bobbing
bobbins
Bobbsey
bobby
bobolink
bobolinks
Bobrow
bobs
bobwhite
bobwhites
Boca
bode
Bodenheim
bodes
bodice
bodied
bodies
bodily
Bodleian
body
bodybuilder
bodybuilders
bodybuilding
bodyguard
bodyguards
bodyweight
Boeing
Boeotia
Boeotian
Boer
Boers
bog
Bogart
Bogartian
bogeymen
bogged
boggle
boggled
boggles
boggling
Bogota
bogs
bogus
Boheme
Bohemia
Bohemian
Bohemianism
Bohr
boil
boiled
boiler
boilerplate
boilers
boiling
boils
Bois
Boise
boisterous
boisterously
bold
bolder
boldest
boldface
boldly
boldness
Bolivia
Bolivian
boll
Bologna
Bolshevik
Bolsheviks
Bolshevism
Bolshevist
Bolshevistic
Bolshoi
bolster
bolstered
bolstering
bolsters
bolt
bolted
bolting
Bolton
bolts
Boltzmann
bomb
bombard
bombarded
bombarding
bombardment
bombards
bombast
bombastic
Bombay
bombed
bomber
bombers
bombing
bombings
bombproof
bombs
bonanza
bonanzas
Bonaparte
Bonaventure
bond
bondage
bonded
bonder
bonders
bonding
bonds
bondsman
bondsmen
bone
boned
boner
boners
bones
bonfire
bonfires
bong
Bonham
Boniface
boning
Bonn
bonnet
bonneted
bonnets
Bonneville
Bonnie
bonny
Bontempo
bonus
bonuses
bony
boo
boob
booboo
booby
book
bookcase
bookcases
booked
booker
bookers
bookie
bookies
booking
bookings
bookish
bookkeeper
bookkeepers
bookkeeping
booklet
booklets
bookmark
books
bookseller
booksellers
bookshelf
bookshelves
bookstore
bookstores
bookworm
boolean
Booleans
boom
boomed
boomerang
boomerangs
booming
booms
boon
Boone
Boonton
boor
boorish
boors
boos
boost
boosted
booster
boosting
boosts
boot
bootable
booted
Bootes
booth
booths
booting
Bootle
bootleg
bootlegged
bootlegger
bootleggers
bootlegging
bootlegs
boots
bootstrap
bootstrapped
bootstrapping
bootstraps
booty
booze
borate
borates
borax
Bordeaux
bordello
bordellos
Borden
border
bordered
bordering
borderings
borderland
borderlands
borderline
borders
bore
Borealis
Boreas
bored
boredom
borer
bores
Borg
boric
boring
Boris
born
borne
Borneo
boron
borough
boroughs
Borroughs
borrow
borrowed
borrower
borrowers
borrowing
borrows
Bosch
Bose
bosom
bosoms
Bosporus
boss
bossed
bosses
Bostitch
Boston
Bostonian
Bostonians
bosun
Boswell
Boswellize
Boswellizes
botanical
botanist
botanists
botany
botch
botched
botcher
botchers
botches
botching
both
bother
bothered
bothering
bothers
bothersome
Botswana
bottle
bottled
bottleneck
bottlenecks
bottler
bottlers
bottles
bottling
bottom
bottomed
bottoming
bottomless
bottoms
botulinus
botulism
Boucher
bouffant
bough
boughs
bought
boulder
boulders
boulevard
boulevards
bounce
bounced
bouncer
bounces
bouncing
bouncy
bound
boundaries
boundary
bounded
bounden
bounding
boundless
boundlessness
bounds
bounteous
bounteously
bounties
bountiful
bounty
bouquet
bouquets
Bourbaki
bourbon
bourgeois
bourgeoisie
Bourne
boustrophedon
boustrophedonic
bout
boutique
bouts
Bouvier
bovine
bovines
bow
Bowditch
bowdlerize
bowdlerized
bowdlerizes
bowdlerizing
Bowdoin
bowed
bowel
bowels
Bowen
bower
bowers
Bowes
bowing
bowl
bowled
bowler
bowlers
bowline
bowlines
bowling
bowls
bowman
bows
bowstring
bowstrings
box
boxcar
boxcars
boxed
boxer
boxers
boxes
Boxford
boxing
boxtop
boxtops
boxwood
boy
Boyce
boycott
boycotted
boycotts
Boyd
boyfriend
boyfriends
boyhood
boyish
boyishness
Boyle
Boylston
boys
bra
brace
braced
bracelet
bracelets
braces
bracing
bracket
bracketed
bracketing
brackets
brackish
Bradbury
Bradford
Bradley
Bradshaw
Brady
brae
braes
brag
Bragg
bragged
bragger
bragging
brags
Brahmaputra
Brahms
Brahmsian
braid
braided
braiding
braids
Braille
brain
Brainard
Brainards
brainchild
brained
braining
brains
brainstem
brainstems
brainstorm
brainstorms
brainwash
brainwashed
brainwashes
brainwashing
brainy
brake
braked
brakeman
brakes
braking
bramble
brambles
brambly
bran
branch
branched
branches
branching
branchings
Branchville
brand
branded
Brandeis
Brandel
Brandenburg
branding
brandish
brandishes
brandishing
Brandon
brands
Brandt
brandy
brandywine
Braniff
Brannon
bras
brash
brashly
brashness
Brasilia
brass
brasses
brassiere
Brasstown
brassy
brat
brats
Braun
bravado
brave
braved
bravely
braveness
braver
bravery
braves
bravest
braving
bravo
bravos
brawl
brawler
brawling
brawn
bray
brayed
brayer
braying
brays
braze
brazed
brazen
brazenly
brazenness
brazes
brazier
braziers
Brazil
Brazilian
brazing
Brazzaville
breach
breached
breacher
breachers
breaches
breaching
bread
breadboard
breadboards
breadbox
breadboxes
breaded
breading
breads
breadth
breadwinner
breadwinners
break
breakable
breakables
breakage
breakaway
breakdown
breakdowns
breaker
breakers
breakfast
breakfasted
breakfaster
breakfasters
breakfasting
breakfasts
breaking
breakpoint
breakpoints
breaks
breakthrough
breakthroughes
breakthroughs
breakup
breakwater
breakwaters
breast
breasted
breasts
breastwork
breastworks
breath
breathable
breathe
breathed
breather
breathers
breathes
breathing
breathless
breathlessly
breaths
breathtaking
breathtakingly
breathy
bred
breech
breeches
breed
breeder
breeding
breeds
breeze
breezes
breezily
breezy
Bremen
bremsstrahlung
Brenda
Brendan
Brennan
Brenner
Brent
Bresenham
Brest
brethren
Breton
Bretons
Brett
breve
brevet
breveted
breveting
brevets
brevity
brew
brewed
brewer
breweries
brewers
brewery
brewing
brews
Brewster
Brian
briar
briars
bribe
bribed
briber
bribers
bribery
bribes
bribing
Brice
brick
brickbat
bricked
bricker
bricklayer
bricklayers
bricklaying
bricks
bridal
bride
bridegroom
brides
bridesmaid
bridesmaids
Bridewell
bridge
bridgeable
bridged
bridgehead
bridgeheads
Bridgeport
bridges
Bridget
Bridgetown
Bridgewater
bridgework
bridging
bridle
bridled
bridles
bridling
Brie
brief
briefcase
briefcases
briefed
briefer
briefest
briefing
briefings
briefly
briefness
briefs
Brien
brier
brig
brigade
brigades
brigadier
brigadiers
Brigadoon
brigantine
Briggs
Brigham
bright
brighten
brightened
brightener
brighteners
brightening
brightens
brighter
brightest
brightly
brightness
Brighton
brigs
brilliance
brilliancy
brilliant
brilliantly
Brillouin
brim
brimful
brimmed
brimming
brimstone
Brindisi
brindle
brindled
brine
bring
bringer
bringers
bringing
brings
brink
Brinkley
brinkmanship
briny
Brisbane
brisk
brisker
briskly
briskness
bristle
bristled
bristles
bristling
Bristol
Britain
Britannic
Britannica
britches
British
Britisher
Britishly
Briton
Britons
Brittany
Britten
brittle
brittleness
broach
broached
broaches
broaching
broad
broadband
broadcast
broadcasted
broadcaster
broadcasters
broadcasting
broadcastings
broadcasts
broaden
broadened
broadener
broadeners
broadening
broadenings
broadens
broader
broadest
broadly
broadness
broadside
Broadway
brocade
brocaded
broccoli
brochure
brochures
Brock
Broglie
broil
broiled
broiler
broilers
broiling
broils
broke
broken
brokenly
brokenness
broker
brokerage
brokers
Bromfield
bromide
bromides
bromine
Bromley
bronchi
bronchial
bronchiole
bronchioles
bronchitis
bronchus
Brontosaurus
Bronx
bronze
bronzed
bronzes
brooch
brooches
brood
brooder
brooding
broods
brook
Brookdale
Brooke
brooked
Brookfield
Brookhaven
Brookline
Brooklyn
Brookmont
brooks
broom
brooms
broomstick
broomsticks
broth
brothel
brothels
brother
brotherhood
brotherliness
brotherly
brothers
brought
brow
browbeat
browbeaten
browbeating
browbeats
brown
Browne
browned
Brownell
browner
brownest
Brownian
brownie
brownies
browning
brownish
brownness
browns
brows
browse
browsing
Bruce
Bruckner
Bruegel
bruise
bruised
bruises
bruising
Brumidi
brunch
brunches
brunette
Brunhilde
Bruno
Brunswick
brunt
brush
brushed
brushes
brushfire
brushfires
brushing
brushlike
brushy
brusque
brusquely
Brussels
brutal
brutalities
brutality
brutalize
brutalized
brutalizes
brutalizing
brutally
brute
brutes
brutish
Bruxelles
Bryan
Bryant
Bryce
Bryn
bubble
bubbled
bubbles
bubbling
bubbly
Buchanan
Bucharest
Buchenwald
Buchwald
buck
buckboard
buckboards
bucked
bucket
buckets
bucking
buckle
buckled
buckler
buckles
Buckley
buckling
Bucknell
bucks
buckshot
buckskin
buckskins
buckwheat
Bucky
bucolic
bud
Budapest
Budd
budded
Buddha
Buddhism
Buddhist
Buddhists
buddies
budding
buddy
budge
budged
budges
budget
budgetary
budgeted
budgeter
budgeters
budgeting
budgets
budging
buds
Budweiser
Budweisers
Buehring
Buena
Buenos
buff
buffalo
buffaloes
buffer
buffered
buffering
buffers
buffet
buffeted
buffeting
buffetings
buffets
buffoon
buffoons
buffs
bug
bugaboo
Bugatti
bugeyed
bugged
bugger
buggers
buggies
bugging
buggy
bugle
bugled
bugler
bugles
bugling
bugs
Buick
build
builder
builders
building
buildings
builds
buildup
buildups
built
builtin
Bujumbura
bulb
Bulba
bulbs
Bulgaria
Bulgarian
bulge
bulged
bulging
bulk
bulked
bulkhead
bulkheads
bulks
bulky
bull
bulldog
bulldogs
bulldoze
bulldozed
bulldozer
bulldozes
bulldozing
bulled
bullet
bulletin
bulletins
bullets
bullfrog
bullied
bullies
bulling
bullion
bullish
bullock
bulls
bullseye
bully
bullying
bulwark
bum
bumble
bumblebee
bumblebees
bumbled
bumbler
bumblers
bumbles
bumbling
Bumbry
bummed
bumming
bump
bumped
bumper
bumpers
bumping
bumps
bumptious
bumptiously
bumptiousness
bums
bun
bunch
bunched
bunches
bunching
Bundestag
bundle
bundled
bundles
bundling
Bundoora
Bundy
bungalow
bungalows
bungle
bungled
bungler
bunglers
bungles
bungling
bunion
bunions
bunk
bunker
bunkered
bunkers
bunkhouse
bunkhouses
bunkmate
bunkmates
bunks
bunnies
bunny
buns
Bunsen
bunt
bunted
bunter
bunters
bunting
bunts
Bunyan
buoy
buoyancy
buoyant
buoyed
buoys
Burbank
Burch
burden
burdened
burdening
burdens
burdensome
bureau
bureaucracies
bureaucracy
bureaucrat
bureaucratic
bureaucrats
bureaus
burgeon
burgeoned
burgeoning
burgess
burgesses
burgher
burghers
burglar
burglaries
burglarize
burglarized
burglarizes
burglarizing
burglarproof
burglarproofed
burglarproofing
burglarproofs
burglars
burglary
Burgundian
Burgundies
Burgundy
burial
buried
buries
Burke
Burkes
burl
burlesque
burlesques
Burlingame
Burlington
burly
Burma
Burmese
burn
Burne
burned
burner
burners
Burnes
Burnett
Burnham
burning
burningly
burnings
burnish
burnished
burnishes
burnishing
burns
Burnside
Burnsides
burnt
burntly
burntness
burp
burped
burping
burps
Burr
Burroughs
burrow
burrowed
burrower
burrowing
burrows
burrs
bursa
bursitis
burst
burstiness
bursting
bursts
bursty
Burt
Burton
Burtt
Burundi
bury
burying
bus
busboy
busboys
Busch
bused
buses
bush
bushel
bushels
bushes
bushing
Bushnell
bushwhack
bushwhacked
bushwhacking
bushwhacks
bushy
busied
busier
busiest
busily
business
businesses
businesslike
businessman
businessmen
busing
buss
bussed
busses
bussing
bust
bustard
bustards
busted
buster
bustle
bustling
busts
busy
but
butane
butcher
butchered
butchers
butchery
butler
butlers
butt
butte
butted
butter
butterball
buttercup
buttered
butterer
butterers
butterfat
Butterfield
butterflies
butterfly
buttering
buttermilk
butternut
butters
buttery
buttes
butting
buttock
buttocks
button
buttoned
buttonhole
buttonholes
buttoning
buttons
buttress
buttressed
buttresses
buttressing
Buttrick
butts
butyl
butyrate
buxom
Buxtehude
Buxton
buy
buyer
buyers
buying
buys
buzz
Buzzard
buzzards
buzzed
buzzer
buzzes
buzzing
buzzword
buzzwords
buzzy
by
bye
Byers
bygone
bylaw
bylaws
byline
bylines
bypass
bypassed
bypasses
bypassing
byproduct
byproducts
Byrd
Byrne
Byron
Byronic
Byronism
Byronize
Byronizes
bystander
bystanders
byte
bytes
byway
byways
byword
bywords
Byzantine
Byzantinize
Byzantinizes
Byzantium
cab
cabal
cabana
cabaret
cabbage
cabbages
cabdriver
cabin
cabinet
cabinets
cabins
cable
cabled
cables
cabling
caboose
Cabot
cabs
cache
cached
caches
caching
cackle
cackled
cackler
cackles
cackling
cacti
cactus
cadaver
cadence
cadenced
Cadillac
Cadillacs
cadres
Cady
Caesar
Caesarian
Caesarize
Caesarizes
cafe
cafes
cafeteria
cage
caged
cager
cagers
cages
caging
Cahill
caiman
Cain
Caine
cairn
Cairo
cajole
cajoled
cajoles
cajoling
Cajun
Cajuns
cake
caked
cakes
caking
Calais
calamities
calamitous
calamity
Calceolaria
calcify
calcium
CALCOMP
CalComp
Calcomp
calculate
calculated
calculates
calculating
calculation
calculations
calculative
calculator
calculators
calculi
calculus
Calcutta
Calder
caldera
Caldwell
Caleb
calendar
calendars
calf
calfskin
Calgary
Calhoun
caliber
calibers
calibrate
calibrated
calibrates
calibrating
calibration
calibrations
calico
California
Californian
Californians
Caligula
caliph
caliphs
Calkins
call
callable
Callaghan
Callahan
Callan
called
caller
callers
calling
calliope
Callisto
callous
calloused
callously
callousness
calls
callus
calm
calmed
calmer
calmest
calming
calmingly
calmly
calmness
calms
caloric
calorie
calories
calorimeter
calorimetric
calorimetry
Caltech
calumny
Calvary
calve
Calvert
calves
Calvin
Calvinist
Calvinize
Calvinizes
calypso
cam
Cambodia
Cambrian
Cambridge
Camden
came
camel
Camelot
camels
Camembert
camera
cameraman
cameramen
cameras
Cameron
Cameroon
Cameroun
Camilla
Camille
Camino
camouflage
camouflaged
camouflages
camouflaging
camp
campaign
campaigned
campaigner
campaigners
campaigning
campaigns
Campbell
Campbellsport
camped
camper
campers
campfire
campground
camping
camps
campsite
campus
campuses
can
Canaan
Canada
Canadian
Canadianization
Canadianizations
Canadianize
Canadianizes
Canadians
canal
canals
canaries
canary
Canaveral
Canberra
cancel
canceled
canceling
cancellation
cancellations
cancels
cancer
cancerous
cancers
Candace
candid
candidacy
candidate
candidates
Candide
candidly
candidness
candied
candies
candle
candlelight
candler
candles
candlestick
candlesticks
Candlewick
candor
candy
cane
caner
Canfield
canine
Canis
canister
canker
cankerworm
cannabis
canned
cannel
canner
canners
cannery
cannibal
cannibalize
cannibalized
cannibalizes
cannibalizing
cannibals
canning
cannister
cannisters
cannon
cannonball
cannons
cannot
canny
canoe
canoes
Canoga
canon
canonic
canonical
canonicalization
canonicalize
canonicalized
canonicalizes
canonicalizing
canonically
canonicals
canons
Canopus
canopy
cans
cant
Cantabrigian
cantaloupe
cantankerous
cantankerously
canteen
Canterbury
cantilever
canto
canton
Cantonese
cantons
cantor
cantors
Canute
canvas
canvases
canvass
canvassed
canvasser
canvassers
canvasses
canvassing
canyon
canyons
cap
capabilities
capability
capable
capably
capacious
capaciously
capaciousness
capacitance
capacitances
capacities
capacitive
capacitor
capacitors
capacity
cape
caper
capers
capes
Capet
Capetown
capillary
Capistrano
capita
capital
capitalism
capitalist
capitalists
capitalization
capitalizations
capitalize
capitalized
capitalizer
capitalizers
capitalizes
capitalizing
capitally
capitals
Capitan
capitol
Capitoline
capitols
capped
capping
Cappy
caprice
capricious
capriciously
capriciousness
Capricorn
caps
Capsicum
capstan
capstone
capsule
captain
captained
captaining
captains
caption
captions
captivate
captivated
captivates
captivating
captivation
captive
captives
captivity
captor
captors
capture
captured
capturer
capturers
captures
capturing
Caputo
capybara
car
Caracas
caramel
caravan
caravans
caraway
carbohydrate
carbolic
Carboloy
carbon
carbonate
carbonates
carbonation
Carbondale
Carbone
Carbones
carbonic
carbonization
carbonize
carbonized
carbonizer
carbonizers
carbonizes
carbonizing
carbons
carborundum
carbuncle
carcass
carcasses
carcinogen
carcinogenic
carcinoma
card
cardboard
carder
cardiac
Cardiff
cardinal
cardinalities
cardinality
cardinally
cardinals
Cardiod
cardiology
cardiovascular
cards
care
cared
careen
career
careers
carefree
careful
carefully
carefulness
careless
carelessly
carelessness
cares
caress
caressed
caresser
caresses
caressing
caret
caretaker
Carey
Cargill
cargo
cargoes
Carib
Caribbean
caribou
caricature
caring
Carl
Carla
Carleton
Carletonian
Carlin
Carlisle
Carlo
carload
Carlsbad
Carlsbads
Carlson
Carlton
Carlyle
Carmela
Carmen
Carmichael
carnage
carnal
carnation
Carnegie
carnival
carnivals
carnivorous
carnivorously
carol
Carolina
Carolinas
Caroline
Carolingian
Carolinian
Carolinians
carols
Carolyn
carp
Carpathia
Carpathians
carpenter
carpenters
carpentry
carpet
carpeted
carpeting
carpets
carport
Carr
Carrara
carriage
carriages
Carrie
carried
carrier
carriers
carries
carrion
Carroll
carrot
carrots
Carruthers
carry
carrying
carryover
carryovers
cars
Carson
cart
carted
cartel
carter
carters
Cartesian
Carthage
Carthaginian
cartilage
carting
cartographer
cartographic
cartography
carton
cartons
cartoon
cartoons
cartridge
cartridges
carts
cartwheel
Carty
Caruso
carve
carved
carver
carves
carving
carvings
Casanova
cascadable
cascade
cascaded
cascades
cascading
case
cased
casement
casements
cases
casework
Casey
cash
cashed
casher
cashers
cashes
cashew
cashier
cashiers
cashing
cashmere
casing
casings
casino
cask
casket
caskets
casks
Caspian
Cassandra
casserole
casseroles
cassette
Cassiopeia
Cassite
Cassites
Cassius
cassock
cast
caste
caster
casters
castes
castigate
Castillo
casting
castle
castled
castles
castor
Castro
Castroism
casts
casual
casually
casualness
casuals
casualties
casualty
cat
cataclysmic
Catalan
Catalina
catalog
cataloged
cataloger
cataloging
catalogs
Catalonia
catalyst
catalysts
catalytic
catapult
cataract
catastrophe
catastrophes
catastrophic
Catawba
catch
catchable
catcher
catchers
catches
catching
categorical
categorically
categories
categorization
categorize
categorized
categorizer
categorizers
categorizes
categorizing
category
cater
catered
caterer
catering
caterpillar
caterpillars
caters
cathedral
cathedrals
Catherine
Catherwood
catheter
catheters
cathode
cathodes
Catholic
Catholicism
Catholicisms
Catholics
Cathy
catlike
catnip
cats
Catskill
Catskills
catsup
cattail
cattle
cattleman
cattlemen
Caucasian
Caucasians
Caucasus
Cauchy
caucus
caught
cauldron
cauldrons
cauliflower
caulk
causal
causality
causally
causation
causations
cause
caused
causer
causes
causeway
causeways
causing
caustic
causticly
caustics
caution
cautioned
cautioner
cautioners
cautioning
cautionings
cautions
cautious
cautiously
cautiousness
cavalier
cavalierly
cavalierness
cavalry
cave
caveat
caveats
caved
caveman
cavemen
Cavendish
cavern
cavernous
caverns
caves
caviar
cavil
Caviness
caving
cavities
cavity
caw
cawing
Cayley
Cayuga
cease
ceased
ceaseless
ceaselessly
ceaselessness
ceases
ceasing
Cecil
Cecilia
Cecropia
cedar
cede
ceded
ceding
Cedric
ceiling
ceilings
Celanese
Celebes
celebrate
celebrated
celebrates
celebrating
celebration
celebrations
celebrities
celebrity
celerity
celery
Celeste
celestial
celestially
Celia
cell
cellar
cellars
celled
cellist
cellists
cellophane
cells
cellular
cellulose
Celsius
Celt
Celtic
Celticize
Celticizes
cement
cemented
cementing
cements
cemeteries
cemetery
Cenozoic
censor
censored
censoring
censors
censorship
censure
censured
censurer
censures
census
censuses
cent
centaur
centenary
centennial
center
centered
centering
centerpiece
centerpieces
centers
centigrade
centimeter
centimeters
centipede
centipedes
central
Centralia
centralism
centralist
centralization
centralize
centralized
centralizes
centralizing
centrally
CENTREX
Centrex
centrifugal
centrifuge
centripetal
centrist
centroid
cents
centuries
century
Cepheus
ceramic
Cerberus
cereal
cereals
cerebellum
cerebral
ceremonial
ceremonially
ceremonialness
ceremonies
ceremony
Ceres
CERN
certain
certainly
certainties
certainty
certifiable
certificate
certificates
certification
certifications
certified
certifier
certifiers
certifies
certify
certifying
Cervantes
Cesare
cessation
cessations
Cessna
Cetus
Ceylon
Cezanne
Cezannes
Chablis
Chablises
Chad
Chadwick
chafe
chafer
chaff
chaffer
Chaffey
chaffing
chafing
chagrin
chain
chained
chaining
chains
chair
chaired
chairing
chairlady
chairman
chairmen
chairperson
chairpersons
chairs
chairwoman
chairwomen
chalice
chalices
chalk
chalked
chalking
chalks
challenge
challenged
challenger
challengers
challenges
challenging
Chalmers
chamber
chambered
chamberlain
chamberlains
chambermaid
Chambers
chameleon
champagne
Champaign
champion
championed
championing
champions
championship
championships
Champlain
chance
chanced
chancellor
Chancellorsville
chancery
chances
chancing
chandelier
chandeliers
Chandigarh
Chang
change
changeability
changeable
changeably
changed
changeover
changer
changers
changes
changing
channel
channeled
channeling
channelled
channeller
channellers
channelling
channels
Channing
chant
chanted
chanter
chanticleer
chanticleers
Chantilly
chanting
chants
Chao
chaos
chaotic
chap
chapel
chapels
chaperon
chaperone
chaperoned
chaplain
chaplains
Chaplin
Chapman
chaps
chapter
chapters
char
character
characteristic
characteristically
characteristics
characterizable
characterization
characterizations
characterize
characterized
characterizer
characterizers
characterizes
characterizing
characters
charcoal
charcoaled
charge
chargeable
charged
charger
chargers
charges
charging
chariot
chariots
charisma
charismatic
charitable
charitableness
charities
charity
Charlemagne
Charlemagnes
Charles
Charleston
Charley
Charlie
Charlotte
Charlottesville
charm
charmed
charmer
charmers
charming
charmingly
charms
Charon
chars
chart
Charta
chartable
charted
charter
chartered
chartering
charters
charting
chartings
Chartres
chartreuse
charts
Charybdis
chase
chased
chaser
chasers
chases
chasing
chasm
chasms
chassis
chaste
chastely
chasteness
chastise
chastised
chastiser
chastisers
chastises
chastising
chastity
chat
chateau
chateaus
Chatham
Chattahoochee
Chattanooga
chattel
chatter
chattered
chatterer
chattering
chatters
chatting
chatty
Chaucer
chauffeur
chauffeured
Chauncey
Chautauqua
cheap
cheapen
cheapened
cheapening
cheapens
cheaper
cheapest
cheaply
cheapness
cheat
cheated
cheater
cheaters
cheating
cheats
check
checkable
checkbook
checkbooks
checked
checker
checkerboard
checkerboarded
checkerboarding
checkers
checking
checklist
checkout
checkpoint
checkpoints
checks
checksum
checksummed
checksumming
checksums
checkup
cheek
cheekbone
cheeks
cheeky
cheer
cheered
cheerer
cheerful
cheerfully
cheerfulness
cheerily
cheeriness
cheering
cheerleader
cheerless
cheerlessly
cheerlessness
cheers
cheery
cheese
cheesecloth
cheeses
cheesy
cheetah
chef
chefs
Chekhov
Chelsea
chemical
chemically
chemicals
chemise
chemist
chemistries
chemistry
chemists
Chen
Cheney
Cheng
cherish
cherished
cherishes
cherishing
Cheriton
Cherokee
Cherokees
cherries
cherry
cherub
cherubim
cherubs
Cheryl
Chesapeake
Cheshire
chess
chest
Chester
Chesterfield
Chesterton
chestnut
chestnuts
chests
Chevrolet
Chevy
chew
chewed
chewer
chewers
chewing
chews
Cheyenne
Cheyennes
Chiang
chic
Chicago
Chicagoan
Chicagoans
Chicana
Chicanas
chicanery
Chicano
Chicanos
chick
chickadee
chickadees
Chickasaws
chicken
chickens
chicks
chide
chided
chides
chiding
chief
chiefly
chiefs
chieftain
chieftains
chiffon
child
childbirth
childhood
childish
childishly
childishness
childlike
children
Chile
Chilean
Chiles
chili
chill
chilled
chiller
chillers
chillier
chilliness
chilling
chillingly
chills
chilly
chime
chimera
chimes
chimney
chimneys
chimpanzee
chin
China
Chinaman
Chinamen
Chinas
Chinatown
Chinese
Ching
chink
chinked
chinks
chinned
chinner
chinners
chinning
Chinook
chins
chintz
chip
chipmunk
chipmunks
Chippendale
Chippewa
chips
chiropractor
chirp
chirped
chirping
chirps
chisel
chiseled
chiseler
chisels
Chisholm
chit
chivalrous
chivalrously
chivalrousness
chivalry
Chloe
chlorine
chloroform
chlorophyll
chloroplast
chloroplasts
chock
chocks
chocolate
chocolates
Choctaw
Choctaws
choice
choices
choicest
choir
choirs
choke
choked
choker
chokers
chokes
choking
cholera
Chomsky
choose
chooser
choosers
chooses
choosing
chop
Chopin
chopped
chopper
choppers
chopping
choppy
chops
choral
chord
chordate
chorded
chording
chords
chore
choreograph
choreography
chores
choring
chortle
chorus
chorused
choruses
chose
chosen
Chou
chowder
Chris
Christ
christen
Christendom
christened
christening
christens
Christensen
Christenson
Christian
Christiana
Christianity
Christianization
Christianizations
Christianize
Christianizer
Christianizers
Christianizes
Christianizing
Christians
Christiansen
Christianson
Christie
Christina
Christine
Christlike
Christmas
Christoffel
Christoph
Christopher
Christy
chromatogram
chromatograph
chromatography
chrome
chromium
chromosphere
chronic
chronicle
chronicled
chronicler
chroniclers
chronicles
chronograph
chronography
chronological
chronologically
chronologies
chronology
chrysanthemum
Chrysler
chubbier
chubbiest
chubbiness
chubby
chuck
chuckle
chuckled
chuckles
chucks
chum
Chungking
chunk
chunks
chunky
church
churches
churchgoer
churchgoing
Churchill
Churchillian
churchly
churchman
churchmen
churchwoman
churchwomen
churchyard
churchyards
churn
churned
churning
churns
chute
chutes
chutzpah
cicada
Cicero
Ciceronian
Ciceronianize
Ciceronianizes
cider
cigar
cigarette
cigarettes
cigars
cilia
Cincinnati
cinder
Cinderella
cinders
Cindy
cinema
cinematic
Cinerama
cinnamon
cipher
ciphers
ciphertext
ciphertexts
circa
Circe
circle
circled
circles
circlet
circling
circuit
circuitous
circuitously
circuitry
circuits
circulant
circular
circularity
circularly
circulate
circulated
circulates
circulating
circulation
circumcise
circumcision
circumference
circumflex
circumlocution
circumlocutions
circumnavigate
circumnavigated
circumnavigates
circumpolar
circumscribe
circumscribed
circumscribing
circumscription
circumspect
circumspection
circumspectly
circumstance
circumstanced
circumstances
circumstantial
circumstantially
circumvent
circumventable
circumvented
circumventing
circumvents
circus
circuses
cistern
cisterns
citadel
citadels
citation
citations
cite
cited
cites
cities
citing
citizen
citizens
citizenship
Citroen
citrus
city
cityscape
citywide
civet
civic
civics
civil
civilian
civilians
civility
civilization
civilizations
civilize
civilized
civilizes
civilizing
civilly
clad
cladding
claim
claimable
claimant
claimants
claimed
claiming
claims
Claire
clairvoyant
clairvoyantly
clam
clamber
clambered
clambering
clambers
clamor
clamored
clamoring
clamorous
clamors
clamp
clamped
clamping
clamps
clams
clan
clandestine
clang
clanged
clanging
clangs
clank
clannish
clap
clapboard
Clapeyron
clapping
claps
Clara
Clare
Claremont
Clarence
Clarendon
clarification
clarifications
clarified
clarifies
clarify
clarifying
clarinet
clarity
Clark
Clarke
Clarridge
clash
clashed
clashes
clashing
clasp
clasped
clasping
clasps
class
classed
classes
classic
classical
classically
classics
classifiable
classification
classifications
classified
classifier
classifiers
classifies
classify
classifying
classmate
classmates
classroom
classrooms
classy
clatter
clattered
clattering
Claude
Claudia
Claudio
Claus
clause
Clausen
clauses
Clausius
claustrophobia
claustrophobic
claw
clawed
clawing
claws
clay
clays
Clayton
clean
cleaned
cleaner
cleaners
cleanest
cleaning
cleanliness
cleanly
cleanness
cleans
cleanse
cleansed
cleanser
cleansers
cleanses
cleansing
cleanup
clear
clearance
clearances
cleared
clearer
clearest
clearing
clearings
clearly
clearness
clears
Clearwater
cleavage
cleave
cleaved
cleaver
cleavers
cleaves
cleaving
cleft
clefts
clemency
Clemens
clement
Clemente
Clemson
clench
clenched
clenches
clergy
clergyman
clergymen
clerical
clerk
clerked
clerking
clerks
Cleveland
clever
cleverer
cleverest
cleverly
cleverness
cliche
cliches
click
clicked
clicking
clicks
client
clientele
clients
cliff
Clifford
cliffs
Clifton
climate
climates
climatic
climatically
climatology
climax
climaxed
climaxes
climb
climbed
climber
climbers
climbing
climbs
clime
climes
clinch
clinched
clincher
clinches
cling
clinging
clings
clinic
clinical
clinically
clinician
clinics
clink
clinked
clinker
Clint
Clinton
Clio
clip
clipboard
clipped
clipper
clippers
clipping
clippings
clips
clique
cliques
clitoris
Clive
cloak
cloakroom
cloaks
clobber
clobbered
clobbering
clobbers
clock
clocked
clocker
clockers
clocking
clockings
clocks
clockwatcher
clockwise
clockwork
clod
clods
clog
clogged
clogging
clogs
cloister
cloisters
clone
cloned
clones
cloning
close
closed
closely
closeness
closenesses
closer
closers
closes
closest
closet
closeted
closets
closeup
closing
closure
closures
clot
cloth
clothe
clothed
clothes
clotheshorse
clothesline
clothing
Clotho
clotting
cloture
cloud
cloudburst
clouded
cloudier
cloudiest
cloudiness
clouding
cloudless
clouds
cloudy
clout
clove
clover
cloves
clown
clowning
clowns
club
clubbed
clubbing
clubhouse
clubroom
clubs
cluck
clucked
clucking
clucks
clue
clues
Cluj
clump
clumped
clumping
clumps
clumsily
clumsiness
clumsy
clung
cluster
clustered
clustering
clusterings
clusters
clutch
clutched
clutches
clutching
clutter
cluttered
cluttering
clutters
Clyde
Clytemnestra
coach
coached
coacher
coaches
coaching
coachman
coachmen
coagulate
coal
coalesce
coalesced
coalesces
coalescing
coalition
coals
coarse
coarsely
coarsen
coarsened
coarseness
coarser
coarsest
coast
coastal
coasted
coaster
coasters
coasting
coastline
coasts
coat
coated
Coates
coating
coatings
coats
coattail
coauthor
coax
coaxed
coaxer
coaxes
coaxial
coaxing
cobalt
Cobb
cobble
cobbler
cobblers
cobblestone
COBOL
Cobol
cobra
cobweb
cobwebs
coca
cocaine
Cochise
Cochran
Cochrane
cock
cocked
cocking
cockpit
cockroach
cocks
cocktail
cocktails
cocky
coco
cocoa
coconut
coconuts
cocoon
cocoons
cod
Coddington
coddle
code
coded
codeine
coder
coders
codes
codeword
codewords
codfish
codicil
codification
codifications
codified
codifier
codifiers
codifies
codify
codifying
coding
codings
codpiece
Cody
coed
coeditor
coeducation
coefficient
coefficients
coequal
coerce
coerced
coerces
coercible
coercing
coercion
coercive
coexist
coexisted
coexistence
coexisting
coexists
cofactor
coffee
coffeecup
coffeepot
coffees
coffer
coffers
Coffey
coffin
coffins
Coffman
cog
cogent
cogently
cogitate
cogitated
cogitates
cogitating
cogitation
cognac
cognition
cognitive
cognitively
cognizance
cognizant
cogs
cohabitation
cohabitations
Cohen
cohere
cohered
coherence
coherent
coherently
coheres
cohering
cohesion
cohesive
cohesively
cohesiveness
Cohn
cohort
coil
coiled
coiling
coils
coin
coinage
coincide
coincided
coincidence
coincidences
coincident
coincidental
coincides
coinciding
coined
coiner
coining
coins
coke
cokes
colander
Colby
cold
colder
coldest
coldly
coldness
colds
Cole
Coleman
Coleridge
Colette
Colgate
colicky
coliform
coliseum
collaborate
collaborated
collaborates
collaborating
collaboration
collaborations
collaborative
collaborator
collaborators
collagen
collapse
collapsed
collapses
collapsible
collapsing
collar
collarbone
collared
collaring
collars
collate
collateral
colleague
colleagues
collect
collected
collectible
collecting
collection
collections
collective
collectively
collectives
collector
collectors
collects
college
colleges
collegian
collegiate
collide
collided
collides
colliding
collie
Collier
collies
Collins
collision
collisions
colloidal
colloquia
colloquial
colloquium
colloquy
collusion
Cologne
Colombia
Colombian
Colombians
Colombo
colon
colonel
colonels
colonial
colonially
colonials
colonies
colonist
colonists
colonization
colonize
colonized
colonizer
colonizers
colonizes
colonizing
colons
colony
color
Colorado
colored
colorer
colorers
colorful
coloring
colorings
colorless
colors
colossal
Colosseum
colt
colts
Columbia
Columbian
Columbus
column
columnize
columnized
columnizes
columnizing
columns
Comanche
comb
combat
combatant
combatants
combated
combating
combative
combats
combed
comber
combers
combination
combinational
combinations
combinator
combinatorial
combinatorially
combinatoric
combinatorics
combinators
combine
combined
combines
combing
combings
combining
combs
combustible
combustion
Comdex
come
comeback
comedian
comedians
comedic
comedies
comedy
comeliness
comely
comer
comers
comes
comestible
comet
cometary
comets
comfort
comfortabilities
comfortability
comfortable
comfortably
comforted
comforter
comforters
comforting
comfortingly
comforts
comic
comical
comically
comics
Cominform
coming
comings
comma
command
commandant
commandants
commanded
commandeer
commander
commanders
commanding
commandingly
commandment
commandments
commando
commands
commas
commemorate
commemorated
commemorates
commemorating
commemoration
commemorative
commence
commenced
commencement
commencements
commences
commencing
commend
commendation
commendations
commended
commending
commends
commensurate
comment
commentaries
commentary
commentator
commentators
commented
commenting
comments
commerce
commercial
commercially
commercialness
commercials
commission
commissioned
commissioner
commissioners
commissioning
commissions
commit
commitment
commitments
commits
committed
committee
committeeman
committeemen
committees
committeewoman
committeewomen
committing
commodities
commodity
commodore
commodores
common
commonalities
commonality
commoner
commoners
commonest
commonly
commonness
commonplace
commonplaces
commons
commonwealth
commonwealths
commotion
communal
communally
commune
communes
communicant
communicants
communicate
communicated
communicates
communicating
communication
communications
communicative
communicator
communicators
communion
communist
communists
communities
community
commutative
commutativity
commute
commuted
commuter
commuters
commutes
commuting
compact
compacted
compacter
compactest
compacting
compaction
compactly
compactness
compactor
compactors
compacts
companies
companion
companionable
companions
companionship
company
comparability
comparable
comparably
comparative
comparatively
comparatives
comparator
comparators
compare
compared
compares
comparing
comparison
comparisons
compartment
compartmentalize
compartmentalized
compartmentalizes
compartmentalizing
compartmented
compartments
compass
compassion
compassionate
compassionately
compatibilities
compatibility
compatible
compatibles
compatibly
compel
compelled
compelling
compellingly
compels
compendium
compensate
compensated
compensates
compensating
compensation
compensations
compensatory
compete
competed
competence
competency
competent
competently
competes
competing
competition
competitions
competitive
competitively
competitor
competitors
compilation
compilations
compile
compiled
compiler
compilers
compiles
compiling
complacency
complain
complained
complainer
complainers
complaining
complains
complaint
complaints
complement
complementary
complemented
complementer
complementers
complementing
complements
complete
completed
completely
completeness
completes
completing
completion
completions
complex
complexes
complexion
complexities
complexity
complexly
compliance
compliant
complicate
complicated
complicates
complicating
complication
complications
complicator
complicators
complicity
complied
compliment
complimentary
complimented
complimenter
complimenters
complimenting
compliments
comply
complying
component
componentry
components
componentwise
compose
composed
composedly
composer
composers
composes
composing
composite
composites
composition
compositional
compositions
compost
composure
compound
compounded
compounding
compounds
comprehend
comprehended
comprehending
comprehends
comprehensibility
comprehensible
comprehension
comprehensive
comprehensively
compress
compressed
compresses
compressible
compressing
compression
compressive
compressor
comprise
comprised
comprises
comprising
compromise
compromised
compromiser
compromisers
compromises
compromising
compromisingly
Compton
comptroller
comptrollers
compulsion
compulsions
compulsive
compulsory
compunction
Compuserve
computability
computable
computation
computational
computationally
computations
compute
computed
computer
computerize
computerized
computerizes
computerizing
computers
computes
computing
comrade
comradely
comrades
comradeship
con
Conakry
Conant
concatenate
concatenated
concatenates
concatenating
concatenation
concatenations
concave
conceal
concealed
concealer
concealers
concealing
concealment
conceals
concede
conceded
concedes
conceding
conceit
conceited
conceits
conceivable
conceivably
conceive
conceived
conceives
conceiving
concentrate
concentrated
concentrates
concentrating
concentration
concentrations
concentrator
concentrators
concentric
concept
conception
conceptions
concepts
conceptual
conceptualization
conceptualizations
conceptualize
conceptualized
conceptualizes
conceptualizing
conceptually
concern
concerned
concernedly
concerning
concerns
concert
concerted
concertmaster
concerto
concerts
concession
concessions
conciliate
conciliatory
concise
concisely
conciseness
conclave
conclude
concluded
concludes
concluding
conclusion
conclusions
conclusive
conclusively
concoct
concomitant
concord
concordant
Concorde
Concordia
concourse
concrete
concretely
concreteness
concretes
concretion
concubine
concur
concurred
concurrence
concurrencies
concurrency
concurrent
concurrently
concurring
concurs
concussion
condemn
condemnation
condemnations
condemned
condemner
condemners
condemning
condemns
condensation
condense
condensed
condenser
condenses
condensing
condescend
condescending
condition
conditional
conditionally
conditionals
conditioned
conditioner
conditioners
conditioning
conditions
condom
condone
condoned
condones
condoning
conduce
conducive
conduciveness
conduct
conductance
conducted
conducting
conduction
conductive
conductivity
conductor
conductors
conducts
conduit
cone
cones
Conestoga
confectionery
confederacy
confederate
confederates
confederation
confederations
confer
conferee
conference
conferences
conferred
conferrer
conferrers
conferring
confers
confess
confessed
confesses
confessing
confession
confessions
confessor
confessors
confidant
confidants
confide
confided
confidence
confidences
confident
confidential
confidentiality
confidentially
confidently
confides
confiding
confidingly
configurable
configuration
configurations
configure
configured
configures
configuring
confine
confined
confinement
confinements
confiner
confines
confining
confirm
confirmation
confirmations
confirmatory
confirmed
confirming
confirms
confiscate
confiscated
confiscates
confiscating
confiscation
confiscations
conflagration
conflict
conflicted
conflicting
conflicts
confluent
confocal
conform
conformal
conformance
conformed
conforming
conformity
conforms
confound
confounded
confounding
confounds
confront
confrontation
confrontations
confronted
confronter
confronters
confronting
confronts
Confucian
Confucianism
Confucius
confuse
confused
confuser
confusers
confuses
confusing
confusingly
confusion
confusions
congenial
congenially
congenital
congest
congested
congestion
congestive
conglomerate
Congo
Congolese
congratulate
congratulated
congratulation
congratulations
congratulatory
congregate
congregated
congregates
congregating
congregation
congregations
congress
congresses
congressional
congressionally
congressman
congressmen
congresswoman
congresswomen
congruence
congruent
conic
conifer
coniferous
conjecture
conjectured
conjectures
conjecturing
conjoined
conjugal
conjugate
conjunct
conjuncted
conjunction
conjunctions
conjunctive
conjunctively
conjuncts
conjuncture
conjure
conjured
conjurer
conjures
conjuring
Conklin
Conley
Connally
connect
connected
connectedness
Connecticut
connecting
connection
connectionless
connections
connective
connectives
connectivity
connector
connectors
connects
Connelly
Conner
Connie
connivance
connive
connoisseur
connoisseurs
Connors
connotation
connotative
connote
connoted
connotes
connoting
connubial
conquer
conquerable
conquered
conquerer
conquerers
conquering
conqueror
conquerors
conquers
conquest
conquests
Conrad
Conrail
conscience
consciences
conscientious
conscientiously
conscious
consciously
consciousness
conscript
conscription
consecrate
consecration
consecutive
consecutively
consensual
consensus
consent
consented
consenter
consenters
consenting
consents
consequence
consequences
consequent
consequential
consequentialities
consequentiality
consequently
consequents
conservation
conservationist
conservationists
conservations
conservatism
conservative
conservatively
conservatives
conservator
conserve
conserved
conserves
conserving
consider
considerable
considerably
considerate
considerately
consideration
considerations
considered
considering
considers
consign
consigned
consigning
consigns
consist
consisted
consistency
consistent
consistently
consisting
consists
consolable
consolation
consolations
console
consoled
consoler
consolers
consoles
consolidate
consolidated
consolidates
consolidating
consolidation
consoling
consolingly
consonant
consonants
consort
consorted
consorting
consortium
consorts
conspicuous
conspicuously
conspiracies
conspiracy
conspirator
conspirators
conspire
conspired
conspires
conspiring
constable
constables
Constance
constancy
constant
Constantine
Constantinople
constantly
constants
constellation
constellations
consternation
constituencies
constituency
constituent
constituents
constitute
constituted
constitutes
constituting
constitution
constitutional
constitutionality
constitutionally
constitutions
constitutive
constrain
constrained
constraining
constrains
constraint
constraints
constrict
construct
constructed
constructibility
constructible
constructing
construction
constructions
constructive
constructively
constructor
constructors
constructs
construe
construed
construing
consul
consular
consulate
consulates
consuls
consult
consultant
consultants
consultation
consultations
consultative
consulted
consulting
consults
consumable
consume
consumed
consumer
consumers
consumes
consuming
consummate
consummated
consummately
consummation
consumption
consumptions
consumptive
consumptively
contact
contacted
contacting
contacts
contagion
contagious
contagiously
contain
containable
contained
container
containers
containing
containment
containments
contains
contaminate
contaminated
contaminates
contaminating
contamination
contemplate
contemplated
contemplates
contemplating
contemplation
contemplations
contemplative
contemporaries
contemporariness
contemporary
contempt
contemptible
contemptuous
contemptuously
contend
contended
contender
contenders
contending
contends
content
contented
contenting
contention
contentions
contently
contentment
contents
contest
contestable
contestant
contested
contester
contesters
contesting
contests
context
contexts
contextual
contextually
contiguity
contiguous
contiguously
continent
continental
continentally
continents
contingencies
contingency
contingent
contingents
continual
continually
continuance
continuances
continuation
continuations
continue
continued
continues
continuing
continuities
continuity
continuous
continuously
continuum
contortions
contour
contoured
contouring
contours
contraband
contraception
contraceptive
contract
contracted
contracting
contraction
contractions
contractor
contractors
contracts
contractual
contractually
contradict
contradicted
contradicting
contradiction
contradictions
contradictory
contradicts
contradistinction
contradistinctions
contrapositive
contrapositives
contraption
contraptions
contrariness
contrary
contrast
contrasted
contraster
contrasters
contrasting
contrastingly
contrasts
contribute
contributed
contributes
contributing
contribution
contributions
contributor
contributorily
contributors
contributory
contrite
contrition
contrivance
contrivances
contrive
contrived
contriver
contrives
contriving
control
controllability
controllable
controllably
controlled
controller
controllers
controlling
controls
controversial
controversies
controversy
controvertible
contumacious
contumacy
conundrum
conundrums
Convair
convalescent
convect
convene
convened
convenes
convenience
conveniences
convenient
conveniently
convening
convent
convention
conventional
conventionally
conventions
convents
converge
converged
convergence
convergent
converges
converging
conversant
conversantly
conversation
conversational
conversationally
conversations
converse
conversed
conversely
converses
conversing
conversion
conversions
convert
converted
converter
converters
convertibility
convertible
converting
converts
convex
convey
conveyance
conveyances
conveyed
conveyer
conveyers
conveying
conveyor
conveys
convict
convicted
convicting
conviction
convictions
convicts
convince
convinced
convincer
convincers
convinces
convincing
convincingly
convivial
convoke
convoluted
convolution
convoy
convoyed
convoying
convoys
convulse
convulsion
convulsions
Conway
coo
cooing
cook
cookbook
Cooke
cooked
cookery
cookie
cookies
cooking
cooks
cooky
cool
cooled
cooler
coolers
coolest
Cooley
Coolidge
coolie
coolies
cooling
coolly
coolness
cools
coon
coons
coop
cooped
cooper
cooperate
cooperated
cooperates
cooperating
cooperation
cooperations
cooperative
cooperatively
cooperatives
cooperator
cooperators
coopers
coops
coordinate
coordinated
coordinates
coordinating
coordination
coordinations
coordinator
coordinators
Coors
cop
cope
coped
Copeland
Copenhagen
Copernican
Copernicus
copes
copied
copier
copiers
copies
coping
copings
copious
copiously
copiousness
coplanar
copper
Copperfield
copperhead
coppers
copra
coprocessor
cops
copse
copy
copying
copyright
copyrightable
copyrighted
copyrights
copywriter
coquette
coral
Corbett
Corcoran
cord
corded
corder
cordial
cordiality
cordially
cords
core
cored
corer
corers
cores
Corey
coriander
coring
Corinth
Corinthian
Corinthianize
Corinthianizes
Corinthians
Coriolanus
cork
corked
corker
corkers
corking
corks
corkscrew
cormorant
corn
cornea
Cornelia
Cornelian
Cornelius
Cornell
corner
cornered
corners
cornerstone
cornerstones
cornet
cornfield
cornfields
corning
Cornish
cornmeal
corns
cornstarch
cornucopia
Cornwall
Cornwallis
corny
corollaries
corollary
Coronado
coronaries
coronary
coronation
coroner
coronet
coronets
coroutine
coroutines
corporal
corporals
corporate
corporately
corporation
corporations
corps
corpse
corpses
corpulent
corpus
corpuscular
corral
correct
correctable
corrected
correcting
correction
corrections
corrective
correctively
correctives
correctly
correctness
corrector
corrects
correlate
correlated
correlates
correlating
correlation
correlations
correlative
correspond
corresponded
correspondence
correspondences
correspondent
correspondents
corresponding
correspondingly
corresponds
corridor
corridors
corrigenda
corrigendum
corrigible
corroborate
corroborated
corroborates
corroborating
corroboration
corroborations
corroborative
corrode
corrosion
corrosive
corrugate
corrupt
corrupted
corrupter
corruptible
corrupting
corruption
corruptions
corrupts
corset
Corsica
Corsican
cortex
Cortez
cortical
Cortland
Corvallis
Corvus
Corydoras
Cosgrove
cosine
cosines
cosmetic
cosmetics
cosmic
cosmology
cosmopolitan
cosmos
cosponsor
Cossack
cost
Costa
costed
Costello
costing
costly
costs
costume
costumed
costumer
costumes
costuming
cosy
cot
cotangent
cotillion
cots
cottage
cottager
cottages
cotton
cottonmouth
cottons
cottonseed
cottonwood
Cottrell
cotyledon
cotyledons
couch
couched
couches
couching
cougar
cough
coughed
coughing
coughs
could
coulomb
Coulter
council
councillor
councillors
councilman
councilmen
councils
councilwoman
councilwomen
counsel
counseled
counseling
counselled
counselling
counsellor
counsellors
counselor
counselors
counsels
count
countable
countably
counted
countenance
counter
counteract
counteracted
counteracting
counteractive
counterargument
counterattack
counterbalance
counterclockwise
countered
counterexample
counterexamples
counterfeit
counterfeited
counterfeiter
counterfeiting
counterflow
countering
counterintuitive
counterman
countermeasure
countermeasures
countermen
counterpart
counterparts
counterpoint
counterpointing
counterpoise
counterproductive
counterproposal
counterrevolution
counters
countersink
countersunk
countess
counties
counting
countless
countries
country
countryman
countrymen
countryside
countrywide
counts
county
countywide
couple
coupled
coupler
couplers
couples
coupling
couplings
coupon
coupons
courage
courageous
courageously
courier
couriers
course
coursed
courser
courses
coursing
court
courted
courteous
courteously
courter
courters
courtesan
courtesies
courtesy
courthouse
courthouses
courtier
courtiers
courting
courtly
Courtney
courtroom
courtrooms
courts
courtship
courtyard
courtyards
cousin
cousins
covalent
covariant
cove
covenant
covenants
Covent
Coventry
cover
coverable
coverage
covered
covering
coverings
coverlet
coverlets
covers
covert
covertly
coves
covet
coveted
coveting
covetous
covetousness
covets
cow
Cowan
coward
cowardice
cowardly
cowboy
cowboys
cowed
cower
cowered
cowerer
cowerers
cowering
coweringly
cowers
cowherd
cowhide
cowing
cowl
cowlick
cowling
cowls
coworker
cows
cowslip
cowslips
coyote
coyotes
coypu
cozier
coziness
cozy
crab
crabapple
crabs
crack
cracked
cracker
crackers
cracking
crackle
crackled
crackles
crackling
crackpot
cracks
cradle
cradled
cradles
craft
crafted
crafter
craftiness
crafting
crafts
craftsman
craftsmen
craftspeople
craftsperson
crafty
crag
craggy
crags
Craig
cram
Cramer
cramming
cramp
cramps
crams
cranberries
cranberry
Crandall
crane
cranes
Cranford
crania
cranium
crank
crankcase
cranked
crankier
crankiest
crankily
cranking
cranks
crankshaft
cranky
cranny
Cranston
crash
crashed
crasher
crashers
crashes
crashing
crass
crate
crater
craters
crates
cravat
cravats
crave
craved
craven
craves
craving
Crawford
crawl
crawled
crawler
crawlers
crawling
crawls
Cray
crayon
Crays
craze
crazed
crazes
crazier
craziest
crazily
craziness
crazing
crazy
creak
creaked
creaking
creaks
creaky
cream
creamed
creamer
creamers
creamery
creaming
creams
creamy
crease
creased
creases
creasing
create
created
creates
creating
creation
creations
creative
creatively
creativeness
creativity
creator
creators
creature
creatures
credence
credential
credibility
credible
credibly
credit
creditable
creditably
credited
crediting
creditor
creditors
credits
credulity
credulous
credulousness
Cree
creed
creeds
creek
creeks
creep
creeper
creepers
creeping
creeps
creepy
Creighton
cremate
cremated
cremates
cremating
cremation
cremations
crematory
Creole
Creon
crepe
crept
crescent
crescents
crest
crested
crestfallen
crests
Crestview
Cretaceous
Cretaceously
Cretan
Crete
cretin
crevice
crevices
crew
crewcut
crewed
crewing
crews
crib
cribs
cricket
crickets
cried
crier
criers
cries
crime
Crimea
Crimean
crimes
criminal
criminally
criminals
criminate
crimson
crimsoning
cringe
cringed
cringes
cringing
cripple
crippled
cripples
crippling
crises
crisis
crisp
Crispin
crisply
crispness
crisscross
criteria
criterion
critic
critical
critically
criticism
criticisms
criticize
criticized
criticizes
criticizing
critics
critique
critiques
critiquing
critter
croak
croaked
croaking
croaks
Croatia
Croatian
crochet
crochets
crock
crockery
Crockett
crocks
crocodile
crocus
croft
Croix
Cromwell
Cromwellian
crook
crooked
crooks
crop
cropped
cropper
croppers
cropping
crops
Crosby
cross
crossable
crossbar
crossbars
crossed
crosser
crossers
crosses
crossing
crossings
crossly
crossover
crossovers
crosspoint
crossroad
crosstalk
crosswalk
crossword
crosswords
crotch
crotchety
crouch
crouched
crouching
crow
crowd
crowded
crowder
crowding
crowds
crowed
crowing
Crowley
crown
crowned
crowning
crowns
crows
Croydon
crucial
crucially
crucible
crucified
crucifies
crucifix
crucifixion
crucify
crucifying
crud
cruddy
crude
crudely
crudeness
cruder
crudest
cruel
crueler
cruelest
cruelly
cruelty
Cruickshank
cruise
cruiser
cruisers
cruises
cruising
crumb
crumble
crumbled
crumbles
crumbling
crumbly
crumbs
crummy
crumple
crumpled
crumples
crumpling
crunch
crunched
crunches
crunchier
crunchiest
crunching
crunchy
crusade
crusader
crusaders
crusades
crusading
crush
crushable
crushed
crusher
crushers
crushes
crushing
crushingly
Crusoe
crust
crustacean
crustaceans
crusts
crutch
crutches
crux
cruxes
Cruz
cry
crying
cryogenic
crypt
cryptanalysis
cryptanalyst
cryptanalytic
cryptic
cryptogram
cryptographer
cryptographic
cryptographically
cryptography
cryptologist
cryptology
crystal
crystalline
crystallize
crystallized
crystallizes
crystallizing
crystals
cub
Cuba
Cuban
Cubanize
Cubanizes
Cubans
cubbyhole
cube
cubed
cubes
cubic
cubs
cuckoo
cuckoos
cucumber
cucumbers
cuddle
cuddled
cuddly
cudgel
cudgels
cue
cued
cues
cuff
cufflink
cuffs
cuisine
Culbertson
culinary
cull
culled
culler
culling
culls
culminate
culminated
culminates
culminating
culmination
culpa
culpable
culprit
culprits
cult
cultivable
cultivate
cultivated
cultivates
cultivating
cultivation
cultivations
cultivator
cultivators
cults
cultural
culturally
culture
cultured
cultures
culturing
Culver
Culvers
Cumberland
cumbersome
Cummings
Cummins
cumulative
cumulatively
Cunard
cunnilingus
cunning
Cunningham
cunningly
cup
cupboard
cupboards
Cupertino
cupful
Cupid
cupped
cupping
cups
curable
curably
curb
curbing
curbs
curd
curdle
cure
cured
cures
curfew
curfews
curing
curiosities
curiosity
curious
curiouser
curiousest
curiously
curl
curled
curler
curlers
curlicue
curling
curls
curly
Curran
currant
currants
currencies
currency
current
currently
currentness
currents
curricular
curriculum
curriculums
curried
curries
curry
currying
curs
curse
cursed
curses
cursing
cursive
cursor
cursorily
cursors
cursory
curt
curtail
curtailed
curtails
curtain
curtained
curtains
curtate
Curtis
curtly
curtness
curtsies
curtsy
curvaceous
curvature
curve
curved
curves
curvilinear
curving
Cushing
cushion
cushioned
cushioning
cushions
Cushman
cusp
cusps
custard
Custer
custodial
custodian
custodians
custody
custom
customarily
customary
customer
customers
customizable
customization
customizations
customize
customized
customizer
customizers
customizes
customizing
customs
cut
cutaneous
cutback
cute
cutest
cutlass
cutlet
cutoff
cutout
cutover
cuts
cutter
cutters
cutthroat
cutting
cuttingly
cuttings
cuttlefish
Cuvier
Cuzco
Cyanamid
cyanide
cybernetic
cybernetics
cyberspace
Cyclades
cycle
cycled
cycles
cyclic
cyclically
cycling
cycloid
cycloidal
cycloids
cyclone
cyclones
Cyclops
cyclotron
cyclotrons
Cygnus
cylinder
cylinders
cylindrical
cymbal
cymbals
cynic
cynical
cynically
Cynthia
cypress
Cyprian
Cypriot
Cyprus
Cyril
Cyrillic
Cyrus
cyst
cysts
cytology
cytoplasm
czar
Czech
Czechization
Czechizations
Czechoslovakia
Czerniak
dabble
dabbled
dabbler
dabbles
dabbling
Dacca
Dacron
dactyl
dactylic
dad
Dada
Dadaism
Dadaist
Dadaistic
daddy
Dade
dads
Daedalus
daemon
daemons
daffodil
daffodils
dagger
Dahl
dahlia
Dahomey
Dailey
dailies
daily
Daimler
daintily
daintiness
dainty
dairy
Dairylea
daisies
daisy
Dakar
Dakota
dale
dales
Daley
Dalhousie
Dali
Dallas
Dalton
Daly
Dalzell
dam
damage
damaged
damager
damagers
damages
damaging
Damascus
damask
dame
damming
damn
damnation
damned
damning
damns
Damocles
Damon
damp
dampen
dampens
damper
damping
dampness
dams
damsel
damsels
Dan
Dana
Danbury
dance
danced
dancer
dancers
dances
dancing
dandelion
dandelions
dandy
Dane
Danes
danger
dangerous
dangerously
dangers
dangle
dangled
dangles
dangling
Daniel
Daniels
Danielson
Danish
Danization
Danizations
Danize
Danizes
Danny
Dante
Danube
Danubian
Danville
Danzig
Daphne
Dar
dare
dared
darer
darers
dares
daresay
daring
daringly
Darius
dark
darken
darker
darkest
darkly
darkness
darkroom
Darlene
darling
darlings
Darlington
darn
darned
darner
darning
darns
DARPA
Darrell
Darrow
Darry
dart
darted
darter
darting
Dartmouth
darts
Darwin
Darwinian
Darwinism
Darwinistic
Darwinize
Darwinizes
dash
dashboard
dashed
dasher
dashers
dashes
dashing
dashingly
data
database
databases
datagram
datagrams
Datamation
Datamedia
date
dated
dateline
dater
dates
dating
dative
Datsun
datum
Daugherty
daughter
daughterly
daughters
daunt
daunted
dauntless
Dave
David
Davidson
Davie
Davies
Davinich
Davis
Davison
Davy
dawn
dawned
dawning
dawns
Dawson
day
daybreak
daydream
daydreaming
daydreams
daylight
daylights
days
daytime
Dayton
Daytona
daze
dazed
dazzle
dazzled
dazzler
dazzles
dazzling
dazzlingly
De
deacon
deacons
deactivate
dead
deaden
deadline
deadlines
deadlock
deadlocked
deadlocking
deadlocks
deadly
deadness
deadwood
deaf
deafen
deafer
deafest
deafness
deal
dealer
dealers
dealership
dealing
dealings
deallocate
deallocated
deallocating
deallocation
deallocations
deals
dealt
dean
Deane
Deanna
deans
dear
Dearborn
dearer
dearest
dearly
dearness
dearth
dearths
death
deathbed
deathly
deaths
debacle
debar
debase
debatable
debate
debated
debater
debaters
debates
debating
debauch
debauchery
Debbie
Debby
debilitate
debilitated
debilitates
debilitating
debility
debit
debited
Deborah
Debra
debrief
debris
debt
debtor
debts
debug
debugged
debugger
debuggers
debugging
debugs
debunk
Debussy
debutante
DEC
decade
decadence
decadent
decadently
decades
decal
decathlon
Decatur
decay
decayed
decaying
decays
Decca
decease
deceased
deceases
deceasing
decedent
deceit
deceitful
deceitfully
deceitfulness
deceive
deceived
deceiver
deceivers
deceives
deceiving
decelerate
decelerated
decelerates
decelerating
deceleration
December
Decembers
decencies
decency
decennial
decent
decently
decentralization
decentralized
deception
deceptions
deceptive
deceptively
decertify
decibel
decidability
decidable
decide
decided
decidedly
decides
deciding
deciduous
decimal
decimals
decimate
decimated
decimates
decimating
decimation
decipher
deciphered
decipherer
deciphering
deciphers
decision
decisions
decisive
decisively
decisiveness
deck
decked
Decker
decking
deckings
decks
declaration
declarations
declarative
declaratively
declaratives
declarator
declaratory
declare
declared
declarer
declarers
declares
declaring
declassify
declination
declinations
decline
declined
decliner
decliners
declines
declining
DECnet
decode
decoded
decoder
decoders
decodes
decoding
decodings
decolletage
decollimate
decompile
decomposability
decomposable
decompose
decomposed
decomposes
decomposing
decomposition
decompositions
decompress
decompression
decorate
decorated
decorates
decorating
decoration
decorations
decorative
decorum
decouple
decoupled
decouples
decoupling
decoy
decoys
decrease
decreased
decreases
decreasing
decreasingly
decree
decreed
decreeing
decrees
decrement
decremented
decrementing
decrements
decrypt
decrypted
decrypting
decryption
decrypts
DECstation
DECsystem
DECtape
dedicate
dedicated
dedicates
dedicating
dedication
deduce
deduced
deducer
deduces
deducible
deducing
deduct
deducted
deductible
deducting
deduction
deductions
deductive
Dee
deed
deeded
deeding
deeds
deem
deemed
deeming
deemphasize
deemphasized
deemphasizes
deemphasizing
deems
deep
deepen
deepened
deepening
deepens
deeper
deepest
deeply
deeps
deer
Deere
deface
default
defaulted
defaulter
defaulting
defaults
defeat
defeated
defeating
defeats
defecate
defect
defected
defecting
defection
defections
defective
defects
defend
defendant
defendants
defended
defender
defenders
defending
defends
defenestrate
defenestrated
defenestrates
defenestrating
defenestration
defense
defenseless
defenses
defensible
defensive
defer
deference
deferment
deferments
deferrable
deferred
deferrer
deferrers
deferring
defers
defiance
defiant
defiantly
deficiencies
deficiency
deficient
deficit
deficits
defied
defies
defile
defiling
definable
define
defined
definer
defines
defining
definite
definitely
definiteness
definition
definitional
definitions
definitive
deflate
deflater
deflect
defocus
Defoe
deforest
deforestation
deform
deformation
deformations
deformed
deformities
deformity
defraud
defray
defrost
deftly
defunct
defy
defying
degeneracy
degenerate
degenerated
degenerates
degenerating
degeneration
degenerative
degradable
degradation
degradations
degrade
degraded
degrades
degrading
degree
degrees
dehumidify
dehydrate
deify
deign
deigned
deigning
deigns
Deimos
Deirdre
Deirdres
deities
deity
dejected
dejectedly
DeKalb
DeKastere
Del
Delaney
Delano
Delaware
delay
delayed
delaying
delays
delegate
delegated
delegates
delegating
delegation
delegations
delete
deleted
deleter
deleterious
deletes
deleting
deletion
deletions
Delft
Delhi
Delia
deliberate
deliberated
deliberately
deliberateness
deliberates
deliberating
deliberation
deliberations
deliberative
deliberator
deliberators
delicacies
delicacy
delicate
delicately
delicatessen
delicious
deliciously
delight
delighted
delightedly
delightful
delightfully
delighting
delights
Delilah
delimit
delimitation
delimited
delimiter
delimiters
delimiting
delimits
delineament
delineate
delineated
delineates
delineating
delineation
delinquency
delinquent
delirious
deliriously
delirium
deliver
deliverable
deliverables
deliverance
delivered
deliverer
deliverers
deliveries
delivering
delivers
delivery
dell
Della
dells
Dellwood
Delmarva
Delphi
Delphic
Delphically
Delphinus
delta
deltas
delude
deluded
deludes
deluding
deluge
deluged
deluges
delusion
delusions
deluxe
delve
delves
delving
demagnify
demagogue
demand
demanded
demander
demanding
demandingly
demands
demarcate
demeanor
demented
demerit
Demeter
demigod
demise
demo
democracies
democracy
democrat
democratic
democratically
democrats
demodulate
demodulator
demographic
demolish
demolished
demolishes
demolition
demon
demoniac
demonic
demons
demonstrable
demonstrate
demonstrated
demonstrates
demonstrating
demonstration
demonstrations
demonstrative
demonstratively
demonstrator
demonstrators
demoralize
demoralized
demoralizes
demoralizing
DeMorgan
demote
demountable
Dempsey
demultiplex
demultiplexed
demultiplexer
demultiplexers
demultiplexing
demur
demythologize
den
denature
Deneb
Denebola
Deneen
deniable
denial
denials
denied
denier
denies
denigrate
denigrated
denigrates
denigrating
denizen
Denmark
Dennis
Denny
denominate
denomination
denominations
denominator
denominators
denotable
denotation
denotational
denotationally
denotations
denotative
denote
denoted
denotes
denoting
denounce
denounced
denounces
denouncing
dens
dense
densely
denseness
denser
densest
densities
density
dent
dental
dentally
dented
denting
dentist
dentistry
dentists
Denton
dents
denture
denude
denumerable
denunciate
denunciation
Denver
deny
denying
deodorant
deoxyribonucleic
depart
departed
departing
department
departmental
departments
departs
departure
departures
depend
dependability
dependable
dependably
depended
dependence
dependencies
dependency
dependent
dependently
dependents
depending
depends
depict
depicted
depicting
depicts
deplete
depleted
depletes
depleting
depletion
depletions
deplorable
deplore
deplored
deplores
deploring
deploy
deployed
deploying
deployment
deployments
deploys
deport
deportation
deportee
deportment
depose
deposed
deposes
deposit
depositary
deposited
depositing
deposition
depositions
depositor
depositors
depository
deposits
depot
depots
deprave
depraved
depravity
deprecate
depreciate
depreciated
depreciates
depreciation
depress
depressed
depresses
depressing
depression
depressions
deprivation
deprivations
deprive
deprived
deprives
depriving
depth
depths
deputies
deputy
dequeue
dequeued
dequeues
dequeuing
derail
derailed
derailing
derails
derby
Derbyshire
dereference
deregulate
deregulated
Derek
deride
derision
derivable
derivation
derivations
derivative
derivatives
derive
derived
derives
deriving
derogatory
derrick
derriere
dervish
Des
Descartes
descend
descendant
descendants
descended
descendent
descender
descenders
descending
descends
descent
descents
describable
describe
described
describer
describes
describing
description
descriptions
descriptive
descriptively
descriptives
descriptor
descriptors
descry
desecrate
desegregate
desert
deserted
deserter
deserters
deserting
desertion
desertions
deserts
deserve
deserved
deserves
deserving
deservingly
deservings
desiderata
desideratum
design
designate
designated
designates
designating
designation
designations
designator
designators
designed
designer
designers
designing
designs
desirability
desirable
desirably
desire
desired
desires
desiring
desirous
desist
desk
desks
desktop
Desmond
desolate
desolately
desolation
desolations
despair
despaired
despairing
despairingly
despairs
despatch
despatched
desperado
desperate
desperately
desperation
despicable
despise
despised
despises
despising
despite
despoil
despondent
despot
despotic
despotism
despots
dessert
desserts
dessicate
destabilize
destination
destinations
destine
destined
destinies
destiny
destitute
destitution
destroy
destroyed
destroyer
destroyers
destroying
destroys
destruct
destruction
destructions
destructive
destructively
destructiveness
destructor
destuff
destuffing
destuffs
desuetude
desultory
desynchronize
detach
detached
detacher
detaches
detaching
detachment
detachments
detail
detailed
detailing
details
detain
detained
detaining
detains
detect
detectable
detectably
detected
detecting
detection
detections
detective
detectives
detector
detectors
detects
detente
detention
deter
detergent
deteriorate
deteriorated
deteriorates
deteriorating
deterioration
determinable
determinacy
determinant
determinants
determinate
determinately
determination
determinations
determinative
determine
determined
determiner
determiners
determines
determining
determinism
deterministic
deterministically
deterred
deterrent
deterring
detest
detestable
detested
detour
detract
detractor
detractors
detracts
detriment
detrimental
Detroit
deuce
deus
deuterium
Deutsch
devastate
devastated
devastates
devastating
devastation
develop
developed
developer
developers
developing
development
developmental
developments
develops
deviant
deviants
deviate
deviated
deviates
deviating
deviation
deviations
device
devices
devil
devilish
devilishly
devils
devious
devise
devised
devises
devising
devisings
devoid
devolve
Devon
Devonshire
devote
devoted
devotedly
devotee
devotees
devotes
devoting
devotion
devotions
devour
devoured
devourer
devours
devout
devoutly
devoutness
dew
dewdrop
dewdrops
Dewey
Dewitt
dewy
Dexedrine
dexterity
Dhabi
diabetes
diabetic
diabolic
diachronic
diacritical
diadem
diagnosable
diagnose
diagnosed
diagnoses
diagnosing
diagnosis
diagnostic
diagnostician
diagnostics
diagonal
diagonally
diagonals
diagram
diagrammable
diagrammatic
diagrammatically
diagrammed
diagrammer
diagrammers
diagramming
diagrams
dial
dialect
dialectic
dialects
dialed
dialer
dialers
dialing
dialog
dialogs
dialogue
dialogues
dials
dialup
dialysis
diamagnetic
diameter
diameters
diametric
diametrically
diamond
diamonds
Diana
Diane
Dianne
diaper
diapers
diaphragm
diaphragms
diaries
diarrhea
diary
diatribe
diatribes
dibble
dice
dichotomize
dichotomy
dickens
Dickerson
Dickinson
Dickson
dicky
dictate
dictated
dictates
dictating
dictation
dictations
dictator
dictatorial
dictators
dictatorship
diction
dictionaries
dictionary
dictum
dictums
did
didactic
diddle
Dido
die
Diebold
died
Diego
diehard
dielectric
dielectrics
diem
dies
diesel
diet
dietary
dieter
dieters
dietetic
dietician
dietitian
dietitians
Dietrich
diets
Dietz
differ
differed
difference
differences
different
differentiable
differential
differentials
differentiate
differentiated
differentiates
differentiating
differentiation
differentiations
differentiators
differently
differer
differers
differing
differs
difficult
difficulties
difficultly
difficulty
diffract
diffuse
diffused
diffusely
diffuser
diffusers
diffuses
diffusible
diffusing
diffusion
diffusions
diffusive
dig
digest
digested
digestible
digesting
digestion
digestive
digests
digger
diggers
digging
diggings
digit
digital
digitalis
digitally
digitization
digitize
digitized
digitizes
digitizing
digits
dignified
dignify
dignitary
dignities
dignity
digram
digress
digressed
digresses
digressing
digression
digressions
digressive
digs
dihedral
Dijkstra
Dijon
dike
dikes
dilapidate
dilatation
dilate
dilated
dilates
dilating
dilation
dildo
dilemma
dilemmas
diligence
diligent
diligently
dill
Dillon
dilogarithm
dilute
diluted
dilutes
diluting
dilution
dim
DiMaggio
dime
dimension
dimensional
dimensionality
dimensionally
dimensioned
dimensioning
dimensions
dimes
diminish
diminished
diminishes
diminishing
diminution
diminutive
dimly
dimmed
dimmer
dimmers
dimmest
dimming
dimness
dimple
dims
din
Dinah
dine
dined
diner
diners
dines
ding
dinghy
dinginess
dingo
dingy
dining
dinner
dinners
dinnertime
dinnerware
dinosaur
dint
Diocletian
diode
diodes
Diogenes
Dion
Dionysian
Dionysus
Diophantine
diopter
diorama
dioxide
dip
diphtheria
diphthong
diploma
diplomacy
diplomas
diplomat
diplomatic
diplomats
dipole
dipped
dipper
dippers
dipping
dippings
dips
Dirac
dire
direct
directed
directing
direction
directional
directionality
directionally
directions
directive
directives
directly
directness
director
directorate
directories
directors
directory
directrices
directrix
directs
dirge
dirges
Dirichlet
dirt
dirtier
dirtiest
dirtily
dirtiness
dirts
dirty
Dis
disabilities
disability
disable
disabled
disabler
disablers
disables
disabling
disadvantage
disadvantageous
disadvantages
disaffected
disaffection
disagree
disagreeable
disagreed
disagreeing
disagreement
disagreements
disagrees
disallow
disallowed
disallowing
disallows
disambiguate
disambiguated
disambiguates
disambiguating
disambiguation
disambiguations
disappear
disappearance
disappearances
disappeared
disappearing
disappears
disappoint
disappointed
disappointing
disappointment
disappointments
disapproval
disapprove
disapproved
disapproves
disarm
disarmament
disarmed
disarming
disarms
disassemble
disassembled
disassembles
disassembling
disassembly
disaster
disasters
disastrous
disastrously
disband
disbanded
disbanding
disbands
disburse
disbursed
disbursement
disbursements
disburses
disbursing
disc
discard
discarded
discarding
discards
discern
discerned
discernibility
discernible
discernibly
discerning
discerningly
discernment
discerns
discharge
discharged
discharges
discharging
disciple
disciples
disciplinary
discipline
disciplined
disciplines
disciplining
disclaim
disclaimed
disclaimer
disclaims
disclose
disclosed
discloses
disclosing
disclosure
disclosures
discomfort
disconcert
disconcerting
disconcertingly
disconnect
disconnected
disconnecting
disconnection
disconnects
discontent
discontented
discontinuance
discontinue
discontinued
discontinues
discontinuities
discontinuity
discontinuous
discord
discordant
discount
discounted
discounting
discounts
discourage
discouraged
discouragement
discourages
discouraging
discourse
discourses
discover
discovered
discoverer
discoverers
discoveries
discovering
discovers
discovery
discredit
discredited
discreet
discreetly
discrepancies
discrepancy
discrete
discretely
discreteness
discretion
discretionary
discriminant
discriminate
discriminated
discriminates
discriminating
discrimination
discriminatory
discs
discuss
discussant
discussed
discusses
discussing
discussion
discussions
disdain
disdaining
disdains
disease
diseased
diseases
disembowel
disengage
disengaged
disengages
disengaging
disentangle
disentangling
disfigure
disfigured
disfigures
disfiguring
disgorge
disgrace
disgraced
disgraceful
disgracefully
disgraces
disgruntle
disgruntled
disguise
disguised
disguises
disgust
disgusted
disgustedly
disgustful
disgusting
disgustingly
disgusts
dish
dishearten
disheartening
dished
dishes
dishevel
dishing
dishonest
dishonestly
dishonesty
dishonor
dishonorable
dishonored
dishonoring
dishonors
dishwasher
dishwashers
dishwashing
dishwater
disillusion
disillusioned
disillusioning
disillusionment
disillusionments
disinclined
disingenuous
disinterested
disinterestedness
disjoint
disjointed
disjointly
disjointness
disjunct
disjunction
disjunctions
disjunctive
disjunctively
disjuncts
disk
diskette
diskettes
disks
dislike
disliked
dislikes
disliking
dislocate
dislocated
dislocates
dislocating
dislocation
dislocations
dislodge
dislodged
dismal
dismally
dismay
dismayed
dismaying
dismember
dismembered
dismemberment
dismembers
dismiss
dismissal
dismissals
dismissed
dismisser
dismissers
dismisses
dismissing
dismount
dismounted
dismounting
dismounts
Disney
Disneyland
disobedience
disobedient
disobey
disobeyed
disobeying
disobeys
disorder
disordered
disorderly
disorders
disorganized
disown
disowned
disowning
disowns
disparage
disparate
disparities
disparity
dispassionate
dispatch
dispatched
dispatcher
dispatchers
dispatches
dispatching
dispel
dispell
dispelled
dispelling
dispels
dispensary
dispensation
dispense
dispensed
dispenser
dispensers
dispenses
dispensing
dispersal
disperse
dispersed
disperses
dispersing
dispersion
dispersions
displace
displaced
displacement
displacements
displaces
displacing
display
displayable
displayed
displayer
displaying
displays
displease
displeased
displeases
displeasing
displeasure
disposable
disposal
disposals
dispose
disposed
disposer
disposes
disposing
disposition
dispositions
dispossessed
disproportionate
disprove
disproved
disproves
disproving
dispute
disputed
disputer
disputers
disputes
disputing
disqualification
disqualified
disqualifies
disqualify
disqualifying
disquiet
disquieting
Disraeli
disregard
disregarded
disregarding
disregards
disrespectful
disrupt
disrupted
disrupting
disruption
disruptions
disruptive
disrupts
dissatisfaction
dissatisfactions
dissatisfactory
dissatisfied
dissect
dissects
dissemble
disseminate
disseminated
disseminates
disseminating
dissemination
dissension
dissensions
dissent
dissented
dissenter
dissenters
dissenting
dissents
dissertation
dissertations
disservice
dissident
dissidents
dissimilar
dissimilarities
dissimilarity
dissipate
dissipated
dissipates
dissipating
dissipation
dissociate
dissociated
dissociates
dissociating
dissociation
dissolution
dissolutions
dissolve
dissolved
dissolves
dissolving
dissonant
dissuade
distaff
distal
distally
distance
distances
distant
distantly
distaste
distasteful
distastefully
distastes
distemper
distempered
distempers
distill
distillation
distilled
distiller
distillers
distillery
distilling
distills
distinct
distinction
distinctions
distinctive
distinctively
distinctiveness
distinctly
distinctness
distinguish
distinguishable
distinguished
distinguishes
distinguishing
distort
distorted
distorting
distortion
distortions
distorts
distract
distracted
distracting
distraction
distractions
distracts
distraught
distress
distressed
distresses
distressing
distribute
distributed
distributes
distributing
distribution
distributional
distributions
distributive
distributivity
distributor
distributors
district
districts
distrust
distrusted
disturb
disturbance
disturbances
disturbed
disturber
disturbing
disturbingly
disturbs
disuse
ditch
ditches
dither
ditto
ditty
Ditzel
diurnal
divan
divans
dive
dived
diver
diverge
diverged
divergence
divergences
divergent
diverges
diverging
divers
diverse
diversely
diversification
diversified
diversifies
diversify
diversifying
diversion
diversionary
diversions
diversities
diversity
divert
diverted
diverting
diverts
dives
divest
divested
divesting
divestiture
divests
divide
divided
dividend
dividends
divider
dividers
divides
dividing
divine
divinely
diviner
diving
divining
divinities
divinity
divisibility
divisible
division
divisional
divisions
divisive
divisor
divisors
divorce
divorced
divorcee
divulge
divulged
divulges
divulging
Dixie
Dixiecrats
Dixieland
Dixon
dizziness
dizzy
Djakarta
Dmitri
Dnieper
do
Dobbin
Dobbs
Doberman
Doc
docile
dock
docked
docket
docks
dockside
dockyard
doctor
doctoral
doctorate
doctorates
doctored
doctors
doctrinaire
doctrinal
doctrine
doctrines
document
documentaries
documentary
documentation
documentations
documented
documenter
documenters
documenting
documents
Dodd
dodecahedra
dodecahedral
dodecahedron
dodge
dodged
dodger
dodgers
dodging
Dodington
Dodson
doe
doer
doers
does
dog
Doge
dogged
doggedly
doggedness
dogging
doghouse
dogma
dogmas
dogmatic
dogmatism
dogs
Dogtown
Doherty
doing
doings
Dolan
doldrum
dole
doled
doleful
dolefully
doles
doll
dollar
dollars
dollies
dolls
dolly
Dolores
dolphin
dolphins
domain
domains
dome
domed
Domenico
domes
Domesday
domestic
domestically
domesticate
domesticated
domesticates
domesticating
domestication
domicile
dominance
dominant
dominantly
dominate
dominated
dominates
dominating
domination
domineer
domineering
Domingo
Dominic
Dominican
Dominicans
Dominick
dominion
Dominique
domino
don
Donahue
Donald
Donaldson
donate
donated
donates
donating
donation
done
Doneck
donkey
donkeys
Donna
Donnelly
Donner
donnybrook
donor
Donovan
dons
doodle
Dooley
Doolittle
doom
doomed
dooming
dooms
doomsday
door
doorbell
doorkeeper
doorman
doormen
doors
doorstep
doorsteps
doorway
doorways
dope
doped
doper
dopers
dopes
doping
Doppler
Dora
Dorado
Dorcas
Dorchester
Doreen
Doria
Doric
Doricize
Doricizes
Doris
dormant
dormitories
dormitory
Dorothea
Dorothy
Dorset
Dortmund
dosage
dose
dosed
doses
dossier
dossiers
Dostoevsky
dot
dote
doted
dotes
doting
dotingly
dots
dotted
dotting
double
doubled
Doubleday
doubleheader
doubler
doublers
doubles
doublet
doubleton
doublets
doubling
doubloon
doubly
doubt
doubtable
doubted
doubter
doubters
doubtful
doubtfully
doubting
doubtless
doubtlessly
doubts
Doug
dough
Dougherty
doughnut
doughnuts
Douglas
Douglass
dove
dover
doves
dovetail
Dow
dowager
dowel
Dowling
down
downcast
downed
downers
Downey
downfall
downfallen
downgrade
downhill
Downing
downlink
downlinks
download
downloaded
downloading
downloads
downplay
downplayed
downplaying
downplays
downpour
downright
Downs
downside
downstairs
downstream
downtown
downtowns
downtrodden
downturn
downward
downwards
downy
dowry
Doyle
doze
dozed
dozen
dozens
dozenth
dozes
dozing
drab
Draco
Draconian
draft
drafted
draftee
drafter
drafters
drafting
drafts
draftsman
draftsmen
drafty
drag
dragged
dragging
dragnet
dragon
dragonfly
dragonhead
dragons
dragoon
dragooned
dragoons
drags
drain
drainage
drained
drainer
draining
drains
drake
dram
drama
Dramamine
dramas
dramatic
dramatically
dramatics
dramatist
dramatists
drank
drape
draped
draper
draperies
drapers
drapery
drapes
drastic
drastically
draught
draughts
Dravidian
draw
drawback
drawbacks
drawbridge
drawbridges
drawer
drawers
drawing
drawings
drawl
drawled
drawling
drawls
drawn
drawnly
drawnness
draws
dread
dreaded
dreadful
dreadfully
dreading
dreadnought
dreads
dream
dreamboat
dreamed
dreamer
dreamers
dreamily
dreaming
dreamlike
dreams
dreamt
dreamy
dreariness
dreary
dredge
dregs
drench
drenched
drenches
drenching
dress
dressed
dresser
dressers
dresses
dressing
dressings
dressmaker
dressmakers
drew
Drexel
Dreyfuss
dried
drier
driers
dries
driest
drift
drifted
drifter
drifters
drifting
drifts
drill
drilled
driller
drilling
drills
drily
drink
drinkable
drinker
drinkers
drinking
drinks
drip
dripping
drippy
drips
Driscoll
drive
driven
driver
drivers
drives
driveway
driveways
driving
drizzle
drizzly
droll
dromedary
drone
drones
drool
droop
drooped
drooping
droops
droopy
drop
droplet
dropout
dropped
dropper
droppers
dropping
droppings
drops
drosophila
drought
droughts
drove
drover
drovers
droves
drown
drowned
drowning
drownings
drowns
drowsiness
drowsy
drubbing
drudge
drudgery
drug
druggist
druggists
drugs
drugstore
drum
drumhead
drummed
drummer
drummers
drumming
Drummond
drums
drunk
drunkard
drunkards
drunken
drunkenness
drunker
drunkly
drunks
Drury
dry
Dryden
drying
dryly
dual
dualism
dualities
duality
Duane
dub
dubbed
Dubhe
dubious
dubiously
dubiousness
Dublin
dubs
Dubuque
duchess
duchesses
duchy
duck
ducked
ducking
duckling
ducks
duct
ducts
dud
Dudley
due
duel
dueling
duels
dues
duet
Duffy
dug
Dugan
duke
dukes
dull
dulled
duller
Dulles
dullest
dulling
dullness
dulls
dully
Duluth
duly
dumb
dumbbell
dumbbells
dumber
dumbest
dumbly
dumbness
dummies
dummy
dump
dumped
dumper
dumping
dumps
Dumpty
Dunbar
Duncan
dunce
dunces
Dundee
dune
Dunedin
dunes
dung
dungeon
dungeons
Dunham
dunk
Dunkirk
Dunlap
Dunlop
Dunn
Dunne
dupe
duplex
duplicable
duplicate
duplicated
duplicates
duplicating
duplication
duplications
duplicator
duplicators
duplicity
DuPont
Dupont
DuPonts
Duponts
Duquesne
durabilities
durability
durable
durably
Durango
duration
durations
Durer
Durers
duress
Durham
during
Durkee
Durkin
Durrell
Durward
Dusenberg
Dusenbury
dusk
duskiness
dusky
Dusseldorf
dust
dustbin
dusted
duster
dusters
dustier
dustiest
Dustin
dusting
dusts
dusty
Dutch
dutchess
Dutchman
Dutchmen
duties
dutiful
dutifully
dutifulness
Dutton
duty
Dvorak
dwarf
dwarfed
dwarfs
dwarves
dwell
dwelled
dweller
dwellers
dwelling
dwellings
dwells
dwelt
Dwight
dwindle
dwindled
dwindling
Dwyer
dyad
dyadic
dye
dyed
dyeing
dyer
dyers
dyes
dying
Dyke
Dylan
dynamic
dynamically
dynamics
dynamism
dynamite
dynamited
dynamites
dynamiting
dynamo
dynastic
dynasties
dynasty
dyne
dysentery
dyspeptic
dystrophy
each
Eagan
eager
eagerly
eagerness
eagle
eagles
ear
eardrum
eared
earl
earlier
earliest
earliness
earls
early
earmark
earmarked
earmarking
earmarkings
earmarks
earn
earned
earner
earners
earnest
earnestly
earnestness
earning
earnings
earns
Earp
earphone
earring
earrings
ears
earsplitting
earth
earthen
earthenware
earthliness
earthling
earthly
Earthman
Earthmen
earthmover
earthquake
earthquakes
earths
earthworm
earthworms
earthy
ease
eased
easel
easement
easements
eases
easier
easiest
easily
easiness
easing
east
eastbound
easter
eastern
easterner
easterners
easternmost
Easthampton
Eastland
Eastman
eastward
eastwards
Eastwick
Eastwood
easy
easygoing
eat
eaten
eater
eaters
eating
eatings
Eaton
eats
eaves
eavesdrop
eavesdropped
eavesdropper
eavesdroppers
eavesdropping
eavesdrops
ebb
ebbing
ebbs
Eben
ebony
eccentric
eccentricities
eccentricity
eccentrics
Eccles
ecclesiastical
echelon
echo
echoed
echoes
echoing
eclectic
eclipse
eclipsed
eclipses
eclipsing
ecliptic
Ecole
ecology
econometric
Econometrica
economic
economical
economically
economics
economies
economist
economists
economize
economized
economizer
economizers
economizes
economizing
economy
ecosystem
ecstasy
ecstatic
Ecuador
Ecuadorian
Ed
Eddie
eddies
eddy
Eden
Edenization
Edenizations
Edenize
Edenizes
Edgar
edge
edged
Edgerton
edges
Edgewater
Edgewood
edging
edible
edict
edicts
edifice
edifices
Edinburgh
Edison
edit
edited
Edith
editing
edition
editions
editor
editorial
editorially
editorials
editors
edits
Edmonds
Edmondson
Edmonton
Edmund
Edna
Edsger
Eduard
Eduardo
educable
educate
educated
educates
educating
education
educational
educationally
educations
educator
educators
Edward
Edwardian
Edwardine
Edwards
Edwin
Edwina
eel
eelgrass
eels
eerie
eerily
effect
effected
effecting
effective
effectively
effectiveness
effector
effectors
effects
effectually
effectuate
effeminate
efficacy
efficiencies
efficiency
efficient
efficiently
Effie
effigy
effort
effortless
effortlessly
effortlessness
efforts
egalitarian
Egan
egg
egged
egghead
egging
eggplant
eggs
eggshell
ego
egocentric
egos
egotism
egotist
Egypt
Egyptian
Egyptianization
Egyptianizations
Egyptianize
Egyptianizes
Egyptians
Egyptize
Egyptizes
Egyptology
Ehrlich
Eichmann
Eiffel
eigenfunction
eigenstate
eigenvalue
eigenvalues
eigenvector
eight
eighteen
eighteens
eighteenth
eightfold
eighth
eighthes
eighties
eightieth
eights
eighty
Eileen
Einstein
Einsteinian
Eire
Eisenhower
Eisner
either
ejaculate
ejaculated
ejaculates
ejaculating
ejaculation
ejaculations
eject
ejected
ejecting
ejects
Ekberg
eke
eked
ekes
Ekstrom
Ektachrome
elaborate
elaborated
elaborately
elaborateness
elaborates
elaborating
elaboration
elaborations
elaborators
Elaine
elapse
elapsed
elapses
elapsing
elastic
elastically
elasticity
Elba
elbow
elbowing
elbows
elder
elderly
elders
eldest
Eldon
Eleanor
Eleazar
elect
elected
electing
election
elections
elective
electives
elector
electoral
electorate
electors
Electra
electric
electrical
electrically
electricalness
electrician
electricity
electrification
electrify
electrifying
electro
electrocardiogram
electrocardiograph
electrocute
electrocuted
electrocutes
electrocuting
electrocution
electrocutions
electrode
electrodes
electroencephalogram
electroencephalograph
electroencephalography
electrolysis
electrolyte
electrolytes
electrolytic
electromagnetic
electromechanical
electron
electronic
electronically
electronics
electrons
electrophoresis
electrophorus
elects
elegance
elegant
elegantly
elegy
element
elemental
elementals
elementary
elements
Elena
elephant
elephants
elevate
elevated
elevates
elevation
elevator
elevators
eleven
elevens
eleventh
elf
Elgin
Eli
elicit
elicited
eliciting
elicits
elide
eligibility
eligible
Elijah
eliminate
eliminated
eliminates
eliminating
elimination
eliminations
eliminator
eliminators
Elinor
Eliot
Elisabeth
Elisha
elision
elite
elitist
Elizabeth
Elizabethan
Elizabethanize
Elizabethanizes
Elizabethans
elk
Elkhart
elks
Ella
Ellen
Ellie
Elliot
Elliott
ellipse
ellipses
ellipsis
ellipsoid
ellipsoidal
ellipsoids
elliptic
elliptical
elliptically
Ellis
Ellison
Ellsworth
Ellwood
elm
Elmer
Elmhurst
Elmira
elms
Elmsford
Eloise
elope
eloquence
eloquent
eloquently
Elroy
else
Elsevier
elsewhere
Elsie
Elsinore
Elton
elucidate
elucidated
elucidates
elucidating
elucidation
elude
eluded
eludes
eluding
elusive
elusively
elusiveness
elves
Elvis
Ely
Elysee
Elysees
Elysium
em
emaciate
emaciated
emacs
emanate
emanating
emancipate
emancipation
Emanuel
emasculate
embalm
embargo
embargoes
embark
embarked
embarks
embarrass
embarrassed
embarrasses
embarrassing
embarrassment
embassies
embassy
embed
embedded
embedding
embeds
embellish
embellished
embellishes
embellishing
embellishment
embellishments
ember
embezzle
emblem
embodied
embodies
embodiment
embodiments
embody
embodying
embolden
embrace
embraced
embraces
embracing
embroider
embroidered
embroideries
embroiders
embroidery
embroil
embryo
embryology
embryos
emerald
emeralds
emerge
emerged
emergence
emergencies
emergency
emergent
emerges
emerging
emeritus
Emerson
Emery
emigrant
emigrants
emigrate
emigrated
emigrates
emigrating
emigration
Emil
Emile
Emilio
Emily
eminence
eminent
eminently
emissary
emission
emit
emits
emitted
emitter
emitting
Emma
Emmanuel
Emmett
Emory
emotion
emotional
emotionally
emotions
empathy
emperor
emperors
emphases
emphasis
emphasize
emphasized
emphasizes
emphasizing
emphatic
emphatically
empire
empires
empirical
empirically
empiricist
empiricists
employ
employable
employed
employee
employees
employer
employers
employing
employment
employments
employs
emporium
empower
empowered
empowering
empowers
empress
emptied
emptier
empties
emptiest
emptily
emptiness
empty
emptying
emulate
emulated
emulates
emulating
emulation
emulations
emulator
emulators
en
enable
enabled
enabler
enablers
enables
enabling
enact
enacted
enacting
enactment
enacts
enamel
enameled
enameling
enamels
encamp
encamped
encamping
encamps
encapsulate
encapsulated
encapsulates
encapsulating
encapsulation
encased
enchant
enchanted
enchanter
enchanting
enchantment
enchantress
enchants
encipher
enciphered
enciphering
enciphers
encircle
encircled
encircles
enclose
enclosed
encloses
enclosing
enclosure
enclosures
encode
encoded
encoder
encoders
encodes
encoding
encodings
encompass
encompassed
encompasses
encompassing
encore
encounter
encountered
encountering
encounters
encourage
encouraged
encouragement
encouragements
encourages
encouraging
encouragingly
encroach
encrust
encrypt
encrypted
encrypting
encryption
encryptions
encrypts
encumber
encumbered
encumbering
encumbers
encyclopedia
encyclopedias
encyclopedic
end
endanger
endangered
endangering
endangers
endear
endeared
endearing
endears
endeavor
endeavored
endeavoring
endeavors
ended
endemic
ender
enders
endgame
Endicott
ending
endings
endless
endlessly
endlessness
endorse
endorsed
endorsement
endorses
endorsing
endow
endowed
endowing
endowment
endowments
endows
endpoint
ends
endurable
endurably
endurance
endure
endured
endures
enduring
enduringly
enema
enemas
enemies
enemy
energetic
energies
energize
energy
enervate
enfeeble
Enfield
enforce
enforceable
enforced
enforcement
enforcer
enforcers
enforces
enforcing
enfranchise
Eng
engage
engaged
engagement
engagements
engages
engaging
engagingly
Engel
Engels
engender
engendered
engendering
engenders
engine
engineer
engineered
engineering
engineers
engines
England
Englander
Englanders
Engle
Englewood
English
Englishize
Englishizes
Englishman
Englishmen
engrave
engraved
engraver
engraves
engraving
engravings
engross
engrossed
engrossing
engulf
enhance
enhanced
enhancement
enhancements
enhances
enhancing
Enid
enigma
enigmatic
enjoin
enjoined
enjoining
enjoins
enjoy
enjoyable
enjoyably
enjoyed
enjoying
enjoyment
enjoys
enlarge
enlarged
enlargement
enlargements
enlarger
enlargers
enlarges
enlarging
enlighten
enlightened
enlightening
enlightenment
enlist
enlisted
enlistment
enlists
enliven
enlivened
enlivening
enlivens
enmities
enmity
ennoble
ennobled
ennobles
ennobling
ennui
Enoch
enormities
enormity
enormous
enormously
Enos
enough
enqueue
enqueued
enqueues
enquire
enquired
enquirer
enquires
enquiry
enrage
enraged
enrages
enraging
enrapture
enrich
enriched
enriches
enriching
Enrico
enroll
enrolled
enrolling
enrollment
enrollments
enrolls
ensemble
ensembles
ensign
ensigns
enslave
enslaved
enslaves
enslaving
ensnare
ensnared
ensnares
ensnaring
Ensolite
ensue
ensued
ensues
ensuing
ensure
ensured
ensurer
ensurers
ensures
ensuring
entail
entailed
entailing
entails
entangle
enter
entered
entering
enterprise
enterprises
enterprising
enters
entertain
entertained
entertainer
entertainers
entertaining
entertainingly
entertainment
entertainments
entertains
enthusiasm
enthusiasms
enthusiast
enthusiastic
enthusiastically
enthusiasts
entice
enticed
enticer
enticers
entices
enticing
entire
entirely
entireties
entirety
entities
entitle
entitled
entitles
entitling
entity
entomb
entrance
entranced
entrances
entrap
entreat
entreated
entreaty
entree
entrench
entrenched
entrenches
entrenching
entrepreneur
entrepreneurial
entrepreneurs
entries
entropy
entrust
entrusted
entrusting
entrusts
entry
enumerable
enumerate
enumerated
enumerates
enumerating
enumeration
enumerative
enumerator
enumerators
enunciation
envelop
envelope
enveloped
enveloper
envelopes
enveloping
envelops
envied
envies
envious
enviously
enviousness
environ
environing
environment
environmental
environments
environs
envisage
envisaged
envisages
envision
envisioned
envisioning
envisions
envoy
envoys
envy
enzyme
Eocene
epaulet
epaulets
ephemeral
Ephesian
Ephesians
Ephesus
Ephraim
epic
epicenter
epics
Epicurean
Epicurize
Epicurizes
Epicurus
epidemic
epidemics
epidermis
epigram
epileptic
epilogue
Epiphany
episcopal
Episcopalian
Episcopalianize
Episcopalianizes
episode
episodes
epistemological
epistemology
epistle
epistles
epitaph
epitaphs
epitaxial
epitaxially
epithet
epithets
epitomize
epitomized
epitomizes
epitomizing
epoch
epochs
epsilon
Epsom
Epstein
equal
equaled
equaling
equalities
equality
equalization
equalize
equalized
equalizer
equalizers
equalizes
equalizing
equally
equals
equate
equated
equates
equating
equation
equations
equator
equatorial
equators
equestrian
equidistant
equilateral
equilibrate
equilibria
equilibrium
equilibriums
equinox
equip
equipment
equipoise
equipped
equipping
equips
equitable
equitably
equity
equivalence
equivalences
equivalent
equivalently
equivalents
equivocal
equivocally
era
eradicate
eradicated
eradicates
eradicating
eradication
eras
erasable
erase
erased
eraser
erasers
erases
erasing
Erasmus
Erastus
erasure
Erato
Eratosthenes
ere
erect
erected
erecting
erection
erections
erector
erectors
erects
erg
ergo
ergodic
Eric
Erich
Erickson
Ericsson
Erie
Erik
Erikson
Eris
Erlang
Erlenmeyer
Erlenmeyers
ermine
ermines
Erne
Ernest
Ernestine
Ernie
Ernst
erode
Eros
erosion
erotic
erotica
err
errand
errant
errata
erratic
erratum
erred
erring
erringly
Errol
erroneous
erroneously
erroneousness
error
errors
errs
ersatz
Erskine
erudite
erupt
eruption
Ervin
Erwin
escalate
escalated
escalates
escalating
escalation
escapable
escapade
escapades
escape
escaped
escapee
escapees
escapes
escaping
Escherichia
eschew
eschewed
eschewing
eschews
escort
escorted
escorting
escorts
escrow
Eskimo
Eskimoized
Eskimoizeds
Eskimos
Esmark
esoteric
Espagnol
especial
especially
espionage
Esposito
espouse
espoused
espouses
espousing
esprit
espy
esquire
esquires
essay
essayed
essays
Essen
essence
essences
Essenize
Essenizes
essential
essentially
essentials
Essex
establish
established
establishes
establishing
establishment
establishments
estate
estates
esteem
esteemed
esteeming
esteems
Estella
Estes
Esther
esthetics
estimate
estimated
estimates
estimating
estimation
estimations
Estonia
Estonian
et
etch
etching
eternal
eternally
eternities
eternity
Ethan
Ethel
ether
ethereal
ethereally
Ethernet
Ethernets
ethers
ethic
ethical
ethically
ethics
Ethiopia
Ethiopians
ethnic
etiquette
Etruria
Etruscan
etymology
eucalyptus
Eucharist
Euclid
Euclidean
Eugene
Eugenia
Euler
Eulerian
Eumenides
Eunice
eunuch
eunuchs
euphemism
euphemisms
euphoria
euphoric
Euphrates
Eurasia
Eurasian
eureka
Euripides
Europa
Europe
European
Europeanization
Europeanizations
Europeanize
Europeanized
Europeanizes
Europeans
Eurydice
Euterpe
euthanasia
Eva
evacuate
evacuated
evacuation
evade
evaded
evades
evading
evaluate
evaluated
evaluates
evaluating
evaluation
evaluations
evaluative
evaluator
evaluators
Evangeline
Evans
Evanston
Evansville
evaporate
evaporated
evaporating
evaporation
evaporative
evasion
evasive
Eve
Evelyn
even
evened
evenhanded
evenhandedly
evenhandedness
evening
evenings
evenly
evenness
evens
Evensen
event
eventful
eventfully
events
eventual
eventualities
eventuality
eventually
ever
Eveready
Everest
Everett
Everglade
Everglades
evergreen
Everhart
everlasting
everlastingly
evermore
every
everybody
everyday
everyone
everything
everywhere
evict
evicted
evicting
eviction
evictions
evicts
evidence
evidenced
evidences
evidencing
evident
evidently
evil
eviller
evilly
evils
evince
evinced
evinces
evoke
evoked
evokes
evoking
evolute
evolutes
evolution
evolutionary
evolutions
evolve
evolved
evolves
evolving
ewe
Ewen
ewes
Ewing
ex
exacerbate
exacerbated
exacerbates
exacerbating
exacerbation
exacerbations
exact
exacted
exacting
exactingly
exaction
exactions
exactitude
exactly
exactness
exacts
exaggerate
exaggerated
exaggerates
exaggerating
exaggeration
exaggerations
exalt
exaltation
exalted
exalting
exalts
exam
examination
examinations
examine
examined
examiner
examiners
examines
examining
example
examples
exams
exasperate
exasperated
exasperates
exasperating
exasperation
excavate
excavated
excavates
excavating
excavation
excavations
exceed
exceeded
exceeding
exceedingly
exceeds
excel
excelled
excellence
excellences
excellency
excellent
excellently
excelling
excels
except
excepted
excepting
exception
exceptionable
exceptional
exceptionally
exceptions
excepts
excerpt
excerpted
excerpts
excess
excesses
excessive
excessively
exchange
exchangeable
exchanged
exchanges
exchanging
exchequer
exchequers
excise
excised
excises
excising
excision
excitable
excitation
excitations
excite
excited
excitedly
excitement
excites
exciting
excitingly
exciton
exclaim
exclaimed
exclaimer
exclaimers
exclaiming
exclaims
exclamation
exclamations
exclamatory
exclude
excluded
excludes
excluding
exclusion
exclusionary
exclusions
exclusive
exclusively
exclusiveness
exclusivity
excommunicate
excommunicated
excommunicates
excommunicating
excommunication
excrete
excreted
excretes
excreting
excretion
excretions
excretory
excruciate
excursion
excursions
excusable
excusably
excuse
excused
excuses
excusing
exec
executable
execute
executed
executes
executing
execution
executional
executioner
executions
executive
executives
executor
executors
exemplar
exemplary
exemplification
exemplified
exemplifier
exemplifiers
exemplifies
exemplify
exemplifying
exempt
exempted
exempting
exemption
exempts
exercise
exercised
exerciser
exercisers
exercises
exercising
exert
exerted
exerting
exertion
exertions
exerts
Exeter
exhale
exhaled
exhales
exhaling
exhaust
exhausted
exhaustedly
exhausting
exhaustion
exhaustive
exhaustively
exhausts
exhibit
exhibited
exhibiting
exhibition
exhibitions
exhibitor
exhibitors
exhibits
exhilarate
exhort
exhortation
exhortations
exhume
exigency
exile
exiled
exiles
exiling
exist
existed
existence
existent
existential
existentialism
existentialist
existentialists
existentially
existing
exists
exit
exited
exiting
exits
exodus
exorbitant
exorbitantly
exorcism
exorcist
exoskeleton
exotic
expand
expandable
expanded
expander
expanders
expanding
expands
expanse
expanses
expansible
expansion
expansionism
expansions
expansive
expect
expectancy
expectant
expectantly
expectation
expectations
expected
expectedly
expecting
expectingly
expects
expediency
expedient
expediently
expedite
expedited
expedites
expediting
expedition
expeditions
expeditious
expeditiously
expel
expelled
expelling
expels
expend
expendable
expended
expending
expenditure
expenditures
expends
expense
expenses
expensive
expensively
experience
experienced
experiences
experiencing
experiment
experimental
experimentally
experimentation
experimentations
experimented
experimenter
experimenters
experimenting
experiments
expert
expertise
expertly
expertness
experts
expiration
expirations
expire
expired
expires
expiring
explain
explainable
explained
explainer
explainers
explaining
explains
explanation
explanations
explanatory
expletive
explicit
explicitly
explicitness
explode
exploded
explodes
exploding
exploit
exploitable
exploitation
exploitations
exploited
exploiter
exploiters
exploiting
exploits
exploration
explorations
exploratory
explore
explored
explorer
explorers
explores
exploring
explosion
explosions
explosive
explosively
explosives
exponent
exponential
exponentially
exponentials
exponentiate
exponentiated
exponentiates
exponentiating
exponentiation
exponentiations
exponents
export
exportation
exported
exporter
exporters
exporting
exports
expose
exposed
exposer
exposers
exposes
exposing
exposition
expositions
expository
exposure
exposures
expound
expounded
expounder
expounding
expounds
express
expressed
expresses
expressibility
expressible
expressibly
expressing
expression
expressions
expressive
expressively
expressiveness
expressly
expulsion
expunge
expunged
expunges
expunging
expurgate
exquisite
exquisitely
exquisiteness
extant
extemporaneous
extend
extendable
extended
extending
extends
extensibility
extensible
extension
extensions
extensive
extensively
extent
extents
extenuate
extenuated
extenuating
extenuation
exterior
exteriors
exterminate
exterminated
exterminates
exterminating
extermination
external
externally
extinct
extinction
extinguish
extinguished
extinguisher
extinguishes
extinguishing
extirpate
extol
extort
extorted
extortion
extra
extract
extracted
extracting
extraction
extractions
extractor
extractors
extracts
extracurricular
extramarital
extraneous
extraneously
extraneousness
extraordinarily
extraordinariness
extraordinary
extrapolate
extrapolated
extrapolates
extrapolating
extrapolation
extrapolations
extras
extraterrestrial
extravagance
extravagant
extravagantly
extravaganza
extremal
extreme
extremely
extremes
extremist
extremists
extremities
extremity
extricate
extrinsic
extrovert
exuberance
exult
exultation
Exxon
eye
eyeball
eyebrow
eyebrows
eyed
eyeful
eyeglass
eyeglasses
eyeing
eyelash
eyelid
eyelids
eyepiece
eyepieces
eyer
eyers
eyes
eyesight
eyewitness
eyewitnesses
eying
Ezekiel
Ezra
Faber
Fabian
fable
fabled
fables
fabric
fabricate
fabricated
fabricates
fabricating
fabrication
fabrics
fabulous
fabulously
facade
facaded
facades
face
faced
faces
facet
faceted
facets
facial
facile
facilely
facilitate
facilitated
facilitates
facilitating
facilities
facility
facing
facings
facsimile
facsimiles
fact
faction
factions
factious
facto
factor
factored
factorial
factories
factoring
factorization
factorizations
factors
factory
facts
factual
factually
faculties
faculty
fade
faded
fadeout
fader
faders
fades
fading
Fafnir
fag
Fagin
fags
Fahey
Fahrenheit
Fahrenheits
fail
failed
failing
failings
fails
failsoft
failure
failures
fain
faint
fainted
fainter
faintest
fainting
faintly
faintness
faints
fair
Fairbanks
Fairchild
fairer
fairest
Fairfax
Fairfield
fairies
fairing
fairly
Fairmont
fairness
Fairport
fairs
Fairview
fairy
fairyland
faith
faithful
faithfully
faithfulness
faithless
faithlessly
faithlessness
faiths
fake
faked
faker
fakes
faking
falcon
falconer
falcons
Falk
Falkland
Falklands
fall
fallacies
fallacious
fallacy
fallen
fallibility
fallible
falling
Fallopian
fallout
fallow
falls
Falmouth
false
falsehood
falsehoods
falsely
falseness
falsification
falsified
falsifies
falsify
falsifying
falsity
Falstaff
falter
faltered
falters
fame
famed
fames
familial
familiar
familiarities
familiarity
familiarization
familiarize
familiarized
familiarizes
familiarizing
familiarly
familiarness
families
familism
family
famine
famines
famish
famous
famously
fan
fanatic
fanaticism
fanatics
fancied
fancier
fanciers
fancies
fanciest
fanciful
fancifully
fancily
fanciness
fancy
fancying
fanfare
fanfold
fang
fangled
fangs
fanned
Fannies
fanning
Fanny
fanout
fans
fantasies
fantasize
fantastic
fantasy
FAQ
far
farad
Faraday
faraway
Farber
farce
farces
fare
fared
fares
farewell
farewells
farfetched
Fargo
farina
faring
Farkas
Farley
farm
farmed
farmer
farmers
farmhouse
farmhouses
farming
Farmington
farmland
farms
farmyard
farmyards
Farnsworth
Farrell
farsighted
farther
farthest
farthing
fascicle
fascinate
fascinated
fascinates
fascinating
fascination
fascism
fascist
fashion
fashionable
fashionably
fashioned
fashioning
fashions
fast
fasted
fasten
fastened
fastener
fasteners
fastening
fastenings
fastens
faster
fastest
fastidious
fasting
fastness
fasts
fat
fatal
fatalities
fatality
fatally
fatals
fate
fated
fateful
fates
father
fathered
fatherland
fatherly
fathers
fathom
fathomed
fathoming
fathoms
fatigue
fatigued
fatigues
fatiguing
Fatima
fatness
fats
fatten
fattened
fattener
fatteners
fattening
fattens
fatter
fattest
fatty
faucet
Faulkner
Faulknerian
fault
faulted
faulting
faultless
faultlessly
faults
faulty
faun
fauna
Fauntleroy
Faust
Faustian
Faustus
favor
favorable
favorably
favored
favorer
favoring
favorite
favorites
favoritism
favors
Fawkes
fawn
fawned
fawning
fawns
Fayette
Fayetteville
faze
Fe
fear
feared
fearful
fearfully
fearing
fearless
fearlessly
fearlessness
fears
fearsome
feasibility
feasible
feast
feasted
feasting
feasts
feat
feather
featherbed
featherbedding
feathered
featherer
featherers
feathering
Featherman
feathers
featherweight
feathery
feats
feature
featured
features
featuring
Februaries
February
fecund
fed
Fedders
federal
federalist
federally
federals
federation
Fedora
fee
feeble
feebleness
feebler
feeblest
feebly
feed
feedback
feeder
feeders
feeding
feedings
feeds
feel
feeler
feelers
feeling
feelingly
feelings
feels
Feeney
fees
feet
feign
feigned
feigning
Felder
Feldman
Felice
Felicia
felicities
felicity
feline
Felix
fell
fellatio
felled
felling
Fellini
fellow
fellows
fellowship
fellowships
felon
felonious
felony
felt
felts
female
females
feminine
femininity
feminism
feminist
femur
femurs
fen
fence
fenced
fencer
fencers
fences
fencing
fend
Fenton
Fenwick
Ferber
Ferdinand
Ferdinando
Ferguson
Fermat
ferment
fermentation
fermentations
fermented
fermenting
ferments
Fermi
fern
Fernando
ferns
ferocious
ferociously
ferociousness
ferocity
Ferreira
Ferrer
ferret
ferried
ferries
ferrite
ferry
fertile
fertilely
fertility
fertilization
fertilize
fertilized
fertilizer
fertilizers
fertilizes
fertilizing
fervent
fervently
fervor
fervors
Fess
festival
festivals
festive
festively
festivities
festivity
fetal
fetch
fetched
fetches
fetching
fetchingly
fetid
fetish
fetter
fettered
fetters
fettle
fetus
feud
feudal
feudalism
feuds
fever
fevered
feverish
feverishly
fevers
few
fewer
fewest
fewness
fiance
fiancee
fiasco
fiat
fib
fibbing
fiber
Fiberglas
fibers
Fibonacci
fibrosities
fibrosity
fibrous
fibrously
fickle
fickleness
fiction
fictional
fictionally
fictions
fictitious
fictitiously
fiddle
fiddled
fiddler
fiddles
fiddlestick
fiddlesticks
fiddling
Fidel
fidelity
fidget
fiducial
fief
fiefdom
field
fielded
fielder
fielders
fielding
Fields
fieldwork
fiend
fiendish
fierce
fiercely
fierceness
fiercer
fiercest
fiery
fife
fifteen
fifteens
fifteenth
fifth
fifties
fiftieth
fifty
fig
Figaro
fight
fighter
fighters
fighting
fights
figs
figurative
figuratively
figure
figured
figures
figuring
figurings
Fiji
Fijian
Fijians
filament
filaments
file
filed
filename
filenames
filer
files
filial
filibuster
filing
filings
Filipino
Filipinos
Filippo
fill
fillable
filled
filler
fillers
filling
fillings
Fillmore
fills
filly
film
filmed
filming
films
filter
filtered
filtering
filters
filth
filthier
filthiest
filthiness
filthy
fin
final
finality
finalization
finalize
finalized
finalizes
finalizing
finally
finals
finance
financed
finances
financial
financially
financier
financiers
financing
find
finder
finders
finding
findings
finds
fine
fined
finely
fineness
finer
fines
finesse
finessed
finessing
finest
finger
fingered
fingering
fingerings
fingernail
fingerprint
fingerprints
fingers
fingertip
finicky
fining
finish
finished
finisher
finishers
finishes
finishing
finite
finitely
finiteness
fink
Finland
Finley
Finn
Finnegan
Finnish
Finns
finny
fins
Fiorello
Fiori
fir
fire
firearm
firearms
fireboat
firebreak
firebug
firecracker
fired
fireflies
firefly
firehouse
firelight
fireman
firemen
fireplace
fireplaces
firepower
fireproof
firer
firers
fires
fireside
Firestone
firewall
firewood
fireworks
firing
firings
firm
firmament
firmed
firmer
firmest
firming
firmly
firmness
firms
firmware
first
firsthand
firstly
firsts
fiscal
fiscally
Fischbein
Fischer
fish
fished
fisher
fisherman
fishermen
fishers
fishery
fishes
fishing
Fishkill
fishmonger
fishpond
fishy
Fisk
Fiske
fission
fissure
fissured
fist
fisted
fisticuff
fists
fit
Fitch
Fitchburg
fitful
fitfully
fitly
fitness
fits
fitted
fitter
fitters
fitting
fittingly
fittings
Fitzgerald
Fitzpatrick
Fitzroy
five
fivefold
fives
fix
fixate
fixated
fixates
fixating
fixation
fixations
fixed
fixedly
fixedness
fixer
fixers
fixes
fixing
fixings
fixture
fixtures
Fizeau
fizzle
fizzled
flabbergast
flabbergasted
flack
flag
flagellate
flagged
flagging
Flagler
flagpole
flagrant
flagrantly
flags
Flagstaff
flail
flair
flak
flake
flaked
flakes
flaking
flaky
flam
flamboyant
flame
flamed
flamer
flamers
flames
flaming
flammable
Flanagan
Flanders
flank
flanked
flanker
flanking
flanks
flannel
flannels
flap
flaps
flare
flared
flares
flaring
flash
flashback
flashed
flasher
flashers
flashes
flashing
flashlight
flashlights
flashy
flask
flat
flatbed
flatly
flatness
flats
flatten
flattened
flattening
flatter
flattered
flatterer
flattering
flattery
diff --git a/help/opie-sh/node3.html b/help/opie-sh/node3.html
index 8d16696..f3f1e73 100644
--- a/help/opie-sh/node3.html
+++ b/help/opie-sh/node3.html
@@ -1,71 +1,71 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<!--Converted with LaTeX2HTML 2002-1 (1.68)
original version by: Nikos Drakos, CBLU, University of Leeds
* revised and updated by: Marcus Hennecke, Ross Moore, Herb Swan
* with significant contributions from:
Jens Lippmann, Marek Rouchal, Martin Wilck and others -->
<HTML>
<HEAD>
<TITLE>What it is for</TITLE>
<META NAME="description" CONTENT="What it is for">
<META NAME="keywords" CONTENT="opie-sh-howto">
<META NAME="resource-type" CONTENT="document">
<META NAME="distribution" CONTENT="global">
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<META NAME="Generator" CONTENT="LaTeX2HTML v2002-1">
<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">
<LINK REL="STYLESHEET" HREF="opie-sh-howto.css">
<LINK REL="next" HREF="node4.html">
<LINK REL="previous" HREF="node2.html">
<LINK REL="up" HREF="node2.html">
<LINK REL="next" HREF="node4.html">
</HEAD>
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html71"
HREF="node4.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next"
SRC="file:/usr/local/share/lib/latex2html/icons/next.gif"></A>
<A NAME="tex2html67"
HREF="node2.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up"
SRC="file:/usr/local/share/lib/latex2html/icons/up.gif"></A>
<A NAME="tex2html61"
HREF="node2.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous"
SRC="file:/usr/local/share/lib/latex2html/icons/prev.gif"></A>
<A NAME="tex2html69"
HREF="node1.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents"
SRC="file:/usr/local/share/lib/latex2html/icons/contents.gif"></A>
<BR>
<B> Next:</B> <A NAME="tex2html72"
HREF="node4.html">What it can do</A>
<B> Up:</B> <A NAME="tex2html68"
HREF="node2.html">Introduction</A>
<B> Previous:</B> <A NAME="tex2html62"
HREF="node2.html">Introduction</A>
&nbsp <B> <A NAME="tex2html70"
HREF="node1.html">Contents</A></B>
<BR>
<BR>
<!--End of Navigation Panel-->
<H2><A NAME="SECTION00021000000000000000">
What it is for</A>
</H2>
-Opie-sh is designed to be a frontend to Opie that can be used from the console. This is especially usefull for creating interactive shell scripts, as it will use the Opie interface (which is presumably familiar to the user) instead of a text based interface (which can be confusing). It can also be convinient for prototyping an app that you want to write for Opie without actually bothering to break out the cross compiler. Opie-sh does not use an Opie specific libs, so you can just as easily use it with Qtopia.
+Opie-sh is designed to be a frontend to Opie that can be used from the console. This is especially useful for creating interactive shell scripts, as it will use the Opie interface (which is presumably familiar to the user) instead of a text based interface (which can be confusing). It can also be convinient for prototyping an app that you want to write for Opie without actually bothering to break out the cross compiler. Opie-sh does not use an Opie specific libs, so you can just as easily use it with Qtopia.
<P>
<BR><HR>
<ADDRESS>
2002-05-15
</ADDRESS>
</BODY>
</HTML>
diff --git a/help/opie-sh/node9.html b/help/opie-sh/node9.html
index b047cf9..e4358ad 100644
--- a/help/opie-sh/node9.html
+++ b/help/opie-sh/node9.html
@@ -1,121 +1,121 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<!--Converted with LaTeX2HTML 2002-1 (1.68)
original version by: Nikos Drakos, CBLU, University of Leeds
* revised and updated by: Marcus Hennecke, Ross Moore, Herb Swan
* with significant contributions from:
Jens Lippmann, Marek Rouchal, Martin Wilck and others -->
<HTML>
<HEAD>
<TITLE>Icons</TITLE>
<META NAME="description" CONTENT="Icons">
<META NAME="keywords" CONTENT="opie-sh-howto">
<META NAME="resource-type" CONTENT="document">
<META NAME="distribution" CONTENT="global">
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<META NAME="Generator" CONTENT="LaTeX2HTML v2002-1">
<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">
<LINK REL="STYLESHEET" HREF="opie-sh-howto.css">
<LINK REL="previous" HREF="node8.html">
<LINK REL="up" HREF="node6.html">
<LINK REL="next" HREF="node10.html">
</HEAD>
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html144"
HREF="node10.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next"
SRC="file:/usr/local/share/lib/latex2html/icons/next.gif"></A>
<A NAME="tex2html140"
HREF="node6.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up"
SRC="file:/usr/local/share/lib/latex2html/icons/up.gif"></A>
<A NAME="tex2html136"
HREF="node8.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous"
SRC="file:/usr/local/share/lib/latex2html/icons/prev.gif"></A>
<A NAME="tex2html142"
HREF="node1.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents"
SRC="file:/usr/local/share/lib/latex2html/icons/contents.gif"></A>
<BR>
<B> Next:</B> <A NAME="tex2html145"
HREF="node10.html">Fileviewer</A>
<B> Up:</B> <A NAME="tex2html141"
HREF="node6.html">Usage</A>
<B> Previous:</B> <A NAME="tex2html137"
HREF="node8.html">Buttons</A>
&nbsp <B> <A NAME="tex2html143"
HREF="node1.html">Contents</A></B>
<BR>
<BR>
<!--End of Navigation Panel-->
<H3><A NAME="SECTION00031300000000000000">
Icons</A>
</H3>
There are three icons that you can display with a message box: information, warning, and error. These are designed to help inform the user what type of message you are giving them.
<P>
An information icon is specified with the ``-I'' flag, and should be used for outputing non-critical information to the user, or asking them a simple question. It is also the default icon, and will be used if you do not specify another one. Example:
<P>
<PRE>
opie-sh -m -I
</PRE>
<P>
-A warning icon is specified with the ``-w'' flag, and should be used for problems that the user should know about, but that will not necessarily cause the program to stop working. For example, if the program cannot find a configureation file, you might pop up a warning, notifying the user that the default configuration will be used. This is also usefull for asking the user if they want to continue doing something that might damage the system (editing rc scripts, for instance). Example:
+A warning icon is specified with the ``-w'' flag, and should be used for problems that the user should know about, but that will not necessarily cause the program to stop working. For example, if the program cannot find a configureation file, you might pop up a warning, notifying the user that the default configuration will be used. This is also useful for asking the user if they want to continue doing something that might damage the system (editing rc scripts, for instance). Example:
<P>
<PRE>
opie-sh -m -w
</PRE>
<P>
An error icon is specified with the ``-e'' flag, and should be used for problems that will cause the program to stop running, or otherwise do the wrong thing. It should be used sparingly, as it signifies that something is seriously wrong. Example:
<P>
<PRE>
opie-sh -m -e
</PRE>
<P>
<HR>
<!--Navigation Panel-->
<A NAME="tex2html144"
HREF="node10.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next"
SRC="file:/usr/local/share/lib/latex2html/icons/next.gif"></A>
<A NAME="tex2html140"
HREF="node6.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up"
SRC="file:/usr/local/share/lib/latex2html/icons/up.gif"></A>
<A NAME="tex2html136"
HREF="node8.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous"
SRC="file:/usr/local/share/lib/latex2html/icons/prev.gif"></A>
<A NAME="tex2html142"
HREF="node1.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents"
SRC="file:/usr/local/share/lib/latex2html/icons/contents.gif"></A>
<BR>
<B> Next:</B> <A NAME="tex2html145"
HREF="node10.html">Fileviewer</A>
<B> Up:</B> <A NAME="tex2html141"
HREF="node6.html">Usage</A>
<B> Previous:</B> <A NAME="tex2html137"
HREF="node8.html">Buttons</A>
&nbsp <B> <A NAME="tex2html143"
HREF="node1.html">Contents</A></B>
<!--End of Navigation Panel-->
<ADDRESS>
2002-05-15
</ADDRESS>
</BODY>
</HTML>
diff --git a/noncore/apps/odict/eng_ita.dic b/noncore/apps/odict/eng_ita.dic
index f338faa..6db2389 100644
--- a/noncore/apps/odict/eng_ita.dic
+++ b/noncore/apps/odict/eng_ita.dic
@@ -1,13486 +1,13484 @@
# tarzeau, gnu@fuckmicrosoft.com, www.linuks.mine.nu, 22/august/2001
# i have made this dictionary using ergane and release it under the gpl 2
# for whoever wishes to use it (i use it with ding on debian gnu/linux)
#
# "Not only does Ergane cost nothing, but the wordlists generated with her
# are also free of copyright and can be copied, distributed and changed
# without legal restrictions. You can use them in any way you like, even for
# commercial purposes!" - http://www.travlang.com/Ergane/
a\un
A bomb\bomba atòmica
a hundred\cento
a little\qualcosa
a long time ago\da molto tempo
a thousand\mille
aangles\cantuccio
aback\sorprende, attònito, sorprende
abandon\lasciare, abbandonare
abandon ship\ridurre, rilassare, degradare
abandonment\quesito
abasement\umiliazione
abash\svergognare
abashes\umiliato
abashment\smacco
abasing\umiliante
abate\rilassare, diminuire
abatement\detrazione, falcidia, cancellazione
abating\diminutivo
abattoir\mattatoio, mattatoio
abbey\badìa
abbot\abate
abbreviate\accorciare, abbreviare, ridurre
abbreviation\abbreviamento
abbreviatory\abbreviativo
abbroachement\accaparrare
ABC\alfabeto
abdicate\abbandonare
abdomen\basso ventre
abdominal\addominale
abduct\rapire
aberrant\errore
abet\poggiare, fiancheggiare, appogiare, ordire
abets\favorito
abetter\aiutante
abhor\avere in orrore
abhorrence\orrore
abhors\detestato
abiding\restante
abidingly\fido
ability\abilitazione, disinvoltura, capacità
abject\miserabile, sprezzante, infame
abjectness\abiezione
abjuration\abiura
abjure\abiurare, annullare
ablation\ablazione
ablaze\fiammeggiante, ardente
able\adatto, capace, in grado, idoneo, abile
abloom\fioritura
ably\esperto
abnegate\abnegare
abnormal\abnorme
abnormally\abnorme
abode\soggiorno
aboil\bollente
abolish\annullare, abolire
abolishment\abolizione
abolition\abrogazione
abominable\mostruoso
abominably\abominabile
abominate\avere in orrore
abominates\detestato
aboriginally\unigenito
aborigine\essere originario di
abort\abortire
abortion\aborto
abortional\abortivo
abortive\prematuro
abortiveness\sterilità
about\intorno, verso, attorno, circa
about turn\dietro front
above\al di sopra, sopra, sù
above all\principalmente, anzitutto, sopratutto
aboveboard\onesto
abrasive\acuto, escoriare
abridge\abbreviare, accorciare
abridgement\accorciature
abroad\all'estero, in ogni direzione
abrogate\licenziare, annullare, levatura, abolire
abrogation\abolizione, disdetta
abrupt\rapido
abruptness\asperità
abscess\ulcera, ascesso
abscond\fuggire
absconder\profugo
absence\mancare, assenza
absence of smell\mancanza di odore
absent\mancante, restar lontano, assente
absinthe\vermut
absolute\intero, assolutamente
absolute element\elemento
absolutely\assolutamente, infatti, incondizionato, davvero
absolution\assoluzione
absolve\assòlvere
absorb\fagocitare, smorzare, neutralizzare
absorbed in thought\assorto nei pensieri
absorbing\interesante
abstaining\comprendente
abstemious\astinente
abstemiousness\astinenza
abstentious\astinente
abstract\astratto
abstract of account\estratto di conto
abstractedly\astratto
abstractly\astratto
abstruse\ermetico
absurd\assurdo
absurdism\nonsenso
abundance\abbondanza
abundance of words\verbosità
abuse\abuso
abusive\offensivo, insulto
abusively\offensivo
abusiveness\abuso
abut\accostare
abutter\confinante
abutting\limitrofo
abysm\abisso
abysms\abissi
abyss\abisso
abyssal\cupo
AC\corrente alternata
acacia\acacia
academic\accadèmico
academically\accadèmico
academics\accadèmico
academy\accadèmia
academy of arts\accadèmia di belle arti
accede\accedere, concordare
accede to\associare
accedence\accessione
accelerate\accelerare
accelerates\accellerato
accelerating\accelerativo
acceleration\accelerazione
accelerator\acceleratore
accent\accento, accentuare
accentuate\accentatura
accept\accogliere, gradire, assùmere, accettare
acceptability\accettabilità
acceptable\adottàbile, ammissibile
acceptableness\gradevolezza
acceptance\accoglienza, decrescenza, accettazione
acceptation\accezione
accepter\acquirente
acceptor\destinatario, acquirente
accepts\accettato
access\entratura
accessable\abbordabile
accessed\afferrato
accessibility\accessibilità
accessible\abbordabile
accessibly\abbordabile
accession\incremento, assunzione del potere
accessory equipment\annessi
accident\incidente, accidente
accidental\accidentale, infelice
accidentally\per disgrazia, inavvertitamente
accidentprone\sfortuna
accidents\incidenti
acclaim\applaudire, applauso, acclamare
acclamation\applauso
acclimate\abituare
acclimatize\acclimatare
accolade\distinzione, lode
accommodate\albergare, accantonare
accommodating\compiacente
accommodatingly\compiacente
accommodation\aggiustamento, rifornimento, alloggiamento
accomodate\aiutare
accomodation\alloggio
accomodations\quartieri
accompanied\accompagnato
accompanies\accompagnato
accompany\accompagnare
accomplice\complice
accomplish\compiere, eseguire, effettuare, cómpiere
accomplishable\ottenibile
accomplished\perfetto
accord\accordo, accordare, unisono, concordanza
accordance\concordanza
accordant\congruente
according\conforme a
according to\secondo, conforme a
according to contract\come fissato nel contratto
according to instruction\normale
according to schedule\entro la data fissata
accordingly\in conformità
accordion\fisarmonica, fisarmònica
accords\accordato
accost\rivolgere la parola
account\calcolo, càlcolo, conto, rapporto
account carried forward\dizione
account debtor\acquirente
account holder\intestatario
accountable\responsabile
accountancy\contabilità
accountant\contabile
accounting\registrare, resa dei conti
accounting clerk\contabile
accounting department\contabilità
accounting year\esercizio
accounts clerk\contabile
accounts current\estratto di conto
accredit\vidimare
accretion\incremento, aumento di valore, sviluppo
accretion of discount\incremento
accrual\incremento
accrue\sorgere
accruement\origine
accumulate\accumulare, immagazzinare, ammassare
accumulation\ammassamento, cumulazione, immagazzinamento
accumulator\accumulatore
accuracy\fedeltà
accurate\senza errori
accurately\esatta
accurateness\fedeltà
accursed\maledetto
accursedly\maledetta
accursedness\volatilizzazione
accusal\imputazione
accusation\accusa, imputazione
accusativeness\imputazione
accuse\addebitare, caricare, accusare
accused\accusata, accusato
accuser\accusatore
accustom\abituare
accustoming\assuefazione
acerbity\acerbità
aces\assi
acess\entratura
ache\penoso, dolere, pena
aches\dolere
achievable\eseguìbile, ottenibile
achieve\conseguire, cómpiere, compiere, eseguire
achievement\lavoro, realizzazione
achieves\raggiunto
achiness\pena
achinesses\dolere
aching\doloroso
achy\doloroso
acid\acido
acidify\inacidire
acidulous\acetoso
acknowledging\riconoscente
acknowledgment\riconoscimento
acme\cùlmine, momento culminante
acmes\culminare
acolyte\chierico
acorn\ghianda
acoustic\acùstico, acùstica
acoustics\acùstica
acquaint\notificare
acquaintance\conoscenza, conoscente
acquaintanceship\conoscenza
acquainted\noto
acquiesce\acconsentire, sopportare
acquiescent\devoto
acquiesces\sopporta
acquirable\ottenibile
acquire\acquistare, procurare
acquisition\rilevamento
acquit\assòlvere
acrid\erosivo
acridly\erosivo
acridness\acerbità
acrimonies\acuire
acrimonious\accanito
acronym\abbreviamento
across\diàmetro, attraverso, sopra, oltretomba
across from\di fronte, contro
act\atto, vertere, azione, agire, funzionare, legge
act for\rappresentare
act in place of\rappresentare, vertere
act of volition\volizione
action\effetto, azione, lamentela, procedimento
actionable\querelabile
active\attivo
activity\attività
actor\attore
actress\attrice
actual\reale, veramente, veramente
actuality\realtà
actualize\attuare
actually\veramente, reale
actuate\attivare
actuation\impulso
acumen\acume
acute\nitido, intensivo
acuteness\finezza
ad\denuncia, annuncio, avviso, inserzione
adage\proverbio
adagio\lungo
adapt\uniformare
adaptable\applicàbile
adaptation\adattamento
adaption\adattamento
adaptor\adattamento
add\aggiungere, integrare, addizionare, sommare
addend\aggiunta
addenda\serbar rancore
addends\aggiunta
addendum\appendice
addicted\maniaco
addiction\mania
addictiveness\pendio
addition\addizione, addizionare, aggiunta
additional\addizionale
additional occupation\professione secondaria
additional payment\pagamento supplementare
additives\complementi
addle\viziare
address\rivolgere la parola, indirizzo, nominativo
address book\annuario
address table\annuario
addresses\indirizzi
ade\facciata
adept\esperto, campione
adequate\equo, appropriato
adhere\incollare, obbligarsi
adherence\attaccare
adheres\garantisce
adhesion\adesivo, glùtine, glutinoso
adhesive\glutinoso, glùtine
adhesive plaster\cerotto
adhesiveness\viscosità
adieu\addio
adipose\grassello
adjacence\dintorni
adjacencies\vicinità
adjacency\confinare
adjacent\limitrofo
adjective\aggettivo, aggetivo
adjoining\attìguo, limitrofo
adjoining room\la camera accanto
adjourn\aggiornare
adjudicate\opinare, decidere
adjudication\decisione
adjudicator\giudice della giuria
adjure\giurare
adjuring\affermante
adjust\emendare, correggere
adjustable\regolabile
adjustment\adattamento
adjustment of average\regolazione
adjusts\contraffato
administer\amministrare
administrates\amministrato
administration\economato
administrative appeal\reclamo
administrative machinery\apparato amministrativo
administrative tribunal\tribunale amministrativo
admint\amméttere
admirability\grandiosità
admirable\ammiràbile, sorprendente
admirably\ammiràbile
admiral\ammiraglio
admire\ammirare
admirer\ammiratore, veneratore
admissible\ammissibile
admissibly\ammissibile
admission\ingresso
admission into warehouse\immagazzinaggio
admit\amméttere
admit of\amméttere
admonish\esortare, diffidare
admonishing\esortativo
admonishingly\monitorio
admonishment\ammonizione
admonition\ammonizione
ado\boriosita
adopt\mi incarico, adottare, mi incarico
adoptability\gradevolezza
adoptable\adottàbile
adoptive\supposto
adoration\venerazione, adorazione
adorations\adorazione
adore\adorare, venerare
adored\adorato
adores\venerato
adroit\esperto
adulate\lusingare
adulating\accarezzevole
adulation\lisciatura
adulator\adulatore
adult\adulto
adulterate\affatturare
adulterates\fatturato
adulterer\adultero
adulteress\adultera
adulterousness\adulterio
adultery\adulterio, adulterino
adumbration\denotazione
adumbrative\accennante
advance\anticipo, avanzare, avvicinarse, avanzamento
advance payment\pagamento anticipato
advanced\avanzare, progredito
advanced ignition\accensione anticipata
advancement\avanzamento, avanzamento, ascensione
advantage\vantaggio, guadagno
advantageous\vantaggioso
advantages\vantaggi
advantagious\utile, vantaggioso
advent\inizio
adventurousness\audacia
adverb\avverbio, avverbio
adverbially\avverbiale
adversaries\avversario
adverse\sfavorevole
advert\denuncia, inserzione
advertence\richiamare
advertent\dimostrativo
advertise\annunziare, inserire
advertisement\inserzione, annuncio, pubblicità, denuncia, avviso
advertiser\inserente
advertises\inserito
advertising\pubblicità, reclame
advice\consigliere, consiglio
advisable\consigliabile
advise\consigliare
aerial view\veduta aerea
aeronautics\navigazione aerea
aeroplane\aeroplano, velivolo
aerospace\etere
aesthetic\estetico
aestheticism\estetismo
affable\benevolo, cortese, gradevole
affair\affare, faccenda
affect\commuòvere, concèrnere
affected\mosse
affection\affetto, affezione
affectionate\amoroso
affirmatively\confermante
afflict\infestare
afflicted\tormentò
affluentin\ricco di
afraid\paura
Africa\Africa
African\africano
after\in, dopochè, dopo, dopo questo
afternoon\pomeriggio
afterwards\in, in seguito, dopo questo
afteryears\periodo conseguente
again\da capo, nuovamente
against\in confronto, inverso, contro
against it\in confronto
age\vecchiezza, età
aged\annoso
agelong\fisso
agency\agenzia, filiale
agenda\ordine del giorno
agent\agente
aggrandize\accrèscere
aggravate\peggiorare
aggressive\bellicoso
aggrieve\angustiare
agile\agile
agitate\discùtere
agonize\martirizzare
agony\agonìa, angoscia
agree\assentire, stipulare, concordare
agreeable\placevole, gradévole
agreeably\piacevolmente
agreed\concorde
agreement\accordo
agricultural\agrario
agriculture\agricoltura
agriculturist\agricoltore
aguish\febbrile
ahead\davanti, avanti
aid\aiutare
aim\scopo, proposito
aimed\mirai
air\aria, arietta, etere
air-fresher\deodorante
air-plane\aeroplano
air cooled\raffreddato ad aria
air mail\posta aerea
air out\ventilare, arieggiare, aerare
air pump\pompa pneumatica
aircraft\velivolo
airfield\aeròdromo
airline\aviolinea
airplane\aeroplano, velivolo
airplanes\aeroplani
airport\aeroporto
aitchbone\lonza
alarm\allarme, alarmo
alarm clock\sveglia
alas\purtroppo
alcohol\alcool
ale\birra
aleatory\incerto, malsicuro
alert\allarme
alga\alga
aliation\nutrimento
alibi\scusa, scusa
alive\vivo
all\ogni cosa, tutti
all of a sudden\improvvisamente
all one colour\unicolore
all the same\eguale
all the time\ininterrottamente
allegation\affermazione
allergy\allergìa
alley\viuzza, vicolo
allhallows\ognissanti
alliance\alleanza
allied\alleato
allot\distribuire
allow\permettere, amméttere
allowance\risarcimento danni
allude\allùdere, alludere
alluringness\attrattiva
allways\ognora
almond\mandorla
almost\quasi
alms\elemòsina
alone\solo, unico
along\finito
alongside\sotto bordo
aloud\secondo
alphabet\alfabeto
alphabetic\alfabètico
already\già
also\anche
alter\variare, alterare
alternating current\corrente alternata
alternative\alternative
although\sebbene
altogether\totalmente, tutto
aluminium\alluminio
always\ognora, sempre
amateur\dilettante, amante
amazing\sorprendente
ambassador\ambasciatore
ambiguity\equivoco
ambiguous\ambìguo
ambition\ambizione
ambitious\ambizioso
ambitiously\ambizioso
ambulance\ambulanza
ambulant\ambulatorio
ambush\appostamento
ameliorate\perfezionare
amend\variare, perfezionare
amendments\indennizzo
amenity\gradevolezza
America\Amèrica, America
American\americano
amerind\indiano
ammo\munizione
ammunition\munizione
amok\ossessione omicida
among\in mezzo a, sotto
amorousness\innamoratezza
amorphousness\informità
amount\importo
amour propre\fatuità
amperage\amperaggio
amplifier\amplificatore
amplify\amplificare, commentare
amputate\amputare
amuse\divertire
amusing\dilettevole, giocondo, divertente
an\un
anaemia\anemia
anaesthetic\narcosi
analgesia\assenza di dolori
analyse\analizzare
analyze\analizzare
anarchy\anarchìa
anathema\scomunica
anatomy\anatomìa
ancestry\presentire
anchor\àncora
anchors\ancorato
anchovy\acciuga
ancient\antico, vecchissimo
and\e
and so on\eccetera
andeuten\volere dire
anecdote\àneddoto
angel\angelo
anger\collera, furia
angers\disgegnato
angina\angina
angle\cantuccio, àngolo
angled\storto
Anglistics\anglìstica
angry\stizzito
anguish\pena, angoscia, paura
animal\animale
animalist\scultore
animals\animali
animate\animare
ankle\nocca
ankles\nocca
annex\attaccare
annihilation\annientamento
anniversary\anniversario, compleano
annotation\commento
announce\annunziare
annoy\arrabiare, molestare
annoyance\dispetto
annoyed\stizzito
annul\annullare
annular\anulare
annulment\annullamento
answer\rispondere, corrispóndere, rispondere, risposta
ant\formica
antagonism\antagonismo
antenna\antenne
anticipate\anticipare
antique\antico, tempi passati
antiquity\antichità
antlered\consacrato
ants\formiche
anxiety\fastidio
anxious\pieno di timore
any\facoltativo, qualche
anybody\qualcheduno, alcuno
anyone\qualunque
anywhere\in qualche luogo
aosine\coseno
apartheid\segregazione razziale
apartment\appartamento
apathy\apatia
ape\scimmia
aperitif\aperitivo
aperture\abboccatura
apiece\a secondo
apologize\scusare
apology\scusa
apostates\infedele
apostle\apostolo, apòstolo
apostolic\apostòlico
apothecaries\farmacista
appal\orrore
appalling\tremendo, atroce
appals\spaventato
appanage\sezione
apparatus\meccanismo, equipaggio, apparecchio
apparatuses\attrezzi
apparel\vestimento
apparel industry\abbigliamento
apparent\evidente, in apparenza
apparently\evidente, evidentemente, in apparenza
apparentness\manifestazione
apparition\fenomeno
apparitional\visibile
appeal\chiamata, appello
appeal to\appello
appear\apparire, venni, esibirsi
appearance\venni, apparenza, fenomeno, esteriore
appears\emersione
apped\scambiato
appellation\cognome
appellative\pregante
append\attaccare
appendicitis\appendicite
appending\fissante
appendix\completamento, appendice
appends\fissato
appetency\libidine
appetite\appetito
appetizer\aperitivo
appetizing\appetitoso
applaud\applaudire, acclamare, pettegolare
applaudable\ammiràbile
applause\applauso
apple\mela
apple-tree\melo
appliance\disposizione, meccanismo
applicable\applicàbile
applicant\aspirante
application\proposta
application form\modulo di denuncia, modulo di richiesta
applications\applicazioni
applicative\appropriato
applicatory\utilitario
apply\applicare, esasperare
appoint\creare, produrre
appointed\nominato
appointing\nominante
appointment\lavorazione
apposite\convenévole, opportuno
appraisal\valutazione
appraise\valutare
appraisement\valutazione
appraiser\consulente, estimatore
appraises\valutato
appraising\valutante
appraising officer\estimatore
appreciable\percettibile
appreciably\percettibile
appreciate\degnare, apprezzare, valutare
appreciated\apprezzato
appreciation\valorizzazione, riconoscimento
appreciative\riconoscente
appreciator\conoscitore
appreciatory\riconoscente
apprehend\capire
apprehensibility\paura
apprehensible\comprensìbile
apprehension\frutto, arresto
apprehensive\diffidgnte
apprehensiveness\allarme
apprentice\apprendista
apprenticeship\istruzione, noviziato
apprises\informato
approach\avvicinarsi, accesso, avvicinare
approachability\accessibilità
approachable\abbordabile
approbation\nullaosta
appropriate\equo, opportuno, convenévole
approval\ammissione, nullaosta
approve\provato, concedere, approvare
approved\provato, esperimentato
approving\assenziente
approvingly\assenziente
approximately\circa, verso
approximation\accostamento
appurtenance\annessi
appurtenant\attinente
apricot\albicocca
apricots\albicocche
April\aprile
apron\grembiale
aprreciate\degnare, valutare
apt\convenévole
aptitude\abilitazione, estro
aptness\sorte
Apulia\Puglia
aquaint\noto
aquaintance\conoscenza
aquanaut\sommozzatore
aquarium\acquario
aquatic plant\pianta acquatica
aquatics\sport acquatico
aquiline\piegato
arbiter\arbitro
arbitral award\lodo
arbitrariness\arbitrio
arbitrarinesses\arbitrio
arbitrary\arbitrario
arbitrate\modesta
arbitration award\lodo
arbitrative\decisivo
arbitrator\arbitro
arbor\longherone, traversa, asse
arbors\assi
arbour\pergolato
arc\arco, emiciclo
arcade\passaggio
arch\volta
archaeological\archeològico
archaeologist\archeòlogo
archaeology\archeologia, antiquaria
archangel\arcàngelo
archbishop\arcivescovo
archbishopric\arcivescovado
arched\inarcato
archenemy\nemico mortale
archeologist\archeòlogo
archeology\archeologia
archie\cannone antiaereo
architect\architetto
architecture\architettura
archive\archivio
archway\arcata
arclamp\lampada ad arco
arclight\luce ad arco
arcs\archi
ardent\appassionato, ardente, entusiasmato
ardently\focoso
ardor\entusiasmo
ardour\calore, entusiasmo
arduous\faticoso, faticoso
arduously\faticoso
arduousness\difficoltà
arduousnesses\difficoltà
are\siete, sono
are absent\manchi
are astonished\ti stupisci
area\area, territorio, superficie, superficie, località
arena\arena
arg\argomento
Argentina\Argentina
Argentine\Argentino
arguable\disputàbile, opinabile
argue\litigare
argument\questione, argomento, dimostrazione
argumentatively\litigigioso
arid\secco, asciutto
aridness\siccità
aries\ariete
arise\sorgere
aristocracy\aristocrazìa, aristocrazia
aristocratic\aristocràtico
arithmetic\fare i conti, càlcolo
ark\arca
arm\regolare, manica, armare, povero
arm-chair\poltrona
arm rest\bracciuolo
armament\armamento
armature\àncora, corridore
armchair\poltrona
arme\arme
armed\armato
armed forces\forze armate
armistice\armistizio
armor\armamento
armored\loricato
armors\corazza
armour\corazza, armamento
armoured\loricato
armrest\bracciuolo
arms\armi
army\armata, esercito, esèrcito
aroma\aroma
aromatic\aromàtico
arousal\eccitazione
arraign\oppugnare
arrange\predisporre, sistemare, ordinare, stipulare
arrangement\ordinamento, ordine, allegato
arraying\ordinativo
arrearage\arretrato
arrears\arretrato, debitare
arrest\detenzione, arrestare, arresto
arrestingly\imponente
arrival\venuta, emersione, arrivo
arrive\arrivare, giungere
arrived\arrivato
arriving\giungere
arrogance\arroganza, alterigia
arrogant\arrogante, fierezza
arrogantly\orgoglioso
arrogation\arroganza
art\arte, art
arterial road\arteria stradale
artful\astuto
artfulness\furberia
artichoke\carciofo
article\oggetto, artìcolo, quota
articles\artìcolo
articulately\distinto
articulateness\limpidezza
articulates\articolato
articulative\sereno
artifical\artefatto
artifice\disposizione
artificer\pirotecnico
artificial\artefatto
artificial person\ente morale
artificialness\leccatura
artillery\artiglierìa
artisan\artéfice
artist\quattrocentista
artistic\artìstico
artists\quattrocentista
artless\natura secondo
artwork\modello
as\come, quite
as a basic principle\in linea di massima
as a loan\a titolo di prestito
as a precaution\per ragioni di sicurezza
as a result\di conseguenza
as directed\come ordinato
as far as I am concerned\quanto a me
as good as new\come nuovo
as if\quasi che
as much\per quanto
as soon as\appena che
as yet\finora
ascend\esalare
ascendancy\influsso
ascended\salii
ascendency\ascensione
ascending\crescente, ascendente
ascension\esalare
ascensions\ascendente
ascent\ascensione, ascensione
ascertain\accertare, verificare
ascertainable\accertabile
ascertainment\accertamento
ascribe\attribuire
ash\cenere, frassino
ash-tray\portacenere
ash tree\fràssino
ash wednesday\le Céneri
ashamed\umiliato
Asia\Asia
Asian\asiatico
asinine\idiotico, stupido
asininely\ocaggine
ask\pregano, chièdere, invitare, esìgere, interrogare
ask for\esìgere
ask request\pregano
askance\obliquo
asked\esortato, domandai
asked for\pregarono
askew\obliquo
asks for\prega
asleep\dormiente
asparagus\asparago
aspect\cera, lato, apparenza, aspetto
aspen\tremula
asperity\asperità
asperse\calunniare
asphyxia\morte per asfissia
asphyxiate\affogare
aspirant\candidato
aspired\aspirai
aspirin\aspirina
ass\àsino, allocco
assailable\attaccabile
assassin\attentatore, uccisore
assassinate\assassinare
assassins\attentatore
assault\assalire, assalto
assaulting\aggressivo
assayer\esaminatore
assayers\esaminatore
assays\esamina
assemblage\adunata, quantità
assemble\montare, assembrare
assembler\montatore
assembles\adunati
assembling\montaggio
assembly\accumulazione, allineamento, montaggio
assembly line\fettuccia
assembly line work\lavorazione a catena
assembly operator\montatore
assemblyman\montatore
assent\promessa, assentire
assentation\consenso
assert\affermare, far valere
assert a claim\esigenza
asserters\sostenitore
assertion\affermazione, spiegazione
assertive\esplicito
assertiveness\arrogarsi
assertor\sostenitore
assertors\sostenitore
asserts\asserito
assess\quotare, valutare, quotare
assesses\tassato
assessment\inclinazione, valutazione, estimo
assessor\assessore
asset\vantaggio, brìscola
assiduous\assiduo
assiduousness\voga
assiduousnesses\voga
assign\delegare
assignation\assegnazione, assegnazione, vaglia
assimilable\comparàbile
assimilate\uniformare, fagocitare
assist\promuovere, aiutare
assistance\appoggio
assistant\collaboratore, assistente, aiutante
assisted\aiutai
assists\aiuta
assn\comitiva
assoc\fasciatura
associate\attinente, collaboratore, socio
associated\unito
association\fasciatura
assort\aggruppare, assortire, compilare
assorted\mischiato
assortment\assortimento, collezione
assortment of goods\assortimento
assorts\assortito
assuage\allattamento, contentare
assuagement\lenimento
assumable\adottàbile
assume\supporre, mi incarico, mi incarico, assùmere
assumed\supposto
assumedly\supposto
assumption\accettazione, supposizione
assumptive\supposto
assurance\confidenza, assicurazione
assure\assicurare, assicurare, mettere al sicuro
assured\assicurai
assuredly\sicuramente
assuredness\certezza
assures\assicurai
assurgent\ascendente
aster\àstero
asterisk\stellina
asthma\asma
asthmas\asma
astonish\sorprendere, stupirsi, sorprendere, stupire
astonishes\sorprende, attònito, sorprende
astonishing\strano
astonishment\stupore
astounds\sbalordito
astray\smarrire
astride\a cavalcioni
astringence\severità
astringences\severità
astringency\occlusione
astringent\astringente
astrodome\cupola
astrodomes\cupola
astrology\astrologìa
astronomer\astrònomo
astute\perspicace
astuteness\acume
asunder\in due
asylum\asilo
asymmetry\obliqua
at\a, al, negli
at best\nel migliore dei casi
at due date\nel termine stabilito
at first\primo, prima
at home\in casa
at it\in questo
at last\finalmente, infine, alla fine
at least\almeno, per lo meno
at nighttime\di notte
at no charge\esente dalle tasse, gratuito
at noon\a mezzogiorno
at once\tosto, direttamente, subito
at present\presente
at the earliest\al più presto
at the latest\al piu tardi
at the moment\attualmente
at the opening\accensione
at the outset\prima
at the same time\contemporaneamente, simultaneo
at the time\a suo tempo
at the top\sù, sopra
at this\a questo proposito
at what\presso al quale
ate\mangiai
athirst\assetato
athlete\atleta, sportivo
athletes\sportivo
athletics\atleta leggera
atman\battelliere
atmosphere\atmosfera
atom\àtomo
atomic age\era atomica
atomic bomb\bomba atòmica
atomic number\numero ordinale
atomization\nebulizzazione
atone\espiare, espiare
atoned\scontai
atonement\espiatorio
atonements\espiare
atones\sconti
atop\sopra
atrium\vestìbolo
atrocity\atto mostruoso
atrophy\scomparsa
attach\legare saldamente, affigere, legamento
attached\installato, immobile
attachment\attinenza, fortificazione
attack\assalire, attacco, assalto
attacks\accessi
attain\ottenere, conseguire
attains\raggiunto
attanuate\annacquare, mitigare
attempt\esperimentare, esperimento, attentato, operazione
attend\evàdere, servire, partecipare, assìstere, visitare
attend to\servire
attendance\presenza, manutenzione
attender\famulo
attends\accompagnato
attention\attenzione
attention getter\che attrae lo sguardo
attentive\attento
attenuate\annacquare
attenuating\diminutivo
attest\giurare
attestation\testimonianza, legalizzazione
attests\convalidato
attic\abbaino, deposito, soffitta
attire\abbigliare
attitude\punto di vista, posizione, intenzione, portamento
attitudinize\posare
attorney at law\legale
attorney in fact\facente funzione
attract\vestire, adescare
attracting\attrazione
attraction\attrazione
attractiveness\attrattiva
attribute\contrassegno, allegare, qualità
attribution\acconmodamento
attrition\snervamento
attritional\logorante
attune\votare
attunes\esatto
aubergine\melanzana
auction\licitazione
audaciousness\audacia
audacity\audacia, audacia
audibilities\udibilità
audibility\udibilità
audible\udibile, acùstico
audience\uditorio, spettatore, udienza
audio tape\nastro magnetico
audio transmission\collegamento radiofonico
audit\revisione
audit of annual accounts\esame finale
auger\trapano
augment\accrèscere, ingrandire
augmentation\ingrandimento
augments\ingrandito
augur\promettere
augury\profezia
August\agosto
augustly\maestoso
augustness\elevatezza
aunt\zia
aura\odore
aurae\olezzi
auras\olezzi
aureate\àureo
auspicious\opportuno
auspiciousness\felcità
austere\solido, severo
austereness\astinenza
austerity\limitazione
austral\meridionale
Austria\Austria
Austrian\austrìaco
austrian\austrìaco
Austrian\Austriaco
autarchy\autocrazìa
authenticate\vidimare, documentare
authenticated\convalidato
authenticates\convalidato
authentication\legalizzazione, documentazione
authenticity\credibilità, legalità
author\quattrocentista, autore
authoress\scrittrice
authoritative\imperioso
authorize\autorizzare
authorized\autorizzato
automat\autòma
automatic\automatico
automobile\vettura
autumn\autunno
auxiliary\ausiliare
available\ottenibile, disponìbile
avalanche\lavina
avenue\viale
average\mediocrità, media
avers\asserito
aviary\voliera
aviation\navigazione aerea, aeronàutica
aviations\navigazione aerea
aviator\pilota, aviatore
avoid\evitare
avouch\garantire
awake\destare
awash\inondato
away\perso, lontano, strada
awful\tremendo, mostruoso
awoke\svegliato
axis\asse
baboon\babbuino
baby\bebè
babycar\vetturetta
bachelor\cèlibe
back\dosso, addietro, suolo
background\sfondo
backlock\arretrato
backwardly\arretrato
bacon\lardo
bacterium\microbo
bad\cattivo
bad habit\cattiva abitudine
bad luck\guaio, sfortuna
badger\tasso
badly\male
bag\sacco, tasca, sacchetto, cartoccio, astuccio
baggage\bagaglio
bail\cauzione
bails\salva
bait\adescamento, esca
bake\cuòcere
baker\fornaio
bakery\panetteria
balance\bilancio, livellare, equilibrio
balance of payments\bilancia dei pagamenti
balancing\resa dei conti
balcony\balcone, terrazzino
bald\pelato
balderdash\sciocchezza
bale\appallottolare
balky\caparbio
ball\pallone, palla
Baltic Sea\Bàltico
banana\banana
band\cappella, fettuccia
bandage\fasciatura, fascia, bendatura
bandaged\fasciatura
bandit\rapinatore, bandito
banister\balaustrada
bank\sponda, banca, riva
bank account\conto bancario
bank cheque\assegno bancario
bank deposit\deposito in banca
Bank holiday\festa
bank transfer\trasferimento bancario
banker\banchiere
banknote\biglietto di banca
bankroll\finanziare
bankrupt\fallimento
bankruptcy\fallimentare, fallimento
banner\bandiera
banquet\banchetto
banter\punzecchiare
baptism\battésimo
bar\verga, sbarrare
barbaric\bàrbaro
barber\parrucchiere
barbershop\negozio da parrucchiere
bare\denudare
barely\appena
bargain\mercanteggiare
barge\barchetta
bark\abbaio, corteccia, scorza
barley\orzo
barn\granaio
barometer\baròmetro
baron\barone
baroness\baronessa
barracks\caserma, caserna
barrel\barile
barren\eremo
barrier\blocco, barriera
base\base, piedistallo
basic\base
basis\base
basket\canestro, cesto
basset\cane bassotto
bastardly\abnorme
bath\bagno, lavacro
bath room\stanza da bagno
bath tub\vasca da bagno
bathe\fanno il bagno
bathing\fanno il bagno
bathing trunks\calzoncini da bagno
bathroom\lavacro, stanza da bagno
baths attendant\bagnaiuolo
batiste\batista
baton\battitoio
battery\accumulatore, batteria
battle\combattimento, battaglia
bawd\ruffiana
bay\seno, baia
bayonet\baionetta
be\devoto, sua
be amazed\stupire
be ashamed\vergognarsi
be astonished\stupire
be called\avere il nome di
be effected\risultare
be enough\bastare
be in force\valere
be late\tardare
be liable\obbligarsi
be missing\mancare
be mistaken\fallare
be responsible\obbligarsi
be seated\star seduto, accomodarsi
be silent\tacere
be sufficient\bastare
be there\esistenza
be valid\valere
beach\lido, spiaggia
beads\spumare
beagle\segugio
beak\becco
beaks\becchi
beam\raggio, traversa
bean\fava
bear\orso
beard\barba
beards\barbe
bearishly\goffa
bearishness\zoticaggine
bears\orsi
beat\picchiare
beat up\bastonare
beaten\picchiato
beauteously\più bello
beauty\bellezza
beckon\accennare
become\venni
bed\letto
bedlam\manicomio
bedroom\càmera da letto
bedstead\lettiera
bee\ape
bee-keeper\apicoltore
beech\faggio
beeches\registrare
beer\birra
beetle\coleottero
before\prima che
befuddle\ubriacare
beg\pregano, questuare
beggar\accattapane
begin\comincio, esordire
beginner\esordiente
beginning\principio
beginnung\inizio
behave\comportamento
behaviour\comportamento
behead\decapitare
behind\indietro, dietro
behind it\là dietro
beige\bigio
beings\persone
belated\ritardato
Belgian\Belga
Belgium\Belgio
belief\fede
believable\credibile
believe\crédere
believed\credei
bell\campanello, campana
bellboy\valletto
bellicosity\bellicosità
belly\pancia, rumine
belong to\appartenere
belongings\possesso
below\sotto, abbasso, successivo, sotto
belt\cintura, cinghia
bend\piegare, piegare, virata, curvatura
bends\piega
beneath\abbasso, sotto
benefactor\benefattore
beneficence\beneficenza
benefit\guadagnare, guadagno
benevolent\benèvolo
benighted\ottenebrato
berry\bacca
berth\abbordo
beside\accosto
besides\d'altronde, inoltre
best\migliore
bestrew\aspèrgere
bet\scommettere
bethink\riflettere
betray\tradire
betrayal\fellonia
betrothment\fidanzamento
better\migliore
between\in mezzo, frà
bewilderment\garbuglio
beyond\oltretomba
Bible\Bibbia
bicycle\velocipede
bid\precetto
bidders\offerente
bidding\precetto
big\grande
big landowner\latifondista
bike\velocipede
bill\biglietto di banca, càlcolo, becco
bill of exchange\vicenda
bill of fare\listino
billion\miliardo
bind\legare, legamento
binding\legatura
binoculars\cannocchiale
biology\biografià
birch\betulla
bird\uccello
bird of prey\uccello rapace
birth\parto, natività
birthday\compleanno
bishop\véscovo
bistoury\scalpello
bite\morso, mordere
bites\mordi
bitter\birra, acerbo, amaro
bitterness\esacerbazione
bivouac\accampamento
bizarre\singolare
bl\biasimo
black\nera, negro, nero, negro
blackberry\mora
blackboard\lavagna
blackener\più nero
blackly\negro
blackmail\ricatto
blackmailer\ricattatore
blackout\perdita, panna
bladder\soffio, vescica
blade\spada, taglio, falda
blame\biàsimo, criticare, colpa, biasimo
blank\biglietto non vincente, bianco
blanket\coltre, coperta
blast\esplosione
bleak\eremo
bleed\buttare sangue
bleiben\rimanere
blend\mistura
bless\benedire
blessing\benedizione
blest\benedetto
blind\cieco
blissfulness\letizia
blister\soffio
block\blocco, sbarrare
block of flats\edifizio
blockade\embargo
blockading\bloccante
blockage\bloccaggio
blocked\bloccato
blood\sangue
blood pressure\pressione del sangue
bloods\stirpe
bloody\insanguinato
bloom\fiore, fiorire
blossom\fioritura
blouse\blusa
blow\fendente, soffiare, folata, battuta
blow up\esplòdere, gonfiare
blue\turchino
blueberry\mirtillo
blunt\spuntato
board\bordo, scarto, tavola, commissione
boarding school\collegio
boat\barca, barchetta
boat trip\viaggio in barca
body\addome, corpo
bodyguard\guardia del corpo
boil\forùncolo, cuòcere
boiled\cotto
boiling\cuòcere, bollente
boiling hot\bollente, cocente
bold\grassello
boletus\porcino
bolt\dardo, chiavistello
bomb\bomba
bombastic\ampolloso
bombthrower\lanciabombe
bond\saltellare
bone\osso, spina
bonnet\cofano
book\libro, registrare
bookbindery\legatoria
bookcase\libreria
booking office\biglietterià, forziere
bookkeeping\contabilità
bookseller\libraio
bookshop\libreria
boot\portabagagli, stivale
booth\casotto
bootless\inutile
bootlicking\accarezzevole
booze\acquavite
border\limitrofo, frontiera, lembo
border crossing\valico di confing
bordering\cingente
bore\calibro, annoiare
borealis\bòrea
boring\trapanazione, uggioso
born\nacqui, nato
borrow\farsi prestare
boss\capo, imprenditore
botanize\erborizzare
both\entrambi
bother\frastornare
bottle\bottiglia, boccetta
bottle opener\apribottiglia
bottom\suolo, natica
bough\ramo
bound\abbrivo, slancio
boundary\frontiera
bourgeous\civico
boutique\impresa
bow\prua, arco
bow tie\mosca
bowl\scodella, palla
bowlegs\ercolino
box\palco, scatola
boxcars\vagone merci
boxer\pugile
boxing\pugilato
boy\giovinetto, ragazzo
boyfriends\amici
bracelet\braccialetto
braces\bretelle
brain\cervello
brainless\ingenuo
brains\mente
brake\estro, frenare
branch\filiale, ramo
branches\rami
brand\marchio
brass\ottone
brass band\fanfara
brave\coraggioso, valoroso
Brazil\Brasile
Brazilian\Brasiliano
bread\pagnotta
break\vomico
breakdown\perdita, panna
breakdown service\servizio recupero automezzi
breakfast\colazione
breast\torace
breath\lena, alito, etere
breathe\fiatare
breathe out\esalare
breathing\respirazione
breech\fermatura
breed\procreare, razza
bribing\corrompente
brick\mattone
bride\fidanzato, fidanzata
bridegroom\fidanzata, fidanzato
bridge\ponte
brief\breve
briefs\mutande
brigaded\uniti
bright\fulgente, brillante, squillante, saggio, savio
brighter\centesimo
brightness\chiarezza
brilliant\geniale, fastoso
bring\portare
bringing\portante
brisk\vivace
Britain\Gran-Bretagna
brittle\friabile, fragile
broad\largo
broadcast\mando
broadcasting\radio
brochure\brossura
broken\rotto, avarìa
broker\sensale
bronchitis\bronchite
bronze\bronzo
bronzy\abbronzato
brooch\spilla
brood\cova
broom\scopa
brother\fratello
brother in law\cognato
brothers\fratelli
brothers and sisters\fratelli
brown\marrone
bruise\livido, contusione
brush\pennello, spazzola
brusque\pesce persico
brutal\brutale
brutality\brutalivà
bubble\soffio
bucket\secchio
buckle\fibbia
bud\boccio
buddies\camerati
buddle\sè
budget\governo della casa
budgie\pappagallo ondato
buggies\carrozzella
build\edificare, fabbricare
builder\muratore
building\edificio, edifizio
building site\cantiere
builds\costruisce
buildup\disposizione
built\costruii
built in\installato
bulb\lampadina
bulky\ingombrante
bull\toro
bulletin\rapporto
bullfight\corrida
bullion\lingotto
bullwhip\frusta
bumblebee\calabrone
bump\accidentalità, ammaccatura, gobba
bunch of flowers\struzzo
burden\addossare, aggravio
burglar\scassinatore
burglary\scasso
burial\tomba
burn\ustione, bruciare, accendere, pungere, ardere
burnisher\lucidatore
burp\ruttare, eruttare
burst\scoppiare, crepare
bus\corriera, autobus
bush\boschetto, arbusto, cespuglio
bushwhack\appostare
business\affare, affari, faccenda
business deal\affare, faccenda
businessman\commerciante, omo
bussed\baciai
busy\diligente, occupato
but\ma, però
butcher\macellaio, macellaio
butcher's shop\macelleria
butter\burro
butterfly\farfalla
buttock\natica
button\bottone, tasto
buy\comprare, acquistare
buy up\accaparrare
buyer\acquirente, compratore
buyout\accaparramento
buzzer\vibratore
by\presso
by heart\a memoria
by letter\per lettera
by mistake\inavvertitamente
by now\già
by return of post\a posta corrente
by telephone\telefonico
bye\rivedersi, arrivederci, addio
bypass\elusi
cab\tassì, vettura di piazza
cabaret\cabaret
cabbage\cavolo, càvolo
cabel\cavo
cabin\cabina, cabina, capanna
cabinet\armadio
cabinetmaker\ebanista
cable\cavo
cable-car\funivia
caboodle\masnada
cadaver\cadavere
cadidate\candidato
cage\gabbia
cake\torta, focaccia
calabash\zucca
calculate\calcolare, fare i conti
calculation\calcolo, calcolo
calendar\calendario
calf\vitello
calibre\calibro
caliph\califfo
call\fama, chiamare, chiamata
call on\visitare
callbox\cabina telefònica
calm\equilibrato, calmare, ristoro, calmo, calma
calm down\calmare
calorie\caloria
camel\cammello
camera\apparecchio fotogràfico, macchina fotografica
camp\campeggiare
camp-bed\branda
campaign\lotta elettorale
campfire\fuoco da campo
camping site\campeggio
campsite\campeggio
can\può, potere, barattolo, bidone
canal\canale
cancel\stornare
cancellation\cancellazione, rifiuto, storno
cancer\granchio
candle\candela
candy\caramella
cane\bastone
cannon\cannone
canoe\canoa, canoa
canst\puoi
cantata\cantata
canteen\mensa
canvas\stoffa
cap\cappa, berretto, coprire, tappo
capable\adatto, abile, idoneo, capace
capacitor\condensatore
capacity\capacità
cape\promontorio, ferraiolo
capital\metropoli, capitale
capitalism\capitalismo
capitalize\capitalizzare
capitally\capitale
capitol\metropoli
capitualte\capitolare
capon\cappone
caprice\capriccio
capsize\capovòlgersi, ribaltabile
captian\capitano, capitano
captor\colui che piglia
capture\rilevamento, accalappiare
car\vettura, automobile
car park\parcheggio
carafe\carato
carat\carato
caravan\roulotte
card\carta di giuoco
card-index\schedario
cardboard\cartone
cardigan\giacca a maglia
cardinal\cardinale
cardinal number\numero cardinale
cards\carte
care\fedeltà
career\pista, carriera
careful\accurato, prudente
carefully\minuzioso
careless\abborracciatamente, incauto, leggiero
carelessness\dimenticanza, negligenza
caress\carezza, accarezzare, accarezzare
carfe\caraffa
cargo\nave da carico, carico
carnation\garofano
carnival\carnevale, carnevale
carp\carpione
carpark\parcheggio
carpet\tappeto
carriage\azzardare
carriage paid\esente da tasse di porto
carriageway\corsia
carrot\carota corta, carota
carry on\continuare a fare
carry out\effettuare
carryover\rimanenza
cart\carretto
cartage\carreggio
cartel\lega
cartilage\cartilagine
cartoon\caricatura
cartridge\cartuccia
case\tasca, valigia, affare, astuccio, decadimento
cash\denaro in contanti, incassare, incassare
cash on delivery\rimborso assegno
cash payment\pagamento in contanti
cash up\regolare
cashdesk\forziere
cashier\cassiere
cask\barile
caskets\cassettino
casserole\casseruola
cassette\cassetta
cast iron\ghisa
caste\casta
castes\cassone
castigation\punizione
castigatory\punente
castle\torre, castello
castrate\castrare
castrates\castrato
castration\accapponatura
casts\getta
casual\occasionale, accidentale
casually\occasionale
casualness\apatìa
casualties\incidenti
cat\gatto, gatta
cataclysmal\catastrofale
catacomb\catacomba
catalog\catàlogo
catalogue\catàlogo
catalyst\catalizzatore, acceleratore
catapult\avventare, catapulta
catarrh\catarro
catastrophe\catàstrofe
catastrophic\catastrofale
catch\accalappiare, cogliere
catch a cold\raffreddarsi, costipato
catch up with\a prendere
catchword\lemma
catchy\difficile
catechism\catechismo
catechumen\principiante
categorical\categorico
category\categoria, ceto
catena\catena
catenate\concatenare
catenation\congiuntura
catering\alimentazione
caterpillar\bruco
caterwaul\miagolare
catharsis\rilassamento
cathartic\lustrale
cathedral\cattedrale
catholic\cattòlico
catkin\gattino
catlike\felino
catnap\pisolino
catnip\bella
cats\gatte
cattle\bovini, bestiame
cattle plague\epizoozia
cattlebreeding\zootecnico
caugh\tossire
caught\prigioniero
cauliflower\cavolfiore
cause\cagionare, ragione, cagione, causo
causes\cagionato
causeway\diga
causing\cagionante
caustic\nitido, erosivo
cauterization\bruciare
cauterizing\erosivo
caution\fedeltà, precauzione
cautions\prudente
cavalier\cavalcatore
cavalierly\spontaneo
cavalry\cavalleria
cave\cavità, grotta
caveat\preservamento
cavern\cavità
cavernously\cupo
caviar\caviale
caw\gracchiare
cease\cessare
ceaseless\incessante
ceasing\finente
cedar\cedro
ceiling\soffitto
ceilings\copro
celebrant\ufficiante
celebrate\festeggiare, ufficiare
celebrated\famoso
celebrating\ufficiante
celebration\fisso
celery\sedano
celestial\celestiale
cell nucleus\nucleo cellulare
cellar\cantina
cellarer\cantiniere
cellars\cantina
cello\violonvello
cement\cemento
cemented\cementato
cementery\camposanto
cemetery\camposanto, cimitero
censorship\censura
censure\criticare
censures\biasima
census\censimento
centenary\secolo
centennial\centenario
center\centrare
center line\linea centrale, asse
centimeter\centìmetro
centimeters\centìmetro
centimetre\centìmetro
central\centrale
central heating\calorìfero
centralization\accentramento
centralize\accentrare
centralizing\accentratore
centre\espediente, metà, epicenvro
centrifugal\centrifugale
centrifugal force\forza centrifuga
century\secolo
cereals\cereali
cerebral apoplexy\apoplessìa cerebrale
cerebric\cervello
ceremonial\solenne, cerimoniale
ceremonial act\cerimonia
ceremonially\cerimoniale
ceremonies\festeggiare
ceremoniousness\solennità
ceremony\cerimònia
certain\sicuramente, sicuro
certainly\ovvio, certamente
certainty\certezza
certificate\attestazione, attestato, testimonianza, atto
certificates\certificati
certification\documentazione, attestazione
certified\convalidato
certify\certificare
certitude\certezza
cervical\collo
cervix\collottola
cession\cessione
chadband\ipocrita
chafer\coleottero
chafers\coleottero
chaff\loppa
chaffer\mercanteggiare
chagrin\dispetto
chain\catena
chain reaction\reazione a catena
chains\incatenare
chair\presidenza, sedia
chairman\presidente
chairmanship\presidenza
chairs\seggiole
chalice\calice
chalk\cretàceo, creta
challenge\sfidare, disfida
challenge trophy\premio trasmissibile
chalybeate\ferroso
chamber\camera
chamber music\musica da camera
chamberlain\ciambellano
chambermaid\cameriera
chameleon\camaleonte
chamois\camoscio
champ\campione, mastico
champagne\spumante
champed\masticai
champing\masticante
champion\campione
championship\maestranza
champs\mastica
chance\felcità, occorrenza
chancellor\cancelliere
change\convertire, alternare, alterare, variazione
change in the weather\cambiamento di tempo
changeability\variabilità
changeable\variàbile
changeableness\variabilità
changeover\commutazione
channel\programma
channeling\direttivo
chanticleer\rubinetto
chanticleers\galli
chaos\viluppo, caos
chap\crepatura, fante
chapel\cappella
chaperonage\accompagnamento
chaplet\ghirlanda
chapter\capitolo, settore
char\simbolo
character\natura, simbolo
characteristic\caratteristico, contrassegno, qualità
characters\simbolo, personalità
charge\caricato, lamentela, tassa, aggravio, delegare
charge off\copiare
charged\aggravio
charges\oberato
charges with\incaricato
charitable\benèfico
charitableness\bontà
charity\amore del prossimo, mantenimento
charm\attrattiva, grazia
charming\gentile, grazioso, incantevole, incantevole
charmingly\incantevole
charmingness\attrattiva
charmingnesses\fascini
charmless\insipido
charms\fascini
chars\simbolo
chart\tabella
charwoman\donna delle pulizie
chary\prudente
chase\inseguimento, cacciare, caccia
chasm\abisso, spaccature
chassis\chassis, telaio, orbita
chaste\pudico
chasten\punire
chasteness\nettezza
chastise\castigare
chastisement\castigo
chastising\punitivo
chastity\castità
chat\farneticare, chiacchierare
chattel\possesso
chatterbox\ciarlone
chatterer\chiacchierone
chattily\loquace
chatty\lingwacciuto, facondo
chauffeur\autista
cheap\economico, di valore scadente
cheat\barare, imbrogliare, abbindolare
cheater\abbindolatore
check\esaminare, assaggiare, verificare, prova, assegno
check card\carta assegno
checkbook\libretto degli assegni
checked\quadrettato
checker\esaminatore
checkers\esaminatore
checking\controllo
checks\esamina
checkup\controllo, esame
cheek\guancia, mascella
cheekily\insolente
cheekiness\impertinenza
cheeks\cuòcere
cheeky\insolente
cheer\esultare
cheerful\pieno di gioia, festevole
cheerfulness\giovialità
cheerily\lieto
cheeriness\ilarità
cheerless\sconsolato
cheers\salute
cheery\lieto
cheese\formaggio
cheesiness\scipitezza
cheesy\senza gusto
chef\cuoco
chemical\chìmico
chemicals\prodotti chimici
chemist\chimico, farmacista
chemistry\chìmica
cheque\assegno
cheque book\libretto degli assegni
cheque card\carta assegno
cherish\coltivare
cherishable\apprezzàbile
cherished\stimai
cherisher\estimatore
cherishes\stima
cherries\ciliege
cherry\ciliegia
cherry-tree\ciliegio
cherubic\angèlico
chess\scacco
chess board\scacchiera
chest\torace, cassapanca, valigia, cassone
chestiness\immaginazione
chestnut\castagna
chestnut-tree\castagno
chevy\dare la cacia
chew\mastico
chewed\masticato, masticai
chewing gum\gomma da masticare
chews\mastica
chic\stile
chicanery\vessazione
chick\stile, pulcino
chicken\pollo, galletto
chicken broth\brodo di pollo
chickenpox\varicella
chickens\polli
chicks\pulcino
chid\biasimato
chide\criticare
chides\biasima
chief\capo
chiefly\principalmente, in prima linea
chilblain\gelone
child\fanciullo, fanciulla, fanciullesco
child to be baptized\battezzando
childbearing\parto
childbirth\parto
childhood\fanciullezza
childish\fanciullesco
children\bambini
chilean\cileno
chillier\radiatore
chilly\fresco, frigido
chime\suonare
chimeric\fantastico
chimney sweep\spazzacamino
chimp\scimpanzè
chimpanzee\scimpanzè
chin\mento
chin beard\barbetta
China\Cina
china\porcellana
chinaware\porcellana
Chinese\Cinese
chink\fessura, tinntinnare
chintzy\senza gusto
chirpy\vivace
chirrup\schioccare
chiseler\lestofante
chiselers\lestofante
chit\fantolino
chivalrous\galante
chive\erba cipollina, cipollina
chlorine\varechina
chock\cùneo
chockerel\galletto
chocolate\cioccolata
choice\assortimento, selezione, eletta
choir\coro
choke\tordo, affogare
choked\strangolato
cholera\colera
chomp\mastico
chomped\masticai
chomps\mastica
chooses\sceglie
choosy\schizzinoso
chop\tritare, costoletta
chops\basette
choral society\società corale
chorally\coro
chord\accordo, còttimo
choreography\coreografia
chorus\ritornello, coro
chose\scelto
chosen\scelto
chow\foraggio
chows\foraggio
Christ\Cristo
christen\battezzare
christian\cristiano
Christmas\Natale
Christmas Eve\vigilia di Natale
chrome\cromo
chromium\cromo
chronic\cronico
chronicle\crònaca
chronologic\cronologico
chronological\cronologico
chronology\cronologìa
chronometer\cronometro
chronometry\cronometraggio
chubb lock\antifurto
chubby\grossolano
chucked\gettai
chucks\getta
chummily\socievole
chumminess\veglia danzante
chump\allocco
chunk\ceppo
chunkily\cumulo
chunky\robusto
church\chiesa
churches\chiese
churl\villanzone
churlish\villano
chute\solco
cicada\cicala
cicerone\cicerone
cider\vino de mele
cigar\sigaro
cigarette\sigaretta
cigarette holder\bocchino
cigarette lighter\accendino
cinder\cenere
cine camera\cinepresa
cinecamera\cinepresa
cinema\cìnematògrafo
cinnabar\cinabro
ciphers\calcola
circle\cerchia
circles\cerchi
circlet\circolo
circuit\circùito, tratto, circolazione
circuitry\elettronica
circular\rotondo, sferico
circular path\orbita
circular saw\sega circolare
circular tour\giro turìstico
circularization\notifica
circularize\notificare
circularly\sferico
circulate\circolare, girare, roteare
circulation\circolazione
circumference\volume
circumference of the earth\circonferenza della terra
circumferences\circonferenze
circumlocutory\verboso
circumspect\prudente
circumspection\oculavezza
circumspectness\precauzione
circumstance\circostanza
circumstances\circostanze
circumstantial\largamente
circumvent\elusi, impedire
circus\circo
cit\citazione
cite\citare
cites\citato
citizenship\naturalità
city\città, centro
city centre\centro
city map\piantina
civic\urbano
civil\civico
civil servant\funzionario
civility\cortesia
civilly\educato
ckeck off\sganciare
clack\valvola, strepitare
claim\pretendere, affermazione, esigenza, affermare
claim for compensation\diritto di risarcimento
clairvoyant\veggente
clamber\arrampicarsi
clambering\rampicante
clammily\glutinoso
clamminess\viscosità
clamming\impedente
clamor\smaniare
clamored\smaniai
clamoring\smanioso
clamors\smania
clamour\gridare
clamoured\gridai
clamouring\urlante
clamours\grida
clamp\durare, consolidare
clamping\fissante
clamps\fissato
clan\parentado
clandestine\segreto
clandestineness\segretezza
clangor\suono
clangorous\risonante
clap\pettegolare, applaudire, applauso
claret\vino rosso
clarification\chiarificazione
clarify\chiarificare, chiarificare
clarinet\clarinetto
clarity\limpidezza
clash\schiacciare
class\categoria, ceto
class book\libro di scuola
classic\clàssico
classical\clàssico
classicist\conoscitore
classics\clàssico
classiness\eleganza
clause\frase, clausola
clavicle\clavìcola
claw\artiglio, graffiare, grinfie, unghia
clay\argilla
clayey\argilloso
clean\forbire, lustrare, lindo
cleaned\pulito
cleaning\esrwrgazione
cleanly\pulito
cleanness\lindezza
cleanse\forbire
cleansing\lustrale
clear\forbire, sereno, esente, distinto
clear as daylight\chiaro come il sole
clear away\rimuovere
clear up\chiarire
clearance\chiarificazione
clearance sale\liquidazione
cleared\sparecchiato
cleared away\rimosso
clearer\centesimo
clearly\sereno
cleats\fissato
cleavability\viscosità
cleavage\fenditura
cleave\incollare
clefts\fèndere
clem\morire di fame
clemency\indulgenza
clerk\funzionario
clever\lesto, sveglio, esperto, saggio, furbo, savio
cleverly\saggio
cleverness\saggezza
cliche\stereotipo
client\committente, compratore
cliff\faraglione
climacteric period\menopausa
climactical\climàtico
climate\clima
climatic\climàtico
climax\momento culminante
climb\arrampicarsi, montare
climber\alpinista
climbing\arrampicarsi, alpinismo
clime\località
clinch\decidere
clincher\brìscola
clinching\decisivo
clingy\affezionato
clinic\clinica
clinical\clinico
clink\suonare
clitoris\clitoride
cloak room attendant\guardarobiera
cloakroom\vestiario
clock\orologio
clod\zolla
clogging\impedente
clone\abbozzare, alterare
clones\immagine
close\argomentare, chiudere, ostruire
closed\chiuso, bloccato
closefisted\esoso
closely\impermabile
closeness\vicinità
closes\chiudi
closest\venturo
closet\armadio
closing\chiusa
closing time\cessazione del lavoro
closure\chiusa, ostruire
clot\quagliarsi, cumulo
cloth\stoffa, stoffa, ordito, vestire
clothes\vestimento
clothesline\corda per stendere la biancher
clothespin\molletta
clothing\vestimento
clothing industry\abbigliamento
clots\cumulo
cloture\fermatura
cloud\nube, nuvolo, ombrosità
cloudburst\nubifragio
clouded\annuvolato
cloudily\nuvolo
clouds\nuvole
cloudy\nuvolo, annuvolato, torbido
clouldless\sereno
clout\lobo
cloy\disgustare
club\casino, bastonare, unione
clumpy\globuloso
clutch\frizione
coach\autobus
coagulate\quagliarsi
coal\carbone
coalition\coalizione
coarse\zotico
coast\costa
coat\cappotto, pelle, strato
coating\strato, strato
cobat\combattimento
cocaine\cocaina
cock\rubinetto
cocoa\cacao
coconut\noce di cocco
cocoon\bozzolo
code\codice
codliver oil\olio di fegato di merluzzo
coffee\caffè
coffee pot\bricco
coffin\feretro
coin\moneta, zecca
coincidence\emergenza
cold\raffreddore, raffreddore, frigido, aver freddo
cold air\aria fredda
coldhearted\insensibile
colic\còlica
collapse\crollare
collar\bàvero
colleague\collega
collect\incassare, raccogliere, ritirare
collectedly\rassegnato
collection\incasso, collezkone
collective\in comune
college\collegio, collegio
colleges\accademia
colloidal\gelatinoso
colonel\colonello
colossal\gigantesco
colossus\orco
colour\tinta, colorazione
colour blind\daltonico
coloured\colorato
colourful\colorato
colourless\scolorato
column\colonna, spaccature
comb\pettinare, pettine
combat\lottare
combats\combattuto
combine\unirsi, complesso industriale
combustion\ustione
come\venni
come about\accadere, succedere
come close\avvicinarse
come closer\avvicinarse
come out\andare a passeggio
come to a halt\fermarsi
come to mind\ricordare
comedian\comico
comedy\commèdia, commedia
comes\venni
comet\cometa
comfort\consolazione
comfortable\còmodo, accogliente
comfortably\piacevolmente
comforter\consolatore
comforting\consolante
comic\comico
comical\comico
comma\virgola
command\comandare, comando, dominare
commemorate\rimembrare
commend\elogiare
comment\commento
commentary\relazione
commenttre\comméttere
commerce\commercio
commission\commissione
commit\comméttere
commit oneself\sè
commit suicide\uccidere
commit to\obbligarsi
common\sciolto, ordinario, comune
commonalty\universalità
commonly\frequente
commonplace\luogo comune
commotion\agitazione
community\comunità
compact\compatto
compactly\compatto
companionship\cooperativa
company\ditta, comitiva, impresa, intraprendere
companyof\comitiva
comparable\comparàbile
compare\paragonare
comparison\confronto
compartment\scompartimento
compass\bùssola
compassion\simpatia
compatible\compatibile
compensate\livellare, indennizzante
compensation\compromesso, abbuono, indennizzo
compete\concorrere
competence\competenza
competition\concorrenza
competitive exam\esame
competiton\concorso
complain\lamentare, appesantire
complainingly\querulo
complaint\reclamazione, lamentela, reclamo
complement\completamento
complete\completare, esplodere, ultimare, finire, integrare
completely\completamente
completion\compimento
complex\complesso
complicated\intricato, largamente, complicato
compliment\complimento, lisciatura
component\componente
composer\compositore
composition\trattato
composure\tranquillità
comprehend\rinchiudere, comprendere, capire
comprehension\comprensione
comprehensive\scuola superiore
compression\pressione
compromise\compromesso
compulsory\obbligatorio
computable\computàbile
computation\calcolo
compute\calcolare
computer\calcolatore
conceal\nascosi, occultare
conception\concezione
concern\allarme, concèrnere
concert\concerto
conciliation\riconciliazione
concise\breve
conclude\finire
conclusion\conclusione
concrete\calcestruzzo
condemn\condannare, maledire
condition\condizione
conditional\condizionale
conditioned\condizionale
condolence\condoglianze
conducing\servente
conduct\comportamento, esercitare
conductor\bigliettaio
cone\birillo, cartoccio
confectionery shop\pasticceria
conference\congresso
confess\confessare, confessarsi
confession\confessione
confidence\fiducia, confidenza
confidential\famigliare
confirm\certificare
confirmation\convalidazione
confirmed\confermato
confiscate\confiscare
conflict\conflitto
confornt\confrontare
confront\contrastare
confrontation\opposizione
confuse\scambiare
confusion\garbuglio, quiproquo, viluppo
congelation\congelarsi
congest\ostruire
congestion\calca, afflusso di sangue
congratulate\felicitarsi, congratularsi
congratulations\felicitazione
conical\cònico
conifer\conifera
conjugate\coniugare
conjugation\coniugazione
conjunction\congiunzione
connect\copulare, attaccare, legare
connection\congiuntura, coincidenza
conquer\conquistare
conquest\conquista
conscience\coscienza
conscientious\coscenzioso
conscious\evoluto
consecutive\consecutivo
consent\consenso, concordare, assentire
consequence\successione, consequenza
conservative\conservativo
consider\riflettere, considerare
considerable\considerevole, rilevante, vistoso
considerably\rilevante
consideration\considerazione
consignor\mittente
consist\essere di
consistency\coerenza
consolation\consolazione
console\consolare
consort\circolare
conspiracy\congiura
constant\fermo
constipation\occlusione
constitute\formare
constrictive\corto
construction\edificazkone
constructions\costruzioni
constuct\fabbricare
consul\console
consulate\consolato, consulato
consult\interrogare
consulting service\consultazione
consume\esaurire
consumer\consumente, consumatore
consummation\compimento
consumption\consumo
contact\congiuntura
contagious\contagioso
contain\comprèndere
container\recipiente
contamination\infezione
contemplate\considerare
contemplates\esaminato
contemplation\considerazione
contempt\vilipendi
content\soddisfatto, contentezza
contented\soddisfatto
contentiously\accattabrighe
contents\volume
contest\contestare
contiguous\limitrofo
continent\continente, parte della terra
contingency\eventualità
contingently\eventuale
continual\continuativo, permanente
continually\continuamente
continuation\continuazione
continue\proseguire, continuare a fare
continuous\incessante
continuously\incessante
contour\contorno
contract\contratto
contractor\imprenditore
contradict\contraddire
contrast\antagonismo
contribute\concórrere
contribution\quota
contributions\contributi
contrition\pentimento
control\dominare, vigilare, controllo
convalescence\convalescenza
convenient\vantaggioso, utilitario
convention\congresso
conversation\conversazione, collòquio, discorso
converses\parla
convert\commutare
converted\trasformato
convex\inarcato
convey\far noto
conveyor\impianto di trasporto
convicted\condannai
convince\persuadere, persuadere
convoy\convoglio
cook\cuòcere, cuoco, cuoca
cook book\libro delle ricette
cooked\cotto
cooker\focolaio
cooking\bollore, cuòcere
cool\fresco
cool down\refrigerare
cooperation\collaborazione
cooperative\cooperativa
coopertaion\collaborazione
coping\cresta
copious\opimo
copper\rame
copy\copia, copiare, copia
coquettish\civettuolo, vano
coral\corallo
cord\cordicella, spago
cordial\cordiale, succo, affettuoso
cords\spaghi
core\nucleare
cork\tappare, sughero
corkscrew\cavatappi
corn\mirino, granturco
corner\àngolo
coronary\infarto
corporeal\corporale
corpse\salma
correct\corretto, perfezionare, emendare, correggere
correction\riforma, emendazione
correspond\corrispóndere
correspond to\corrispóndere
correspondence\corrispondenza, corrispondenza
corridor\corridoio
corrosion\corrosione
corrupt\corrotto
corruption\favoritismo
cosmetic\cosmetica
cossack\cosacco
cost\costare
cost free\gratuito
costly\caro, costoso
costs\spese
cosy\accogliente
cotton\cotone
cotton wool\ovatta
couch\divano, sofà
couchette\carrozza a cuccette
cough\tossire
council\consigliere
councillor\consigliere
counsel\consiglio
counsellor\vademecum
counted\contai
counter\numeratore
counter-attack\contrattacco
counteragent\antidoto
counterfeit\falsare
counterfeiting\falsificante
countermand\stornare
country\terreno, campagna
countryside\campagna
county\provincia
coup de pied\calcio
couple\abbinare, paio
courage\fibra
course\quotazione, decorso, tratto, itinerario
court\cortile, pietanza
courteous\educato
courts\giustizia
courtyard\cortile
cousin\cugina, cugino
cover\copro, rivestimento, callotta, coprire
covet\bramare
cow\vaccino, vacca
cowardliness\vigliaccheria
crabbedness\uggia
crack\sciogliere, crepatura, schiacciare
crackdown\razzia
cracked\fesso
crackled\fesso
crackup\fallimento
cradle\culla
crafted\fatto a mano
craftiness\furberia
craftsman\artéfice
cramp\spasma
crane\gru
crasser\rozzissimo
crater\cratère
crave\intagliare
craves\supplica
crawler\rettile
crayfish\aragosta, gambero, gambero di fiume, granchio
crazy\pazzo
creak\scricchiolare
cream\crema, panna, panna
creamery\vacceria
create\produrre, produrre, abbordo, attìngere
creation\cultura, nomina, creazione
creator\fattore
credit\avere, accreditare, credito
creditor\creditore
creep\strisciare
crepitate\schiacciare
crescent\mezza luna
crest\pettine
crew\frotta, equipaggio
crime\crimine
criminal\malfattore
critical\crìtico
criticism\crìtica
croak\gracidare
crockery\porcellana
crocodile\coccodrillo
crook\lestofante, pezzente
crooked\storto
crop\raccolto
cross\incrociare, croce, attraversare, attraversare
cross check\controprova
crossing\crociata
crossover\trasferimento
crowd\calca, spingere, quantità
crown\corona
crucifix\crocifisso
crude\grezzo
cruel\crudele
cruelty\efferatezza, maltrattamento
cruise\crociera
crunch\rosicchiare
crush\tritare, quantità
crusted\incallito
crutch\gruccia
cry\grido, gridare
cube sugar\zucchero in zollette
cubes\cubo
cubicle\cella
cucumber\cetriolo
culinary\cuoco
cultivate\allevare
cultivates\coltivato
cultivation\coltura
cultural\culturale
culture\civiltà
cultured\colto
cuneiform\cuneiforme
cup\calice, tazza
cupboard\armadio
curable\curàbile
cure\guarire
curiosity\curiosità, curiosità
curious\memorabile, curioso
curl\riccio
curler\bigodini
currency reform\riforma monetaria
current\corrente, attuale, forza, volgente, presente
currently\oggigiorno
curse\maledire
curser\blasfemo
cursor\lancetta
curtain\cortina, sipario
curve\curvatura
cushion\smorzare, cuscino
custom\usanza, usanza, uso
customer\avventore
customs\dogana
customs clearance\operazioni doganali
customs declaration\dichiarazione doganale
customs duty\dogana
customs inspection\controllo doganale
customs office\ufficio doganale
cut\tagliato, taglio, intaccatura, tagliare
cutaneous\epidermide
cutlery\posate
cutlet\costoletta
cutout\estirpare
cuttlefish\calamaro
cycle\circolazione, andare in bicicletta
cyclist\ciclista
cylinder\cilindro
cypres\cipresso
Dad\papà
dad\papà
Daddy\papà
dagger\pugnale
dahlia\dalia
daily\quotidiano
daintily\viziato
dam\diga
damage\difetto, lesione, ledere
damaged\guasto
damaging\lesivo
damnably\abominabile
damp\umido
dance\ballare, pallone, ballo
dance-hall\locale da ballo
danced\ballai
dancer\ballerino
Dane\danese
danger\pericolo
dangerous\pericoloso
dangerousness\pericolosità
dangle\ciondolare
dangling\penzolante
daredevils\spavaldo
dark\accigliato, ermetico, oscurità
darken\oscurare
darkness\oscurità, oscurità
darling\prediletto
dash\lineetta di sospensione
dashboard\cruscottò
dastard\codardo
data\fatti
date\data, dattero
date of birth\data di nàscita
dated\sorpassa
daughter\figlia
daughter-in-law\nuora
daughters\figlie
dawdle\gingillare
dawn\crepùscolo, aurora, albeggiare, alba
day\giorno
day in day out\tutti i giorni
day off\feria
daydreamers\sognatore
days\giorni
daze\assordare
dazzle\accecare
dead\morto
dead-end street\vicolo cieco
dead body\salma
dead man\morta
deadlock\bloccaggio
deaf\gòmena, sordo
deaf-mute\sordomuto
deafening\assordante
deafness\sordità
dear\caro
dearth\difetto
deatch\sciogliere
death\morte
debate\dibattito
debilitation\indebolimento
debris\ruderi
debt\colpa
debtor\debitore
debunk\smascherare
deburns\basette
debutant\esordiente
decade\decennio
decant\travasare
decanter\caraffa
decapitation\decapitazione
deceive\abbindolare
decelerate\allentare
December\dicembre
decent\fecente, gentile
decide\decìdersi, decìdere
decimal\decimale
decision\risoluzione, decisione, deliberazione
decisive\decisivo
deck chair\sedia a sdraio
declaim\declamarg
declaration of value\valore dichiarato
declare\dichiarare, addaziare, estrinsecare
decline\rifiutare
decorate\adornare, guarnire
decoration\onorificenza
decrease\togliere, abbassarsi, diminuzione, abbassarsi
decree\emanazione
decuples\decuplicato
deduct\falcidiare, conseguire
deductible\esitabile
deduction\remissione
deed\documento
deep\cupo
deepest\profondissima
deer\capriolo
defaulters\debitore
defaulting\moroso
defeasibly\oppugnabile
defeat\sconfitta, vincere
defecation\evacuazione
defect\avarìa
defective\avarìa, guasto
defence\difesa
defend\difèndere
deficiency\mancare
deficient\difettivo
deficit\deficit, deficit
definitely\fisso
deflection\aberrazione
defraud\abbindolare
defrayal\pagamento
defy\sfidare
degrade\degradare
degree\grado, licensa
dehumidifies\asciuga
dehydrate\essiccare
delay\tardare, spostare, ritardo, ritardo
delayed\rallentato
delete\estinguere, verniciare
deliberate\riflettere, voluto
deliberately\apposta
delibrate\consigliare
delicacy\attenzione
delicate\esile, elegante
delicateness\delicatezza
delicatessen shop\macelleria
delicious\squisito
deliciously\squisito
delight\uzzolo
delighted\lieto, allietare, lietissimo
delightful\incantevole, delizioso
delineate\abbozzare
delinquencies\trascorrere
delinquency\criminalità
deliquesces\si scioglie
delirium\delirio
deliver\estradare, fornire
delivery\estradizione, fornitura, parto
deluge\dilagare, dilagare
delve\indagare
demand\richiesta, esìgere, richiesta
democracy\democrazia
democrat\democratico
demolishing\distruttivo
demon\demonio
demonstrate\provare, presentare
demonstration\presentazione
demonstrator\dimostrante
demoralize\scoraggiare
Denmark\Dinamarca
denominators\denominatore
denouncers\accusatore
dense\impermabile
dental\dentistico
dentist\odontoiatra
dentistry\odontoiatria
denunciation\denuncia
deny\negare, abnegare
department\compartimento, area
department store\emporio
departure\dipartita, espatrio, partenza
depend\dipèndere
dependence\dipendenza
dependent\dipendente
depilate\depilare
deplore\lamentare
deposed\decadere
deposit\pagare, depositare, incluso
deprecation\disapprovazione
deprecatory\contrario
depreciate\copiare, degradare
depreciating\degradante
depreciation\deprezzamento
depredators\saccheggiatore
depress\angustiare
depresses\angustiato
depressing\angustiante
depressingly\pietoso
depressiveness\abbattimento
deprivation\perdita, rapina
deprive\sottrarre
deprives\derubato
depth\fondo
deputize\creare
deputized\nominato
deputizing\nominante
derail\deragliare
derailment\deviamento
derange\frastornare
deranged\disturbato
derangement\disturbo
deranges\disturba
derate\degradare
deride\canzonare
derider\beffatore
derision\scherno
derisive\beffardo
derisiveness\beffa
derivation\derivazione
derivative\funzione, derivazione
derive\derivare, derivazione
dermis\epidermide
derrick\albero di carico
derriere\natica
descandent\discendente
descend\discéndere
descend from\venire
descendant\discendente, discendente
descendants\seguire
descended\discéndere
descreet\decente
describe\descrivere, dipìngere
describing\descrivente
description\descrizione
desecration\violazione
desert\deserto
desertion\diserzione, lasciare
deserve\guadagnare
deserves\guadagna
desiccate\disseccare
desiderata\difettare
desideratum\difetto
design\progetto, disegno, abbozzare, progettazione
designable\eseguìbile
designate\fissare
designating\qualificazione
designation\traguardo
designed\progettato
desire\desiderare, esìgere, bramare, voto
desired\desiderato, desiderai, desiderato
desires\desidera, desiderato
desirous\ansioso
desirously\ansioso
desistance\spazio
desk\scrivania
deskill\semplificare
desolate\desolare
desolateness\devastazione
desolates\desolato
desolation\devastazione
despair\disperare, disperazione
despairs\disperato
despatched\mandai
despatcher\mittente
despatches\manda
desperate\disperato
despise\disprezzare
despiser\spregiatore
despises\disprezzato
despite\vilipendi, nonostante
despoil\saccheggiare
despoiler\saccheggiatore
despoiling\saccheggiante
despond\abbattersi
desponded\disperato
despondency\scoraggiamento
despondent\scoraggiato
dessert\dessert
dessing gown\accappatoio
destination\assegnazione, destinazione
destination of the journey\meta del viaggio
destine\fissare
destines\fisso
destining\determinativo
destiny\destino
destitution\povertà
destroy\anniento, distrùggere
destroyer\torpediniere
destroying\distruttivo
destruction\devastazione, distruzione, annientamento
destructs\distrutto
detach\sciogliere
detached\rilevato
detachment\compartimento
detail\dettaglio
detail work\lavoro minuzioso
detailed\singole, per esteso
detain\impedire
detainee\detenuto
detainment\detenzione
detect\accertare, riconoscere, scoprire
detection\scoperta
detector\raddrizzatore
detects\scoperto
detent\blocco
detente\rilassamento
detention\arresto, detenzione
deteriorate\peggiorare
determinant\determinativo
determinate\fisso
determinateness\determinatezza
determination\deliberazione, risoluzione, determinatezza
determine\decidere, fissare, decìdere
determined\fisso, deciso
determining\ultimazione
deterministic\deciso
detest\odio, avere in orrore
detestable\abominabile
detestableness\esecrabilità
detestation\abominio
detests\detestato
dethrone\detronizzare
detonate\battere
detonation\detonazione
detour\deviazione, allugare la strada
detoxicate\disintossicare
detract\sottrarre
detraction\detrazione
detractive\degradante
detractor\calunniatore
detriment\difetto
detrimental\dannoso
detriments\svantaggi
detrital\macerie
detritus\pietrisco
deuce\diàvolo
deuced\maledetto
deucedly\estremo
deuces\diàvolo
devastate\desolare
devastates\desolato
devastating\distruttivo, disatroso
devastation\devastazione
develop\sviluppare
development\evoluzione, origine
develops\evoluto
develpo\sviluppare
deviant\aberrazione
deviate\declinare
deviation\aberrazione
device\meccanismo, apparecchio, elemento
devices\valutario
devil\diàvolo
devilish\diabolico
devilishly\maledetto
devilry\diavoleria
devils\diàvolo
devious\errato
deviser\fabbricatore
devitalize\estenuare
devoid\vuoto
devolve\cèdere, cèdere
devolvement\voltura, voltura
devote\cedere
devoted\devoto
devotedness\dedizione
devotee\nudista
devotion\devozione, meditazione
devour\divorare
devourer\mangione
dew\gòmena, rugiada
dewily\umido
dexterous\lesto, sveglio
diagnose\diàgnosi
diagnosis\diàgnosi
diagram\schema, progetto, tabella
dial\quadrante, numero, eleggere
dialect\dialetto
dialects\dialetti
dialed\scelto
dialer\elettorato
dialog\dialogo
dialogs\dialoghi
dialogue\dialogo
diameter\diàmetro
diamond\diamante
diamond-shaped\ruta
diamonds\diamanti
diaper\fascia
diaphanous\vaporoso, permeabile
diaphragm\membrana
diaphragmatic\vaporoso
diarrhea\diarrea
diarrhoea\diarrea
diary\diario, taccuino
dice\cubo
dice box\bòssolo
dicey\rischioso
dicks\ficcanaso
dicky\acciaccoso
dictate\dettare
dictation\dettato, dettare
dictionary\lessico, elenco, dizionario
diddler\abbindolatore
die\estinguersi
died\morii
dies\muore
diesease\malattia
diesel engine\motore diesel
diesel fuel\carburante diesel
diet\dieta
dietetics\dietètica
differ\declinare, distinquere
differ from\declinare
difference\differenza
difference of opinion\dissenso
differences\differenze
different\differente, in altro modo
differently minded\dissidente
differentness\varietà
difficult\pesante
difficult to understand\ermetico
difficulties\difficoltà
difficulty\difficoltà
diffident\timido
diffract\piegare
diffraction\flessione
diffractive\piegante
diffusely\verboso
diffuses\sparge
diffusiveness\diffusione
dig up\disotterrare
digest\digerire
digestible\benefico
digestive\eupeptico
diggers\tombe
digit\ente, cifra
dignified\puro
dignifiedly\meritevole
dignify\onorare
dignifying\onorifico
dignity\decoro, elevatezza
dike\argine
dikes\argini
dilapidate\rovinare
dilapidated\pericolante
dilapidation\decadenza
dilatable\espansivo
dilatation\dilatazione
dilate\ampliare
dilates\allargato
dilation\estensione
diligent\diligente
dilute\annacquare
dilutes\diluito
diluvian\diluvio
dim\semibuio, torbida, appannato
dimensioning\dilatazione
diminish\rimpicciolire, diminuire
diminishing\diminutivo
diminutive\piccolo
diminutively\minuscolo
diminutiveness\piccolezza
dimly\torbida
dimple\arricciare
dimwitted\imbecille
din\rimbombare
diner\vagone ristorante
dinghy\canotto pneumatico
dining room\cenàcolo, stanza da pranzo
dinky\bellino
dinner\pranzo, desinare
dint\ammaccatura
diode\diodo
dip\salsa
diploma\testimonianza
diplomacy\diplomazia
diplomat\diplomatico
diplomatic\diplomatico
dippy\storto
direct\dirigere, regolare
direct current\corrente continua
direct hit\colpo in pieno
directed\aggiustato
direction\direzione, guida
directive\vaglia
director\direttore, regista
directory\annuario, elenco
directs\dirige
dirge\nenia
dirigible\dirigìbile
dirk\pugnale
dirt\sudiciume, lordura
dirtiness\lordura, porcheria
dirty\imbrattare, insudiciare, fangoso
disabled\inabile al lavoro
disabuse\chiarire
disaccord\contrarietà
disadvantage\pregiudizio
disadvantageous\svantaggioso
disadvantages\difetto
disaffected\malcontento
disaffirmation\rifiuto
disagreeability\guaio
disagreeable\dispiacévole
disagreeableness\guaio
disagreement\questione, discrepanza, disaccordo
disallow\rifiutare
disappear\scomparire, andar perduto
disappoint\deludere
disappointment\disillusione
disapprobation\disapprovazione
disapproval\disapprovazione, dispiacere
disapprove\disapprovare
disapproving\disapprovante
disarm\disarmare
disarmament\disarmo
disarment\disarmo
disarrange\disordinare
disassemble\scomporre
disassembles\scomposto
disassembly\smontaggio
disassociates\separa
disaster\guaio, malanno
disastrous\catastrofale
disband\decomporre
disbanding\dissolvente
disbandment\dissoluzione
disbelief\miscredenza
disbelieve\mettere in dubbio
disburden\sgravare
disburdening\sgravante
disburse\liquidare
disbursement\emissione
disburses\pagato
disc\lastra, fetta
disc brake\freno a disco
discard\deporre
discern\distinquere, riconoscere
discerningly\crìtico
discharge\assòlvere, licenziato, scaricare
disciple\più giovane
disciplinarian\superiore
discipline\disciplina
disclose\svelare, scoperchiare, far noto
disclosing\svelante
disclosure\notifica, rivelazione
discombobulate\disordinare
discombobulated\astruso
discomfit\vincere
discommode\molestare
discommodes\molestato
discommoding\molestante
discompose\agitare
discomposure\eccitazione
disconcertedness\imbarazzo
disconcerting\spiacevole
disconnected\separai
disconnectedly\separato
disconnectedness\separazione
disconnection\separazione
disconnects\separa
disconsolate\sconsolato
discontent\malcontento
discontinuity\interruzione
discontinuous\interrotto
discord\disaccordo
discordance\dissonanza
discordancy\disaccordo
discount\sconto
discourage\scoraggiare
discouraging\scoraggiante
discover\scoperchiare, scoprire
discoverable\accertabile
discoverer\scopritore
discoverers\scopritore
discovers\scoperto
discovery\scoperta
discreditable\disonorevole
discreditably\disonorevole
discreet\decente, riservato
discrepancy\discrepanza
discrete\separato, separato, singolo
discretion\tatto, discrezione
discretionary\elasticità di azione
discursiveness\volubilità
discus\disco
discuss\trattare, discùtere
discussible\opinabile
discussion\conferenza
disdain\disprezzare, trascurare
disdainful\sprezzante
disdains\disprezza, disprezzato
disease\malattia
diseased\egro
disembark\toccare terra
disembarkment\approdo
disencumber\sgravare
disencumbering\sgravante
disestablishment\separazione
disfavor\disapprovare
disfavoring\disapprovante
disfavour\disapprovare
disfiguration\sfigurazione
disfigure\deformare
disfigurement\sfigurazione
disfiguring\sfigurante
disgracefulness\disonore
disgruntles\stizzato
disguise\travestire
disgust\disgustare, nauseare, indignare
disgusting\fetente
disgusts\indignato
dish\scodella, pietanza
disharmonious\disarmònico
dishearten\scoraggiare
disheartened\scoraggiato
dishes\tribunali
dishevelment\garbuglio
dishonest\disonesto
dishonesty\disonestà
dishonors\disonorato
dishwasher\lavastoviglie
dishwater\lavatura
disinclination\avversione
disinclined\contrario
disinfection\desinfezione
disingenuous\insincero
disinherit\diseredare
disintegrate\decomporre, sfasciarsi
disintegrates\decomposto
disintegration\decomposizione
disinter\esumare
disjoin\separare
disjoined\separato
disjoins\separa
disjoint\scomporre
disjoints\scomposto
disk\fetta
disk brake\freno a disco
dislikable\ripugnante
dislike\avversione
dislocate\lussare
dislodges\distante
dislodging\allontanante
disloyal\infedele
dismal\spaventoso, abominevole, orrendo, fosco
dismantle\smontare
dismantlement\smontaggio
dismay\costernazione
dismayed\costernato
dismember\scomporre
dismiss\licenziato, licenziare, esonerare
dismissal\disdetta, dimissione
disobedience\disubbidienza
disobedient\disubbidienza
disobey\disubbidire, trascurare
disorder\disordine
disorderliness\disordine
disorderly\non regolato
disoriented\labile
disparaging\sprezzante
disparity\varietà
dispassion\realità
dispassionateness\tranquillità
dispatch of goods\gestione merci
dispel\esiliare
dispelled\cacciare
dispensable\dispensabile
dispensaries\farmacie
dispense\distribuire
dispenses\distribuito
dispersal\distrazione
dispersiveness\diffusione
dispirit\scoraggiare
dispirited\scoraggiato
dispiritedness\scoraggiamento
dispise\disprezzare
displacement\spazio
display\vetrina, veduta, esposizione, denuncia, emersione
displays\presenta
displease\dispiacere
displeasing\dispiacévole
disposable\disponìbile
disposal\disposizione
dispose\ordinare, provocare, evàdere, ordinare, disporre
dispossess\espropriare
disprovable\confutabile
disprove\confutare
disproves\confutato
disputatious\litigigioso
disputatiously\accattabrighe
dispute\dìsputa, questione
disquiet\inquietare
disquieting\inquietante
disquietude\inquietudine
disquisition\dissertazione
disregard\trascurare
disrepair\decadenza
disreputableness\vigliaccheria
disrepute\disonore
disrupt\separare
disrupting\lacerante
disruption\disfacimento
disruptiveness\decomposizione
dissatisfied\malcontento
dissatisfy\dispiacere
dissemble\nascosi
dissembler\ipocrita
disseminate\spargere
disseminates\sparge
dissension\dissenso
disservice\difetto, dissenso
dissimulation\occultamento
dissipated\libertino
dissociate\separare
dissociated\separai
dissociates\separa
dissociation\escrezione
dissoluble\dissolùbile
dissolute\licenzioso
dissoluteness\licenziosità
dissolution\dissoluzione
dissolvable\dissolùbile
dissolve\decomporre
dissolving\dissolvente
dissonance\dissonanza
dissuade\dissuadere
dissuasion\dissuadere
distaction\diversione
distance\spazio, ablazione
distances\spazi
distant\distante, vasto
distantness\vastità
distaste\disgusto
distasteful\laido
distend\stendere
distensibility\duttilità
distensible\espansivo
distill\distillare
distinction\distinzione
distinctly\differente
distinguish\mettere in evidenza, distinquere
distinguishable\distinguìbile
distinguished\esimio, differenza
distinguishing mark\attributo
distortion\deformazione, storcimento
distract\distrarre, disordinare
distracted\sconvolto
distractibility\distrazione
distraction\diversione
distrain\pignorare
distrained\pignorato
distraint\pignoramento
distraught\perplesso, costernato
distress\paura, infestare, afflìggere, penuria
distressed\tormentò
distributable\erogabile
distribute\spartire, distribuire
distributing\erogazione
distribution\erogazione
district\provincia, distretto, circondario
distrust\diffidenza
distrustfulness\ombrosità
disturb\frastornare
disturbs\disturba
divan\divano
dive\mi tuffo
dived\mi tuffai
diver\sommozzatore
diversely\differente
diversion\diversione, deviazione
divest\denudare
divide\spartire, dividere
divided\divisi
divine\divino
divisible\divisìbile
division\compartimento, divisione
divorce\divorzio
divorced\divorziato
dizziness\capogiro
do\fare
do without\privo
doc\dottore
docile\arrendevole
docks\impianti portuali
doctor\dottore, medico
doctrine\istruzione
document\documento, documento, atto
documentary\documentato
documents\documenti
dodder\tremare
does\fà
dog\cane
dogs\cani
doldrums\ristagno
doll\bambola
dolor\tormento
dolphin\delfino
dome\cupola
domestic\nazionale
domestic help\donna delle pulizie
domestically\domèstico
dominate\dominare
dominion\egemonia
donate\regalare
donation\erogazione, donazione
donkey\àsino
door\porta
dose\dose
dot\punto
dots\punti
double\doppio, sosia, duplicare
double bed\letto a due piazze
double room\càmera doppia
doubt\mettere in dubbio, dubitare, dubbio
doubtfully\dubbioso
doubts\dubbio
dough\pasta
dove\piccione
down\abbasso, abbasso, abbasso, a basso
downfall\decadenza, naufragio
downwards\abbasso
doze\dormicchiare
dozen\dozzina
draft\lettera di cambio
draftsman\disegnatore
drag\trascinare
drag along\entusiasmare
dragon\drago
drama\dramma
dramatic\drammàtico
draught\sasso
draw\disegnare, attìngere
drawback\pregiudizio
drawer\espositore, cassetto
drawing\disegno
drawing-pin\cìmice
dreadful\atroce
dream\sognare, sogno
dreams\sogna
dreary\abominevole, orrendo, spaventoso
dress\vestito, vestire, sè, abbigliare
dressing\fasciatura
dressing gown\veste da camera
dressmaker\sarto
dribble\sbavare
drift\abortire
drill\forare
drink\bevanda, bere
drinker\bevitore
drinking\edule, bere, bevibile
drive\volare, andara, spingere, giro
drive away\cacciare
driver\mandriano, guidatore
drivers\guidatore
driving\andara
driving licence\patente di guida
drizzle\pioggerella, piovigginare
drop\goccia, depressione
drought\siccità
drown\affogare
drowsy\assonnato
drum\tamburo
drummers\tamburino
drunk\ebbro
drunkard\ubriacone
drunken\ebbro
drunkenness\ebbrezza
dry\asciutto, asciugare, asciugare, secco
duchess\duchessa, duca
duck\ànatra
dud\proiettile inesploso
due\scaduto, tassa
duke\duca, duchessa
dull\appannato, insipido
dune\duna
duplicate\ciclostilare
duplicator\autogràfico
durable\fermo, durevole
duration\durata
during\durante
dust\polvere
dustbin\secchio delle immondizie
dustcloud\nembo di ponvere
Dutchman\olandese, Olandese
duteous\conscio del proprio dovere
duty\dogana
duty-free\esente da dazio
dwarf\nano
dying\morente
dynamism\energia
dynamite\dinamite
each\ogni, qualunque, ogni
each one\ogni
eager\ansioso, zelante
eagle\aquila, àquila
ear\orecchio
ear specialist\otoiatra
eardrum\timpano
earlier\ancor prima
earn\guadagnare
earnest\serio, grave
earnings\guadagno, guadagno
earring\orecchino
ears\orecchie
earth\mondo, terra
earthquake\terremoto
earths\portare a terra
easier\più leggero
easily\poco pesante
east\est
East\est
Easter\pasqua
eastern\orientale
easy\semplice, poco pesante
eat\mangiare
eatable\edule
ebb\bassa
eccentricity\eccentricità
echo\eco
eclipse\oscurità
eclipse of the sun\eclissi solare
ecology\tutela delle bellezze naturali
economic situation\congiuntura
economical\econòmico
economy\industria e commercio
edge\lembo, spigolo, àngolo
edgy\emozionato, nervoso
edifice\edifizio
edifies\edificato
edifyingly\edificante
edition\imposta, emissione
editor\editore
editorial\editoriale, redazione
editorials\editoriale
educate\educare, educare, formare, istruire
education\creanza, cultura, educazione
effect\effetto
effective\veramente
effectuating\cagionante
efficiency\economicità, efficienza
efficient\valente
effort\fatica, fatica
egalitarianism\istruzione
egg\uovo
eggs\uova
Egypt\Egitto
eight\otto
eighteen\diciotto
eighty\ottanta
either\o
ejaculation\eiaculazione
ejaculatory\espulskvo
eject\espellere
elaborate\elaborare
elaboration\elaborazione
elapse\decorrere
elastic\elàstico
elation\ilarità
elbow\gomito
elec\elèttrico
elected\scelto
election\elezione
electric\elèttrico
electric circuit\circùito
electrical\elèttrico
electrician\elettricismo
electricity\elettricità
electrocardiogram\elettrocarfiogramma
electrolytically\elettrolitico
electron\elettrone
electron tube\valvola elettronica
electronics\elettronica
electrostatics\elettrostatica
elects\sceglie
elegance\eleganza
elegancy\bellezza
elegant\elegante
elegantly\elegante
element\elemento
element group\gruppo
elemental\elementare, natura secondo
elementariness\semplicità
elementary school\scuola elementare
elements\elementi
elephant\elefante
elevate\mettere in evidenza
elevator\ascensore, elevatore
eleven\undici
eleventh\undecimo
elfin\elfo
eligible\appropriato
eliminate\eliminare
eliminating\eliminare
elimination\eliminazione
eliminative\allontanante
elk\alce
ell\ulna
ellipse\ellisse
ellipsis\ellittico
elm\olmo
elongate\stendere, longitudinale
elongation\allungamento
elope\sfuggire
elopement\evasione
eloquence\eloquenza
eloquent\facondo
else\se no, in altro modo, in caso contrario
elsewhere\in qualche altro posto, altrove
elucidate\commentare
elude\schivare
eluding\evasivo
elusion\sotterfugio
elusive\ingannevole
elysian\celestiale
emaciated\emaciato
emanate\emanare
emancipation\emancipazione
emancipator\liberatore
emasculate\evirare
emasculation\evirazione
embarasses\umiliato
embarassing\spiacevole
embargo on imports\embargo
embark\imbarcare
embarkation\imbarco
embarkment\imbarco
embarrassment\imbarazzo
embassy\messaggio, ambasciata
embattle\allineare
embellish\abbellire
embellishment\abbellimento
embezzlement\vuoto di cassa
embitterment\esacerbazione
emblazon\adornare
emblazonment\gioielli
emblazonments\gioielli
emblem\emblema, stemma
embodiment\presentazione
embolden\incoraggiare
embolism\embolia
emboss\coniare
embrace\abbracciare
embracement\abbracciamento
embroil\complicare
embryo\embrione
embryologic\embrionale
embryological\embrionale
emend\emendare, correggere, perfezionare
emerald\smeraldo
emerge\apparire, emersione, venni, esibirsi, emersione
emergence\fenomeno
emergency brake\freno di emergenza
emergency exit\uscita di sicurezza
emersion\emersione
emetic\vomitatorio
emigrant\emigrante
emigrate\espatriare
emigration\emigrazione
eminent\esimio
emission\emanazione
emit\emettere, mando
emitter\trasmettitore
emotion\commozione
emotional\sensitivo
emperor\imperatore
emphasize\sottolineare, mettere in evidenza, accentuare
emphasized\allargato
emphasizes\accentato
emphatic\esplicito
empire\ricco, impero
empiric\empirico
empirical\empirico
empiricist\empirico
emplacement\posizione
emplastic\glùtine
employ\occupare
employee\impiegata, collaboratore, impiegato
employer\ditta, datore di lavoro, capo
employmen\occupazione
employment\ente, funzione
emporium\emporio
empower\autorizzare
empress\imperatrice
emptily\vuotaggine
emptiness\vuotaggine
empty\vuotare, vuoto, evacuare
empyreal\celestiale
emulate\emulare
emulates\gareggiare, emulare
emulation\emulazione, emulazione
emulative\zelante
emulsion\emulsione
enable\accèndere, possibilitare, rilasciare, permettere
enabling\rilascio
enact\decretare
enactment\ordinanza
enamel\verniciare
enamel varnish\vernice
enchant\incantare
enchanter\mago
enchanting\dilettevole, incantevole
enchantingly\incantevole
enchantress\maga
enchase\spingere
encircle\circondare
encirclement\accerchiamento
encircling\circondante
enclose\allegare, accludere, circondare, rinchiudere
enclosed\accluso
enclosure\allegato, supplemento
encompass\circondare
encore\giunta
encounter\incontro, incontrare
encountered\incontro
encounters\incontrato
encourage\incoraggiare, promuovere
encroach\abusare
encroachment\intervento
encrypted\latente
encryption\nascondere
encumber\gravare
encumbered\oberato
encumberingly\molestante
encumbers\oberato
encumbrance\aggravio
encyclopaedia\enciclopedia, enciclopedia
encyclopedically\enciclopedico
end\al punto più estremo, chiusa, traguardo, finire
end of work\cessazione del lavoro
endanger\mettere in pericolo
endangerment\pericolo
endangerments\rischi
endangers\in pericolo
endearment\affettuosità
endeavor\incomodare
endeavors\incomodato
endeavour\fatica
endeavours\incomodato
ending\ultimazione
endless\illimitato
endocrine\endocrino
endogenous\endogeno
endorsement\aggiunta, notabene
endowment\erezione, donazione
endpoint\punto finale
endurable\sopportabile
endurance\indulgenza, perseveranza
endures\sopporta
enduring\restante
enduringness\perseveranza
enema\enterocnisma
energetic\energico
energize\accèndere
energy\energia
enervation\debolezza
enervations\indebolire
enfeeble\estenuare
enfeeblement\estenuazione
enfold\abbracciare
enforce\estorsi
enforcement\costrizione
enfranchise\esimere
enfranchises\liberato
enfranchising\liberante
engage\noleggiare, obbligarsi, obbligare
engaged\occupato
engagement book\taccuino
engages\obbligato
engaging\impegnativo
engenders\generato
engine\locomotiva, ordigno, motore, gruppo motore
engine fitter\fabbro meccanico
engineer\ingengnere, ingegnere
engineman\macchinista
England\Inghilterra
English\inglese
engorge\ostruire
engorgement\occlusione
engorges\costipato
engrained\incallito
engross\confiscare
engrossing\emozionante
engrossingly\avvincente
engulf\affondare
enhanced\ingrandito
enhancement\aumento
enigmatic\enigmistico
enjoy oneself\divertirsi
enjoyable\edule, placevole, letificante
enjoyment\voluttà
enjoys\godi
enlarge\ampliare, ingrandire
enlargement\ingrandimento
enlarges\allargato, ingrandito
enlist\far partecipare
enlisting\cooperante
enlists\partecipato
enlivening\vivificatore
enlivenment\ravvivamento
enmity\inimicizia
ennoble\nobilitare, raffinare
ennoblement\elevamento
ennobles\raffinato
ennui\uggia
enormity\enormità
enormous\gigantesco, poderoso, esorbitanve
enormously\esorbitanve
enough\abbastanza
enquiry\inchiesta, informazione, richiesta
enrich\arricchire
enrol\immatricolare
enroll\mettere a libro
enrollment\registrazione
enrols\obbligarsi
ensconce\nascondere
ensconces\latente
enshrinement\venerazione
enshrines\venerato
enshroud\avvòlgere
enslave\soggiogare
ensue\conseguire
ensuing\seguente
ensure\garantire
entanglement\viluppo
enter\somministrare, penetrare, registrazione, petizione
enterprise\intraprendere, operazione
entertain\mantenere, distrarre
entertaining\divertente
entertainment\spasso, conversazione, divertimento
enthrall\incantare
enthuses\entusiasmato
enthusiasm\entusiasmo
enthusiast\entusiasta
enthusiastic\entusiasmato
entire\globale
entirely\completamente
entity\essenza, esistenza
entlarge\espandere
entombment\funerale
entrails\frattaglie
entrance\entrata, ingresso, entrata
entrant\partecipante
entrepreneur\imprenditore
entrie\principio
entrust\confidare
entry\entrare, ingresso, accessione, petizione, entrata
enumerate\numerare
enumerated\enumerato
enumeration\enumerazione
envelop\avvòlgere, infagottare
envelope\involucro, compressa, velare
envelopes\evoluto
envier\invidiatore
enviers\invidiatore
envious\invidioso
enviousness\invidia
environ\circondare
environment\dintorni
environs\dintorni
envy\invidiare, invidia
enzyme\enzima
ephemeral\volatile
ephemerally\fuggitiva
epic\epopea, epico
epic poem\epopea
epicure\vitaiolo
epicures\vitaiolo
epidemic\epidemìa, lue
epidemic plague\lue
epidemic typhus\febbre petecchiale
epidermis\epidermide, epidèrmide
epigrammatic\epigrammatico
epileptically\epiettico
epilog\epilogo
epilogue\epilogo
episcopal\episcopale
episode\episodio
epitaph\epivaffio
epitome\compendio
epoch\epoca
epoch making\precursore
equability\simmetria
equable\proporzionato, uniforme
equal\pari
equality\uquaglianza
equalization\eguagliamento
equalize\eguagliare
equanimity\equanimità
equate\equiparare
equated\equiparato
equation\equazione, compromesso
equatorial\equatoriale
equestrian\cavalcatore
equidistance\ablazione
equilateral\equilatero
equilibrate\equilibrare
equilibration\equilibrio
equilibrium\equilibrio
equine\equino
equinox\equinozio
equip\equipaggiare, corredare
equipage\equipaggio
equipment\fornitura, equipaggio
equitable\equanime
equity\giustizia
equivalence\equivalenza
equivalent\equivalente
equivalently\equivalente
equivocal\ambiguo, ambìguo
equivocally\ambìguo
equivocalness\equivoco
era\era, epoca
eradication\estirpazione
erasable\estinguibile
erase\estinguere, verniciare
erased\spento
eraser\grattino
ere\prima che
erect\rizzare, ergere
erection\montaggio
erectly\rizzato
erector\costruttore
erosion\erosione
erotic\erotico
erotically\erotico
err\fallare
errantry\vagolare
errata\errore di stampa
erratum\errore di stampa
erring\errante
erroneous\erroneo, difettoso
error\vizio, errore
error in reasoning\errore di ragionamento
error of justice\errore giudiziario
errors\errori
eructate\eruttare
erudite\erudito
eruption\esplosione
escalator\scala mobile
escapade\scappatella
escape\evasione, evadere, sfuggire
escapee\profugo
escapement\impedimento
eschew\temere
escort\seguito, scorta
escorts\accompagnato
esentially\importante
Eskimo\eschimese
esophagus\esòfago
especially\extra, principalmente, sopratutto
espionage\spionaggio
espousal\entrare
espouse\fiancheggiare
esprit\mente
esquire\vossignoria
essay\trattato, dissertazione, esperimento
essayist\autore
essence\essenza
essential\essenziale, importante, necessario
establish\fissare, fondare
established\introdotto, dimostrato
establishes\ergere
establishment\stabilimento, organizzazione
estate\fattoria
estate car\vettura familiare
esteem\stima, attenzione
esteems\stima
ester\estere
esthetic\estetico
estimate\valutazione, valutare, fabbisogno, valutare
estimated\stimai
estimates\stima
estimating\calcolo
estimation\estimo
estrange\alienare
eternal\eterno
eternalize\eternare
eternalizes\eternato
eternally\in eterno, eterno
eternity\eternità
ether\ètere
ethereal\etereo
ethers\ètere
ethic\etico
ethical\etico
ethics\etica, etica
ethnic\etnico
ethnology\etnologia
ethos\atmosfera
ethyl\etile
etymology\etimologia
eulogist\encomiatore
eulogistic\lodativo
eulogize\esaltare
eunuch\eunuco, castrato
euphemism\eufemismo
euphonious\armonioso
euphony\eufonia
euphoria\euforia
euphoric\euforico
Europe\Europa
European\europeo
euthanasia\eutanasia
evacuate\vuotare, rimuovere, lasciare
evadable\evitabile
evade\schivare
evader\fuggitivo
evangelic\evangelico
evaporate\vaporare
evaporated milk\latte condensato
evaporation\vaporizzazione, esalazione
evaporator\vaporizzatore
evasion\elusione
evasive\evasivo
eve\vigilia
even\anzi, perfino, personalmente, una volta, pari
even with\pari
evened\equilibrato
evenness\ugualità
event\manifestazione
eventide\vecchiaia
events\avvenimenti
eventual\alla fine
eventuality\eventualità
eventually\eventuale
eventuate\entrare
eventuation\entrare
ever\a secondo
ever since\da allora
evergreen\sempreverde
everlasting\eterno, incessante, durabile
evermore\continuamente
every\ogni, ogni, qualunque, tutti
every one\qualunque
every time\ogni volta
everyone\ognuno, qualunque
everything\tutto, ogni cosa
everywhere\dappertutto
evidence\dimostrazione, prova
evidencing\provante
evident\plausibile
evil\cattivo
evil minded\mal disposto
evildoer\malfattore
evils\peccati
evinces\affermato
evolution\evoluzione
evolve\sviluppare
evolvement\esplicazione
exacerbates\accanito
exacerbation\animosità
exact\minuzioso
exacting\esigente
exactingly\esigente
exactingness\puntualità
exaction\fregagione
exactly\pari, giustamente, giusto, minuzioso
exactness\fedeltà
exaggerate\esagerare
exaggerated\esagerai
exaggeratedly\eccessivo
exaggeratedness\eccessività
exaggerates\esagera
exaggerating\esagerativo
exaggeration\esagerazione
exalt\glorificare
exaltation\elevamento
exam\esame
examination\esame, esami
examiner\esaminatore
examines\esamina
example\esempio, modello
examples\esempi
exasperation\animosità
excavate\disotterrare
excavation\escavazione
excavator\cava fango
exceed\eccedere, eccedere, oltrepassare, oltrepassare
exceedable\oltrepassabile, oltrepassabile
exceeding\insolito
exceedingly\oltremodo
excel\superare, superare
excellent\esimio, grandioso, eccellentissimo
excepted\eccetto
exception\eccezionale
exceptional\eccezionale
exceptionally\in via eccezionale
exceptions\eccezzioni
excerpt\compendio
excess\eccedenza, eccedenza
excessive\esuberante, esuberante, libertino
excessively\oltremodo
exchange\scambio, scambiare, cambio
exchequer\forziere
excise\daziare
excitable\irritabile
excitation\eccitamento, eccitazione
excite\agitare
excited\accalorato
excitement\eccitazione
exciter\eccitatore
excites\emozionato
exciting\vomico, emozionante
exclaim\esclamare
exclamation\esclamazione
exclamation mark\esclamativo
exclude\escludere
excluding\esclusivo
exclusion\estromissione
exclusive\esclusivamente, esclusivo
exclusive rights\esclusività di spaccio
exclusively\soltanto
excptional\eccezzionale
excrement\eliminazione
excruciation\tormento
excursion\escursione
excusable\veniale
excuse\scusa, scusare, scusa
excuse me\scusa, permesso, scusatemi
excusing\scusante
execute\fare
executing\realizzazione
execution\realizzazione
execution of sentence\esecuzione della pena
executioner\giustiziere
executioners\giustiziere
executive\esecutivo, esercente
executor\esecutore testamentario
exemplification\definizione
exemplify\commentare
exempt from punishment\impune
exeption\eccezionale
exercise\uso, esercitare, esercitare
exercise book\fascìcolo
exercised\esercitato
exert\adoperare
exerts\aspira
exess pressure\sovrapressione
exhale\esalare
exhaust\scappamento, ottundere
exhaust pipe\scappamento
exhausted\stanco
exhaustive\per esteso
exhibit\espongo
exhibition\messa, esposizione
exhibitor\espositore
exhumation\esumazione
exiguity\urgenza
exil\esilio
exile\esule
exist\esistere, esistenza, stare, esistere, esistere
existance\esistenza
existence\esistenza, esistenza
exit\esito, esito
exonerate\sgravare
exorbitant\esuberante, esuberante
exorcists\esorcista
exotic\esotico
expand\ampliare, stendere, espandere
expanded\allargato
expanding\estensivo
expanse\superficie
expansion\estensione
expect\attendere, fare i conti
expectation\attesa
expection\attesa, visuale
expedience\opportunità
expediency\opportunità
expedient\opportuno, utile
expedite\promuovere, effettuare
expedition\spedizione
expel\espulso
expenditure\dispendio, costare
expends\consumato
expenpiture\dispendio
expense\emissione, dispendio, spese, spese
expenses\spese, costare
expensive\caro, costoso
experience\esperienza
expert\esperto, apprèndere, specialista, esperto
expertly\pratico
expiation\espiatorio
expiration\decadenza, decorso
expire\decorrere, decadere
expired\scaduto
expiry\decorso
explain\esporre, dichiarare, commentare
explaining\espositivo
explanation\definizione, interpretazione, spiegazione
explanatory\esplicativo
explicable\esplicabile
explication\definizione
explicit\esplicito, distinto
explicitely\per esteso
explode\esplòdere
exploit\utilizzare
exploration\esplorazione
explore\esplorare, esplorare
explorer\scienziato
explosion\esplosione
exponent\rappresentante, esponente
export\effettuare, esportazione, esportare, esporto
exporter\esportatore
expose\esporre, scoperchiare, espone
exposed\scoperto
exposure meter\esposìmetro
express\direttìssimo
express letter\lettera urgente
express train\direttìssimo
expression\espressione
expressive\espressivo
expropriate\espropriare
expropriation\espropriazione
extend\allungare, ampliare, estendersi
extension\dilatazione, estensione
extensive\sostanzioso, vasto
extent\volume, dilatazione
extenuate\annacquare
exterior\esterno
exterminate\estirpare
external\estrinseco
extinction\estinguere
extinguish\cancellare, estinguere, spengere
extra\extra
extract\compendio, estrassi, estrarre
extraction\estrazione del carbone
extraordinary\insolito, eccezionale
extremely\estremamente, assai, molto
eye\occhio
eyes\oculare
fabric\ordito
fabulous\fantastico
face\viso, contrastare
fact\realtà
factors\fattori
factory\ditta, fabbrica
fail\mancare, arrenare, andare fallito, abortire
failure\colpo fallito, fallimentare, fiasco
faint\deliquio
faintness\malessere, debolezza
fair\fecente, esposizione, biondo, messa
fairy\fata
faith\fede
faithful\fido
fakir\fachiro
fall\caduta, abbassarsi, depressione, autunno
fall asleep\prender sonno
fall ill\ammalarsi
fallen\decadere
fallibly\fallibile
false\fasullo, imitato
falsity\errore
fame\vanto
familiar\fida
families\familiare
family\famiglia
famine\fame
famishes\morto di fame
famous\famoso, famoso
fan\ventilatore, scompartimenti, ammiratore
fanatic\fanatico
fanaticism\fanatismo
fancier\dilettante
fanfaronade\fanfaronata
fanning\sventolante
fantasises\fantasticato
fantastic\frenetico, fantastico
far\vasto
farce\tiro
fare\tariffa
farewell\separazione, addio
farm\fattoria
farmer\agricoltore, contadina, contadino
farmhouse\masseria
fascinating\emozionante
fascism\fascismo
fascist\fascista
fashion\moda
fast\presto, quadragesimale
fasten\bendare, legare saldamente, legamento, consolidare
fat\grassello, grosso
fatal\letale
fatalist\fatalista
fate\destino
father\padre, babbo
fatility\destino
fatless\scremato
fatty\untuoso
fault\disturbo
faultless\corretto, senza errori
faults\vizio
faulty\avarìa
fauna\fauna
favour\favore, favore, favoreggiare
favourable\opportuno
feal\carne di vitello
fear\angoscia, temere, paura, temere
fearful\angoscioso
fearless\intrepido
feast\fisso, banchetto
feather\penna, piuma
February\febbraio
Federal Chancellor\cancelliere federale
federally\federativo
fee\costare, tassa, onorario, paga
feebleness\debolezza
feed\mangiare, foderare, allattamento, alimentare
feel\toccare, percepire, tastare
feel ashamed\vergognarsi
feel sick\nausea
feelers\antenna
feet\piedi
felicitation\felicitazione
felloe\cerchione
fellow\uomo, fante
felonious\criminale
felt\sentii
female relative\parente
female worker\lavorante
fencing\scherma
ferment\fermento, fermentare
fern\felce
ferruginous\ferroso
ferry\traghetto
fertile\opimo
fertility\fertilità
festal\festivo
festoon\festone
fetch\portare, prendere
fetishism\feticismo
fever\febbre
few\poca, alquanti
fib\raccontare frottole, bugìa
fibre\fibra
fiction\invenzione, ipotesi
field\territorio, area, quadretto, campo
fierceness\fierezza
fifteen\quindici
fifteenth\quindicesimo
fifth\quinto
fifty\cinquanta
fig\vigliacco
fig-tree\fico
fight\duellare, litigare, zuffa, combattimento, lottare
fighter\lottatore
figure\figura, novero, cifra
figureskating\pattinaggio artistico
filament\fibra, filamento
file\lima, ordinare, deporre, documento
file card\scheda
filings\limatura
fill\émpiere, incassare
fill up\fare benzina, fare il pieno
filler\penna stilografica
filling station\distributore di benzina
film\film, filmare
filter\filtro
filth\sudiciume
filthy\sporco
fin\pinna
final\finale
finally\finalmente, alla fine
finance\finanziare, finanze
financial\finanziario
find\trovare
find out\scoprire
fine\multa, elegante, contravvenzione
fine arts\arte
finery\gioielli
finger\dito
fingering\toccante
fingers\dito
finish\finire, appretare, preparare
finished\perfetto
Finland\Finlandia
finn\pinna
Finn\finlandese
fir\abete
fire\buttare fuori, fuoco, incendio, sparare
fire brigade\vigili del fuoco
firedepartment\vigili del fuoco
fireman\vigile del fuoco
fireplace\fumaiolo
fireside\fumaiolo
firing\sparare
firm\comitiva, ditta
first\primo, dapprima
first-aid kit\bendaggi, cassetta di medicazione
first-aid post\guardia mèdica
first letter\lettera iniziale
first name\nome di battesimo
first of all\dapprima
firstly\dapprima
fiscal\fiscale, erariale
fish\pescare, pescare, pesce
fisherman\pescatore
fishing boat\peschereccio
fission\fenditura
fist\pugno
fit\accompagnarsi, montare
five\cinque
five-year plan\quinquennale
fix\fissare, fissare, fisso
fix up\sistemare, predisporre
fixation\fortificazione
fixed\stabilito
fixing\fortificazione
fixity\fermezza
fixtures\inventario
flag\bandiera, stendardo
flame\fiamma, vampa
flange\flangia
flank\fianco
flash\fulmine, scintillare
flash of lightning\fulmine
flashlight\flash
flat\appartamento, piatto
flatten\levigare
flatter\lusingare
flavored\condito
flavorless\insipido
flavour\aroma
flavoured\condito
flavourless\insipido
flaw\difetto, lancio, vizio
flawed\difettoso
flawless\corretto, senza errori
flaws\vizio
flax\lino
flax mill\linidicio
flay\angariare
flea\pulce
fleam\lancetta
fleckless\senza macchia
flecks\crusca
flection\flessione
fled\pulce
flee\fuggo
fleece\vello
fleeciness\dolcezza
fleecy\lanuto
fleeing\fuggente
flees\fugge
fleet\naviglio
fleeting\volatile
flesh wound\ferita carnosa
fleshliness\sensualità
fleshly\carnale
fleshy\carnoso
flew\volai
flex\piegare
flexible\flessìbile, elàstico
flexing\piegante
flexion\curvatura
flexuose\curvato
flicked\picchiai
flicker\vacillare, svolazzare, sfavillare
flier\volantino
flies\vola
flight\fuga, evasione, volante
flight schedule\orario di volo
flightier\fuggitivo
flightiness\sventatezza
flighty\sventato
flimsily\labkle
flinch\cèdere
flint\acciarino
flintier\più duro
flintiness\durezza
flinty\duro di cuore
flippant\frivolo
flipper\pinna, pinna
flirtation\flirt
flirtatious\civettuolo
flirtatiousness\amoretto
flitch of bacon\lardone
float\zattera, nuotare, spingere
floatage\nuotare
floatation\vertere
floater\fondatore
floaters\fondatore
floats\pende
floccus\lanuggine
flock\mandria
floggings\randello
flood\alta marea, alluvione, alluvione
flood light\faro, illuminazione
floodlight\faro, illuminazione
floods\inondare
floor\pavimento, suolo
floosie\farfallina
floosy\farfallina
floozie\farfallina
floozy\farfallina
floppily\floscio
floppiness\fiacchezza
florescence\fioritura
florid\flòrido
floridly\fiorito
flotage\nuotare
flotation\fondazione
flotsam\relitti
flour\farina
flourish\fiorire
flourishing\efflorescente, flòrido
floury\farinaceo
flout\canzonare
flow\fluviale, corrente, fluire
flow to\affiuire
flow together\confluire
flower\fiore, fioritura
flower-bed\aiuola
flowerily\fiorito
flowerpot\vaso di fiori
flowing off\emissario, decorso
flown\volato
flu\influenza
fluctuating\variàbile
fluctuation\oscillazione, ondeggiamento
flue\accendino
fluff\lanuggine
fluffily\poco stretto
fluffy\lanuginoso
fluid\liquidità, fluido, liquido
fluidity\liquidità
fluidly\liquido
fluidness\liquidità
flukiness\emergenza
flummox\sbalordire
flung\scagliato
flunkey\servitore
flunkeydom\servitù
flunky\servitore
fluorine\fluoro
flurries\inquieto
flurry\folata di vento
flush\arrossire, risciacquare, vuotare
flushes\dirige
fluster\disordinare
flute\flauto
flutes\flautare
flutter\svolazzare
flux\fluviale
fluxion\fluire
fluxional\liquido
fly\andara, mosca, volare
fly by night\nottolone
fly flap\ammazzamosche
fly screen\rete contro le mosche
fly weight\peso mosca
fly wheel\volano
flycatcher\acchiappamosche
flycatchers\acchiappamosche
flyer\aviatore
flying\volante
flying time\durata di volo, durata del volo
flypaper\acchiappamosche
flyweight\peso mosca
flywheel\volano
foaled\gettato
foalfoot\farfara
foals\getta
foam\schiuma
foam bath\bagno di schiuma
foamed\schiumato
focal length\distanza focale
fodder\foraggio
foetus\feto
fog\foschia, velare, nebbia, annebbiare
foggy\nebbioso
fogs\oscurato
foil\foglia laminata
foist\attaccare
fold\grinza, pizzicotto, giùngere
foldable\pieghevole
folding rule\metro piegabile
folds\giùngere
folk\gente
folk song\canto popolare
folks\gente, volgo
folksiness\veglia danzante
follow\conseguire, inseguire
follow up\inseguire
follower\nudista, seguace
following\in, seguente
folly\stoltezza
fondle\vezzeggiare
fondling\carezza
fondness\affettuosità
food\vivanda, alimento, generi alimentari, alimente
foodstuff\alimentgèneri
fook\idiota
fool\allocco, pazzo, idiota
fooled\imbrogliato
foolish\stolto, stupido, sciocco
foolish woman\pazza
foolishness\stoltezza
foolproof\facile come bere un uovo
foot\base, gamba, zampa, piede
foot brake\freno a pedale
football\pallone
football player\calciatore
footbath\pediluvio
footboard\pedana
footboy\valletto, fattorino
footer\zampa
footfalls\passi
footgear\calzatura
foothold\alt
footle\nonsenso
footlights\luci della ribalta
footlocker\cassapanca
footloose\sciolto
footman\servitore
footnote\nota a piè pagina
footpad\ladrone
footstep\pedata
footsteps\pedate
foozles\guastato
fop\zerbinotto
foppery\leziosaggine
for\per, poichè, per, durante
for days\che dura per giorni
for free\ufo
for hire\affittàbile
for instance\per esempio
for it\in luogo di questo
for my sake\quanto a me
for nothing\ufo
for the rest\inoltre, d'altronde
for what\per che cosa
for years\per molti anni
forage\accaparrare
foraying\saccheggiante
forbad\proibire
forbade\divieto
forbearance\tolleranza
forbearing\indulgente
forbearingly\indulgente
forbears\antenati
forbid\proibire
forbidden\insufficiente, proibito
forbiddingness\divieto
forbore\omettere
force\effetto, costrizione, forza, balìa, vigente
force of gravity\gravitazione
forceful\valido
forcible\violento
forearm\avambraccio
forebears\antenati
forebodes\presenta
foreclose\escludere
foreclosing\esclusivo
forefather\antenato
forefathers\presentire
forefront\facciata
foregoing\antecedente
forehand\vantaggio
forehanded\provvidenziale
forehandedly\provvidenziale
forehandedness\precauzione
forehead\fronte
foreign\straniero, estero
foreign currency\valutario
foreign language\lingua stranigra
foreign languages\stranieri
foreign legion\legiong strankgra
foreign öanguage\lingua stranigra
foreign trade\commercio èstero
foreigner\straniera, forestiere, straniero
foreignness\natura differente
foreknow\prevedere
foreknowledge\previsione
foreman\campione
foremast\albero di trinchetto
forename\nome di battesimo
forenoon\mattina
forensic\giudiziario
foreplay\preludio
forerunner\annunziatore
foresail\vela di trinchetto
foresails\vela di trinchetto
foresee\asttrarre, prevedere
foreseeable\prevedibile
foresight\previsione, precauzione
foresightedness\previsione
forest\selva, bosco
forestall\impedire
forests\selve
foretell\predire
forethought\precauzione
forever\ognora
foreward\avanti
forewarn\preallarme
foreword\prefazione
forfeiture\perdita
forfend\prevenire
forfends\prevenuto
forgather\convenire
forge\falsare, formare, forgiare, inventare
forged money\moneta falsa
forger\falsificatore, fabbricatore, fabbro
forgery\falsificazione
forget\dimentico, obliare
forgetfulness\dimenticàggine
forgets\dimentichi
forgive\perdonare, perdono
forgiven\perdonato
forgiveness\perdono
forgives\perdona
forgiving\conciliante
forgot\dimenticai
forjudge\espropriare
fork\diramazione, biforcazione
forks\biforcare
forlornly\abbadonato
form\formare, modulo, plasmare, formare, forma
form boards\cassaforma
form error\vizio di forma
formal\formale, formale
formality\formalità
formalization\etichetta
formally\esplicito, formale
format\formato
formation\cultura, origine
formative\formante
former\ancor prima
formerly\davanti, ancor prima, un tempo
formfeed\forma
formic\formiche
formidability\enormità
formidable\opimo
formidably\tremendo
forming\formante
formless\informe
formlessness\informità
formula\formula, schema, ricetta
formulate\formulare
forsake\lasciare
forsakes\abbandoni
forsook\abbandonai
forsooth\in verità
forswear\abiurare
forte\vigoria
fortes\confortare
forth\in fuori
forthcoming\sovrastare
forthright\scoperto
forthrightness\onestà
forthwith\immediato
fortieth\quarantesimo
fortification\fortificazione
fortifies\confermato
fortify\amplificare, consolidare
fortress\fortezza
fortuities\casi
fortuitous\accidentale
fortuitousness\accidentalità
fortunately\fortunatamente
fortune\patrimonio
fortuneteller\chiromante
fortunetelling\profetizzare
forward\anteriore, spedire
forwarding agency\spedizione
forwarding agent\spedizioniere
forwarding department\reparto spedizione
forwardly\corrivo
forwardness\precocità
fossick\frugare
fossil\fossile
foster\orchestrare
fosterling\raccomandato
fought\combattuto
foul\fangoso
foully\fangoso
foulness\lordura
found\fondare, trovato
found again\ritrovato
found of results\trovato
found out\scoperto
foundation\base, fondazione
founder\costitutore, fondatore
foundling\trovatello
foundry\fonderìa
fount\fonte
fountain\sorgente, origine, fontano, fontana a getto, pozzo
fountains\fontana a getto
founts\scaturire
four\quattro
four engined\quadrimotore
four fold\quadruplice
four footed\quadrupede
four handed\quadrumane
four hundred\quattrocento
four sided\quadrilatero
four wire circuit\linea telefonica
fourfold\quadruplice
fourscore\ottanta
fourteen\quattordici
fourth\quarta
fovea\abisso
foveae\abissi
fowl\volàtili
fowling\uccellatura
fox\volpino
fox hunting\caccia alla volpe
foxy\furbo
fracas\rivolta
fraction\frattura, pezzettino, frazione
fraction number\numero frazionario
fractional\esiguo
fractionally\rotto
fractionary\frammento
fractions\rotture
fractiousness\eccitabilità
fracture\frattura delle ossa, frattura
fractured\rotto
fractures\rotture
fragile\fragile
fragility\fragilità
fragment\frammento
fragrance\fragranza, odore
fragrances\olezzi
fragrancies\olezzi
fragrancy\fragranza
fragrant\profumante
frail\acciaccoso, fragile
frame\comporre, orbita, formare, telaio, intelaiatura
framer\formatore
frameworks\tralicci
France\Francia
franchise\esclusiva
frangible\fragile
frank\onesto
frankly\liberamente, scoperto
frankness\franchezza
frantically\selvaggio
franticness\accesso di rabbia
franticnesses\accessi di rabbia
fraternal\fraterno
fraternities\onorificenza
fraternization\affratellamento
fraud\frode
frauds\imbroglione
fraudulent\fraudolento
fraught\gremito
fray\zuffa
frazzle\stracciare
freakiness\pazzia
freakish\bisbètico
freaky\comico
freckle\lentiggine, macchiolina
freckled\lentigginoso
freckles\crusca
free\rilasciare, esente, esimere, tempo libero
free lance\di professione libera
free of charge\esente dalle tasse, ufo
free post\busta affrancata
free thinker\libero pensatore
free time\tempo libero
free trade\libero scambio
free wheel\mozzo libero
freebie\gratuito
freebooter\pirata
freedman\liberto
freedom\libertà
freedom of action\elasticità di azione
freedom of the press\libertà di stampa
freehand\a mano libera
freehanded\liberale
freehearted\candido
freeing\liberante
freelance\indipendente
freeloader\scroccone
freeloaders\scroccone
freely\esente
freer\pretendente
frees\liberato
freeway\autostrada
freeze\aver freddo
freeze to death\morire assiderato
freezed\gelai
freezer\frigorifero
freezes\congelato
freezing\congelarsi
freezing cold\gelo
freight\noleggiare, carico
freight car\vagone merci
freight train\treno merci
freightage\trasporto
freighter\nave da carico
freights\spedire
Frenchman\francese
frenzied\pazzo
frequency\frequenza
frequent\frequente
frequently\spesso
fresh\novellino
freshening\vivificatore
freshly\novellino
freshness\freschezza
fretful\stizzito
fretfulness\uggia
friar\frate
frictionless\senza difficoltà
friday\venerdì
Friday\venerdí
fridge\frigorìfero
fried\arrosto
fried egg\uovo al tegame
frief\cruccio
friend\camerata, amica, conoscente, amico
friendless\senza amici
friendliness\cortesia
friendly\cortese, benevolo, gradevole, amichévole, amicale
friends\amici
friendship\amicizia
fries\cuocio
friezes\frisone
frigate\fregata
fright\spaventi, spavento, paura
frightening\terrificante
frightens\spaventato
frightful\tremendo
frigid\frigido
frill\arricciare
frisky\allegro
fritters\frittata, frittella
fritters away\sprecato
frivolous\frivolo, leggiero
frizz\arricciare
frizzle\grillare
frock\vestito
frog\rana
frogs\rane
frolic\celia
frolics\scherzo
frolicsome\licenzioso
from\da, dalla, dalla, dalla
from there\quindi
from where\donde
frond\vèntola
front\facciata, facciata
front court\vestibolo
frontally\frontale
frontier\frontiera
frost\maturo, gelo
frost damage\danni procurati dal gelo
frostbite\assideramento
frostbitten\assiderato
frosty\freddoloso
froth\schiuma
frothily\vuoto
frown\disapprovare
fruit\frutti, frutto, frutta
fruit juice\succo di frutta
fruiterer\fruttivéndolo
frustration\disillusione
frying pan\padella
fudge\pettinante
fuel\olio combustibile, carburante
fuite\evasione
fulful\adempire
full\gremito
fully booked\gremito
fumigation\desinfezione
fun\spasso, sollazzare
function\funzionare, posizione, impiego, funzione
fundamental\in linea di massima
funds\capitale
funeral\sepoltura, funerale
fungus\fungo
funnel\imbuto
funny\divertente, comico, giocondo, dilettevole
fur\pelle, pelliccia
fureur\furia
furious\arrabbiato
furiousnis\farnetico
furlough\licenziare
furnish\fornire
furnishing\organizzazione
furniture\mobilia, mobili
furrow\solco
furs\pelli
further\promotore, ulteriormente
fuse\valvola, fóndere
fusion\fusione
future\in futuro
gacier\ghiacciaio
gain\prodotto
gainful\lucroso
gainsay\negare
gales\tempeste
gallant\galante
gallbladder\fiele
gallery\esposizione, gallerìa
gallop\galoppo
gallows\patibolo
game\giuoco
games\giuochi
gamete\cellula
gammer\mammina
gang\masnada
gangrene\incendio
gaol\prigione
gap\buca, spazio
garage\officina, autorimessa
garbage can\secchio delle immondizie
garde\guardia
garden\giardino, verziere
gardener\giardiniere
gargle\gargarizzare
garland\festone
garlic\aglio
garment\veste
garnishes\guarnito
gas\gas, benzina
gaseous\gassiforme
gash\taglio
gasoline\benzina
gasp\anelare
gate\valvola, porta, stolto
gatekeepers\portiere
gather\raccogliere, raccogliere, cògliere
gauche\maldestro
gaudy trash\robetta
gaunt\magro
gavels\martello
gear\andamento
gearshift\leva del cambio
gel\gel
General\general
generalize\generalizzare
generally\generalmente
generate\produrre, abbordo
generation\generazione
generator\generatore
generous\liberale, liberale
genital\venereo
genius\genio
gentian\genziana
gentle\dolce, placido
gentleman s\signore
gentleness\cortesia
gently\placido, lungo
genuine\vero
genuinly\davvero, infatti
geography\geografìa
geometry\geometrìa
germ\germe, microbo
German\tedesco
Germany\Germània, Germania
germinable\germinativo
germs\germi
gesture\gesto
get\arrivare, cogliere, ricevere, venni, prendere
get bored\annoiarsi
get drunk\ubriacarsi
get engaged\fidanzarsi
get excited\esaltarsi
get ill\ammalarsi
get rid of\eliminare
get to know\apprèndere
get up\levarsi, esaltare
get used to\abituarsi, abituare
getaway\evasione
ghastly\abominevole
ghost\fantasma
giant\orco, gigantesco
gib\perno
gift\presente, talento
gigantic\gigantesco, gigantesco
giggle\ridacchiare
giggling\ridacchiante
gime\regime
giraffe\giraffa
girdle\cintura, fascetta
girl\ragazza
girlfriend\amica
girlie\bimba
give\dare, regalare
give advice\consigliare
give away\regalare, regalare
give birth to\partorire
give notice\licenziare, licenziato, annunziare
give up\cedere, abbandonare
givers\oblatore
glacier\ghiacciaio
glad\lieto
glance\occhiata
gland\glàndola
glans\ghianda
glare\accecare
glass\calice, vetro
glasses\occhiali, lente
gleam\barlume
glide\vertere
glided\scivolai
glider\veleggiatore
glitter\fronzoli
gloaming\crepùscolo
globe\globo, orbe terracqueo
gloomy\accigliato
glorify\glorificare
glorious\glorioso
glory\vanto
glove\guanto
glow\ardore, barlume
gloweringly\incandescente
glucose\glucosio
glue\glùtine, glùtine
gnarl\nocchio
go\andarsene, andara, andare
go away\far fagotto, andàrsene
go by\trascorrere
go mountain climbing\alpinismo
go on\continuare a fare
go on strike\scioperare
go out\andare a passeggio, entrare
go shopping\fare acquisti
go to bed\andare a letto
goal\scopo, proposito, stolto, traguardo
goalkeeper\portiere
goat\capra
goats\capre
gobbets\pezzo
god\dio
God\Iddio, Iddìo, Dio
goddess\dea
godfather\padrino
godmother\comare
gold\oro
golden\àureo
golf\golfo
gone\andato
good\buono
good-natured\gradevole, benevolo, cortese
good bye\arrivederla
good health\salute
good morning\buon giorno
good night\felice notte
goodbye\arrivederci, addio
goodness\bontà
Goodness\Iddìo
goods train\treno merci
goods truck\vagone merci
goos\ingrassare
goose\oca
gooseberry\ribes
gorge\burrone
gosling\paperotto
gourd\zucca
gourmet\buongustaio
gout\artrite
government\governo
govt\governo
grace\grazia, grazia
graceful\grazioso
gradation\digradamento
grade\sorta
gradually\poco per volta
gram\grammo
grammar\grammatica
grammar school\ginnasio
gramme\grammo
grandfather\nonno
grandioseness\grandiosità
grandmother\nonna
grandson\abiatico
granite\granito
grant\largire, borsa di studio, accordare
granule\granello
grape\uva, gràppolo
grapefruit\pompelmo
grapevine\vite
graph\grafico
grasp\comprendere, prendere, impaccare
grass\erba
grasshopper\locusta
grassland\prato
grate\crocchiare
grateful\grato
gratefulness\gratitudine
grater\grattugia
graticule\reticolo
gratification\soddisfazione
gratifies\accontentato
gratify\contentare
gratifying\letificante
gratings\traliccio
gratitude\gratitudine
gratuitousness\libera volontà
grave\pesante, tomba, grave
gravedigger\necroforo
gravel\ghiaia
gravel pit\cava di ghiaia
graves\tombe
gravestone\lapide
graveyard\camposanto, cimitero
gravitation\gravitazione
gravity\gravitazione, pesantezza
gray\grigio
graze\graffio
grease\grassello, ingrassare, untume, ingrassare
grease drop\occhio di grasso
greasy\untuoso
great\grande, importante
great-grandfather\bisnonno
great-grandmother\bisnonna
Great Britain\Gran-Bretagna
greatly\insolito
greatness\grossezza
Greece\Grecia
greed\avidità, avidità
greedy\vorace
Greek\Greco
green\verde
greener\più verde
greenhorn\avannotto
greenhouse\serra
greenish\verdognolo
greenly\semplice
greenness\ingenuità
greet\salutare, salutare
greeting\vale
gregariousness\veglia danzante
gremlin\folletto
grepped\cercato
grew\crescita
grey\grigio
greyhound\levriere
grid\traliccio
griddlecake\frittata
griddlecakes\frittata
grids\traliccio
grief\pena
grieve\crucciare
grills\graticole
grim\grifagno
grimace\smorfia
grimaces\buffoneria
grimly\grifagno
grimy\fangoso
grin\ghigno
grind\crocchiare, trascinare, tritare
grinded\rullato
grindingly\faticoso
grindstone\cote
grip\impaccare, prendere
gripe\acchiappare
griping\acchiappare
grips\manici
gritty\coraggioso
groan\gèmito
groaned\gemei, emesso un gemito
groaning\sospiro
groans\geme
groat\centesimo
grocer\merciaio
grocery\negozio di generi alimentari
groggily\ebbro
groin\listello
groomed\curato
groove\traccia, intaccare, solco, scanalatura
groovy\in ordine
grope\tastare
gross\grosso, lordo
grossness\grossezza
grossnesses\confortare
grotto\grotta
ground\suolo, suolo, massa
ground-floor\pianterreno
groundwork\base
group\gruppo
grouse\borbottare
grouser\querulone
grovel\strisciare
groveler\adulatore
grow\allevare, créscere, venni
grow again\ricrescere
grow old\invecchiare
grower\allevatore
growers\allevatore
growl\ringhiare
growled\ringhiato
growler\brontolone
growling\ringhiante
growlingly\ronzante
growls\ringhiare
grows stiff\irrigidito
growth\evoluzione, sviluppo
grub\divorai
grubbed\scavai
grubby\sudicio
grudge\invidiare
grudging\invidioso
grueling\assassino
gruelling\estenuante
gruellingly\assassino
gruesomeness\efferatezza
gruff\ripido
gruffly\ripide
gruffness\asperità
grumble\ronzare, borbottare
grumpiness\uggia
grunt\grugnire
guarantee\garantire, garanzia, garanzia
guaranteed\garantito
guarantor\garante
guaranty\garantire, garanzia
guard\proteggere, caporale, sorvegliare, bigliettaio
guarded\difeso
guardedly\prudente
guardedness\precauzione
guarders\guardia
guardian\tutore, guardiano
guardian angel\angelo custode
guardianship\tutela
guards\custodito
guarentee\garanzia
gubernatorial\luogotenente
gudgeon\zaffo
guesswork\supposizione
guest\ospite
guest house\pensione
guests\ospiti
guidable\dirigìbile
guide\introduzione, cicerone, regolare
guide book\introduzione
guidebook\guida turistica
guided tour\guida
guides\segnavia
guiding\primario
guild\corporazione
guilt\colpa
guiltier\colpevole
guiltily\colpevole
guiltiness\colpa
guilty\conscio della propria colpa, colpevole
guinea pig\cavia
guise\figura
guises\plasmare
guitar\chitarra
gulf\golfo
gullet\fauci
gullible\facile a credere
gullibly\facile a credere
gullies\scoli
gully\solco
gulp\ingoio
gun\rivoltella, pistola, cannone, fucile
gun powder\polvere pirica
gunfight\sparatoria
gunner\cannoniere
gunpowder\polvere da sparo
gust\folata di vento
gustiness\burrasca
gusto\gusto
gutless\vigliacco
gutlessness\vigliaccheria
gutsy\vorace
gutter\solco, tombino, grondala
guy\àncora, ancorare
gym\ginnàstica
gymnasium\palestra
gymnastics\far ginnastica, ginnàstica
gynaecologist\ginecologo, ginecòlogo
gypping\vertiginoso
gypsum\gesso
gypsy\zingaro
gyrate\roteare
gyrating\roteante
gyration\girata
gyroscopic\trottola
habit\costumanza, qualità
habitable\abitabile
habitably\abitabile
habitant\abitante
habitually\consueto
habitualness\costumanza
habituation\assuefazione
hack\zappa, fendente
hackles up\irritato
had\avuto
had a temperature\febbricitante
had to\dovuto
haemorrhoids\emorròidi
haep up\ammonticchiare
hafts\manici
hag\fattucchiera
haggard\consunto, selvaggio
haggardly\selvaggia
haggle\mercanteggiare
hail\grandinare, grandine, gràndine
hailed\grandinò, grandinato
hair\capelli, pettinante, capello
hair style\pettinatura
hair tonic\lozione
haircutter\parrucchiere
hairdo\pettinatura
hairdresser\parrucchiere, parrucchiere
hairdressing\pettinante
haired\capelluto
hairpin\forcina
hairstyle\pettinatura
hairy\capelloso, capelluto
haistyle\pettinatura
hale\sano
half\mezzo, metà
half-caste\ibrido
half length portrait\busto
half moon\mezza luna
half wit\imbecille
halfhearted\svogliato
halfheartedness\apatìa
hall\sala, sala, corridoio, vestìbolo
hallowing\adorante
halls\risuonare
hallucination\allucinazione
hallway\vestìbolo
halt\fermarsi, alt, durare
halted\interrotto
haltingly\zoppicante
halve\dimezzare
ham\prosciutto
hamburger\polpetta di carne
hammer\martello
hammer blow\martellata
hammered\martellare
hammering\martellante
hammock\amaca
hamper\impedire
hamsters\accaparrare
hand\mano, manuale, lancetta
hand gear\leva
hand luggage\bagaglio a mano
hand over\porgere, porgere
handbag\borsa
handbill\volantino
handbook\manuale
handbrake\freno a mano
handcar\dresina
handed over\consegnato
handgun\pistola
handiwork\lavorato a mano
handkerchief\fazzoletto
handle\servire, gambo, orecchia
handles\manici
handling\cura, servizio, maneggio
handmade\fatto a mano
handout\volantino
handrail\balaustrada
hands\mani, mano
hands over\predominio
handset\ascoltatore
handsomely\graziosa
handsomeness\bellezza
handstand\verticale
handwork\arte
handy\utilitario
hang\appiccare, vertere, pendere
hang over\sporgenze
hangar\hangar
hangdog\avanzo di galera
hanger\staffa, nudista, gruccia
hangman\carnéfice
hangout\casotto
hangover\malessere
hankering\esìgere
hans\contadino
hap\emergenza
haphazard\accidentale
haphazardness\accidentalità
hapless\disgraziato
haplessly\infelice
happen\avvenire, succedere, passare, accadere
happily\fortunatamente
happiness\beatitùdine, felcità, contentezza
happy\lieto, avventurato
harass\inquietare
harasses\inquieto
harassing\inquietante
harassment\turbamento
harbinger\precursore
harbor\porto
harbour\porto
hard\solido, faticoso, pesante
hard copy\espressione
hard cured\asciugato
hard hearted\duro di cuore
hardening\indurire
harder\più duro
hardhead\allocco
hardheadedness\ostinatezza
hardly\difficilmente, appena
hardness\durezza
hardtop\berlina
hardy\sempreverde, ardito, accanito
hare\lepre
harelip\leporino
haricot\fagiuolo
hark\orecchiare
harken\orecchiare
harlot\prostituta
harm\penoso, difetto, prevenzione, guaio
harmed\ferita
harmful\dannoso
harmless\innocuo
harmonic\armonico
harmonious\armonico
harmoniousness\armonia
harmony\concordia, armonia
harness\porcellana
harp\arpa
harpoon\fiocina
harrow\érpice
harrowingly\penoso
harrows\erpicare
harry\saccheggiare
harrying\saccheggiante
harsh\scabro
harvest\raccolto, raccogliere
harvests\raccogliere
hass\astio
haste\furia
hastening\accelerativo
hastiness\furia
hasty\frettoloso
hat\cappello, berretto
hatchet\ascia
hatching\tratteggio
hate\odio, astio
hated\odioso
hateful\odiabile, odioso
hatefulness\malignità
hater\odiatore
hatred\astio
hats\cappelli
haughtily\orgoglioso
haughtiness\alterigia
haughty\orgoglioso
haul\estrassi
haul off\trascinare
haulage\avanzamento, trasporto, trascinare
hauled\tirai
hauler\rimorchiatore
hauls\tira
haunch\lombo
haunches\lombarde
haunt\inseguire
haunter\inseguitore
haunts\inseguito
hauteur\alterigia
have\prendere, avere, possedere
have a swim\fanno il bagno
have an accident\avere un infortunio
have breakfast\far colazione
have not\spiantato
have on\aver addosso
have to\debbono
having\dopochè, possesso
hawk\astore, falco
hawked\cacciai
hawkish\usuraio
hawks\falchi
hay\fieno
hayloft\fienile
haywire\pericolante
hazard\azzardo, rischio
hazardous\rischioso
haze\foschia, vapore
hazel\nocciolo
hazelnut\nocciola, nocciuola
hazily\nebbioso
haziness\vaporosità
hazy\nebbioso
he\lui, esso
he d\aveva
he goat\caprone
he who\quello che
head\capoccia, testa
head quarters\quartiere generale
head waiter\capocameriere
headache\mal di testa
headaches\stare in pensiero, mal di testa
headdress\pettinatura
headless\sventato
headlight\faro
headline\grande titolo
headman\guida
headmaster\rettore, direttore
headmen\guida
headmost\colonello
headphone\cuffia
heads\teste
headsail\vela di trinchetto
headsman\giustiziere
headwaiter\capocameriere
headway\avanzamento
heal\guarire
healable\curàbile
healer\empirico
health insurance\cassa ammalati
health insurance company\cassa ammalati
healthful\sano
healthfully\sana
healthily\sano
healthy\sano
heap\quantità, cùmulo, macereto
hear\sentisti
heard\sentii
hearing\ascolto
hearken\orecchiare
hears\sente
heart\cuore
heartbroken\rotto
heartburn\bruciare di stòmaco
hearted\incoraggiare
hearten\incoraggiare
hearth\focolaio
heartless\insensibile
heartlessly\insensibile
hearts\cuori
hearty\cordiale, affettuoso
hearty kiss\bacione
heat\calore, ardore, riscaldare, calore
heat flash\emissione di calore
heat treatment\trattamento termico
heat up\riscaldare
heatedly\emozionato
heater\riscaldamento
heaters\radiatore
heath\landa
heathen\etnico
heather\erica
heating\riscaldamento, riscaldare
heats\accaldato
heatwave\ondata di caldo
heaven\cielo
heavenliness\divinità
heavenly\celestiale
heavier\più pesante
heavily\difficilmente
heavy\pesante, veemente, grosso
heavy shower\acquata
heavy weight\peso massimo
heavyset\grande, voluminoso, produttivo
heavyweight\peso massimo
hebraic\ebraico
hectare\ettaro
hector\intimidire
hectoring\intimidente
hedge\siepe
hedgehog\riccio
hedger\scansafatiche
hedgerow\siepe
heedfulness\attenzione
heel\calcagno, alìnea
hefty\valido
hegemonic\altissimo
height\altitudine, grossezza, elevazione
heightens\ingrandito
heinous\empio
Heir\erede
heiress\erede
heirs\ereditare
heist\rubare
helicopter\elicottero
helicopters\elicottero
heliography\fototipìa
hell\inferno
hellish\infernale
hellishness\esecrabilità
hello\per cortesìa, ciao, si, pronto
helm\tassa
helmet\casco
helmsman\nocchiero
help\aiuto, aiutare, collaborazione
helped\aiutai, aiutato
helper\aiutante
helpfulness\utilità
helpless\impacciato, perplesso
helpmate\aiutante
helps\aiuta
helve\gambo
hem\vivagno
hemisphere\emisfero, emiciclo
hemoglobin\emoglobina
hemophiliac\emofilo
hemorrhoids\emorròidi
hemp\cànapa
hen\gallina
hence\per questo, indi, in consequenza
henchman\nudista
heptagon\ettagono
her\lei, al suo, a lui, di ella, gli
herb\erbe
herb tea\tisana
herbaceous\erbaceo
herbage\erbe
herbal\vegetale
herbal lore\botanica
herbivorous\erbivoro
herbs\erbe
hercules\ercole
herd\mandria
here\quite, ecco, quì, qua
here are\ecco
here is\ecco
hereditarily\ereditario
hereditary\ereditario
hereditary enemy\nemico secolare
heredity\ereditarietà
hereon\appresso
heresy\eresia
heretic\eretico
heretical\eretico
hereticalness\eresia
heretofore\in altri tempi
hereupon\appresso
heritability\ereditarietà
heritable\ereditario
heritage\erede, eredità
hermaphrodite\ermafrodito
hermetic\ermetico, ermetico
hermetical\ermetico, ermetico
hermit\eremita
hermitage\clausura
hernia\frattura
hero\eroe
heroin\eroina
heroine\eroina
heroism\eroismo
herring\aringa
herrings\aringhe
hers\di ella
hesitance\esitare
hesitancy\esitazione
hesitant\esitante
hesitate\esitare
hesitates\esita
hesitating\esitante
hesitation\ritardo, interruzione
heterogeneity\eterogeneità
heterogeneous\eterogeneo
heteropolar\multipolare
hew\lavorare
hewn\picchiato
hexagonally\esagono
hexed\maledetta
hexes\maledetto
hey\eh
heyday\momento culminante
hiatus\buca
hick\balordo
hidden\latente, latente
hidden safe\cassetto segreto
hide\nascondere, nascosi
hideaway\nascondiglio
hideous\abominevole, abominabile
hideousness\esecrabilità
hiding place\latebra
hie\volare
high\altissimo, elevato
high mountain-chain\alta montagna
high tide\alta marea
higher\più alto
highest\altissimo
highhandedness\arbitrarietà
highlight\momento culminante
highly\elevato
highly paid\largamente retribuito
highly sensitive\ultrasensibile
hijack\rapire
hiking\escursionismo
hill\collina, pendio, eminenza
hilly\collinoso
him\a lui, lui
hinder\impedire
hint\alludere, suggerimento, riferimento
hip\anca
hippopotamus\ippopotamo, ippopotamo
his\di ella, al suo, suo
hissing\rumoreggiare
history\storia, storia
hit\picchiare
hive\alveare
hoar\onorando
hoard\accaparrare
hoarse\rauco, scabro
hoaw\lazzo, scherzo
hobby\hobby
hockey\hockey
hoggish\àvido
hogs\maiali
hold\durare, comprèndere
hold-up\rapina
hold out\resistere
hold tight\impaccare
holder\titolare
holdup\aggressione
hole\fossa
holes\buchi
holiday\vacanze
holidaymaker\persona in ferie
holidays\ferie
holifay\festa
Holland\Olanda
Hollander\olandese
holliday\ferie
hollow\concavo
holy\santo
home\ospizio, patria, nazionale
homemaker\padrona di casa
homesickness\nostalgia
homicide\omicidio colposo
hommage\omaggio
homoeopathy\omeopatia
homogeneous\omogeneo
honest\onesto
honey\miele
honeymoon\luna di miele
honorarium\onorario
honour\onorabilità
honourable\onorando
hood\cuffia, cappuccio, cofano, cappotta
hoof\zoccolo
hook\gancio
hooky\curvato
hoot\urlare
hope\sperare, speranza
hopeful\speranzoso
hopefully\spero
hopeless\irrimediabilmente
horizon\orizzonte
horn\cornetta
horoscope\oroscopo
horrible\mostruoso, orrendo, spaventoso
horror\orrore, spaventi, orrore
horse\cavallo
horse-radish\barbaforte
horsefly\estro
horsepower\cavallo vapore
horseradish\barbaforte
horses\equino
horticultural\giardinaggio
horticulture\giardinaggio
hose\tubo
hospice\ospizio
hospital\nosocomio, clinica, ospedale
host\ospitante
hostage\ostaggio
hostile\nemico
hot\torrido
hotel\albergo
hotel lobby\hall
hotel servant\garzone
hour\lezione
house\casa
house number\numero di casa
household\governo della casa
houses\case
housewife\padrona di casa
housing\alloggiamento
hover\vertere
how\come
however\in ogni modo, qualunque sia, pure
howl\urlare
hubcap\coppa coriruota
huge\gigantesco
hull\torso
hulled\sbucciato
human\umano
human being\persona
humanely\umano
humanity\umanità
humidity\umidità
humility\umiltà
humor\umorismo
humorous\umoristico
hunchbacked\gobbo
hundred\cento
hundredweight\mezzo quintale
hung on\resistere
Hungarian\ungherese, unghurese
Hungary\Ungheria
hunger\fame
hungry\affamato
hunt\caccia, cacciare
hunter\cacciatore
hurdler\ostacolista
hurl\avventare
hurricane\uragano
hurry\volare, furia
hurry up\affrettarsi
hurt\dolere, ferire, penoso
husband\consorte, sposo, coniuge, marito, omo
hussar\ussaro
hut\capanna
hygiene\igiene
hygienic\igienico
hygienics\igiene
hyper\sopra
hypocrisy\ipocrisia
hypocrite\ipocrita
hypoth\ipotesi
hypothesis\ipotesi
hysteric\isterico
hywhy\per quale scopo
I\me, a me, io
ibidem\nello stesso luogo
ice\ghiaccio, gelato
ice cream\gelato
iceberg\iceberg
icepack\banchisa
icy\ghiacciato
idea\nozione, idea, idea, pensiero
ideal\ideale
identical\identico
identification card\legittimazione
identity card\legittimazione
ideology\ideologia
idiot\idiota
idiotic\stupido, idiotico
idle\pigro, ozioso, passivo
idol\idolo
idyllically\idìllico
if\caso che, se, come se
ignition\accensione
ignoramus\ignorante
ignorance\ignoranza
ignorant\ignorante
ignore\ignorare
ill\egro, malato
ill will\malevolenza
illconsidered\inconsiderato
illdisposed\mal disposto
illegal\illegale, illegale
illegitimately\extraconiugale
illiterate\incolto
illiterately\incolto
illness\malattia
illogical\illogico
illuminate\illuminare
illusion\illusione
illustrious\famoso
image\dipinto
imaginary\immaginario
imagination\immaginazione, fantasìa
imagine\immaginarsi
imitate\imitare
immediate\immediato
immediately\direttamente, immediato, subito
immense\smisurato
immigrant\immigrante
immigration\immigrazione
immobile\immobile
immortal\immortale
immoveable property\immobili
immoveables\immobili
immun\facente
immunity\immunità
immure\carcerare
imp\briccone
impact\influsso
imparity\disuguaglianza
impart\prestare
impatience\impazienza
impatient\impaziente
imperative\legante
impertinent\sfacciato
impetuous\veemente
impiousness\empietà
implementation\realizzazione
implies\anzidetto
imploringly\insistere
impolite\scortese
imponderably\imponderabile
import\importare, importo, introdurren, importazione
important\vistoso, rilevante, importante
importent\importante
importer\importatore
importing\importazione
impossible\impossibile
impove\perfezionare
impress\impressione, impressionare
impression\impressione
imprison\carcerare
imprisonment\detenzione, aresto
improtance\levatura
improve\perfezionare, migliorare
improvement\emendazione
improvise\improvvisare
improvises\estemporaneo
impute\attribuire
in\negli
in a muddle\viluppo
in as much\quite
in due course\nel termine stabilito
in due time\nel termine stabilito
in duplicate\doppio
in exchange for\contro
in fact\veramente
in front of it\innanzi
in italics\corsivo
in love\innamorato
in question\incerto
in the end\alla fine
in the meantime\nel frattemoi
in toto\totalmente
in triplicate\triplo
in vain\invano, inutilmente, inutile
in writing\scritto
inaccessible\irraggiungibile
inaccurate\inesatto
inadequate\insufficiente
inboard\di dentro
incandescent\incandescente
incapable\inadatto, incapace
incest\incesto
incinerates\arde
incipient\cominciante
incite\eccitare
incline\piegare, declinazione
inclines\piega
include\abbracciare, rinchiudere
included\incluso
inclusive\inclusivamente
income\reddito
incomprehensible\incomprensibile
inconceivable\incomprensibile
incontestable\incontestabile
inconvenient\sconveniente
incorrect\infondato, difettoso, fasullo
incorruptibly\incorruttibile
increase\accrèscere, aumento, aumentare, ingrandire
increments\aumentare
incriminate\addebitare
incrustation\travestimento
incurable\inguaribile
indecent\indecente
indeed\infatti, davvero, veramente
indefinite\vago
independent\indipendente, indipendente
indeterminate\torbido
index\indice, riferimento
Indian corn\granturco
indiarubber\caucciù
indicate\millantare, indicare, denunziare
indictable\punibile
indifferent\apàtico
indigenous\unigenito
indigestible\indigesto
indignant\indignato
indignation\sdegno
indirect\mediato, indiretto
indispensable\indispensabile, indispensabile
individual\individuale, individuo
indivisibly\indivisibile
induce\provocare
indulgence\indulgenza
industrious\valente, diligente
industriously\diligente
industry\applicazione, diligenza, industria
inefficient\inefficiente, incapace
ineptitude\ocaggine
inequality\disuguaglianza
inertia\accidia
inessential\accidentale
inevitable\inevitabile
inevitably\immancabile
inexpensive\economico
inexperienced\novizio
infallible\infallibile
infamous\infame
infant\fanciullo, fanciulla
infantile\fanciullesco
infarct\infarto
infatuating\seducente
infect\infettare
infected\appuntare
infection\infezione
inferior\di valore scadente
infernal\infernale
infinite\infinito
infinitive\infinitivo
inflammable\accendibile, combustìbile
inflammation\infiammabilità
inflation\inflazione
inflexible\rigido
influence\influsso, influire
influential\influente
influenza\influenza
inform\insegnare, informare, far noto, informare
informally\disinvolto
information\informazione, ragguaglio
ingenious\ingegnoso
ingenuous\semplice, sincero
ingot\lingotto
ingotiron\acciaio fuso
inhabit\abitiamo, abitare
inhabitant\abitatore, abitante
inhabits\abitato
inhalation\aspirazione
inhale\succhiare, aspirare
inherit\ereditare
inhuman\disumano
inhumanly\disumano
iniquitous\infame
initial\iniziale
initials\abbreviamento
inject\spruzzare
injection\siringa
injured\ferito
injury\ferita
ink\inchiostro
inland\territorio nazionale
Inland Revenue\ufficio delle finanze
inletted\incastrato
inn\osteria
inner\interno, interiore
innocence\innocenza
inobservance\dimenticanza
inoculate\vaccinare
inpayment\pagamento
input\petizione
inquire\informarsi
inquiry\informazione, richiesta, richiesta, inchiesta
inquisitorial\curioso
inscription\iscrizione
insect\insetto
insecure\malsicuro
insemination\fecondazione
insert\introdurren
inside\di dentro
insider\iniziato
insignias\distintivo
insignificant\irrilevante, insignificante
insignificantly\senza importanza
insitute\istituto
insolence\impertinenza
insolent\sfacciato, insolente
insolvency\insolvenza
insolvent\insolvente
insomnia\insonnia
insouciance\spensieratezza
inspect\ispezionare, controllare
inspection\controllo, ispezione
inspector\controllore
inspiration\eccitamento, idea
inspire\fanatizzare
install\mettere, mettere, allineare
installation\installazione, allineamento
instant\momento
instantly\direttamente
instead\invece
instead of\invece, invece di
instead off\invece di
instinctiveness\naturalezza
institue\istituto
institutional\legale
instruct\assegnare, delegare
instruction\insegnamento, vaglia, educazione
instructional\ordini
instructor\negli, educatore
instructors\insegnante
instrument\strumento
insufficient\insufficiente
insult\affronto, oltraggiare, oltraggiare
insurance\assicurazione
insure\assicurare
insured\assicurato
intact\intatto
intelligence\intelligenza
intelligent\intelligente
intemperate\smoderato
intensity\intensità
intensive\intensivo
intention\proposito
interbreed\incrociare
interest\interessare, interesse
interested\interessato, appassionato
interesting\interesante
interference\intromissione
intergrate\integrare
interior\interiore, interiore
interject\obiettare
interlock\ingranare
intermingles\miscredenza
internal\nazionale
international\internazinale
internist\internista
interpreter\traduttore
interrogation\interrogatorio
interruption\interruzione
intersect\incrociare
intersection\crociata
interval\spazio
intervene\intervenire
intervention\intervento
intestine\budello
intimate\intimo
intimidate\intimidire
into\negli
intolerable\intollerabile
intonation\cadenza
intrepid\ardito, coraggioso
intrigue\intrigo, intrigare
introduce\presentare
introducir\introdurren
introduction\introduzione, introduzione
intromission\ammissione
intrusion\penetrare
intumescence\gonfiatura
intwain\in due
inutile\disùtile
invade\ricordare
invalid\nullo
invalidate\estenuare
invalidation\estenuazione
invasion\invasione
inveigles\sedotta
invent\inventare
invention\invenzione
inventor\fabbricatore
inventory\inventario
invest\abbordo, investire
investigation\vìsita
investment bonds\effetti
investor\risparmiatore
invitation\invito
invite\invitare, invitare
invoice\càlcolo
Ireland\Irlanda
iris\iride
Irishman\Irlandese
iron\ferro, ferro da stiro
ironworks\ferriera
irony\ironia
irrecognizable\irriconoscibile
irrecoverable\insostituibile
irreducibly\minimale
irregular\eteroclito
irresponsive\privo di comprensione
irrevocable\irrevocabile
irrigate\annaffiare, bagnare
irritate\esacerbare
irritating\stizzito
irruption\penetrare
island\isola
islet\isoletta
isolated\unico
issue\emettere
it\a lui
Italian\Italiano
Italy\Italia
itch\prudere
item\artìcolo
iterates\ripetuto
iternal\interno
itinerary\itinerario, tratto
its\di ella, al suo
ivory\avorio
jack\cricco, spina
jacket\giubba
jag\crepatura
jail\prigione
jam\calca, marmellata
jammerfellow\nato con la camicia
jampacked\rinzeppato
January\gennaio
Japan\Giappone
Japanese\Giapponese
japanese\nipponico
jazz\jazz
jealous\geloso
jealousness\gelosia
jealousy\gelosia
jelly\gelatina
jellyfish\medusa
jennyass\asina
jerk\stratto, folata
jeryhouse\catapecchia
jest\scherzare
jesting\lepido
jet\raggio, jet
jet plane\jet
jetty\molo
Jew\giudeo
jewel\gemma
jeweller\gioielliere
jiff\momento
jiggle\vacillare
jingle\sonare il campanello, tinntinnare
jinx\guaio
job\lavoro, professione, posizione, quesito, posizione
joblessness\disoccupazione
join\legare, copulare, unirsi, sè, guarnizione
joiner\falegname
joint\guarnizione, articolazione, cuocio
joke\scherzo, celia, lazzo, scherzare, tiro
jolt\folata, scuotere, stratto
journalist\giornalista
journey\itinerario, viaggio in macchina, viaggio, tratto
joy\consolazione
joyce\elezione
joyful\festevole, giocondo
joyously\pieno di gioia
jucystory\interesante
judge\giudice, giudicare
judgement\giudizio
judicial\giudiziario
judicious\perspicace
judo\judo
jug\orcia, vaso, caraffa, carato
juice\succo
juicily\succoso
juicy\succoso
July\luglio
jump\saltellare, saltare, lancio
jumper\maglia, spina, pullover
June\giugno
jungle\giungla
junto\cricca
jupon\sottana
juridical\giurìdico
jurisdiction\giurisdizione
jurist\giurista
juristic\giurìdico, giurìdico
jury\giuria
just\equanime, soltanto
justice\giustizia, giustizia
justification\giustificazione
kayak\kayak
keen\ansioso, nitido
keep\osservare, trattenere, mantenere, rimanere, durare
key\chiave, tasto
keyboard\tastiera, pianola
kibble\tritare
kick\calcio, pedata, sgambettare
kicked\colpii
kidnap\rapire
kidney\rene
kill\uccidere
killer\uccisore
killjoys\guastafeste
kilo\chilo
kilogram\chilogrammo
kilogramme\chilogrammo
kilometer\chilòmetro
kilometre\chilòmetro
kilometres\chilòmetro
kind\fare, benevolo, cortese, valevole, gentile, sorta
kindle\infiammare
kindly\valevole
kingdom\regno
kingfisher\alcione
kinswoman\conggiunto
kiosk\edìcola
kirk\chiesa
kiss\bacio, baciano
kit\tasca, astuccio
kitchen\cucina
kitchenware\cocci
kleenex\fazzoletto di carta
knead\impastare
kneader\massaggiatore
knee\ginocchio
kneeing\ginocchioni
kneel\inginocchiarsi
knife\coltello
knit\lavorare a maglia
knock\battuta, battere, urtare
knock down\travolto
knock out\abbàttere
knockknees\gambe a x
knockout\precipitazione
knop\bottone
knot\nodo
know\potere, conoscere, sapere
knowable\riconoscibile
knowingly\deliberato
knowledge\sapere, nozione
knownmake\notificare
knuckle\articolazione
Koran\corano
kremlin\cremlino
label\scudo
labelling\distinzione
laboratory\laboratorio
labour\lavoro
labour exchange\ufficio del lavoro
labyrinth\labirinto
lace\punta, cordonare
laceration\ferita carnosa
lack\mancare, strettezza, difetto
lack of clarity\poca chiarezza
lacked\mancai
lacquer\vernice
ladylike\da signora
lager\birra
lake\navale, lago
lama\lama
lamb\agnello
lamp\lampada, fanalino
lance\lancia
land\terreno, terra, toccare terra
landing\approdo
lands\terre
landscape\paesaggio
landslide\frana
landsman\terraiuolo
lane\viale, traccia, vìcolo, vicolo, strada
language\idioma
languages\lingue
lanky\allampanato
lantern\lampione
large\grande, ampio
largeintestine\intestino
lark\allodola
larva\larva
larynx\laringe
lasciviousness\lascivia
lash\flagellare
lass\ragazza
last\ultimo, durare, scorso, infine, continuare
last but one\penultimo
last will\testamento
later\più tarda
lateral\laterale
lathe\tornio
laugh\ridere
laugh at\deridere
laughter\risata, ridere
laurel\alloro
lavatory\latrina, abbigliatura
law\legge
lawcourt\pietanza
lawful\legittimo, legale
lawn\smaniare
lawsuit\procedimento
lawyer\legale, giurista
lay\posare
layby\luogo di sosta
layer\strato
layers\stratificare
laying\posare
layman\laico
laze\battere la fiacca
lazy\ozioso, pigro
lazybones\infingardo
lead\condurre, piombo
leader\guida
leading in\introduzione
leaf\sfogliare, falda, foglia
leaf through\sfogliare
leaflet\volantino, memorandum
leak\falla
lean\sostenere, scremato, sporgere
leap\saltare
learn\apprèndere, apprèndere, imparare
learned\erudito, colto
learning\apprèndere
lease\prendere in affitto, noleggiare
leaseholder\appaltatore
least\meno di tutti
leather\cuoio
leave\andàrsene, lasciare in eredità, lasciare
lectern\leggio
lecture\dizione
ledges\cornicioni
leeriness\astuzia
left\sinistra, sinistro, a sinistra
left luggage\depòsito bagagli
left side\sinistra
lefthanded\mancino
leg\gamba, zampa
legal\giurìdico, giudiziario, legittimo, legale
legal decision\sentenza
legal procedure\procedimento legale
legal process\via legale
legality\legittimità
legalize\legalizzare
legally\legale
legation\legazione
legato\vincolato
legend\spiegazione, leggenda
legible\leggkbile
legionnaire\legionario
legislation\legislazione
legislative\legislativo
legislatively\legislativo
legislator\legiferatore
legit\vero
legitimate\legittimo, legittimo
legitimate portion\legittima
legitimize\legittimare
legs\gambe
leisure\ozio
leisure time\tempo libero
lemon\limone
lemonade\limonata
lems\oggettivo
lemures\lemuri
lend\prestare, imprestare
lends\presta
length\volume, durata
lengthen\allungare
lengths\longitudinale
lengthwise\lunghesso
leniency\indulgenza
lenient\indulgente
leniently\indulgente
lenitive\leniente
lense\lente
lent\prestai
lentil\lenticchia, lente
leopard\leopardo
leprosy\lebbra
leprously\lebbroso
lesbian\lesbio
lesion\fegriva
less\minore, meno
lessen\rimpicciolire
lessens\diminuito
lesson\lezione, lezione
let\appigionare, lasciare
let down\abbassamento
let in\incastrato
let know\informare
lethargic\floscio, letargico
lethargy\letargia
lets\lasciare, lasci, amméttere
letter\epistolare, lettera alfabetica
letter box\cassetta postale
letter of attorney\autorizzazione
letter of credit\lettera di credito
lettering\iscrizione
letters\lettere, lettere
lettuce\lattuga
leukaemia\leucemia
leukemia\leucemia
levee\diga
level\pianura, livello, appianare, gradino, posizione
levelheaded\digiuno
levelness\ugualità
lever\leva
levers\leva
levy\esaltare
levying\alzante
lewd\lascivo
lewdness\lascivia
lexical\lessicale
lexicon\lessico
liability\responsabilità, responsabilità
liable\responsabile, responsabile, obbligato
liable to duty\soggetto a dogana
liana\liana
liar\bugiardo
lib\esimere
libation\libazione
libbard\leopardo
libellist\calunniatore
libellous\calunnioso
liberal\liberale
liberalism\liberalismo
liberalization\liberalizzazione
liberalize\liberalizzare
liberally\liberale
liberates\liberato
liberating\liberante
liberation\liberazione
liberator\liberatore, Redentore
libertinism\licenziosità
liberty\libertà
liberty of action\libertà di movimento
libra\bilancia
libraried\collezionato
library\biblioteca
libs\liberato
lice\cimici
licence\nullaosta, licensa, modulo, patente di guida
licence number\numero di matricola
license\permettere, licensa
licentious\licenzioso
licentiousness\licenziosità
lichen\liciene
licit\legalitario
lick\lambire
lickings\randello
licorice\liquirizia
lid\callotta, palpebra
lidded\limitato
lids\callotta
lie\circostanza, mentire, bugìa, giacere
lie down\sdraiarsi
lied\mentito
lies\giace
lieu\invece
life\stare, durata della vita
life insurance\assicurazione sulla vita
life span\durata della vita
lifebelt\salvagente
lifeboat\lancia di salvataggio
lifeguard\bagnaiuolo
lifeless\esanime
lifelessness\mancanza di vita
lifelike\naturale
lifelong\vitalizio
lifetime\stare
lift\sollevare un pò, ascensore, elevatore, sollevare
lifted\sollevai
liftings\sollevo
lifts\ascensori
ligate\legamento
ligated\fettuccia
ligating\legante
light\lampada, poco pesante, rado, schiarire, accesi
light hearted\sereno
light meter\esposìmetro
light up\illuminare
lighten\schiarire, agevolare
lighter\accendino
lightheaded\leggiero
lighthearted\festevole
lightheartedness\giovialità
lighthouse\faro
lighting\illuminazione
lighting technology\luministica
lightly\poco pesante
lightness\facilità
lightning\baleno, lampeggiare, fulmine
lignite\lignite
likable\gentile
like\simile, pari, come
like this\cosi
liked him\piacque
likelihood\verosimiglianza
likeliness\verosimiglianza
likely\presumibile, verosìmile
liken\paragonare
likeness\assomiglianza
likens\confrontato
likewise\altrettanto, ugualmente
lilac\sambuco
lilies\liliaceo
lilt\canticchiare
liltingly\festevole
lily\giglio
limb\membro
limber\poco stretto
limbs\arti
lime\calce
lime-tree\tiglio
lime like\calcareo
limelight\luci della ribalta
limit\delimitare, frontiera
limitation\limitazione
limitative\limitante
limited\corto
limiting\limitante
limitless\sconfinato
limp\zoppicare
limpid\vaporoso
limpidness\limpidezza
limping\zoppicante
limply\spossato
limpness\fiacchezza
limy\calcinoso
linden-tree\tiglio
line\riga, direzione, collezione, solco, riga, riga
line by line\a righe
line up\fare la fila
lineage\derivazione
linen\di lino
linen cupboard\armadio della biancheria
lineprinter\stampatore
liner\nave di linea
lineup\allineamento
lingering\esitante
lingua\lingua
linguistic\linguistico, idiomàtico
linguistical\idiomàtico, linguistico
linguistics\linguistica
liniment\linimento
liniments\linimento
link\copulare, legamento, attaccare
linnen\di lino
linnet\fanello
linoleum\linoleum
lion\leone
lioness\leonessa
lionize\fantasticare
lions\leonino
lip\labbra
lipstick\rossetto
liqueur\liquore
liquid\liquido, liquidità
liquid manure\liquame
liquidate\estingere, liquidare
liquidates\estingue
liquidation\estinzione
liquidator\liquidatore
liquidly\liquido
liquidness\liquidità
lissome\duttile
lissomely\duttile
list\numerare, elenco, registro
listen\ascoltare, sentisti, udizione
listen carefully\orecchiare
listen to\udizione, ascoltare
listener\ascoltatore, ascoltatore
listening\ascoltante
listens to\sente
listless\svogliato, svogliato
listlessness\svogliatezza
litany\litania
lite\la crema
literacy\cultura
literal\letteralmente, letterale
literary\letterario
literature\letteratura
lithe\duttile
litheness\duttilità
lithograph\litografia
lithographic\litografico
lithogrph\litografare, litografia
litigious\litigigioso
litre\litro
litter\strame
little\piccolo, minuscolo
littleness\nonnulla
littlest\piccolissimo
liturgic\liturgico
liturgy\liturgia
live\abitiamo, stare
live in\abitare
live to see\vissi
live together\convìvere
lived\vivei
liveliness\vivezza, slancio
lively\allegro, vivo, vivace
liver\epatico
lives\vive
livestock\bestiame
living\vivo
living-room\stanza
living room\stanza
lizard\lucertola
lo\vedi
load\caricato
loaded\caricato
loads\carica
loaf\pagnotta
loafing\oziosità
loan\credito, prestito
loath\contrario
loathe\avere in orrore
loathes\detestato
loathly\disdegnoso
loathsome\laido
lobe\lobulo
lobster\aragosta
local\nostrano, locale
locale\scena
locality\località, abitato
localization\localizzazione
localize\localizzare
locally\locale
locate\mettere, localizzare, accertare, mettere
located\posto
location\circostanza
locations\ente
locator\lancetta
loch\seno, lago
lochs\mari
loci\posti
lock\serratura, chiudere, chiavistello, fermatura
lock away\carcerare
lock out\blocco
lock up\rinchiudere, carcerare
lockable\chiudibile
locket\medaglione
locks\serrature
locks up\ostruito
locomotion\progressione
locomotive\locomotiva
locution\locuzione, frase
lode\andamento
lodestone\magnete
lodge\depositare
lodger\subinquilino
loft\deposito
loftiness\elevatezza
lofty\elevato, patetico
log\registrare
log off\notifica della partenza
log on\dichiarazione di soggiorno
logarithm\logaritmo
logarithmic\logaritmico
logarithmically\logaritmico
logged\registrato
loggerhead\allocco
logic\logica
logical\logico
logically\logico
logs\ceppi
loin\lombo
loiter\gingillare
loitered\gingillato
loiterer\poltrone
lollipop\succio
londoner\londinese
lone wolf\solitario
loneliness\solitudine
lonely\unico
loner\solitario
long\vasto, lungo
long-distance call\comunicazione interurbana
long ago\da molto tempo
long sighted\presbite
long term\a lunga scadenza
longed\bramai
longer\più lungo
longevity\longevità
longhair\quattrocentista
longing\ansioso
longingly\ansioso
longish\oblungo
look\cera, notabilità, occhiata
look after\badare, serbare
look ahead\prevedere
look at\notabilità
look for\esaminare, cercare, cerco
look for something\cerco
look out\attenzione
look through\intravvedere
looked\visto
looking through\intravvedente
lookouts\attèndere
looks at\esaminato
lookup\considerare, cerco
loony\pazzo
loop\cappio
loops\inghiottire
loose\lasco, lasciare, poco stretto, floscio
loose connection\contatto lasco
loose contact\contatto lasco
loosely\poco stretto
loosen\allentare
looser\perdente
loot\saccheggiare
looter\saccheggiatore
looting\saccheggiante
lopes\salta
lopsided\obliquo
lopsidedly\obliqua
lopsidedness\parzialità
loquacious\verboso, lingwacciuto
Lord\signore
lord\padrone
lordly\liberale
lordship\dominio
lorries\furgone
lorry\camion, furgone
lose\perdere, perdo
lose weight\togliere, dimagrare
losers\perdente
loses\perde
loss\perdita, perdita
loss of hair\caduta dei capelli
losses\perdite
lost\perduto
lost motion\a vuoto
lost property office\ufficio oggetti smarriti
lot\gruppo, quantità, compagnia, cùmulo
lotion\lozione
lots\mescolare
lottery\estrazione, lotteria
loud\secondo
loud speaker\altoparlante
loudly\liuto, forte
loudmouth\lingwacciuto
loudness\sonorità
loudspeaker\altoparlante
lounge\salotto, atrio
lounger\poltrone
louse\spidocchiare, pidocchio
lousiness\vigliaccheria
lousy\laido, bidonato
lout\tanghero
loutish\villano
lovableness\gentilezza
love\amore, amare
love letter\lettera amorosa
loved\amai
loveless\insensibile
lovelessness\insensibilità
loveliness\amenità
lovely\ameno, incantevole, placevole, delizioso
lover of\amante
loves\ama
lovingly\amante
low\inferiore, inferiore
low carbon steel\ferro battuto
low level\basso livello
low level flight\volo a bassa quota
low tide\bassa
lower\abbassamento, abbassare, sotto
lower jaw\maschella
loweringly\accigliato
lowers\abbassa
lowlands\bassopiano
lowliness\bassezza
lowly\inferiore
lowness\fondo
loyal\fido, leale
loyalness\lealtà
loyalty\lealtà
lozenger\caramella
lubbers\tanghero
lubricant\lubrificativo
lubricate\ingrassare
lubrication\lubrificazione
lubricative\lubrificativo
lubricious\untuoso
lucent\fulgente
lucid\squillante, distinto
lucidity\limpidezza
lucidly\chiara
luck\felcità, prospettiva
luckily\fortunatamente
luckiness\felcità
lucky\avventurato
lucky chance\colpo di fortuna
lucky devil\nato con la camicia
ludicrous\sciocco
lues\lue
lug\abbrivo
luggage\bagaglio
luggage van\bagagliaio
lugubrious\lugubre
lugubriousness\tristezza
lukewarm\tiepido
lukewarmly\tiepido
lull\ristagno, ninnare
lull to sleep\addormentare
lullaby\ninna nanna
lulling to sleep\narcotico
lumbago\lombaggine
luminescence\luminescenza
luminous\fulgente, squillante
luminousness\nitore
lump\cumulo, ammaccatura, gnocco
lump sugar\zucchero in zollette
lumpy\globuloso
lunacy\pazzia
lunar eclipse\eclissi lunare
lunatic\pazza
lunatics\pazza
lunch\desinare
luncheons\desinare
lunches\desinare
lungs\polmone
lure\adescamento
lurid\acuto
luring\allettante
lurk\guatare
lurking\guatante
lushly\succoso
lust\uzzolo, voluttà
luster\lumiera
lusters\lumiera
lustful\lascivo, lussurioso
lustfulness\lascivia
lustily\lascivo
lustre\nitore
lustrously\raggioso
lusty\valido, benportante
lute\mastice
luxuriancy\opulenza
luxurious\lussuoso
luxury\lusso
luxury hotel\albergo di lusso
lye\liscivia
lying\giacente
lymph\linfa
lymphatic\linfatico
lynch\linciare
lynchlaw\linciaggio
lynx\lince
lyre\lira
lyric\lirico
lyric poetry\lirica
lyrics\lirica
maced\condito
machiavellians\senza scrupoli
machinable\automatico
machinate\intrigare
machination\intrigo
machinator\intrigante
machine\ordigno
machinery\macchinario
machinist\macchinista
mackerel\sgombro
maculate\imbrattare
mad\arrabbiato, cattivo, pazzo, pazzo
Madam\signora
madding\farnetico
mademoiselle\signorina
madge\gazza
madhouse\manicomio
madly\pazzo
madmen\pazzo
madness\follia, pazzia
maelstrom\vortice
magazine\periodico
magenta\violetto
magic\magico, magia
magicians\mago
magistrate\magistrato
magistrates\giudice conciliatore
magnanimous\generoso
magnanimousness\generosità
magnate\magnate
magnesium\magnesio
magnet\magnete
magnetic\magnetico
magnetical\magnetico
magnetically\magnetico
magnetism\magnetismo
magnificence\magnificenza
magnificent\fastoso, grandioso
magnificently\fastoso
magnifies\ingrandito
magnitude\grossezza
magnolia\magnolia
magpie\gazza
maid\domestica, fantesca
maiden\vergine
maidenliness\verginità
maidly\vergine
maidservant\fantesca
mail\spedire, posta, a posta corrente
mail box\cassetta postale
mailbox\cassetta postale
mailorder\lavorazione
main\essenziale
mainland\continente, terraferma
mainline\linea principale
mainly\in prima linea
maintain\fiancheggiare, mantenere, ottengo
maintainable\durevole
maintainer\sostenitore
maintenance\economato, manutenzione
maize\granturco
majestic\maestoso
majesty\maestà
major\maggiore, in prima linea
majority\maggioranza
make\bàttersela, fabbricare, confezionare, marchio
make a mistake\equivocare
make an effort\affaticare
make fun of\canzonare
make up your mind\decidere, decìdersi
makes\fabbricare, bàttersela
makeshift\espediente
makeup\liscio, liscio
makeups\truccare
making\facente, fattura
maladroit\indiscreto
malady\malattia
malapropos\non appropriato
malarkey\sciocchezza
malcontent\malcontento
male\maschile, spina
male connector\spina
malediction\crimine, esecrazione
malefactor\malfattore
maleficent\maligno
males\uomini
malevolence\malevolenza
malevolent\malintenzionato
malfeasance\trascorrere
malicious\malintenzionato
maliciously\malizioso
malign\nefasto
malignancy\malevolenza
malignant\maligno
malinger\simulare
malingerer\simulatore
malleability\duttilità
malleable\espansivo
malleableness\duttilità, duttilità
mallow\malva
malodorousness\lezzo
maltreat\maltrattare
maltreatment\maltrattamento
malts\malto
mamma\mamma
mammal\mammifero
man\persona, uomo, omo
manacle\legame
manage\condurre, amministrare, dirigere
manageability\arrendevolezza
management\maneggio, direzione, economato
manager\conduttore, guida, imprenditore, direttore
manciple\fattore
mandamus\comando
mandarin\mandarino
mandate\mandato
mandatory\obbligatorio
mandolin\mandolino
mane\criniera
manege\pista
maneuver\manovra
maneuverable\mobile
manganese\manganese
mange\rogna
manger\greppia
mangle\dilaniare
mangles\dilaniato
mangy\rognoso
mania\mania
maniac\pazzo
maniacal\pazzo
manifest\notificare
manifestation\manifestazione
manifestly\evidente
manifests\affermato
manifold\ciclostilare, copia
mankind\umanità
manly\maschile
manner\metodo, esibirsi, fare
manoeuvre\manovra
manometer\manometro
mansard\soffitta
manservant\famulo
mansion\villa
manslaughter\omicidio colposo
mantas\copro
mantle\velare
mantrap\tranello
manual\manuale, manuale
manufacture\confezionare, prodotto, fabbricare
manufacturer\fabbricatore
manufacturers\artéfice
manufacturing fault\difetto di fabbricazione
manufacutre\fabbricare
manumit\mettere in libertà
many\molti
many a\parecchio
many an\parecchio
map\elaborare, carta geografica
map of the city\piantina
maraud\saccheggiare
marauder\saccheggiatore
marble\pallina, marmo
march\marciare
March\marzo
march\camminare
margin\lembo
marjoram\maggiorana
mark\censura, simbolo, marcare, marchio, designare
market\mercato, alìnea, commercio
marketplace\mercato
marking\marcatura
marksman\tiratore
marriage\sposalizio, sposalizio, matrimonio
married\sposato, matrimoniale
marrow\midollo
marrowy\midolloso
martens\martora
martyr\martire
marvellous\superbo
marvels\si stupisce
masculine\maschile
masher\donnaiuolo
mask\maschera
mass\massa
massage\massaggio
massive\compatto
mast\ingrassamento
master\dominare
masterpiece\capo lavoro
masters\campione
masturbation\onanismo
mat\stuoia
match\fiammifero
mate\accoppiare
material\stoffa, materiale, materia, stoffa
material demage\danno alle cose
maternal\materno
mathematics\matematica
matrimony\stato matrimoniale
matron\matrona
matt\appannato
matter\stoffa, materia, materiale
mattress\materasso
mature\maturo
matured\maturato
matureness\maturità
maturity\maturità
maximum speed\velocità massima
May\maggio
may\potere
maybe\chissà, forse
mayor\sindaco
maze\labirinto
me\me, biasimo, io, a me
meal\pietanza
mealies\granturco
mean\esoso, supporre, infame, volere dire
meaning\levatura
means\espediente
meantime\nel frattemoi
meanwhile\nel frattemoi
measles\morbillo
measurable\misurabile
measure\proporzione, tatto, misurare, misura
measure out\dosare
meat\carne
meatball\crocchetta
meatless\scarno
mechanic\meccanico
mechanical\meccanico
mechanically\a macchina
mechanics\meccanica
mechanism\ordigno
medal\medaglia
mediation\mediazione
medicament\medicamento
medicine\medicina, medicina
mediocre\mediocre
medulla\midollo
meeds\salari
meet\incontrare
meet again\rivedersi
meeting\incontro, incontro
melancholiness\malinconia
melody\melodia
melon\melone
melt\sciogliere, fusione
melted\sciolto
melting\fusione
member\membro
membrane\membrana
memorize\immagazzinare, memorizzare
memory\ricordo, ricordo, deposito
men\uomini
mendaciousness\bugiarderia
mending\rappezzare
menstruate\mestruare
mental\spirituale
mentality\mentalità
mention\menzionare
menu\menu, listino
menue\menu
mercenaries\mercenario
mercenary\mercenario
merchant\commerciante
mercifully\misericordioso
mercury\argento vivo
mercy\impietosire
merely\solamente
meridian\meridiano
merry\festevole, lieto, giocondo
mess\viluppo
message\messaggio, comunicazione, nuova
messenger\fattorino
met\incontrato
metal\metallo
metaling\acciottolatura
metallic\metallico
meteorologist\meteorologo
meter\metro
method\metodo
methodic\come prestabilito
metre\metro
mew\miagolare
mi\miglio
mice\topi
microbe\microbo
microscope\microscopio
middle\espediente, metà
middle age\medio evo
midnight\mezzanotte
midwife\levatrice
migraine\emicrania
Milan\Milano
mile\miglio
milk\latte
milky\latteo
mill\mulino
milled\macinato
millimetres\millimetro
million\milione
mind\mente, giudizio, accezione, osservare
mine\miei, me, miniera
mineral water\acqua minerale
minister\parroco, ministro
ministry\ministero
mink\visone
minor\insignificante
minority\minoranza, minorità
mint\menta
minus\meno
minute\minuto
minutes\rapporto
miracles\miracolo
mirror\specchio
mirrorfinish\lucentezza perfetta
miscarry\arrenare
mischances\incidenti
mischief\malanno
mischievous\birichino
misdeed\misfatto
miserable\afflitto, malinconia, disgraziato, lamentoso
misery\penuria, miserabile
misfortune\guaio
mishap\sfortuna
mishmashes\miscuglio
misprint\errore di stampa
Miss\signorina
miss\perdere
missile\razzo
missing\mancante
mission\missione
mist\nebbia, foschia
mistake\errore, vizio, granchiolino
mistakenly\erroneamente
mistrust\diffidenza
misty\nebbioso
misunderstanding\equivoco
mitigated\mitigato
mix\mischiare, mischio
mix up\scambiare
mixed\mischiato
mixture\mistura
mm\mese
moan\borbottare, gèmito
moans\geme
mobile\mobile, mobile
mode\modo
model\indossatrice, modello
modeling\formante
moderat\moderare
modern\moderno
modernize\modernizzare
modest\pudico, semplice
modeste\semplice
modification\modificazione, modificazione
modify\modificare, alterare, variare
modulate\regolare
modulation\regolazione
module\modulo
mointain chain\montagne
moisten\umettare
molar\dente molare
moldable\formabile
molecule\molecola
molestation\noia
molt\mutarsi
moment\momento
momentary\momentaneamente
monarchy\monarchia
monastery\convento
monday\lunedì
Monday\lunedí
mondays\il lunedì
money\denaro, soldi, quattrini
monies\denari
monitory\monitorio
monk\frate
monkey\scimmia
monkeyshine\scemenze
monochromatical\unicolore
monogamy\monogamia
monopoly\esclusiva, esclusiva
monotonous\monotono, monotono
monotony\monotonia
monpoly\esclusiva
monster\mostro, mostro
monstrance\ostensorio
monstrosities\mostro
monstrous\mostro
monstrousness\enormità
month\mese
monthly\mensile, mensilmente
monument\monumento
mood\bisbètico, capriccio, atmosfera, ànimo
moody\bisbètico
moon\luna
moonlight\lume di luna
moony\lunato
moose\alce
mopping up\epurazione
moral\morale, etico
morale\moralità
morality\moralità
morally\morale
morals\moralità
morass\pantano
mordant\mordente
more\più largo, di più
more often\più spesso
moreover\inoltre, d'altronde, ulteriormente
moribund\morente
moribundity\mortalità
morn\oriente
morning\mattina, oriente
morning pint\brindisi mattutino
moronic\deficenza
morose\indispettito
moroseness\uggia
morsel\boccone
mortal\letale, mortale
mortal fear\angoscia mortale
mortal sin\peccato mortale
mortality\mortalità
mortar\mortaio, calcina
mortgage\ipoteca
mortify\umiliare
mortifying\umiliante
mortuaries\obitorio
mosaic\mosaico
mosque\moschea
mosquito\anòfele, zanzara
moss\muschio
mossiness\dolcezza
most\altissimo, maggior parte, grossissimo
most beautiful\bellissima
mostly\in prima linea
mother\madre
motherly\materno
moths\tarma
motion\movimento
motionless\immobile
motive\motivo
motor\motore
motorbike\motocicletta
motorcycle\motocicletta
motorcyclist\motociclista
motorway\autostrada
motto\divisa
mould\forma
mount\montare
mountain\montagna
mountaineer\alpinista
mountaineering\alpinismo
mountains\montagne
mounting\montaggio
mourning\bruno
mouse\topo, sorcio
moustache\baffi
mouth\boca, abboccatura, muso, bocca, imboccatura
mouthwash\collutorio
move\muovere, imbarazzato, cambiare casa, trasloco
move in\esigere
movement\movimento
moving\pigliante
mow\falciatura
mple\tempia
Mr\signore
Mrs\signora
muck\sudiciume
mud\fango
muddles\guastato
muddy\torbido
mug\orcia, calice
muggings\furti
mulberry-tree\gelso
mulct\contravvenzione
mule\mulo
multi-lingual\poliglotta
multiple\molteplice
multiplication\moltiplicare
multiply\moltiplicare
multitudinously\numeroso
Mum\mamma
Mummy\mamma
mumps\orecchioni
municipal\urbano
murder\assassinare, omicidio colposo, omicidio
murderer\uccisore
murkiness\oscurità
murmur\farfugliare
muscle\muscolo
museum\museo
mushroom\fungo
music\musica
musical\musicale
musician\musicista
muslim\musulmano
mussel\gongola, conchiglia
mussels\conchiglie
must\debbono
mustard\senape
mute\muto
mutineer\ammutinato
muzzle\muso, ceffo
my\miei, mio
myrthle\mirto
mysterious\misterioso
mystery\indovinello, segreto
mystic\mistico
nail\chiodo, inchiodare
nailenamel\smalto per le unghie
naive\semplice
naked\spennato
name\reputazione, nomare, cognome
nameable\nominabile
nameday\onomastico
namely\vale a dire
nanny\bambinaia
nap\pisolino
nape of the neck\collottola
napkin\salvietta
nappy\fascia
narcissus\narciso
narcotizing\narcotizzante
narrators\narratore
narrow\venni, magro
nasal\nasale
nasty\spaventoso, orrendo
nation\nazione
national\nazionale, statale
nationalism\nazionalismo
nationalistic\nazionalistico
nationality\naturalità, nazionalità
nationalization\nazionalizzazione
native\natio, unigenito
native country\patria
native language\lingua materna
nativity\natività
natural\ovvio, natura secondo
naturally\ovvio, naturalmente
nature\indole
nature reserve\parco nazionale
naught\nullità
nausea\nausea
nauseously\nauseante
naval\marina
navel\ombelico
navigable\navigabile
navigator\nocchiero, navigatore
navy\marina
near by\accanto
nearly\quasi
neat\gioielli
necessary\necessario, necessario, occorrente
necessity\necessità
neck\collo, collottola
neckerchief\fazzoletto da collo
necklace\catena, collana
necromancy\esorcismo
nectar\nettare
need\aver bisogno, usare, richiesta, bisogno, richiesta
needle\ago, spilla
needy\nullatenente
nefariousness\nefandezza
negation\negazione
negative\lastra, contrario
neglect\negligere
negotiate\discùtere
negotiation\negoziato
negotiator\negoziatore
negro\negro
neighbour\vicinale
neighbourhood\vicinato
neither\nè
neophyte\principiante
neozoic\evo moderno
nephew\nipote
nerve\nervo
nerved\nerboruto
nervous\nervoso
nest\nido
nests\nidi
net\ordito
net price\prezzo netto
net weight\peso netto
netting\intreccio
network\ordito
network of roads\rete stradale
neurology\neurologia
neurosis\neorosi
neurotics\nevrotico
neutral\neutrale
neutralization\neutralizzazione
neutralize\neutralizzare
never\giammai, mai
nevertheless\però, nonostante
new\novizio
new-born baby\neonato
newborn\rinato
news\notizie, novità
newspaper\gazzetta
next\prossimo, venturo
next to\accanto
next to me\accanto a me
nibble\rosicchiare
nice\simpatico, buono, gentile, placevole, caro
nick\intaccatura
nickel\nichelio
nickname\nomignolo
nicotine\nicotina
niece\nipote
night\notturno
night watchman\guardiano notturno
nightclub\cabaret
nightdress\camicia da notte
nightingale\usignuolo
nightowl\gufo
nil\nullità
nimble\agile
nine\nove
nine hundred\novecento
ninefold\nonuplo
nineteen\diciannove
ninety\novantina
nip\pizzicare
nit\lendine
no\no, non di uno, non, nessuno, non uno
no at all\di nessuna specie
no more than\altrettanto poco
no one\non di uno, nessuno
no parking\divieto di parcheggio
noble\nobile
nobleman\nobildonna
nocturnal\notturno
nocturnally\notturno
nod\annuire
nodule\nodulo
nogood\vitellone
noise\fracasso, rumore
noiseless\silenzioso
noisy\secondo
nomad\nomade
nomination\nomina
non-swimmer\non nuotatore
nonagon\nonagono
nondisclosure\segretezza
none\non uno
nonfading\resistente alla luce
nonplus\imbarazzo
nonsense\nonsenso
nonstop\incessante
nonu\sconveniente
noodles\pasta, ingozzare
noon\mezzodì
nor\nè
nordic\nordico, settentrionale
normal\normale
normative\normativo
north\nord
North\nord
north\bòrea
northern\nordico, settentrionale
northwest\nordovest
Norway\Norvegia
Norwegian\Norvegese
nose\fiuto
noses\nasale
nosologist\patologo
nostril\narice
nostrils\nari
not\non, no
not a\non uno
not any\nessuno, non di uno
not as yet\non ancora
not even\neppure
notarization\legalizzazione
notary\notaio
notch\intaccatura
note\notazione, appunto, notabene, ordito
note down\vergare, appuntare
notebook\taccuino
notepaper\carta da lèttere
nothing\nulla
notice\cartellone, affisso, appunto, percepire, scudo
notice of departure\notifica della partenza
notification\leva
notify\informare, informare
notion\nozione
notoriety\notorietà
nourishment\cibo, alimente, nutrimento
novel\romanzo
novelty\novità
November\novembre
novice\principiante
now\attualmente, ebbene
nowadays\oggigiorno
nowhere\in nessun luogo
nub\bottone
nuclear disintegration\disintegrazione nucleare
nuclear energy\energia nucleare
nuclear fission\fissioneînucleare
nuclear physics\fisicaînucleare
nuclear reactor\reattore nucleare
nucleonics\fisicaînucleare
nucleus\nucleare, nucleo cellulare
nude\spennato
nudely\spolto
nudeness\nudità
nudity\nudità
nugatory\senza valore
numb\assordare
number\novero, numerare, numero, numero
number of pieces\numero di pezzi
numbered\numerato
numbering\numerazione
numbers\pagare
numbing\assordante
numbly\rigido
numbs\assordato
numerable\numerabile
numeral\cifra
numerate\numerare
numeration\numerazione, enumerazione
numeric\numerico
numerical\numerico
numerous\numeroso
numismatic\numismatico
nun\monaca
nuptial\nuziale
nuptially\nuziale
nuptials\nozze
nurse\allattamento, coltivare, badare
nursed\succhiato
nursemaid\bambinaia
nurseries\stanza dei bambini
nursery\stanza dei bambini
nursery school\asilo infantile
nursling\poppante
nutmeg\noce moscata
nutria\nutria
nutriment\alimento
nutrimental\nutritivo
nutrition\nutrimento
nutritious\nutritivo
nuttiness\gustosità
nutty\piccante
nuzzle\vezzeggiare
nylon\nailon
oafish\ingenuo, stupido
oafishness\ocaggine
oak\quercia
oar\remo
oars\remo, canottaggio
oarsman\vogatore
oasis\oasi
oat\biada
oath\giuramento, bestemmia, giuramento
oaths\giuramenti
oats\avena, biada
obedience\obbedienza
obedient\obbediente, obbediente
obese\corpulento
obesity\obesità
obey\obbedire
obfuscate\abbuiare
obfuscation\oscuramento
obfuscatory\accigliato
obituary\necrologio
object\traguardo, oggetto
objection\eccezione
objectionable\insufficiente
objective\realistico, traguardo, oggettivo, reale
objectivity\oggettività, realtà
objector\avversario
objectors\avversario
objects\oggetti
objurgate\criticare
objurgates\biasima
objurgation\biàsimo
oblation\sacrificio
obligate\obbligare
obligates\obbligato
obligation\obbligo
obligatory\obbligatorio, impegnativo
oblige\obbligare, obbligare
obliges\obbligato
obliging\impegnativo, zelante
oblique\obliquo
obliqueness\obliquità
obliquity\obliqua
obliterate\estingere
obliterates\estingue
oblivion\oblio
oblivious\smemorato
obliviousness\dimenticàggine
oblong\rettangolare, rettangolo
obloquy\calunnia
obscene\osceno
obscenity\lascivia
obscuration\oscuramento
obscure\ermetico
obscurely\ermetico
obscureness\oscurità
obscures\oscurato
obscurities\poca chiarezza
obsequious\servile
observable\percettibile, notevole
observance\osservanza
observation\ottemperanza, osservazione
observe\percepire, osservare, vigilare, compiere, eseguire
observes\osservato
observing\attento
obsess\inseguire, infestare
obsessed\energumeno
obsesses\tormenta
obsession\ubbia, ossessione
obsolete\arcàico
obstacle\ostacolo
obstetrics\ostetricia
obstinacy\cocciutaggine
obstinate\ostinato
obstinateness\ostinatezza
obstruct\sbarrare
obstructing\impedente
obstruction\disturbo
obstructive\ritroso, inpeditivo
obstructs\ostruito
obtain\ricevere, procurare, conseguire, ottengo
obtainable\ottenibile
obtuse angled\ottusangolo
obtuseness\ottusita
obviate\ovviare, impedire
obviating\preventivo
obviation\prevenzione
obvious\ovvio, flagrante, distinto
obviously\evidentemente
occasion\occorrenza
occasional\occasionale
occasionally\occasionale
occlude\ostruire
occludes\costipato
occlusion\occlusione
occult\latente
occupancy\occupczione
occupant\abitatore
occupation\professione, occupazione, lavoro, arte
occupational\per lavoro
occupied\occupato
occupies\occupato
occupy\incassare, occupare
occur\accadere, succedere, esibirsi, entrare
occurance\fenomeno
occurances\capitare
occured\scoperto
occurence\emersione
occuring\nascondere
occurre\esistere, esibirsi
occurred\scoperto
occurrences\avvenimenti
ocean\oceano
oceanic\oceanico
oceans\oceani
ocher\ocra
octagon\ottagono
October\ottobre
octopus\calamaro, polipo
ocular\immediato
odd\dìspari, memorabile, caratteristico, strano
odds\disuguaglianza
odious\odioso
odor\profumo
odoriferous\fragrante
odoriferously\profumante
odorless\inodoro
odorlessness\mancanza di odore
odorous\odorifero
odors\profumo
odour\profumo
odourless\inodoro
odyssey\peregrinazione
oesophagus\esòfago
of\dalla, sopra, da, della
of course\natura secondo
of its\di lui
of which\di questo
off\da, distante, dalla, perso, strada
offed\andato via
offence\trascorrere, affronto, infrazione
offend\oltraggiare
offense\affronto
offensive\offensiva, allusivo
offensively\offensivo
offer\licitazione, licitare, offrire, offerto
offers\indicare, offerto
offhanded\spontaneo
offhandedly\spontaneo
offical\ufficiale
office\ufficio, impiego
officeboy\fattorino
officer\funzionario
officers\ufficiali
official\ufficiale, ufficiale, funzionario
official in charge\referendario
officiant\officiante
offish\riservato
offset\compromesso
offshoot\rampollo
offspring\discendente
often\spesso
ogle\vagheggiamento
ogre\mostro
oil\oleato
oiled\oleato
ointment\unguento
OK\bene
okay\in ordine, buono, bene
okays\concede
old age pensioner\pensionato
old as the hills\vecchissimo
old man\vecchio, vecchia
old people's home\ospizio per i vecchi
olden\invecchiare
oleanders\oleandro
oleomargarine\margarina
oligarchy\oligarchia
olive\oliva
olive-tree\olivo
Olympic\olimpionico
omelette\frittata
ominous\infausto
ominously\infausto
omission\ellisse, omissione
omit\omettere, omettere, trascurare
omitted\mancante
omnibus\omnibus
omnipresence\onnipresenza
omnipresent\onnipresente
omniscience\onniscienza
omniscient\onniscienta
omstamce\esempio
on\sopra, a, negli, in
on a trial basis\a titolo di prova
on hand\disponibile
on her part\da parte sua
on it\appresso
on Monday\il lunedì
on one hand\da un lato
on purpose\apposta
on the move\per strada
on the other side\oltretomba
on the other side of\attraverso
on the way\per strada
on time\tempestivo, puntuale
on top\sopra
on top of it\appresso
on your part\da parte tua
once\subito, subito, una volta
once more\nuovamente
oncoming traffic\traffico in senso opposto
one\uno, una
one after another\di seguito
one after the other\di seguito
one hundred\cento
one thousand\mille
one time\eccezzionale, una volta
one way\senso unico
one way street\senso unico
one year old\di un anno
oneness\elemento
onerous\noioso
oneself\personalmente
onion\cipolla
onlooker\spettatore
only\singolo, solo, soltanto, unico
only just\appena
onomatopoeic\onomatopeico
onset\assalto
onslaught\assalto
onto\a
ontological\ontologico
ontologically\ontologico
onus\obbligo
onward\più largo
ooziness\effluvio
opacity\opaco
opalescence\iridere
opalescent\iridescente
opaque\torbido, ermetico, opaco
opaqueness\opacità
open\aprirei, esordire, lievitazione, disserrare
open fire\fuoco nel caminetto
open handed\liberale
opener\apriscatola
openers\apriscatola
openhanded\liberale
opening\accensione
openly\scoperto
openness\franchezza
opens\apre
operate\funzionare, esercitare, servire
operating\servizio
operation\fase di lavorazione, operazione, servizio
operational\aziendale
operationally\aziendale
operatively\operativo
operetta\operetta
ophthalmitis\oftalmia
ophthalmology\oculistica
ophthalmoscope\oftalmoscopio
opine\supporre
opinion\veduta, parere, presa di posizione
oposite\viceversa
opponent\avversario
opportune\opportuno
opportunism\opportunismo
opportunistic\opportunistico
opportunity\eventualità, occorrenza
oppose\contrapporre
opposed\opposto
opposed to\opposto
opposing\opposto
opposite\di fronte, opposto, contrario
opposite side\parte opposta
opposition\opposizione, antagonismo
oppositional\contrario
oppress\premere, deprìmere
oppressing\oppressivo
oppression\oppressione
oppressive\premente
oppressiveness\pressione
oppressor\vessatore
oppressors\vessatore
opprobrium\disonore
opression\oppressione
opt\optare
optative\ottativo
opted\elessi
optic\ottico
optic nerve\nervo ottico
optical\ottico
optician\occhialaio
opticians\occhialaio
opticnerve\nervo ottico
optics\ottica
optimism\ottimismo
optimist\ottimista
optimistic\ottimisvico
option\alternative, opzione
optional subject\materia facoltativa
options\complementi
opts\sceglie
opulence\pienezza
opulent\opimo
or\ovvero
or else\se no, in caso contrario
oracle\oracolo
oral\orale
orange\arancia, arancione
orange-tree\arancio
oration\orazione
orator\oratore
oratorical\oratorio
orb\palla
orbicular\globoso
orbit\orbita
orbital\sferico
orbs\appallottolare
orchestra\orchestra
orchid\orchidea
order\comandare, ordine, lavorazione, comando, dominare
order some more\ordinare ancora
order to pay\ordine di pagamento
ordered\comandai
orderer\committente
ordering\ordinatore
orderliness\ordinatezza
ordinal number\numero ordinale
ordinance\ordinanza, ordinamento
ordinary\normale, ordinario
ordnance\artiglierìa
ordure\mota
ore\minerale
organ\organo
organisation\organizzazione
organise\organizzare, allestire
organiser\negli
organism\organismo
organization\organizzazione
organize\organizzare, ordinare
organizer\organizzatore, organizzatore
organs\organi
orgy\orgia
Orient\oriente
orientally\orientale
orientate\orientare
orientation\orientamento
orifice\abboccatura, apertura
origin\origine, origine, principio
original\originale, originale, originario
original sin\peccato originale
originally\originale, originario
originate\causo
originated\sorto
origination\ragione
originator\punto di partenza, fabbricatore, mittente
ornament\ornamento
ornamentation\decorazione
ornate\sovraccaricare
ornery\ordinario
orthodontists\odontotecnico
orthographical\verticale
oscillate\ondeggiamento, vibrare, brandire
oscillating\vibratile
oscillation\oscillazione
oscillatory\vibratile, periodico
ostentation\ostentazione
ostentatious\ostentativo
ostentatiousness\fanfaronata
ostracism\esilio
ostracize\esiliare
ostracized\esule
ostrich\struzzo
other\diversi, altro
others\diversi
otherwise\in caso contrario, se no
otiose\ozioso
oubliette\carcere
ouch\uh
ought\dovevo
ought to\devi
ounce\oncia
our\nostra, nostro
ours\nostra, nostro
ourselves\a noi
oust\espropriare
ouster\espropriazione
out\da, al di fuori di
out of\da, al di fuori di
out of date\sorpassa
out of it\indi
outbreak\esplosione
outburst\erompere
outclass\superare, superare
outcome\risultato
outdated\sorpassa, arcàico
outdistance\sorpassare
outdistanced\sorpassai
outdoor\al di fuori
outdoors\al di fuori
outer\esterno
outermost\estremo
outfit\fornitura, equipaggio
outflow\emissario
outgoing\uscente
outgrowth\protuberanza
outing\escursione
outlandishness\strano
outlaw\bandito, proscritto
outlay\dispendio
outlet\presa di corrente
outlier\caso speciale
outline\contorno, disegno
outlines\abbozzi
outlive\sopravvivere
outlived\sopravvissi
outlives\sopravvive
outlook\vedute
outlying\al di fuori di
outmoded\arcàico
outmost\estremo
outnumber\superare, superare
outpatient\ambulatorio
outpost\avamposto
outpour\sfogo
outpouring\emanare
output\esito, prodotto, lavoro, emissione, emettere
outrage\atrocità
outrageous\indignante, scellerato
outrageously\scellerato, inaudito
outrageousness\sfrenatezza
outrange\superare, superare
outright\completo
outrun\oltrepassare, oltrepassare
outs\opposizione
outset\principio
outshine\eclissare
outside\al di fuori, al di fuori di
outspokenness\franchezza
outstanding\arretrato
outward\estrinseco
outwardly\estrinseco
outwards\fuori casa
outworn\logoro
oval\ovale
ovate\oviforme
oven\stufa
over\di quà, esuberante, sopra, da, esuberante, finito
over here\qua, di quà
over it\al di sopra
over there\quite, costì, al di là
overabundance\pienezza
overabundant\opimo
overall\camice
overawe\intimidire
overawing\intimidente
overbearance\arroganza
overbearing\arrogante
overbid\offrire di più
overcall\offrire di più
overcast\coperto, annuvolato
overclouded\annuvolato
overclouds\annuvolato
overcoat\cappotto
overcomes\superato
overcoming\superante
overconfidence\presunzione
overconfident\misurare
overcrowded\ingombrato
overdid\esagerai
overdo\esagerare
overdoes\esagera
overdoing\esagerativo
overdone\eccessivo
overdose\dosi eccessiva
overdue\tardato, moroso
overeater\mangione
overfatigue\sovraffaticamento, sovraffaticamento
overfilled\ingombrato
overflow\traboccare
overfly\sorvolare
overglaze\velatura
overhang\prominenza
overhaul\sorpassare
overhauled\sorpassai
overhauls\sorpassa
overhead\sù
overhear\origliare
overlaborate\largamente
overlapped\violato
overload\sovraccaricare
overloading\sovraccarico
overman\caporale
overmaster\espugnare
overmastering\vincente
overnight stay\pernottamento, pernottamento
overpass\trasferimento
overpays\esagerare
overplayed\esagerai
overplaying\esagerativo
overplays\esagera
overridden\intestato, intestato
override\levatura
oversalt\salare troppo
oversalts\troppo salato
overseas\oltremarino, oltremarino
oversee\vigilare
overseer\caporale
oversees\vigilato
overshadow\ombreggiare, ombreggiare
overshoot\oltrepassare, oltrepassare
oversight\granchiolino
overstate\esagerare
overstated\esagerai
overstatement\esagerazione
overstates\esagera
overstating\esagerativo
overstep\oltrepassare, oltrepassare
overstretches\esaltato, esaltato
overstuffs\ingombrato
overtake\sorpassare, a prendere
overtaken\sorpassai
overtakes\sorpassa
overtired\sovraffaticato, sovraffaticato
overtook\sorpassai
overtop\cèdere, cèdere
overvalues\sopravvalutato
overview\vista generale
overweening\arrogante
overweight\sovrappeso
overwrought\stanco
ovoid\oviforme
ovule\uovo
owe\debitare
owl\civetta
owlet\civetta
own\proprio, possedere
own weight\peso specifico
owner\proprietario, titolare
ox\bue
oxes\sgobbare
oxidation\ossidazione
oxygen\ossigeno
oyster\ostrica
ozeanic\oceanico
ozone\ozono
ozonize\ozonizzare
ozonizer\ozonizzatore
pace\gradino, passo
pachyderm\pachiderma
pacific\pacifico
pacification\soddisfazione
pacifist\pacifista
pack\impaccare
pack animal\giumento
pack up\appacchettare
package\pacchetto, appacchettare, imballaggio, impaccatura
packaging\imballaggio
packed\impaccato
packer\imballatore
packet\impaccatura, pacchetto
packetize\giuntare
packets\pacchetti
packing\imballaggio
pact\patto, pacchetto
pad\blocco
padded\imbottito
paddies\accessi di rabbia
paddle\pagaia
paediatrician\pediatra
page\lato, valletto, pagina
paid\pagato
pail\secchio
pain\pena, penoso
pained\tormentato
painful\doloroso
painless\indolore
painstakingly\accurato
paint\dipingere, tinta
painter\pittore
painting\pittura
pair\paio
palace\palazzo
palaface\viso pallido
palatal\palato
palaver\conversazione
pale\pallido, scolorito
palliating\eufemico
palliatives\leniente
pally\in amocizia
palm-tree\palma
palmy\glorioso
pan\padella, pentola
pancake\frittata
pane\fetta
panel\tavola
panic\panico
pant\anelare
pantaloons\pantaloni
panther\pantera
pants\mutande
paper\documento, carta, gazzetta
paper money\carta moneta
papermoney\carta moneta
papers\documenti
paperweight\fermacarte
pappus\lanuggine
par\uquaglianza
parachute\paracadute
parade\parata
paradise\paradiso
paradises\paradisi
paradox\paradossale
paradoxical\paradossale
paraffin-oil\petrolio
paragons\esemplare
paragraph\alìnea, settore, paragrafo
parallel\parallelo
paralysed\accidenttato
paralysis\paralisi
parameter\parametro
parasite\parassita
parasol\ombrellino
parcel\pacchetto
parcels\pacchetto
parcener\coerede
pardon\venia
parents\genitori
park\parco, parcheggiare
parking\parcheggiare
parking lot\parcheggio
parliament\parlamento
parlour\salotto
paroxysm\attacco
parrot\pappagallo
parsley\prezzemolo
part\sezione
partaken\partecipato
participant\partecipante
participate in\far partecipare
participation\partecipazione, partecipazione, collaborazione
particle\particola
particular\extra, vale a dire
particularity\particolarità
particularly\extra
parting\separazione
partisanship\nepotismo
partition\divisione
partly\parziale
partner\partner, socio
partridge\pernice
party\partito
pass\passare, trascorrere, lasciapassare
pass on\inoltrare
passable\valicabile
passage\andamento, varco
passenger\passeggero
passenger ship\nave passeggeri
passengers\passeggeri
passion\ardore, passione
passive\passivo, inerte
passport\valico, passaporto
past\trascorso, ancor prima
paste\massa, pasta
pastime\hobby, passatempo
pastor\parroco
pastry\pasta, biscotti
pasty\appiccicoso
patcher\rappezzatore
patchy\macchiato
pateau\altipiano
patent\brevetto
paternal\paterno
paternity\paternità
paternoster\elevatore
path\viale, sentiero
pathfinders\giovane esploratore
pathologically\patologico
patience\indulgenza
patient\indulgente
patriotism\patriottismo
patrol\pattuglia
pattern\esemplare, campione di merce
paunch\rumine, pancia
paw\zampa, gamba
pawn\contadino, deposito
pay\stipendio, liquidare, pagare
pay by instalments\pagar tutto
payable\scaduto
payment\pagamento, rimborso assegno
pea\pisello
peace\pesca, pace, pace
peaceably\pacifico
peaceful\equilibrato, pacifico
peacock\pavone
peak\cùlmine
peak period\massima attività
pean\lauda
peanut\arachide
pear\pera
pear-tree\pero
pearl\perla
peat\torba
pebble\ciòttolo
peculiar\estroso, caratteristico
pedal\pedale
pedantic\meticoloso
pedestrian\pedone
peel\sbucciare
peg\aringa
pen\penna stilografica, penna
penalize\punire
penalty\castigo
pencil\lapis
pendulous\pendente
pendulum\pendolo
penetrate\penetrare
peninsula\penisola
penny\centesimo
pension\assegnamento, reddito
pentecost\pentecoste
people\volgo, persone, gente
pep\slancio
pepper\pepe
per\al, tramite
per cent\percento
perceive\percepire
perceptible\percettibile
percolator\caffettiera
peregrination\peregrinazione
perfect\legittimo, perfetto
perform\spingere, effettuare, apparire, cómpiere
perfume\profumo
perfumery\profumeria
perhaps\forse, chissà
perigee\perigeo
peril\pericolo
perils\rischi
period\periodo
periodical\periodico
periphery\periferia, volume
perm\ondulazione permanente
permanency\posizione permanente
permanent\permanente, fisso, durabile
permission\nullaosta, licenza
permit\permettere, permettere, nullaosta, modulo
perpendicular\verticale
perpetual\contìnuo
perpetuates\eternato
perplexed\sbalordito, perplesso
perseverance\perseveranza
persevere\sopportare
person\persona
personal\personalmente
personality\personalità
personnel\personale
perspiration\sudore
persuade\persuadere, persuadere
persuades\convinto, convinto
pertaining\concernente
pertinent\equo
pessimistic\pessimistico
petrol\benzina
petrol can\latta di benzina
petrol station\distributore di benzina
petroleum\petrolio
pharmaceutics\farmaceutica
pharmacist\farmacista
pharmacy\farmacìa
pharynx\faringe
phase\fase
phaseouts\dipanare
phenomenon\fenomeno
phessant\fagiano
philogic\linguistico
philologist\filòlogo
philosophy\filosofìa
phoenix\fenice
phone\telefono
phone box\cabina telefònica
photo\foto, dipinto, accettazione
photocell\fotocellula
photograph\fagocitare, fotografare
phrase\formulare, frase, volta
physical\fìsico
physics\fisica
pianist\pianista
piano\pianoforte
pick\cògliere
pick up\levatura, ritirare
pickpocket\borsaiuolo
picture\dipinto, accettazione
picturesque\pittoresco
pie\pasta
piece\porzione, pezzo
pier\molo
piety\riverenza
pig\maiale, porco
pigeon\colomba, piccione
pigeon hole\casella postale
piggishness\avidità
pile\catasta, cùmulo
pilferage\ladreria
pilgrim\pellegrino
pill\pillola
pillage\saccheggio
pillar\pilastro, colonna
pillar box\cassetta postale
pillars\pilastro
pillow\guanciale
pillowy\soffice
pilot\pilota, andara, volare, pilota
pimping\ruffianeria
pimples\pustola
pin\perno
pinch\pizzicare
pine\pino
pine-apple\ananasso
pine tree\pino
pineapple\ananasso
pink\rosa
pious\pio
pipe\fischietto, tubo
piped\condotto
pipping\tubazione
pirate\pirata
pirogue\canoa
piss\pisciare
pistol\pistola
pit\fossa, abisso
pit in order\ordinare
pitchblack\nero come la pece
pitcher\orcia
pith\midollo
pitiably\deplorévole
pitiless\spietato
pity\peccato, compassione, compianto
placable\condisendente
placard\cartellone, manifesto
place\mettere, spazio, ente, mettere, posto
place of birth\luogo di nativo
place of destination\destinazione
place of residence\residenza
plagiarism\plagio
plain\pianura, piano, modesto
plaint\lamentela
plait\treccia
plan\progetto, progettare
plane\aeroplano, velivolo, progetto
planet\pianeta
planned economy\economia pianificata
plant\allegato, vegetale, pianta
plaque\lastra
plaquette\placca
plaster\lastricato
plastic\plastico, plastica
plate\piatto, scudo, lastra
plateau\altipiano
platform\banchina della stazione
play\giuocare, pezzo, giuoco, spettacolo
player\giocatore
plaza\piazza
plc\anònimsocietà
pleasant\gradévole, compiacente, simpatico
pleasantly\piacevolmente
please\favore, per cortesìa
pleased\soddisfatto, lieto
pleasure\consolazione, voluttà, volli, dilettarsi, favore
pleat\grinza, pizzicotto
pledge\deposito
plentiful\opimo
plethora\afflusso di sangue
plot\congiura, parcella, complotto
ploughing\lavoro campestre
plow\arare
plug\spina, tappo
plum\prugna
plumbable\esplorabile
plumber\lattoniere
plunge\mi tuffo
plural\plurale, plurale
plus\compreso, e, sovrappiù
plywood\legno compensato
pneumonia\polmonite
poacher\bracconiere
pocket\tasca, casella
podium\piedistallo
poem\poesia
poet\vate
poetical\poetico
poetry\poesia
point\regolare, punta, punto
point of view\punto di vista
pointer\lancetta
poise\equilibrio
poison\veleno, avvelenare
poisonous\virulento
poke\immagazzinare
Poland\Polonia
polar\polare
pole\polo
Pole\Polacco
police\polizia
police-station\questura
police station\commissariato, comissariato di Pùblica Sicure
policeman\poliziotto, vigile
policewoman\poliziotta
policy\politica
polio\poliomielite
polish\brunire, créscere
polite\educato
politeness\cortesia
politician\politico
politics\politica
poll\inchiesta
pollute\insudiciare
polyp\polipo
pond\vasca, laghetto, stagno
pony\frangette
poor\umile, povero
pope\papa
poplar\pioppo
poplars\pioppi
poppy\papavero
popular\popolare, ben voluto
popularization\volgarizzamento
popularize\volgarizzare
population\popolazione
porcelain\porcellana
porch\portale
pore\poro
port\porto, coincidenza
port side\babordo
portable\mobile
portage\trasporto
portentous\nefasto
porter\portiere, facchino
portion\pezzo, porzione
Portugal\Portogallo
Portuguese\Portoghese
poshly\elegantissimo
position\posizione, posizione, ente, circostanza, orientare
positive\positivo
posses\possedere
possess\possedere
possession\possesso
possessor\titolare
possibility\eventualità, capacità
possible\eventuale, fattibile
possibly\forse
post\palo, stanga, cassetta postale, obiettare, posta
post office\ufficio postale
post office box\casella postale
postage\affrancatura
postage paid\franco
postage stamp\francobollo
postal\postale
postal-order\vaglia
postal address\indirizzo postale
postcard\cartolina postale
postcode\numero di codice
poster\manifesto, cartellone, affisso
postponement\spostamento
pot\vaso
potable\bevibile
potables\bevande
potato\patata
potent\valido
potential\fattibile
pots\pentole
pottage\zuppa di verdura
poultry\volàtili
pound\libbra
pour\mescere, versare
poured\versai
pout\ammusare
poverty\povertà
powder\cipria
power\forza, potenza
power-station\centrale elettrica
powerful\poderoso, valido
powerless\impotente
practicable\eseguìbile
practical\utilitario
practice\applicare
practise\esercitare, esercitare
pragmatize\razionalizzare
praise\lode, elogiare
pram\carrozzella
prawn\granchiolino
pray\pregano
prayer\preghiera
precious\prezioso
precipice\abisso
precise\minuzioso
precisely\minuzioso
precision\fedeltà
predicative\asserente
predictate\verificare
preexamination\esame preliminare
preface\prefazione
prefer\preferire
preferably\piuttosto
pregnancy\gravidanza
pregnant\gràvida
pregnantly\gràvida
prehistory\preistoria
preignition\accensione anticipata
prejudice\pregiudizio
preliminary\introduttivo
premature\parto prematuro, prematuro
premises\edifizio
preoccupied\assorto
prepare\preparare, appretare
prepay\pestare
prepaywnent\acconto
prepossession\prevenzione
preposterous\ridicolo
presaged\presentii
presbyter\vecchissimo
prescribe\decretare
prescript\prescrizione
prescription\prescrizione, ricetta
presence\presenza
present\presenza, presente, presente, mettere avanti
presentiment\presentimento
preservative\preservativo
preserve\mantenere
president\presidente
press\premere, pressare, premo
pressure\pressione
presuppose\presupporre
pretended\presunto
pretentious\immaginario
prettify\abbellire
pretty\vano, carino, civettuolo
prevent\troncare, prevenire, impedire
preventative\impedimento
previously\davanti
prey\bottino
price\tariffa, costo
price ticket\cartellino del prezzo
priceless\impagabile
prick\pungere
pricking\lancinante
prickled\punsi
pride\fierezza
priest\sacerdote
primeval forest\foresta vergine
primitive\primitivo
primly\rigido
prince\principe, principe
princess\principessa
principle\principio
printed form\modulo
printer\stampatore
printing\pressione
printing office\tipografia
prior\ancor prima
prison\càrcere, prigione
prisoner\detenuto
private\privato
private room\càmera privata
prize\sorte, costo
prized\stimai
probability\verosimiglianza
probably\probabile, probabilmente, verosìmile, supposto
probe\catètere
problem\problema
procedure\procedura
proceeding\procedura
proceeds\guadagno
procure\procurare
produce\produrre
producer\fabbricatore, produttore
product\prodotto, prodotto
production\produzione, fattura
productive\produttivo
profanely\laico
professional\professionista, per lavoro
professor\professore
proffer\offerto
profile\profilo
profit\guadagno, profitto, guadagnare
profitable\lucrativo, lucroso
profitably\lucrativo
prognosis\prognosi
program\programma
programme\spedizione
progress\avanzamento
progressed\progredito
prohibited\proibito, insufficiente
prohibition\divieto
projectile\proiettile
projector\faro
promise\promettere, promessa
promote\promuovere
pronounce\espresso
pronunciation\pronuncia
proof\percento, dimostrazione
prop\sostegno
propagate\procreare
propellant\carburante
proper name\nome proprio
property\possesso, fattoria, proprietà
propoganda\propaganda
proportion\riferimento, dosaggio
proposal\appoggiatura
propulsion\impulso
prorata\proporzionale
proscibe\proibire
prosecutor\procuratore di stato
prospective customer\interessato
prospectus\prospetto
prosperous\benestante
prosperousness\successo
protect\riparare, proteggere, proteggere
protection\protezione
protegee\raccomandato
protest\eccezione, protesta
Protestant\protestante, evangelico
protocol\protocollo
protuberance\ammaccatura, gobba
proud\fierezza
provably\comprovàbile
prove\provare
proved\esperimentato
proverb\proverbio
provide\provvedere, ovviare
provided that\se
provisioners\mantenitore
provocation\disfida
provoke\sfidare, esacerbare, cagionare
proximity\vicinità
psychiatrist\psichiatra
psychologist\psicologo
pub\bètvola
puberty\pubertà
public\pubblico, pubblico
public limited company\anònimsocietà
public square\piazza
publication\pubblicazione, notifica
publicity\reclame, pubblicità
publish\pubblicare, pubblicare
publisher\editore
pudding\budino
puff\alito
puffpaste\pasta sfoglia
pugilists\pugile
pull\estrassi
pulley\paranco
pullover\pullover
pulls\tira
pulp\pappa
pulse\polso
pump\pompa
punch\battuta
punctiliously\formale
punctual\puntuale
punctuality\puntualità
puncture\scoppiare, crepare
punish\castigare, punire
punishment\castigo, punizione
punitive\punitivo
puny\gràcile
pupil\pupilla, allievo
puppet\marionetta, burattino
puppyhood\epoca della pubertà
purchase\comprare, compra, compera, decrescenza, acquistare
purchaser\compratore
pure\pulito, pudico
purgatory\purgatorio
purge\epurazione
purify\forbire
purl\orlare
purple\lilla
purpose\scopo, proposito
purse\borsa
pursuit\inseguimento
pursuit interceptor\torpediniere
pus\materia purulenta
push\urtare, pigiare, spingere, spingere, folata
put\mettere, posare, mettere, dare
put a stamp on\francare
put down\sdraiarsi
put in\somministrare
put in order\ammettere
put off\spegnere
put on\accèndere, vestire
put on stamps\pestare
put on weight\perdere la linea, créscere
put onto\affigere
put out\spengere
put up\allineare, ergere, rizzare
putty\spatola, mastice
pyjamas\pigiama
pyramid\piramide
quadruplicate\quadruplice
quaff\sbevazzare
qualified\qualificato
quality\qualità
quantifies\abilitato
quantitative\quantitativo
quantity\quantità, quantità
quarrel\questione, litigare
quarry\cava di pietra
quavers\trema
queen\regina
quenchable\estinguibile
querulousness\riluttanza
question\chièdere, interrogare, quesito
question mark\punto interrogativo
questionable\diffidgnte
questionnaire\questionario
queue up\fare la fila
quick\agile, rapido
quicker\più veloce
quickly\presto
quickness\velocità
quicksilver\argento vivo
quiet\pacifico, sommesso, calmo
quietly\sommesso
quince\cotogna
quinquagenarian\cinquantenne
quintuple\quintuplicare
quintuplet\quinquigemini
quintuplicate\quintuplice
quota\quota
quotation\citazione, valore corrente
quotation marks\virgolette
quote\gravare, calcolare
quotidian\quotidiano
quotient\quoziente, frattura
rabbit\lepre, coniglio
rabies\idrofobia
race\razza, corsa
races\corse
racing car\vettura da corsa
radar\radar
radiance\radiazione
radiate\irradiare
radiator\radiatore
radically\radicale
radio\radio
radio receiver\destinatario
radio set\radio
radioacitivity\radioattività
radioscopic\trasparente
radish\rafano, ravanello
radius\raggio
radix\radice
raffish\licenzioso
raffle\sorteggiare, estrazione
raffles\sorteggiato
raft\zattera
rag\lobo
rag bag\donnaccia
rag money\carta moneta
rage\furia
rages\attacca, sosta fermata
ragged\cencioso
raging\farnetico
rags\lobo, straccio
ragtag\gentaglia
raid\razzia, aggressione
raiding\aggressivo
rail\rotaia, binario
railcar\automotrice
railing\balaustrada
railroad\orbita, ferroviario
railroad embankment\argine della ferrovia
railroader\ferroviere
rails\binario
railway\ferroviario, orbita
railway carriage\vettura
railway station\stazione
railwayman\ferroviere
rain\pioggia, agitarsi, piovere
rain cloud\nuvola piovosa
rainbow\arcobaleno
raincoat\impermabile
raindrop\goccia di pioggia
rainfall\agitarsi, precipitazione
rainily\piovoso
rainproof\impermabile
rainstorm\piovasco
rainwater\acqua piovana
rainy\piovoso
rainy weather\tempo piovoso
raise\sollevare un pò, ergere, causo, esaltare
raisin\zibibbo
rake\rastrello, rastrello
rambler\viatore
rambler rose\rosa rampicante
ramblers\viatore
rambunctiousness\selvaggia
ramification\diramazione
ramifies\diramato
ramp\rampa
rampage\smaniare
rampaged\smaniai
rampages\smania
rampaging\smanioso
rampant\selvaggio
rampantly\selvaggia
rampart\baluardo
ramshackle\pericolante
ramshackle hut\catapecchia
ran\corsi
ranch\fattoria
rancid\laido
rancor\astio
rancorous\accanito
randy\lascivo
range\tavolozza, portata, area, fila
ranger\guardia forestale, guardiaboschi
rank\gradino, pianura, rango
rankled\divorai
rankles\divori
rankly\opimo
ransom\riscatto
ranting\clamoroso
rap\scapaccione
rape\violare, rubare
rapes\violentata, violazione
rapid\rapido, impetuoso
rapidity\velocità
rapidly\veloce
rapidness\velocità
rapier\spada
rapport\concordanza
rapt\sommerso
raptly\sommerso
raptures\esplosione
rapturing\delizioso
rapturousness\entusiasmo
rarefield\diluito
rarely\raro
rareness\rarità
rascality\bricconata
rash\eczema, eczema
rasp\limare
raspberry\lampone
raster\reticolo
rat\ratto
ratable\apprezzàbile
rate\ritmo, rata, rapporto, tariffa, parte
rather\preferire, veramente, abbastanza, anzi
ratification\convalidazione
ratifies\confermato
ratify\certificare, omologare
ratio\riferimento
ration\pezzo, razione
rational\razionale
rationalization\razionalizzazione
rationalize\razionalizzare
rationally\ragionevole
rationing\razionamento
ratter\cacciatore di ratti
rattler\chiacchierone
rattlers\chiacchierone
rattlesnake\serpente a sonagli
rattly\fragile
ratty\mordace
raucous\scabro
raunchiness\sudiciume
ravage\desolare
raven\corvo
ravenous\vorace
ravenous appetite\fame da lupi
ravenousness\avidità, rapacità, fame da lupi
ravens\corvi
raving\smanioso, rabbioso
raving mad\frenetico
raving madness\frenesia
ravisher\seduttore
raw\grezzo, scabro
rawness\brutalivà
ray\raggio, emettere
rayon staple\lana sintetica
raze\abbattere
razz\canzonare, orchestrare
reabsorb\riassorbire
reach\portata, conseguire, estendersi
reachable\ottenibile
reaches\raggiunto
react\reagire
reaction\reazione
reaction time\momento dello spavento
reactionary\reazionario
reactionist\reazionario
reactive\retroattivo
reactor\reattore
read\leggere
read in\somministrare
readability\leggibilità
readable\leggibile
readably\leggibile
reader\lettore, lettore
reading\esegesi, letta
readmission\riammissione
readmit\riammettere
reads\leggi
ready\essere disposto, largo, pronto, disposto
ready for battle\pronto a combattere
ready for delivery\consegnabile, pronto per la spedizione
ready for shipment\pronto per la spedizione
ready to leave\pronto al viaggio
ready to start\pronto alla partenza
real\reale, veramente, vero
real estate\immobili
realism\realismo
reality\realtà
realizable\negoziabile
realization\realizzazione
realize\riconoscere, realizzare, comprendere, attuare
really\reale, davvero, infatti
realm\ricco
ream\ampliare
reams\allargato
reap\raccogliere
reaper\falciatore
rear view\veduta posteriore
reared\allevato
rearing\educativo
reason\ragione
reasonable\adottàbile, ragionevole
reasoning\pensare
reassure\calmare
rebate\riduzione
rebated\rimborsato
rebel\ribelle, indignare
rebellion\ribellione
rebirth\rinascita
reborn\rinato
rebuke\biàsimo, biasimo
rebut\estenuare
rebuttal\confutazione
recalcitrant\renitente
recall\ricordare
recd\ottengo
recede\farsi indietro
receipt\entrata, quietanza, quietanzare
receipts\introiti
receive\fagocitare, accettare, ricevere, ottengo
received\ricevette
receiver\destinatario, ascoltatore
receives\ricevere, riceve
receives empor up\riceve
receiving\ricevente
recency\novità
recent\novizio, moderno
recently\dianzi, recentemente
recentness\novità
reception\accettazione
receptive\sensitivo
recess\interruzione
recesses\ricalcare
recidivism\reversione
recidivistic\recidivo
recidivous\recidivo
recieve\ottengo
recipe\ricetta
recipient\destinatario
reciprocal\viceversa
reciprocality\contraccambio
reciprocate\ripagare
reciprocation\azione reciproca
reciprocity\vicendevolezza
recital\dizione, concerto
reckless\spericolato
reckon\fare i conti
reckon up\saldare
reckoner\calcolatore
reckoning\resa dei conti
reclaim\reclamare
recline\posare
reclined\posai
reclines\posa
recluse\eremita
reclusive\unico
recognition\convalidazione, riconoscimento
recognize\riconoscere, riconoscere, riconoscere
recognized\riconosciuto
recollection\ricordo
recommend\raccomandare
recommendation\raccomandazione
recommendatory\raccomandante
recommending\raccomandante
recommends\raccomanda
recompenses\premiato
reconcile\conciliare
reconciles\riconciliato
reconciliation\riconciliazione
recondite\ermetico
reconditely\farsi scuro
recondition\sorpassare
reconstruction\ricostruzione, rinnovo
record\nota, registrare, record, fetta, registrare
record card\scheda
record player\giradischi
record section\ufficio registrazioni
recorded\sollevato, registrato
recorded delivery letter\immatricolare
recording\accettazione
records office\registratura
recoup\indennizzante
recouping\indennizzante
recoupment\indennizzo
recource\capitare
recourse\regresso
recovery\emendazione, ristabilimento
recreance\vigliaccheria
recreantly\vigliaccheria
recreation home\convalescenziario
recreations\ristabilimento
recruit\coscritto, assoldare, integrare
rectangle\rettangolo
rectangular\rettangolare
rectification\emendazione
rectifier\raddrizzatore
rectify\emendare
rector\parroco
recumbency\giacere
recumbent\giacente
recuperation\ristabilimento
recurrence\replica
red\vermiglio, rosso
Red Indian\indiano
red wine\vino rosso
redact\pubblicare
redbreast\pettirosso
reddish\rossastro
redecorate\rinnovare
redecoration\restauro
redeem\rilevare
redeemable\estinguibile
redeemed\quietanzato, estingere
redeemer\Redentore
redefine\cambiare il nome
redemptive\salvante
redevelopment\risanamento
redness\rossore
redolence\odore
redolency\fragranza
redolently\profumante
redouble\duplicare
redoubt\trincea
redound\buttare
redress\eliminare
redresses\eliminato
redressing\eliminatorio
redskin\indiano
reduce\diminuire, ridurre, rimpicciolire, degradare
reduction\depressione, riduzione, remissione
redundant\senza lavoro
reduplicate\duplicare
reef\scogliera
reek\lezzo
reeking\puzzolente
reel\fettuccia, bobina
refection\rinfresco
referable\relativamente
referee\arbitro
reference\biasimo, riferimento, raccomandazione, riferimento
referenced\accennato
referral\raccomandazione
referring to this\analogo
refineries\raffineria
reflect\riflettere, riflettere
reflection\immagine riflessa, ragionamento fallace
reflex\rispecchiamento, riflesso
reform\riformare, riforma
reforming\emendativo
reforms\migliorato
refracted\incolto
refracting\rompente
refractory\renitente
refracts\rompe
refrain\ritenere, ritornello, ritornello
refresh\ristorare
refresher\rinfresco
refreshing\ristorante
refreshingly\ristorante
refreshment\ristoro
refreshment room\buffè
refrigerate\raffreddare
refrigerated\raffreddai
refrigerates\raffredda
refrigerator\frigorìfero
refuel\fare benzina
refugee\profugo
refulgence\nitore
refulgent\brillante
refulgently\brillante
refund\restituire, abbonare
refusal\rifiuto, rifiuto, rifiuto
refuse\rifiutare, rifiutare
refusing\contrario
refutability\confutazione
refutable\confutabile
refutation\confutazione
refute\confutare
refuted\confutato
refutes\confutato
regales\lieto
regally\lieto
regard\attenzione, stimare, riguardo, considerare
regarding\relativamente
regards\saluti
regime\regime
regiment\reggimento
region\località, territorio, regione
regional\locale
register\registrare, estimo, registrare, abbandonare
registration\registrazione, dichiarazione di soggiorno
registration form\modulo di denuncia
registration office\anàgrafe
registrations\annunci
registry\estimo
regive\restituire
regressive\regressivo
regret\pentirsi, compianto, lamentare
regretful\spiacente
regretfulness\compianto
regrets\pentito
regrettable\spiacevole
regrettingly\spiacente
regular\regolare
regular guest\assiduo
regularity\regolarità
regularization\regolazione
regularize\regolare
regularly\spesso
regulate\regolare
regulation\regolazione, prescrizione, ordinamento
regulations\statuto
regulator\regolatore
regurgitate\vòmito
regurgitation\vòmito
rehabilitate\sanare
rehabilitates\sanato
rehearsal\prova
reign\sovrano
reign of terror\regno del terrore
reimburse\abbonare, indennizzante, restituire
reimbursement\indennizzo
reimbursing\indennizzante
rein\freno
reinforce\amplificare
reinforces\rafforzato
reiterates\ripetuto
reiterativeness\replica
reject\rifiutare, buttare
rejoice\esultare
rejoicing\giovialità
rejoinder\contraccambio
rejuvenate\ringiovanire
rejuvenates\ringiovanito
relapse\ricadere
relate\narrare
related\imparentato
relatedness\parentela
relation\riferimento, rapporto
relationship\riferimento
relative\parente, relativo, conggiunto
relatively\relativamente, relativo
relativeness\relatività
relax\rilassare
relaxation\rilassamento
relaxed\rilassato
release\mettere in libertà, sciogliere
relevant\competente
reliability\fidatezza
reliable\provato
relief\faccilitazione
relieve\mitigare, agevolare
religion\religione
religious\religioso
relished\godei
reluctantly\malvolentieri
remain\rimanere
remainder\rimanenza
remark\avvertenza, accòrgersi
remarkable\notevole
remember\ricordare, rimembrare
remerkable\notevole
reminder\ricordo, ammonizione
remit\trasferire
remonstrant\esortativo
remote\distante, vasto
removal\disdetta, dimissione
remove\discostare, spostare
remove hair\depilare
remunerates\premiato
remuneration\stipendio
rename\cambiare il nome
renew\allungare, rinnovare
renewal\allungamento, rinnovamento
rent\noleggiare, affitto, appigionare
renunciation\rinuncia
rep\fama
repair\riparazione, accomodare
repay\rimborsare
repeat\ripetere
repetition\replica
replace\sostituire
replacement\indennizzo, pezzo di ricambio
replenish\integrare
replicate\ripetere
reply\risposta, contrariamente, corrispóndere
report\rapporto, cronaca, insegnare
represent\figurare, rappresentare
representation\rappresentanza, presentazione
representative\rappresentante
repressor\oppressore
reprieve\ultimo tempo concesso
reprimand\biasimo, biàsimo, biasimo
reproduction\restituzione
reproof\biasimo
reptile\rettile
republic\repubblica
republican\repubblicano
repudiate\rifiutare
repugnance\disgusto
reputation\fama, notabilità
reputations\nominale
request\pregano, per cortesìa
require\necessitare, esìgere, usare, aver bisogno
requirement\bisogno
requiring\bisognò
rescindment\abolizione
rescue\salvataggio, salvare
research\indagare, ricerca
research worker\scienziato
resemble\assomigliarsi
reserved\riservato
reservoirs\recipiente
residence\residenza
residue\arretrato
resign\farsi indietro
resign oneself\devoto, rinunciare
resignedness\devozione
resin\resina
resistance\difesa
resistor\resistenza
resolution\dissoluzione, deliberazione
resolutions\propositi
resources\espediente
respect\rispettare, rispetto, stimare
respectably\onorabile
respected\notevole
respectfully\con la massima stima
respectively\rispettivamente
respire\fiatare
respiring\respirante
respites\prolungare il termine
respond\rispondere
response\suscettibilità
responsibility\responsabilità
responsible\responsabile
rest\giacere, sè, riposarsi, sosta fermata
rest stop\luogo di sosta
restaurant\osteria, ristorante
restlessness\inquietudine
restrict\limitare
restriction\limitazione
restrictively\limitativo
result\devoto, risultato, risultato
resulting\ottenuto
resum\raccolta
retail\commercio al dettaglio
retail trade\commercio al dettaglio
retailer\dettagliante
retain\trattenere
retaliation\rappresaglia
retards\rallentato
retch\strangolare
retina\retina
retinue\seguito
retired\pensionato
retired person\pensionato
retirement\pensionamento
retrieve\riavere
retrograde\ritornare
retry\ripetere
return\ritorno, rimborsare
return flight\volo di ritorno
revaluation\valorizzazione
revalue\valorizzare
reveal\scoperchiare, scoprire
revenge\vendetta
reversal\ritorno
revile\vituperare
reviser\revisione
revision\revisione
revolt\rivolta
revolution\giro, rivoluzione
revolver\rivoltella
reward\gratificare, compenso
rhythm\ritmo
rib\còstola
ribbon\fettuccia
ribs\nervatura
rice\riso
rich\ricco
richer\ricco
richness\opulenza
ride\giro, andare a corsa
ridicule\canzonare
ridiculous\ridicolo, idiotico
riding\andare a corsa
rifle\fucile, carabina
right\esatto, a destra, destro, retto
right-hand side\destra
right away\subito
righteous\dabbene
rightful\legittimo
righthand\destro
rigid\rigido
rigmarole\chiàcchiera
rigorous\severo
rim\cerchione
rime\rima
ring\circolo, sonare il campanello, anello, campanello
ring the bell\suonare
riot\rivolta
rip\crepatura
ripe\maturo
rise\lievitazione, esalare, aumento, levarsi, alzarsi
risk\rischiare, rischio
risky\rischioso
risque\lubrico
rite\usanza, rito
ritual\usanza, rito
ritually\solenne
rival\rivale
rivalry\rivalità
river\fiume, fluviale
riverbed\letto del fiume
rivet\biglietto non vincente
road\contrada, strada di campagna, cammino
road conditions\viabilità
road map\carta turìstica
road sign\cartello stradale
roar\ruggito, ruggire
roast\cuocio
robbery\rapina
robe\roba, cavo
robot\robot
rock\dondolare, masso, roccia
rocket\razzo
rockingchair\sedia a dondolo
rocky\roccioso
rod\marcire, verga, marcire
rode\cavalcata
rodent\roditore
roe\capriolo
roguery\marioleria
roistering\clamoroso
role\ruolo, funzione
roll\ruolo, panino, panino, rotolare
roll chair\sedia a rotelle
roll skate\pattino a rotelle
roll up\avvoltare
rollback\ripetere, replica
roller\ruolo, rullo
roller-blind\persiana
rollicking\licenzioso
rolling mill\laminatoio
romantic\romantico
romantically\romantico
romanticism\romanticismo
romanticist\romantico
romanticize\fantasticare
rood\verga
roof\tetto
roofer\copritetto
roofs\tetti
rook\abbindolare
rookie\esordiente
room\camera, spazio
roomed\abitai
roomer\subinquilino
roomy\ampio
roost\dormire
rooster\rubinetto
roosting\dormiente
roosts\dorme
root\radice
rooted\radicato
roots\radici
rope\gòmena, cavo
ropes\corde
ropy\glutinoso
roster\registro
rosy\roseo
rot\marcire
rotary current\corrente polifase
rotate\rotare
rotates\rotato
rotation\rotazione, giro
rotation of the earth\rotazione della terra
rotational\alternativo
rotten\mostruoso, putrido
rottened\marcio
rottenly\pigro
rottenness\putrefazione
rottens\marcio
rotund\rotondo
rough\scabro, rozzo, ineguale, valutato, zotico
roughhouse\maltrattare
roughly\valutato, zotico
roughness\villania
round\rotondo, arrotondare
round off\arrotondare
roundabout\giostra, verboso
roundly\rotondo
roundup\leva
route\direzione, cammino, strada, dirigere, itinerario
routes\stirato
rove\andare in giro
row\canottaggio, riga, fila
rowdyism\brutalità
rowing boat\barchetta
rows\mettere in fila
royal\reale
royalism\reame
royally\reale
rub\fregare
rubbed with ointment\unguentato
rubber\gomma
rubber band\elastico
rubber dinghy\canotto pneumatico
rubber tape\nastro isolante
rubberizes\gommato
rubbing\strofinare, fregare
rubbish\spazzatura
rubdown\lavata di capo
rube\imbecille
rubicund\rossastro
rubicundity\rossore
ruby\rubino
ruby coloured\rosso vino
rucksack\zaino
ruction\zuffa, sommossa
rudder\remo, tassa
ruddily\rossastro
ruddiness\rossore
ruddy\vermiglio
rudely\zotico
rudeness\villania
rudimental\elementare
rue\pentirsi
rueful\querulo
rues\pentito
ruffian\villanzone
ruffianly\grezzo
ruffle\irrigidire
ruffled up\irrigidito
rugs\tappeti
ruin\viziare, rovina, rovinare
ruination\distruzione
ruined\distrussi
rule\prescrizione, norma, dominio, regnare, criterio
ruler\regolo, regolatore, sovrano
rules\regolare, dominato
rumble\rumoreggiare
ruminative\pensieroso
rumor\vociferare
rumour\fama
rump\torso
rumpus\sommossa
run\esercitare, circolare, affiuenza, fuga, correre
run away\scappare
run over\travolto
runaround\schivare
rundown\decorrere, spiegazione
rung\suonato, gradino
runner\corridore
running\decollare, corro, corre
running start\abbrivo
runt\nano
runts\nani
runty\minuscolo
rupee\rupia
rupture\frantumare, frattura
rupturing\lacerante
rural\villereccio
ruse\pizzicotto
rush\affiuenza, furia, spingere, smaniare, pigiare
rush mat\stuoia
rush order\commissione urgente
rusk\biscotto
Russia\Russia
Russian\Russo
rust\arrugginire, griglia
rusted\arrugginito, arrugginito
rustic\rurale, semplice, villereccio
rustily\rugginoso
rusting\arrugginire
rustle\crepitìo, rubare
rustled\acciaio
rustles\ruba
rustless\inossidabile
rustproof\inossidabile
rusts\arrugginito
rusty\rugginoso
rutabaga\navone
ruth\compassione
rye\segale
sabdwich\pane imburrato
sable\zibellino
sables\zibellino
sabot\zoccolo
sabotage\sabotaggio, sabotare
sabre\sciabola
sac\sacchetto
saccharated\zuccherino
sack\licenziare, buttare fuori, sacco
sackful\sacco
sackfuls\sacco, sacchi
sacred\santo
sacredly\santa
sacredness\santità
sacrifice\sacrificio, sacrificare
sacrilege\sacrilegio
sacrileges\sacrilegio
sacrilegious\scellerato
sacristan\sagrestano
sacs\sacchetto
sad\afflitto, lugubre
saddle\sella
saddle fast\saldo in sella
saddler\sellaio
saddles\sella
sadism\sadismo
sadly\lugubre
sadness\tristezza
safe\sicuramente
safe keeping\preservamento
safeguard\valvola
safeguarded\assicurai
safeguards\assicurato
safekeeping\preservamento
safely\sicuramente
safeness\fidatezza, sicurezza
safety\sicurezza
safety belt\cintura di sicurezza
safety lock\antifurto
saffron\zafferano
sag\depressione
sagacious\saggio
sagaciously\furba
sagaciousness\saggezza
sage\salvia
sageness\saggezza
sagittarius\tiratore
sail\veleggiare
sailer\veliero
sailing\veleggiare
sailing boat\barca a vela
sailing ship\nave a vela
sailor\navigatore, marinaio
sails\veleggiare, vela
saint\santa
sainthood\santuario
saintliness\santità
saints\santificare
salacious\lussurioso
salaciousness\voluttà
salad\insalata
salads\insalate
salary\stipendio
sale\registro, véndita
saleable\esitabile
sales clerk\venditore
sales price\prezzo di vendita
sales terms\condizioni di vendita
salesgirl\venditrice
salesman\venditore
saline\salina
saliva\saliva, raggio
salivary\glàndola salivale
salivary gland\glàndola salivale
sallow\pallido, pallido, scolorato
sallowness\pallore
salmon\salmone
salon\salotto, negozio da parrucchiere
saloon\bètvola
salt\sale
salt water\acqua salsa
saltily\salato
saltpeter\nitro
salts\sali, salare
saltwater\acqua salsa
salty\salato
salubriously\sana
salute\salutare
salvages\salva
salvation\salvataggio
salver\vassoio
salves\unguentare
same\pari
sammy\pasta
sample\prova, esemplare
sanatorium\casa di salute
sanctify\santificare
sanctimonious\ipocrita
sanctity\santità
sanctuary\santuario
sand\sabbia
sand bank\banco di sabbia
sand glass\clessidra
sand paper\carta smeriglio
sand pit\cava di sabbia
sandal\sandalo
sandpaper\carta vetrata
sandstorm\tempesta di sabbia
sandy\arenoso
sane\sano di mente
sanguinary\crudele
sanguineous\insanguinato
sanitarium\luogo climatico
sanitary\igiènico
sanitary towel\fascia assorbente
sanitation\risanamento
sanity\ragione
sap\succo
saphire\zaffiro
sapience\saggezza
sapless\scipito
sapphire\zaffiro
sappy\succoso
sartorial\sarto
sash\ciarpa
sash window\finestra scorrevole
sashayed\scivolai
sashays\scivolo
sassed\inveii
sasses\inveisce
sassiness\impertinenza
sassy\insolente, sfacciato
sat\sedei
sateen\raso
satellite\satellite
satiable\saziante
satiably\saziante
satiate\saziare
satiated\saziato
satiating\saziante
satiation\satollamento
satiety\sazietà
satin\raso
satirize\canzonare
satisfaction\contentezza, soddisfazione
satisfactory\soddisfacente
satisfiable\soddisfacente
satisfied\soddisfatto
satisfies\accontentato
satisfy\accontentare
sattelite\satellite
saturate\saziare
saturating\saziante
saturation\satollamento
Saturday\sabato
saturday\sabato
saturnine\fosco
sauce\guazzetto
saucepan\pentola
saucer\sottocoppa
saucer eyed\occhioni
saucily\insolente
sauciness\esosità
saucy\sfacciato, gioielli, saccente
sauna\sauna
saunter\gironzolare
sausage\salsiccia, salsiccia arrosto
sausages\salsicce
savable\durevole
savage\crudele
savannah\savana
save\salvare, assicurare, serbare, risparmiare
saved\sicuro
saver\risparmiatore
savers\risparmiatore
saving\immagazzinare
savings\libretto di risparmio, risparmio
savings account\conto di risparmio
savings bank\cassa di risparmio
savior\Redentore
savor\degnare, gustare, usufruire
savored\godei
savors\godi
savour\costare, usufruire
savoy\verza
savvied\giudizio
savvier\più furbo
savvies\comprende
saw\segare, sega
sawed\segato
sawn\segato
saws\segare
sax\sassofono
saxon\sassone
saxophone\sassofono
say goodbye\promulgare, licenziarsi
say thank you\ringraziare
sayings\detti
scabies\scabbia
scabiesious\rognoso
scaffold\patibolo
scaffolding\intelaiatura, base
scale\criterio, squama, piatto della bilancia
scales\hangar
scandal\scandalo
scans\esamina
scant\scarso
scantily\scarso
scantiness\spilorceria
scantness\strettezza
scanty\scarso, scarso
scapegoat\espiatorio
scapula\scapola
scapular\spalla
scar\strato erboso
scarce\raro, scarso, raro
scarce goods\scarseggiante
scarcely\paggio, appena
scarcity\strettezza
scare\spaventi
scarf\scialle, fazzoletto da collo
scarify\scalfire
scariness\spavento
scarlet\scarlattina
scarped\dirupato
scary\angoscioso
scathe\affronto
scathing\offensivo
scavenging\lustrale
sceened\riparato
scenario\copione
scene\scena, scena, tribuna, svolgimento
scenery\ornamento
scenic\del paesaggio
scent\sostanza odorosa, odore
scented\subdorato
scepticism\scetticismo
scewed\avvitato
schedele\ordito
schedule\tabella, registro
schema\schema
schematic\schematico
schematically\schematico
scheme\disegno, schema
schist\ardesia
schists\ardesia
schlep\trascinare
schnapps\acquavite
schnooks\idioti
scholarliness\erudizione
scholarly\erudito
scholarship\erudizione, borsa di studio
school\scuola
school day friend\amico della gioventù
school leaving examination\maturità classica
school year\anno scolastico
schoolhouses\istruire
schooling\istruzione
schoolmate\amico scolastico
schools\istruire
sciatic\sciatica
sciatica\sciatica
science\scienza
scientific\scientifico
scientifical\scientifico
scientist\scienziato
scintillate\fiammeggiare
scintillating\lampante
scission\fenditura
scissors\forbice
scoff\scherno
scoffer\beffatore
scold\inveire, sgridare
scoop\mestola, attìngere
scoopful\badile
scoot\mozzare
scooter\motoretta
scope\orbita, portata
scopes\zone
scorch\bruciare
scorched\arsi
scorcher\senzazione
scorches\arde
scorching\cocente
score\sparare, partitura
scorers\proteggere
scorn\disprezzare, vilipendi, scherno
scornful\beffardo, sprezzante
scornfulness\vilipendi
scorns\disprezzato
scorpion\scorpione
scorpios\scorpioni
Scot\Scozzese
scot\paratia
Scotland\Scozia
Scotsman\Scozzese
scoundrel\furfante, mascalzone
scour\vagare
scourge\frustare
scouring\vagabondo
scout\ricognitore
scoutmaster\guida
scow\più leggero
scrabble\strisciare
scragg\scheletro
scram\mozzare
scrambled\uovo strapazzato
scrambling\rampicante
scrap\ferraglia
scrape\raschiare, graffiare
scrape off\grattare
scraper\scarafaggio
scrapers\raschiare
scratch\graffio, verniciare, graffiare, scalfire
scratch oneself\graffiare
scratched\grattato
scrawniest\piccolissimo
scrawny\snello
scream\gridare
screamed\gridai
screaming\urlante
screams\grida
scree\pietrisco
screech\stridere
screeching\stridente
screen\schermo, reticolo, schermo
screened\riparato
screenplay\copione
screw driver\cacciavite
screwball\mattoide
screwdriver\cacciavite
screwiness\pazzia
screws\avvitato
screwy\pazzo
scribal error\errore ortografico
scribe\scalfire
scribed\scrivei
scribing\scalfire
script\copione
scripture\documento
scroll\sfogliare
scrolls\spostare
scrounge\scroccare
scroungers\ladri
scrub\strofinare, strofinare
scrubbed\strofinato
scrubber\spazzola
scruff\sporco
scruffiness\sudiciume
scruple\scupolo
scruples\scupolo
scrupulous\diffidgnte
scruter\esplorare
scrutinize\assaggiare
scrutinized\esaminai
scrutinizes\esamina
scud\volare
scuff\logorio
scuffproof\indistruttibile
sculler\vogatore
scullers\vogatore
sculpt\formare
sculpting\formante
sculptor\scultore
sculptors\scultore
scurf\crosta
scurvier\infame
scurvily\infame
scuttle\rovinare
se\ipotesi
sea\navale, mare
seaboard\riviera
seacoasts\littoraneo
seafarer\navigatore
seagull\gabbiano
seal\siggillare, sigillo, foca, guarnizione
sealing gasket\guarnizione
seals\strisciare, foche
seam\vivagno, scanalatura
seaman\marinaio
seamen\marinai
seamstress\cucitrice
sear\abbronzare
search\cerco, indagare
searcher\cercatore
searches\mania
searchingly\verdastro
sears\arsiccio
seas\mari
seashell\coccia
seasick\malato di mare
seaside\riviera, costa
seaside resort\stazione balneare, località balneare
season\stagione, stagione, aromatizzare
seasonable\stagionale
seasonal surcharge\aumento stagionale
seasoned\maturo
seasoning\condimento
seasonings\aromatizzare
seat\seggio
seaweed\alga
second\secondo
secondary\accidentale, secondario
secret\riservato, segreto, segreto
secretariat\segretariato
secretary\segretaria, segretario
secretion\eliminazione
secrets\segreti
sect\setta
section\taglio
sector\settore, area
security\sicurezza
seduce\sedurre
seduction\seduzione
seductress\seduttrice
sedulous\assiduo
see\vedere, visitare
seed\germe, seme, seme
seek\cercare, cerco
seer\profeta
seize\confiscare, prendere, impaccare, acchiappare
seldom\raramente
select\selezionare
selection\selezione, eletta
self acting\automàtico
self confidence\fiducia in sê
sell out\esaurire
semi\mezzo
semi automatical\semiautomatico
semicolon\punto e virgola
senate\senato, consiglio federale
send\mando, mandare
sender\mittente
senior\superiore
sensation\sensazione
sense\levatura, accezione
senselessly\senza senso
senses\giudizio
sensible\ragionevole, ragionevole
sensitive\sensibile, sensibile
sensitivity\sensibilità
sensual\sensuale
sensuality\sensualità
sensuously\libidine
sentence\punizione, condannare, frase
sentiments\emozioni
sentinels\custodito
separate\separato, separato, separare
separating\singola
September\settembre
sequence\successione
serendipity\scoperta
serene\sereno
serenity\ilarità
serializing\ordinatore
serials\in fila
series\seria
series of reactions\reazione a catena
serious\pesante, serio, grave
seriously\serio, serio
serpent\serpente
serpentine\contorto
servant\domèstica, famulo
serve\servire, servire, servire
service\attèndere, servizio, funzione, manutenzione
service station\distributore di benzina
serviceman\soldato
serving\porzione
session\seduta
set\assortimento, stabilito, mettere, apparecchio
set up\allineare, sè, fondare
setting\naufragio, missione
setting up\succursale
settle\fissare, liquidare
settlement\accordo
seven\sette
seventeen\diciassette, diciasette
seventieth\settantesimo
seventy\settanta
several\alquanti, parecchi
several times\talvolta
severe\severo
sew\cucire
sewage\acqua di scarico
sewing\saldatura
sex\sesso
sexual\storico
shack\capanna
shade\ombra, tinta
shadow\ombrosità, ombra
shadowy\incerto
shake\scuotere
shale\sasso
shall\dovere
shallop\scialuppa
sham\simulare
shame\pudore, disonore
shape\formare, formare, forma
share\partecipazione, spartire, parte
shareholder\azionista
shark\pescecane
sharp\nitido, acuto, stridulo, elevato
sharp witted\perspicace
sharpen\acuire, trascinare
she\lei
sheaf\covone
shears\forbice
sheath\involucro
shed\granaio, hangar
sheep\pecora
sheepherders\pecoraio
sheerly\solamente
sheet\lenzuolo, falda, foglia
sheet metal\latta, lamiera
shelf\scaffale
shell\conchiglia, proiettile
shelter\protezione, riparare, ricovero, riparo, rifugio
shepherd\pecoraio
shift\muovere
shifting\trasferimento
shine\splendere, brillare
shiners\far lume
shining\brillante, fulgente
ship\vascello, spedire, trasportare
shipboy\mozzo
shipes\navi
shipment\spedizione
shirt\camicia
shit\merda
shiver\aver dei brividi
shock\scandalizzare, crollo
shock absorber\ammortizzatore
shoe\scarpa
shoot\sparare
shooting\sparare
shop\impresa
shop-window\vetrina
shop assistant\venditore
shop operation\fase di lavorazione
shopping\comperare, compera
shopping street\via dei negozi
shore\sponda, costa
short\breve
short-sighted\miope
short-term\sollecito
short circuit\corto circuito
shortage\strettezza, difetto
shorten\abbreviare
shortfall\deficit
shortly\prossimamente
shot\sparo
shoulder\spalla
shout\esclamare, gridare, grido
shovel\vanga, badile
show\indicare, espongo, messa
shower\doccia, rovescio
shrill\elevato, stridulo
shrimp\granchiolino
shrink\restringere
shrub\arbusto
shut\chiudere
shutout\esclusivo
shutter\imposta
shy\timido, timido
sick\egro, malato
sick person\malata
sickle\falce
sickness\malattia
side\lato
sideboard\armadio
sides\laterale
sideshow\questione secondaria
sidewards\a lato
siege\assedio
sieve\cola
sieved\settimo
sifter\cola
sigh\sospirare
sight\cosa notevole, aspetto
sightless\cieco
sightlessly\cieca
sightliness\cospicuità
sightseeing\curioso, ispezione
sightseer\escursionista
sign\affisso, scudo, firmare, simbolo
sign over\volturare, volturare
signal\segnale
signaling\denunciante
signalize\segnalare
signatories\firmatario
signature\firma
signed\marcato
signer\firmatario
signets\sigillo
significant\importante
signification\accezione, levatura
signify\volere dire
signifying\importante
signor\signore
signora\signora
signoras\donne
signorina\signorina
signors\signori
signpost\segnavia, scudo
signposts\insegne
signs\simbolo
signs and symbols\leggenda
silence\calma, tacere, ristoro
silencer\silenziatore
silences\tace
silent\sommesso, muto, calma, equilibrato, calmo
silently\calmo
silentness\calma
silicic\ciottolo
silk\seta
silkily\serico
silkiness\dolcezza
silks\di seta
silkworm\baco da seta
sill\soglia
silliness\ocaggine
silly\stolto, sciocco
silt\insabbiare
silver\argènteo, argento
similar\pari, consimile, simile
similarity\omogeneità
similarly\simile
simile\paragone
similitude\assomiglianza
simmer\bollore
simpatico\simpatico
simper\sciocco
simple\semplice
simple minded\ingenuo
simpleminded\semplice
simplemindedness\semplicità
simpleness\semplicità
simpletons\pennellare
simplicity\semplicità
simplification\semplificazione
simplify\semplificare
simply\semplice
simular\simile
simulate\simulare, simulare
simulated\artefatto
simultaneous\simultaneo
simultaneously\simultaneo
sin\peccato
since\da, da allora, perchè
since then\da allora
sincere\sincero
sincerely\umilissimo, sincera
sinful\peccaminoso
sing\cantare
singable\cantàbile
singer\cantante
singing\canto
singings\canti
single\nubile, singolo
single lane\a senso unico
single phase\monofase
single room\càmera sìngola
single ticket\biglietto sémplice
singled\divorziato
singly\singolo
sings\canta
singular\singolare
singularness\stranezza
sinister\nefasto
sink\abbassarsi, catinella, abbassarsi, lavello
sinking\affondamento
sinks\abbassa
sinned\peccato
sinner\peccatore
sins\peccati
sinuous\contorto
sip\sorso
sir\signore
sire\testimoniare
sirloin\lonza
sissy\effeminato
sister\sorella
sister in law\cognata
sit\star seduto
sit down\accomodarsi
site\posto, circostanza
site of crime\luogo del fatto
sits\siede
sitting\seduto
sitting room\salotto
situate\allineare, mettere, mettere
situated\posto
situation\situazione, posizione, circostanza
six\sei
sixfold\sestuplo
sixteen\sedici
sixteenth\sedicesimo, sedicesima
sixth\sesto, sesta
sixty\sessanta
size\grossezza
size of shoe\numero di scarpa
sizzle\grillare
skating\pattinaggio artistico
skating ring\pista di ghiaccio
skating rink\pista di ghiaccio
skein\capestro
skeins\capestri
skeleton\scheletro
skeletons\scheletri
skepticalness\scetticismo
skepticism\scetticismo
sketch\abbozzo, abbozzare
sketchily\volatile, abbozzaticcio, superficiale
sketchiness\poca chiarezza
sketchy\torbido
skews\storto
ski\sci
skid\discesa a valle, avventare
skiful\esperto
skilful\apprèndere, azzeccato
-skilfull\apprèndere
skill\sorte, disinvoltura
skilled\versato
skilled worker\operaio specializzato
skillet\tegame
skillful\lesto, sveglio, esperto
skillfulness\disinvoltura
skimp\lesinare
skimpiest\piccolissimo
skimpily\scarso
skimpiness\strettezza
skimpy\scarso
skin\epidèrmide, epidermide
skinny\scremato, magro, secco
skins\pelli, pelli
skip\saltellare, lancio
skipper\marinaio
skirt\gonna
skirting board\battiscopa
skit\satira
skittle\birillo
skittle alley\gioco dei birilli
skivvy\biancherìa ìntima
skulker\lima sorda
skunk\puzzola
sky\cielo
skylark\lodola
skyrocket\razzo
skyscraper\grattacielo, grattacielo
skyscrapers\grattacielo
slab\frantumare
slack\lasco, floscio
slack joint\contatto lasco
slack period\ristagno
slacken\rilassare, rilassare
slackens\rilassato
slacker\scansafatiche
slacks\pantaloni
slake\allattamento
slam\sbattere
slammed\sbattuto
slander\calunniare
slanderer\calunniatore
slanderous\calunnioso
slanderousness\calunnia
slant\declinazione
slanting\obliquo, obliquo
slantingly\obliqua
slap\picchiare, ceffone
slap in the face\ceffone
slaphappy\avventurato
slaps in the face\schiaffeggiare
slash\taglio
slat\picchiare
slate\ardesia, abusare
slatted\picchiai
slattern\donnaccia
slaughter\macellare
slaughter cattle\bestiame da macello
slaughter house\mattatoio
slaughtered\macellato
slaughterhouse\mattatoio
slave\schiava, schiavo
slave trader\negriere
slavered\sbavato
slavery\schiavitù
slay\uccidere
slayer\strangolatore, uccisore
slays\uccide
sleazily\sciatto
sleazy\untuoso
sleek\netto
sleekly\liscia
sleep\dormire, sonno, dormicchiare
sleeper\vagone letto
sleeping car\vagone letto
sleeping pill\sonnifero
sleepless\insonne
sleeplessness\insonnia
sleeps\dorme
sleeve\manica
sleight\disinvoltura
slender\esile, snello, snello
slice\tagliare, pezzo, fetta
sliced\taglio
slicing\tagliente
slick\brunire
slicker\imbroglione
slickness\disinvoltura
slide\spingere
slides\spinge
sliding roof\tetto scorrevole
sliding window\finestra scorrevole
slight\magro, scarso, oltraggiare, labkle
slightness\esiguità
slim\togliere, snello
slime\muco
sling\avventare
slingshot\fionda
slingshots\avventare
slink\strisciare
slinks\striscia
slip\scivolare, ordito, vizio
slip of paper\ordito
slipcover\involucro protettivo
slipper\pantofola, ciabatta
slippery\lubrico
slippy\agile
slipshod\sciatto
slipup\vizio
slithery\lubrico
slits\fessure
sliver\scheggiare
slob\donnaccia, balordo
slobber\poltiglia
slobbery\sdolcinato
slogs\bastonato
sloop\scialuppa
slope\discesa, pendio, pista
sloped\obliquo
sloping\obliquo
slopingly\obliquo
sloppiness\sciatteria
sloppy\sciatto
slosh\spruzzare
slot\fèndere
sloth\pigrizia
slothful\pigro
slothfulness\pigrizia
slouchily\strascicato
slouchy\strascicato
slow\fiacco, guardingo, lungo
slow down\tardare, allentare
slow match\miccia
slow motion\rallentatore
slow motion apparatur\rallentatore
slow worm\orbettino
slowdown\allentare
slower\più lento
slowly\placido, lungo, lenta
slowness\lentezza
slue\voltare
slug\picchiare, lumaca
sluggard\pigro
slugged\picchiai
sluice\cateratta, emanare
slum\catapecchia
slumber\dormicchiare, sopore
slumbered\pisolato
slumberous\assonnato
slumberously\assonnato
slump\crollo dei prezzi
slunk\strisciato
slur\calunniare
slush\neve bagnata
slut\donnaccia
sluttish\sciatto
sly\furbo
slyness\astuzia
slynesses\astuzia
smack\schioccare un bacio
small\piccolo, minuscolo
small blister\vescicola
small bottle\flacone
small box\cassettino
small car\vetturetta
small crumb\briciola
small house\casetta
small intestine\intestino
small letter\lettera minuscola
small parcel\pacchetto
small piece\pezzettino
small ship\navicella
small wheel\rotellina
smallpox\vaioloso
smart\furbo, stile
smartly\furbo
smartness\scaltrezza
smash\schiacciare
smashed\sfracellato
smashup\fallimento
smear\ingrassare
smeary\untuoso
smell\profumo, odorato, odoro
smelling\odorifero
smells\profuma, odora
smelly\muffaticcio
smelt\fusione
smelting\fondente
smile\sorridere
smile at\sorridere
smirkingly\leccato
smith\fabbro
smithereens\brandello
smithies\forgiare
smithy\fucina
smock\camice
smoke\fumo, fumare
smoked\fumato, affumicato
smoker\fumatore
smokers\fumatore
smokestack\fumaiuolo
smokily\fumoso
smoking\affumicare
smooch\pomiciare
smooth\levigare, netto
smoothed\lisciato
smoothly\equilibrato
smother\affogare
smudge\insudiciare
smudginess\lordura
smudgy\untuoso
smuggle\contrabbandare
smuggled\contrabbandato
smuggler\contrabbandiere
smuggling\contrabbando
smutty\fangoso
snack\spuntino
snag\nocchio
snaggy\nocchieruto
snail\chiocciola
snake\serpente
snake bite\morso di serpe
snake venom\veleno di serpente
snaky\perfido
snap\dipinto, accertare, accettazione
snapping\accertamento
snappish\dentellato
snaps\acchiappa
snare\accalappiare, tranello
snared\acchiappai
snares\acchiappa
snarl\ringhiare
snarling\ringhiante
snatched up\accogliticcio
sneak\strisciare
sneerer\beffatore
sneeze\starnutire
snicker\ridacchiare
snickering\ridacchiante
sniff\sbuffare
sniffy\sdegnoso, muffaticcio
snigger\ridacchiare, ghigno
snipe\beccaccia
sniper\bersagliere
snivel\singhiozzare
snobbish\borioso
snooper\ficcanaso
snoopy\curioso
snoozing\sonnecchiante
snore\russare
snort\sbuffare
snot\moccio
snottily\moccioso
snottiness\vigliaccheria
snotty\moccioso
snout\ceffo
snow\nevicare, neve
snow chains\catene da neve
snow covered\nevoso
snow flake\fiocco di neve
snow flurry\nevischio
snow plough\spazzaneve
snow storm\tempesta di neve
snow white\niveo
snowball\palla di neve
snowballing\accelerativo
snowcap\colibri
snowcapped\nevoso
snowfall\nevata
snowflake\fiocco di neve
snowily\nevoso
snowing\nevicare
snowman\pupazzo di neve
snowstorm\tempesta di neve
snowy\nevoso
snuff\raffreddore
snuffler\ficcanaso
snuggle\accarezzare
snugly\accogliente
so\orbene, cosi, cosiffatto
so far\finora
so long\arrivederci
soak\ammollare
soaker\sbevazzatore
soap\sapone
soap bubble\bolla di sapone
soaps\insaponare
soapstone\lardite
soar\esalare
soaring\ascendente
sob\singhiozzare
sober\digiuno
soberingly\realistico
soberly\digiuno
sobriquet\nomignolo
soccer\pallone
sociable\socievole
sociably\socievole
social\sociale, socievole
society\comitiva
sock\picchiare, calzetta
socked\picchiai
socket\legatura, presa di corrente
sofa\sofà
soft\placido, soffice, dolce
soft boiled\bazzotto
soft parts\parti molli
softies\imbecille
softly\soffice
softness\flessibilità, dolcezza
soggily\umido
sogginess\umidità
soggy\umido
soigne\coltivare
soil\terra, insudiciare, suolo
soils\insudiciato
sojourner\ospite
sojourners\ospiti
solace\consolare
solaces\consola
solar eclipse\eclissi solare
solar energy\energia solare
solar system\sistema solare
sold\vende
solder\ferruminare
solder joint\saldatura
solderable\saldabile
soldering iron\saldatoio
soldier\soldato
sole\solo, suola, sogliola
sole distributors\esclusività di spaccio
solemn\solenne
solemnity\solennità
solemnness\solennità
solenoid\bobina
solicitor\legale
solid\compatto, fisso, solido, attendìbile
solidness\fermezza
solitary\singolo, solo
soloist\solista
soluble\solubile
solution\dissoluzione
solve\sciogliere, chiarire
solvent\solvente
somber\fosco
some\qualche, alquanti, qualcosa, parecchio
somebody\qualcheduno, alcuno
someplace\in qualche luogo
somersault\salto
something\qualcosa, qualcosa
sometimes\talvolta
somewhere\in qualche luogo
son\figlio, figliuolo
son-in-law\gènero
sonata\sonata
song\canzone
soon\prossimamente
soothe\calmare
soothsayer\chiromante
sophomore\allievo
soprano\soprano
sorb\sorbo
sore throat\angina
sorenesses\dolere
sorrow\pena, fastidio
sorrowful\afflitto, disgraziato
sorry\scusa, afflitto, purtroppo
sort\fare, sorta, razza, assortire
sortie\perdita
sorties\perdite
sot\sbevazzatore
sound\sano, solido, suono, secondo, rumore, suono
sound-proof\isolamento acustico
soup\minestra
sour\acido
source\sorgente, origine, fonte
south\ostro, sud
southwester\libeccio
souvenir\ricordo
Soviet Union\unione Sovietica
sow\seminare
sown\seminato
sox\calzetta
spa\località balneare
space\spazio, buca
spaceship\veicolo spaziale
spacious\ampio
spade\vanga, badile
Spain\Spagna
spangle\fronzoli
Spaniard\Spagnuolo
spare\tempo libero
spare part\pezzo di ricambio
spark\trasmettere alla radio
sparkle\sfavillare
sparklers\diamanti
sparkling wine\spumante
sparrow\passero, astore
spasm\spasma
spatula\spatola
speak\discorrere, favellare
speak to\rivolgere la parola
speaker\altoparlante
speaking\parla
spear\lancia
special field\ramo di competenza
special language\linguaggio tecnico
special offer\offerta speciale
specialist\specialista, specialista
specialist shop\negozio specializzato
specialize\specializzare
species\fare
specimen\esemplare
spectacles\occhiali, lente
spectator\spettatore
spectators\spettatore
speech\idioma, orazione
speed\numero dei giri, volare, andatura, velocità
speed limit\limite di velocità
speed up\accelerare
spell\compitare
spend\emettere, passare, largire
sperm\sperma
spice\aromatizzare, spezie
spicule\spilla
spider\ragno
spiders\filare
spill\versamtento
spinach\spinaci, spinacci
spinner\mattoide
spirit\mente
spirit level\livella
spiritlessness\insulsaggine
spirits\acquavite
spit\spiedo, saliva
spite\nonostante, rancore
spitefulness\malignità
splendit\brillante
splendor\magnificenza
split\fèndere
spoil\viziare
spoils\bottino
spoke\raggio
spokeswoman\oratrice
sponge\spugna
spongy\spugnoso
spontaneous\spontaneo
spook\apparizione
spoon\cucchiaio
spoor\traccia
sports\sport
sports car\vettura sportiva
sports ground\campo sportivo
sports shirt\camicia sportiva
sportsman\sportivo
spot\posto, macchia
sprawl\espandersi
spray\raggio, nebulizzare
spread\espandersi, verniciare, spargere
spreads\allarghi
spring\piuma, sorgente, abbrivo, saltare, slancio, fonte
springiness\elasticità
springtime\primavera
spur\sprone
spurt\spruzzare
spy\spia
spying\spionaggio
squabblers\attaccabriche
square\quadrangolo, quadrato, quadro, spigoloso, piazza
square metre\metro quadrato
squash\succo
squeal\tradire
squeeze\premere
squid\calamaro
squint\strabico
squirrel\scoiattolo
squirt\spruzzare
stable\stanla, stalla
stable in value\di valore fisso
stadium\stadio
staff\personale, redazione
staffer\impiegato
stage\fase, tribuna, scena, piedistallo
staggers\oscilla
stain\macchia, insudiciare, imbrattare
staircase\scala
stairs\scala
stake\stanga, missione
stall\posizione, stalla
stamp\bollo, bollare, francobollo
stand\stare, granaio, continuare
standalone\indipendente
standing\in piedi
standing order\incarico permanente
staple\affissare
star\stella, vedette
stardom\vanto
starling\vedette
stars\stelle
start\esordire, decollare, principio, comincio, inizio
start up\decollare
starter\avviamento
state\esporre, posizione, asserzioni
statedly\stabilito
stately\prestante
statement\asserzione, estratto di conto, costatazione
statue\statua
stay\soggiorno
stay here\rimanere
stays\rimane, stà
steady\continuo, proporzionato
steak\bistecca
steal\sotrarre, rubare
steam\vapore
steamer\vapore
steamership\vapore
steel\acciao, acciaio
steelwork\acciaieria
steep\erto
steer\dirigere
steering wheel\volante
stem\tronco, sollevare
stench\lezzo
step\passo, procedere, gradino
step by step\graduale
stern\poppa
stewards\fattore
stewed fruit\composta
stick\incollare, bastone, ficcare
sticky\glutinoso
stiff\rigido
still\pari, però, calmo, ancora
stillborn\nato morto
stimulate\eccitare, esacerbare
sting\colpo, pungere
stingy\avareggiare
stink\puzzare, lezzo
stipulate\fissare
stir\muovere, commuòvere
stock\immagazzinare
Stock Exchange\borsellino
stockfish\baccalà
stocking\calza, calza maglia
stole\acciaio
stomach\ventricolo
stomp\beccheggiare
stone\sasso, pierra
stoniness\durezza
stool\sgabello
stop\ostruire, alt, fermare, fermarsi, fermata, finire
storage\immagazzinaggio, deposito, immagazzinamento
storage battery\accumulatore
store\immagazzinare, campeggio, immagazzinare
storefront\facciata
storing\accampato
stork\cicogna
storm\tempesta, burrasca
story\farsa, rapporto, fiaba, racconto, storia
storybook\libro di fiabe
stove\stufa
strabismus\strabico
straight\pari
straight away\subito
straighten out\drizzare
strain\aggravio, fatica
strait\stretto
strange\strano, caratteristico, straniero, estroso
strangling\strozzare
strap\cinghia
straw\paglia
strawbeery\fràgola
strawberry\fragola, fràgola
stream\corrente, ruscello
streamline\modernizzare
street\via, contrada
streets\strade
strengh\forza, potenza
strenght\forza
strength\forza, vigoria
strengthen\amplificare
stress\accentuare, accento
stretch\estendersi, stirato, espandere, stendere
stretcher\bara
strews\sparge
strict\severo
stride\passo
stridently\tagliente
strike\affìggere, sciopero, picchiare, scioperare
striked\scioperai
string\spago, cordicella
strip\lista, denudare, smontare
striped\zebrato
stroke\accarezzare, riga
stroll\passeggiare
strong\poderoso, benportante
strongest\fortissima
struggle\combattimento
student\studente
study\fare gli studi superiori
stuff\stoffa, materiale
stuffed\farcito
stuffing\otturazione
stuffs\inzeppa
stuffy\muffaticcio
stumble\incespicare
stumps\sbalordito
stun\assordare
stupefy\ottundere
stupefying\assordante
stupid\stupido, idiotico, balordo
stupid thing\ocaggine
stupide\stupido
stupidity\ocaggine
stupor\stupirsi
sturdy\valido
stutter\tartagliare
sty\stalla
style\taglio, eloquio
subject\oggetti, casella, assoggettato, soggetto, tema
subject matter\tema
subjected\assoggetai
subjects\assogetta
subjugating\vincente
sublime\elevato
submarine\sommergibile
submission\soggiogamento
submit\sottoporre, soggiogare
subscribe\abbonarsi
subscriber\partecipante, abbonato
subscription\abbonamento
subsidy\sovvenzione
subsist\esistere
subsribe\firmare
substance\sostanza
substandard\di valore scadente
substitute\facente funzione
substitution\indennizzo
subsume\prendere
subterfuge\scusa
subtle\astuto, perspicace
subtract\falcidiare
suburb\sobborgo
suburbia\borgo
subverts\rovinato
succeed\seguire, riuscire
success\successo
successful\correttamente
successfully\correttamente
successive\consecutivo
successor\seguace
succumb\soccombere
such\cosiffatto
such as\come
suck\succhiare, succhiare
suck in\aspirare, succhiare
suckle\allattare
suddenly\improvvisamente
suffer\soffrire, patire
suffering\soffrire
suffice\bastare
sufficiently\abbastanza
suffix\aggiunta
suffocate\affogare
suffocation\affogare
sugar\zucchero
sugar bowl\zuccheriera
suggestion\appoggiatura
suggestions\proposte
suicide\suicidio
suit\procedimento, vestito
suitable\appropriato
suitcase\valigia
suitor\pretendente
sulfurous\fervoroso
sulk\ammusare
sulkiness\capriccio
sum up\addizionare
summary\raccolta
summation\addizione
summer\estate, estivo
summer holidays\vacanze estive
summerly\estivo
summit\cùlmine
summon\chiamare
summoner\fattorino
sumptuous\fastoso, lussuoso
sun\sole
sunbathing\bagno di sole
sunburned\abbronzito
Sunday\doménica, domenica
sunflower\elianto
sunny\soleggiato
sunstroke\insolazione
super\favolosamente
supercharger\mantice
supercilious\orgoglioso
superficial\superficiale
superior\migliore, più alto, superiore
superlarge\grossissimo
supernal\ultraterreno
supernatural\ultraterreno
supervise\vigilare
supervision\supervisione
supplement\completamento, integrare
supplier\fornitore
supply\fornitura, rifornimento, provvedere, fornire
support\sostenere, appogiare, appoggio, poggiare, sostegno
supporte\fiancheggiare
supposable\supposto
suppose\assùmere, supporre
supposition\supposizione
suppository\ugola
suppression\vuoto di cassa
sure\sicuramente
sureness\certezza
surer\più sicuro
surface\superficie, superficie
surge\frangenti
surgeon\chirurgo
surgery\chirurgìa, pratica
surmount\eccedere, eccedere
surprise\sorprendere, sorprendere
surprised\sorprende, sorprende
surprising\strano, sorprendente
surrender\consegnare
surround\circondare
surroundings\dintorni
survival\sopportare, sopportare
survive\sopravvivere
survives\sopravvive
suspect\dubitare, supporre, presentire
suspence\rinvio
suspended\interrotto
suspension\molleggio
suspicion\sospetto, ombrosità
suspicious\sospetto, diffidgnte
sustain\poggiare, appogiare, sostenere
swabian\svevo
swallow\rondine, ingoio, divorare
swamp\palude
swan\cigno
swarthy\farsi scuro
swatter\ammazzamosche
sweat\sudare, sudore
sweater\maglia, pullover
Swede\Svedese
Sweden\Svezia
sweep\scopare, spazzare, ribaltabile
sweet\caramella, dolce, dessert, abboccato
sweetness\dolciume
sweets\dolci
swell\enfiare, frangenti
swiftly\presto
swill\risciacquare
swim\nuotare, fanno il bagno
swimmer\nuoto
swimming\nuotare, fanno il bagno
swimming-pool\piscina
swimming trunks\calzoncini da bagno
swims\nuota
swindle\capogiro, marioleria
swindler\lestofante
swing\altalena, brandire
swings\dondolare
Swiss\Svizzero
switch\interruttore
switch off\spegnere, posare, estinguere
switch on\accèndere
Switzerland\Svizzera
swollen\gonfiezza
swoops\acchiappa
sword\acciaio
syllable\sillaba
symbol\simbolo
symbolic\allegorico
sympathy\simpatia, simpatia
symphony\sinfonia
synchronize\doppiare
syntactic error\vizio di forma
syphilis\lue
syringe\siringa
system\sistema, circùito
tab stop\tabulatore
table\elenco, tàvola, tavola, tabella, tavolo
table wine\vino da tàvola
tablecloth\tovaglia
tachometers\contagiri
tact\tatto
tactic\tattica
tactical\tàttica
tactics\tattica
tactility\tangibilità
tacts\tempi
tag\scudo, cartellino
taifun\ciclone
tail\coda
tailor\sarto
take\acchiappare, intervenire energicamente, accettare
take a photo\fotografare
take advantage of\abusare
take along\prendere
take away\discostare, togliere
take care\precauzione
take care of\evàdere
take from\togliere
take in\accogliere, accettare
take in tow\trascinare
take into account\accreditare
take off\decollare
take out\cavare
take over\mi incarico, mi incarico
take part\partecipare
take place\passare, avere luogo
take turns\alternare
taken\occupato
taker\acquirente
taking over\mi incarico, mi incarico
takingback\ritiro
tale\racconto, storia, fiaba
talent\talento
talk\favellare, discorso, discorrere, collòquio
talk over\trattare
talkative\verboso
tall\grande, elevato
tan\abbrunire
tandem\di seguito
tangent\toccante
tank\corazza, serbatoio
tankard\orcia
tankards\orci
tanker\nave cisterna
tap\rubinetto, rubinetto
tape\fettuccia, nastro magnetico
tapeworm\verme solitario
tappets\pollice
tar\catrame
target\traguardo
tariff\addaziare, tariffa
tart\torta, acido
task\lavoro, occupare, quesito
taste\costare, gustare
tastelessly\insipido
tasty\gustoso
tattle\pettegolare
tattoo\tatuaggio, tatuare
taught\erudito
tax\tassa, daziare, erariale
tax-free\libero da imposte
taxi\tassì
taxi-driver\tassista
taxicab\tassì
taylors\sarto
tea\tè
teach\istruire, rendere edotto
teaching\insegnamento
team\equipaggio
tear\crepatura, lacrima
teardrops\lacrimale
tearful\piagnucoloso
tease\irritare, punzecchiare
teaspoonful\cucchiaino
technical\tecnico
technique\tecnica
technology\tecnica, tecnologia
teenage\giovanile
teetotaller\astinente
telephone\telefono
telephone number\numero telefonico
telephone subscriber\abbonato
telephonically\telefonico
telescope\telescopio
televise\cèdere, cèdere
television\televisione
tell\narrare
tell off\inveire
teller\cassiere
telly\televisione
temper\temperamento, furia
temperate\moderato
temperature\febbre, temperatura
tempest\tempesta
template\sagoma
temple\tempia
tempting\allettante
tempts\traviato
ten\dieci
tenant\noleggiatore
tend\piegare, coltivare
tendency\declinazione
tender\dolce
tenderly\esile
tenderness\affettuosità
tennis court\campo di tennis
tense\in tensione
tension\voltaggio
tergiversate\disdirsi
tergiversation\sotterfugio
term\espressione, nozione, vocàbolo
terminal\capolìnea, entro la data fissata
termination\ultimazione
terminus\capolìnea
terrain\terreno
terrestrial\terreno
terrible\tremendo, terribile
terrified\spaventato
terrorist\terrorista
terrorize\terrorizzare
test\prova, esamino, provare, prova
test drive\giro di prova
testicle\coglione
testicles\coglione
testify\asserzioni, attestare
tete a tete\famigliare
text\testo
texts\testi
textual\letterale
texture\ordito
thank\ringraziare, ringraziare
thankful\grato
thankfulness\gratitudine
thankless\ingrato
thanklessness\ingratitudine
thanks\ringraziato, grazie
thanks to\grazie
that\quei, quei, questi, quite, perchè, che, di allora
that is\cioè a dire
that much\tanto
that one\là, il
that way\cosi
thats why\per questo
thaw\sciogliere, disgelare
the\il, il, della, là
the bereaved\sopravvissuto
the book\il libro
the day after tomorrow\dopodomani, posdomani, dopodomani
the day before yesterday\avantieri
the like\ugualmente
the one\quello che
the public\pubblico
the same\il medesimo
theatre\teatro
theatrics\giuochi
thee\te
theft\ladrocinio
thefts\furti
their\di ella
theirs\di ella
them\loro, essi
theme\oggetti, tema
then\allora, conseguentemente
thenceforth\dà là
theoretic\accademicamente
theoretical\accademicamente
theory\gamma
there\là, costì, quite, morto
thereafter\dopo questo
thereby\presso
therefor\per questo
therefore\quindi, per questo, conseguentemente
therein\in ciò
therewith\onde
thermal\caldo
thermal unit\unità di calore
thermally\calore
thermionic\torrido
these\quei, questi
these days\oggigiorno
they\essi
thick\grosso, impermabile
thick skinned\insensibile
thicket\folto
thickhead\allocco
thickly\grosso
thickness\grossezza, vigoria
thickset\impermabile
thieve\rubare
thieved\acciaio
thieveries\ladri
thievery\ladrocinio
thieves\ruba, ladri
thigh\femorale, fèmore
thimble\digitale
thin\magro
thing\materia
things\cose, cose
think\pensare, riflettere, crédere, supporre
think about\riflettere
think ahead\anticipare
think back\ripensare
thinkable\figuràbile
thinker\filosofo
thinking\pensante
thinks\pensa
thinly\magro
thins\diluito
third\terza, terzo, terzo
third party\terza
third party insurance\assicurazione di responsabilit
thirds\dividere in tre parti
thirst\sete
thirst for revenge\brama di vendetta
thirsty\assetato
thirteen\tredici
thirteenth\tredicesimo
thirtieth\trentesimo
thirty\trenta
this\questi, questo, ciò, il
this evening\stasera
this morning\stamattina
this one\questi
this time\questa volta
thistle\cardo
thisway\qua
thither\là
tho\sebbene
thorax\cassa toracica
thorn\spina
thorns\spine
thorough\completo, verdastro, accurato
thoroughly\verdastro
those\questi, quei, quei, questo, questi
thou\tu
though\sebbene
thought\pensato, pensiero
thought about\pensato
thoughtful\pensieroso, guardingo
thoughts\pensai
thousand\mille
thrash\gettare a terra
thrashes\bastonato
thrashing\svolazzare, sovraccarico
thrashings\trebbiare, bruciacchiare
thread\filamento
thready\fibroso
threat\minaccia
threaten\minacciare
threatening\minacciante
threatening letter\lettera minatoria
threateningly\minacciante
three\tre
three coloured\tricolore
three figure\a tre cifre
three months\trimestre
three phase\trifase
three wheeler\triciclo
threefold\triplo
threepart\tripartito
threescore\sessanta
thresh\trebbiare
threshes\percuote
threshold\soglia
thrice\trevolte
thrift\economìa
thriftlessness\dissipazione
thrifty\econòmico
thrill\emozionare
thrilling\emozionante
thrills\emozionato
thrive\prosperare
throaty\scabro
throb\battere
thrombose\trombosi
thrombosis\trombosi
throne\trono
throng\affluenza
throttle\troncare, strozzare
through\per mezzo di ciò
through and through\in tutto e per tutto
throw\tiro, alzata, gettare
throw in\obiettare
throwaway\buttar via
throwdown\gettare a terra
thrower\lanciatore
thrown\buttato, gettato
throws\getti, getta
thrum\tinntinnare
thrush\tordo
thrushes\strozzare
thrust\urtare
thrusts\urti
thruway\autostrada
thud\rimbombare
thug\facinoroso
thumb\pollice
thumbs\pollice
thunder\tuono
thunderbolt\fulmine
thunderclap\colpo di tuono
thunderstorm\temporale, maltempo
thursday\giovedì
Thursday\giovedí
thus\per mezzo di ciò, cosi, quindi, orbene
thwart\frastornare
thwarted\frastornare
thwarts\sventato
thy\tua
thyme\timo
thyroid\ghiandola tiroide
tibia\stinco
tic\ticchio
tick\segnare a croce
tick off\sganciare, segnare a croce
ticket\sorte, biglietto, biglietto
ticket collector\bigliettaio
ticket office\biglietterià
ticketed\punito
tickle\solleticare
tickled\solleticato
tickler\taccuino
ticklish\solleticoso
tidal\alta marea
tidbit\ghiottonerìa
tide\marea, bassa
tideland\bassofondo
tides\marea
tidiness\ordine
tidings\nuova
tidy\lindo, ammettere, ordinato
tie\legamento, legare, legare saldamente, cravatta
tie up\legare
tier\fila
tiger\tigre
tigerish\selvaggio
tigerishly\selvaggia
tight\teso, scarso, fisso, impermabile
tighten\teso, astringere, fisso
tightrope\cavo
tightrope walker\equilibrista
tightropes\corde
tights\calza maglia
tile\mattonella
tiler\copritetto
tiling\coprente
till\forziere, arare
till now\finora
tills\coltivato
tilt\ribaltabile, piegare
timbal\timpano
timber\legno, legname da costruzione
time\tempo, epoca, cronologico, marchio, lezione, tatto
time delay\ritardo
time lag\ritardo
time lapse\accelleratore
time lapse camera\accelleratore
time of probation\tirocinio
time saving\risparmio di tempo, che risparmia tempo
timekeeper\cronometro
timeliness\puntualità
timely\conforme al tempo, tempestivo
timer\cronometro
times\tempi
timesaving\che risparmia tempo
timeserver\opportunista
timeserving\opportunistico
timeworn\arcàico
timid\timoroso
timide\timido
timidity\timorosità
timidly\angoscioso
timorous\timoroso
tin\latta, apriscàtole, barattolo
tin opener\apriscàtole
tin plate\latta
tincturing\colorante
ting\sonare il campanello
tinge\suonare
tingle\prurire
tingling\arzillo
tinkle\sonare il campanello
tinkling\scampanellio
tinned food\conserva
tinplate\latta bianca
tint\tinta, tinta, colorazione
tinting\colorante
tintinnabulation\suonare
tiny\minuscolo
tip\suggerimento, al punto più estremo, riferimento
tip over\mozzicone
tipped over\ribaltato
tipper\vagoncino ribaltabile
tipping wagon\vagoncino ribaltabile
tippler\sbevazzatore
tipsily\malfermo
tiptoe\strisciare
tiptoes\striscia
tiptop\perfetto
tire\faticare
tired\stracco
tiredness\sfinitezza
tires\cerchiatura
tiring\faticoso
tissue\ordito
tissue handkerchief\fazzoletto di carta
tissue paper\velina
titillate\solleticare
titivate\agghindare
titivation\abbellimento
title\titolo, titolo, titolo, nominale
titled\nominai
titles\nominale
titling\denominazione
titmouse\cincia
titter\ridacchiare
tittering\ridacchiante
titular\titolo
to\a tavola, in
to-day\oggi
to abuse\abusare
to appear\emersione
to appease\calmare
to assemble\montare, montare, compilare
to assume\supporre, lasciare, assùmere
to attract\vestire
to be\sua
to be ashamed\vergognarsi
to be at\sua
to be imminent\sovrastare
to be in store\sovrastare
to bear\esercitare
to beep\zirlare
to broadcast\cèdere, mando, cèdere
to cancel\verniciare
to cause\causo
to claim\affermare, pretendere
to clash\collidere
to compete\concorrere
to conjure up\evocare
to consider\considerare
to consume\esaurire
to create\produrre
to deliver\fornire
to detect\scoprire
to develop\sviluppare
to deviate\declinare
to device\sviluppare
to drone\ronzare, rimbombare
to embark\imbarcare
to employ\occupare
to expect\attendere
to expose\comprométtere
to fizzle\insabbiato
to flare up\effervescenza
to force\obbligare
to give notice of depature\notificare la partenza
to impend\sovrastare
to increase\aumentare, accrèscere
to launch\varare, decollare
to me\me
to my\della mia
to offer\offerto, licitare
to predict\predire, vaticinare
to present\regalare
to press\spingere
to produce\fabbricare, produrre
to promise\promettere
to provide\fornire, licitare
to raise\sollevare un pò
to realise\realizzare
to require\necessitare
to reveal\asserzioni, svelare
to rush\smaniare, spingere
to shatter\frantumare
to slash\stracciare
to some extent\in certo qual modo
to spoil\viziare
to subject\soggiogare
to such an extent\talmente
to support\fiancheggiare, promuovere
to suppose\assùmere
to survive\sopportare, sopravvivere, sopportare
to suspect\sospettare, supporre
to the effect that\mirante a
to the right\a destra
to transmit\mando
to treat\considerare
toad\rospo
toadies\leccapiedi
toady\leccapiedi
toast\brindisi, brindare
tobacco\tabacco
tobacco pouch\borsa del tabacco
tobacconist's\tabaccheria
today\oggi
toddle\trotterellare
toddy\grog
toes\dita dei piedi
tog\vestire
together\contemporaneamente, unitamente, insieme, comune
together with\velluto
toggle\bavaglio, verificare
toiled\tormentò
toiler\lavorante
toilet\gabinetto, abbigliatura
toilet paper\carta igiènica
toils\tormenta
toilsome\faticoso
tolerance\tolleranza
tolerate\amméttere, tollerare, sopportare
tolerated\ammesso
tolerates\sopporta
tolerating\indulgente
toleration\sopportazione
tollable\soggetto a dogana
tolled\picchiai
tolling\convincente
tomato\pomodoro
tomb\sepolcro
tomboyish\selvaggio
tombstone\lapide
tomfoolery\ocaggine
tomorrow\domani, oriente
tomorrow morning\domattina
tomtit\cincia
tone\suono
toneless\afono
tones\voce, pronuncia
tongue\idioma, lingua
tongues\linguale
tonicity\elasticità
toning bath\viraggio
tonque\lingua
tony\stile
too\anche, a tavola, troppo, oltremodo
too expensive\impagabile
too little\troppo poco
too much\troppo
took\prese
took over\mi incaricai, mi incaricai
toolmaker\attrezzista
tooth\dente
tooth decay\carie
toothbrush\spazzolino da denti
toothless\sdentata, sdentato
toothpaste\dentifricio
toothpick\stuzzicadenti
toothsome\gustoso
top\principio, cùlmine, sù, fermatura, cappotta
top floor\soffitta
topic\volume, tema
topical\conforme al tempo
topmast\severità
topmost\colonello
topples\cade
torch\fiàccola
torches\fiaccole
tormented\inquieto
torn off\stracciato
torn up\stracciato
torpedo boat\lanciasiluri
torpid\assordato
torpidity\anestesia
torpidness\accidia
torridness\ustione
tortoise\tartaruga
torture\tortura, tormento
torture chamber\stanza di tortura
torus\circolo
toss\avventare
total\intero, completo, tutta
total weight\peso complessivo
totaled\contai
totality\complesso
totally\completo
totals\conta
tots\conta
totter\barcollare
touch\affisso, inpugnare, toccare
touchdown\ottenere
touched\afferrato
touchiness\suscettibilità
touching\afferrante
touchy\irritabile, sensibile
tough\ostinato
tougher\più duro
toughing\commovente
toughly\solido
toughs\lestofante
tour\circolazione, giro turistico, giro turìstico
tourism\escursionismo
tourist\escursionista, escursionista
tourist class\classe turìstica
tourist party\gruppo turìstico
tourist traffic\movimento turistico
tournament\competizione, giostra
tourney\giostra
tousles\arruffato
tout\arruolare
tow\trascinare, trascinare, estrassi
tow off\trascinare
tow rope\cavo di rimorchio
toward\arrendevole
towards\in, a tavola, inverso
towel\asciugamano
toweled\asciugato
towels\asciugamani
tower\torre
towering\poderoso
town\città
town-hall\municipio
town-planing\urbanistica
town council\assessore municipale
townplan\piantina
township\congreguari
towrope\cavo di rimorchio
toxic\virulento
toxin\veleno
toxins\veleni
toy\giocàttolo
toyed\giocai
track\binario
track hound\segugio
tracking\inseguire
trackless\senza traccia
tract\territorio
tractive\boccata
trade\impresa, arte, ramo di commercio, commercio
trade union\sindacato
trade unionist\sindacalista
tradeoff\cambio
tradeoffs\scambio
tradesman\omo, signora
tradeunion\sindacato
tradeunionist\sindacalista
tradition\tradizione, tradizione
traduce\calunniare
traffic\traffico
traffic light\semaforo
traffic lights\semaforo, semafori, semaforo
traffic sign\cartello stradale
trafficking\commercio
tragedy\tragedia, tragedia
tragic\tragico
trailer\nudista
train\ammaestrare, educare, allenamento, ferroviario
train of thought\ragionamento
trained\esercitato
trainee\apprendista
trainer\allenatore
trainers\allenatore
training\istruzione, educazione
training ship\nave scuola
trains\treni
traipse\strascicare
tram\tram
tramp\vagabondaggio
transaction\evasione
transcendence\elevatezza
transfer\trasferire, imbarazzato, cessione, trasportare
transform\convertire, commutare, alterare
transient\corruttìbile
transit\tragitto
translate\tradurre, tradurre
translation\traduzione, traduzione
transmarine\oltremarino, oltremarino
transmission\spedizione
transmit\cèdere, cèdere
transmitter\trasmettitore
transparent\vaporoso
transplant\trapiantare
transport\avanzamento, trasporto, trasportare
transubstantiate\commutare
transversal\obliquo
trap\tranello
trascan\secchio delle immondizie
trashcan\cestino
travel\andara
travel agency\ufficio viaggi
travel office\ufficio viaggi
traveler\viaggiatore
traveller\viaggiatore, viaggiatore
travelling bag\borsa da viaggio
travelling expenses\spese di viaggio
tray\vassoio
tread\pedata
treasure\tesoro
treat\coltivare
treatment\elettorale, cura
tree\albero, àlbero
tree-trunk\tronco
tremendous\grandioso, poderoso
tremulously\tremante
trend\declinazione
trial\esperimento, procedimento
triangle\triangolo
tribulation\tormento
trick\trucco, furberia
tricky\intricato
tricolors\tricolore
trifles\quisquilie
trimly\curato
tringing\tinntinnare, sonare il campanello
trip\escursione, tratto, incespicare
tripod\cavalletto
triviality\insulsaggine
troop\truppa
trot\trottare
trouble\fastidio, disturbo, fatica, penuria, problema
troublesome\noioso
trough\per mezzo di ciò
trousers\pantaloni
trout\trota
truck\camion
true\vero
trump\brìscola
trumpet\tromba
trunk\tronco, torso
trust\confidenza
trusted\fidai
truth\verità
try\esperimentare, provare
tube\tubetto, tubo, tubo
Tuesday\martedì, martedí
tug\trascinare
tulip\tulipano
tumour\tumore
tuna\tonno
tuna-fish\tonno
tune\melodia
tunes\esatto
tuning\votazione
tunnel\galleria
tunny\tonno
turbine\turbina
Turk\Turco
turkey\tacchino
Turkey\Turchia
turn\fila, girata, voltarsi, girare
turn around\voltare
turn off\posare
turn on\accèndere
turn round\ritornare
turn screw\cacciavite
turnings\trucioli
turnip\rapa
turnover\movimento degli affari
turret\torretta
turtle\tartaruga
TV\televisione
twain\paio
twelve\dodici
twenty\venti
twenty-three\ventitré
twerps\uomini
twiddled\giocai
twiddles\gioca
twins\gemelli
twirl\girare
twist\storcere, girata
twitch\ticchio
two\due
two hundred\duecento
twofold\dùplice
twoseater\biposto
tympanum\timpano
type\fare, scommettere, tipo, sorta, vergare
typhoon\tifone
typical\tipico
tyran\tiranno
tyrant\tiranno
udder\mammella
ugly\laido
ulcers\ulcere
ultimate\alla fin fine
ultimately\finalmente
ultrared\ultrarosso
umbrageous\ombreggiato
umbrella\parapioggia, ombrello
umpire\arbitro
unabating\incessante
unable\inadatto, incapace
unable to work\inabile al lavoro
unaltered\immutato
unanimous\a una voce
unanimously\a una voce
unattempted\intentato
unauthorized\non autorizzato
unavailable\trasceso
unavoidable\inevitabile
unbeknownst\sconosciuto
unbelievable\incredibile
unboundedly\illimitato
unburdened\licenziato
uncertain\incerto, malsicuro
uncertainty\incertezza
unchallengeable\irrefutabile
uncle\zio
uncloaking\svelante
uncomfortable\scomodo
unconditional\incondizionato
unconscious\inconsapevole
unconstitutional\anticostituzionale
uncork\stappare
unction\unzione
unctious\untuoso
unctuous\cremoso
unctuousness\unzione
uncurable\inguaribile
uncurbed\sbrogliato
undate\ondulato
undazzled\intatto
undecent\indecente
undecided\incerto
undeck\scoprire
undefeated\inbattuto
undefiled\pulito
undefined\vago
undeliberate\senza volere
undelightful\mostruoso
undemanding\senza esigenza
undeniably\incontestabile
under\là sotto, sotto, abbasso
under age\minorenne
under carriage\carrello
under developed\arretrato
under it\là sotto
underage\minorenne
underarm\avambraccio
underbid\offrire sotto costo
undercarriage\carrello
undercover\riservato
undercut\offrire sotto costo
underestimate\sottovalutare
undergo\vissi
undergraduate\studente
underground\sotterraneo, sottosuolo
underground railway\ferrovia sotterranea
undergrowth\sterpaglia
underhand\segreto
underlie\soccombere
underline\sottolineare
undermine\minare
underneath\sotto
underpants\mutande
underrate\sottovalutare
underscore\sottolineare
undersell\offrire sotto costo
undershirt\maglia
underside\parte inferiore
undersigned\firmato
undersized\minuscolo
underskirt\sottana
understand\capire, comprendere
understanded\giudizio, nozione
understanding\comprensione
understands\comprende
undertake\intraprendere
undertaken\intrapreso
undertakes\intraprende
undertaking\intraprendere
undertakings\esercizi
undertook\intrapresi
undervalue\sottovalutare
underwear\biancherìa ìntima
underworld\regno dei morti
underwrite\garantire, firmare
underwrites\garantito
underwriting\assicurazione
underwritten\garantito
undesignated\vago
undesigning\sincero
undetermined\vago
undeveloped\embrionale
undies\biancherìa ìntima
undigested\non digerito
undilated\non diluito
undischarged\non pagato
undisclosed\anònimo
undistinguishable\indistinto
undisturbed\indisturbato
undivorced\sposato
undoable\solubile
undreamt\inaudito
undubbed\anònimo
undue\insufficiente
undulated\ondulatorio
undying\immortale
unearth\disotterrare
unease\inquietudine
uneasily\sconfortevole
uneasy\sconfortevole
uneatable\immangiabile
uneligible\disadatto
unembarrassed\spudorato
unemphatic\indistinto
unemployable\inservibile
unemployed\senza lavoro
unemployment\disoccupazione
unendurable\insopportabile
unenjoyable\immangiabile
unenriched\non annunciato
unenslaved\esente
unequable\sleale
unequably\sleale
unequal\ineguale
unequaled\senza esempio
unequivocal\univoco
unescorted\unico
unessential\accidentale
unestimable\inestimabile
unethical\senza scrupoli
uneven\ineguale
unexcelled\insuperato
unexceptional\senza eccezione
unexpected\inatteso
unexperienced\novizio
unexplicit\indistinto
unfailing\senza errori, attendìbile
unfairly\sleale
unfaithful\infedele, infedele
unfaltering\inflessibile
unfathomable\inpenetrabile
unfatiguing\instancabile
unfavorable\sfavorevole
unfavourable\sfavorevole
unfeeling\insensibile
unfeigned\vero
unfeminine\maschile
unfertile\sterile
unfetter\esimere
unfinished\incompiuta
unfirm\malfermo
unfit\inadatto, inabile al lavoro, disadatto
unfit for work\incapace al lavoro
unfitness\inattitudine
unfitted\disadatto
unfitting\sconveniente
unfix\sciogliere
unflagging\instancabile
unflavored\senza gusto
unflinching\deciso
unflustered\equilibrato
unfold\esplicare
unforced\spontaneo
unforeseen\imprevisto
unforgettable\indimenticabile
unforgivable\inperdonabile
unforgivably\inperdonabile
unforgotten\indimenticato
unformal\poco stretto
unfortunately\per disgrazia, purtroppo
unfrank\disonesto
unfrequent\raro
unfrequently\rara
unfriendly\scortese
unfruitful\infecondo
ungainliness\zoticaggine
ungentlemanly\sconveniente
ungirt\poco stretto
ungiving\insensibile
ungraceful\grossolano
ungracefully\goffa
ungraciousness\sfavore
ungrateful\ingrato
ungratefully\ingrato
ungratefulness\ingratitudine, ingratitudine
ungrudging\senza invidia
unhalted\sbrogliato
unhappily\per disgrazia
unhappiness\miserabile
unhappy\disgraziato, afflitto
unharbored\scoperto
unharmed\illeso
unharmfully\sicura
unheated\inosservato
unhesitant\volonteroso
unhesitating\immediato
unhomogeneous\ineguale
unhuman\disumano
unicellular\unicellulare
unicoloured\unicolore
unicorn\liocorno
unidentified\sconosciuto
unidimensional\lineare
unification\unificazione
unified\uniti
unifies\unito
uniform\unito
uniformity\uniformità
unilateral\unilaterale
unillumined\ignorante
unimaginable\inimmaginabile
unimaginative\senza immagginazione
unimagined\imprevisto
unimpeachable\intoccabile
unimpeded\indisturbato
unimportance\cosa di nessuna importanza
unimportant\senza importanza
unimportntant\senza importanza
uninformed\ignorante
uninhabited\disabitato
unintelligently\insulso
unintended\senza volere
unintentional\senza volere
uninterrupted\durabile, incessante
unintimate\scomodo
union\unione, unione, sindacato, lega
unique\singolo, unico, straordinario, eccezzionale
unison\unisono
unisonous\congruente
unit\meccanismo, elemento, semplice
unitary\unito
unite\unificare, unirsi
united\uniti, in comune
unites\unito
unity\elemento, concordia
universalize\generalizzare
universally\notorio
universally known\notorio
universe\universo
university\università, accademia
university graduate\accadèmico
unkind\scortese, insensibile
unkindly\insensibile
unkindness\insensibilità
unknowable\ignorante
unknown\sconosciuto
unlabored\facilmente
unlade\scaricare
unlawful\illegale
unleaded\senza piombo
unlearn\disimparare
unless\tranne che
unlettered\incolto
unlevel\dìspari
unlicensed\non permesso
unlifelike\imitato
unlimited\illimitato
unlink\separare
unlinked\sciolto
unliquidated\non pagato
unliteral\figurato
unload\scaricare, scaricare
unloaded\scaricato
unloading\scaricare
unloading point\deposito
unlock\disserrare
unloving\frigido
unluckily\per disgrazia
unlucky\disgraziato, infelice
unlucky fellow\corvo del malaugurio
unmagical\insipido
unmake\levatura
unmannerly\screanzato
unmarried\nubile
unmasculine\femminino
unmask\comprométtere
unmasking\smascherante
unmerciful\spietato
unmindful\sconsiderato
unmistakably\inconfondibile
unmistaken\sicuramente
unmodified\immutato
unmovable\immobile
unmoved\impassibile
unnecessary\inutile
unneighborly\scortese
unnoted\inosservato
unnoticeable\inosservato
unnoticed\inosservato
unobjectionable\legittimo
unobscured\sereno
unobservant\disattento
unobtainable\irraggiungibile
unoccupied\vacante
unoffending\innocuo
unofficial\ufficioso
unostentatious\senza esigenza
unpaid\non pagato
unpalatably\cattiva
unparallel\eccezzionale
unpassable\sconveniente
unperceived\inosservato
unpitying\spietato
unpleasant\laido, dispiacévole
unpleasantness\spiacevolezza
unpleasing\dispiacévole
unpredictable\imprevedibile
unpremeditated\estemporàneo
unpretentious\senza esigenza
unpreventable\inevitabile, estemporàneo
unprimitive\colto
unprincipled\incostante
unprofessional\incompetente
unpromising\fallito
unpromisingly\fallito
unpropitious\sfavorevole
unprotected\indifeso
unprotected game\libera cacciagione
unquestionable\indiscutibile
unquiet\secondo
unquietly\liuto
unreachable\irraggiungibile
unreadably\illeggìbile
unreal\fantomatico, spettrale
unrealistic\irrealistico
unreasonable\irragionevole
unreasonableness\insensatezza
unreckonable\imprevedibile
unrecognized\non riconosciuto
unreflecting\sbadato
unregulated\non regolato
unrelenting\inflessibile
unremitting\incessante
unremorseful\spietato
unrepentant\impenitente
unresting\incessante
unrestrained\sbrogliato
unrestricted\illimitato
unright\sleale
unrighteous\abietto
unripe\acerbo
unrude\educato
unruffled\netto
unruly\disattento
unsalaried\non pagato
unsatisfied\insoddisfatto
unschooled\incolto
unscrew\avvitare
unscrupulous\senza scrupoli, scoscenziato
unseat\esonerare
unseeable\invisibile
unseeing\cieco
unselfish\altruista
unselfishness\altruismo
unsettle\inquietare
unsettles\inquieto
unsettling\inquietante
unshackle\esimere
unshackles\liberato
unshackling\liberante
unshapely\deforme
unsheltered\senza tetto
unshrinking\intrepido
unskimmed milk\latte integrale
unsmiling\grave
unsoiled\lindo
unsolicited\non richiesto
unsolicitous\volontario
unsophisticatedly\ingenua
unsounded\fasullo
unstable\labile, volubile
unstableness\incertezza
unstably\malsicuro
unsteadily\malfermo
unsteadiness\incertezza
unsteady\volubile
unstopping\aprente
unstudied\natura secondo
unsubstantiated\infondato
unsubtle\rozzo, zotico
unsuitable\disadatto
unsuited\disadatto
unsure\malsicuro
unsureness\incertezza
unsurpassed\insuperato
unsympathetic\antipàtico
untainted\senza macchia
untarnished\immacolato
unthankful\ingrato
unthankfulness\ingratitudine
unthinkable\impensabile
unthought\sconsiderato
untimeliness\tempo inopportuno
untimely\prematuro
untirable\instancabile
unto\a tavola
untrapped\esente
untried\intentato
untroubled\indisturbato
untruth\menzogna
untwine\lievitazione
unusable\inservibile
unusual\strano, inconsueto
unusually\raro
unusualness\stranezza
unutterable\indicibile
unvaried\immutato
unveil\svelare
unveiling\svelante
unventilated\muffaticcio
unversed\novizio
unwarily\incauto
unwarped\spassionato
unwarranted\non autorizzato
unwary\incauto
unwavering\incrollabile
unwearable\intollerabile
unweary\instancabile
unwed\nubile
unwell\indisposto
unwillingly\malvolentieri
unwillingness\disgusto
unwind\dipanare
unwinds\rilassato
unwise\imprudente
unwitting\senza volere
unwontedly\inconsueto
unworried\spensierato
unworthy\indegno
unwounded\illeso
unwrought\grezzo
up\sù, a, sù, sù
up above\sù
up there\lassù
upbraiding\rimprovero
upbringing\creanza
upchuck\vòmito
upcoming\prossimamente
upgrade\estensione, ampliare
upgrades\trasportato
upgrading\estensione
upheaval\elevamento
uphold\durare
upholster\imbottire
upholsterer\tappezziere
upkeep\manutenzione
uplift\esaltare
uplifting\alzante
upon\a
upper arm\braccio superiore
upper case character\lettera maiuscola
uppish\impettito
uppity\baldanzoso
upraise\esaltare
upraising\alzante
upright\pari, verticale
uprise\levarsi
uproar\eccitazione
uproariously\liuto
upshot\risultato
upstage\arrivista
upstairs\in alto, sù
upturn\incremento
upwards\sù
uranium\uranio
urban\urbano
urge\premura, incoraggiare
urgency\urgenza
urgent\urgente, legante
urine\orina, uroscopia
urn\urna
us\noi, a noi
usable\usabile
usage\uso
use\uso, adoperare
use up\esaurire
used\usato
useful\utile
-usefull\utile
useless\inutile, disùtile, inservibile
user\utente
uses\usato
usual\usuale, ordinario
usually\ordinario
usuries\usura
usury\usura
Utopian\utopico
utter\estrinsecare
vacant\vacante
vacation\vacanze, ferie
vaccinate\vaccinare
vaccination\vaccinazione
vaccine\vaccino
vacuum\vuotaggine
vacuum cleaner\aspirapòlvere
vagabond\vagabondaggio
vagina\fòdero
vailable\disponìbile
vain\vano
valerian\valeriana
valid\valevole
validity\validità
validness\validità
valley\valle
valorize\valorizzare
valse\valzer
valuable\pregiato
valuables\valori
value\valutare, valore
valuejudgment\valutazione
valve\valvola, valvola
vanguard\avanguardia
vanilla\vainiglia
vanish\scomparire
vanity\fatuità
vaporizer\vaporizzatore
vapors\evaporazione
vapour\vapore
variable\variàbile
variance\contrarietà
variation\aberrazione
varicosity\varice
various\differente
variousness\varietà
varnish\vernice
vary\variare
vascular\recipiente
vase\vaso, vaso da fiori
vast\vasto
vault\volta
vaulted\volta
veal\carne di vitello
veda\sapere
vegetable\pianta
vegetable soup\zuppa di verdura
vegetables\legume
vegetatively\vegetativo
vehicle\carro, veicolo
veil\veletta
vein\vena, vena
veined\venato
velocity\velocità
velvet\velluto
vending machine\autòma
vendue\licitazione
vengeance\vendetta
vengeful\vendicativo
venom\veleno
ventilate\ventilare, arieggiare, aerare
ventilating\ventilazione
venturous\rischioso
veraciousness\veridicità
verbal\orale
verdict\giudizio
verifield\giustezza
verify\verificare, esaminare
verity\verità
vermicide\vermifugo
vermilion\cinabro
verminous\impidocchiato
versatile\multilaterale
version\versione, emissione
vertical\verticale
vessel\recipiente, vascello
vest\maglia
vet\veterinario
vetoed\divieto
vex\molestare
vexation\rancore, nonostante
via\sopra
viaduct\viadotto
viand\vettovaglia
vice\vizio
vicious\vizioso
victim\sacrificio
victor\vincitore
victorious\vittorioso
victory\vincita
victualer\fornitore
victuals\commestìbili
videotaping\nota
vie\gareggiare
viennese\viennese
view\parere, concezione, vista, veduta, visuale
viewer\negli, spettatore
viewpoint\belvedere
views\vedute
vigorous\benportante, energico
vile\infame
villa\villa
village\villaggio
villain\pezzente
vine\vite, vigna
vintage\annata
vintner\vinaio
violation\infrazione
violator\violatore
violence\balìa
violent\violento, veemente
violent temper\irascibilità
violet\viola
violin\violino
viper\biscia
viral\virus
virgin\intatto, nuovo di fabbrica
virginity\verginità
viril\maschile
virtual\virtuale
virtue\virtù
virtuoso\campione
virtuous\virtuoso
virtuousness\virtù
visa\visto
visible\visibile
visibleness\visibilità
visionary\visionario
visit\ispezionare, visitare, visita, vìsita
visitor\visitatore
visors\ombrelli
vital\importante
vitality\vitalità
vitamin\vitamina
vitiation\depravazione
viticulture\enofilo
vituperation\vituperio
vividly\chiara
vocabulary\dizionario
vocalists\cantante
vocation\appello
vocational\per lavoro
vodka\vodka
voice\voce
voiceclerk\fatturista
void\vuotaggine
volcano\vulano
volitive\essere disposto
voltage\voltaggio
volume\volume, volume
voluntary\volontario
volunteer\volontario, volontario
volution\voluta
vomit\vòmito
voracious\vorace, àvido
vote\voce, eleggere, votazione, votare, elezione
vouch\obbligarsi
voucher\biglietto di garanzia
vulcanize\vulcanizzare
vulnerability\vulnerabilità
vulnerable\vulnerabile
vulture\avvoltoio
wadding\incluso
wade\sguazzare
wads\fardello
wage\stipendio
wages\stipendio
waist\vita
waistband\lega
waiter\cameriere
wake\destare
wake up\svegliarsi
walk\camminare, corro, giro
walked\andai
wall\parete, muro
wallet\portamonete
wallpaper\tappezzeria
walnut-tree\noce
waltz\valzer
want\vuole, volere
wants\desiderare
war\guerra, guerre
wardens\guardiana
wardrobe\vestiario
warehouse\campeggio
warm up\riscaldare
warmth\calore
warn\dissuadere
warn out\stanco
warning\ammonizione
warrant\mandato di cattura
warrantirs\facoltà
warranty\garanzia
warship\nave da guerra
was absent\mancai
was allowed\potei
was astonished\mi stupii
was called\mi chiamavo
was cold\gelai
was valid\valsi
wash\lavare
washbasin\catinella
washer\lavatore
washing\lavabiancheria
washing machine\lavabiancheria
wasp\vespa
waste\sperperare, eremo
waste of time\perdita di tempo
waste water\acqua di scarico
wastes\sperperato
watch\orologio, sorvegliare
watch dog\cane da guardia
watch television\televisione
watchdog\cane da guardia
watcher\guardia
watchful\vigile
watchfulness\vigilanza
watchmaker\orologiaio
water\diluviare, annaffiare, acqua, bagnare
water colour\acquerello
water for rinsing\lavatura
water gun\autopompa
water melon\anguria
water rat\lupo di mare
water sports\sport acquatico
watercolor\acquerello
waterfall\cascata
watergate\cateratta
watering can\annaffiatoio
watermark\filigrana
watermarks\filigrana
watermelon\anguria
waterproof\impermabile
watertight\impermabile
watery\acquoso
wattle\ostacolo
watts\bassofondo
wave\flutto, sventolare, soffiare, svolazzare, onda
wave about\brandire
wave to\accennare
wavelike\ondulatorio
waver\svolazzare, barcollare, ondeggiamento, vertere
wavered\oscillai
wavering\vacilncnve
wavers\oscilla
wavily\ondulato
wavy\ondulato
wax\cera, créscere
wax candle\candela di cera
wax figure\figura di cera
waxwork\figura di cera
waxy\cèreo
way\cammino, strada, strada, direzione
way bill\lettera di porto
way out\esito, passaggio
wayfarer\viaggiatore
waylay\appostare
wayward\bisbètico
waywardness\cocciutaggine
WC\abbigliatura
we\noi altri, noi
weak\gràcile, debole, labkle
weaken\indebolire, debilitare
weakening\indebolimento
weakling\codardo
weakly\gràcile
weakness\mancare, debolezza, debolezza
weakness of character\debolezza di carattere
weaknesses\indebolire
wealth\opulenza
wealthier\ricco
wealthily\ricco
wealthiness\opulenza
wealthy\ricco, benestante, facoltoso
wean\divezzare
weans\divezzo
weapon\armi, arma, arme
weapond\armato
weaponless\disarmato
weaponries\armi
weapons\nucleare
wear\abbigliare
wear and tear\logorio
wear out\logorare
wearer\vettore
weariness\sfinitezza
wearout\logorio
weary\stracco
weather chart\carta meteorologica
weather forecast\bollettino meteorològico
weather observation\meteorologia
weather vane\voltagabbana
weave\tessere
weaver\tessitore
weavers\tessitrice
wedding\nozze, sposalizio
wedding dress\abito da sposa
wedding ring\anello matrimoniale
wedge\mania, cùneo
wedge shaped\cuneiforme
wedges\cunei
Wednesday\mercoledí
wednesday\mercoledì
wee\minuscolo
weed\erbaccia
weeding\sarchiare
week\settimana
weekend\fine settimana
weekly\ebdomadario, settimanalmente
weekly paper\ebdomadario
weeks\settimane
ween\sperare
weep\lacrimare
weeps\piange, piansi
weigh\pesare
weighable\pesabile
weightily\pesante
weights\pesi
weighty\pesante
welcome\salutare, gradito, desiderato, benvenuto
weld\saldare
welding\sudore, saldare
welfare\benessere, assistenza pubblica
well\bene, benessere, pozzo, sano, interamente, ebbene
well behaved\educato
well built\benfatto
well deserved\benemèrito
well fed\ben nutrito
well meant\con buone intenzioni
well off\benestante
well read\erudito
well thought out\ponderato
well tried\esperimentato
well understood\beninteso
well well\così così
wellfare\benessere
welling\scaturente
wells\pozzo
welter weight\welter
welters\ondeggiamento
wench\prostituta
wenches\fornicare
wend\dirìgersi
went up\salii
wept\piansi
were\sua
werewolf\lupo mannaro
west\ovest
West\ovest
western\occidentale
westwards\verso ovest
wet\umido, inumidire, bagnato
wether\montone
wetly\bagnato
wetness\fradicezza
whack\legnare
whacked\picchiai
whacking\convincente
whale\balena
whaler\baleniere
whalers\baleniere
wham\battuta
whammy\assalto
whams\colpi
wharf\molo
what\che, che cosa
whatever\checché
wheat\frumento, grano
wheel\ruota
wheel barrow\carriola
wheel chair\sedia a rotelle
wheel suspension\sospensione delle ruote
wheelbarrows\carriola
wheelchair\sedia a rotelle
wheeled\carreggiabile
wheeler\veicolo
wheels\arruotare, ruote
wheeze\anelare
wheezy\affannoso
whelp\cucciolo
when\laddove, appena che, quando, allorché
whence\donde
whenever\ogni qual volta
whensoever\qualvolta
where\ove, presso al quale, dove
whereabout\rimanenza, luogo di soggiorno
whereas\presso al quale
whereby\per cui, presso al quale
wherefore\per quale scopo
wherefrom\donde
whereof\a che cosa
whereon\onde
wheresoever\dovunque
whereto\ove
wherry\yole
whether\come se
whetstone\cote
whey\siero
which\che
whichever\che
whiffed\soffiai
whiffing\soffiante
whiffs\soffia
while\finchè, laddove, durante, tratto di tempo
whilst\laddove, durante
whim\capriccio
whimper\mugolare
whimsical\bizzaro
whimsy\capriccio
whine\mugolare
whinny\nitrire
whip\frusta
whipped cream\panna montata
whips\frustare
whirlpool\vortice
whirlpools\vortice
whirlwind\turbine
whisper\sussurrare
whisper to\sussurrare
whistle\fischio, fischietto, zufolare
whistled\fischio
whistles\zufolare, fischia
whit\un pochino
white\bianco
white cabbage\cavolo bianco
white haired\canuto
white hot\incandescente
white wine\vernaccia
whitely\biancastro
whiteness\bianca
whiter\uomo bianco
whites\sai
whitethorn\biancospino
whitish\biancastro
whitlow\circolazione
Whitsun\pentecoste
whitsuntide\pentecoste
whittle\intagliare
whiz\grillare
who\che, chi
whoever\chiunque
whole\tutta
wholehearted\serio
wholeness\interezza
wholesale dealer\grossista
wholesaler\grossista
wholesome\sano
wholesomely\sana
wholly\interamente
whom\chi
whooping cough\tosse canina
whoopingcough\tosse canina
whopping\colossale
whore\prostituta
whores\fornicare
whorl\voluta
whose\di questo, di che
whoseever\che
why\per quale ragione
wick\stoppino
wicked\malizioso, cattivo
wickedness\nequizia
wide\largo, vasto, latitudine
widely\vasto
widely ramified\molto ramificato
wideness\vastità
widespread\molto diffuso
widget\fatto giuochi di prestigio
widow\védova
widowed\védovo
widower\védovo
width\latitudine, vastità
wielding\esercente
wife\moglie, femmina, signora
wig\parrucca
wihtout\senza
wild\licenzioso
wild boar\verro
wilderness\luogo selvaggio
wilful\intenzionale
will\volli, favore, testamento, volere, diventa
will less\abulico
will power\volitivo
willed\voglioso
willful\intenzionale
willing\disposto, volonteroso, essere disposto, vuole
willingly\volontieri, volontiere
willow\salcio
wimble\trapano
win\guadagnare, vincere
wind\avvoltare, avvolgere, soffiare, vento
wind force\velocità del vento
wind gauge\anemometro
wind mill\mulino a vento
wind tunnel\canale aerodinamico
wind up\avvoltare
windcheater\giacca a vento
window\fetta, finestra, finestrino, oblo
window pane\lastra
window seat\posto alla finestra
window sill\davanzale
windows\finestrino
windscreen\parabrezzo
windshield\parabrezzo
windy\ventoso
wine\vino
wine cask\botte di vino
wine cellars\casa vinicola
wine glas\bicchiere da vino
wine growing\enofilo
wine list\lista dei vini
wine merchant\vinaio
wine store\bottiglierìa
wine tavern\fiaschetteria
winegrower\viticoltore
wines\vini
wing of a door\battente
winner\vincitore
winning\vittorioso
wins\vince
winter\verno
winter sleep\letargo
winter sports\sport invernale
winterly\invernale
wintertime\verno
wipes out\estingue
wire\cavo, fil di ferro
wire brush\spazzola metallica
wire fencing\traliccio
wires\fili
wisdom\saggezza, saggezza, freccia
wisdom tooth\dente del giudizio
wise\saggio, ragionevole
wiseacre\saputello
wish\voto
wished\desiderato
wishes\desidero
wishing\volitivo
wisp\strofinaccio
wistful\malinconico
wistfully\malinconico
wit\giudizio
witch\maga, fattucchiera
witchcraft\stregoneria
witcheries\forza magica
witches\stregare
with\con
with it\onde
with pleasure\volontiere
with what\con che cosa
withal\presso
withdraw\levare
withdrawn\ritirato
wither\appassire, sfiorire
withers\sfiorito
withhold\ritenere
within\dentro, frà
within the company\aziendale
without\senza
without contradiction\non contradditorio
without engagement\non impegnativo
without exception\senza eccezione
without fail\immancabile
without holding on\a mano libera
without notice\senza avviso
without permission\non permesso
without result\senza esito
without using cash\senza denaro in contanti
witness\testimonio
witnesses\testimoniare
witnessing\testimoniante
wits\giudizio
witted\sensato
witticism\lazzo
wittily\faceto
wizard\fattucchiera
wobbliness\incertezza
wobbly\malfermo
woes\soffrire
woken\svegliato
wolf\lupo
wolfish\lupino
wolfish appetite\fame da lupo
wolves\lupi
woman\donna, signora, morta
woman hairdresser\parrucchiera
womanliness\femminilità
women\donne
women folk\donne
womenfolk\donne
won\vinsi, vinto
wonder\miracolo, stupore, chièdere
wonder of the world\prodigio
wondered\sorpreso
wonderful\favolosamente, grandioso, magnifico
wonderfulness\splendore
wondering\stupefatto
wonderingly\attònito
wonderment\stupore
wondrous\meraviglioso
wondrousness\stupirsi
woo\arruolare
wood\legno, selva, boschetto, legna
wood grouse\urogallo
woodpecker\picchio
woods\bosco, selve
woodsman\guardiaboschi
woodstrawberry\fragola dei boschi
woodworker\legnaiolo
woody\legnoso
wool\lana
wool spinning mill\lanificio
woollen\volere, laneria
woolly\lanuto
wools\lana
woozily\farraginoso
word\formulare, parola, vocàbolo
wording\lettera
wordlessness\mutezza
words\parole
wore\portai
work\lavorare, funzionare, lavorare, opera, occupazione
work in a factory\lavoro in fabbrica
work out\calcolare
worked up\irritato, nervoso, emozionato
working hours\orario di lavoro
working time\orario di lavoro
workman\artéfice
workmanship\equipaggio
works council\consiglio aziendale
workshop\corso avanzato, officina
workshops\officine
world\mondo
world domination\dominio del mondo
world economy\economia mondiale
world history\storia universale
world outlook\concezione del mondo
world record\primato mondiale
world war\guerra mondiale
worldliness\mondanità
worldly\laico
worldly innocent\estraneo al mondo
worm\baco, verme
wormwood\vermut
worn\portato
worn out\liso
worried\pieno di timore, affannoso
worries\stare in pensiero
worriment\seccatura
worrisome\noioso
worry\fastidio, stare in pensiero, disturba, arrabiare
worryingly\inquietante
worse\più cattivo, peggiore
worship\venerare, adorare, venerazione
worshiper\veneratore
worships\venerato
worst\cattivissima
worth\valore
worth seeing\da vedere
worthily\equo
worthiness\valore
worthless\senza valore
worthwhile\redditizio
worthy\meritevole
would\volei, decoro
would like\vuole
would like to\vuole
wound\fegriva, ferire
woven\tessuto
wow\successone
wraith\fantasma
wraiths\lemuri
wrangle\questione
wrangled\litigai
wrangles\litiga
wrap\infagottare, involgere, avvolgere, avvòlgere
wrap up\avvòlgere
wrapper\involucro
wrappers\involgere
wrath\furia
wrathful\adirato
wreak\spingere
wreaks\esercita
wreath\ghirlanda
wreck\naufragio, disfare, guaio
wrecked\distrussi
wrecking service\servizio recupero automezzi
wrecks\distrutto, sporcato
wren\scricciolo
wrench\chiave
wrest\arraffare
wrestle\lottare
wrestled\rango
wrestler\lottatore, lottatore
wretchedness\miserabile
wrinkle\trucco, grinza, suggerimento, pizzicotto
wrinkled\increspato
wrinkles\corrugare
wrist\polso
wristband\braccialetto
writ\documento
writ of execution\esecutorio
write\vergare, scrivere
write down\appuntare
write error\errore ortografico
write fault error\errore ortografico
write out\appuntare, emettere
write poetry\comporre versi
writer\quattrocentista, autore
writes\scrive
writing\vergare, scrittura
writing paper\carta da scrivere
written\scritto
wrong\fasullo, inverso, non giusto, colpevole
wrong conclusion\argomentazione sbagliata
wrongdoer\malfattore
wrongly\erroneamente
wrongous\illegale
wrongously\illegale
wrote\scrivei
wrought\lavorato
wroughtiron\ferro battuto
wry\obliquo
wryly\storto
wryness\obliqua
xenophobia\xenofobia
xenophobic\xenofobo
yacht\yacht
yachting\velismo
yachtsman\veliero
yachtswoman\veleggiatrice
yahoo\mascalzone
yank\estrarre
yankeedoodle\canto popolare
yap\muso
yaps\bocche
yard\ulna, cortile
yards\cortili
yardstick\criterio
yarn\filo
yarns\fili
yarrow\achillea
yawn\sbadigliare
yawns\sbadiglia
yclept\nominato
ye\il
yea\si
yeah\sereno
year\anno
year of birth\anno di nascita
year of construction\anno di costruzione
yearbook\effemeride
yearbooks\annali
yearlong\di un anno
yearly\ànnuo, annualmente
yearning\ansia
yeast\fondaccio
yegg\vagabondaggio
yell\gridare, stridere
yelled\gridai
yeller\urlavore
yellow\giallo
yellow boletus\porcino
yellowish\giallastro
yells\grida
yep\si
yes\sì, si
yesterday\ieri
yet\però, ancora, già
yew\tasso
yield\cedere, lavoro, prodotto
yieldingness\flessibilità
yodel\gorgheggiare
yoga\yoga
yoghurt\yogurt
yogurt\yogurt
yoke\staffa, giogo
yolk\tuorlo
yon\quei
you\a te, a loro, tu, voi, si, te, loro
you are allowed\puoi
you ve\hai
young\novellino
young lady\signorina
young pig\maialetto
younger\più giovane
youngling\giovanetto
youngster\giovinetto
your\tua, vostra, i tuoi, vostro, di essa, tuo, di ella
your equals\tuo pari
yours\il vostro, a te, di ella, vostra, i tuoi
yourself\personalmente
yourselves\in persona
youth\adolescenza
youth group\gruppo di gióvani
youth hostel\albergo per la gioventù
youth welfare office\ufficio assistenza giovanile
youthful\giovanile
youthfully\novellino
yule tide\periodo natalizio
zaniness\scemo
zap\verniciare
zeal\voga
zealous\zelante
zealousness\voga
zebra\zebra
zenith\vertice
zephyr\zeffiro
zero\nullità
zestfulness\favore
zesty\entusiasmato
zigzag\zigzag
zinc\zinco
zinced\zincare
zip code\numero di codice
zipper\chiusura lampo
zippy\vivificatore
zo\in, a tavola
zodiac\zodiaco
zone\area, territorio, zona
zones\zonale
zoological\zoologico
zoological gardens\giardino zoologico
zoologist\zoologo
zoology\zoologia, zoologia
diff --git a/noncore/apps/opie-console/filereceive.cpp b/noncore/apps/opie-console/filereceive.cpp
index e387273..452be60 100644
--- a/noncore/apps/opie-console/filereceive.cpp
+++ b/noncore/apps/opie-console/filereceive.cpp
@@ -1,162 +1,162 @@
#include <unistd.h>
#include <fcntl.h>
#include <signal.h>
#include <errno.h>
#include <qsocketnotifier.h>
#include "io_layer.h"
#include "procctl.h"
#include "filereceive.h"
FileReceive::FileReceive( Type t, IOLayer* lay, const QString& dir )
: ReceiveLayer(lay, dir ), m_type( t )
{
m_fd = -1;
m_not = 0l;
m_proc = 0l;
}
FileReceive::~FileReceive() {
}
void FileReceive::receive() {
receive( currentDir() );
}
void FileReceive::receive( const QString& dir ) {
m_prog = -1;
m_fd = layer()->rawIO();
m_curDir = dir;
if (pipe( m_comm ) < 0 )
m_comm[0] = m_comm[1] = 0;
if (pipe( m_info ) < 0 )
m_info[0] = m_info[1] = 0;
m_pid = fork();
switch( m_pid ) {
case -1:
//emit error
slotExec();
break;
/* child */
case 0: {
setupChild();
char* typus = NULL;
switch(m_type ) {
case SZ:
break;
case SX:
typus = "-X";
break;
case SY:
typus = "--ymodem";
break;
}
/* we should never return from here */
if( m_type == SX )
// FIXME: file name should be configurable - currently we ensure it
// doesn't get overwritten by -E (--rename)
execlp("rz", "rz", typus, "--overwrite", QObject::tr("SynchronizedFile").latin1(), NULL );
else
execlp("rz", "rz", typus, "--overwrite", NULL );
char resultByte = 1;
if (m_info[1] )
::write(m_info[1], &resultByte, 1 );
_exit( -1 );
break;
}
default: {
if ( m_info[1] )
close( m_info[1] );
if ( m_info[0] ) for (;;) {
char resultByte; int len;
len = read(m_info[0], &resultByte, 1 );
/* len == 1 start up failed */
if ( len == 1 ) {
emit error( StartError, tr("Could not start") );
return;
}
if ( len == -1 )
if ( (errno == ECHILD ) || (errno == EINTR ) )
continue;
// len == 0 or something like this
break;
}
if ( m_info[0] )
close( m_info[0] );
m_not = new QSocketNotifier(m_comm[0], QSocketNotifier::Read );
connect(m_not, SIGNAL(activated(int) ),
this, SLOT(slotRead() ) );
if ( pipe(m_term) < 0 )
m_term[0] = m_term[1] = 0;
ProcCtl::self()->add(m_pid, m_term[1] );
m_proc = new QSocketNotifier(m_term[0], QSocketNotifier::Read );
connect(m_proc, SIGNAL(activated(int) ),
this, SLOT(slotExec() ) );
}
break;
}
}
void FileReceive::cancel() {
::kill(m_pid, 9 );
}
void FileReceive::setupChild() {
changeDir( currentDir() );
/*
* we do not want to read from our
* information channel
*/
if (m_info[0] )
close(m_info[0] );
/*
* FD_CLOEXEC will close the
- * fd on successfull exec
+ * fd on successful exec
*/
if (m_info[1] )
fcntl(m_info[1], F_SETFD, FD_CLOEXEC );
if (m_comm[0] )
close( m_comm[0] );
/*
* now set the communication
* m_fd STDIN_FILENO
* STDOUT_FILENO
* STDERR_FILENO
*/
dup2( m_fd, STDIN_FILENO );
dup2( m_fd, STDOUT_FILENO );
dup2( m_comm[1], STDERR_FILENO );
}
void FileReceive::slotRead() {
QByteArray ar(4096);
int len = read(m_comm[0], ar.data(), 4096 );
for (int i = 0; i < len; i++ ) {
// printf("%c", ar[i] );
}
ar.resize( len );
QString str( ar );
}
void FileReceive::slotExec() {
char buf[2];
::read(m_term[0], buf, 1 );
delete m_proc;
delete m_not;
m_not = m_proc = 0l;
close( m_term[0] );
close( m_term[1] );
close( m_comm[0] );
close( m_comm[1] );
layer()->closeRawIO(m_fd);
emit received(QString::null);
}
diff --git a/noncore/apps/opie-console/filetransfer.cpp b/noncore/apps/opie-console/filetransfer.cpp
index 221838c..5144941 100644
--- a/noncore/apps/opie-console/filetransfer.cpp
+++ b/noncore/apps/opie-console/filetransfer.cpp
@@ -1,251 +1,251 @@
#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
#include <fcntl.h>
#include <unistd.h>
#include <qcstring.h>
#include <qsocketnotifier.h>
#include <opie/oprocess.h>
#include "procctl.h"
#include "filetransfer.h"
FileTransfer::FileTransfer( Type t, IOLayer* lay )
: FileTransferLayer( lay ), m_type( t ), m_pid ( 0 ) {
signal(SIGPIPE, SIG_IGN );
m_pid = 0;
m_not = 0l;
m_proc = 0l;
}
FileTransfer::~FileTransfer() {
}
/**
* now we will send the file.
*
* we request an fd. The IOLayer should be closed
* then we will setup a pipe for progress communication
* then we will dup2 the m_fd in the forked process
* to do direct IO from and to the fd
*/
void FileTransfer::sendFile( const QString& file ) {
m_prog =-1;
m_fd = layer()->rawIO();
//
// m_fd = ::open("/dev/ttyS0", O_RDWR);
m_file = file;
if ( pipe( m_comm ) < 0 )
m_comm[0] = m_comm[1] = 0;
if ( pipe( m_info ) < 0 )
m_info[0] = m_info[1] = 0;
m_pid = fork();
switch( m_pid ) {
case -1:
emit error( StartError, tr("Was not able to fork") );
slotExec();
break;
case 0:{
setupChild();
/* exec */
char* verbose = "-vv";
char* binray = "-b";
char* typus;
switch(m_type ) {
default:
case SZ:
typus = "";
break;
case SX:
typus = "-X";
break;
case SY:
typus = "--ymodem";
break;
}
/* we should never return from here */
execlp("sz", "sz", verbose, binray, file.latin1(), typus, NULL );
/* communication for error!*/
char resultByte =1;
if (m_info[1] )
write(m_info[1], &resultByte, 1 );
_exit( -1 );
break;
}
default:{
if ( m_info[1] )
close( m_info[1] );
if ( m_info[0] ) for (;;) {
char resultByte; int len;
len = read(m_info[0], &resultByte, 1 );
/* len == 1 start up failed */
if ( len == 1 ) {
emit error( StartError, tr("Could not start") );
return;
}
if ( len == -1 )
if ( (errno == ECHILD ) || (errno == EINTR ) )
continue;
// len == 0 or something like this
break;
}
if ( m_info[0] )
close( m_info[0] );
/* replace by QSocketNotifier!!! */
m_not = new QSocketNotifier(m_comm[0], QSocketNotifier::Read );
connect(m_not, SIGNAL(activated(int) ),
this, SLOT(slotRead() ) );
if ( pipe(m_term) < 0 )
m_term[0] = m_term[1] = 0;
ProcCtl::self()->add(m_pid, m_term[1] );
m_proc = new QSocketNotifier(m_term[0], QSocketNotifier::Read );
connect(m_proc, SIGNAL(activated(int) ),
this, SLOT(slotExec() ) );
}
break;
}
}
/*
* let's call the one with the filename
*/
void FileTransfer::sendFile( const QFile& file ) {
sendFile( file.name() );
}
/*
* setting up communication
* between parent child and ioLayer
*/
void FileTransfer::setupChild() {
/*
* we do not want to read from our
* information channel
*/
if (m_info[0] )
close(m_info[0] );
/*
* FD_CLOEXEC will close the
- * fd on successfull exec
+ * fd on successful exec
*/
if (m_info[1] )
fcntl(m_info[1], F_SETFD, FD_CLOEXEC );
if (m_comm[0] )
close( m_comm[0] );
/*
* now set the communication
* m_fd STDIN_FILENO
* STDOUT_FILENO
* STDERR_FILENO
*/
dup2( m_fd, STDIN_FILENO );
dup2( m_fd, STDOUT_FILENO );
dup2( m_comm[1], STDERR_FILENO );
}
/*
* read from the stderr of the child
* process
*/
void FileTransfer::slotRead() {
QByteArray ar(4096);
int len = read(m_comm[0], ar.data(), 4096 );
for (int i = 0; i < len; i++ ) {
// printf("%c", ar[i] );
}
ar.resize( len );
QString str( ar );
QStringList lis = QStringList::split(' ', str );
/*
* Transfer finished.. either complete or incomplete
*/
if ( lis[0].simplifyWhiteSpace() == "Transfer" ) {
return;
}
/*
* do progress reading
*/
slotProgress( lis );
}
/*
* find the progress
*/
void FileTransfer::slotProgress( const QStringList& list ) {
if ( m_type != SZ )
return;
bool complete = true;
int min, sec;
int bps;
unsigned long sent, total;
min = sec = bps = -1;
sent = total = 0;
// Data looks like this
// 0 1 2 3 4 5
// Bytes Sent 65536/11534336 BPS:7784 ETA 24:33
QStringList progi = QStringList::split('/', list[2].simplifyWhiteSpace() );
sent = progi[0].toULong(&complete );
if (!complete ) return;
total = progi[1].toULong(&complete );
if (!complete || total == 0) {
return;
}
double pro = (double)sent/total;
int prog = pro * 100;
// speed
progi = QStringList::split(':', list[3].simplifyWhiteSpace() );
bps = progi[1].toInt();
// time
progi = QStringList::split(':', list[5].simplifyWhiteSpace() );
min = progi[0].toInt();
sec = progi[1].toInt();
if ( prog > m_prog ) {
m_prog = prog;
emit progress(m_file, m_prog, bps, -1, min , sec );
}
}
void FileTransfer::cancel() {
if(m_pid > 0) ::kill(m_pid,9 );
}
void FileTransfer::slotExec() {
char buf[2];
::read(m_term[0], buf, 1 );
delete m_proc;
delete m_not;
m_proc = m_not = 0l;
close( m_term[0] );
close( m_term[1] );
close( m_comm[0] );
close( m_comm[1] );
layer()->closeRawIO( m_fd );
emit sent();
m_pid = 0;
}
diff --git a/noncore/net/opieftp/opieftp.cpp b/noncore/net/opieftp/opieftp.cpp
index 3250627..2b29d83 100644
--- a/noncore/net/opieftp/opieftp.cpp
+++ b/noncore/net/opieftp/opieftp.cpp
@@ -1,1515 +1,1515 @@
/***************************************************************************
opieftp.cpp
-------------------
** Created: Sat Mar 9 23:33:09 2002
copyright : (C) 2002 by ljp
email : ljp@llornkcor.com
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
***************************************************************************/
//#define DEVELOPERS_VERSION
#include "opieftp.h"
extern "C" {
#include "../ftplib/ftplib.h"
}
#include "inputDialog.h"
#include <qmenubar.h>
#include <qpe/qpeapplication.h>
#include <qpe/resource.h>
#include <qpe/config.h>
#include <qpe/mimetype.h>
#include <qtextstream.h>
#include <qpushbutton.h>
#include <qtoolbutton.h>
#include <qcombobox.h>
#include <qlistview.h>
#include <qlabel.h>
#include <qprogressbar.h>
#include <qspinbox.h>
#include <qtabwidget.h>
#include <qlayout.h>
#include <qmessagebox.h>
#include <qlineedit.h>
#include <qlistbox.h>
#include <unistd.h>
#include <stdlib.h>
QProgressBar *ProgressBar;
static netbuf *conn=NULL;
static int log_progress(netbuf *, int xfered, void *)
{
// int fsz = *(int *)arg;
// int pct = (xfered * 100) / fsz;
// printf("%3d%%\r", pct);
// fflush(stdout);
ProgressBar->setProgress(xfered);
qApp->processEvents();
return 1;
}
OpieFtp::OpieFtp( QWidget* parent, const char* name, WFlags fl)
: QMainWindow( parent, name, fl )
{
setCaption( tr( "OpieFtp" ) );
fuckeduphack=FALSE;
QGridLayout *layout = new QGridLayout( this );
layout->setSpacing( 2);
layout->setMargin( 2);
connect( qApp,SIGNAL( aboutToQuit()),SLOT( cleanUp()) );
QMenuBar *menuBar = new QMenuBar(this);
// QToolBar *menuBar = new QToolBar(this);
// menuBar->setHorizontalStretchable( TRUE );
QWMatrix matrix;
QPixmap pix(Resource::loadPixmap( "UnknownDocument" ));
matrix.scale( .4, .4);
unknownXpm = pix.xForm(matrix);
connectionMenu = new QPopupMenu( this );
localMenu = new QPopupMenu( this );
remoteMenu = new QPopupMenu( this );
tabMenu = new QPopupMenu( this );
layout->addMultiCellWidget( menuBar, 0, 0, 0, 2 );
menuBar->insertItem( tr( "Connection" ), connectionMenu);
// menuBar->insertItem( tr( "Local" ), localMenu);
// menuBar->insertItem( tr( "Remote" ), remoteMenu);
menuBar->insertItem( tr( "View" ), tabMenu);
tabMenu->insertItem( tr( "Local" ), localMenu);
tabMenu->insertItem( tr( "Remote" ), remoteMenu);
connectionMenu->insertItem( tr( "New" ), this, SLOT( newConnection() ));
connectionMenu->insertItem( tr( "Connect" ), this, SLOT( connector() ));
connectionMenu->insertItem( tr( "Disconnect" ), this, SLOT( disConnector() ));
localMenu->insertItem( tr( "Show Hidden Files" ), this, SLOT( showHidden() ));
localMenu->insertSeparator();
localMenu->insertItem( tr( "Upload" ), this, SLOT( localUpload() ));
localMenu->insertItem( tr( "Make Directory" ), this, SLOT( localMakDir() ));
localMenu->insertItem( tr( "Rename" ), this, SLOT( localRename() ));
localMenu->insertSeparator();
localMenu->insertItem( tr( "Delete" ), this, SLOT( localDelete() ));
localMenu->setCheckable(TRUE);
remoteMenu->insertItem( tr( "Download" ), this, SLOT( remoteDownload() ));
remoteMenu->insertItem( tr( "Make Directory" ), this, SLOT( remoteMakDir() ));
remoteMenu->insertItem( tr( "Rename" ), this, SLOT( remoteRename() ));
remoteMenu->insertSeparator();
remoteMenu->insertItem( tr( "Delete" ), this, SLOT( remoteDelete() ));
tabMenu->insertSeparator();
tabMenu->insertItem( tr( "Switch to Local" ), this, SLOT( switchToLocalTab() ));
tabMenu->insertItem( tr( "Switch to Remote" ), this, SLOT( switchToRemoteTab() ));
tabMenu->insertItem( tr( "Switch to Config" ), this, SLOT( switchToConfigTab() ));
tabMenu->insertSeparator();
// tabMenu->insertItem( tr( "About" ), this, SLOT( doAbout() ));
tabMenu->setCheckable(TRUE);
cdUpButton = new QToolButton( this,"cdUpButton");
cdUpButton->setPixmap(Resource::loadPixmap("up"));
cdUpButton ->setFixedSize( QSize( 20, 20 ) );
connect( cdUpButton ,SIGNAL(released()),this,SLOT( upDir()) );
layout->addMultiCellWidget( cdUpButton, 0, 0, 3, 3 );
cdUpButton->hide();
// docButton = new QPushButton(Resource::loadIconSet("DocsIcon"),"",this,"docsButton");
// docButton->setFixedSize( QSize( 20, 20 ) );
// connect( docButton,SIGNAL(released()),this,SLOT( docButtonPushed()) );
// docButton->setFlat(TRUE);
// layout->addMultiCellWidget( docButton, 0, 0, 6, 6 );
homeButton = new QToolButton(this,"homeButton");
homeButton->setPixmap( Resource::loadPixmap("home"));
homeButton->setFixedSize( QSize( 20, 20 ) );
connect(homeButton,SIGNAL(released()),this,SLOT(homeButtonPushed()) );
layout->addMultiCellWidget( homeButton, 0, 0, 4, 4);
homeButton->hide();
TabWidget = new QTabWidget( this, "TabWidget" );
layout->addMultiCellWidget( TabWidget, 1, 1, 0, 4 );
// TabWidget->setTabShape(QTabWidget::Triangular);
tab = new QWidget( TabWidget, "tab" );
tabLayout = new QGridLayout( tab );
tabLayout->setSpacing( 2);
tabLayout->setMargin( 2);
Local_View = new QListView( tab, "Local_View" );
// Local_View->setResizePolicy( QListView::AutoOneFit );
Local_View->addColumn( tr("File"),150);
Local_View->addColumn( tr("Date"),-1);
Local_View->setColumnAlignment(1,QListView::AlignRight);
Local_View->addColumn( tr("Size"),-1);
Local_View->setColumnAlignment(2,QListView::AlignRight);
Local_View->setAllColumnsShowFocus(TRUE);
Local_View->setMultiSelection( TRUE);
Local_View->setSelectionMode(QListView::Extended);
Local_View->setFocusPolicy(QWidget::ClickFocus);
QPEApplication::setStylusOperation( Local_View->viewport(),QPEApplication::RightOnHold);
tabLayout->addWidget( Local_View, 0, 0 );
connect( Local_View, SIGNAL( clicked( QListViewItem*)),
this,SLOT( localListClicked(QListViewItem *)) );
// connect( Local_View, SIGNAL( doubleClicked( QListViewItem*)),
// this,SLOT( localListClicked(QListViewItem *)) );
connect( Local_View, SIGNAL( mouseButtonPressed( int, QListViewItem *, const QPoint&, int)),
this,SLOT( ListPressed(int, QListViewItem *, const QPoint&, int)) );
TabWidget->insertTab( tab, tr( "Local" ) );
tab_2 = new QWidget( TabWidget, "tab_2" );
tabLayout_2 = new QGridLayout( tab_2 );
tabLayout_2->setSpacing( 2);
tabLayout_2->setMargin( 2);
Remote_View = new QListView( tab_2, "Remote_View" );
Remote_View->addColumn( tr("File"),150);
Remote_View->addColumn( tr("Date"),-1);
// Remote_View->setColumnAlignment(1,QListView::AlignRight);
Remote_View->addColumn( tr("Size"),-1);
Remote_View->setColumnAlignment(2,QListView::AlignRight);
Remote_View->setColumnAlignment(3,QListView::AlignCenter);
Remote_View->addColumn( tr("Dir"),-1);
Remote_View->setColumnAlignment(4,QListView::AlignRight);
Remote_View->setAllColumnsShowFocus(TRUE);
Remote_View->setMultiSelection( FALSE);
Remote_View->setSelectionMode(QListView::Extended);
Remote_View->setFocusPolicy(QWidget::ClickFocus);
QPEApplication::setStylusOperation( Remote_View->viewport(),QPEApplication::RightOnHold);
connect( Remote_View, SIGNAL( clicked( QListViewItem*)),
this,SLOT( remoteListClicked(QListViewItem *)) );
connect( Remote_View, SIGNAL( mouseButtonPressed( int, QListViewItem *, const QPoint&, int)),
this,SLOT( RemoteListPressed(int, QListViewItem *, const QPoint&, int)) );
tabLayout_2->addWidget( Remote_View, 0, 0 );
TabWidget->insertTab( tab_2, tr( "Remote" ) );
tab_3 = new QWidget( TabWidget, "tab_3" );
tabLayout_3 = new QGridLayout( tab_3 );
tabLayout_3->setSpacing( 2);
tabLayout_3->setMargin( 2);
TextLabel1 = new QLabel( tab_3, "TextLabel1" );
TextLabel1->setText( tr( "Username" ) );
tabLayout_3->addMultiCellWidget( TextLabel1, 0, 0, 0, 1 );
UsernameComboBox = new QComboBox( FALSE, tab_3, "UsernameComboBox" );
UsernameComboBox->setEditable(TRUE);
tabLayout_3->addMultiCellWidget( UsernameComboBox, 1, 1, 0, 1 );
connect( UsernameComboBox,SIGNAL(textChanged(const QString &)),this,
SLOT( UsernameComboBoxEdited(const QString & ) ));
TextLabel2 = new QLabel( tab_3, "TextLabel2" );
TextLabel2->setText( tr( "Password" ) );
tabLayout_3->addMultiCellWidget( TextLabel2, 0, 0, 2, 3 );
PasswordEdit = new QLineEdit( "", tab_3, "PasswordComboBox" );
PasswordEdit->setEchoMode(QLineEdit::Password);
tabLayout_3->addMultiCellWidget( PasswordEdit, 1, 1, 2, 3 );
connect( PasswordEdit,SIGNAL(textChanged(const QString &)),this,
SLOT( PasswordEditEdited(const QString & ) ));
//PasswordEdit->setFixedWidth(85);
TextLabel3 = new QLabel( tab_3, "TextLabel3" );
TextLabel3->setText( tr( "Remote server" ) );
tabLayout_3->addMultiCellWidget( TextLabel3, 2, 2, 0, 1 );
ServerComboBox = new QComboBox( FALSE, tab_3, "ServerComboBox" );
ServerComboBox->setEditable(TRUE);
tabLayout_3->addMultiCellWidget( ServerComboBox, 3, 3, 0, 1 );
connect(ServerComboBox,SIGNAL(activated(int)),this,SLOT(serverComboSelected(int ) ));
connect(ServerComboBox,SIGNAL(textChanged(const QString &)),this,
SLOT(serverComboEdited(const QString & ) ));
QLabel *TextLabel5 = new QLabel( tab_3, "TextLabel5" );
TextLabel5->setText( tr( "Remote path" ) );
tabLayout_3->addMultiCellWidget( TextLabel5, 2, 2, 2, 3 );
remotePath = new QLineEdit( "/", tab_3, "remotePath" );
tabLayout_3->addMultiCellWidget( remotePath, 3, 3, 2, 3 );
TextLabel4 = new QLabel( tab_3, "TextLabel4" );
TextLabel4->setText( tr( "Port" ) );
tabLayout_3->addMultiCellWidget( TextLabel4, 4, 4, 0, 1 );
PortSpinBox = new QSpinBox( tab_3, "PortSpinBox" );
PortSpinBox->setButtonSymbols( QSpinBox::UpDownArrows );
PortSpinBox->setMaxValue(32786);
tabLayout_3->addMultiCellWidget( PortSpinBox, 4, 4, 1, 1);
serverListView = new QListBox( tab_3, "ServerListView" );
tabLayout_3->addMultiCellWidget( serverListView , 5, 5, 0, 5);
connect( serverListView, SIGNAL( highlighted( const QString &)),
this,SLOT( serverListClicked( const QString &) ) );
connectServerBtn = new QPushButton( tr("Connect"), tab_3 , "ConnectButton" );
tabLayout_3->addMultiCellWidget( connectServerBtn, 6, 6, 0, 1);
connectServerBtn->setToggleButton(TRUE);
connect(connectServerBtn,SIGNAL( toggled( bool)),SLOT( connectorBtnToggled(bool) ));
newServerButton= new QPushButton( tr("Add"), tab_3 , "NewServerButton" );
tabLayout_3->addMultiCellWidget( newServerButton, 6, 6, 2, 2);
connect( newServerButton,SIGNAL( clicked()),SLOT( NewServer() ));
QPushButton *deleteServerBtn;
deleteServerBtn = new QPushButton( tr("Delete"), tab_3 , "OpenButton" );
tabLayout_3->addMultiCellWidget( deleteServerBtn, 6, 6, 3, 3);
connect(deleteServerBtn,SIGNAL(clicked()),SLOT(deleteServer()));
QSpacerItem* spacer = new QSpacerItem( 20, 20, QSizePolicy::Minimum, QSizePolicy::Expanding );
tabLayout_3->addItem( spacer, 5, 0 );
TabWidget->insertTab( tab_3, tr( "Config" ) );
connect(TabWidget,SIGNAL(currentChanged(QWidget *)),
this,SLOT(tabChanged(QWidget*)));
currentDir.setFilter( QDir::Files | QDir::Dirs/* | QDir::Hidden*/ | QDir::All);
currentDir.setPath( QDir::currentDirPath());
// currentDir.setSorting(/* QDir::Size*/ /*| QDir::Reversed | */QDir::DirsFirst);
currentPathCombo = new QComboBox( FALSE, this, "currentPathCombo" );
layout->addMultiCellWidget( currentPathCombo, 3, 3, 0, 4);
currentPathCombo ->setFixedWidth(220);
currentPathCombo->setEditable(TRUE);
currentPathCombo->lineEdit()->setText( currentDir.canonicalPath());
connect( currentPathCombo, SIGNAL( activated( const QString & ) ),
this, SLOT( currentPathComboActivated( const QString & ) ) );
connect( currentPathCombo->lineEdit(),SIGNAL(returnPressed()),
this,SLOT(currentPathComboChanged()));
ProgressBar = new QProgressBar( this, "ProgressBar" );
layout->addMultiCellWidget( ProgressBar, 4, 4, 0, 4);
ProgressBar->setMaximumHeight(10);
filterStr="*";
b=FALSE;
populateLocalView();
readConfig();
// ServerComboBox->setCurrentItem(currentServerConfig);
TabWidget->setCurrentPage(2);
}
OpieFtp::~OpieFtp()
{
}
void OpieFtp::cleanUp()
{
if(conn)
FtpQuit(conn);
QString sfile=QDir::homeDirPath();
if(sfile.right(1) != "/")
sfile+="/._temp";
else
sfile+="._temp";
QFile file( sfile);
if(file.exists())
file.remove();
Config cfg("opieftp");
cfg.setGroup("Server");
cfg.writeEntry("currentServer", currentServerConfig);
exit(0);
}
void OpieFtp::tabChanged(QWidget *)
{
if (TabWidget->currentPageIndex() == 0) {
currentPathCombo->lineEdit()->setText( currentDir.canonicalPath());
tabMenu->setItemChecked(tabMenu->idAt(0),TRUE);
tabMenu->setItemChecked(tabMenu->idAt(1),FALSE);
tabMenu->setItemChecked(tabMenu->idAt(2),FALSE);
if(cdUpButton->isHidden())
cdUpButton->show();
if(homeButton->isHidden())
homeButton->show();
}
if (TabWidget->currentPageIndex() == 1) {
currentPathCombo->lineEdit()->setText( currentRemoteDir );
tabMenu->setItemChecked(tabMenu->idAt(1),TRUE);
tabMenu->setItemChecked(tabMenu->idAt(0),FALSE);
tabMenu->setItemChecked(tabMenu->idAt(2),FALSE);
if(cdUpButton->isHidden())
cdUpButton->show();
homeButton->hide();
}
if (TabWidget->currentPageIndex() == 2) {
tabMenu->setItemChecked(tabMenu->idAt(2),TRUE);
tabMenu->setItemChecked(tabMenu->idAt(0),FALSE);
tabMenu->setItemChecked(tabMenu->idAt(1),FALSE);
cdUpButton->hide();
homeButton->hide();
}
}
void OpieFtp::newConnection()
{
UsernameComboBox->lineEdit()->setText("");
PasswordEdit->setText( "" );
ServerComboBox->lineEdit()->setText( "");
remotePath->setText( currentRemoteDir = "/");
PortSpinBox->setValue( 21);
TabWidget->setCurrentPage(2);
}
void OpieFtp::serverComboEdited(const QString & )
{
// if( ServerComboBox->text(currentServerConfig) != edit /*edit.isEmpty() */) {
// qDebug("ServerComboEdited");
// // currentServerConfig = -1;
// }
}
void OpieFtp::UsernameComboBoxEdited(const QString &) {
// currentServerConfig = -1;
}
void OpieFtp::PasswordEditEdited(const QString & ) {
// currentServerConfig = -1;
}
void OpieFtp::connectorBtnToggled(bool On)
{
if(On) {
connector();
} else {
disConnector();
}
}
void OpieFtp::connector()
{
// QCopEnvelope ( "QPE/System", "busy()" );
// qApp->processEvents();
currentRemoteDir=remotePath->text();
if( ServerComboBox->currentText().isEmpty()) {
QMessageBox::warning(this,tr("Ftp"),tr("Please set the server info"),tr("Ok"),0,0);
TabWidget->setCurrentPage(2);
ServerComboBox->setFocus();
connectServerBtn->setOn(FALSE);
connectServerBtn->setText( tr("Connect"));
return;
}
FtpInit();
TabWidget->setCurrentPage(1);
QString ftp_host = ServerComboBox->currentText();
QString ftp_user = UsernameComboBox->currentText();
QString ftp_pass = PasswordEdit->text();
QString port=PortSpinBox->cleanText();
port.stripWhiteSpace();
Config cfg("opieftp");
cfg.setGroup("Server");
// int current=cfg.readNumEntry("currentServer", 1);
// if(ftp_host!= cfg.readEntry(QString::number( current)))
// currentServerConfig=-1;
// cfg.setGroup(QString::number(current));
// if( ftp_user != cfg.readEntry("Username"))
// currentServerConfig=-1;
// if(ftp_pass != cfg.readEntry(cfg.readEntry("Username")))
// currentServerConfig=-1;
if(ftp_host.find("ftp://",0, TRUE) != -1 )
ftp_host=ftp_host.right(ftp_host.length()-6);
ftp_host+=":"+port;
if (!FtpConnect( ftp_host.latin1(), &conn)) {
QMessageBox::message(tr("Note"),tr("Unable to connect to\n")+ftp_host);
connectServerBtn->setOn(FALSE);
connectServerBtn->setText( tr("Connect"));
return ;
}
if (!FtpLogin( ftp_user.latin1(), ftp_pass.latin1(),conn )) {
QString msg;
msg.sprintf(tr("Unable to log in\n")+"%s",FtpLastResponse(conn));
msg.replace(QRegExp(":"),"\n");
QMessageBox::message(tr("Note"),msg);
if(conn)
FtpQuit(conn);
connectServerBtn->setOn(FALSE);
connectServerBtn->setText( tr("Connect"));
return ;
}
remoteDirList("/") ;
setCaption(ftp_host);
if( currentServerConfig == -1)
writeConfig();
connectServerBtn->setText( tr("Disconnect"));
// QCopEnvelope ( "QPE/System", "notBusy()" );
}
void OpieFtp::disConnector()
{
if(conn)
FtpQuit(conn);
setCaption("OpieFtp");
currentRemoteDir="/";
Remote_View->clear();
connectServerBtn->setText( tr("Connect"));
connectServerBtn->setOn(FALSE);
setCaption("OpieFtp");
}
void OpieFtp::localUpload()
{
int fsz;
// QCopEnvelope ( "QPE/System", "busy()" );
// qApp->processEvents();
QList<QListViewItem> * getSelectedItems( QListView * Local_View );
QListViewItemIterator it( Local_View );
for ( ; it.current(); ++it ) {
if ( it.current()->isSelected() ) {
QString strItem = it.current()->text(0);
QString localFile = currentDir.canonicalPath()+"/"+strItem;
QString remoteFile= currentRemoteDir+strItem;
QFileInfo fi(localFile);
if( !fi.isDir()) {
fsz=fi.size();
ProgressBar->setTotalSteps(fsz);
FtpOptions(FTPLIB_CALLBACK, (long) log_progress, conn);
FtpOptions(FTPLIB_IDLETIME, (long) 1000, conn);
FtpOptions(FTPLIB_CALLBACKARG, (long) &fsz, conn);
FtpOptions(FTPLIB_CALLBACKBYTES, (long) fsz/10, conn);
qDebug("Put: %s, %s",localFile.latin1(),remoteFile.latin1());
if( !FtpPut( localFile.latin1(), remoteFile.latin1(),FTPLIB_IMAGE, conn ) ) {
QString msg;
msg.sprintf(tr("Unable to upload\n")+"%s",FtpLastResponse(conn));
msg.replace(QRegExp(":"),"\n");
QMessageBox::message(tr("Note"),msg);
}
} else {
QMessageBox::message(tr("Note"),tr("Cannot upload directories"));
}
ProgressBar->reset();
nullifyCallBack();
it.current()->setSelected(FALSE);
} //end currentSelected
}
for ( ; it.current(); ++it ) {
Local_View->clearSelection();
}
Local_View->clearFocus();
TabWidget->setCurrentPage(1);
remoteDirList( (const QString &)currentRemoteDir); //this also calls populate
// QCopEnvelope ( "QPE/System", "notBusy()" );
}
void OpieFtp::nullifyCallBack()
{
FtpOptions(FTPLIB_CALLBACK, 0, conn);
FtpOptions(FTPLIB_IDLETIME, 0, conn);
FtpOptions(FTPLIB_CALLBACKARG, 0, conn);
FtpOptions(FTPLIB_CALLBACKBYTES, 0, conn);
}
void OpieFtp::remoteDownload()
{
// qApp->processEvents();
int fsz;
// QCopEnvelope ( "QPE/System", "busy()" );
QList<QListViewItem> * getSelectedItems( QListView * Remote_View );
QListViewItemIterator it( Remote_View );
for ( ; it.current(); ++it ) {
if ( it.current()->isSelected() ) {
QString strItem = it.current()->text(0);
// strItem=strItem.right(strItem.length()-1);
QString localFile = currentDir.canonicalPath();
if(localFile.right(1).find("/",0,TRUE) == -1)
localFile += "/";
localFile += strItem;
// QString localFile = currentDir.canonicalPath()+"/"+strItem;
QString remoteFile= currentRemoteDir+strItem;
if (!FtpSize( remoteFile.latin1(), &fsz, FTPLIB_ASCII, conn))
fsz = 0;
QString temp;
temp.sprintf( remoteFile+" "+" %dkb", fsz);
ProgressBar->setTotalSteps(fsz);
FtpOptions(FTPLIB_CALLBACK, (long) log_progress, conn);
FtpOptions(FTPLIB_IDLETIME, (long) 1000, conn);
FtpOptions(FTPLIB_CALLBACKARG, (long) &fsz, conn);
FtpOptions(FTPLIB_CALLBACKBYTES, (long) fsz/10, conn);
qDebug("Get: %s, %s",localFile.latin1(),remoteFile.latin1());
if(!FtpGet( localFile.latin1(), remoteFile.latin1(),FTPLIB_IMAGE, conn ) ) {
QString msg;
msg.sprintf(tr("Unable to download \n")+"%s",FtpLastResponse(conn));
msg.replace(QRegExp(":"),"\n");
QMessageBox::message(tr("Note"),msg);
}
ProgressBar->reset();
nullifyCallBack();
it.current()->setSelected(FALSE);
}
}
for ( ; it.current(); ++it ) {
Remote_View->clearSelection();
}
Remote_View->setFocus();
TabWidget->setCurrentPage(0);
populateLocalView();
// QCopEnvelope ( "QPE/System", "notBusy()" );
}
bool OpieFtp::remoteDirList(const QString &dir)
{
QString tmp = QDir::homeDirPath();
if(tmp.right(1) != "/")
tmp+="/._temp";
else
tmp+="._temp";
// qDebug("Listing remote dir "+tmp);
// QCopEnvelope ( "QPE/System", "busy()" );
if (!FtpDir( tmp.latin1(), dir.latin1(), conn) ) {
QString msg;
msg.sprintf(tr("Unable to list the directory\n")+dir+"\n%s",FtpLastResponse(conn) );
msg.replace(QRegExp(":"),"\n");
QMessageBox::message(tr("Note"),msg);
return false;
}
populateRemoteView() ;
// QCopEnvelope ( "QPE/System", "notBusy()" );
return true;
}
bool OpieFtp::remoteChDir(const QString &dir)
{
// QCopEnvelope ( "QPE/System", "busy()" );
if (!FtpChdir( dir.latin1(), conn )) {
QString msg;
msg.sprintf(tr("Unable to change directories\n")+dir+"\n%s",FtpLastResponse(conn));
msg.replace(QRegExp(":"),"\n");
QMessageBox::message(tr("Note"),msg);
// qDebug(msg);
// QCopEnvelope ( "QPE/System", "notBusy()" );
return FALSE;
}
// QCopEnvelope ( "QPE/System", "notBusy()" );
return TRUE;
}
void OpieFtp::populateLocalView()
{
Local_View->clear();
currentDir.setSorting(/* QDir::Size*/ /*| QDir::Reversed | */QDir::DirsFirst);
currentDir.setMatchAllDirs(TRUE);
currentDir.setNameFilter(filterStr);
QString fileL, fileS, fileDate;
bool isDir=FALSE;
const QFileInfoList *list = currentDir.entryInfoList( /*QDir::All*/ /*, QDir::SortByMask*/);
QFileInfoListIterator it(*list);
QFileInfo *fi;
while ( (fi=it.current()) ) {
if (fi->isSymLink() ){
QString symLink=fi->readLink();
// qDebug("Symlink detected "+symLink);
QFileInfo sym( symLink);
fileS.sprintf( "%10i", sym.size() );
fileL.sprintf( "%s -> %s", fi->fileName().data(),sym.absFilePath().data() );
fileDate = sym.lastModified().toString();
} else {
// qDebug("Not a dir: "+currentDir.canonicalPath()+fileL);
fileS.sprintf( "%10i", fi->size() );
fileL.sprintf( "%s",fi->fileName().data() );
fileDate= fi->lastModified().toString();
if( QDir(QDir::cleanDirPath(currentDir.canonicalPath()+"/"+fileL)).exists() ) {
fileL+="/";
isDir=TRUE;
// qDebug( fileL);
}
}
if(fileL !="./" && fi->exists()) {
item = new QListViewItem( Local_View,fileL, fileDate, fileS );
QPixmap pm;
if(isDir || fileL.find("/",0,TRUE) != -1) {
if( !QDir( fi->filePath() ).isReadable())
pm = Resource::loadPixmap( "lockedfolder" );
else
pm= Resource::loadPixmap( "folder" );
item->setPixmap( 0,pm );
} else {
if( !fi->isReadable() )
pm = Resource::loadPixmap( "locked" );
else {
MimeType mt(fi->filePath());
pm=mt.pixmap(); //sets the correct pixmap for mimetype
if(pm.isNull())
pm = unknownXpm;
}
}
if( fileL.find("->",0,TRUE) != -1) {
// overlay link image
pm= Resource::loadPixmap( "folder" );
QPixmap lnk = Resource::loadPixmap( "opie/symlink" );
QPainter painter( &pm );
painter.drawPixmap( pm.width()-lnk.width(), pm.height()-lnk.height(), lnk );
pm.setMask( pm.createHeuristicMask( FALSE ) );
}
item->setPixmap( 0,pm);
}
isDir=FALSE;
++it;
}
Local_View->setSorting( 3,FALSE);
currentPathCombo->lineEdit()->setText( currentDir.canonicalPath() );
fillCombo( (const QString &)currentDir);
}
bool OpieFtp::populateRemoteView( )
{
// qDebug("populate remoteview");
QString sfile=QDir::homeDirPath();
if(sfile.right(1) != "/")
sfile+="/._temp";
else
sfile+="._temp";
QFile file( sfile);
Remote_View->clear();
QString s, File_Name;
QListViewItem *itemDir=NULL, *itemFile=NULL;
QRegExp monthRe(" [JFMASOND][eapuecoe][brynlgptvc] [ 0-9][0-9] [ 0-9][0-9][:0-9][0-9][0-9] ");
QString fileL, fileS, fileDate;
if ( file.open(IO_ReadOnly)) {
QTextStream t( &file ); // use a text stream
while ( !t.eof()) {
s = t.readLine();
if(s.find("total",0,TRUE) == 0)
continue;
int len, month = monthRe.match(s, 0, &len);
fileDate = s.mid(month + 1, len - 2); // minus spaces
fileL = s.right(s.length() - month - len);
if(s.left(1) == "d")
fileL = fileL+"/";
fileS = s.mid(month - 8, 8); // FIXME
fileS = fileS.stripWhiteSpace();
if(s.left(1) == "d" || fileL.find("/",0,TRUE) != -1) {
QListViewItem * item = new QListViewItem( Remote_View, fileL, fileDate, fileS,"d");
item->setPixmap( 0, Resource::loadPixmap( "folder" ));
// if(itemDir)
item->moveItem(itemDir);
itemDir=item;
} else {
QListViewItem * item = new QListViewItem( Remote_View, fileL, fileDate, fileS,"f");
item->setPixmap( 0, Resource::loadPixmap( "fileopen" ));
// if(itemFile)
item->moveItem(itemDir);
item->moveItem(itemFile);
itemFile=item;
}
}
QListViewItem * item1 = new QListViewItem( Remote_View, "../");
item1->setPixmap( 0, Resource::loadPixmap( "folder" ));
file.close();
if( file.exists())
file. remove();
} else
- qDebug("temp file not opened successfullly "+sfile);
+ qDebug("temp file not opened successfully "+sfile);
Remote_View->setSorting( 4,TRUE);
return true;
}
void OpieFtp::remoteListClicked(QListViewItem *selectedItem)
{
if( selectedItem) {
// if(selectedItem!= NULL) {
// QCopEnvelope ( "QPE/System", "busy()" );
QString oldRemoteCurrentDir = currentRemoteDir;
QString strItem=selectedItem->text(0);
strItem=strItem.simplifyWhiteSpace();
if(strItem == "../") { // the user wants to go ^
if( FtpCDUp( conn) == 0) {
QString msg;
msg.sprintf(tr("Unable to cd up\n")+"%s",FtpLastResponse(conn));
msg.replace(QRegExp(":"),"\n");
QMessageBox::message(tr("Note"),msg);
// qDebug(msg);
}
char path[256];
if( FtpPwd( path,sizeof(path),conn) == 0) { //this is easier than fudging the string
QString msg;
msg.sprintf(tr("Unable to get working dir\n")+"%s",FtpLastResponse(conn));
msg.replace(QRegExp(":"),"\n");
QMessageBox::message(tr("Note"),msg);
// qDebug(msg);
}
currentRemoteDir=path;
} else {
if(strItem.find("->",0,TRUE) != -1) { //symlink on some servers
strItem=strItem.right( strItem.length() - strItem.find("->",0,TRUE) - 2 );
strItem = strItem.stripWhiteSpace();
currentRemoteDir = strItem;
if( !remoteChDir( (const QString &)strItem)) {
currentRemoteDir = oldRemoteCurrentDir;
strItem="";
// qDebug("RemoteCurrentDir1 "+oldRemoteCurrentDir);
}
} else if(strItem.find("/",0,TRUE) != -1) { // this is a directory
if( !remoteChDir( (const QString &)currentRemoteDir + strItem)) {
currentRemoteDir = oldRemoteCurrentDir;
strItem="";
// qDebug("RemoteCurrentDir1 "+oldRemoteCurrentDir);
} else {
currentRemoteDir = currentRemoteDir+strItem;
}
} else {
// QCopEnvelope ( "QPE/System", "notBusy()" );
return;
}
}
remoteDirList( (const QString &)currentRemoteDir); //this also calls populate
if(currentRemoteDir.right(1) !="/")
currentRemoteDir +="/";
currentPathCombo->lineEdit()->setText( currentRemoteDir);
fillRemoteCombo( (const QString &)currentRemoteDir);
// QCopEnvelope ( "QPE/System", "notBusy()" );
Remote_View->ensureItemVisible(Remote_View->firstChild());
}
}
void OpieFtp::localListClicked(QListViewItem *selectedItem)
{
if(selectedItem!= NULL) {
QString strItem=selectedItem->text(0);
QString strSize=selectedItem->text(1);
strSize=strSize.stripWhiteSpace();
if(strItem.find("@",0,TRUE) !=-1 || strItem.find("->",0,TRUE) !=-1 ) { //if symlink
// is symlink
QString strItem2 = strItem.right( (strItem.length() - strItem.find("->",0,TRUE)) - 4);
if(QDir(strItem2).exists() ) {
currentDir.cd(strItem2, TRUE);
populateLocalView();
}
} else { // not a symlink
if(strItem.find(". .",0,TRUE) && strItem.find("/",0,TRUE)!=-1 ) {
if(QDir(QDir::cleanDirPath(currentDir.canonicalPath()+"/"+strItem)).exists() ) {
strItem=QDir::cleanDirPath(currentDir.canonicalPath()+"/"+strItem);
currentDir.cd(strItem,FALSE);
populateLocalView();
} else {
currentDir.cdUp();
populateLocalView();
}
if(QDir(strItem).exists()){
currentDir.cd(strItem, TRUE);
populateLocalView();
}
} else {
strItem=QDir::cleanDirPath(currentDir.canonicalPath()+"/"+strItem);
if( QFile::exists(strItem ) ) {
// qDebug("upload "+strItem);
return;
}
} //end not symlink
chdir(strItem.latin1());
}
Local_View->ensureItemVisible(Local_View->firstChild());
}
}
void OpieFtp::doLocalCd()
{
localListClicked( Local_View->currentItem());
}
void OpieFtp:: doRemoteCd()
{
remoteListClicked( Remote_View->currentItem());
}
void OpieFtp::showHidden()
{
if (!b) {
currentDir.setFilter( QDir::Files | QDir::Dirs | QDir::Hidden | QDir::All);
localMenu->setItemChecked(localMenu->idAt(0),TRUE);
// currentDir.setSorting(/* QDir::Size*/ /*| QDir::Reversed | */QDir::DirsFirst);
b=TRUE;
} else {
currentDir.setFilter( QDir::Files | QDir::Dirs/* | QDir::Hidden*/ | QDir::All);
localMenu->setItemChecked(localMenu->idAt(0),FALSE);
// currentDir.setSorting(/* QDir::Size*/ /*| QDir::Reversed | */QDir::DirsFirst);
b=FALSE;
}
populateLocalView();
}
void OpieFtp::ListPressed( int mouse, QListViewItem *item, const QPoint &, int)
{
// if(item)
if (mouse == 2) {
showLocalMenu(item);
}
}
void OpieFtp::RemoteListPressed( int mouse, QListViewItem *item, const QPoint &, int )
{
if(mouse == 2) {
showRemoteMenu(item);
}
}
void OpieFtp::showRemoteMenu(QListViewItem * item)
{
QPopupMenu * m;// = new QPopupMenu( Local_View );
m = new QPopupMenu(this);
if(item != NULL ) {
if( item->text(0).find("/",0,TRUE) != -1)
m->insertItem( tr( "Change Directory" ), this, SLOT( doRemoteCd() ));
else
m->insertItem( tr( "Download" ), this, SLOT( remoteDownload() ));
}
m->insertItem( tr( "Make Directory" ), this, SLOT( remoteMakDir() ));
m->insertItem( tr("Rescan"), this, SLOT( populateLocalView() ));
m->insertItem( tr( "Rename" ), this, SLOT( remoteRename() ));
m->insertSeparator();
m->insertItem( tr( "Delete" ), this, SLOT( remoteDelete() ));
m->exec( QCursor::pos() );
delete m;
}
void OpieFtp::showLocalMenu(QListViewItem * item)
{
QPopupMenu *m;
m = new QPopupMenu( this);
m->insertItem( tr( "Show Hidden Files" ), this, SLOT( showHidden() ));
m->insertSeparator();
if(item != NULL ) {
if( item->text(0).find("/",0,TRUE) !=-1)
m->insertItem( tr( "Change Directory" ), this, SLOT( doLocalCd() ));
else
m->insertItem( tr( "Upload" ), this, SLOT( localUpload() ));
}
m->insertItem( tr( "Make Directory" ), this, SLOT( localMakDir() ));
m->insertItem( tr("Rescan"), this, SLOT( populateRemoteView() ));
m->insertItem( tr( "Rename" ), this, SLOT( localRename() ));
m->insertSeparator();
m->insertItem( tr( "Delete" ), this, SLOT( localDelete() ));
m->setCheckable(TRUE);
if (b)
m->setItemChecked(m->idAt(0),TRUE);
else
m->setItemChecked(m->idAt(0),FALSE);
m->exec( QCursor::pos() );
delete m;
}
void OpieFtp::localMakDir()
{
InputDialog *fileDlg;
fileDlg = new InputDialog(this,tr("Make Directory"),TRUE, 0);
fileDlg->exec();
if( fileDlg->result() == 1 ) {
QString filename = fileDlg->LineEdit1->text();
currentDir.mkdir( currentDir.canonicalPath()+"/"+filename);
}
populateLocalView();
}
void OpieFtp::localDelete()
{
QList<QListViewItem> * getSelectedItems( QListView * Local_View );
QListViewItemIterator it( Local_View );
for ( ; it.current(); ++it ) {
if ( it.current()->isSelected() ) {
QString f = it.current()->text(0);
it.current()->setSelected(FALSE);
// QString f = Local_View->currentItem()->text(0);
if(QDir(f).exists() ) {
switch ( QMessageBox::warning(this,tr("Delete"),tr("Do you really want to delete\n")+f+
tr(" ?\nIt must be empty"),tr("Yes"),tr("No"),0,0,1) ) {
case 0: {
f=currentDir.canonicalPath()+"/"+f;
QString cmd="rmdir "+f;
system( cmd.latin1());
}
break;
case 1:
// exit
break;
};
} else {
switch ( QMessageBox::warning(this,tr("Delete"),tr("Do you really want to delete\n")+f
+" ?",tr("Yes"),tr("No"),0,0,1) ) {
case 0: {
f=currentDir.canonicalPath()+"/"+f;
QString cmd="rm "+f;
system( cmd.latin1());
}
break;
case 1:
// exit
break;
};
}
}
}
populateLocalView();
}
void OpieFtp::remoteMakDir()
{
InputDialog *fileDlg;
fileDlg = new InputDialog(this,tr("Make Directory"),TRUE, 0);
fileDlg->exec();
if( fileDlg->result() == 1 ) {
QString filename = fileDlg->LineEdit1->text();//+".playlist";
QString tmp=currentRemoteDir+filename;
// QCopEnvelope ( "QPE/System", "busy()" );
if(FtpMkdir( tmp.latin1(), conn) == 0) {
QString msg;
msg.sprintf(tr("Unable to make directory\n")+"%s",FtpLastResponse(conn));
msg.replace(QRegExp(":"),"\n");
QMessageBox::message(tr("Note"),msg);
}
// QCopEnvelope ( "QPE/System", "notBusy()" );
remoteDirList( (const QString &)currentRemoteDir); //this also calls populate
}
}
void OpieFtp::remoteDelete()
{
QList<QListViewItem> * getSelectedItems( QListView * Remote_View );
QListViewItemIterator it( Remote_View );
for ( ; it.current(); ++it ) {
if ( it.current()->isSelected() ) {
QString f = it.current()->text(0);
// QString f = Remote_View->currentItem()->text(0);
// QCopEnvelope ( "QPE/System", "busy()" );
if( f.right(1) =="/") {
QString path= currentRemoteDir+f;
switch ( QMessageBox::warning(this,tr("Delete"),tr("Do you really want to delete\n")+f+"?"
,tr("Yes"),tr("No"),0,0,1) ) {
case 0: {
f=currentDir.canonicalPath()+"/"+f;
if(FtpRmdir( path.latin1(), conn) ==0) {
QString msg;
msg.sprintf(tr("Unable to remove directory\n")+"%s",FtpLastResponse(conn));
msg.replace(QRegExp(":"),"\n");
QMessageBox::message(tr("Note"),msg);
}
remoteDirList( (const QString &)currentRemoteDir); //this also calls populate
}
break;
};
} else {
switch ( QMessageBox::warning(this,tr("Delete"),tr("Do you really want to delete\n")+f+"?"
,tr("Yes"),tr("No"),0,0,1) ) {
case 0: {
QString path= currentRemoteDir+f;
if(FtpDelete( path.latin1(), conn)==0) {
QString msg;
msg.sprintf(tr("Unable to delete file\n")+"%s",FtpLastResponse(conn));
msg.replace(QRegExp(":"),"\n");
QMessageBox::message(tr("Note"),msg);
}
remoteDirList( (const QString &)currentRemoteDir); //this also calls populate
}
break;
};
}
}
}
// QCopEnvelope ( "QPE/System", "notBusy()" );
}
void OpieFtp::remoteRename()
{
QString curFile = Remote_View->currentItem()->text(0);
InputDialog *fileDlg;
fileDlg = new InputDialog(this,tr("Rename"),TRUE, 0);
fileDlg->setTextEdit((const QString &)curFile);
fileDlg->exec();
if( fileDlg->result() == 1 ) {
QString oldName = currentRemoteDir +"/"+ curFile;
QString newName = currentRemoteDir +"/"+ fileDlg->LineEdit1->text();//+".playlist";
// QCopEnvelope ( "QPE/System", "busy()" );
if(FtpRename( oldName.latin1(), newName.latin1(),conn) == 0) {
QString msg;
msg.sprintf(tr("Unable to rename file\n")+"%s",FtpLastResponse(conn));
msg.replace(QRegExp(":"),"\n");
QMessageBox::message(tr("Note"),msg);
}
// QCopEnvelope ( "QPE/System", "notBusy()" );
remoteDirList( (const QString &)currentRemoteDir); //this also calls populate
}
}
void OpieFtp::localRename()
{
QString curFile = Local_View->currentItem()->text(0);
InputDialog *fileDlg;
fileDlg = new InputDialog(this,tr("Rename"),TRUE, 0);
fileDlg->setTextEdit((const QString &)curFile);
fileDlg->exec();
if( fileDlg->result() == 1 ) {
QString oldname = currentDir.canonicalPath() + "/" + curFile;
QString newName = currentDir.canonicalPath() + "/" + fileDlg->LineEdit1->text();//+".playlist";
if( rename(oldname.latin1(), newName.latin1())== -1)
QMessageBox::message(tr("Note"),tr("Could not rename"));
}
populateLocalView();
}
void OpieFtp::currentPathComboActivated(const QString & currentPath) {
if (TabWidget->currentPageIndex() == 0) {
chdir( currentPath.latin1() );
currentDir.cd( currentPath, TRUE);
populateLocalView();
update();
} else {
// chdir( currentPath.latin1() );
// currentDir.cd( currentPath, TRUE);
// populateList();
// update();
}
}
void OpieFtp::fillCombo(const QString &currentPath) {
currentPathCombo->lineEdit()->setText(currentPath);
if( localDirPathStringList.grep(currentPath,TRUE).isEmpty() ) {
currentPathCombo->clear();
localDirPathStringList.prepend(currentPath );
currentPathCombo->insertStringList( localDirPathStringList,-1);
}
currentPathCombo->lineEdit()->setText(currentPath);
if( remoteDirPathStringList.grep(currentPath,TRUE).isEmpty() ) {
currentPathCombo->clear();
remoteDirPathStringList.prepend(currentPath );
currentPathCombo->insertStringList( remoteDirPathStringList,-1);
}
}
void OpieFtp::fillRemoteCombo(const QString &currentPath) {
currentPathCombo->lineEdit()->setText(currentPath);
if( remoteDirPathStringList.grep(currentPath,TRUE).isEmpty() ) {
currentPathCombo->clear();
remoteDirPathStringList.prepend(currentPath );
currentPathCombo->insertStringList( remoteDirPathStringList,-1);
}
}
void OpieFtp::currentPathComboChanged()
{
QString oldRemoteCurrentDir = currentRemoteDir;
// qDebug("oldRemoteCurrentDir "+oldRemoteCurrentDir);
if (TabWidget->currentPageIndex() == 0) {
if(QDir( currentPathCombo->lineEdit()->text()).exists()) {
currentDir.setPath( currentPathCombo->lineEdit()->text() );
populateLocalView();
} else {
QMessageBox::message(tr("Note"),tr("That directory does not exist"));
}
}
if (TabWidget->currentPageIndex() == 1) {
currentRemoteDir = currentPathCombo->lineEdit()->text();
if(currentRemoteDir.right(1) !="/") {
currentRemoteDir = currentRemoteDir +"/";
currentPathCombo->lineEdit()->setText( currentRemoteDir );
}
if( !remoteChDir( (const QString &)currentRemoteDir) ) {
currentRemoteDir = oldRemoteCurrentDir;
currentPathCombo->lineEdit()->setText( currentRemoteDir );
}
remoteDirList( (const QString &)currentRemoteDir);
}
}
void OpieFtp::switchToLocalTab()
{
TabWidget->setCurrentPage(0);
}
void OpieFtp::switchToRemoteTab()
{
TabWidget->setCurrentPage(1);
}
void OpieFtp::switchToConfigTab()
{
TabWidget->setCurrentPage(2);
}
void OpieFtp::readConfig()
{
fillCombos();
Config cfg("opieftp");
cfg.setGroup("Server");
currentServerConfig = cfg.readNumEntry("currentServer", -1);
// qDebug("Reading %d", currentServerConfig);
serverComboSelected( currentServerConfig-1);
}
void OpieFtp::writeConfig()
{
qDebug("write config");
Config cfg("opieftp");
cfg.setGroup("Server");
QString username, remoteServerStr, remotePathStr, password, port, temp;
int numberOfEntries = cfg.readNumEntry("numberOfEntries",0);
if( currentServerConfig == -1) {
for (int i = 1; i <= numberOfEntries; i++) {
temp.setNum(i);
cfg.setGroup("Server");
QString tempStr = cfg.readEntry( temp,"");
}
temp.setNum( numberOfEntries + 1);
cfg.setGroup("Server");
remoteServerStr = cfg.readEntry( temp,"");
int divider = remoteServerStr.length() - remoteServerStr.find(":",0,TRUE);
remoteServerStr = remoteServerStr.left(remoteServerStr.length()-divider);
temp.setNum(numberOfEntries+1);
cfg.setGroup("Server");
cfg.writeEntry( temp, ServerComboBox->currentText() +":"+PortSpinBox->cleanText() );
cfg.writeEntry("currentServer", numberOfEntries+1);
currentServerConfig = numberOfEntries+1;
qDebug("setting currentserverconfig to %d", currentServerConfig);
cfg.setGroup(temp);
if(!newServerName.isEmpty())
cfg.writeEntry("ServerName", newServerName);
cfg.writeEntry("RemotePath", remotePath->text());
cfg.writeEntry("Username", UsernameComboBox->currentText());
cfg.writeEntryCrypt( UsernameComboBox->currentText(), PasswordEdit->text());
cfg.setGroup("Server");
cfg.writeEntry("numberOfEntries", QString::number(numberOfEntries + 1 ));
}
}
void OpieFtp::clearCombos() {
qDebug("clearing");
ServerComboBox->clear();
UsernameComboBox->clear();
PasswordEdit->clear();
serverListView->clear();
}
void OpieFtp::fillCombos()
{
clearCombos();
Config cfg("opieftp");
cfg.setGroup("Server");
QString username, remoteServerStr, remotePathStr, password, port, temp;
int numberOfEntries = cfg.readNumEntry("numberOfEntries",0);
for (int i = 1; i <= numberOfEntries; i++) {
temp.setNum(i);
qDebug(temp);
cfg.setGroup("Server");
remoteServerStr = cfg.readEntry( temp,"");
qDebug( remoteServerStr);
int divider = remoteServerStr.length() - remoteServerStr.find(":",0,TRUE);
port = remoteServerStr.right( divider - 1);
bool ok;
PortSpinBox->setValue( port.toInt(&ok,10));
remoteServerStr = remoteServerStr.left(remoteServerStr.length()-divider);
qDebug( "remote server string "+remoteServerStr);
ServerComboBox->insertItem( remoteServerStr );
cfg.setGroup(temp);
username = cfg.readEntry(temp);
UsernameComboBox->insertItem(username);
password = cfg.readEntryCrypt(username,"");
PasswordEdit->setText(password);
serverListView->insertItem( cfg.readEntry("ServerName"));
}
}
void OpieFtp::serverComboSelected(int index)
{
currentServerConfig = index+1;
qDebug("server combo selected %d", index+1);
QString username, remoteServerStr, remotePathStr, password, port, temp;
// remoteServerStr = ServerComboBox->text(index);
Config cfg("opieftp");
cfg.setGroup("Server");
// int numberOfEntries = cfg.readNumEntry("numberOfEntries",0);
temp.setNum(index+1);
remoteServerStr = cfg.readEntry( temp,"");
qDebug("Group" +temp);
cfg.setGroup(temp);
// qDebug(temp);
int divider = remoteServerStr.length() - remoteServerStr.find(":",0,TRUE);
port = remoteServerStr.right( divider - 1);
bool ok;
int portInt = port.toInt(&ok,10);
if( portInt == 0) portInt = 21;
ServerComboBox->lineEdit()->setText(remoteServerStr.left( remoteServerStr.find(":",0,TRUE)));
PortSpinBox->setValue( portInt);
remotePath->setText(cfg.readEntry("RemotePath", "/"));
username = cfg.readEntry("Username", "anonymous");
UsernameComboBox->lineEdit()->setText(username);
qDebug(username);
// qDebug("Password is "+cfg.readEntryCrypt(username, "me@opieftp.org"));
PasswordEdit->setText(cfg.readEntryCrypt(username, "me@opieftp.org"));
// UsernameComboBox
// PasswordEdit
cfg.setGroup("Server");
temp.sprintf("%d",currentServerConfig);
cfg.writeEntry("currentServer", temp);
fuckeduphack = TRUE;
serverListView->setCurrentItem( index);
fuckeduphack=FALSE;
qDebug("server list set selected %d",index);
update();
}
void OpieFtp::deleteServer()
{
QString username, remoteServerStr, remotePathStr, password, port, temp, servername;
remoteServerStr = ServerComboBox->currentText( );
username = UsernameComboBox->currentText();
servername=serverListView->currentText();
Config cfg("opieftp");
cfg.setGroup("Server");
QString tempname;
int numberOfEntries = cfg.readNumEntry("numberOfEntries",0);
for (int i = 1; i <= numberOfEntries; i++) {
temp.setNum(i);
// cfg.setGroup("Server");
cfg.setGroup(QString::number(i));
tempname=cfg.readEntry( "ServerName","");
if( tempname.find( servername,0,TRUE) != -1 ) {
// servername.find( cfg.readEntry("ServerName")) != -1 &&
// remoteServerStr.find( cfg.readEntry("RemotePath")) != -1 &&
// username.find( cfg.readEntry("Username")) != -1) {
serverListView->removeItem(i);
qDebug("OK DELETE "+tempname);
cfg.removeEntry(QString::number(i));
for ( ; i <= numberOfEntries; i++) {
cfg.setGroup("Server");
cfg.writeEntry("Server", QString::number(numberOfEntries + 1 ));
cfg.setGroup(QString::number(i+1)); //get next server config
servername=cfg.readEntry("ServerName");
remoteServerStr=cfg.readEntry("RemotePath");
username=cfg.readEntry("Username");
password=cfg.readEntryCrypt( username);
cfg.setGroup(QString::number(i));
cfg.writeEntry("RemotePath", remoteServerStr);
cfg.writeEntry("ServerName", servername);
cfg.writeEntry("Username", username);
cfg.writeEntryCrypt( username, password);
}
cfg.setGroup("Server");
cfg.writeEntry("numberOfEntries", QString::number(numberOfEntries - 1 ));
}
}
cfg.setGroup(QString::number(numberOfEntries));
cfg.removeEntry("Server");
cfg.removeEntry("RemotePath");
cfg.removeEntry("ServerName");
username=cfg.readEntry("Username");
cfg.removeEntry("Username");
cfg.removeEntry(username);
currentServerConfig=currentServerConfig-1;
fillCombos();
update();
}
void OpieFtp::upDir()
{
if (TabWidget->currentPageIndex() == 0) {
QString current = currentDir.canonicalPath();
QDir dir(current);
dir.cdUp();
current = dir.canonicalPath();
chdir( current.latin1() );
currentDir.cd( current, TRUE);
populateLocalView();
update();
} else {
if( FtpCDUp( conn) == 0) {
QString msg;
msg.sprintf(tr("Unable to cd up\n")+"%s",FtpLastResponse(conn));
msg.replace(QRegExp(":"),"\n");
QMessageBox::message(tr("Note"),msg);
// qDebug(msg);
}
char path[256];
if( FtpPwd( path,sizeof(path),conn) == 0) { //this is easier than fudging the string
QString msg;
msg.sprintf(tr("Unable to get working dir\n")+"%s",FtpLastResponse(conn));
msg.replace(QRegExp(":"),"\n");
QMessageBox::message(tr("Note"),msg);
// qDebug(msg);
}
currentRemoteDir=path;
remoteDirList( (const QString &)currentRemoteDir); //this also calls populate
if(currentRemoteDir.right(1) !="/")
currentRemoteDir +="/";
currentPathCombo->lineEdit()->setText( currentRemoteDir);
fillRemoteCombo( (const QString &)currentRemoteDir);
}
}
void OpieFtp::docButtonPushed() {
QString current = QPEApplication::documentDir();
chdir( current.latin1() );
currentDir.cd( current, TRUE);
populateLocalView();
update();
}
void OpieFtp::homeButtonPushed() {
QString current = QDir::homeDirPath();
chdir( current.latin1() );
currentDir.cd( current, TRUE);
populateLocalView();
update();
}
void OpieFtp::doAbout() {
QMessageBox::message("OpieFtp","Opie ftp client is copyright 2002 by\n"
"L.J.Potter<llornkcor@handhelds.org>\n"
"and uses ftplib copyright 1996-2000\n"
"by Thomas Pfau, pfau@cnj.digex.net\n\n"
"and is licensed by the GPL");
}
void OpieFtp::NewServer() {
InputDialog *fileDlg;
fileDlg = new InputDialog(this,tr("New Server name"),TRUE, 0);
fileDlg->exec();
Config cfg("opieftp");
if( fileDlg->result() == 1 ) {
newServerName = fileDlg->LineEdit1->text();
for(int i=1;i<serverListView->count();i++) {
cfg.setGroup( QString::number(i));
if(cfg.readEntry("ServerName").find(newServerName,0,TRUE) != -1) {
QMessageBox::message(tr("OpieFtp"),tr("Sorry name already taken"));
return;
}
}
currentServerConfig =-1;
writeConfig();
serverListView->insertItem( newServerName );
serverListView->setCurrentItem( serverListView->count());
}
}
void OpieFtp::serverListClicked( const QString &item) {
if(item.isEmpty()) return;
Config cfg("opieftp");
qDebug("highltined "+item);
int numberOfEntries = cfg.readNumEntry("numberOfEntries",0);
for (int i = 1; i <= numberOfEntries; i++) {
cfg.setGroup(QString::number(i));
if(cfg.readEntry( "ServerName").find(item) != -1 && !fuckeduphack)
serverComboSelected(i-1);
}
}
void OpieFtp::timerOut() {
}
diff --git a/noncore/settings/backup/backuprestore.cpp b/noncore/settings/backup/backuprestore.cpp
index 477e24d..93bedf6 100644
--- a/noncore/settings/backup/backuprestore.cpp
+++ b/noncore/settings/backup/backuprestore.cpp
@@ -1,471 +1,471 @@
#include "backuprestore.h"
//#include "output.h"
#include "errordialog.h"
#include <qapplication.h>
#include <qmultilineedit.h>
#include <qdir.h>
#include <qfile.h>
#include <qfileinfo.h>
#include <qlistview.h>
#include <qpushbutton.h>
#include <qheader.h>
#include <qpe/resource.h>
#include <qpe/config.h>
#include <qmessagebox.h>
#include <qcombobox.h>
#include <qlist.h>
#include <stdlib.h>
#include <qregexp.h>
#include <qtextstream.h>
#include <qtextview.h>
#include <qpe/storage.h>
#include <errno.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/stat.h>
#include <dirent.h>
#define HEADER_NAME 0
#define HEADER_BACKUP 1
#define BACKUP_LOCATION 2
#define EXTENSION ".bck"
const QString tempFileName = "/tmp/backup.err";
BackupAndRestore::BackupAndRestore( QWidget* parent, const char* name, WFlags fl)
: BackupAndRestoreBase(parent, name, fl)
{
this->showMaximized();
backupList->header()->hide();
restoreList->header()->hide();
connect(backupButton, SIGNAL(clicked()),
this, SLOT(backup()));
connect(restoreButton, SIGNAL(clicked()),
this, SLOT(restore()));
connect(backupList, SIGNAL(clicked( QListViewItem * )),
this, SLOT(selectItem(QListViewItem*)));
connect(restoreSource, SIGNAL(activated( int )),
this, SLOT(sourceDirChanged(int)));
connect(updateList, SIGNAL(clicked()),
this, SLOT( fileListUpdate()));
//add directorys for backing up
applicationSettings = new QListViewItem(backupList, "Application Settings", "", "Settings/");
selectItem(applicationSettings);
applicationSettings = new QListViewItem(backupList, "Application Data", "", "Applications/");
selectItem(applicationSettings);
documents= new QListViewItem(backupList, "Documents", "", "Documents/");
selectItem(documents);
scanForApplicationSettings();
backupLocations.insert( "Documents", QDir::homeDirPath() + "/Documents" );
if (StorageInfo::hasCf())
{
backupLocations.insert("CF", "/mnt/cf");
}
if (StorageInfo::hasSd() || StorageInfo::hasMmc())
{
backupLocations.insert("SD", "/mnt/card");
}
Config config("BackupAndRestore");
//read last locations
config.setGroup("LastLocation");
QString lastStoreLocation = config.readEntry( "LastStoreLocation", "" );
QString lastRestoreLocation = config.readEntry( "LastRestoreLocation", "" );
int locationIndex = 0;
QMap<QString, QString>::Iterator it;
for( it = backupLocations.begin(); it != backupLocations.end(); ++it )
{
storeToLocation->insertItem(it.key());
restoreSource->insertItem(it.key());
//check for last locations
if ( it.key() == lastStoreLocation )
storeToLocation->setCurrentItem( locationIndex );
if ( it.key() == lastRestoreLocation )
restoreSource->setCurrentItem( locationIndex );
locationIndex++;
}
// Read the list of items to ignore.
QList<QString> dontBackupList;
dontBackupList.setAutoDelete(true);
config.setGroup("DontBackup");
int total = config.readNumEntry("Total", 0);
for(int i = 0; i < total; i++)
{
dontBackupList.append(new QString(config.readEntry(QString("%1").arg(i), "")));
}
QList<QListViewItem> list;
getAllItems(backupList->firstChild(), list);
for(uint i = 0; i < list.count(); i++)
{
QString text = list.at(i)->text(HEADER_NAME);
for(uint i2 = 0; i2 < dontBackupList.count(); i2++)
{
if(*dontBackupList.at(i2) == text)
{
selectItem(list.at(i));
break;
}
}
}
}
BackupAndRestore::~BackupAndRestore()
{
QList<QListViewItem> list;
getAllItems(backupList->firstChild(), list);
Config config("BackupAndRestore");
config.setGroup("DontBackup");
config.clearGroup();
int count = 0;
for(uint i = 0; i < list.count(); i++)
{
if(list.at(i)->text(HEADER_BACKUP) == "")
{
config.writeEntry(QString("%1").arg(count), list.at(i)->text(HEADER_NAME));
count++;
}
}
config.writeEntry("Total", count);
// Remove Temp File
if ( QFile::exists( tempFileName ) )
QFile::remove( tempFileName );
}
QList<QListViewItem> BackupAndRestore::getAllItems(QListViewItem *item, QList<QListViewItem> &list)
{
while(item)
{
if(item->childCount() > 0)
getAllItems(item->firstChild(), list);
list.append(item);
item = item->nextSibling();
}
return list;
}
/**
* Selects and unselects the item by setting the HEADER_BACKUP to B or !.
* and changing the icon to match
* @param currentItem the item to swich the selection choice.
*/
void BackupAndRestore::selectItem(QListViewItem *currentItem)
{
if(!currentItem)
return;
if(currentItem->text(HEADER_BACKUP) == "B")
{
currentItem->setPixmap(HEADER_NAME, Resource::loadPixmap("backup/null"));
currentItem->setText(HEADER_BACKUP, "");
}
else
{
currentItem->setPixmap(HEADER_NAME, Resource::loadPixmap("backup/check"));
currentItem->setText(HEADER_BACKUP, "B");
}
}
void BackupAndRestore::scanForApplicationSettings()
{
QDir d( QDir::homeDirPath() + "/" + QString( applicationSettings->text(BACKUP_LOCATION) ) );
d.setFilter( QDir::Dirs | QDir::Files | QDir::NoSymLinks );
const QFileInfoList *list = d.entryInfoList();
QFileInfoListIterator it( *list );
QFileInfo *fi;
while ( (fi=it.current()) )
{
//qDebug((d.path()+"/"+fi->fileName()).latin1());
if ( ( fi->fileName() != "." ) && ( fi->fileName() != ".." ) )
{
QListViewItem *newItem = new QListViewItem(applicationSettings, fi->fileName());
selectItem(newItem);
}
++it;
}
}
/**
* The "Backup" button has been pressed. Get a list of all of the files that
* should be backed up. If there are no files, emit and error and exit.
* Determine the file name to store the backup in. Backup the file(s) using
* tar and gzip --best. Report failure or success
*/
void BackupAndRestore::backup()
{
QString backupFiles;
if(getBackupFiles(backupFiles, NULL) == 0)
{
QMessageBox::critical(this, "Message",
"No items selected.",QString("Ok") );
return;
}
setCaption(tr("Backup and Restore... working..."));
QString outputFile = backupLocations[storeToLocation->currentText()];
QDateTime datetime = QDateTime::currentDateTime();
QString dateString = QString::number( datetime.date().year() ) + QString::number( datetime.date().month() ).rightJustify(2, '0') +
QString::number( datetime.date().day() ).rightJustify(2, '0');
outputFile += "/" + dateString;
QString t = outputFile;
int c = 1;
while(QFile::exists(outputFile + EXTENSION))
{
outputFile = t + QString("%1").arg(c);
c++;
}
// We execute tar and compressing its output with gzip..
// The error output will be written into a temp-file which could be provided
// for debugging..
qDebug( "Storing file: %s", outputFile.latin1() );
outputFile += EXTENSION;
QString commandLine = QString( "(tar -C %1 -c %2 | gzip > %3 ) 2> %4" ).arg( QDir::homeDirPath() )
.arg( backupFiles )
.arg( outputFile.latin1() )
.arg( tempFileName.latin1() );
qDebug( commandLine );
int r = system( commandLine );
if(r != 0)
{
perror("Error: ");
QString errorMsg= tr( "Error from System:\n" ) + (QString)strerror( errno );
switch( QMessageBox::critical(this, tr( "Message" ), tr( "Backup Failed!" ) + "\n"
+ errorMsg, QString( tr( "Ok" ) ), QString( tr( "Details" ) ) ) )
{
case 1:
qWarning("Details pressed !");
ErrorDialog* pErrDialog = new ErrorDialog( this, NULL, true );
QFile errorFile( tempFileName );
if ( errorFile.open(IO_ReadOnly) )
{
QTextStream t( &errorFile );
QString s;
while ( !t.eof() )
{ // until end of file...
s += t.readLine(); // line of text excluding '\n'
}
errorFile.close();
pErrDialog->m_textarea->setText( s );
}
else
{
pErrDialog->m_textarea->setText( "Unable to open File: /tmp/backup.er" );
}
pErrDialog->showMaximized();
pErrDialog->exec();
delete pErrDialog;
break;
}
setCaption(tr("Backup and Restore.. Failed !!"));
return;
}
else
{
- QMessageBox::information(this, tr( "Message" ), tr( "Backup Successfull." ), QString(tr( "Ok" ) ) );
+ QMessageBox::information(this, tr( "Message" ), tr( "Backup Successful." ), QString(tr( "Ok" ) ) );
}
//write store-location
Config config( "BackupAndRestore" );
config.setGroup( "LastLocation" );
config.writeEntry( "LastStoreLocation", storeToLocation->currentText() );
setCaption(tr("Backup and Restore"));
}
/***
* Get a list of all of the files to backup.
*/
int BackupAndRestore::getBackupFiles(QString &backupFiles, QListViewItem *parent)
{
QListViewItem * currentItem;
QString currentHome;
if(!parent)
currentItem = backupList->firstChild();
else
{
currentItem = parent->firstChild();
currentHome = parent->text(BACKUP_LOCATION);
}
uint count = 0;
while( currentItem != 0 )
{
if(currentItem->text(HEADER_BACKUP) == "B" )
{
if(currentItem->childCount() == 0 )
{
if(parent == NULL)
backupFiles += currentItem->text(BACKUP_LOCATION);
else
backupFiles += currentHome + currentItem->text(HEADER_NAME);
backupFiles += " ";
count++;
}
else
{
count += getBackupFiles(backupFiles, currentItem);
}
}
currentItem = currentItem->nextSibling();
}
return count;
}
void BackupAndRestore::sourceDirChanged(int selection)
{
restoreList->clear();
rescanFolder(backupLocations[restoreSource->text(selection)]);
}
void BackupAndRestore::fileListUpdate()
{
qWarning("void BackupAndRestore::fileListUpdate()");
restoreList->clear();
rescanFolder( backupLocations[restoreSource->currentText()] );
}
/**
* Scans directory for any backup files. Will recursivly go down,
* but will not follow symlinks.
* @param directory - the directory to look in.
*/
void BackupAndRestore::rescanFolder(QString directory)
{
//qDebug(QString("rescanFolder: ") + directory.latin1());
QDir d(directory);
if(!d.exists())
return;
d.setFilter( QDir::Files | QDir::Hidden | QDir::Dirs);
const QFileInfoList *list = d.entryInfoList();
QFileInfoListIterator it( *list );
QFileInfo *file;
while ( (file=it.current()) )
{ // for each file...
// If it is a dir and not .. or . then add it as a tab and go down.
if(file->isDir())
{
if(file->fileName() != ".." && file->fileName() != ".")
{
rescanFolder(directory + "/" + file->fileName());
}
}
else
{
// If it is a backup file add to list.
if(file->fileName().contains(EXTENSION))
(void)new QListViewItem(restoreList, file->fileName());
}
++it;
}
}
/**
* Restore a backup file.
* Report errors or success
*/
void BackupAndRestore::restore()
{
QListViewItem *restoreItem = restoreList->currentItem();
if(!restoreItem)
{
QMessageBox::critical(this, tr( "Message" ),
tr( "Please select something to restore." ),QString( tr( "Ok") ) );
return;
}
setCaption(tr("Backup and Restore... working..."));
QString restoreFile = backupLocations[restoreSource->currentText()];
restoreFile += "/" + restoreItem->text(0);
qDebug( restoreFile );
QString commandLine = QString( "tar -C %1 -zxf %2 2> %3" ).arg( QDir::homeDirPath() )
.arg( restoreFile.latin1() )
.arg( tempFileName.latin1() );
qDebug( commandLine );
int r = system( commandLine );
if(r != 0)
{
QString errorMsg= tr( "Error from System:\n" ) + (QString)strerror( errno );
switch( QMessageBox::critical(this, tr( "Message" ), tr( "Restore Failed." ) + "\n"
+ errorMsg, QString( tr( "Ok") ), QString( tr( "Details" ) ) ) )
{
case 1:
qWarning("Details pressed !");
ErrorDialog* pErrDialog = new ErrorDialog( this, NULL, true );
QFile errorFile( tempFileName );
if ( errorFile.open(IO_ReadOnly) )
{
QTextStream t( &errorFile );
QString s;
while ( !t.eof() )
{ // until end of file...
s += t.readLine(); // line of text excluding '\n'
}
errorFile.close();
pErrDialog->m_textarea->setText( s );
}
else
{
pErrDialog->m_textarea->setText( tr( "Unable to open File: %1" ).arg( "/tmp/backup.er" ) );
}
pErrDialog->showMaximized();
pErrDialog->exec();
delete pErrDialog;
setCaption(tr("Backup and Restore.. Failed !!"));
return;
break;
}
}
else
{
- QMessageBox::information(this, tr( "Message" ), tr( "Restore Successfull." ), QString( tr( "Ok") ) );
+ QMessageBox::information(this, tr( "Message" ), tr( "Restore Successful." ), QString( tr( "Ok") ) );
}
//write restore-location
Config config( "BackupAndRestore" );
config.setGroup( "LastLocation" );
config.writeEntry( "LastRestoreLocation", restoreSource->currentText() );
setCaption(tr("Backup and Restore"));
}
// backuprestore.cpp
diff --git a/noncore/settings/networksettings/interfaces/interface.cpp b/noncore/settings/networksettings/interfaces/interface.cpp
index 69b55d1..b00b899 100644
--- a/noncore/settings/networksettings/interfaces/interface.cpp
+++ b/noncore/settings/networksettings/interfaces/interface.cpp
@@ -1,302 +1,302 @@
/**
* $Author$
* $Date$
*/
#include "interface.h"
#include <qdatetime.h>
#include <qfile.h>
#include <qdir.h>
#include <qfileinfo.h>
#include <qtextstream.h>
#define IFCONFIG "/sbin/ifconfig"
#define DHCP_INFO_DIR "/etc/dhcpc"
#include <stdio.h>
#include <stdlib.h>
Interface::Interface(QObject * parent, const char * name, bool newSatus): QObject(parent, name), hardwareName("Unknown"), moduleOwner(NULL), status(newSatus), attached(false), dhcp(false), macAddress(""), ip("0.0.0.0"), broadcast(""), subnetMask("0.0.0.0"){
refresh();
}
/**
* Set status
* @param newStatus - the new status
* emit updateInterface
*/
void Interface::setStatus(bool newStatus){
if(status != newStatus){
status = newStatus;
refresh();
}
};
/**
* Set if attached or not (802.11 card pulled out for example)
* @param isAttached - if attached
* emit updateInterface
*/
void Interface::setAttached(bool isAttached){
attached = isAttached;
emit(updateInterface(this));
};
/**
* Set Hardware name
* @param name - the new name
* emit updateInterface
*/
void Interface::setHardwareName(const QString &name){
hardwareName = name;
emit(updateInterface(this));
};
/**
* Set Module owner
* @param owner - the new owner
* emit updateInterface
*/
void Interface::setModuleOwner(Module *owner){
moduleOwner = owner;
emit(updateInterface(this));
};
/**
* Try to start the interface.
*/
void Interface::start(){
// check to see if we are already running.
if(true == status){
emit (updateMessage("Unable to start interface,\n already started"));
return;
}
int ret = system(QString("%1 %2 up").arg(IFCONFIG).arg(this->name()).latin1());
- // See if it was successfull...
+ // See if it was successful...
if(ret != 0){
emit (updateMessage("Starting interface failed"));
return;
}
status = true;
refresh();
- emit (updateMessage("Start successfull"));
+ emit (updateMessage("Start successful"));
}
/**
* Try to stop the interface.
*/
void Interface::stop(){
// check to see if we are already stopped.
if(false == status){
emit (updateMessage("Unable to stop interface,\n already stopped"));
return;
}
int ret = system(QString("%1 %2 down").arg(IFCONFIG).arg(this->name()).latin1());
if(ret != 0){
emit (updateMessage("Stopping interface failed"));
return;
}
status = false;
refresh();
- emit (updateMessage("Stop successfull"));
+ emit (updateMessage("Stop successful"));
}
/**
* Try to restart the interface.
*/
void Interface::restart(){
stop();
start();
}
/**
* Try to refresh the information about the interface.
* First call ifconfig, then check the dhcp-info file
- * @return bool true if successfull.
+ * @return bool true if successful.
*/
bool Interface::refresh(){
// See if we are up.
if(status == false){
macAddress = "";
ip = "0.0.0.0";
subnetMask = "0.0.0.0";
broadcast = "";
dhcp = false;
dhcpServerIp = "";
leaseObtained = "";
leaseExpires = "";
emit(updateInterface(this));
return true;
}
QString fileName = QString("/tmp/%1_ifconfig_info").arg(this->name());
int ret = system(QString("LANG=C %1 %2 > %3").arg(IFCONFIG).arg(this->name()).arg(fileName).latin1());
if(ret != 0){
qDebug(QString("Interface: Ifconfig return value: %1, is not 0").arg(ret).latin1());
return false;
}
QFile file(fileName);
if (!file.open(IO_ReadOnly)){
qDebug(QString("Interface: Can't open file: %1").arg(fileName).latin1());
return false;
}
// Set to the defaults
macAddress = "";
ip = "0.0.0.0";
subnetMask = "0.0.0.0";
broadcast = "";
QTextStream stream( &file );
QString line;
while ( !stream.eof() ) {
line = stream.readLine();
if(line.contains("HWaddr")){
int mac = line.find("HWaddr");
macAddress = line.mid(mac+7, line.length());
}
if(line.contains("inet addr")){
int ipl = line.find("inet addr");
int space = line.find(" ", ipl+10);
ip = line.mid(ipl+10, space-ipl-10);
}
if(line.contains("Mask")){
int mask = line.find("Mask");
subnetMask = line.mid(mask+5, line.length());
}
if(line.contains("Bcast")){
int mask = line.find("Bcast");
int space = line.find(" ", mask+6);
broadcast = line.mid(mask+6, space-mask-6);
}
}
file.close();
QFile::remove(fileName);
// DHCP TESTING
// reset DHCP info
dhcpServerIp = "";
leaseObtained = "";
leaseExpires = "";
dhcp = false;
QString dhcpDirectory(DHCP_INFO_DIR);
QDir d(dhcpDirectory);
if(!d.exists(dhcpDirectory))
dhcpDirectory = "/var/run";
// See if we have
QString dhcpFile(QString(dhcpDirectory+"/dhcpcd-%1.info").arg(this->name()));
// If there is no DHCP information then exit now with no errors.
if(!QFile::exists(dhcpFile)){
emit(updateInterface(this));
return true;
}
file.setName(dhcpFile);
if (!file.open(IO_ReadOnly)){
qDebug(QString("Interface: Can't open file: %1").arg(dhcpFile).latin1());
return false;
}
// leaseTime and renewalTime and used if pid and deamon exe can be accessed.
int leaseTime = 0;
int renewalTime = 0;
stream.setDevice( &file );
while ( !stream.eof() ) {
line = stream.readLine();
if(line.contains("DHCPSIADDR="))
dhcpServerIp = line.mid(11, line.length());
if(line.contains("LEASETIME="))
leaseTime = line.mid(10, line.length()).toInt();
if(line.contains("RENEWALTIME="))
renewalTime = line.mid(12, line.length()).toInt();
}
file.close();
//qDebug(QString("Interface: leaseTime: %1").arg(leaseTime).latin1());
//qDebug(QString("Interface: renewalTime: %1").arg(renewalTime).latin1());
// Get the pid of the deamond
dhcpFile = (QString(dhcpDirectory+"/dhcpcd-%1.pid").arg(this->name()));
file.setName(dhcpFile);
if (!file.open(IO_ReadOnly)){
qDebug(QString("Interface: Can't open file: %1").arg(dhcpFile).latin1());
return false;
}
int pid = -1;
stream.setDevice( &file );
while ( !stream.eof() ) {
line = stream.readLine();
pid = line.toInt();
}
file.close();
if( pid == -1){
qDebug("Interface: Could not get pid of dhcpc deamon.");
return false;
}
// Get the start running time of the deamon
fileName = (QString("/proc/%1/stat").arg(pid));
file.setName(fileName);
stream.setDevice( &file );
if (!file.open(IO_ReadOnly)){
qDebug(QString("Interface: Can't open file: %1").arg(fileName).latin1());
return false;
}
while ( !stream.eof() ) {
line = stream.readLine();
}
file.close();
long time = 0;
// Grab the start time
// pid com state ppid pgrp session tty_nr tpgid flags
sscanf(line.latin1(), "%*d %*s %*c %*d %*d %*d %*d %*d %*u "
// minflt cminflt majflt cmajflt utime stime cutime cstime priority
"%*u %*u %*u %*u %*u %*u %*d %*d %*d "
// nice 0 itrealvalue starttime
"%*d %*d %*d %lu", (long*) &time);
time = time/100;
QDateTime datetime(QDateTime::currentDateTime());
// Get the uptime of the computer.
QFile f("/proc/uptime");
if ( f.open(IO_ReadOnly) ) { // file opened successfully
QTextStream t( &f ); // use a text stream
int sec = 0;
t >> sec;
datetime = datetime.addSecs((-1*sec));
f.close();
}
else{
qDebug("Interface: Can't open /proc/uptime to retrive uptime.");
return false;
}
datetime = datetime.addSecs(time);
//qDebug(QString("Interface: %1 %2").arg(datetime.toString()).arg(pid).latin1());
// Calculate the start and renew times
leaseObtained = datetime.toString();
// Calculate the start and renew times
datetime = datetime.addSecs(leaseTime);
leaseExpires = datetime.toString();
dhcp = true;
emit(updateInterface(this));
return true;
}
// interface.cpp
diff --git a/noncore/settings/networksettings/interfaces/interfaces.cpp b/noncore/settings/networksettings/interfaces/interfaces.cpp
index 436e449..6b161ae 100644
--- a/noncore/settings/networksettings/interfaces/interfaces.cpp
+++ b/noncore/settings/networksettings/interfaces/interfaces.cpp
@@ -1,712 +1,712 @@
#include "interfaces.h"
#include <qcheckbox.h>
#include <qfile.h>
#include <qtextstream.h>
#include <qregexp.h>
// The three stanza's
#define AUTO "auto"
#define IFACE "iface"
#define MAPPING "mapping"
/**
* Constructor. Reads in the interfaces file and then split the file up by
* the \n for interfaces variable.
* @param useInterfacesFile if an interface file other then the default is
* desired to be used it should be passed in.
*/
Interfaces::Interfaces(QString useInterfacesFile){
acceptedFamily.append(INTERFACES_FAMILY_INET);
acceptedFamily.append(INTERFACES_FAMILY_IPX);
acceptedFamily.append(INTERFACES_FAMILY_INET6);
interfacesFile = useInterfacesFile;
QFile file(interfacesFile);
if (!file.open(IO_ReadOnly)){
qDebug("Interfaces: Can't open file: %s for reading.", interfacesFile.latin1() );
currentIface = interfaces.end();
currentMapping = interfaces.end();
return;
}
QTextStream stream( &file );
QString line;
while ( !stream.eof() ) {
line += stream.readLine();
line += "\n";
}
file.close();
interfaces = QStringList::split("\n", line, true);
currentIface = interfaces.end();
currentMapping = interfaces.end();
}
/**
- * Get a list of all interfaces in the interface file. Usefull for
+ * Get a list of all interfaces in the interface file. Useful for
* hardware that is not currently connected such as an 802.11b card
* not plugged in, but configured for when it is plugged in.
* @return Return string list of interfaces.
**/
QStringList Interfaces::getInterfaceList(){
QStringList list;
for ( QStringList::Iterator it = interfaces.begin(); it != interfaces.end(); ++it ) {
QString line = (*it).simplifyWhiteSpace();
if(line.contains(IFACE) && line.at(0) != '#'){
line = line.mid(QString(IFACE).length() +1, line.length());
line = line.simplifyWhiteSpace();
int findSpace = line.find(" ");
if( findSpace >= 0){
line = line.mid(0, findSpace);
list.append(line);
}
}
}
return list;
}
/**
* Find out if interface is in an "auto" group or not.
* Report any duplicates such as eth0 being in two differnt auto's
* @param interface interface to check to see if it is on or not.
* @return true is interface is in auto
*/
bool Interfaces::isAuto(const QString &interface) const {
QStringList autoLines = interfaces.grep(QRegExp(AUTO));
QStringList awi = autoLines.grep(QRegExp(interface));
if(awi.count() > 1)
qDebug(QString("Interfaces: Found more then auto group with interface: %1.").arg(interface).latin1());
return awi.count() > 0;
}
/**
* Attempt to set the auto option for interface to setAuto.
* @param interface the interface to set
* @param setAuto the value to set interface to.
* @return false if already set to setAuto.
* */
bool Interfaces::setAuto(const QString &interface, bool setAuto){
// Don't need to set it if it is already set.
if(isAuto(interface) == setAuto)
return false;
bool changed = false;
for ( QStringList::Iterator it = interfaces.begin(); it != interfaces.end(); ++it ) {
if((*it).contains(AUTO)){
//We know that they are not in any group so let add to this auto.
if(setAuto){
(*it) = (*it) += " " + interface;
// Don't care to have such thins as: auto eth0 lo usb0
(*it) = (*it).simplifyWhiteSpace();
changed = true;
break;
}
// else see if we need to remove from this one
else{
if((*it).contains(interface)){
(*it) = (*it).replace(QRegExp(interface), "");
// if AUTO is the only thing left clear the line
if(((*it).simplifyWhiteSpace()).replace(QRegExp(" "),"") == AUTO)
(*it) = "";
changed = true;
// Don't break because we want to make sure we remove all cases.
}
}
}
}
// In the case where there is no AUTO field add one.
if(!changed && setAuto)
interfaces.append(QString(AUTO" %1").arg(interface));
return true;
}
/**
* Set the current interface to interface. This needs to be done before you
* can call getFamily(), getMethod, and get/setOption().
* @param interface the name of the interface to set. All whitespace is
* removed from the interface name.
- * @return bool true if it is successfull.
+ * @return bool true if it is successful.
*/
bool Interfaces::setInterface(QString interface){
interface = interface.simplifyWhiteSpace();
interface = interface.replace(QRegExp(" "), "");
return setStanza(IFACE, interface, currentIface);
}
/**
* A quick helper funtion to see if the current interface is set.
* @return bool true if set, false otherwise.
*/
bool Interfaces::isInterfaceSet() const {
return (interfaces.end() != currentIface);
}
/**
* Add a new interface of with the settings - family and method
* @param interface the name of the interface to set. All whitespace is
* removed from the interface name.
* @param family the family of this interface inet or inet, ipx or inet6
* Must of one of the families defined in interfaces.h
* @param method for the family. see interfaces man page for family methods.
- * @return true if successfull.
+ * @return true if successful.
*/
bool Interfaces::addInterface(const QString &interface, const QString &family, const QString &method){
qDebug("Interfaces::addInterface(%s)",interface.latin1());
if(0 == acceptedFamily.contains(family))
return false;
QString newInterface = interface.simplifyWhiteSpace();
newInterface = newInterface.replace(QRegExp(" "), "");
interfaces.append("");
interfaces.append(QString(IFACE " %1 %2 %3").arg(newInterface).arg(family).arg(method));
return true;
}
/**
* Copies interface with name interface to name newInterface
* @param newInterface name of the new interface.
- * @return bool true if successfull
+ * @return bool true if successful
*/
bool Interfaces::copyInterface(const QString &interface, const QString &newInterface){
qDebug("copy interface %s to %s", interface.latin1(), newInterface.latin1());
if(!setInterface(interface))
return false;
// Store the old interface and bump past the stanza line.
QStringList::Iterator it = currentIface;
it++;
// Add the new interface
bool error;
addInterface(newInterface, getInterfaceFamily(error), getInterfaceMethod(error));
if(!setInterface(newInterface))
return false;
QStringList::Iterator newIface = currentIface;
newIface++;
// Copy all of the lines
for ( ; it != interfaces.end(); ++it ){
if(((*it).contains(IFACE) || (*it).contains(MAPPING) || (*it).contains(AUTO)))
break;
newIface = interfaces.insert(newIface, *it);
}
return true;
}
/**
* Remove the currently selected interface and all of its options.
- * @return bool if successfull or not.
+ * @return bool if successful or not.
*/
bool Interfaces::removeInterface(){
return removeStanza(currentIface);
}
/**
* Gets the hardware name of the interface that is currently selected.
* @return QString name of the hardware interface (eth0, usb2, wlan1...).
* @param error set to true if any error occurs, false otherwise.
*/
QString Interfaces::getInterfaceName(bool &error){
if(currentIface == interfaces.end()){
error = true;
return QString();
}
QString line = (*currentIface);
line = line.mid(QString(IFACE).length() +1, line.length());
line = line.simplifyWhiteSpace();
int findSpace = line.find(" ");
if( findSpace < 0){
error = true;
return QString();
}
error = false;
return line.mid(0, findSpace);
}
/**
* Gets the family name of the interface that is currently selected.
* @return QString name of the family (inet, inet6, ipx).
* @param error set to true if any error occurs, false otherwise.
*/
QString Interfaces::getInterfaceFamily(bool &error){
QString name = getInterfaceName(error);
if(error)
return QString();
QString line = (*currentIface);
line = line.mid(QString(IFACE).length() +1, line.length());
line = line.mid(name.length()+1, line.length());
line = line.simplifyWhiteSpace();
int findSpace = line.find(" ");
if( findSpace < 0){
error = true;
return QString();
}
error = false;
return line.mid(0, findSpace);
}
/**
* Gets the method of the interface that is currently selected.
* @return QString name of the method such as staic or dhcp.
* See the man page of interfaces for possible methods depending on the family.
* @param error set to true if any error occurs, false otherwise.
*/
QString Interfaces::getInterfaceMethod(bool &error){
QString name = getInterfaceName(error);
if(error)
return QString();
QString family = getInterfaceFamily(error);
if(error)
return QString();
QString line = (*currentIface);
line = line.mid(QString(IFACE).length()+1, line.length());
line = line.mid(name.length()+1, line.length());
line = line.mid(family.length()+1, line.length());
line = line.simplifyWhiteSpace();
error = false;
return line;
}
/**
* Sets the interface name to newName.
* @param newName the new name of the interface. All whitespace is removed.
- * @return bool true if successfull.
+ * @return bool true if successful.
*/
bool Interfaces::setInterfaceName(const QString &newName){
qDebug("setInterfaceName %s", newName.latin1());
if(currentIface == interfaces.end())
return false;
QString name = newName.simplifyWhiteSpace();
name = name.replace(QRegExp(" "), "");
bool returnValue = false;
QString tmp = QString("iface %1 %2 %3").arg(name).arg(getInterfaceFamily(returnValue)).arg(getInterfaceMethod(returnValue));
qDebug("setting %s",tmp.latin1());
(*currentIface) = tmp;
return !returnValue;
}
/**
* Sets the interface family to newName.
* @param newName the new name of the interface. Must be one of the families
* defined in the interfaces.h file.
- * @return bool true if successfull.
+ * @return bool true if successful.
*/
bool Interfaces::setInterfaceFamily(const QString &newName){
if(currentIface == interfaces.end())
return false;
if(acceptedFamily.contains(newName)==0)
return false;
bool returnValue = false;
(*currentIface) = QString("iface %1 %2 %3").arg(getInterfaceName(returnValue)).arg(newName).arg(getInterfaceMethod(returnValue));
return !returnValue;
}
/**
* Sets the interface method to newName
* @param newName the new name of the interface
- * @return bool true if successfull.
+ * @return bool true if successful.
*/
bool Interfaces::setInterfaceMethod(const QString &newName){
if(currentIface == interfaces.end())
return false;
bool returnValue = false;
(*currentIface) = QString("iface %1 %2 %3").arg(getInterfaceName(returnValue)).arg(getInterfaceFamily(returnValue)).arg(newName);
return !returnValue;
}
/**
* Get a value for an option in the currently selected interface. For example
* calling getInterfaceOption("address") on the following stanza would
* return 192.168.1.1.
* iface eth0 static
* address 192.168.1.1
* @param option the options to get the value.
* @param error set to true if any error occurs, false otherwise.
* @return QString the options value. QString::null if error == true
*/
QString Interfaces::getInterfaceOption(const QString &option, bool &error){
return getOption(currentIface, option, error);
}
/**
* Set a value for an option in the currently selected interface. If option
* doesn't exist then it is added along with the value.
* If value isEmpty() then we will remove the option
*
* @param option the options to set the value.
* @param value the value that option should be set to.
* @param error set to true if any error occurs, false otherwise.
* @return QString the options value. QString::null if error == true
*/
bool Interfaces::setInterfaceOption(const QString &option, const QString &value){
if( value.stripWhiteSpace().isEmpty() )
return removeInterfaceOption( option );
qDebug("iface >%s< option >%s< value >%s<", (*currentIface).latin1(), option.latin1(),value.latin1());
return setOption(currentIface, option, value);
}
/**
* Removes a value for an option in the currently selected interface.
* @param option the options to set the value.
* @param error set to true if any error occurs, false otherwise.
* @return QString the options value. QString::null if error == true
*/
bool Interfaces::removeInterfaceOption(const QString &option){
return removeOption(currentIface, option);
}
/**
* Removes a value for an option in the currently selected interface.
* @param option the options to set the value.
* @param value the value that option should be set to.
* @param error set to true if any error occurs, false otherwise.
* @return QString the options value. QString::null if error == true
*/
bool Interfaces::removeInterfaceOption(const QString &option, const QString &value){
return removeOption(currentIface, option, value);
}
/**
* Removes all of the options from the currently selected interface.
- * @return bool error if if successfull
+ * @return bool error if if successful
*/
bool Interfaces::removeAllInterfaceOptions(){
return removeAllOptions(currentIface);
}
/**
* Set the current map to interface's map. This needs to be done before you
* can call addMapping(), set/getMap(), and get/setScript().
* @param interface the name of the interface to set. All whitespace is
* removed from the interface name.
- * @return bool true if it is successfull.
+ * @return bool true if it is successful.
*/
bool Interfaces::setMapping(const QString &interface){
QString interfaceName = interface.simplifyWhiteSpace();
interfaceName = interfaceName.replace(QRegExp(" "), "");
return setStanza(MAPPING, interfaceName, currentMapping);
}
/**
* Adds a new Mapping to the interfaces file with interfaces.
* @param interface the name(s) of the interfaces to set to this mapping
*/
void Interfaces::addMapping(const QString &option){
interfaces.append("");
interfaces.append(QString(MAPPING " %1").arg(option));
}
/**
* Remove the currently selected map and all of its options.
- * @return bool if successfull or not.
+ * @return bool if successful or not.
*/
bool Interfaces::removeMapping(){
return removeStanza(currentMapping);
}
/**
* Set a map option within a mapping.
* @param map map to use
* @param value value to go with map
- * @return bool true if it is successfull.
+ * @return bool true if it is successful.
*/
bool Interfaces::setMap(const QString &map, const QString &value){
return setOption(currentMapping, map, value);
}
/**
* Removes a map option within a mapping.
* @param map map to use
* @param value value to go with map
- * @return bool true if it is successfull.
+ * @return bool true if it is successful.
*/
bool Interfaces::removeMap(const QString &map, const QString &value){
return removeOption(currentMapping, map, value);
}
/**
* Get a map value within a mapping.
* @param map map to get value of
- * @param bool true if it is successfull.
+ * @param bool true if it is successful.
* @return value that goes to the map
*/
QString Interfaces::getMap(const QString &map, bool &error){
return getOption(currentMapping, map, error);
}
/**
* Sets a script value of the current mapping to argument.
* @param argument the script name.
- * @return true if successfull.
+ * @return true if successful.
*/
bool Interfaces::setScript(const QString &argument){
return setOption(currentMapping, "script", argument);
}
/**
* @param error true if could not retrieve the current script argument.
* @return QString the argument of the script for the current mapping.
*/
QString Interfaces::getScript(bool &error){
return getOption(currentMapping, "script", error);
}
/**
* Helper function used to parse through the QStringList and put pointers in
* the correct place.
* @param stanza The stanza (auto, iface, mapping) to look for.
* @param option string that must be in the stanza's main line.
- * @param interator interator to place at location of stanza if successfull.
+ * @param interator interator to place at location of stanza if successful.
* @return bool true if the stanza is found.
*/
bool Interfaces::setStanza(const QString &stanza, const QString &option, QStringList::Iterator &iterator){
bool found = false;
iterator = interfaces.end();
for ( QStringList::Iterator it = interfaces.begin(); it != interfaces.end(); ++it ) {
QString line = (*it).simplifyWhiteSpace();
if(line.contains(stanza) && line.contains(option) && line.at(0) != '#'){
uint point = line.find(option);
bool valid = true;
if(point > 0){
// There are more chars in the line. check +1
if(line.at(point-1) != ' ')
valid = false;
}
point += option.length();
if(point < line.length()-1){
// There are more chars in the line. check -1
if(line.at(point) != ' ')
valid = false;
}
if(valid){
if(found == true){
qDebug(QString("Interfaces: Found multiple stanza's for search: %1 %2").arg(stanza).arg(option).latin1());
}
found = true;
iterator = it;
}
}
}
return found;
}
/**
* Sets a value of an option in a stanza
* @param start the start of the stanza
* @param option the option to use when setting value.
- * @return bool true if successfull, false otherwise.
+ * @return bool true if successful, false otherwise.
*/
bool Interfaces::setOption(const QStringList::Iterator &start, const QString &option, const QString &value){
if(start == interfaces.end())
return false;
qDebug("setting option");
bool found = false;
bool replaced = false;
QStringList::Iterator insertAt = NULL;
for ( QStringList::Iterator it = start; it != interfaces.end(); ++it ) {
qDebug(" Interfaces::setOption got line >%s<",(*it).latin1());
// FIXME: was not completly stupid just wrong sice all options got inserted bevore the iface line
// but since it works with an empty interfaces file I (tille) will not do anything more
if(((*it).contains(IFACE) || (*it).contains(MAPPING) || (*it).contains(AUTO)) ){
if (found) break;
// && it != start){
// if(!found && value != ""){
// // Got to the end of the stanza without finding it, so append it.
// qDebug(" Got to the end of the stanza without finding it, so append it.");
// interfaces.insert(--it, QString("\t%1 %2").arg(option).arg(value));
// }
qDebug("found 1");
// interfaces.insert(++it, QString("\t%1 %2").arg(option).arg(value));
found = true;
insertAt = it;
}
if((*it).contains(option) && it != start && (*it).at(0) != '#'){
// Found it in stanza so replace it.
qDebug("found 2");
if(found)
qDebug(QString("Interfaces: Set Options found more then one value for option: %1 in stanza: %1").arg(option).arg((*start)).latin1());
found = true;
replaced = true;
(*it) = QString("\t%1 %2").arg(option).arg(value);
}
}
if(!found){
qDebug("! found insert anyway");
QStringList::Iterator p = start;
interfaces.insert(++p, QString("\t%1 %2").arg(option).arg(value));
found = true;
}
if(found && !replaced){
qDebug("found iface but not the option so insert it here...");
interfaces.insert(++insertAt, QString("\t%1 %2").arg(option).arg(value));
}
return found;
}
/**
* Removes a stanza and all of its options
* @param stanza the stanza to remove
- * @return bool true if successfull.
+ * @return bool true if successful.
*/
bool Interfaces::removeStanza(QStringList::Iterator &stanza){
if(stanza == interfaces.end())
return false;
(*stanza) = "";
return removeAllOptions(stanza);
}
/**
* Removes a option in a stanza
* @param start the start of the stanza
* @param option the option to remove
- * @return bool true if successfull, false otherwise.
+ * @return bool true if successful, false otherwise.
*/
bool Interfaces::removeOption(const QStringList::Iterator &start, const QString &option){
if(start == interfaces.end())
return false;
bool found = false;
for ( QStringList::Iterator it = start; it != interfaces.end(); ++it ) {
if(((*it).contains(IFACE) || (*it).contains(MAPPING) || (*it).contains(AUTO)) && it != start){
// got to the end without finding it
break;
}
if((*it).contains(option) && it != start && (*it).at(0) != '#'){
// Found it in stanza so replace it.
if(found)
qDebug(QString("Interfaces: Set Options found more then one value for option: %1 in stanza: %1").arg(option).arg((*start)).latin1());
found = true;
it = interfaces.remove( it ); // we really want to remove the line
--it; // we do ++it later in the head of the for loop
}
}
return found;
}
/**
* Removes a option in a stanza
* @param start the start of the stanza
* @param option the option to use when setting value.
- * @return bool true if successfull, false otherwise.
+ * @return bool true if successful, false otherwise.
*/
bool Interfaces::removeOption(const QStringList::Iterator &start, const QString &option, const QString &value){
if(start == interfaces.end())
return false;
bool found = false;
for ( QStringList::Iterator it = start; it != interfaces.end(); ++it ) {
if(((*it).contains(IFACE) || (*it).contains(MAPPING) || (*it).contains(AUTO)) && it != start){
// got to the end without finding it
break;
}
if((*it).contains(option) && (*it).contains(value) && it != start && (*it).at(0) != '#'){
// Found it in stanza so replace it.
if(found)
qDebug(QString("Interfaces: Set Options found more then one value for option: %1 in stanza: %1").arg(option).arg((*start)).latin1());
found = true;
it = interfaces.remove( it ); // we really want to remove the line
--it; // we do ++it later in the head of the for loop
}
}
return found;
}
/**
* Removes all options in a stanza
* @param start the start of the stanza
- * @return bool true if successfull, false otherwise.
+ * @return bool true if successful, false otherwise.
*/
bool Interfaces::removeAllOptions(const QStringList::Iterator &start){
if(start == interfaces.end())
return false;
QStringList::Iterator it = start;
it = ++it;
for (; it != interfaces.end(); ++it ) {
if(((*it).contains(IFACE) || (*it).contains(MAPPING) || (*it).contains(AUTO)) && it != start){
break;
}
it = interfaces.remove(it);
it = --it;
}
// Leave a space between this interface and the next.
interfaces.insert(it, QString(""));
return true;
}
/**
* Gets a value of an option in a stanza
* @param start the start of the stanza
* @param option the option to use when getting the value.
* @param bool true if errors false otherwise.
* @return QString the value of option QString::null() if error == true.
*/
QString Interfaces::getOption(const QStringList::Iterator &start, const QString &option, bool &error){
if(start == interfaces.end()){
error = false;
return QString();
}
QString value;
bool found = false;
for ( QStringList::Iterator it = start; it != interfaces.end(); ++it ) {
if(((*it).contains(IFACE) || (*it).contains(MAPPING) || (*it).contains(AUTO)) && it != start){
break;
}
if((*it).contains(option) && (*it).at(0) != '#'){
if(found)
qDebug(QString("Interfaces: getOption found more then one value: %1 for option: %2 in stanza %3").arg((*it)).arg(option).arg((*start)).latin1());
found = true;
QString line = (*it).simplifyWhiteSpace();
int space = line.find(" ", option.length());
if(space != -1){
value = line.mid(space+1, line.length());
break;
}
}
}
error = !found;
return value;
}
/**
* Write out the interfaces file to the file passed into the constructor.
* Removes any excess blank lines over 1 line long.
- * @return bool true if successfull, false if not.
+ * @return bool true if successful, false if not.
*/
bool Interfaces::write(){
QFile::remove(interfacesFile);
QFile file(interfacesFile);
if (!file.open(IO_ReadWrite)){
qDebug(QString("Interfaces: Can't open file: %1 for writing.").arg(interfacesFile).latin1());
return false;
}
QTextStream stream( &file );
int whiteSpaceCount = 0;
for ( QStringList::Iterator it = interfaces.begin(); it != interfaces.end(); ++it ) {
QString line = (*it).simplifyWhiteSpace();
line = line.replace(QRegExp(" "),"");
if(line.length() == 0)
whiteSpaceCount++;
else
whiteSpaceCount = 0;
if(whiteSpaceCount < 2){
qDebug((*it).latin1());
stream << (*it) << '\n';
}
}
file.close();
return true;
}
// interfaces.cpp
diff --git a/noncore/settings/networksettings/interfaces/interfacesetupimp.cpp b/noncore/settings/networksettings/interfaces/interfacesetupimp.cpp
index e844d8a..78466d0 100644
--- a/noncore/settings/networksettings/interfaces/interfacesetupimp.cpp
+++ b/noncore/settings/networksettings/interfaces/interfacesetupimp.cpp
@@ -1,206 +1,206 @@
#include "interfacesetupimp.h"
#include "interface.h"
#include <qcheckbox.h>
#include <qlineedit.h>
#include <qspinbox.h>
#include <qgroupbox.h>
#include <qlabel.h>
#include <qmessagebox.h>
#include <opie/oprocess.h>
#ifdef QWS
#include <opie/owait.h>
#include <qpe/global.h>
#include <qapplication.h>
#endif
#define DNSSCRIPT "changedns"
/**
* Constuctor. Set up the connection. A profile must be set.
*/
InterfaceSetupImp::InterfaceSetupImp(QWidget* parent, const char* name, Interface *i, Interfaces *j, WFlags fl) : InterfaceSetup(parent, name, fl), interface(i), interfaces(j), delInterfaces(false){
if (j == 0) {
delInterfaces = true;
interfaces = new Interfaces;
}
}
/**
* Destructor
*/
InterfaceSetupImp::~InterfaceSetupImp(){
if(delInterfaces) {
delete interfaces;
}
}
/**
* Save the current settings, then write out the interfaces file and close.
*/
bool InterfaceSetupImp::saveChanges(){
bool error;
QString iface = interfaces->getInterfaceName(error);
qDebug("InterfaceSetupImp::saveChanges saves interface %s", iface.latin1() );
if(!saveSettings())
return false;
interfaces->write();
if (interface->getStatus()) {
QString ifup;
ifup += "ifdown ";
ifup += iface;
ifup += "; ifup ";
ifup += iface;
ifup += ";";
OProcess restart;
restart << "sh";
restart << "-c";
restart << ifup;
OWait *owait = new OWait();
Global::statusMessage( tr( "Restarting interface" ) );
owait->show();
qApp->processEvents();
if (!restart.start(OProcess::Block, OProcess::NoCommunication) ) {
qWarning("unstable to spawn ifdown/ifup");
}
owait->hide();
delete owait;
interface->refresh();
}
return true;
}
/**
* Save the settings for the current Interface.
- * @return bool true if successfull, false otherwise
+ * @return bool true if successful, false otherwise
*/
bool InterfaceSetupImp::saveSettings(){
// eh can't really do anything about it other then return. :-D
if(!interfaces->isInterfaceSet())
return true;
bool error = false;
// Loopback case
if(interfaces->getInterfaceMethod(error) == INTERFACES_LOOPBACK){
interfaces->setAuto(interface->getInterfaceName(), autoStart->isChecked());
return true;
}
if(!dhcpCheckBox->isChecked() && (ipAddressEdit->text().isEmpty() || subnetMaskEdit->text().isEmpty())){
QMessageBox::information(this, "Not Saved.", "Please fill in the IP address and\n subnet entries.", QMessageBox::Ok);
return false;
}
// DHCP
if(dhcpCheckBox->isChecked()) {
interfaces->setInterfaceMethod(INTERFACES_METHOD_DHCP);
interfaces->removeInterfaceOption("address");
interfaces->removeInterfaceOption("netmask");
interfaces->removeInterfaceOption("gateway");
interfaces->removeInterfaceOption("up "DNSSCRIPT" -a ");
interfaces->removeInterfaceOption("down "DNSSCRIPT" -r ");
} else{
interfaces->setInterfaceMethod("static");
interfaces->setInterfaceOption("address", ipAddressEdit->text());
interfaces->setInterfaceOption("netmask", subnetMaskEdit->text());
interfaces->setInterfaceOption("gateway", gatewayEdit->text());
if(!firstDNSLineEdit->text().isEmpty() || !secondDNSLineEdit->text().isEmpty()){
QString dns = firstDNSLineEdit->text() + " " + secondDNSLineEdit->text();
interfaces->setInterfaceOption("up "DNSSCRIPT" -a ", dns);
interfaces->setInterfaceOption("down "DNSSCRIPT" -r ", dns);
}else{
interfaces->removeInterfaceOption("up "DNSSCRIPT" -a ");
interfaces->removeInterfaceOption("down "DNSSCRIPT" -r");
}
}
// IP Information
interfaces->setAuto(interface->getInterfaceName(), autoStart->isChecked());
return true;
}
/**
* The Profile has changed.
* @param QString profile the new profile.
*/
void InterfaceSetupImp::setProfile(const QString &profile){
/*
bool error = false;
if(interfaces->getInterfaceMethod(error) == INTERFACES_LOOPBACK){
staticGroupBox->hide();
dhcpCheckBox->hide();
leaseTime->hide();
leaseHoursLabel->hide();
}
*/
QString newInterfaceName = interface->getInterfaceName();
if(profile.length() > 0)
newInterfaceName += "_" + profile;
// See if we have to make a interface.
if(!interfaces->setInterface(newInterfaceName)){
// Add making for this new interface if need too
if(profile != ""){
interfaces->copyInterface(interface->getInterfaceName(), newInterfaceName);
if(!interfaces->setMapping(interface->getInterfaceName())){
interfaces->addMapping(interface->getInterfaceName());
if(!interfaces->setMapping(interface->getInterfaceName())){
qDebug("InterfaceSetupImp: Added Mapping, but still can't setInterface.");
return;
}
}
interfaces->setMap("map", newInterfaceName);
interfaces->setScript("getprofile.sh");
}
else{
interfaces->addInterface(newInterfaceName, INTERFACES_FAMILY_INET, INTERFACES_METHOD_DHCP);
if(!interfaces->setInterface(newInterfaceName)){
qDebug("InterfaceSetupImp: Added interface, but still can't setInterface.");
return;
}
}
}
// We must have a valid interface to get this far so read some settings.
// DHCP
bool error = false;
if(interfaces->getInterfaceMethod(error) == INTERFACES_METHOD_DHCP)
dhcpCheckBox->setChecked(true);
else
dhcpCheckBox->setChecked(false);
// IP Information
autoStart->setChecked(interfaces->isAuto(interface->getInterfaceName()));
QString dns = interfaces->getInterfaceOption("up "DNSSCRIPT" -a", error);
qDebug("dns >%s<",dns.latin1());
if(dns.contains(" ")){
firstDNSLineEdit->setText(dns.mid(0, dns.find(" ")));
secondDNSLineEdit->setText(dns.mid(dns.find(" ")+1, dns.length()));
}else firstDNSLineEdit->setText(dns);
ipAddressEdit->setText(interfaces->getInterfaceOption("address", error));
subnetMaskEdit->setText(interfaces->getInterfaceOption("netmask", error));
if (subnetMaskEdit->text().isEmpty())
subnetMaskEdit->setText( "255.255.255.0" );
gatewayEdit->setText(interfaces->getInterfaceOption("gateway", error));
qWarning("InterfaceSetupImp::setProfile(%s)\n", profile.latin1());
qWarning("InterfaceSetupImp::setProfile: iface is %s\n", interfaces->getInterfaceName(error).latin1());
}
// interfacesetup.cpp
diff --git a/noncore/settings/networksettings/module.h b/noncore/settings/networksettings/module.h
index f7d8046..5cc82cd 100644
--- a/noncore/settings/networksettings/module.h
+++ b/noncore/settings/networksettings/module.h
@@ -1,113 +1,113 @@
#ifndef NETCONF_MODULE_H
#define NETCONF_MODULE_H
#include <qobject.h>
#if QT_VERSION < 300
#include <qlist.h>
#else
#include <qptrlist.h>
#endif
#include <qmap.h>
#include "interface.h"
class QWidget;
class QTabWidget;
class Module : QObject{
signals:
void updateInterface(Interface *i);
public:
Module(){};
/**
* The type of the plugin
* and the name of the dcop call
*/
virtual const QString type() = 0;
/**
* The current profile has been changed and the module should do any
* neccesary changes also.
* @param newProfile what the profile should be changed to.
*/
virtual void setProfile(const QString &newProfile) = 0;
/**
* get the icon name for this device.
* @param Interface* can be used in determining the icon.
* @return QString the icon name (minus .png, .gif etc)
*/
virtual QString getPixmapName(Interface *) = 0;
/**
* Check to see if the interface i is owned by this module.
* @param Interface* interface to check against
* @return bool true if i is owned by this module, false otherwise.
*/
virtual bool isOwner(Interface *){ return false; };
/**
* Create and return the WLANConfigure Module
* @param Interface *i the interface to configure.
* @return QWidget* pointer to this modules configure.
*/
virtual QWidget *configure(Interface *){ return NULL; } ;
/**
* Create, and return the Information Module
* @param Interface *i the interface to get info on.
* @return QWidget* pointer to this modules info.
*/
virtual QWidget *information(Interface *){ return NULL; };
/**
* Get all active (up or down) interfaces
* @return QList<Interface> A list of interfaces that exsist that havn't
* been called by isOwner()
*/
virtual QList<Interface> getInterfaces() = 0;
/**
* Adds possible new interfaces to the list (Example: usb(ppp), ir(ppp),
* modem ppp)
*/
virtual void possibleNewInterfaces(QMap<QString, QString> &list) = 0;
/**
* Attempts to create a new interface from name
* @return Interface* NULL if it was unable to be created.
* @param name the type of interface to create
*/
virtual Interface *addNewInterface(const QString &name) = 0;
/**
* Attempts to remove the interface, doesn't delete i
- * @return bool true if successfull, false otherwise.
+ * @return bool true if successful, false otherwise.
*/
virtual bool remove(Interface* i) = 0;
/**
* get dcop calls
*/
virtual void receive(const QCString &msg, const QByteArray &arg) = 0;
QStringList handledInterfaceNames()const { return m_inter; }
protected:
/**
* set which interfaceNames should not be shown cause they're handled
* internally of this module.. An already running ppp link or
* a tunnel...
*/
void setHandledInterfaceNames( const QStringList& in) { m_inter = in; }
private:
QStringList m_inter;
};
#endif
// module.h
diff --git a/noncore/settings/networksettings/ppp/pppmodule.cpp b/noncore/settings/networksettings/ppp/pppmodule.cpp
index af05eb7..2462fa4 100644
--- a/noncore/settings/networksettings/ppp/pppmodule.cpp
+++ b/noncore/settings/networksettings/ppp/pppmodule.cpp
@@ -1,250 +1,250 @@
#include <errno.h>
#include <signal.h>
#include <qpe/config.h>
#include "modem.h"
#include "pppconfig.h"
#include "pppmodule.h"
#include "pppdata.h"
#include "interfaceinformationppp.h"
#include "interfaceppp.h"
// don't polute global namespace
namespace {
/*
* If network settings is qutting and we've ppp
* devices open we need to save the pid_t the PPData
* and the interface number
*/
struct Connection {
pid_t pid;
QString device;
QString name;
};
class InterfaceKeeper {
public:
InterfaceKeeper();
~InterfaceKeeper();
void addInterface( pid_t, const QString& pppDev, const QString& name );
QMap<QString, Connection> interfaces()const; // will check if still available
private:
bool isAvailable( pid_t )const;
QMap<QString, Connection> m_interfaces;
};
}
/**
* Constructor, find all of the possible interfaces
* We also need to restore the state.. it could be that
* an interface was up while closing the application
* we need to be able to shut it down...
*/
PPPModule::PPPModule() : Module()
{
InterfaceKeeper inFace;
QMap<QString,Connection> running = inFace.interfaces();
QStringList handledInterfaceNames;
QMap<QString,QString> ifaces = PPPData::getConfiguredInterfaces();
QMap<QString,QString>::Iterator it;
InterfacePPP *iface;
qDebug("getting interfaces");
for( it = ifaces.begin(); it != ifaces.end(); ++it ){
qDebug("ifaces %s %s", it.key().latin1(), it.data().latin1() );
iface = new InterfacePPP( 0, it.key() );
iface->setHardwareName( it.data() );
list.append( (Interface*)iface );
// check if (*it) is one of the running ifaces
if ( running.contains( it.data() ) ) {
qDebug("iface is running %s", it.key().latin1() );
handledInterfaceNames << running[it.data()].device;
iface->setStatus( true );
iface->setPPPDpid( running[it.data()].pid );
iface->modem()->setPPPDevice( running[it.data()].device );
iface->refresh();
}
}
setHandledInterfaceNames( handledInterfaceNames );
}
/**
* Delete any interfaces that we own.
*/
PPPModule::~PPPModule(){
qDebug("PPPModule::~PPPModule() " );
QMap<QString,QString> ifaces;
InterfaceKeeper keeper;
Interface *i;
for ( i=list.first(); i != 0; i=list.next() ){
/* if online save the state */
if ( i->getStatus() ) {
qDebug("Iface %s is still up", i->getHardwareName().latin1() );
InterfacePPP* ppp = static_cast<InterfacePPP*>(i);
keeper.addInterface( ppp->pppPID(), ppp->pppDev(), ppp->getHardwareName() );
}
ifaces.insert( i->getInterfaceName(), i->getHardwareName() );
delete i;
}
PPPData::setConfiguredInterfaces( ifaces );
}
/**
* Change the current profile
*/
void PPPModule::setProfile(const QString &newProfile){
profile = newProfile;
}
/**
* get the icon name for this device.
* @param Interface* can be used in determining the icon.
* @return QString the icon name (minus .png, .gif etc)
*/
QString PPPModule::getPixmapName(Interface* ){
return "ppp";
}
/**
* Check to see if the interface i is owned by this module.
* @param Interface* interface to check against
* @return bool true if i is owned by this module, false otherwise.
*/
bool PPPModule::isOwner(Interface *i){
return list.find( i ) != -1;
}
/**
* Create, and return the WLANConfigure Module
* @return QWidget* pointer to this modules configure.
*/
QWidget *PPPModule::configure(Interface *i){
qDebug("return ModemWidget");
PPPConfigWidget *pppconfig = new PPPConfigWidget( (InterfacePPP*)i,
0, "PPPConfig", false,
Qt::WDestructiveClose | Qt::WStyle_ContextHelp);
return pppconfig;
}
/**
* Create, and return the Information Module
* @return QWidget* pointer to this modules info.
*/
QWidget *PPPModule::information(Interface *i){
// We don't have any advanced pppd information widget yet :-D
// TODO ^
return new InterfaceInformationPPP( 0, "InterfaceInformationPPP", i );
}
/**
* Get all active (up or down) interfaces
* @return QList<Interface> A list of interfaces that exsist that havn't
* been called by isOwner()
*/
QList<Interface> PPPModule::getInterfaces(){
// List all of the files in the peer directory
qDebug("PPPModule::getInterfaces");
return list;
}
/**
* Attempt to add a new interface as defined by name
* @param name the name of the type of interface that should be created given
* by possibleNewInterfaces();
* @return Interface* NULL if it was unable to be created.
*/
Interface *PPPModule::addNewInterface(const QString &newInterface){
InterfacePPP *ifaceppp;
Interface *iface;
ifaceppp = new InterfacePPP();
PPPConfigWidget imp(ifaceppp, 0, "PPPConfigImp", true);
imp.showMaximized();
if(imp.exec() == QDialog::Accepted ){
iface = (InterfacePPP*) ifaceppp;
iface->setModuleOwner( this );
list.append( iface );
return iface;
}else {
delete ifaceppp;
iface = NULL;
}
return iface;
}
/**
* Attempts to remove the interface, doesn't delete i
- * @return bool true if successfull, false otherwise.
+ * @return bool true if successful, false otherwise.
*/
bool PPPModule::remove(Interface *i){
return list.remove(i);
}
void PPPModule::possibleNewInterfaces(QMap<QString, QString> &newIfaces)
{
newIfaces.insert(QObject::tr("PPP") ,
QObject::tr("generic ppp device"));
}
namespace {
InterfaceKeeper::InterfaceKeeper( ) {
}
InterfaceKeeper::~InterfaceKeeper() {
Config cfg("ppp_plugin_keeper");
QStringList lst = cfg.groupList();
for (QStringList::Iterator it = lst.begin(); it != lst.end(); ++it ) {
Connection con;
cfg.setGroup( (*it) );
cfg.clearGroup();
}
for (QMap<QString, Connection>::Iterator it = m_interfaces.begin(); it != m_interfaces.end(); ++it ) {
Connection con = it.data();
cfg.setGroup( con.name );
cfg.writeEntry( "pid", con.pid );
cfg.writeEntry( "device", con.device );
}
}
void InterfaceKeeper::addInterface(pid_t pid, const QString& dev, const QString& name ) {
Connection con;
con.pid = pid;
con.device = dev;
con.name = name;
m_interfaces.insert( name, con );
}
QMap<QString, Connection> InterfaceKeeper::interfaces()const {
Config cfg("ppp_plugin_keeper");
QMap<QString, Connection> ifaces;
QStringList lst = cfg.groupList();
for (QStringList::Iterator it = lst.begin(); it != lst.end(); ++it ) {
Connection con;
cfg.setGroup( (*it) );
con.name = (*it);
con.pid = cfg.readNumEntry("pid");
con.device = cfg.readEntry("device");
qDebug(" %s %s %d", con.name.latin1(), con.device.latin1(), con.pid );
if ( con.pid != -1 && isAvailable( con.pid ) )
ifaces.insert( con.name, con );
}
return ifaces;
}
bool InterfaceKeeper::isAvailable( pid_t p)const {
if (::kill(p, 0 ) == 0 || errno != ESRCH ) {
qDebug("isAvailable %d", p);
return true;
}
qDebug("notAvailable %d", p);
return false;
}
}
diff --git a/noncore/settings/networksettings/wlan/wextensions.cpp b/noncore/settings/networksettings/wlan/wextensions.cpp
index bd7cf93..d1fff88 100644
--- a/noncore/settings/networksettings/wlan/wextensions.cpp
+++ b/noncore/settings/networksettings/wlan/wextensions.cpp
@@ -1,200 +1,200 @@
#include "wextensions.h"
#include <qfile.h>
#include <qtextstream.h>
#include <arpa/inet.h>
#include <sys/socket.h>
#include <sys/ioctl.h>
#include <math.h>
#define PROCNETWIRELESS "/proc/net/wireless"
#define IW_LOWER 0
#define IW_UPPER 256
/**
* Constructor. Sets hasWirelessExtensions
*/
WExtensions::WExtensions(QString interfaceName): hasWirelessExtensions(false), interface(interfaceName) {
fd = socket( AF_INET, SOCK_DGRAM, 0 );
if(fd == -1)
return;
const char* buffer[200];
memset( &iwr, 0, sizeof( iwr ) );
iwr.u.essid.pointer = (caddr_t) buffer;
iwr.u.essid.length = IW_ESSID_MAX_SIZE;
iwr.u.essid.flags = 0;
// check if it is an IEEE 802.11 standard conform
// wireless device by sending SIOCGIWESSID
// which also gives back the Extended Service Set ID
// (see IEEE 802.11 for more information)
const char* iname = interface.latin1();
strcpy( iwr.ifr_ifrn.ifrn_name, (const char *)iname );
if ( 0 == ioctl( fd, SIOCGIWESSID, &iwr ) )
hasWirelessExtensions = true;
}
/**
* @return QString the station name of the access point.
*/
QString WExtensions::station(){
if(!hasWirelessExtensions)
return QString();
const char* buffer[200];
iwr.u.data.pointer = (caddr_t) buffer;
iwr.u.data.length = IW_ESSID_MAX_SIZE;
iwr.u.data.flags = 0;
if ( 0 == ioctl( fd, SIOCGIWNICKN, &iwr )){
iwr.u.data.pointer[(unsigned int) iwr.u.data.length-1] = '\0';
return QString(iwr.u.data.pointer);
}
return QString();
}
/**
* @return QString the essid of the host 802.11 access point.
*/
QString WExtensions::essid(){
if(!hasWirelessExtensions)
return QString();
if ( 0 == ioctl( fd, SIOCGIWESSID, &iwr )){
iwr.u.essid.pointer[(unsigned int) iwr.u.essid.length] = '\0';
return QString(iwr.u.essid.pointer);
}
return QString();
}
/**
* @return QString the mode of interface
*/
QString WExtensions::mode(){
if(!hasWirelessExtensions)
return QString();
if ( 0 == ioctl( fd, SIOCGIWMODE, &iwr ) )
return QString("%1").arg(iwr.u.mode == IW_MODE_ADHOC ? "Ad-Hoc" : "Managed");
return QString();
}
/**
* Get the frequency that the interface is running at.
* @return int the frequency that the interfacae is running at.
*/
double WExtensions::frequency(){
if(!hasWirelessExtensions)
return 0;
if ( 0 == ioctl( fd, SIOCGIWFREQ, &iwr ))
return (double( iwr.u.freq.m ) * pow( 10, iwr.u.freq.e ) / 1000000000);
return 0;
}
/**
* Get the channel that the interface is running at.
* @return int the channel that the interfacae is running at.
*/
int WExtensions::channel(){
if(!hasWirelessExtensions)
return 0;
if ( 0 != ioctl( fd, SIOCGIWFREQ, &iwr ))
return 0;
// http://www.elanix.com/pdf/an137e.pdf
double num = (double( iwr.u.freq.m ) * pow( 10, iwr.u.freq.e ) / 1000000000);
double left = 2.401;
double right = 2.416;
for(int channel = 1; channel<= 15; channel++){
if( num >= left && num <= right )
return channel;
left += 0.005;
right += 0.005;
}
qDebug(QString("Unknown frequency: %1, returning -1 for the channel.").arg(num).latin1());
return -1;
}
/***
* Get the current rate that the card is transmiting at.
* @return double the rate, 0 if error.
*/
double WExtensions::rate(){
if(!hasWirelessExtensions)
return 0;
if(0 == ioctl(fd, SIOCGIWRATE, &iwr)){
return ((double)iwr.u.bitrate.value)/1000000;
}
return 0;
}
/**
* @return QString the AccessPoint that the interface is connected to.
*/
QString WExtensions::ap(){
if(!hasWirelessExtensions)
return QString();
if ( 0 == ioctl( fd, SIOCGIWAP, &iwr )){
QString ap;
ap = ap.sprintf( "%.2X:%.2X:%.2X:%.2X:%.2X:%.2X",
iwr.u.ap_addr.sa_data[0]&0xff,
iwr.u.ap_addr.sa_data[1]&0xff,
iwr.u.ap_addr.sa_data[2]&0xff,
iwr.u.ap_addr.sa_data[3]&0xff,
iwr.u.ap_addr.sa_data[4]&0xff,
iwr.u.ap_addr.sa_data[5]&0xff );
return ap;
}
else return QString();
}
/**
* Get the stats for interfaces
* @param signal the signal strength of interface
* @param noise the noise level of the interface
* @param quality the quality level of the interface
- * @return bool true if successfull
+ * @return bool true if successful
*/
bool WExtensions::stats(int &signal, int &noise, int &quality){
// gather link quality from /proc/net/wireless
if(!QFile::exists(PROCNETWIRELESS))
return false;
char c;
QString status;
QString name;
QFile wfile( PROCNETWIRELESS );
if(!wfile.open( IO_ReadOnly ))
return false;
QTextStream wstream( &wfile );
wstream.readLine(); // skip the first two lines
wstream.readLine(); // because they only contain headers
while(!wstream.atEnd()){
wstream >> name >> status >> quality >> c >> signal >> c >> noise;
if(name == QString("%1:").arg(interface)){
if ( quality > 92 )
qDebug( "WIFIAPPLET: D'oh! Quality %d > estimated max!\n", quality );
if ( ( signal > IW_UPPER ) || ( signal < IW_LOWER ) )
qDebug( "WIFIAPPLET: Doh! Strength %d > estimated max!\n", signal );
if ( ( noise > IW_UPPER ) || ( noise < IW_LOWER ) )
qDebug( "WIFIAPPLET: Doh! Noise %d > estimated max!\n", noise );
//qDebug(QString("q:%1, s:%2, n:%3").arg(quality).arg(signal).arg(noise).latin1());
signal = ( ( signal-IW_LOWER ) * 100 ) / IW_UPPER;
noise = ( ( noise-IW_LOWER ) * 100 ) / IW_UPPER;
quality = ( quality*100 ) / 92;
return true;
}
}
qDebug("WExtensions::statsCard no longer present.");
quality = -1;
signal = IW_LOWER;
noise = IW_LOWER;
return false;
}
// wextensions.cpp
diff --git a/noncore/settings/networksettings/wlan/wlanmodule.cpp b/noncore/settings/networksettings/wlan/wlanmodule.cpp
index b4c3509..07bf73f 100644
--- a/noncore/settings/networksettings/wlan/wlanmodule.cpp
+++ b/noncore/settings/networksettings/wlan/wlanmodule.cpp
@@ -1,252 +1,252 @@
#include "wlanmodule.h"
#include "wlanimp2.h"
#include "infoimp.h"
#include "wextensions.h"
#include "interfaceinformationimp.h"
#include <qcheckbox.h>
#include <qcombobox.h>
#include <qlabel.h>
#include <qlineedit.h>
#include <qprogressbar.h>
#include <qspinbox.h>
#include <qtabwidget.h>
/**
* Constructor, find all of the possible interfaces
*/
WLANModule::WLANModule()
: Module(),
wlanconfigWiget(0)
{
}
/**
* Delete any interfaces that we own.
*/
WLANModule::~WLANModule(){
Interface *i;
for ( i=list.first(); i != 0; i=list.next() )
delete i;
}
/**
* Change the current profile
*/
void WLANModule::setProfile(const QString &newProfile){
profile = newProfile;
}
/**
* get the icon name for this device.
* @param Interface* can be used in determining the icon.
* @return QString the icon name (minus .png, .gif etc)
*/
QString WLANModule::getPixmapName(Interface* ){
return "wlan";
}
/**
* Check to see if the interface i is owned by this module.
* @param Interface* interface to check against
* @return bool true if i is owned by this module, false otherwise.
*/
bool WLANModule::isOwner(Interface *i){
WExtensions we(i->getInterfaceName());
if(!we.doesHaveWirelessExtensions())
return false;
i->setHardwareName("802.11b");
list.append(i);
return true;
}
/**
* Create, and return the WLANConfigure Module
* @return QWidget* pointer to this modules configure.
*/
QWidget *WLANModule::configure(Interface *i){
WLANImp *wlanconfig = new WLANImp(0, "WlanConfig", i, true, Qt::WDestructiveClose);
wlanconfig->setProfile(profile);
return wlanconfig;
}
/**
* Create, and return the Information Module
* @return QWidget* pointer to this modules info.
*/
QWidget *WLANModule::information(Interface *i){
WExtensions we(i->getInterfaceName());
if(!we.doesHaveWirelessExtensions())
return NULL;
return getInfo( i );
}
/**
* Get all active (up or down) interfaces
* @return QList<Interface> A list of interfaces that exsist that havn't
* been called by isOwner()
*/
QList<Interface> WLANModule::getInterfaces(){
return list;
}
/**
* Attempt to add a new interface as defined by name
* @param name the name of the type of interface that should be created given
* by possibleNewInterfaces();
* @return Interface* NULL if it was unable to be created.
*/
Interface *WLANModule::addNewInterface(const QString &){
// We can't add a 802.11 interface, either the hardware will be there
// or it wont.
return NULL;
}
/**
* Attempts to remove the interface, doesn't delete i
- * @return bool true if successfull, false otherwise.
+ * @return bool true if successful, false otherwise.
*/
bool WLANModule::remove(Interface*){
// Can't remove a hardware device, you can stop it though.
return false;
}
void WLANModule::receive(const QCString &param, const QByteArray &arg)
{
qDebug("WLANModule::receive "+param);
QStringList params = QStringList::split(",",param);
int count = params.count();
qDebug("WLANModule got %i params", count );
if (count < 2){
qDebug("Erorr less than 2 parameter");
qDebug("RETURNING");
return;
}
QDataStream stream(arg,IO_ReadOnly);
QString interface;
QString action;
int countMsgs = 0;
stream >> interface;
qDebug("got count? >%s<",interface.latin1());
if (interface == "count"){
qDebug("got count");
stream >> action;
qDebug("Got count num >%s<", action.latin1());
countMsgs = action.toInt();
}
QDialog *toShow;
//while (! stream.atEnd() ){
for (int i = 0; i < countMsgs; i++){
qDebug("start stream %d/%d",i,countMsgs);
if (stream.atEnd()){
qDebug("end of stream");
return;
}
stream >> interface;
qDebug("got iface");
stream >> action;
qDebug("WLANModule got interface %s and acion %s", interface.latin1(), action.latin1());
// find interfaces
Interface *ifa=0;
for ( Interface *i=list.first(); i != 0; i=list.next() ){
if (i->getInterfaceName() == interface){
qDebug("WLANModule found interface %s",interface.latin1());
ifa = i;
}
}
if (ifa == 0){
qDebug("WLANModule Did not find %s",interface.latin1());
qDebug("skipping");
count = 0;
}
if (count == 2){
// those should call the interface directly
QWidget *info = getInfo( ifa );
info->showMaximized();
if ( action.contains("start" ) ){
ifa->start();
} else if ( action.contains("restart" ) ){
ifa->restart();
} else if ( action.contains("stop" ) ){
ifa->stop();
}else if ( action.contains("refresh" ) ){
ifa->refresh();
}
}else if (count == 3){
QString value;
if (!wlanconfigWiget){
//FIXME: what if it got closed meanwhile?
wlanconfigWiget = (WLANImp*) configure(ifa);
toShow = (QDialog*) wlanconfigWiget;
}
wlanconfigWiget->showMaximized();
stream >> value;
qDebug("WLANModule (build 4) is setting %s of %s to %s", action.latin1(), interface.latin1(), value.latin1() );
if (value.isEmpty()){
qDebug("value is empty!!!\nreturning");
return;
}
if ( action.contains("ESSID") ){
QComboBox *combo = wlanconfigWiget->essid;
bool found = false;
for ( int i = 0; i < combo->count(); i++)
if ( combo->text( i ) == value ){
combo->setCurrentItem( i );
found = true;
}
if (!found) combo->insertItem( value, 0 );
}else if ( action.contains("Mode") ){
QComboBox *combo = wlanconfigWiget->mode;
for ( int i = 0; i < combo->count(); i++)
if ( combo->text( i ) == value ){
combo->setCurrentItem( i );
}
}else if (action.contains("Channel")){
bool ok;
qDebug("converting channel");
int chan = value.toInt( &ok );
if (ok){
qDebug("ok setting channel");
wlanconfigWiget->specifyChan->setChecked( true );
wlanconfigWiget->networkChannel->setValue( chan );
}
}else if (action.contains("MacAddr")){
wlanconfigWiget->specifyAp->setChecked( true );
wlanconfigWiget->macEdit->setText( value );
}else
qDebug("wlan plugin has no clue");
}
qDebug("next stream");
}// while stream
qDebug("end of stream");
if (toShow) toShow->exec();
qDebug("returning");
}
QWidget *WLANModule::getInfo( Interface *i)
{
qDebug("WLANModule::getInfo start");
WlanInfoImp *info = new WlanInfoImp(0, i->getInterfaceName(), Qt::WDestructiveClose);
InterfaceInformationImp *information = new InterfaceInformationImp(info->tabWidget, "InterfaceSetupImp", i);
info->tabWidget->insertTab(information, "TCP/IP", 0);
info->tabWidget->setCurrentPage( 0 );
info->tabWidget->showPage( information );
if (info->tabWidget->currentPage() == information ) qDebug("infotab OK");
else qDebug("infotab NOT OK");
qDebug("current idx %d", info->tabWidget->currentPageIndex());
qDebug("WLANModule::getInfo return");
return info;
}
diff --git a/noncore/settings/tabmanager/tabmanager.cpp b/noncore/settings/tabmanager/tabmanager.cpp
index c9d7aed..ff5957c 100644
--- a/noncore/settings/tabmanager/tabmanager.cpp
+++ b/noncore/settings/tabmanager/tabmanager.cpp
@@ -1,508 +1,508 @@
#include "tabmanager.h"
#include "app.h"
#include "wait.h"
#include "tabapplnk.h"
#include <qpe/applnk.h>
#include <qdir.h>
#include <qfile.h>
#include <qtextstream.h>
#include <qlistview.h>
#include <qheader.h>
#include <qcombobox.h>
#include <qlineedit.h>
#include <qlabel.h>
#include <qmessagebox.h>
#include <stdlib.h>
#include <qpe/qcopenvelope_qws.h>
#include <qpe/qpeapplication.h>
#include <qpe/resource.h>
#define HOME_APP_DIR QPEApplication::qpeDir()+"/apps"
#define HOME_APP_INSTALL_DIR "/usr/lib/ipkg/info"
#define NEW_FOLDER "EmptyTab"
#define NEW_APPLICATION "NewApp"
#define APPLICATION_EXTENSION ".desktop"
#define APPLICATION_EXTENSION_LENGTH 8
/**
* Constructor. Sets up signals. Performs initial scan of applications
* and tabs
*/
TabManager::TabManager( QWidget* parent, const char* name):TabManagerBase(parent, name), changed(false), application(NULL){
rescanFolder(HOME_APP_DIR);
// Connect the signals and slots
connect(tabList, SIGNAL(doubleClicked(QListViewItem *)), this, SLOT(editItem(QListViewItem*)));
(tabList->header())->hide();
connect(tabList, SIGNAL(moveItem(QListViewItem *, QListViewItem *)), this, SLOT(moveApplication(QListViewItem *, QListViewItem *)));
}
/**
* If anything in the tab's have been changed then update the system or alert
* the user.
*/
TabManager::~TabManager(){
if(changed){
// Prompt.
//int answer = QMessageBox::warning(this, "Message", "Should your desktop be","Yes", "Cancel", 0, 1 );
//if (answer)
// return;
QCopEnvelope e("QPE/System", "linkChanged(QString)");
QString link; //we'll just send an empty string
e << link;
}
}
/**
* Scans root directory for any tabs or applications. Will recursivly go down,
* but will not follow symlinks.
* @param directory - the directory to look in.
* @param parent - the parent to place any new tabs or apps into. If parent is
* NULL then the item is a tab and should be placed as a child of the window.
*/
void TabManager::rescanFolder(QString directory, QListViewItem* parent){
//qDebug(QString("rescanFolder: ") + directory.latin1());
QDir d;
d.setPath(directory);
// Show hidden files for .directories
d.setFilter( QDir::Files | QDir::Hidden | QDir::Dirs);
const QFileInfoList *list = d.entryInfoList();
QFileInfoListIterator it( *list ); // create list iterator
QFileInfo *fi; // pointer for traversing
while ( (fi=it.current()) ) { // for each file...
// If it is a dir and not .. or . then add it as a tab and go down.
if(fi->isDir()){
if(fi->fileName() != ".." && fi->fileName() != ".") {
QListViewItem* newItem;
if(!parent)
newItem = new QListViewItem(tabList, fi->fileName());
else
newItem = new QListViewItem(parent, fi->fileName());
itemList.insert(newItem, directory + "/" + fi->fileName() + "/.directory" );
rescanFolder(directory + "/" + fi->fileName(), newItem);
}
}
else{
// it is a file, if not a .directory add to parent.
// Change parents name and icon to reflect icon.
if(fi->fileName() == ".directory"){
AppLnk app(directory + "/" + fi->fileName());
if(parent){
parent->setPixmap(0,app.pixmap());
parent->setText(0, app.name());
}
}
else{
// Add any desktop files found.
QListViewItem* newItem;
if(directory != HOME_APP_DIR){
if(!parent)
newItem = new QListViewItem(tabList, fi->fileName());
else
newItem = new QListViewItem(parent, fi->fileName());
if(fi->fileName().right(APPLICATION_EXTENSION_LENGTH) == APPLICATION_EXTENSION){
AppLnk app(directory + "/" + fi->fileName());
newItem->setPixmap(0,app.pixmap());
newItem->setText(0, app.name());
itemList.insert(newItem, directory + "/" + fi->fileName());
}
}
}
}
++it; // goto next list element
}
}
/**
* Create a new blank Tab.
* Create a physical folder with .directory file
* Create a item on the list
*/
void TabManager::newFolder(){
QDir r;
r.mkdir(QString(HOME_APP_DIR) + "/" + NEW_FOLDER);
system((QString("echo [Desktop Entry] | cat >> ") + HOME_APP_DIR + "/" + NEW_FOLDER "/.directory").latin1());
system((QString("echo Name=" NEW_FOLDER " | cat >> ") + HOME_APP_DIR + "/" + NEW_FOLDER "/.directory").latin1());
QString homeLocation = QString(HOME_APP_DIR) + "/" + NEW_FOLDER + "/.directory";
QListViewItem *newItem = new QListViewItem(tabList, NEW_FOLDER);
itemList.insert(newItem, homeLocation );
// We have changed something.
changed = true;
}
/**
* Create a new blank application
* Make sure a tab is selected
* create physical file
* fill file with default information (entry, name, type).
*/
void TabManager::newApplication(){
QListViewItem *item = tabList->currentItem();
if(!item || item->parent())
return;
QString parentDir = itemList[item].mid(0,itemList[item].length()-11);
QString homeLocation = parentDir + "/" NEW_APPLICATION APPLICATION_EXTENSION;
system((QString("echo [Desktop Entry] | cat >> ") + homeLocation).latin1());
system((QString("echo Name=" NEW_APPLICATION " | cat >> ") + homeLocation).latin1());
int slash = parentDir.findRev('/', -1);
QString folderName = parentDir.mid(slash+1, parentDir.length());
system((QString("echo Type=") + folderName + " | cat >> " + homeLocation).latin1());
// Insert into the tree
QListViewItem *newItem = new QListViewItem(item, NEW_APPLICATION);
itemList.insert(newItem, homeLocation );
// We have changed something.
changed = true;
}
/**
* Remove the item.
* Check if we can
* Prompt user
* Delete physical file (Dir, remove .dir, then dir. File, remove file)
* Remove from installer if need too.
*/
void TabManager::removeItem(){
// Make sure we can delete
QListViewItem *item = tabList->currentItem();
if(!item)
return;
if(item->childCount() > 0){
QMessageBox::critical(this, tr("Message"), tr("Can't remove with applications\nstill in the group."), tr("Ok") );
return;
}
// Prompt.
int answer = QMessageBox::warning(this, tr("Message"), tr("Are you sure you want to delete?"), tr("Yes"), tr("Cancel"), 0, 1 );
if (answer)
return;
- bool removeSuccessfull = true;
+ bool removeSuccessful = true;
QString location = itemList[item];
// Remove file (.directory in a Directory case)
if(!QFile::remove(location))
- removeSuccessfull = false;
+ removeSuccessful = false;
// Remove directory
if(item->parent() == NULL){
// Remove .directory file string
location = location.mid(0,location.length()-10);
QDir dir;
if(!dir.rmdir(location))
- removeSuccessfull = false;
+ removeSuccessful = false;
else
- removeSuccessfull = true;
+ removeSuccessful = true;
}
// If removing failed.
- if(!removeSuccessfull){
+ if(!removeSuccessful){
qDebug((QString("removeItem: ") + location).latin1());
QMessageBox::critical(this, tr("Message"), tr("Can't remove."), tr("Ok") );
return;
}
// Remove from the installer so it wont fail.
// Don't need to do this sense the current install uses rm -f so no error
// Remove from the gui list.
itemList.remove(item);
if(item->parent())
item->parent()->takeItem(item);
delete item;
// We have changed something.
changed = true;
}
/**
* Helper function. Edits the current item.
* calls editItem with the currently selected item.
*/
void TabManager::editCurrentItem(){
editItem(tabList->currentItem());
}
/**
* Edit the item that is passed in.
* Show application dialog and if anything changed
* @param item the item to edit.
*/
void TabManager::editItem( QListViewItem * item){
if(!item)
return;
TabAppLnk app(itemList[item]);
if(!app.isValid()){
qDebug(QString("editItem: Not a valid applnk file: ") + itemList[item].latin1());
return;
}
// Fill with all of the icons
if(!application){
Wait waitDialog(this, "Wait dialog");
waitDialog.waitLabel->setText(tr("Gathering icons..."));
waitDialog.show();
qApp->processEvents();
application = new AppEdit(this, "Application edit", true);
QDir d(QPEApplication::qpeDir() + "/pics/");
d.setFilter( QDir::Files);
const QFileInfoList *list = d.entryInfoList();
QFileInfoListIterator it( *list ); // create list iterator
QFileInfo *fi; // pointer for traversing
while ( (fi=it.current()) ) { // for each file...
QString fileName = fi->fileName();
if(fileName.right(4) == ".png"){
fileName = fileName.mid(0,fileName.length()-4);
QPixmap imageOfFile(Resource::loadPixmap(fileName));
QImage foo = imageOfFile.convertToImage();
foo = foo.smoothScale(16,16);
imageOfFile.convertFromImage(foo);
application->iconLineEdit->insertItem(imageOfFile,fileName);
}
//qDebug(fi->fileName().latin1());
++it;
}
waitDialog.hide();
}
int pixmap = -1;
QString pixmapText = app.pixmapString();
QComboBox *f = application->iconLineEdit;
for(int i = 0; i < application->iconLineEdit->count(); i++){
if(f->text(i) == pixmapText){
pixmap = i;
break;
}
}
if(pixmap != -1)
application->iconLineEdit->setCurrentItem(pixmap);
else if(pixmapText.isEmpty()){
application->iconLineEdit->setCurrentItem(0);
}
else{
QPixmap imageOfFile(Resource::loadPixmap(pixmapText));
QImage foo = imageOfFile.convertToImage();
foo = foo.smoothScale(16,16);
imageOfFile.convertFromImage(foo);
application->iconLineEdit->insertItem(imageOfFile,pixmapText,0);
application->iconLineEdit->setCurrentItem(0);
}
application->nameLineEdit->setText(app.name());
application->execLineEdit->setText(app.exec());
application->commentLineEdit->setText(app.comment());
if(item->parent() == NULL){
application->execLineEdit->setEnabled(false);
application->TextLabel3->setEnabled(false);
application->setCaption(tr("Tab"));
}
else{
application->execLineEdit->setEnabled(true);
application->TextLabel3->setEnabled(true);
application->setCaption(tr("Application"));
}
// Only do somthing if they hit OK
application->showMaximized();
if(application->exec() == 0)
return;
// If nothing has changed exit (hmmm why did they hit ok?)
if(app.name() == application->nameLineEdit->text() &&
app.pixmapString() == application->iconLineEdit->currentText() &&
app.comment() == application->commentLineEdit->text() &&
app.exec() == application->execLineEdit->text())
return;
// Change the applnk file
QString oldName = app.name();
app.setName(application->nameLineEdit->text());
app.setIcon(application->iconLineEdit->currentText());
app.setComment(application->commentLineEdit->text());
app.setExec(application->execLineEdit->text());
if(!app.writeLink()){
QMessageBox::critical(this, tr("Message"), "Can't save.", tr("Ok") );
return;
}
// Update the gui icon and name
item->setText(0,app.name());
item->setPixmap(0,app.pixmap());
// We have changed something.
changed = true;
// If we were dealing with a new folder or new application change
// the file names. Also change the item location in itemList
if(oldName == NEW_FOLDER){
QDir r;
QString oldName = itemList[item];
oldName = oldName.mid(0,oldName.length()-11);
QString newName = oldName.mid(0,oldName.length()-9);
newName = newName + "/" + app.name();
r.rename(oldName, newName);
itemList.remove(item);
itemList.insert(item, newName + "/.directory" );
}
else if(oldName == NEW_APPLICATION){
if(!item->parent())
return;
QString parentDir = itemList[item->parent()];
QDir r;
QString oldName = itemList[item];
QString newName = oldName.mid(0, parentDir.length()-10);
newName = newName + app.name() + APPLICATION_EXTENSION;
r.rename(oldName, newName);
itemList.remove(item);
itemList.insert(item, newName);
}
}
/**
* Move an application from one directory to another.
* Move in the gui, move in the applnk file, move in the installer.
* @param item the application to move
* @pearam newGroup the new parent of this application
*/
void TabManager::moveApplication(QListViewItem *item, QListViewItem *newGroup){
// Can we even move it?
if(!item || !item->parent() || newGroup->parent())
return;
if(item->parent() == newGroup)
return;
// Get the new folder, new file name,
QString newFolder = itemList[newGroup];
newFolder = newFolder.mid(0,newFolder.length()-11);
int slash = newFolder.findRev('/', -1);
QString folderName = newFolder.mid(slash+1, newFolder.length());
QString desktopFile = itemList[item];
slash = desktopFile.findRev('/', -1);
desktopFile = desktopFile.mid(slash, desktopFile.length());
newFolder = newFolder + desktopFile;
// Move file
QDir r;
if(!r.rename(itemList[item], newFolder)){
QMessageBox::critical(this, tr("Message"), "Can't move application.", tr("Ok") );
return;
}
//qDebug((QString("moveApplication: ") + itemList[item]).latin1());
//qDebug((QString("moveApplication: ") + newFolder).latin1());
// Move in the gui
item->parent()->takeItem(item);
newGroup->insertItem(item);
newGroup->setOpen(true);
// Move file in the installer
QString installedAppFile;
if(findInstalledApplication(desktopFile, installedAppFile))
swapInstalledLocation(installedAppFile, desktopFile, newFolder);
else
qDebug("moveApplication: No installed app found for dekstop file");
// Move application type
AppLnk app(newFolder);
app.setType(folderName);
app.writeLink();
// Move in our internal list
itemList.remove(item);
itemList.insert(item, newFolder);
// We have changed something.
changed = true;
}
/**
* File the installed application that has this desktop file.
* Go through each file in HOME_APP_INSTALL_DIR and see if it contains desktop
* file
* @param desktopFile - the .desktop file to search for [foo.desktop]
* @param installedAppFile - location of the app install list
- * @return true if successfull, false if file not found.
+ * @return true if successful, false if file not found.
*/
bool TabManager::findInstalledApplication(QString desktopFile, QString &installedAppFile){
QDir d;
d.setPath(HOME_APP_INSTALL_DIR);
d.setFilter( QDir::Files );
const QFileInfoList *list = d.entryInfoList();
QFileInfoListIterator it( *list ); // create list iterator
QFileInfo *fi; // pointer for traversing
while ( (fi=it.current()) ) { // for each file...
QFile file(QString(HOME_APP_INSTALL_DIR) + "/" + fi->fileName());
if ( file.open(IO_ReadOnly) ) { // file opened successfully
QTextStream stream( &file ); // use a text stream
QString line;
while ( !stream.eof() ) { // until end of file...
line = stream.readLine(); // line of text excluding '\n'
if(line.contains(desktopFile)){
installedAppFile = QString(HOME_APP_INSTALL_DIR) + "/" + fi->fileName();
file.close();
return true;
}
}
file.close();
}
else
qDebug((QString("findInstalledApplication: Can't open file") + HOME_APP_INSTALL_DIR + "/" + fi->fileName()).latin1());
++it; // goto next list element
}
return false;
}
/**
* Open a file and replace a file containing the old desktop file with the new.
* @param installedAppFile application installed list
* @param desktopFile old .desktop file
* @param newLocation new .desktop file
*/
void TabManager::swapInstalledLocation( QString installedAppFile, QString desktopFile, QString newLocation ){
QFile file(installedAppFile);
if ( !file.open(IO_ReadOnly) ){
qDebug(QString("swapInstalledLocation: Can't edit file: %1").arg(installedAppFile).latin1());
return;
}
QTextStream stream( &file ); // use a text stream
QString allLines;
while ( !stream.eof() ) { // until end of file...
QString line = stream.readLine(); // line of text excluding '\n'
if(line.contains(desktopFile))
allLines += newLocation;
else
allLines += line;
allLines += '\n';
}
file.close();
if ( !file.open(IO_ReadWrite) ){
qDebug(QString("swapInstalledLocation: Can't edit file: %1").arg(installedAppFile).latin1());
return;
}
QTextStream streamOut( &file );
streamOut << allLines;
file.close();
}
// tabmanager.cpp
diff --git a/noncore/unsupported/mail2/TODO b/noncore/unsupported/mail2/TODO
index 4bc434f..3c83fdd 100644
--- a/noncore/unsupported/mail2/TODO
+++ b/noncore/unsupported/mail2/TODO
@@ -1,34 +1,34 @@
Mail TODO
-----------------------------------------------------------------------------
General stuff:
- This program needs a name!
- If password is empty, ask for it during fetch.
- Check if all necessary fields in AccoundEditor are filled.
- Seperate Sending and Recieving in configuration.
Protocol related:
- The IMAP implentation is kinda strange and slow.
- The SMTP implentation is goddamn strange.
- POP3 support would be nice.
- NNTP would be kinda neat, too.
- Implent a plugin system.
Security related:
- GnuPG support. This will require a seperate gpg managing utility in
the settings tab.
- sMIME? maybe in the distant future.
- Integrated SSH tunneling.
Mail management:
- Header caching
- Sieve filtering support?
- Enqueueing/Draft support both on the IMAP server and local.
Testing:
I'm using the courier-imap server at my developement site. I didn't have
much opportunity to test on other servers. Giving me test-accounts on other
- servers would be helpfull.
+ servers would be helpful.
If you want something added, drop a mail. Comments are always welcome.
diff --git a/noncore/unsupported/mail2/folderwidget.cpp b/noncore/unsupported/mail2/folderwidget.cpp
index 6c36e92..d27968b 100644
--- a/noncore/unsupported/mail2/folderwidget.cpp
+++ b/noncore/unsupported/mail2/folderwidget.cpp
@@ -1,314 +1,314 @@
#include <qmessagebox.h>
#include <qtextstream.h>
#include <qpopupmenu.h>
#include <qheader.h>
#include <qfile.h>
#include <qdir.h>
#include <qpe/resource.h>
#include <stdlib.h>
#include "folderwidget.h"
#include "imaphandler.h"
#include "imapbase.h"
#include "rename.h"
FolderWidgetItem::FolderWidgetItem(Folder &folder, QListView *parent)
: QListViewItem(parent), _folder(folder)
{
setPixmap(0, QPixmap(Resource::loadPixmap("mail/inbox")));
setText(0, _folder.topFolder().account().user() + " (" + _folder.topFolder().account().imapServer() + ")");
setOpen(true);
}
FolderWidgetItem::FolderWidgetItem(Folder &folder, FolderWidgetItem *parent)
: QListViewItem(parent), _folder(folder)
{
if (_folder.noCache()) {
setText(0, QObject::tr("<Foldertree not known.>"));
} else {
if (folder.fullName().upper() == "INBOX") {
setPixmap(0, QPixmap(Resource::loadPixmap("mail/inbox")));
setText(0, QObject::tr("Inbox"));
} else {
setPixmap(0, QPixmap(Resource::loadPixmap("mail/folder")));
setText(0, folder.fullName());
}
setOpen(true);
}
}
FolderWidget::FolderWidget(QWidget *parent, const char *name, WFlags fl)
: ListViewPlus(parent, name, fl)
{
header()->hide();
addColumn("");
setSorting(-1);
QPopupMenu *menu = new QPopupMenu();
menu->insertItem(tr("Rename"), MENU_RENAME);
menu->insertItem(tr("Delete"), MENU_DELETE);
menu->insertItem(tr("Move"), MENU_MOVE);
menu->insertItem(tr("Copy"), MENU_COPY);
menu->insertSeparator();
menu->insertItem(tr("Create folder"), MENU_CREATE);
menu->insertSeparator();
menu->insertItem(tr("Rescan folder list"), MENU_RESCAN);
setPopup(menu);
getAccounts();
connect(menu, SIGNAL(activated(int)), SLOT(slotMenuActivated(int)));
connect(this, SIGNAL(clicked(QListViewItem *)), SLOT(slotItemClicked(QListViewItem *)));
}
FolderWidget::~FolderWidget()
{
// TODO: Save folder tree.
}
void FolderWidget::update()
{
getAccounts();
}
void FolderWidget::getAccounts()
{
clear();
QValueList<Account> accounts = ConfigFile::getAccounts();
QValueList<Account>::Iterator it;
for (it = accounts.begin(); it != accounts.end(); it++) {
FolderWidgetItem *item = addAccount(*it);
QFile f((QString) getenv("HOME") + "/Applications/mail/foldercache/foldercache-" + (*it).accountName());
if (!f.open(IO_ReadOnly)) {
Folder folder;
folder.setNoCache(true);
addFolder(folder, item);
} else {
QTextStream t(&f);
while (!t.atEnd()) {
QString separator = t.readLine();
QString fullname = t.readLine();
Folder folder;
folder.setSeparator(separator);
folder.setFullName(fullname);
folder.setTopFolder(item->folder().topFolder());
addFolder(folder, item);
}
f.close();
}
}
}
FolderWidgetItem *FolderWidget::addAccount(Account &account)
{
TopFolder tf;
tf.setAccount(account);
// XXX This has to change!!! The folderwidget may not create an
// XXX IMAPHandler!!!! Do this in IMAPHandler!
tf.setIMAPHandler(new IMAPHandler(account));
Folder folder;
folder.setTopFolder(tf);
connect(tf.handler(), SIGNAL(IMAPLookingUpHost()), SLOT(slotIMAPLookingUpHost()));
connect(tf.handler(), SIGNAL(IMAPHostFound()), SLOT(slotIMAPHostFound()));
connect(tf.handler(), SIGNAL(IMAPConnected()), SLOT(slotIMAPConnected()));
connect(tf.handler(), SIGNAL(IMAPDisconnected()), SLOT(slotIMAPDisconnected()));
connect(tf.handler(), SIGNAL(IMAPError(int)), SLOT(slotIMAPError(int)));
return new FolderWidgetItem(folder, this);
}
FolderWidgetItem *FolderWidget::addFolder(Folder &folder, FolderWidgetItem *folderWidgetItem)
{
return new FolderWidgetItem(folder, folderWidgetItem);
}
void FolderWidget::slotMenuActivated(int itemid)
{
if (currentItem() == NULL) {
QMessageBox::information(this, tr("Error"), tr("<p>Please select an item first.</p>"), tr("Ok"));
return;
}
if (itemid == MENU_RENAME) {
if (((FolderWidgetItem *)currentItem())->folder().fullName().isEmpty()) return;
Folder folder = ((FolderWidgetItem *)currentItem())->folder();
QString newName = Rename::rename(folder.fullName(), this);
if (newName.isNull()) return;
folder.topFolder().handler()->iRename(folder.fullName(), newName);
connect(folder.topFolder().handler(), SIGNAL(gotResponse(IMAPResponse &)), SLOT(slotIMAPRename(IMAPResponse &)));
} else if (itemid == MENU_DELETE) {
if (((FolderWidgetItem *)currentItem())->folder().fullName().isEmpty()) return;
Folder folder = ((FolderWidgetItem *)currentItem())->folder();
int ret = QMessageBox::information(this, tr("Question"), tr("<p>Do you really want to delete <pre>%1</pre>?").arg(folder.fullName()), tr("Yes"), tr("No"));
if (ret == 1) return;
_createFolder = folder;
folder.topFolder().handler()->iDelete(folder.fullName());
connect(folder.topFolder().handler(), SIGNAL(gotResponse(IMAPResponse &)), SLOT(slotIMAPDelete(IMAPResponse &)));
} else if (itemid == MENU_MOVE) {
} else if (itemid == MENU_COPY) {
} else if (itemid == MENU_CREATE) {
Folder folder = (((FolderWidgetItem *)currentItem())->folder());
_createFolder = folder;
QString folderName = Rename::getText(tr("Foldername"), tr("<p>Please enter the name of the new folder.</p>"), this);
if (folderName.isNull()) return;
folder.topFolder().handler()->iCreate(folder.fullName() + folder.separator() + folderName);
connect(folder.topFolder().handler(), SIGNAL(gotResponse(IMAPResponse &)), SLOT(slotIMAPCreate(IMAPResponse &)));
} else if (itemid == MENU_RESCAN) {
Folder folder = (((FolderWidgetItem *)currentItem())->folder());
_rescanAccount = folder.topFolder().account();
folder.topFolder().handler()->iList("", "*");
connect(folder.topFolder().handler(), SIGNAL(gotResponse(IMAPResponse &)), SLOT(slotIMAPList(IMAPResponse &)));
}
}
void FolderWidget::slotItemClicked(QListViewItem *item)
{
if (item == NULL) return;
Folder folder = ((FolderWidgetItem *)item)->folder();
if (folder.fullName().isEmpty()) return;
emit folderSelected(folder);
}
void FolderWidget::slotIMAPLookingUpHost()
{
emit status(tr("Looking up host..."));
emit connecting();
}
void FolderWidget::slotIMAPHostFound()
{
emit status(tr("Host found."));
}
void FolderWidget::slotIMAPConnected()
{
emit status(tr("Connected to host."));
emit connected();
}
void FolderWidget::slotIMAPError(int error)
{
if (error == IMAPBase::IMAPErrConnectionRefused) {
QMessageBox::warning(this, tr("Error"), tr("<p>The IMAP connection was refused.</p>"), tr("Ok"));
} else if (error == IMAPBase::IMAPErrHostNotFound) {
QMessageBox::warning(this, tr("Error"), tr("<p>The host was not found.</p>"), tr("Ok"));
} else if (error == IMAPBase::IMAPErrSocketRead) {
QMessageBox::warning(this, tr("Error"), tr("<p>There was an error while reading from the socket.</p>"), tr("Ok"));
} else if (error == IMAPBase::IMAPErrLoginFailed) {
QMessageBox::warning(this, tr("Error"), tr("<p>Login failed. Check your password/username.</p>"), tr("Ok"));
} else {
QMessageBox::warning(this, tr("Error"), tr("<p>An unknown error was encountered.</p>"), tr("Ok"));
}
}
void FolderWidget::slotIMAPDisconnected()
{
emit status(tr("Disconnected."));
emit disconnected();
}
void FolderWidget::slotIMAPLogin(IMAPResponse &response)
{
disconnect(response.imapHandler(), SIGNAL(gotResponse(IMAPResponse &)), this, SLOT(slotIMAPLogin(IMAPResponse &)));
if (response.statusResponse().status() == IMAPResponseEnums::OK) {
- emit status(tr("Login successfull!"));
+ emit status(tr("Login successful!"));
} else {
QMessageBox::warning(this, tr("Error"), tr("<p>Login failed. Go away.</p>"), tr("Ok"));
}
}
void FolderWidget::slotIMAPRename(IMAPResponse &response)
{
disconnect(response.imapHandler(), SIGNAL(gotResponse(IMAPResponse &)), this, SLOT(slotIMAPRename(IMAPResponse &)));
if (response.statusResponse().status() == IMAPResponseEnums::OK) {
- emit status(tr("Renaming successfull!"));
+ emit status(tr("Renaming successful!"));
} else {
QMessageBox::warning(this, tr("Error"), tr("<p>Renaming failed. (Server said: %1)</p>").arg(response.statusResponse().comment()), tr("Ok"));
}
}
void FolderWidget::slotIMAPDelete(IMAPResponse &response)
{
disconnect(response.imapHandler(), SIGNAL(gotResponse(IMAPResponse &)), this, SLOT(slotIMAPDelete(IMAPResponse &)));
if (response.statusResponse().status() == IMAPResponseEnums::OK) {
- emit status(tr("Deletion successfull!"));
+ emit status(tr("Deletion successful!"));
_rescanAccount = _createFolder.topFolder().account();
_createFolder.topFolder().handler()->iList(".", "*");
connect(_createFolder.topFolder().handler(), SIGNAL(gotResponse(IMAPResponse &)), SLOT(slotIMAPList(IMAPResponse &)));
} else {
QMessageBox::warning(this, tr("Error"), tr("<p>Delete failed. (Server said: %1)</p>").arg(response.statusResponse().comment()), tr("Ok"));
}
}
void FolderWidget::slotIMAPCreate(IMAPResponse &response)
{
disconnect(response.imapHandler(), SIGNAL(gotResponse(IMAPResponse &)), this, SLOT(slotIMAPCreate(IMAPResponse &)));
if (response.statusResponse().status() == IMAPResponseEnums::OK) {
emit status(tr("Folder created. Rescanning..."));
_rescanAccount = _createFolder.topFolder().account();
_createFolder.topFolder().handler()->iList(".", "*");
connect(_createFolder.topFolder().handler(), SIGNAL(gotResponse(IMAPResponse &)), SLOT(slotIMAPList(IMAPResponse &)));
} else {
QMessageBox::warning(this, tr("Error"), tr("<p>The folder could not be created. (Server said: %1)</p>").arg(response.statusResponse().comment()), tr("Ok"));
}
}
void FolderWidget::slotIMAPList(IMAPResponse &response)
{
disconnect(response.imapHandler(), SIGNAL(gotResponse(IMAPResponse &)), this, SLOT(slotIMAPList(IMAPResponse &)));
if (response.statusResponse().status() == IMAPResponseEnums::OK) {
QDir d((QString) getenv("HOME") + "/Applications/mail/foldercache");
if (!d.exists()) {
system("mkdir -p $HOME/Applications/mail/foldercache");
qWarning("Created $HOME/Applications/mail/foldercache.");
}
QFile f((QString) getenv("HOME") + "/Applications/mail/foldercache/foldercache-" + _rescanAccount.accountName());
if (!f.open(IO_WriteOnly)) {
QMessageBox::critical(this, tr("Error"), tr("<p>Couldn't open folder cache file for writing!</p>"), tr("Ok"));
return;
}
QTextStream t(&f);
QValueList<IMAPResponseLIST>::Iterator it;
QValueList<IMAPResponseLIST> lists = response.LIST();
for (it = lists.begin(); it != lists.end(); it++) {
t << (*it).folderSeparator() << "\n";
t << (*it).folder() << "\n";
}
f.close();
emit status(tr("Got folder list."));
getAccounts();
} else {
QMessageBox::warning(this, tr("Error"), tr("<p>Couldn't retrieve the folder list. (Server said: %1)</p>").arg(response.statusResponse().comment()), tr("Ok"));
}
}
diff --git a/qmake/generators/mac/pbuilder_pbx.cpp b/qmake/generators/mac/pbuilder_pbx.cpp
index 8525058..b46005b 100644
--- a/qmake/generators/mac/pbuilder_pbx.cpp
+++ b/qmake/generators/mac/pbuilder_pbx.cpp
@@ -1,983 +1,983 @@
/****************************************************************************
** $Id$
**
** Definition of ________ class.
**
** Created : 970521
**
** Copyright (C) 1992-2000 Trolltech AS. All rights reserved.
**
** This file is part of the network module of the Qt GUI Toolkit.
**
** This file may be distributed under the terms of the Q Public License
** as defined by Trolltech AS of Norway and appearing in the file
** LICENSE.QPL included in the packaging of this file.
**
** This file may be distributed and/or modified under the terms of the
** GNU General Public License version 2 as published by the Free Software
** Foundation and appearing in the file LICENSE.GPL included in the
** packaging of this file.
**
** Licensees holding valid Qt Enterprise Edition licenses may use this
** file in accordance with the Qt Commercial License Agreement provided
** with the Software.
**
** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
**
** See http://www.trolltech.com/pricing.html or email sales@trolltech.com for
** information about Qt Commercial License Agreements.
** See http://www.trolltech.com/qpl/ for QPL licensing information.
** See http://www.trolltech.com/gpl/ for GPL licensing information.
**
** Contact info@trolltech.com if any conditions of this licensing are
** not clear to you.
**
**********************************************************************/
#include "pbuilder_pbx.h"
#include "option.h"
#include <qdir.h>
#include <qdict.h>
#include <qregexp.h>
#include <stdlib.h>
#include <time.h>
#ifdef Q_OS_UNIX
# include <sys/types.h>
# include <sys/stat.h>
#endif
// Note: this is fairly hacky, but it does the job...
ProjectBuilderMakefileGenerator::ProjectBuilderMakefileGenerator(QMakeProject *p) : UnixMakefileGenerator(p)
{
}
bool
ProjectBuilderMakefileGenerator::writeMakefile(QTextStream &t)
{
if(!project->variables()["QMAKE_FAILED_REQUIREMENTS"].isEmpty()) {
/* for now just dump, I need to generated an empty xml or something.. */
fprintf(stderr, "Project file not generated because all requirements not met:\n\t%s\n",
var("QMAKE_FAILED_REQUIREMENTS").latin1());
return TRUE;
}
project->variables()["MAKEFILE"].clear();
project->variables()["MAKEFILE"].append("Makefile");
if(project->first("TEMPLATE") == "app" || project->first("TEMPLATE") == "lib") {
return writeMakeParts(t);
} else if(project->first("TEMPLATE") == "subdirs") {
writeSubdirs(t, FALSE);
return TRUE;
}
return FALSE;
}
bool
ProjectBuilderMakefileGenerator::writeMakeParts(QTextStream &t)
{
int i;
QStringList tmp;
bool did_preprocess = FALSE;
//HEADER
t << "// !$*UTF8*$!" << "\n"
<< "{" << "\n"
<< "\t" << "archiveVersion = 1;" << "\n"
<< "\t" << "classes = {" << "\n" << "\t" << "};" << "\n"
<< "\t" << "objectVersion = " << pbuilderVersion() << ";" << "\n"
<< "\t" << "objects = {" << endl;
//MAKE QMAKE equivlant
if(!project->isActiveConfig("no_autoqmake") && project->projectFile() != "(stdin)") {
QString mkfile = pbx_dir + Option::dir_sep + "qt_makeqmake.mak";
QFile mkf(mkfile);
if(mkf.open(IO_WriteOnly | IO_Translate)) {
debug_msg(1, "pbuilder: Creating file: %s", mkfile.latin1());
QTextStream mkt(&mkf);
writeHeader(mkt);
mkt << "QMAKE = " <<
(project->isEmpty("QMAKE_QMAKE") ? QString("$(QTDIR)/bin/qmake") :
var("QMAKE_QMAKE")) << endl;
writeMakeQmake(mkt);
mkf.close();
}
QString phase_key = keyFor("QMAKE_PBX_MAKEQMAKE_BUILDPHASE");
mkfile = fileFixify(mkfile, QDir::currentDirPath());
project->variables()["QMAKE_PBX_BUILDPHASES"].append(phase_key);
t << "\t\t" << phase_key << " = {" << "\n"
<< "\t\t\t" << "buildActionMask = 2147483647;" << "\n"
<< "\t\t\t" << "files = (" << "\n"
<< "\t\t\t" << ");" << "\n"
<< "\t\t\t" << "generatedFileNames = (" << "\n"
<< "\t\t\t" << ");" << "\n"
<< "\t\t\t" << "isa = PBXShellScriptBuildPhase;" << "\n"
<< "\t\t\t" << "name = \"Qt Qmake\";" << "\n"
<< "\t\t\t" << "neededFileNames = (" << "\n"
<< "\t\t\t" << ");" << "\n"
<< "\t\t\t" << "shellPath = /bin/sh;" << "\n"
<< "\t\t\t" << "shellScript = \"make -C " << QDir::currentDirPath() <<
" -f " << mkfile << "\";" << "\n"
<< "\t\t" << "};" << "\n";
}
//DUMP SOURCES
QMap<QString, QStringList> groups;
QString srcs[] = { "SOURCES", "SRCMOC", "UICIMPLS", QString::null };
for(i = 0; !srcs[i].isNull(); i++) {
tmp = project->variables()[srcs[i]];
QStringList &src_list = project->variables()["QMAKE_PBX_" + srcs[i]];
for(QStringList::Iterator it = tmp.begin(); it != tmp.end(); ++it) {
QString file = fileFixify((*it));
if(file.endsWith(Option::moc_ext))
continue;
bool in_root = TRUE;
QString src_key = keyFor(file);
if(!project->isActiveConfig("flat")) {
QString flat_file = fileFixify(file, QDir::currentDirPath(), Option::output_dir, TRUE);
if(QDir::isRelativePath(flat_file) && flat_file.find(Option::dir_sep) != -1) {
QString last_grp("QMAKE_PBX_" + srcs[i] + "_HEIR_GROUP");
QStringList dirs = QStringList::split(Option::dir_sep, flat_file);
dirs.pop_back(); //remove the file portion as it will be added via src_key
for(QStringList::Iterator dir_it = dirs.begin(); dir_it != dirs.end(); ++dir_it) {
QString new_grp(last_grp + Option::dir_sep + (*dir_it)),
new_grp_key(keyFor(new_grp)), last_grp_key(keyFor(last_grp));
if(dir_it == dirs.begin()) {
if(!groups.contains(new_grp))
project->variables()["QMAKE_PBX_" + srcs[i]].append(new_grp_key);
} else {
groups[last_grp] += new_grp_key;
}
last_grp = new_grp;
}
groups[last_grp] += src_key;
in_root = FALSE;
}
}
if(in_root)
src_list.append(src_key);
//source reference
t << "\t\t" << src_key << " = {" << "\n"
<< "\t\t\t" << "isa = PBXFileReference;" << "\n"
<< "\t\t\t" << "path = \"" << file << "\";" << "\n"
<< "\t\t\t" << "refType = " << reftypeForFile(file) << ";" << "\n"
<< "\t\t" << "};" << "\n";
//build reference
QString obj_key = file + ".o";
obj_key = keyFor(obj_key);
t << "\t\t" << obj_key << " = {" << "\n"
<< "\t\t\t" << "fileRef = " << src_key << ";" << "\n"
<< "\t\t\t" << "isa = PBXBuildFile;" << "\n"
<< "\t\t\t" << "settings = {" << "\n"
<< "\t\t\t\t" << "ATTRIBUTES = (" << "\n"
<< "\t\t\t\t" << ");" << "\n"
<< "\t\t\t" << "};" << "\n"
<< "\t\t" << "};" << "\n";
project->variables()["QMAKE_PBX_OBJ"].append(obj_key);
}
if(!src_list.isEmpty()) {
QString grp;
if(srcs[i] == "SOURCES") {
if(project->first("TEMPLATE") == "app" && !project->isEmpty("RC_FILE")) { //Icon
QString icns_file = keyFor("ICNS_FILE");
src_list.append(icns_file);
t << "\t\t" << icns_file << " = {" << "\n"
<< "\t\t\t" << "isa = PBXFileReference;" << "\n"
<< "\t\t\t" << "path = \"" << project->first("RC_FILE") << "\";" << "\n"
<< "\t\t\t" << "refType = " << reftypeForFile(project->first("RC_FILE")) << ";" << "\n"
<< "\t\t" << "};" << "\n";
t << "\t\t" << keyFor("ICNS_FILE_REFERENCE") << " = {" << "\n"
<< "\t\t\t" << "fileRef = " << icns_file << ";" << "\n"
<< "\t\t\t" << "isa = PBXBuildFile;" << "\n"
<< "\t\t\t" << "settings = {" << "\n"
<< "\t\t\t" << "};" << "\n"
<< "\t\t" << "};" << "\n";
}
grp = "Sources";
} else if(srcs[i] == "SRCMOC") {
grp = "Mocables";
} else if(srcs[i] == "UICIMPLS") {
grp = "UICables";
}
QString grp_key = keyFor(grp);
project->variables()["QMAKE_PBX_GROUPS"].append(grp_key);
t << "\t\t" << grp_key << " = {" << "\n"
<< "\t\t\t" << "children = (" << "\n"
<< varGlue("QMAKE_PBX_" + srcs[i], "\t\t\t\t", ",\n\t\t\t\t", "\n")
<< "\t\t\t" << ");" << "\n"
<< "\t\t\t" << "isa = PBXGroup;" << "\n"
<< "\t\t\t" << "name = " << grp << ";" << "\n"
<< "\t\t\t" << "refType = 4;" << "\n"
<< "\t\t" << "};" << "\n";
}
}
for(QMap<QString, QStringList>::Iterator grp_it = groups.begin();
grp_it != groups.end(); ++grp_it) {
t << "\t\t" << keyFor(grp_it.key()) << " = {" << "\n"
<< "\t\t\t" << "isa = PBXGroup;" << "\n"
<< "\t\t\t" << "children = (" << "\n"
<< valGlue(grp_it.data(), "\t\t\t\t", ",\n\t\t\t\t", "\n")
<< "\t\t\t" << ");" << "\n"
<< "\t\t\t" << "name = \"" << grp_it.key().section(Option::dir_sep, -1) << "\";" << "\n"
<< "\t\t\t" << "refType = 4;" << "\n"
<< "\t\t" << "};" << "\n";
}
//PREPROCESS BUILDPHASE (just a makefile)
if(!project->isEmpty("UICIMPLS") || !project->isEmpty("SRCMOC") ||
!project->isEmpty("YACCSOURCES") || !project->isEmpty("LEXSOURCES")) {
QString mkfile = pbx_dir + Option::dir_sep + "qt_preprocess.mak";
QFile mkf(mkfile);
if(mkf.open(IO_WriteOnly | IO_Translate)) {
did_preprocess = TRUE;
debug_msg(1, "pbuilder: Creating file: %s", mkfile.latin1());
QTextStream mkt(&mkf);
writeHeader(mkt);
mkt << "MOC = " << var("QMAKE_MOC") << endl;
mkt << "UIC = " << var("QMAKE_UIC") << endl;
mkt << "LEX = " << var("QMAKE_LEX") << endl;
mkt << "LEXFLAGS = " << var("QMAKE_LEXFLAGS") << endl;
mkt << "YACC = " << var("QMAKE_YACC") << endl;
mkt << "YACCFLAGS = " << var("QMAKE_YACCFLAGS") << endl;
mkt << "DEL_FILE = " << var("QMAKE_DEL_FILE") << endl;
mkt << "MOVE = " << var("QMAKE_MOVE") << endl << endl;
mkt << "FORMS = " << varList("UICIMPLS") << endl;
mkt << "MOCS = " << varList("SRCMOC") << endl;
mkt << "PARSERS =";
if(!project->isEmpty("YACCSOURCES")) {
QStringList &yaccs = project->variables()["YACCSOURCES"];
for(QStringList::Iterator yit = yaccs.begin(); yit != yaccs.end(); ++yit) {
QFileInfo fi((*yit));
mkt << " " << fi.dirPath() << Option::dir_sep << fi.baseName(TRUE)
<< Option::yacc_mod << Option::cpp_ext.first();
}
}
if(!project->isEmpty("LEXSOURCES")) {
QStringList &lexs = project->variables()["LEXSOURCES"];
for(QStringList::Iterator lit = lexs.begin(); lit != lexs.end(); ++lit) {
QFileInfo fi((*lit));
mkt << " " << fi.dirPath() << Option::dir_sep << fi.baseName(TRUE)
<< Option::lex_mod << Option::cpp_ext.first();
}
}
mkt << "\n";
mkt << "preprocess: $(FORMS) $(MOCS) $(PARSERS)" << endl;
mkt << "preprocess_clean: mocclean uiclean parser_clean" << endl << endl;
mkt << "mocclean:" << "\n";
if(!project->isEmpty("SRCMOC"))
mkt << "\t-rm -f $(MOCS)" << "\n";
mkt << "uiclean:" << "\n";
if(!project->isEmpty("UICIMPLS"))
mkt << "\t-rm -f $(FORMS)" << "\n";
mkt << "parser_clean:" << "\n";
if(!project->isEmpty("YACCSOURCES") || !project->isEmpty("LEXSOURCES"))
mkt << "\t-rm -f $(PARSERS)" << "\n";
writeUicSrc(mkt, "FORMS");
writeMocSrc(mkt, "HEADERS");
writeMocSrc(mkt, "SOURCES");
writeMocSrc(mkt, "UICDECLS");
writeYaccSrc(mkt, "YACCSOURCES");
writeLexSrc(mkt, "LEXSOURCES");
mkf.close();
}
QString target_key = keyFor("QMAKE_PBX_PREPROCESS_TARGET");
mkfile = fileFixify(mkfile, QDir::currentDirPath());
t << "\t\t" << target_key << " = {" << "\n"
<< "\t\t\t" << "buildArgumentsString = \"-f " << mkfile << "\";" << "\n"
<< "\t\t\t" << "buildPhases = (" << "\n"
<< "\t\t\t" << ");" << "\n"
<< "\t\t\t" << "buildSettings = {" << "\n"
<< "\t\t\t" << "};" << "\n"
<< "\t\t\t" << "buildToolPath = \"/usr/bin/gnumake\";"<< "\n"
<< "\t\t\t" << "buildWorkingDirectory = \"" << QDir::currentDirPath() << "\";" << "\n"
<< "\t\t\t" << "dependencies = (" << "\n"
<< "\t\t\t" << ");" << "\n"
<< "\t\t\t" << "isa = PBXLegacyTarget;" << "\n"
<< "\t\t\t" << "name = QtPreprocessors;" << "\n"
<< "\t\t\t" << "productName = QtPreprocessors;" << "\n"
<< "\t\t\t" << "settingsToExpand = 6;" << "\n"
<< "\t\t\t" << "settingsToPassInEnvironment = 287;" << "\n"
<< "\t\t\t" << "settingsToPassOnCommandLine = 280;" << "\n"
<< "\t\t\t" << "shouldsUseHeadermap = 0;" << "\n"
<< "\t\t" << "};" << "\n";
QString target_depend_key = keyFor("QMAKE_PBX_PREPROCESS_TARGET_DEPEND");
project->variables()["QMAKE_PBX_TARGETDEPENDS"].append(target_depend_key);
t << "\t\t" << target_depend_key << " = {" << "\n"
<< "\t\t\t" << "isa = PBXTargetDependency;" << "\n"
<< "\t\t\t" << "target = " << target_key << ";" << "\n"
<< "\t\t" << "};" << "\n";
}
//SOURCE BUILDPHASE
if(!project->isEmpty("QMAKE_PBX_OBJ")) {
QString grp = "Build Sources", key = keyFor(grp);
project->variables()["QMAKE_PBX_BUILDPHASES"].append(key);
t << "\t\t" << key << " = {" << "\n"
<< "\t\t\t" << "buildActionMask = 2147483647;" << "\n"
<< "\t\t\t" << "files = (" << "\n"
<< varGlue("QMAKE_PBX_OBJ", "\t\t\t\t", ",\n\t\t\t\t", "\n")
<< "\t\t\t" << ");" << "\n"
<< "\t\t\t" << "isa = PBXSourcesBuildPhase;" << "\n"
<< "\t\t\t" << "name = \"" << grp << "\";" << "\n"
<< "\t\t" << "};" << "\n";
}
if(!project->isActiveConfig("staticlib")) { //DUMP LIBRARIES
QStringList &libdirs = project->variables()["QMAKE_PBX_LIBPATHS"];
QString libs[] = { "QMAKE_LIBDIR_FLAGS", "QMAKE_LIBS", QString::null };
for(i = 0; !libs[i].isNull(); i++) {
tmp = project->variables()[libs[i]];
for(QStringList::Iterator it = tmp.begin(); it != tmp.end();) {
bool remove = FALSE;
QString library, name, opt = (*it).stripWhiteSpace();
if(opt.startsWith("-L")) {
QString r = opt.right(opt.length() - 2);
fixEnvVariables(r);
libdirs.append(r);
} else if(opt.startsWith("-l")) {
name = opt.right(opt.length() - 2);
QString lib("lib" + name);
for(QStringList::Iterator lit = libdirs.begin(); lit != libdirs.end(); ++lit) {
if(project->isActiveConfig("link_prl")) {
- /* This isn't real nice, but it is real usefull. This looks in a prl
+ /* This isn't real nice, but it is real useful. This looks in a prl
for what the library will ultimately be called so we can stick it
in the ProjectFile. If the prl format ever changes (not likely) then
this will not really work. However, more concerning is that it will
encode the version number in the Project file which might be a bad
things in days to come? --Sam
*/
QString prl_file = (*lit) + Option::dir_sep + lib + Option::prl_ext;
if(QFile::exists(prl_file)) {
QMakeProject proj;
if(proj.read(prl_file, QDir::currentDirPath())) {
if(!proj.isEmpty("QMAKE_PRL_TARGET")) {
library = (*lit) + Option::dir_sep + proj.first("QMAKE_PRL_TARGET");
debug_msg(1, "pbuilder: Found library (%s) via PRL %s (%s)",
opt.latin1(), prl_file.latin1(), library.latin1());
remove = TRUE;
}
}
}
}
if(!remove) {
QString extns[] = { ".dylib", ".so", ".a", QString::null };
for(int n = 0; !remove && !extns[n].isNull(); n++) {
QString tmp = (*lit) + Option::dir_sep + lib + extns[n];
if(QFile::exists(tmp)) {
library = tmp;
debug_msg(1, "pbuilder: Found library (%s) via %s",
opt.latin1(), library.latin1());
remove = TRUE;
}
}
}
}
} else if(opt == "-framework") {
++it;
if(it == tmp.end())
break;
QStringList &fdirs = project->variables()["QMAKE_FRAMEWORKDIR"];
if(fdirs.isEmpty())
fdirs.append("/System/Library/Frameworks/");
for(QStringList::Iterator fit = fdirs.begin(); fit != fdirs.end(); ++fit) {
if(QFile::exists((*fit) + QDir::separator() + (*it) + ".framework")) {
--it;
it = tmp.remove(it);
remove = TRUE;
library = (*fit) + Option::dir_sep + (*it) + ".framework";
break;
}
}
} else if(opt.left(1) != "-") {
remove = TRUE;
library = opt;
}
if(!library.isEmpty()) {
if(name.isEmpty()) {
int slsh = library.findRev(Option::dir_sep);
if(slsh != -1)
name = library.right(library.length() - slsh - 1);
}
library = fileFixify(library);
QString key = keyFor(library);
bool is_frmwrk = (library.endsWith(".framework"));
t << "\t\t" << key << " = {" << "\n"
<< "\t\t\t" << "isa = " << (is_frmwrk ? "PBXFrameworkReference" : "PBXFileReference") << ";" << "\n"
<< "\t\t\t" << "name = \"" << name << "\";" << "\n"
<< "\t\t\t" << "path = \"" << library << "\";" << "\n"
<< "\t\t\t" << "refType = " << reftypeForFile(library) << ";" << "\n"
<< "\t\t" << "};" << "\n";
project->variables()["QMAKE_PBX_LIBRARIES"].append(key);
QString obj_key = library + ".o";
obj_key = keyFor(obj_key);
t << "\t\t" << obj_key << " = {" << "\n"
<< "\t\t\t" << "fileRef = " << key << ";" << "\n"
<< "\t\t\t" << "isa = PBXBuildFile;" << "\n"
<< "\t\t\t" << "settings = {" << "\n"
<< "\t\t\t" << "};" << "\n"
<< "\t\t" << "};" << "\n";
project->variables()["QMAKE_PBX_BUILD_LIBRARIES"].append(obj_key);
}
if(remove)
it = tmp.remove(it);
else
++it;
}
project->variables()[libs[i]] = tmp;
}
}
//SUBLIBS BUILDPHASE (just another makefile)
if(!project->isEmpty("SUBLIBS")) {
QString mkfile = pbx_dir + Option::dir_sep + "qt_sublibs.mak";
QFile mkf(mkfile);
if(mkf.open(IO_WriteOnly | IO_Translate)) {
debug_msg(1, "pbuilder: Creating file: %s", mkfile.latin1());
QTextStream mkt(&mkf);
writeHeader(mkt);
mkt << "SUBLIBS= ";
tmp = project->variables()["SUBLIBS"];
QStringList::Iterator it;
for(it = tmp.begin(); it != tmp.end(); ++it)
t << "tmp/lib" << (*it) << ".a ";
t << endl << endl;
mkt << "sublibs: $(SUBLIBS)" << endl << endl;
tmp = project->variables()["SUBLIBS"];
for(it = tmp.begin(); it != tmp.end(); ++it)
t << "tmp/lib" << (*it) << ".a" << ":\n\t"
<< var(QString("MAKELIB") + (*it)) << endl << endl;
mkf.close();
}
QString phase_key = keyFor("QMAKE_PBX_SUBLIBS_BUILDPHASE");
mkfile = fileFixify(mkfile, QDir::currentDirPath());
project->variables()["QMAKE_PBX_BUILDPHASES"].append(phase_key);
t << "\t\t" << phase_key << " = {" << "\n"
<< "\t\t\t" << "buildActionMask = 2147483647;" << "\n"
<< "\t\t\t" << "files = (" << "\n"
<< "\t\t\t" << ");" << "\n"
<< "\t\t\t" << "generatedFileNames = (" << "\n"
<< "\t\t\t" << ");" << "\n"
<< "\t\t\t" << "isa = PBXShellScriptBuildPhase;" << "\n"
<< "\t\t\t" << "name = \"Qt Sublibs\";" << "\n"
<< "\t\t\t" << "neededFileNames = (" << "\n"
<< "\t\t\t" << ");" << "\n"
<< "\t\t\t" << "shellPath = /bin/sh;" << "\n"
<< "\t\t\t" << "shellScript = \"make -C " << QDir::currentDirPath() <<
" -f " << mkfile << "\";" << "\n"
<< "\t\t" << "};" << "\n";
}
//LIBRARY BUILDPHASE
if(!project->isEmpty("QMAKE_PBX_LIBRARIES")) {
tmp = project->variables()["QMAKE_PBX_LIBRARIES"];
if(!tmp.isEmpty()) {
QString grp("External Frameworks and Libraries"), key = keyFor(grp);
project->variables()["QMAKE_PBX_GROUPS"].append(key);
t << "\t\t" << key << " = {" << "\n"
<< "\t\t\t" << "children = (" << "\n"
<< varGlue("QMAKE_PBX_LIBRARIES", "\t\t\t\t", ",\n\t\t\t\t", "\n")
<< "\t\t\t" << ");" << "\n"
<< "\t\t\t" << "isa = PBXGroup;" << "\n"
<< "\t\t\t" << "name = \"" << grp << "\"" << ";" << "\n"
<< "\t\t\t" << "path = \"\";" << "\n"
<< "\t\t\t" << "refType = 4;" << "\n"
<< "\t\t" << "};" << "\n";
}
}
{
QString grp("Frameworks & Libraries"), key = keyFor(grp);
project->variables()["QMAKE_PBX_BUILDPHASES"].append(key);
t << "\t\t" << key << " = {" << "\n"
<< "\t\t\t" << "buildActionMask = 2147483647;" << "\n"
<< "\t\t\t" << "files = (" << "\n"
<< varGlue("QMAKE_PBX_BUILD_LIBRARIES", "\t\t\t\t", ",\n\t\t\t\t", "\n")
<< "\t\t\t" << ");" << "\n"
<< "\t\t\t" << "isa = PBXFrameworksBuildPhase;" << "\n"
<< "\t\t\t" << "name = \"" << grp << "\";" << "\n"
<< "\t\t" << "};" << "\n";
}
if(project->isActiveConfig("resource_fork") && !project->isActiveConfig("console") &&
project->first("TEMPLATE") == "app") { //BUNDLE RESOURCES
QString grp("Bundle Resources"), key = keyFor(grp);
project->variables()["QMAKE_PBX_BUILDPHASES"].append(key);
t << "\t\t" << key << " = {" << "\n"
<< "\t\t\t" << "buildActionMask = 2147483647;" << "\n"
<< "\t\t\t" << "files = (" << "\n"
<< (!project->isEmpty("RC_FILE") ? keyFor("ICNS_FILE_REFERENCE") : QString(""))
<< "\t\t\t" << ");" << "\n"
<< "\t\t\t" << "isa = PBXResourcesBuildPhase;" << "\n"
<< "\t\t\t" << "name = \"" << grp << "\";" << "\n"
<< "\t\t" << "};" << "\n";
}
//DUMP EVERYTHING THAT TIES THE ABOVE TOGETHER
//PRODUCTS
{
QString grp("Products"), key = keyFor(grp);
project->variables()["QMAKE_PBX_GROUPS"].append(key);
t << "\t\t" << key << " = {" << "\n"
<< "\t\t\t" << "children = (" << "\n"
<< "\t\t\t\t" << keyFor("QMAKE_PBX_REFERENCE") << "\n"
<< "\t\t\t" << ");" << "\n"
<< "\t\t\t" << "isa = PBXGroup;" << "\n"
<< "\t\t\t" << "name = Products;" << "\n"
<< "\t\t\t" << "refType = 4;" << "\n"
<< "\t\t" << "};" << "\n";
}
{ //INSTALL BUILDPHASE (sh script)
QString targ = project->first("TARGET");
if(project->first("TEMPLATE") == "app" ||
(project->first("TEMPLATE") == "lib" && !project->isActiveConfig("staticlib") &&
project->isActiveConfig("frameworklib")))
targ = project->first("QMAKE_ORIG_TARGET");
int slsh = targ.findRev(Option::dir_sep);
if(slsh != -1)
targ = targ.right(targ.length() - slsh - 1);
fixEnvVariables(targ);
QStringList links;
if(project->first("TEMPLATE") == "app") {
if(project->isActiveConfig("resource_fork") && !project->isActiveConfig("console"))
targ += ".app";
} else if(!project->isActiveConfig("staticlib") &&
!project->isActiveConfig("frameworklib")) {
QString li[] = { "TARGET_", "TARGET_x", "TARGET_x.y", QString::null };
for(int n = 0; !li[n].isNull(); n++) {
QString t = project->first(li[n]);
slsh = t.findRev(Option::dir_sep);
if(slsh != -1)
t = t.right(t.length() - slsh);
fixEnvVariables(t);
links << t;
}
}
QString script = pbx_dir + Option::dir_sep + "qt_install.sh";
QFile shf(script);
if(shf.open(IO_WriteOnly | IO_Translate)) {
debug_msg(1, "pbuilder: Creating file: %s", script.latin1());
QString targ = project->first("QMAKE_ORIG_TARGET"), cpflags;
if(project->first("TEMPLATE") == "app") {
targ = project->first("TARGET");
if(project->isActiveConfig("resource_fork") && !project->isActiveConfig("console")) {
targ += ".app";
cpflags += "-r ";
}
} else if(!project->isActiveConfig("frameworklib")) {
if(project->isActiveConfig("staticlib"))
targ = project->first("TARGET");
else
targ = project->first("TARGET_");
int slsh = targ.findRev(Option::dir_sep);
if(slsh != -1)
targ = targ.right(targ.length() - slsh - 1);
}
QTextStream sht(&shf);
QString dstdir = project->first("DESTDIR");
fixEnvVariables(dstdir);
sht << "#!/bin/sh" << endl;
//copy the actual target
sht << "OUT_TARG=\"" << targ << "\"\n"
<< "[ -z \"$BUILD_ROOT\" ] || OUT_TARG=\"${BUILD_ROOT}/${OUT_TARG}\"" << endl;
sht << "[ \"$OUT_TARG\" = \""
<< (dstdir.isEmpty() ? QDir::currentDirPath() + QDir::separator(): dstdir) << targ << "\" ] || "
<< "[ \"$OUT_TARG\" = \"" << targ << "\" ] || "
<< "cp -r \"$OUT_TARG\" " << "\"" << dstdir << targ << "\"" << endl;
//rename as a framework
if(project->first("TEMPLATE") == "lib" && project->isActiveConfig("frameworklib"))
sht << "ln -sf \"" << targ << "\" " << "\"" << dstdir << targ << "\"" << endl;
//create all the version symlinks (just to be like unixmake)
for(QStringList::Iterator it = links.begin(); it != links.end(); ++it) {
if(targ != (*it))
sht << "ln -sf \"" << targ << "\" " << "\"" << dstdir << (*it) << "\"" << endl;
}
shf.close();
#ifdef Q_OS_UNIX
chmod(script.latin1(), S_IRWXU | S_IRWXG);
#endif
QString phase_key = keyFor("QMAKE_PBX_INSTALL_BUILDPHASE");
script = fileFixify(script, QDir::currentDirPath());
project->variables()["QMAKE_PBX_BUILDPHASES"].append(phase_key);
t << "\t\t" << phase_key << " = {" << "\n"
<< "\t\t\t" << "buildActionMask = 8;" << "\n" //only on install!
<< "\t\t\t" << "files = (" << "\n"
<< "\t\t\t" << ");" << "\n"
<< "\t\t\t" << "generatedFileNames = (" << "\n"
<< "\t\t\t" << ");" << "\n"
<< "\t\t\t" << "isa = PBXShellScriptBuildPhase;" << "\n"
<< "\t\t\t" << "name = \"Qt Install\";" << "\n"
<< "\t\t\t" << "neededFileNames = (" << "\n"
<< "\t\t\t" << ");" << "\n"
<< "\t\t\t" << "shellPath = /bin/sh;" << "\n"
<< "\t\t\t" << "shellScript = \"" << script << "\";" << "\n"
<< "\t\t" << "};" << "\n";
}
}
//ROOT_GROUP
t << "\t\t" << keyFor("QMAKE_PBX_ROOT_GROUP") << " = {" << "\n"
<< "\t\t\t" << "children = (" << "\n"
<< varGlue("QMAKE_PBX_GROUPS", "\t\t\t\t", ",\n\t\t\t\t", "\n")
<< "\t\t\t" << ");" << "\n"
<< "\t\t\t" << "isa = PBXGroup;" << "\n"
<< "\t\t\t" << "name = " << project->first("QMAKE_ORIG_TARGET") << ";" << "\n"
<< "\t\t\t" << "path = \"\";" << "\n"
<< "\t\t\t" << "refType = 4;" << "\n"
<< "\t\t" << "};" << "\n";
//REFERENCE
t << "\t\t" << keyFor("QMAKE_PBX_REFERENCE") << " = {" << "\n";
if(project->first("TEMPLATE") == "app") {
QString targ = project->first("QMAKE_ORIG_TARGET");
if(project->isActiveConfig("resource_fork") && !project->isActiveConfig("console")) {
targ += ".app";
t << "\t\t\t" << "isa = PBXApplicationReference;" << "\n";
} else {
t << "\t\t\t" << "isa = PBXExecutableFileReference;" << "\n";
}
QString app = (!project->isEmpty("DESTDIR") ? project->first("DESTDIR") + project->first("QMAKE_ORIG_TARGET") :
QDir::currentDirPath()) + Option::dir_sep + targ;
t << "\t\t\t" << "name = " << targ << ";" << "\n"
<< "\t\t\t" << "path = \"" << targ << "\";" << "\n"
<< "\t\t\t" << "refType = " << reftypeForFile(app) << ";" << "\n";
} else {
QString lib = project->first("QMAKE_ORIG_TARGET");
if(project->isActiveConfig("staticlib")) {
lib = project->first("TARGET");
} else if(!project->isActiveConfig("frameworklib")) {
if(project->isActiveConfig("plugin"))
lib = project->first("TARGET");
else
lib = project->first("TARGET_");
}
int slsh = lib.findRev(Option::dir_sep);
if(slsh != -1)
lib = lib.right(lib.length() - slsh - 1);
t << "\t\t\t" << "isa = PBXLibraryReference;" << "\n"
<< "\t\t\t" << "path = " << lib << ";\n"
<< "\t\t\t" << "refType = " << reftypeForFile(lib) << ";" << "\n";
}
t << "\t\t" << "};" << "\n";
//TARGET
t << "\t\t" << keyFor("QMAKE_PBX_TARGET") << " = {" << "\n"
<< "\t\t\t" << "buildPhases = (" << "\n"
<< varGlue("QMAKE_PBX_BUILDPHASES", "\t\t\t\t", ",\n\t\t\t\t", "\n")
<< "\t\t\t" << ");" << "\n"
<< "\t\t\t" << "buildSettings = {" << "\n"
<< "\t\t\t\t" << "FRAMEWORK_SEARCH_PATHS = \"\";" << "\n"
<< "\t\t\t\t" << "HEADER_SEARCH_PATHS = \"" << fixEnvsList("INCLUDEPATH") << " " << fixEnvs(specdir()) << "\";" << "\n"
<< "\t\t\t\t" << "LIBRARY_SEARCH_PATHS = \"" << var("QMAKE_PBX_LIBPATHS") << "\";" << "\n"
<< "\t\t\t\t" << "OPTIMIZATION_CFLAGS = \"\";" << "\n"
<< "\t\t\t\t" << "OTHER_CFLAGS = \"" <<
fixEnvsList("QMAKE_CFLAGS") << varGlue("PRL_EXPORT_DEFINES"," -D"," -D","") <<
varGlue("DEFINES"," -D"," -D","") << "\";" << "\n"
<< "\t\t\t\t" << "LEXFLAGS = \"" << var("QMAKE_LEXFLAGS") << "\";" << "\n"
<< "\t\t\t\t" << "YACCFLAGS = \"" << var("QMAKE_YACCFLAGS") << "\";" << "\n"
<< "\t\t\t\t" << "OTHER_CPLUSPLUSFLAGS = \"" <<
fixEnvsList("QMAKE_CXXFLAGS") << varGlue("PRL_EXPORT_DEFINES"," -D"," -D","") <<
varGlue("DEFINES"," -D"," -D","") << "\";" << "\n"
<< "\t\t\t\t" << "OTHER_REZFLAGS = \"\";" << "\n"
<< "\t\t\t\t" << "SECTORDER_FLAGS = \"\";" << "\n"
<< "\t\t\t\t" << "WARNING_CFLAGS = \"\";" << "\n";
#if 1
t << "\t\t\t\t" << "BUILD_ROOT = \"" << QDir::currentDirPath() << "\";" << "\n";
#endif
if(!project->isActiveConfig("staticlib"))
t << "\t\t\t\t" << "OTHER_LDFLAGS = \"" << fixEnvsList("SUBLIBS") << " " <<
fixEnvsList("QMAKE_LFLAGS") << " " << fixEnvsList("QMAKE_LIBDIR_FLAGS") <<
" " << fixEnvsList("QMAKE_LIBS") << "\";" << "\n";
if(!project->isEmpty("DESTDIR"))
t << "\t\t\t\t" << "INSTALL_PATH = \"" << project->first("DESTDIR") << "\";" << "\n";
if(!project->isEmpty("VERSION") && project->first("VERSION") != "0.0.0")
t << "\t\t\t\t" << "DYLIB_CURRENT_VERSION = \"" << project->first("VERSION") << "\";" << "\n";
if(!project->isEmpty("OBJECTS_DIR"))
t << "\t\t\t\t" << "OBJECT_FILE_DIR = \"" << project->first("OBJECTS_DIR") << "\";" << "\n";
if(project->first("TEMPLATE") == "app") {
if(project->isActiveConfig("resource_fork") && !project->isActiveConfig("console"))
t << "\t\t\t\t" << "WRAPPER_EXTENSION = app;" << "\n";
t << "\t\t\t\t" << "PRODUCT_NAME = " << project->first("QMAKE_ORIG_TARGET") << ";" << "\n";
} else {
QString lib = project->first("QMAKE_ORIG_TARGET");
if(!project->isActiveConfig("plugin") && project->isActiveConfig("staticlib")) {
t << "\t\t\t\t" << "LIBRARY_STYLE = STATIC;" << "\n";
lib = project->first("TARGET");
} else {
t << "\t\t\t\t" << "LIBRARY_STYLE = DYNAMIC;" << "\n";
if(!project->isActiveConfig("frameworklib")) {
if(project->isActiveConfig("plugin"))
lib = project->first("TARGET");
else
lib = project->first("TARGET_");
}
}
int slsh = lib.findRev(Option::dir_sep);
if(slsh != -1)
lib = lib.right(lib.length() - slsh - 1);
t << "\t\t\t\t" << "PRODUCT_NAME = " << lib << ";" << "\n";
}
tmp = project->variables()["QMAKE_PBX_VARS"];
for(QStringList::Iterator it = tmp.begin(); it != tmp.end(); ++it)
t << "\t\t\t\t" << (*it) << " = \"" << getenv((*it)) << "\";" << "\n";
t << "\t\t\t" << "};" << "\n"
<< "\t\t\t" << "conditionalBuildSettings = {" << "\n"
<< "\t\t\t" << "};" << "\n"
<< "\t\t\t" << "dependencies = (" << "\n"
<< varGlue("QMAKE_PBX_TARGETDEPENDS", "\t\t\t\t", ",\n\t\t\t\t", "\n")
<< "\t\t\t" << ");" << "\n"
<< "\t\t\t" << "productReference = " << keyFor("QMAKE_PBX_REFERENCE") << ";" << "\n"
<< "\t\t\t" << "shouldUseHeadermap = 1;" << "\n";
if(project->first("TEMPLATE") == "app") {
if(project->isActiveConfig("resource_fork") && !project->isActiveConfig("console")) {
t << "\t\t\t" << "isa = PBXApplicationTarget;" << "\n"
<< "\t\t\t" << "productSettingsXML = " << "\"" << "<?xml version="
<< "\\\"1.0\\\" encoding=" << "\\\"UTF-8\\\"" << "?>" << "\n"
<< "\t\t\t\t" << "<!DOCTYPE plist SYSTEM \\\"file://localhost/System/"
<< "Library/DTDs/PropertyList.dtd\\\">" << "\n"
<< "\t\t\t\t" << "<plist version=\\\"0.9\\\">" << "\n"
<< "\t\t\t\t" << "<dict>" << "\n"
<< "\t\t\t\t\t" << "<key>CFBundleDevelopmentRegion</key>" << "\n"
<< "\t\t\t\t\t" << "<string>English</string>" << "\n"
<< "\t\t\t\t\t" << "<key>CFBundleExecutable</key>" << "\n"
<< "\t\t\t\t\t" << "<string>" << project->first("QMAKE_ORIG_TARGET") << "</string>" << "\n"
<< "\t\t\t\t\t" << "<key>CFBundleIconFile</key>" << "\n"
<< "\t\t\t\t\t" << "<string>" << var("RC_FILE").section(Option::dir_sep, -1) << "</string>" << "\n"
<< "\t\t\t\t\t" << "<key>CFBundleInfoDictionaryVersion</key>" << "\n"
<< "\t\t\t\t\t" << "<string>6.0</string>" << "\n"
<< "\t\t\t\t\t" << "<key>CFBundlePackageType</key>" << "\n"
<< "\t\t\t\t\t" << "<string>APPL</string>" << "\n"
<< "\t\t\t\t\t" << "<key>CFBundleSignature</key>" << "\n"
<< "\t\t\t\t\t" << "<string>????</string>" << "\n"
<< "\t\t\t\t\t" << "<key>CFBundleVersion</key>" << "\n"
<< "\t\t\t\t\t" << "<string>0.1</string>" << "\n"
<< "\t\t\t\t\t" << "<key>CSResourcesFileMapped</key>" << "\n"
<< "\t\t\t\t\t" << "<true/>" << "\n"
<< "\t\t\t\t" << "</dict>" << "\n"
<< "\t\t\t\t" << "</plist>" << "\";" << "\n";
} else {
t << "\t\t\t" << "isa = PBXToolTarget;" << "\n";
}
t << "\t\t\t" << "name = \"" << project->first("QMAKE_ORIG_TARGET") << "\";" << "\n"
<< "\t\t\t" << "productName = " << project->first("QMAKE_ORIG_TARGET") << ";" << "\n";
} else {
QString lib = project->first("QMAKE_ORIG_TARGET");
if(!project->isActiveConfig("frameworklib"))
lib.prepend("lib");
t << "\t\t\t" << "isa = PBXLibraryTarget;" << "\n"
<< "\t\t\t" << "name = \"" << lib << "\";" << "\n"
<< "\t\t\t" << "productName = " << lib << ";" << "\n";
}
if(!project->isEmpty("DESTDIR"))
t << "\t\t\t" << "productInstallPath = \"" << project->first("DESTDIR") << "\";" << "\n";
t << "\t\t" << "};" << "\n";
//DEBUG/RELEASE
for(i = 0; i < 2; i++) {
bool as_release = !i;
if(project->isActiveConfig("debug"))
as_release = i;
QString key = "QMAKE_PBX_" + QString(as_release ? "RELEASE" : "DEBUG");
key = keyFor(key);
project->variables()["QMAKE_PBX_BUILDSTYLES"].append(key);
t << "\t\t" << key << " = {" << "\n"
<< "\t\t\t" << "buildRules = (" << "\n"
<< "\t\t\t" << ");" << "\n"
<< "\t\t\t" << "buildSettings = {" << "\n"
<< "\t\t\t\t" << "COPY_PHASE_STRIP = " << (as_release ? "YES" : "NO") << ";" << "\n";
if(as_release)
t << "\t\t\t\t" << "DEBUGGING_SYMBOLS = NO;" << "\n";
t << "\t\t\t" << "};" << "\n"
<< "\t\t\t" << "isa = PBXBuildStyle;" << "\n"
<< "\t\t\t" << "name = " << (as_release ? "Deployment" : "Development") << ";" << "\n"
<< "\t\t" << "};" << "\n";
}
//ROOT
t << "\t\t" << keyFor("QMAKE_PBX_ROOT") << " = {" << "\n"
<< "\t\t\t" << "buildStyles = (" << "\n"
<< varGlue("QMAKE_PBX_BUILDSTYLES", "\t\t\t\t", ",\n\t\t\t\t", "\n")
<< "\t\t\t" << ");" << "\n"
<< "\t\t\t" << "isa = PBXProject;" << "\n"
<< "\t\t\t" << "mainGroup = " << keyFor("QMAKE_PBX_ROOT_GROUP") << ";" << "\n"
<< "\t\t\t" << "targets = (" << "\n"
<< "\t\t\t\t" << keyFor("QMAKE_PBX_TARGET") << "\n"
<< "\t\t\t" << ");" << "\n"
<< "\t\t" << "};" << "\n";
//FOOTER
t << "\t" << "};" << "\n"
<< "\t" << "rootObject = " << keyFor("QMAKE_PBX_ROOT") << ";" << "\n"
<< "}" << endl;
QString mkwrap = fileFixify(pbx_dir + Option::dir_sep + ".." + Option::dir_sep + project->first("MAKEFILE"),
QDir::currentDirPath());
QFile mkwrapf(mkwrap);
if(mkwrapf.open(IO_WriteOnly | IO_Translate)) {
debug_msg(1, "pbuilder: Creating file: %s", mkwrap.latin1());
QTextStream mkwrapt(&mkwrapf);
writeHeader(mkwrapt);
const char *cleans = "uiclean mocclean preprocess_clean ";
mkwrapt << "#This is a makefile wrapper for PROJECT BUILDER\n"
<< "all:" << "\n\t"
<< "cd " << (project->first("QMAKE_ORIG_TARGET") + ".pbproj/ && pbxbuild") << "\n"
<< "install: all" << "\n\t"
<< "cd " << (project->first("QMAKE_ORIG_TARGET") + ".pbproj/ && pbxbuild install") << "\n"
<< "distclean clean: preprocess_clean" << "\n\t"
<< "cd " << (project->first("QMAKE_ORIG_TARGET") + ".pbproj/ && pbxbuild clean") << "\n"
<< (!did_preprocess ? cleans : "") << ":" << "\n";
if(did_preprocess)
mkwrapt << cleans << ":" << "\n\t"
<< "make -f "
<< pbx_dir << Option::dir_sep << "qt_preprocess.mak $@" << endl;
}
return TRUE;
}
QString
ProjectBuilderMakefileGenerator::fixEnvs(QString file)
{
QRegExp reg_var("\\$\\((.*)\\)");
for(int rep = 0; (rep = reg_var.search(file, rep)) != -1; ) {
if(project->variables()["QMAKE_PBX_VARS"].findIndex(reg_var.cap(1)) == -1)
project->variables()["QMAKE_PBX_VARS"].append(reg_var.cap(1));
rep += reg_var.matchedLength();
}
return file;
}
QString
ProjectBuilderMakefileGenerator::fixEnvsList(QString where)
{
QString ret;
const QStringList &l = project->variables()[where];
for(QStringList::ConstIterator it = l.begin(); it != l.end(); ++it) {
fixEnvs((*it));
if(!ret.isEmpty())
ret += " ";
ret += (*it);
}
return ret;
}
QString
ProjectBuilderMakefileGenerator::keyFor(QString block)
{
#if 0 //This make this code much easier to debug..
return block;
#endif
QString ret;
if(!keys.contains(block)) {
#if 0
static unsigned int r = 0;
ret.sprintf("%024x", ++r);
#else //not really necesary, but makes it look more interesting..
static struct { unsigned int a1, a2, a3; } r = { 0, 0, 0 };
if(!r.a1 && !r.a2 && !r.a3) {
r.a1 = rand();
r.a2 = rand();
r.a3 = rand();
}
switch(rand() % 3) {
case 0: ++r.a1; break;
case 1: ++r.a2; break;
case 2: ++r.a3; break;
}
ret.sprintf("%08x%08x%08x", r.a1, r.a2, r.a3);
#endif
ret = ret.upper();
keys.insert(block, ret);
} else {
ret = keys[block];
}
return ret;
}
bool
ProjectBuilderMakefileGenerator::openOutput(QFile &file) const
{
if(project->first("TEMPLATE") != "subdirs") {
QFileInfo fi(file);
if(fi.extension() != "pbxproj" || file.name().isEmpty()) {
QString output = file.name();
if(fi.isDir())
output += QDir::separator();
if(fi.extension() != "pbproj") {
if(file.name().isEmpty() || fi.isDir())
output += project->first("TARGET");
output += QString(".pbproj") + QDir::separator();
} else if(output[(int)output.length() - 1] != QDir::separator()) {
output += QDir::separator();
}
output += QString("project.pbxproj");
file.setName(output);
}
bool ret = UnixMakefileGenerator::openOutput(file);
((ProjectBuilderMakefileGenerator*)this)->pbx_dir = Option::output_dir.section(Option::dir_sep, 0, -1);
Option::output_dir = pbx_dir.section(Option::dir_sep, 0, -2);
return ret;
}
return UnixMakefileGenerator::openOutput(file);
}
/* This function is such a hack it is almost pointless, but it
eliminates the warning message from ProjectBuilder that the project
file is for an older version. I guess this could be used someday if
the format of the output is dependant upon the version of
ProjectBuilder as well.
*/
int
ProjectBuilderMakefileGenerator::pbuilderVersion() const
{
QString ret;
if(project->isEmpty("QMAKE_PBUILDER_VERSION")) {
QString version, version_plist = project->first("QMAKE_PBUILDER_VERSION_PLIST");
if(version_plist.isEmpty())
version_plist = "/Developer/Applications/Project Builder.app/Contents/version.plist";
else
version_plist = version_plist.replace(QRegExp("\""), "");
QFile version_file(version_plist);
if(version_file.open(IO_ReadOnly)) {
debug_msg(1, "pbuilder: version.plist: Reading file: %s", version_plist.latin1());
QTextStream plist(&version_file);
bool in_dict = FALSE;
QString current_key;
QRegExp keyreg("^<key>(.*)</key>$"), stringreg("^<string>(.*)</string>$");
while(!plist.eof()) {
QString line = plist.readLine().stripWhiteSpace();
if(line == "<dict>")
in_dict = TRUE;
else if(line == "</dict>")
in_dict = FALSE;
else if(in_dict) {
if(keyreg.exactMatch(line))
current_key = keyreg.cap(1);
else if(current_key == "CFBundleShortVersionString" && stringreg.exactMatch(line))
version = stringreg.cap(1);
}
}
version_file.close();
} else debug_msg(1, "pbuilder: version.plist: Failure to open %s", version_plist.latin1());
if(version.startsWith("2.0"))
ret = "38";
else if(version == "1.1")
ret = "34";
} else {
ret = project->first("QMAKE_PBUILDER_VERSION");
}
if(!ret.isEmpty()) {
bool ok;
int int_ret = ret.toInt(&ok);
if(ok) {
debug_msg(1, "pbuilder: version.plist: Got version: %d", int_ret);
return int_ret;
}
}
debug_msg(1, "pbuilder: version.plist: Fallback to default version");
return 34; //my fallback
}
QString
ProjectBuilderMakefileGenerator::reftypeForFile(QString where)
{
if(QDir::isRelativePath(where))
return "4"; //relative
return "0"; //absolute
}
diff --git a/x11/ipc/server/ocopserver.cpp b/x11/ipc/server/ocopserver.cpp
index 992cb8c..3ee38e9 100644
--- a/x11/ipc/server/ocopserver.cpp
+++ b/x11/ipc/server/ocopserver.cpp
@@ -1,413 +1,413 @@
#include <errno.h>
#include <signal.h>
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/socket.h>
#include <sys/un.h>
#include <qcstring.h>
#include <qtimer.h>
#include "ocopserver.h"
OCopServer::OCopServer()
: QObject()
{
setName( "ocopserver");
/*
* init the server
*/
init();
initSocket();
}
OCopServer::~OCopServer() {
// socket notifiers should be deleted
close(m_serverfd );
}
void OCopServer::init() {
/*
* we set SIGPIPE to SIG_IGN
* to get EPIPE on reads ;)
*/
// qWarning("SIGPIPE to be ignored");
signal(SIGPIPE, SIG_IGN );
/*
* initialize some variables
*/
m_server = 0l;
m_serverError = 0l;
}
/**
* here we will init our server
* socket and bind and do the listen
*/
void OCopServer::initSocket() {
/* get the home dir */
QCString home( getenv("HOME") );
QCString path( home + "/.opie.cop");
if ( ( m_serverfd = socket( PF_UNIX, SOCK_STREAM, 0 ) ) == -1 ) {
qWarning("failed to create server socket");
/* try again later */
QTimer::singleShot( 400, this, SLOT(initSocket() ) );
return;
}
qWarning( "unlinking file %s", path.data() );
/* unlink previous sockets */
unlink( path.data() );
struct sockaddr_un m_address;
memset(&m_address, 0, sizeof(m_address ) );
m_address.sun_family = AF_UNIX; /* unix domain socket */
strcpy(m_address.sun_path, path.data() );
m_adrlaenge = sizeof(m_address.sun_family) + strlen(m_address.sun_path );
/* cast to make it a (sockadr*) */
if (bind(m_serverfd, (struct sockaddr*)&m_address, m_adrlaenge ) == -1 ) {
qWarning("Server could not bind try again");
close(m_serverfd);
QTimer::singleShot(400, this, SLOT(initSocket() ) );
return;
}
/* tell the kernel that we're listening and accepting
* 5 pending connections */
if (listen(m_serverfd, 5) == -1 ) {
qWarning("could not listen");
close(m_serverfd );
QTimer::singleShot(400, this, SLOT(initSocket() ) );
return;
}
/*
* now we will create two QSocketNotifier
* which will us notify on reads
* and errors
* we do this because they integrate
* nicely into the QApplication eventloop
*/
m_server = new QSocketNotifier(m_serverfd, QSocketNotifier::Read, this );
connect( m_server, SIGNAL(activated(int) ),
this, SLOT(newOnServer() ) );
m_serverError = new QSocketNotifier( m_serverfd, QSocketNotifier::Exception, this);
connect(m_serverError, SIGNAL(activated(int) ),
this, SLOT(errorOnServer() ) );
qWarning("done with registering");
}
/**
* we got the possibility to read
* on the server
* this is mostly due a connect
* on a client side
* we will accept it
* add it to our list
*/
void OCopServer::newOnServer() {
int fd = accept();
if ( fd < 0 )
return;
/*
- * we got a successfull new connection
+ * we got a successful new connection
* be happy
* set SocketNotifier
* connect it
* and a OCOPClient
*/
// qWarning("Heureka new connection %d", fd );
registerClient( fd );
}
int OCopServer::accept() {
/*
* accept it
* the socket is currently blocking IIRC
*/
return ::accept( m_serverfd, (struct sockaddr*)&m_address, &m_adrlaenge );
}
void OCopServer::newOnClient( int fd ) {
errno = 0;
OCOPHead head;
memset(&head, 0, sizeof(head) );
int rea = ::read(fd, &head, sizeof(head) );
//qWarning("read %d %d", rea, errno);
/*
* I should get EPIPE but nothing like this happens
* so if rea == 0 and we were signaled by the notifier
* we close it and drop the clients...
*/
if ( rea <= 0 ) {
deregisterClient( fd );
return;
}
/*
* OCOPHead
*/
//qWarning("data %s %d", &bug, rea );
/*
* Check the magic
* if chcked read till EOF if magic does not match
* otherwise do read
* channel
* func
* data into mem
* and then send the OCOPPacket
*
*/
if (head.magic == 47 ) {
// qWarning("magic match");
QCString channel( head.chlen+1 );
QCString func( head.funclen+1 );
QByteArray data ( head.datalen+1 );
/*
* we do not check for errors
*/
// qWarning("read ");
int s = read(fd, channel.data(), head.chlen );
s = read(fd, func.data(), head.funclen );
s = read(fd, data.data(), head.datalen );
// qWarning("read");
/* debug output */
// qWarning("channel %s %d", channel.data(), head.chlen );
// qWarning("func %s %d", func.data(), head.funclen );
/* debug end */
/*
* now that we got the complete body
* we need to make a package
* and then we need to send it to clients
* making a package is done here
* dispatching it not
*/
OCOPPacket packet( head.type, channel, func, data );
dispatch( packet, fd );
}else{
// qWarning("magic does not match");
// qWarning("magic %d", head.magic );
}
}
void OCopServer::registerClient( int fd ) {
if (m_clients.contains(fd) )
return;
QSocketNotifier* notify = new QSocketNotifier(fd, QSocketNotifier::Read, this );
connect(notify, SIGNAL(activated(int) ),
this, SLOT(newOnClient(int) ) );
OCOPClient client;
client.fd = fd;
client.notify = notify;
m_clients.insert( client.fd, client );
// qWarning("clients are up to %d", m_clients.count() );
};
void OCopServer::deregisterClient(int fd ) {
QMap<int, OCOPClient>::Iterator it = m_clients.find( fd );
if (it != m_clients.end() ) {
/*
* TIME_ME
*
* now delete from all channels
* go through all channels
* remove the fd from the list
* if count becomes 0 remove the channel
* otherwise replace QArray<int>
*/
QMap<QCString, QValueList<int> >::Iterator it2;
repeatIt:
for ( it2 = m_channels.begin(); it2 != m_channels.end(); ++it2 ) {
/*
* The channel contains this fd
*/
// qWarning("Channel %s %d", it2.key().data(), it2.data().count() );
if ( it2.data().contains( fd ) ) {
qWarning("contains");
QValueList<int> array = it2.data();
/*
* remove channel or just replace
*/
if ( array.count() == 1 || array.count() == 0) {
// qWarning("Invalidate!");
/* is the list now invalidatet? */
m_channels.remove( it2 );
/* That is the first go to of my life
* but Iterator remove( Iterator )
* does not exist
* it2 = --it2;
* does not work reliable too
* so the only way is to reiterate :(
*/
goto repeatIt;
}else{
// qWarning("removing count %d %d",fd, array.count() );
QValueList<int>::Iterator it3 = array.find( fd );
it3 = array.remove( it3 );
QCString key = it2.key().copy();
it2 = m_channels.replace( key, array );
}
}
} // off all channels
OCOPClient client = it.data();
delete client.notify;
m_clients.remove(fd );
close(fd );
}
// qWarning("clients are now at %d", m_clients.count() );
}
/**
* this function will evaluate
* the package and then do the appropriate thins
*/
void OCopServer::dispatch( const OCOPPacket& packet, int sourceFD ) {
// qWarning("packet.type() == %d", packet.type() );
switch( packet.type() ) {
case OCOPPacket::Register:
registerClient(sourceFD );
break;
case OCOPPacket::Unregister:
deregisterClient(sourceFD );
break;
case OCOPPacket::Call:
call( packet, sourceFD );
break;
/* not implemented */
case OCOPPacket::Method:
break;
/* nit implemented */
case OCOPPacket::Reply:
break;
case OCOPPacket::RegisterChannel:
addChannel( packet.channel() , sourceFD );
break;
case OCOPPacket::UnregisterChannel:
delChannel( packet.channel(), sourceFD );
break;
/* not implemented */
case OCOPPacket::Return:
break;
/* not implemented :( */
case OCOPPacket::Signal:
break;
case OCOPPacket::IsRegistered:
// qWarning("Server:IsRegistered %s", packet.channel().data() );
isRegistered( packet.channel(), sourceFD );
break;
};
}
void OCopServer::errorOnServer() {
/*
* something is wrong on the server socket?
* what should we do?
* FIXME
*/
}
QStringList OCopServer::channels() {
QStringList list;
{
QMap<QCString, QValueList<int> >::Iterator it;
for (it = m_channels.begin(); it != m_channels.end(); ++it ) {
list << it.key();
};
}
return list;
}
bool OCopServer::isChannelRegistered( const QCString& chan ) const{
return m_channels.contains( chan );
}
void OCopServer::addChannel( const QCString& channel,
int fd ) {
QMap<QCString, QValueList<int> >::Iterator it;
it = m_channels.find( channel );
if ( it != m_channels.end() ) {
/* could be empty */
QValueList<int> list = it.data();
list.append( fd );
qWarning("Server:count is now in addChannel %d %s", list.count(), channel.data() );
it = m_channels.replace( channel, list );
}else {
QValueList<int> ints;
ints.append( fd );
m_channels.insert( channel, ints );
}
};
void OCopServer::delChannel( const QCString& channel,
int fd ) {
// qWarning("remove %s, %d", channel.data(), fd );
if (!m_channels.contains( channel ) )
return;
QMap<QCString, QValueList<int> >::Iterator it;
it = m_channels.find( channel );
if ( it.data().contains(fd) ) {
QValueList<int> ints = it.data();
if ( ints.count() == 1 )
m_channels.remove( channel );
else{
QValueList<int> ints = it.data();
QValueList<int>::Iterator rem = ints.find( fd );
rem = ints.remove( rem );
QCString str = it.key().copy();
m_channels.replace( str, ints );
}
// qWarning(" channel count is now %d", ints.count() );
}
}
void OCopServer::isRegistered( const QCString& channel, int fd) {
// qWarning("Server:isRegistered %s", channel.data() );
OCOPHead head;
QCString func(2);
memset(&head, 0, sizeof(head ) );
head.magic = 47;
head.type = OCOPPacket::IsRegistered;
head.chlen = channel.size();
head.funclen = func.size();
head.datalen = 0;
if ( isChannelRegistered( channel ) ) {
//is registered
func[0] = 1;
// qWarning("Server:Channel is Registered %d", head.chlen);
}else{
func[0] = 0;
// qWarning("Server:Channel is NotRegistered");
}
/**
* write the head
* and then channel
* success/failure inside func
*/
write(fd, &head, sizeof(head) );
write(fd, channel.data(), channel.size() );
write(fd, func.data(), func.size() );
}
QValueList<int> OCopServer::clients( const QCString& channel ) {
return m_channels[channel];
}
void OCopServer::call( const OCOPPacket& p, int ) {
QValueList<int> cli = clients( p.channel() );
QValueList<int>::Iterator it;
OCOPHead head = p.head();
for (it = cli.begin(); it != cli.end(); ++it ) {
// qWarning("Server:calling %d %s %s", (*it), p.channel().data(), p.header().data() );
write( (*it), &head, sizeof(head ) );
/* expl. shared! */
write( (*it), p.channel().data(), p.channel().size() );
write( (*it), p.header().data(), p.header().size() );
write( (*it), p.content().data(), p.content().size() );
};
}