]> andersk Git - config-package-dev.git/blob - encode
Set LC_ALL=C when matching potentially localized dpkg output
[config-package-dev.git] / encode
1 #!/usr/bin/perl
2 # Encode name of a file in a Debian package name.
3 #
4 # The purpose of this encoding is to cause Debian configuration
5 # packages (potentially from different sites) that divert the same
6 # configuration file to conflict with each other.  Thus, it is
7 # important that all sites using this Debian configuration package
8 # system use this encoding.
9 #
10 # This encoding is intended to be human-readable, so that users can
11 # determine the cause of conflicts between different configuration
12 # packages.
13
14 use strict;
15 use warnings;
16  
17 $ARGV[0] =~ s,^/,,;
18 foreach (split('', $ARGV[0])) {
19     if (m/[a-z0-9.-]/) {
20         print "$_";
21     } elsif (m/[A-Z]/) {
22         print "+".lc($_)."+";
23     } elsif ($_ eq '/') {
24         print "++";
25     } elsif ($_ eq '_') {
26         print "+-+";
27     } else{
28         print "+x".hex(ord($_))."+";
29     }
30 }
This page took 0.276273 seconds and 5 git commands to generate.