OK, I've fixed up the insert-menu functions.
I've:
1) added GetWord(*pos) to lyxparagraph. This returns a pointer to a
text string of the "current" word. "cuurent" means that it looks for
the first !Isletter() to the left of pos, and continues
until the next !Isletter() to the right of that point. THis may be
past the current point. pos is modified to show where the word ends
2) LFUN_INSERT_INDEX now shares it's switch with LFUN_INSERT_INDEX_LAST.
3) INSERT_INDEX now gets the current word and places it into the new
inset before calling edit. As a result, that word shows up in the
entry line. I'd prefer it be hilited so that any typing kills it, but
we can't have everything, i suppose. The inset is put at the current
cursor position, as before. It could easily be set to go at the end of
the word, but I suppose someone might want a mid-word entry, so i left
the behavior unchanged.
4) INSERT_INDEX_LAST figures out the current/last word, and places an
index entry at the end of it with no dialog.
5) the different behavior comes from a single if/then in lyxfunc.C
6) When first created, the index from index_last doesn't show it's
contents when closed. Selecting it or reopening the file will cause it
to show. I have now idea why; i suppose i need to call a function to
prod it, but i have no idea which one.
7) I think this counts as a bug fix :)
8) menus.C has been modified so that the index_last appears in the
menu as "Index entry last word" with the "w" underlined.
9) M-i w has been added to menus.bind for "insert-index-last"
8) the patch follows
begin 640 hawkins-980923.patch.gz
M'XL("(J7"38"`VAA=VMI;G,[EMAIL PROTECTED](S+G!A=&-H`,4::W/:2/(S_(I>7.7P
M$B",7WB=Q/%CUU<D3F%G=Z\V*=<@!M!92)0>QEPV]]NONV=&$J_$V:NZ),18
M,]T]/?WN5EZ!$_@C=]SP@G'QE7EPA#.1V6,4BSB)\/FM>)`CUZ,MUX^]YBQH
MQP.O$<FA6<E!>.Y@]3&63['CB2AJ>%&LUV;">1!CF5_R%D^ATQC*D4B\.-*+
MP\!I]L2=_.-<,[QXTCNA["W^4#]Q918TW]_<75WW+F_5D^&AX?K+"^H)Z33L
M=F,6T.E1Z.2WZ3%T'V:N=,RC%LE$/RIL_3`5#TJ,_+#`1X,5.:&8%:_]H7SJ
M,L\#UQ\VI])/H@;]6CS]W_\4^^>W0(QWH9E$8=,+'.$1@\SV8Q0&04R/K7N[
MW=S`0_VQ&,HX=.6CZX\AQ*_(#7RP&WO%H3L:@96`-0,KQ`7(<6Y95NZQ8!\?
M'S5;^#F$UE&WW>FV]@I$HE:KK8,=-]M[T-[KMH\1K/CZ-5CV7JM^`#7Z.H37
MKXOPD<"A]-9R(2P5"H52*$<RE+XC+=>/9!B7EF!<AG%<M%AD?B/(D$%<TD6Z
M7\OMS]?V+319(K)$)D+#E0A:HEM9P4SZ<*VH`0(6C;))^&B89P[QTSC_ORMZ
MY?RM2MY?5?(^Y-DF+>>>4_W9+;#;W;V#;ONH0$1(S9O@,CWO*SUWCEG/^$5Z
MAH?!_2CQG?M8##Q)<2>*`:^06_SS$YS"YR(4/D-I$D\]H[LZ;/W3N_KP[O[7
MN[>]#_T>?*EKW,5L(GUE'K,`@]9F0@KWG^]_O7QW=G=]\R[%7S*<^M?/OGYW
M<?D'_KR][-\1@=HJ`659]6<1N.^=W=ZML#$+\0+?%(&B\KY__2Z/'TDZ'D.R
M-92>9!FO7TOC\_GT15S<(;&+R]Y&4E^1RQ921(8L8J]CDT7L==JI10BV(F`;
M$#%:[6#%%)22/KS[Y?[#V][9A[MZNI8I+EW+RY)4L5G`*^`LM-P:P5W=W-R]
MN[F[7%F^?W/]!N]3SWN^$TRGPA_&8AQARO@1OK_$P5;O[ZQZ?P>662?_7UK9
M$.@/"T2((L`FR`TQX'B/8P!^L<8QCDYS:O^\(M[SZSNET)Q--9MP=G8+QX=6
MJVVU]S8K9,D*MV+DC`-6,7KC@<$XW&XY>8R^G,#QD=4ZMNS#318%7S]#8YR]
M[]^\O[G=Y$UTCV@L0T#IKF`I#^W=_%+?A&7.Z5BHAIRILA=S5/E!EIIG8*NA
M\M]58^6_L'0!LM?\@C;"3K/=@K;=M3O=#B4L18Y,=@/PNL6VC^HV6BQ]'9'%
M1G&8.#%[email protected]#E7FT7@0I=K@EB+>98,/-=12^?*1<C*U7*W:!6:
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
*_"]L"V\K^2L`````
`
end
--