Dockerisierte Latex-Vorlagen

Nützliche Latex-Vorlagen für einen Lebenslauf sowie ein Bewerbungsanschreiben gibt es jetzt unter https://github.com/markiewb/dockerisierterLatexLebenslauf

Das Schöne daran ist die Nutzung von Docker. Auf diese Weise nutzt man Latex in einem isolierten Container und verunreinigt sich sein System nicht mit einer Latex-Installation. Meinen vorheriger Artikel dazu: Running Latex using Docker

Advertisements

How to Stream a DVD from Mac to Android using VLC 3.0.0

Here is my configuration to stream a DVD from VLC on Mac High Sierra to a VLC client app on Android (f.e. 2017 Kindle HD10).

2018-02-13_00-40-222018-02-13_00-40-44

  • HTTP
  • MPEG PS <- this is important if you want to get subtitles

Once you started streaming you can connect the VLC client app to the stream using the hosts IP address. For example http://192.168.178.35:1234.

Now even subtitles and the audio lanes can be chosen in the streaming client app. Note that changing the subtitles takes several seconds to take effect.

Tested using version 3.0.0 on server and client side.

Running Latex using Docker

A simple way to compile your latex files without installing a latex-distribution is the usage of a docker-container. Thanks to https://github.com/blang/latex-docker it is easier than ever.

Within your directory with your article.tex invoke:

docker run --rm -i --user="$(id -u):$(id -g)" --net=none -v "$PWD":/data blang/latex xelatex article.tex

The current directory is mounted into the container and thus the latex executable within the container can access the source files (xelatex article.tex) and the results are placed in the current directory too.

Running TiddlyWiki using Docker

Thanks to https://github.com/djmaze/tiddlywiki-docker it is easy to launch a TiddlyWiki as nodejs-server from a docker image. Here is my setup, which simplifies the workflow by some bash-aliases.

Setup

In ~/.bash_profile define

# /Users/MyUserName/wikipath defines the mounted wiki directory
alias starttiddly="docker run -d --name tiddlycontainer -p 127.0.0.1:10000:8080 -v /Users/MyUserName/wikipath:/var/lib/tiddlywiki mazzolino/tiddlywiki"
alias stoptiddly="docker container stop tiddlycontainer && docker container rm tiddlycontainer"

Usage

  1. Start a bash-terminal and invoke starttiddly to start the server
  2. Open your browser at http://localhost:10000 and work with tiddlywiki (the default login is user/wiki)
  3. After usage shutdown the container by invoking stoptiddly

Latex: Alignment of a fixed-width column in the tabular-environment

Based on the post even fixed-width columns can be aligned.

\documentclass{article}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[german]{babel}
\usepackage{array}
\begin{document}
% Centered fixed-width column
\newcolumntype{C}[1]{>{\centering\arraybackslash}m{#1}}
% Right-aligned fixed-width column
\newcolumntype{R}[1]{>{\rtab\arraybackslash}m{#1}}

\begin{tabular}{C{2cm}R{2cm}}
\hline
Ein etwas langer Text, der sicherlich umbrochen wird & a\\
\hline
oder kurz & b\\
\hline
\end{tabular}
\end{document}

How to develop your IntelliJ IDEA plugins even faster with JRebel

Back in my NetBeans times I wrote several articles (1, 2) about using Zeroturnarounds JRebel to develop NetBeans plugins faster by not restarting nor reloading the whole target-platform. JRebel is a Java agent, so it can be used with nearly every Java-based application. Even for developing IDEA plugins. And here is how you do it:

One-Time-Setup

  1. Buy a JRebel license or get a free one for your open-source plugin at myRebel
  2. Install the JRebel plugin for IDEA from the plugin manager (for bundling JRebel, a configuration UI and debugging support)
  3. Activate the plugin using the license from step 1
  4. Update the your Run- or Debug configuration with the Java agent configuration – based on the standard documentation)
    For example: -agentpath:/Users/markiewb/Downloads/jrebel/lib/libjrebel64.dylib
    runconfiguration

Every-day-workflow

  1. Run / debug your plugin using the configuration created above – JRebel should show its banner and an IDEA instance should load
    banner
  2. Edit your Java sources as normal and when you want to get the changes reloaded then compile the project/all the changed files (thus the sources are compiled into class-files and JRebel can pick up the changes)
  3. Reinvoke your plugins actions (or what ever) in the target platform – your changes should be picked up

Notes

Note 1 Not all changes will be picked up. JRebel does not have yet official support for this usage scenario. Especially changes in the plugin.xml won’t be picked up. But within existing or new Java classes you can code and refactor as much as you like!

Note 2 If you are on Mac OS consider to install JRebel separately. I had issues to set the Java agent with the bundled JRebel from the JRebel IDE plugin. Do you see the culprit in -agentpath:/Users/markiewb/Library/Application Support/IntelliJIdea2017.2/jr-ide-idea/lib/jrebel6/lib/libjrebel64.dylib? The whitespace!

Note 3 Of course this also works when you write plugins for the other Java based IntelliJ platform IDEs like WebStorm, PHPStorm and so on.