comparison src/if_perl.xs @ 925:3d842a9e2bae v7.0.051

updated for version 7.0-051
author vimboss
date Fri, 11 Aug 2006 20:55:20 +0000
parents a07007166d51
children 56609cdae088
comparison
equal deleted inserted replaced
924:ba9375e24d49 925:3d842a9e2bae
1066 for(i = 2; i < items; i++, lnum++) 1066 for(i = 2; i < items; i++, lnum++)
1067 { 1067 {
1068 line = SvPV(ST(i),PL_na); 1068 line = SvPV(ST(i),PL_na);
1069 if (lnum > 0 && lnum <= vimbuf->b_ml.ml_line_count && line != NULL) 1069 if (lnum > 0 && lnum <= vimbuf->b_ml.ml_line_count && line != NULL)
1070 { 1070 {
1071 #ifdef FEAT_AUTOCMD 1071 #ifdef FEAT_AUTOCMD
1072 aco_save_T aco; 1072 aco_save_T aco;
1073 1073
1074 /* set curwin/curbuf for "vimbuf" and save some things */ 1074 /* set curwin/curbuf for "vimbuf" and save some things */
1075 aucmd_prepbuf(&aco, vimbuf); 1075 aucmd_prepbuf(&aco, vimbuf);
1076 #else 1076 #else
1077 buf_T *save_curbuf = curbuf; 1077 buf_T *save_curbuf = curbuf;
1078 1078
1079 curbuf = vimbuf; 1079 curbuf = vimbuf;
1080 curwin->w_buffer = vimbuf; 1080 curwin->w_buffer = vimbuf;
1081 #endif 1081 #endif
1082 if (u_savesub(lnum) == OK) 1082 if (u_savesub(lnum) == OK)
1083 { 1083 {
1084 ml_replace(lnum, (char_u *)line, TRUE); 1084 ml_replace(lnum, (char_u *)line, TRUE);
1085 changed_bytes(lnum, 0); 1085 changed_bytes(lnum, 0);
1086 } 1086 }
1087 1087 #ifdef FEAT_AUTOCMD
1088 #ifdef FEAT_AUTOCMD
1089 /* restore curwin/curbuf and a few other things */ 1088 /* restore curwin/curbuf and a few other things */
1090 aucmd_restbuf(&aco); 1089 aucmd_restbuf(&aco);
1091 /* Careful: autocommands may have made "vimbuf" invalid! */ 1090 /* Careful: autocommands may have made "vimbuf" invalid! */
1092 #else 1091 #else
1093 curwin->w_buffer = save_curbuf; 1092 curwin->w_buffer = save_curbuf;
1094 curbuf = save_curbuf; 1093 curbuf = save_curbuf;
1095 #endif 1094 #endif
1096 } 1095 }
1097 } 1096 }
1098 } 1097 }
1099 1098
1100 void 1099 void
1128 for (i = 0; i < count; i++) 1127 for (i = 0; i < count; i++)
1129 { 1128 {
1130 if (lnum > 0 && lnum <= vimbuf->b_ml.ml_line_count) 1129 if (lnum > 0 && lnum <= vimbuf->b_ml.ml_line_count)
1131 { 1130 {
1132 buf_T *save_curbuf = curbuf; 1131 buf_T *save_curbuf = curbuf;
1133 #ifdef FEAT_AUTOCMD 1132 #ifdef FEAT_AUTOCMD
1134 aco_save_T aco; 1133 aco_save_T aco;
1135 1134
1136 /* set curwin/curbuf for "vimbuf" and save some things */ 1135 /* set curwin/curbuf for "vimbuf" and save some things */
1137 aucmd_prepbuf(&aco, vimbuf); 1136 aucmd_prepbuf(&aco, vimbuf);
1138 #else 1137 #else
1139 curbuf = vimbuf; 1138 curbuf = vimbuf;
1140 curwin->w_buffer = vimbuf; 1139 curwin->w_buffer = vimbuf;
1141 #endif 1140 #endif
1142 if (u_savedel(lnum, 1) == OK) 1141 if (u_savedel(lnum, 1) == OK)
1143 { 1142 {
1144 ml_delete(lnum, 0); 1143 ml_delete(lnum, 0);
1145 deleted_lines_mark(lnum, 1L); 1144 deleted_lines_mark(lnum, 1L);
1146 if (save_curbuf == curbuf) 1145 if (save_curbuf == curbuf)
1147 check_cursor(); 1146 check_cursor();
1148 } 1147 }
1149 #ifdef FEAT_AUTOCMD 1148 #ifdef FEAT_AUTOCMD
1150 /* restore curwin/curbuf and a few other things */ 1149 /* restore curwin/curbuf and a few other things */
1151 aucmd_restbuf(&aco); 1150 aucmd_restbuf(&aco);
1152 /* Careful: autocommands may have made "vimbuf" invalid! */ 1151 /* Careful: autocommands may have made "vimbuf" invalid! */
1153 #else 1152 #else
1154 curwin->w_buffer = save_curbuf; 1153 curwin->w_buffer = save_curbuf;
1155 curbuf = save_curbuf; 1154 curbuf = save_curbuf;
1156 #endif 1155 #endif
1157 update_curbuf(VALID); 1156 update_curbuf(VALID);
1158 } 1157 }
1159 } 1158 }
1160 } 1159 }
1161 } 1160 }
1178 for (i = 2; i < items; i++, lnum++) 1177 for (i = 2; i < items; i++, lnum++)
1179 { 1178 {
1180 line = SvPV(ST(i),PL_na); 1179 line = SvPV(ST(i),PL_na);
1181 if (lnum >= 0 && lnum <= vimbuf->b_ml.ml_line_count && line != NULL) 1180 if (lnum >= 0 && lnum <= vimbuf->b_ml.ml_line_count && line != NULL)
1182 { 1181 {
1183 #ifdef FEAT_AUTOCMD 1182 #ifdef FEAT_AUTOCMD
1184 aco_save_T aco; 1183 aco_save_T aco;
1185 1184
1186 /* set curwin/curbuf for "vimbuf" and save some things */ 1185 /* set curwin/curbuf for "vimbuf" and save some things */
1187 aucmd_prepbuf(&aco, vimbuf); 1186 aucmd_prepbuf(&aco, vimbuf);
1188 #else 1187 #else
1189 buf_T *save_curbuf = curbuf; 1188 buf_T *save_curbuf = curbuf;
1190 1189
1191 curbuf = vimbuf; 1190 curbuf = vimbuf;
1192 curwin->w_buffer = vimbuf; 1191 curwin->w_buffer = vimbuf;
1193 #endif 1192 #endif
1194 if (u_inssub(lnum + 1) == OK) 1193 if (u_inssub(lnum + 1) == OK)
1195 { 1194 {
1196 ml_append(lnum, (char_u *)line, (colnr_T)0, FALSE); 1195 ml_append(lnum, (char_u *)line, (colnr_T)0, FALSE);
1197 appended_lines_mark(lnum, 1L); 1196 appended_lines_mark(lnum, 1L);
1198 } 1197 }
1199 1198 #ifdef FEAT_AUTOCMD
1200 #ifdef FEAT_AUTOCMD
1201 /* restore curwin/curbuf and a few other things */ 1199 /* restore curwin/curbuf and a few other things */
1202 aucmd_restbuf(&aco); 1200 aucmd_restbuf(&aco);
1203 /* Careful: autocommands may have made "vimbuf" invalid! */ 1201 /* Careful: autocommands may have made "vimbuf" invalid! */
1204 #else 1202 #else
1205 curwin->w_buffer = save_curbuf; 1203 curwin->w_buffer = save_curbuf;
1206 curbuf = save_curbuf; 1204 curbuf = save_curbuf;
1207 #endif 1205 #endif
1208 update_curbuf(VALID); 1206 update_curbuf(VALID);
1209 } 1207 }
1210 } 1208 }
1211 } 1209 }
1212 1210