Browse Dash docsets inside emacs

Overview

Helm Dash

Build Status Coverage Status MELPA MELPA Stable Tag Version License

What's it

This package uses Dash docsets inside emacs to browse documentation. Here's an article explaining the basic usage of it.

It doesn't require Dash app.

What's not

If you're looking for dash.el, the list library, please go to dash.el

Requirements

Installation

It's available on MELPA.

Now, it's possible to choose between install the stable or development version of helm-dash. Here there is an explanation about stable packages and MELPA and here a list of our tags.

m-x package-install helm-dash RET

Installing docsets

Helm-dash uses the same docsets as Dash. You can install them with m-x helm-dash-install-docset for the official docsets or m-x helm-dash-install-user-docset for user contributed docsets (experimental).

To install a docset from a file in your drive you can use m-x helm-dash-install-docset-from-file'. That function takes as input a tgzfile that you obtained, starting from a folder named.docset`, with the command:

tar --exclude='.DS_Store' -cvzf .tgz .docset

as explained here.

Usage

m-x helm-dash RET will run helm with your active docsets loaded. Typing substrings of what you search will find-as-you-type.

  • The search starts from 3 chars.
  • Install new docsets with m-x helm-dash-install-docset
  • After installing a new docset, add the name of the docset to `helm-dash-common-docsets' or in 'helm-dash-docsets' (which is ment to be buffer local)

m-x helm-dash-at-point RET is like helm-dash, but it will prefill the search input with the symbol at point.

The command helm-dash-reset-connections will clear the connections to all sqlite db's. Use it in case of errors when adding new docsets. The next call to helm-dash will recreate them.

Variables to customize

helm-dash-docsets-path is the prefix for your docsets. Defaults to ~/.docsets

helm-dash-min-length tells helm-dash from which length to start searching. Defaults to 3.

helm-dash-browser-func is a function to encapsulate the way to browse Dash' docsets. Defaults to browse-url. For example, if you want to use eww to browse your docsets, you can do: (setq helm-dash-browser-func 'eww).

When helm-dash-enable-debugging is non-nil stderr from sqlite queries is captured and displayed in a buffer. The default value is t. Setting this to nil may speed up queries on some machines (capturing stderr requires the creation and deletion of a temporary file for each query).

Sets of Docsets

Common docsets

`helm-dash-common-docsets' is a list that should contain the docsets to be active always. In all buffers.

Buffer local docsets

Different subsets of docsets can be activated depending on the buffer. For the moment (it may change in the future) we decided it's a plain local variable you should setup for every different filetype. This way you can also do fancier things like project-wise docsets sets.

