public inbox for pve-devel@lists.proxmox.com
 help / color / mirror / Atom feed
From: Maximiliano Sandoval <m.sandoval@proxmox.com>
To: pve-devel@lists.proxmox.com
Subject: [PATCH extjs 1/4] add Greek translations
Date: Mon,  1 Jun 2026 14:05:20 +0200	[thread overview]
Message-ID: <20260601120525.285737-2-m.sandoval@proxmox.com> (raw)
In-Reply-To: <20260601120525.285737-1-m.sandoval@proxmox.com>

ExtJs comes with Greek translations using the code el_GR, but the only
Greek code as per [ISO 639] is "el". Additionally, gettext [1] also uses
"el" as the only language code for Greek, but calls it "Greek,
Modern (1453-)".

We make a copy of the original files for el_GR and replace s/el_GR/el/.

[ISO 639] https://en.wikipedia.org/wiki/ISO_639
[1] https://www.gnu.org/software/gettext/manual/html_node/Usual-Language-Codes.html

Signed-off-by: Maximiliano Sandoval <m.sandoval@proxmox.com>
---
 debian/rules                                  |   4 +-
 extjs/build/classic/locale/locale-el-debug.js | 268 ++++++++++++++++++
 extjs/build/classic/locale/locale-el.js       |   1 +
 3 files changed, 271 insertions(+), 2 deletions(-)
 create mode 100644 extjs/build/classic/locale/locale-el-debug.js
 create mode 100644 extjs/build/classic/locale/locale-el.js

diff --git a/debian/rules b/debian/rules
index b0dd68f9..77636255 100755
--- a/debian/rules
+++ b/debian/rules
@@ -9,9 +9,9 @@
 
 override_dh_auto_test:
 	dh_auto_test
-	# check if all languages are still shipped, as e.g. Georgian (ka) is manually added by us
+	# check if all languages are still shipped, as e.g. Georgian (ka) and Greek (el) are manually added by us
 	set -e; for l in \
-	  af bg ca cs da de el_GR en en_AU en_GB es et fa fi fr fr_CA gr he hr hu id it ja ka ko lt \
+	  af bg ca cs da de el el_GR en en_AU en_GB es et fa fi fr fr_CA gr he hr hu id it ja ka ko lt \
 	  lv mk nl no_NB no_NN pl pt pt_BR pt_PT ro ru sk sl sr sr_RS sv_SE th tr ukr vn zh_CN zh_TW; do \
 	    echo "checking for '$$l' locale"; \
 	    test -e "extjs/build/classic/locale/locale-$$l.js"; \
