From f7f9536cf4cdc2165c3a371d8de758536fedeedb Mon Sep 17 00:00:00 2001
From: Bladen Martin
Date: Thu, 16 Jul 2020 13:23:10 +0530
Subject: launch ngspice via mintty

---
 src/ngspiceSimulation/NgspiceWidget.py | 18 ++++++++++++++++--
 1 file changed, 16 insertions(+), 2 deletions(-)

(limited to 'src')

diff --git a/src/ngspiceSimulation/NgspiceWidget.py b/src/ngspiceSimulation/NgspiceWidget.py
index a963c51f..136510e1 100644
--- a/src/ngspiceSimulation/NgspiceWidget.py
+++ b/src/ngspiceSimulation/NgspiceWidget.py
@@ -1,10 +1,12 @@
 from PyQt4 import QtGui, QtCore
 from configuration.Appconfig import Appconfig
+from configparser import SafeConfigParser
 import platform
 import os
 
-
 # This Class creates NgSpice Window
+
+
 class NgspiceWidget(QtGui.QWidget):
 
     def __init__(self, command, projPath):
@@ -20,6 +22,17 @@ class NgspiceWidget(QtGui.QWidget):
         self.layout = QtGui.QVBoxLayout(self)
         self.layout.addWidget(self.terminal)
 
+        if os.name == 'nt':
+            home = os.path.expanduser("~")
+
+            parser_nghdl = SafeConfigParser()
+            parser_nghdl.read(os.path.join(
+                home, os.path.join('.nghdl', 'config.ini')))
+            try:
+                msys_bin = parser_nghdl.get('COMPILER', 'MSYS_HOME')
+            except BaseException:
+                pass
+
         print("Argument to ngspice command : ", command)
         # For Linux OS
         if platform.system() == 'Linux':
@@ -40,6 +53,7 @@ class NgspiceWidget(QtGui.QWidget):
             tempdir = os.getcwd()
             projPath = self.obj_appconfig.current_project["ProjectName"]
             os.chdir(projPath)
-            self.command = "ngspice " + command
+            self.command = 'cmd /c '+'"start /min ' + \
+                msys_bin + "/mintty.exe ngspice " + command + '"'
             self.process.start(self.command)
             os.chdir(tempdir)
-- 
cgit