Bart's Blog

Now viewing: /tag/vim

Links

pictures
vimblog source

Search

Bookmarks

Tags

abiword adam apt asm ata audio bash bios board-game boot bug c code debian debug desktop devel disk dpkg email firefox font fs fun gdb geode git git-find git-graft go google gpg hardware html inkscape ion3 ipsec irc irssi joke kdb kernel klips kqemu kvm laptop lastfm ldap linux lua lvm mail make mercurial meta mouse-free mpd mutt net nfs oclug ogre ols oom openswan opteron osx ottawa perl photography power pxe qemu raid redhat ruby sbc scm screen scsi security shell ssh svn tags talk thinkpad ubuntu uml unix urxvt usb vi video vim vimgit vpn vserver web weechat wmii wmiirc-lua x x86 x86emu xen xen-box-setup xterm zsh

Posts

[ 20080719211329 ]
printable OLS/2008 schedule

[ 20080715214447 ]
wmiirc-lua updates

[ 20080713194704 ]
Git Screencast

[ 20080713143429 ]
four steps to reproducible Debian installs

[ 20080705150651 ]
USB2.0 enclosure benchmark

[ 20080703230924 ]
Linux Kernel Walkthroughs posted

[ 20080702113602 ]
Introducing the Ottawa Ruby folks to Git

[ 20080628160732 ]
Authenticating Linux against OSX LDAP directory

[ 20080627142123 ]
Canada Day Events 2008

[ 20080613162541 ]
Linux Kernel Walkthroughs

[ 20080510083828 ]
is my usb device connected to a fast port?

[ 20080509111534 ]
show more git info on zsh prompt

[ 20080430104202 ]
git-vim

[ 20080412100337 ]
color your word

[ 20080404105620 ]
show current git branch on zsh prompt (2)

[ 20080303200359 ]
how to track multiple svn branches in git

[ 20080301134220 ]
fixing X for GeodeLX

[ 20080108002540 ]
kvm nfs hang

[ 20080107160836 ]
screen -c relative path bug

[ 20080105132854 ]
WeeChat spell suggestions

[ 20071219221358 ]
show current git branch in zsh

[ 20071217141037 ]
wmiirc-lua kitchen sink repository

[ 20071212100316 ]
protecting sshd from OOM killer

[ 20071204234232 ]
wmiirc-lua v0.2.1 remembers a bit more

[ 20071013205336 ]
wmiirc-lua v0.2 has suspend and raw modes

[ 20070929112345 ]
wmiirc-lua debianization

[ 20070924104140 ]
zsh tip of the day - global aliases

[ 20070915094213 ]
wmiirc-lua v0.1.1

[ 20070913130838 ]
comparing two directories

[ 20070909204125 ]
git-rebase --interactive

[ 20070908115905 ]
zsh tab completion awesomeness

[ 20070902000736 ]
wmiirc in lua

[ 20070831150306 ]
debugging with -dbg libraries

[ 20070831142646 ]
svn status like output in git

[ 20070829141847 ]
Git Cheat Sheet

[ 20070821142038 ]
switching to abiword

[ 20070811105746 ]
forwarding ssh and X through screen

[ 20070807112531 ]
git-svnup

[ 20070724082355 ]
reducing power consumption

[ 20070722123734 ]
Makefile template

[ 20070722002649 ]
less, colourful

[ 20070719162359 ]
irssi docs

[ 20070716114553 ]
qemu eats up /dev/shm

[ 20070710214512 ]
git-clean in svn land

[ 20070705113139 ]
ipw2200 not working

[ 20070627191916 ]
git slides updated

[ 20070618220649 ]
unpopular debian packages on my system

[ 20070611125852 ]
git-svn with multiple branches

[ 20070517085321 ]
Linus on Git at Google

[ 20070510134551 ]
vim modelines insecure

[ 20070504205042 ]
bios disassembler

[ 20070504124124 ]
dd hex arguments

[ 20070503013555 ]
urxvt mouseless url yanking

[ 20070502211941 ]
gitdiff.vba v2

[ 20070419234350 ]
india

[ 20070418155857 ]
zsh fun

[ 20070418143632 ]
pipe to pastey.net

[ 20070418094151 ]
vimgrep alias

[ 20070416202545 ]
mouse-free

[ 20070406141850 ]
ATA messages via SCSI layer

[ 20070330221019 ]
GITDiff vim plugin

[ 20070329011735 ]
git presentation for OCLUG

[ 20070328123631 ]
fixing vim's [[ and ]] for bad code

[ 20070316092236 ]
pxeboot and nfsroot with debian

[ 20070312134706 ]
etc snapshots with git

[ 20070307004041 ]
remote power switch

[ 20070222215355 ]
klips-less openswan git tree

[ 20070221041316 ]
git caching for v1.5.x

[ 20070218002214 ]
klips loses zlib

