Categories

Categories

 
 
 
 
03.04.2018
16:08

Using Gildas/Class from Python

As many people have been asking me on how to use Gildas/Class from within Python, I'll try to give a quick tour here. You will need to have Class installed including the Pyclass extension.

Before you start the Python script you need to initialize Gildas in the shell. Make also sure it is in your $PYTHONPATH. On my local PC using a bash shell where Gildas is installed in $GILDAS_DIR that is

 
 
source $GILDAS_DIR/initgag.sh
export PYTHONPATH=$PYTHONPATH:$GILAS_DIR/gildas-exe-mar18b/x86_64-ubuntu14.04-gfortran/python/
 
 

The example above is for the version of Class tested in March 2018 - you might need to change the path for your installed version accordingly. Check if Class is running as usual and that indeed you find the Gildas-path in your $PYTHONPATH.

Then you can execute the Python script or go into iPython. Here is a minimal example:

 
 
import pygildas, pyclass
 
# if you want your program to catch PygildasErrors:
from pgutils import PygildasError
 
# you are good to go from here, but to access stuff easier, I prefer
# to assign the two most commonly used objects to individual 
# variables for easy access
 
# get the gildas command line interpreter to issue commands quickly
sic = pyclass.comm
 
# get the pyclass.gdict object for easy Gildas variable access
g = pyclass.gdict
 
# just execute commands as you would within Class
# you just do not have the display - use matplotlib ;)
sic('SIC MESSAGE GLOBAL ON') # or OFF for less noise
 
sic('file in "myData.apex"')
# ...
 
 

To access Gildas variables we use the pyclass.gdict (the object we assigned to g). Unfortunately


[more]
05.05.2012
14:37

ASUS RT-N56U und Netzwerkdrucker unter Ubuntu Linux oder Windows 7

Um am ASUS RT-N56U Router einen Drucker zu betreiben muss man theoretisch nicht viel tun: Drucker einstecken und am Client PC entsprechend einrichten. Wie letzteres aber ohne die ASUS Wireless Utilities funktioniert (diese gibt es für Linux nicht), will ich hier kurz für Linux (Ubuntu mittels CUPS Web-Interface) und Windows 7 beschreiben.

Ubuntu/Linux:

Wichtig sind hier eigentlich nur zwei Dinge: 


[more]
06.10.2011
19:39

Unterschied zwischen zwei Datenbanken exportieren

Um mit Selenium Testcases für TYPO3 Extensions erzeugen zu können stellte sich mir die Frage, wie ich möglichst einfach ein umfangreiches Datenbank-Testinventar erstellen kann, ohne alle Tabelleneinträge von Hand anlegen zu müssen. Die Lösung ist dabei recht einfach:

  1. Datenbank kopieren
  2. Änderungen am Original durchführen
  3. Datenbanken vergleichen und Änderungen exportieren

Doch wie kommt man an die Änderungen zwischen beiden Datenbanken? Wenn beide Datenbanken (nennen wir sie actualDb und oldDb) auf dem gleichen Datenbankserver und für einen gemeinsamen User zugänglich sind, kann man dies für eine einzige Tabelle wie folgt erledigen.


[more]
18.04.2011
12:11

PHP Entwicklunsserver unter Windows ausetzen

Um effektiv größere Projekte zu verwalten, kann es hilfreich sein einen eigenen Entwicklungsserver aufzusetzten. Dieser sollte folgendes enthalten:

  • Versionskontrolle (SVN)
  • Issue Tracker (Redmine)
  • Testserver (WAMP)
  • Continous Integration (phpUnderControl)

Da es bei der Installation zu zahlreichen Problemen kommen kann, und ich an dieser Stelle nicht auf alle eingehen kann, werde ich hier nur kurz das Aufsetzten eines Entwicklungsservers unter Windows skizzieren, und auf detailiertere Quellen im Web verweisen, welche mir bei der Installation geholfen haben. Die Eingabeaufforderung sollte man hierbei generell als Admin ausführen, da es sonst zu Problemen mit den Rechten kommen kann, und es schwierig wird einen eventuell auftauchenden Fehler einzugrenzen.


[more]
05.04.2011
15:49

Zeilenumbrüche - Eclipse, Subversion und Windows

Unter Windows kann es unter Umständen zu Problemen mit den Zeilenumbrüchen in Dateien kommen, wenn man diese per Subversion in ein Repository committen will, und der Zeilenumbruch nicht Windows typisch CR-LF (bzw. "\r\n") sein soll, sondern Unix typisch nur durch einen Zeilenvorschub (LF, bzw. "\n") dargestellt werden soll (z.B. aufgrund vorgegebener Coding Guidelines).

Hierzu ist es notwendig, die Auto Properties von SVN so einzustellen, dass der gewünschte Zeilenumbruch erzeugt wird. Meistens wird für die auto-props in etwa folgendes angegeben:

[miscellany]
enable-auto-props = yes

[auto-props]
*.php = svn:eol-style=native;svn:keywords=Id Author Date Revision URL

Die Zuweisung der SVN Property eol-style=native bewirkt aber, dass der Zeilenumbruch beim Commit immer auf den natürlichen Zeilenumbruch des Betriebssystem des Clients umgestellt wird - unter Windows eben CRLF - egal, wie man den Zeilenumbruch in Eclipse (oder beliebigem Editor) eingestellt hat.

Damit nu


[more]
 
 
Impressum