Lines Matching refs:stp
214 static int stp_sal_score(suggest_T *stp, suginfo_T *su, slang_T *slang, char_u *badsound);
225 static void rescore_one(suginfo_T *su, suggest_T *stp);
467 suggest_T *stp; in spell_suggest() local
586 stp = &SUG(sug.su_ga, i); in spell_suggest()
590 vim_strncpy(wcopy, stp->st_word, MAXWLEN); in spell_suggest()
591 if (sug.su_badlen > stp->st_orglen) in spell_suggest()
592 vim_strncpy(wcopy + stp->st_wordlen, in spell_suggest()
593 sug.su_badptr + stp->st_orglen, in spell_suggest()
594 sug.su_badlen - stp->st_orglen); in spell_suggest()
606 if (sug.su_badlen < stp->st_orglen) in spell_suggest()
609 stp->st_orglen, sug.su_badptr); in spell_suggest()
618 stp->st_salscore ? "s " : "", in spell_suggest()
619 stp->st_score, stp->st_altscore); in spell_suggest()
622 stp->st_score); in spell_suggest()
653 stp = &SUG(sug.su_ga, selected - 1); in spell_suggest()
654 if (sug.su_badlen > stp->st_orglen) in spell_suggest()
659 vim_snprintf((char *)IObuff, IOSIZE, "%s%.*s", stp->st_word, in spell_suggest()
660 sug.su_badlen - stp->st_orglen, in spell_suggest()
661 sug.su_badptr + stp->st_orglen); in spell_suggest()
667 repl_from = vim_strnsave(sug.su_badptr, stp->st_orglen); in spell_suggest()
668 repl_to = vim_strsave(stp->st_word); in spell_suggest()
672 p = alloc(STRLEN(line) - stp->st_orglen + stp->st_wordlen + 1); in spell_suggest()
677 STRCPY(p + c, stp->st_word); in spell_suggest()
678 STRCAT(p, sug.su_badptr + stp->st_orglen); in spell_suggest()
684 stp->st_wordlen + sug.su_badlen - stp->st_orglen); in spell_suggest()
717 suggest_T *stp; in spell_suggest_list() local
728 stp = &SUG(sug.su_ga, i); in spell_suggest_list()
732 wcopy = alloc(stp->st_wordlen in spell_suggest_list()
733 + (unsigned)STRLEN(sug.su_badptr + stp->st_orglen) + 1); in spell_suggest_list()
736 STRCPY(wcopy, stp->st_word); in spell_suggest_list()
737 STRCPY(wcopy + stp->st_wordlen, sug.su_badptr + stp->st_orglen); in spell_suggest_list()
2831 suggest_T *stp; in score_comp_sal() local
2850 stp = &SUG(su->su_ga, i); in score_comp_sal()
2854 score = stp_sal_score(stp, su, lp->lp_slang, badsound); in score_comp_sal()
2859 sstp->st_word = vim_strsave(stp->st_word); in score_comp_sal()
2862 sstp->st_wordlen = stp->st_wordlen; in score_comp_sal()
2865 sstp->st_orglen = stp->st_orglen; in score_comp_sal()
2887 suggest_T *stp; in score_combine() local
2906 stp = &SUG(su->su_ga, i); in score_combine()
2907 stp->st_altscore = stp_sal_score(stp, su, slang, badsound); in score_combine()
2908 if (stp->st_altscore == SCORE_MAXMAX) in score_combine()
2909 stp->st_score = (stp->st_score * 3 + SCORE_BIG) / 4; in score_combine()
2911 stp->st_score = (stp->st_score * 3 in score_combine()
2912 + stp->st_altscore) / 4; in score_combine()
2913 stp->st_salscore = FALSE; in score_combine()
2929 stp = &SUG(su->su_sga, i); in score_combine()
2930 stp->st_altscore = spell_edit_score(slang, in score_combine()
2931 su->su_badword, stp->st_word); in score_combine()
2932 if (stp->st_score == SCORE_MAXMAX) in score_combine()
2933 stp->st_score = (SCORE_BIG * 7 + stp->st_altscore) / 8; in score_combine()
2935 stp->st_score = (stp->st_score * 7 + stp->st_altscore) / 8; in score_combine()
2936 stp->st_salscore = TRUE; in score_combine()
2950 stp = &SUG(ga, 0); in score_combine()
2963 if (STRCMP(stp[j].st_word, p) == 0) in score_combine()
2966 stp[ga.ga_len++] = SUG(*gap, i); in score_combine()
2980 vim_free(stp[i].st_word); in score_combine()
2993 suggest_T *stp, in stp_sal_score() argument
3007 lendiff = (int)(su->su_badlen - stp->st_orglen); in stp_sal_score()
3014 su->su_badptr, stp->st_orglen, fword, MAXWLEN); in stp_sal_score()
3021 && *skiptowhite(stp->st_word) == NUL) in stp_sal_score()
3029 if (lendiff > 0 && stp->st_wordlen + lendiff < MAXWLEN) in stp_sal_score()
3033 STRCPY(goodword, stp->st_word); in stp_sal_score()
3034 vim_strncpy(goodword + stp->st_wordlen, in stp_sal_score()
3039 pgood = stp->st_word; in stp_sal_score()
3490 suggest_T *stp; in add_suggestion() local
3528 stp = &SUG(*gap, 0); in add_suggestion()
3529 for (i = gap->ga_len; --i >= 0; ++stp) in add_suggestion()
3530 if (stp->st_wordlen == goodlen in add_suggestion()
3531 && stp->st_orglen == badlen in add_suggestion()
3532 && STRNCMP(stp->st_word, goodword, goodlen) == 0) in add_suggestion()
3535 if (stp->st_slang == NULL) in add_suggestion()
3536 stp->st_slang = slang; in add_suggestion()
3542 if (stp->st_had_bonus != had_bonus) in add_suggestion()
3551 rescore_one(su, stp); in add_suggestion()
3554 new_sug.st_word = stp->st_word; in add_suggestion()
3555 new_sug.st_wordlen = stp->st_wordlen; in add_suggestion()
3556 new_sug.st_slang = stp->st_slang; in add_suggestion()
3562 if (stp->st_score > new_sug.st_score) in add_suggestion()
3564 stp->st_score = new_sug.st_score; in add_suggestion()
3565 stp->st_altscore = new_sug.st_altscore; in add_suggestion()
3566 stp->st_had_bonus = new_sug.st_had_bonus; in add_suggestion()
3575 stp = &SUG(*gap, gap->ga_len); in add_suggestion()
3576 stp->st_word = vim_strnsave(goodword, goodlen); in add_suggestion()
3577 if (stp->st_word != NULL) in add_suggestion()
3579 stp->st_wordlen = goodlen; in add_suggestion()
3580 stp->st_score = score; in add_suggestion()
3581 stp->st_altscore = altscore; in add_suggestion()
3582 stp->st_had_bonus = had_bonus; in add_suggestion()
3583 stp->st_orglen = badlen; in add_suggestion()
3584 stp->st_slang = slang; in add_suggestion()
3611 suggest_T *stp; in check_suggestions() local
3619 stp = &SUG(*gap, 0); in check_suggestions()
3623 vim_strncpy(longword, stp[i].st_word, MAXWLEN); in check_suggestions()
3624 len = stp[i].st_wordlen; in check_suggestions()
3625 vim_strncpy(longword + len, su->su_badptr + stp[i].st_orglen, in check_suggestions()
3632 vim_free(stp[i].st_word); in check_suggestions()
3635 mch_memmove(stp + i, stp + i + 1, in check_suggestions()
3682 rescore_one(suginfo_T *su, suggest_T *stp) in rescore_one() argument
3684 slang_T *slang = stp->st_slang; in rescore_one()
3690 if (slang != NULL && slang->sl_sal.ga_len > 0 && !stp->st_had_bonus) in rescore_one()
3700 stp->st_altscore = stp_sal_score(stp, su, slang, p); in rescore_one()
3701 if (stp->st_altscore == SCORE_MAXMAX) in rescore_one()
3702 stp->st_altscore = SCORE_BIG; in rescore_one()
3703 stp->st_score = RESCORE(stp->st_score, stp->st_altscore); in rescore_one()
3704 stp->st_had_bonus = TRUE; in rescore_one()
3753 suggest_T *stp = &SUG(*gap, 0); in cleanup_suggestions() local
3756 vim_free(stp[i].st_word); in cleanup_suggestions()
3759 return stp[keep - 1].st_score; in cleanup_suggestions()