Eine einfache Lösung für Umlaute wäre übrigens die Deklaration der Eingabecodierung und dann einfach die Verwendung des entsprechenden Umlauts:
    % !Mode:: "TeX:UTF-8"
    \listfiles
    \documentclass{scrartcl}
    \usepackage[utf8]{inputenc}% utf8 entsprechend der Editoreinstellung ggf. anpassen
    \usepackage[ngerman]{babel}
    \newcommand\cmd{ö}
    \begin{document}
    "o \cmd
    \end{document}
Ergibt bei korrekter Angabe der Eingabecodierung (Screenshot aus dem Online-Editor Overleaf):
![ö und ö][1]http://texwelt.de/wissen/fragen/3461/wie-kompiliere-ich-in-der-eingabeaufforderung-im-terminal
ö][1]
Das funktioniert natürlich nicht nur für Umlaute, aber keineswegs für alle möglichen Sonderzeichen. Leute, die nicht wissen, mit welcher Codierung sie arbeiten, können mit [`selinput`](http://www.ctan.org/pkg/selinput) arbeiten:
    % !Mode:: "TeX:UTF-8"
    \listfiles
    \documentclass{scrartcl}
    \usepackage{selinput}% für \SelectInputMappings
    \SelectInputMappings{% automatische Bestimmung der Codierung anhand von Beispielzeichen
      adieresis={ä},
      germandbls={ß}
    }
    \usepackage[ngerman]{babel}
    \newcommand\cmd{ö}
    \begin{document}
    "o \cmd
    \end{document}
Allerdings gebe ich zu bedenken, dass es immer von Vorteil ist zu wissen, [welche Codierung der Editor verwendet](http://texwelt.de/wissen/fragen/2656/wie-uberprufe-ich-die-standardeingabekodierung-in-meinem-editor). Im ersten Beispiel habe ich UTF8 gewählt, weil das die Codierung im Online-Editor Overlead und auch die Voreinstellung fast aller modernen LaTeX-Editoren ist.
Bei Verwendung einer UTF8-Engine wie `xelatex` oder `lualatex` benötigt man nicht einmal die Deklaration der Eingabecodierung. Natürlich muss man dann aber zwingend UTF8 als Eingabecodierung verwenden:
    % !Mode:: "TeX:UTF-8"
    % Unbedingt LuaLaTeX oder XeLaTeX statt PFDLaTeX verwenden!
    \listfiles
    \documentclass{scrartcl}
    \usepackage{fontspec}
    \usepackage[ngerman]{babel}
    \newcommand\cmd{ö}
    \begin{document}
    "o \cmd
    \end{document}
Für `babel` Shorthands allgemein ist dagegen [Marcos Lösung](#19578) zu verwenden.
Wer Probleme damit hat, die Dateien in der korrekten Codierung zu erstellen, kann sie sich übrigens direkt aus dem Online-Editor herunterladen. Damit nicht womöglich der Editor die Codierung anschließend beschädigt, sollte man dann natürlich direkt [im Terminal `pdflatex` bzw. `lualatex` oder `xelatex` aufrufen](http://texwelt.de/wissen/fragen/3461/wie-kompiliere-ich-in-der-eingabeaufforderung-im-terminal). Sollte auch das nicht funktionieren kann man (beispielsweise in einer Anschlussfrage) die entstandene `log`-Datei mit angeben.
  [1]: http://texwelt.de/wissen/upfiles/test_20170222_163419.png