Files
config-general-mode/README.md
Thomas von Dein 7cab35c045 added C-c C-j
2017-06-24 12:04:40 +02:00

98 lines
3.2 KiB
Markdown

## config-general-mode
Emacs major editing mode for Config::General config files.
### 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](https://github.com/TLINDEN/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 <kbd>tab</kbd> (using `dabbrev`)
- imenu support for `<blocks>`
- electric paring mode (for quotes, parens, etc) enabled
- automatic indenting
- jump to include file with <kbd>return</kbd>
### 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 <kbd>tab</kbd> for completion of
values and variables. Use <kbd>C-c C-t</kbd> to toggle flags (like
true to false). Use <kbd>C-c C-=</kbd> on a region to automatically
align on the `=` character. Use <kbd>C-c C-/</kbd> to breakup a region
with long lines into shorter ones using backslash notation. Use
<kbd>C-return</kbd> 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 <kbd>C-k</kbd> to delete lines, including continuation lines or
whole blocks. Use <kbd>C-c C-j</kbd> 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 <tlinden@cpan.org>
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 <tlinden@cpan.org>
- Keywords: config file editing
- URL: https://github.com/tlinden/config-general-mode
- License: GNU General Public License >= 2