Ответить Создать тему

Можно ли распечатать список автозамен , MS Word'a?

D. Zorych
post Sep 19 2006, 13:22 
Отправлено #1


просто Зорыч

Сообщений: 13 977
Из: Новочебоксарск



сабж. Как его перенести на другой комп понял, но мне нужно его распечатать. Можно ли это сделать?
Profile CardPM
  0/0  
Partizan
post Sep 19 2006, 13:31 
Отправлено #2


www.fishingplace.ru

Сообщений: 814



смысл ? попробую, если получиться напишу.

Сообщение отредактировал Partizan - Sep 19 2006, 13:32

--------------------
Последняя стадия офигевания от безделья на работе - это когда начинаешь читать спам… _______________ www.fishingplace.ru
Profile CardPM
  0/0  
D. Zorych
post Sep 20 2006, 08:27 
Отправлено #3


просто Зорыч

Сообщений: 13 977
Из: Новочебоксарск



Partizan, смысл в том, что новый сотрудник не знает всех автозамен. А их более сотни. Выписывать все на бумажку долго. Как этот список в отдельный файл закинуть я не понимаю. Боюсь, это невозможно.
Profile CardPM
  0/0  
bodrox
post Sep 20 2006, 09:09 
Отправлено #4


Hatebreeder

Сообщений: 40 366
Из: снов дочери



Эти списки лежат в этих файлах:
C:\Documents and Settings\USER_NAME\Application Data\Microsoft\Office\MSO1033.acl - английский язык
C:\Documents and Settings\USER_NAME\Application Data\Microsoft\Office\MSO1049.acl - русский язык
Нужно парсер накатать wink.gif.
з.ы. эта, файлы в юникоде.

Сообщение отредактировал bodrox - Sep 20 2006, 09:10

--------------------
Profile CardPM
  0/0  
D. Zorych
post Sep 20 2006, 09:24 
Отправлено #5


просто Зорыч

Сообщений: 13 977
Из: Новочебоксарск



bodrox, можно попроще? :-)
Что такое парсер? Пиво ставлю тому, кто расколдует эти юникоды.
Profile CardPM
  0/0  
bodrox
post Sep 20 2006, 09:48 
Отправлено #6


Hatebreeder

Сообщений: 40 366
Из: снов дочери



Цитата(D. Zorych @ Sep 20 2006, 10:24)
bodrox, можно попроще? :-)
Что такое парсер? Пиво ставлю тому, кто расколдует эти юникоды.
*


Цитата(http://ru.wikipedia.org/wiki/%D0%9F%D0%B0%D1%80%D1%81%D0%B5%D1%80)
П́арсер

  1. программа, которая разбирает входные данные с заданной грамматикой, и что-то по ним делает. К примеру любой компилятор является парсером.


Сообщение отредактировал bodrox - Sep 20 2006, 09:50

--------------------
Profile CardPM
  0/0  
SiMM
post Sep 20 2006, 09:54 
Отправлено #7


Banned

Сообщений: 37 461
Из: «либеральных»«ценностей»



На коленке налабал чуток wink.gif
Исходный код
<?php
$fi = fopen('MSO1049.acl','rb');
$fo = fopen('1.txt','wb');
ob_start();
echo "\xFF\xFE";
fseek($fi,0x14);
for ($i=0; !feof($fi); $i++) {
 $len = join(unpack('v',fread($fi,2)));
 if (!$len) break;
 echo fread($fi,$len*2);
 fread($fi,2);
 echo ($i%2) ? "\r\0\n\0" : "\t\0";
}
fwrite($fo,ob_get_contents());
?>
Файлик затем открывать notepad'ом.

Сообщение отредактировал SiMM - Sep 20 2006, 09:57

--------------------
Profile CardPM
  0/0  
D. Zorych
post Sep 20 2006, 10:22 
Отправлено #8


просто Зорыч

Сообщений: 13 977
Из: Новочебоксарск



SiMM, с меня пиво. Проблема решена.
Profile CardPM
  0/0  
atv_13
post Sep 20 2006, 10:35 
Отправлено #9


Тринадцатый

Сообщений: 6 262
Из: Чебоксары



судя по всему формат примерно такой (единица измерения - слово):
0-5 - ХЗ
6 (+ возможно 7) - количество описаний автозамен
7 - 0000h
8 (+ возможно 9) - количество описаний исключений при автозамене (первая буква)
9 - 0000h
Далее пошли описания автозамен:
- Заменяемый_Текст типа Структура
- Заменяющий_Текст типа Структура
Затем идет 0000h
Далее пошли описания исключений при автозамене (первая буква):
- Исключение типа Структура

где Структура вида:
0 - длина L текста
1-L - заменяемый текст
L+1 - 0000h
Profile CardPM
  0/0  
SiMM
post Sep 20 2006, 11:00 
Отправлено #10


Banned

Сообщений: 37 461
Из: «либеральных»«ценностей»



Цитата(D. Zorych)
Проблема решена.
Цитата(atv_13)
описаний исключений при автозамене
мой скрипт, кстати, не кажет. Если критично - можно юзать этот
Исходный код
<?php
$fi = fopen('MSO1049.acl','rb'); # исходный файл
$fo = fopen('1.txt','wb');       # выходной файл
ob_start();
echo "\xFF\xFE";                 # BOM для UTF-16LE
fseek($fi,0x14);
RdSection($fi);
echo "\r\0\n\0\r\0\n\0";
RdSection($fi,0);
fwrite($fo,ob_get_contents());

function RdSection(&$fi,$i=1){
 for (; !feof($fi); $i+=$i>0) {
  $len = join(unpack('v',fread($fi,2)));
  if (!$len) break;
  echo fread($fi,$len*2);
  fread($fi,2);
  echo ($i%2) ? "\t\0" : "\r\0\n\0";
 }
}
?>


--------------------
Profile CardPM
  0/0  

ОтветитьTopic Options
2 чел. читают эту тему (2 Гостей и 0 Скрытых Пользователей)
0 Пользователей: