• Stars
    star
    124
  • Rank 282,854 (Top 6 %)
  • Language
    Python
  • Created over 11 years ago
  • Updated 7 months ago

Reviews

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

Repository Details

Plugin for Sublime for inserting unicode math symbols and emoji

UnicodeMath

Package Control Join the chat at https://gitter.im/UnicodeMath/UnicodeMath PayPal Flattr this git repo

Plugin for Sublime for inserting unicode math symbols

Installation

Install via PackageControl or git clone in your Packages directory (Select Preferences โ†’ Browse Packages... to open right packages directory).

Usage

Input

Input backslash and name of unicode symbol (for example \forall) then insert space and text will be automatically converted to โˆ€
To insert space use shift+space
You can disable conversion on space by setting convert_on_space to false.

Emoji

Emoji's names starts with colon (:)

Emoji

Special

There are also special way to convert subscripts and superscripts with several symbols, just input several symbols after \_ or \^:

S\^1+2k โ†’ Sยนโบยฒแต
S\_1+2k โ†’ Sโ‚โ‚Šโ‚‚โ‚–

Script

You can also convert list of chars with special prefix via \\prefix\abc, which will be equivalent to \prefixa \prefixb and \prefixc, for example:

\\Bbb\ABCabc โ†’ ๐”ธ๐”นโ„‚๐•’๐•“๐•”

Hex-code

Hex-code of unicode symbol can be also used in one of these formats:

\u12ba
\U0001d7be
\U+1F1D1

To explicitly convert (or convert back) use commands UnicodeMath: Convert, UnicodeMath: Convert Back, UnicodeMath: Convert Back (Code). Selection convert is also available:

SelectionConvert

To select symbols from list, use command UnicodeMath: Insert

Instant conversion

Instant conversion allows eager conversion of symbols in the following situations:

  1. When \name is typed, there is a symbol called name, and no other symbol starts with name;
  2. When \nameX is typed (for X any character), there is a symbol called name, but none that starts with nameX.

The intent is to remove control keystrokes and get the same result as when typing LaTeX code; for instance typing \delta \subseteq \pi(f) with instant conversion enabled will input ฮด โŠ† ฯ€(f).

When using instant conversion it is recommended to disable accept_prefixes. convert_on_space can also be disabled to make a space after a symbol name use case 2 above instead of activating the conversion command.

Settings

You can add custom symbols into symbol-table in UnicodeMath settings (Preferences โ†’ Package Settings โ†’ UnicodeMath โ†’ Settings โ€” User or command "Preferences: UnicodeMath Settings โ€” User")

(Note: don't use characters fom word_separators, see #19 issue for details)

	"symbols": {
		"mysymbol": "\u0021",
		"myothersymbol": "\u2080",
		"shortcode": "\\u0021", // code within string
		"longcode": "\\U00000021",
		"pluscode": "\\U+12345",
		"manycodes": "\\U+12345\\u0020",
		"codes-and-text": "Foo\\U+12345"
	}

Synonyms for existing symbols can also be set:

	"synonyms": {
		"mys": "mysymbol"
	}

Now \mys will insert the same symbol as \mysymbol.

Disable plugin for specific syntaxes (most common and default is 'latex'):

	"ignore_syntax": ["latex"]

Enable (default) or disable converting hex-codes:

	"convert_codes": true

Enable (default) or disable converting multichar sub- and superscripts:

	"convert_sub_super": true

Enable (default) or disable converting list of chars with prefix:

	"convert_list": true

Enable or disable (default) instant conversion:

	"convert_instantly": true

Enable or disable (default) treating a non-ambiguous prefix of a symbol name as the full name:

	"accept_prefixes": true

Font settings

I prefer using Lucida Sans Unicode, it contains many unicode symbols.

	"font_face": "Lucida Sans Unicode"

I also recommend to set directwrite font option on Windows to allow font-substitution for unknown unicode symbols

	"font_options": ["directwrite"]

Symbols table

You can see all predefined emoji, symbols and synonyms

More Repositories

1

hsdev

Haskell development tool
Haskell
130
star
2

simple-log

Simple logging in Haskell
Haskell
9
star
3

Launchkey-Mini-MK2-for-Bitwig

Launchkey Mini MK2 support for Bitwig Studio
JavaScript
9
star
4

hformat

Simple Haskell formatting
Haskell
5
star
5

hdocs

Haskell docs tool
Haskell
4
star
6

yi-voidex

My config for Yi editor
Haskell
3
star
7

SublimeSelectByRegex

Find and select by regex
Python
3
star
8

carma

custom call center assistance system
JavaScript
2
star
9

atom-haskell-hsdev

haskell hsdev plugin for atom
TypeScript
2
star
10

ngram-index

Simple ngram indexing
Haskell
2
star
11

snaplet-simple-log

Simple log for Haskell in snaplet.
Haskell
2
star
12

postgresql-sync-map

Synchronizing two key-value containers
Haskell
2
star
13

redis2json

Dump redis values by pattern to JSON.
Haskell
2
star
14

text-region

Haskell
2
star
15

data-serialization

Haskell serialization library
Haskell
2
star
16

data-serialization-aeson

Data serialization bindings for Aeson
Haskell
2
star
17

data-serialization-attoparsec

Haskell
2
star
18

hsync

Syncing [git]-changes between two directories (remote or local)
Haskell
1
star
19

carma-sync

Haskell
1
star
20

redis-worker

Write workers using redis as data provider.
Haskell
1
star
21

carma-models

Haskell
1
star
22

carma-sms

SMS posting for carma
Haskell
1
star
23

data-serialization-dictionary

Haskell
1
star
24

neural

Haskell Neural Network library
Haskell
1
star
25

pnganim

Png + JavaScript animation tool
Haskell
1
star
26

vin-upload-server

VIN upload web (Snap) server.
Haskell
1
star
27

data-serialization-postgresql

Haskell
1
star
28

smsdirect

SMSDirect library
Haskell
1
star
29

nurbs

NURBS
Haskell
1
star
30

vin-upload2redis

Upload vin to redis command line tool
Haskell
1
star
31

trainee

Experiments with neural networks on Haskell
Haskell
1
star
32

default-args

Apply default arguments to function/constructor
Haskell
1
star
33

simple-log-syslog

Syslog backend for simple-log
Haskell
1
star