How can I make my data fit normal distribution? I have selected a number of words and asked people to rate them on a Likert scale. Words were selected according to two categories; syllable length (mono-, di- and trisyllable and final phoneme (vowel or consonant).
These variables interact and are three words for each cross-category (eg. 3 monosyllabic vowel-final words, 3 disyllabic vowel final words, 3 trisyllabic vowel-final words etc).
I am now analysing my data and however I cut it I cannot get it to fit normal distribution. I have organised it by broad categories like syllable length or final phoneme, and finer categories like monosyllabic vowel-final words. I have applied logarithmic transformations and all the p-values returned on the Shapiro and Wilcox tests are absolutely tiny.
Am I doing something wrong? Or is this just the way the data is?
 A: I'll answer the question in the title even though I think noone should ever do what I am about to describe. @Emma it is good you came to this site, you should ask instead what is the best way to compare multiple categories of likert scale data. Also you should search for information about what is special about the number 0.05. 
I knew nothing about statistics only a few years ago and was confused like you are now. Now I see how confused I used to be and how messed up what most researchers in my field (preclinical) are doing. I think your thought process is rather common or at least very similar to those of many researchers. It's the fault of bad statistical teaching and not enough time available for researchers to really understand statistics.
Anyway, sometimes researchers want to get their data normally distributed so that can use a t-test which has more power to detect effects (needed for publication) compared to a non-parametric test. The two best ways to get your data normally distributed no matter what the raw data looks like are:
1) Reduce "Sample" size that the statistics will be performed on (lower sample size= higher shapiro test p value)
2) Taking averages to get rid of noise (for example individual variation)
These are easy in the case of having multiple measurements per subject. They are both taken care of by getting the average for each individual. 
In case the measurements are not from the same individual perhaps the subjects can be split into groups in some other way (day of taking the survey, age, etc). Sometimes you can even average over both timepoint and subject. If the data is still not normal it may be possible to drop outliers (so you are not comparing apples to oranges).
Here is an example with random scores of 1-5 for 30 individuals. Then say 3 of them took the survey each day for 10 days, so we will average for each day. The histogram of the original scores (dat) is on the top, while the daily averages (dat.averages) are shown on the bottom.
Of course by using averages we throw away information about our results but the data looks much cleaner for publication.

Normality test on the raw data:
> shapiro.test(dat)

        Shapiro-Wilk normality test

data:  dat
W = 0.867, p-value = 0.001437

Normally test on the daily averaged results:
> shapiro.test(dat.averages)

        Shapiro-Wilk normality test

data:  dat.averages
W = 0.8992, p-value = 0.2145

R code to make the above charts and perform normality test:
dat<-sample(1:5,30, replace=T)
dat2<-dat[1:10]
dat3<-dat[11:20]
dat4<-dat[21:30]


dat.averages=NULL
for(i in 1:length(dat2)){
dat.averages<-c(dat.averages,mean(c(dat2[i],dat3[i],dat4[i])))
}

par(mfrow=c(2,1))
hist(dat, breaks=seq(0,5,by=1))
hist(dat.averages, breaks=seq(0,5,by=1))
shapiro.test(dat)
shapiro.test(dat.averages)

