From c7f130d34fc2d4206b1a61ffae36f04b2b33ca75 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Antonin=20D=C3=A9cimo?= Date: Fri, 18 Jul 2014 16:19:45 +0200 Subject: [PATCH] Rewritten long help to Groff syntax. Now uses man to display --- love-release.sh | 206 ++++++++++++++++++++++++++++++++---------------- 1 file changed, 137 insertions(+), 69 deletions(-) diff --git a/love-release.sh b/love-release.sh index f442e2f..f7935ae 100755 --- a/love-release.sh +++ b/love-release.sh @@ -10,8 +10,8 @@ function short_help() echo "Usage: love-release.sh [options...] [files...] Options: -h, --help Prints short or long help - -l Create a plain Love file -d Create a deb package + -l Create a plain Love file -m Create a MacOS application -w, Create a Windows application -w32 Create a Windows x86 application @@ -26,74 +26,142 @@ Options: ## Long help ## function long_help() { -echo "NAME - love-release.sh -- Bash script to generate Love 2D game releases -SYNOPSIS - love-release.sh [-dlmw] [-n project_name] [-r release_dir] [-u company_name] [-v love_version] [FILES...] - -DESCRIPTION - You can use love-release.sh to generate Love 2D game applications and get over the fastidious zipping commands you had to do. - The script fully supports Windows, MacOS either on x86 or x64, and Debian packages. - It needs an Internet connection to download Love files, and relies on curl, zip and unzip commands. - To set the default Love version to use, you can edit the very beginning of the script. - If lua and a conf.lua file are found, it will automatically detect which version your project uses. - If a ProjectName.icns file is provided, the script will use it to set the game icon on MacOS. - If a ProjectName.ico file is provided, and that Wine and Resource Hacker are installed, the script will use them to set the game icon on Windows. - -OPTIONS - -h Print a short help - --help Print this longer help - - OPERATING SYSTEMS - -l Create a plain Love file. It is just a zip of your sources, renamed in *.love. - Mostly aimed at Linux players or developers and the most common distribution process. - - -d Create a deb package. Aimed at Debian and Ubuntu derivatives. - In order to create a Debian package, you must provide more informations about it. - See the DEBIAN section below. - - -m Create MacOS application. - Starting with Love 0.9.0, Love no longer supports old x86 Macintosh. - If you are targeting one of these, your project must be developed with Love 0.8.0 or lower. - Depending on the Love version used, the script will choose which one, between x64 only or Universal Build to create. - - -w Create Windows application. - Starting with Love 0.8.0, a release is specially available for Windows x64. - If you are targeting one of these, your project must be developed with Love 0.8.0 or newer. - Remember that x86 is always backwards compatible with x64. - Depending on the Love version used, the script will choose which one, between x64 and x86 or x86 only to create. - -w32 Create Windows x86 executable only - -w64 Create Windows x64 executable only - - PROJECT OPTIONS - -n Set the projects name. By default, the name of the current directory is used. - - -r Set the release directory. By default, a subdirectory called releases is created. - - -u Set the company name. Provide it for MacOS CFBundleIdentifier. - - -v Love version. Default is 0.9.1. - Starting with Love 0.8.0, a release is specially available for Windows x64. - Starting with Love 0.9.0, Love no longer supports old x86 Macintosh. - - DEBIAN - --version Set the version of your package. - --maintainer-name Set the maintainer's name. The company name is used by default. - --maintainer-email Set the maintainer's email. - --homepage Set the homepage of your project. - --description Set the description of your project. - --package-name Set the name of the package and the command that will be use to launch your game. - By default, it is the name of your project converted to lowercase, with eventual spaces replaced by dashes. - - OTHERS - --refresh Refresh the cache located in ~/.cache/love-release. One can replace the Love files there. - --debug Dump the scripts variables without making releases. - -SEE ALSO - https://www.love2d.org - https://www.love2d.org/wiki/Game_Distribution - https://www.github.org/MisterDA/love-release -" +echo " +.TH LOVE-RELEASE.SH 1 +.SH NAME +love-release.sh \- Bash script to generate Love 2D game releases +.SH SYNOPSIS +.B love\-release.sh +[\fB\-dlmw\fR] [\fB\-n\fR \fIproject_name\fR] [\fB\-r\fR \fIrelease_dir\fR] +[\fB\-u\fR \fIcompany_name\fR] [\fB\-v\fR \fIlove_version\fR] [\fIFILES...\fR] +.SH DESCRIPTION +.B love-release.sh +can be used to generate Love 2D game applications +and get over the fastidious zipping commands you had to do. +.PP +The script fully supports Windows, MacOS either on x86 or x64, +and Debian packages. +It needs an Internet connection to download Love files, +and relies on \fBcurl\fR, \fBzip\fR and \fBunzip\fR commands. +To set the default Love version to use, +you can edit the very beginning of the script. +If \fBlua\fR and a \fIconf.lua\fR file are found, +it will automatically detect which version your project uses. +If a \fIProjectName.icns\fR file is provided, +the script will use it to set the game icon on MacOS. +If a \fIProjectName.ico\fR file is provided, and that \fBWine\fR +and \fBResource Hacker\fR are installed, the script will use them +to set the game icon on Windows. +.SH OPTIONS +.TP +.B \-h +Print a short help +.TP +.B \-\-help +Print this longer help +.SH OPERATING SYSTEMS +.TP +.B \-d +Create a deb package. Aimed at Debian and Ubuntu derivatives. +In order to create a Debian package, you must provide more informations about it. +See the DEBIAN section below. +.TP +.B \-l +Create a plain Love file. It is just a zip of your sources, renamed in \fI*.love\fR. +Mostly aimed at Linux players or developers and the most common distribution process. +.TP +.B \-m +Create MacOS application. +Starting with Love 0.9.0, Love no longer supports old x86 Macintosh. +If you are targeting one of these, your project must be developed with Love 0.8.0 or lower. +Depending on the Love version used, the script will choose which one, +between x64 only or Universal Build to create. +.TP +.BR \-w \", \" \-w32 \", \" \-w64 +Create Windows application. +Starting with Love 0.8.0, a release is specially available for Windows x64. +If you are targeting one of these, your project must be developed with Love 0.8.0 or newer. +Remember that x86 is always backwards compatible with x64. +Depending on the Love version used, the script will choose which one, +between x64 and x86 or x86 only to create. +.br +.B \-w32 +Create Windows x86 executable only. +.br +.B \-w64 +Create Windows x64 executable only. +.SH PROJECT OPTIONS +.TP +.B \-n \fIproject-name\fR +Set the projects name. By default, the name of the current directory is used. +.TP +.B \-r \fIrelease-dir\fR +Set the release directory. By default, a subdirectory called releases is created. +.TP +.B \-u \fIcompany\fR +Set the company name. Provide it for MacOS CFBundleIdentifier. +.TP +.B \-v \fIversion\fR +Love version. Default is 0.9.1. +Starting with Love 0.8.0, a release is specially available for Windows x64. +Starting with Love 0.9.0, Love no longer supports old x86 Macintosh. +.SH DEBIAN +.TP +.B \-\-description \fIdescription\fR +Set the description of your project. +.TP +.B \-\-homepage \fIpage\fR +Set the homepage of your project. +.TP +.B \-\-maintainer-email \fIemail\fR +Set the maintainer's email. +.TP +.B \-\-maintainer\-name \fIname\fR +Set the maintainer's name. The company name is used by default. +.TP +.B \-\-package-name \fIname\fR +Set the name of the package and the command that will be use to launch your game. +By default, it is the name of your project converted to lowercase, +with eventual spaces replaced by dashes. +.TP +.B \-\-version \fIversion\fR +Set the version of your package. +.SH OTHERS +.TP +.B \-\-refresh +Refresh the cache located in \fI~/.cache/love-release\fR. +One can replace the Love files there. +.TP +.B \-\-debug +Dump the scripts variables without making releases. +.SH ICONS +The script doesn’t yet handle the process of creating icons, +but if provided it can use them. +.br +If you want to create MacOS icons (\fI.icns\fR), and you are +running MacOS, then check \fIiconutil\fR. If you are running GNU/Linux, +then check \fIlibicns\fR. +.br +If you want to create Windows icons (\fI.ico\fR), +you can use \fIicoutils\fR to create the icon, +then Wine and Resource Hacker to set the icon. +This last step can be automatically done, +assuming Wine and Resource Hacker are installed. +.br +If you want to add icons in the debian package, +open it and put the icons in \fI/usr/share/icons/hicolor/YYxYY/apps/\fR, +where YY is the width of the icon. +You also have to edit the line \"Icon=love\" in +\fI/usr/share/applications/yourgame.desktop\fR to match the icon's name. +See \fIhttps://developer.gnome.org/integration-guide/stable/basic-integration.html.en\fR +for more informations. +.SH SEE ALSO +.I https://www.love2d.org +.br +.I https://www.love2d.org/wiki/Game_Distribution +.br +.I https://www.github.org/MisterDA/love-release +" | man /dev/stdin }