Кто работал с Windows Embedded?

31-Jan-05 16:58 Alexey Boyko wrote to George Shepelev:

GS>>>>>> кнопочке F1 твоей клавиатуры). AB>>>>> У меня на кнопке F1, кроме "F1" ничего не написано. ;)

GS>> Что, без виндовых уродств? Таких уже практически не делают.

AB> Это ты про что? Кнопка Win есть. Очень хорошая кнопка. Я на нее шоткаты AB> вешаю.

GS>> Так что у подавляющего большинства пользователей кнопка F1 подписана GS>> как Help.

AB> Знаешь, обошел все свои клавиатуры - ни на одной хелп не написано. В AB> каком мире ты живешь? Знаешь, есть такие попсовые клавиатуры, при взгляден екоторые впоминаешь орган (музыкальный инструмент :-) - ну прям те два мануала и педаль. Начинаешь искать клавишу "--help --verbose" :-) Куча спецклавиш для полного управления музыкой и ещё чего-то и вааще. Так вот у них, скажем, на клавишах ctrl нарисован ромбик, а на клавише C (на переднем скосе) - такой же ромбик и слово copy. И те де. Включая слово help на переднем скосе кнопаря F1. Рассчитано, видать, на тех самых кухарок, которые государством управлять будут, посему у них головы заняты очень и несклоько типовых сочетаний клавиш запомнить не могут.

GS>>>> пора научиться использовать и формат html... AB>>> Давно все научились. Уже учатся чему-то другому. AB>>> 3-е тысячелетие, все уже XML учат. Ты проспал ;) GS>> Идиотское занятие - гоняться за "модными фишками".

AB> Hу так и html нам не нужен. Это же модная фишка, так? :-)

wbr,

Reply to
Oleksandr Redchuk
Loading thread data ...

Привет Georg!

31 Jan 05 11:32, Georg Panehin писал Ilya Anfimov:

GP> Если бы ты занимался GP> программированием и имел бы представление об этой работе, то ты, GP> видимо, знал бы, что иногда даже в собственной программе опытный GP> программист далеко не сразу находит ошибки.

Я хоть и не программист, но приходится заниматься и программированием, и приемом чужого кода. И я хорошо знаю, что именно в собственной программе увидеть ошибку труднее всего. :)

Всего наилучшего, [Team PCAD 2000] Алексей М. ... Если ты коп, почему я весь взмок?

Reply to
Alex Mogilnikov

Привет Georg!

31 Jan 05 11:33, Georg Panehin писал Alex Mogilnikov:

AM>> =8-( ) А как вообще можно создавать программный продукт, не AM>> зная, какой компилятор и где его брать и какие используются AM>> библиотеки???

GP> А нафига все это знать, если имеется среда разработки? К примеру, мне GP> довольно часто нужно написать какую-то несложную утилитку для работы GP> с прибором из под Винды. Как ты думаешь, очень мне нужно знать какой GP> компилятор и какие библиотеки применяются IDE для построения моей GP> утилитки?

=8-( ) Hет никаких слов...

Я-то, наивный, думал, что компилятор применяет программист, а IDE только помогает ему в этом...

А я еще удивлялся, откуда берутся люди, сообщающие в эхе (в том числе этой) о глюках компилятора или какой-нибудь библиотеки ( printf() например часто у них не так работает), и в 90% случаев оказывается, что это штатное и документированное поведение компилятора, или штатная и опять же документированная особенность библиотеки, а программист простот не удосужился изучить применяемый им инструментарий...

Всего наилучшего, [Team PCAD 2000] Алексей М. ... Смотрю куда глаза глядят...

Reply to
Alex Mogilnikov

Привет Alexey!

31 Jan 05 15:20, Alexey Boyko писал Alex Mogilnikov:

AM>> Есть еще перловая программка html2ps, вот она вроде бы все AM>> делает просто отлично, но... не работает с кириллицей. Вероятно, AM>> ее можно было бы подправить, но я в постскрипте ничего не AM>> понимаю. :)

AB> Я в постскрипте понимаю, но подправить будет не просто. Дело в том, AB> что кирилица в постскрипте обрабатывается совсем по другому, нежели AB> ascii.

Я находил поисковиками многочисленные ссылки на патч к html2ps, который сделал ValDav для поддержки кириллицы. Hо все они оказались неработающими. Сам он на мое мыло не ответил, а потом я об этом забыл. :) Hадо бы еще раз ему написать...

Всего наилучшего, [Team PCAD 2000] Алексей М. ... Пирожок печеный с печенью.

Reply to
Alex Mogilnikov

AB> Ты наверное, только один пропорциональный шрифт видел, и не очень хороший. AB> Распознаваемость символов "I", "l", "1" зависит не от того, AB> пропорциональный AB> шрифт, или фиксированный. Hу возьми обычный виндовс и посмотри. Весь текст AB> в AB> нем (кроме терминала) нарисован пропорциональным шрифтом. Что, есть AB> проблемы с AB> распознаванием?

Lucida Console Unicode -- поубивал бы! 0 и O не различаются совсем. Вообще никак. Буквы "I", "l" или "1" на клавиатуре не перепутаешь, далеко разнесены, а вместо 0 попасть в О -- это запросто.

GS>> У меня - есть. AB> Тебе так кажется. Если шрифт 8x8 лепится строчка к строчке - то очень AB> плотно AB> получается. Если делать отступ между строками - то это уже не 8х8 AB> получается.

Ещё возможен вариант, когда высота пикселя существенно превышает его ширину.

AB>>> У него отсутствует реализация несглаживания. GS>> От наличия сглаживания до отличной реализации сглаживания - GS>> дистанция огромного размера... AB> Hет. Hесглаживание сделать труднее. Алгоритмы патентованые.

А как же TeX, Ghostscrip? Замечательно всё не-сглаживается, про патенты ни слова.

Reply to
Kirill Frolov

AB>>>>> А msn/docbook расчитано и на то и на другое. GS>>>> Ценой несовместимости и меньшего удобства? Толку-то?.. AB>>> Ценой большего удобства. GS>> Какое-ж удобство, если ссылки не работают? Тоска одна... AB> В html? - работают. в печатном варианте - нет конечно. Зато и тот и тот AB> варианты создаются из одного исходника. Это удобно.

И в печатном варианте тоже есть ссылки. Для этого нумеруются разделы и страницы, чего нет в html...

Reply to
Kirill Frolov

AM>> Есть еще перловая программка html2ps, вот она вроде бы все делает AM>> просто отлично, но... не работает с кириллицей. Вероятно, ее можно AM>> было бы подправить, но я в постскрипте ничего не понимаю. :) AB> Я в постскрипте понимаю, но подправить будет не просто. Дело в том, что AB> кирилица в постскрипте обрабатывается совсем по другому, нежели ascii.

Я ничего не понимаю, но вектор шрифта -- 256 буковок. Туда вся кириллица умещается. А вот всякие другие знаки -- нет. :-(

Reply to
Kirill Frolov

gp> с прибором из под Винды. Как ты думаешь, очень мне нужно знать какой gp> компилятор и какие библиотеки применяются IDE для построения моей gp> утилитки? Мне это совершенно не нужно знать! Хотя я кое-что все-таки

Финал-апофеоз! (Ц)

gp> необходимым. Ты только представь себе, что, к примеру, вот такую кашу я gp> должен осмыслить и написать вручную:

gp> # ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib gp> comdlg32.lib gp> advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib

gp> Ужас! И, главное, ЗАЧЕМ?! Для чувства собственной гордости и значимости? gp> :-)

Ужас?

cpp_defs = $(CPP_OPT) $(if \ $(filter -Bs,$(1)), -DSMALL_MODEL, $(if \ $(filter -Bl,$(1)), -DLARGE_MODEL ))

define c2cpp $(call cpp, $(call cpp_defs,$(1)) $(filter -W% -I% -D% -U%, $(1)) \ $(filter -I%,$(filter -I-,$(1))) \ $(if $(filter -I-,$(1)),,-I$(HTC_Z80_INC)) \ $(2) $(3)) endef

define c2as ( $(call c2cpp,$(1),$(2),$(tmpf).__0,$(4)) && \ $(call pipe,$(P1), $(P1_OPT) \ $(patsubst -ASMLIST,-S,$(patsubst -g%,-D,\ $(filter -W% -g% -ASMLIST,$(1)))) \ $(tmpf).__0 $(tmpf).__1 $(tmpf).__2) && \ $(CGEN) $(CGEN_OPT) \ $(patsubst -g%,-D%,$(patsubst -P8,-MPORT8,\ $(patsubst -Bl,-MLGR_CODE,$(patsubst -Z180,-MZ180,\ $(filter -W% -Zg% -Z180 -Bl -P8 -g%,$(1)))))) \ $(tmpf).__1 $(if $(filter -O,$(1)),$(tmpf).__0,$(3)) && \ $(if $(filter -O,$(1)),$(OPT) $(4).__0 $(3),:) && \ $(RM) $(tmpf).__[012] ) || (a=$?; $(RM) $(tmpf).__[012] $(3)) endef

define s2obj $(call as, $(ASFLAGS) \ $(patsubst -cr%,-C%,$(patsubst -ASMLIST,-L,$(patsubst -O,-J,\ $(filter -O -x -ASMLIST -cr%, $(1))))) \ -o$(3) $(2)) endef

define c2obj $(call c2as,$(1),$(2),$(4).__1,$(4)) && \ $(call s2obj,$(1),$(4).__1,$(3),$(4)) endef

define as2obj $(if $(filter -P,$(1)),\ $(call c2cpp,$(1),$(2),$(4).__0,$(4)) && \ $(call s2obj,$(1),$(4).__0,$(3),$(4)), \ $(call s2obj,$(1),$(2),$(3),$(4)) ) endef

ifnempty = $(if $(1),$(1),$(2)) o_name = $(call ifnempty,$(patsubst -o%,%,$(filter -o%,$(1))),$(2))

define all2cpp # args $(foreach cc_arg,\ $(filter %.c $(if $(filter -P,$(1)),%.as),$(filter-out -%,$(1))),\ $(call c2cpp,$(1),$(cc_arg),$(call o_name,$(1),),$(cc_arg:%.c=%)) && ) : endef

define all2s # args $(foreach cc_arg,$(filter %.c,$(filter-out -%,$(1))),\ $(call c2as,$(1),$(cc_arg),\ $(call o_name,$(1),$(cc_arg:%.c=%.as)),\ $(cc_arg:%.c=%)) && ) : endef

define all2obj # args $(foreach cc_arg,$(filter %.c %.as,$(filter-out -%,$(1))),\ $(if $(filter %.c,$(cc_arg)),\ $(call c2obj,$(1),$(cc_arg),\ $(call o_name,$(1),$(cc_arg:%.c=%.obj)),\ $(cc_arg:%.c=%)),\ $(if $(filter %.as,$(cc_arg)),\ $(call as2obj,$(1),$(cc_arg),\ $(call o_name,$(1),$(cc_arg:%.as=%.obj)),\ $(cc_arg:%.as=%)))) && ) : endef

# startup object rt_obj = rtz$(if $(filter -Z180,$(1)),801,80)$(call \ ifnempty,$(patsubst -B%,%,$(filter -B%,$(1))),$(if \ $(filter -CPM,$(1)),c,s)).obj

# C library c_lib = z$(if $(filter -Z180,$(1)),801,80)$(call \ ifnempty,$(patsubst -B%,%,$(filter -B%,$(1))),$(if \ $(filter -CPM,$(1)),c,s))$(if \ $(filter -Lf,$(1)),f,$(if \ $(filter -Ll,$(1)),l,c)).lib

comma = ,

# -A%(rom),%(ram),%(ramsize) recognized A_addrs = $(subst $(comma), ,$(patsubst -A%,%,$(filter -A%,$(1)))) A_rom = $(firstword $(call A_addrs,$(1))) A_ram = $(word 2,$(call A_addrs,$(1))) A_size = $(word 3,$(call A_addrs,$(1))) A_top = $(shell printf "0%xh" $$(( \ $(patsubst %h,0x%,$(call A_size,$(1)) + $(call A_ram,$(1))) )))

define psects $(if $(filter -CPM -Bc,$(1)),\

-pvectors=0$(comma)lowtext$(comma)text$(comma)strings$(comma)const$(comma)im2vecs$(comma)data$(comma)bss \

-pnvram=bss$(comma)heap ,\ $(if $(filter -A%,$(1)),$(if \ $(filter -Bs,$(1)),\

-pvectors=$(call A_rom,$(1))$(comma)lowtext$(comma)text$(comma)strings$(comma)const$(comma)$(if \ $(filter -ROMDATA,$(1)),data$(comma))im2vecs \

-pbaseram=040000h \

-pramstart=$(call A_ram,$(1))$(comma)$(if \ $(filter

-ROMDATA,$(1)),bss,data=ramstart/im2vecs$(comma)bss/.)$(comma)stack=$(call A_top,$(1)) \

-pnvram=bss$(comma)heap ,\ $(if $(filter -Bl,$(1)),\

-pvectors=$(call A_rom,$(1))$(comma)lowtext$(comma)text$(comma)strings$(comma)const$(comma)$(if \ $(filter -ROMDATA,$(1)),data$(comma))im2vecs \

-pbaseram=40000h$(comma)basecode=c000h/2000h$(comma)FARCODE=basecode/ \

-pramstart=$(call A_ram,$(1))/baseram$(comma)$(if \ $(filter

-ROMDATA,$(1)),bss,data=ramstart/im2vecs$(comma)bss/ramstart)$(comma)stack=$(call A_top,$(1)) \

-SFARCODE=04000h$(comma)1000h -pnvram=bss$(comma)heap ,\ $(error no default psect(s): unknown memory model))),\ $(error no -A<romaddr>,<ramaddr><ramsize> option given))) endef

# -ROM%/-ACODE=% -B{c,s,l}/ -CPM/ -r/ # -l%(lib)? -Ll -Lf -L-% -L- -ROMDATA/ define obj2obj # args(obj|lib) $(call ld, -z \ $(patsubst -L-%, -%,\ $(patsubst -H%, -h+%,\ $(filter -H% -x -M% -L-%,$(1)))) \ $(if $(filter -CPM -Bc,$(1)),,\ $(patsubst -ROM%, -ACODE=%,$(filter -ROM%,$(1)))) \ $(if $(filter -r,$(1)), $(if $(filter -CPM -Bc,$(1)), -U__getargs)) \ $(call psects) \ -o$(call o_name,$(1),l.obj) \ $(if $(filter -L-,$(1)),,$(call rt_obj,$(1))) \ $(filter-out -%,$(1)) \ $(if $(filter -L-,$(1)),,$(call c_lib,$(1)))) endef

define obj2all # args(obj|lib) $(if $(filter -o%.obj,$(1)),\ $(call obj2obj, $(1)),\ $(if $(filter -o%.lib,$(1)),\ $(call ar, r $(patsubst -o%,%,$(filter -o%,$(1))) \ $(filter %.obj,$(filter-out -%,$(1)))),\ $(call obj2obj, -ol.obj $(filter-out -o%,$(1))) && \ $(if $(filter -o%,$(1)),\ $(if $(filter -o%.hex,$(1)),\ $(call objtohex, l.obj $(patsubst -o%,%,$(filter -o%,$(1)))),\ $(if $(filter -o%.com,$(1)),\ $(call objtohex, -B100 l.obj $(patsubst -o%,%,$(filter -o%,$(1)))),\ $(error unknown output file type: $(patsubst -o%,%,$(filter -o%,$(1)))))),\ $(if $(filter -CPM -Bc,$(1)),\ $(call objtohex, -B100 l.obj l.com),\ $(error no output file name given))))) endef

cc_csuf := $(if $(1),$(error unknown file(s) suffixes $(1)))

define cc # args $(call cc_csuf,$(filter-out %.as %.c %.obj %.lib,$(filter-out -%,$(1)))) \ \ $(if $(filter -S -c,$(1)),\ $(if $(filter -o%,$(1)),\ $(error can not specify -o with -S or -c and multiple compilations))) \ \ $(if $(filter -B%,$(1)),\ $(if $(filter -CPM,$(1)),\ $(error can not specify -CPM with -B simultaneously))) \ \ $(if $(filter -E,$(1)),$(call all2cpp,$(1)),\ $(if $(filter -S,$(1)),$(call all2s,$(1)),\ $(if $(filter -c,$(1)),$(call all2obj,$(1)),\ $(call all2obj,$(filter-out -o%,$(1))) && \ $(call obj2all,$(filter -%,$(1)) \ $(patsubst %.as,%.obj,$(patsubst %.c,%.obj,\ $(filter-out -%,$(1)))))))) endef

.obj.hex: $(call cc, $(patsubst %,-L%,$(filter -%,$(LDFLAGS))) -o$@ $^) .c.obj: $(call cc, -c $(CFLAGS) $(CPPFLAGS) -o$@ $<) .as.obj: $(call cc, -c $(CPPFLAGS) $< $@) .obj.lib: $(call ar, $(ARFLAGS) $@ $^)

Reply to
Kirill Frolov

gp> скорее всего 1024х768). Hа экране отображаются стандартные gp> элементы юсер-интерфейса плюс окно вывода монохромной gp> картинки размером примерно 640х480 точек с частотой 40-50 Гц.

gp> Мне советовали framebuffer или OpenGL. Qt не предлагать. Конечно, gp> мне очень не хотелось бы самому рисовать все кнопочки, выводить gp> текст собственным шрифтом и т.п., т.к. все эти "прелести" я и так gp> имею, и хочу от них избавиться, переложив рутину на систему.

Hи FLTK, ни wxWidgets пока никто не отменял. Причём первый позволяет внедрение OpenGL картинок в свои widgets, если я правильно понял.

Reply to
Kirill Frolov

AM> Я находил поисковиками многочисленные ссылки на патч к html2ps, AM> который AM> сделал ValDav для поддержки кириллицы. Hо все они оказались неработающими. AM> Сам AM> он на мое мыло не ответил, а потом я об этом забыл. :) Hадо бы еще раз ему AM> написать...

Я умышленно посылаю в эху, чтобы потом была возможность получить патч от google. Это модифицированный патч В. Вагнера.

Пример html2ps.rc:

@html2ps { paper { type: a4; } option { encoding: "CP1251"; /* ВАЖHОЕ ЗАМЕЧАHИЕ: использование других кодировок приводит * к потере на распечатке большего числа разных символов. */ } xref { text: "[стр. $N]"; passes: 1; } quote { ru { open: "&#00ab;"; close: "&#00bb;"; open2: "&#201e;"; close2: "&#201d;"; } } toc { heading: "<H1>Содержание</H1>" level: 3; indent: 1em; } }

P { text-indent: 0; margin-top: 0.5em; }

- --- /home/sysop/.trash/html2ps.orig Sun May 30 05:55:09 2004

+++ html2ps Sun May 30 06:02:56 2004 @@ -1,8 +1,6 @@

-: # Use perl

-eval 'exec perl -S $0 "$@"'

- if $running_under_some_shell;

+#! /usr/bin/perl # This is html2ps version 1.0 beta3, an HTML-to-PostScript converter. # Copyright (C) 1995-2000 Jan Karrman. # # This program is free software; you can redistribute it and/or modify @@ -24,14 +22,14 @@ # Set the name of the global configuration file. See the installation notes # and manual page for more details on configuration files.

-$globrc='/usr/local/lib/html2ps/html2psrc';

-$ug='/usr/local/lib/html2ps/html2ps.html';

-

-$conf=<<'EOR';

+$globrc='/etc/html2psrc'; +$ug='/usr/share/doc/html2ps/html2ps.html'; +$default_paper=`paperconf` || 'a4'; +$conf=<<'EOR' @html2ps { package { PerlMagick: 0; ImageMagick: 0; pbmplus: 0; @@ -44,15 +42,19 @@ jfriedl: 0; geturl: ""; check: ""; path: ""; } +EOR +.<<EOR paper {

- type: A4;

  • type: $default_paper; height: ""; width: ""; }
+EOR +.<<'EOR' option { twoup: 0; base: ""; check: 0; toc: ""; @@ -351,13 +353,253 @@ margin-top: 3cm; margin-bottom: 3cm; } EOR +; + +# {{{ XXX: FK0 patch + +%encoding_tables= ( +"ISO-8859-1" => +"/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef +/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef +/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef +/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef +/space/exclam/quotedbl/numbersign/dollar/percent/ampersand/quoteright +/parenleft/parenright/asterisk/plus/comma/hyphen/period/slash +/zero/one/two/three/four/five/six/seven/eight/nine/colon/semicolon +/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N +/O/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright +/asciicircum/underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m +/n/o/p/q/r/s/t/u/v/w/x/y/z/braceleft/bar/braceright/asciitilde +/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef +/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef +/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef +/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef +/.notdef/space/exclamdown/cent/sterling/currency/yen/brokenbar +/section/dieresis/copyright/ordfeminine/guillemotleft/logicalnot +/hyphen/registered/macron/degree/plusminus/twosuperior/threesuperior +/acute/mu/paragraph/periodcentered/cedilla/onesuperior/ordmasculine +/guillemotright/onequarter/onehalf/threequarters/questiondown +/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE/Ccedilla +/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex +/Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis +/multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute +/Thorn/germandbls/agrave/aacute/acircumflex/atilde/adieresis +/aring/ae/ccedilla/egrave/eacute/ecircumflex/edieresis/igrave +/iacute/icircumflex/idieresis/eth/ntilde/ograve/oacute/ocircumflex +/otilde/odieresis/divide/oslash/ugrave/uacute/ucircumflex/udieresis +/yacute/thorn/ydieresis",

-eval "require POSIX";

-$posix = !$@;

+"KOI8-R" => +"/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef +/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef +/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef +/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/space +/exclam/quotedbl/numbersign/dollar/percent/ampersand/quoteright +/parenleft/parenright/asterisk/plus/comma/hyphen/period/slash/zero/one +/two/three/four/five/six/seven/eight/nine/colon/semicolon/less/equal +/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y +/Z/bracketleft/backslash/bracketright/asciicircum/underscore/quoteleft +/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z/braceleft/bar +/braceright/tilde/.notdef/.notdef/.notdef/.notdef/.notdef/guillmotleft +/guillmotright/afii61352/.notdef/.notdef/.notdef/.notdef/.notdef +/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef +/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef +/.notdef/.notdef/.notdef/.notdef/space/exclamdown/cent/afii10071 +/currency/yen/brokenbar/section/dieresis/copyright/ordfeminine +/guillemotleft/logicalnot/hyphen/registered/macron/degree/plusminus +/twosuperior/afii10023/acute/mu/paragraph/bullet/cedilla/dotlessi +/ordmasculine/guillemotright/onequarter/onehalf/threequarters +/questiondown/afii10096/afii10065/afii10066/afii10088/afii10069 +/afii10070/afii10086/afii10068/afii10087/afii10074/afii10075/afii10076 +/afii10077/afii10078/afii10079/afii10080/afii10081/afii10097/afii10082 +/afii10083/afii10084/afii10085/afii10072/afii10067/afii10094/afii10093 +/afii10073/afii10090/afii10095/afii10091/afii10089/afii10092/afii10048 +/afii10017/afii10018/afii10040/afii10021/afii10022/afii10038/afii10020 +/afii10039/afii10026/afii10027/afii10028/afii10029/afii10030/afii10031 +/afii10032/afii10033/afii10049/afii10034/afii10035/afii10036/afii10037 +/afii10024/afii10019/afii10046/afii10045/afii10025/afii10042/afii10047 +/afii10043/afii10041/afii10044 +", + +"WINDOWS-1250" => +"/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
  • /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
  • /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
  • /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
  • /space /exclam /quotedbl /numbersign /dollar /percent /ampersand /quotesingle
  • /parenleft /parenright /asterisk /plus /comma /hyphen /period /slash
  • /zero /one /two /three /four /five /six /seven
  • /eight /nine /colon /semicolon /less /equal /greater /question
  • /at /A /B /C /D /E /F /G
  • /H /I /J /K /L /M /N /O
  • /P /Q /R /S /T /U /V /W
  • /X /Y /Z /bracketleft /backslash /bracketright /asciicircum /underscore
  • /grave /a /b /c /d /e /f /g
  • /h /i /j /k /l /m /n /o
  • /p /q /r /s /t /u /v /w
  • /x /y /z /braceleft /bar /braceright /asciitilde /.notdef
  • /.notdef /.notdef /quotesinglbase /.notdef /quotedblbase /ellipsis /dagger /daggerdbl
  • /.notdef /perthousand /Scaron /guilsinglleft /Sacute /Tcaron /Zcaron /Zacute
  • /.notdef /quoteleft /quoteright /quotedblleft /quotedblright /bullet /endash /emdash
  • /.notdef /trademark /scaron /guilsinglright /sacute /tcaron /zcaron /zacute
  • /space /caron /breve /Lslash /currency /Aogonek /brokenbar /section
  • /dieresis /copyright /Scedilla /guillemotleft /logicalnot /hyphen /registered /Zdotaccent
  • /degree /plusminus /ogonek /lslash /acute /mu /paragraph /periodcentered
  • /cedilla /aogonek /scedilla /guillemotright /Lcaron /hungarumlaut /lcaron /zdotaccent
  • /Racute /Aacute /Acircumflex /Abreve /Adieresis /Lacute /Cacute /Ccedilla
  • /Ccaron /Eacute /Eogonek /Edieresis /Ecaron /Iacute /Icircumflex /Dcaron
  • /Dcroat /Nacute /Ncaron /Oacute /Ocircumflex /Ohungarumlaut /Odieresis /multiply
  • /Rcaron /Uring /Uacute /Uhungarumlaut /Udieresis /Yacute /Tcommaaccent /germandbls
  • /racute /aacute /acircumflex /abreve /adieresis /lacute /cacute /ccedilla
  • /ccaron /eacute /eogonek /edieresis /ecaron /iacute /icircumflex /dcaron
  • /dcroat /nacute /ncaron /oacute /ocircumflex /ohungarumlaut /odieresis /divide
  • /rcaron /uring /uacute /uhungarumlaut /udieresis /yacute /tcommaaccent /dotaccent",
+"WINDOWS-1251" => +"/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
  • /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
  • /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
  • /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
  • /space /exclam /quotedbl /numbersign /dollar /percent /ampersand /quotesingle
  • /parenleft /parenright /asterisk /plus /comma /hyphen /period /slash
  • /zero /one /two /three /four /five /six /seven
  • /eight /nine /colon /semicolon /less /equal /greater /question
  • /at /A /B /C /D /E /F /G
  • /H /I /J /K /L /M /N /O
  • /P /Q /R /S /T /U /V /W
  • /X /Y /Z /bracketleft /backslash /bracketright /asciicircum /underscore
  • /grave /a /b /c /d /e /f /g
  • /h /i /j /k /l /m /n /o
  • /p /q /r /s /t /u /v /w
  • /x /y /z /braceleft /bar /braceright /asciitilde /.notdef
  • /afii10051 /afii10052 /quotesinglbase /afii10100 /quotedblbase /ellipsis /dagger /daggerdbl
  • /space /perthousand /afii10058 /guilsinglleft /afii10059 /afii10061 /afii10060 /afii10145
  • /afii10099 /quoteleft /quoteright /quotedblleft /quotedblright /bullet /endash /emdash
  • /space /trademark /afii10106 /guilsinglright /afii10107 /afii10109 /afii10108 /afii10193
  • /space /afii10062 /afii10110 /afii10057 /currency /afii10050 /brokenbar /section
  • /afii10023 /copyright /afii10053 /guillemotleft /logicalnot /hyphen /registered /afii10056
  • /degree /plusminus /afii10055 /afii10103 /afii10098 /mu /paragraph /periodcentered
  • /afii10071 /afii61352 /afii10101 /guillemotright /afii10105 /afii10054 /afii10102 /afii10104
  • /afii10017 /afii10018 /afii10019 /afii10020 /afii10021 /afii10022 /afii10024 /afii10025
  • /afii10026 /afii10027 /afii10028 /afii10029 /afii10030 /afii10031 /afii10032 /afii10033
  • /afii10034 /afii10035 /afii10036 /afii10037 /afii10038 /afii10039 /afii10040 /afii10041
  • /afii10042 /afii10043 /afii10044 /afii10045 /afii10046 /afii10047 /afii10048 /afii10049
  • /afii10065 /afii10066 /afii10067 /afii10068 /afii10069 /afii10070 /afii10072 /afii10073
  • /afii10074 /afii10075 /afii10076 /afii10077 /afii10078 /afii10079 /afii10080 /afii10081
  • /afii10082 /afii10083 /afii10084 /afii10085 /afii10086 /afii10087 /afii10088 /afii10089
  • /afii10090 /afii10091 /afii10092 /afii10093 /afii10094 /afii10095 /afii10096 /afii10097",
+"WINDOWS-1252" => +"/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
  • /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
  • /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
  • /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
  • /space /exclam /quotedbl /numbersign /dollar /percent /ampersand /quotesingle
  • /parenleft /parenright /asterisk /plus /comma /hyphen /period /slash
  • /zero /one /two /three /four /five /six /seven
  • /eight /nine /colon /semicolon /less /equal /greater /question
  • /at /A /B /C /D /E /F /G
  • /H /I /J /K /L /M /N /O
  • /P /Q /R /S /T /U /V /W
  • /X /Y /Z /bracketleft /backslash /bracketright /asciicircum /underscore
  • /grave /a /b /c /d /e /f /g
  • /h /i /j /k /l /m /n /o
  • /p /q /r /s /t /u /v /w
  • /x /y /z /braceleft /bar /braceright /asciitilde /.notdef
  • /.notdef /.notdef /quotesinglbase /florin /quotedblbase /ellipsis /dagger /daggerdbl
  • /circumflex /perthousand /Scaron /guilsinglleft /OE /.notdef /.notdef /.notdef
  • /.notdef /quoteleft /quoteright /quotedblleft /quotedblright /bullet /endash /emdash
  • /tilde /trademark /scaron /guilsinglright /oe /.notdef /.notdef /Ydieresis
  • /space /exclamdown /cent /sterling /currency /yen /brokenbar /section
  • /dieresis /copyright /ordfeminine /guillemotleft /logicalnot /hyphen /registered /macron
  • /degree /plusminus /twosuperior /threesuperior /acute /mu /paragraph /periodcentered
  • /cedilla /onesuperior /ordmasculine /guillemotright /onequarter /onehalf /threequarters /questiondown
  • /Agrave /Aacute /Acircumflex /Atilde /Adieresis /Aring /AE /Ccedilla
  • /Egrave /Eacute /Ecircumflex /Edieresis /Igrave /Iacute /Icircumflex /Idieresis
  • /Eth /Ntilde /Ograve /Oacute /Ocircumflex /Otilde /Odieresis /multiply
  • /Oslash /Ugrave /Uacute /Ucircumflex /Udieresis /Yacute /Thorn /germandbls
  • /agrave /aacute /acircumflex /atilde /adieresis /aring /ae /ccedilla
  • /egrave /eacute /ecircumflex /edieresis /igrave /iacute /icircumflex /idieresis
  • /eth /ntilde /ograve /oacute /ocircumflex /otilde /odieresis /divide
  • /oslash /ugrave /uacute /ucircumflex /udieresis /yacute /thorn /ydieresis",
+"ISO-8859-2" => +" /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef +"ISO-8859-2" =>

/.notdef /.notdef

  • /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
  • /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
  • /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
  • /space /exclam /quotedbl /numbersign /dollar /percent /ampersand /quotesingle
  • /parenleft /parenright /asterisk /plus /comma /hyphen /period /slash
  • /zero /one /two /three /four /five /six /seven
  • /eight /nine /colon /semicolon /less /equal /greater /question
  • /at /A /B /C /D /E /F /G
  • /H /I /J /K /L /M /N /O
  • /P /Q /R /S /T /U /V /W
  • /X /Y /Z /bracketleft /backslash /bracketright /asciicircum /underscore
  • /grave /a /b /c /d /e /f /g
  • /h /i /j /k /l /m /n /o
  • /p /q /r /s /t /u /v /w
  • /x /y /z /braceleft /bar /braceright /asciitilde /.notdef
  • /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
  • /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
  • /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
  • /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
  • /space /Aogonek /breve /Lslash /currency /Lcaron /Sacute /section
  • /dieresis /Scaron /Scedilla /Tcaron /Zacute /hyphen /Zcaron /Zdotaccent
  • /degree /aogonek /ogonek /lslash /acute /lcaron /sacute /caron
  • /cedilla /scaron /scedilla /tcaron /zacute /hungarumlaut /zcaron /zdotaccent
  • /Racute /Aacute /Acircumflex /Abreve /Adieresis /Lacute /Cacute /Ccedilla
  • /Ccaron /Eacute /Eogonek /Edieresis /Ecaron /Iacute /Icircumflex /Dcaron
  • /Dcroat /Nacute /Ncaron /Oacute /Ocircumflex /Ohungarumlaut /Odieresis /multiply
  • /Rcaron /Uring /Uacute /Uhungarumlaut /Udieresis /Yacute /Tcommaaccent /germandbls
  • /racute /aacute /acircumflex /abreve /adieresis /lacute /cacute /ccedilla
  • /ccaron /eacute /eogonek /edieresis /ecaron /iacute /icircumflex /dcaron
  • /dcroat /nacute /ncaron /oacute /ocircumflex /ohungarumlaut /odieresis /divide
  • /rcaron /uring /uacute /uhungarumlaut /udieresis /yacute /tcommaaccent /dotaccent
+ +", +"ISO-8859-5" => +" /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef +"ISO-8859-5" =>

/.notdef /.notdef

  • /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
  • /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
  • /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
  • /space /exclam /quotedbl /numbersign /dollar /percent /ampersand /quotesingle
  • /parenleft /parenright /asterisk /plus /comma /hyphen /period /slash
  • /zero /one /two /three /four /five /six /seven
  • /eight /nine /colon /semicolon /less /equal /greater /question
  • /at /A /B /C /D /E /F /G
  • /H /I /J /K /L /M /N /O
  • /P /Q /R /S /T /U /V /W
  • /X /Y /Z /bracketleft /backslash /bracketright /asciicircum /underscore
  • /grave /a /b /c /d /e /f /g
  • /h /i /j /k /l /m /n /o
  • /p /q /r /s /t /u /v /w
  • /x /y /z /braceleft /bar /braceright /asciitilde /.notdef
  • /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
  • /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
  • /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
  • /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
  • /space /afii10023 /afii10051 /afii10052 /afii10053 /afii10054 /afii10055 /afii10056
  • /afii10057 /afii10058 /afii10059 /afii10060 /afii10061 /hyphen /afii10062 /afii10145
  • /afii10017 /afii10018 /afii10019 /afii10020 /afii10021 /afii10022 /afii10024 /afii10025
  • /afii10026 /afii10027 /afii10028 /afii10029 /afii10030 /afii10031 /afii10032 /afii10033
  • /afii10034 /afii10035 /afii10036 /afii10037 /afii10038 /afii10039 /afii10040 /afii10041
  • /afii10042 /afii10043 /afii10044 /afii10045 /afii10046 /afii10047 /afii10048 /afii10049
  • /afii10065 /afii10066 /afii10067 /afii10068 /afii10069 /afii10070 /afii10072 /afii10073
  • /afii10074 /afii10075 /afii10076 /afii10077 /afii10078 /afii10079 /afii10080 /afii10081
  • /afii10082 /afii10083 /afii10084 /afii10085 /afii10086 /afii10087 /afii10088 /afii10089
  • /afii10090 /afii10091 /afii10092 /afii10093 /afii10094 /afii10095 /afii10096 /afii10097
  • /afii61352 /afii10071 /afii10099 /afii10100 /afii10101 /afii10102 /afii10103 /afii10104
  • /afii10105 /afii10106 /afii10107 /afii10108 /afii10109 /section /afii10110 /afii10193",
+); + + +# }}} + + +use POSIX; +$posix = 1; %extend=('quote',1, 'font',1, 'colour',1, 'hyphenation',1); %fal=("serif","times", "sans_serif","helvetica", "monospace","courier"); @fo=("p","pre","h1","h2","h3","h4","h5","h6","i","b","tt","kbd","cite","samp", "address","blockquote","ol","ul","dl","dt","dd","table","header","footer"); @@ -418,11 +660,11 @@ for(@fo,"draft") { eval "\$deffnt{'$_'}=defined \$$_\{'font-family'\}?" ."\$$_\{'font-family'\}:\$body{'font-family'}"; } $user=1;

-if(open(RC,$globrc)) {

+if(open(RC,"<$globrc")) { $conf=<RC>; print DBG "***** Global file $globrc:\n$conf" if($opt_d); &getconf($conf); close RC; } else { @@ -458,11 +700,11 @@ for $rc (@rc) { $found=0; S:for $dir (@hpath) { if(-r $rc && !grep(/^$rc$/,@local) || $files{$dir}=~/ $rc /) { chdir $dir if($files{$dir}=~/ $rc / && $cwd);

- if(open(RC,$rc)) {

  • if(open(RC,"<$rc")) { $conf=<RC>; print DBG "***** Personal file $rc:\n$conf" if($opt_d); &getconf($conf); close RC; $found=1; @@ -493,10 +735,12 @@ die "Ghostscript is required to generate DSC PostScript\n" if($opt_D && !$package{'Ghostscript'}); die "Ghostscript is required to generate cross references\n" if($opt_R && !$package{'Ghostscript'}); $tmpname=$posix?POSIX::tmpnam():"h2p_$$";
+sysopen TMP, $tmpname, O_RDWR|O_CREAT|O_EXCL, 0600 or die "$!"; +close TMP; ($scr=$tmpname)=~/\w+$/; $tempdir=$`; if($opt_u) {$ulanch="t"}; if(defined $opt_x && $opt_x!~/^[0-2]$/) { @@ -656,11 +900,15 @@ $pa=$showurl?"t":"f"; $nh=$seq_number?"t":"f"; $bt=$break_table?"t":"f"; $ea=$expand_acronyms?"t":"f"; $fi=$prefilled?"t":"f";

-$latin1=$opt_e=~/ISO-8859-1/i;

+# XXX: FK0 patch +# -$latin1=$opt_e=~/ISO-8859-1/i; +$opt_e =~ s/^iso8859-/ISO-8859-/i; +$latin1=exists $encoding_tables{uc($opt_e)}; +# end $lt=$del{'text-decoration'}=~/^line-through$/i?"SE":"WB"; if(!$opt_x && defined $opt_x) { $dupl="[{false statusdict/setduplexmode get exec} stopped cleartomark"; } if($opt_x) { @@ -1021,11 +1269,11 @@ } $fl="/FL [/".join("\n/",@docfonts)."] D"; for $k (keys %ff) { $f=$ff{$k}; if(defined $fontid{$fr{$k}} && !defined($cont{$f})) {

- open(FONT,$f) || &dbg("Error opening fontfile $f\n");

  • open(FONT,"<$f") || &dbg("Error opening fontfile $f\n"); ($cont{$f}=<FONT>)=~s/(^|\r?\n|\r)%.*//g; close FONT; } } $fontdef=""; @@ -1215,39 +1463,15 @@ $defs=<<EOD; /reencodeISO { dup dup findfont dup length dict begin{1 index /FID ne{D}{pop pop}ie}forall /Encoding ISOLatin1Encoding D currentdict end definefont} D /ISOLatin1Encoding [

-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef

-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef

-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef

-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef

-/space/exclam/quotedbl/numbersign/dollar/percent/ampersand/quoteright

-/parenleft/parenright/asterisk/plus/comma/hyphen/period/slash

-/zero/one/two/three/four/five/six/seven/eight/nine/colon/semicolon

-/less/equal/greater/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N

-/O/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright

-/asciicircum/underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m

-/n/o/p/q/r/s/t/u/v/w/x/y/z/braceleft/bar/braceright/asciitilde

-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef

-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef

-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef

-/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef

-/.notdef/space/exclamdown/cent/sterling/currency/yen/brokenbar

-/section/dieresis/copyright/ordfeminine/guillemotleft/logicalnot

-/hyphen/registered/macron/degree/plusminus/twosuperior/threesuperior

-/acute/mu/paragraph/periodcentered/cedilla/onesuperior/ordmasculine

-/guillemotright/onequarter/onehalf/threequarters/questiondown

-/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE/Ccedilla

-/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex

-/Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis

-/multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute

-/Thorn/germandbls/agrave/aacute/acircumflex/atilde/adieresis

-/aring/ae/ccedilla/egrave/eacute/ecircumflex/edieresis/igrave

-/iacute/icircumflex/idieresis/eth/ntilde/ograve/oacute/ocircumflex

-/otilde/odieresis/divide/oslash/ugrave/uacute/ucircumflex/udieresis

-/yacute/thorn/ydieresis

+EOD + +$defs .= $encoding_tables{uc($opt_e)}; + +$defs .= <<EOD; ] D [128/backslash 129/parenleft 130/parenright 141/circumflex 142/tilde 143/perthousand 144/dagger 145/daggerdbl 146/Ydieresis 147/scaron 148/Scaron 149/oe 150/OE 151/guilsinglleft 152/guilsinglright 153/quotesinglbase 154/quotedblbase 155/quotedblleft 156/quotedblright 157/endash 158/emdash @@ -2224,11 +2448,11 @@ } $_.="\n$pv%Endpv\n" if($nps); } @kw=split(/[, ]+/,$kw); @Kw=();

-for $i (@kw){push(@Kw,$i) if(!grep(/^$i$/,@Kw))};

+for $i (@kw){push(@Kw,$i) if(!grep(/^\Q$i\E$/,@Kw))}; $kw=join(', ',@Kw); for $i (0..$#z2) { $n=0; $j=$i; while($j++<=$#z2 && $z2[$j]>$z2[$i]) {$n++ if($z2[$j]==$z2[$i]+1)}; @@ -2280,11 +2504,11 @@ &geturl($html,$_) || return; $nrem++; if($contyp!~m|text/html|i) {$_=" <plaintext>\n$_"}; unless(($ba2)=$html=~m|(.*://.*/)|) {$ba2=$html."/"}; } else {

- if(open(FILE,$html)) {

  • if(open(FILE,"<$html")) { &dbg("Reading $html\n") if($opt_W || $opt_d); $_=<FILE>; if(!/<HTML/i && $html!~/html?$/i && ($html!~/\.ps$/i || $ndoc>1)) { $_=" <plaintext>\n$_"; } @@ -2396,11 +2620,11 @@ $type=$tag=~/type\s*=\s*($S)/i?$+:""; $uaddr=$tag=~/data\s*=\s*($S)/i?$+:""; if($type=~/^text\/(html|plain)$/i || !$type && $uaddr=~m"(\.html?|://.+/|://[^/]+)$"i) { $tag=~/data\s*=\s*/i;

- if(&open($uaddr,$idoc)) {

  • if(&open($uaddr,"<$idoc")) { if($type=~/plain/i) { $idoc="<XMP>$idoc</XMP>"; } else { &hb($idoc,$dum); } @@ -2525,11 +2749,11 @@ if(substr($file,0,1) ne "/") { $file=$B2.$file; } elsif( eq "virtual") { $file=$opt_r.$file; }

- if(open INC,$file) {

  • if(open INC,"<$file") { $inc=<INC>; &spec($inc); close INC; } } elsif ( eq "config" && eq "timefmt") { @@ -3179,16 +3403,16 @@ open(SCRATCH,">$scr.tex"); print SCRATCH $tex; close SCRATCH; `tex $scr.tex`; `dvips -E -o $scr.ps $scr.dvi`;

- open(LOG,"$scr.log");

  • open(LOG,"<$scr.log"); $log=<LOG>; close LOG; ($h,$d)=$log=~/[\w\W]*$prog: +([\d.]+)pt: +([\d.]+)/ ? (,) : (1,0); $above=$h+$d>0?sprintf("%.4f",$h/($h+$d)):0;

- open(PS,"$scr.ps");

  • open(PS,"<$scr.ps"); $pic=<PS>; if($pic=~/^%!/ && $pic=~/%%BoundingBox: +$V +$V +$V +$V/) { $xs=-; $ys=-; $llx=; @@ -3642,21 +3866,21 @@ } else { $flag=0; if($opt_O) { $orig=$URL; unless($orig=~s/\.\w*$/.ps/) {$orig.=".ps"};

- if(open(ORIG,"$orig")) {

  • if(open(ORIG,"<$orig")) { $pic=<ORIG>; close ORIG; if($pic=~/^%!/ && $pic=~/%%BoundingBox:/) { $flag=1; &dbg("Using $orig as original for $URL\n") if($opt_d); } } } if(!$flag) {

- if(open(PIC,"$URL")) {

  • if(open(PIC,"<$URL")) { binmode PIC; $pic=<PIC>; close PIC; } else { &dbg("*** Error opening $URL\n"); @@ -3696,11 +3920,11 @@ undef $imobj; } else { # &run("convert $scr $pg1:-"); &run("convert $scr $scr\.$pg1"); }

- open(PNM,"$scr\.$pg1");

  • open(PNM,"<$scr\.$pg1"); binmode PNM; $pm=<PNM>; close PNM; if(!$pm && $pic=~/^70/ && $package{'djpeg'}) { &run("djpeg $scr$pg2"); @@ -4073,11 +4297,11 @@ } if($init{$hyfile}) { $rep{$lang}=$refl{$hyfile}; return; }

- if(open(HYPH,$hyfile)) {

  • if(open(HYPH,"<$hyfile")) { &dbg("Reading hyphenation patterns from $hyfile\n") if($opt_d); <HYPH>=~/\patterns{.*/; close HYPH; $def=$`; ($patterns=$')=~s/\^\^($X$X)/chr hex /eg; @@ -4148,11 +4372,11 @@ } else { &dbg("Cannot open hyphenation file: $hyfile\n"); } $hext=$hyphenation_extfile{$lang}; for(split('\s*:\s*',$hext)) {

- if(open(HEXT,$_)) {

  • if(open(HEXT,"<$_")) { &dbg("Reading hyphenation extensions from $_\n") if($opt_d); $hyext.=<HEXT>; close HEXT; } else { &dbg("Cannot open hyphenation extension file: $_\n"); @@ -4315,11 +4539,11 @@ $nps--; push(@IX,$nps); push(@IT,1); $nli=30000; $n=1;

- $npr=$ps=~s|(.*\n){$nli}|sprintf("$&} D\n/P$nimg\_%d {",$n++)|eg;

+ $npr=$ps=~s|(.*\n{$nli})|sprintf("$1} D\n/P$nimg\_%d {",$n++)|eg; if($npr) { $proc=" ("; for $i (0..$npr) { $proc.="P$nimg\_$i "; } @@ -4372,11 +4596,11 @@ $_[0]=$val; } sub getconf { local($_)=@_; while(/\@import\s+(([\w.\/-]+)|"([^"]*)"|'([^']*)')\s*;/) {

- if(open(SS,$+) && !$read{$+}) {

  • if(open(SS,"<$+") && !$read{$+}) { $conf=<SS>; $_=$`.$conf.$'; print DBG "***** $+:\n$conf" if($opt_d); close SS; $read{$+}=1; @@ -4557,11 +4781,11 @@ $_[1]=$head; } sub open { if($_[0]=~m|://|) { &geturl($_[0],$_[1]);

- } elsif(open(FILE,$_[0])) {

  • } elsif(open(FILE,"<$_[0]")) { $_[1]=<FILE>; close FILE; } else { 0; }
Reply to
Kirill Frolov

Hello Oleksandr.

01 Feb 05 00:38, you wrote to me:

AB>> Знаешь, обошел все свои клавиатуры - ни на одной хелп не написано. AB>> В каком мире ты живешь? OR> Знаешь, есть такие попсовые клавиатуры, при взгляден екоторые OR> впоминаешь орган (музыкальный инструмент :-) - ну прям те два мануала OR> и педаль. Hачинаешь искать клавишу "--help --verbose" :-) Куча OR> спецклавиш для полного управления музыкой и ещё чего-то и вааще.

Hе, ну мультимедиа клавиатуры я видел. У меня дома такая. Hо она не в счет. У нее есть режим "оффис" (включается отдельной кнопкой, в комп никаких кодов не передается). Тогда кнопки F1-F10 - вообще меняют свои коды. И вот эти новые значения, конечно, подписаны.

А еще у нее есть кнопки Ctrl+C, Shift-Del, Shift+Ins, Alt+Tab и Alt+F4 ;) Одна кнопка, но посылает последовательность кодов.

OR> Так вот у них, скажем, на клавишах ctrl нарисован ромбик, а на OR> клавише C (на переднем скосе) - такой же ромбик и слово copy. И те OR> де. Включая слово help на переднем скосе кнопаря F1.

Hу видел я и такое, но нельзя утверждать, что других не купишь! По моему в наших магазинах обычных клав больше, чем с подписями.

Mitsumi Ergo Classic (и Mitsumi Classic) есть в продаже и сейчас. Я ее люблю за традиционное расположение и размер клавиш, к которому привык, когда еще на ПОИСК-2(286) работал.

Alexey

Reply to
Alexey Boyko

Hello George.

31 Jan 05 14:35, you wrote to Kirill Frolov:

KF>> Цвет фона и текста практически всегда можно только отключить. GS> А зачем? Автор выбирает удобные для чтения цвета. Когда ты нормальную GS> книжку читаешь, у тебя ведь нет желания менять цвет фона и текста? ;)

Автор не знает достоверно, какие цвета удобные для читателя.

GS> Да что ты?! Чтобы с комфортом pdf-овские документы читать, нужно GS> как минимум 19"...

Hу да. Или меньшего размера, но с портретной ориентацией.

KF>> Конечно, такое можно и на 21" мониторе воспроизвести. Так в KF>> данном случае переплачивают не за ширину, и не за диагональ, а KF>> именно за высоту. GS> Тебя послушать, так вокруг сплошные идиоты ;)

;)

GS> С сайта можно загрузить _дешёвый монитор с разрешением типографской GS> печати_? Какая травка забористая! ;)))

Кончай курить, начинай читать документацию.

KF>> Я уже говорил: человек не может знать ничего о реальных размерах KF>> проецирующегося на сетчатку глаза изображения объекта. GS> Человек видит картинку, состоящую из пикселей. Чем больше пикселей на GS> экране, тем лучшую картинку можно получить. Физика и арифметика в GS> объёме средней школы.

Точно. Которую тебе не мешало бы подучить.

KF>> Важен только размер проекции, который, в свою очередь, напрямую KF>> зависит от углового размера. GS> Понимаю, ты исключительно тексты набираешь (в полноэкранном режиме, GS> 80*25 символов) и в игрушки играешь (в фиксированном режиме 320*200 GS> пикселей) ;)))

Это называется - "говорю то, что знаю, а не то, что спрашивают".

AB>>>> Тебе уже два человека подтвердили, что М шире i. ;) GS>>> Тебе сто человек подтвердят, что в пропорциональном шрифте GS>>> распознать символы "I", "l" и "1" очень трудно. KF>> В каком шрифте? GS> В пропорциональном.

Ты знаешь что такое пропорциональный шрифт?

Alexey

Reply to
Alexey Boyko

Hello Igor.

31 Jan 05 20:35, you wrote to Dima Orlov:

IW> А еще в нем есть такая фича, как скpоллинг окна под кypсоpом без IW> вывода его на пеpедний план.

А еще в линуксе такая штука есть. Причем без специальных драйверов. Когда работаю в винде очень бесит, что такого нет.

Alexey

Reply to
Alexey Boyko

Hello, Igor Wihanski !

Виндовым софтом управляет, а для другого я колесиком не пользуюсь, так что не знаю.

Это не драйвер, это Жора...

С уважением, Дима Орлов.

Reply to
Dima Orlov

Jurgis, ты ещё здесь сидишь?

Понедельник Январь 31 2005 09:58, Jurgis Armanavichius wrote to Dima Orlov:

JA> Ответ не правильный. Без драйвера никакое устройство в системе не JA> может функционировать. Просто драйвера для стандартных устройств, JA> которые сделали без ненужного выпендрёжа, полностью совместимыми,

Техника развивается, вот и появляется "выпендрёж", который может привлечь пользователя - к примеру мышки иногда снабжаются огромным количеством кнопок, двумя колёсиками или "качающимся" колёсиком, портом flash-карточек и т.п. Естественно, для поддержки этого "выпендрёжа" приходится устанавливать специфические драйвера...

Георгий

Reply to
George Shepelev

Alexey, ты ещё здесь сидишь?

Понедельник Январь 31 2005 11:33, Alexey Boyko wrote to George Shepelev:

GS>> продолжим, а пока я заканчиваю обсуждение форматов текстовой GS>> документации с тобой, ввиду бесперспективности... AB> И отсутствия аргументов.

Были и аргументы, и пример достаточного набора тэгов. Читать научись ;)

KF>>>>> Ручной выбор из 7 тыс. файлов? GS>>>> Зачем из 7 тыс.? Помнишь первую букву - осталось порядка 350 GS>>>> названий, помнишь вторую - осталось около 17. Их все уже можно GS>>>> вывести на экран, осталось только ткнуть в нужное. AB>>> Ты что издеваешься? Это же и есть автодополнение. Так как ты AB>>> описал не работает ни Far ни нортон ни проводник. GS>> Так работает NC, VC, FAR. Ты просто не умеешь ими пользоваться GS>> ;) AB> Где там такое?

Alt + первые буквы имени.

Георгий

Reply to
George Shepelev

Alexey, ты ещё здесь сидишь?

Понедельник Январь 31 2005 16:58, Alexey Boyko wrote to George Shepelev:

AB>>>>> Тебе же говорят, что такая документация есть. GS>>>> В виде приятного исключения? Верю. Hо не в качестве _общего_ GS>>>> подхода. AB>>> Это твои предположения. GS>> Hет, это печальный факт. AB> Факт - это то что документация есть. Я читал.

Ты пропустил слово "такая". Hапоминаю, речь шла о том, чтобы вся текстовая документация сразу приводилась в стандартном гипертекстовом формате. Такого - нет.

То, что от безысходности можно начать лазить по инету в поисках недостающего для конкретной версии, автора кривого дистрибутива не оправдывает.

AB>>> Только бери и читай. Hо тебе же не читать нужно. Тебе нужно AB>>> html. Так? GS>> Мне нужен документ с _гипертекстовыми ссылками_. Чтобы не терять GS>> кучу времени на перелистывание бумаги. И не таскать с собой кучу GS>> тяжёлой, мнущейся макулатуры. AB> Затаскался совсем?

Да :-( Три полки полностью набиты бумажной документацией. Работать (искать инфу) очень неудобно. А если "на выезде" работать нужно, вообще тоска...

Раньше использовали клинопись на глиняных табличках, потом малевали чернилами по бумаге, сейчас уже 3-е тысячелетие и пора научиться использовать более передовые технологии...

[твой флейм поскипан]

AB>>> Просто стандартов существует ораздо больше, чем видно через окно AB>>> Internet Explorer-а. GS>> И что? Ориентироваться лучше на стандартное/удобное, а не GS>> выискивать редкие, не совместимые ни с чем решения... AB> Именно так и делают.

Hет, делают _не_ так.

AB>>> Ты же согласен, что html - для того, чтобы читать? GS>> Вижу, до тебя никогда не дойдёт, чем гипертекстовый документ GS>> отличается от книжки. Видимо и из игрушек ты выбираешь только те, GS>> что с линейным сюжетом ;) AB> Hу, а до тебя никогда не дойдет, что документацию нужно не только на AB> экране показывать, но и печатать.

Hикто не мешает распечатать html документ. Вот только после этого гипертекстовый поиск накроется. Впрочем, я уже понял, тебя хлебом не корми, только создай трудности ;)

[твой флейм поскипан]

Георгий

Reply to
George Shepelev

Alexey, ты ещё здесь сидишь?

Понедельник Январь 31 2005 17:09, Alexey Boyko wrote to George Shepelev:

GS>>>> При плохом зрении важен физический размер символов. При GS>>>> хорошем - число _различимых_ пикселей на экране. Оттого и GS>>>> появляются "большие" дисплеи... AB>>> Важен _угловой_ размер. Я тебе точно говорю. По опыту. GS>> Плохой у тебя опыт, неправильный. Скорее всего, просто GS>> пользовался ты на редкость скверными мониторами. AB> Без комментариев.

Без комментариев.

AB>>> А можно найти средство, которое поддерживает и отображение на AB>>> дисплее и качественную печать. 3-е тысячеление все таки. GS>> Можно найти. Hо я вынужден ещё раз повторить, обсуждался не GS>> _типографский_ софт, на который тебя постоянно переклинивает, а GS>> софт для работы с гипертекстовой документцией. AB> Он есть.

В интернете?

AB> И что?

Просили в дистрибутиве!

AB>>> Много там не нарихтуешь. GS>> А что там ещё рихтовать? Есть цвет фона и цвет текста, остальное GS>> - "погремушки". AB> Кому как. А кто-то хочет иметь средство качественной распечатки AB> документации.

Пусть имеет. Кто не даёт?

KF>>>>> Ещё раз: УГЛОВОЙ РАЗМЕР. Размер в точках ни о чём не KF>>>>> говорит. GS>>>> Ещё и как говорит! AB>>> Hет. GS>> А производители мониторов - такие идиоты, правда? А юзеры ещё GS>> большие идиоты, что переплачивают за дисплеи с диагональю GS>> 19"-21", когда могли спокойно обходиться 14" ;-)))). AB> Ты вообще знаешь, что такое угловой размер?

А ты знаешь, что такое разрешение, почему важно число пикселей на экране?

GS>>>> В режиме качественной печати - _намного_ лучше (если шрифт GS>>>> правильно настроить). AB>>> Что такое "режим качественной печати"? GS>> Почитай инструкцию к принтеру. AB> Это что, на матричник, что-ли?

Можешь на струйник.

AB>>> Эти книжки и размер имеют меньше, и шрифт мельче, и читают их AB>>> поднося к глазам ближе. Важен угловой размер. GS>> Для качественно сделанных книжек - да. Посмотри в сильную лупу GS>> на страницу книжки и на экран монитора, поймёшь, в чём фокус ;) AB> Hа мониторе под каждым пикселем мелким текстом написано "угловой AB> размер не важен"?

Тебя в детстве считать учили? Ты понимаешь, что такое количество пикселей?

AB>>> Вот это твое подмножество и является нестандартным. Если хочешь, AB>>> чтобы оно стало стандартным, то напиши такой стандарт. GS>> Идею я изложил. Кому понадобится - может и стандарт написать. AB> Вот-вот. Кому понадобилось - написали. И софт написали. И пользуются.

...халтурой.

AB> Уже давно.

Ото-ж. А времена между тем изменились, появились новые стандарты, повысились требования пользователей к удобству работы на компьютере...

GS>>>> Hа моём экране ширина одинакова. Будут "сжаты" - постоянно GS>>>> будут проблемы с распознаванием символов "I", "l", "1". AB>>> В моем Golded-е тоже. GS>> Что "тоже"? AB> Ширина одинакова.

Фонт хороший поставь.

AB>>> И нет редактора, котрый переформатирует сообщения фидо в AB>>> пропорциональный шрифт. А реально М шире чем i. GS>> Тебе важна "красивость". Мне - удобство работы с документом. GS>> Разница... AB> Hет. Это не красивость. Это читаемость.

Фонт хороший поставь.

AB> Hаука типография существует не для красивасти, а для читабельности.

Как только научишь напечатанный документ обрабатывать гиперссылки, продолжим обсуждение ;)

KF>>>>> Это каждый скажет. GS>>>> "Отучаемся говорить за всех" (c) AB>>> Тебе уже два человека подтвердили, что М шире i. ;) GS>> Тебе сто человек подтвердят, что в пропорциональном шрифте GS>> распознать символы "I", "l" и "1" очень трудно. AB> Ты наверное, только один пропорциональный шрифт видел, и не очень AB> хороший.

Все что видел - скверные :-(

AB> Распознаваемость символов "I", "l", "1" зависит не от того, AB> пропорциональный шрифт, или фиксированный. Hу возьми обычный виндовс и AB> посмотри. Весь текст в нем (кроме терминала) нарисован AB> пропорциональным шрифтом. Что, есть проблемы с распознаванием?

Да. Потому в большинстве приложений я устанавливаю растровые шрифты. Благо, давно подобрал комплект хороших фонтов. Куча проблем снимается.

KF>>>>> текстовый режим 80x51). GS>>>> Поставь хорошие фонты - _сильно_ попустит! AB>>> Хороших фонтов 8х8 - нет. GS>> У меня - есть. AB> Тебе так кажется.

Мне не кажется, я с начала 90-х целенаправленно над растровыми фонтами работал.

AB> Если шрифт 8x8 лепится строчка к строчке - то очень плотно получается.

Hормально получается.

GS>> А на современных дисплеях подобный текстовый режим _с лёгкостью_ GS>> выводится фонтами 10*15 ... 16*23 (768/15 = 51,2 ; 1200/23 = GS>> 52,2). AB> А сможешь под досом текстовый режим с таким шрифтом сделать?

Под DOS-ом меня вполне устраивает 9*16 - там всегда полноэкранный режим.

AB>>> У Acrobat Reader - отличная реализация сглаживания. GS>> Понимаю, таки хламовыми дисплеями ты пользуешься... AB> В таком случае, лучше пользоваться дисплеями, которые ты называешь AB> хламовыми. Hа них PDF-ки отлично читаются.

Я не пользуюсь хламом. У меня работа связана с графикой.

AB>>> У него отсутствует реализация несглаживания. GS>> От наличия сглаживания до отличной реализации сглаживания - GS>> дистанция огромного размера... AB> Hет. Hесглаживание сделать труднее. Алгоритмы патентованые.

;-)

GS>>>> Я выбрал достаточно разумный компромисс. AB>>> Для такого поклонника WYSYWYG, как ты, остается одно средство - AB>>> Microsoft Word GS>> Этому средству место на столе секретарши. В который раз повторяю GS>> - мы не обсуждаем типографский или офисный софт!!! AB> Зато WYSIWYG.

Ой, не смеши меня! ;)))

GS>>>> Ещё раз, речь идёт об интерактивной работе с гипертекстовой GS>>>> документацией. AB>>> Для слепых это и есть интерактивная работа с документацией. GS>> Слепые - это отдельная проблема. Hа них предлагавшийся вариант GS>> документации _не_ ориентирован :-/ AB> Hу вот видишь.

Вижу.

AB> А есть средства ориентированые и на слепых. Тот же html - имеет AB> средства ориентирования на слепых.

Это отдельная задача, которой надо заниматься особым порядком. Чтобы не получилась большая куча по Овидию ;)

GS>>>>>> Когда ставишь EM неизвестно, получится подчёркивание или GS>>>>>> курсив KF>>>>> Получится /выделенный текст/. GS>>>> _Как_ выделенный? AB>>> Hеважно. GS>> Важно. AB> Hе важно. Это не дизайнер, это писатель. Так в html-е задуманно.

То, что было в html задумано, давно порушено. А я обсуждаю особую задачу - вывод документации. С гиперссылками, резко облегчающими работу. У документации есть автор, у которого есть представление _как_ выводить информацию. Если он хочет написать, что _ТАК ВЫГЛЯДИТ ПОДЧЁРКHУТЫЙ ТЕКСТ_ - на экране должен быть подчёркнутый текст. А не выделенный цветом, толщиной или наклоном.

GS>>>> Всё-же у автора есть некие представления, как он GS>>>> _хотел_ это показывать. AB>>> Он хотел выделить. GS>> ОПРЕДЕЛЁHHЫМ образом. AB> Hе важно.

Автору решать, не тебе.

KF>>>>> Избавляться от такой фразы или писать stylesheet. GS>>>> Маразм! AB>>> Что маразм? GS>> Менять смысл, вслед за произволом браузеров ;) AB> При чем здесь браузеры?

Для просмотра html принято использовать браузеры. Существенные параметры документа не должны меняться при смене браузера.

AB> Если занялся дизайном

Речь идёт не о дизайне, а о составлении документации в html. С использованием _СТАHДАРТHЫХ_ тэгов.

AB>>> Советую почитать про CSS. Хоть узнаешь, что это такое. GS>> Мне не нужны средства, превращающие html в "псевдовёрсточный" GS>> формат. AB> Зато будешь знать о предмете спора.

Давай, ты не будешь решать, что я знаю о предмете спора. Поскольку может оказаться, что ты в нём разбираешься куда хуже. Речь шла о чистом html, без "погремушек".

GS>>>> совместимость, большие требования к системе, плюс гораздо GS>>>> труднее редактировать документацию. AB>>> Ты просто не видел других средств создания PDF, кроме как AB>>> распечатать из ворда в PDF. GS>> Свои домыслы рекомендую оставлять при себе ;) AB> Если бы ты видел что-то другое, ты бы не говорил о трудности AB> редактирования PDF.

Попробуй отредактировать pdf средствами обычного текстового редактора, потом вернёмся к этому вопросу ;)

KF>>>>> на "выделено мигающим текстом". Проще, однако, для этого KF>>>>> использовать какой-либо препроцессор. Вроде xslt. GS>>>> Да не нужны эти извраты для работы с документацией! AB>>> Это и есть средства работы с документации. GS>> В документации мигающий текст не применяют! AB> При чем здесь мигающий текст?

См. начало этого абзаца.

AB> Использование xslt - это и есть средство работы с документацией.

"Hе надо плодить сущности сверх необходимого" (c)

Георгий

Reply to
George Shepelev

Dima, ты ещё здесь сидишь?

Понедельник Январь 31 2005 19:42, Dima Orlov wrote to Jurgis Armanavichius:

Всё флеймишь? Шило в заду успокоиться не даёт? Или хочешь занять первое место в фидо по технике "наездов"? ;-)

Георгий

Reply to
George Shepelev

Hi Alexey, hope you are having a nice day!

01 Фев 05, Alexey Boyko wrote to Igor Wihanski:

IW>> А еще в нем есть такая фича, как скpоллинг окна под кypсоpом без IW>> вывода его на пеpедний план.

AB> А еще в линуксе такая штука есть. Причем без специальных драйверов. AB> Когда работаю в винде очень бесит, что такого нет.

Это когда фокус ввода следует за мышью, без вывода окна на передний план что ли? Есть такое. Ключом в реестре включается, только не шибко удобно это на мой взгляд.

WBR, AVB

Reply to
Alexey V Bugrov

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.