Yes! And the brilliant thing is you can list the packages you want to install in your .emacs
file along with a couple of lines of code and it auto-installs it whenever you go to a new machine! This is what I do in my .emacs file. Section 0 is where it is at.
Also tramp
got fairly stable and useful at some point. I tried it a few years ago and again recently, it works brilliantly if you want to develop on a remote machine.
There is also spacemacs, a highly customized version of emacs, that is useful for people who don't want to build their own .emacs
file. It however can be painful for people who have been using emacs already because it is not their emacs.
i've been on both sides of the fence. i've also written popular plugins and packages for both.
is emacs lisp a better programming language than vimscript? yes, it's not even close. but that doesn't stop people from writing amazing vim plugins -- vimscript is also turing complete after all.
culture is the biggest difference between the two. emacs users want to live inside emacs and will reinvent the wheel to do so. vim is very UNIX-philosophy and will defer to other tools like tmux and zsh to complete the experience. both are valid approaches.
if you want to try emacs/evil there hasn't been a better time. i generally do not recommend using distributions, but spacemacs is slowly changing my opinion. yes, it does a lot of black magic. yes, it'll install hundreds of packages. but it's also had hundreds of people working together to make it work for vim converts. the benefits cannot be easily overlooked.
Why not just use spacemacs (The best editor is neither Emacs nor Vim, it's Emacs and Vim!), which is slightly more mature?
And assuming you want to use either, the presumption is that you already know your way around vim, in which case you probably have a nicely configured one on hand anyway.
What makes this better than either of those?
edit: ~~oh, and looks like spacevim is based on neovim, which is to my knowledge still very much work in progress and not yet up to feature parity with plain vim (e.g. not all vim plugins work and so on), so there's also that.~~ People corrected me on this, at it's current state, neovim is fine so scratch this.
Another data point, with some idea of system setup and use-case...
I don't think you should get hung up on what someone else says is the "best" tool. You should pick the tool you feel most productive with and master it. In 20 years, I've only picked two editors and no IDEs. An IDE helps primarily in two ways:
For the most part, I found that PyCharm (and I tried it) was too opinionated and for what I do, the controls/UI was not readily available. Some of the simplest things (like font selection) is buried.
I'm equally not fond of the anaconda ecosystem as it does not play nice outside of its ecosystem. I feel like, in some ways, Continuum Analytics is the Microsoft of Python - they want to control that entire development stack.
If you're already an emacs nut, I encourage you to check out spacemacs: http://spacemacs.org/
Emacs is a completely different paradigm. Emacs is a lisp intepreter at its core, providing an arbitrarily flexible text based environment that just happens to include a text editor. Making heavy modifications to the software is expected. A typical user will install dozens of packages, even hundreds. In contrast to Vim, where instances are started and stopped quickly, Emacs is used more like a browser or IDE, run as a persistent process with windows opened up as needed.
Look at Org-Mode, Magit, Evil-Mode, and Helm for examples of incredible applications running inside Emacs. If you'd like to hit the ground running and continue using Vim keybindings I suggest you try this preconfigured Emacs: http://spacemacs.org
If you are using Emacs for the first time you may want to install 25.3 instead of 26.1 in case there are any bugs or package incompatibilities.
In my opinion Spacemacs gives you the best of both worlds. Emacs is a much faster and more dynamic environment than a bash/zsh shell (which is where you end up spending a lot of time when you're working with Vim), while vim/evil-mode has tons of speed and ergonomic advantages over Emacs' standard editor.
That said, Emacs is a lot to take in initially and I'd definitely suggest learning vim by itself first (starting off with vimtutor) to really get comfortable with modal editing. You'll probably see lots of speed gains just from doing that. Hope that helps!
'Course, you could just use spacemacs. You have the Vim keybindings, the Emacs customability, and a good starting package so you don't have to spend a long time configuring it at first.
I'm primarily a Vim user for sure. However the holy grail is Spacemacs (http://spacemacs.org/), which is Emacs but with Vim keybindings. Vim is great for editing text, but Emacs is better for everything else (like finding files, working with splits, etc etc). So "technically" while I use Emacs, I use Emacs but the way I edit text is the same way a person on Vim would (and if it didn't have this functionality I would use Emacs).
Use spacemacs with dante. As a pretty sophisticated vim user for almost 20 years, I would say that Spacemacs is pretty much unambiguously better than vim. Spacemacs has everything I want from vim with a bunch of nice improvements added on top (space as the leader key, better discoverability with mnemonics, etc), all while being built on the vastly better platform that is emacs. I still use vim for one-off file editing, but I simply can't recommend it any more for Haskell development.
Is it strongly recommended to use GUI? I have never heard such a claim! Yes, some features does not exist or are different in TUI from GUI, but that is another topic. :)
I don't know about themes because I don't use them very much, but I think it is possible. For example take a look at spacemacs.
Remember to set your terminal to 256 colors:
export TERM="xterm-256color"
Oh I found the following text:
"In the terminal version of Emacs, color themes will not render correctly as colors are rendered by the terminal and not by emacs. You will probably have to change your terminal color palette. More explanations can be found on emacs-color-theme-solarized webpage."
While Land of Lisp is a pretty fun book to read, I'd recommend you start with Practical Common Lisp instead. It's a well-written introduction to Lisp, and the small projects in between give you an idea how everything comes together.
As for your editor, Portacle gets recommended quite a lot, and should be very beginner-friendly. I have never tried it myself though, I go with Spacemacs + SLIME + SBCL.
Maybe, but it's not made for it. Emacs is. For a vim user wanting to use it as their DE as described, I recommend something like http://spacemacs.org/. It's emacs, with VIM keybindings, which is basically the best of both worlds.
Well, with evil-mode, you have all of Vim right within Emacs, but it's even more extensible ^[1] . And then with Spacemacs, you have all of Emacs redesigned and remapped to be Vim-like. You can even do a hybrid mode of Vim keybindings, but Emacs when in insert mode.
I guess the winner is both, together.
^([1]: Well, for one, you can create custom text-objects, but only fake them in Vim.)
>What are the pros and cons of using emacs over spacemacs if I don’t want the vim experience?
Spacemacs has configuration layers that make it easy to add functionality and it offers you otherwise a out-of-the-box preconfigured experience. With vanilla Emacs you're expected to configure it extensively to reach anywhere near similar functionality.
However since Spacemacs is just a set of configuration for Emacs, there is nothing you can't technically do with just vanilla Emacs.
>Can I use emacs default controls in spacemacs?
Yes, it asks you on first startup to select either Emacs, or Vim-like controls.
Neovim is pretty good, but if you want to try emacs, I would suggest using spacemacs, so you won't have to go through the trouble that is learning and setting up emacs to your taste (initially), and you can customize it as you get more familiar (maybe even ditch spacemacs later down the line).
This should have been posted earlier/upvoted more.
u/_Steve_T , you've mentioned vim/neovim, as you might be familiar with the keybindings I'd suggest to go with Spacemacs in evil mode (vim keybindings). You get a mostly pre-configured emacs, and you can further configure it to what you need. So you'd want to uncomment/add in ~/.spacemacs
layers org
and spell-checking
.
Another configuration distribution would be Doom Emacs, but I haven't used it. The "file browser" shown in the Doom Emacs screenshot should also be easy to add to a spacemacs config, but I haven't had a need for it since browsing files in spacemacs is as easy as pressing SPC f f
.
I would disagree with some of the plugins he's recommending here. There is a good resource on vim best practices that I point new vim users to who try to install all these plugins. Vim is not an IDE and never will be, mostly due to it's horrible scripting language. If you really want the IDE experience then have a look at spacemacs.
You can always use the alternate <code>.spacemacs</code> location and change dotspacemacs-configuration-layer-path
to something like'("~/.spacemacs.d/private/")
. Then you could use git to manage ~/.spacemacs.d/
From <code>c-c++</code> layer documentation:
> Support auto-completion (when auto-completion
layer is included) via company-clang
(when c-c++-enable-clang-support
is turned on), or company-ycmd
(when ycmd
layer is included).
So, check if you have:
clang
installedc-c++
layer enabledauto-completion
layer enabledc-c++-enable-clang-support
set to t
The simplest way to enable this would be to add the following to your enabled layers:
auto-completion
(c-c++ :variables
c-c++-enable-clang-support t)
GNU Emacs is an extensible editor, real extensibility, you can modify its inner behavior not just the superficial one as Vim, Atom, VS lets its users!
Name a feature that an IDE have and it can be done on Emacs:
- Vim emulator (Evil - for real, you don't need vim anymore)
- gitter (Magit),
- Notes, planing, tables and Agenda manager (Org),
- Music Players,
- Real Browser,
- Calc,
-Window Manager (EXWM),
- Feed readers
- Email clients
- Irc clients
- Most of those shine extension on Atom, Vim and Sublime
- Edit remote file as if local, no hacks (TRAMP)
- Smart and personal completion (statistics)
Try it out: http://spacemacs.org/
Give Spacemacs a try. It's a modded Emacs with added keybindings for using space instead of ctrl.I started using it (in vim mode) for orgmode, but now I'm using it for everything.
You might also like to try spacemacs: http://spacemacs.org/ vim-like features are mostly. built- in and properly configured which means less time and effort configuring yourself. There's the vim-mode and of course emacs-mode. Best of both worlds for many.
It sounds like your boss has determined that getting the entire team on the same dev environment will lead to more productivity in the future, and he's willing to accept some initial slow-down in productivity in order to get there. It sucks, and personally I agree that you should be able to choose your own tools. Someone has already suggested cljfmt to scratch the formatting itch you mentioned - I wouldn't be surprised if you could add that as a git hook process.
However, if you are unable to convince him, I strongly recommend Spacemacs. It will give you a battle-tested emacs environment that is better than you can configure on your own and free you from the C-x bullshit. The Clojure layer is one of the best packages in the repo.
I was able to learn Spacemacs over a couple of weekends without any prior experience in Emacs and only marginal Vim knowledge. The docs and tutorials are superb, and the Slack channel is very friendly.
Best of luck!
Have a look at the documentation of the python layer either through SPC h l python RET
or here. At the bottom is a list of keybindings including those to execute your files/buffers.
I don't think I could tell you anything that isn't covered there. (Note that SPC m
as a prefix is equivalent to ,
)
Not currently. In the long run, I plan to look into more flexible keyboard configuration (e.g. potentially having the ability to turn modes off), but that's very low priority.
(Though I'm currently switching from vim to spacemacs myself - but I definitely prefer the vim bindings)
I too am a Spacemacs user. Is the Spacemacs' Haskell layer features not good enough?
I use Haskell layer with flycheck enabled and that works well enough for me most of the time.
Maybe you haven't turned on syntax-checking
in your spacemacs dot-file?
Once flycheck is on, I just hit Space e l
(or as I remember it, Space, Error, List) to see the list of errors.
You can click on errors to go to them, or you can hit "Space Error Next" (Space e n
) to jump to the next error, and ofc Space e p
to go back.
Probably some issue with the load order of your config.
Try using with-eval-after-load
.
(with-eval-after-load 'org (setq org-directory "~/Dropbox/org"))
If this doesn't work try putting ALL your org-mode configuration in your .spacemacs file into a (with-eval-after-load 'org ... )
block. My guess is that you somehow load two different versions of org mode and overwrite your settings in the process. (Here's why this can happen)
The other way to make sure this does not happen is configuring org-mode with a custom layer rather than in the .spacemacs file.
From the about page:
>SpaceVim is a community-driven vim distribution that supports vim and Neovim. SpaceVim manages collections of plugins in layers. Layers make it easy for you, the user, to enable a new language or feature by grouping all the related plugins together. It got inspired by spacemacs.
Basically, it's a configuration for vim which is curated by a community. You can add or remove packages to suit your preferences and to add functionality for new languages, features, etc. I haven't used it yet, but I do love Spacemacs, which is the same idea for Emacs: http://spacemacs.org/
This may sound counter intuitive, but just try vanilla Emacs for a while, see if you like the keybinds. I personally like the keybinds, but for some reason always go back to vim or another GUI editor (VSCode being that GUI editor of choice). Hell, look at something like Spacemacs, which is pretty easy to use setup for vim users and default Emacs users. :)
I'm a pretty easily-distracted person, and also prone to procrastination. So what's great about org-mode is that when I want to start a project now, I can handle the entire thing from one text file - that means figuring out what work needs to be done for the project, breaking that down into smaller tasks and scheduling all of them (including direct links to the exact spots that need work in the project files), and then doing the actual work- without ever having to switch to some other program, or some other context. On top of that, you get to drop in links to all kinds of relevant documentation, cheatsheets that you've made, etc, and make all of that a part of your work environment.
So basically, the project itself can be done entirely from inside the cheasheet/docs you've made for that project. The whole work session is now planned out and set up for you in advance, and that can seriously help mitigate the cognitive overhead and overall stress levels that come with writing code (at least for me personally).
What really takes it to the next level is that you can embed and run actual code or shell commands inside these text files. Or take all the scattered bits of code that you've thoroughly organized, clarified and explained in your file and compile them into a new text file, which you can then run.
I've only been using the thing for about six months with spacemacs, so that's about what I've been able to do so far. You can also do things like connect your email account to it, so you can pin emails directly to tasks they're associated with, finish the task, and then respond to the email right there
You can build it via Xcode for free apparently but I bought it to support the dev.
> However, vim >> emacs
Emacs built a better vim: http://spacemacs.org/ but whatever tool you use to get the job done 😊
I use spacemacs layouts (which I believe is based on persp
) and really like it. As you mentioned, I keep notes and other org files in one layout and have other layouts for (say) work, personal, etc.
Each layout works in isolation and everything runs as you would expect. Also its really easy to add/remove a buffer to/from a layout. There is also a smaller granularity feature in spacemacs called workspaces which I haven't tried.
Overall, I don't know how much of an effort it will take to replicate this in vanilla emacs, but I do think that you will get something from the spacemacs source. I haven't tried eyebrowse and though I use projectile, its buffer isolation is not very fulfilling (I would rather create a new layout and work with a single project in it).
> Is there any value into sticking with some Emacs bindings?
M-x
for execute-extended-command
)Overall I'd say using Vim bindings à la evil
is just fine. Lots of my coworkers do it via Spacemacs. It's the highly personalized "idiolect" keybindings that tend to be problematic.
> it feels like you're expected to customize the shit out of it to make the most out of it
Try a starter kit like Spacemacs (which defaults to evil
bindings) or Prelude.
As a professional, you may use your text editor for 8 or more hours per day for many purposes. A high degree of customization is a boon for a tool you spend so much time with. And you don't have to customize everything to perfection from the start; I've learned that the hard way 😝.
> have any of you guys who use Emacs professionally come across an instance where you couldn't use your config files?
Only during interviews when the candidate is unfortunate enough to not have brought their own computer. Tip: bring your own computer if possible!
Go with spacemacs. It has all the plugin-goodness of vanilla emacs (because that's what it is underneath the pre-configured packages) as well as the modal-editing that makes vim legendary.
Some emacs users are against it because it doesn't force you to go plugin-hunting like vanilla emacs would, but I think that's a strength. Odds are spacemacs will be enough for your needs starting out, and by the time you want to install a more niche plugin, you'll feel comfortable enough to do so.
I highly recommend it, modal editing was a boon to my productivity once I got reasonably good at it which took about a week.
Just because everyone else is recommending VSCode, I'll be a bit different. I'd recommend, and am using, Spacemacs. I've been using it for maybe a month now, so I haven't really reached the potential of what is possible but so far it's amazing. I'm using this to help with JSX highlighting but otherwise, everything is stock. You will need to glance at the docs occasionally but it's all fairly intuitive.
You probably should generally know your way around Vim, even if it's really basic: it's the only serious editor you may expect to find in virtually any Unix-like system.
Regarding Emacs keybindings,
Re “native” Emacs vs Evil mode: it's really a matter of personal preference. A lot of people can't live without Evil, or wouldn't even have tried Emacs if it didn't exist. Others feels that it gets in the way much more than it helps. If you want to go the modal editing way, by all means try Evil. If you prefer to try Emacs for what it is, it's good too (although bare Emacs may be really bare, but half the fun is configuring and extending it). If you want Evil, you may want to try Spacemacs, a “batteries included” Emacs distribution with Evil.
There are a few good learning resources in the side bar of the subreddit, you may also have a look at the commercial ebook Mastering Emacs.
I have ~600 papers and manage it using emacs with org-ref which is a thin layer over awesome org-mode. (Having org-mode is probably the strongest reason why I switched from vim to emacs.) If you are vim user, you can try something like spacemacs.
I tried before mendeley, readcube, endnote. My biased comparison.
emacs pros:
emacs cons:
EDIT: for OP though, it's better to use vs code or something similar, so he don't have to learn the editor as well.
Also, @Spikerazorshards, you don't need any repos, just go to http://lighttable.com and download the standalone distribution if you want to try light table.
I don't use what you use, but here goes for my experience.
I love Vim's modal and verb-object way better than everything. I want that everywhere I can. That said…
If you feel like giving Spacemacs a go, as a Vim fan with a terminal-multiplexer addiction (I love byobu to death), I'll suggest configuring your setup to use it as a daemon early on, so that once the daemon is started (ie at the init of the OS) you can start new instances way faster, and all communicating with one another. In terminal mode if you like ( "-nw").
​
All that said, whenever I can I still use Vim (Neovim actually), because the more lightweight the better, always.
It's not an easy operating system, but it does have a nice editor built in! Paredit or the like is essential.
If I want a single (, or {. or [. or ", I have to backspace over the automagically inserted close. :)
Even more fun is that I use Spacemacs, so don't even ask about keystrokes!
I primarily use emacs (heavily customised to look nice and fit my workflow), but VS Code is probably my second choice for a nice, extensible editor. Definitely a safer choice for someone not interested in the investment required to learn emacs.
Though if someone's interested in emacs and wants a shortcut to better usability, they could try the spacemacs config. It's sort of an emacs gateway drug.
It depends. Do you wish to customize every bit of your work environment? Do you value being able to do pretty much anything inside your text-editor? Are you willing to learn at least some Emacs Lisp? If so, you might just love Emacs. If not, you can always use Spacemacs.
I wrote an article about my transition from Vim to Emacs a while ago. It might be useful to you.
I suggest that you take a look at spacemacs. It's an emacs distro, which can be converted to a good IDE with auto complete. However, it'll take some time for you to get productive with it.
Hey guys, I just put together this command launcher. It allows you to launch commands via a trie-like structure. I got the inspiration from spacemacs' which-key, which is a great way to quickly chord commands in a discoverable way.
It's a bit rough on the edges right now, so I'm looking for a few testers to try it out. Enjoy!
Thank you for reading! And yes, there is something similar! I know that Spacemacs has an evil-tutor, but I don't know if it's the same version from the link. They even have a migration guide for Vim users, which is pretty cool. Even though I don't use Spacemacs myself, I certainly recommend it, at least as a starting point.
If you're looking for something more accessible than the full-blown Emacs manual, I recommend this Mini Manual. Full disclosure: I haven't read it yet, but I scanned through the topics and it seems really good.
Did you have a look at http://spacemacs.org/ ? It's Emacs, for vimers (evil-mode), with preconfigured layers, and autodiscoverable (which-key-mode). It's a starter kit among others (http://wikemacs.org/wiki/Starter_Kits) They shouldn't be a serious investment, you don't need to know elisp to get started.
And if you like to write JS I don't know what to say ;) Writing with a lisp and spending one's life inside the editor is also enlightening (programming, magit, writing anything, scheduling work in org-mode, email, playing music, file manager,… that's emacs :) )
stack
already does most of that natively, if you're willing to have an extra terminal window open.
See your dependency graph:
stack dot --external --prune base,ghc-prim,integer-gmp,deepseq,array | dot -Tjpg -o deps.jpg
Open an entire library's docs:
stack haddock --open containers
With Stack 1.7 which just came out, you can run a private version of Hoogle on your own machine:
stack hoogle --server
For editing in general, Spacemacs has an excellent Haskell layer which provides autocompletion, etc.
Just gonna pop in and state that if you don't mind long start up times followed by a large amount of functionality to give spacemacs a try. There is a fairly strong learning curve as it is essentially vim+emacs but during my time wihth it I have felt it was well worth the invest.
> Well i tried! It’s working. I thought in-built anaconda-mode would do that but i guess reading docs wrong way. > >
the auto-completion layer provides company
, the completion engine. If company is installed, anaconda provides the company python backend.
I don't use the python layer so I'm not too familiar with the specifics. What needs configuration? According to this it should just work.
\edit: (I assume you read this)
It doesn't sound like you're shopping, but just in case you are, I'd toss out spacemacs + its clojure layer(try to open a .clj file and it'll install) as an excellent "ide." It builds on CIDER and provides a bunch of conveniences that provide a slick experience out of the box. That's now my goto for a consistent setup when I set up a new development environment.
Elisp is elisp no matter which distribution of Emacs you use. Between the great spacemacs docs and the emacs manual I learned emacs by writing my own spacemacs layers
> ## Why am I getting a message about environment variables on startup?
Spacemacs uses the exec-path-from-shell
package to set the executable path
when Emacs starts up. This is done by launching a shell and reading the values
of variables such as PATH
and MANPATH
from it. If your shell configuration
sets the values of these variables inconsistently, this could be problematic. It
is recommended to set such variables in shell configuration files that are
sourced unconditionally, such as .profile
, .bash_profile
or .zshenv
, as
opposed to files that are sourced only for interactive shells, such as .bashrc
or .zshrc
. If you are willing to neglect this advice, you may disable the
warning, e.g. from dotspacemacs/user-init
:
> (setq exec-path-from-shell-check-startup-files nil)
> You can also disable this feature entirely by adding exec-path-from-shell
to
the list dotspacemacs-excluded-packages
if you prefer setting exec-path
yourself.
From the FAQ.
There seem to be some changes to how this is handled on the develop branch so you might want to check that out. Not sure if that'd solve your problems.
> Next question I got is regarding remapping the leader key.
There's a varible dotspacemacs-leader-key
in the dotspacemacs/init
section of your .spacemacs
file that handles that.
I highly recommend going through all the variables that are set in that file, will save you lot's of googling.
For company you don't need to change anything just enable the auto-completion
layer. Which engine is used is then defined by each language layer, most use company.
For more info on that you should read the documentation of the autocompletion layer (SPC h SPC auto-completion RET
or here).
Just to make sure: have you checked the Documentation of the Java script layer, there's a section regarding indentation. (SPC h SPC javascript
or here)
re my other comment... I'm dead serous. I used Vim for 6 years, then stumbled across emacs with EVIL. It's not like other editors with a subset of features... 95% of whatever you could do with Vim is there front and center... trust me, try it and you'll say the same. Org-Mode has replaced all the note taking apps + todo apps, it's about to replace my terminal... I never imagined I'd be a Emacs fan, but I am.
The bad thing about Vim was always the plugin installation to get shit like fuzzy finding. Emacs does ALL of that shit better.
Try Spacemacs... it's emacs built out of the box for vim users. http://spacemacs.org/
Spacemacs looks pretty good, thanks. I'll keep an eye on this.
Too bad it doesn't have a mini map though.
Edit: nevermind, there might be a way to have a mini map after all.
I'm a former vim user that switched to spacemacs about two years ago. I think unless you focus on learning the Emacs-ness inherent in the editor you will probably, like me, only pick up a few new things. I noticed that I've learned more spacemacs-specific muscle memories than anything else. Obviously everyone is different but necessity will not drive you towards the emacs shortcuts here out of the box. Maybe using the emacs style editing will push more towards it but I am just a heavy <Leader> user instead
I know that it's a matter of taste, but if you find Emacs keybindings pretty crazy (like I do), I REALLY recommend you Spacemacs config. It can do everything that pure Emacs can, but adds several awesome features that help to master it, especially at the beginnig:
You can turn on Vim style of editing (keybindings, modes, everything). As I said, it's a matter of taste, but if you're new to "geeky" editors, I think you should try Vim-like style, because for many people it's much better way of editing.
Which-key actually makes you learn keybindings as you work and helps to discover new features
Configuration layers saving time on configuring plugins.
Lots of well-designed keybindings, finger-friendly ;).
Give it a try. If you prefer Emacs style over Vim, you will still really benefit from Spacemacs.
(gnu)Emacs è un editor programmabile che contiene un interprete lisp. In effetti l'editor nudo è poco più che un supporto per l'interprete e la manipolazione di base dei buffer: la maggior parte delle funzioni sono scritte in lisp (poi, per motivi di efficienza, in realtà le parti di uso comune sono inserite nell'eseguibile in blocco in modo da essere precaricate, ma sempre lisp sono).
Una cosa del genere ora fa poco scalpore, ma ai tempi in cui emacs fu creato non era tanto comune. Siccome ha anche una storia molto lunga, esiste un considerevole corpus di software che implementa n-mila funzionalità inclusi svariati emulatori di altri editor - (vi, in primis), terminali, remote editing, wweb browsing, etc, etc.
Questo giustifica in buona sostanza la sua fama. Forse chi ne vuole sapere di più - conosce vi ed 'ggiovane conviene che parta da http://spacemacs.org/...
If you are just starting and looking for decent defaults and nice looks, why not try out spacemacs.
I found spacemacs a few months ago, and after trying vim for years + sublime, pycharm, atom, eclipse..I now have a place to call home. I honestly thought emacs would never be for me, and yet the being the last one I tried, was the perfect fit for me.
Spacemacs is an amazing project that provides an Emacs setup with sensible defaults. See http://spacemacs.org/. Installation:
git clone https://github.com/syl20bnr/spacemacs ~/.emacs.d
clojure
layer to ~/.spacemacs fileSPC
to show commands or,
to show Clojure commands. , s i
to start Cider replEmacs is a solid beast, it has very good python support, quite nice refactoring tools, good testing tools, a lot due to Elpy (I can run the unit test I am in with a single keystroke, quite good), http://wikemacs.org/wiki/Python and a full featured vim mode if you wish: http://spacemacs.org/
(and version 25 is freshly out and one can run a webkit browser inside Emacs)
It's described in the official documentation at: http://spacemacs.org/doc/DOCUMENTATION.html#orgheadline21 .
Also in the FAQ: http://spacemacs.org/doc/FAQ#orgheadline3
In short:
> To declare new packages you have to create a new configuration layer or add the package name to the variable dotspacemacs-additonal-packages
of your dotfile, see the quick start guide for more info.
It sounds like you're not familiar with how Spacemacs actually handles its config and the layer system. I'd take a look at how they work. A lot of with has been put in to making things compostable, and they've done things like dropping a layer in favor of just a simple additional package. Spacemacs is both a full-featured, standalone configuration framework and a starter kit built on that (reflected in how there's an option when initializing Spacemacs to go with a bare config of just the framework to make your own set of layers on).
Sorry. This is my first post in r/fountainpens; I'll be more careful next time :)
This is my first ink color other than blue. I initially decided to try a different color for color-coding notes.
For programming I use a distribution of the Emacs text editor called spacemacs whose default color scheme has "space-like" colors with a lot of blue and purple; I really love how it looks. I believe this is the reason I preferred purple though this might not have been a conscious choice :)
I have been using a Lamy Safari for about two years now and I'll soon be getting another pen (trying to decide; open to suggestions). For now I'll be using it with my Safari. I have been using it with a fine nib but this looks a bit too feeble and I want the awesome purple to be more noticeable so I might start using a medium nib now that I bought some Rhodes paper as well.
Emacs has fixed this with Spacemacs: it takes Emacs and its plugins and provides layers of configured plugins that play nice with each other. You can install the c
, rust
, etc layer and suddenly you have all the plugins installed and configured for having a compiler, autocompletion, snippets, linting, error lists, whatever set for that language. (Spacemacs can be used as vim since it uses the Evil layer). It's really nice saying bye to days and days of yak shaving.
Something similar could be done for Vim.
Well, actually I installed Spacemacs. When you install it it lets you choose between Vim and Emacs mode, additionally it comes with some nice themes. The pic shows my setup (Spacemacs vim style + solarized dark mode) http://spacemacs.org/
thats not a config..
use this
TheBB/spaceline: Powerline theme from Spacemacs
https://github.com/TheBB/spaceline
This is the package that provides Spacemacs with its famous mode-line theme. It has been extracted as an independent package for general fun and profit.
I used vim too and found it difficult to use the standard emacs. But then i found spacemacs and it is much easier. Spacemacs is designed to bring together the best parts of emacs and vim. http://spacemacs.org/ check this out. You might really like it. There is also a section for vim users.
Awesome! There's definitely a learning curve, but there's also some really nice tools to help orient yourself in emacs. If you do want to check it out, I'd recommend setting up an emacs "framework" like spacemacs, rather than starting from scratch—spacemacs has the option of using vim or emacs-based keybinding schemes, so even though it bills itself as "vim AND emacs", you don't actually need to be familiar with vim to give it a test run.
> I was a bit vague in my post, I guess, and I'm fairly new to emacs
Awesome and welcome!
First there are a couple of things happening here: 1. It appears the PEAR standards mandate spaces instead of tabs. 2. That customized variable has an effect every time you open a file that causes php-mode to start. This is why it's overriding your "global" setting.
So some possible solutions...
1. Comment out (or remove) that php-mode-coding-style customization. (;; (php-mode-codeing-style ...)
)
2. Change it to a value / standard that more closely matches yours.
3. Use a mode hook so that your customizations happen everytime php-mode is started e.g.:
(add-hook 'php-mode-hook (lambda () (indent-tabs-mode t)))
Welcome to the fun world of customizing emacs to fit you. :) Lately it seems like many people like to start with "starter-kits" like Spacemacs or doom emacs These are configs that have opinionated out-of-the-box configs that can make exploring new modes in emacs friendlier (especially if you prefer vi keybindings). They aren't for everyone but you might want to give them a try / watch their videos on youtube.
As you learn more, rolling your own config distilled from others that you like becomes more attractive.
I personally like searching github when I'm not sure how a certain mode can be configured or if I want to see how others have done it. For example: https://github.com/search?q=php-mode-hook&type=Code
Welcome again. There's lots of great resources out there and via /r/emacs
How much do you really want to learn emacs? I use emacs, but via spacemacs, so I haven't had to learn anything emacs. Everything more or less just works and I'm happy with it.
http://spacemacs.org/layers/+lang/scala/README.html
The helm file browser and the scala layer together give me a very 'project' like feel with minimal fiddling with configs, and using it in evil mode means all of the vim keybindings I'm familiar with are still working.
Just a thought if your goal is more 'get a good scala editing environment up' than 'learn emacs and also use it with scala'. There are other spacemacs-like configuration setups you can use too, but I'm not as familiar with those.
I'm using Spacemacs as my editor on Gallium (and everywhere else, for that matter). I particularly like it on the Chromebook due to the Evil (vim) bindings. Vim would also serve well for the keyboard layout.
Most of my development work is Python/Django, Javascript, and some shell scripting.
Well, I guess you could exclude the tern package, use the "javascript" and "typescript" layers, and manually enable <strong>tide</strong> features for JavaScript.
Probably.
Seriously... don't give up. I googled for vscodevim while replying, so I dunno how well that works. When I was on Windows I was a customer of ViEmu [1] They offer emulators for a ton of things. Excellent product, worthy of your money. Vim emulation is hard to get perfect, but good enough still kicks the shit out of anything else. If you wanna come to the dark side: http://spacemacs.org/
>spacemacs
The UI of Spacemacs looks very cool. http://spacemacs.org/
I recognized the same, but the built-in tutorials / help of emacs made it until now no criteria, because it is very good. Noo googling needed
I switched from nano to Spacemacs, a Emacs distribution with evil mode and it's amazing. After finishing the vim and Spacemacs tutor, it's always astonishing what else a real editor can do (magit, editing remote files, ..)
​
It's like Vim, but with a better scripting language and better buffer management. And a better server mode. And Org. And remote file editing with Tramp. And built in browser. And Rest client. And file manager. And ...
Maybe a dumb question, but are you using the develop branch of Spacemacs? Are the layer folders of Neotree or Treemacs actually there?
I don't think there are those layers on the stable branch of Spacemacs. I think master branch just has Neotree commands bound on the normal keys given in the documentation, without the use of a layer.
spacemacs with the clojure layer is actually quite easy
http://spacemacs.org/layers/+lang/clojure/README.html
I mainly use VSCode, but I am not working on any large clojure projects and it is super easy to setup.
1.
Spacemacs does auto save dirty buffers. By default, it stores auto save in a hidden file, so it requires you to do M-x recover-this-file
when you lose some data. Alternatively you can change dotspacemacs-auto-save-file-location
to save it directly to the file.
You can probably set it up like this https://github.com/syl20bnr/spacemacs/issues/11453#issuecomment-430274145
2. Unfortunately there is no easy way to achieve exactly this afaik. There are layouts, and worksspaces which work fine but their workflow is a bit different. There is no tab bar that is always visible for example. http://spacemacs.org/doc/DOCUMENTATION.html#layouts-and-workspaces
For navigating a project's files, SPC p f
and SPC p b
are particularly useful.
3.
I rarely use neotree but dired (e.g. SPC j d
) instead which probably suffers from the same problems.
Some things can be done quite nicely with that, for example if you create a split of two dired buffers and mark some files and then copy them, the directory of the other buffer is the default destination.
Linux laptop with:
The rest are just simple terminal from suckless and some web browsers to build the UI.
Holy crap thanks man. This is my plan since I am a beginner, I will install Spacemacs on my second computer and see if I can get it going. If I succeed I will then put it onto my main computer. I have been doing some reading on this website http://spacemacs.org/ it definitely looks appealing I will give it a shot. By the way its weird but for every question I posted on the Emacs subreddit I have never gotten a disappointing answer nor have I ever been trolled in any way, This subreddit is a god send.
I use Vim a lot because a write a lot of C/Bash code, so I don't need more; plus Vim is very light and installed on every linux box... But when I started to write C++/Python code, I was wondering how to have a real IDE (Vim is just text editor imho) with completion, better integration, etc... Someone showed me Spacemacs, which combines Vim text edition system, and Emacs' IDE style. It's enough for me; I use both now, depending on what I need to do... Maybe you can give it a try !
(I don't want to start this Vim vs Emacs war again, just trying to help :) )
I use Emacs, well, Spacemacs with vim key bindings. I develop on Unity, but I've been pleased with the dotnet
build and have switched my C# libraries over to .netstandard-2.0 since those work with Unity now, and that's been a joy. I find it easier to use build and unit tests from the CLI/Emacs rather than through Unity's own test runner.
Try something like
(with-eval-after-load 'org (setq org-default-notes-file "/home/username/capture.org"))
This is advised for any org configurations in your user config anyway. See here.
Being a Vim user, I found out Spacemacs has pretty great default support for Common Lisp. Just install SBCL (or any other implementation) and that's it. It takes some time to get used to it but once you get to know Spacemacs it's almost better than Vim, if only it wasn't so slow!
The things you can achieve in 5 or 10 minutes are relatively superficial, but they can be very valuable.
Block out a plan for your day, including the time you're going to commit to learning and coding.
Review how your plan yesterday played out.
Learn some support skill, like editor usage, though really you should be learning Spacemacs. :-)
API documentation.
For an alternative to Vim, there's "spacemacs" that might be interesting, link here: http://spacemacs.org/
Installation is basically just this command line (plus installing the emacs
Arch package):
git clone https://github.com/syl20bnr/spacemacs ~/.emacs.d
It's a community developed setup for Emacs that uses Vim keybinds. Things like indentation and syntax highlighting it does by default, and there's a bunch of plugin "layers" prepared that you can enable for more features, like auto-completion pop-ups and such.
After installing it, you can pretty much immediately start using it if you know Vim. For the extra spacemacs stuff, that's (mostly) all behind the space-bar key. They tried to make features easy to discover through a changing list of available follow-up keys and descriptions getting shown while you type a key sequence. The documentation on their website is also pretty good.
Personally I don't think there's any real reason to use Emacs over Vim for racket development if that's your workflow. I use Emacs because I want a lisp based environment when I write lisp. However for most people it's a big time investment to get to what will likely be an insignificant improvement in your workflow.
I think it's worth trying out both so you can understand what features your missing out on, but if all you care about is writing lisp, then just write it and to hell with what other people think.
Side note: Try Spacemacs if you want a good idea of what Emacs can do | http://spacemacs.org/
If you come from the Vi world, check out Spacemacs, which uses Vim-style bindings by default. Otherwise, stick w/ the vanilla bindings for a while and change those that you don't like one at a time.
Well, if you're using Visual Studio for any reason, I absolutely recommend ViEmu. It's top notch, supports almost all the features you can think of, and works alongside VS keybindings very well.
For comparison, VsVim is trash. The most glaring problem is it can't handle proper Vim undo and instead maps u
to just Ctrl-Z's normal action, which means it may just delete a single character at a time rather than your insert mode session. This is such a critical flaw it's hard to consider it even usable in this state.
I also heard very good things about the IntelliJ Vim plugin. I used it a bit, and saw no issues, but don't have as extensive an experience.
Oh, and there's always Spacemacs, which is my preferred general "IDE".
package-install
doesn't work in Spacemacs with the default configuration as Spacemacs uninstalls any package that isn't used by a layer on every restart. So you can either write a layer to configure cider-hydra
or add it to dotspacemacs-additional-packages
in your dotfile.
I hear ya. But I will say that I'm an Emacs user that uses Spacemacs in evil-mode (a vi emulation). And you can run execute-extended-command
with alt-x
OR :
which is a nod to vim users. Also repeat-last-command is bound to .
because it's awesome. And all key bindings are configurable so you can set it up as you like.
Spacemacs only allows packages that are used by a layer to be installed.
If you want to install a package from melpa without creating a layer you can just add it to dotspacemacs-additional-packages '()
under he dotspacemacs/layers
function in the .spacemacs file.
http://spacemacs.org/doc/DOCUMENTATION.html#without-a-layer
If you install the package like this you'll need to create the spacemaces-like keybindings yourself though, as there's no layer that does it for you.
Before you do any of this try to reinstall Spacemacs, follow the installation guide on Github very closely! Help can be found in the documentation and by searching on this sub or google. I've learned that it isn't easy if you're new to all this stuff to learn Spacemacs it will require a lot of time and effort. But I do think it's worth the time and effort.
I'm not really knowledgeable in Spacemacs myself but I know a few things. To resolve te first error install these fonts I suppose you know how to install those since you've installed Spacemacs. I don't know if you've edited your .spacemacs file but I'd recommend you to use the .spacemacs template config first to get up and running, customise when you know a little more. If this doesn't help I wouldn't know what would be wrong since I can't even find a mention of eshell or company mode in the template .spacemacs config.
> Emacs is ok. It does a bit too much, and the keyboard cords make my hands feel like someone beat them with hammers after a couple hours, but it edits text just fine and supports both unix and Windows newlines.
It uses Evil, which is effectively 'Vim bindings for Emacs'.
Run it using X. Never use the terminal version of Emacs. It's terrible. You can set it up to run in 'server mode' so that when you edit files it goes to the same Emacs application.
https://spin.atomicobject.com/2016/08/30/introduction-to-spacemacs/