(defun go-doc ()
  (interactive)
  (setq-local dash-docs-docsets '("Go")))

(add-hook 'go-mode-hook 'go-doc)

Only one docset

To narrow the search to just one docset, type its name in the beginning of the search followed by a space. If the docset contains spaces, no problemo, we handle it :D.

FAQ

  • Does it work in osX?

sqlite queries. Provisionally, we're executing shell-commands directly. Our idea is come back to use esqlite when some issues will be fixed.

helm-dash has been tested only in linux. We've been notified that it doesn't work in Mac, so we ask for elisp hackers who own something that runs Mac OSX if they could take a look at it.

Hints: It looks like something with 'end of line' differences. The suspicious are esqlite (which helm-dash requires) or pcsv (which esqlite requires)

  • I'm using mac osx and pages open but not in the correct anchor

bug on mac osx's browse-url which can't open urls with #. If you find this issue, and want to debug, great, otherwise, you can use eww or w3 or w3m which will work just fine

  • I get nil for every search I do

make sure you don't have sqlite3 .mode column but .mode list (the default). check your .sqliterc

  • When selecting an item in helm-dash, no browser lookup occurs with firefox >= 38.0.and emacs >= 24.4

try:

(setq browse-url-browser-function 'browse-url-generic
      browse-url-generic-program "/path/to/firefox")
(setq helm-dash-browser-func 'browse-url-generic)

Contribution

We feedback, issues or pull requests. Feel free to contribute in helm-dash.

We're trying to add tests to the project, if you send a PR please consider add new or update the existing ones.

Install Cask if you haven't already, then:

$ cd /path/to/helm-dash
$ cask

Run all tests with:

$ make

Authors

Handout for the tutorial "Creating publication-quality figures with matplotlib"

Handout for the tutorial "Creating publication-quality figures with matplotlib"

JB Mouret 1.9k Jan 02, 2023
A minimal Python package that produces slice plots through h5m DAGMC geometry files

A minimal Python package that produces slice plots through h5m DAGMC geometry files Installation pip install dagmc_geometry_slice_plotter Python API U

Fusion Energy 4 Dec 02, 2022
The Timescale NFT Starter Kit is a step-by-step guide to get up and running with collecting, storing, analyzing and visualizing NFT data from OpenSea, using PostgreSQL and TimescaleDB.

Timescale NFT Starter Kit The Timescale NFT Starter Kit is a step-by-step guide to get up and running with collecting, storing, analyzing and visualiz

Timescale 102 Dec 24, 2022
An application that allows you to design and test your own stock trading algorithms in an attempt to beat the market.

StockBot is a Python application for designing and testing your own daily stock trading algorithms. Installation Use the

Ryan Cullen 280 Dec 19, 2022
A tool to plot and execute Rossmos's Formula, that helps to catch serial criminals using mathematics

Rossmo Plotter A tool to plot and execute Rossmos's Formula using python, that helps to catch serial criminals using mathematics Author: Amlan Saha Ku

Amlan Saha Kundu 3 Aug 29, 2022
Keir&'s Visualizing Data on Life Expectancy

Keir's Visualizing Data on Life Expectancy Below is information on life expectancy in the United States from 1900-2017. You will also find information

9 Jun 06, 2022
Interactive Data Visualization in the browser, from Python

Bokeh is an interactive visualization library for modern web browsers. It provides elegant, concise construction of versatile graphics, and affords hi

Bokeh 17.1k Dec 31, 2022
A shimmer pre-load component for Plotly Dash

dash-loading-shimmer A shimmer pre-load component for Plotly Dash Installation Get it with pip: pip install dash-loading-extras Or maybe you prefer Pi

Lucas Durand 4 Oct 12, 2022
Learning Convolutional Neural Networks with Interactive Visualization.

CNN Explainer An interactive visualization system designed to help non-experts learn about Convolutional Neural Networks (CNNs) For more information,

Polo Club of Data Science 6.3k Jan 01, 2023
This is a small repository for me to implement my simply Data Visualisation skills through Python.

Data Visualisations This is a small repository for me to implement my simply Data Visualisation skills through Python. Steam Population Chart from 10/

9 Dec 31, 2021
Python Data. Leaflet.js Maps.

folium Python Data, Leaflet.js Maps folium builds on the data wrangling strengths of the Python ecosystem and the mapping strengths of the Leaflet.js

6k Jan 02, 2023
Render Jupyter notebook in the terminal

jut - JUpyter notebook Terminal viewer. The command line tool view the IPython/Jupyter notebook in the terminal. Install pip install jut Usage $jut --

Kracekumar 169 Dec 27, 2022
Python code for solving 3D structural problems using the finite element method

3DFEM Python 3D finite element code This python code allows for solving 3D structural problems using the finite element method. New features will be a

Rémi Capillon 6 Sep 29, 2022
Visualizing weather changes across the world using third party APIs and Python.

WEATHER FORECASTING ACROSS THE WORLD Overview Python scripts were created to visualize the weather for over 500 cities across the world at varying di

G Johnson 0 Jun 12, 2021
Productivity Tools for Plotly + Pandas

Cufflinks This library binds the power of plotly with the flexibility of pandas for easy plotting. This library is available on https://github.com/san

Jorge Santos 2.7k Dec 30, 2022
Bokeh Plotting Backend for Pandas and GeoPandas

Pandas-Bokeh provides a Bokeh plotting backend for Pandas, GeoPandas and Pyspark DataFrames, similar to the already existing Visualization feature of

Patrik Hlobil 822 Jan 07, 2023
A Python package that provides evaluation and visualization tools for the DexYCB dataset

DexYCB Toolkit DexYCB Toolkit is a Python package that provides evaluation and visualization tools for the DexYCB dataset. The dataset and results wer

NVIDIA Research Projects 107 Dec 26, 2022
A Python Binder that merge 2 files with any extension by creating a new python file and compiling it to exe which runs both payloads.

Update ! ANONFILE MIGHT NOT WORK ! About A Python Binder that merge 2 files with any extension by creating a new python file and compiling it to exe w

Vesper 15 Oct 12, 2022
Create artistic visualisations with your exercise data (Python version)

strava_py Create artistic visualisations with your exercise data (Python version). This is a port of the R strava package to Python. Examples Facets A

Marcus Volz 53 Dec 28, 2022
a python function to plot a geopandas dataframe

Pretty GeoDataFrame A minimum python function (~60 lines) to draw pretty geodataframe. Based on matplotlib, shapely, descartes. Installation just use

haoming 27 Dec 05, 2022