Use Windows Terminal by default

CMD in Windows Terminal

Have you ever thought that the default Windows console host is a clunky old piece of garbage? Choosing the font or colors is awkward at best. And it can’t be even resized horizontally. What a piece of crap!

Microsoft seems to have finally realized that and started the Windows Terminal project.

Once you install Windows Terminal you’ll be a little disapointed when Powershell or the command line still open up in the old console host. Some settings need to be adjusted.

Windows 11

Windows Terminal on Windows 11 has the built-in option to be used as default terminal for PowerShell and Command Prompt (cmd.exe). Simply start Windows Terminal, go to settings and then choose the default terminal application. Click save and you’re done.

Windows Terminal settings on Windows 11

If you only use Windows 11 you can stop reading now. Well done! Thanks for stopping by.

Windows 10

If you try the same on Windows 10 you will be disappointed to find out that this option is missing. But there is a way to do this manually.

Click on the start menu and then type Command Prompt (or Powershell). Do not press enter! At the top of the start menu the shortcut to the application should show up. Right-click on that link and choose "show file location".

Search for application link

An explorer window should open up with the link to the application highlighted. Right-click that link one once more and then choose properties. On the "Link" tab edit the target.

Properties of CMD link

Replace the target with the following: wt.exe -p "CMD"

The argument after -p is the name of the Windows Terminal profile. If you have an english version of Windows your profile might be called "Command Prompt".

Click OK and close the explorer window.

Repeat the steps to change the link to Windows Powershell and (if you have it installed) Powershell Core. If you don’t know what the names of the profiles in Windows Terminal are, just launch Windows Terminal and open the profiles menu.

Windows Terminal profiles menu

Next time you want to launch Powershell/Command Prompt you will be greeted by Windows Terminal launching Powershell/Command Prompt.

Must-have Webdienst


Ohne Dropbox könnte ich nicht mehr leben. Ich kann damit nicht nur einen Ordner zwischen verschiedenen meiner Rechner synchronisieren

sondern auch Ordner mit anderen Dropbox-Usern teilen. Und das ganze funktioniert sogar zwischen Windows, Mac und Linux.

Und dank des Public-Ordners kann ich auch mal eben eine Datei per http zugänglich machen, ohne diese mit (s)ftp/scp/… irgendwo heraufladen zu müssen. Auch von nicht-Nerds zu bewerkstelligen.

Wen ich jetzt von Dropbox überzeugen konnte, der möge sich über meinen Referral-Link anmelden. Für jeden User, der sich darüber anmeldet, bekomme ich zusätzlichen Speicherplatz.

Verrauschter Sound im Boot Camp

Zum Spielen von Windows-Spielen habe ich mir Windows XP im Boot Camp auf meinem iMac installiert. Hat bis auf den Ton auch prima geklappt. Der Ton klang jedoch irgendwie verrauscht. Das Problem war mit einem Update des Realtek High Definition Audio Codecs behoben. Der derzeit aktuelle Codec trägt Versionsnummer R1.84. Boot Camp hatte Version R1.81 mitgeliefert und diese Version verursachte den verrauschten Ton.

MS Access, pgsqlODBC und Booleans

pgsqlODBC macht in den Standardeinstellungen einige sehr sonderbare Sachen. Eine Spalte mit Booleans erscheint in MS Access als Textfeld. Das führt dann natürlich zu einigen Problemen mit Checkboxen. Access meint dann, das Feld wäre zu klein, um den Wert zu speichern. Dabei beherrscht MS Access Booleans. Man muß nur den pgsqlODBC-Treiber überzeugen, das ganze für MS Access verständlich zu präsentieren. Hierzu müssen nur 2 Optionen in der ODBC-Verbindung geändert werden. Die Optionen finden sich unter Datasource

  1. Bools as Char muß ausgeschaltet werden
  2. True is -1muß eingeschaltet werden

Verknüpft man die Tabellen nun (erneut), werden sie in MS Access auch korrekt als Ja/Nein angezeigt und können auch von Checkboxen verwendet werden.

Windows auf dem Mac, richtig gemacht

Nachdem Apple gestern sich mit dem Boot Camp nicht gerade mit Ruhm bekleckert hat, zeigt heute Parallels, wie man es richtig macht. Die Beta der Parallels Workstation ist eine virtuelle Maschine, in der man (unter anderem) Windows installieren kann. Damit entfällt das lästige hin- und herbooten. Als Bonus kann man nicht nur Windows (in den unterschiedlichsten Versionen) booten, sondern auch Linux, FreeBSD, Solaris und OS/2 incl. seines Nachfolgers eComStation. Genau das hätte ich von Apple erwartet. Aber möglicherweise könnte ja Steve Jobs sich entschließen, Parallels aufzukaufen :)

Apples Boot Camp

Nein, das ist kein Umerziehungslager für Windows-User. Apples Boot Camp soll es Besitzern von Intel-Macs ermöglichen, Windows auf ihrer Hardware zu installieren. Zuerst hielt ich das für einen verspäteten Aprilscherz, doch offenbar ist das doch ernst gemeint. Wenn ich es richtig verstehe, ist das nur ein glorifizierter Bootloader und ein paar Treiber für Windows XP. Ist man auf bestimmte Windows-Software angewiesen, wird das ständige hin- und herbooten jedoch auf die Dauer sehr lästig. Ich hätte hier eher etwas Richtung Xen oder VMWare erwartet. Ich will Windows schön eingesperrt in eine VM, wo es keinen großen Unsinn anstellen kann und mit einer Snapshot/Restore-Funktion immer wieder in einen (einigermaßen) benutzbaren Zustand gebracht werden kann. Übrigens soll Boot Camp auch Teil von Mac OS X 10.5 „Leopard“ werden. Nicht gerade das Killerfeature, da hätte ich doch mehr erwartet.

Will man sich sowas wirklich antun?

Es gibt ja inzwischen einen Wettbewerb, um Windows XP auf den neuen Intel-Macs zum laufen zu bringen. Dies sähe dann ja wohl in etwa so wie auf dem Bild aus. Jedesmal wenn ich das sehe, drängt sich mir der Gedanke, daß dies einfach falsch ist.

Windows auf Powerbook

Aufmerksamen Zeitgenossen wird natürlich aufgefallen sein, daß dies kein Intel-Mac ist. Hier läuft Windows einfach in einer virtuellen Maschine. Es ging mir hier nur um die Symbolträchtigkeit dieses Bildes

Nützliches für den Datennomaden

Wenn man wie ich sich in vielen Firmen herumtreibt und seinen Laptop an unterschiedliche Netzwerke anschließen muß, ist es lästig, ständig die Netzwerkeinstellungen zu ändern. Wohl dem, der sich nur in Netzwerke mit DHCP einklinken muß. Leider ist dieses Glück den Meisten nicht vergönnt. Abhilfe gibt es oft in Form von unterschiedlichen kleinen Tools. Diese sind jedoch gar nicht notwedig, da Windows 2000/XP schon alles nötige an Bord hat. Das Zauberwort heißt „Netsh“.

Wer schon mal an einem Cisco-Router oder der nsh gearbeitet hat, wird die Parallelen schnell erkennen. Die Netsh erlaubt es, das Netzwerk von der Kommandozeile zu konfigurieren. Man kann sich also die unterschiedlichen Konfigurationen als Netsh-Skripte bereitlegen und muß dann nur noch das passende ausführen. Ich habe mir dafür ein kleines Wrapper-Skript geschrieben.

Wenn ich nun in eine Firma komme, konfiguriere ich beim ersten Mal mein Netzwerk ganz normal in den Netzwerkverbindungen. Wenn die Konfiguration stimmt, lasse ich mir von der Netsh diese Konfiguration in eine Datei ausgeben:

netsh -c interface dump > Meine_Konfiguration.netsh

In der Datei findet sich nun jede Menge nutzloses Zeug. Wirklich relevant sind nur folgende Zeilen:

pushd interface ip
# Schnittstellen-IP-Konfiguration für ""LAN-Verbindung""
set address name="LAN-Verbindung" source=static addr=192.168.0.220 mask=255.255.255.0
set address name="LAN-Verbindung" gateway=192.168.0.254 gwmetric=0
set dns name="LAN-Verbindung" source=static addr=192.168.0.254 register=NONE
set wins name="LAN-Verbindung" source=static addr=none
popd

Will man später diese Konfiguration wieder laden, reicht folgender Aufruf von Netsh:

netsh -f Meine_Konfiguration.netsh

Fehlt nur noch ein kleines Wrapper-Skript, um die Einstellungen automatisiert zu laden. Meine bescheidenen Windows-Skripting-Kenntnisse (die noch aus den DOS-Zeiten übrig geblieben sind), haben zu sowas geführt:

@echo off
setlocal
if "%1" equ "" goto help
if not exist %1.netsh goto nofile
echo Switching to configuration: %1
netsh -f %1.netsh
goto end
:help
echo Usage: netswitch %%NETWORK_CONFIG%%
pause
goto end
:nofile
echo Network configuration %1.netsh not found
pause
goto end
:end

Jetzt brauche ich nur noch eine Verknüpfung an einer leicht zugänglichen Stelle anzulegen, die dieses Skript mit “Meine_Konfiguration“ (ohne „.netsh“ am Ende) als Parameter aufruft. Ein Doppelklick auf diese Verknüpfung und wenige Sekunden später habe ich die neue Konfiguration geladen ohne mich mühsam durch die Konfigurationsdialoge von Windows durchkämpfen zu müssen.

Kleiner Tip für die Eingabeaufforderung

Die Eingabeaufforderung unter Windows hat eine nur relativ geringe Auswahl an Schriften – auch wenn Windows selbst noch viel mehr monospaced Fonts installiert hat. Neben der Pixelschrift steht als einzige alternative Schriftart Lucida Console zur Verfügung. Als Fan von Andale Mono wollte ich diese Schrift auch in der Eingabeaufforderung nutzen können. In der Windows-Registry findet sich unter HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Console\\TrueTypeFont ein Eintrag, der die TrueType-Schriftart für die Konsole festlegt. Laut Q247815 sollte es genügen, einen weiteren Eintrag für eine weitere Schriftart anzulegen, damit dieser in der Liste verfügbar wird. (Nicht vergessen, die Nummer des Eintrags zu inkrementieren!) Dies hat jedoch bei mir unter Windows XP nicht funktioniert. Da ich aber Lucida Console eh nicht mag, habe ich einfach den Eintrag mit “Andale Mono” überschrieben.

Noch eine Anmerkung zu Andale Mono. Microsoft hat diese Schrift mit dem Internet Explorer 5 ausgeliefert. Später hat man die Schrift noch im Rahmen des “core fonts for the web”-Programms zum Download angeboten. Mitte 2002 zog dann Microsoft die Fonts von der Website zurück. Glücklicherweise wurden die Fonts vorher gemirrort.