easy LyX styles

June 8th, 2012

The official way to introduce custom styles to LyX is:

* the layout-file should be located in a special directory,
* after the layout file is changed, the user should:
. – execute re-configure and
. – restart LyX.

This way is too cumbersome for experimenting and developing styles. Fortunately, there is a solution.

Read the rest of this entry »

custom tex in rpm/apt distributions

January 6th, 2012

I prefer to use TeX from TeXlive distribution, not the default TeX bundled with an operating system. The problem is that rpm and apt tools check dependencies and insist on installing the wrong TeX. To trick the system, a fake package should be made and installed.

Read the rest of this entry »

german-russian, german-arabic vim keymaps

December 16th, 2011

vim includes many keyboard layouts, defined as mappings for symbols of the english layout. Unfortunately, these maps are not useful when the base layout is german. QWERTZ vs QWERTY is not the only difference. Now, deutsch-russisch und deutsch-arabisch vim keymaps sind da.

Read the rest of this entry »

german pc keyboard on mac os x

December 5th, 2011

The keys “< " and "^" seem swapped, but otherwise the normal PC german keyboard layout for Mac OS X is here: http://powerbook.blogger.de/2004/01/26/58788/mein-deutsches-pc-tastatur-layout-fr-macosx-103/.

control alt shift vmware

July 28th, 2011

Sometimes vmware makes something very wrong, and X server do not understand the keys CTRL, ALT, SHIFT and similar anymore. Solution: “setxkbmap” without any arguments.
Read the rest of this entry »

chess fen plugin for anki

June 27th, 2011

After I discovered anki, a tool to assist in remembering facts, I started to actively use it. Among other uses, I want to keep in memory some important chess positions. To display these positions in anki, I have written a plugin.

Read the rest of this entry »

delta debugging for latex

April 27th, 2011

From the delta debugging homepage: “With Delta Debugging, we can find failure-inducing circumstances automatically—circumstances such as the program input, changes to the program code, or program executions.” I tried to apply this technique to LaTeX, and surprisingly it worked. The code and samples of the experiment are uploaded on github.

The tools are:

* diffdelta.py: Finding which diff chunk causes an error.
* latexdd.py: Finding a minimal failing example
* stydd.py: sty-bug hunting

using a local copy of a file instead of downloading it in macports

April 20th, 2011

In some cases, macports can’t or should not download a file from internet. Instead, it should use an already downloaded local copy. Unfortunately, this use case is not supported, and a workaround is required.

Read the rest of this entry »

solved: vmware does not work anymore

April 4th, 2011

After some system update, vmware stopped working. It wrote some information which modules are loaded, and then silently exited. In a log file “ui-NNNN.log”, I found: “vmui| Caught signal 11”. The stacktrace said only that the crash was likely due to some signal.

Read the rest of this entry »

messed Helvetica etc on a PostScript printer

March 22nd, 2011

I’ve got PostScript files, which does look ok on the screen, but badly printed on Lexamark E232. The letters collide each with other, seems like instead of Helvetica some monospace font is substituted.

Read the rest of this entry »

Gambit Scheme PHP backend, milestone 1: proof of concept

February 9th, 2011

The goal of this release is to mark the milestone 1 (on github, as .tar.gz). I wanted to understand the GVM and to check if compilation to PHP is possible. This is done. While the current gambit-php version is very limited (only a few primitives are partially implemented), it covers all the important functionality:

Read the rest of this entry »

tracing libc calls with dtrace

January 26th, 2011

In order to find if I can affect a program through environment variables, I decided to trace all getenv calls and see if there is something interesting. Easy to said, harder to make. Fortunately, it is possible.

Read the rest of this entry »

\AddFontFeature in plain XeTeX

January 18th, 2011

XeLaTeX package “fontspec” provides an useful command “AddFontFeature” to add an effect to the curently selected font. Unfortunately, it works only if fontspec is used. Otherwise, a workaround is required. So far here is a draft to make text narrow:

Read the rest of this entry »

Solved: unable to enumerate USB device on port 1

January 18th, 2011

At some moment, my USB WLAN stick stopped working, and the log was polluted by messages like:

usb 6-1: new high speed USB device using ehci_hcd and address 62
hub 6-0:1.0: unable to enumerate USB device on port 1
hub 6-0:1.0: unable to enumerate USB device on port 1

At first, I decided that the stick had broken after years of work, but out of curiousity tried to connect it to every USB port I found. It worked. The stick worked again when plugged into the keyboard, which in term was connected to the KVM.

Read the rest of this entry »

PDF external streams are not supported

January 17th, 2011

Theoretically, a part of a PDF file is allowed to be stored externally. The “external streams” were introduced already in an ancient PDF specification. But only Acrobat (Reader) 5 supports it. For Acrobat 8, one has to find a hidden security option to activate support. Apple Quartz seems not to support external streams at all. The same for poppler (definitely, the source code is checked) and maybe its ancestor xpdf.

eSATA hot swap in Linux

December 29th, 2010

I hoped that eSATA interface allows to attach and detach HDDs to Linux on the fly, and the system would notice the changes automatically. The reality was quote apposite, the system hung during experiments. Finally, after scanning internet knowledge, and trying to get commands like atacontrol or scsiadd working, I found the command for manual swap.

Read the rest of this entry »

vim unicode setup for windows 2000

December 29th, 2010

To display unicode (utf8) files in vim in windows, the following commands should be added to %PROGRAMS%\Vim\_vimrc:

Read the rest of this entry »

how to install latest LuaTeX

December 21st, 2010

After reading Paul Isambert’s article “Three things you can do with LuaTeX that would be extremely painful otherwise ” I finally decided to check LuaTeX. Unfortunately, the code from the article does not work under old LuaTeX from TeX Live 2009 (and probably from TeX Live 2010 too). I downloaded a binary from the site, tried to run it and got an expected error:

This is LuaTeX, Version beta-0.40.6-2009100220 (TeX Live 2009)
(Fatal format file error; I'm stymied)

Read the rest of this entry »

multi-page tables with inter-row page breaks

December 6th, 2010

I’m not sure that a typesetting system exists, which could break within a table row. I managed to do it (in the first approximation) in LaTeX: source code, PDF, some explanations.

scheme as a virtual machine – III

November 12th, 2010

After experimenting with CPSCM, I have to drop it. The final now consists of two implementations: Chicken and Gambit.

Read the rest of this entry »