From c3f876c416c3ffd8c718d340b2e83497e9d0a7a6 Mon Sep 17 00:00:00 2001 From: Takashi Sawanaka Date: Sun, 18 Apr 2021 15:53:46 +0900 Subject: [PATCH] Implement GitHub #135: [Feature Request] Selection Count on Status Bar --- Externals/crystaledit/editlib/ccrystaleditview.cpp | 12 +- Externals/crystaledit/editlib/ccrystaltextview.h | 2 + .../crystaledit/editlib/ccrystaltextview2.cpp | 36 ++--- Src/Merge.rc | 1 + Src/MergeEditStatus.h | 2 +- Src/MergeEditView.cpp | 34 ++++- Src/MergeEditView.h | 5 +- Src/MergeStatusBar.cpp | 16 ++- Src/MergeStatusBar.h | 4 +- Src/resource.h | 1 + Translations/TranslationsStatus.html | 150 ++++++++++----------- Translations/TranslationsStatus.md | 74 +++++----- Translations/TranslationsStatus.xml | 148 ++++++++++---------- Translations/WinMerge/Arabic.po | 4 + Translations/WinMerge/Basque.po | 4 + Translations/WinMerge/Brazilian.po | 4 + Translations/WinMerge/Bulgarian.po | 4 + Translations/WinMerge/Catalan.po | 4 + Translations/WinMerge/ChineseSimplified.po | 4 + Translations/WinMerge/ChineseTraditional.po | 4 + Translations/WinMerge/Croatian.po | 4 + Translations/WinMerge/Czech.po | 4 + Translations/WinMerge/Danish.po | 4 + Translations/WinMerge/Dutch.po | 4 + Translations/WinMerge/English.pot | 6 +- Translations/WinMerge/Finnish.po | 4 + Translations/WinMerge/French.po | 4 + Translations/WinMerge/Galician.po | 4 + Translations/WinMerge/German.po | 4 + Translations/WinMerge/Greek.po | 4 + Translations/WinMerge/Hungarian.po | 4 + Translations/WinMerge/Italian.po | 4 + Translations/WinMerge/Japanese.po | 4 + Translations/WinMerge/Korean.po | 4 + Translations/WinMerge/Lithuanian.po | 4 + Translations/WinMerge/Norwegian.po | 4 + Translations/WinMerge/Persian.po | 4 + Translations/WinMerge/Polish.po | 4 + Translations/WinMerge/Portuguese.po | 4 + Translations/WinMerge/Romanian.po | 4 + Translations/WinMerge/Russian.po | 4 + Translations/WinMerge/Serbian.po | 4 + Translations/WinMerge/Sinhala.po | 4 + Translations/WinMerge/Slovak.po | 4 + Translations/WinMerge/Slovenian.po | 4 + Translations/WinMerge/Spanish.po | 4 + Translations/WinMerge/Swedish.po | 4 + Translations/WinMerge/Turkish.po | 4 + Translations/WinMerge/Ukrainian.po | 4 + 49 files changed, 413 insertions(+), 218 deletions(-) diff --git a/Externals/crystaledit/editlib/ccrystaleditview.cpp b/Externals/crystaledit/editlib/ccrystaleditview.cpp index 0e73cecc1..d662144ee 100644 --- a/Externals/crystaledit/editlib/ccrystaleditview.cpp +++ b/Externals/crystaledit/editlib/ccrystaleditview.cpp @@ -1932,9 +1932,9 @@ OnEditOperation (int nAction, LPCTSTR pszText, size_t cchText) m_pTextBuffer->InsertText (nullptr, ptCursorPos.y, ptCursorPos.x, pszInsertStr, nPos, y, x, CE_ACTION_AUTOINDENT); CPoint pt (x, y); - SetCursorPos (pt); SetSelection (pt, pt); SetAnchor (pt); + SetCursorPos (pt); EnsureVisible (pt); // m_pTextBuffer->FlushUndoGroup (this); } @@ -1966,9 +1966,9 @@ OnEditOperation (int nAction, LPCTSTR pszText, size_t cchText) m_pTextBuffer->InsertText (nullptr, ptCursorPos.y, ptCursorPos.x, pszInsertStr, nPos, y, x, CE_ACTION_AUTOINDENT); CPoint pt (x, y); - SetCursorPos (pt); SetSelection (pt, pt); SetAnchor (pt); + SetCursorPos (pt); EnsureVisible (pt); // m_pTextBuffer->FlushUndoGroup (this); } @@ -1990,9 +1990,9 @@ OnEditOperation (int nAction, LPCTSTR pszText, size_t cchText) pszInsertStr, 1, y, x, CE_ACTION_AUTOINDENT); ptCursorPos.x = x + 1; ptCursorPos.y = y; - SetCursorPos (ptCursorPos); SetSelection (ptCursorPos, ptCursorPos); SetAnchor (ptCursorPos); + SetCursorPos (ptCursorPos); EnsureVisible (ptCursorPos); // m_pTextBuffer->FlushUndoGroup (this); } @@ -2035,9 +2035,9 @@ OnEditOperation (int nAction, LPCTSTR pszText, size_t cchText) m_pTextBuffer->InsertText (nullptr, ptCursorPos.y, ptCursorPos.x - 1, pszInsertStr, nPos, y, x, CE_ACTION_AUTOINDENT); CPoint pt (x + 1, y); - SetCursorPos (pt); SetSelection (pt, pt); SetAnchor (pt); + SetCursorPos (pt); EnsureVisible (pt); // m_pTextBuffer->FlushUndoGroup (this); } @@ -2197,9 +2197,9 @@ OnEditAutoExpand () ptCursorPos.x = x; ptCursorPos.y = y; ASSERT_VALIDTEXTPOS (ptCursorPos); - SetCursorPos (ptCursorPos); SetSelection (ptCursorPos, ptCursorPos); SetAnchor (ptCursorPos); + SetCursorPos (ptCursorPos); OnEditOperation (CE_ACTION_TYPING, pszExpand, _tcslen(pszExpand)); ptCursorPos = GetCursorPos (); if (pszSlash == nullptr) @@ -2636,8 +2636,8 @@ void CCrystalEditView::OnEditGotoLastChange() return; // goto last change - SetCursorPos( ptLastChange ); SetSelection( ptLastChange, ptLastChange ); + SetCursorPos( ptLastChange ); EnsureVisible( ptLastChange ); } //END SW diff --git a/Externals/crystaledit/editlib/ccrystaltextview.h b/Externals/crystaledit/editlib/ccrystaltextview.h index 25217e9f8..77f5ee18e 100644 --- a/Externals/crystaledit/editlib/ccrystaltextview.h +++ b/Externals/crystaledit/editlib/ccrystaltextview.h @@ -297,6 +297,8 @@ protected : bool IsInsideSelection (const CPoint & ptTextPos); bool GetColumnSelection (int nLine, int & nLeftTextPos, int & nRightTextPos); void GetSelection (CPoint & ptStart, CPoint & ptEnd); + std::pair GetSelection () + { CPoint ptStart, ptEnd; GetSelection(ptStart, ptEnd); return { ptStart, ptEnd }; } void GetFullySelectedLines(int & firstLine, int & lastLine); virtual void SetSelection (const CPoint & ptStart, const CPoint & ptEnd, bool bUpdateView = true); diff --git a/Externals/crystaledit/editlib/ccrystaltextview2.cpp b/Externals/crystaledit/editlib/ccrystaltextview2.cpp index 3383489f2..ff0a6f0b1 100644 --- a/Externals/crystaledit/editlib/ccrystaltextview2.cpp +++ b/Externals/crystaledit/editlib/ccrystaltextview2.cpp @@ -104,10 +104,10 @@ MoveLeft (bool bSelect) } m_nIdealCharPos = CalculateActualOffset (m_ptCursorPos.y, m_ptCursorPos.x); EnsureVisible (m_ptCursorPos); - UpdateCaret (); if (!bSelect) m_ptAnchor = m_ptCursorPos; SetSelection (m_ptAnchor, m_ptCursorPos); + UpdateCaret (); } void CCrystalTextView:: @@ -137,10 +137,10 @@ MoveRight (bool bSelect) } m_nIdealCharPos = CalculateActualOffset (m_ptCursorPos.y, m_ptCursorPos.x); EnsureVisible (m_ptCursorPos); - UpdateCaret (); if (!bSelect) m_ptAnchor = m_ptCursorPos; SetSelection (m_ptAnchor, m_ptCursorPos); + UpdateCaret (); } void CCrystalTextView:: @@ -171,10 +171,10 @@ MoveWordLeft (bool bSelect) m_nIdealCharPos = CalculateActualOffset (m_ptCursorPos.y, m_ptCursorPos.x); EnsureVisible (m_ptCursorPos); - UpdateCaret (); if (!bSelect) m_ptAnchor = m_ptCursorPos; SetSelection (m_ptAnchor, m_ptCursorPos); + UpdateCaret (); } void CCrystalTextView:: @@ -203,10 +203,10 @@ MoveWordRight (bool bSelect) m_nIdealCharPos = CalculateActualOffset (m_ptCursorPos.y, m_ptCursorPos.x); EnsureVisible (m_ptCursorPos); - UpdateCaret (); if (!bSelect) m_ptAnchor = m_ptCursorPos; SetSelection (m_ptAnchor, m_ptCursorPos); + UpdateCaret (); } void CCrystalTextView:: @@ -244,10 +244,10 @@ MoveUp (bool bSelect) m_ptCursorPos.x = GetLineLength (m_ptCursorPos.y); } EnsureVisible (m_ptCursorPos); - UpdateCaret (); if (!bSelect) m_ptAnchor = m_ptCursorPos; SetSelection (m_ptAnchor, m_ptCursorPos); + UpdateCaret (); } void CCrystalTextView:: @@ -288,10 +288,10 @@ MoveDown (bool bSelect) m_ptCursorPos.x = GetLineLength (m_ptCursorPos.y); } EnsureVisible (m_ptCursorPos); - UpdateCaret (); if (!bSelect) m_ptAnchor = m_ptCursorPos; SetSelection (m_ptAnchor, m_ptCursorPos); + UpdateCaret (); } void CCrystalTextView:: @@ -321,10 +321,10 @@ MoveHome (bool bSelect) m_ptCursorPos.x = nHomePos; m_nIdealCharPos = CalculateActualOffset (m_ptCursorPos.y, m_ptCursorPos.x); EnsureVisible (m_ptCursorPos); - UpdateCaret (); if (!bSelect) m_ptAnchor = m_ptCursorPos; SetSelection (m_ptAnchor, m_ptCursorPos); + UpdateCaret (); } void CCrystalTextView:: @@ -339,10 +339,10 @@ MoveEnd (bool bSelect) *///END SW m_nIdealCharPos = INT_MAX; EnsureVisible (m_ptCursorPos); - UpdateCaret (); if (!bSelect) m_ptAnchor = m_ptCursorPos; SetSelection (m_ptAnchor, m_ptCursorPos); + UpdateCaret (); } void CCrystalTextView:: @@ -378,10 +378,10 @@ MovePgUp (bool bSelect) m_nIdealCharPos = CalculateActualOffset (m_ptCursorPos.y, m_ptCursorPos.x); EnsureVisible (m_ptCursorPos); //todo: no vertical scroll - UpdateCaret (); if (!bSelect) m_ptAnchor = m_ptCursorPos; SetSelection (m_ptAnchor, m_ptCursorPos); + UpdateCaret (); } void CCrystalTextView:: @@ -420,10 +420,10 @@ MovePgDn (bool bSelect) m_nIdealCharPos = CalculateActualOffset (m_ptCursorPos.y, m_ptCursorPos.x); EnsureVisible (m_ptCursorPos); //todo: no vertical scroll - UpdateCaret (); if (!bSelect) m_ptAnchor = m_ptCursorPos; SetSelection (m_ptAnchor, m_ptCursorPos); + UpdateCaret (); } void CCrystalTextView:: @@ -433,10 +433,10 @@ MoveCtrlHome (bool bSelect) m_ptCursorPos.y = 0; m_nIdealCharPos = CalculateActualOffset (m_ptCursorPos.y, m_ptCursorPos.x); EnsureVisible (m_ptCursorPos); - UpdateCaret (); if (!bSelect) m_ptAnchor = m_ptCursorPos; SetSelection (m_ptAnchor, m_ptCursorPos); + UpdateCaret (); } void CCrystalTextView:: @@ -446,10 +446,10 @@ MoveCtrlEnd (bool bSelect) m_ptCursorPos.x = GetLineLength (m_ptCursorPos.y); m_nIdealCharPos = CalculateActualOffset (m_ptCursorPos.y, m_ptCursorPos.x); EnsureVisible (m_ptCursorPos); - UpdateCaret (); if (!bSelect) m_ptAnchor = m_ptCursorPos; SetSelection (m_ptAnchor, m_ptCursorPos); + UpdateCaret (); } void CCrystalTextView:: @@ -644,9 +644,9 @@ OnLButtonDown (UINT nFlags, CPoint point) } m_ptCursorPos = ptEnd; - UpdateCaret (); EnsureVisible (m_ptCursorPos); SetSelection (ptStart, ptEnd); + UpdateCaret (); startDragging(); @@ -696,9 +696,9 @@ OnLButtonDown (UINT nFlags, CPoint point) m_ptAnchor = ptStart; m_ptCursorPos = ptEnd; - UpdateCaret (); EnsureVisible (m_ptCursorPos); SetSelection (ptStart, ptEnd); + UpdateCaret (); startDragging(); @@ -791,8 +791,8 @@ OnMouseMove (UINT nFlags, CPoint point) m_ptCursorPos = ptNewCursorPos; } EnsureVisible(m_ptCursorPos); - UpdateCaret (); SetSelection (ptNewCursorPos, ptEnd); + UpdateCaret (); return; } @@ -818,8 +818,8 @@ OnMouseMove (UINT nFlags, CPoint point) m_ptCursorPos = ptEnd; EnsureVisible(m_ptCursorPos); - UpdateCaret (); SetSelection (ptStart, ptEnd); + UpdateCaret (); } if (m_bPreparingToDrag) @@ -872,8 +872,8 @@ OnLButtonUp (UINT nFlags, CPoint point) AdjustTextPoint (point); m_ptCursorPos = ClientToText (point); EnsureVisible (m_ptCursorPos); - UpdateCaret (); SetSelection (m_ptCursorPos, m_ptCursorPos); + UpdateCaret (); } ASSERT_VALIDTEXTPOS (m_ptCursorPos); @@ -1010,9 +1010,9 @@ OnLButtonDblClk (UINT nFlags, CPoint point) m_ptAnchor = ptStart; m_ptCursorPos = ptEnd; - UpdateCaret (); EnsureVisible (m_ptCursorPos); SetSelection (ptStart, ptEnd); + UpdateCaret (); SetCapture (); m_nDragSelTimer = SetTimer (CRYSTAL_TIMER_DRAGSEL, 100, nullptr); ASSERT (m_nDragSelTimer != 0); diff --git a/Src/Merge.rc b/Src/Merge.rc index 4675d2198..771093d0d 100644 --- a/Src/Merge.rc +++ b/Src/Merge.rc @@ -2907,6 +2907,7 @@ BEGIN "Ln: %s Col: %d/%d Ch: %d/%d EOL: %s" IDS_EMPTY_LINE_STATUS_INFO "Line: %s" IDS_LINE_STATUS_INFO "Ln: %s Col: %d/%d Ch: %d/%d" + IDS_LINE_STATUS_INFO_SEL " Sel: %d | %d" IDS_MERGEMODE_MERGING "Merge" IDS_DIFF_NUMBER_STATUS_FMT "Difference %1 of %2" IDS_NO_DIFF_SEL_FMT "%1 Differences Found" diff --git a/Src/MergeEditStatus.h b/Src/MergeEditStatus.h index 1b6055960..54d1aa990 100644 --- a/Src/MergeEditStatus.h +++ b/Src/MergeEditStatus.h @@ -13,5 +13,5 @@ class IMergeEditStatus { public: virtual void SetLineInfo(LPCTSTR szLine, int nChar, int nChars, int nColumn, - int nColumns, LPCTSTR szEol, int nCodepage, bool bHasBom) = 0; + int nColumns, int nSelectedLines, int nSelectedChars, LPCTSTR szEol, int nCodepage, bool bHasBom) = 0; }; diff --git a/Src/MergeEditView.cpp b/Src/MergeEditView.cpp index 501e17c53..92de2863e 100644 --- a/Src/MergeEditView.cpp +++ b/Src/MergeEditView.cpp @@ -309,6 +309,36 @@ CString CMergeEditView::GetSelectedText() } /** + * @brief Return number of selected characters + */ +std::pair CMergeEditView::GetSelectedLineAndCharacterCount() +{ + auto [ptStart, ptEnd] = GetSelection(); + int nCharsOrColumns =0; + int nSelectedLines = 0; + for (int nLine = ptStart.y; nLine <= ptEnd.y; ++nLine) + { + if ((GetLineFlags(nLine) & (LF_GHOST | LF_INVISIBLE)) == 0) + { + int nLineLength = GetLineLength(nLine) + (m_pTextBuffer->GetLineEol(nLine)[0] ? 1 : 0); + nCharsOrColumns += (nLine == ptEnd.y) ? ptEnd.x : nLineLength; + if (nLine == ptStart.y) + nCharsOrColumns -= ptStart.x; + if (nLine < ptEnd.y || (ptStart != ptEnd && ptEnd.x > 0)) + ++nSelectedLines; + } + } + if (m_bRectangularSelection) + { + int nStartLeft, nStartRight, nEndLeft, nEndRight; + GetColumnSelection(ptStart.y, nStartLeft, nStartRight); + GetColumnSelection(ptEnd.y, nEndLeft, nEndRight); + nCharsOrColumns = (std::max)(nStartRight, nEndRight) - (std::min)(nStartLeft, nEndLeft); + } + return { nSelectedLines, nCharsOrColumns }; +} + +/** * @brief Get diffs inside selection. * @param [out] firstDiff First diff inside selection * @param [out] lastDiff Last diff inside selection @@ -2769,6 +2799,7 @@ void CMergeEditView::OnUpdateCaret() int column = -1; int columns = -1; int curChar = -1; + auto [selectedLines, selectedChars] = GetSelectedLineAndCharacterCount(); DWORD dwLineFlags = 0; dwLineFlags = m_pTextBuffer->GetLineFlags(nScreenLine); @@ -2797,7 +2828,8 @@ void CMergeEditView::OnUpdateCaret() sEol = _T("hidden"); } m_piMergeEditStatus->SetLineInfo(sLine, column, columns, - curChar, chars, sEol, GetDocument()->m_ptBuf[m_nThisPane]->getCodepage(), GetDocument()->m_ptBuf[m_nThisPane]->getHasBom()); + curChar, chars, selectedLines, selectedChars, + sEol, GetDocument()->m_ptBuf[m_nThisPane]->getCodepage(), GetDocument()->m_ptBuf[m_nThisPane]->getHasBom()); // Is cursor inside difference? if (dwLineFlags & LF_NONTRIVIAL_DIFF) diff --git a/Src/MergeEditView.h b/Src/MergeEditView.h index 1671a3257..9ce5c9eb8 100644 --- a/Src/MergeEditView.h +++ b/Src/MergeEditView.h @@ -117,6 +117,7 @@ public: void GetSelectedDiffs(int & firstDiff, int & lastDiff); std::map> GetColumnSelectedWordDiffIndice(); CString GetSelectedText(); + std::pair GetSelectedLineAndCharacterCount(); CString GetLineText(int idx); CMergeDoc* GetDocument(); const CMergeDoc *GetDocument() const { return const_cast(this)->GetDocument(); } @@ -193,8 +194,8 @@ public: // Implementation protected: virtual ~CMergeEditView(); - virtual void OnUpdateSibling (CCrystalTextView * pUpdateSource, bool bHorz); - virtual void OnUpdateCaret(); + virtual void OnUpdateSibling (CCrystalTextView * pUpdateSource, bool bHorz) override; + virtual void OnUpdateCaret() override; bool MergeModeKeyDown(MSG* pMsg); int FindPrediffer(LPCTSTR prediffer) const; bool IsDiffVisible(const DIFFRANGE& diff, int nLinesBelow = 0); diff --git a/Src/MergeStatusBar.cpp b/Src/MergeStatusBar.cpp index fd1374806..19e0e4d48 100644 --- a/Src/MergeStatusBar.cpp +++ b/Src/MergeStatusBar.cpp @@ -206,6 +206,8 @@ CMergeStatusBar::MergeStatus::MergeStatus() , m_nChars(0) , m_nCodepage(-1) , m_bHasBom(false) +, m_nSelectedLines(0) +, m_nSelectedChars(0) , m_pWndStatusBar(nullptr) , m_base(0) { @@ -232,6 +234,12 @@ void CMergeStatusBar::MergeStatus::Update() strInfo.Format(_("Ln: %s Col: %d/%d Ch: %d/%d EOL: %s").c_str(), m_sLine.c_str(), m_nColumn, m_nColumns, m_nChar, m_nChars, m_sEolDisplay.c_str(), m_nCodepage, m_sCodepageName.c_str()); } + if (m_nSelectedLines > 0) + { + CString strSelected; + strSelected.Format(_(" Sel: %d | %d").c_str(), m_nSelectedLines, m_nSelectedChars); + strInfo += strSelected; + } if (m_nCodepage > 0) strEncoding.Format(_("%s").c_str(), m_sCodepageName.c_str()); @@ -274,10 +282,12 @@ static String EolString(const String & sEol) /// Receive status line info from crystal window and display void CMergeStatusBar::MergeStatus::SetLineInfo(LPCTSTR szLine, int nColumn, - int nColumns, int nChar, int nChars, LPCTSTR szEol, int nCodepage, bool bHasBom) + int nColumns, int nChar, int nChars, int nSelectedLines, int nSelectedChars, LPCTSTR szEol, int nCodepage, bool bHasBom) { if (m_sLine != szLine || m_nColumn != nColumn || m_nColumns != nColumns || - m_nChar != nChar || m_nChars != nChars || m_sEol != szEol != 0 || m_nCodepage != nCodepage || m_bHasBom != bHasBom) + m_nChar != nChar || m_nChars != nChars || + m_nSelectedLines != nSelectedLines || m_nSelectedChars != nSelectedChars || + m_sEol != szEol != 0 || m_nCodepage != nCodepage || m_bHasBom != bHasBom) { USES_CONVERSION; m_sLine = szLine; @@ -285,6 +295,8 @@ void CMergeStatusBar::MergeStatus::SetLineInfo(LPCTSTR szLine, int nColumn, m_nColumns = nColumns; m_nChar = nChar; m_nChars = nChars; + m_nSelectedLines = nSelectedLines; + m_nSelectedChars = nSelectedChars; m_sEol = szEol; m_sEolDisplay = EolString(m_sEol); if (m_nCodepage != nCodepage || m_bHasBom != bHasBom) diff --git a/Src/MergeStatusBar.h b/Src/MergeStatusBar.h index 5e376063c..d5448745e 100644 --- a/Src/MergeStatusBar.h +++ b/Src/MergeStatusBar.h @@ -47,7 +47,7 @@ protected: MergeStatus(); // Implement MergeEditStatus void SetLineInfo(LPCTSTR szLine, int nColumn, int nColumns, - int nChar, int nChars, LPCTSTR szEol, int nCodepage, bool bHasBom); + int nChar, int nChars, int nSelectedLines, int nSelectedChars, LPCTSTR szEol, int nCodepage, bool bHasBom) override; void UpdateResources(); protected: void Update(); @@ -61,6 +61,8 @@ protected: int m_nChar; /**< Current char */ int m_nChars; /**< Amount of chars in line */ int m_nCodepage; + int m_nSelectedLines; + int m_nSelectedChars; bool m_bHasBom; String m_sEol; String m_sEolDisplay; diff --git a/Src/resource.h b/Src/resource.h index 1da16f16d..ca3026ee6 100644 --- a/Src/resource.h +++ b/Src/resource.h @@ -1020,6 +1020,7 @@ #define IDS_CONFLICT_THEIRS_FILE 40806 #define IDS_CONFLICT_MINE_FILE 40807 #define IDS_SELFCOMPARE_ORIGINAL_FILE 40808 +#define IDS_LINE_STATUS_INFO_SEL 40831 #define IDS_LINE_STATUS_INFO_EOL 40832 #define IDS_EMPTY_LINE_STATUS_INFO 40833 #define IDS_LINE_STATUS_INFO 40834 diff --git a/Translations/TranslationsStatus.html b/Translations/TranslationsStatus.html index e6da1590c..86cb9c96b 100644 --- a/Translations/TranslationsStatus.html +++ b/Translations/TranslationsStatus.html @@ -37,7 +37,7 @@

Translations Status

-

Status from 2021-04-15:

+

Status from 2021-04-18:

WinMerge

@@ -51,325 +51,325 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + - + - + diff --git a/Translations/TranslationsStatus.md b/Translations/TranslationsStatus.md index 97d91f456..f07ce92c7 100644 --- a/Translations/TranslationsStatus.md +++ b/Translations/TranslationsStatus.md @@ -1,47 +1,47 @@ # Translations Status -Status from **2021-04-15**: +Status from **2021-04-18**: ## WinMerge | Language | Total | Translated | Fuzzy | Untranslated | Complete | Last Update | |:---------------------|------:|-----------:|------:|-------------:|---------:|:-----------:| -| Arabic | 1029 | 914 | 0 | 115 | 89 % | 2019-12-30 | -| Basque | 1029 | 650 | 0 | 379 | 63 % | 2013-02-03 | -| Brazilian | 1029 | 1029 | 0 | 0 | 100 % | 2021-02-14 | -| Bulgarian | 1029 | 955 | 0 | 74 | 93 % | 2021-02-11 | -| Catalan | 1029 | 575 | 0 | 454 | 56 % | | -| ChineseSimplified | 1029 | 987 | 0 | 42 | 96 % | | -| ChineseTraditional | 1029 | 867 | 0 | 162 | 84 % | 2010-02-19 | -| Croatian | 1029 | 641 | 1 | 387 | 62 % | 2009-02-13 | -| Czech | 1029 | 613 | 0 | 416 | 60 % | | -| Danish | 1029 | 650 | 0 | 379 | 63 % | 2013-01-13 | -| Dutch | 1029 | 1027 | 0 | 2 | 100 % | 2018-09-06 | -| English | 1030 | 1030 | 0 | 0 | 100 % | 2021-04-15 | -| Finnish | 1029 | 914 | 0 | 115 | 89 % | | -| French | 1029 | 1027 | 0 | 2 | 100 % | 2021-02-10 | -| Galician | 1029 | 1029 | 0 | 0 | 100 % | 2021-04-01 | -| German | 1029 | 1029 | 0 | 0 | 100 % | 2021-04-04 | -| Greek | 1029 | 613 | 0 | 416 | 60 % | | -| Hungarian | 1029 | 1027 | 0 | 2 | 100 % | 2021-03-15 | -| Italian | 1029 | 917 | 0 | 112 | 89 % | 2019-07-12 | -| Japanese | 1029 | 1029 | 0 | 0 | 100 % | 2021-03-31 | -| Korean | 1029 | 998 | 0 | 31 | 97 % | 2021-03-30 | -| Lithuanian | 1029 | 1029 | 0 | 0 | 100 % | 2021-04-01 | -| Norwegian | 1029 | 642 | 0 | 387 | 62 % | | -| Persian | 1029 | 653 | 0 | 376 | 63 % | 2013-08-15 | -| Polish | 1029 | 1018 | 0 | 11 | 99 % | | -| Portuguese | 1029 | 1029 | 0 | 0 | 100 % | 2021-04-10 | -| Romanian | 1029 | 571 | 44 | 414 | 60 % | | -| Russian | 1029 | 1016 | 0 | 13 | 99 % | 2021-03-28 | -| Serbian | 1029 | 641 | 0 | 388 | 62 % | | -| Sinhala | 1029 | 571 | 63 | 395 | 62 % | 2010-12-12 | -| Slovak | 1029 | 987 | 0 | 42 | 96 % | 2020-11-02 | -| Slovenian | 1029 | 1027 | 0 | 2 | 100 % | 2021-03-02 | -| Spanish | 1029 | 883 | 0 | 146 | 86 % | 2020-04-03 | -| Swedish | 1029 | 1029 | 0 | 0 | 100 % | 2021-04-10 | -| Turkish | 1029 | 983 | 0 | 46 | 96 % | 2020-09-08 | -| Ukrainian | 1029 | 647 | 0 | 382 | 63 % | 2009-06-13 | +| Arabic | 1030 | 914 | 0 | 116 | 89 % | 2019-12-30 | +| Basque | 1030 | 650 | 0 | 380 | 63 % | 2013-02-03 | +| Brazilian | 1030 | 1029 | 0 | 1 | 100 % | 2021-02-14 | +| Bulgarian | 1030 | 955 | 0 | 75 | 93 % | 2021-02-11 | +| Catalan | 1030 | 575 | 0 | 455 | 56 % | | +| ChineseSimplified | 1030 | 987 | 0 | 43 | 96 % | | +| ChineseTraditional | 1030 | 867 | 0 | 163 | 84 % | 2010-02-19 | +| Croatian | 1030 | 641 | 1 | 388 | 62 % | 2009-02-13 | +| Czech | 1030 | 613 | 0 | 417 | 60 % | | +| Danish | 1030 | 650 | 0 | 380 | 63 % | 2013-01-13 | +| Dutch | 1030 | 1027 | 0 | 3 | 100 % | 2018-09-06 | +| English | 1031 | 1031 | 0 | 0 | 100 % | 2021-04-18 | +| Finnish | 1030 | 914 | 0 | 116 | 89 % | | +| French | 1030 | 1027 | 0 | 3 | 100 % | 2021-02-10 | +| Galician | 1030 | 1029 | 0 | 1 | 100 % | 2021-04-01 | +| German | 1030 | 1029 | 0 | 1 | 100 % | 2021-04-04 | +| Greek | 1030 | 613 | 0 | 417 | 60 % | | +| Hungarian | 1030 | 1027 | 0 | 3 | 100 % | 2021-03-15 | +| Italian | 1030 | 917 | 0 | 113 | 89 % | 2019-07-12 | +| Japanese | 1030 | 1029 | 0 | 1 | 100 % | 2021-03-31 | +| Korean | 1030 | 998 | 0 | 32 | 97 % | 2021-03-30 | +| Lithuanian | 1030 | 1029 | 0 | 1 | 100 % | 2021-04-01 | +| Norwegian | 1030 | 642 | 0 | 388 | 62 % | | +| Persian | 1030 | 653 | 0 | 377 | 63 % | 2013-08-15 | +| Polish | 1030 | 1018 | 0 | 12 | 99 % | | +| Portuguese | 1030 | 1029 | 0 | 1 | 100 % | 2021-04-10 | +| Romanian | 1030 | 571 | 44 | 415 | 60 % | | +| Russian | 1030 | 1016 | 0 | 14 | 99 % | 2021-03-28 | +| Serbian | 1030 | 641 | 0 | 389 | 62 % | | +| Sinhala | 1030 | 571 | 63 | 396 | 62 % | 2010-12-12 | +| Slovak | 1030 | 987 | 0 | 43 | 96 % | 2020-11-02 | +| Slovenian | 1030 | 1027 | 0 | 3 | 100 % | 2021-03-02 | +| Spanish | 1030 | 883 | 0 | 147 | 86 % | 2020-04-03 | +| Swedish | 1030 | 1029 | 0 | 1 | 100 % | 2021-04-10 | +| Turkish | 1030 | 983 | 0 | 47 | 95 % | 2020-09-08 | +| Ukrainian | 1030 | 647 | 0 | 383 | 63 % | 2009-06-13 | ## ShellExtension diff --git a/Translations/TranslationsStatus.xml b/Translations/TranslationsStatus.xml index cdc512db5..46b5a61ee 100644 --- a/Translations/TranslationsStatus.xml +++ b/Translations/TranslationsStatus.xml @@ -1,16 +1,16 @@ - 2021-04-15 + 2021-04-18 Arabic Arabic.po 2019-12-30 - 1029 + 1030 914 0 - 115 + 116 @@ -18,10 +18,10 @@ Basque.po 2013-02-03 - 1029 + 1030 650 0 - 379 + 380 @@ -35,10 +35,10 @@ Brazilian.po 2021-02-14 - 1029 + 1030 1029 0 - 0 + 1 @@ -60,10 +60,10 @@ Bulgarian.po 2021-02-11 - 1029 + 1030 955 0 - 74 + 75 @@ -85,10 +85,10 @@ Catalan.po - 1029 + 1030 575 0 - 454 + 455 @@ -102,10 +102,10 @@ ChineseSimplified.po - 1029 + 1030 987 0 - 42 + 43 @@ -127,10 +127,10 @@ ChineseTraditional.po 2010-02-19 - 1029 + 1030 867 0 - 162 + 163 @@ -152,10 +152,10 @@ Croatian.po 2009-02-13 - 1029 + 1030 641 1 - 387 + 388 @@ -169,10 +169,10 @@ Czech.po - 1029 + 1030 613 0 - 416 + 417 @@ -190,10 +190,10 @@ Danish.po 2013-01-13 - 1029 + 1030 650 0 - 379 + 380 @@ -211,10 +211,10 @@ Dutch.po 2018-09-06 - 1029 + 1030 1027 0 - 2 + 3 @@ -229,10 +229,10 @@ English English.pot - 2021-04-15 + 2021-04-18 - 1030 - 1030 + 1031 + 1031 0 0 @@ -242,10 +242,10 @@ Finnish.po - 1029 + 1030 914 0 - 115 + 116 @@ -253,10 +253,10 @@ French.po 2021-02-10 - 1029 + 1030 1027 0 - 2 + 3 @@ -290,10 +290,10 @@ Galician.po 2021-04-01 - 1029 + 1030 1029 0 - 0 + 1 @@ -310,10 +310,10 @@ German.po 2021-04-04 - 1029 + 1030 1029 0 - 0 + 1 @@ -335,10 +335,10 @@ Greek.po - 1029 + 1030 613 0 - 416 + 417 @@ -352,10 +352,10 @@ Hungarian.po 2021-03-15 - 1029 + 1030 1027 0 - 2 + 3 @@ -377,10 +377,10 @@ Italian.po 2019-07-12 - 1029 + 1030 917 0 - 112 + 113 @@ -406,10 +406,10 @@ Japanese.po 2021-03-31 - 1029 + 1030 1029 0 - 0 + 1 @@ -423,10 +423,10 @@ Korean.po 2021-03-30 - 1029 + 1030 998 0 - 31 + 32 @@ -456,10 +456,10 @@ Lithuanian.po 2021-04-01 - 1029 + 1030 1029 0 - 0 + 1 @@ -473,10 +473,10 @@ Norwegian.po - 1029 + 1030 642 0 - 387 + 388 @@ -494,10 +494,10 @@ Persian.po 2013-08-15 - 1029 + 1030 653 0 - 376 + 377 @@ -511,10 +511,10 @@ Polish.po - 1029 + 1030 1018 0 - 11 + 12 @@ -539,10 +539,10 @@ Portuguese.po 2021-04-10 - 1029 + 1030 1029 0 - 0 + 1 @@ -562,10 +562,10 @@ Romanian.po - 1029 + 1030 571 44 - 414 + 415 @@ -579,10 +579,10 @@ Russian.po 2021-03-28 - 1029 + 1030 1016 0 - 13 + 14 @@ -612,10 +612,10 @@ Serbian.po - 1029 + 1030 641 0 - 388 + 389 @@ -629,10 +629,10 @@ Sinhala.po 2010-12-12 - 1029 + 1030 571 63 - 395 + 396 @@ -645,10 +645,10 @@ Slovak.po 2020-11-02 - 1029 + 1030 987 0 - 42 + 43 @@ -670,10 +670,10 @@ Slovenian.po 2021-03-02 - 1029 + 1030 1027 0 - 2 + 3 @@ -695,10 +695,10 @@ Spanish.po 2020-04-03 - 1029 + 1030 883 0 - 146 + 147 @@ -724,10 +724,10 @@ Swedish.po 2021-04-10 - 1029 + 1030 1029 0 - 0 + 1 @@ -749,10 +749,10 @@ Turkish.po 2020-09-08 - 1029 + 1030 983 0 - 46 + 47 @@ -774,10 +774,10 @@ Ukrainian.po 2009-06-13 - 1029 + 1030 647 0 - 382 + 383 diff --git a/Translations/WinMerge/Arabic.po b/Translations/WinMerge/Arabic.po index 596c9f323..55403f63e 100644 --- a/Translations/WinMerge/Arabic.po +++ b/Translations/WinMerge/Arabic.po @@ -2241,6 +2241,10 @@ msgstr "السطر: %s" msgid "Ln: %s Col: %d/%d Ch: %d/%d" msgstr "Ln: %s Col: %d/%d Ch: %d/%d" +#, c-format +msgid " Sel: %d | %d" +msgstr "" + msgid "Merge" msgstr "دمج" diff --git a/Translations/WinMerge/Basque.po b/Translations/WinMerge/Basque.po index 970476f1c..66a6586fa 100644 --- a/Translations/WinMerge/Basque.po +++ b/Translations/WinMerge/Basque.po @@ -2758,6 +2758,10 @@ msgid "Ln: %s Col: %d/%d Ch: %d/%d" msgstr "" #, c-format +msgid " Sel: %d | %d" +msgstr "" + +#, c-format msgid "Merge" msgstr "Batu" diff --git a/Translations/WinMerge/Brazilian.po b/Translations/WinMerge/Brazilian.po index 327530763..6d68c8b34 100644 --- a/Translations/WinMerge/Brazilian.po +++ b/Translations/WinMerge/Brazilian.po @@ -2790,6 +2790,10 @@ msgid "Ln: %s Col: %d/%d Ch: %d/%d" msgstr "Lin: %s Col: %d/%d Car: %d/%d" #, c-format +msgid " Sel: %d | %d" +msgstr "" + +#, c-format msgid "Merge" msgstr "Unir" diff --git a/Translations/WinMerge/Bulgarian.po b/Translations/WinMerge/Bulgarian.po index 201fdde5d..c9b8aabac 100644 --- a/Translations/WinMerge/Bulgarian.po +++ b/Translations/WinMerge/Bulgarian.po @@ -2256,6 +2256,10 @@ msgstr "Ред: %s" msgid "Ln: %s Col: %d/%d Ch: %d/%d" msgstr "Ред: %s колона: %d/%d знак: %d/%d" +#, c-format +msgid " Sel: %d | %d" +msgstr "" + msgid "Merge" msgstr "Сливане" diff --git a/Translations/WinMerge/Catalan.po b/Translations/WinMerge/Catalan.po index 669bd89c9..cdcf66784 100644 --- a/Translations/WinMerge/Catalan.po +++ b/Translations/WinMerge/Catalan.po @@ -2723,6 +2723,10 @@ msgid "Ln: %s Col: %d/%d Ch: %d/%d" msgstr "" #, c-format +msgid " Sel: %d | %d" +msgstr "" + +#, c-format msgid "Merge" msgstr "Combina" diff --git a/Translations/WinMerge/ChineseSimplified.po b/Translations/WinMerge/ChineseSimplified.po index f6152c21f..390948cf2 100644 --- a/Translations/WinMerge/ChineseSimplified.po +++ b/Translations/WinMerge/ChineseSimplified.po @@ -2253,6 +2253,10 @@ msgstr "行: %s" msgid "Ln: %s Col: %d/%d Ch: %d/%d" msgstr "行: %s 列: %d/%d 字符: %d/%d" +#, c-format +msgid " Sel: %d | %d" +msgstr "" + msgid "Merge" msgstr "合并" diff --git a/Translations/WinMerge/ChineseTraditional.po b/Translations/WinMerge/ChineseTraditional.po index d72f25b74..a07d838a5 100644 --- a/Translations/WinMerge/ChineseTraditional.po +++ b/Translations/WinMerge/ChineseTraditional.po @@ -2769,6 +2769,10 @@ msgid "Ln: %s Col: %d/%d Ch: %d/%d" msgstr "Ln: %s Col: %d/%d Ch: %d/%d" #, c-format +msgid " Sel: %d | %d" +msgstr "" + +#, c-format msgid "Merge" msgstr "合併" diff --git a/Translations/WinMerge/Croatian.po b/Translations/WinMerge/Croatian.po index e3a82b654..94fc23c86 100644 --- a/Translations/WinMerge/Croatian.po +++ b/Translations/WinMerge/Croatian.po @@ -2757,6 +2757,10 @@ msgid "Ln: %s Col: %d/%d Ch: %d/%d" msgstr "" #, c-format +msgid " Sel: %d | %d" +msgstr "" + +#, c-format msgid "Merge" msgstr "Usporedo" diff --git a/Translations/WinMerge/Czech.po b/Translations/WinMerge/Czech.po index 3d735f455..12f3fee23 100644 --- a/Translations/WinMerge/Czech.po +++ b/Translations/WinMerge/Czech.po @@ -2726,6 +2726,10 @@ msgid "Ln: %s Col: %d/%d Ch: %d/%d" msgstr "" #, c-format +msgid " Sel: %d | %d" +msgstr "" + +#, c-format msgid "Merge" msgstr "Sloučit" diff --git a/Translations/WinMerge/Danish.po b/Translations/WinMerge/Danish.po index 6f0a78f33..7318e23c0 100644 --- a/Translations/WinMerge/Danish.po +++ b/Translations/WinMerge/Danish.po @@ -2772,6 +2772,10 @@ msgid "Ln: %s Col: %d/%d Ch: %d/%d" msgstr "" #, c-format +msgid " Sel: %d | %d" +msgstr "" + +#, c-format msgid "Merge" msgstr "Flet" diff --git a/Translations/WinMerge/Dutch.po b/Translations/WinMerge/Dutch.po index 31f5a5157..dcc15173c 100644 --- a/Translations/WinMerge/Dutch.po +++ b/Translations/WinMerge/Dutch.po @@ -2261,6 +2261,10 @@ msgstr "Regel: %s" msgid "Ln: %s Col: %d/%d Ch: %d/%d" msgstr "Regel: %s Kolom: %d/%d Teken: %d/%d" +#, c-format +msgid " Sel: %d | %d" +msgstr "" + msgid "Merge" msgstr "Samenvoegen" diff --git a/Translations/WinMerge/English.pot b/Translations/WinMerge/English.pot index 01e8c117d..063038fbc 100644 --- a/Translations/WinMerge/English.pot +++ b/Translations/WinMerge/English.pot @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: WinMerge\n" "Report-Msgid-Bugs-To: https://bugs.winmerge.org/\n" -"POT-Creation-Date: 2021-04-15 07:51+0000\n" +"POT-Creation-Date: 2021-04-18 15:21+0000\n" "PO-Revision-Date: \n" "Last-Translator: \n" "Language-Team: English \n" @@ -2120,6 +2120,10 @@ msgstr "" msgid "Ln: %s Col: %d/%d Ch: %d/%d" msgstr "" +#, c-format +msgid " Sel: %d | %d" +msgstr "" + msgid "Merge" msgstr "" diff --git a/Translations/WinMerge/Finnish.po b/Translations/WinMerge/Finnish.po index 9f5438a6a..fe294cffe 100644 --- a/Translations/WinMerge/Finnish.po +++ b/Translations/WinMerge/Finnish.po @@ -2782,6 +2782,10 @@ msgid "Ln: %s Col: %d/%d Ch: %d/%d" msgstr "Ln: %s Col: %d/%d Ch: %d/%d" #, c-format +msgid " Sel: %d | %d" +msgstr "" + +#, c-format msgid "Merge" msgstr "Yhdistä" diff --git a/Translations/WinMerge/French.po b/Translations/WinMerge/French.po index 13357f130..e5012c71e 100644 --- a/Translations/WinMerge/French.po +++ b/Translations/WinMerge/French.po @@ -2797,6 +2797,10 @@ msgid "Ln: %s Col: %d/%d Ch: %d/%d" msgstr "Ln: %s Col: %d/%d Ch: %d/%d" #, c-format +msgid " Sel: %d | %d" +msgstr "" + +#, c-format msgid "Merge" msgstr "Fusion" diff --git a/Translations/WinMerge/Galician.po b/Translations/WinMerge/Galician.po index 897337197..d4d8896b0 100644 --- a/Translations/WinMerge/Galician.po +++ b/Translations/WinMerge/Galician.po @@ -2791,6 +2791,10 @@ msgid "Ln: %s Col: %d/%d Ch: %d/%d" msgstr "Lñ: %s Col: %d/%d Car: %d/%d" #, c-format +msgid " Sel: %d | %d" +msgstr "" + +#, c-format msgid "Merge" msgstr "Mesturar" diff --git a/Translations/WinMerge/German.po b/Translations/WinMerge/German.po index 1c3836bde..53d00c7ca 100644 --- a/Translations/WinMerge/German.po +++ b/Translations/WinMerge/German.po @@ -2682,6 +2682,10 @@ msgid "Ln: %s Col: %d/%d Ch: %d/%d" msgstr "Zeile: %s Spalte: %d/%d Zeichen: %d/%d" #, c-format +msgid " Sel: %d | %d" +msgstr "" + +#, c-format msgid "Merge" msgstr "Merge" diff --git a/Translations/WinMerge/Greek.po b/Translations/WinMerge/Greek.po index 4fd59a01d..29545858b 100644 --- a/Translations/WinMerge/Greek.po +++ b/Translations/WinMerge/Greek.po @@ -2751,6 +2751,10 @@ msgid "Ln: %s Col: %d/%d Ch: %d/%d" msgstr "" #, c-format +msgid " Sel: %d | %d" +msgstr "" + +#, c-format msgid "Merge" msgstr "Συγχώνευση" diff --git a/Translations/WinMerge/Hungarian.po b/Translations/WinMerge/Hungarian.po index 2247a4d51..26b46a2b2 100644 --- a/Translations/WinMerge/Hungarian.po +++ b/Translations/WinMerge/Hungarian.po @@ -2792,6 +2792,10 @@ msgid "Ln: %s Col: %d/%d Ch: %d/%d" msgstr "Sor: %s Oszlop: %d/%d Karakter: %d/%d" #, c-format +msgid " Sel: %d | %d" +msgstr "" + +#, c-format msgid "Merge" msgstr "Egyesítés" diff --git a/Translations/WinMerge/Italian.po b/Translations/WinMerge/Italian.po index 1482abf59..2e1476546 100644 --- a/Translations/WinMerge/Italian.po +++ b/Translations/WinMerge/Italian.po @@ -2244,6 +2244,10 @@ msgstr "Linea: %s" msgid "Ln: %s Col: %d/%d Ch: %d/%d" msgstr "Ln: %s Col: %d/%d Car: %d/%d" +#, c-format +msgid " Sel: %d | %d" +msgstr "" + msgid "Merge" msgstr "Unione" diff --git a/Translations/WinMerge/Japanese.po b/Translations/WinMerge/Japanese.po index 89c00d480..1757e6c71 100644 --- a/Translations/WinMerge/Japanese.po +++ b/Translations/WinMerge/Japanese.po @@ -2237,6 +2237,10 @@ msgstr "行: %s" msgid "Ln: %s Col: %d/%d Ch: %d/%d" msgstr "行: %s 列: %d/%d 文字: %d/%d" +#, c-format +msgid " Sel: %d | %d" +msgstr " 選択: %d | %d" + msgid "Merge" msgstr "マージ" diff --git a/Translations/WinMerge/Korean.po b/Translations/WinMerge/Korean.po index 957e77a15..62d3b0da0 100644 --- a/Translations/WinMerge/Korean.po +++ b/Translations/WinMerge/Korean.po @@ -2784,6 +2784,10 @@ msgid "Ln: %s Col: %d/%d Ch: %d/%d" msgstr "줄: %s 열: %d/%d 문자: %d/%d" #, c-format +msgid " Sel: %d | %d" +msgstr "" + +#, c-format msgid "Merge" msgstr "병합" diff --git a/Translations/WinMerge/Lithuanian.po b/Translations/WinMerge/Lithuanian.po index 406d873db..aec7f3078 100644 --- a/Translations/WinMerge/Lithuanian.po +++ b/Translations/WinMerge/Lithuanian.po @@ -2129,6 +2129,10 @@ msgstr "Eilutė: %s" msgid "Ln: %s Col: %d/%d Ch: %d/%d" msgstr "Eil.: %s Stlp.: %d/%d Sk.: %d/%d" +#, c-format +msgid " Sel: %d | %d" +msgstr "" + msgid "Merge" msgstr "Sulieti" diff --git a/Translations/WinMerge/Norwegian.po b/Translations/WinMerge/Norwegian.po index d61303194..b0ffadcc7 100644 --- a/Translations/WinMerge/Norwegian.po +++ b/Translations/WinMerge/Norwegian.po @@ -2757,6 +2757,10 @@ msgid "Ln: %s Col: %d/%d Ch: %d/%d" msgstr "" #, c-format +msgid " Sel: %d | %d" +msgstr "" + +#, c-format msgid "Merge" msgstr "Slå sammen" diff --git a/Translations/WinMerge/Persian.po b/Translations/WinMerge/Persian.po index 4e3ef41c1..3d0bb52ca 100644 --- a/Translations/WinMerge/Persian.po +++ b/Translations/WinMerge/Persian.po @@ -2776,6 +2776,10 @@ msgid "Ln: %s Col: %d/%d Ch: %d/%d" msgstr "Ln: %s Col: %d/%d Ch: %d/%d" #, c-format +msgid " Sel: %d | %d" +msgstr "" + +#, c-format msgid "Merge" msgstr " پيوند زدن " diff --git a/Translations/WinMerge/Polish.po b/Translations/WinMerge/Polish.po index ed77dfed8..4dcc52cdb 100644 --- a/Translations/WinMerge/Polish.po +++ b/Translations/WinMerge/Polish.po @@ -2126,6 +2126,10 @@ msgstr "Wiersz: %s" msgid "Ln: %s Col: %d/%d Ch: %d/%d" msgstr "Wier: %s Kol: %d/%d Zn: %d/%d" +#, c-format +msgid " Sel: %d | %d" +msgstr "" + msgid "Merge" msgstr "Scal" diff --git a/Translations/WinMerge/Portuguese.po b/Translations/WinMerge/Portuguese.po index 50627bb2b..a0a7b17c9 100644 --- a/Translations/WinMerge/Portuguese.po +++ b/Translations/WinMerge/Portuguese.po @@ -2272,6 +2272,10 @@ msgstr "Linha: %s" msgid "Ln: %s Col: %d/%d Ch: %d/%d" msgstr "Ln: %s Col: %d/%d Ch: %d/%d" +#, c-format +msgid " Sel: %d | %d" +msgstr "" + msgid "Merge" msgstr "Combinar" diff --git a/Translations/WinMerge/Romanian.po b/Translations/WinMerge/Romanian.po index 05bbb1bae..bad6d33a6 100644 --- a/Translations/WinMerge/Romanian.po +++ b/Translations/WinMerge/Romanian.po @@ -2752,6 +2752,10 @@ msgid "Ln: %s Col: %d/%d Ch: %d/%d" msgstr "" #, c-format +msgid " Sel: %d | %d" +msgstr "" + +#, c-format msgid "Merge" msgstr "Fuziune" diff --git a/Translations/WinMerge/Russian.po b/Translations/WinMerge/Russian.po index 0e217df65..32cd7ef1c 100644 --- a/Translations/WinMerge/Russian.po +++ b/Translations/WinMerge/Russian.po @@ -2128,6 +2128,10 @@ msgstr "Строка: %s" msgid "Ln: %s Col: %d/%d Ch: %d/%d" msgstr "Стр: %s Стб: %d/%d Симв: %d/%d" +#, c-format +msgid " Sel: %d | %d" +msgstr "" + msgid "Merge" msgstr "Объединение" diff --git a/Translations/WinMerge/Serbian.po b/Translations/WinMerge/Serbian.po index d579c5a74..e8a2fd645 100644 --- a/Translations/WinMerge/Serbian.po +++ b/Translations/WinMerge/Serbian.po @@ -2740,6 +2740,10 @@ msgid "Ln: %s Col: %d/%d Ch: %d/%d" msgstr "" #, c-format +msgid " Sel: %d | %d" +msgstr "" + +#, c-format msgid "Merge" msgstr "Упореди" diff --git a/Translations/WinMerge/Sinhala.po b/Translations/WinMerge/Sinhala.po index 111065bfb..fbbb3c348 100644 --- a/Translations/WinMerge/Sinhala.po +++ b/Translations/WinMerge/Sinhala.po @@ -2749,6 +2749,10 @@ msgid "Ln: %s Col: %d/%d Ch: %d/%d" msgstr "Ln: %s Col: %d/%d Ch: %d/%d" #, c-format +msgid " Sel: %d | %d" +msgstr "" + +#, c-format msgid "Merge" msgstr "මුසු කරන්න" diff --git a/Translations/WinMerge/Slovak.po b/Translations/WinMerge/Slovak.po index 95c85e7a6..0d98dbdec 100644 --- a/Translations/WinMerge/Slovak.po +++ b/Translations/WinMerge/Slovak.po @@ -2258,6 +2258,10 @@ msgstr "Riadok: %s" msgid "Ln: %s Col: %d/%d Ch: %d/%d" msgstr "Riad: %s Stĺ: %d/%d Zn: %d/%d" +#, c-format +msgid " Sel: %d | %d" +msgstr "" + msgid "Merge" msgstr "Zlúčiť" diff --git a/Translations/WinMerge/Slovenian.po b/Translations/WinMerge/Slovenian.po index 531a19196..685a59715 100644 --- a/Translations/WinMerge/Slovenian.po +++ b/Translations/WinMerge/Slovenian.po @@ -2786,6 +2786,10 @@ msgid "Ln: %s Col: %d/%d Ch: %d/%d" msgstr "Vr: %s St: %d/%d Zn: %d/%d" #, c-format +msgid " Sel: %d | %d" +msgstr "" + +#, c-format msgid "Merge" msgstr "Združi" diff --git a/Translations/WinMerge/Spanish.po b/Translations/WinMerge/Spanish.po index b26e1510c..f764a9282 100644 --- a/Translations/WinMerge/Spanish.po +++ b/Translations/WinMerge/Spanish.po @@ -2252,6 +2252,10 @@ msgstr "Línea: %s" msgid "Ln: %s Col: %d/%d Ch: %d/%d" msgstr "" +#, c-format +msgid " Sel: %d | %d" +msgstr "" + msgid "Merge" msgstr "Combinar" diff --git a/Translations/WinMerge/Swedish.po b/Translations/WinMerge/Swedish.po index 69a6cf71d..b0ec9fc65 100644 --- a/Translations/WinMerge/Swedish.po +++ b/Translations/WinMerge/Swedish.po @@ -2785,6 +2785,10 @@ msgid "Ln: %s Col: %d/%d Ch: %d/%d" msgstr "Ln: %s Col: %d/%d Ch: %d/%d" #, c-format +msgid " Sel: %d | %d" +msgstr "" + +#, c-format msgid "Merge" msgstr "Sammanfoga" diff --git a/Translations/WinMerge/Turkish.po b/Translations/WinMerge/Turkish.po index 0d09e7445..e6531bc7f 100644 --- a/Translations/WinMerge/Turkish.po +++ b/Translations/WinMerge/Turkish.po @@ -2245,6 +2245,10 @@ msgstr "Satır: %s" msgid "Ln: %s Col: %d/%d Ch: %d/%d" msgstr "Satır: %s Sütun: %d/%d Karakter: %d/%d" +#, c-format +msgid " Sel: %d | %d" +msgstr "" + msgid "Merge" msgstr "Birleştir" diff --git a/Translations/WinMerge/Ukrainian.po b/Translations/WinMerge/Ukrainian.po index 703c13d5e..0dd3144e7 100644 --- a/Translations/WinMerge/Ukrainian.po +++ b/Translations/WinMerge/Ukrainian.po @@ -2758,6 +2758,10 @@ msgid "Ln: %s Col: %d/%d Ch: %d/%d" msgstr "" #, c-format +msgid " Sel: %d | %d" +msgstr "" + +#, c-format msgid "Merge" msgstr "Об'єднання" -- 2.11.0
Arabic10291030 914 0115116 89 % 2019-12-30
Basque10291030 650 0379380 63 % 2013-02-03
Brazilian10291030 1029 001 100 % 2021-02-14
Bulgarian10291030 955 07475 93 % 2021-02-11
Catalan10291030 575 0454455 56 %
ChineseSimplified10291030 987 04243 96 %
ChineseTraditional10291030 867 0162163 84 % 2010-02-19
Croatian10291030 641 1387388 62 % 2009-02-13
Czech10291030 613 0416417 60 %
Danish10291030 650 0379380 63 % 2013-01-13
Dutch10291030 1027 023 100 % 2018-09-06
English1030103010311031 0 0 100 %2021-04-152021-04-18
Finnish10291030 914 0115116 89 %
French10291030 1027 023 100 % 2021-02-10
Galician10291030 1029 001 100 % 2021-04-01
German10291030 1029 001 100 % 2021-04-04
Greek10291030 613 0416417 60 %
Hungarian10291030 1027 023 100 % 2021-03-15
Italian10291030 917 0112113 89 % 2019-07-12
Japanese10291030 1029 001 100 % 2021-03-31
Korean10291030 998 03132 97 % 2021-03-30
Lithuanian10291030 1029 001 100 % 2021-04-01
Norwegian10291030 642 0387388 62 %
Persian10291030 653 0376377 63 % 2013-08-15
Polish10291030 1018 01112 99 %
Portuguese10291030 1029 001 100 % 2021-04-10
Romanian10291030 571 44414415 60 %
Russian10291030 1016 01314 99 % 2021-03-28
Serbian10291030 641 0388389 62 %
Sinhala10291030 571 63395396 62 % 2010-12-12
Slovak10291030 987 04243 96 % 2020-11-02
Slovenian10291030 1027 023 100 % 2021-03-02
Spanish10291030 883 0146147 86 % 2020-04-03
Swedish10291030 1029 001 100 % 2021-04-10
Turkish10291030 983 04696 %4795 % 2020-09-08
Ukrainian10291030 647 0382383 63 % 2009-06-13