~~~~~~~~~~~~~~~~~~~~ Arc.Ask3.Ru ~~~~~~~~~~~~~~~~~~~~~ 
Номер скриншота №:
✰ 27E4B3453E718BB3DC32DE8AABD3D323__1707059700 ✰
Заголовок документа оригинал.:
✰ Prettyprint - Wikipedia ✰
Заголовок документа перевод.:
✰ Преттипринт — Википедия ✰
Снимок документа находящегося по адресу (URL):
✰ https://en.wikipedia.org/wiki/Prettyprint ✰
Адрес хранения снимка оригинал (URL):
✰ https://arc.ask3.ru/arc/aa/27/23/27e4b3453e718bb3dc32de8aabd3d323.html ✰
Адрес хранения снимка перевод (URL):
✰ https://arc.ask3.ru/arc/aa/27/23/27e4b3453e718bb3dc32de8aabd3d323__translat.html ✰
Дата и время сохранения документа:
✰ 12.06.2024 04:48:48 (GMT+3, MSK) ✰
Дата и время изменения документа (по данным источника):
✰ 4 February 2024, at 18:15 (UTC). ✰ 

~~~~~~~~~~~~~~~~~~~~~~ Ask3.Ru ~~~~~~~~~~~~~~~~~~~~~~ 
Сервисы Ask3.ru: 
 Архив документов (Снимки документов, в формате HTML, PDF, PNG - подписанные ЭЦП, доказывающие существование документа в момент подписи. Перевод сохраненных документов на русский язык.)https://arc.ask3.ruОтветы на вопросы (Сервис ответов на вопросы, в основном, научной направленности)https://ask3.ru/answer2questionТоварный сопоставитель (Сервис сравнения и выбора товаров) ✰✰
✰ https://ask3.ru/product2collationПартнерыhttps://comrades.ask3.ru


Совет. Чтобы искать на странице, нажмите Ctrl+F или ⌘-F (для MacOS) и введите запрос в поле поиска.
Arc.Ask3.ru: далее начало оригинального документа

Преттипринт — Википедия Jump to content

Преттипринт

Из Википедии, бесплатной энциклопедии

Pretty-printing (или Prettyprinting ) — это применение любого из различных соглашений о стилистическом форматировании к текстовым файлам , таким как исходный код , разметка и подобные виды контента. Эти соглашения о форматировании могут предполагать соблюдение стиля отступов , использование другого цвета и шрифта для выделения синтаксических элементов исходного кода или настройку размера, чтобы людям было легче читать и понимать контент. Симпатичные принтеры для исходного кода иногда называют форматтерами кода или украшателями .

Красиво-печатная математика [ править ]

Набранное математическое выражение

Под красивой печатью обычно подразумевается отображение математических выражений так, как если бы они были набраны профессионально. Например, в системах компьютерной алгебры, таких как Maxima или Mathematica, система может записывать выходные данные типа « х ^ 2 + 3 * х " как " . TI TI - Серия Casio 9860 , серии HP-49/50 и HP Prime , -84 Plus , TI-89 и Nspire , TI-83 Plus с PrettyPt [1] надстройка, или TI-84 Plus с той же надстройкой, или операционные системы с поддержкой MathPrint, могут выполнять красивую печать. Кроме того, ряд новых научных калькуляторов оснащены матричными экранами, обеспечивающими красивую печать, например серия Casio FX-ES (Natural Display), серия Sharp EL-W (WriteView), HP SmartCalc 300s , TI-30XB и Нумворкс .

Многие программы форматирования текста умеют также набирать математические данные: TeX был разработан специально для качественного математического набора .

Красивая разметка и код на основе тегов [ править ]

Исходный код HTML, красиво напечатанный, чтобы лучше показать иерархические отношения его элементов (называемых тегами).

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

В MathML не символы пробелов отражают данные, значение или синтаксис сверх того, что требуется синтаксисом XML . В HTML пробельные символы между тегами считаются текстом и анализируются как текстовые узлы в анализируемом результате. [2] Хотя к документу MathML можно широко применять отступы, при красивой печати HTML-документа необходимо проявлять достаточную дополнительную осторожность, чтобы гарантировать, что дополнительные текстовые узлы не будут созданы или уничтожены в общей близости к содержимому или элементам тега, отражающим содержимое. Эта разница в сложности нетривиальна с точки зрения автоматизированной операции красивой печати, где не требуются специальные правила или крайние случаи, как в более простом примере MathML. В примере HTML может потребоваться ряд прогрессивных взаимосвязанных алгоритмов для учета различных шаблонов элементов тегов и контента, который соответствует единому стилю и единообразен в применении в различных случаях, о чем свидетельствует файл markup.ts. [3] компонент приложения, используемый для улучшения HTML, XML и связанных технологий для инструмента Pretty Diff .

Форматирование программного кода [ править ]

Программисты часто используют инструменты для форматирования языка программирования исходного кода определенным образом. Правильное форматирование кода облегчает чтение и понимание. Разные программисты часто предпочитают разные стили форматирования, например, использование отступов кода и пробелов или расположение фигурных скобок . Средство форматирования кода или индентор кода преобразует исходный код из одного стиля формата в другой. Это относительно просто из-за однозначного синтаксиса языков программирования. Украшение кода включает в себя разбор исходного кода на структуры компонентов, такие как операторы присваивания, блоки if , циклы и т. д. (см. также поток управления ), и их форматирование способом, указанным пользователем в файле конфигурации.

Улучшители кода существуют как отдельные приложения, а также встроены в текстовые редакторы и интегрированные среды разработки . Например, Emacs различные языковые режимы позволяют корректно и привлекательно размещать блоки кода. [4]

HTML [ править ]

Lisp-красивый принтер [ править ]

Ранним примером красивой печати была программа Билла Госпера «GRINDEF» ( т. е. «функция измельчения») ( около 1967 г.), которая использовала комбинаторный поиск с обрезкой для форматирования программ LISP . Ранние версии оперировали исполняемой (списковой) формой программы Lisp и не обращали внимания на специальные значения различных функций. В более поздних версиях были специальные соглашения о чтении для включения неисполняемых комментариев, а также для сохранения макросов чтения в нераскрытом виде. Они также допускали специальные соглашения об отступах для специальных функций, таких как if. [5] [6] Термин «шлифовка» использовался в некоторых кругах по Лиспу как синоним красивой печати. [7]

Правила стиля проекта [ править ]

Многие проекты с открытым исходным кодом установили правила компоновки кода. Наиболее типичными являются GNU. форматирование [8] и стиль BSD. [9] Самая большая разница между ними заключается в расположении фигурных скобок: в стиле GNU открывающие и закрывающие скобки находятся на отдельных строках с одинаковым отступом. Стиль BSD помещает открывающую скобку в конце предыдущей строки, а за закрывающей скобкой может следовать else . Размер отступа и расположение пробелов также различаются.

Пример форматирования и украшения кода [ править ]

В следующем примере показаны некоторые типичные структуры C и то, как стиля отступов их форматируют различные правила . Без какого-либо форматирования это выглядит так:

int   foo  (  int   k  ){  if  (  k  <  1  ||  k  >  2  ){  printf  (  «вне диапазона  \n  »  ); 
  printf  (  "эта функция требует значения 1 или 2  \n  "  );}  else  { 
 printf  (  "Переключение  \n  "  );   переключатель  (  k  ) {  случай   1  :  printf  (  "1  \n  "  );   перерыв  ;   случай 
 2  :  printf  (  "2  \n  "  );   перерыв  ;}}} 

Программа GNU indent выдает следующий результат, когда ее просят сделать отступ в соответствии с правилами GNU :

int 
 foo   (  int   k  ) 
 { 
   if   (  k   <   1   ||   k   >   2  ) 
     { 
       printf   (  «вне диапазона  \n  »  ); 
        printf   (  "эта функция требует значения 1 или 2  \n  "  ); 
      } 
   else 
     { 
       printf   (  "Переключение  \n  "  ); 
        переключатель   (  k  ) 
         { 
         случай   1  : 
           printf   (  "1  \n  "  ); 
            перерыв  ; 
          случай   2  : 
           printf   (  "2  \n  "  ); 
            перерыв  ; 
          } 
     } 
 } 

Он выдает следующий результат при форматировании в соответствии с правилами BSD:

int 
 foo  (  int   k  )   { 
	 if   (  k   <   1   ||   k   >   2  )   { 
		 printf  (  «вне диапазона  \n  »  ); 
		  printf  (  "эта функция требует значения 1 или 2  \n  "  ); 
	  }   else   { 
		 printf  (  "Переключение  \n  "  ); 
		  переключатель   (  k  )   { 
		 случай   1  : 
			 printf  (  "1  \n  "  ); 
			  перерыв  ; 
		  случай   2  : 
			 printf  (  "2  \n  "  ); 
			  перерыв  ; 
		  } 
	 } 
 } 

См. также [ править ]

Связанные понятия

  • Elastic tabstop — функция многих редакторов исходного кода, которая обнаруживает и поддерживает выровненные отступы.
  • Минимизация : сделать исходный код компактным, даже если людям становится труднее его понимать.
  • Обфускация , намеренное усложнение исходного кода для понимания людьми, даже если он становится несколько запутанным.

Утилиты

  • enscript — конвертер текста в PostScript с удобными функциями печати.

Ссылки [ править ]

  1. ^ «PrettyPrint — ticalc.org» . www.ticalc.org . Проверено 13 апреля 2022 г.
  2. ^ Барон, Л. Дэвид. «Пробелы в DOM» . Сеть разработчиков Mozilla . Проверено 27 августа 2012 г.
  3. ^ разметка.ts
  4. ^ Столлман, Ричард М. «Отступы для программ» . Руководство по GNU Emacs . Фонд свободного программного обеспечения . Проверено 20 октября 2011 г.
  5. ^ Ира Гольдштейн, «Красивая печать: преобразование списка в линейную структуру», Памятка по искусственному интеллекту 279, Массачусетский технологический институт, февраль 1973 г., полный текст
  6. ^ Ричард К. Уотерс, «Использование нового обычного принтера Lisp», ACM SIGPLAN Lisp Pointers 5 : 2: 27-34, апрель – июнь 1992 г., полный текст
  7. ^ Файл жаргона , sv Grind
  8. ^ Стиль GNU
  9. ^ Стиль BSD

Внешние ссылки [ править ]

Arc.Ask3.Ru: конец оригинального документа.
Arc.Ask3.Ru
Номер скриншота №: 27E4B3453E718BB3DC32DE8AABD3D323__1707059700
URL1:https://en.wikipedia.org/wiki/Prettyprint
Заголовок, (Title) документа по адресу, URL1:
Prettyprint - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть, любые претензии не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, денежную единицу можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)