[ 20070209172606 ]
vim and linux CodingStyle

[ 20070207205427 ]
my kqemu install

[ 20070204100100 ]
leaner meaner openswan

[ 20070115111917 ]
wmii+ruby xlock action

[ 20070112131252 ]
cloning xterms in wmii+ruby

[ 20070102010551 ]
wmii+ruby talk for OCLUG

[ 20061228220641 ]
dump and restore

[ 20061218100219 ]
C style

[ 20061101002027 ]
fetching all git branches from remote

[ 20061028111607 ]
local caching for git repos

[ 20061020145437 ]
automatic version creation with git

[ 20061018213306 ]
wmii w/ ruby wmiirc

[ 20061018201907 ]
small fonts

[ 20061007151802 ]
google-codesearch from vim

[ 20060928020813 ]
shell commands

[ 20060920093957 ]
letting screen apps use the ssh-agent

[ 20060908223613 ]
mpdscribble stream support

[ 20060907125149 ]
glGo on ubuntu/dapper amd64

[ 20060906163240 ]
lbdb and mutt

[ 20060902145643 ]
vim tutorial

[ 20060902135722 ]
fixing your terminal

[ 20060828124713 ]
apt-get pdiffs

[ 20060824224842 ]
256 colour xterms

[ 20060824152658 ]
dynamic IPcomp

[ 20060824145428 ]
inkscape++

[ 20060818150516 ]
tags/cscope for system headers

[ 20060805131557 ]
opteron 170, part 4

[ 20060805101941 ]
opteron 170, part 3

[ 20060803233234 ]
opteron 170, part 2

[ 20060802210126 ]
opteron 170

[ 20060729144129 ]
OLS keysigning / 2006

[ 20060728105500 ]
git-find findings

[ 20060727162941 ]
starting on git-find

[ 20060727113632 ]
git-graft and git-find brainstorm

[ 20060726224531 ]
pretty function tracing

[ 20060713174723 ]
uml and multiple network segments

[ 20060707182236 ]
lastfm artist and title to clipboard

[ 20060706162256 ]
reverting a git changeset

[ 20060629212003 ]
user #3

[ 20060628083456 ]
firefox crashes with form input

[ 20060621151402 ]
git vs hg

[ 20060612222204 ]
ldap account management

[ 20060612194523 ]
stupid ldap

[ 20060608092157 ]
rpm hell is right

[ 20060605095726 ]
OpenSSH VPNs

[ 20060604114317 ]
Lenovo lost a customer

[ 20060601234010 ]
generating html colourized sourcecode

[ 20060601211716 ]
ion3 greatness and acting on X selections

[ 20060526085644 ]
software RAID10 performance

[ 20060525234148 ]
learning to love git

[ 20060524121638 ]
recent vim7 articles

[ 20060516095748 ]
bootstrapping debian on my sbc

[ 20060428145140 ]
entropy injection

[ 20060423140628 ]
Adam

[ 20060414202507 ]
converting mp3s to CD

[ 20060413232836 ]
secure apt-get

[ 20060412194423 ]
xen domain0 on debian

[ 20060410220525 ]
LVM2 on RAID1 mirror

[ 20060410102824 ]
building a RHEL4 kernel w/ kdb support

[ 20060407230939 ]
xen on debian

[ 20060407230818 ]
Upgraded look

[ 20060330131334 ]
Flattered by a copy

[ 20060328165153 ]
vim7 from source

[ 20060308123539 ]
Perl, Catalyst, CPAN, and Debian

[ 20060308123302 ]
last.fm

[ 20060128124841 ]
carcassonne and zombies

[ 20060120135931 ]
Election Humour

[ 20050925130002 ]
ldap on debian

[ 20050528190034 ]
Error while mapping shared library sections

[ 20050124130158 ]
IRC over email gateway

[ 20050110225522 ]
brute force attacks sshd?

[ 20050108095026 ]
LDAP authentication (part 1)

[ 20041124130146 ]
sawfish workspace themes

[ 20041113082651 ]
Mini-DV to divx using mencoder

[ 20041004084525 ]
notes on vserver

[ 20040922104334 ]
fast kernel logging

[ 20040803104122 ]
Digital Rebel for sale... GONE

[ 20040326082602 ]
bash vi editing mode

[ 20040305163216 ]
cool debian tools

...



RSS Feed - Full Content

Valid XHTML 1.0 Transitional

Created with Vim

Created with Perl


git-vim

[ link: git-vim | tags: git vim | updated: Wed, 30 Apr 2008 10:44:36 ]

I have had an item on my todo list to improve my vim/git integration for a while. Today, I found git-vim on github. I was really impressed. So I forked it and hope to do some work on the project...

    git://tachyon.jukie.net/git-vim.git

First I will have to check if there is anything salvageable from my current vim scripts.

vim modelines insecure

