Skip to main content

Fetches publications from HAL

Project description

Lektor-HAL

A plugin for Lektor that uses the HAL API to easily maintain an up-to-date list of publications on a static website.

HAL is an open archive where authors can deposit scholarly documents from all academic fields.

Configuration

Add lektor-hal to the [packages] section of your .lektorproject file.

In ./configs/hal.ini, the query field must be specified, following to the HAL docs

Example:

query = ((authIdHal_s:my-id-hal) OR (authFullName_s:"My Name"))

Usage

Example

<ul class="publications" id="publications">
  {% for publi in hal_publications %}
  <li>
    <a href={{ publi.link }}>{{ publi.title }}</a>
    @
    {{ publi.where }} -
    {{ publi.authors|join(', ') }}
    ({{ publi.date }})
  </li>
  {% endfor %}
</ul>

Two global variables are available in your jinja template, hal_publications and hal_request.

hal_publications

A list of Publications, a dataclass with the following attributes:

  • raw: A dict containing everything about this publication returned by the HAL API.
  • title: The title of the publication
  • hal_id: The HAL ID of the publication
  • authors: A list of strings (author names)
  • date: A string (producedDate_s)
  • type: The publication type, eg "ART", "COMM", "POSTER", etc/

and properties:

  • link: URL pointing to the HAL resource
  • where: returns where the article was published (journalTitle_s or conferenceTitle_s if missing)

hal_request

URL used for the HAL API request.

Known caveat

Lektor will not 'know' that the page must be rebuilt when new entries are returned by the HAL API request. As a workaround, the plugin allows to mark any page as "dirty", so it is rebuilt everytime. Add this to the template that uses the publications list:

{{ volatile() }}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

lektor-hal-0.1.2.tar.gz (3.1 kB view hashes)

Uploaded Source

Built Distribution

lektor_hal-0.1.2-py3-none-any.whl (3.4 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page