I came across this video on the difference that I found particularly helpful, but there was a special case not addressed in the video that I was curious about. I will summarize the video here as I understand it, as it is quite long and my question will not make sense if I don't. (I also understand that this is an incredibly complex topic -- no pun intended -- but you always have to start somewhere.)
In the first and most common type of sentence, there is a single subject, which may be marked with either particle. は is preferred, except in the following situations:
- When the subject is new information, e.g. 「ジョンは学生です」 (Roughly, "John is a student") vs. 「ジョンが学生です」 (Roughly, "The student is John"). This use is required with certain kinds of phrases, for example 誰 -- so「誰が寿司を買いましたか？」means "Who bought the sushi?", and this cannot be phrased as 「*誰は寿司を買いましたか？」.
- When the whole sentence is new information. Thus「田中さんは子犬を買いましたよ」just states that Tanaka bought a puppy in a factual sense, while「田中さんが子犬を買いましたよ」presents the sentence as being "news" is some way.
- When the subject is inanimate (this only applies to action verbs). So you would have「雨が降っている」but not (as far as I understand) 「*雨は降っている」.
In the second type of sentence, there is both a は phrase and a が phrase, which I will call the "subject" and "object" -- in quotes -- respectively (I understand that they are not actually a subject and object in Japanese, but they usually translate as such into English and I don't know any other name for them). For instance, we have
- ジョンさんは鼻が大きい ("John has a big nose")
- 田中さんは犬が好きだ ("Tanaka likes dogs")
- 直美さんは日本語が話せます ("Naomi can speak Japanese").
In all these cases, the が could be replaced with a は, which would emphasize that thing as opposed to others e.g.
- ジョンさんは鼻は大きい ("John has a big nose, but the rest of him is small")
- 田中さんは犬は好きだ ("Tanaka likes dogs, but not other animals")
- 直美さんは日本語は話せます ("Naomi can speak Japanese, but not other languages").
Now on to my actual question. I am curious here what happens in the second type of sentence when the "subject" falls under one of the special rules in the first type. For example, how would I translate the sentence "Who likes cats?" -- would it be
- 誰が猫が好きですか？ (Naively apply the "が for new information" rule)
- 猫が好きな人誰ですか？ (What Google Translate tells me)
- 誰が猫が好きな人ですか？ (Modification of previous)
or something else? Similarly, would "The house has large windows" be
- 家は窓が大きい (Ignoring the "が for inanimates" rule above)
- 家が窓が大きい (Same as previous but using the "が for inanimates" rule)
- 家には大きい窓がある (From Google Translate -- edited from original post)
- 家の窓は大きい (Just one phrase, ignoring the "が for inanimates" rule)
- 家の窓が大きい (Same as above, with the "が for inanimates" rule)
or something else?