View | Details | Raw Unified | Return to bug 135665
Collapse All | Expand All

(-)/usr/ports/graphics/ocropus/Makefile (-7 / +16 lines)
Lines 6-33 Link Here
6
#
6
#
7
7
8
PORTNAME=	ocropus
8
PORTNAME=	ocropus
9
PORTVERSION=	0.3.1
9
PORTVERSION=	0.4
10
CATEGORIES=	graphics
10
CATEGORIES=	graphics
11
MASTER_SITES=	${MASTER_SITE_GOOGLE_CODE}
11
MASTER_SITES=	${MASTER_SITE_GOOGLE_CODE}
12
12
13
MAINTAINER=	hiroto.kagotani@gmail.com
13
MAINTAINER=	hiroto.kagotani@gmail.com
14
COMMENT=	The OCRopus(tm) open source document analysis and OCR system
14
COMMENT=	The OCRopus(tm) open source document analysis and OCR system
15
15
16
BUILD_DEPENDS=	${LOCALBASE}/lib/libtesseract_full.a:${PORTSDIR}/graphics/tesseract
17
LIB_DEPENDS=	png.5:${PORTSDIR}/graphics/png \
16
LIB_DEPENDS=	png.5:${PORTSDIR}/graphics/png \
18
		jpeg.9:${PORTSDIR}/graphics/jpeg \
17
		jpeg.9:${PORTSDIR}/graphics/jpeg \
19
		tiff.4:${PORTSDIR}/graphics/tiff \
18
		tiff.4:${PORTSDIR}/graphics/tiff \
20
		iulib.0:${PORTSDIR}/graphics/iulib
19
		iulib.0:${PORTSDIR}/graphics/iulib \
20
		gsl.13:${PORTSDIR}/math/gsl
21
21
22
WRKSRC=		${WRKDIR}/ocropus-0.3
22
WRKSRC=		${WRKDIR}/ocropus-0.4/ocropus
23
23
24
OPTIONS=	SDL "Enable SDL for graphical debugging" off \
24
OPTIONS=	SDL "Enable SDL for graphical debugging" off \
25
		LEPTONICA "Enable Leptonica image analysis" off
25
		LEPTONICA "Enable Leptonica image analysis" off
26
26
27
MAKE_JOBS_UNSAFE=	yes
27
MAKE_JOBS_UNSAFE=	yes
28
USE_PYTHON_BUILD=	yes
28
USE_AUTOTOOLS=	aclocal:110 automake:110 autoconf:262
29
USE_AUTOTOOLS=	aclocal:110 automake:110 autoconf:262
29
USE_GMAKE=	yes
30
USE_GMAKE=	yes
30
CONFIGURE_ARGS=	--without-fst
31
CONFIGURE_ARGS=	--without-fst --without-tesseract
31
CONFIGURE_ENV=	CPPFLAGS=-I${LOCALBASE}/include LDFLAGS=-L${LOCALBASE}/lib
32
CONFIGURE_ENV=	CPPFLAGS=-I${LOCALBASE}/include LDFLAGS=-L${LOCALBASE}/lib
32
33
33
.include <bsd.port.pre.mk>
34
.include <bsd.port.pre.mk>
Lines 40-51 Link Here
40
41
41
.if !defined(WITH_LEPTONICA)
42
.if !defined(WITH_LEPTONICA)
42
CONFIGURE_ARGS+=--without-leptonica
43
CONFIGURE_ARGS+=--without-leptonica
43
PLIST_SUB+=	LEPTONICA="@comment "
44
.else
44
.else
45
LIB_DEPENDS+=	lept.0:${PORTSDIR}/graphics/leptonlib
45
LIB_DEPENDS+=	lept.0:${PORTSDIR}/graphics/leptonlib
46
PLIST_SUB+=	LEPTONICA=""
47
.endif
46
.endif
48
47
48
pre-configure:
49
	@(cd ${CONFIGURE_WRKSRC} \
50
	  && ${SETENV} ${PYTHON_CMD} genAM.py >Makefile.am)
51
49
run-autotools: run-autotools-aclocal run-autotools-automake run-autotools-autoconf
52
run-autotools: run-autotools-aclocal run-autotools-automake run-autotools-autoconf
50
53
54
run-autotools-autoconf:
55
	@(cd ${CONFIGURE_WRKSRC} && ${SETENV} ${AUTOTOOLS_ENV} ${AUTOCONF} \
56
		${AUTOCONF_ARGS})
57
	@${REINPLACE_CMD} -e 's|-lpthread|${PTHREAD_LIBS}|'\
58
		${WRKSRC}/configure
59
51
.include <bsd.port.post.mk>
60
.include <bsd.port.post.mk>
(-)/usr/ports/graphics/ocropus/distinfo (-3 / +3 lines)
Lines 1-3 Link Here
1
MD5 (ocropus-0.3.1.tar.gz) = 2a1b66419ae69ef031d5e6269db15bb5
1
MD5 (ocropus-0.4.tar.gz) = d883ee9c9fd63bfdd42b25992f63c9ed
2
SHA256 (ocropus-0.3.1.tar.gz) = ee02d209a1c823090f0bceba7ec4a884029f66fc44147a2d34922f8148a699df
2
SHA256 (ocropus-0.4.tar.gz) = 2a564916d05e1badf1a527cc59015f3397e57f7ab9dc1269781f046f87d1b8ff
3
SIZE (ocropus-0.3.1.tar.gz) = 12061574
3
SIZE (ocropus-0.4.tar.gz) = 21311501
(-)/usr/ports/graphics/ocropus/files/patch-Makefile.am (-11 lines)
Lines 1-11 Link Here
1
--- ./Makefile.am.orig	2008-10-16 05:40:47.000000000 +0900
2
+++ ./Makefile.am	2009-05-26 21:25:34.000000000 +0900
3
@@ -110,7 +110,7 @@
4
 
5
 # run check-style everytime and give a hint about make check
6
 all:
7
-	$(srcdir)/utilities/check-style -f $(srcdir)
8
+#	$(srcdir)/utilities/check-style -f $(srcdir)
9
 	@echo
10
 	@echo "Use 'make check' to run tests!"
11
 	@echo
(-)/usr/ports/graphics/ocropus/files/patch-configure.ac (-5 / +26 lines)
Lines 1-6 Link Here
1
--- ./configure.ac.orig	2008-10-16 05:40:35.000000000 +0900
1
--- ./configure.ac.orig	2009-06-01 05:18:41.000000000 +0900
2
+++ ./configure.ac	2009-05-26 21:22:11.000000000 +0900
2
+++ ./configure.ac	2009-06-17 19:47:20.000000000 +0900
3
@@ -116,6 +116,8 @@
3
@@ -114,11 +114,19 @@
4
     AC_MSG_ERROR([no TIFFOpen; please install libtiff4-dev or equivalent]))
4
     AC_MSG_ERROR([no TIFFOpen; please install libtiff4-dev or equivalent]))
5
 
5
 
6
 AC_LANG_CPLUSPLUS
6
 AC_LANG_CPLUSPLUS
Lines 9-20 Link Here
9
 
9
 
10
 # --- iulib (required) ---
10
 # --- iulib (required) ---
11
 # NB: we can only use functions with C linkage here
11
 # NB: we can only use functions with C linkage here
12
@@ -180,7 +182,7 @@
12
 AC_CHECK_LIB(iulib, exit,,
13
-    AC_MSG_ERROR([no iulib; please install iulib first (see INSTALL)]))
14
+    AC_CHECK_LIB(avcodec, avcodec_open, ,
15
+        AC_MSG_ERROR([no iulib; please install iulib first (see INSTALL)]))
16
+    AC_CHECK_LIB(avformat, url_fopen, ,
17
+        AC_MSG_ERROR([no iulib; please install iulib first (see INSTALL)]))
18
+    AC_CHECK_LIB(iulib, sleep, ,
19
+        AC_MSG_ERROR([no iulib; please install iulib first (see INSTALL)]))
20
+)
21
 
22
 # --- libpthread (needed by tesseract) ---
23
 AC_CHECK_LIB(pthread, pthread_create,,)
24
@@ -176,14 +184,14 @@
13
     LDFLAGS="$LDFLAGS -L$leptheaders/../../lib"
25
     LDFLAGS="$LDFLAGS -L$leptheaders/../../lib"
14
     AC_CHECK_LIB(lept,pixCreate,,AC_MSG_ERROR([leptonica not found! Choose --without-leptonica if you don't want to use it.]))
26
     AC_CHECK_LIB(lept,pixCreate,,AC_MSG_ERROR([leptonica not found! Choose --without-leptonica if you don't want to use it.]))
15
 fi
27
 fi
16
-AM_CONDITIONAL([use_leptonica], [test x$use_leptonica == xyes])
28
-AM_CONDITIONAL([use_leptonica], [test x$use_leptonica == xyes])
17
+AM_CONDITIONAL([use_leptonica], [test x$use_leptonica = xyes])
29
+AM_CONDITIONAL([use_leptonica], [test x$use_leptonica = xyes])
18
 
30
 
31
 # --- GSL (optional for glinerec) ---
32
-AC_SUBST(use_gsl, "yes")
33
+AC_SUBST(use_gsl, "no")
34
 AC_CHECK_LIB(gslcblas, abort,,AC_SUBST(use_gsl, "no"))
35
 AC_CHECK_LIB(gsl, gsl_error,,AC_SUBST(use_gsl, "no"))
36
 AC_CHECK_LIB(blas, exit,,AC_SUBST(use_gsl, "no"))
37
-AM_CONDITIONAL([use_gsl], [test x$use_gsl == xyes])
38
+AM_CONDITIONAL([use_gsl], [test x$use_gsl = xyes])
39
 
19
 
40
 
20
 # --- SDL (optional for graphical debugging in ocroscript) ---
41
 # --- SDL (optional for graphical debugging) ---
(-)/usr/ports/graphics/ocropus/files/patch-genAM.py (+20 lines)
Line 0 Link Here
1
--- ./genAM.py.orig	2009-06-01 05:18:41.000000000 +0900
2
+++ ./genAM.py	2009-06-17 19:44:58.000000000 +0900
3
@@ -62,7 +62,7 @@
4
 ocropusincludedir=$(includedir)/ocropus
5
 
6
 AM_CPPFLAGS = -I$(srcdir)/include -I$(srcdir)/ocr-utils \
7
--I@iulibheaders@ -I@tessheaders@
8
+-I@iulibheaders@
9
 
10
 AM_LDFLAGS =
11
 
12
@@ -180,7 +180,7 @@
13
 print """
14
 # run check-style everytime and give a hint about make check
15
 all:
16
-	$(srcdir)/utilities/check-style -f $(srcdir)
17
+#	$(srcdir)/utilities/check-style -f $(srcdir)
18
 	@echo
19
 	@echo "Use 'make check' to run tests!"
20
 	@echo
(-)/usr/ports/graphics/ocropus/files/patch-ocr-utils__components.cc (+10 lines)
Line 0 Link Here
1
--- ./ocr-utils/components.cc.orig	2009-06-01 05:18:41.000000000 +0900
2
+++ ./ocr-utils/components.cc	2009-06-17 19:44:58.000000000 +0900
3
@@ -26,6 +26,7 @@
4
 #include "colib/colib.h"
5
 #include "iulib/iulib.h"
6
 #include "components.h"
7
+extern char **environ;
8
 
9
 using namespace colib;
10
 
(-)/usr/ports/graphics/ocropus/files/patch-ocr-utils__narray-io.h (-3 / +3 lines)
Lines 1-10 Link Here
1
--- ./ocr-utils/narray-io.h.orig	2008-10-16 05:40:46.000000000 +0900
1
--- ./ocr-utils/narray-io.h.orig	2009-06-01 05:18:41.000000000 +0900
2
+++ ./ocr-utils/narray-io.h	2009-05-26 21:22:11.000000000 +0900
2
+++ ./ocr-utils/narray-io.h	2009-06-17 19:44:58.000000000 +0900
3
@@ -31,6 +31,7 @@
3
@@ -31,6 +31,7 @@
4
 
4
 
5
 #include <stdio.h>
5
 #include <stdio.h>
6
 #include <stdlib.h>
6
 #include <stdlib.h>
7
+#include <stdint.h>
7
+#include <stdint.h>
8
 #include "colib.h"
8
 #include "ocropus.h"
9
 
9
 
10
 namespace ocropus {
10
 namespace ocropus {
(-)/usr/ports/graphics/ocropus/files/patch-ocroscript__scripts__rec-tess-complete.lua (-96 lines)
Lines 1-96 Link Here
1
--- ./ocroscript/scripts/rec-tess-complete.lua.orig	2008-10-16 05:40:35.000000000 +0900
2
+++ ./ocroscript/scripts/rec-tess-complete.lua	2009-05-26 21:22:11.000000000 +0900
3
@@ -20,11 +20,20 @@
4
 -- Reviewer: 
5
 -- Primary Repository: 
6
 -- Web Sites: www.iupr.org, www.dfki.de, www.ocropus.org
7
+--
8
+-- Patch applied:
9
+-- http://code.google.com/p/ocropus/issues/detail?id=137
10
 
11
 
12
 require 'lib.util'
13
 require 'lib.headings'
14
 require 'lib.paragraphs'
15
+require 'lib.path'
16
+require 'lib.hocr'
17
+import_all(ocr)
18
+import_all(graphics)
19
+import_all(iulib)
20
+import_all(nustring)
21
 
22
 remove_hyphens = true
23
 
24
@@ -74,7 +83,7 @@
25
 -- RecognizedPage is a transport object of tesseract_recognize_blockwise().
26
 -- This function will convert it to a DOM.
27
 function convert_RecognizedPage_to_DOM(p, image_path, keep_char_boxes)
28
-    page_DOM = get_page_DOM(p, image_path)
29
+    page_DOM = hocr.get_page_DOM(p, image_path)
30
     for i = 0, p:linesCount() - 1 do
31
         local bbox = p:bbox(i)
32
         local text = nustring()
33
@@ -85,13 +94,12 @@
34
             bboxes = narray_to_table(r)
35
         end
36
         p:text(text, i)
37
-        line_DOM = get_line_DOM(bbox, text, bboxes, p)
38
+        line_DOM = hocr.get_line_DOM(bbox, text, bboxes, p)
39
         table.insert(page_DOM, line_DOM)
40
     end
41
     return page_DOM
42
 end
43
 
44
-
45
 function get_images_DOM(tiseg_image, html_path, images_dir, page_image)
46
     os.execute('mkdir -p "'..images_dir..'"')
47
     local rects = rectarray()
48
@@ -102,12 +110,11 @@
49
     local dom = {{tag = 'hr', size = '0'}}
50
     for i = 0, rects:length() - 1 do
51
         local src = images_dir .. ('/%04d.png'):format(i + 1)
52
-        local img_path = util.combine_paths(html_path, src)
53
         img = bytearray()
54
         r = rects:at(i)
55
         extract_subimage(img, page_image, r.x0, r.y0, r.x1, r.y1)
56
-        write_image_gray(img_path, img)
57
-        local props = {bbox = bbox_to_string(page_image, r)}
58
+        iulib.write_image_gray(src, img)
59
+        local props = {bbox = hocr.bbox_to_string(page_image, r)}
60
         local link = {tag = 'a', href=src}
61
         local width = r.x1 - r.x0
62
         local height = r.y1 -r.y0
63
@@ -119,7 +126,7 @@
64
            height = "200px"
65
         end
66
         local tag = {tag = 'img', src = src, width=width, height=height,
67
-                     class = 'ocr_image', title = hocr_properties_attribute(props)}
68
+                     class = 'ocr_image', title = hocr.properties_attribute(props)}
69
         table.insert(link, tag)
70
         table.insert(dom, link)
71
         table.insert(dom, '\n')
72
@@ -146,8 +153,8 @@
73
     get_nontext_mask(nontext_mask,tiseg_image)
74
     remove_masked_region(text_image,nontext_mask,clean_image)
75
     segmenter:segment(page_segmentation,text_image)
76
-    local p = RecognizedPage()
77
-    tesseract_recognize_blockwise(p, page_image, page_segmentation)
78
+    local p = tesseract.RecognizedPage()
79
+    tesseract.recognize_blockwise(p, page_image, page_segmentation)
80
     page_DOM = convert_RecognizedPage_to_DOM(p, pages:getFileName(), 
81
                                              option("charboxes"))
82
     page_DOM = detect_headings(page_DOM, page_image)
83
@@ -157,10 +164,10 @@
84
     table.insert(body_DOM, page_DOM)
85
 end
86
 --end
87
-doc_DOM = get_html_tag()
88
-table.insert(doc_DOM, get_head_tag())
89
+doc_DOM = hocr.get_html_tag()
90
+table.insert(doc_DOM, hocr.get_head_tag())
91
 table.insert(doc_DOM, '\n')
92
 table.insert(doc_DOM, body_DOM)
93
 file = io.open(output_file, 'w')
94
-dump_DOM(file, doc_DOM, html_preamble)
95
+hocr.dump(file, doc_DOM, html_preamble)
96
 file:close()
(-)/usr/ports/graphics/ocropus/pkg-plist (-106 / +35 lines)
Lines 1-119 Link Here
1
bin/ocroscript
2
lib/libocropus.a
1
lib/libocropus.a
3
lib/libocroscript.a
2
bin/ocr-distance
4
include/ocropus/extern.h
3
bin/ocropus
5
include/ocropus/read_image.h
4
include/ocropus/ocr-openfst.h
6
include/ocropus/function.h
5
include/ocropus/glclass.h
7
include/ocropus/defs.h
8
include/ocropus/voronoi-ocropus.h
9
include/ocropus/const.h
10
include/ocropus/beam-search.h
11
include/ocropus/langmod-shortest-path.h
12
include/ocropus/lattice.h
13
include/ocropus/ocr-binarize-sauvola.h
14
include/ocropus/ocr-binarize-otsu.h
15
include/ocropus/grouping.h
16
include/ocropus/make-garbage.h
17
include/ocropus/charlib.h
18
include/ocropus/feature-extractor.h
19
include/ocropus/confusion-matrix.h
20
include/ocropus/bpnet.h
21
include/ocropus/additions.h
22
include/ocropus/feature-stream.h
23
include/ocropus/mnist.h
24
include/ocropus/classmap.h
25
include/ocropus/classify-chars.h
26
include/ocropus/bpnetline.h
27
include/ocropus/ocr-deskew-rast.h
28
include/ocropus/ocr-noisefilter.h
29
include/ocropus/ocr-doc-clean.h
30
include/ocropus/ocr-doc-clean-concomp.h
31
include/ocropus/ocr-pageframe-rast.h
32
include/ocropus/ocr-whitespace-cover.h
33
include/ocropus/ocr-char-stats.h
34
include/ocropus/ocr-layout-rast.h
35
include/ocropus/line-info.h
6
include/ocropus/line-info.h
36
include/ocropus/ocr-extract-gutters.h
7
include/ocropus/glcuts.h
37
include/ocropus/ocr-ctextline-rast.h
8
include/ocropus/tesseract.h
38
include/ocropus/ocr-ctextline-rast-extended.h
9
include/ocropus/ocr-pfst.h
39
include/ocropus/ocr-classify-zones.h
10
include/ocropus/glfmaps.h
40
include/ocropus/ocr-pageseg-wcuts.h
11
include/ocropus/gldataset.h
41
include/ocropus/ocr-text-image-seg.h
12
include/ocropus/glutils.h
42
include/ocropus/log-reg-data.h
13
include/ocropus/grouper.h
43
include/ocropus/ocr-pageseg-xycut.h
14
include/ocropus/ocropus.h
44
include/ocropus/ocr-word-segmentation.h
15
include/ocropus/gsl.h
45
include/ocropus/ocrcomponents.h
46
include/ocropus/kmeans.h
47
include/ocropus/glinerec.h
16
include/ocropus/glinerec.h
48
include/ocropus/idmap.h
17
include/ocropus/ocr-layout.h
49
include/ocropus/narray-io.h
18
include/ocropus/narray-io.h
50
include/ocropus/ocr-segmentations.h
19
include/ocropus/queue.h
51
include/ocropus/eigens.h
20
include/ocropus/grid.h
52
include/ocropus/sysutil.h
53
include/ocropus/logger.h
21
include/ocropus/logger.h
54
include/ocropus/grouper.h
55
include/ocropus/segmentation.h
56
include/ocropus/pages.h
22
include/ocropus/pages.h
57
include/ocropus/didegrade.h
23
include/ocropus/linesegs.h
58
include/ocropus/lines.h
24
include/ocropus/components.h
59
include/ocropus/regionextractor.h
25
include/ocropus/stringutil.h
60
include/ocropus/ocr-utils.h
26
include/ocropus/init-ocropus.h
27
include/ocropus/editdist.h
28
include/ocropus/ocrinterfaces.h
29
include/ocropus/arraypaint.h
30
include/ocropus/narray-binio.h
31
include/ocropus/sysutil.h
32
include/ocropus/segmentation.h
61
include/ocropus/resource-path.h
33
include/ocropus/resource-path.h
62
include/ocropus/queue.h
34
include/ocropus/xml-entities.h
63
include/ocropus/grid.h
35
include/ocropus/pagesegs.h
64
include/ocropus/seg-eval.h
36
include/ocropus/ocr-utils.h
37
include/ocropus/didegrade.h
38
include/ocropus/docproc.h
65
include/ocropus/enumerator.h
39
include/ocropus/enumerator.h
66
include/ocropus/editdist.h
40
%%DATADIR%%/models/default.fst.gz
67
include/ocropus/tesseract.h
41
%%DATADIR%%/models/default.model
68
include/ocropus/recognized-page.h
42
%%DATADIR%%/models/latin3-full.model
69
%%LEPTONICA%%include/ocropus/ocr-text-image-seg-leptonica.h
43
%%DATADIR%%/models/ocr-dict-case.fst.gz
70
%%DATADIR%%/models/neural-net-file.nn
71
%%DATADIR%%/words/en-us
44
%%DATADIR%%/words/en-us
72
%%DATADIR%%/scripts/lib/align.lua
73
%%DATADIR%%/scripts/lib/datasets.lua
74
%%DATADIR%%/scripts/lib/editdist.lua
75
%%DATADIR%%/scripts/lib/getopt.lua
76
%%DATADIR%%/scripts/lib/headings.lua
77
%%DATADIR%%/scripts/lib/hocr.lua
78
%%DATADIR%%/scripts/lib/paragraphs.lua
79
%%DATADIR%%/scripts/lib/path.lua
80
%%DATADIR%%/scripts/lib/util.lua
81
%%DATADIR%%/scripts/lib/xml.lua
82
%%DATADIR%%/scripts/align-lines-wordwise.lua
83
%%DATADIR%%/scripts/align-transcription.lua
84
%%DATADIR%%/scripts/align.lua
85
%%DATADIR%%/scripts/build-ngram-model.lua
86
%%DATADIR%%/scripts/check-train-valid-bpnet-feature.lua
87
%%DATADIR%%/scripts/degrade.lua
88
%%DATADIR%%/scripts/deskew.lua
89
%%DATADIR%%/scripts/editdist.lua
90
%%DATADIR%%/scripts/erode3.lua
91
%%DATADIR%%/scripts/eval-bpnet-on-words.lua
92
%%DATADIR%%/scripts/eval-editdist-layout.lua
93
%%DATADIR%%/scripts/eval-on-word-list.lua
94
%%DATADIR%%/scripts/hocr-to-text.lua
95
%%DATADIR%%/scripts/line-clean.lua
96
%%DATADIR%%/scripts/matra-clipping.lua
97
%%DATADIR%%/scripts/rec-bpnet-isolated.lua
98
%%DATADIR%%/scripts/rec-bpnet.lua
99
%%DATADIR%%/scripts/rec-guided.lua
100
%%DATADIR%%/scripts/rec-line.lua
101
%%DATADIR%%/scripts/rec-ltess.lua
102
%%DATADIR%%/scripts/rec-minimal.lua
103
%%DATADIR%%/scripts/rec-tess-complete.lua
104
%%DATADIR%%/scripts/recognize.lua
105
%%DATADIR%%/scripts/reflow.lua
106
%%DATADIR%%/scripts/sauvola.lua
107
%%DATADIR%%/scripts/segment-line.lua
108
%%DATADIR%%/scripts/show.lua
109
%%DATADIR%%/scripts/showseg.lua
110
%%DATADIR%%/scripts/strict.lua
111
%%DATADIR%%/scripts/text-to-hocr.lua
112
%%DATADIR%%/scripts/train-bpnet-isolated.lua
113
%%DATADIR%%/scripts/train-bpnet-lines.lua
114
@dirrm include/ocropus
45
@dirrm include/ocropus
115
@dirrm %%DATADIR%%/models
46
@dirrm %%DATADIR%%/models
116
@dirrm %%DATADIR%%/scripts/lib
117
@dirrmtry %%DATADIR%%/scripts
118
@dirrm %%DATADIR%%/words
47
@dirrm %%DATADIR%%/words
119
@dirrmtry %%DATADIR%%
48
@dirrmtry %%DATADIR%%

Return to bug 135665