diff --git a/extjs/build/classic/locale/locale-el-debug.js b/extjs/build/classic/locale/locale-el-debug.js
new file mode 100644
index 00000000..a9e0bbda
--- /dev/null
+++ b/extjs/build/classic/locale/locale-el-debug.js
@@ -0,0 +1,268 @@
+/**
+ * Greek translation
+ * By thesilentman (utf8 encoding)
+ * 27 Apr 2008
+ *
+ * Changes since previous (second) Version:
+ * + added Ext.Date.shortMonthNames
+ * + added Ext.Date.getShortMonthName
+ * + added Ext.Date.monthNumbers
+ * + added Ext.grid.feature.Grouping
+ */
+Ext.onReady(function() {
+
+    if (Ext.Date) {
+        Ext.Date.monthNames = ["Ιανουάριος", "Φεβρουάριος", "Μάρτιος", "Απρίλιος", "Μάιος", "Ιούνιος", "Ιούλιος", "Αύγουστος", "Σεπτέμβριος", "Οκτώβριος", "Νοέμβριος", "Δεκέμβριος"];
+
+        Ext.Date.shortMonthNames = ["Ιαν", "Φεβ", "Μάρ", "Απρ", "Μάι", "Ιού", "Ιού", "Αύγ", "Σεπ", "Οκτ", "Νοέ", "Δεκ"];
+
+        Ext.Date.getShortMonthName = function(month) {
+            return Ext.Date.monthNames[month].substring(0, 3);
+        };
+
+        Ext.Date.monthNumbers = {
+            Jan: 0,
+            Feb: 1,
+            Mar: 2,
+            Apr: 3,
+            May: 4,
+            Jun: 5,
+            Jul: 6,
+            Aug: 7,
+            Sep: 8,
+            Oct: 9,
+            Nov: 10,
+            Dec: 11
+        };
+
+        Ext.Date.getMonthNumber = function(name) {
+            return Ext.Date.monthNumbers[name.substring(0, 1).toUpperCase() + name.substring(1, 3).toLowerCase()];
+        };
+
+        Ext.Date.dayNames = ["Κυριακή", "Δευτέρα", "Τρίτη", "Τετάρτη", "Πέμπτη", "Παρασκευή", "Σάββατο"];
+    }
+
+    if (Ext.util && Ext.util.Format) {
+        Ext.apply(Ext.util.Format, {
+            thousandSeparator: '.',
+            decimalSeparator: ',',
+            currencySign: '\u20ac',
+            // Greek Euro
+            dateFormat: 'd/m/Y'
+        });
+    }
+});
+
+Ext.define("Ext.locale.el.view.View", {
+    override: "Ext.view.View",
+    emptyText: ""
+});
+
+Ext.define("Ext.locale.el.grid.plugin.DragDrop", {
+    override: "Ext.grid.plugin.DragDrop",
+    dragText: "{0} Επιλεγμένες σειρές"
+});
+
+Ext.define("Ext.locale.el.tab.Tab", {
+    override: "Ext.tab.Tab",
+    closeText: "Κλείστε το tab"
+});
+
+Ext.define("Ext.locale.el.form.field.Base", {
+    override: "Ext.form.field.Base",
+    invalidText: "Το περιεχόμενο του πεδίου δεν είναι αποδεκτό"
+});
+
+// changing the msg text below will affect the LoadMask
+Ext.define("Ext.locale.el.view.AbstractView", {
+    override: "Ext.view.AbstractView",
+    loadingText: "Μεταφόρτωση δεδομένων..."
+});
+
+Ext.define("Ext.locale.el.picker.Date", {
+    override: "Ext.picker.Date",
+    todayText: "Σήμερα",
+    minText: "Η Ημερομηνία είναι προγενέστερη από την παλαιότερη αποδεκτή",
+    maxText: "Η Ημερομηνία είναι μεταγενέστερη από την νεότερη αποδεκτή",
+    disabledDaysText: "",
+    disabledDatesText: "",
+    nextText: 'Επόμενος Μήνας (Control+Δεξί Βέλος)',
+    prevText: 'Προηγούμενος Μήνας (Control + Αριστερό Βέλος)',
+    monthYearText: 'Επιλογή Μηνός (Control + Επάνω/Κάτω Βέλος για μεταβολή ετών)',
+    todayTip: "{0} (ΠΛήκτρο Διαστήματος)",
+    format: "d/m/y"
+});
+
+Ext.define("Ext.locale.el.toolbar.Paging", {
+    override: "Ext.PagingToolbar",
+    beforePageText: "Σελίδα",
+    afterPageText: "από {0}",
+    firstText: "Πρώτη Σελίδα",
+    prevText: "Προηγούμενη Σελίδα",
+    nextText: "Επόμενη Σελίδα",
+    lastText: "Τελευταία Σελίδα",
+    refreshText: "Ανανέωση",
+    displayMsg: "Εμφάνιση {0} - {1} από {2}",
+    emptyMsg: 'Δεν υπάρχουν δεδομένα'
+});
+
+Ext.define("Ext.locale.el.form.field.Text", {
+    override: "Ext.form.field.Text",
+    minLengthText: "Το μικρότερο αποδεκτό μήκος για το πεδίο είναι {0}",
+    maxLengthText: "Το μεγαλύτερο αποδεκτό μήκος για το πεδίο είναι {0}",
+    blankText: "Το πεδίο είναι υποχρεωτικό",
+    regexText: "",
+    emptyText: null
+});
+
+Ext.define("Ext.locale.el.form.field.Number", {
+    override: "Ext.form.field.Number",
+    minText: "Η μικρότερη τιμή του πεδίου είναι {0}",
+    maxText: "Η μεγαλύτερη τιμή του πεδίου είναι {0}",
+    nanText: "{0} δεν είναι αποδεκτός αριθμός"
+});
+
+Ext.define("Ext.locale.el.form.field.Date", {
+    override: "Ext.form.field.Date",
+    disabledDaysText: "Ανενεργό",
+    disabledDatesText: "Ανενεργό",
+    minText: "Η ημερομηνία αυτού του πεδίου πρέπει να είναι μετά την {0}",
+    maxText: "Η ημερομηνία αυτού του πεδίου πρέπει να είναι πριν την {0}",
+    invalidText: "{0} δεν είναι έγκυρη ημερομηνία - πρέπει να είναι στη μορφή {1}",
+    format: "d/m/y"
+});
+
+Ext.define("Ext.locale.el.form.field.ComboBox", {
+    override: "Ext.form.field.ComboBox",
+    valueNotFoundText: undefined
+}, function() {
+    Ext.apply(Ext.form.field.ComboBox.prototype.defaultListConfig, {
+        loadingText: "Μεταφόρτωση δεδομένων..."
+    });
+});
+
+Ext.define("Ext.locale.el.form.field.VTypes", {
+    override: "Ext.form.field.VTypes",
+    emailText: 'Το πεδίο δέχεται μόνο διευθύνσεις Email σε μορφή "user@example.com"',
+    urlText: 'Το πεδίο δέχεται μόνο URL σε μορφή "http:/' + '/www.example.com"',
+    alphaText: 'Το πεδίο δέχεται μόνο χαρακτήρες και _',
+    alphanumText: 'Το πεδίο δέχεται μόνο χαρακτήρες, αριθμούς και _'
+});
+
+Ext.define("Ext.locale.el.form.field.HtmlEditor", {
+    override: "Ext.form.field.HtmlEditor",
+    createLinkText: 'Δώστε τη διεύθυνση (URL) για το σύνδεσμο (link):'
+}, function() {
+    Ext.apply(Ext.form.field.HtmlEditor.prototype, {
+        buttonTips: {
+            bold: {
+                title: 'Έντονα (Ctrl+B)',
+                text: 'Κάνετε το προεπιλεγμένο κείμενο έντονο.',
+                cls: Ext.baseCSSPrefix + 'html-editor-tip'
+            },
+            italic: {
+                title: 'Πλάγια (Ctrl+I)',
+                text: 'Κάνετε το προεπιλεγμένο κείμενο πλάγιο.',
+                cls: Ext.baseCSSPrefix + 'html-editor-tip'
+            },
+            underline: {
+                title: 'Υπογράμμιση (Ctrl+U)',
+                text: 'Υπογραμμίζετε το προεπιλεγμένο κείμενο.',
+                cls: Ext.baseCSSPrefix + 'html-editor-tip'
+            },
+            increasefontsize: {
+                title: 'Μεγέθυνση κειμένου',
+                text: 'Μεγαλώνετε τη γραμματοσειρά.',
+                cls: Ext.baseCSSPrefix + 'html-editor-tip'
+            },
+            decreasefontsize: {
+                title: 'Σμίκρυνση κειμένου',
+                text: 'Μικραίνετε τη γραμματοσειρά.',
+                cls: Ext.baseCSSPrefix + 'html-editor-tip'
+            },
+            backcolor: {
+                title: 'Χρώμα Φόντου Κειμένου',
+                text: 'Αλλάζετε το χρώμα στο φόντο του προεπιλεγμένου κειμένου.',
+                cls: Ext.baseCSSPrefix + 'html-editor-tip'
+            },
+            forecolor: {
+                title: 'Χρώμα Γραμματοσειράς',
+                text: 'Αλλάζετε το χρώμα στη γραμματοσειρά του προεπιλεγμένου κειμένου.',
+                cls: Ext.baseCSSPrefix + 'html-editor-tip'
+            },
+            justifyleft: {
+                title: 'Αριστερή Στοίχιση Κειμένου',
+                text: 'Στοιχίζετε το κείμενο στα αριστερά.',
+                cls: Ext.baseCSSPrefix + 'html-editor-tip'
+            },
+            justifycenter: {
+                title: 'Κεντράρισμα Κειμένου',
+                text: 'Στοιχίζετε το κείμενο στο κέντρο.',
+                cls: Ext.baseCSSPrefix + 'html-editor-tip'
+            },
+            justifyright: {
+                title: 'Δεξιά Στοίχιση Κειμένου',
+                text: 'Στοιχίζετε το κείμενο στα δεξιά.',
+                cls: Ext.baseCSSPrefix + 'html-editor-tip'
+            },
+            insertunorderedlist: {
+                title: 'Εισαγωγή Λίστας Κουκίδων',
+                text: 'Ξεκινήστε μια λίστα με κουκίδες.',
+                cls: Ext.baseCSSPrefix + 'html-editor-tip'
+            },
+            insertorderedlist: {
+                title: 'Εισαγωγή Λίστας Αρίθμησης',
+                text: 'Ξεκινήστε μια λίστα με αρίθμηση.',
+                cls: Ext.baseCSSPrefix + 'html-editor-tip'
+            },
+            createlink: {
+                title: 'Hyperlink',
+                text: 'Μετατρέπετε το προεπιλεγμένο κείμενο σε Link.',
+                cls: Ext.baseCSSPrefix + 'html-editor-tip'
+            },
+            sourceedit: {
+                title: 'Επεξεργασία Κώδικα',
+                text: 'Μεταβαίνετε στη λειτουργία επεξεργασίας κώδικα.',
+                cls: Ext.baseCSSPrefix + 'html-editor-tip'
+            }
+        }
+    });
+});
+
+Ext.define("Ext.locale.el.grid.header.Container", {
+    override: "Ext.grid.header.Container",
+    sortAscText: "Αύξουσα ταξινόμηση",
+    sortDescText: "Φθίνουσα ταξινόμηση",
+    lockText: "Κλείδωμα στήλης",
+    unlockText: "Ξεκλείδωμα στήλης",
+    columnsText: "Στήλες"
+});
+
+Ext.define("Ext.locale.el.grid.GroupingFeature", {
+    override: "Ext.grid.feature.Grouping",
+    emptyGroupText: '(Καμμία)',
+    groupByText: 'Ομαδοποίηση βάσει αυτού του πεδίου',
+    showGroupsText: 'Να εμφανίζεται στις ομάδες'
+});
+
+Ext.define("Ext.locale.el.grid.PropertyColumnModel", {
+    override: "Ext.grid.PropertyColumnModel",
+    nameText: "Όνομα",
+    valueText: "Περιεχόμενο",
+    dateFormat: "d/m/Y"
+});
+
+Ext.define("Ext.locale.el.window.MessageBox", {
+    override: "Ext.window.MessageBox",
+    buttonText: {
+        ok: "OK",
+        cancel: "Άκυρο",
+        yes: "Ναι",
+        no: "Όχι"
+    }
+});
+
+// This is needed until we can refactor all of the locales into individual files
+Ext.define("Ext.locale.el.Component", {
+    override: "Ext.Component"
+});
diff --git a/extjs/build/classic/locale/locale-el.js b/extjs/build/classic/locale/locale-el.js
new file mode 100644
index 00000000..3db9f855
--- /dev/null
+++ b/extjs/build/classic/locale/locale-el.js
@@ -0,0 +1 @@
+Ext.onReady(function(){if(Ext.Date){Ext.Date.monthNames=["Ιανουάριος","Φεβρουάριος","Μάρτιος","Απρίλιος","Μάιος","Ιούνιος","Ιούλιος","Αύγουστος","Σεπτέμβριος","Οκτώβριος","Νοέμβριος","Δεκέμβριος"];Ext.Date.shortMonthNames=["Ιαν","Φεβ","Μάρ","Απρ","Μάι","Ιού","Ιού","Αύγ","Σεπ","Οκτ","Νοέ","Δεκ"];Ext.Date.getShortMonthName=function(a){return Ext.Date.monthNames[a].substring(0,3)};Ext.Date.monthNumbers={Jan:0,Feb:1,Mar:2,Apr:3,May:4,Jun:5,Jul:6,Aug:7,Sep:8,Oct:9,Nov:10,Dec:11};Ext.Date.getMonthNumber=function(a){return Ext.Date.monthNumbers[a.substring(0,1).toUpperCase()+a.substring(1,3).toLowerCase()]};Ext.Date.dayNames=["Κυριακή","Δευτέρα","Τρίτη","Τετάρτη","Πέμπτη","Παρασκευή","Σάββατο"]}if(Ext.util&&Ext.util.Format){Ext.apply(Ext.util.Format,{thousandSeparator:'.',decimalSeparator:',',currencySign:'€',dateFormat:'d/m/Y'})}});Ext.define("Ext.locale.el.view.View",{override:"Ext.view.View",emptyText:""});Ext.define("Ext.locale.el.grid.plugin.DragDrop",{override:"Ext.grid.plugin.DragDrop",dragText:"{0} Επιλεγμένες σειρές"});Ext.define("Ext.locale.el.tab.Tab",{override:"Ext.tab.Tab",closeText:"Κλείστε το tab"});Ext.define("Ext.locale.el.form.field.Base",{override:"Ext.form.field.Base",invalidText:"Το περιεχόμενο του πεδίου δεν είναι αποδεκτό"});Ext.define("Ext.locale.el.view.AbstractView",{override:"Ext.view.AbstractView",loadingText:"Μεταφόρτωση δεδομένων..."});Ext.define("Ext.locale.el.picker.Date",{override:"Ext.picker.Date",todayText:"Σήμερα",minText:"Η Ημερομηνία είναι προγενέστερη από την παλαιότερη αποδεκτή",maxText:"Η Ημερομηνία είναι μεταγενέστερη από την νεότερη αποδεκτή",disabledDaysText:"",disabledDatesText:"",nextText:'Επόμενος Μήνας (Control+Δεξί Βέλος)',prevText:'Προηγούμενος Μήνας (Control + Αριστερό Βέλος)',monthYearText:'Επιλογή Μηνός (Control + Επάνω/Κάτω Βέλος για μεταβολή ετών)',todayTip:"{0} (ΠΛήκτρο Διαστήματος)",format:"d/m/y"});Ext.define("Ext.locale.el.toolbar.Paging",{override:"Ext.PagingToolbar",beforePageText:"Σελίδα",afterPageText:"από {0}",firstText:"Πρώτη Σελίδα",prevText:"Προηγούμενη Σελίδα",nextText:"Επόμενη Σελίδα",lastText:"Τελευταία Σελίδα",refreshText:"Ανανέωση",displayMsg:"Εμφάνιση {0} - {1} από {2}",emptyMsg:'Δεν υπάρχουν δεδομένα'});Ext.define("Ext.locale.el.form.field.Text",{override:"Ext.form.field.Text",minLengthText:"Το μικρότερο αποδεκτό μήκος για το πεδίο είναι {0}",maxLengthText:"Το μεγαλύτερο αποδεκτό μήκος για το πεδίο είναι {0}",blankText:"Το πεδίο είναι υποχρεωτικό",regexText:"",emptyText:null});Ext.define("Ext.locale.el.form.field.Number",{override:"Ext.form.field.Number",minText:"Η μικρότερη τιμή του πεδίου είναι {0}",maxText:"Η μεγαλύτερη τιμή του πεδίου είναι {0}",nanText:"{0} δεν είναι αποδεκτός αριθμός"});Ext.define("Ext.locale.el.form.field.Date",{override:"Ext.form.field.Date",disabledDaysText:"Ανενεργό",disabledDatesText:"Ανενεργό",minText:"Η ημερομηνία αυτού του πεδίου πρέπει να είναι μετά την {0}",maxText:"Η ημερομηνία αυτού του πεδίου πρέπει να είναι πριν την {0}",invalidText:"{0} δεν είναι έγκυρη ημερομηνία - πρέπει να είναι στη μορφή {1}",format:"d/m/y"});Ext.define("Ext.locale.el.form.field.ComboBox",{override:"Ext.form.field.ComboBox",valueNotFoundText:undefined},function(){Ext.apply(Ext.form.field.ComboBox.prototype.defaultListConfig,{loadingText:"Μεταφόρτωση δεδομένων..."})});Ext.define("Ext.locale.el.form.field.VTypes",{override:"Ext.form.field.VTypes",emailText:'Το πεδίο δέχεται μόνο διευθύνσεις Email σε μορφή "user@example.com"',urlText:'Το πεδίο δέχεται μόνο URL σε μορφή "http:/'+'/www.example.com"',alphaText:'Το πεδίο δέχεται μόνο χαρακτήρες και _',alphanumText:'Το πεδίο δέχεται μόνο χαρακτήρες, αριθμούς και _'});Ext.define("Ext.locale.el.form.field.HtmlEditor",{override:"Ext.form.field.HtmlEditor",createLinkText:'Δώστε τη διεύθυνση (URL) για το σύνδεσμο (link):'},function(){Ext.apply(Ext.form.field.HtmlEditor.prototype,{buttonTips:{bold:{title:'Έντονα (Ctrl+B)',text:'Κάνετε το προεπιλεγμένο κείμενο έντονο.',cls:Ext.baseCSSPrefix+'html-editor-tip'},italic:{title:'Πλάγια (Ctrl+I)',text:'Κάνετε το προεπιλεγμένο κείμενο πλάγιο.',cls:Ext.baseCSSPrefix+'html-editor-tip'},underline:{title:'Υπογράμμιση (Ctrl+U)',text:'Υπογραμμίζετε το προεπιλεγμένο κείμενο.',cls:Ext.baseCSSPrefix+'html-editor-tip'},increasefontsize:{title:'Μεγέθυνση κειμένου',text:'Μεγαλώνετε τη γραμματοσειρά.',cls:Ext.baseCSSPrefix+'html-editor-tip'},decreasefontsize:{title:'Σμίκρυνση κειμένου',text:'Μικραίνετε τη γραμματοσειρά.',cls:Ext.baseCSSPrefix+'html-editor-tip'},backcolor:{title:'Χρώμα Φόντου Κειμένου',text:'Αλλάζετε το χρώμα στο φόντο του προεπιλεγμένου κειμένου.',cls:Ext.baseCSSPrefix+'html-editor-tip'},forecolor:{title:'Χρώμα Γραμματοσειράς',text:'Αλλάζετε το χρώμα στη γραμματοσειρά του προεπιλεγμένου κειμένου.',cls:Ext.baseCSSPrefix+'html-editor-tip'},justifyleft:{title:'Αριστερή Στοίχιση Κειμένου',text:'Στοιχίζετε το κείμενο στα αριστερά.',cls:Ext.baseCSSPrefix+'html-editor-tip'},justifycenter:{title:'Κεντράρισμα Κειμένου',text:'Στοιχίζετε το κείμενο στο κέντρο.',cls:Ext.baseCSSPrefix+'html-editor-tip'},justifyright:{title:'Δεξιά Στοίχιση Κειμένου',text:'Στοιχίζετε το κείμενο στα δεξιά.',cls:Ext.baseCSSPrefix+'html-editor-tip'},insertunorderedlist:{title:'Εισαγωγή Λίστας Κουκίδων',text:'Ξεκινήστε μια λίστα με κουκίδες.',cls:Ext.baseCSSPrefix+'html-editor-tip'},insertorderedlist:{title:'Εισαγωγή Λίστας Αρίθμησης',text:'Ξεκινήστε μια λίστα με αρίθμηση.',cls:Ext.baseCSSPrefix+'html-editor-tip'},createlink:{title:'Hyperlink',text:'Μετατρέπετε το προεπιλεγμένο κείμενο σε Link.',cls:Ext.baseCSSPrefix+'html-editor-tip'},sourceedit:{title:'Επεξεργασία Κώδικα',text:'Μεταβαίνετε στη λειτουργία επεξεργασίας κώδικα.',cls:Ext.baseCSSPrefix+'html-editor-tip'}}})});Ext.define("Ext.locale.el.grid.header.Container",{override:"Ext.grid.header.Container",sortAscText:"Αύξουσα ταξινόμηση",sortDescText:"Φθίνουσα ταξινόμηση",lockText:"Κλείδωμα στήλης",unlockText:"Ξεκλείδωμα στήλης",columnsText:"Στήλες"});Ext.define("Ext.locale.el.grid.GroupingFeature",{override:"Ext.grid.feature.Grouping",emptyGroupText:'(Καμμία)',groupByText:'Ομαδοποίηση βάσει αυτού του πεδίου',showGroupsText:'Να εμφανίζεται στις ομάδες'});Ext.define("Ext.locale.el.grid.PropertyColumnModel",{override:"Ext.grid.PropertyColumnModel",nameText:"Όνομα",valueText:"Περιεχόμενο",dateFormat:"d/m/Y"});Ext.define("Ext.locale.el.window.MessageBox",{override:"Ext.window.MessageBox",buttonText:{ok:"OK",cancel:"Άκυρο",yes:"Ναι",no:"Όχι"}});Ext.define("Ext.locale.el.Component",{override:"Ext.Component"});
-- 
2.47.3





  reply	other threads:[~2026-06-01 12:06 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-06-01 12:05 [PATCH extjs/proxmox{-i18n,-yew-comp}/widget-toolkit 0/4] i18n: add Greek translations Maximiliano Sandoval
2026-06-01 12:05 ` Maximiliano Sandoval [this message]
2026-06-01 12:05 ` [PATCH proxmox-yew-comp 3/4] " Maximiliano Sandoval
2026-06-01 12:05 ` [PATCH widget-toolkit 4/4] utils: " Maximiliano Sandoval

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260601120525.285737-2-m.sandoval@proxmox.com \
    --to=m.sandoval@proxmox.com \
    --cc=pve-devel@lists.proxmox.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal