summaryrefslogtreecommitdiff
path: root/Auxiliary/cmake-mode.el
Commit message (Collapse)AuthorAgeFilesLines
* Properly handle cases where `topic` argument is defaultedDamien Nguyen2023-04-211-2/+2
|
* cmake-mode.el: escape shell argumentsZhengyi Fu2023-04-011-2/+2
| | | | | Shell arguments containing "<" or ">" should be escaped. Otherwise, names such as CMAKE_<LANG>_FLAGS will be treated as IO redirection.
* Add new flow-control commands for variables and policies scopes managementMarc Chevrier2022-08-221-2/+2
| | | | | | | Add block() and endblock() commands offering the capability to create new scopes for variables and/or policies. Fixes: #20171
* cmake-mode.el: add support for bracket_comment and bracket_argumentmontag4512022-06-171-1/+37
|
* cmake-mode.el: Fix indentation of 'closing parens only lines'Kai Tetzlaff2022-03-181-17/+39
| | | | | | | | | | | | | | | | | | Outdent lines containing only closing parentheses (`)`) by `cmake-tab-width` to align the indentation of the 'closing parens only line' with the line that contains the opening paren. I.e. change the formatting from: add_library(mylib mysrc.c ) to: add_library(mylib mysrc.c )
* cmake-mode.el: Fix rx usage for Emacs 26marciosmiderle2021-01-041-1/+1
| | | | | | The change in commit 901386f646 (cmake-mode.el: Add navigation by function and macro, 2020-12-11) introduced a regression. Emacs 26 could not load cmake-mode.el anymore. Use `(not-char ")")`, not `(not ")")`.
* cmake-mode.el: Require the rx packageJoerg Bornemann2020-12-161-0/+1
| | | | | | | We're using rx in cmake-mode.el. Technically, we don't have to load the package, because it's already loaded at startup. But it's good style to explicitly require the packages we use, if only to give a quick overview of the package dependencies.
* cmake-mode.el: Add navigation by function and macroJoerg Bornemann2020-12-111-0/+61
| | | | | | | | | Add the functions cmake-beginning-of-defun and cmake-end-of-defun that jump to the beginning/end of the nearest function or macro. Add the function cmake-mark-defun that marks the current function. Bind those functions to the usual keys in cmake-mode-map.
* cmake-mode.el: Improve help display with reStructuredText modecondy2020-12-091-10/+31
| | | | | Many of the `cmake --help-*` options print `.rst` source documents with only partial evaluation. View them in the Emacs `rst-mode`.
* cmake.el: enable view-mode when lookupcondy2020-11-191-1/+2
|
* cmake-mode.el: Drop support for Emacs < 24Hong Xu2019-07-091-7/+3
| | | | | | | | | | The `cmake--parent-mode` alias exists only for compatibility and breaks Emacs packages and scripts that make use of `prog-mode-hook` because Emacs does not examine whether the parent mode is an alias or not. Remove the alias and require Emacs 24 or higher. Emacs 24 was released in 2012 and this is already 2019, thus the loss to drop support for versions < 24 is negligible.
* cmake-mode.el: Fix "unescaped character literals" warningJeff Kowalski2018-07-091-1/+1
| | | | | | | | | | | Emacs 27.0 warns Loading ‘cmake-mode’: unescaped character literals `?(', `?)' detected! during byte-compilation of cmake-mode.el The new warning was added in emacs commit c2bbdc3316 (Warn about missing backslashes during load). Add backslashes to escape the literals.
* Various typo fixesLuz Paz2018-01-041-1/+1
| | | | Some are user-facing. Others are source comments.
* Simplify CMake per-source license noticesBrad King2016-09-271-11/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | Per-source copyright/license notice headers that spell out copyright holder names and years are hard to maintain and often out-of-date or plain wrong. Precise contributor information is already maintained automatically by the version control tool. Ultimately it is the receiver of a file who is responsible for determining its licensing status, and per-source notices are merely a convenience. Therefore it is simpler and more accurate for each source to have a generic notice of the license name and references to more detailed information on copyright holders and full license terms. Our `Copyright.txt` file now contains a list of Contributors whose names appeared source-level copyright notices. It also references version control history for more precise information. Therefore we no longer need to spell out the list of Contributors in each source file notice. Replace CMake per-source copyright/license notice headers with a short description of the license and links to `Copyright.txt` and online information available from "https://cmake.org/licensing". The online URL also handles cases of modules being copied out of our source into other projects, so we can drop our notices about replacing links with full license text. Run the `Utilities/Scripts/filter-notices.bash` script to perform the majority of the replacements mechanically. Manually fix up shebang lines and trailing newlines in a few files. Manually update the notices in a few files that the script does not handle.
* cmake-mode.el: Replace use of obsolete function (since Emacs 24.3).Jostein Kjønigsen2016-08-011-1/+1
|
* cmake-mode.el: Fix byte-compilation warnings.Jostein Kjønigsen2016-07-261-7/+8
|
* cmake-mode.el: Make cmake-tab-width a customizable variableTaylor Braun-Jones2016-05-101-1/+3
|
* cmake-mode.el: Fix help completion item lists with CMake >= 3.0 (#16019)Julian Schmidt2016-03-161-1/+2
| | | | | | | | | | | | | We run `cmake --help-*-list` to get a list of items for completion. Since CMake < 3.0 always printed "cmake version ..." on the first line of the output we have previously ignored the first line. However, CMake 3.0 and above do not print the version line so we should not ignore the first line or we miss one item. Ideally we should filter the first line out if it is "cmake version ..." in order to support CMake < 3.0 cleanly, but at worst the version line will show up as a completion option so simply including the first line is good enough for now.
* cmake-mode.el: unscreamify symbols instead of wordsKevin Burge2015-10-081-1/+1
| | | | | | | cmake-unscreamify-buffer should unscream more than just words. For example: CHECK_FUNCTION_EXISTS (...)
* cmake-mode.el: treat keywords as symbolsKevin Burge2015-10-081-4/+4
| | | | | | | Symbols such as "CHECK_FUNCTION_EXISTS" should not trigger an open block (due to containing the "word" FUNCTION). Fix this regression caused by commit v3.4.0-rc1~292^2~3 (cmake-mode.el: Use `rx' for regexps, 2015-07-23).
* cmake-mode.el: Refine variable font-lockRoy Crihfield2015-08-141-1/+1
| | | | | Simplify regexp for variable names, and allow more legal characters. Remove `$ *` as legal chars, and allow `- + / .` in names.
* cmake-mode.el: Fix function name font-lockRoy Crihfield2015-08-131-1/+1
| | | | Allow space separating name and opening parenthesis.
* cmake-mode.el: Derive cmake-mode from prog-modeRoy Crihfield2015-07-271-35/+23
| | | | | | Emacs 24 and above support a generic "prog-mode" to simplify definition of programming modes. Derive "cmake-mode" from it since we are a programming mode.
* cmake-mode.el: Add font-lock for keywords and variablesRoy Crihfield2015-07-271-3/+11
| | | | | | Control flow keywords will now be highlighted as such. Variable names will be also be recognized. Adjust function name highlighting to work in places other than the start of a line.
* cmake-mode.el: Rename function to be consistentRoy Crihfield2015-07-271-9/+11
| | | | | | unscreamify-cmake-buffer => cmake-unscreamify-buffer While at it, wrap the operation in (save-excursion).
* cmake-mode.el: Use `rx' for regexpsRoy Crihfield2015-07-271-16/+26
| | | | | This allows the keywords be defined in a list and reused in different regexps.
* cmake-mode.el: Minor clean-upRoy Crihfield2015-07-271-41/+20
| | | | Superficial changes to use more conventional Emacs Lisp idioms.
* cmake-mode.el: Add support for prog-mode hooks (#15521)Jostein Kjønigsen2015-06-231-1/+3
| | | | | | | | | | | | | | | | | Since version 24, Emacs supports a generic mode called prog-mode. Like all other modes it has its own mode-hook, prog-mode-hook. For Emacs users it is common to provide all your generic programming-mode related customizations in this mode-hook. cmake-mode is definitely a programming-mode and should support calling this hook. There are two ways to make that happen: * Make your major-mode a derived-mode from prog-mode. * Manually calling the hook upon mode-activation. Implementing a derived mode may be the most proper thing to do, but that may require quite a few structural changes. For now just call the hook explicitly if it exists. This should cover much of what users need.
* cmake-mode.el: Re-add explicit call to require thingatptPeter Vasil2015-01-191-0/+1
| | | | | | Usually it is not needed to call '(require 'thingatpt')' explicitly because the function 'symbol-at-point' is in autoloaded but to be sure to have the function loaded in every case, require thingatpt.
* cmake-mode.el: Fix extracting keyword at point in cmake-helpPeter Vasil2015-01-191-3/+7
| | | | | | | | Since commit v3.1.0-rc2~1^2~1 (cmake-mode.el: syntax of '_' should be treated as symbol, 2014-11-12) the 'word-at-point' function does not extract the whole keyword anymore if it contains an '_', because 'forward-word' stops at '_'. Use 'symbol-at-point' to extract a whole keyword even if there is an '_'.
* cmake-mode.el: syntax of '_' should be treated as symbolSyohei YOSHIDA2014-11-121-2/+1
| | | | | | | Word commands, such as foward-word(M-f), backward-kill-word(M-backspace), don't work well like other major-modes if syntax of '_' is treated as "word". Tested-by: Guillaume Papin <guillaume.papin@parrot.com>
* cmake-mode.el: Add help for variables/properties/complete. Factorize.Philipp Möller2014-02-131-47/+81
|
* cmake-mode.el: Add the ability to retrieve module help.Philipp Möller2014-02-131-0/+31
|
* cmake-mode.el: Add auto-completion to cmake-help-commandPhilipp Möller2014-01-291-8/+19
|
* cmake-mode.el: Clean up cmake-command-run and add buffername argumentPhilipp Möller2014-01-291-30/+13
|
* cmake-mode.el: Replace 'setq' with 'let' or inliningPhilipp Möller2014-01-281-22/+23
|
* cmake-mode.el: Don't assign to free variable save-pointPhilipp Möller2014-01-281-2/+0
| | | | | | | | | Drop use of the free variable from unscreamify-cmake-buffer. The proper way to do this would be defvar or let, but it is more sensible to drop the feature completely: replace-match will shift the point and the saved-point will be invalid. More careful coding could avoid this, but seems overkill.
* cmake-mode.el: Avoid using beginning-of-bufferPhilipp Möller2014-01-281-1/+1
| | | | | This should not be used from lisp programs. Use the replacement suggested by the doc: (goto-char (point-min))
* cmake-mode.el: Add autoload cookiesYasuyuki Oka2014-01-021-4/+9
|
* cmake-mode.el: Move header line to the top of fileYasuyuki Oka2014-01-021-1/+2
|
* cmake-mode.el: drop reserved keybindings (#14576)Brad King2013-11-181-17/+1
| | | | | | | | | | | | The keybindings added by commit 301e67e3 (cmake-mode.el: add local keybindings, 2012-09-20) overlap the reserved C-c space: http://www.gnu.org/software/emacs/manual/html_node/elisp/Key-Binding-Conventions.html Revert the commit to drop them. Reported-by: Paul Smith <paul@mad-scientist.net> Reviewed-by: Eric NOULARD <eric.noulard@gmail.com>
* Rename Docs to AuxiliaryBrad King2013-10-151-0/+357
The directory contains auxiliary support files for integration with other tools, not documentation.