Added the capability to send the prompt by pressing Ctrl-Return or Ctrl-Enter. release-10.1.8

Mon, 07 Apr 2025 18:22:14 +0200

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Mon, 07 Apr 2025 18:22:14 +0200
changeset 68
ca2e671f894e
parent 67
3c2bcbf7eeaf
child 69
eb9340034f26

Added the capability to send the prompt by pressing Ctrl-Return or Ctrl-Enter.

OllamaInterface/ConfigurationPage/Ui_OllamaPage.py file | annotate | diff | comparison | revisions
OllamaInterface/Documentation/Source/Plugin_AI_Ollama.OllamaInterface.OllamaChatWidget.html file | annotate | diff | comparison | revisions
OllamaInterface/Documentation/Source/Plugin_AI_Ollama.OllamaInterface.OllamaHistoryWidget.html file | annotate | diff | comparison | revisions
OllamaInterface/Documentation/Source/Plugin_AI_Ollama.OllamaInterface.OllamaWidget.html file | annotate | diff | comparison | revisions
OllamaInterface/OllamaWidget.py file | annotate | diff | comparison | revisions
OllamaInterface/OllamaWidget.ui file | annotate | diff | comparison | revisions
OllamaInterface/Ui_OllamaChatWidget.py file | annotate | diff | comparison | revisions
OllamaInterface/Ui_OllamaDetailedModelsDialog.py file | annotate | diff | comparison | revisions
OllamaInterface/Ui_OllamaHistoryEditDialog.py file | annotate | diff | comparison | revisions
OllamaInterface/Ui_OllamaHistoryWidget.py file | annotate | diff | comparison | revisions
OllamaInterface/Ui_OllamaPullProgressDialog.py file | annotate | diff | comparison | revisions
OllamaInterface/Ui_OllamaRunningModelsDialog.py file | annotate | diff | comparison | revisions
OllamaInterface/Ui_OllamaWidget.py file | annotate | diff | comparison | revisions
OllamaInterface/Ui_RunOllamaServerDialog.py file | annotate | diff | comparison | revisions
OllamaInterface/i18n/ollama_de.qm file | annotate | diff | comparison | revisions
OllamaInterface/i18n/ollama_de.ts file | annotate | diff | comparison | revisions
OllamaInterface/i18n/ollama_empty.ts file | annotate | diff | comparison | revisions
OllamaInterface/i18n/ollama_en.ts file | annotate | diff | comparison | revisions
OllamaInterface/i18n/ollama_es.ts file | annotate | diff | comparison | revisions
OllamaInterface/i18n/ollama_ru.ts file | annotate | diff | comparison | revisions
PluginAiOllama.epj file | annotate | diff | comparison | revisions
PluginAiOllama.py file | annotate | diff | comparison | revisions
PluginAiOllama.zip file | annotate | diff | comparison | revisions
changelog.md file | annotate | diff | comparison | revisions
--- a/OllamaInterface/ConfigurationPage/Ui_OllamaPage.py	Tue Dec 10 15:48:48 2024 +0100
+++ b/OllamaInterface/ConfigurationPage/Ui_OllamaPage.py	Mon Apr 07 18:22:14 2025 +0200
@@ -1,6 +1,6 @@
 # Form implementation generated from reading ui file 'OllamaInterface/ConfigurationPage/OllamaPage.ui'
 #
-# Created by: PyQt6 UI code generator 6.8.0.dev2411221125
+# Created by: PyQt6 UI code generator 6.9.0
 #
 # WARNING: Any manual changes made to this file will be lost when pyuic6 is
 # run again.  Do not edit this file unless you know what you are doing.
--- a/OllamaInterface/Documentation/Source/Plugin_AI_Ollama.OllamaInterface.OllamaChatWidget.html	Tue Dec 10 15:48:48 2024 +0100
+++ b/OllamaInterface/Documentation/Source/Plugin_AI_Ollama.OllamaInterface.OllamaChatWidget.html	Mon Apr 07 18:22:14 2025 +0200
@@ -166,6 +166,10 @@
 <td>Private slot to scroll the chat scroll area to the bottom.</td>
 </tr>
 <tr>
+<td><a href="#OllamaChatWidget.__setHeader">__setHeader</a></td>
+<td>Private method to set the header label.</td>
+</tr>
+<tr>
 <td><a href="#OllamaChatWidget.addMessage">addMessage</a></td>
 <td>Public method to add a new message.</td>
 </tr>
@@ -174,6 +178,10 @@
 <td>Public method to append a given message to the bottom most message box.</td>
 </tr>
 <tr>
+<td><a href="#OllamaChatWidget.chatParametersChanged">chatParametersChanged</a></td>
+<td>Public slot to handle a change of the chat parameters.</td>
+</tr>
+<tr>
 <td><a href="#OllamaChatWidget.clear">clear</a></td>
 <td>Public method to clear the list of messages.</td>
 </tr>
@@ -226,6 +234,24 @@
         Private slot to scroll the chat scroll area to the bottom.
 </p>
 
+<a NAME="OllamaChatWidget.__setHeader" ID="OllamaChatWidget.__setHeader"></a>
+<h4>OllamaChatWidget.__setHeader</h4>
+<b>__setHeader</b>(<i>title, model</i>)
+<p>
+        Private method to set the header label.
+</p>
+
+<dl>
+
+<dt><i>title</i> (str)</dt>
+<dd>
+chat title
+</dd>
+<dt><i>model</i> (str)</dt>
+<dd>
+model of the chat
+</dd>
+</dl>
 <a NAME="OllamaChatWidget.addMessage" ID="OllamaChatWidget.addMessage"></a>
 <h4>OllamaChatWidget.addMessage</h4>
 <b>addMessage</b>(<i>role, message, scrollToBottom=True</i>)
@@ -263,6 +289,28 @@
 message text to be appended
 </dd>
 </dl>
+<a NAME="OllamaChatWidget.chatParametersChanged" ID="OllamaChatWidget.chatParametersChanged"></a>
+<h4>OllamaChatWidget.chatParametersChanged</h4>
+<b>chatParametersChanged</b>(<i>_hid, title, model</i>)
+<p>
+        Public slot to handle a change of the chat parameters.
+</p>
+
+<dl>
+
+<dt><i>_hid</i> (str)</dt>
+<dd>
+history ID (unused)
+</dd>
+<dt><i>title</i> (str)</dt>
+<dd>
+new chat title
+</dd>
+<dt><i>model</i> (str)</dt>
+<dd>
+new chat model
+</dd>
+</dl>
 <a NAME="OllamaChatWidget.clear" ID="OllamaChatWidget.clear"></a>
 <h4>OllamaChatWidget.clear</h4>
 <b>clear</b>(<i></i>)
@@ -280,13 +328,13 @@
 <dl>
 <dt>Return:</dt>
 <dd>
-DESCRIPTION
+history ID of the chat
 </dd>
 </dl>
 <dl>
 <dt>Return Type:</dt>
 <dd>
-TYPE
+str
 </dd>
 </dl>
 <a NAME="OllamaChatWidget.getRecentMessage" ID="OllamaChatWidget.getRecentMessage"></a>
--- a/OllamaInterface/Documentation/Source/Plugin_AI_Ollama.OllamaInterface.OllamaHistoryWidget.html	Tue Dec 10 15:48:48 2024 +0100
+++ b/OllamaInterface/Documentation/Source/Plugin_AI_Ollama.OllamaInterface.OllamaHistoryWidget.html	Mon Apr 07 18:22:14 2025 +0200
@@ -54,6 +54,11 @@
 emitted to indicate, that a new chat using
         the saved history should be started
 </dd>
+<dt>parametersChanged(id:str, title:str, model:str)</dt>
+<dd>
+emitted to indicate a
+        change of editable chat parameters
+</dd>
 <dt>viewChatHistory(id:str)</dt>
 <dd>
 emitted to indicate, that this chat history
--- a/OllamaInterface/Documentation/Source/Plugin_AI_Ollama.OllamaInterface.OllamaWidget.html	Tue Dec 10 15:48:48 2024 +0100
+++ b/OllamaInterface/Documentation/Source/Plugin_AI_Ollama.OllamaInterface.OllamaWidget.html	Mon Apr 07 18:22:14 2025 +0200
@@ -248,6 +248,10 @@
 <td>Public method to clear the history entries and close all chats.</td>
 </tr>
 <tr>
+<td><a href="#OllamaWidget.eventFilter">eventFilter</a></td>
+<td>Public method to process some events for the message edit.</td>
+</tr>
+<tr>
 <td><a href="#OllamaWidget.getSelectableModels">getSelectableModels</a></td>
 <td>Public method to get a list of models to select from.</td>
 </tr>
@@ -904,6 +908,36 @@
         Public method to clear the history entries and close all chats.
 </p>
 
+<a NAME="OllamaWidget.eventFilter" ID="OllamaWidget.eventFilter"></a>
+<h4>OllamaWidget.eventFilter</h4>
+<b>eventFilter</b>(<i>obj, evt</i>)
+<p>
+        Public method to process some events for the message edit.
+</p>
+
+<dl>
+
+<dt><i>obj</i> (QObject)</dt>
+<dd>
+reference to the object the event was meant for
+</dd>
+<dt><i>evt</i> (QEvent)</dt>
+<dd>
+reference to the event object
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag to indicate that the event was handled
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
 <a NAME="OllamaWidget.getSelectableModels" ID="OllamaWidget.getSelectableModels"></a>
 <h4>OllamaWidget.getSelectableModels</h4>
 <b>getSelectableModels</b>(<i></i>)
