[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [O] [RFC] Org linting library
From: |
Rainer M Krug |
Subject: |
Re: [O] [RFC] Org linting library |
Date: |
Fri, 05 Jun 2015 12:51:54 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.5 (darwin) |
One more observation:
The link
,----
| [[file:__BOX__/Aerodynamic%20resistances.docx][file:./__BOX__/Aerodynamic
resistances.docx]]
`----
causes the following warnings:
,----
| 9094 low Link to non-existent local file
"__BOX__/Aerodynamic%20resistances.docx"
| 9094 low Link to non-existent local file "./__BOX__/Aerodynamic"
`----
although the file exists and the link works in org.
Cheers,
Rainer
Nicolas Goaziou <address@hidden> writes:
> Hello,
>
> The following library implements linting for Org syntax. The sole public
> function is `org-lint', which see.
>
> Internally, the library defines a new structure: `org-lint-checker',
> with the following slots:
>
> - NAME: Unique check identifier, as a symbol. The check is done
> calling the function `org-lint-NAME' with one mandatory argument,
> the parse tree describing the current Org buffer. Such function
> calls are wrapped within a `save-excursion' and point is always at
> `point-min'. Its return value has to be an alist (POSITION MESSAGE)
> when POSITION refer to the buffer position of the error, as an
> integer, and MESSAGE is a strings describing the error.
>
> - DESCRIPTION: Summary about the check, as a string.
>
> - CATEGORIES: Categories relative to the check, as a list of symbol.
> They are used for filtering when calling `org-lint'. Checkers not
> explicitly associated to a category are collected in the `default'
> one.
>
> - TRUST: The trust level one can have in the check. It is either `low'
> or `high', depending on the heuristics implemented and the nature of
> the check. This has an indicative value only and is displayed along
> reports.
>
> All checks have to be listed in `org-lint--checkers'.
>
> Results are displayed in a special "*Org Lint*" buffer with a dedicated
> major mode, derived from `tabulated-list-mode'. In addition to the usual
> key-bindings inherited from it, "C-j" displays problematic line reported
> under point and "RET" jumps to it.
>
> Checks currently implemented are:
>
> - duplicates CUSTOM_ID properties
> - duplicate NAME values
> - duplicate targets
> - duplicate footnote definitions
> - orphaned affiliated keywords
> - obsolete affiliated keywords
> - missing language in src blocks
> - NAME values with a colon
> - wrong header arguments in src blocks
> - misuse of CATEGORY keyword
> - "coderef" links with unknown destination
> - "custom-id" links with unknown destination
> - "fuzzy" links with unknown destination
> - "id" links with unknown destination
> - links to non-existent local files
> - special properties in properties drawer
> - obsolete syntax for PROPERTIES drawers
> - missing definition for footnote references
> - missing reference for footnote definitions
> - non-footnote definitions in footnote section
> - probable invalid keywords
> - invalid blocks
> - probable incomplete drawers
> - obsolete QUOTE section
>
> Since it relies on lexical binding, `pcase' and `string-prefix-p', it
> cannot be added to Org 8.3, but can make it into Org 8.4, if deemed
> useful enough.
>
> Feedback welcome.
>
>
> Regards,
--
Rainer M. Krug, PhD (Conservation Ecology, SUN), MSc (Conservation Biology,
UCT), Dipl. Phys. (Germany)
Centre of Excellence for Invasion Biology
Stellenbosch University
South Africa
Tel : +33 - (0)9 53 10 27 44
Cell: +33 - (0)6 85 62 59 98
Fax : +33 - (0)9 58 10 27 44
Fax (D): +49 - (0)3 21 21 25 22 44
email: address@hidden
Skype: RMkrug
PGP: 0x0F52F982
signature.asc
Description: PGP signature
- Re: [O] [RFC] Org linting library,
Rainer M Krug <=
- Re: [O] [RFC] Org linting library, Nicolas Goaziou, 2015/06/05
- Re: [O] [RFC] Org linting library, Rainer M Krug, 2015/06/06
- Re: [O] [RFC] Org linting library, Nicolas Goaziou, 2015/06/06
- Re: [O] [RFC] Org linting library, Rainer M Krug, 2015/06/08
- Re: [O] [RFC] Org linting library, Nicolas Goaziou, 2015/06/09
- Re: [O] [RFC] Org linting library, Rainer M Krug, 2015/06/09
- Re: [O] [RFC] Org linting library, Nicolas Goaziou, 2015/06/16