Syntax Highlight 4K HERO

Syntax Highlight – расширение для Quick Look, которое может почти всё

Quick Look – это очень удобная “фича” операционной системы macOS, которая позволяет предварительно просматривать содержимое многих популярных форматов файлов и документов, отображать информацию о папках и подключенных дисках, без необходимости открывать их.

Эта функция предоставляет очень быстрый и удобный доступ к содержимому файлов, что делает работу с данными более комфортной и эффективной. Для просмотра содержимого файла достаточно кликнуть по нему (выделить), а затем нажать Пробел – Quick Look мгновенно откроет окно предпросмотра и отобразит содержимое файла без необходимости открывать его в приложении.

Quick Look впервые появилась в операционной системе Mac OS X Leopard (10.5), которая была выпущена в октябре 2007 года. Эта функция стала значительным улучшением в юзабельности операционной системы, позволяя пользователям быстро просматривать содержимое большинства форматов файлов в Finder, что экономило время и облегчало работу с документами.

С тех пор прошло много лет, Quick Look продолжает развиваться и давно уже стала стандартной функцией macOS. В новых версиях операционной системы Quick Look обзавелась новыми базовыми инструментами, такими как увеличение или уменьшение изображения, поворот, обрезка фото и видео, и т. д. Так же появилась поддержка множества новых различных форматов, включая текстовые файлы, изображения, видео, аудио, PDF-документы, документы Microsoft Office, архивы и многое другое.

Однако, функционал Quick Look небезграничен, особенно когда речь заходит о специфических задачах или о разработке. Quick Look хорошо справляется с теми форматами файлов, которые знает и понимает операционная система macOS. И, к сожалению, плохо с теми, которые macOS незнакомы. К счастью, Quick Look поддерживает расширения (плагины), за счёт которых его функционал может быть расширен. Сегодня у нас на обзоре как раз одно такое очень классное расширение.

Syntax Highlight

Syntax Highlight — это расширение (Extension) для Quick Look, которое добавляет поддержку большинства форматов исходных файлов с подсветкой синтаксиса кода прямо в окне предпросмотра Quick Look. Это очень удобно, особенно когда нужно быстро просмотреть содержимое большого количества файлов без необходимости открывать их в текстовом редакторе или среде разработки.

В отличии от стандартного определения формата файла по расширению (.txt, .css, .html), Syntax Highlight использует идентификатор унифицированного типа (Uniform Type Identifier, или UTI) для определения поддерживаемых форматов. Для чего это нужно и что это означает? Некоторые типы файлов могут быть связаны с несколькими установленными в операционной системе приложениями. Таким образом, некоторые расширения имён файлов могут ассоциироваться с несколькими UTI в зависимости от установленных в данный момент приложений. По этой причине Syntax Highlight определяет тип файла не по расширению имени файла, а по идентификатору UTI. Это позволяет Syntax Highlight поддерживать форматы файлов большинства языков программирования, а также обрабатывать некоторые обычные текстовые форматы файлов даже без расширений.