[ link: vim-modelines-insecure | tags: vim security | updated: Thu, 10 May 2007 13:54:00 ]

I have previously disabled modelines in my vimrc, but had turned them on recently only to learn today that they are subject to another vulnerability.

I've seen this before. Enough is enough. :)

Fortunately, this sparked a debate on vim-dev mailing list. One of the outcomes is a vim script that replaces the modeline parser in vim. It is said to be a lot more strict about what it permits as valid modeline components and allows the user to control that in the vimrc.

You can grab the script, put it in your .vim/plugins/ directory and turn off the built-in modelines parser:

    set modelines=0

Optionally you can set this variable to have the new parser show errors in parsing.

    let g:secure_modelines_verbose=1

gitdiff.vba v2

[ link: vimscript-gitdiff-v2 | tags: vim git vimgit | updated: Wed, 02 May 2007 21:32:13 ]

I released version 2 of my gitdiff.vba vim script.

It now supports two features:

  • :GITDiff [commitish]

    Split the vim window vertically, display the HEAD, or some other changeset, version of the file in the split, then diff them.

  • :GITChanges [commitish]

    Highlight lines that were changed since the HEAD or some other changeset.

I also started using the VimBall script, which is a package format for vim scripts. So to install it, you need to first have the vimball extension. Further, if you have the GetLatestVimScripts you can use the :GLVS commands to automatically upgrade your packages.

Next, I want to merge in maddcoder's gitcommit.vim script, and call the result something more grand like 'vim-gittools.vba'.

vimgrep alias

[ link: vimgrep-alias | tags: vim shell zsh | updated: Wed, 18 Apr 2007 09:46:28 ]

I've been using Solaris recently... since yesterday. First reactions: How can anyone use their command line tools!?

Fortunately the system I was on had zsh and vim.

Here is a macro I use to avoid Solaris grep:

    function vimgrep () { tmp="$@" ; vim -c "vimgrep $tmp | copen" ; }

(I could not figure out a way to do it w/o the tmp variable)

Now you can do things like:

    vimgrep pattern 'dir/**/*.c'

mouse-free

[ link: vimperator | tags: firefox web vim desktop | updated: Mon, 16 Apr 2007 22:06:55 ]

First there was a Navigator, then there was an Explorer. Later it was time for a Konqueror. Now it's time for an Imperator, the VIMperator :)

VIMperator is a mozilla/firefox plugin from Martin Stubenschrott. It completely redefines the firefox interface to mimic the beloved VIM editor.

If you love vim, you are likely to love VIMperator. If not... well, your loss.

[Read More]

GITDiff vim plugin

[ link: vim-gitdiff | tags: git vim vimgit | updated: Wed, 02 May 2007 21:23:33 ]

Taking a TODO item off my list, I am adding a plugin to vim that splits the current window and presents a diff between the current file and any revision of that file in the current git repository.

[Read More]

fixing vim's [[ and ]] for bad code

[ link: find-functions-in-vim | tags: vim | updated: Sat, 11 Aug 2007 14:21:59 ]

I just added something to my .vim/c.vim to make [[ and ]] work even if the code does not have { on new lines.

    function! FindFunctionDefinition(dir)
            let l:lastpattern = @/
            if a:dir==-1
                    ?^\(\a.*(\_[^\)]*) *\)\{,1\}{
            elseif a:dir==1
                    /^\(\a.*(\_[^\)]*) *\)\{,1\}{
            endif 
            let @/ = l:lastpattern
    endfunction

    nmap [[ :call FindFunctionDefinition(-1)<CR>
    nmap ]] :call FindFunctionDefinition(1)<CR>

This will make [[ and ]] find the next and previous function even if the first { is not in the first column.

vim and linux CodingStyle

[ link: vim-and-linux-coding-style | tags: vim linux kernel c code | updated: Sat, 16 Jun 2007 21:03:49 ]

It would seem that either no one that codes for the Linux kernel does so under vim, or if they do they don't have the time to share their vim configuration that doesn't conflict with the kernel's CodingStyle.

Below I will discuss some changes I had to make to my .vimrc and .vim/c.vim to work with C efficiently.

[Read More]

google-codesearch from vim

[ link: codesearch-from-vim | tags: vim google code | updated: Sat, 07 Oct 2006 15:28:23 ]

I just saw vim hint 1354 pop up in my RSS feed. It's a neat idea... but it's hard to decide what documentation should be looked up. Simply using the file type is insufficient.

It turns out that it's a lot more awesome to do google codesearch lookup on it.

[Read More]

vim tutorial

[ link: 20060902145643 | tags: vim | updated: Fri, 20 Oct 2006 21:51:34 ]

I just joined the #vim irc channel on freenode. In the topic is suggested visiting Vi-Improved.org. This site in turn had a pretty good tutorial, here are a couple related links:





Bart Trojanowski
http://www.jukie.net/~bart
bart@jukie.net