Automated notion clustering for the knowledge LaTeX package
Project description
Knowledge-Clustering
Clustering notions for the knowledge LaTeX package.
Maintainers:
- Rémi Morvan
- Thomas Colcombet
Principle
The goal of Knowledge-Clustering is, when using the knowledge package to automatically provide suggestions to the user of what notions should be grouped together.
Using Knowledge-Clustering
Input
Knowledge-Clustering takes two input files: one file <file_notion> in which you are storing your knowledges (these
corresponds to the tex
files in the folder examples
), and a file <file_diagnose> produced by
the knowledge package (files with diagnose
extension).
Syntax
The syntax is the following: ./knowledge.py -n <file_notion> -d <file_diagnose> [options]
.
At any time, you can display the help using ./knowledge.py --help
.
Output
Knowledge-Clustering writes its output directly in the <file_notion> as comments. If the user accepts the suggestion, she can simply uncomment the line. Otherwise, she must remove the line and define the notion manually.
Examples
You can run knowledge.py
on the examples provided.
The file examples/small.tex
says to Knowledge-Clustering that the following notions are already defined
\knowledge{notion}
| word
\knowledge{notion}
| regular language
| recognisable language
\knowledge{notion}
| monoid
Moreover, from the file examples/small.diagnose
indicates that four unknown knowledges where found when compiling some
LaTeX document: "monoids", "semigroup", "words" and "semigroups".
After running ./knowledge.py -n examples/small.tex -d examples/small.diagnose
, the file examples/small.tex
now
contains:
\knowledge{notion}
| word
% | words
\knowledge{notion}
| regular language
| recognisable language
\knowledge{notion}
| monoid
% | monoids
%%%%% NEW KNOWLEDGES
%
%\knowledge{notion}
% | semigroups
% | semigroup
which means that it is suggested to the user to put "words" together with the (already known) knowledge "word@ord", to put "monoids" with "monoid", and to define a new notion containing "semigroup" and "semigroups".
You can also run Knowledge-Clustering on an empty notion file and a (possibly) huge diagnose file.
An example is provided in examples/big.tex
(which is empty) and examples/big.diagnose
(which contains 181 undefined knowledges).
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for knowledge-clustering-0.1.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 781f18b9579f2fcc2d8120ae4c889b747dd8dab5e073b440fc7bf5fc2839fb46 |
|
MD5 | 4e26a1c44a9b19ed0afcd9c3e2a605e7 |
|
BLAKE2b-256 | 4371e63b84e1cf54df0679091c77e8fd425e327f2347862f5859f922ec2ff196 |
Hashes for knowledge_clustering-0.1.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1f34fd7eae0f8b76408c957e7c0f74cec8a08c201115824d313035d329ea88e5 |
|
MD5 | 11d39a5d240434eb6693fa0dc1d72ffb |
|
BLAKE2b-256 | 3cb34e5d89a18ca220bf72a7fb8bbe15d8003d56d571112ea97b1154b9164921 |