unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#36825] [PATCH 0/2] Add ascii2binary and uniutils
@ 2019-07-27 21:23 Hartmut Goebel
  2019-07-27 21:25 ` [bug#36825] [PATCH 1/2] gnu: Add ascii2binary Hartmut Goebel
       [not found] ` <handler.36825.B.156426262729126.ack@debbugs.gnu.org>
  0 siblings, 2 replies; 4+ messages in thread
From: Hartmut Goebel @ 2019-07-27 21:23 UTC (permalink / raw)
  To: 36825

Tools for working with unicode characters and data.

Hartmut Goebel (2):
  gnu: Add ascii2binary.
  gnu: Add uniutils.

 gnu/packages/textutils.scm | 109 ++++++++++++++++++++++++++++++++++++-
 1 file changed, 108 insertions(+), 1 deletion(-)

-- 
2.21.0

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [bug#36825] [PATCH 1/2] gnu: Add ascii2binary.
  2019-07-27 21:23 [bug#36825] [PATCH 0/2] Add ascii2binary and uniutils Hartmut Goebel
@ 2019-07-27 21:25 ` Hartmut Goebel
  2019-07-27 21:25   ` [bug#36825] [PATCH 2/2] gnu: Add uniutils Hartmut Goebel
       [not found] ` <handler.36825.B.156426262729126.ack@debbugs.gnu.org>
  1 sibling, 1 reply; 4+ messages in thread
From: Hartmut Goebel @ 2019-07-27 21:25 UTC (permalink / raw)
  To: 36825

* gnu/packages/textutils.scm (ascii2binary): New variable.
---
 gnu/packages/textutils.scm | 46 +++++++++++++++++++++++++++++++++++++-
 1 file changed, 45 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/textutils.scm b/gnu/packages/textutils.scm
index d1dc14e6d7..aeb1953b99 100644
--- a/gnu/packages/textutils.scm
+++ b/gnu/packages/textutils.scm
@@ -10,7 +10,7 @@
 ;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2017 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2017 Rene Saavedra <rennes@openmailbox.org>
-;;; Copyright © 2017 Hartmut Goebel <h.goebel@crazy-compilers.com>
+;;; Copyright © 2017,2019 Hartmut Goebel <h.goebel@crazy-compilers.com>
 ;;; Copyright © 2017 Kei Kebreau <kkebreau@posteo.net>
 ;;; Copyright © 2017 Alex Vong <alexvong1995@gmail.com>
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
@@ -321,6 +321,50 @@ input bits thoroughly but are not suitable for cryptography.")
     ;; entails."
     (license license:public-domain)))
 
+(define-public ascii2binary
+  (package
+    (name "ascii2binary")
+    (version "2.14")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "http://billposer.org/Software/Downloads/"
+                           "ascii2binary-" version ".tar.bz2"))
+       (sha256
+        (base32 "0dc9fxcdmppbs9s06jvq61zbk552laxps0xyk098gj41697ihd96"))))
+    (build-system gnu-build-system)
+    (native-inputs
+     `(("gettext" ,gettext-minimal)))
+    (home-page "https://billposer.org/Software/a2b.html")
+    (synopsis "Convert between ASCII, hexadecimal and binary representations")
+    (description "The two programs are useful for generating test data, for
+inspecting binary files, and for interfacing programs that generate textual
+output to programs that require binary input and conversely.  They can also be
+useful when it is desired to reformat numbers.
+
+@itemize
+
+@item @command{ascii2binary} reads input consisting of ascii or hexadecimal
+   representation numbers separated by whitespace and produces as output
+   the binary equivalents.  The type and precision of the binary output
+   is selected using command line flags.
+
+@item @command{binary2ascii} reads input consisting of binary numbers
+   and converts them to their ascii or hexadecimal representation.
+   Command line flags specify the type and size of the binary numbers
+   and provide control over the format of the output.
+   Unsigned integers may be written out in binary, octal, decimal,
+   or hexadecimal.
+
+   Signed integers may be written out only in binary or decimal.  Floating
+   point numbers may be written out only decimal, either in standard or
+   scientific notation.  (If you want to examine the binary representation
+   of floating point numbers, just treat the input as a sequence of unsigned
+   characters.)
+
+@end itemize")
+    (license license:gpl3)))
+
 (define-public libconfig
   (package
     (name "libconfig")
-- 
2.21.0

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [bug#36825] [PATCH 2/2] gnu: Add uniutils.
  2019-07-27 21:25 ` [bug#36825] [PATCH 1/2] gnu: Add ascii2binary Hartmut Goebel
@ 2019-07-27 21:25   ` Hartmut Goebel
  0 siblings, 0 replies; 4+ messages in thread
From: Hartmut Goebel @ 2019-07-27 21:25 UTC (permalink / raw)
  To: 36825

* gnu/packages/textutils.scm (uniutils): New variable.
---
 gnu/packages/textutils.scm | 63 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 63 insertions(+)

diff --git a/gnu/packages/textutils.scm b/gnu/packages/textutils.scm
index aeb1953b99..ea6b4232de 100644
--- a/gnu/packages/textutils.scm
+++ b/gnu/packages/textutils.scm
@@ -45,6 +45,7 @@
   #:use-module (guix build-system python)
   #:use-module (gnu packages)
   #:use-module (gnu packages autotools)
+  #:use-module (gnu packages base)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages gettext)
   #:use-module (gnu packages java)
@@ -362,6 +363,68 @@ useful when it is desired to reformat numbers.
    of floating point numbers, just treat the input as a sequence of unsigned
    characters.)
 
+@end itemize")
+    (license license:gpl3)))
+
+(define-public uniutils
+  (package
+    (name "uniutils")
+    (version "2.27")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "http://billposer.org/Software/Downloads/"
+                           "uniutils-" version ".tar.bz2"))
+       (sha256
+        (base32 "19w1510w87gx7n4qy3zsb0m467a4rn5scvh4ajajg7jh6x5xri08"))))
+    (build-system gnu-build-system)
+    (arguments
+     '(#:configure-flags '("--disable-dependency-tracking")
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'build 'fix-paths
+           (lambda* (#:key outputs inputs #:allow-other-keys)
+             (let ((out (assoc-ref outputs "out"))
+                   (a2b (assoc-ref inputs "ascii2binary"))
+                   (iconv (assoc-ref inputs "libiconv")))
+               (substitute* "utf8lookup"
+                 (("^ascii2binary ") (string-append a2b "/bin/ascii2binary "))
+                 (("^uniname ") (string-append out "/bin/uniname "))
+                 (("^iconv ") (string-append iconv "/bin/iconv ")))
+             #t))))))
+    (inputs
+     `(("ascii2binary" ,ascii2binary)
+       ("libiconv" ,libiconv)))
+    (home-page "https://billposer.org/Software/unidesc.html")
+    (synopsis "Find out what is in a Unicode file")
+    (description "Useful tools when working with Unicode files when one
+doesn't know the writing system, doesn't have the necessary font, needs to
+inspect invisible characters, needs to find out whether characters have been
+combined or in what order they occur, or needs statistics on which characters
+occur.
+
+@itemize
+
+@item @command{uniname} defaults to printing the character offset of each
+character, its byte offset, its hex code value, its encoding, the glyph
+itself, and its name.  It may also be used to validate UTF-8 input.
+
+@item @command{unidesc} reports the character ranges to which different
+portions of the text belong.   It can also be used to identify Unicode encodings
+(e.g. UTF-16be) flagged by magic numbers.
+
+@item @command{unihist} generates a histogram of the characters in its input.
+
+@item @command{ExplicateUTF8} is intended for debugging or for learning about
+Unicode.  It determines and explains the validity of a sequence of bytes as a
+UTF8 encoding.
+
+@item @command{utf8lookup} provides a handy way to look up Unicode characters
+from the command line.
+
+@item @command{unireverse} reverse each line of UTF-8 input
+character-by-character.
+
 @end itemize")
     (license license:gpl3)))
 
-- 
2.21.0

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* bug#36825: Acknowledgement ([PATCH 0/2] Add ascii2binary and uniutils)
       [not found] ` <handler.36825.B.156426262729126.ack@debbugs.gnu.org>
@ 2019-08-27  7:32   ` Hartmut Goebel
  0 siblings, 0 replies; 4+ messages in thread
From: Hartmut Goebel @ 2019-08-27  7:32 UTC (permalink / raw)
  To: 36825-close

Commited as 7577ab55569defc018dfe342239aa9a8e17d67b1 and
a6baae7486eb1491ba0220b2e490c6a2b8338769.

-- 
Regards
Hartmut Goebel

| Hartmut Goebel          | h.goebel@crazy-compilers.com               |
| www.crazy-compilers.com | compilers which you thought are impossible |

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2019-08-27  7:33 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-07-27 21:23 [bug#36825] [PATCH 0/2] Add ascii2binary and uniutils Hartmut Goebel
2019-07-27 21:25 ` [bug#36825] [PATCH 1/2] gnu: Add ascii2binary Hartmut Goebel
2019-07-27 21:25   ` [bug#36825] [PATCH 2/2] gnu: Add uniutils Hartmut Goebel
     [not found] ` <handler.36825.B.156426262729126.ack@debbugs.gnu.org>
2019-08-27  7:32   ` bug#36825: Acknowledgement ([PATCH 0/2] Add ascii2binary and uniutils) Hartmut Goebel

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).