An open API service indexing awesome lists of open source software.

https://github.com/tlinden/config-general-mode

Emacs major editing mode for Config::General config files
https://github.com/tlinden/config-general-mode

Last synced: over 1 year ago
JSON representation

Emacs major editing mode for Config::General config files

Awesome Lists containing this project

README

          

# config-general-mode - Emacs major editing mode for Config::General config files.

[![MELPA](http://melpa.org/packages/config-general-mode-badge.svg)](http://melpa.org/#/config-general-mode)

## Screenshot

![demo](https://raw.githubusercontent.com/TLINDEN/config-general-mode/master/config-general-screenshot.png)

## Introduction

[Config::General](http://search.cpan.org/dist/Config-General/) is a
Perl module for parsing config files with some enhanced
features. `config-general-mode` makes it easier to edit such config
files with Emacs.

It is based on `conf-mode` with the following features:

- good syntax highlighting for config files
- completion support with TAB (using `dabbrev`)
- imenu support for
- electric paring mode (for quotes, parens, etc) enabled
- automatic indenting
- jump to include file with C-return

## Installation

To use, save config-general-mode.el to a directory in your load-path.

Add something like this to your config:

(require 'config-general-mode)
(add-to-list 'auto-mode-alist '("\\.conf$" . config-general-mode))

or load it manually, when needed:

M-x config-general-mode

You can also enable it with a buffer-local variable by adding this as
the first line of a config file:

# -*-config-general-*-

## Usage

Edit your config file as usual. Use TAB for completion of
values and variables. Use C-c C-t to toggle flags (like true to
false). Use C-c C-= on a region to automatically align on the `=`
character. Use C-c C-/ to breakup a region with long lines into
shorter ones using backslash notation. Use C-return to visit
an included file or (when not on a link) insert a new line below
the current one, indent and move point there. Use C-k to delete
lines, including continuation lines or whole blocks. Use C-c C-j
to jump to a block definition (same as using `imenu` with the
mouse).

## Customize

You can customize the mode with:

M-x customize-group RET config-general-mode RET

You can also use hooks to config-general mode as a way to modify or enhance
its behavior. The following hooks are available:

config-general-mode-hook

For example:

(add-hook 'config-general-mode-hook 'electric-indent-mode)

## Meta

Copyright (C) 2017, T.v.Dein

This file is NOT part of Emacs.

This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
published by the Free Software Foundation; either version 2 of the
License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
USA

- Version: 0.01
- Author: T.v.Dein
- Keywords: config file editing
- URL: https://github.com/tlinden/config-general-mode
- License: GNU General Public License >= 2