--- a/OllamaInterface/OllamaWidget.py	Tue Dec 10 15:48:48 2024 +0100
+++ b/OllamaInterface/OllamaWidget.py	Mon Apr 07 18:22:14 2025 +0200
@@ -12,7 +12,15 @@
 import os
 import shutil
 
-from PyQt6.QtCore import QProcess, QProcessEnvironment, Qt, QTimer, QUrl, pyqtSlot
+from PyQt6.QtCore import (
+    QEvent,
+    QProcess,
+    QProcessEnvironment,
+    Qt,
+    QTimer,
+    QUrl,
+    pyqtSlot,
+)
 from PyQt6.QtGui import QDesktopServices
 from PyQt6.QtWidgets import (
     QDialog,
@@ -62,6 +70,8 @@
         super().__init__(parent)
         self.setupUi(self)
 
+        self.messageEdit.installEventFilter(self)
+
         self.__plugin = plugin
         self.__client = OllamaClient(plugin, self)
 
@@ -1154,3 +1164,27 @@
             self.__pullProgressDialog.setFinished(True)
             self.__pulling = False
             self.__client.list()
+
+    def eventFilter(self, obj, evt):
+        """
+        Public method to process some events for the message edit.
+
+        @param obj reference to the object the event was meant for
+        @type QObject
+        @param evt reference to the event object
+        @type QEvent
+        @return flag to indicate that the event was handled
+        @rtype bool
+        """
+        if (
+            obj is self.messageEdit
+            and evt.type() == QEvent.Type.KeyPress
+            and evt.key() in (Qt.Key.Key_Return, Qt.Key.Key_Enter)
+            and evt.modifiers() == Qt.KeyboardModifier.ControlModifier
+        ):
+            # Ctrl-Enter or Ctrl-Return => commit
+            self.sendButton.animateClick()
+            return True
+        else:
+            # standard event processing
+            return super().eventFilter(obj, evt)
--- a/OllamaInterface/OllamaWidget.ui	Tue Dec 10 15:48:48 2024 +0100
+++ b/OllamaInterface/OllamaWidget.ui	Mon Apr 07 18:22:14 2025 +0200
@@ -16,7 +16,7 @@
      <item>
       <spacer name="horizontalSpacer">
        <property name="orientation">
-        <enum>Qt::Horizontal</enum>
+        <enum>Qt::Orientation::Horizontal</enum>
        </property>
        <property name="sizeHint" stdset="0">
         <size>
@@ -32,7 +32,7 @@
      <item>
       <spacer name="horizontalSpacer_2">
        <property name="orientation">
-        <enum>Qt::Horizontal</enum>
+        <enum>Qt::Orientation::Horizontal</enum>
        </property>
        <property name="sizeHint" stdset="0">
         <size>
@@ -45,7 +45,7 @@
      <item>
       <widget class="EricToolButton" name="ollamaMenuButton">
        <property name="popupMode">
-        <enum>QToolButton::InstantPopup</enum>
+        <enum>QToolButton::ToolButtonPopupMode::InstantPopup</enum>
        </property>
       </widget>
      </item>
@@ -88,7 +88,7 @@
    <item>
     <widget class="QSplitter" name="mainSplitter">
      <property name="orientation">
-      <enum>Qt::Vertical</enum>
+      <enum>Qt::Orientation::Vertical</enum>
      </property>
      <widget class="QScrollArea" name="historyScrollArea">
       <property name="sizePolicy">
@@ -98,7 +98,7 @@
        </sizepolicy>
       </property>
       <property name="horizontalScrollBarPolicy">
-       <enum>Qt::ScrollBarAlwaysOff</enum>
+       <enum>Qt::ScrollBarPolicy::ScrollBarAlwaysOff</enum>
       </property>
       <property name="widgetResizable">
        <bool>true</bool>
@@ -133,14 +133,14 @@
           <bool>true</bool>
          </property>
          <property name="placeholderText">
-          <string>Enter Message</string>
+          <string>Enter Message and press 'Ctrl-Return' to send it or use the send button.</string>
          </property>
         </widget>
        </item>
        <item row="1" column="1">
         <spacer name="verticalSpacer">
          <property name="orientation">
-          <enum>Qt::Vertical</enum>
+          <enum>Qt::Orientation::Vertical</enum>
          </property>
          <property name="sizeHint" stdset="0">
           <size>
--- a/OllamaInterface/Ui_OllamaChatWidget.py	Tue Dec 10 15:48:48 2024 +0100
+++ b/OllamaInterface/Ui_OllamaChatWidget.py	Mon Apr 07 18:22:14 2025 +0200
@@ -1,6 +1,6 @@
 # Form implementation generated from reading ui file 'OllamaInterface/OllamaChatWidget.ui'
 #
-# Created by: PyQt6 UI code generator 6.8.0.dev2411221125
+# Created by: PyQt6 UI code generator 6.9.0
 #
 # WARNING: Any manual changes made to this file will be lost when pyuic6 is
 # run again.  Do not edit this file unless you know what you are doing.
--- a/OllamaInterface/Ui_OllamaDetailedModelsDialog.py	Tue Dec 10 15:48:48 2024 +0100
+++ b/OllamaInterface/Ui_OllamaDetailedModelsDialog.py	Mon Apr 07 18:22:14 2025 +0200
@@ -1,6 +1,6 @@
 # Form implementation generated from reading ui file 'OllamaInterface/OllamaDetailedModelsDialog.ui'
 #
-# Created by: PyQt6 UI code generator 6.8.0.dev2411221125
+# Created by: PyQt6 UI code generator 6.9.0
 #
 # WARNING: Any manual changes made to this file will be lost when pyuic6 is
 # run again.  Do not edit this file unless you know what you are doing.
--- a/OllamaInterface/Ui_OllamaHistoryEditDialog.py	Tue Dec 10 15:48:48 2024 +0100
+++ b/OllamaInterface/Ui_OllamaHistoryEditDialog.py	Mon Apr 07 18:22:14 2025 +0200
@@ -1,6 +1,6 @@
 # Form implementation generated from reading ui file 'OllamaInterface/OllamaHistoryEditDialog.ui'
 #
-# Created by: PyQt6 UI code generator 6.8.0.dev2411221125
+# Created by: PyQt6 UI code generator 6.9.0
 #
 # WARNING: Any manual changes made to this file will be lost when pyuic6 is
 # run again.  Do not edit this file unless you know what you are doing.
--- a/OllamaInterface/Ui_OllamaHistoryWidget.py	Tue Dec 10 15:48:48 2024 +0100
+++ b/OllamaInterface/Ui_OllamaHistoryWidget.py	Mon Apr 07 18:22:14 2025 +0200
@@ -1,6 +1,6 @@
 # Form implementation generated from reading ui file 'OllamaInterface/OllamaHistoryWidget.ui'
 #
-# Created by: PyQt6 UI code generator 6.8.0.dev2411221125
+# Created by: PyQt6 UI code generator 6.9.0
 #
 # WARNING: Any manual changes made to this file will be lost when pyuic6 is
 # run again.  Do not edit this file unless you know what you are doing.
--- a/OllamaInterface/Ui_OllamaPullProgressDialog.py	Tue Dec 10 15:48:48 2024 +0100
+++ b/OllamaInterface/Ui_OllamaPullProgressDialog.py	Mon Apr 07 18:22:14 2025 +0200
@@ -1,6 +1,6 @@
 # Form implementation generated from reading ui file 'OllamaInterface/OllamaPullProgressDialog.ui'
 #
-# Created by: PyQt6 UI code generator 6.8.0.dev2411221125
+# Created by: PyQt6 UI code generator 6.9.0
 #
 # WARNING: Any manual changes made to this file will be lost when pyuic6 is
 # run again.  Do not edit this file unless you know what you are doing.
--- a/OllamaInterface/Ui_OllamaRunningModelsDialog.py	Tue Dec 10 15:48:48 2024 +0100
+++ b/OllamaInterface/Ui_OllamaRunningModelsDialog.py	Mon Apr 07 18:22:14 2025 +0200
@@ -1,6 +1,6 @@
 # Form implementation generated from reading ui file 'OllamaInterface/OllamaRunningModelsDialog.ui'
 #
-# Created by: PyQt6 UI code generator 6.8.0.dev2411221125
+# Created by: PyQt6 UI code generator 6.9.0
 #
 # WARNING: Any manual changes made to this file will be lost when pyuic6 is
 # run again.  Do not edit this file unless you know what you are doing.
--- a/OllamaInterface/Ui_OllamaWidget.py	Tue Dec 10 15:48:48 2024 +0100
+++ b/OllamaInterface/Ui_OllamaWidget.py	Mon Apr 07 18:22:14 2025 +0200
@@ -1,6 +1,6 @@
 # Form implementation generated from reading ui file 'OllamaInterface/OllamaWidget.ui'
 #
-# Created by: PyQt6 UI code generator 6.8.0.dev2411221125
+# Created by: PyQt6 UI code generator 6.9.0
 #
 # WARNING: Any manual changes made to this file will be lost when pyuic6 is
 # run again.  Do not edit this file unless you know what you are doing.
@@ -100,6 +100,6 @@
         self.modelComboBox.setToolTip(_translate("OllamaWidget", "Select the model for the chat."))
         self.newChatButton.setToolTip(_translate("OllamaWidget", "Press to start a new chat."))
         self.messageEdit.setToolTip(_translate("OllamaWidget", "Enter the message to be sent to the \'ollama\' server."))
-        self.messageEdit.setPlaceholderText(_translate("OllamaWidget", "Enter Message"))
+        self.messageEdit.setPlaceholderText(_translate("OllamaWidget", "Enter Message and press \'Ctrl-Return\' to send it or use the send button."))
         self.sendButton.setToolTip(_translate("OllamaWidget", "Press to send the message of the current chat to the \'ollama\' server."))
 from eric7.EricWidgets.EricToolButton import EricToolButton
--- a/OllamaInterface/Ui_RunOllamaServerDialog.py	Tue Dec 10 15:48:48 2024 +0100
+++ b/OllamaInterface/Ui_RunOllamaServerDialog.py	Mon Apr 07 18:22:14 2025 +0200
@@ -1,6 +1,6 @@
 # Form implementation generated from reading ui file 'OllamaInterface/RunOllamaServerDialog.ui'
 #
-# Created by: PyQt6 UI code generator 6.8.0.dev2411221125
+# Created by: PyQt6 UI code generator 6.9.0
 #
 # WARNING: Any manual changes made to this file will be lost when pyuic6 is
 # run again.  Do not edit this file unless you know what you are doing.
Binary file OllamaInterface/i18n/ollama_de.qm has changed
--- a/OllamaInterface/i18n/ollama_de.ts	Tue Dec 10 15:48:48 2024 +0100
+++ b/OllamaInterface/i18n/ollama_de.ts	Mon Apr 07 18:22:14 2025 +0200
@@ -4,7 +4,7 @@
   <context>
     <name>OllamaChatWidget</name>
     <message>
-      <location filename="../OllamaChatWidget.py" line="41" />
+      <location filename="../OllamaChatWidget.py" line="60" />
       <source>&lt;b&gt;{0} - {1}&lt;/b&gt;</source>
       <comment>title, model name</comment>
       <translation>&lt;b&gt;{0} - {1}&lt;/b&gt;</translation>
@@ -38,12 +38,12 @@
       <translation>&lt;p&gt;Es gab einen Netzwerkfehler.&lt;/p&gt;&lt;p&gt;Fehler: {0}&lt;/p&gt;</translation>
     </message>
     <message>
-      <location filename="../OllamaClient.py" line="594" />
+      <location filename="../OllamaClient.py" line="597" />
       <source>&lt;p&gt;Error: The local server at &lt;b&gt;{0}&lt;/b&gt; is not responding.&lt;/p&gt;</source>
       <translation>&lt;p&gt;Fehler: Der lokale Server auf &lt;b&gt;{0}&lt;/b&gt; antwortet nicht.&lt;/p&gt;</translation>
     </message>
     <message>
-      <location filename="../OllamaClient.py" line="596" />
+      <location filename="../OllamaClient.py" line="599" />
       <source>&lt;p&gt;Error: The configured server at &lt;b&gt;{0}&lt;/b&gt; is not responding.&lt;/p&gt;</source>
       <translation>&lt;p&gt;Fehler: Der konfigurierte Server auf &lt;b&gt;{0}&lt;/b&gt; antwortet nicht.&lt;/p&gt;</translation>
     </message>
@@ -301,237 +301,237 @@
   <context>
     <name>OllamaWidget</name>
     <message>
-      <location filename="../OllamaWidget.py" line="199" />
+      <location filename="../OllamaWidget.py" line="213" />
       <source>&lt;b&gt;ollama Server Version {0}&lt;/b&gt;</source>
       <translation>&lt;b&gt;ollama Server Version {0}&lt;/b&gt;</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="363" />
+      <location filename="../OllamaWidget.py" line="377" />
       <source>Save Chat History</source>
       <translation>Chat Verlauf speichern</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="364" />
+      <location filename="../OllamaWidget.py" line="378" />
       <source>&lt;p&gt;The chat history could not be saved to &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
       <translation>&lt;p&gt;Der Chat Verlauf konnte nicht nach &lt;b&gt;{0}&lt;/b&gt; gespeichert werden.&lt;/p&gt;&lt;p&gt;Ursache: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="420" />
-      <location filename="../OllamaWidget.py" line="399" />
+      <location filename="../OllamaWidget.py" line="434" />
+      <location filename="../OllamaWidget.py" line="413" />
       <source>Load Chat History</source>
       <translation>Chat Verlauf laden</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="400" />
+      <location filename="../OllamaWidget.py" line="414" />
       <source>&lt;p&gt;The chat history could not be loaded from &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
       <translation>&lt;p&gt;Der Chat Verlauf konnte nicht aus &lt;b&gt;{0}&lt;/b&gt; geladen werden.&lt;/p&gt;&lt;p&gt;Ursache: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="421" />
+      <location filename="../OllamaWidget.py" line="435" />
       <source>&lt;p&gt;These chats were not loaded because they already existed.&lt;/p&gt;{0}</source>
       <translation>&lt;p&gt;Diese Chats wurden nicht geladen, da sie bereits existieren.&lt;/p&gt;{0}</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="498" />
-      <location filename="../OllamaWidget.py" line="491" />
+      <location filename="../OllamaWidget.py" line="512" />
+      <location filename="../OllamaWidget.py" line="505" />
       <source>New Chat</source>
       <translation>Neuer Chat</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="492" />
+      <location filename="../OllamaWidget.py" line="506" />
       <source>A model has to be selected first. Aborting...</source>
       <translation>Es muss zuerst ein Modell ausgewählt werden. Abbruch...</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="499" />
+      <location filename="../OllamaWidget.py" line="513" />
       <source>Enter a title for the new chat:</source>
       <translation>Gib einen Titel für den neuen Chat ein:</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="696" />
+      <location filename="../OllamaWidget.py" line="712" />
       <source>Chat History</source>
       <translation>Chat Verlauf</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="697" />
+      <location filename="../OllamaWidget.py" line="713" />
       <source>Load</source>
       <translation>Laden</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="700" />
+      <location filename="../OllamaWidget.py" line="716" />
       <source>Clear All</source>
       <translation>Alle löschen</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="703" />
+      <location filename="../OllamaWidget.py" line="719" />
       <source>Import</source>
       <translation>Importieren</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="704" />
+      <location filename="../OllamaWidget.py" line="720" />
       <source>Export</source>
       <translation>Exportieren</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="710" />
+      <location filename="../OllamaWidget.py" line="726" />
       <source>Model Management</source>
       <translation>Modellverwaltung</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1001" />
-      <location filename="../OllamaWidget.py" line="711" />
+      <location filename="../OllamaWidget.py" line="1018" />
+      <location filename="../OllamaWidget.py" line="727" />
       <source>List Models</source>
       <translation>Modelle auflisten</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1019" />
-      <location filename="../OllamaWidget.py" line="713" />
+      <location filename="../OllamaWidget.py" line="1036" />
+      <location filename="../OllamaWidget.py" line="729" />
       <source>List Running Models</source>
       <translation>Laufende Modelle auflisten</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="717" />
+      <location filename="../OllamaWidget.py" line="733" />
       <source>Show Model Library</source>
       <translation>Modell Bibliothek anzeigen</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1036" />
-      <location filename="../OllamaWidget.py" line="722" />
+      <location filename="../OllamaWidget.py" line="1053" />
+      <location filename="../OllamaWidget.py" line="738" />
       <source>Install Model</source>
       <translation>Modell installieren</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1109" />
-      <location filename="../OllamaWidget.py" line="1100" />
-      <location filename="../OllamaWidget.py" line="1089" />
-      <location filename="../OllamaWidget.py" line="725" />
+      <location filename="../OllamaWidget.py" line="1126" />
+      <location filename="../OllamaWidget.py" line="1117" />
+      <location filename="../OllamaWidget.py" line="1106" />
+      <location filename="../OllamaWidget.py" line="741" />
       <source>Remove Model</source>
       <translation>Modell löschen</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="732" />
+      <location filename="../OllamaWidget.py" line="748" />
       <source>Local Server</source>
       <translation>Lokaler Server</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="734" />
+      <location filename="../OllamaWidget.py" line="750" />
       <source>Start with Monitoring</source>
       <translation>Mit Monitoring starten</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="738" />
+      <location filename="../OllamaWidget.py" line="754" />
       <source>Start</source>
       <translation>Starten</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="741" />
+      <location filename="../OllamaWidget.py" line="757" />
       <source>Stop</source>
       <translation>Stoppen</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="748" />
+      <location filename="../OllamaWidget.py" line="764" />
       <source>ollama URLs</source>
       <translation>ollama URLs</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="750" />
+      <location filename="../OllamaWidget.py" line="766" />
       <source>Model Library</source>
       <translation>Modellbibliothek</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="754" />
+      <location filename="../OllamaWidget.py" line="770" />
       <source>Download</source>
       <translation>Download</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="758" />
+      <location filename="../OllamaWidget.py" line="774" />
       <source>Blog</source>
       <translation>Blog</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="775" />
+      <location filename="../OllamaWidget.py" line="791" />
       <source>Configure...</source>
       <translation>Einstellungen...</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="816" />
+      <location filename="../OllamaWidget.py" line="832" />
       <source>Clear All Chat Histories</source>
       <translation>Alle Chat Verläufe löschen</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="817" />
+      <location filename="../OllamaWidget.py" line="833" />
       <source>&lt;p&gt;Do you really want to delete all chat histories? This is &lt;b&gt;irreversible&lt;/b&gt;.&lt;/p&gt;</source>
       <translation>&lt;p&gt;Sollen wirklich alle Chat Verläufe gelöscht werden? Dies ist &lt;b&gt;unumkehrbar&lt;/b&gt;.&lt;/p&gt;</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="832" />
+      <location filename="../OllamaWidget.py" line="848" />
       <source>Import Chat History</source>
       <translation>Chat Verlauf importieren</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="834" />
+      <location filename="../OllamaWidget.py" line="850" />
       <source>Chat History Files (*.json);;All Files (*)</source>
       <translation>Chat Verlauf Dateien (*.json);;Alle Dateien (*)</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="867" />
-      <location filename="../OllamaWidget.py" line="835" />
+      <location filename="../OllamaWidget.py" line="884" />
+      <location filename="../OllamaWidget.py" line="851" />
       <source>Chat History Files (*.json)</source>
       <translation>Chat Verlauf Dateien (*.json)</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="865" />
-      <location filename="../OllamaWidget.py" line="855" />
+      <location filename="../OllamaWidget.py" line="882" />
+      <location filename="../OllamaWidget.py" line="871" />
       <source>Export Chat History</source>
       <translation>Chat Verlauf exportieren</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="856" />
+      <location filename="../OllamaWidget.py" line="872" />
       <source>Select the chats to be exported:</source>
       <translation>Wähle die zu exportierenden Chats:</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="954" />
+      <location filename="../OllamaWidget.py" line="971" />
       <source>Run Local 'ollama' Server</source>
       <translation>Lokalen 'ollama' Server ausführen</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="955" />
+      <location filename="../OllamaWidget.py" line="972" />
       <source>The loacl 'ollama' server process could not be started.</source>
       <translation>Der lokale 'ollama' Serverprozess konnte nicht gestartet werden.</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1002" />
+      <location filename="../OllamaWidget.py" line="1019" />
       <source>There are no models available.</source>
       <translation>Es sind keine Modelle verfügbar.</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1020" />
+      <location filename="../OllamaWidget.py" line="1037" />
       <source>There are no models running.</source>
       <translation>Es werden keine Modelle ausgeführt.</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1037" />
+      <location filename="../OllamaWidget.py" line="1054" />
       <source>Enter the name of the model to be installed:</source>
       <translation>Gib den Namen des zu installierenden Modells ein:</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1090" />
+      <location filename="../OllamaWidget.py" line="1107" />
       <source>Select the model to be removed by the 'ollama' server:</source>
       <translation>Wähle das vom 'ollama' Server zu entfernende Modell aus:</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1101" />
+      <location filename="../OllamaWidget.py" line="1118" />
       <source>&lt;p&gt;The model &lt;b&gt;{0}&lt;/b&gt; was deleted successfully.&lt;/p&gt;</source>
       <translation>&lt;p&gt;Das Modell &lt;b&gt;{0}&lt;/b&gt; wurde erfolgreich entfernt.&lt;/p&gt;</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1110" />
+      <location filename="../OllamaWidget.py" line="1127" />
       <source>&lt;p&gt;The model &lt;b&gt;{0}&lt;/b&gt; could not be removed from the 'ollama' server.&lt;/p&gt;</source>
       <translation>&lt;p&gt;Das Modell &lt;b&gt;{0}&lt;/b&gt; konnte nicht vom 'ollama' Server entfernt werden.&lt;/p&gt;</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1137" />
+      <location filename="../OllamaWidget.py" line="1154" />
       <source>Network Error</source>
       <translation>Netzwerkfehler</translation>
     </message>
@@ -557,8 +557,8 @@
     </message>
     <message>
       <location filename="../OllamaWidget.ui" line="0" />
-      <source>Enter Message</source>
-      <translation>Nachricht eingeben</translation>
+      <source>Enter Message and press 'Ctrl-Return' to send it or use the send button.</source>
+      <translation>Nachricht eingeben und mit 'Strg-Return' senden oder den Senden Knopf verwenden.</translation>
     </message>
     <message>
       <location filename="../OllamaWidget.ui" line="0" />
--- a/OllamaInterface/i18n/ollama_empty.ts	Tue Dec 10 15:48:48 2024 +0100
+++ b/OllamaInterface/i18n/ollama_empty.ts	Mon Apr 07 18:22:14 2025 +0200
@@ -4,7 +4,7 @@
   <context>
     <name>OllamaChatWidget</name>
     <message>
-      <location filename="../OllamaChatWidget.py" line="41" />
+      <location filename="../OllamaChatWidget.py" line="60" />
       <source>&lt;b&gt;{0} - {1}&lt;/b&gt;</source>
       <comment>title, model name</comment>
       <translation type="unfinished" />
@@ -38,12 +38,12 @@
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaClient.py" line="594" />
+      <location filename="../OllamaClient.py" line="597" />
       <source>&lt;p&gt;Error: The local server at &lt;b&gt;{0}&lt;/b&gt; is not responding.&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaClient.py" line="596" />
+      <location filename="../OllamaClient.py" line="599" />
       <source>&lt;p&gt;Error: The configured server at &lt;b&gt;{0}&lt;/b&gt; is not responding.&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
@@ -301,237 +301,237 @@
   <context>
     <name>OllamaWidget</name>
     <message>
-      <location filename="../OllamaWidget.py" line="199" />
+      <location filename="../OllamaWidget.py" line="213" />
       <source>&lt;b&gt;ollama Server Version {0}&lt;/b&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="363" />
+      <location filename="../OllamaWidget.py" line="377" />
       <source>Save Chat History</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="364" />
+      <location filename="../OllamaWidget.py" line="378" />
       <source>&lt;p&gt;The chat history could not be saved to &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="420" />
-      <location filename="../OllamaWidget.py" line="399" />
+      <location filename="../OllamaWidget.py" line="434" />
+      <location filename="../OllamaWidget.py" line="413" />
       <source>Load Chat History</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="400" />
+      <location filename="../OllamaWidget.py" line="414" />
       <source>&lt;p&gt;The chat history could not be loaded from &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="421" />
+      <location filename="../OllamaWidget.py" line="435" />
       <source>&lt;p&gt;These chats were not loaded because they already existed.&lt;/p&gt;{0}</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="498" />
-      <location filename="../OllamaWidget.py" line="491" />
+      <location filename="../OllamaWidget.py" line="512" />
+      <location filename="../OllamaWidget.py" line="505" />
       <source>New Chat</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="492" />
+      <location filename="../OllamaWidget.py" line="506" />
       <source>A model has to be selected first. Aborting...</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="499" />
+      <location filename="../OllamaWidget.py" line="513" />
       <source>Enter a title for the new chat:</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="696" />
+      <location filename="../OllamaWidget.py" line="712" />
       <source>Chat History</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="697" />
+      <location filename="../OllamaWidget.py" line="713" />
       <source>Load</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="700" />
+      <location filename="../OllamaWidget.py" line="716" />
       <source>Clear All</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="703" />
+      <location filename="../OllamaWidget.py" line="719" />
       <source>Import</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="704" />
+      <location filename="../OllamaWidget.py" line="720" />
       <source>Export</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="710" />
+      <location filename="../OllamaWidget.py" line="726" />
       <source>Model Management</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1001" />
-      <location filename="../OllamaWidget.py" line="711" />
+      <location filename="../OllamaWidget.py" line="1018" />
+      <location filename="../OllamaWidget.py" line="727" />
       <source>List Models</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1019" />
-      <location filename="../OllamaWidget.py" line="713" />
+      <location filename="../OllamaWidget.py" line="1036" />
+      <location filename="../OllamaWidget.py" line="729" />
       <source>List Running Models</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="717" />
+      <location filename="../OllamaWidget.py" line="733" />
       <source>Show Model Library</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1036" />
-      <location filename="../OllamaWidget.py" line="722" />
+      <location filename="../OllamaWidget.py" line="1053" />
+      <location filename="../OllamaWidget.py" line="738" />
       <source>Install Model</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1109" />
-      <location filename="../OllamaWidget.py" line="1100" />
-      <location filename="../OllamaWidget.py" line="1089" />
-      <location filename="../OllamaWidget.py" line="725" />
+      <location filename="../OllamaWidget.py" line="1126" />
+      <location filename="../OllamaWidget.py" line="1117" />
+      <location filename="../OllamaWidget.py" line="1106" />
+      <location filename="../OllamaWidget.py" line="741" />
       <source>Remove Model</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="732" />
+      <location filename="../OllamaWidget.py" line="748" />
       <source>Local Server</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="734" />
+      <location filename="../OllamaWidget.py" line="750" />
       <source>Start with Monitoring</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="738" />
-      <source>Start</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
-      <location filename="../OllamaWidget.py" line="741" />
-      <source>Stop</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
-      <location filename="../OllamaWidget.py" line="748" />
-      <source>ollama URLs</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
-      <location filename="../OllamaWidget.py" line="750" />
-      <source>Model Library</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
       <location filename="../OllamaWidget.py" line="754" />
+      <source>Start</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../OllamaWidget.py" line="757" />
+      <source>Stop</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../OllamaWidget.py" line="764" />
+      <source>ollama URLs</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../OllamaWidget.py" line="766" />
+      <source>Model Library</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../OllamaWidget.py" line="770" />
       <source>Download</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="758" />
+      <location filename="../OllamaWidget.py" line="774" />
       <source>Blog</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="775" />
+      <location filename="../OllamaWidget.py" line="791" />
       <source>Configure...</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="816" />
+      <location filename="../OllamaWidget.py" line="832" />
       <source>Clear All Chat Histories</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="817" />
+      <location filename="../OllamaWidget.py" line="833" />
       <source>&lt;p&gt;Do you really want to delete all chat histories? This is &lt;b&gt;irreversible&lt;/b&gt;.&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="832" />
+      <location filename="../OllamaWidget.py" line="848" />
       <source>Import Chat History</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="834" />
+      <location filename="../OllamaWidget.py" line="850" />
       <source>Chat History Files (*.json);;All Files (*)</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="867" />
-      <location filename="../OllamaWidget.py" line="835" />
+      <location filename="../OllamaWidget.py" line="884" />
+      <location filename="../OllamaWidget.py" line="851" />
       <source>Chat History Files (*.json)</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="865" />
-      <location filename="../OllamaWidget.py" line="855" />
+      <location filename="../OllamaWidget.py" line="882" />
+      <location filename="../OllamaWidget.py" line="871" />
       <source>Export Chat History</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="856" />
+      <location filename="../OllamaWidget.py" line="872" />
       <source>Select the chats to be exported:</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="954" />
+      <location filename="../OllamaWidget.py" line="971" />
       <source>Run Local 'ollama' Server</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="955" />
+      <location filename="../OllamaWidget.py" line="972" />
       <source>The loacl 'ollama' server process could not be started.</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1002" />
+      <location filename="../OllamaWidget.py" line="1019" />
       <source>There are no models available.</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1020" />
+      <location filename="../OllamaWidget.py" line="1037" />
       <source>There are no models running.</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1037" />
+      <location filename="../OllamaWidget.py" line="1054" />
       <source>Enter the name of the model to be installed:</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1090" />
+      <location filename="../OllamaWidget.py" line="1107" />
       <source>Select the model to be removed by the 'ollama' server:</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1101" />
+      <location filename="../OllamaWidget.py" line="1118" />
       <source>&lt;p&gt;The model &lt;b&gt;{0}&lt;/b&gt; was deleted successfully.&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1110" />
+      <location filename="../OllamaWidget.py" line="1127" />
       <source>&lt;p&gt;The model &lt;b&gt;{0}&lt;/b&gt; could not be removed from the 'ollama' server.&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1137" />
+      <location filename="../OllamaWidget.py" line="1154" />
       <source>Network Error</source>
       <translation type="unfinished" />
     </message>
@@ -557,7 +557,7 @@
     </message>
     <message>
       <location filename="../OllamaWidget.ui" line="0" />
-      <source>Enter Message</source>
+      <source>Enter Message and press 'Ctrl-Return' to send it or use the send button.</source>
       <translation type="unfinished" />
     </message>
     <message>
--- a/OllamaInterface/i18n/ollama_en.ts	Tue Dec 10 15:48:48 2024 +0100
+++ b/OllamaInterface/i18n/ollama_en.ts	Mon Apr 07 18:22:14 2025 +0200
@@ -4,7 +4,7 @@
   <context>
     <name>OllamaChatWidget</name>
     <message>
-      <location filename="../OllamaChatWidget.py" line="41" />
+      <location filename="../OllamaChatWidget.py" line="60" />
       <source>&lt;b&gt;{0} - {1}&lt;/b&gt;</source>
       <comment>title, model name</comment>
       <translation type="unfinished" />
@@ -38,12 +38,12 @@
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaClient.py" line="594" />
+      <location filename="../OllamaClient.py" line="597" />
       <source>&lt;p&gt;Error: The local server at &lt;b&gt;{0}&lt;/b&gt; is not responding.&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaClient.py" line="596" />
+      <location filename="../OllamaClient.py" line="599" />
       <source>&lt;p&gt;Error: The configured server at &lt;b&gt;{0}&lt;/b&gt; is not responding.&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
@@ -301,237 +301,237 @@
   <context>
     <name>OllamaWidget</name>
     <message>
-      <location filename="../OllamaWidget.py" line="199" />
+      <location filename="../OllamaWidget.py" line="213" />
       <source>&lt;b&gt;ollama Server Version {0}&lt;/b&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="363" />
+      <location filename="../OllamaWidget.py" line="377" />
       <source>Save Chat History</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="364" />
+      <location filename="../OllamaWidget.py" line="378" />
       <source>&lt;p&gt;The chat history could not be saved to &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="420" />
-      <location filename="../OllamaWidget.py" line="399" />
+      <location filename="../OllamaWidget.py" line="434" />
+      <location filename="../OllamaWidget.py" line="413" />
       <source>Load Chat History</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="400" />
+      <location filename="../OllamaWidget.py" line="414" />
       <source>&lt;p&gt;The chat history could not be loaded from &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="421" />
+      <location filename="../OllamaWidget.py" line="435" />
       <source>&lt;p&gt;These chats were not loaded because they already existed.&lt;/p&gt;{0}</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="498" />
-      <location filename="../OllamaWidget.py" line="491" />
+      <location filename="../OllamaWidget.py" line="512" />
+      <location filename="../OllamaWidget.py" line="505" />
       <source>New Chat</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="492" />
+      <location filename="../OllamaWidget.py" line="506" />
       <source>A model has to be selected first. Aborting...</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="499" />
+      <location filename="../OllamaWidget.py" line="513" />
       <source>Enter a title for the new chat:</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="696" />
+      <location filename="../OllamaWidget.py" line="712" />
       <source>Chat History</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="697" />
+      <location filename="../OllamaWidget.py" line="713" />
       <source>Load</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="700" />
+      <location filename="../OllamaWidget.py" line="716" />
       <source>Clear All</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="703" />
+      <location filename="../OllamaWidget.py" line="719" />
       <source>Import</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="704" />
+      <location filename="../OllamaWidget.py" line="720" />
       <source>Export</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="710" />
+      <location filename="../OllamaWidget.py" line="726" />
       <source>Model Management</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1001" />
-      <location filename="../OllamaWidget.py" line="711" />
+      <location filename="../OllamaWidget.py" line="1018" />
+      <location filename="../OllamaWidget.py" line="727" />
       <source>List Models</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1019" />
-      <location filename="../OllamaWidget.py" line="713" />
+      <location filename="../OllamaWidget.py" line="1036" />
+      <location filename="../OllamaWidget.py" line="729" />
       <source>List Running Models</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="717" />
+      <location filename="../OllamaWidget.py" line="733" />
       <source>Show Model Library</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1036" />
-      <location filename="../OllamaWidget.py" line="722" />
+      <location filename="../OllamaWidget.py" line="1053" />
+      <location filename="../OllamaWidget.py" line="738" />
       <source>Install Model</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1109" />
-      <location filename="../OllamaWidget.py" line="1100" />
-      <location filename="../OllamaWidget.py" line="1089" />
-      <location filename="../OllamaWidget.py" line="725" />
+      <location filename="../OllamaWidget.py" line="1126" />
+      <location filename="../OllamaWidget.py" line="1117" />
+      <location filename="../OllamaWidget.py" line="1106" />
+      <location filename="../OllamaWidget.py" line="741" />
       <source>Remove Model</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="732" />
+      <location filename="../OllamaWidget.py" line="748" />
       <source>Local Server</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="734" />
+      <location filename="../OllamaWidget.py" line="750" />
       <source>Start with Monitoring</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="738" />
-      <source>Start</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
-      <location filename="../OllamaWidget.py" line="741" />
-      <source>Stop</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
-      <location filename="../OllamaWidget.py" line="748" />
-      <source>ollama URLs</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
-      <location filename="../OllamaWidget.py" line="750" />
-      <source>Model Library</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
       <location filename="../OllamaWidget.py" line="754" />
+      <source>Start</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../OllamaWidget.py" line="757" />
+      <source>Stop</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../OllamaWidget.py" line="764" />
+      <source>ollama URLs</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../OllamaWidget.py" line="766" />
+      <source>Model Library</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../OllamaWidget.py" line="770" />
       <source>Download</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="758" />
+      <location filename="../OllamaWidget.py" line="774" />
       <source>Blog</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="775" />
+      <location filename="../OllamaWidget.py" line="791" />
       <source>Configure...</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="816" />
+      <location filename="../OllamaWidget.py" line="832" />
       <source>Clear All Chat Histories</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="817" />
+      <location filename="../OllamaWidget.py" line="833" />
       <source>&lt;p&gt;Do you really want to delete all chat histories? This is &lt;b&gt;irreversible&lt;/b&gt;.&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="832" />
+      <location filename="../OllamaWidget.py" line="848" />
       <source>Import Chat History</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="834" />
+      <location filename="../OllamaWidget.py" line="850" />
       <source>Chat History Files (*.json);;All Files (*)</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="867" />
-      <location filename="../OllamaWidget.py" line="835" />
+      <location filename="../OllamaWidget.py" line="884" />
+      <location filename="../OllamaWidget.py" line="851" />
       <source>Chat History Files (*.json)</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="865" />
-      <location filename="../OllamaWidget.py" line="855" />
+      <location filename="../OllamaWidget.py" line="882" />
+      <location filename="../OllamaWidget.py" line="871" />
       <source>Export Chat History</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="856" />
+      <location filename="../OllamaWidget.py" line="872" />
       <source>Select the chats to be exported:</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="954" />
+      <location filename="../OllamaWidget.py" line="971" />
       <source>Run Local 'ollama' Server</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="955" />
+      <location filename="../OllamaWidget.py" line="972" />
       <source>The loacl 'ollama' server process could not be started.</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1002" />
+      <location filename="../OllamaWidget.py" line="1019" />
       <source>There are no models available.</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1020" />
+      <location filename="../OllamaWidget.py" line="1037" />
       <source>There are no models running.</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1037" />
+      <location filename="../OllamaWidget.py" line="1054" />
       <source>Enter the name of the model to be installed:</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1090" />
+      <location filename="../OllamaWidget.py" line="1107" />
       <source>Select the model to be removed by the 'ollama' server:</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1101" />
+      <location filename="../OllamaWidget.py" line="1118" />
       <source>&lt;p&gt;The model &lt;b&gt;{0}&lt;/b&gt; was deleted successfully.&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1110" />
+      <location filename="../OllamaWidget.py" line="1127" />
       <source>&lt;p&gt;The model &lt;b&gt;{0}&lt;/b&gt; could not be removed from the 'ollama' server.&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1137" />
+      <location filename="../OllamaWidget.py" line="1154" />
       <source>Network Error</source>
       <translation type="unfinished" />
     </message>
@@ -557,7 +557,7 @@
     </message>
     <message>
       <location filename="../OllamaWidget.ui" line="0" />
-      <source>Enter Message</source>
+      <source>Enter Message and press 'Ctrl-Return' to send it or use the send button.</source>
       <translation type="unfinished" />
     </message>
     <message>
--- a/OllamaInterface/i18n/ollama_es.ts	Tue Dec 10 15:48:48 2024 +0100
+++ b/OllamaInterface/i18n/ollama_es.ts	Mon Apr 07 18:22:14 2025 +0200
@@ -301,237 +301,237 @@
   <context>
     <name>OllamaWidget</name>
     <message>
-      <location filename="../OllamaWidget.py" line="199" />
+      <location filename="../OllamaWidget.py" line="213" />
       <source>&lt;b&gt;ollama Server Version {0}&lt;/b&gt;</source>
       <translation>&lt;b&gt;Versión del servidor ollama {0}&lt;/b&gt;</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="363" />
+      <location filename="../OllamaWidget.py" line="377" />
       <source>Save Chat History</source>
       <translation>Guardar Historia del Chat</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="364" />
+      <location filename="../OllamaWidget.py" line="378" />
       <source>&lt;p&gt;The chat history could not be saved to &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
       <translation>&lt;p&gt;La historia del chat no se ha podido salvar en &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;Razón: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="420" />
-      <location filename="../OllamaWidget.py" line="399" />
+      <location filename="../OllamaWidget.py" line="434" />
+      <location filename="../OllamaWidget.py" line="413" />
       <source>Load Chat History</source>
       <translation>Cargar Historia de Chat</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="400" />
+      <location filename="../OllamaWidget.py" line="414" />
       <source>&lt;p&gt;The chat history could not be loaded from &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
       <translation>&lt;p&gt;La historia de chat no se ha podido cargar desde &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;Razón: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="421" />
+      <location filename="../OllamaWidget.py" line="435" />
       <source>&lt;p&gt;These chats were not loaded because they already existed.&lt;/p&gt;{0}</source>
       <translation>&lt;p&gt;Estos chats no se han cargado porque ya existen.&lt;/p&gt;{0}</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="498" />
-      <location filename="../OllamaWidget.py" line="491" />
+      <location filename="../OllamaWidget.py" line="512" />
+      <location filename="../OllamaWidget.py" line="505" />
       <source>New Chat</source>
       <translation>Nuevo Chat</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="492" />
+      <location filename="../OllamaWidget.py" line="506" />
       <source>A model has to be selected first. Aborting...</source>
       <translation>Se ha de seleccionar un modelo antes. Abortando...</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="499" />
+      <location filename="../OllamaWidget.py" line="513" />
       <source>Enter a title for the new chat:</source>
       <translation>Introducir título para el nuevo chat:</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="698" />
+      <location filename="../OllamaWidget.py" line="712" />
       <source>Chat History</source>
       <translation>Historia de Chat</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="699" />
+      <location filename="../OllamaWidget.py" line="713" />
       <source>Load</source>
       <translation>Cargar</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="702" />
+      <location filename="../OllamaWidget.py" line="716" />
       <source>Clear All</source>
       <translation>Limpiar Todo</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="705" />
+      <location filename="../OllamaWidget.py" line="719" />
       <source>Import</source>
       <translation>Importar</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="706" />
+      <location filename="../OllamaWidget.py" line="720" />
       <source>Export</source>
       <translation>Exportar</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="712" />
+      <location filename="../OllamaWidget.py" line="726" />
       <source>Model Management</source>
       <translation>Gestión de Modelos</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1003" />
-      <location filename="../OllamaWidget.py" line="713" />
+      <location filename="../OllamaWidget.py" line="1018" />
+      <location filename="../OllamaWidget.py" line="727" />
       <source>List Models</source>
       <translation>Listar Modelos</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1021" />
-      <location filename="../OllamaWidget.py" line="715" />
+      <location filename="../OllamaWidget.py" line="1036" />
+      <location filename="../OllamaWidget.py" line="729" />
       <source>List Running Models</source>
       <translation>Listar Modelos en Ejecución</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="719" />
+      <location filename="../OllamaWidget.py" line="733" />
       <source>Show Model Library</source>
       <translation>Mostrar Biblioteca de Modelos</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1038" />
-      <location filename="../OllamaWidget.py" line="724" />
+      <location filename="../OllamaWidget.py" line="1053" />
+      <location filename="../OllamaWidget.py" line="738" />
       <source>Install Model</source>
       <translation>Instalar Modelo</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1111" />
-      <location filename="../OllamaWidget.py" line="1102" />
-      <location filename="../OllamaWidget.py" line="1091" />
-      <location filename="../OllamaWidget.py" line="727" />
+      <location filename="../OllamaWidget.py" line="1126" />
+      <location filename="../OllamaWidget.py" line="1117" />
+      <location filename="../OllamaWidget.py" line="1106" />
+      <location filename="../OllamaWidget.py" line="741" />
       <source>Remove Model</source>
       <translation>Eliminar Modelo</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="734" />
+      <location filename="../OllamaWidget.py" line="748" />
       <source>Local Server</source>
       <translation>Servidor Local</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="736" />
+      <location filename="../OllamaWidget.py" line="750" />
       <source>Start with Monitoring</source>
       <translation>Iniciar con Monitorización</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="740" />
+      <location filename="../OllamaWidget.py" line="754" />
       <source>Start</source>
       <translation>Iniciar</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="743" />
+      <location filename="../OllamaWidget.py" line="757" />
       <source>Stop</source>
       <translation>Detener</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="750" />
+      <location filename="../OllamaWidget.py" line="764" />
       <source>ollama URLs</source>
       <translation>URLs ollama</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="752" />
+      <location filename="../OllamaWidget.py" line="766" />
       <source>Model Library</source>
       <translation>Biblioteca de Modelos</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="756" />
+      <location filename="../OllamaWidget.py" line="770" />
       <source>Download</source>
       <translation>Descarga</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="760" />
+      <location filename="../OllamaWidget.py" line="774" />
       <source>Blog</source>
       <translation>Blog</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="777" />
+      <location filename="../OllamaWidget.py" line="791" />
       <source>Configure...</source>
       <translation>Configurar...</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="818" />
+      <location filename="../OllamaWidget.py" line="832" />
       <source>Clear All Chat Histories</source>
       <translation>Limpiar Todas las Historias de Chat</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="819" />
+      <location filename="../OllamaWidget.py" line="833" />
       <source>&lt;p&gt;Do you really want to delete all chat histories? This is &lt;b&gt;irreversible&lt;/b&gt;.&lt;/p&gt;</source>
       <translation>&lt;p&gt;¿Desea realmente borrar todas las historias de chat? Esto es &lt;b&gt;irreversible&lt;/b&gt;.&lt;/p&gt;</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="834" />
+      <location filename="../OllamaWidget.py" line="848" />
       <source>Import Chat History</source>
       <translation>Importar Historia de Chat</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="836" />
+      <location filename="../OllamaWidget.py" line="850" />
       <source>Chat History Files (*.json);;All Files (*)</source>
       <translation>Archivos de Historia de Chat (*.json);;Todos los Archivos (*)</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="869" />
-      <location filename="../OllamaWidget.py" line="837" />
+      <location filename="../OllamaWidget.py" line="884" />
+      <location filename="../OllamaWidget.py" line="851" />
       <source>Chat History Files (*.json)</source>
       <translation>Archivos de Historia de Chat (*.json)</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="867" />
-      <location filename="../OllamaWidget.py" line="857" />
+      <location filename="../OllamaWidget.py" line="882" />
+      <location filename="../OllamaWidget.py" line="871" />
       <source>Export Chat History</source>
       <translation>Exportar Historia de Chat</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="858" />
+      <location filename="../OllamaWidget.py" line="872" />
       <source>Select the chats to be exported:</source>
       <translation>Seleccionar chats a exportar:</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="956" />
+      <location filename="../OllamaWidget.py" line="971" />
       <source>Run Local 'ollama' Server</source>
       <translation>Ejecutar Servidor 'ollama' Local</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="957" />
+      <location filename="../OllamaWidget.py" line="972" />
       <source>The loacl 'ollama' server process could not be started.</source>
       <translation>El proceso del servidor local 'ollama' no se ha podido iniciar.</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1004" />
+      <location filename="../OllamaWidget.py" line="1019" />
       <source>There are no models available.</source>
       <translation>No hay modelos disponibles.</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1022" />
+      <location filename="../OllamaWidget.py" line="1037" />
       <source>There are no models running.</source>
       <translation>No hay modelos en ejecución.</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1039" />
+      <location filename="../OllamaWidget.py" line="1054" />
       <source>Enter the name of the model to be installed:</source>
       <translation>Introducir el nombre del modelo a instalar:</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1092" />
+      <location filename="../OllamaWidget.py" line="1107" />
       <source>Select the model to be removed by the 'ollama' server:</source>
       <translation>Seleccionar el modelo a eliminar por el servidor 'ollama':</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1103" />
+      <location filename="../OllamaWidget.py" line="1118" />
       <source>&lt;p&gt;The model &lt;b&gt;{0}&lt;/b&gt; was deleted successfully.&lt;/p&gt;</source>
       <translation>&lt;p&gt;El modelo &lt;b&gt;{0}&lt;/b&gt; se ha borrado con éxito.&lt;/p&gt;</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1112" />
+      <location filename="../OllamaWidget.py" line="1127" />
       <source>&lt;p&gt;The model &lt;b&gt;{0}&lt;/b&gt; could not be removed from the 'ollama' server.&lt;/p&gt;</source>
       <translation>&lt;p&gt;El modelo &lt;b&gt;{0}&lt;/b&gt; no se ha podido eliminar del servidor 'ollama'.&lt;/p&gt;</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1139" />
+      <location filename="../OllamaWidget.py" line="1154" />
       <source>Network Error</source>
       <translation>Error de Red</translation>
     </message>
@@ -557,14 +557,18 @@
     </message>
     <message>
       <location filename="../OllamaWidget.ui" line="0" />
-      <source>Enter Message</source>
-      <translation>Introducir Mensaje</translation>
+      <source>Enter Message and press 'Ctrl-Return' to send it or use the send button.</source>
+      <translation type="unfinished" />
     </message>
     <message>
       <location filename="../OllamaWidget.ui" line="0" />
       <source>Press to send the message of the current chat to the 'ollama' server.</source>
       <translation>Pulsar para enviar el mensaje del chat actual al servidor 'ollama'.</translation>
     </message>
+    <message>
+      <source>Enter Message</source>
+      <translation type="vanished">Introducir Mensaje</translation>
+    </message>
   </context>
   <context>
     <name>PluginOllamaInterface</name>
--- a/OllamaInterface/i18n/ollama_ru.ts	Tue Dec 10 15:48:48 2024 +0100
+++ b/OllamaInterface/i18n/ollama_ru.ts	Mon Apr 07 18:22:14 2025 +0200
@@ -38,12 +38,12 @@
       <translation>&lt;p&gt;Произошла сетевая ошибка.&lt;/p&gt;&lt;p&gt;Ошибка: {0}&lt;/p&gt;</translation>
     </message>
     <message>
-      <location filename="../OllamaClient.py" line="594" />
+      <location filename="../OllamaClient.py" line="597" />
       <source>&lt;p&gt;Error: The local server at &lt;b&gt;{0}&lt;/b&gt; is not responding.&lt;/p&gt;</source>
       <translation>&lt;p&gt;Ошибка: Локальный сервер по адресу &lt;b&gt;{0}&lt;/b&gt; не отвечает.&lt;/p&gt;</translation>
     </message>
     <message>
-      <location filename="../OllamaClient.py" line="596" />
+      <location filename="../OllamaClient.py" line="599" />
       <source>&lt;p&gt;Error: The configured server at &lt;b&gt;{0}&lt;/b&gt; is not responding.&lt;/p&gt;</source>
       <translation>&lt;p&gt;Ошибка: Настроенный сервер по адресу &lt;b&gt;{0}&lt;/b&gt; не отвечает.&lt;/p&gt;</translation>
     </message>
@@ -301,237 +301,237 @@
   <context>
     <name>OllamaWidget</name>
     <message>
-      <location filename="../OllamaWidget.py" line="199" />
+      <location filename="../OllamaWidget.py" line="213" />
       <source>&lt;b&gt;ollama Server Version {0}&lt;/b&gt;</source>
       <translation>&lt;b&gt;Версия сервера ollama {0}&lt;/b&gt;</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="363" />
+      <location filename="../OllamaWidget.py" line="377" />
       <source>Save Chat History</source>
       <translation>Сохранить историю чата</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="364" />
+      <location filename="../OllamaWidget.py" line="378" />
       <source>&lt;p&gt;The chat history could not be saved to &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
       <translation>&lt;p&gt;Не удалось сохранить историю чата в &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;Причина: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="420" />
-      <location filename="../OllamaWidget.py" line="399" />
+      <location filename="../OllamaWidget.py" line="434" />
+      <location filename="../OllamaWidget.py" line="413" />
       <source>Load Chat History</source>
       <translation>Загрузить историю чата</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="400" />
+      <location filename="../OllamaWidget.py" line="414" />
       <source>&lt;p&gt;The chat history could not be loaded from &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
       <translation>&lt;p&gt;Не удалось загрузить историю чата из &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;Причина: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="421" />
+      <location filename="../OllamaWidget.py" line="435" />
       <source>&lt;p&gt;These chats were not loaded because they already existed.&lt;/p&gt;{0}</source>
       <translation>Эти чаты не были загружены, потому что они уже существуют.&lt;/p&gt;{0}</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="498" />
-      <location filename="../OllamaWidget.py" line="491" />
+      <location filename="../OllamaWidget.py" line="512" />
+      <location filename="../OllamaWidget.py" line="505" />
       <source>New Chat</source>
       <translation>Нрвый чат</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="492" />
+      <location filename="../OllamaWidget.py" line="506" />
       <source>A model has to be selected first. Aborting...</source>
       <translation>Сначала необходимо выбрать модель. Прерывание...</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="499" />
+      <location filename="../OllamaWidget.py" line="513" />
       <source>Enter a title for the new chat:</source>
       <translation>Введите заголовок нового чата:</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="698" />
+      <location filename="../OllamaWidget.py" line="712" />
       <source>Chat History</source>
       <translation>История чата</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="699" />
+      <location filename="../OllamaWidget.py" line="713" />
       <source>Load</source>
       <translation>Загрузить</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="702" />
+      <location filename="../OllamaWidget.py" line="716" />
       <source>Clear All</source>
       <translation>Очистить все</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="705" />
+      <location filename="../OllamaWidget.py" line="719" />
       <source>Import</source>
       <translation>Импорт</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="706" />
+      <location filename="../OllamaWidget.py" line="720" />
       <source>Export</source>
       <translation>Экспорт</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="712" />
+      <location filename="../OllamaWidget.py" line="726" />
       <source>Model Management</source>
       <translation>Управление моделью</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1003" />
-      <location filename="../OllamaWidget.py" line="713" />
+      <location filename="../OllamaWidget.py" line="1018" />
+      <location filename="../OllamaWidget.py" line="727" />
       <source>List Models</source>
       <translation>Список моделей</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1021" />
-      <location filename="../OllamaWidget.py" line="715" />
+      <location filename="../OllamaWidget.py" line="1036" />
+      <location filename="../OllamaWidget.py" line="729" />
       <source>List Running Models</source>
       <translation>Список работающих моделей</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="719" />
+      <location filename="../OllamaWidget.py" line="733" />
       <source>Show Model Library</source>
       <translation>Показать библиотеку моделей</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1038" />
-      <location filename="../OllamaWidget.py" line="724" />
+      <location filename="../OllamaWidget.py" line="1053" />
+      <location filename="../OllamaWidget.py" line="738" />
       <source>Install Model</source>
       <translation>Установить модель</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1111" />
-      <location filename="../OllamaWidget.py" line="1102" />
-      <location filename="../OllamaWidget.py" line="1091" />
-      <location filename="../OllamaWidget.py" line="727" />
+      <location filename="../OllamaWidget.py" line="1126" />
+      <location filename="../OllamaWidget.py" line="1117" />
+      <location filename="../OllamaWidget.py" line="1106" />
+      <location filename="../OllamaWidget.py" line="741" />
       <source>Remove Model</source>
       <translation>Удалить модель</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="734" />
+      <location filename="../OllamaWidget.py" line="748" />
       <source>Local Server</source>
       <translation>Локальный сервер</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="736" />
+      <location filename="../OllamaWidget.py" line="750" />
       <source>Start with Monitoring</source>
       <translation>Старт с мониторингом</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="740" />
+      <location filename="../OllamaWidget.py" line="754" />
       <source>Start</source>
       <translation>Старт</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="743" />
+      <location filename="../OllamaWidget.py" line="757" />
       <source>Stop</source>
       <translation>Стоп</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="750" />
+      <location filename="../OllamaWidget.py" line="764" />
       <source>ollama URLs</source>
       <translation>URL'ы ollama</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="752" />
+      <location filename="../OllamaWidget.py" line="766" />
       <source>Model Library</source>
       <translation>Библиотека моделей</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="756" />
+      <location filename="../OllamaWidget.py" line="770" />
       <source>Download</source>
       <translation>Загрузка</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="760" />
+      <location filename="../OllamaWidget.py" line="774" />
       <source>Blog</source>
       <translation>Блог</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="777" />
+      <location filename="../OllamaWidget.py" line="791" />
       <source>Configure...</source>
       <translation>Настройка...</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="818" />
+      <location filename="../OllamaWidget.py" line="832" />
       <source>Clear All Chat Histories</source>
       <translation>Очистить все истории чата</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="819" />
+      <location filename="../OllamaWidget.py" line="833" />
       <source>&lt;p&gt;Do you really want to delete all chat histories? This is &lt;b&gt;irreversible&lt;/b&gt;.&lt;/p&gt;</source>
       <translation>&lt;p&gt;Вы действительно хотите удалить все истории чата? Это действие &lt;b&gt;необратимо&lt;/b&gt;.&lt;/p&gt;</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="834" />
+      <location filename="../OllamaWidget.py" line="848" />
       <source>Import Chat History</source>
       <translation>Импорт истории чата</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="836" />
+      <location filename="../OllamaWidget.py" line="850" />
       <source>Chat History Files (*.json);;All Files (*)</source>
       <translation>Файлы истории чата (*.json);;Все файлы (*)</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="869" />
-      <location filename="../OllamaWidget.py" line="837" />
+      <location filename="../OllamaWidget.py" line="884" />
+      <location filename="../OllamaWidget.py" line="851" />
       <source>Chat History Files (*.json)</source>
       <translation>Файлы истории чата (*.json)</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="867" />
-      <location filename="../OllamaWidget.py" line="857" />
+      <location filename="../OllamaWidget.py" line="882" />
+      <location filename="../OllamaWidget.py" line="871" />
       <source>Export Chat History</source>
       <translation>Экспорт истории чата</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="858" />
+      <location filename="../OllamaWidget.py" line="872" />
       <source>Select the chats to be exported:</source>
       <translation>Выберите чаты для экспорта:</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="956" />
+      <location filename="../OllamaWidget.py" line="971" />
       <source>Run Local 'ollama' Server</source>
       <translation>Запустить локальный сервер 'ollama'</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="957" />
+      <location filename="../OllamaWidget.py" line="972" />
       <source>The loacl 'ollama' server process could not be started.</source>
       <translation>Не удалось запустить локальный процесс сервера 'ollama'.</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1004" />
+      <location filename="../OllamaWidget.py" line="1019" />
       <source>There are no models available.</source>
       <translation>Нет доступных моделей.</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1022" />
+      <location filename="../OllamaWidget.py" line="1037" />
       <source>There are no models running.</source>
       <translation>Нет запущенных моделей.</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1039" />
+      <location filename="../OllamaWidget.py" line="1054" />
       <source>Enter the name of the model to be installed:</source>
       <translation>Введите имя модели, которую нужно установить:</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1092" />
+      <location filename="../OllamaWidget.py" line="1107" />
       <source>Select the model to be removed by the 'ollama' server:</source>
       <translation>Выберите модель, которая будет удалена сервером 'ollama':</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1103" />
+      <location filename="../OllamaWidget.py" line="1118" />
       <source>&lt;p&gt;The model &lt;b&gt;{0}&lt;/b&gt; was deleted successfully.&lt;/p&gt;</source>
       <translation>&lt;p&gt;Модель &lt;b&gt;{0}&lt;/b&gt; была успешно удалена.&lt;/p&gt;</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1112" />
+      <location filename="../OllamaWidget.py" line="1127" />
       <source>&lt;p&gt;The model &lt;b&gt;{0}&lt;/b&gt; could not be removed from the 'ollama' server.&lt;/p&gt;</source>
       <translation>&lt;p&gt;Модель &lt;b&gt;{0}&lt;/b&gt; не удалось удалить с сервера 'ollama'.&lt;/p&gt;</translation>
     </message>
     <message>
-      <location filename="../OllamaWidget.py" line="1139" />
+      <location filename="../OllamaWidget.py" line="1154" />
       <source>Network Error</source>
       <translation>Ошибка сети</translation>
     </message>
@@ -557,14 +557,18 @@
     </message>
     <message>
       <location filename="../OllamaWidget.ui" line="0" />
-      <source>Enter Message</source>
-      <translation>Введите сообщение</translation>
+      <source>Enter Message and press 'Ctrl-Return' to send it or use the send button.</source>
+      <translation type="unfinished" />
     </message>
     <message>
       <location filename="../OllamaWidget.ui" line="0" />
       <source>Press to send the message of the current chat to the 'ollama' server.</source>
       <translation>Отправить сообщение текущего чата на сервер 'ollama'.</translation>
     </message>
+    <message>
+      <source>Enter Message</source>
+      <translation type="vanished">Введите сообщение</translation>
+    </message>
   </context>
   <context>
     <name>PluginOllamaInterface</name>
--- a/PluginAiOllama.epj	Tue Dec 10 15:48:48 2024 +0100
+++ b/PluginAiOllama.epj	Mon Apr 07 18:22:14 2025 +0200
@@ -1,7 +1,7 @@
 {
   "header": {
     "comment": "eric project file for project PluginAiOllama",
-    "copyright": "Copyright (C) 2024 Detlev Offenbach, detlev@die-offenbachs.de"
+    "copyright": "Copyright (C) 2025 Detlev Offenbach, detlev@die-offenbachs.de"
   },
   "project": {
     "AUTHOR": "Detlev Offenbach",
@@ -69,7 +69,7 @@
         "DocstringType": "eric_black",
         "EnabledCheckerCategories": "ASY, C, D, E, I, L, M, NO, N, Y, U, W",
         "ExcludeFiles": "*/Ui_*.py",
-        "ExcludeMessages": "M201,C101,E203,E265,E266,E305,E402,M251,M701,M702,M811,M834,M852,N802,N803,N807,N808,N821,U101,W293,W503,Y119,Y401,Y402",
+        "ExcludeMessages": "M-201,C-101,E-203,E-265,E-266,E-305,E-402,M-251,M-701,M-702,M-811,M-834,M-852,N-802,N-803,N-807,N-808,N-821,U-101,W-293,W-503,Y-119,Y-401,Y-402",
         "FixCodes": "",
         "FixIssues": false,
         "FutureChecker": "",
@@ -99,7 +99,7 @@
           "SortIgnoringStyle": false,
           "SortOrder": "natural"
         },
-        "NoFixCodes": "E501",
+        "NoFixCodes": "E-501",
         "RepeatMessages": true,
         "SecurityChecker": {
           "CheckTypedException": false,
--- a/PluginAiOllama.py	Tue Dec 10 15:48:48 2024 +0100
+++ b/PluginAiOllama.py	Mon Apr 07 18:22:14 2025 +0200
@@ -33,7 +33,7 @@
     "author": "Detlev Offenbach <detlev@die-offenbachs.de>",
     "autoactivate": True,
     "deactivateable": True,
-    "version": "10.1.7",
+    "version": "10.1.8",
     "className": "PluginOllamaInterface",
     "packageName": "OllamaInterface",
     "shortDescription": "Graphical 'ollama' client for eric-ide.",
@@ -46,7 +46,7 @@
 }
 # End-Of-Header
 
-error = ""  # noqa: U200
+error = ""  # noqa: U-200
 
 ollamaInterfacePluginObject = None
 
@@ -345,4 +345,4 @@
 
 
 #
-# eflag: noqa = M801, U200
+# eflag: noqa = M-801
Binary file PluginAiOllama.zip has changed
--- a/changelog.md	Tue Dec 10 15:48:48 2024 +0100
+++ b/changelog.md	Mon Apr 07 18:22:14 2025 +0200
@@ -1,6 +1,11 @@
 ChangeLog
 ---------
 
+__Version 10.1.8__
+
+- bug fixes
+- Added the capability to send the prompt by pressing Ctrl-Return or Ctrl-Enter.
+
 __Version 10.1.7__
 
 - bug fixes

eric ide

mercurial