Список поддерживаемых форматов внушает:

  • Ada (.ada)
  • Adobe Acrobat Sequence files (.sequ)
  • Adobe Flash ActionScript source files (.as)
  • Adobe JSX script files (.jsx)
  • Apple workflow (.wflow) as plist (XML)
  • AppleScript (.scpt, .applescript, .ascr)
  • Apple shell script files (.command)
  • Assembler source files (.asm, .s79)
  • Astro files (.astro) as JSX.
  • Autolit files (.au3, .a3x)
  • Azkaban flow files (.flow) as YAML
  • ATL files (.atl)
  • (G)AWK files (.awk)
  • Bash Script files (.bash)
  • Bezel (.bezel) as plain text
  • BibTex (.bib)
  • C shell script files (.csh)
  • C source files (.c, .h)
  • C# source files (.cs)
  • C++ source files (.cpp, .cp, .c++, .cc, .cxx, .hpp, .hh, .hxx, .ipp )
  • ClojureScript (.cli, .cljs, .cljc, .edn)
  • CMake files (.cmake)
  • CocoaPod files (.podspec) as Ruby
  • CoffeeScript source files (.coffee)
  • ColdFusion files (.cfc, .cfm, .cfml)
  • Configuration files (.conf)
  • Configuration profiles (.mobileconfig) as XML
  • Crystal language (.cr)
  • CSON source files (.cson)
  • CSS files (.css)
  • D (.d)
  • Dart source files (.dart)
  • Diff files (.diff, .patch)
  • Dockerfile (.dockerfile)
  • Document Type Definition (.dtd)
  • DOS batch files (.bat, .cmd)
  • Dylang (.dylan)
  • ECore files (.ecore)
  • Eiffel project files (.ecf)
  • Eiffel source files (.e, .ex, .exs)
  • Erlang source files (.erl, .hri)
  • F# source files (.fsx, .fs)
  • fish source files (.fish)
  • Fortran source files (.f, .for, .f90, .f95)
  • GCC linked files (.ld, .map, .d)
  • Gdscript (Godot engine) (.gd).
  • Golang source files (.go)
  • Google Earth KML Document files (.kml)
  • Gradle source files (.gradle)
  • Graphics Language Transmission Format (.gltf)
  • Groovy source files (.groovy)
  • Haskell source files (.hs, .lhs)
  • HTML Abstraction Markup Language (.haml)
  • IDL source files (.pro)
  • INF files (.inf)
  • INI configuration files (.ini, .cfg)
  • Inno source files (.iss)
  • INO source files (.ino)
  • IntelliJ IDEA module (.iml)
  • Interface Builder Storyboard (.storybard)
  • Interface Builder XIB (.xib)
  • Java Compiled Class (.class)
  • Java Properties files (.properties)
  • Java Server Page files (.jsp)
  • Java source code (.java, .jav)
  • Java Web Start (.jnlp)
  • JavaFX ML (.fxml)
  • JavaScript files (.js, .jscript, .javascript, .mjs, .jsm)
  • JSON files (.json, .jsonc)
  • JSON Line files (.jsonl)
  • Julia source files (.jl)
  • Kermeta source files (.kmt)
  • Korn Shell script files (.ksh)
  • Kotlin source files (.kt, .kts)
  • LESS stylesheet (.less)
  • Lilypond files (.ly)x1
  • Lisp source files (.lisp, .lsp, .asd, .el)
  • Logos source files (.xm)
  • Lua source files (.lua)
  • Makefile files (.mk, .mak)
  • Markdown files (.md, .rmd)
  • Media Presentation Description (.mpd)
  • MF source files (.mf)
  • Microsoft Active Server Page files (.asp, .aspx)
  • Microsoft PowerShell files (.psm1, .psd1, .ps1)
  • NextFlow (.nf) as Groovy (Java)
  • Nim source files (.nim)
  • Node CommonJS module (.cjs)
  • Objective-C source files (.m)
  • Objective-C++ source files (.mm)
  • OCaml source files (.ml, .mll, .mly)
  • OpenSSH RSA public key (.pub)
  • OPML (Outline Processor Markup Language) files (.opml)
  • Oracle PL/SQL files (.fnc, .prc, .trg, .pks, .pkb, .pck, .tps, .tpb, .typ, .tab, .avt, .con, .sqs, .vw, .mvw, .trg)
  • Paradox files (.sc)
  • Pascal source files (.pas)
  • Patch files (.patch, .diff)
  • PDE source files (.pde, .ino)
  • Perl script files (.pl, .pm, .t)
  • Planning Domain Description Language (.pddl)
  • PHP source files (.php, .php3, .php4, .ph3, .ph4, .phtml)
  • Properties files (.properties)
  • Property List files (.plist)
  • Python source files (.py)
  • R (.r)
  • Racket (.rkt)
  • RDF files (.rdf)
  • README files (.readme)
  • reStructuredText document (.rst)
  • Rez files (.r)
  • Ruby on Rails files (.rhtml, .erb, .rjs)
  • Ruby Gems file (.gemfile)
  • Ruby script (.rb, .rbw)
  • Rust source files (.rs)
  • SageMath files (.sage)
  • SAS files (.sas)
  • SASS/SCSS files (.scss)
  • Scala source files (.sc, .sbt, .scala)
  • Scheme source files (.scm)
  • Shell script files (.bashrc, .zshrc, .sh)
  • Smali (.smali)
  • Solidity source files (.sol)
  • SQL files (.sql)
  • Standard ML source files (.ml)
  • Stata files (.do, .ado)
  • Steam app manifest files (.acf)
  • Svelte (.svelte)
  • Swift source files (.swift)
  • Symfony Twig files (.twig)
  • TCL source files (.tcl)
  • Tenex C Shell script files (.tcsh)
  • Terraform files (.tfvars, .tf, .hcl)
  • TeX and LaTeX files (.tex, .sty, .cls, .latex, .ltx, .texi, .ctx, .sty)
  • Text files (.txt, .text)
  • TOML files (.toml)
  • TypeScript files (.ts, .tsx, .cts, .mts)
  • Visual Studio Code Workspace (.code-workspace)
  • Verilog HDL files (.v, .vl)
  • VHDL source files (.vhd, .vhdl)
  • VIM script files (.vim)
  • Visual Basic source files (.vb, .bas, .basic, .vbs)
  • Vue source files (.vue)
  • XAML source files (.xaml)
  • Xcode entitlement files (.entitlements)
  • Xcode localizable strings files (.strings, .stringsdict)
  • XHTML files (.xhtml)
  • XML files (.xml)
  • XSD Schema files (.xsd, .xquery, .xq, .xu)
  • XUL files (.xul)
  • YAML files (.yaml)
  • Z shell script files (.zsh)

