АнглийскийФранцузскийИспанский

Значок OnWorks

mppg - Интернет в облаке

Запустите mppg в бесплатном хостинг-провайдере OnWorks через Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS

Это команда mppg, которую можно запустить в бесплатном хостинг-провайдере OnWorks, используя одну из наших многочисленных бесплатных онлайн-рабочих станций, таких как Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS.

ПРОГРАММА:

ИМЯ


makeppgraph - Графический анализ графа зависимостей

ОПИСАНИЕ


?: - ?, A: -А,
--args-файл,
--arguments-файл, B: -б,
--так как,
- причины сборки, C: & cwd, D: -Д,
-д,
- зависимости,
& реж,
- точка,
--вниз,
--вниз, G: -грамм,
--графвиз, H: -час,
--помощь,
&домой,
--html, I: -Я,
-я,
--включают,
--include-каталог,
--включает, L: -л,
--бревно,
--лог-файл, M: -М,
-м,
& makepp,
$ MAKEPPGRAPHFLAGS,
- слияние,
--модуль, O: -о,
--выход, P: -п,
--простой, R: -р,
--переименовать, S: -с,
- раздельные направления,
и суф, T: -т,
--текст, U: -у,
--вверх,
--снизу вверх,
& usr, V: -В,
--версия

сделатьппграф [ вариант ...] [ описания ...]

миль на галлон [ вариант ...] [ описания ...]

Они говорят, что картинка стоит тысячи слов". Итак, давайте нарисуем вашу зависимость или включим
график с разных точек зрения. Посмотреть галерею
<http://makepp.sourceforge.net/gallery/> чтобы получить представление о том, что вы можете сделать.

Каждый узел представляет исходный файл или цель, окрашенный в соответствии с шаблонами имен файлов.
Узел файла прямоугольный. Узел фальшивой цели овальный. Каждый сплошной край представляет
прямая зависимость. Альтернативно или дополнительно вы можете отобразить отношения включения как
пунктирные линии. Более подробное, но не очень красивое текстовое представление см. В makepplog.

Но будьте осторожны, даже для небольшой сборки сложность может быть ошеломляющей! Это потому, что с
.o Файлы и система включает в себя вдвое больше узлов, чем исходных файлов. Но
это ничего - количество ребер часто намного превышает количество узлов из-за нескольких
включать заявления. Планировка без пересечения обычно невозможна.

В реальных проектах сложность становится безумной. Такие методы, как исходный код на основе шаблона
генерация файлов, препроцессоры (например, встроенный SQL, языки определения интерфейсов, Qt
библиотека) или публикация файлов в центральных каталогах (например, чтобы иметь только один "-I" или "-L"
вариант) заставить график взорваться. Даже если ширина краев составляет всего один пиксель, вы получите
широкие черные полосы с перекрещивающимися краями.

Как только вы поймете, что происходит на самом деле, и если вам повезет, вы сможете найти способ
упрощение настройки сборки. Но прежде чем вы доберетесь туда, вы должны резко сократить
количество отображаемой информации. Для этого есть различные варианты выбора, переименования и
возможности слияния в "makeppgraph". Когда вам не удается найти баланс между
уменьшив график настолько, чтобы он стал разумно отображаемым, при этом показывая, что
вы хотите увидеть, вы можете вернуться к текстовому графику.

ВЫВОД ФОРМАТЫ


Разметка, отображение и обработка графиков - сложные задачи, выходящие за рамки
"makeppgraph". Вместо этого он создает файлы ввода для специализированных инструментов. Это создает
выходной файл, заменяющий или добавляющий соответствующий суффикс к своему первому входному файлу. Если это
is .makepp / журнал, по умолчанию выходной файл будет пропускать .makepp каталог, ведущий к
log.udg. Если первый вход - (stdin), вывод идет на stdout.

uDraw (График)
С uDraw (График)http://www.informatik.uni-bremen.de/uDrawGraph/> вы получите достаточно
современный графический интерфейс, который позволяет выбрать родителей или детей, найти другой конец ребра или
скрыть подграфы. Настройка параметров, таких как расстояния между узлами, и использование сплайнов для ребер
может сделать график красивее.

Хотя перечисленные выше функции делают его чрезвычайно полезным инструментом, есть несколько небольших
заминки:

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

· Он строго разделяет атрибуты графика и параметры отображения. Это означает, что вы не можете
поместите в сгенерированный граф тот факт, что он должен быть ориентирован боком (что
здесь, как правило, необходимо, потому что даже при переименовании во что-то короткое, имена файлов
намного шире, чем высокий). В качестве обходного пути, если вы не хотите использовать его по умолчанию, или
выбирайте ориентацию из меню каждый раз, они предлагают небольшой стартовый сценарий:

экспорт UDG_HOME = / где / когда-либо / uDrawGraph-3.1
TMP = `mktemp -t udg.XXXXXX` || выход 1
trap "rm -f $ TMP" ВЫХОД
echo "[меню (файл (open_graph (\" $ {1-log.udg} \ "))), меню (макет (ориентация (left_right)))]"> $ TMP
$ UDG_HOME / bin / uDrawGraph -init $ TMP

· Он еще не поддерживает цвета границ узлов. Из-за этого "--because" отображается двойным
границы, когда они должны быть красными.

· При объединении нескольких файлов в один узел приводит к саморегулированию ребер как с
"--dependencies" и "--includes", будет отображаться только один из них, случайным образом
пунктирная или сквозная маркировка «2 *».

Graphviz
Графвизhttp://www.graphviz.org/> состоит из нескольких инструментов командной строки, которые позволяют
гораздо больше форматов экспорта, чем uDraw (Graph). Это включает не только статические форматы изображений.
но также ввод для дизайнерских программ, таких как dia. Есть утилита twopi для создания
радиальная компоновка, что хорошо, если ваш график приближается к истинному дереву, т.е.
зависимости разветвляются, но некоторые узлы имеют общие зависимости с другими. Есть несколько
доступны программы просмотра, ни одна из которых не помогает ориентироваться в структуре графика:

рехнувшийся
Его собственный инструмент отображения, dotty, имеет то преимущество перед uDraw (Graph), что вы можете свободно
перетаскивайте узлы, не ограничиваясь уровнем, назначенным макетом. Когда
ваш экран полон краев, перетаскивание одного узла дает вам хорошее представление о том, где
края этого узла ведут к. Но он также теряет информацию, когда вы ее изменяете.
Кроме того, это устаревший инструмент Xlib. Он также отображает немного раздражающий
обведите в середине каждого края, и, кажется, нет другого выхода, чтобы от него избавиться.

ZGRViewer
ZGRViewerhttp://zvtm.sourceforge.net/zgrviewer.html> загружается отдельно
Программа просмотра Java с удобным масштабированием и панорамированием. График доступен только для просмотра, нет
перемещение узлов. В области просмотра есть пять кнопок, которые предлагают дополнительные
причудливые вариации полу-3D зума, но, в отличие от базовой функциональности, они могут быть
очень медленно, в зависимости от вашей настройки Java. Для моего Sun Linux Java следующие
дали колоссальный импульс:

экспорт J2D_PIXMAPS = общий USE_DGA_PIXMAPS = 1

Граппа
Grappa - это отдельно загружаемая программа просмотра Java 1.2. Нет оболочки-обертки
скрипт, jar не содержит манифеста, ни один из источников не содержит основную функцию и
с помощью appletviewer он создал два высоких окна, которые висят "стартовым апплетом"
сообщение, поэтому я не знаю, как это проверить. Его можно попробовать на демонстрационном веб-сайте в качестве
апплет.

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

SVG SVG, один из типов файлов, в который можно экспортировать файлы, уже довольно старый. Но, некоторые
у браузеров все еще есть проблемы с этим. При встраивании в тег объекта только Opera
масштабирует его, другие обрезают, что бесполезно для эскиза. Если рассматривать как
собственный документ, только Opera и Konqueror позволяют масштабировать его, в то время как Firefox масштабируется
только ярлыки. Несмотря на то, что метки являются текстовыми, ни один браузер не может их искать.
IE6 ничего не понимает, если вы не установите плагин. Специальное приложение, например
Inkscape может служить вам лучше.

HTML
Это простой формат дерева неупорядоченного списка, который можно просматривать в любом браузере. Ты
должен иметь JavaScript и CSS, что позволяет сворачивать поддеревья и видеть цвета. Как правило
ваш граф не будет деревом, которое можно обойти, повторяя узлы в каждом поддереве
необходимо, но в качестве ссылки на первое вхождение, где вы можете увидеть все его атрибуты. Должное
для ограниченной поддержки Unicode в IE вертикальные стрелки используются для включения отношений, вместо этого
обычных пунктирных стрелок.

текстуальный График
Это простой формат, основанный на отступах, который можно просматривать в любой программе просмотра текста. Этот
означает, что вы обычно можете изучать графики гораздо большего размера, чем в других форматах. В Emacs вы
с помощью этой маленькой оболочки можно использовать схему и развёртку для очень мощной навигации по графику.
Режим:

(режим определения-производного режима текстового графа режим контура "График"
(режим просмотра)
(set (make-local-variable 'outline-regexp) "*.")
(установить (make-local-variable 'уровень схемы)
(лямбда () (/ (- (конец совпадения 0) (начало совпадения 0) -1) 2)))
(набор (make-local-variable 'ключевые слова-схемы-шрифта-блокировки)
'(("^ * \\ (?: {[az,] +} \\)? \\ ([^ {\ n] + \\)" (1 (контур-шрифт-замок-лицо) nil t) )))
(setq imenu-generic-выражение
'((nil "^ * \\ (?: {[az,] +} \\)? \\ (. +? \\) \\ (?: {[az,] +} \\)? $" 1))))

Строки могут иметь аннотации, разделенные запятыми, в фигурных скобках, если вы также не укажете
Параметр "-p, --plain". Когда они идут перед целью, они относятся к отношениям
с родителем, т.е. предыдущая строка имеет меньший отступ. Когда они идут за целью,
они относятся к самой цели. Вот они:

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

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

включают
Родитель включает этот файл. Эта аннотация дается только тогда, когда также отображается
зависимости.

фальшивый
Это фальшивая цель.

повторяется
Информация об этой цели и ее детях уже давалась ранее.

ДОПОЛНИТЕЛЬНЫЕ ОПЦИИ


Если вы не укажете шаблоны, makeppgraph начнет работать со всеми узлами, которые он может
извлечь из журнала makepp. Когда задан один или несколько шаблонов (с использованием «?», «*», «**» и / или
«[...]»), он будет соответствовать файлам в файловой системе и работать с любыми, которые также встречаются в
бревно. Для них по умолчанию будет выбрано «вверх», то есть все цели, зависящие от
и / или включать любые из них и «вниз», то есть все цели и / или источники, которые любой из
их зависит от и / или включает. (Направления метафоричны, потому что график
лучше всего отображается слева «сверху» направо «снизу» из-за ширины узлов.)

-A имя файла
--args-file =имя файла
--arguments-file = fимя файла
Прочтите файл и проанализируйте его как, возможно, заключенные в кавычки, разделенные пробелами и / или новой строкой.
настройки.

-b
--так как
- причины сборки
Если узел был перестроен из-за зависимости, то это ребро отображается красным. увы
makepp применяет оптимизацию, чтобы определить, когда цель нуждается в перестройке, чтобы она
часто не могу сказать, какой файл вызвал перестроение. Если узел был перестроен для
причина не связана с другим файлом, тогда граница узла красная. С участием
uDraw (Graph) вместо этого используется двойная граница, так как она не поддерживает цвет границы.

-D
- зависимости
Нарисуйте график отношений зависимости, определяемых makepp. Это по умолчанию
если также не указан "-i, --includes".

-d
--вниз
--вниз
Этот параметр имеет смысл только в том случае, если вы предоставляете один или несколько шаблонов. Только тогда будет
выберите цели и / или источники, от которых зависят совпадающие файлы или от которых они
включают.

-g
--графвиз
- точка
Создайте Graphviz .dowry файл вместо стандартного uDraw (Graph) .udg .

-h
--html
Создать браузер . HTML файл вместо стандартного uDraw (Graph) .udg .

-?
--Помогите
Распечатайте краткое описание вариантов.

-I каталог
--include =каталог
--include-dir =каталог
Добавить каталог в путь загрузки Perl @INC.

-i
--включает в себя
Вместо зависимостей (или с помощью "-D, --dependencies" дополнительно к ним) нарисуйте
график включаемых отношений. Это будет регистрироваться только настолько, насколько это необходимо.
подлежат анализу. Чтобы получить полную картину, вам понадобится свежая полная сборка.

-l имя файла
--log =имя файла
--log-файл =имя файла
Команда имя файла это то место, где makepp записал свой журнал. Это также может быть каталог, в котором
файл называется .makepp / журнал or журнал будет произведен поиск. Чтобы читать из стандартного ввода, вы должны дать -
как имя файла. Если этот параметр не указан, по умолчанию используется текущий каталог.

Эта опция может быть указана несколько раз, например, для объединения всех журналов из
"--traditional-recursive-make". Но зависимости, которые вы скрыли от makepp через
злая парадигма рекурсии, конечно, не может здесь проявиться.

-M модуль [= аргумент, ...]
--module =модуль [= аргумент, ...]
Загрузите модуль и импортируйте все функции, которые он экспортирует.

-m Perlcode
--merge =Perlcode
Выполнять Perlcode для каждой цели и ее зависимостей. См. Слияние для получения подробной информации о
этот вариант.

-o имя файла
--output =имя файла
Запишите вывод в этот файл.

-p
--простой
Не используйте такие атрибуты, как цвета или пунктирные линии. Это особенно полезно для
незагроможденный вывод "-t, --text". В этом формате двунаправленные края будут потеряны.
если вы не объедините это с "-s, --separate-direction".

-r Perlcode
--rename =Perlcode
Выполнять Perlcode для каждой цели и ее зависимостей. Подробнее см. Переименование
об этом варианте.

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

-t
--текст
Произвести удобочитаемую .текст файл вместо стандартного uDraw (Graph) .udg .

-u
--вверх
--снизу вверх
Этот параметр имеет смысл только в том случае, если вы предоставляете один или несколько шаблонов. Только тогда будет
выберите цели, которые зависят от совпадающих файлов и / или включают их.

-V
--версия
Распечатайте номер версии.

ПЕРЕЗАПИСЬ


Приемы, описанные в этой главе, обычно необходимы для получения графика разумного размера. В виде
они сформулированы как код Perl, знание языка полезно. Но ты должен уметь
добиться многого на примерах здесь или в галерее
<http://makepp.sourceforge.net/gallery/>.

Переименование
Это первое изменение имени, которое происходит, если задана опция "-r, --rename". За
при каждом встреченном имени вызывается perlcode. Он получает имя файла в $ _ и может изменять
Это. Это часто требуется, потому что makepp регистрирует полные имена файлов, поэтому один узел может
легко быть шириной в половину экрана.

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

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

С другой стороны, вы можете просто переименовать имена (обычно) в более короткие имена, чтобы уменьшить
ширина узлов, которая может быть очень большой с абсолютными именами файлов. Есть несколько
предопределенные функции в пакете «Mpp :: Rewrite», в котором также выполняется ваш код, вы можете использовать
для этого. Они возвращают true, если они что-то сделали, поэтому вы можете комбинировать их, как в:

--rename = 'cwd (1) || & домой || & usr '

& cwd
УХО номер
УХО номер, название[, разделитель]
Удаляет текущий рабочий каталог из начала пути. С номером, также
заменяет родительские каталоги, которые на много уровней выше, на нужное количество ../
каталоги, если применимо. В этом случае вы можете дать альтернативный имя, как
накапливаются ':' вместо '..' и дополнительно альтернативный разделитель как "вместо"
из '/'. В первом случае вы можете получить : /: / а / б, во втором - еще короче :: а / б
вместо ../../а/б. Передача числа полезна, если вы берете материал из
соседние деревья. Или у вас есть SRC каталог, в котором происходит большая часть действий, поэтому вы
вызовите там makeppgraph, но вы также хотите увидеть связь с другими вашими каталогами.

Если вы не укажете параметр «--rename», по умолчанию будет использоваться & cwd. Если вы не хотите переименования,
ты можешь дать немного Perlcode например, "--rename = 1", который ничего не делает.

& реж
Это отличный способ уменьшить сложность графа. Он сокращает каждый файл до
каталог. Это равносильно вопросу: «Файлы, из какого каталога зависят файлы
из какого другого каталога? »Обратите внимание, что хотя граф зависимостей всегда ациклический
(иначе makepp не знал бы, с чего начать сборку), это неверно для этого сокращенного
Посмотреть. Например, если dir1 / a зависит от dir2 / b и dir2 / a on dir1 / b который будет отображаться как
взаимозависимость между dir1 и dir2. Поскольку у циклического графа нет очевидного начала
Дело в том, что макет может быть странным.

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

--rename = '& dir; & cwd || &домой'

&дом
Заменяет ваш домашний каталог на ~/.

& makepp
Заменяет установочный каталог makepp на | м |.

и суф
суф номер
Это также отличный способ уменьшить сложность графа. Это уменьшает каждый файл, в котором
суффикс звездочки и этого суффикса. Таким образом, вы можете увидеть, какие типы файлов зависят от
на какие другие виды. С аргументом 0 остается первый символ
каталог, при условии, что это один из "/", "~" или "|" (как указано в & home или & usr, если вы
назвал тех первыми). При положительном аргументе остается столько уровней каталогов
с начала. С отрицательным аргументом он удаляет такое количество уровней каталогов на
конец. Таким образом, для / a / b / c / d / e / xy Вы получаете:

& суф * .y
суф 0 /*.y
суф 1 /a/*.y
суф 2 /a/b/*.y
суф -1 /a/b/c/d/*.y
суф -2 /a/b/c/*.y

Для родственника a / b / c / d / e / xy Вы получаете:

& суф * .y
суф 0 * .y
суф 1 а / *. у
суф -1 a / b / c / d / *. y

& usr
Под /, /usr, /usr /lOCAL, /usr /X11, /usr /X11R6, /usr /X11R7 or /opt, для любого из
каталоги bin, etc, iNCLUDE, lib or sзаяц, инициалы этих слов
соединены между барами.

Например /usr /lокал /bв / foobar становится | ulb | foobar or /usr /include / net / if.h становится
| ui | net / if.h. Обратите внимание, что l означает local, когда оно находится между двумя буквами, а слово lib.
как последнее письмо.

Объединение
Это второе изменение имени, которое происходит, если задана опция "-m, --merge". Этот
API все еще находится в разработке! В настоящее время цель передается в $ _, а зависимость
как аргумент. Если perlcode возвращает значение, это значение заменяет как цель, так и
зависимости, объединяя их в один узел. Вам могут помочь несколько предопределенных функций:

c2o Для любого источника C / C ++ и результирующего .o файл, объедините их в один узел, добавив в
исходный путь суффикс "> o", например некоторые / где / foo.cc> одаже если .o файл находится в
другой каталог.

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

x2 Для любой пары файлов с одинаковым именем, обычно заголовок или библиотека, опубликованная в
центральный каталог, объедините их в один узел, добавив *2 к зависимости.

ОКРУЖАЮЩАЯ СРЕДА


Makeppgraph смотрит на следующую переменную среды:

$ MAKEPPGRAPHFLAGS
Любые флаги в этой переменной среды интерпретируются как параметры командной строки перед
любые явные варианты. Цитаты интерпретируются как в make-файлах.

Используйте mppg онлайн с помощью сервисов onworks.net


Бесплатные серверы и рабочие станции

Скачать приложения для Windows и Linux

  • 1
    ОфисЭтаж
    ОфисЭтаж
    OfficeFloor обеспечивает инверсию
    управление связью, с его: - зависимостью
    впрыск - продолжение впрыска -
    внедрение потока Для получения дополнительной информации
    посетить...
    Скачать OfficeFloor
  • 2
    ДивКит
    ДивКит
    DivKit — это серверный пакет с открытым исходным кодом.
    Фреймворк пользовательского интерфейса (SDUI). Это позволяет вам
    развертывать обновления с сервера для
    разные версии приложения. Также это может быть
    используется для ...
    Скачать DivKit
  • 3
    субконвертер
    субконвертер
    Утилита для преобразования между различными
    формат подписки. Пользователи Shadowrocket
    следует использовать ss, ssr или v2ray в качестве цели.
    Вы можете добавить &remark= к
    Telegram-любимый HT...
    Скачать субконвертер
  • 4
    СВЭШ
    СВЭШ
    SWASH - это числовой
    инструмент для моделирования неустойчивости,
    негидростатический, со свободной поверхностью,
    вращательный поток и явления переноса
    в прибрежных водах как ...
    Скачать SWASH
  • 5
    VBA-M (Архивировано - сейчас на Github)
    VBA-M (Архивировано - сейчас на Github)
    Проект переехал в
    https://github.com/visualboyadvance-m/visualboyadvance-m
    Особенности:Создание читовСохранить состояниямульти
    система, поддерживает gba, gbc, gb, sgb,
    sgb2Т...
    Скачать VBA-M (в архиве — сейчас на Github)
  • 6
    Stacer
    Stacer
    Оптимизатор системы Linux и мониторинг
    Репозиторий Github:
    https://github.com/oguzhaninan/Stacer.
    Аудитория: конечные пользователи / рабочий стол. Пользователь
    интерфейс: Qt. Программирование Ла...
    Скачать Стасер
  • Больше »

Команды Linux

Ad