• Stars
    star
    938
  • Rank 48,718 (Top 1.0 %)
  • Language
    Emacs Lisp
  • License
    Other
  • Created over 8 years ago
  • Updated about 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

An emacs starterkit for scientists and engineers

scimax - Awesome editing for scientists and engineers

Scimax is an Emacs starterkit for scientists and engineers. It provides a comprehensive configuration of Emacs for scientific programming and publishing.

See the manual for more details.

NEWS

[2023-05-30 Tue] scimax 3.0

Another 2+ year update :) This release primarily revolves around making scimax brew-installable. See *homebrew for details. This new method installs a command-line utility scimax that will start scimax for you.

There are some newish features. The org-db code has been expanded and includes full-text and image search now. It also provides an org-db-agenda interface. This code is still β€œjust useful enough”; although I use it almost daily, it is still not perfect and has some issues that make it likely I will never separate it from scimax.

scimax now uses emacs-jupyter. See ./scimax-jupyter.org for some examples.

New files include:

./scimax-org-table.el
some convenience functions for tables
./scimax-projectile.el
projectile integration functions
./scimax-org-attachments.el
org-attachment enhancements for scimax
./scimax-slack.el
integration with Slack
./scimax-ob-flycheck.el
integration of flycheck with src blocks (experimental)
./ox-twee2.el
experimental exporter for org to twee (interactive fiction)

A potentially breaking change needed for homebrew integration is that I moved the user directory out of scimax. Scimax now honors the built in way of providing user files, e.g. in .emacs or .emacs.d.

[2021-01-02 Sat] new features

It has been about two years since I noted the last new features. Here are few new features:

  1. org-db - index your org-files into sqlite and then be able to search them
    1. scimax-contacts - an org-db add-on to help you find and use contacts
  2. scimax-editmarks - a new markup for editing org-files and more.
  3. scimax-@-links - use the @ key to easily insert a link from many different sources
  4. scimax-hydra - a leader key like menu to use scimax

[2018-02-28 Wed] scimax 2.0

It is an update of scimax, and the main new features are:

  1. Major overhaul on ipython. See ./scimax-ipython.org.
  2. A dashboard feature: ./scimax-dashboard.el
  3. A new inkscape link: ./scimax-inkscape.el
  4. You can put images on links with images in the description: ./scimax-link-thumbnails.el
  5. Functional text: ./scimax-functional-text.el

And probably more.

Installation

homebrew

Homebrew is now the preferred way to install scimax. It should work on MacOS, Linux and Windows (via WSL). See https://github.com/jkitchin/homebrew-scimax for all the details.

First you should add the tap where the Formula is:

brew tap jkitchin/scimax

Then to install the default version:

brew install scimax

To get the cutting edge files from the git repository use this command.

brew install --head scimax

This will output some text that tells you how to load scimax in your init file. It will be adding something like this to ~/.emacs.d/init.el, or whatever file you use.

(load "/usr/local/opt/scimax/share/emacs/site-lisp/scimax/init.el")

If you install scimax by homebrew, you want some lines like this in your ~/.emacs.d/init.el file:

;; If you want preload variables
(load  "/Users/jkitchin/Dropbox/emacs/user/preload.el")

;; This is what homebrew installed
(load "/usr/local/opt/scimax/share/emacs/site-lisp/scimax/init.el")

;; This points to your user.el file
(load  "/Users/jkitchin/Dropbox/emacs/user/user.el")

archived methods

These probably still work, and of course you can set up scimax by simply cloning the repo and setting up your init file to load the parts of it you want.

Mac users

Run the next command in your terminal in the location you want to install scimax. The command will make sure you have homebrew, git, and emacs installed, and then will clone scimax and tell you how to use it. It will take some time to install. You need to install your own Python and LaTeX. These days I am using Python3 from Continuum IO and MacTeX from http://www.tug.org/mactex.

bash -c "$(curl -fsSL https://raw.githubusercontent.com/jkitchin/scimax/master/install-scimax-mac.sh)"

Alternative manual installation of scimax for Mac users

Alternatively, you can install homebrew yourself, install git from http://git-scm.com/download/mac, build your emacs like this:

brew install emacs --with-gnutls --with-imagemagick --with-librsvg --with-x11 --use-git-head --HEAD --with-cocoa

Alternatively, lately I have been using emacs-plus which claims to be faster for magit and has all those options enabled by default.

brew tap d12frosted/emacs-plus
brew install emacs-plus

This got me:

(emacs-version)

After that, I clone scimax like this:

git clone https://github.com/jkitchin/scimax.git

and launch emacs with:

emacs -q -l scimax/init.el

Note that scimax no longer loads your user files like it did before. You will need to add some lines to an init file to do this.

Linux users

Run this command. It checks for a git and emacs, but does not install them. You will have to use your package manager for that. You also need to install your own LaTeX and Python (and other languages you might want).

bash -c "$(curl -fsSL https://raw.githubusercontent.com/jkitchin/scimax/master/install-scimax-linux.sh)"

Windows users

Windows has always been the most difficult installation target, and it is the least maintained.

Install git (http://git-scm.com/download/win). Open a git bash terminal. Run this command.

bash -c "$(curl -fsSL https://raw.githubusercontent.com/jkitchin/scimax/master/install-scimax-win.sh)"

There is an emacs 25.2 binary in this repository for Windows. You should be able to run the scimax.sh command to launch scimax now.

Manual installation

You can use your own emacs if you have one (version 27 or more is recommended). You still have to install Python and LaTeX if you will be using those.

Clone the scimax repo where you want it.

git clone https://github.com/jkitchin/scimax.git

and launch emacs with:

emacs -q -l path/to/scimax/init.el

Alternatively, add scimax to your load path in your init file and just require what you want.

(setq scimax-dir "path/to/scimax")
(add-to-list 'load-path "path/to/scimax")

It is not uncommon to have to restart emacs a few times while all the packages from MELPA are installed. Windows seems to be like that.

Funding for scimax

scimax development has been partially supported by the following grants:

More Repositories

1

org-ref

org-mode modules for citations, cross-references, bibliographies in org-mode and useful bibtex tools to go with it.
Emacs Lisp
1,292
star
2

dft-book

A book on modeling materials using VASP, ase and vasp
Python
302
star
3

pycse

Python computations in science and engineering
HTML
225
star
4

jmax

Johns customizations to maximize emacs
Emacs Lisp
184
star
5

ox-ipynb

org-mode exporter to Jupyter notebooks
Jupyter Notebook
150
star
6

vasp

New ASE compliant Python interface to VASP
Python
109
star
7

emacs-modules

Dynamic modules for emacs
C
72
star
8

ox-clip

Copy formatted content from org-mode
Emacs Lisp
57
star
9

ov-highlight

A persistent highlighter for Emacs
Emacs Lisp
53
star
10

org-ref-cite

An org-cite processor that is like org-ref.
Emacs Lisp
42
star
11

magit-tutorial

37
star
12

dft-book-espresso

New version of dft-book for Quantum Espresso
Jupyter Notebook
32
star
13

jasp

python enhancements of ase.calculators.vasp
Python
27
star
14

dft-course

Course repository for 06-640 - Molecular simulation
Emacs Lisp
25
star
15

matlab-cmu

+cmu matlab package for units and other useful things.
MATLAB
23
star
16

python-reaxff

python wrappers for generating training files for the ReaxFF code
Python
21
star
17

scipy2013

19
star
18

f18-06623

Fall 2018 - Mathematical Modeling of Chemical Engineering Processes
Jupyter Notebook
19
star
19

techela-emacs

Technology enhanced learning and assessment
Emacs Lisp
17
star
20

s20-06681

Data science and machine learning in chemical engineering
Jupyter Notebook
12
star
21

s17-06364

Spring 2017 Chemical and Reaction Engineering
Jupyter Notebook
11
star
22

surfaces-book

Book for a course in surface science
11
star
23

devcontainer

Python package for using devcontainers locally
Python
10
star
24

python-atat

Python wrappers for the Alloy Theoretic Automated Toolkit
Python
9
star
25

htp

high-throughput tools for python - ssh and rsync
Python
8
star
26

matlab-wordpress

Matlab module for publishing m-files to a Wordpress blog
Objective-C
8
star
27

jkitchin.github.com

my blog
HTML
8
star
28

f15-06625

06-625 Chemical and Reactive Systems
Emacs Lisp
7
star
29

f19-06623

Course repository for 06-623
Jupyter Notebook
7
star
30

python-torque

My python module wrapping the Torque queue system
Python
6
star
31

f21-06623

Fall 2021 Mathematical Modeling of Chemical Engineering Processes
Jupyter Notebook
5
star
32

f16-06625

Chemical and Reactive Systems for Fall 2016
TeX
5
star
33

co2rr-rev

Reviewing the CO2RR literature
JavaScript
4
star
34

s22-06681

Course materials for data visualization and modeling
Jupyter Notebook
4
star
35

hyve

My Hy code
Hy
4
star
36

techela

Techela in a Flask
JavaScript
4
star
37

scipy-conference

talks I have given at the SciPy conference
3
star
38

sse

Jupyter Notebook
2
star
39

codespace

EJS
2
star
40

elpa

ELPA repository for my emacs packages
2
star
41

csearch

search utilities for Google colab
Jupyter Notebook
2
star
42

scimax-channel

See https://www.youtube.com/playlist?list=PL0sMmOaE_gs3E0OjExoI7vlCAVygj6S4I
TeX
2
star
43

expert-chainsaw

Shell
2
star
44

emacs-win

An emacs distribution for use with jmax
Emacs Lisp
2
star
45

dsmles

Jupyter Notebook
2
star
46

box-course

Python wrappers for the box.com v2 API
Python
1
star
47

texmf

LaTeX packages for writing scientific articles
1
star
48

jupyter-pycse

Jupyter Notebook
1
star
49

homebrew-scimax

A Tap for installing scimax via homebrew
Ruby
1
star
50

s23-example

1
star
51

scimax-win-elpa

Preinstalled elpa packages specifically for scimax on Windows
Emacs Lisp
1
star
52

claude-light-python

Python interface to Claude Light
Jupyter Notebook
1
star