Mac Customizing

Ich habe

im Einsatz.

Hammerspoon regelt jetzt einzig das Fenstermanagement und die vielen Shortcuts, die damit zusammenhängen. Im Gegensatz zu anderen Window Managern hat Hammerspoon eine Auto-Layout Funktion und das super geile Grid.

Hammerspoon Grid, um Fenstergrößen anzupassen

Mit Karabiner habe ich die mächtigsten Anpassungen umgesetzt: Den HyperKey (Caps Lock zu einem Super Modifier, der wie ctrl, cmd, alt und shift gleichzeitig ist), die Möglichkeit, Modifier einzeln zu benutzen und, beim drücken einer zweiten Taste, in ihrer ursprünglichen Funktion (shift alleine löscht vorwärts, mit einer zweiten Taste wird es zum normalen shift) und einige Shortcuts, die sonst nur umständlich umzusetzen wären. Außerdem läuft für die wichtigsten Apps ein kleiner Launcher in Karabiner.

Karabiner Einstellungen

BTT ist hauptsächlich für Gesten und spezielle Programmshortcuts zuständig, eine meiner Lieblingsfunktionen ist der Tap mit vier Fingern auf dem TouchPad, der mehrfach belegt ist und so ein spezielles Menu erzeugt.

BTT Custom Menu

Keyboard Maestro ist für spezielle Textanpassungen1 und GUI Scripting2 gut. Außerdem gibt’s hier eine schöne Macro-Aufnahme-und-abspiel-Funktion.

Kein Programm, aber auch eine wichtige Anpassung ist das DefaultKeyBindings.dict, in dem u. a. festgelegt wird, dass man z. B. mit alt + s den ganzen Absatz oder mit alt + w das aktuelle Wort markieren kann.

  1. Zwischenablage anpassen, markierten Text in Klammern setzen…
  2. Wenn iTunes angeht, LastFM Scrobbler starten…

Scrivener, Bookends & LaTeX

Das Ziel:

Dokumente im mächtigen Scrivener schreiben, mit Bookends die Literaturverwaltung organisieren und mit LaTeX den Text ordentlich und ohne hassle setzen.

Update: 28.8.16

Vieles hier gilt nach wie vor, statt den LaTeX Code direkt einzugeben bin ich dazu übergegangen die Dateien zu referenzieren, dann muss man bei einer Änderung in der Präambel nicht immer den Compile-Stil in Scrivener anpassen. Den LaTeX Code und die Scrivener Einstellungen gibt’s aktuell auch in meinem Github Repos:

Compile Settings

LaTeX

Der Code muss natürlich immer ein bisschen auf die eigenen Bedpürfnisse hin angepasst werden (v. a. die Pfade!)

Hier auch eine Vorschau auf ein compiliertes PDF, damit man im Vorfeld sehen kann, ob sich die Mühe lohnt:

Sample

1. Schreiben in Scrivener

Es gilt: Möglichst nahe an plain text bleiben!

  • Kursiv & Fettdruck können benutzt werden
    → Mit Markdown schreiben: **FETT**, *Kursiv*
  • Eingerückte Zitate1 mit > beginnen:
>„Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.“
  • Für Absätze eine leere Zeile lassen
  • Aufzählungen (nummeriert oder nicht) nicht von Scrivner erstellen (Also nicht Format > Liste) sondern einfach untereinander schreiben
  • Tabellen funktionieren nicht, die müssen manuell in LaTeX eingefügt werden.
  • Grafiken habe ich noch nicht getestet, das kommt dann in einem zweiten Schritt
  • Zitate einfügen:
[#CITEKEY;]
  • Querverweise:
    • [](#titeldeskapitelsohneleerzeichen) = Abschnitt X
    • [Titel des Kapitels][] = Titeldeskapitels (Abschnitt X)
  • Tabellen (und anderen LaTeX spezifischen Code) packt man in HTML-Kommentarzeichen, aber ohne Leerzeichen! Um z. B. ein LaTeX Dokument einzubinden, dass eine Tabelle enthält, wählt man folgenden Code:
<!--\input{/Users/Benutzer/Ort/Tabelle.tex}-->

2. Einstellungen in Scrivener

2.1 LaTeX Päambel

Meine LaTeX Präambel ist weit davon entfernt perfekt zu sein (wahrscheinlich strotzt sie sogar eher vor Fehlern) – sie funktioniert aber ausreichend gut und sieht schick aus und bisher bin ich auch noch nicht an einen Punkt gekommen, wo etwas furchtbar aussieht oder nicht funktioniert.

2.2 LaTeX Footer

2.3 Metadaten

Schlüssel: Base Header Level 
Wert:      3
  • Level 1 creates \part , \chapter , \section …
  • Level 2 creates \chapter , \section , \subsection, \subsubsection
  • Level 3 creates \section , \subsection , \subsubsection

Metadaten

Diesen Trick (und einige andere) habe ich übrigens von abnormaldata (hier!).

2.4 Ersetzungen

Text Replacements sind super mächtig in Scrivener, gerade in Verbindung mit einem LaTeX Export. Unten habe ich einige Ersetzungen zusammengefasst, im verlinkten Github Repo kann man auch die Compiler-Settings mit den Replacements runterladen und muss nicht alles selbst eintippen.

Leider fügt Bookends jedem Eintrag ein Backslash an, deswegen lässt man das vorher ersetzen (oder findet eine Lösung in Bookends, was sicher länger dauert – zumindest habe ich da keine Lust mehr drauf!):

Ein paar weitere Ersetzungen nehmen ebenfalls Arbeit ab:

[\# [# Damit Scrivener & Bookends zusammen arbeiten:
**$@** <!–\so{$@}–> (Text s p e r r e n)
<>$@<> <!–$@–> (LaTeX Code direkt in Scrivener schreiben)
“$@“ <!–\verb+$@+}–> (Code in LaTeX setzen)
::Text:: Todo Kommentare in LaTeX
[…] Eckige Auslassungen nie kursiv, auch in Zitaten nicht 

Außerdem kann man gut gevierte, gesperrte Leerzeichen zwischen Abkürzungen einfügen lassen:

  • i. d. R.
  • u. a.
  • z. B.
  • v. a.
  • d. h.

Beispiel:

u. a. <!–u.\,a.–>

… und gevierte, gesperrte Leerzeichen vor & nach Sonderzeichen setzen:

  • %
  • /
 % <!–\,%\,–>

Der LaTeX Output wird so ziemlich okay und das Dokument kann sich sofort sehen lassen! 😊

3. Bookends

Damit die Integration mit Bookends klappt muss man diesen Style importieren:

BibTexScrivener.fmt

ErsetzungenJetzt kann man, die exportierte BibTex Bibliographie zum kompilieren vorausgesetzt, mit ⌘ + y von Scrivener zu Bookends switchen, wieder ⌘ + y und die ausgewählte Zitation wird als [\#CITEKEY;] in Scrivener übertragen und beim kompilieren zu [#CITEKEY;] und dann in LaTeX als \autocite{CITEKEY} interpretiert und die Literaturangabe in eine Fußnote gepackt und ein Eintrag ans Literaturverzeichnis angehängt.