Но не обошлось и без “ложки дёгтя”. Так, например, macOS 10.15 Catalina не позволяет переопределять (и, соответственно, рендерить при помощи Syntax Highlight) некоторые форматы файлов, например .xml, .plist, .html, .ts, .dart, .txt, .jpg, .gif, .png (но не ограничиваясь ними)… На macOS 13 Ventura под Apple Silicon расширение .json зарезервировано системой и так же не может быть обработано при помощи Syntax Highlight. А файлы в формате .xml зарезервированы на всех операционных системах до macOS 12 Monterey. Тем не менее, Syntax Highlight обладает множеством других положительных качеств (иначе я бы не делал на него обзор).

Установка

Приложение Syntax Highlight является open source проектом (т.е. проектом с открытым исходным кодом), поэтому его можно установить несколькими различными способами:

Приступим! Для начала загрузим последний доступный релиз по этой ссылке тыц. Теперь нужно распаковать архив и распакованное приложение Syntax Highlight.app поместить в папку Программы. Нужно иметь ввиду, что скомпилированное приложение не подписано цифровой подписью доверенного разработчика и, соответственно, не прошло проверку на подлинность. Поэтому при первом запуске система может выдать предупреждение о невозможности проверить программу на наличие вредоносного программного обеспечения. Решить эту проблему можно несколькими способами (о которых я подробно рассказывал здесь), но для начала попробуйте просто щелкнуть правой кнопкой мыши (или удерживая клавишу Control ⌃) на значке приложения и в контекстном меню выберите Открыть, а затем, в появившемся окне с предупреждением, снова Открыть. После первого успешного запуска программы в Системных настройках появится новое расширение – Syntax Highlight Quicklook Extension – его нужно активировать. Для этого переходим в Системные настройки…Конфиденциальность и безопасностьРасширенияБыстро просмотреть (в macOS до версии 13 Ventura это находится в Системные настройки…РасширенияQuick Look):

Syntax Highlight Quicklook Extension

Syntax Highlight Quicklook Extension

Здесь ставим “флажок” напротив Syntax Highlight Quicklook Extension и на этом установка окончена:

Syntax Highlight Quicklook Extension

Настройки

Главное окно программы является основным окном настроек приложения. Оно лаконичное, достаточно продуманное и имеет множество различных параметров, связанных с отображением кода в окне предпросмотра Quick Look. Здесь можно выбрать движок рендеринга, цветовые схемы, шрифты, способы отображение и переноса строк, размер табуляций и задать максимальный размер окна предпросмотра Quick Look. Подробно разбирать настройки в данном обзоре я не буду – всё подробно описано в документации автора на GitHub.

Syntax Highlight Settings

Сам же предпросмотр Quick Look выглядит так:

Syntax Highlight Quick Look Preview

Syntax Highlight распространяется в надежде на его полезность, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ.

Developed by sbarex with ❤️.

Share this article
0
Share
Prev Post

Что делать, если программы в MacOS отказываются запускаться

Next Post

MIST – супертул для загрузки и создания установочных дистрибутивов с macOS

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Read next