aboutsummaryrefslogtreecommitdiff
path: root/src-qt5/desktop-utils/lumina-textedit
diff options
context:
space:
mode:
Diffstat (limited to 'src-qt5/desktop-utils/lumina-textedit')
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/ColorDialog.cpp59
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/ColorDialog.h48
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/ColorDialog.ui81
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/MainUI.cpp333
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/MainUI.h77
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/MainUI.ui377
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/PlainTextEditor.cpp269
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/PlainTextEditor.h99
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_af.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_ar.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_az.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_bg.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_bn.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_bs.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_ca.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_cs.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_cy.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_da.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_de.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_el.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_en_GB.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_en_ZA.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_es.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_et.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_eu.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_fa.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_fi.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_fr.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_fr_CA.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_gl.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_he.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_hi.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_hr.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_hu.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_id.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_is.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_it.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_ja.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_ka.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_ko.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_lt.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_lv.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_mk.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_mn.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_ms.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_mt.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_nb.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_nl.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_pa.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_pl.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_pt.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_pt_BR.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_ro.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_ru.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_sk.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_sl.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_sr.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_sv.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_sw.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_ta.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_tg.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_th.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_tr.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_uk.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_uz.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_vi.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_zh_CN.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_zh_HK.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_zh_TW.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_zu.ts253
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/lumina-textedit.pro97
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/main.cpp31
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/syntaxSupport.cpp202
-rw-r--r--src-qt5/desktop-utils/lumina-textedit/syntaxSupport.h95
74 files changed, 17454 insertions, 0 deletions
diff --git a/src-qt5/desktop-utils/lumina-textedit/ColorDialog.cpp b/src-qt5/desktop-utils/lumina-textedit/ColorDialog.cpp
new file mode 100644
index 00000000..d89bdad0
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/ColorDialog.cpp
@@ -0,0 +1,59 @@
+//===========================================
+// Lumina-DE source code
+// Copyright (c) 2015, Ken Moore
+// Available under the 3-clause BSD license
+// See the LICENSE file for full details
+//===========================================
+#include "ColorDialog.h"
+#include "ui_ColorDialog.h"
+
+#include <QColorDialog>
+#include <QStringList>
+
+#include <LuminaXDG.h>
+
+ColorDialog::ColorDialog(QSettings *set, QWidget *parent) : QDialog(parent), ui(new Ui::ColorDialog()){
+ ui->setupUi(this);
+ settings = set;
+ connect(ui->push_cancel, SIGNAL(clicked()), this, SLOT(close()) );
+ connect(ui->push_apply, SIGNAL(clicked()), this, SLOT(saveColors()) );
+ connect(ui->push_getcolor, SIGNAL(clicked()), this, SLOT(changeColor()) );
+}
+
+void ColorDialog::LoadColors(){
+ ui->treeWidget->clear();
+ QStringList colors = settings->allKeys().filter("colors/");
+
+ for(int i=0; i<colors.length(); i++){
+ QTreeWidgetItem *it = new QTreeWidgetItem();
+ it->setText(0, colors[i].section("/",-1));
+ it->setText(1, settings->value(colors[i]).toString() );
+ it->setBackground(2, QBrush(QColor( it->text(1) ) ) );
+ ui->treeWidget->addTopLevelItem(it);
+ }
+}
+
+void ColorDialog::updateIcons(){
+ this->setWindowIcon( LXDG::findIcon("format-fill-color") );
+ ui->push_cancel->setIcon( LXDG::findIcon("dialog-cancel") );
+ ui->push_apply->setIcon( LXDG::findIcon("dialog-ok") );
+ ui->push_getcolor->setIcon( LXDG::findIcon("format-fill-color") );
+}
+
+void ColorDialog::saveColors(){
+ for(int i=0; i<ui->treeWidget->topLevelItemCount(); i++){
+ QTreeWidgetItem *it = ui->treeWidget->topLevelItem(i);
+ settings->setValue("colors/"+it->text(0), it->text(1));
+ }
+ emit colorsChanged();
+ this->close();
+}
+
+void ColorDialog::changeColor(){
+ QTreeWidgetItem *it = ui->treeWidget->currentItem();
+ if(it==0){ return; }
+ QColor color = QColorDialog::getColor(QColor( it->text(1)), this, tr("Select Color"));
+ if(!color.isValid()){ return; }
+ it->setText(1, color.name());
+ it->setBackground(2, QBrush(color));
+} \ No newline at end of file
diff --git a/src-qt5/desktop-utils/lumina-textedit/ColorDialog.h b/src-qt5/desktop-utils/lumina-textedit/ColorDialog.h
new file mode 100644
index 00000000..2cddd7cf
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/ColorDialog.h
@@ -0,0 +1,48 @@
+//===========================================
+// Lumina-DE source code
+// Copyright (c) 2015, Ken Moore
+// Available under the 3-clause BSD license
+// See the LICENSE file for full details
+//===========================================
+#ifndef _LUMINA_PLAIN_TEXT_EDITOR_COLOR_DIALOG_H
+#define _LUMINA_PLAIN_TEXT_EDITOR_COLOR_DIALOG_H
+
+#include <QDialog>
+#include <QSettings>
+#include <QWidget>
+#include <QCloseEvent>
+
+namespace Ui{
+ class ColorDialog;
+};
+
+class ColorDialog : public QDialog{
+ Q_OBJECT
+private:
+ Ui::ColorDialog *ui;
+ QSettings *settings;
+
+public:
+ ColorDialog(QSettings *set, QWidget *parent);
+ ~ColorDialog(){}
+
+ void LoadColors();
+
+public slots:
+ void updateIcons();
+
+private slots:
+ void saveColors();
+ void changeColor();
+
+signals:
+ void colorsChanged();
+
+protected:
+ void closeEvent(QCloseEvent*){
+ //Make sure this window never actually closes until the app is finished
+ this->hide();
+ }
+};
+
+#endif \ No newline at end of file
diff --git a/src-qt5/desktop-utils/lumina-textedit/ColorDialog.ui b/src-qt5/desktop-utils/lumina-textedit/ColorDialog.ui
new file mode 100644
index 00000000..de78deee
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/ColorDialog.ui
@@ -0,0 +1,81 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>ColorDialog</class>
+ <widget class="QDialog" name="ColorDialog">
+ <property name="geometry">
+ <rect>
+ <x>0</x>
+ <y>0</y>
+ <width>400</width>
+ <height>300</height>
+ </rect>
+ </property>
+ <property name="windowTitle">
+ <string>Customize Colors</string>
+ </property>
+ <layout class="QVBoxLayout" name="verticalLayout">
+ <item>
+ <widget class="QTreeWidget" name="treeWidget">
+ <attribute name="headerDefaultSectionSize">
+ <number>100</number>
+ </attribute>
+ <column>
+ <property name="text">
+ <string>Item Type</string>
+ </property>
+ </column>
+ <column>
+ <property name="text">
+ <string>Color</string>
+ </property>
+ </column>
+ <column>
+ <property name="text">
+ <string>Sample</string>
+ </property>
+ </column>
+ </widget>
+ </item>
+ <item>
+ <layout class="QHBoxLayout" name="horizontalLayout">
+ <item>
+ <widget class="QPushButton" name="push_getcolor">
+ <property name="text">
+ <string>Select Color</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <spacer name="horizontalSpacer">
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="sizeHint" stdset="0">
+ <size>
+ <width>40</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ <item>
+ <widget class="QPushButton" name="push_cancel">
+ <property name="text">
+ <string>Cancel</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QPushButton" name="push_apply">
+ <property name="text">
+ <string>Apply</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </item>
+ </layout>
+ </widget>
+ <resources/>
+ <connections/>
+</ui>
diff --git a/src-qt5/desktop-utils/lumina-textedit/MainUI.cpp b/src-qt5/desktop-utils/lumina-textedit/MainUI.cpp
new file mode 100644
index 00000000..7425b399
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/MainUI.cpp
@@ -0,0 +1,333 @@
+//===========================================
+// Lumina-DE source code
+// Copyright (c) 2015, Ken Moore
+// Available under the 3-clause BSD license
+// See the LICENSE file for full details
+//===========================================
+#include "MainUI.h"
+#include "ui_MainUI.h"
+
+#include "syntaxSupport.h"
+
+#include <LuminaXDG.h>
+#include <LuminaUtils.h>
+
+#include <QFileDialog>
+#include <QDir>
+#include <QKeySequence>
+#include <QTimer>
+
+MainUI::MainUI() : QMainWindow(), ui(new Ui::MainUI){
+ ui->setupUi(this);
+ settings = new QSettings("lumina-desktop","lumina-textedit");
+ Custom_Syntax::SetupDefaultColors(settings); //pre-load any color settings as needed
+ colorDLG = new ColorDialog(settings, this);
+ this->setWindowTitle(tr("Text Editor"));
+ ui->tabWidget->clear();
+ closeFindS = new QShortcut(QKeySequence(Qt::Key_Escape), this);
+ connect(closeFindS, SIGNAL(activated()), this, SLOT(closeFindReplace()) );
+ ui->groupReplace->setVisible(false);
+ //Update the menu of available syntax highlighting modes
+ QStringList smodes = Custom_Syntax::availableRules();
+ for(int i=0; i<smodes.length(); i++){
+ ui->menuSyntax_Highlighting->addAction(smodes[i]);
+ }
+ ui->actionLine_Numbers->setChecked( settings->value("showLineNumbers",true).toBool() );
+ ui->actionWrap_Lines->setChecked( settings->value("wrapLines",true).toBool() );
+ //Setup any connections
+ connect(ui->actionClose, SIGNAL(triggered()), this, SLOT(close()) );
+ connect(ui->actionNew_File, SIGNAL(triggered()), this, SLOT(NewFile()) );
+ connect(ui->actionOpen_File, SIGNAL(triggered()), this, SLOT(OpenFile()) );
+ connect(ui->actionClose_File, SIGNAL(triggered()), this, SLOT(CloseFile()) );
+ connect(ui->actionSave_File, SIGNAL(triggered()), this, SLOT(SaveFile()) );
+ connect(ui->actionSave_File_As, SIGNAL(triggered()), this, SLOT(SaveFileAs()) );
+ connect(ui->menuSyntax_Highlighting, SIGNAL(triggered(QAction*)), this, SLOT(UpdateHighlighting(QAction*)) );
+ connect(ui->tabWidget, SIGNAL(currentChanged(int)), this, SLOT(tabChanged()) );
+ connect(ui->tabWidget, SIGNAL(tabCloseRequested(int)), this, SLOT(tabClosed(int)) );
+ connect(ui->actionLine_Numbers, SIGNAL(toggled(bool)), this, SLOT(showLineNumbers(bool)) );
+ connect(ui->actionWrap_Lines, SIGNAL(toggled(bool)), this, SLOT(wrapLines(bool)) );
+ connect(ui->actionCustomize_Colors, SIGNAL(triggered()), this, SLOT(ModifyColors()) );
+ connect(ui->actionFind, SIGNAL(triggered()), this, SLOT(openFind()) );
+ connect(ui->actionReplace, SIGNAL(triggered()), this, SLOT(openReplace()) );
+ connect(ui->tool_find_next, SIGNAL(clicked()), this, SLOT(findNext()) );
+ connect(ui->tool_find_prev, SIGNAL(clicked()), this, SLOT(findPrev()) );
+ connect(ui->tool_replace, SIGNAL(clicked()), this, SLOT(replaceOne()) );
+ connect(ui->tool_replace_all, SIGNAL(clicked()), this, SLOT(replaceAll()) );
+ connect(ui->line_find, SIGNAL(returnPressed()), this, SLOT(findNext()) );
+ connect(ui->line_replace, SIGNAL(returnPressed()), this, SLOT(replaceOne()) );
+ connect(colorDLG, SIGNAL(colorsChanged()), this, SLOT(UpdateHighlighting()) );
+ updateIcons();
+ //Now load the initial size of the window
+ QSize lastSize = settings->value("lastSize",QSize()).toSize();
+ if(lastSize.width() > this->sizeHint().width() && lastSize.height() > this->sizeHint().height() ){
+ this->resize(lastSize);
+ }
+}
+
+MainUI::~MainUI(){
+
+}
+
+void MainUI::LoadArguments(QStringList args){ //CLI arguments
+ for(int i=0; i<args.length(); i++){
+ OpenFile( LUtils::PathToAbsolute(args[i]) );
+ ui->line_find->setFocus();
+ }
+}
+
+// =================
+// PUBLIC SLOTS
+//=================
+void MainUI::updateIcons(){
+ this->setWindowIcon( LXDG::findIcon("document-edit") );
+ ui->actionClose->setIcon(LXDG::findIcon("application-exit") );
+ ui->actionNew_File->setIcon(LXDG::findIcon("document-new") );
+ ui->actionOpen_File->setIcon(LXDG::findIcon("document-open") );
+ ui->actionClose_File->setIcon(LXDG::findIcon("document-close") );
+ ui->actionSave_File->setIcon(LXDG::findIcon("document-save") );
+ ui->actionSave_File_As->setIcon(LXDG::findIcon("document-save-as") );
+ ui->actionFind->setIcon(LXDG::findIcon("edit-find") );
+ ui->actionReplace->setIcon(LXDG::findIcon("edit-find-replace") );
+ ui->menuSyntax_Highlighting->setIcon( LXDG::findIcon("format-text-color") );
+ ui->actionCustomize_Colors->setIcon( LXDG::findIcon("format-fill-color") );
+ //icons for the special find/replace groupbox
+ ui->tool_find_next->setIcon(LXDG::findIcon("go-down-search"));
+ ui->tool_find_prev->setIcon(LXDG::findIcon("go-up-search"));
+ ui->tool_find_casesensitive->setIcon(LXDG::findIcon("format-text-italic"));
+ ui->tool_replace->setIcon(LXDG::findIcon("arrow-down"));
+ ui->tool_replace_all->setIcon(LXDG::findIcon("arrow-down-double"));
+ //ui->tool_find_next->setIcon(LXDG::findIcon(""));
+
+ QTimer::singleShot(0,colorDLG, SLOT(updateIcons()) );
+}
+
+// =================
+// PRIVATE
+//=================
+PlainTextEditor* MainUI::currentEditor(){
+ if(ui->tabWidget->count()<1){ return 0; }
+ return static_cast<PlainTextEditor*>( ui->tabWidget->currentWidget() );
+}
+
+QString MainUI::currentFileDir(){
+ PlainTextEditor* cur = currentEditor();
+ QString dir;
+ if(cur!=0){
+ if(cur->currentFile().startsWith("/")){
+ dir = cur->currentFile().section("/",0,-2);
+ }
+ }
+ return dir;
+}
+
+// =================
+// PRIVATE SLOTS
+//=================
+//Main Actions
+void MainUI::NewFile(){
+ OpenFile(QString::number(ui->tabWidget->count()+1)+"/"+tr("New File"));
+}
+
+void MainUI::OpenFile(QString file){
+ QStringList files;
+ if(file.isEmpty()){
+ //Prompt for a file to open
+ files = QFileDialog::getOpenFileNames(this, tr("Open File(s)"), currentFileDir(), tr("Text Files (*)") );
+ if(files.isEmpty()){ return; } //cancelled
+ }else{
+ files << file;
+ }
+ for(int i=0; i<files.length(); i++){
+ PlainTextEditor *edit = new PlainTextEditor(settings, this);
+ connect(edit, SIGNAL(FileLoaded(QString)), this, SLOT(updateTab(QString)) );
+ connect(edit, SIGNAL(UnsavedChanges(QString)), this, SLOT(updateTab(QString)) );
+ ui->tabWidget->addTab(edit, files[i].section("/",-1));
+ edit->showLineNumbers(ui->actionLine_Numbers->isChecked());
+ edit->setLineWrapMode( ui->actionWrap_Lines->isChecked() ? QPlainTextEdit::WidgetWidth : QPlainTextEdit::NoWrap);
+ edit->setFocusPolicy(Qt::ClickFocus); //no "tabbing" into this widget
+ ui->tabWidget->setCurrentWidget(edit);
+ edit->LoadFile(files[i]);
+ edit->setFocus();
+ QApplication::processEvents(); //to catch the fileLoaded() signal
+ }
+}
+
+void MainUI::CloseFile(){
+ int index = ui->tabWidget->currentIndex();
+ if(index>=0){ tabClosed(index); }
+}
+
+void MainUI::SaveFile(){
+ PlainTextEditor *cur = currentEditor();
+ if(cur==0){ return; }
+ cur->SaveFile();
+}
+
+void MainUI::SaveFileAs(){
+ PlainTextEditor *cur = currentEditor();
+ if(cur==0){ return; }
+ cur->SaveFile(true);
+}
+
+void MainUI::UpdateHighlighting(QAction *act){
+ if(act!=0){
+ //Single-editor change
+ PlainTextEditor *cur = currentEditor();
+ if(cur==0){ return; }
+ cur->LoadSyntaxRule(act->text());
+ }else{
+ //Have every editor reload the syntax rules (color changes)
+ for(int i=0; i<ui->tabWidget->count(); i++){
+ static_cast<PlainTextEditor*>(ui->tabWidget->widget(i))->updateSyntaxColors();
+ }
+ }
+}
+
+void MainUI::showLineNumbers(bool show){
+ settings->setValue("showLineNumbers",show);
+ for(int i=0; i<ui->tabWidget->count(); i++){
+ PlainTextEditor *edit = static_cast<PlainTextEditor*>(ui->tabWidget->widget(i));
+ edit->showLineNumbers(show);
+ }
+}
+
+void MainUI::wrapLines(bool wrap){
+ settings->setValue("wrapLines",wrap);
+ for(int i=0; i<ui->tabWidget->count(); i++){
+ PlainTextEditor *edit = static_cast<PlainTextEditor*>(ui->tabWidget->widget(i));
+ edit->setLineWrapMode( wrap ? QPlainTextEdit::WidgetWidth : QPlainTextEdit::NoWrap);
+ }
+}
+
+void MainUI::ModifyColors(){
+ colorDLG->LoadColors();
+ colorDLG->showNormal();
+}
+
+void MainUI::updateTab(QString file){
+ PlainTextEditor *cur = 0;
+ int index = -1;
+ for(int i=0; i<ui->tabWidget->count(); i++){
+ PlainTextEditor *tmp = static_cast<PlainTextEditor*>(ui->tabWidget->widget(i));
+ if(tmp->currentFile()==file){
+ cur = tmp;
+ index = i;
+ break;
+ }
+ }
+ if(cur==0){ return; } //should never happen
+ bool changes = cur->hasChange();
+ //qDebug() << "Update Tab:" << file << cur << changes;
+ ui->tabWidget->setTabText(index,(changes ? "*" : "") + file.section("/",-1));
+ ui->actionSave_File->setEnabled(changes);
+ ui->actionSave_File_As->setEnabled(changes);
+ this->setWindowTitle( ui->tabWidget->tabText( ui->tabWidget->currentIndex() ) );
+}
+
+void MainUI::tabChanged(){
+ //update the buttons/menus based on the current widget
+ PlainTextEditor *cur = currentEditor();
+ if(cur==0){ return; } //should never happen though
+ bool changes = cur->hasChange();
+ ui->actionSave_File->setEnabled(changes);
+ ui->actionSave_File_As->setEnabled(changes);
+ this->setWindowTitle( ui->tabWidget->tabText( ui->tabWidget->currentIndex() ) );
+ if(!ui->line_find->hasFocus() && !ui->line_replace->hasFocus()){ ui->tabWidget->currentWidget()->setFocus(); }
+}
+
+void MainUI::tabClosed(int tab){
+ PlainTextEditor *edit = static_cast<PlainTextEditor*>(ui->tabWidget->widget(tab));
+ if(edit==0){ return; } //should never happen
+ if(edit->hasChange()){
+ //Verify if the user wants to lose any unsaved changes
+
+ }
+ ui->tabWidget->removeTab(tab);
+ edit->deleteLater();
+}
+
+//Find/Replace functions
+void MainUI::closeFindReplace(){
+ ui->groupReplace->setVisible(false);
+ PlainTextEditor *cur = currentEditor();
+ if(cur!=0){ cur->setFocus(); }
+}
+
+void MainUI::openFind(){
+ PlainTextEditor *cur = currentEditor();
+ if(cur==0){ return; }
+ ui->groupReplace->setVisible(true);
+ ui->line_find->setText( cur->textCursor().selectedText() );
+ ui->line_replace->setText("");
+ ui->line_find->setFocus();
+}
+
+void MainUI::openReplace(){
+ PlainTextEditor *cur = currentEditor();
+ if(cur==0){ return; }
+ ui->groupReplace->setVisible(true);
+ ui->line_find->setText( cur->textCursor().selectedText() );
+ ui->line_replace->setText("");
+ ui->line_replace->setFocus();
+}
+
+void MainUI::findNext(){
+ PlainTextEditor *cur = currentEditor();
+ if(cur==0){ return; }
+ bool found = cur->find( ui->line_find->text(), ui->tool_find_casesensitive->isChecked() ? QTextDocument::FindCaseSensitively : QTextDocument::FindFlags() );
+ if(!found){
+ //Try starting back at the top of the file
+ cur->moveCursor(QTextCursor::Start);
+ cur->find( ui->line_find->text(), ui->tool_find_casesensitive->isChecked() ? QTextDocument::FindCaseSensitively : QTextDocument::FindFlags() );
+ }
+}
+
+void MainUI::findPrev(){
+ PlainTextEditor *cur = currentEditor();
+ if(cur==0){ return; }
+ bool found = cur->find( ui->line_find->text(), ui->tool_find_casesensitive->isChecked() ? QTextDocument::FindCaseSensitively | QTextDocument::FindBackward : QTextDocument::FindBackward );
+ if(!found){
+ //Try starting back at the bottom of the file
+ cur->moveCursor(QTextCursor::End);
+ cur->find( ui->line_find->text(), ui->tool_find_casesensitive->isChecked() ? QTextDocument::FindCaseSensitively | QTextDocument::FindBackward : QTextDocument::FindBackward );
+ }
+}
+
+void MainUI::replaceOne(){
+ PlainTextEditor *cur = currentEditor();
+ if(cur==0){ return; }
+ //See if the current selection matches the find field first
+ bool done = false;
+ if(cur->textCursor().selectedText()==ui->line_find->text()){
+ cur->insertPlainText(ui->line_replace->text());
+ done = true;
+ }else{
+ //Find/replace the next occurance of the string
+ bool found = cur->find( ui->line_find->text(), ui->tool_find_casesensitive->isChecked() ? QTextDocument::FindCaseSensitively : QTextDocument::FindFlags() );
+ if(found){ cur->insertPlainText(ui->line_replace->text()); done = true;}
+ }
+ if(done){
+ //Re-highlight the newly-inserted text
+ cur->find( ui->line_replace->text(), QTextDocument::FindCaseSensitively | QTextDocument::FindBackward);
+ }
+}
+
+void MainUI::replaceAll(){
+PlainTextEditor *cur = currentEditor();
+ if(cur==0){ return; }
+ //See if the current selection matches the find field first
+ bool done = false;
+ if(cur->textCursor().selectedText()==ui->line_find->text()){
+ cur->insertPlainText(ui->line_replace->text());
+ done = true;
+ }
+ while( cur->find( ui->line_find->text(), ui->tool_find_casesensitive->isChecked() ? QTextDocument::FindCaseSensitively : QTextDocument::FindFlags() ) ){
+ //Find/replace every occurance of the string
+ cur->insertPlainText(ui->line_replace->text());
+ done = true;
+ }
+ if(done){
+ //Re-highlight the newly-inserted text
+ cur->find( ui->line_replace->text(), QTextDocument::FindCaseSensitively | QTextDocument::FindBackward);
+ }
+}
diff --git a/src-qt5/desktop-utils/lumina-textedit/MainUI.h b/src-qt5/desktop-utils/lumina-textedit/MainUI.h
new file mode 100644
index 00000000..a090cde5
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/MainUI.h
@@ -0,0 +1,77 @@
+//===========================================
+// Lumina-DE source code
+// Copyright (c) 2015, Ken Moore
+// Available under the 3-clause BSD license
+// See the LICENSE file for full details
+//===========================================
+#ifndef _LUMINA_PLAIN_TEXT_EDITOR_MAIN_UI_H
+#define _LUMINA_PLAIN_TEXT_EDITOR_MAIN_UI_H
+
+#include <QMainWindow>
+#include <QStringList>
+#include <QSettings>
+#include <QShortcut>
+
+#include "PlainTextEditor.h"
+#include "ColorDialog.h"
+
+namespace Ui{
+ class MainUI;
+};
+
+class MainUI : public QMainWindow{
+ Q_OBJECT
+public:
+ MainUI();
+ ~MainUI();
+
+ void LoadArguments(QStringList args); //CLI arguments
+
+public slots:
+ void updateIcons();
+
+private:
+ Ui::MainUI *ui;
+ ColorDialog *colorDLG;
+ QSettings *settings;
+ QShortcut *closeFindS;
+
+ //Simplification functions
+ PlainTextEditor* currentEditor();
+ QString currentFileDir();
+
+private slots:
+ //Main Actions
+ void NewFile();
+ void OpenFile(QString file = "");
+ void CloseFile(); //current file only
+ void SaveFile();
+ void SaveFileAs();
+
+ //Other Menu Actions
+ void UpdateHighlighting(QAction *act = 0);
+ void showLineNumbers(bool);
+ void wrapLines(bool);
+ void ModifyColors();
+
+ //Tab Interactions
+ void updateTab(QString);
+ void tabChanged();
+ void tabClosed(int);
+
+ //Find/Replace functions
+ void closeFindReplace();
+ void openFind();
+ void openReplace();
+
+ void findNext();
+ void findPrev();
+ void replaceOne();
+ void replaceAll();
+
+protected:
+ void resizeEvent(QResizeEvent *ev){
+ settings->setValue("lastSize", ev->size());
+ }
+};
+#endif \ No newline at end of file
diff --git a/src-qt5/desktop-utils/lumina-textedit/MainUI.ui b/src-qt5/desktop-utils/lumina-textedit/MainUI.ui
new file mode 100644
index 00000000..26fceac4
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/MainUI.ui
@@ -0,0 +1,377 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>MainUI</class>
+ <widget class="QMainWindow" name="MainUI">
+ <property name="geometry">
+ <rect>
+ <x>0</x>
+ <y>0</y>
+ <width>505</width>
+ <height>505</height>
+ </rect>
+ </property>
+ <property name="windowTitle">
+ <string>MainWindow</string>
+ </property>
+ <widget class="QWidget" name="centralwidget">
+ <layout class="QVBoxLayout" name="verticalLayout">
+ <property name="spacing">
+ <number>2</number>
+ </property>
+ <property name="leftMargin">
+ <number>0</number>
+ </property>
+ <property name="topMargin">
+ <number>0</number>
+ </property>
+ <property name="rightMargin">
+ <number>0</number>
+ </property>
+ <property name="bottomMargin">
+ <number>0</number>
+ </property>
+ <item>
+ <widget class="QTabWidget" name="tabWidget">
+ <property name="focusPolicy">
+ <enum>Qt::NoFocus</enum>
+ </property>
+ <property name="tabsClosable">
+ <bool>true</bool>
+ </property>
+ <property name="movable">
+ <bool>true</bool>
+ </property>
+ <property name="tabBarAutoHide">
+ <bool>false</bool>
+ </property>
+ <widget class="QWidget" name="tab">
+ <attribute name="title">
+ <string>Tab 1</string>
+ </attribute>
+ </widget>
+ </widget>
+ </item>
+ <item>
+ <widget class="QGroupBox" name="groupReplace">
+ <property name="title">
+ <string>Find/Replace</string>
+ </property>
+ <property name="flat">
+ <bool>false</bool>
+ </property>
+ <layout class="QGridLayout" name="gridLayout">
+ <property name="leftMargin">
+ <number>1</number>
+ </property>
+ <property name="topMargin">
+ <number>3</number>
+ </property>
+ <property name="rightMargin">
+ <number>1</number>
+ </property>
+ <property name="bottomMargin">
+ <number>1</number>
+ </property>
+ <property name="spacing">
+ <number>2</number>
+ </property>
+ <item row="1" column="1">
+ <widget class="QLineEdit" name="line_replace"/>
+ </item>
+ <item row="0" column="2">
+ <widget class="QToolButton" name="tool_find_prev">
+ <property name="focusPolicy">
+ <enum>Qt::NoFocus</enum>
+ </property>
+ <property name="statusTip">
+ <string>Find the previous match</string>
+ </property>
+ <property name="text">
+ <string>...</string>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="0">
+ <widget class="QLabel" name="label">
+ <property name="text">
+ <string>Find:</string>
+ </property>
+ <property name="alignment">
+ <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="3">
+ <widget class="QToolButton" name="tool_find_next">
+ <property name="focusPolicy">
+ <enum>Qt::NoFocus</enum>
+ </property>
+ <property name="statusTip">
+ <string>Find the next match</string>
+ </property>
+ <property name="text">
+ <string>...</string>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="0">
+ <widget class="QLabel" name="label_2">
+ <property name="text">
+ <string>Replace:</string>
+ </property>
+ <property name="alignment">
+ <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="1">
+ <widget class="QLineEdit" name="line_find"/>
+ </item>
+ <item row="0" column="4">
+ <widget class="QToolButton" name="tool_find_casesensitive">
+ <property name="focusPolicy">
+ <enum>Qt::NoFocus</enum>
+ </property>
+ <property name="toolTip">
+ <string/>
+ </property>
+ <property name="statusTip">
+ <string>Match case</string>
+ </property>
+ <property name="text">
+ <string notr="true"/>
+ </property>
+ <property name="checkable">
+ <bool>true</bool>
+ </property>
+ <property name="checked">
+ <bool>false</bool>
+ </property>
+ <property name="autoRaise">
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="2">
+ <widget class="QToolButton" name="tool_replace">
+ <property name="focusPolicy">
+ <enum>Qt::NoFocus</enum>
+ </property>
+ <property name="statusTip">
+ <string>Replace next match</string>
+ </property>
+ <property name="text">
+ <string>...</string>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="3">
+ <widget class="QToolButton" name="tool_replace_all">
+ <property name="focusPolicy">
+ <enum>Qt::NoFocus</enum>
+ </property>
+ <property name="statusTip">
+ <string>Replace all matches (to end of document)</string>
+ </property>
+ <property name="text">
+ <string>...</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ <widget class="QMenuBar" name="menubar">
+ <property name="geometry">
+ <rect>
+ <x>0</x>
+ <y>0</y>
+ <width>505</width>
+ <height>23</height>
+ </rect>
+ </property>
+ <widget class="QMenu" name="menuFile">
+ <property name="title">
+ <string>File</string>
+ </property>
+ <addaction name="actionNew_File"/>
+ <addaction name="actionOpen_File"/>
+ <addaction name="actionClose_File"/>
+ <addaction name="separator"/>
+ <addaction name="actionSave_File"/>
+ <addaction name="actionSave_File_As"/>
+ <addaction name="separator"/>
+ <addaction name="actionClose"/>
+ </widget>
+ <widget class="QMenu" name="menuView">
+ <property name="title">
+ <string>View</string>
+ </property>
+ <widget class="QMenu" name="menuSyntax_Highlighting">
+ <property name="title">
+ <string>Syntax Highlighting</string>
+ </property>
+ <addaction name="action_syntax_none"/>
+ <addaction name="separator"/>
+ </widget>
+ <addaction name="menuSyntax_Highlighting"/>
+ <addaction name="actionLine_Numbers"/>
+ <addaction name="actionWrap_Lines"/>
+ <addaction name="separator"/>
+ <addaction name="actionCustomize_Colors"/>
+ </widget>
+ <widget class="QMenu" name="menuEdit">
+ <property name="title">
+ <string>Edit</string>
+ </property>
+ <addaction name="actionFind"/>
+ <addaction name="actionReplace"/>
+ </widget>
+ <addaction name="menuFile"/>
+ <addaction name="menuEdit"/>
+ <addaction name="menuView"/>
+ </widget>
+ <widget class="QStatusBar" name="statusbar"/>
+ <widget class="QToolBar" name="toolBar">
+ <property name="contextMenuPolicy">
+ <enum>Qt::CustomContextMenu</enum>
+ </property>
+ <property name="windowTitle">
+ <string>toolBar</string>
+ </property>
+ <property name="movable">
+ <bool>false</bool>
+ </property>
+ <property name="floatable">
+ <bool>false</bool>
+ </property>
+ <attribute name="toolBarArea">
+ <enum>TopToolBarArea</enum>
+ </attribute>
+ <attribute name="toolBarBreak">
+ <bool>false</bool>
+ </attribute>
+ <addaction name="actionNew_File"/>
+ <addaction name="actionOpen_File"/>
+ <addaction name="actionSave_File"/>
+ </widget>
+ <action name="actionLine_Numbers">
+ <property name="checkable">
+ <bool>true</bool>
+ </property>
+ <property name="checked">
+ <bool>true</bool>
+ </property>
+ <property name="text">
+ <string>Show Line Numbers</string>
+ </property>
+ </action>
+ <action name="action_syntax_none">
+ <property name="text">
+ <string>None</string>
+ </property>
+ </action>
+ <action name="actionNew_File">
+ <property name="text">
+ <string>New File</string>
+ </property>
+ <property name="shortcut">
+ <string>Ctrl+N</string>
+ </property>
+ <property name="shortcutContext">
+ <enum>Qt::ApplicationShortcut</enum>
+ </property>
+ </action>
+ <action name="actionOpen_File">
+ <property name="text">
+ <string>Open File</string>
+ </property>
+ <property name="shortcut">
+ <string>Ctrl+O</string>
+ </property>
+ <property name="shortcutContext">
+ <enum>Qt::ApplicationShortcut</enum>
+ </property>
+ </action>
+ <action name="actionSave_File">
+ <property name="text">
+ <string>Save File</string>
+ </property>
+ <property name="shortcut">
+ <string>Ctrl+S</string>
+ </property>
+ <property name="shortcutContext">
+ <enum>Qt::ApplicationShortcut</enum>
+ </property>
+ </action>
+ <action name="actionSave_File_As">
+ <property name="text">
+ <string>Save File As</string>
+ </property>
+ </action>
+ <action name="actionClose">
+ <property name="text">
+ <string>Close</string>
+ </property>
+ <property name="shortcut">
+ <string>Ctrl+Q</string>
+ </property>
+ <property name="shortcutContext">
+ <enum>Qt::ApplicationShortcut</enum>
+ </property>
+ </action>
+ <action name="actionClose_File">
+ <property name="text">
+ <string>Close File</string>
+ </property>
+ <property name="shortcut">
+ <string>Ctrl+W</string>
+ </property>
+ <property name="shortcutContext">
+ <enum>Qt::ApplicationShortcut</enum>
+ </property>
+ </action>
+ <action name="actionCustomize_Colors">
+ <property name="text">
+ <string>Customize Colors</string>
+ </property>
+ </action>
+ <action name="actionWrap_Lines">
+ <property name="checkable">
+ <bool>true</bool>
+ </property>
+ <property name="checked">
+ <bool>true</bool>
+ </property>
+ <property name="text">
+ <string>Wrap Lines</string>
+ </property>
+ </action>
+ <action name="actionFind">
+ <property name="text">
+ <string>Find</string>
+ </property>
+ <property name="shortcut">
+ <string>Ctrl+F</string>
+ </property>
+ <property name="shortcutContext">
+ <enum>Qt::ApplicationShortcut</enum>
+ </property>
+ </action>
+ <action name="actionReplace">
+ <property name="text">
+ <string>Replace</string>
+ </property>
+ <property name="shortcut">
+ <string>Ctrl+R</string>
+ </property>
+ <property name="shortcutContext">
+ <enum>Qt::ApplicationShortcut</enum>
+ </property>
+ </action>
+ </widget>
+ <resources/>
+ <connections/>
+</ui>
diff --git a/src-qt5/desktop-utils/lumina-textedit/PlainTextEditor.cpp b/src-qt5/desktop-utils/lumina-textedit/PlainTextEditor.cpp
new file mode 100644
index 00000000..281c4bec
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/PlainTextEditor.cpp
@@ -0,0 +1,269 @@
+//===========================================
+// Lumina-DE source code
+// Copyright (c) 2015, Ken Moore
+// Available under the 3-clause BSD license
+// See the LICENSE file for full details
+//===========================================
+#include "PlainTextEditor.h"
+
+#include <QColor>
+#include <QPainter>
+#include <QTextBlock>
+#include <QFileDialog>
+#include <QDebug>
+
+#include <LuminaUtils.h>
+
+//==============
+// PUBLIC
+//==============
+PlainTextEditor::PlainTextEditor(QSettings *set, QWidget *parent) : QPlainTextEdit(parent){
+ settings = set;
+ LNW = new LNWidget(this);
+ showLNW = true;
+ hasChanges = false;
+ lastSaveContents.clear();
+ matchleft = matchright = -1;
+ this->setTabStopWidth( 8 * this->fontMetrics().width(" ") ); //8 character spaces per tab (UNIX standard)
+ //this->setObjectName("PlainTextEditor");
+ //this->setStyleSheet("QPlainTextEdit#PlainTextEditor{ }");
+ SYNTAX = new Custom_Syntax(settings, this->document());
+ connect(this, SIGNAL(blockCountChanged(int)), this, SLOT(LNW_updateWidth()) );
+ connect(this, SIGNAL(cursorPositionChanged()), this, SLOT(LNW_highlightLine()) );
+ connect(this, SIGNAL(updateRequest(const QRect&, int)), this, SLOT(LNW_update(const QRect&, int)) );
+ connect(this, SIGNAL(cursorPositionChanged()), this, SLOT(checkMatchChar()) );
+ connect(this, SIGNAL(textChanged()), this, SLOT(textChanged()) );
+ LNW_updateWidth();
+ LNW_highlightLine();
+}
+
+PlainTextEditor::~PlainTextEditor(){
+
+}
+
+void PlainTextEditor::showLineNumbers(bool show){
+ showLNW = show;
+ LNW->setVisible(show);
+ LNW_updateWidth();
+}
+
+void PlainTextEditor::LoadSyntaxRule(QString type){
+ SYNTAX->loadRules(type);
+ SYNTAX->rehighlight();
+}
+
+void PlainTextEditor::updateSyntaxColors(){
+ SYNTAX->reloadRules();
+ SYNTAX->rehighlight();
+}
+
+//File loading/setting options
+void PlainTextEditor::LoadFile(QString filepath){
+ this->setWhatsThis(filepath);
+ this->clear();
+ SYNTAX->loadRules( Custom_Syntax::ruleForFile(filepath.section("/",-1)) );
+ lastSaveContents = LUtils::readFile(filepath).join("\n");
+ this->setPlainText( lastSaveContents );
+ hasChanges = false;
+ emit FileLoaded(this->whatsThis());
+}
+
+void PlainTextEditor::SaveFile(bool newname){
+ //qDebug() << "Save File:" << this->whatsThis();
+ if( !this->whatsThis().startsWith("/") || newname ){
+ //prompt for a filename/path
+ QString file = QFileDialog::getSaveFileName(this, tr("Save File"), this->whatsThis(), tr("Text File (*)"));
+ if(file.isEmpty()){ return; }
+ this->setWhatsThis(file);
+ SYNTAX->loadRules( Custom_Syntax::ruleForFile(this->whatsThis().section("/",-1)) );
+ SYNTAX->rehighlight();
+ }
+ bool ok = LUtils::writeFile(this->whatsThis(), this->toPlainText().split("\n"), true);
+ hasChanges = !ok;
+ if(ok){ lastSaveContents = this->toPlainText(); emit FileLoaded(this->whatsThis()); }
+ //qDebug() << " - Success:" << ok << hasChanges;
+}
+
+QString PlainTextEditor::currentFile(){
+ return this->whatsThis();
+}
+
+bool PlainTextEditor::hasChange(){
+ return hasChanges;
+}
+
+//Functions for managing the line number widget
+int PlainTextEditor::LNWWidth(){
+ //Get the number of chars we need for line numbers
+ int lines = this->blockCount();
+ if(lines<1){ lines = 1; }
+ int chars = 1;
+ while(lines>=10){ chars++; lines/=10; }
+ return (this->fontMetrics().width("9")*chars); //make sure to add a tiny bit of padding
+}
+
+void PlainTextEditor::paintLNW(QPaintEvent *ev){
+ QPainter P(LNW);
+ //First set the background color
+ P.fillRect(ev->rect(), QColor("lightgrey"));
+ //Now determine which line numbers to show (based on the current viewport)
+ QTextBlock block = this->firstVisibleBlock();
+ int bTop = blockBoundingGeometry(block).translated(contentOffset()).top();
+ int bBottom;
+ //Now loop over the blocks (lines) and write in the numbers
+ P.setPen(Qt::black); //setup the font color
+ while(block.isValid() && bTop<=ev->rect().bottom()){ //ensure block below top of viewport
+ bBottom = bTop+blockBoundingRect(block).height();
+ if(block.isVisible() && bBottom >= ev->rect().top()){ //ensure block above bottom of viewport
+ P.drawText(0,bTop, LNW->width(), this->fontMetrics().height(), Qt::AlignRight, QString::number(block.blockNumber()+1) );
+ }
+ //Go to the next block
+ block = block.next();
+ bTop = bBottom;
+ }
+}
+
+//==============
+// PRIVATE
+//==============
+void PlainTextEditor::clearMatchData(){
+ if(matchleft>=0 || matchright>=0){
+ QList<QTextEdit::ExtraSelection> sel = this->extraSelections();
+ for(int i=0; i<sel.length(); i++){
+ if(sel[i].cursor.selectedText().length()==1){ sel.takeAt(i); i--; }
+ }
+ this->setExtraSelections(sel);
+ matchleft = -1;
+ matchright = -1;
+ }
+}
+
+void PlainTextEditor::highlightMatch(QChar ch, bool forward, int fromPos, QChar startch){
+ if(forward){ matchleft = fromPos; }
+ else{ matchright = fromPos; }
+
+ int nested = 1; //always start within the first nest (the primary nest)
+ int tmpFromPos = fromPos;
+ QString doc = this->toPlainText();
+ while( nested>0 && tmpFromPos<doc.length() && ( (tmpFromPos>=fromPos && forward) || ( tmpFromPos<=fromPos && !forward ) ) ){
+ if(forward){
+ QTextCursor cur = this->document()->find(ch, tmpFromPos);
+ if(!cur.isNull()){
+ nested += doc.mid(tmpFromPos+1, cur.position()-tmpFromPos).count(startch) -1;
+ if(nested==0){ matchright = cur.position(); }
+ else{ tmpFromPos = cur.position(); }
+ }else{ break; }
+ }else{
+ QTextCursor cur = this->document()->find(ch, tmpFromPos, QTextDocument::FindBackward);
+ if(!cur.isNull()){
+ nested += doc.mid(cur.position(), tmpFromPos-cur.position()).count(startch) -1;
+ if(nested==0){ matchleft = cur.position(); }
+ else{ tmpFromPos = cur.position()-1; }
+ }else{ break; }
+ }
+ }
+
+ //Now highlight the two characters
+ QList<QTextEdit::ExtraSelection> sels = this->extraSelections();
+ if(matchleft>=0){
+ QTextEdit::ExtraSelection sel;
+ if(matchright>=0){ sel.format.setBackground( QColor(settings->value("colors/bracket-found").toString()) ); }
+ else{ sel.format.setBackground( QColor(settings->value("colors/bracket-missing").toString()) ); }
+ QTextCursor cur = this->textCursor();
+ cur.setPosition(matchleft);
+ if(forward){ cur.movePosition(QTextCursor::NextCharacter, QTextCursor::KeepAnchor); }
+ else{ cur.movePosition(QTextCursor::PreviousCharacter, QTextCursor::KeepAnchor); }
+ sel.cursor = cur;
+ sels << sel;
+ }
+ if(matchright>=0){
+ QTextEdit::ExtraSelection sel;
+ if(matchleft>=0){ sel.format.setBackground( QColor(settings->value("colors/bracket-found").toString()) ); }
+ else{ sel.format.setBackground( QColor(settings->value("colors/bracket-missing").toString()) ); }
+ QTextCursor cur = this->textCursor();
+ cur.setPosition(matchright);
+ if(!forward){ cur.movePosition(QTextCursor::NextCharacter, QTextCursor::KeepAnchor); }
+ else{ cur.movePosition(QTextCursor::PreviousCharacter, QTextCursor::KeepAnchor); }
+ sel.cursor = cur;
+ sels << sel;
+ }
+ this->setExtraSelections(sels);
+}
+
+//===================
+// PRIVATE SLOTS
+//===================
+//Functions for managing the line number widget
+void PlainTextEditor::LNW_updateWidth(){
+ if(showLNW){
+ this->setViewportMargins( LNWWidth(), 0, 0, 0); //the LNW is contained within the left margin
+ }else{
+ this->setViewportMargins( 0, 0, 0, 0); //the LNW is contained within the left margin
+ }
+}
+
+void PlainTextEditor::LNW_highlightLine(){
+ if(this->isReadOnly()){ return; }
+ QColor highC = QColor(0,0,0,50); //just darken the line a bit
+ QTextEdit::ExtraSelection sel;
+ sel.format.setBackground(highC);
+ sel.format.setProperty(QTextFormat::FullWidthSelection, true);
+ sel.cursor = this->textCursor();
+ sel.cursor.clearSelection(); //just in case it already has one
+ setExtraSelections( QList<QTextEdit::ExtraSelection>() << sel );
+}
+
+void PlainTextEditor::LNW_update(const QRect &rect, int dy){
+ if(dy!=0){ LNW->scroll(0,dy); } //make sure to scroll the line widget the same amount as the editor
+ else{
+ //Some other reason we need to repaint the widget
+ LNW->update(0,rect.y(), LNW->width(), rect.height()); //also repaint the LNW in the same area
+ }
+ if(rect.contains(this->viewport()->rect())){
+ //Something in the currently-viewed area needs updating - make sure the LNW width is still correct
+ LNW_updateWidth();
+ }
+}
+
+//Function for running the matching routine
+void PlainTextEditor::checkMatchChar(){
+ clearMatchData();
+ int pos = this->textCursor().position();
+ QChar ch = this->document()->characterAt(pos);
+ bool tryback = true;
+ while(tryback){
+ tryback = false;
+ if(ch==QChar('(')){ highlightMatch(QChar(')'),true, pos, QChar('(') ); }
+ else if(ch==QChar(')')){ highlightMatch(QChar('('),false, pos, QChar(')') ); }
+ else if(ch==QChar('{')){ highlightMatch(QChar('}'),true, pos, QChar('{') ); }
+ else if(ch==QChar('}')){ highlightMatch(QChar('{'),false, pos, QChar('}') ); }
+ else if(ch==QChar('[')){ highlightMatch(QChar(']'),true, pos, QChar('[') ); }
+ else if(ch==QChar(']')){ highlightMatch(QChar('['),false, pos, QChar(']') ); }
+ else if(pos==this->textCursor().position()){
+ //Try this one more time - using the previous character instead of the current character
+ tryback = true;
+ pos--;
+ ch = this->document()->characterAt(pos);
+ }
+ } //end check for next/previous char
+}
+
+//Functions for notifying the parent widget of changes
+void PlainTextEditor::textChanged(){
+ //qDebug() << " - Got Text Changed signal";
+ bool changed = (lastSaveContents != this->toPlainText());
+ if(changed == hasChanges){ return; } //no change
+ hasChanges = changed; //save for reading later
+ if(hasChanges){ emit UnsavedChanges( this->whatsThis() ); }
+ else{ emit FileLoaded(this->whatsThis()); }
+}
+
+//==================
+// PROTECTED
+//==================
+void PlainTextEditor::resizeEvent(QResizeEvent *ev){
+ QPlainTextEdit::resizeEvent(ev); //do the normal resize processing
+ //Now re-adjust the placement of the LNW (within the left margin area)
+ QRect cGeom = this->contentsRect();
+ LNW->setGeometry( QRect(cGeom.left(), cGeom.top(), LNWWidth(), cGeom.height()) );
+}
diff --git a/src-qt5/desktop-utils/lumina-textedit/PlainTextEditor.h b/src-qt5/desktop-utils/lumina-textedit/PlainTextEditor.h
new file mode 100644
index 00000000..8ba1e4bc
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/PlainTextEditor.h
@@ -0,0 +1,99 @@
+//===========================================
+// Lumina-DE source code
+// Copyright (c) 2015, Ken Moore
+// Available under the 3-clause BSD license
+// See the LICENSE file for full details
+//===========================================
+#ifndef _LUMINA_PLAIN_TEXT_EDITOR_WIDGET_H
+#define _LUMINA_PLAIN_TEXT_EDITOR_WIDGET_H
+
+#include <QPlainTextEdit>
+#include <QWidget>
+#include <QResizeEvent>
+#include <QPaintEvent>
+
+#include "syntaxSupport.h"
+
+//QPlainTextEdit subclass for providing the actual text editor functionality
+class PlainTextEditor : public QPlainTextEdit{
+ Q_OBJECT
+public:
+ PlainTextEditor(QSettings *set, QWidget *parent = 0);
+ ~PlainTextEditor();
+
+ //Functions for setting up the editor
+ void showLineNumbers(bool show = true);
+ void LoadSyntaxRule(QString type);
+ void updateSyntaxColors();
+
+ //File loading/setting options
+ void LoadFile(QString filepath);
+ void SaveFile(bool newname = false);
+ QString currentFile();
+
+ bool hasChange();
+
+ //Functions for managing the line number widget (internal - do not need to run directly)
+ int LNWWidth(); //replacing the LNW size hint detection
+ void paintLNW(QPaintEvent *ev); //forwarded from the LNW paint event
+
+private:
+ QWidget *LNW; //Line Number Widget
+ bool showLNW;
+ QSettings *settings;
+ QString lastSaveContents;
+ //Syntax Highlighting class
+ Custom_Syntax *SYNTAX;
+
+ //Bracket/Perentheses matching functions
+ int matchleft, matchright; //positions within the document
+ void clearMatchData();
+ void highlightMatch(QChar ch, bool forward, int fromPos, QChar startch);
+
+ //Flags to keep track of changes
+ bool hasChanges;
+private slots:
+ //Functions for managing the line number widget
+ void LNW_updateWidth(); // Tied to the QPlainTextEdit::blockCountChanged() signal
+ void LNW_highlightLine(); // Tied to the QPlainTextEdit::cursorPositionChanged() signal
+ void LNW_update(const QRect&, int); // Tied to the QPlainTextEdit::updateRequest() signal
+ //Function for running the matching routine
+ void checkMatchChar();
+ //Functions for notifying the parent widget of changes
+ void textChanged();
+
+protected:
+ void resizeEvent(QResizeEvent *ev);
+
+signals:
+ void UnsavedChanges(QString); //filename
+ void FileLoaded(QString);
+
+};
+
+//===========================================================
+// Small Widget for painting the line numbers in the PlainTextEditor
+//===========================================================
+class LNWidget : public QWidget{
+ Q_OBJECT
+private:
+ PlainTextEditor *TE;
+public:
+ LNWidget( PlainTextEditor *edit) : QWidget(edit){
+ TE = edit;
+ }
+ ~LNWidget(){}
+ //Replace the virtual QWidget size hint function
+ // since the main text editor controls the size/location of this widget
+ QSize sizeHint() const{
+ return QSize(TE->LNWWidth(),0);
+ }
+protected:
+ //Replace the virtual QWidget paint event function
+ // since the main text editor control the size/location of this widget
+ void paintEvent(QPaintEvent *ev){
+ TE->paintLNW(ev);
+ }
+};
+#endif
+
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_af.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_af.ts
new file mode 100644
index 00000000..129f78b7
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_af.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="af_ZA">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_ar.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_ar.ts
new file mode 100644
index 00000000..47b115e6
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_ar.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="ar_EG">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_az.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_az.ts
new file mode 100644
index 00000000..5b4f54da
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_az.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="az_AZ">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_bg.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_bg.ts
new file mode 100644
index 00000000..7d7e02be
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_bg.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="bg_BG">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_bn.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_bn.ts
new file mode 100644
index 00000000..75d80ea7
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_bn.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="bn_BD">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_bs.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_bs.ts
new file mode 100644
index 00000000..c0a4af95
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_bs.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="bs_BA">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_ca.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_ca.ts
new file mode 100644
index 00000000..207e156f
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_ca.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="ca_ES">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_cs.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_cs.ts
new file mode 100644
index 00000000..65bb3327
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_cs.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="cs_CZ">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_cy.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_cy.ts
new file mode 100644
index 00000000..4e6f3d43
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_cy.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="cy_GB">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_da.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_da.ts
new file mode 100644
index 00000000..e7a5efe3
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_da.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="da_DK">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_de.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_de.ts
new file mode 100644
index 00000000..d699f264
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_de.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="de_DE">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_el.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_el.ts
new file mode 100644
index 00000000..de48de7d
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_el.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="el_GR">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_en_GB.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_en_GB.ts
new file mode 100644
index 00000000..214e79b7
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_en_GB.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="en_GB">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_en_ZA.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_en_ZA.ts
new file mode 100644
index 00000000..2cda194f
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_en_ZA.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="en_ZA">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_es.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_es.ts
new file mode 100644
index 00000000..6f81ae79
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_es.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="es_ES">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_et.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_et.ts
new file mode 100644
index 00000000..0b0d4757
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_et.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="et_EE">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_eu.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_eu.ts
new file mode 100644
index 00000000..e1119f98
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_eu.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="eu_ES">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_fa.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_fa.ts
new file mode 100644
index 00000000..a601ea5b
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_fa.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="fa_IR">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_fi.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_fi.ts
new file mode 100644
index 00000000..203e4990
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_fi.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="fi_FI">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_fr.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_fr.ts
new file mode 100644
index 00000000..a8cb5c60
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_fr.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="fr_FR">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_fr_CA.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_fr_CA.ts
new file mode 100644
index 00000000..fed583af
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_fr_CA.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="fr_CA">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_gl.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_gl.ts
new file mode 100644
index 00000000..7d0a4562
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_gl.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="gl_ES">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_he.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_he.ts
new file mode 100644
index 00000000..5d934a0e
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_he.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="he_IL">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_hi.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_hi.ts
new file mode 100644
index 00000000..5c9d10d4
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_hi.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="hi_IN">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_hr.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_hr.ts
new file mode 100644
index 00000000..e19addec
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_hr.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="hr_HR">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_hu.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_hu.ts
new file mode 100644
index 00000000..206c09ff
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_hu.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="hu_HU">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_id.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_id.ts
new file mode 100644
index 00000000..657795f2
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_id.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="id_ID">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_is.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_is.ts
new file mode 100644
index 00000000..5c58cdc5
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_is.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="is_IS">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_it.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_it.ts
new file mode 100644
index 00000000..3c3718cb
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_it.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="it_IT">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_ja.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_ja.ts
new file mode 100644
index 00000000..e33ca2c8
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_ja.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="ja_JP">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_ka.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_ka.ts
new file mode 100644
index 00000000..e6c15895
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_ka.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="ka_GE">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_ko.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_ko.ts
new file mode 100644
index 00000000..e7c7c36a
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_ko.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="ko_KR">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_lt.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_lt.ts
new file mode 100644
index 00000000..a46ef0b6
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_lt.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="lt_LT">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_lv.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_lv.ts
new file mode 100644
index 00000000..5470297c
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_lv.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="lv_LV">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_mk.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_mk.ts
new file mode 100644
index 00000000..d276174e
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_mk.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="mk_MK">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_mn.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_mn.ts
new file mode 100644
index 00000000..5838d7a7
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_mn.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="mn_MN">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_ms.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_ms.ts
new file mode 100644
index 00000000..673224cd
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_ms.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="ms_MY">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_mt.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_mt.ts
new file mode 100644
index 00000000..7673c584
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_mt.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="mt_MT">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_nb.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_nb.ts
new file mode 100644
index 00000000..8c5df14b
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_nb.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="nb_NO">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_nl.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_nl.ts
new file mode 100644
index 00000000..bb08eb57
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_nl.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="nl_NL">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_pa.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_pa.ts
new file mode 100644
index 00000000..c8d6ebe1
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_pa.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="pa_IN">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_pl.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_pl.ts
new file mode 100644
index 00000000..e966bb1b
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_pl.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="pl_PL">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_pt.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_pt.ts
new file mode 100644
index 00000000..9054a484
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_pt.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="pt_BR">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_pt_BR.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_pt_BR.ts
new file mode 100644
index 00000000..9054a484
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_pt_BR.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="pt_BR">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_ro.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_ro.ts
new file mode 100644
index 00000000..100ac113
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_ro.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="ro_RO">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_ru.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_ru.ts
new file mode 100644
index 00000000..8de16687
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_ru.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="ru_RU">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_sk.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_sk.ts
new file mode 100644
index 00000000..6432281d
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_sk.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="sk_SK">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_sl.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_sl.ts
new file mode 100644
index 00000000..a79c287f
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_sl.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="sl_SI">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_sr.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_sr.ts
new file mode 100644
index 00000000..550e7a88
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_sr.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="sr_RS">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_sv.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_sv.ts
new file mode 100644
index 00000000..6ec72aef
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_sv.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="sv_SE">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_sw.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_sw.ts
new file mode 100644
index 00000000..4a03e1ec
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_sw.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="sw_TZ">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_ta.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_ta.ts
new file mode 100644
index 00000000..42813fd4
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_ta.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="ta_IN">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_tg.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_tg.ts
new file mode 100644
index 00000000..abad829f
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_tg.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="tg_TJ">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_th.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_th.ts
new file mode 100644
index 00000000..ad738b1e
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_th.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="th_TH">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_tr.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_tr.ts
new file mode 100644
index 00000000..932bc495
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_tr.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="tr_TR">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_uk.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_uk.ts
new file mode 100644
index 00000000..bdc27199
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_uk.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="uk_UA">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_uz.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_uz.ts
new file mode 100644
index 00000000..9d402846
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_uz.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="uz_UZ">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_vi.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_vi.ts
new file mode 100644
index 00000000..f5117066
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_vi.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="vi_VN">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_zh_CN.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_zh_CN.ts
new file mode 100644
index 00000000..010663c0
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_zh_CN.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="zh_CN">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_zh_HK.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_zh_HK.ts
new file mode 100644
index 00000000..222eb051
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_zh_HK.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="zh_HK">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_zh_TW.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_zh_TW.ts
new file mode 100644
index 00000000..ff8648de
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_zh_TW.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="zh_TW">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_zu.ts b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_zu.ts
new file mode 100644
index 00000000..98392b5b
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/i18n/lumina-textedit_zu.ts
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.1" language="zu_ZA">
+<context>
+ <name>ColorDialog</name>
+ <message>
+ <location filename="../ColorDialog.ui" line="14"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="24"/>
+ <source>Item Type</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="29"/>
+ <source>Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="34"/>
+ <source>Sample</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="44"/>
+ <location filename="../ColorDialog.cpp" line="55"/>
+ <source>Select Color</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="64"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../ColorDialog.ui" line="71"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>MainUI</name>
+ <message>
+ <location filename="../MainUI.ui" line="14"/>
+ <source>MainWindow</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="49"/>
+ <source>Tab 1</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="57"/>
+ <source>Find/Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="87"/>
+ <source>Find the previous match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="90"/>
+ <location filename="../MainUI.ui" line="113"/>
+ <location filename="../MainUI.ui" line="164"/>
+ <location filename="../MainUI.ui" line="177"/>
+ <source>...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="97"/>
+ <source>Find:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="110"/>
+ <source>Find the next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="120"/>
+ <source>Replace:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="139"/>
+ <source>Match case</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="161"/>
+ <source>Replace next match</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="174"/>
+ <source>Replace all matches (to end of document)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="197"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="210"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="214"/>
+ <source>Syntax Highlighting</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="227"/>
+ <source>Edit</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="242"/>
+ <source>toolBar</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="268"/>
+ <source>Show Line Numbers</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="273"/>
+ <source>None</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="278"/>
+ <location filename="../MainUI.cpp" line="128"/>
+ <source>New File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="281"/>
+ <source>Ctrl+N</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="289"/>
+ <source>Open File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="292"/>
+ <source>Ctrl+O</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="300"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="303"/>
+ <source>Ctrl+S</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="311"/>
+ <source>Save File As</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="316"/>
+ <source>Close</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="319"/>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="327"/>
+ <source>Close File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="330"/>
+ <source>Ctrl+W</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="338"/>
+ <source>Customize Colors</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="349"/>
+ <source>Wrap Lines</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="354"/>
+ <source>Find</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="357"/>
+ <source>Ctrl+F</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="365"/>
+ <source>Replace</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.ui" line="368"/>
+ <source>Ctrl+R</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="25"/>
+ <source>Text Editor</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Open File(s)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../MainUI.cpp" line="135"/>
+ <source>Text Files (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PlainTextEditor</name>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Save File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../PlainTextEditor.cpp" line="74"/>
+ <source>Text File (*)</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
diff --git a/src-qt5/desktop-utils/lumina-textedit/lumina-textedit.pro b/src-qt5/desktop-utils/lumina-textedit/lumina-textedit.pro
new file mode 100644
index 00000000..6794af8e
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/lumina-textedit.pro
@@ -0,0 +1,97 @@
+include("$${PWD}/../../OS-detect.pri")
+
+QT += core gui widgets
+
+TARGET = lumina-textedit
+target.path = $${L_BINDIR}
+
+HEADERS += MainUI.h \
+ PlainTextEditor.h \
+ syntaxSupport.h \
+ ColorDialog.h
+
+SOURCES += main.cpp \
+ MainUI.cpp \
+ PlainTextEditor.cpp \
+ syntaxSupport.cpp \
+ ColorDialog.cpp
+
+FORMS += MainUI.ui \
+ ColorDialog.ui
+LIBS += -lLuminaUtils
+
+
+DEPENDPATH += ../../libLumina
+
+TRANSLATIONS = i18n/lumina-textedit_af.ts \
+ i18n/lumina-textedit_ar.ts \
+ i18n/lumina-textedit_az.ts \
+ i18n/lumina-textedit_bg.ts \
+ i18n/lumina-textedit_bn.ts \
+ i18n/lumina-textedit_bs.ts \
+ i18n/lumina-textedit_ca.ts \
+ i18n/lumina-textedit_cs.ts \
+ i18n/lumina-textedit_cy.ts \
+ i18n/lumina-textedit_da.ts \
+ i18n/lumina-textedit_de.ts \
+ i18n/lumina-textedit_el.ts \
+ i18n/lumina-textedit_en_GB.ts \
+ i18n/lumina-textedit_en_ZA.ts \
+ i18n/lumina-textedit_es.ts \
+ i18n/lumina-textedit_et.ts \
+ i18n/lumina-textedit_eu.ts \
+ i18n/lumina-textedit_fa.ts \
+ i18n/lumina-textedit_fi.ts \
+ i18n/lumina-textedit_fr.ts \
+ i18n/lumina-textedit_fr_CA.ts \
+ i18n/lumina-textedit_gl.ts \
+ i18n/lumina-textedit_he.ts \
+ i18n/lumina-textedit_hi.ts \
+ i18n/lumina-textedit_hr.ts \
+ i18n/lumina-textedit_hu.ts \
+ i18n/lumina-textedit_id.ts \
+ i18n/lumina-textedit_is.ts \
+ i18n/lumina-textedit_it.ts \
+ i18n/lumina-textedit_ja.ts \
+ i18n/lumina-textedit_ka.ts \
+ i18n/lumina-textedit_ko.ts \
+ i18n/lumina-textedit_lt.ts \
+ i18n/lumina-textedit_lv.ts \
+ i18n/lumina-textedit_mk.ts \
+ i18n/lumina-textedit_mn.ts \
+ i18n/lumina-textedit_ms.ts \
+ i18n/lumina-textedit_mt.ts \
+ i18n/lumina-textedit_nb.ts \
+ i18n/lumina-textedit_nl.ts \
+ i18n/lumina-textedit_pa.ts \
+ i18n/lumina-textedit_pl.ts \
+ i18n/lumina-textedit_pt.ts \
+ i18n/lumina-textedit_pt_BR.ts \
+ i18n/lumina-textedit_ro.ts \
+ i18n/lumina-textedit_ru.ts \
+ i18n/lumina-textedit_sk.ts \
+ i18n/lumina-textedit_sl.ts \
+ i18n/lumina-textedit_sr.ts \
+ i18n/lumina-textedit_sv.ts \
+ i18n/lumina-textedit_sw.ts \
+ i18n/lumina-textedit_ta.ts \
+ i18n/lumina-textedit_tg.ts \
+ i18n/lumina-textedit_th.ts \
+ i18n/lumina-textedit_tr.ts \
+ i18n/lumina-textedit_uk.ts \
+ i18n/lumina-textedit_uz.ts \
+ i18n/lumina-textedit_vi.ts \
+ i18n/lumina-textedit_zh_CN.ts \
+ i18n/lumina-textedit_zh_HK.ts \
+ i18n/lumina-textedit_zh_TW.ts \
+ i18n/lumina-textedit_zu.ts
+
+dotrans.path=$${L_SHAREDIR}/Lumina-DE/i18n/
+dotrans.extra=cd i18n && $${LRELEASE} -nounfinished *.ts && cp *.qm $(INSTALL_ROOT)$${L_SHAREDIR}/Lumina-DE/i18n/
+
+INSTALLS += target dotrans
+
+NO_I18N{
+ INSTALLS -= dotrans
+}
+
diff --git a/src-qt5/desktop-utils/lumina-textedit/main.cpp b/src-qt5/desktop-utils/lumina-textedit/main.cpp
new file mode 100644
index 00000000..17fbc6e1
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/main.cpp
@@ -0,0 +1,31 @@
+//===========================================
+// Lumina-DE source code
+// Copyright (c) 2015, Ken Moore
+// Available under the 3-clause BSD license
+// See the LICENSE file for full details
+//===========================================
+#include <QApplication>
+#include <QDebug>
+
+#include <LuminaThemes.h>
+#include <LuminaUtils.h>
+
+#include "MainUI.h"
+
+int main(int argc, char *argv[]) {
+ LTHEME::LoadCustomEnvSettings();
+ QApplication a(argc, argv);
+ LUtils::LoadTranslation(&a, "lumina-textedit");
+ //Now go ahead and setup the app
+ LuminaThemeEngine theme(&a);
+ QStringList args;
+ for(int i=1; i<argc; i++){
+ args << QString(argv[i]);
+ }
+ //Now start the window
+ MainUI W;
+ QObject::connect(&theme, SIGNAL(updateIcons()), &W, SLOT(updateIcons()) );
+ W.LoadArguments(args);
+ W.show();
+ return a.exec();
+}
diff --git a/src-qt5/desktop-utils/lumina-textedit/syntaxSupport.cpp b/src-qt5/desktop-utils/lumina-textedit/syntaxSupport.cpp
new file mode 100644
index 00000000..8e2e347a
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/syntaxSupport.cpp
@@ -0,0 +1,202 @@
+//===========================================
+// Lumina-DE source code
+// Copyright (c) 2015, Ken Moore
+// Available under the 3-clause BSD license
+// See the LICENSE file for full details
+//===========================================
+#include "syntaxSupport.h"
+
+QStringList Custom_Syntax::availableRules(){
+ QStringList avail;
+ avail << "C++";
+ avail << "Python";
+ avail << "reST";
+ return avail;
+}
+
+QStringList Custom_Syntax::knownColors(){
+ //Note: All these colors should be prefixed with "colors/" when accessing them from the settings file
+ QStringList avail;
+ //Standard colors
+ avail << "keyword" << "altkeyword" << "class" << "text" << "function" << "comment";
+ //Bracket/parenthesis/brace matching
+ avail << "bracket-found" << "bracket-missing";
+ return avail;
+}
+
+void Custom_Syntax::SetupDefaultColors(QSettings *settings){
+ if(!settings->contains("colors/keyword")){settings->setValue("colors/keyword", QColor(Qt::blue).name() ); }
+ if(!settings->contains("colors/altkeyword")){settings->setValue("colors/altkeyword", QColor(Qt::darkBlue).name() ); }
+ if(!settings->contains("colors/class")){settings->setValue("colors/class", QColor(Qt::darkRed).name() ); }
+ if(!settings->contains("colors/text")){settings->setValue("colors/text", QColor(Qt::darkMagenta).name() ); }
+ if(!settings->contains("colors/function")){settings->setValue("colors/function", QColor(Qt::darkCyan).name() ); }
+ if(!settings->contains("colors/comment")){settings->setValue("colors/comment", QColor(Qt::darkGreen).name() ); }
+ if(!settings->contains("colors/bracket-found")){settings->setValue("colors/bracket-found", QColor(Qt::green).name() ); }
+ if(!settings->contains("colors/bracket-missing")){settings->setValue("colors/bracket-missing", QColor(Qt::red).name() ); }
+ if(!settings->contains("colors/preprocessor")){settings->setValue("colors/preprocessor", QColor(Qt::darkYellow).name() ); }
+}
+
+QString Custom_Syntax::ruleForFile(QString filename){
+ QString suffix = filename.section(".",-1);
+ if(suffix=="cpp" || suffix=="hpp" || suffix=="c" || suffix=="h"){ return "C++"; }
+ else if(suffix=="py" || suffix=="pyc"){ return "Python"; }
+ else if(suffix=="rst"){ return "reST"; }
+ return "";
+}
+
+void Custom_Syntax::loadRules(QString type){
+ //NOTE: the "multiLineComment
+ lasttype = type;
+ rules.clear();
+ splitrules.clear();
+ if(type=="C++"){
+ //Keywords (standard C/C++/Qt definitions)
+ QStringList keywords;
+ keywords << "char" << "class" << "const" << "double" << "enum" << "explicit" << "friend" << "inline" \
+ << "int" << "long" << "namespace" << "operator" << "private" << "protected" << "public" \
+ << "short" << "signals" << "signed" << "slots" << "static" << "struct" << "template" \
+ << "typedef" << "typename" << "union" << "unsigned" << "virtual" << "void" << "volatile" \
+ << "true" << "false";
+
+ SyntaxRule rule;
+ rule.format.setForeground( QColor(settings->value("colors/keyword").toString()) );
+ rule.format.setFontWeight(QFont::Bold);
+ for(int i=0; i<keywords.length(); i++){
+ rule.pattern = QRegExp("\\b"+keywords[i]+"\\b"); //turn each keyword into a QRegExp and insert the rule
+ rules << rule;
+ }
+ //Alternate Keywords (built-in functions)
+ keywords.clear();
+ keywords << "for" << "while" << "switch" << "case" << "if";
+ rule.format.setForeground( QColor(settings->value("colors/altkeyword").toString()) );
+ for(int i=0; i<keywords.length(); i++){
+ rule.pattern = QRegExp("\\b"+keywords[i]+"\\b"); //turn each keyword into a QRegExp and insert the rule
+ rules << rule;
+ }
+ //Class Names
+ rule.format.setForeground( QColor(settings->value("colors/class").toString()) );
+ rule.pattern = QRegExp("\\bQ[A-Za-z]+\\b");
+ rules << rule;
+ //Quotes
+ rule.format.setForeground( QColor(settings->value("colors/text").toString()) );
+ rule.format.setFontWeight(QFont::Normal);
+ rule.pattern = QRegExp( "\"[^\"\\\\]*(\\\\(.|\\n)[^\"\\\\]*)*\"|'[^'\\\\]*(\\\\(.|\\n)[^'\\\\]*)*'");
+ rules << rule;
+ //Functions
+ rule.format.setForeground( QColor(settings->value("colors/function").toString()) );
+ rule.pattern = QRegExp("\\b[A-Za-z0-9_]+(?=\\()");
+ rules << rule;
+ //Proprocessor commands
+ rule.format.setForeground( QColor(settings->value("colors/preprocessor").toString()) );
+ rule.pattern = QRegExp("^#[^\n]*");
+ rules << rule;
+ //Comment (single line)
+ rule.format.setForeground( QColor(settings->value("colors/comment").toString()) );
+ rule.pattern = QRegExp("//[^\n]*");
+ rules << rule;
+ //Comment (multi-line)
+ SyntaxRuleSplit srule;
+ srule.format = rule.format; //re-use the single-line comment format
+ srule.startPattern = QRegExp("/\\*");
+ srule.endPattern = QRegExp("\\*/");
+ splitrules << srule;
+
+ }else if(type=="Python"){
+ //Keywords
+ QStringList keywords;
+ keywords << "and" << "as" << "assert" << "break" << "class" << "continue" << "def" << "del" \
+ << "elif" << "else" << "except" << "exec" << "finally" << "for" << "from" \
+ << "global" << "if" << "import" << "in" << "is" << "lambda" << "not" \
+ << "or" << "pass" << "print" << "raise" << "return" << "try" << "while" << "with" << "yield";
+
+ SyntaxRule rule;
+ rule.format.setForeground( QColor(settings->value("colors/keyword").toString()) );
+ rule.format.setFontWeight(QFont::Bold);
+ for(int i=0; i<keywords.length(); i++){
+ rule.pattern = QRegExp("\\b"+keywords[i]+"\\b"); //turn each keyword into a QRegExp and insert the rule
+ rules << rule;
+ }
+ //Class Names
+ //rule.format.setForeground(Qt::darkMagenta);
+ //rule.pattern = QRegExp("\\bQ[A-Za-z]+\\b");
+ //rules << rule;
+ //Quotes
+ rule.format.setForeground( QColor(settings->value("colors/text").toString()) );
+ rule.format.setFontWeight(QFont::Normal);
+ rule.pattern = QRegExp( "\"[^\"\\\\]*(\\\\(.|\\n)[^\"\\\\]*)*\"|'[^'\\\\]*(\\\\(.|\\n)[^'\\\\]*)*'");
+ rules << rule;
+ //Functions
+ rule.format.setForeground( QColor(settings->value("colors/function").toString()) );
+ rule.pattern = QRegExp("\\b[A-Za-z0-9_]+(?=\\()");
+ rules << rule;
+ //Comment (single line)
+ rule.format.setForeground( QColor(settings->value("colors/comment").toString()) );
+ rule.pattern = QRegExp("#[^\n]*");
+ rules << rule;
+ //Comment (multi-line)
+ //SyntaxRuleSplit srule;
+ //srule.format = rule.format; //re-use the single-line comment format
+ //srule.startPattern = QRegExp("/\\*");
+ //srule.endPattern = QRegExp("\\*/");
+ //splitrules << srule;
+
+ }else if(type=="reST"){
+ //Keywords
+ QStringList keywords;
+ keywords << "emphasis" << "strong" << "literal" << "subscript" << "superscript" << "title-reference";
+ SyntaxRule rule;
+ rule.format.setForeground( QColor(settings->value("colors/keyword").toString()) );
+ rule.format.setFontWeight(QFont::Bold);
+ for(int i=0; i<keywords.length(); i++){
+ rule.pattern = QRegExp("\\b"+keywords[i]+"\\b"); //turn each keyword into a QRegExp and insert the rule
+ rules << rule;
+ }
+ //Directives
+ keywords.clear();
+ keywords << "image" << "figure" << "contents" << "container" << "rubric" << "topic" << "sidebar" \
+ << "parsed-literal" << "epigraph" << "highlights" << "pull-quote" << "compound" << "table" << "csv-table" \
+ << "list-table" << "raw" << "include"<< "class" << "meta" << "title" << "default-role" << "role";
+ rule.format.setForeground( QColor(settings->value("colors/altkeyword").toString()) );
+ for(int i=0; i<keywords.length(); i++){
+ rule.pattern = QRegExp("\\b"+keywords[i]+"::\\b"); //turn each keyword into a QRegExp and insert the rule
+ rules << rule;
+ }
+ //Reset the font color
+ rule.format = QTextCharFormat();
+ // Strong Emphasis
+ rule.format.setFontItalic(false);
+ rule.format.setFontWeight(QFont::Bold);
+ rule.pattern = QRegExp("\\b[*]{2}[^*\n]+[*]{2}\\b");
+ rules << rule;
+ // Emphasis
+ rule.format.setFontItalic(true);
+ rule.format.setFontWeight(QFont::Normal);
+ rule.pattern = QRegExp("\\b[*][^*\n]+[*]\\b");
+ rules << rule;
+ // Code Sample
+ rule.format.setFontItalic(false);
+ rule.format.setFontWeight(QFont::Light);
+ rule.format.setFontFixedPitch(true);
+ rule.pattern = QRegExp("\\b`{2}.*`{2}\\b");
+ rules << rule;
+ //Quotes
+ rule.format.setForeground( QColor(settings->value("colors/text").toString()) );
+ rule.format.setFontWeight(QFont::Normal);
+ rule.pattern = QRegExp( "\"[^\"\\\\]*(\\\\(.|\\n)[^\"\\\\]*)*\"|'[^'\\\\]*(\\\\(.|\\n)[^'\\\\]*)*'");
+ rules << rule;
+ //Functions
+ rule.format.setForeground( QColor(settings->value("colors/function").toString()) );
+ rule.pattern = QRegExp("\\b[A-Za-z0-9_]+(?=\\()");
+ rules << rule;
+ //Comment (single line)
+ rule.format.setForeground( QColor(settings->value("colors/comment").toString()) );
+ rule.pattern = QRegExp("\\b[.]{2}[^\n]*");
+ rules << rule;
+ //Comment (multi-line)
+ //SyntaxRuleSplit srule;
+ //srule.format = rule.format; //re-use the single-line comment format
+ //srule.startPattern = QRegExp("/\\*");
+ //srule.endPattern = QRegExp("\\*/");
+ //splitrules << srule;
+ }
+}
diff --git a/src-qt5/desktop-utils/lumina-textedit/syntaxSupport.h b/src-qt5/desktop-utils/lumina-textedit/syntaxSupport.h
new file mode 100644
index 00000000..c96c404d
--- /dev/null
+++ b/src-qt5/desktop-utils/lumina-textedit/syntaxSupport.h
@@ -0,0 +1,95 @@
+//===========================================
+// Lumina-DE source code
+// Copyright (c) 2015, Ken Moore
+// Available under the 3-clause BSD license
+// See the LICENSE file for full details
+//===========================================
+#ifndef _LUMINA_SYNTAX_HIGHLIGHER_CPP_H
+#define _LUMINA_SYNTAX_HIGHLIGHER_CPP_H
+
+#include <QSyntaxHighlighter>
+#include <QTextDocument>
+#include <QTextCharFormat>
+#include <QString>
+#include <QSettings>
+
+//Simple syntax rules
+struct SyntaxRule{
+ QRegExp pattern;
+ QTextCharFormat format;
+};
+//Complicated/multi-line rules
+struct SyntaxRuleSplit{
+ QRegExp startPattern, endPattern;
+ QTextCharFormat format;
+};
+
+class Custom_Syntax : public QSyntaxHighlighter{
+ Q_OBJECT
+private:
+ QSettings *settings;
+ QString lasttype;
+ QVector<SyntaxRule> rules;
+ QVector<SyntaxRuleSplit> splitrules;
+
+public:
+ Custom_Syntax(QSettings *set, QTextDocument *parent = 0) : QSyntaxHighlighter(parent){
+ settings = set;
+ }
+ ~Custom_Syntax(){}
+
+ static QStringList availableRules();
+ static QStringList knownColors();
+ static void SetupDefaultColors(QSettings *settings);
+ static QString ruleForFile(QString filename);
+ void loadRules(QString type);
+
+ void reloadRules(){
+ loadRules(lasttype);
+ }
+protected:
+ void highlightBlock(const QString &text){
+ for(int i=0; i<rules.length(); i++){
+ QRegExp patt(rules[i].pattern); //need a copy of the rule's pattern (will be changing it below)
+ int index = patt.indexIn(text);
+ while(index>=0){
+ int len = patt.matchedLength();
+ setFormat(index, len, rules[i].format);
+ index = patt.indexIn(text, index+len); //go to the next match
+ }
+ }//end loop over normal (single-line) patterns
+ //Now look for any multi-line patterns (starting/continuing/ending)
+ int start = 0;
+ int splitactive = previousBlockState();
+ if(splitactive>splitrules.length()-1){ splitactive = -1; } //just in case
+ while(start>=0 && start<text.length()-1){
+ //qDebug() << "split check:" << start << splitactive;
+ if(splitactive>=0){
+ //Find the end of the current rule
+ int end = splitrules[splitactive].endPattern.indexIn(text, start);
+ if(end==-1){
+ //rule did not finish - apply to all
+ setFormat(start, text.length()-start, splitrules[splitactive].format);
+ break; //stop looking for more multi-line patterns
+ }else{
+ //Found end point
+ int len = end-start+splitrules[splitactive].endPattern.matchedLength();
+ setFormat(start, len , splitrules[splitactive].format);
+ start+=len; //move pointer to the end of handled range
+ splitactive = -1; //done with this rule
+ }
+ } //end check for end match
+ //Look for the start of any new split rule
+ for(int i=0; i<splitrules.length() && splitactive<0; i++){
+ int newstart = splitrules[i].startPattern.indexIn(text,start);
+ if(newstart>=start){
+ splitactive = i;
+ start = newstart;
+ }
+ }
+ if(splitactive<0){ break; } //no other rules found - go ahead and exit the loop
+ }
+ setCurrentBlockState(splitactive);
+ }
+};
+#endif \ No newline at end of file
bgstack15