mirror of
https://github.com/Automattic/harper.git
synced 2025-07-07 13:05:01 +00:00
feat(core): write linter to detect erroneous use of plurality (#1486)
Co-authored-by: hippietrail <hippietrail@users.noreply.github.com>
This commit is contained in:
parent
bb84be8310
commit
7c338eb6fe
16 changed files with 542 additions and 72 deletions
|
@ -24,6 +24,7 @@
|
|||
"packages/obsidian-plugin/main.js",
|
||||
"pnpm-lock.yaml",
|
||||
"package-lock.json",
|
||||
"playwright-report",
|
||||
"yarn.lock"
|
||||
]
|
||||
},
|
||||
|
|
|
@ -30443,6 +30443,26 @@
|
|||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"from": "NOUN",
|
||||
"to": "VERB",
|
||||
"criteria": {
|
||||
"Combined": {
|
||||
"a": {
|
||||
"WordIs": {
|
||||
"relative": -1,
|
||||
"word": "you"
|
||||
}
|
||||
},
|
||||
"b": {
|
||||
"WordIs": {
|
||||
"relative": 0,
|
||||
"word": "plan"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
|
|
|
@ -17559,7 +17559,8 @@ clash/~NVGgdS
|
|||
clasp/~NVUGdS
|
||||
clasp's
|
||||
class/~NVJGgdS
|
||||
classic/~JNgS
|
||||
classic/~JNg
|
||||
classics/09
|
||||
classical/~JNgY
|
||||
classicism/~Ng
|
||||
classicist/~NgS
|
||||
|
@ -20781,7 +20782,7 @@ descendant/~JNgS
|
|||
descendent/JN!@_
|
||||
descender/N
|
||||
describable/Ji
|
||||
describe/~VBZGd>
|
||||
describe/~VBZGdS>
|
||||
describer/Ng
|
||||
description/~NSg
|
||||
descriptive/~JNpY
|
||||
|
@ -22313,7 +22314,7 @@ easternmost/~J
|
|||
eastward/~NJS
|
||||
easy/~JNVU>Tp
|
||||
easygoing/J
|
||||
eat/~VNZGBSn>
|
||||
eat/~VZGBSn>
|
||||
eatable/JNSg
|
||||
eaten/~VJU
|
||||
eater/~Ng
|
||||
|
@ -24101,7 +24102,7 @@ farewell/~NJVSg
|
|||
farina/~Ng
|
||||
farinaceous/J
|
||||
farm/~NVgd>ZGSz
|
||||
farmer/~Ng
|
||||
farmer/~NgS
|
||||
farmhand/NSg
|
||||
farmhouse/~NSg
|
||||
farming/~NJVg
|
||||
|
@ -26031,7 +26032,7 @@ gee/~VNdS
|
|||
geeing/V
|
||||
geek/~NVgSdG
|
||||
geeky/J>T
|
||||
geese/~N
|
||||
geese/~N9
|
||||
geezer/NgS
|
||||
geisha/~Ng09S # singular and plural, also has a plural in -s
|
||||
gel/~NVSg
|
||||
|
@ -38558,7 +38559,7 @@ placard/NVSgdG
|
|||
placate/VdSGn
|
||||
placation/Ng
|
||||
placatory/J
|
||||
place/~NVrESdLG
|
||||
place/~NVESdLG
|
||||
place's
|
||||
placebo/~NSg
|
||||
placed/~VU
|
||||
|
@ -41495,6 +41496,7 @@ repetitiousness/Ng
|
|||
repetitive/~JYp
|
||||
repetitiveness/Ng
|
||||
rephotograph/VdG
|
||||
replace/VSdG
|
||||
replaceable/~JN
|
||||
replant/VNGSd
|
||||
replenish/~VLGdS
|
||||
|
@ -43046,7 +43048,7 @@ screwy/Jp>T
|
|||
scribal/J
|
||||
scribble/VNgZGd>S
|
||||
scribbler/Ng
|
||||
scribe/~NVeKiS
|
||||
scribe/~NVKiS
|
||||
scribe's
|
||||
scrim/NVgS
|
||||
scrimmage/~NVgGdS
|
||||
|
@ -47523,7 +47525,7 @@ teabag/NVS
|
|||
teacake/NSg
|
||||
teach/~VNZG>SBz
|
||||
teachable/JNU
|
||||
teacher/~NgY
|
||||
teacher/~NgYS
|
||||
teaching/~NVg
|
||||
teacup/NJgS
|
||||
teacupful/NgS
|
||||
|
@ -52010,7 +52012,7 @@ wristband/NgS
|
|||
wristwatch/NgS
|
||||
writ/~NVg>BzSZG
|
||||
write/~VNS
|
||||
writer/~Ng
|
||||
writer/~NSg
|
||||
writhe/VNgGdS
|
||||
writing/~NVg
|
||||
written/~JVrU
|
||||
|
@ -53252,4 +53254,4 @@ z-axis/Ng
|
|||
# And they will be reviewed
|
||||
# Word added using the `just addnoun` command will be added here
|
||||
|
||||
handedly
|
||||
handedly
|
||||
|
|
|
@ -70,6 +70,7 @@ use super::out_of_date::OutOfDate;
|
|||
use super::oxymorons::Oxymorons;
|
||||
use super::phrasal_verb_as_compound_noun::PhrasalVerbAsCompoundNoun;
|
||||
use super::pique_interest::PiqueInterest;
|
||||
use super::possessive_noun::PossessiveNoun;
|
||||
use super::possessive_your::PossessiveYour;
|
||||
use super::pronoun_contraction::PronounContraction;
|
||||
use super::pronoun_inflection_be::PronounInflectionBe;
|
||||
|
@ -477,6 +478,9 @@ impl LintGroup {
|
|||
);
|
||||
out.config.set_rule_enabled("SentenceCapitalization", true);
|
||||
|
||||
out.add("PossessiveNoun", PossessiveNoun::new(dictionary.clone()));
|
||||
out.config.set_rule_enabled("PossessiveNoun", true);
|
||||
|
||||
out.add("Regionalisms", Regionalisms::new(dialect));
|
||||
out.config.set_rule_enabled("Regionalisms", true);
|
||||
|
||||
|
|
|
@ -78,6 +78,7 @@ mod oxymorons;
|
|||
mod phrasal_verb_as_compound_noun;
|
||||
mod phrase_corrections;
|
||||
mod pique_interest;
|
||||
mod possessive_noun;
|
||||
mod possessive_your;
|
||||
mod pronoun_contraction;
|
||||
mod pronoun_inflection_be;
|
||||
|
@ -176,6 +177,7 @@ pub use oxford_comma::OxfordComma;
|
|||
pub use oxymorons::Oxymorons;
|
||||
pub use phrasal_verb_as_compound_noun::PhrasalVerbAsCompoundNoun;
|
||||
pub use pique_interest::PiqueInterest;
|
||||
pub use possessive_noun::PossessiveNoun;
|
||||
pub use possessive_your::PossessiveYour;
|
||||
pub use pronoun_contraction::PronounContraction;
|
||||
pub use pronoun_inflection_be::PronounInflectionBe;
|
||||
|
|
403
harper-core/src/linting/possessive_noun.rs
Normal file
403
harper-core/src/linting/possessive_noun.rs
Normal file
|
@ -0,0 +1,403 @@
|
|||
use harper_brill::UPOS;
|
||||
|
||||
use crate::Dictionary;
|
||||
use crate::Token;
|
||||
use crate::expr::All;
|
||||
use crate::expr::Expr;
|
||||
use crate::expr::SequenceExpr;
|
||||
use crate::patterns::UPOSSet;
|
||||
use crate::patterns::WordSet;
|
||||
|
||||
use super::{ExprLinter, Lint, LintKind, Suggestion};
|
||||
|
||||
pub struct PossessiveNoun<D> {
|
||||
expr: Box<dyn Expr>,
|
||||
dict: D,
|
||||
}
|
||||
|
||||
impl<D> PossessiveNoun<D>
|
||||
where
|
||||
D: Dictionary,
|
||||
{
|
||||
pub fn new(dict: D) -> Self {
|
||||
let expr = SequenceExpr::default()
|
||||
.then(UPOSSet::new(&[UPOS::DET, UPOS::PROPN]))
|
||||
.t_ws()
|
||||
.then(|tok: &Token, _: &[char]| {
|
||||
tok.kind.is_plural_nominal() && !tok.kind.is_singular_nominal()
|
||||
})
|
||||
.t_ws()
|
||||
.then(UPOSSet::new(&[UPOS::NOUN, UPOS::PROPN]))
|
||||
.then_optional(SequenceExpr::default().t_any().t_any());
|
||||
|
||||
let additional_req = SequenceExpr::default()
|
||||
.t_any()
|
||||
.t_any()
|
||||
.t_any()
|
||||
.t_any()
|
||||
.then_noun();
|
||||
|
||||
let exceptions = SequenceExpr::default()
|
||||
.t_any()
|
||||
.t_any()
|
||||
.if_not_then_step_one(WordSet::new(&["flags", "checks", "catches", "you"]))
|
||||
.t_any()
|
||||
.if_not_then_step_one(WordSet::new(&["form", "go"]));
|
||||
|
||||
Self {
|
||||
expr: Box::new(All::new(vec![
|
||||
Box::new(expr),
|
||||
Box::new(additional_req),
|
||||
Box::new(exceptions),
|
||||
])),
|
||||
dict,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl<D> ExprLinter for PossessiveNoun<D>
|
||||
where
|
||||
D: Dictionary,
|
||||
{
|
||||
fn expr(&self) -> &dyn Expr {
|
||||
self.expr.as_ref()
|
||||
}
|
||||
|
||||
fn match_to_lint(&self, matched_tokens: &[Token], _source: &[char]) -> Option<Lint> {
|
||||
let last_kind = &matched_tokens.last()?.kind;
|
||||
|
||||
if last_kind.is_upos(UPOS::ADV) {
|
||||
return None;
|
||||
}
|
||||
|
||||
let first = matched_tokens.get(2)?;
|
||||
|
||||
let span = first.span;
|
||||
let plural = span.get_content_string(_source);
|
||||
let singular = if plural.ends_with('s') {
|
||||
&plural[..plural.len() - 1]
|
||||
} else {
|
||||
&plural
|
||||
};
|
||||
|
||||
let replacement = format!("{singular}'s");
|
||||
|
||||
if !self.dict.contains_word_str(&replacement) {
|
||||
return None;
|
||||
}
|
||||
|
||||
Some(Lint {
|
||||
span,
|
||||
lint_kind: LintKind::Miscellaneous,
|
||||
suggestions: vec![Suggestion::ReplaceWith(replacement.chars().collect())],
|
||||
message: self.description().to_string(),
|
||||
priority: 10,
|
||||
})
|
||||
}
|
||||
|
||||
fn description(&self) -> &'static str {
|
||||
"Use an apostrophe and `s` to form a noun’s possessive."
|
||||
}
|
||||
}
|
||||
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
use std::sync::Arc;
|
||||
|
||||
use crate::FstDictionary;
|
||||
use crate::linting::tests::{assert_lint_count, assert_suggestion_result};
|
||||
|
||||
use super::PossessiveNoun;
|
||||
|
||||
fn test_linter() -> PossessiveNoun<Arc<FstDictionary>> {
|
||||
PossessiveNoun::new(FstDictionary::curated())
|
||||
}
|
||||
|
||||
/// Sourced from a Hacker News comment
|
||||
#[test]
|
||||
fn fixes_hn() {
|
||||
assert_suggestion_result(
|
||||
"Me and Jennifer went to have seen the ducks cousin.",
|
||||
test_linter(),
|
||||
"Me and Jennifer went to have seen the duck's cousin.",
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn fixes_cats_tail() {
|
||||
assert_suggestion_result(
|
||||
"The cats tail is long.",
|
||||
test_linter(),
|
||||
"The cat's tail is long.",
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn fixes_children_toys() {
|
||||
assert_suggestion_result(
|
||||
"The children toys were scattered.",
|
||||
test_linter(),
|
||||
"The children's toys were scattered.",
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn fixes_teachers_lounge() {
|
||||
assert_suggestion_result(
|
||||
"Many schools have a teachers lounge.",
|
||||
test_linter(),
|
||||
"Many schools have a teacher's lounge.",
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn fixes_ducks_park() {
|
||||
assert_suggestion_result(
|
||||
"Kids played in the ducks park.",
|
||||
test_linter(),
|
||||
"Kids played in the duck's park.",
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn no_lint_for_already_possessive() {
|
||||
assert_lint_count("The duck's cousin visited.", test_linter(), 0);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn no_lint_for_alrreaady_possessive() {
|
||||
assert_lint_count("The duck's cousin visited.", test_linter(), 0);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn fixes_dogs_bone() {
|
||||
assert_suggestion_result(
|
||||
"The dogs bone is delicious.",
|
||||
test_linter(),
|
||||
"The dog's bone is delicious.",
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn fixes_students_books() {
|
||||
assert_suggestion_result(
|
||||
"The students books are on the desk.",
|
||||
test_linter(),
|
||||
"The student's books are on the desk.",
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn fixes_farmers_field() {
|
||||
assert_suggestion_result(
|
||||
"The farmers field looked beautiful.",
|
||||
test_linter(),
|
||||
"The farmer's field looked beautiful.",
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn fixes_women_dress() {
|
||||
assert_suggestion_result(
|
||||
"The women dress was elegant.",
|
||||
test_linter(),
|
||||
"The women's dress was elegant.",
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn fixes_birds_song() {
|
||||
assert_suggestion_result(
|
||||
"We heard the birds song.",
|
||||
test_linter(),
|
||||
"We heard the bird's song.",
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn fixes_scientists_research() {
|
||||
assert_suggestion_result(
|
||||
"The scientists research was groundbreaking.",
|
||||
test_linter(),
|
||||
"The scientist's research was groundbreaking.",
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn fixes_artists_gallery() {
|
||||
assert_suggestion_result(
|
||||
"The artists gallery is open.",
|
||||
test_linter(),
|
||||
"The artist's gallery is open.",
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn no_lint_for_plural_noun() {
|
||||
assert_lint_count("The ducks are swimming.", test_linter(), 0);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn no_lint_for_proper_noun() {
|
||||
assert_lint_count("John's car is red.", test_linter(), 0);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn fixes_the_students_assignment() {
|
||||
assert_suggestion_result(
|
||||
"The students assignment was due yesterday.",
|
||||
test_linter(),
|
||||
"The student's assignment was due yesterday.",
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn fixes_the_birds_flight() {
|
||||
assert_suggestion_result(
|
||||
"The birds flight was graceful.",
|
||||
test_linter(),
|
||||
"The bird's flight was graceful.",
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn allows_the_city_lights() {
|
||||
assert_lint_count(
|
||||
"The city lights twinkled in the distance.",
|
||||
test_linter(),
|
||||
0,
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn fixes_the_farmers_crops() {
|
||||
assert_suggestion_result(
|
||||
"The farmers crops were bountiful this year.",
|
||||
test_linter(),
|
||||
"The farmer's crops were bountiful this year.",
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn fixes_the_artists_inspiration() {
|
||||
assert_suggestion_result(
|
||||
"The artists inspiration came from nature.",
|
||||
test_linter(),
|
||||
"The artist's inspiration came from nature.",
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn fixes_the_scientists_discovery() {
|
||||
assert_suggestion_result(
|
||||
"The scientists discovery revolutionized the field.",
|
||||
test_linter(),
|
||||
"The scientist's discovery revolutionized the field.",
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn fixes_the_writers_novel() {
|
||||
assert_suggestion_result(
|
||||
"The writers novel was a bestseller.",
|
||||
test_linter(),
|
||||
"The writer's novel was a bestseller.",
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn fixes_the_students_presentation() {
|
||||
assert_suggestion_result(
|
||||
"The students presentation was well-received.",
|
||||
test_linter(),
|
||||
"The student's presentation was well-received.",
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn fixes_the_teams_victory() {
|
||||
assert_suggestion_result(
|
||||
"The teams victory was celebrated by the fans.",
|
||||
test_linter(),
|
||||
"The team's victory was celebrated by the fans.",
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn fixes_the_museums_collection() {
|
||||
assert_suggestion_result(
|
||||
"The museums collection included many artifacts.",
|
||||
test_linter(),
|
||||
"The museum's collection included many artifacts.",
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn no_lint_for_already_possessive_2() {
|
||||
assert_lint_count("John's car is red.", test_linter(), 0);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn no_lint_for_proper_noun_2() {
|
||||
assert_lint_count("Mary went to the store.", test_linter(), 0);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn fixes_the_doctors_office() {
|
||||
assert_suggestion_result(
|
||||
"The doctors office is on Main Street.",
|
||||
test_linter(),
|
||||
"The doctor's office is on Main Street.",
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn fixes_the_neighbors_garden() {
|
||||
assert_suggestion_result(
|
||||
"The neighbors garden is beautiful.",
|
||||
test_linter(),
|
||||
"The neighbor's garden is beautiful.",
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn fixes_the_architects_design() {
|
||||
assert_suggestion_result(
|
||||
"The architects design was innovative.",
|
||||
test_linter(),
|
||||
"The architect's design was innovative.",
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn fixes_the_bakers_shop() {
|
||||
assert_suggestion_result(
|
||||
"The bakers shop is famous for its bread.",
|
||||
test_linter(),
|
||||
"The baker's shop is famous for its bread.",
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn fixes_the_musics_performance() {
|
||||
assert_suggestion_result(
|
||||
"The musics performance was captivating.",
|
||||
test_linter(),
|
||||
"The music's performance was captivating.",
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn fixes_the_flowers_scent() {
|
||||
assert_suggestion_result(
|
||||
"The flowers scent filled the room.",
|
||||
test_linter(),
|
||||
"The flower's scent filled the room.",
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn allows_birds_hurried() {
|
||||
assert_lint_count("The birds hurried off.", test_linter(), 0);
|
||||
}
|
||||
}
|
|
@ -60,7 +60,7 @@ There are 2 additional ways to interact with Orgmode:
|
|||
2. Through =Org= Lua global variable
|
||||
|
||||
List of available actions:
|
||||
- =:Org help= - Open this documentation in new tab, set working directory to the docs folder for the tab to allow browsing
|
||||
- =:Org help= - Open this documentation in new tab, set working directory to the doc's folder for the tab to allow browsing
|
||||
- =:Org helpgrep= - Open search agenda view that allows searching through the documentation
|
||||
- =:Org agenda {type?}= - Open agenda view by the shortcut, for example =:Org agenda M= will open =tags_todo= view. When =type= is omitted, it opens up Agenda view.
|
||||
- =:Org capture {type?}= - Open capture template by the shortcut, for example =:Org capture t=. When =type= is omitted, it opens up Capture prompt.
|
||||
|
@ -78,4 +78,4 @@ All of the commands above can be executed through the global Lua =Org= variable.
|
|||
- =Org.agenda()= - Opens =agenda= prompt
|
||||
- =Org.agenda.m()= - Opens =tags= view
|
||||
- =Org.capture()= - Opens capture prompt
|
||||
- =Org.capture.t()= - Opens capture template for =t= shortcut
|
||||
- =Org.capture.t()= - Opens capture template for =t= shortcut
|
||||
|
|
|
@ -2710,6 +2710,15 @@ Suggest:
|
|||
|
||||
|
||||
|
||||
Lint: Miscellaneous (10 priority)
|
||||
Message: |
|
||||
2420 | “How the creatures order one about, and make one repeat lessons!” thought Alice;
|
||||
| ^~~~~~~~~ Use an apostrophe and `s` to form a noun’s possessive.
|
||||
Suggest:
|
||||
- Replace with: “creature's”
|
||||
|
||||
|
||||
|
||||
Lint: Spelling (63 priority)
|
||||
Message: |
|
||||
2425 | > “’Tis the voice of the Lobster; I heard him declare, “You have baked me too
|
||||
|
|
|
@ -165,6 +165,16 @@ Suggest:
|
|||
|
||||
|
||||
|
||||
Lint: Miscellaneous (10 priority)
|
||||
Message: |
|
||||
65 | the earlier Brown Corpus and LOB Corpus tag sets, though much smaller. In
|
||||
66 | Europe, tag sets from the Eagles Guidelines see wide use and include versions
|
||||
| ^~~~~~ Use an apostrophe and `s` to form a noun’s possessive.
|
||||
Suggest:
|
||||
- Replace with: “Eagle's”
|
||||
|
||||
|
||||
|
||||
Lint: WordChoice (63 priority)
|
||||
Message: |
|
||||
73 | cross-language differences. The tag sets for heavily inflected languages such as
|
||||
|
|
|
@ -1,3 +1,12 @@
|
|||
Lint: Miscellaneous (10 priority)
|
||||
Message: |
|
||||
3 | This documents tests that different forms/variations of swears are tagged as such.
|
||||
| ^~~~~~~~~ Use an apostrophe and `s` to form a noun’s possessive.
|
||||
Suggest:
|
||||
- Replace with: “document's”
|
||||
|
||||
|
||||
|
||||
Lint: Miscellaneous (63 priority)
|
||||
Message: |
|
||||
7 | One turd, two turds.
|
||||
|
|
|
@ -1859,6 +1859,16 @@ Message: |
|
|||
|
||||
|
||||
|
||||
Lint: Miscellaneous (10 priority)
|
||||
Message: |
|
||||
1407 | celebrated tenor had sung in Italian, and a notorious contralto had sung in
|
||||
1408 | jazz, and between the numbers people were doing ‘‘stunts” all over the garden,
|
||||
| ^~~~~~~ Use an apostrophe and `s` to form a noun’s possessive.
|
||||
Suggest:
|
||||
- Replace with: “number's”
|
||||
|
||||
|
||||
|
||||
Lint: Spelling (63 priority)
|
||||
Message: |
|
||||
1413 | trembling a little to the stiff, tinny drip of the banjoes on the lawn.
|
||||
|
|
|
@ -151,21 +151,21 @@
|
|||
> wish you were down here with me ! There are no mice in the air , I’m afraid , but
|
||||
# NSg/V ISgPl+ NSg/V NSg/V/J/P NSg/J/R P NPr/ISg+ . + V NPr/P NSg/V NPr/J/P D+ NSg/V+ . W? J . NSg/C/P
|
||||
> you might catch a bat , and that’s very like a mouse , you know . But do cats eat
|
||||
# ISgPl+ NSg/VX/J NSg/V D/P+ NSg/V+ . V/C NSg$ J/R NSg/V/J/C/P D/P+ NSg/V+ . ISgPl+ NSg/V+ . NSg/C/P NSg/VX NPl/V+ NSg/V
|
||||
# ISgPl+ NSg/VX/J NSg/V D/P+ NSg/V+ . V/C NSg$ J/R NSg/V/J/C/P D/P+ NSg/V+ . ISgPl+ NSg/V+ . NSg/C/P NSg/VX NPl/V+ V
|
||||
> bats , I wonder ? ” And here Alice began to get rather sleepy , and went on saying
|
||||
# NPl/V . ISg+ NSg/V . . V/C NSg/J/R NPr+ V P NSg/V NPr/V/J NSg/J . V/C NSg/V J/P NSg/V
|
||||
> to herself , in a dreamy sort of way , “ Do cats eat bats ? Do cats eat bats ? ” and
|
||||
# P ISg+ . NPr/J/P D/P J NSg/V P NSg/J+ . . NSg/VX NPl/V+ NSg/V NPl/V . NSg/VX NPl/V+ NSg/V NPl/V . . V/C
|
||||
> sometimes , “ Do bats eat cats ? ” for , you see , as she couldn’t answer either
|
||||
# R . . NSg/VX NPl/V NSg/V NPl/V+ . . C/P . ISgPl+ NSg/V . NSg/R ISg+ V NSg/V+ I/C
|
||||
> to herself , in a dreamy sort of way , “ Do cats eat bats ? Do cats eat bats ? ” and
|
||||
# P ISg+ . NPr/J/P D/P J NSg/V P NSg/J+ . . NSg/VX NPl/V+ V NPl/V . NSg/VX NPl/V+ V NPl/V . . V/C
|
||||
> sometimes , “ Do bats eat cats ? ” for , you see , as she couldn’t answer either
|
||||
# R . . NSg/VX NPl/V V NPl/V+ . . C/P . ISgPl+ NSg/V . NSg/R ISg+ V NSg/V+ I/C
|
||||
> question , it didn’t much matter which way she put it . She felt that she was
|
||||
# NSg/V+ . NPr/ISg+ V NSg/I/J NSg/V/J I/C+ NSg/J+ ISg+ NSg/V NPr/ISg+ . ISg+ NSg/V/J NSg/I/C/Ddem ISg+ V
|
||||
> dozing off , and had just begun to dream that she was walking hand in hand with
|
||||
# V NSg/V/J/P . V/C V V/J V P NSg/V/J NSg/I/C/Ddem ISg+ V NSg/V/J NSg/V+ NPr/J/P NSg/V P
|
||||
> Dinah , and saying to her very earnestly , “ Now , Dinah , tell me the truth : did you
|
||||
# NPr . V/C NSg/V P ISg/D$+ J/R R . . NPr/V/J/C . NPr . NPr/V NPr/ISg+ D+ NSg/V+ . V ISgPl+
|
||||
> ever eat a bat ? ” when suddenly , thump ! thump ! down she came upon a heap of
|
||||
# J NSg/V D/P+ NSg/V+ . . NSg/I/C R . NSg/V+ . NSg/V+ . NSg/V/J/P ISg+ NSg/V/P P D/P NSg/V P
|
||||
> ever eat a bat ? ” when suddenly , thump ! thump ! down she came upon a heap of
|
||||
# J V D/P+ NSg/V+ . . NSg/I/C R . NSg/V+ . NSg/V+ . NSg/V/J/P ISg+ NSg/V/P P D/P NSg/V P
|
||||
> sticks and dry leaves , and the fall was over .
|
||||
# NPl/V+ V/C NSg/V/J+ NPl/V+ . V/C D+ NSg/V+ V+ NSg/V/J/P .
|
||||
>
|
||||
|
@ -340,10 +340,10 @@
|
|||
#
|
||||
> Soon her eye fell on a little glass box that was lying under the table : she
|
||||
# J/R ISg/D$+ NSg/V NSg/V/J J/P D/P NPr/I/J NPr/V+ NSg/V+ NSg/I/C/Ddem+ V NSg/V/J NSg/J/P D+ NSg/V+ . ISg+
|
||||
> opened it , and found in it a very small cake , on which the words “ EAT ME ” were
|
||||
# V/J NPr/ISg+ . V/C NSg/V NPr/J/P NPr/ISg+ D/P J/R NPr/V/J NSg/V . J/P I/C+ D+ NPl/V+ . NSg/V NPr/ISg+ . NSg/V
|
||||
> beautifully marked in currants . “ Well , I’ll eat it , ” said Alice , “ and if it
|
||||
# R V/J NPr/J/P NPl . . NSg/V/J . W? NSg/V NPr/ISg+ . . V/J NPr . . V/C NSg/C NPr/ISg+
|
||||
> opened it , and found in it a very small cake , on which the words “ EAT ME ” were
|
||||
# V/J NPr/ISg+ . V/C NSg/V NPr/J/P NPr/ISg+ D/P J/R NPr/V/J NSg/V . J/P I/C+ D+ NPl/V+ . V NPr/ISg+ . NSg/V
|
||||
> beautifully marked in currants . “ Well , I’ll eat it , ” said Alice , “ and if it
|
||||
# R V/J NPr/J/P NPl . . NSg/V/J . W? V NPr/ISg+ . . V/J NPr . . V/C NSg/C NPr/ISg+
|
||||
> makes me grow larger , I can reach the key ; and if it makes me grow smaller , I
|
||||
# NPl/V NPr/ISg V J . ISg+ NPr/VX NSg/V D NPr/V/J . V/C NSg/C NPr/ISg+ NPl/V NPr/ISg V J . ISg+
|
||||
> can creep under the door ; so either way I’ll get into the garden , and I don’t
|
||||
|
@ -358,8 +358,8 @@
|
|||
# NSg/V ISg/D$+ NSg/V+ J/P D NSg/V/J P ISg/D$+ NPr/V/J+ P NSg/I/V I/C+ NSg/J+ NPr/ISg+ V NSg/V . V/C
|
||||
> she was quite surprised to find that she remained the same size : to be sure ,
|
||||
# ISg+ V NSg V/J P NSg/V NSg/I/C/Ddem ISg+ V/J D+ I/J+ NSg/V+ . P NSg/VX J .
|
||||
> this generally happens when one eats cake , but Alice had got so much into the
|
||||
# I/Ddem+ R V NSg/I/C NSg/I/V/J NPl/V NSg/V+ . NSg/C/P NPr+ V V NSg/I/J/C NSg/I/J P D
|
||||
> this generally happens when one eats cake , but Alice had got so much into the
|
||||
# I/Ddem+ R V NSg/I/C NSg/I/V/J V NSg/V+ . NSg/C/P NPr+ V V NSg/I/J/C NSg/I/J P D
|
||||
> way of expecting nothing but out - of - the - way things to happen , that it seemed
|
||||
# NSg/J P V NSg/I/J+ NSg/C/P NSg/V/J/R/P . P . D . NSg/J NPl/V P V . NSg/I/C/Ddem NPr/ISg+ V/J
|
||||
> quite dull and stupid for life to go on in the common way .
|
||||
|
@ -952,8 +952,8 @@
|
|||
# R V/J . V/C V D NSg/V . V NSg/R J NSg/R ISg+ NSg/VX+ .
|
||||
>
|
||||
#
|
||||
> The next thing was to eat the comfits : this caused some noise and confusion , as
|
||||
# D+ NSg/J/P NSg/V V P NSg/V D NPl/V . I/Ddem+ V/J I/J/R+ NSg/V V/C NSg/V+ . NSg/R
|
||||
> The next thing was to eat the comfits : this caused some noise and confusion , as
|
||||
# D+ NSg/J/P NSg/V V P V D NPl/V . I/Ddem+ V/J I/J/R+ NSg/V V/C NSg/V+ . NSg/R
|
||||
> the large birds complained that they could not taste theirs , and the small ones
|
||||
# D+ NSg/J+ NPl/V+ V/J NSg/I/C/Ddem IPl+ NSg/VX NSg/C NSg/V/J I+ . V/C D+ NPr/V/J+ NPl/V+
|
||||
> choked and had to be patted on the back . However , it was over at last , and they
|
||||
|
@ -1078,8 +1078,8 @@
|
|||
# NPr V/J R . C/P ISg+ V R NSg/V/J P NSg/V J/P ISg/D$+ NPr/V/J+ . . NSg$
|
||||
> our cat . And she’s such a capital one for catching mice you can’t think ! And oh ,
|
||||
# D$+ NSg/V/J+ . V/C W? NSg/I D/P NSg/J+ NSg/I/V/J C/P V NSg/V+ ISgPl+ VX NSg/V . V/C NPr/V .
|
||||
> I wish you could see her after the birds ! Why , she’ll eat a little bird as soon
|
||||
# ISg+ NSg/V ISgPl+ NSg/VX NSg/V ISg/D$+ J/P D+ NPl/V+ . NSg/V . W? NSg/V D/P NPr/I/J NPr/V/J+ NSg/R J/R
|
||||
> I wish you could see her after the birds ! Why , she’ll eat a little bird as soon
|
||||
# ISg+ NSg/V ISgPl+ NSg/VX NSg/V ISg/D$+ J/P D+ NPl/V+ . NSg/V . W? V D/P NPr/I/J NPr/V/J+ NSg/R J/R
|
||||
> as look at it ! ”
|
||||
# NSg/R NSg/V NSg/P NPr/ISg . .
|
||||
>
|
||||
|
@ -1192,8 +1192,8 @@
|
|||
# V+ . NPr/V . + V NPr/P+ NSg/V+ I/Ddem+ NSg/V/J P D+ NPl/V+ . NSg/V+ NPr/ISg . . NSg/C/P
|
||||
> nevertheless she uncorked it and put it to her lips . “ I know something
|
||||
# W? ISg+ V/J NPr/ISg+ V/C NSg/V NPr/ISg+ P ISg/D$+ NPl/V+ . . ISg+ NSg/V NSg/I/V/J+
|
||||
> interesting is sure to happen , ” she said to herself , “ whenever I eat or drink
|
||||
# V/J VL J P V . . ISg+ V/J P ISg+ . . C ISg+ NSg/V NPr/C NSg/V+
|
||||
> interesting is sure to happen , ” she said to herself , “ whenever I eat or drink
|
||||
# V/J VL J P V . . ISg+ V/J P ISg+ . . C ISg+ V NPr/C NSg/V+
|
||||
> anything ; so I’ll just see what this bottle does . I do hope it’ll make me grow
|
||||
# NSg/I/V+ . NSg/I/J/C W? V/J NSg/V NSg/I+ I/Ddem+ NSg/V+ NPl/V+ . ISg+ NSg/VX NPr/V W? NSg/V NPr/ISg+ V
|
||||
> large again , for really I’m quite tired of being such a tiny little thing ! ”
|
||||
|
@ -1465,7 +1465,7 @@
|
|||
> Alice noticed with some surprise that the pebbles were all turning into little
|
||||
# NPr+ V/J P I/J/R+ NSg/V NSg/I/C/Ddem D+ NPl/V+ NSg/V NSg/I/J/C NSg/V P NPr/I/J
|
||||
> cakes as they lay on the floor , and a bright idea came into her head . “ If I eat
|
||||
# NPl/V+ NSg/R IPl+ NSg/V/J J/P D+ NSg/V+ . V/C D/P NPr/V/J NSg NSg/V/P P ISg/D$+ NPr/V/J+ . . NSg/C ISg+ NSg/V
|
||||
# NPl/V+ NSg/R IPl+ NSg/V/J J/P D+ NSg/V+ . V/C D/P NPr/V/J NSg NSg/V/P P ISg/D$+ NPr/V/J+ . . NSg/C ISg+ V
|
||||
> one of these cakes , ” she thought , “ it’s sure to make some change in my size ; and
|
||||
# NSg/I/V/J P I/Ddem+ NPl/V+ . . ISg+ NSg/V . . W? J P NSg/V I/J/R NSg/V+ NPr/J/P D$+ NSg/V+ . V/C
|
||||
> as it can’t possibly make me larger , it must make me smaller , I suppose . ”
|
||||
|
@ -1514,8 +1514,8 @@
|
|||
# D/P NSg/V/J NSg/I/V+ . V/C ISg+ V/J NSg/V/J P NSg/V P NPr/ISg+ . NSg/C/P ISg+ V R
|
||||
> frightened all the time at the thought that it might be hungry , in which case it
|
||||
# V/J NSg/I/J/C D NSg/V/J NSg/P D NSg/V NSg/I/C/Ddem NPr/ISg+ NSg/VX/J NSg/VX J . NPr/J/P I/C+ NPr/V+ NPr/ISg+
|
||||
> would be very likely to eat her up in spite of all her coaxing .
|
||||
# NSg/VX NSg/VX J/R NSg/J P NSg/V ISg/D$+ NSg/V/J/P NPr/J/P NSg/V/P P NSg/I/J/C ISg/D$+ NSg/V/J .
|
||||
> would be very likely to eat her up in spite of all her coaxing .
|
||||
# NSg/VX NSg/VX J/R NSg/J P V ISg/D$+ NSg/V/J/P NPr/J/P NSg/V/P P NSg/I/J/C ISg/D$+ NSg/V/J .
|
||||
>
|
||||
#
|
||||
> Hardly knowing what she did , she picked up a little bit of stick , and held it
|
||||
|
@ -1560,8 +1560,8 @@
|
|||
# NSg/VX V/J NSg/V+ NPr/ISg+ NPl/V+ J/R NSg/I/J . NSg/C . NSg/C W? J/R/C NSg/V D NPr/V/J NSg/V P
|
||||
> do it ! Oh dear ! I’d nearly forgotten that I’ve got to grow up again ! Let me
|
||||
# NSg/VX NPr/ISg+ . NPr/V NSg/V/J . W? R NSg/V/J NSg/I/C/Ddem W? V P V NSg/V/J/P P . NSg/V NPr/ISg+
|
||||
> see — how is it to be managed ? I suppose I ought to eat or drink something or
|
||||
# NSg/V . NSg/C VL NPr/ISg+ P NSg/VX V/J . ISg+ V ISg+ NSg/I/VX P NSg/V NPr/C NSg/V+ NSg/I/V/J NPr/C
|
||||
> see — how is it to be managed ? I suppose I ought to eat or drink something or
|
||||
# NSg/V . NSg/C VL NPr/ISg+ P NSg/VX V/J . ISg+ V ISg+ NSg/I/VX P V NPr/C NSg/V+ NSg/I/V/J NPr/C
|
||||
> other ; but the great question is , what ? ”
|
||||
# NSg/V/J . NSg/C/P D+ NSg/J+ NSg/V+ VL . NSg/I . .
|
||||
>
|
||||
|
@ -1570,8 +1570,8 @@
|
|||
# D+ NSg/J NSg/V R V . NSg/I . NPr+ V/J NSg/I/J/C NSg/V/J/P ISg/D$+ NSg/P D+
|
||||
> flowers and the blades of grass , but she did not see anything that looked like
|
||||
# NPrPl/V+ V/C D NPl/V P NPr/V+ . NSg/C/P ISg+ V NSg/C NSg/V NSg/I/V+ NSg/I/C/Ddem+ V/J NSg/V/J/C/P
|
||||
> the right thing to eat or drink under the circumstances . There was a large
|
||||
# D+ NPr/V/J+ NSg/V P NSg/V NPr/C NSg/V+ NSg/J/P D+ NPl/V+ . + V D/P NSg/J
|
||||
> the right thing to eat or drink under the circumstances . There was a large
|
||||
# D+ NPr/V/J+ NSg/V P V NPr/C NSg/V+ NSg/J/P D+ NPl/V+ . + V D/P NSg/J
|
||||
> mushroom growing near her , about the same height as herself ; and when she had
|
||||
# NSg/V/J NSg/V NSg/V/J/P ISg/D$+ . J/P D+ I/J+ NSg+ NSg/R ISg+ . V/C NSg/I/C ISg+ V
|
||||
> looked under it , and on both sides of it , and behind it , it occurred to her that
|
||||
|
@ -1918,8 +1918,8 @@
|
|||
# ISg+ V D/P NPr/V/J NSg/V/J V/J NSg/J/P I/Ddem+ J/R NSg/J+ NSg/V+ . NSg/C/P ISg+ NSg/V/J NSg/I/C/Ddem
|
||||
> there was no time to be lost , as she was shrinking rapidly ; so she set to work
|
||||
# + V NPr/P NSg/V/J+ P NSg/VX V/J . NSg/R ISg+ V V R . NSg/I/J/C ISg+ NPr/V/J P NSg/V
|
||||
> at once to eat some of the other bit . Her chin was pressed so closely against
|
||||
# NSg/P NSg/C P NSg/V I/J/R P D+ NSg/V/J+ NSg/V+ . ISg/D$+ NPr/V+ V V/J NSg/I/J/C R C/P
|
||||
> at once to eat some of the other bit . Her chin was pressed so closely against
|
||||
# NSg/P NSg/C P V I/J/R P D+ NSg/V/J+ NSg/V+ . ISg/D$+ NPr/V+ V V/J NSg/I/J/C R C/P
|
||||
> her foot , that there was hardly room to open her mouth ; but she did it at last ,
|
||||
# ISg/D$+ NSg/V+ . NSg/I/C/Ddem + V R NSg/V/J P NSg/V/J ISg/D$+ NSg/V+ . NSg/C/P ISg+ V NPr/ISg NSg/P NSg/V/J .
|
||||
> and managed to swallow a morsel of the lefthand bit .
|
||||
|
@ -2048,8 +2048,8 @@
|
|||
#
|
||||
> “ I have tasted eggs , certainly , ” said Alice , who was a very truthful child ; “ but
|
||||
# . ISg+ NSg/VX V/J NPl/V . R . . V/J NPr+ . NPr/I+ V D/P J/R J NSg/V . . NSg/C/P
|
||||
> little girls eat eggs quite as much as serpents do , you know . ”
|
||||
# NPr/I/J NPl/V+ NSg/V NPl/V+ NSg NSg/R NSg/I/J NSg/R NPl/V NSg/VX . ISgPl+ NSg/V+ . .
|
||||
> little girls eat eggs quite as much as serpents do , you know . ”
|
||||
# NPr/I/J NPl/V+ V NPl/V+ NSg NSg/R NSg/I/J NSg/R NPl/V NSg/VX . ISgPl+ NSg/V+ . .
|
||||
>
|
||||
#
|
||||
> “ I don’t believe it , ” said the Pigeon ; “ but if they do , why then they’re a kind
|
||||
|
@ -2808,8 +2808,8 @@
|
|||
#
|
||||
> “ Not the same thing a bit ! ” said the Hatter . “ You might just as well say that ‘ I
|
||||
# . NSg/C D I/J NSg/V+ D/P+ NSg/V+ . . V/J D+ NSg/V . . ISgPl+ NSg/VX/J V/J NSg/R NSg/V/J NSg/V NSg/I/C/Ddem+ Unlintable ISg+
|
||||
> see what I eat ’ is the same thing as ‘ I eat what I see ’ ! ”
|
||||
# NSg/V NSg/I+ ISg+ NSg/V . VL D I/J NSg/V+ NSg/R Unlintable ISg+ NSg/V NSg/I+ ISg+ NSg/V . . .
|
||||
> see what I eat ’ is the same thing as ‘ I eat what I see ’ ! ”
|
||||
# NSg/V NSg/I+ ISg+ V . VL D I/J NSg/V+ NSg/R Unlintable ISg+ V NSg/I+ ISg+ NSg/V . . .
|
||||
>
|
||||
#
|
||||
> “ You might just as well say , ” added the March Hare , “ that ‘ I like what I get ’ is
|
||||
|
@ -4429,7 +4429,7 @@
|
|||
>
|
||||
#
|
||||
> “ Hadn’t time , ” said the Gryphon : “ I went to the Classics master , though . He was
|
||||
# . V NSg/V/J . . V/J D ? . . ISg+ NSg/V P D+ NPl+ NPr/V/J+ . V/C . NPr/ISg+ V
|
||||
# . V NSg/V/J . . V/J D ? . . ISg+ NSg/V P D+ NSgPl+ NPr/V/J+ . V/C . NPr/ISg+ V
|
||||
> an old crab , he was . ”
|
||||
# D/P NSg/J NSg/V . NPr/ISg+ V+ . .
|
||||
>
|
||||
|
|
|
@ -33,7 +33,7 @@
|
|||
> the generation of images . Programming language theory considers different ways
|
||||
# D NSg P NPl/V+ . NSg/V+ NSg/V+ NSg+ V NSg/J NPl
|
||||
> to describe computational processes , and database theory concerns the management
|
||||
# P NSg/V J+ NPl/V+ . V/C NSg/V+ NSg+ NSg/V+ D NSg
|
||||
# P V J+ NPl/V+ . V/C NSg/V+ NSg+ NSg/V+ D NSg
|
||||
> of repositories of data . Human – computer interaction investigates the interfaces
|
||||
# P NPl P NSg+ . NSg/V/J . NSg/V+ NSg+ V D NPl/V
|
||||
> through which humans and computers interact , and software engineering focuses on
|
||||
|
@ -43,7 +43,7 @@
|
|||
> systems , networks and embedded systems investigate the principles and design
|
||||
# NPl . NPl/V+ V/C V/J NPl+ V D NPl/V V/C NSg/V+
|
||||
> behind complex systems . Computer architecture describes the construction of
|
||||
# NSg/J/P NSg/V/J+ NPl+ . NSg/V+ NSg+ NPl/V D NSg P
|
||||
# NSg/J/P NSg/V/J+ NPl+ . NSg/V+ NSg+ V D NSg P
|
||||
> computer components and computer - operated equipment . Artificial intelligence and
|
||||
# NSg/V+ NPl V/C NSg/V+ . V/J NSg . J NSg V/C
|
||||
> machine learning aim to synthesize goal - orientated processes such as
|
||||
|
|
|
@ -464,8 +464,8 @@
|
|||
#
|
||||
> Suddenly a strange man walked in .
|
||||
# R D/P NSg/V/J NPr/V/J V/J+ NPr/J/P .
|
||||
> Would you like that to take away or eat in ?
|
||||
# NSg/VX ISgPl+ NSg/V/J/C/P NSg/I/C/Ddem+ P NSg/V V/J NPr/C NSg/V NPr/J/P .
|
||||
> Would you like that to take away or eat in ?
|
||||
# NSg/VX ISgPl+ NSg/V/J/C/P NSg/I/C/Ddem+ P NSg/V V/J NPr/C V NPr/J/P .
|
||||
> He ran to the edge of the swimming pool and dived in .
|
||||
# NPr/ISg+ NSg/V P D NSg/V P D+ NSg/V+ NSg/V+ V/C V/J+ NPr/J/P .
|
||||
> They flew in from London last night .
|
||||
|
|
|
@ -374,8 +374,8 @@
|
|||
# NSg/V NPl/V+ NPr/J/P NSg/V+ NSg/V . V/C NSg/V NSg/V/J . P . NSg/V NPl+ IPl+ .
|
||||
> For example , statistics readily reveal that " the " , " a " , and " an " occur in
|
||||
# C/P NSg/V+ . NPl/V+ R NSg/V NSg/I/C/Ddem+ . D . . . D/P . . V/C . D/P . V NPr/J/P
|
||||
> similar contexts , while " eat " occurs in very different ones . With sufficient
|
||||
# NSg/J+ NPl/V+ . NSg/V/C/P . NSg/V . V NPr/J/P J/R NSg/J+ NPl/V+ . P J+
|
||||
> similar contexts , while " eat " occurs in very different ones . With sufficient
|
||||
# NSg/J+ NPl/V+ . NSg/V/C/P . V . V NPr/J/P J/R NSg/J+ NPl/V+ . P J+
|
||||
> iteration , similarity classes of words emerge that are remarkably similar to
|
||||
# NSg . NSg NPl/V P NPl/V+ NSg/V NSg/I/C/Ddem+ V R NSg/J P
|
||||
> those human linguists would expect ; and the differences themselves sometimes
|
||||
|
|
|
@ -1010,8 +1010,8 @@
|
|||
# D/P+ NSg+ ISg+ V/J NPr/V/J R P D NSg/V/J P ISg/D$+ NSg+ .
|
||||
>
|
||||
#
|
||||
> “ I suppose she talks , and — eats , and everything . ”
|
||||
# . ISg+ V ISg+ NPl/V+ . V/C . NPl/V . V/C NSg/I/V+ . .
|
||||
> “ I suppose she talks , and — eats , and everything . ”
|
||||
# . ISg+ V ISg+ NPl/V+ . V/C . V . V/C NSg/I/V+ . .
|
||||
>
|
||||
#
|
||||
> “ Oh , yes . ” She looked at me absently . “ Listen , Nick ; let me tell you what I said
|
||||
|
@ -4254,8 +4254,8 @@
|
|||
# V/J/P+ . V/J P NPl/V+ V/J/P NPr/V/J/C+ NSg/J . ISg+ VX V NSg/I/J/C NPr/V/J NSg/R ISg+ V/J D+
|
||||
> night they shot Rosy Rosenthal there . It was six of us at the table , and Rosy
|
||||
# NSg/V+ IPl+ NSg/V/J+ NSg/V/J+ NPr+ W? . NPr/ISg+ V NSg P NPr/IPl+ NSg/P D+ NSg/V+ . V/C NSg/V/J
|
||||
> had eat and drunk a lot all evening . When it was almost morning the waiter came
|
||||
# V NSg/V V/C NSg/V/J D/P+ NPr/V+ NSg/I/J/C NSg/V+ . NSg/I/C NPr/ISg+ V NSg NSg/V D+ NSg/V+ NSg/V/P
|
||||
> had eat and drunk a lot all evening . When it was almost morning the waiter came
|
||||
# V V V/C NSg/V/J D/P+ NPr/V+ NSg/I/J/C NSg/V+ . NSg/I/C NPr/ISg+ V NSg NSg/V D+ NSg/V+ NSg/V/P
|
||||
> up to him with a funny look and says somebody wants to speak to him outside .
|
||||
# NSg/V/J/P P ISg P D/P NSg/J NSg/V+ V/C NPl/V NSg/I+ NPl/V P NSg/V P ISg+ NSg/V/J/P+ .
|
||||
> ‘ All right , ’ says Rosy , and begins to get up , and I pulled him down in his
|
||||
|
@ -4322,8 +4322,8 @@
|
|||
#
|
||||
> A succulent hash arrived , and Mr . Wolfshiem , forgetting the more sentimental
|
||||
# D/P NSg/J NSg/V V/J . V/C NSg+ . ? . NSg/V D NPr/I/V/J J
|
||||
> atmosphere of the old Metropole , began to eat with ferocious delicacy . His eyes ,
|
||||
# NSg P D+ NSg/J+ ? . V P NSg/V P J NSg+ . ISg/D$+ NPl/V+ .
|
||||
> atmosphere of the old Metropole , began to eat with ferocious delicacy . His eyes ,
|
||||
# NSg P D+ NSg/J+ ? . V P V P J NSg+ . ISg/D$+ NPl/V+ .
|
||||
> meanwhile , roved very slowly all around the room — he completed the arc by turning
|
||||
# NSg . V/J J/R R NSg/I/J/C J/P D+ NSg/V/J+ . NPr/ISg+ V/J D+ NPr/V/J+ NSg/J/P NSg/V
|
||||
> to inspect the people directly behind . I think that , except for my presence , he
|
||||
|
@ -4552,8 +4552,8 @@
|
|||
#
|
||||
> “ How’ve you been , anyhow ? ” demanded Tom of me . “ How’d you happen to come up this
|
||||
# . ? ISgPl+ NSg/V . J . . V/J NPr/V P NPr/ISg+ . . W? ISgPl+ V P NSg/V/P NSg/V/J/P I/Ddem+
|
||||
> far to eat ? ”
|
||||
# NSg/V/J P NSg/V . .
|
||||
> far to eat ? ”
|
||||
# NSg/V/J P V . .
|
||||
>
|
||||
#
|
||||
> “ I’ve been having lunch with Mr . Gatsby . ”
|
||||
|
@ -5502,8 +5502,8 @@
|
|||
# J/P NSg/V/J/P+ D/P+ NSg+ . D+ NPr/V+ V P . V/C D NSg$ NSg/V/J V/J
|
||||
> Gatsby’s drive with the raw material for his servants ’ dinner — I felt sure he
|
||||
# NSg$ NSg/V P D NSg/V/J NSg/V/J C/P ISg/D$+ NPl/V+ . NSg/V+ . ISg+ NSg/V/J J NPr/ISg+
|
||||
> wouldn’t eat a spoonful . A maid began opening the upper windows of his house ,
|
||||
# VX NSg/V D/P+ NSg+ . D/P+ NSg+ V NSg/V/J D NSg/J NPrPl/V P ISg/D$+ NPr/V+ .
|
||||
> wouldn’t eat a spoonful . A maid began opening the upper windows of his house ,
|
||||
# VX V D/P+ NSg+ . D/P+ NSg+ V NSg/V/J D NSg/J NPrPl/V P ISg/D$+ NPr/V+ .
|
||||
> appeared momentarily in each , and , leaning from the large central bay , spat
|
||||
# V/J R NPr/J/P D . V/C . NSg/V P D NSg/J NPr/J+ NSg/V/J+ . NSg/V
|
||||
> meditatively into the garden . It was time I went back . While the rain continued
|
||||
|
@ -6594,8 +6594,8 @@
|
|||
#
|
||||
> Tom appeared from his oblivion as we were sitting down to supper together . “ Do
|
||||
# NPr/V+ V/J P ISg/D$+ NSg/V+ NSg/R IPl+ NSg/V NSg/V/J NSg/V/J/P P NSg/V/J+ J . . NSg/VX
|
||||
> you mind if I eat with some people over here ? ” he said . “ A fellow’s getting off
|
||||
# ISgPl+ NSg/V+ NSg/C ISg+ NSg/V P I/J/R NSg/V+ NSg/V/J/P NSg/J/R . . NPr/ISg+ V/J+ . . D/P NSg$ NSg/V NSg/V/J/P
|
||||
> you mind if I eat with some people over here ? ” he said . “ A fellow’s getting off
|
||||
# ISgPl+ NSg/V+ NSg/C ISg+ V P I/J/R NSg/V+ NSg/V/J/P NSg/J/R . . NPr/ISg+ V/J+ . . D/P NSg$ NSg/V NSg/V/J/P
|
||||
> some funny stuff . ”
|
||||
# I/J/R+ NSg/J+ NSg/V+ . .
|
||||
>
|
||||
|
@ -9637,7 +9637,7 @@
|
|||
>
|
||||
#
|
||||
> “ I can’t describe to you how surprised I was to find out I loved her , old sport .
|
||||
# . ISg+ VX NSg/V P ISgPl+ NSg/C V/J ISg+ V P NSg/V NSg/V/J/R/P ISg+ V/J ISg/D$+ . NSg/J+ NSg/V+ .
|
||||
# . ISg+ VX V P ISgPl+ NSg/C V/J ISg+ V P NSg/V NSg/V/J/R/P ISg+ V/J ISg/D$+ . NSg/J+ NSg/V+ .
|
||||
> I even hoped for a while that she’d throw me over , but she didn’t , because she
|
||||
# ISg+ NSg/V/J V/J C/P D/P+ NSg/V/C/P+ NSg/I/C/Ddem+ W? NSg/V NPr/ISg+ NSg/V/J/P . NSg/C/P ISg+ V . C/P ISg+
|
||||
> was in love with me too . She thought I knew a lot because I knew different
|
||||
|
@ -10340,8 +10340,8 @@
|
|||
#
|
||||
> His movements — he was on foot all the time — were afterward traced to Port
|
||||
# ISg/D$+ NPl . NPr/ISg+ V J/P NSg/V+ NSg/I/J/C D+ NSg/V/J+ . NSg/V R/Am V/J P NPr/V/J
|
||||
> Roosevelt and then to Gad’s Hill , where he bought a sandwich that he didn’t eat ,
|
||||
# NPr+ V/C NSg/J/C P ? NPr/V+ . NSg/C NPr/ISg+ NSg/V D/P+ NSg/V/J+ NSg/I/C/Ddem+ NPr/ISg+ V NSg/V .
|
||||
> Roosevelt and then to Gad’s Hill , where he bought a sandwich that he didn’t eat ,
|
||||
# NPr+ V/C NSg/J/C P ? NPr/V+ . NSg/C NPr/ISg+ NSg/V D/P+ NSg/V/J+ NSg/I/C/Ddem+ NPr/ISg+ V V .
|
||||
> and a cup of coffee . He must have been tired and walking slowly , for he didn’t
|
||||
# V/C D/P NSg/V P NSg/V/J+ . NPr/ISg+ NSg/V NSg/VX NSg/V V/J V/C NSg/V/J R . C/P NPr/ISg+ V
|
||||
> reach Gad’s Hill until noon . Thus far there was no difficulty in accounting for
|
||||
|
@ -10718,10 +10718,10 @@
|
|||
# NPl/V+ NPr/ISg+ V P NSg/V NSg/I/J/C R NSg/P ISg/D$+ V/J NPr/V/J/Am NPr/V+ NSg/I/C/Ddem+ ISg+ V
|
||||
> difficulty in getting off his coat . He was on the point of collapse , so I took
|
||||
# NSg+ NPr/J/P NSg/V NSg/V/J/P ISg/D$+ NSg/V+ . NPr/ISg+ V J/P D NSg/V P NSg/V+ . NSg/I/J/C ISg+ V
|
||||
> him into the music room and made him sit down while I sent for something to eat .
|
||||
# ISg+ P D+ NSg/V/J+ NSg/V/J+ V/C NSg/V ISg+ NSg/V NSg/V/J/P NSg/V/C/P ISg+ NSg/V C/P NSg/I/V/J+ P+ NSg/V .
|
||||
> But he wouldn’t eat , and the glass of milk spilled from his trembling hand .
|
||||
# NSg/C/P NPr/ISg+ VX NSg/V . V/C D NPr/V P NSg/V+ V/J P ISg/D$+ V NSg/V+ .
|
||||
> him into the music room and made him sit down while I sent for something to eat .
|
||||
# ISg+ P D+ NSg/V/J+ NSg/V/J+ V/C NSg/V ISg+ NSg/V NSg/V/J/P NSg/V/C/P ISg+ NSg/V C/P NSg/I/V/J+ P+ V .
|
||||
> But he wouldn’t eat , and the glass of milk spilled from his trembling hand .
|
||||
# NSg/C/P NPr/ISg+ VX V . V/C D NPr/V P NSg/V+ V/J P ISg/D$+ V NSg/V+ .
|
||||
>
|
||||
#
|
||||
> “ I saw it in the Chicago newspaper , ” he said . “ It was all in the Chicago
|
||||
|
@ -11012,8 +11012,8 @@
|
|||
# V P NSg/V J/P V ISg/D$+ NSg/V/J+ C/P NPr/ISg+ V NSg/V I/J/R+ NSg/J+ NPl/V+ .
|
||||
> First time I saw him was when he come into Winebrenner’s poolroom at Forty - third
|
||||
# NSg/V/J NSg/V/J+ ISg+ NSg/V ISg+ V NSg/I/C NPr/ISg+ NSg/V/P P ? NSg NSg/P NSg/J . NSg/V/J
|
||||
> Street and asked for a job . He hadn’t eat anything for a couple of days . ‘ Come
|
||||
# NSg/V/J V/C V/J C/P D/P+ NPr/V+ . NPr/ISg+ V NSg/V NSg/I/V C/P D/P NSg/V/J P NPl+ . Unlintable NSg/V/P
|
||||
> Street and asked for a job . He hadn’t eat anything for a couple of days . ‘ Come
|
||||
# NSg/V/J V/C V/J C/P D/P+ NPr/V+ . NPr/ISg+ V V NSg/I/V C/P D/P NSg/V/J P NPl+ . Unlintable NSg/V/P
|
||||
> on have some lunch with me , ’ I sid . He ate more than four dollars ’ worth of food
|
||||
# J/P NSg/VX I/J/R NSg/V+ P NPr/ISg+ . . ISg+ NPr+ . NPr/ISg+ NSg/V NPr/I/V/J C/P NSg NPl+ . NSg/V/J P NSg+
|
||||
> in half an hour . ”
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue