Краткая заметка о том, как одна проблема чуть не свела меня с ума, а её решение оказалось ещё более неожиданным. Итак, для одного документа внезапно Ворд начал вести себя странно:

image

Я перепробовал все известные мне методы, но мой внутренний перфекционист продолжал рыдать — документ большой с кучей таблиц — и такая проблема в каждой ячейке.

Вот это всё не помогало:

image

image


Я перерыл весь Ворд, все внешние настройки Офиса, русскоязычный и внешний интернет — везде говорится только о классическом переносе по слогам, а пара в точности таких же вопросов как у меня — без ответов.

Решение настолько неожиданное, что я с уверенностью могу сказать — сложнее пасхалок я ещё не встречал.

  1. Закрываем все приложения Офиса.
  2. Идём в Start –> Programs –> Microsoft Office –> Microsoft Office Tools –> Microsoft Office Language Preferences
  3. Добавляем Китайский/Японский/Любой азиатский язык.



  4. Заходим во вкладку Paragraph --> Asian Language support и убираем птичку Allow Latin text to wrap in the middle of a word
  5. ...
  6. Profit.

Внутренний перфекционист торжествует и надеется, что кому-то это будет полезно.
Поделиться с друзьями
-->

Комментарии (44)


  1. soltpain
    09.09.2016 13:18
    +21

    Больше пятничной драмы!
    Сколько стульев сгинуло в адовом пламени на пути к решению данной проблемы?
    Сколько мегатонн поноснолучевого эквивалента было излучено в предполагаемом направлении офиса разработки данного приложения?


    1. xutpuu
      09.09.2016 15:29
      +11

      Шутка про серийного программиста
      Плохой программист Джон сделал ошибку в коде, из-за которой каждый пользователь программы был вынужден потратить в среднем 15 минут времени на поиск обхода возникшей проблемы. Пользователей было 10 миллионов. Всего впустую потрачено 150 миллионов минут = 2.5 миллиона часов. Если человек спит 8 часов в сутки, то на сознательную деятельность у него остается 16 часов. То есть Джон уничтожил 156250 человеко-дней ? 427.8 человеко-лет. Средний мужчина живет 64 года, значит Джон убил примерно 6 целых 68 сотых человека.

      Как тебе спится, Джон — серийный программист?


      1. zartarn
        09.09.2016 17:00
        +5

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


        1. olexandr17
          09.09.2016 18:15

          в фейсбуке за 2 дня раз 6-7 попадалась уже )


      1. punkkk
        09.09.2016 17:35
        +5

        Очень ущербная шутка, особенно её форс и «гениальные» выводы, сделанные на ее основании.


        1. Valle
          09.09.2016 18:24
          -1

          Почему ущербная? Очень правильная. Время и нерные клетки — это самое ценное что у нас есть, и это печально когда миллионы людей страдают из-за одного криворукого… Его работа — облегчать жизнь миллионам людей.


          1. punkkk
            09.09.2016 19:14
            +2

            А почему нет?

            Часто вы видели программистов, делающие ошибки целенаправленно?

            И кто сказал что программа, задерживающая на 15 минут для обхода ошибки не позволяет сэкономить лишь на 15 минут времени меньше, но не потратить 15 минут?


            1. Valle
              11.09.2016 20:04

              Часто вы видели программистов, делающие ошибки целенаправленно?

              Да, часто. Большинство таких программистов не понимают что это ошибки и да, такие штуки сделаны целенаправленно. Я более чем уверен что для описанного в статье адка есть несколько оправданий и вообще — это не баг а фича, а пользователи криворукие и должны учиться пользоваться таким замечательным продуктом, ведь эта ситуация четко описана в 1527 параграфе справки, а если разобраться в коде, то все очень логично. И так много где.

              По поводу 15 минут меньше: это похоже на оправдание для какого-нибудь плохого автомобиля — подумаешь, что нужно кривым стартером 15 минут поработать, чтоб завести его, зато можно доехать на 15 минут раньше чем пешком дойти. И вообще кривой стартер полезен для здоровья и так специально задумано чтоб сэкономить 100 рублей на стартере.


              1. punkkk
                12.09.2016 09:12

                Кажется вас немного понесло.


            1. imikh
              14.09.2016 11:57

              Часто вы видели программистов, делающие ошибки целенаправленно?

              Зато я каждый день вижу программистов, целенаправленно их не фиксящих.


        1. Am0ralist
          09.09.2016 19:50

          зря вы, хорошая шутка. это единственное, что было хорошего в той статье…


      1. romy4
        11.09.2016 14:49

        Плохой программист Вася написал ущербный текст «ни о чём», из-за которого каждый пользователь был вынужден потратить в среднем 15 минут времени на прочтение текста и коммантарий к нему. Пользователей было 10 миллионов. Всего впустую потрачено 150 миллионов минут = 2.5 миллиона часов. Если человек спит 8 часов в сутки, то на сознательную деятельность у него остается 16 часов. То есть Вася уничтожил 156250 человеко-дней ? 427.8 человеко-лет. Средний мужчина живет 64 года, значит Вася убил примерно 6 целых 68 сотых человека.

        Как тебе спится, Вася — серийный писака?


        1. tomoto
          13.09.2016 13:07

          Если читатель на первых минутах не понял, что текст не заслуживает прочтения, да еще и комментарии пошел писать, то временем этого человека можно пренебречь :)


  1. JerleShannara
    09.09.2016 13:24

    А вы не знаете, какой ключик реестра при этом правится?


    1. VioletGiraffe
      09.09.2016 14:00

      ProcessMonitor должен увидеть, если действительно правится.


      1. xakep2011
        09.09.2016 15:29
        +1

        или regshot


    1. box4
      09.09.2016 15:29

      хороший вопрос


    1. bacr
      09.09.2016 15:29
      +1

      Это скорей всего свойство параграфа. А документ этот создал пользователь, у которого установлен азиатский язык и стоит эта галка.


      1. eucariot
        09.09.2016 17:15

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


        1. alex_zzzz
          09.09.2016 20:08

          Генерировался не пойми чем, а виноват Офис? Скачал файл, сбросил стиль у абзаца и всё заработало.


          1. eucariot
            09.09.2016 20:11

            Не работает.
            Без добавления азиатского пакета никакие манипуляции с настройками параграфа не изменяли ситуацию.

            Попробуйте сами — это работает и в обратную сторону — ставите эту птичку и наслаждайтесь.


            1. alex_zzzz
              09.09.2016 20:32

              Проверял в Word 2007 и 2016. Никаких азиатских языков не установлено, только русский и английский.

              Открываю файл, выделяю абзац, очищаю ему стиль — переносы пропадают. Если потом их включить, слова переносятся как и надо ? по слогам.


              1. tundrawolf_kiba
                11.09.2016 13:30

                Потому что там у стиля текста в свойстве «Язык» установлено два параметра (Восточная Азия) китайский (КНР) и (другой) русский. Как оставить только один без полного удаления стилей — не смог разобраться.


  1. VioletGiraffe
    09.09.2016 14:20
    +15

    Вопрос только один: кто и как смог вообще найти такое решение?!


    1. Keyten
      09.09.2016 15:28

      Просто у кого-то уже был добавлен китайский язык (по той или иной причине), и всё.


    1. krupinkin
      09.09.2016 15:29

      Ну, в принципе, автор написал, что перепробовал кучу вариантов, и один из них, видимо случайным образом сработал.


      1. eucariot
        09.09.2016 15:31

        К сожалению, нет. И более того, я не сам открыл это решение. Но вопрос этот будет беспокоить меня до конца жизни.


  1. Goodkat
    09.09.2016 14:46

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


  1. Vjatcheslav3345
    09.09.2016 15:21
    -5

    Если я правильно понял — речь об отсутствии автоматических переносов.
    У вас ведь на одном из рисунков показано, что эта опция отключена и её надо было просто включить (она кстати, связана с языком, ну русский язык и так у вас уже имелся — включите её, настройте переносы в том же пункте — и работайте.


    1. eucariot
      09.09.2016 15:31
      +6

      Серьёзно? Вы думаете я не попробовал? :)


  1. Cheater
    09.09.2016 15:24
    +4

    Первая же ссылка в гугле по запросу «microsoft mid word unconditional wrap» выдаёт нужное решение.
    </thread>


    1. Krypt
      09.09.2016 16:06
      +8

      Да, это полезный трюк при поиске: искать как включить то, что вы хотите отключить :)


  1. motpac
    09.09.2016 15:31

    Вам бы с вашим чутьем и умением баги искать да денежку получать за это!


  1. Kellis
    09.09.2016 15:31
    +2

    А какой у вас офис? Ни разу с таким не сталкивался. Приложили бы doc/docx для воспроизведения :)


    1. eucariot
      09.09.2016 17:19

      2013. Но, по-моему, это не привязано к версии — на старых тоже должно воспроизводиться.
      Для примера вот файлик.


      1. heos_spb
        14.09.2016 11:57

        Офис 2003, воспроизводится.


  1. MaxKitsch
    09.09.2016 15:31

    Занятным образом, это напоминает алгоритм удаления из списка языков дефолтного английского в macOS.


  1. pehat
    09.09.2016 15:46
    -1

    Просто г-н Наделла мягко намекает, что в современном мире поддержка латиницы нужна меньше чем половине населения земного шара.


  1. rPman
    09.09.2016 20:02

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

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


    1. rg_software
      10.09.2016 02:47

      Да как же, всё на месте, ничего не менялось. В левом нижнем углу язык, если щёлкнуть по нему, появляется меню (Office 2016).


      1. rPman
        10.09.2016 11:59

        у меня там ничего не меняется, вне зависимости от чекбоксика 'Определять язык автоматически', т.е. я не могу ни добавить ни удалить язык из списка, ни убрать галочку.


  1. kav4ik
    10.09.2016 05:57

    Так вроде очистка стиля помогает убрать эти переносы, или нужно было сохранить стиль?


    1. kav4ik
      10.09.2016 10:38

      Пока ответ был на модерации, опередили.


  1. aCHa
    10.09.2016 18:13

    Ну, может быть я не совсем профи, но с sample.docx я решил довольно просто — Save as RTF, отрываю в Wordpad-e, переносы работают. Ну там какие-то изменения, сохранить, открываю в офисе — все работает. Конечно, если документ большой и какое-то сложное форматирование — может и не сработать…