From 87b5733c89f1d0ec63ac7a30e19a4fd71ed1f484 Mon Sep 17 00:00:00 2001 From: Amin Bandali Date: Sun, 19 Jul 2020 14:04:32 -0400 Subject: 2019/talks/: import yet a few more transcript of janis's talk imported from with a few minor corrections (mostly formatting improvements). --- 2019/talks/19.md | 61 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 2019/talks/19.md (limited to '2019/talks/19.md') diff --git a/2019/talks/19.md b/2019/talks/19.md new file mode 100644 index 00000000..a2408fce --- /dev/null +++ b/2019/talks/19.md @@ -0,0 +1,61 @@ +[[!meta title="How Emacs became my awesome Java editing environment - Torstein Krause Johansen"]] +[[!meta copyright="Copyright © 2019 Torstein Krause Johansen"]] + +[[!template id=vid +src="https://mirror.csclub.uwaterloo.ca/emacsconf/2019/emacsconf-2019-19-how-emacs-became-my-awesome-java-environment--skybert.webm" +type="video/webm"]] + +### Download + +- [Video (Live)](https://mirror.csclub.uwaterloo.ca/emacsconf/2019/emacsconf-2019-19-how-emacs-became-my-awesome-java-environment--skybert.webm) (720p) +- [Video (Prerecording)](https://mirror.csclub.uwaterloo.ca/emacsconf/2019/emacsconf-2019-19-how-emacs-became-my-awesome-java-environment--prerec--skybert.webm) (1080p) + +### Notes + +#### Emacs: My awesome Java environment + +by torstein @ skybert dot net + +#### Hi, I'm Torstein 👋 +- Been in ❤ with Emacs since 2000 + +#### I've used many Java plugins/packages + +- java-mode (2000 → 2001) +- [JDEE](//github.com/jdee-emacs/jdee) (2001 → 2009) +- [gtags](//www.gnu.org/software/global/manual/global.html) +- jtags +- [Malabar](//github.com/m0smith/malabar-mode) (2011 → 2012) +- [JDIbug](//github.com/udalrich/jdibug) (2009 → 2011) +- [eclim](//github.com/emacs-eclim/emacs-eclim) (2013 → 2017) +- [Meghanada](//github.com/mopemope/meghanada-emacs) (2017 → 2018) +- [lsp-java](//github.com/emacs-lsp/lsp-java) (2018 → present) + +#### My requirements +- Zero conf: Easily setup a new Java project +- Fast: must handle large projects +- Large meaning ~7000 classes (Tomcat has 2200) +- Easy to switch between projects + +#### Seeing is believing + +Will use a wee app, [cheese-shop](//gitlab.com/skybert/cheese-shop) to +show the Java features in Emacs. + +- Auto completion +- Code navigation +- Jump to source of 3rd party libraries +- Import classes +- Static import methods and fields +- Run JUnit tests from within Emacs +- Linting +- Unused variables +- Wrong syntax +- Missing generics +- Implement missing class +- Implement missing method +- Debug application from within Emacs +- Debugger with conditional break points +- Refactoring: rename variable +- Refactoring: extract to variable +- Refactoring: extract to method -- cgit v1.2.3