Diascope

Zur Zeit wird die Diascope Anwendung (früher »JExifManager«) grundlegend überarbeitet.

Eine frühe Vorschauversion ist auf GitHub verfügbar: github.com/berndmichaely/diascope

lib-filesystem-view – Für Java-Entwickler

lib-filesystem-view ist eine Java-Bibliothek, die eine Baumansicht eines Dateisystems für die Benutzeroberfläche einer Desktop-Anwendung zur Verfügung stellt.

Die Bibliothek ist verfügbar unter github.com/berndmichaely/lib-filesystem-view.

Für weitere Informationen sehen Sie das GitHub Wiki und die JavaDoc Dokumentation.

Screenshot lib-filesystem-view
JX3fExtract

Aktuelle Version: JX3fExtract 2.2 (build r534)

JX3fExtract besteht aus einer Reihe von Java Modulen, die folgende Funktionen zur Verfügung stellen:

  • Extrahieren von in Kamera vorverarbeiteten Bildern und Metadaten, die in X3F Dateien eingebettet sind
  • Extrahieren von X3F Daten, die in X3I Dateien eingebettet sind
  • eine Kommandozeilen-Schnittstelle zu den obigen Funktionen.

Für weitere informationen sehen Sie die JavaDoc Dokumentation und die ReadMe Datei.

Downloads:

JX3fExtract – ReadMe
lib-selectable-list-fx – Für Java-Entwickler

Aktuelle Version: lib-selectable-list-fx 2.0

lib-selectable-list-fx ist ein Java Modul, das eine OpenJavaFX-basierte Listen-Daten-Struktur zur Verfügung stellt, die die Listen-Elemente mit einem Selektions-Zustand einkapselt. Der Listen-Datentyp basiert auf javafx.collections.ObservableList und stellt einen selection change listening Mechanismus zur Verfügung. Der ListSelectionHandler Typ stellt Properties zur Ermittlung der Anzahl selektierter Listen-Elemente und »alles/nichts selektiert« Informationen zur Verfügung. Dies funktioniert auch durch eine Transformations-Kette hindurch.

Für weitere Informationen sehen Sie die JavaDoc Dokumentation.

Downloads:

lib-selectable-list-fx_2.0.tgz [SHA256 Prüfsumme]

Archiv:

lib-selectable-list-fx_1.0.tgz [SHA256 Prüfsumme]

lib-selectable-list-fx – ReadMe
lib-selectable-list-fx – ChangeLog
VCS Sync Tool

Das Script SynchronizeDirWithVcsWorkingCopy ist ein Java Shebang Script zur Synchronisation eines Verzeichnisses, das unter Versions-Kontrolle steht, mit einem neuen Soll-Zustand. Unterstützte VCS sind Subversion und Git.

Das Script ist verfügbar unter github.com/berndmichaely/vcs-sync-tool.

Vimdiff + Subversion

Vim kann verwendet werden, um verschiedene Revisionen in Subversion zu vergleichen. Es gibt einfache Möglichkeiten, diese Funktionalität in ein externes Skript zu verpacken, aber das involviert eine temporäre Datei der ausgecheckten Revision, die anschliessend aufgeräumt werden muss.

Es ist jedoch möglich, dies direkt in einem Vim Skript zu implementieren. Ergänzen Sie folgendes in Ihrer

.vimrc

function! DiffSvnBASE(svnrevision = 'BASE') let svnrev = expand('%') . '@' . a:svnrevision let syntax_src = &syntax " make this window part of diff, if it isn't already: if ! &diff exec 'diffthis' endif " create a new buffer for svn diff: exec 'vnew' exec 'diffthis' " make it a scratch buffer: exec 'setlocal' 'buftype=nowrite' exec 'setlocal' 'bufhidden=hide' exec 'setlocal' 'noswapfile' exec 'setlocal' 'syntax=' . syntax_src " append svn BASE version: exec 'read!' 'svn' 'cat' svnrev " delete empty line: exec '0delete' endfunction function! DiffSvnRevision() let svnrevision = input ('Diff with SVN revision : ') exec DiffSvnBASE(svnrevision) endfunction map <F5> <esc>:exec DiffSvnBASE()<cr> map <S-F5> <esc>:exec DiffSvnRevision()<cr>

ConcatCollection – Für Java-Entwickler

Aktuelle Version: ConcatCollection 1.0

ConcatCollection wurde als Teil von JChiffresFX 2.0 entwickelt und ist eine Java Collection, die eine effiziente Konkatenation zweier Instanzen dieses Typs zur Verfügung stellt. Gegenwärtig stellen Collections eine Konkatenation nur mittels Collection.addAll(collection) in O(n) Zeit zur Verfügung. Die Collection ist nützlich beispielsweise zur Akkumulation von Teilergebnissen in der Combine-Phase von RecursiveTasks, wenn Sub-Tasks bereits Listen von Elementen zurückliefern und diese insgesamt zu einer flachen Liste zusammengeführt werden sollen.

Die Eigenschaften dieser Implementierung beinhalten die folgenden:

  • Sie stellt eine Konkatenation in O(1) Zeit zur Verfügung.
  • Sie unterstützt null Werte.
  • Sie ist geordnet (z.B. zählt iterator() die Elemente in der Reihenfolge auf, in der sie zugefügt wurden).
  • Sie ist nicht synchronisiert.
  • Sie ist Cloneable und Serializable.
  • Der Iterator unterstützt die Iterator.remove() Operation in O(1) Zeit.
  • Der Spliterator ist optimiert für einen geringeren temporären Speicherbedarf als der Default-Spliterator. Er ist   ORDERED | SIZED | SUBSIZED.

Sie können die JavaDoc Dokumentation online aufrufen und den Java Source Code und die JUnit-Tests downloaden: