Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Last revisionBoth sides next revision
playground:playground [2018/05/03 06:39] – external edit 127.0.0.1playground:playground [2019/06/23 20:54] – Docker-compose filetype janax
Line 1: Line 1:
-====== PlayGround ======+==== Dockerfile and docker-compose Filetype ===== 
 +**Dockerfile**  is a file format used to build [[http://www.docker.com|Docker]] images.\\ 
 +**docker-compose.yml** is a file format to build and run multiple Docker containers; using [[https://docs.docker.com/compose/|docker-compose]]. \\
  
 +[[http://www.docker.com|Docker]] is a computer program that performs operating-system-level virtualization, also known as "containerization"
 +
 +This page describe how to add basic Dockerfile syntax highlighting on Geany. 
 +In addition, it adds docker-compose syntax highlighting. 
 +
 +===== Step 1) =====
 +
 +Add the following lines to //~/.config/geany/filetype_extensions.conf// under the respective sections [Extensions] and [Groups]
 +<file properties>
 +[Extensions]
 +Dockerfile=Dockerfile;dockerfile;*.dockerfile;*.Dockerfile;docker*;
 +YML=*.yaml;*.yml;
 +[Groups]
 +Script=Dockerfile;
 +Misc=YML;
 +</file>
 +
 +
 +===== Step 2) =====
 +
 +Save the configuration file below in your Geany filetype definition files config directory, e.g. //~/.config/geany/filedefs/filetypes.Dockerfile.conf//
 +
 +<file properties filetypes.Dockerfile.conf>
 +# For complete documentation of this file, please see Geany's main documentation
 +#
 +# Geany Color Syntax support for Dockerfiles 
 +#
 +# version 0.2
 +#
 +# 0.1 -  original version
 +# 0.2 -  base on Sh instead - fixes problems with //, #, /* 
 + 
 +[styling=C]
 + 
 +[keywords]
 +primary= ADD ARG CMD COPY ENTRYPOINT ENV EXPOSE FROM HEALTHCHECK LABEL ONBUILD RUN SHELL STOPSIGNAL USER VOLUME WORKDIR build container_name context command default depends_on dns dockerfile entrypoint environment env_file expose external extra_hosts external_links file hostname image labels links name network ports service services volumes web devices 
 + 
 +[lexer_properties=C]
 + 
 +[settings]
 +lexer_filetype=Sh
 +tag_parser=C
 +extension=
 +# single comments, like # in this file
 +comment_single=#
 +
 +# set to false if a comment character/string should start at column 0 of a line, true uses any
 +# indentation of the line, e.g. setting to true causes the following on pressing CTRL+d
 + #command_example();
 +# setting to false would generate this
 +# command_example();
 +# This setting works only for single line comments
 +comment_use_indent=true
 +# context action command (please see Geany's main documentation for details)
 +context_action_cmd=xdg-open "https://docs.docker.com/engine/reference/builder/"
 +
 +</file>
 +
 +
 +===== Step 3) =====
 +
 +Save the configuration file below in your Geany filetype definition files config directory, e.g. //~/.config/geany/filedefs/filetypes.YML.conf//
 +
 +<file properties filetypes.YML.conf>
 +# For complete documentation of this file, please see Geany's main documentation
 +[styling]
 +# Edit these in the colorscheme .conf file instead
 +default=default
 +comment=comment
 +identifier=identifier
 +keyword=keyword_1
 +number=number_1
 +reference=function
 +document=preprocessor
 +text=string_1
 +error=error
 +operator=operator
 +
 +[keywords]
 +# all items must be in one line
 +keywords= true false yes no 
 +
 +
 +[settings]
 +lexer_filetype=YAML
 +# default extension used when saving files
 +extension=yaml
 +
 +# MIME type
 +mime_type=application/x-yaml
 +
 +# the following characters are these which a "word" can contains, see documentation
 +#wordchars=_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789
 +
 +# single comments, like # in this file
 +comment_single=#
 +# multiline comments
 +#comment_open=
 +#comment_close=
 +
 +# set to false if a comment character/string should start at column 0 of a line, true uses any
 +# indentation of the line, e.g. setting to true causes the following on pressing CTRL+d
 + #command_example();
 +# setting to false would generate this
 +# command_example();
 +# This setting works only for single line comments
 +comment_use_indent=true
 +
 +# context action command (please see Geany's main documentation for details)
 +context_action_cmd=
 +
 +[indentation]
 +#width=4
 +# 0 is spaces, 1 is tabs, 2 is tab & spaces
 +#type=1
 +
 +</file>
 +
 +
 +===== Step 4) =====
 +
 +Enable docker-compose syntax highlighting, by disabling the default Scintilla YAML version, and use the one in Step 3) instead. \\
 +
 +
 +Comment out row starting with YAML in global "filetype_extensions.conf" \\
 +''from : YAML=*.yaml;*.yml; \\
 +to   : #YAML=*.yaml;*.yml; ''
 +
 +
 +{{tag>configure gnuplot filetype Dockerfile}}
Print/export