Revision: 9311 https://osdn.net/projects/ttssh2/scm/svn/commits/9311 Author: zmatsuo Date: 2021-06-19 01:05:10 +0900 (Sat, 19 Jun 2021) Log Message: ----------- ANSI送信関数を削除 - 出力をすべて Unicode に置き換えて、使用されなくなったので削除 - CommTextOut() - CommTextEcho() - 未使用となる変数を削除 Modified Paths: -------------- trunk/teraterm/common/ttcommon.h trunk/teraterm/common/tttypes.h trunk/teraterm/teraterm/commlib.c trunk/teraterm/teraterm/vtterm.c trunk/teraterm/teraterm/vtwin.cpp trunk/teraterm/ttpcmn/ttcmn.c trunk/teraterm/ttpcmn/ttpcmn.def -------------- next part -------------- Modified: trunk/teraterm/common/ttcommon.h =================================================================== --- trunk/teraterm/common/ttcommon.h 2021-06-18 16:05:01 UTC (rev 9310) +++ trunk/teraterm/common/ttcommon.h 2021-06-18 16:05:10 UTC (rev 9311) @@ -69,10 +69,8 @@ DllExport int PASCAL CommRawOut(PComVar cv, PCHAR B, int C); DllExport int PASCAL CommBinaryOut(PComVar cv, PCHAR B, int C); DllExport int PASCAL CommBinaryBuffOut(PComVar cv, PCHAR B, int C); -DllExport int PASCAL CommTextOut(PComVar cv, PCHAR B, int C); DllExport int PASCAL CommTextOutW(PComVar cv, const wchar_t *B, int C); DllExport int PASCAL CommBinaryEcho(PComVar cv, PCHAR B, int C); -DllExport int PASCAL CommTextEcho(PComVar cv, PCHAR B, int C); DllExport int PASCAL CommTextEchoW(PComVar cv, const wchar_t *B, int C); DllExport void PASCAL CreateNotifyIcon(PComVar cv); Modified: trunk/teraterm/common/tttypes.h =================================================================== --- trunk/teraterm/common/tttypes.h 2021-06-18 16:05:01 UTC (rev 9310) +++ trunk/teraterm/common/tttypes.h 2021-06-18 16:05:10 UTC (rev 9311) @@ -891,12 +891,12 @@ HANDLE ComID; BOOL CanSend, RRQ; - BOOL SendKanjiFlag; - BOOL EchoKanjiFlag; + BOOL reserve_SendKanjiFlag; + BOOL reserve_EchoKanjiFlag; int SendCode; int EchoCode; - BYTE SendKanjiFirst; - BYTE EchoKanjiFirst; + BYTE reserve_SendKanjiFirst; + BYTE reserve_EchoKanjiFirst; /* from VTSet */ WORD Language; @@ -909,7 +909,7 @@ WORD KanjiIn; WORD KanjiOut; WORD RussHost; - WORD RussClient; + WORD reserve_RussClient; /* from PortSet */ WORD DelayPerChar; WORD DelayPerLine; Modified: trunk/teraterm/teraterm/commlib.c =================================================================== --- trunk/teraterm/teraterm/commlib.c 2021-06-18 16:05:01 UTC (rev 9310) +++ trunk/teraterm/teraterm/commlib.c 2021-06-18 16:05:10 UTC (rev 9311) @@ -307,9 +307,7 @@ cv->ComID = INVALID_HANDLE_VALUE; cv->CanSend = TRUE; cv->RRQ = FALSE; - cv->SendKanjiFlag = FALSE; cv->SendCode = IdASCII; - cv->EchoKanjiFlag = FALSE; cv->EchoCode = IdASCII; cv->Language = ts->Language; cv->CRSend = ts->CRSend; @@ -320,7 +318,6 @@ cv->KanjiIn = ts->KanjiIn; cv->KanjiOut = ts->KanjiOut; cv->RussHost = ts->RussHost; - cv->RussClient = ts->RussClient; cv->DelayFlag = TRUE; cv->DelayPerChar = ts->DelayPerChar; cv->DelayPerLine = ts->DelayPerLine; Modified: trunk/teraterm/teraterm/vtterm.c =================================================================== --- trunk/teraterm/teraterm/vtterm.c 2021-06-18 16:05:01 UTC (rev 9310) +++ trunk/teraterm/teraterm/vtterm.c 2021-06-18 16:05:10 UTC (rev 9311) @@ -388,9 +388,7 @@ Glr[0] = 0; Glr[1] = 0; cv.SendCode = IdASCII; - cv.SendKanjiFlag = FALSE; cv.EchoCode = IdASCII; - cv.EchoKanjiFlag = FALSE; } /* Kanji flag */ KanjiIn = FALSE; Modified: trunk/teraterm/teraterm/vtwin.cpp =================================================================== --- trunk/teraterm/teraterm/vtwin.cpp 2021-06-18 16:05:01 UTC (rev 9310) +++ trunk/teraterm/teraterm/vtwin.cpp 2021-06-18 16:05:10 UTC (rev 9311) @@ -1239,7 +1239,6 @@ // for russian mode cv.RussHost = ts.RussHost; - cv.RussClient = ts.RussClient; if (cv.Ready) { if (cv.TelFlag && (ts.TelEcho>0)) { Modified: trunk/teraterm/ttpcmn/ttcmn.c =================================================================== --- trunk/teraterm/ttpcmn/ttcmn.c 2021-06-18 16:05:01 UTC (rev 9310) +++ trunk/teraterm/ttpcmn/ttcmn.c 2021-06-18 16:05:10 UTC (rev 9311) @@ -918,295 +918,6 @@ return i; } -// \x93\xE0\x95\x94\x83R\x81[\x83h(CodePage)\x82\xF0UTF-8\x82֏o\x97͂\xB7\x82\xE9 -static int OutputTextUTF8(WORD K, char *TempStr, PComVar cv) -{ - int CodePage = *cv->CodePage; - unsigned int code; - int outlen; - - code = MBCP_UTF32(K, CodePage); - if (code == 0) { - // \x95ϊ\xB7\x8E\xB8\x94s - code = 0xfffd; // U+FFFD: Replacement Character - } - outlen = UTF32ToUTF8(code, TempStr, 4); - return outlen; -} - -static int __isleadbyte_l(int d, PComVar cv) -{ - int CodePage = *cv->CodePage; - return IsDBCSLeadByteEx(CodePage, d); -} - -// -// MBCS\x82\xA9\x82\xE7\x8Ae\x8E튿\x8E\x9A\x83R\x81[\x83h\x82֕ϊ\xB7\x82\xB5\x82ďo\x97͂\xB7\x82\xE9\x81B -// -static int TextOutMBCS(PComVar cv, PCHAR B, int C) -{ - int i, TempLen; - WORD K; - char TempStr[12]; - BYTE d; - BOOL Full; - int SendCodeNew; // \x91\x97\x90M\x83R\x81[\x83h - BOOL KanjiFlagNew; // TRUE=\x8E\x9F\x82̕\xB6\x8E\x9A\x82ƍ\x87\x82킹\x82Ċ\xBF\x8E\x9A\x82Ƃ\xB7\x82\xE9 - - Full = FALSE; - i = 0; - while (! Full && (i < C)) { - TempLen = 0; - d = (BYTE)B[i]; - SendCodeNew = cv->SendCode; - KanjiFlagNew = FALSE; - - if (cv->SendKanjiFlag) { - SendCodeNew = IdKanji; - - K = (cv->SendKanjiFirst << 8) + d; - - // UTF-8\x82ւ̕ϊ\xB7\x82\xF0\x8Ds\x82\xA4\x81B1\x81`3\x83o\x83C\x83g\x82܂ł̑Ή\x9E\x82Ȃ̂Œ\x8D\x88ӁB - if (cv->KanjiCodeSend == IdUTF8 || cv->Language == IdUtf8) { - TempLen += OutputTextUTF8(K, TempStr, cv); - } - else { - switch (cv->Language) { - case IdJapanese: - switch (cv->KanjiCodeSend) { - case IdEUC: - K = SJIS2EUC(K); - break; - case IdJIS: - K = SJIS2JIS(K); - if ((cv->SendCode==IdKatakana) && - (cv->JIS7KatakanaSend==1)) { - TempStr[TempLen++] = SI; - } - break; - case IdSJIS: - /* nothing to do */ - break; - } - break; - case IdKorean: - break; - } - TempStr[TempLen++] = HIBYTE(K); - TempStr[TempLen++] = LOBYTE(K); - } - } - else if (__isleadbyte_l(d, cv)) { - KanjiFlagNew = TRUE; - cv->SendKanjiFirst = d; - SendCodeNew = IdKanji; - - if (cv->Language == IdJapanese) { - if ((cv->SendCode!=IdKanji) && (cv->KanjiCodeSend==IdJIS)) { - TempStr[0] = 0x1B; - TempStr[1] = '$'; - if (cv->KanjiIn == IdKanjiInB) { - TempStr[2] = 'B'; - } - else { - TempStr[2] = '@'; - } - TempLen = 3; - } - } - } - else { - if (cv->Language == IdJapanese) { - if ((cv->SendCode==IdKanji) && (cv->KanjiCodeSend==IdJIS)) { - TempStr[0] = 0x1B; - TempStr[1] = '('; - switch (cv->KanjiOut) { - case IdKanjiOutJ: - TempStr[2] = 'J'; - break; - case IdKanjiOutH: - TempStr[2] = 'H'; - break; - default: - TempStr[2] = 'B'; - } - TempLen = 3; - } - - if ((0xa0<d) && (d<0xe0)) { - SendCodeNew = IdKatakana; - if ((cv->SendCode!=IdKatakana) && - (cv->KanjiCodeSend==IdJIS) && - (cv->JIS7KatakanaSend==1)) { - TempStr[TempLen++] = SO; - } - } - else { - SendCodeNew = IdASCII; - if ((cv->SendCode==IdKatakana) && - (cv->KanjiCodeSend==IdJIS) && - (cv->JIS7KatakanaSend==1)) { - TempStr[TempLen++] = SI; - } - } - } - - if (d==CR) { - TempStr[TempLen++] = 0x0d; - if (cv->CRSend==IdCRLF) { - TempStr[TempLen++] = 0x0a; - } - else if ((cv->CRSend==IdCR) && - cv->TelFlag && ! cv->TelBinSend) { - TempStr[TempLen++] = 0; - } - else if (cv->CRSend == IdLF) { - TempStr[TempLen-1] = 0x0a; - } - if (cv->TelLineMode) { - cv->Flush = TRUE; - } - } - else if (d==BS) { - if (cv->TelLineMode) { - if (cv->FlushLen < cv->LineModeBuffCount) { - cv->LineModeBuffCount--; - } - } - else { - TempStr[TempLen++] = d; - } - } - else if (d==0x15) { // Ctrl-U - if (cv->TelLineMode) { - cv->LineModeBuffCount = cv->FlushLen; - } - else { - TempStr[TempLen++] = d; - } - } - else if ((d>=0x80) && (cv->KanjiCodeSend==IdUTF8 || cv->Language==IdUtf8)) { - TempLen += OutputTextUTF8((WORD)d, TempStr, cv); - } - else if ((d>=0xa1) && (d<=0xe0) && (cv->Language == IdJapanese)) { - /* Katakana */ - if (cv->KanjiCodeSend==IdEUC) { - TempStr[TempLen++] = (char)SS2; - } - if ((cv->KanjiCodeSend==IdJIS) && - (cv->JIS7KatakanaSend==1)) { - TempStr[TempLen++] = d & 0x7f; - } - else { - TempStr[TempLen++] = d; - } - } - else { - TempStr[TempLen++] = d; - if (cv->TelFlag && (d==0xff)) { - TempStr[TempLen++] = (char)0xff; - } - } - } // if (cv->SendKanjiFlag) else if ... else ... end - - if (WriteOutBuff(cv, TempStr, TempLen)) { - i++; // 1\x95\xB6\x8E\x9A\x8F\x88\x97\x9D\x82\xB5\x82\xBD - // \x8A\xBF\x8E\x9A\x82̏\xF3\x91Ԃ\xF0\x95ۑ\xB6\x82\xB7\x82\xE9 - cv->SendCode = SendCodeNew; - cv->SendKanjiFlag = KanjiFlagNew; - } else { - Full = TRUE; - } - - } // end of "while {}" - - return i; -} - -int WINAPI CommTextOut(PComVar cv, PCHAR B, int C) -{ - int i, TempLen; - char TempStr[12]; - BYTE d; - BOOL Full; - - if (! cv->Ready ) { - return C; - } - - switch (cv->Language) { - case IdUtf8: - case IdJapanese: - case IdKorean: - return TextOutMBCS(cv, B, C); - break; - } - - Full = FALSE; - i = 0; - while (! Full && (i < C)) { - TempLen = 0; - d = (BYTE)B[i]; - - switch (d) { - case CR: - TempStr[TempLen] = 0x0d; - TempLen++; - if (cv->CRSend==IdCRLF) { - TempStr[TempLen++] = 0x0a; - } - else if (cv->CRSend==IdCR && cv->TelFlag && ! cv->TelBinSend) { - TempStr[TempLen++] = 0; - } - else if (cv->CRSend == IdLF) { - TempStr[TempLen-1] = 0x0a; - } - if (cv->TelLineMode) { - cv->Flush = TRUE; - } - break; - - case BS: - if (cv->TelLineMode) { - if (cv->FlushLen < cv->LineModeBuffCount) { - cv->LineModeBuffCount--; - } - } - else { - TempStr[TempLen++] = d; - } - break; - - case 0x15: // Ctrl-U - if (cv->TelLineMode) { - cv->LineModeBuffCount = cv->FlushLen; - } - else { - TempStr[TempLen++] = d; - } - break; - - default: - if ((cv->Language==IdRussian) && (d>=128)) { - d = RussConv(cv->RussClient, cv->RussHost, d); - } - TempStr[TempLen++] = d; - if (cv->TelFlag && (d==0xff)) { - TempStr[TempLen++] = (char)0xff; - } - } - - if (WriteOutBuff(cv, TempStr, TempLen)) { - i++; // 1\x95\xB6\x8E\x9A\x8F\x88\x97\x9D\x82\xB5\x82\xBD - } else { - Full = TRUE; - } - - } // end of while {} - - return i; -} - /** * @retval true \x93\xFA\x96{\x8C\xEA\x82̔\xBC\x8Ap\x83J\x83^\x83J\x83i * @retval false \x82\xBB\x82̑\xBC @@ -1631,246 +1342,6 @@ return i; } -static int WINAPI TextEchoMBCS(PComVar cv, PCHAR B, int C) -{ - int i, TempLen; - WORD K; - char TempStr[12]; - int EchoCodeNew; - BYTE d; - BOOL Full, KanjiFlagNew; - - Full = FALSE; - i = 0; - while (! Full && (i < C)) { - TempLen = 0; - d = (BYTE)B[i]; - EchoCodeNew = cv->EchoCode; - KanjiFlagNew = FALSE; - - if (cv->EchoKanjiFlag) { - EchoCodeNew = IdKanji; - - K = (cv->EchoKanjiFirst << 8) + d; - - // UTF-8\x82ւ̕ϊ\xB7\x82\xF0\x8Ds\x82\xA4\x81B1\x81`3\x83o\x83C\x83g\x82܂ł̑Ή\x9E\x82Ȃ̂Œ\x8D\x88ӁB - if (cv->KanjiCodeEcho == IdUTF8 || cv->Language==IdUtf8) { - TempLen += OutputTextUTF8(K, TempStr, cv); - } - else { - switch (cv->Language) { - case IdJapanese: - switch (cv->KanjiCodeEcho) { - case IdEUC: - K = SJIS2EUC(K); - break; - case IdJIS: - K = SJIS2JIS(K); - if ((cv->EchoCode==IdKatakana) && - (cv->JIS7KatakanaEcho==1)) { - TempStr[TempLen++] = SI; - } - break; - case IdSJIS: - /* nothing to do */ - break; - } - break; - case IdKorean: - break; - } - TempStr[TempLen++] = HIBYTE(K); - TempStr[TempLen++] = LOBYTE(K); - } - } - else if (__isleadbyte_l(d, cv)) { - KanjiFlagNew = TRUE; - cv->EchoKanjiFirst = d; - EchoCodeNew = IdKanji; - - if (cv->Language == IdJapanese) { - if ((cv->EchoCode!=IdKanji) && (cv->KanjiCodeEcho==IdJIS)) { - TempStr[0] = 0x1B; - TempStr[1] = '$'; - if (cv->KanjiIn == IdKanjiInB) { - TempStr[2] = 'B'; - } - else { - TempStr[2] = '@'; - } - TempLen = 3; - } - } - } - else { - if (cv->Language == IdJapanese) { - if ((cv->EchoCode==IdKanji) && (cv->KanjiCodeEcho==IdJIS)) { - TempStr[0] = 0x1B; - TempStr[1] = '('; - switch (cv->KanjiOut) { - case IdKanjiOutJ: - TempStr[2] = 'J'; - break; - case IdKanjiOutH: - TempStr[2] = 'H'; - break; - default: - TempStr[2] = 'B'; - } - TempLen = 3; - } - - if ((0xa0<d) && (d<0xe0)) { - EchoCodeNew = IdKatakana; - if ((cv->EchoCode!=IdKatakana) && - (cv->KanjiCodeEcho==IdJIS) && - (cv->JIS7KatakanaEcho==1)) { - TempStr[TempLen++] = SO; - } - } - else { - EchoCodeNew = IdASCII; - if ((cv->EchoCode==IdKatakana) && - (cv->KanjiCodeEcho==IdJIS) && - (cv->JIS7KatakanaEcho==1)) { - TempStr[TempLen++] = SI; - } - } - } - - if (d==CR) { - TempStr[TempLen++] = 0x0d; - if (cv->CRSend==IdCRLF) { - TempStr[TempLen++] = 0x0a; - } - else if ((cv->CRSend==IdCR) && - cv->TelFlag && ! cv->TelBinSend) { - TempStr[TempLen++] = 0; - } - else if (cv->CRSend == IdLF) { - TempStr[TempLen-1] = 0x0a; - } - } - else if (d==0x15) { // Ctrl-U - if (cv->TelLineMode) { - // Move to top of line (CHA "\033[G") and erase line (EL "\033[K") - strncpy_s(TempStr, sizeof(TempStr), "\033[G\033[K", _TRUNCATE); - TempLen += 6; - } - else { - TempStr[TempLen++] = d; - } - } - else if ((d>=0x80) && (cv->KanjiCodeEcho==IdUTF8 || cv->Language==IdUtf8)) { - TempLen += OutputTextUTF8((WORD)d, TempStr, cv); - } - else if ((d>=0xa1) && (d<=0xe0) && (cv->Language == IdJapanese)) { - /* Katakana */ - if (cv->KanjiCodeEcho==IdEUC) { - TempStr[TempLen++] = (char)SS2; - } - if ((cv->KanjiCodeEcho==IdJIS) && - (cv->JIS7KatakanaEcho==1)) { - TempStr[TempLen++] = d & 0x7f; - } - else { - TempStr[TempLen++] = d; - } - } - else { - TempStr[TempLen++] = d; - if (cv->TelFlag && (d==0xff)) { - TempStr[TempLen++] = (char)0xff; - } - } - } // if (cv->EchoKanjiFlag) else if ... else ... end - - if (WriteInBuff(cv, TempStr, TempLen)) { - i++; - cv->EchoCode = EchoCodeNew; - cv->EchoKanjiFlag = KanjiFlagNew; - } else { - Full = FALSE; - } - - } // end of "while {}" - - return i; -} - -int WINAPI CommTextEcho(PComVar cv, PCHAR B, int C) -{ - int i, TempLen; - char TempStr[11]; - BYTE d; - BOOL Full; - - if ( ! cv->Ready ) { - return C; - } - - PackInBuff(cv); - - switch (cv->Language) { - case IdUtf8: - case IdJapanese: - case IdKorean: - return TextEchoMBCS(cv,B,C); - break; - } - - Full = FALSE; - i = 0; - while (! Full && (i < C)) { - TempLen = 0; - d = (BYTE)B[i]; - - switch (d) { - case CR: - TempStr[TempLen] = 0x0d; - TempLen++; - if (cv->CRSend==IdCRLF) { - TempStr[TempLen++] = 0x0a; - } - else if (cv->CRSend==IdCR && cv->TelFlag && ! cv->TelBinSend) { - TempStr[TempLen++] = 0; - } - else if (cv->CRSend == IdLF) { - TempStr[TempLen-1] = 0x0a; - } - break; - - case 0x15: // Ctrl-U - if (cv->TelLineMode) { - // Move to top of line (CHA "\033[G") and erase line (EL "\033[K") - strncpy_s(TempStr, sizeof(TempStr), "\033[G\033[K", _TRUNCATE); - TempLen += 6; - } - else { - TempStr[TempLen++] = d; - } - break; - - default: - if ((cv->Language==IdRussian) && (d>=128)) { - d = RussConv(cv->RussClient,cv->RussHost,d); - } - TempStr[TempLen++] = d; - if (cv->TelFlag && (d==0xff)) { - TempStr[TempLen++] = (char)0xff; - } - } - - if(WriteInBuff(cv, TempStr,TempLen)) { - i++; - } else { - Full = TRUE; - } - } // end of while {} - - return i; -} - /* * @return \x83G\x83\x89\x81[\x82\xAA\x97L\x82\xE9\x8Fꍇ FALSE * @param[in] BOOL first_instance Modified: trunk/teraterm/ttpcmn/ttpcmn.def =================================================================== --- trunk/teraterm/ttpcmn/ttpcmn.def 2021-06-18 16:05:01 UTC (rev 9310) +++ trunk/teraterm/ttpcmn/ttpcmn.def 2021-06-18 16:05:10 UTC (rev 9311) @@ -18,10 +18,8 @@ CommRawOut @23 CommBinaryOut @24 CommBinaryBuffOut @52 - CommTextOut @25 CommTextOutW CommBinaryEcho @26 - CommTextEcho @27 CommTextEchoW DetectComPorts @42 GetDefaultFName @47