Soonho Kong
3d79f89f5e
fix(emacs/lean-mode): lean-execute
...
shell-quote-argument also escapes '~' into '\~' which causes a problem.
This fix first calls 'f-full' to get a absolute path, then call
shell-quote-argument.
close #544
2015-04-16 19:27:42 -04:00
Soonho Kong
20b594e1cd
fix(emacs/lean-mode.el): use 'shell-quote-argument' in lean-execute
...
close #544
2015-04-13 14:19:39 +01:00
Leonardo de Moura
2bc13f6bfd
feat(library/tactic/exact): enforce goal type during elaboration when executing 'exact' tactic
...
Remark: this was the behavior of the 'sexact' tactic.
This commit also adds the 'rexact' (relaxed exact) tactic which does not
enforce the goal type.
closes #495
2015-04-06 13:23:38 -07:00
Leonardo de Moura
d731a4ab13
feat(library/normalize): add '[unfold-f]' hint
...
closes #497
2015-04-05 03:00:13 -07:00
Soonho Kong
1f20fb6e9e
feat(emacs/lean-input): add not(¬) and iff(↔)
...
close leanprover/tutorial#81
2015-04-02 22:13:01 -04:00
Soonho Kong
7c5339d64e
fix(CMakeLists.txt): quote CMake variables
...
close #513
2015-03-28 22:38:11 -04:00
Soonho Kong
7c9b364957
fix(emacs/lean-info): lean-info-list-parse
...
close #302
2015-03-27 11:37:47 -04:00
Soonho Kong
5c1d7458b5
fix(emacs/lean-input): fix input-method.js format
...
[skip ci]
2015-03-26 14:41:45 -04:00
Soonho Kong
c8e1ed9551
feat(emacs/lean-input): add lean-input-export-translations-to-stdout
2015-03-26 12:55:01 -04:00
Leonardo de Moura
0c3fd7427e
feat(frontends/lean): add syntax-sugar for fold
...
closes #503
2015-03-25 18:25:48 -07:00
Leonardo de Moura
b9e3c474c9
feat(library/tactic): add all_goals tactic
...
closes #501
2015-03-25 17:42:34 -07:00
Soonho Kong
4c434f4c02
fix(emacs/lean-info): extract proofstate info by using pos of ","
...
fix #302
2015-03-25 12:36:15 -04:00
Soonho Kong
ca81e9bee2
fix(emacs/lean-mode): add 'display-buffer' at the end of lean-exec-at-pos
2015-03-25 08:35:02 -04:00
Soonho Kong
69d1cfdd52
feat(emacs/lean-mode): add lean-exec-at-pos and lean-define-key-binding
...
Example Usage: add the following in your emacs configuration
(add-hook 'lean-mode-hook '(lambda ()
(lean-define-key-binding "\C-c\C-g"
'(lean-exec-at-pos "lean-goal" "*Lean Goal*" "--goal"))))
close #499
2015-03-24 14:57:49 -04:00
Leonardo de Moura
9b577a7b3e
feat(frontends/lean): add 'migrate' command
2015-03-14 21:48:00 -07:00
Leonardo de Moura
28487ede3b
feat(frontends/lean/decl_cmds): allow 'empty' set of pattern matching equations
2015-03-05 14:37:29 -08:00
Soonho Kong
87c236613a
feat(emacs/lean-mode.el): add configuration menu-item for flycheck
...
close #451
2015-03-05 14:42:59 -05:00
Soonho Kong
b7c852a5c8
feat(src/lean-mode.el): add 'configuration' menu and add toggle option for 'Show type at point'
...
close #456
2015-03-05 14:37:44 -05:00
Leonardo de Moura
abd238aef0
feat(*): add [quasireducible] attribute
2015-03-04 22:12:49 -08:00
Soonho Kong
8265729a82
fix(emacs/README.md): wrong quotation mark
...
[skip ci]
2015-03-04 17:04:39 -05:00
Floris van Doorn
3d7656078d
feat(hott/types): prove that 'is_equiv f' is an hprop
2015-03-04 00:22:51 -05:00
Floris van Doorn
704f2b2697
feat(hott/algebra/category): prove that set is a univalent category assuming is_equiv is an hprop
2015-03-04 00:22:41 -05:00
Leonardo de Moura
11aad4449b
feat(frontends/lean): add '[semireducible]' attribute
...
This commit also renames the elements of reducible_status.
The idea is to use in the C++ implementation the same names used in the
Lean front-end.
2015-03-03 10:48:36 -08:00
Leonardo de Moura
ca57b43698
feat(library/tactic): add 'change' tactic
2015-03-01 14:15:39 -08:00
Floris van Doorn
23a248ab28
style(hott): let inverse notation have higher binding power than application
2015-02-28 01:16:23 -05:00
Soonho Kong
05cfb21c4c
fix(emacs/lean-server.el): split findp info only up-to 1
...
close #446
2015-02-27 20:04:13 -05:00
Soonho Kong
c9ffc2fec8
fix(emacs/lean-util): add hlean support in lean-path-list
...
close #450
2015-02-27 15:27:18 -05:00
Floris van Doorn
c091acc55b
feat(hott): remove funext as type class, add theorems to prove equalities between functors and natural transformations
2015-02-26 12:52:33 -05:00
Soonho Kong
88e287df5a
doc(emacs/README.md): add instructions for unicode-fonts package
...
related issue: #446
2015-02-26 05:09:40 -05:00
Leonardo de Moura
c04c610b7b
feat(frontends/lean): add 'assert H : A, ...' as notation for 'have H [visible] : A, ...'
2015-02-25 14:30:42 -08:00
Soonho Kong
db1fba3ddc
fix(emacs/lean-server.el): lean-server-trace-buffer-name was changed to a function
2015-02-25 14:21:23 -05:00
Leonardo de Moura
21e972e34a
fix(emacs/lean-syntax): syntax-highlight problem in tactics
2015-02-24 11:57:34 -08:00
Soonho Kong
8b8267c7ce
feat(emacs/lean-company.el): show meta and annotation for auto-complete options
...
close #435
2015-02-13 19:41:42 -05:00
Soonho Kong
382bf860fd
fix(emacs/lean-company): import auto-completion for .hlean files
...
fix #434
2015-02-13 19:41:42 -05:00
Soonho Kong
a791953705
chore(emacs/lean-server): make lean-server-restart-all-processes interactive
2015-02-13 19:41:41 -05:00
Soonho Kong
6bcd1a9980
feat(emacs/lean-server): add support for hlean/standard minor-mode
...
Related issue: #389 , #398 , #400 , #428
2015-02-13 19:41:41 -05:00
Soonho Kong
46d99c8077
chore(emacs): move lean-choose-minor-mode-based-on-extension to lean-util.el
2015-02-13 19:41:41 -05:00
Soonho Kong
dcee8ddb1f
feat(emacs/lean-mode): add Standard/HoTT minor modes for lean-mode
2015-02-13 19:41:41 -05:00
Jeremy Avigad
7d60213d9a
fix(src/emacs/lean-syntax.el): add syntax highlighting for [abbreviations]
2015-02-11 22:09:25 -05:00
Leonardo de Moura
8ffadce4ab
feat(frontends/lean): add "premise" and "premises" command
...
It is just an alternative notation for "variable" and "variables"
closes #429
2015-02-11 18:46:03 -08:00
Leonardo de Moura
93f04f3034
feat(emacs): update syntax highlight
2015-02-11 10:35:38 -08:00
Leonardo de Moura
373d4ca4c6
feat(emacs/lean-syntax): highlight 'abbreviation' command
2015-02-10 18:22:03 -08:00
Leonardo de Moura
c04c0e8381
refactor(*): remove transparent_scope hack, replace [strict] with [all-transparent] annotation
2015-02-07 15:19:41 -08:00
Leonardo de Moura
5b25da8c43
feat(frontends/lean): add esimp tactic based on rewrite tactic
...
closes #358
2015-02-06 14:13:32 -08:00
Leonardo de Moura
979d6494e9
feat(emacs/lean-syntax): add syntax-highlight for unfold-c hint attribute
2015-02-06 12:57:11 -08:00
Leonardo de Moura
c845e44777
feat(frontends/lean): parse rewrite tactic
2015-02-04 11:51:39 -08:00
Jeremy Avigad
dc7b432482
feat(src/emacs/README.md): tell user that packages will be installed automatically. Closes #423 .
2015-02-03 13:50:59 -08:00
Jeremy Avigad
875869fdbc
fix(src/emacs/README.md): make minor grammatical corrections
2015-02-03 13:50:59 -08:00
Leonardo de Moura
27741e4fd7
chore(CMakeLists.txt): move Lean logo to make sure we can test leanemacs without installing Lean
2015-01-31 17:38:49 -08:00
Leonardo de Moura
fbb543fdcf
feat(CMakeLists.txt): add alternative image formats
2015-01-30 14:26:46 -08:00
Soonho Kong
7bed63a03e
doc(emacs/README.md): fix typos
...
[skip ci]
2015-01-30 16:10:21 -05:00
Leonardo de Moura
c8cb9aa3d2
fix(emacs/load-lean): typo
2015-01-30 13:05:30 -08:00
Leonardo de Moura
9910547913
feat(emacs): add script for loading lean mode and its dependencies
2015-01-30 13:05:30 -08:00
Leonardo de Moura
a57251913a
feat(emacs): assume lua-mode and mmm-mode are available
2015-01-30 13:05:30 -08:00
Soonho Kong
d98f04fd3a
chore(emacs/README.md): add numbering on configuration
...
[skip ci]
2015-01-30 03:08:11 -05:00
Soonho Kong
04249a292c
feat(emacs/README.md): add per-installation-method configurations
2015-01-30 03:05:35 -05:00
Soonho Kong
ce0aed12ec
fix(emacs/Cask): add GNU package repository
...
Related issue #410
2015-01-30 02:52:55 -05:00
Soonho Kong
d69505a092
doc(emacs/README.md): add GNU package repository
...
flycheck uses let-alist package which is in GNU repository. @awody reported a problem and I hope that this can help (I'll test it later).
Reference: https://github.com/flycheck/flycheck/issues/551
Related issue: #410
2015-01-30 02:52:05 -05:00
Leonardo de Moura
e2c41fca75
feat(frontends/lean): modify syntax for local notation
...
The idea is to make it uniform with the syntax for defining local
attributes.
2015-01-26 11:51:17 -08:00
Leonardo de Moura
b4d6f6e3ed
feat(frontends/lean): 'attribute' command is persistent by default
2015-01-26 11:51:17 -08:00
Leonardo de Moura
4f2e0c6d7f
refactor(frontends/lean): add 'attribute' command
...
The new command provides a uniform way to set declaration attributes.
It replaces the commands: class, instance, coercion, multiple_instances,
reducible, irreducible
2015-01-24 20:23:21 -08:00
Soonho Kong
901c9bf67a
refactor: rename ltags => leantags
...
fix #394
2015-01-18 13:44:41 +09:00
Leonardo de Moura
30817aa2b1
feat(emacs): allow user to provide extra commands to lean-server
2015-01-15 16:54:55 -08:00
Leonardo de Moura
b172229a72
feat(frontends/lean): add 'match' expressions
...
We reuse the equations infrastructure to compile them.
2015-01-10 10:11:13 -08:00
Soonho Kong
f370871574
fix(emacs/lean-syntax): highlight axioms
...
fix #382
2014-12-30 14:25:19 -05:00
Leonardo de Moura
d2958044fd
feat(frontends/lean): add multiple_instances command
...
After this commit, Lean "cuts" the search after the first instance is
computed. To obtain the previous behavior, we must use the new command
multiple_instances <class-name>
closes #370
2014-12-21 17:28:44 -08:00
Leonardo de Moura
6f78315aa4
refactor(*): add uniform names for "meta-objects"
2014-12-17 11:42:14 -08:00
Leonardo de Moura
d09bc95eaf
feat(emacs): add Type0 highlight
2014-12-05 22:14:28 -08:00
Leonardo de Moura
71e1555eb4
feat(emacs): use lean-mode for .hlean
2014-12-05 14:33:22 -08:00
Leonardo de Moura
e868ecce36
feat(frontends/lean): parse recursive equations
2014-12-04 17:03:21 -08:00
Leonardo de Moura
0f854f592c
fix(emacs): disable abbreviation mode that was expanding "def" into "definition"
2014-12-03 17:24:29 -08:00
Leonardo de Moura
8dfd22e66c
feat(frontends/lean): add 'prelude' command, and init directory
2014-11-30 17:03:08 -08:00
Leonardo de Moura
c08f4672e4
feat(library/tactic): add 'assert' tactic, closes #349
2014-11-29 21:34:49 -08:00
Leonardo de Moura
f51fa93292
feat(library/tactic): add 'fapply' tactic, closes #356
2014-11-29 19:20:41 -08:00
Leonardo de Moura
ad0dfb4c64
fix(emacs): syntax highlight for 'cases ... with ...'
2014-11-28 22:41:46 -08:00
Leonardo de Moura
c2602baf2b
feat(library/tools/tactic): add 'cases' alias for 'inversion' tactic
2014-11-28 19:33:11 -08:00
Leonardo de Moura
f8fa9f3344
feat(emacs): highlight 'inversion' tactic
2014-11-27 10:26:32 -08:00
Leonardo de Moura
4bee7554a3
chore(lean-mode): remove 'annoying' abbreviations
2014-11-26 14:50:26 -08:00
Leonardo de Moura
63eafaae9a
feat(emacs): add syntax-highlight for clear and revert tactics
2014-11-26 14:33:28 -08:00
Leonardo de Moura
ea63136434
fix(src/emacs/lean-flycheck): do not report 'sorry' warnings to flycheck, this is a temporary workaround since there is an overlap between flycheck and lean-mode type info
2014-11-26 09:35:22 -08:00
Leonardo de Moura
a005c8f4d0
feat(frontends/lean): display eval/check/find_decl results using flycheck
2014-11-24 08:35:49 -08:00
Soonho Kong
fe638f0ee7
fix(emacs/lean-flycheck): fix bug in advice for lean-flycheck-try-parse-error-with-pattern
...
I provided an "advice" for 'flycheck-try-parse-error-with-pattern'
function to change its behavior, namely to increase error-columns by
one.
Bug
===
The problem is that it doesn't consider the case where the pattern is
not matched and ends up with "err = nil". For this case,
"(flycheck-error-column err)" generates an exception if executed. The
whole error parsing process stops immediately.
This causes a problem when we have more than one error-patterns, which
is the case when we enable 'error' and 'warning' patterns.
Fix
===
Fix is simple: check err before executing (flycheck-error-column err)
- (col (flycheck-error-column err)))
+ (col (and err (flycheck-error-column err))))
2014-11-24 05:06:51 -05:00
Leonardo de Moura
f1e915a188
feat(frontends/lean): add 'find_decl' command
2014-11-23 23:00:59 -08:00
Leonardo de Moura
13fba433b0
feat(library/tactic/generalize): add 'generalizes' syntax sugar, closes #327
2014-11-23 17:30:22 -08:00
Leonardo de Moura
47b6cfb28d
feat(library/logic/if): add dependent if-then-else: dite
2014-11-22 09:56:32 -08:00
Leonardo de Moura
28c63e685b
feat(frontends/lean): add '[local]' notation, closes #322
2014-11-16 21:15:04 -08:00
Leonardo de Moura
50973bb4f3
feat(frontends/lean): default 'eval' command ignores opaque/irreducible annotations
...
To retrieve the previous behavior, we should use [strict] modifier
2014-11-10 12:46:04 -08:00
Leonardo de Moura
bd5f3ec572
feat(emacs/lean-syntax): highlight [decls] modifier
2014-11-10 10:35:42 -08:00
Soonho Kong
d25e74b921
fix(emacs/lean-mode): remove whitespace-cleanup-mode dependency
...
- When customization variable 'lean-delete-trailing-whitespace' is
non-nil, trailing-whitespaces are removed before save.
- It doesn't change TABs.
Close #226
2014-11-09 00:21:43 -05:00
Soonho Kong
36476b9115
fix(lean-util): handle case where incomplete hierarchical name ends with "."
...
Close #311
2014-11-08 23:46:59 -05:00
Leonardo de Moura
c7992f2cac
feat(frontends/lean): add [whnf] modifier to eval command
2014-11-08 10:19:29 -08:00
Soonho Kong
d861c78072
fix(emacs/lean-syntax): change comment symbols to be considered as punctuations
...
Please read the documentation of "modify-syntax-entry":
"The first character of NEWENTRY should be one of the following:
_ symbol constituent
. punctuation
"
Close : #306
2014-11-07 17:48:21 -05:00
Soonho Kong
18a41eb962
feat(emacs/lean-mode): bind "C-c C-k" to quail-show-key
...
- Use this to see how to type a unicode character
2014-11-07 17:28:21 -05:00
Leonardo de Moura
85d0521d48
feat(frontends/lean): add '[parsing-only]' modifier to notation declarations, closes #305
2014-11-06 21:34:05 -08:00
Leonardo de Moura
ed83b7ff2a
fix(emacs/lean-syntax): syntax highlight, issue #306
...
1- FIXED structure foo := (bar : Type) -- the name of structures is not highlighted
2- NOT FIXED check foo-- this comment is not highlighted
3- FIXED check Type.{5} -- Type is not highlighted
4- FIXED definition bar{thisishighlighted : Type} := foo
5- FIXED definition bar2 {thetypeofthisvariableisnothighlighted :Type} := foo
Have no idea what is going on with 2. I'm not sure if this is our bug,
or Emacs code we depend on.
2014-11-06 20:59:31 -08:00
Leonardo de Moura
4650791108
feat(frontends/lean): add 'print fields' command
2014-11-05 14:06:54 -08:00
Leonardo de Moura
defc2478b5
feat(frontends/lean): add 'record' as an alias for 'structure' command
2014-11-05 12:02:52 -08:00
Soonho Kong
e71db7109d
fix(emacs/lean-mode.el): remove quotation marks in lean-execute
...
Close #294
2014-11-05 09:20:14 -05:00
Leonardo de Moura
c6c090eda6
feat(src/emacs/lean-mode): add shortcut for restarting lean server
2014-11-04 18:01:20 -08:00
Soonho Kong
2273f75e9b
fix(emacs/lean-mode): handle when there is spaces in filenames
2014-11-04 19:22:35 -05:00