All my programming projects (22 projects)

Tags: C code · Everything · Lua code · Python code · Syntax highlighting · Vim scripts
Sort by: GitHub watchers · Vim Online rating · Last updated · Lines of code

I studied computer science at the Hanzehogeschool and now work at Paylogic as a system administrator and developer (what nowadays is called DevOps) because I love programming. Here you can find several of my more-or-less usable pet projects, which I’ve published in the hope that they can be useful to others and also to contribute back after learning to program computers using free resources on the internet.

session.vim - Extended session management for Vim

The session.vim plug-in improves upon Vim’s built-in :mksession command by enabling you to easily and (if you want) automatically persist and restore your Vim editing sessions. It works by generating a Vim script that restores your current settings and the arrangement of tab pages and/or split windows and the files they contain.

easytags.vim - Automated tag generation and syntax highlighting in Vim

This plug-in runs Exuberant Ctags in the background to keep a global tags file up to date without user intervention. It also uses this tags file to perform dynamic syntax highlighting of user-defined functions and other identifiers.

notes.vim - Easy note taking in Vim

The notes.vim plug-in makes it easy to manage your notes in Vim by providing several (automatic) commands and an advanced syntax mode. Also included is a Python script that uses an SQLite full text index to accelerate keyword searching in hundreds of notes.

vim-tools - Python scripts to publish Vim plug-ins

Python scripts that make it easier for me to publish my Vim plug-ins (a Markdown to Vim help file converter and a ZIP package generator)

vim-misc - Miscellaneous auto-load Vim scripts

A collection of miscellaneous Vim script functions used by most of the Vim plug-ins I develop.

vim-tlv-mode - Transaction-Level Verilog support for Vim

The vim-tlv-mode plug-in adds support for Transaction-Level Verilog (TLV for short) to the Vim text editor. The plug-in is intended to provide everything needed to efficiently develop TLV code in Vim:

colorscheme-switcher.vim - Color scheme switcher for Vim

Makes it easy to quickly switch between colorschemes in Vim

Lua build bot - A build bot for popular Lua projects

Lots of Lua projects (including Lua itself and LuaJIT) only release source code archives and expect users to build the project. On UNIX this is not really a problem but on Windows this can pose a significant hurdle for potential users. My Lua build bot is an attempt to solve this problem.

lua.vim - Lua file type plug-in for the Vim text editor

This Lua file type plug-in for Vim makes it easier to work with Lua source code in Vim by providing features like a smart go to file mapping, automatic syntax checking, smart completion, help file searching, text objects, etc.

shell.vim - Improved integration between Vim and its environment

This plug-in aims to improve the integration between Vim and its environment by providing functions to switch to full-screen (see the screenshots), open URLs in the user’s default web browser and execute external commands in the background without opening a command prompt window. The shell.dll library exists to perform these things on Windows, while on UNIX external commands are used.

luainspect.vim - Semantic highlighting for Lua in Vim

Using the LuaInspect tool this plug-in performs (automatic) semantic highlighting of variables in Lua source code.

pyref.vim - Context-sensitive documentation for Python source code in Vim

This plug-in maps <F1> in Python files to search through the Python language reference and library reference documentation for the keyword or identifier at the current cursor position and open the first match in your web browser. When no GUI is available a command-line web browser like lynx or w3m will be used, otherwise the plug-in prefers a graphical web browser like Mozilla Firefox or Google Chrome. You can also use a local copy of the Python documentation (very handy when traveling without a reliable internet connection).

reload.vim - Automatic reloading of Vim scripts

When you edit and save a Vim script this plug-in automatically reloads the script. Supports standard plug-ins, auto-load scripts, file-type plug-ins, syntax highlighting scripts, file-type indentation plug-ins and color scheme scripts.

publish.vim - Publish hyperlinked, syntax highlighted source code with Vim

Vim’s runtime includes the script syntax/2html.vim which can be used to convert Vim’s syntax highlighting to HTML that, when viewed in a web browser, should look exactly the same. This plug-in enables you to run the 2html.vim script in batch-mode, to publish a whole tree of source code at once. It will also use tags files created by Exuberant Ctags to convert tags to hyper links, producing a tree of interlinked HTML documents. I’ve published the sources of all the plug-ins on this page as an example of the output produced.

python.vim - Vim file type plug-in for the Python programming language

Supports syntax based folding and automatic syntax checking using pyflakes.

pip-accel - pip-accel: Accelerator for pip, the Python package manager

Accelerator for pip, the Python package manager

open.vim - Open files and web pages in associated programs from Vim

Open files and web pages in their associated programs from Vim.

This Vim plug-in has been abandoned! Most of its code has been absorbed into my miscellaneous scripts for Vim while the user interface part is still found in my vim-shell plug-in. I will no longer maintain the open.vim plug-in since I’m shifting focus to the miscellaneous scripts (because they’re included in all of my Vim plug-ins and since I need the “open associated programs” functionality in several of my plug-ins, this makes most sense).

mpd-myfm - Your own personalized radio station: mpd-myfm

A Music Player Daemon client that automatically fills your play list with tracks from similar artists based on data provided by Last.fm.

Lua/APR - Apache Portable Runtime binding for Lua

A binding to the Apache Portable Runtime for Lua which aims to bring an extended standard library to Lua that supports both Windows and POSIX systems.

LXSH - Lexing & Syntax Highlighting in Lua

A collection of lexers and highlighters written in Lua using the excellent pattern-matching library LPeg. The highlighters generate HTML designed to be easily embedded in web pages. Two programming languages are currently supported, these are Lua and C. The highlighters support three color schemes.

sync-dotfiles - Quickly push your dotfiles from your workstation to your servers

A simply Python script to push your dotfiles from your workstation to your servers.

DedupFS - A deduplicating FUSE file system written in Python

Compressing, deduplicating file system implemented in Python on top of FUSE. Comes with a basic LZO binding because I couldn’t find any for Python.