# -*- coding: utf8 -*- # # 18.2.2017 """ Python-Skript für Vim Ersetze im aktuellen VIM-Puffer alle Wörter, die in der Datei "words" vorkommen, durch ihre Entsprechung in Großbuchstaben. Jede Zeile von "words" wird als Wort betrachtet, wobei das abschließende CR oder CRLF entfernt wird. Leere Wörter werden ignoriert. """ # Modul vim dient dem Zugriff auf Vim-Strukturen import sys, vim # aktuellen Puffer holen buffer = vim.current.buffer # die Wörter aus "words" einlesen und die Zeilenende-Kennzeichen am Wort # entfernen words = [w.rstrip('\r\n') for w in open('words')] # zeilenweise den Puffer durchlaufen for nr in range(len(buffer)): # aktuelle Zeile aus dem Puffer nehmen line = buffer[nr] # die Liste der zu ersetzenden Wörter durchlaufen for word in words: if not word: # leere Wörter ignorieren wir continue # alle Wörter entsprechend ersetzen line = line.replace(word, word.upper()) # die ggf. modifizierte Zeile in den Puffer zurückschreiben buffer[nr] = line