14 ms·
Emacs Is My New Window Manager
- tribaal 12y agoI'm a vim guy, but I've been wanting to try emacs for a long time. Any tip for a convert like me? Is the "trick" just to make the jump and persist until it clicks? How do I still get my job done in the mean time?
- samsaga2 12y agoUse emacs with evil mode.
- tribaal 12y agoDoes that help at all for muscle memory and things like that?
- JackMorgan 12y agoI use emacs with evil, it gives you a fully functional vim emulator inside emacs. Since vim is the best text editor and emacs is the best OS, it's perfect!
- pyre 12y agoThere are things that are missing, but you can modify them. Examples: I use Ctrl-6 a lot in Vim, but Evil mode only implements it as Ctrl-Shift-6. But it's easy to create the binding (especially since the function that implements the functionality is already there). The :sort command doesn't exist, but there is :sort-lines, etc. The other thing that is a bit lacking is folding. Emacs doesn't have folding baked in, and there are several folding implementations (outline-mode, hide-show-mode, etc). I haven't found a good setup of all of the z* commands for folding. spacemacs does a good job of setting them up for org-mode (which leans on outline-mode for folding), but also doesn't implement zj / zk folding movement bindings.
- megalomanu 12y agoYes ! I highly recommand this plugin to those who are not familiar with the strange Emacs shortcuts ... but also to those who are not familiar with vim. evil-mode allows to learn Emacs and Vim at the same time, it's perfect for a beginner.
- deevus 12y agoI'm the same as you. I am Windows/Mac user and I spent a bit of time trying to configure emacs across all my machines. I think it's fair to say that it wasn't designed to be configured cross platform, which is a shame. When I can be bothered I will have to create .emacs files for each platform that I use
- preavy 12y agoI disagree. I have been using the same init.el across Windows and Mac for several years. Hardly anything needs to be tailored but you can inspect the system-type variable if it is really necessary.
- deevus 12y agoHow do you handle package management? I just couldn't get things to go my way. Either it worked on Windows or Mac, not both. What flavour of Emacs are you using on Windows?
- db48x 12y agoThe biggest cross-platform difficulties are the emacs version and OSX. Make sure all your computers have the same major version (all 23 or all 24; I recommend 24 as it actually has a package manager). OSX was for several years a problem for emacs as there were two or three incompatible ports that did things differently; it's probably gotten better over time. As preavy said, the rest can be handled by checking the OS type, machine name, user name, etc in your init files (they're not just config files, they're emacs lisp programs that get run during startup). I keep mine in a git repository to make syncing the changes over time easier.
- preavy 12y agoI agree that you should use the same Emacs version. On the Mac I recommend http://emacsformacosx.com/ http://emacsformacosx.com/. I have my .emacs.d symlinked to a folder in Dropbox. So to set up on a new machine I just have to install Dropbox and make a new symlink. This also worked for me in Ubuntu. I was concerned when package management came in as a lot more stuff seems to get downloaded, but it just seems to look after itself.
- coding4all 12y agoYou can try Evil Mode. => http://www.emacswiki.org/emacs/Evil http://www.emacswiki.org/emacs/Evil
- a3n 12y agoAlternative: go full-on emacs, without evil. I think you need to do that, at least at first, to really learn emacs. How to still get your work done: continue to use vim for your "work," and at first just use emacs to learn emacs. As soon as practical, start using emacs to do just one thing from your work. Somewhere soon after this you'll be comfortable enough to do everything from emacs (although still not an expert), and then you'll be able to decide to stick with it or go back.
- megalomanu 12y agoI started to learn Emacs with its native commands and shortcuts. But I switched to evil when I noticed than I was unable to memorize the shortcuts for some basic actions like "add a character to the end of each line". Today I use evil-mode for all tasks and to be honest I don't think I'm missing something. The Emacs shortcuts are not mandatory to benefit of the power of Emacs, which resides essentially into its modularity and plugins.
- eyko 12y agoI started off with emacs, moved to vim, and now i'm back on emacs with evil mode.
- mulander 12y agoI can tell you how I switched a couple of years ago. I started to use emacs for the sql-oracle mode since it was tons better than the standard sqlplus client shipped by Oracle. I still kept doing most of my coding in vim but gradually was learning emacs by working with that sql mode (there is of course a mode for every database there). Later on I started doing notes in org-mode as it was also nicer than anything else I used at that time. The ability to do ad-hoc tables/spreadsheets in it helped a lot. Then stuff just started rapidly speeding up. I found out that browsing changesets with the emacs vcs mode is great (you can open up a file in annotation mode and flip back/forward through revisions). Browsing the filesystem, grepping from withing emacs etc. By playing around with the modes I got really used to how the editor ticks and switching to coding in it daily was just a natural evolution as I started doing more & more stuff from inside of emacs.
- jacobmoe 12y agoMy experience was similar, except with Sublime. I used Sublime for most things and org-mode for note taking. Then I started using emacs for personal projects but kept using Sublime at work. Eventually I started to feel almost as productive with emacs as Sublime. Once I found projectile and helm-projectile for project navigation, I made the switch entirely.
- dimitar 12y agoContinue to use your previous IDE or editor and gradually switch to Emacs as you learn more.
- Kurtz79 12y agoIf you just want to manage multiple tiled command-line windows, just try vim+tmux (getting session management on top of it). There was at least another tiled window manager able to embed GUI windows.
- vijaykiran 12y agoYou might want to try https://github.com/syl20bnr/spacemacs https://github.com/syl20bnr/spacemacs
- pyre 12y agoI've been looking into spacemacs, but I've found it to be a bit bloated vs. my personal config. It takes longer to start up, and sometimes just typing text in Insert Mode was sluggish (I imagine due to one of the autocomplete/typeahead libraries). That said, it has a lot of nice things and nice ideas. I'm undecided if I want to port my personal config to spacemacs, or just pull things out of spacemacs into my personal config.
- vijaykiran 12y agoI think I had sluggish behaviour sometime ago - but the updates to the config are happening at a very fast pace. I'm a pretty happy user. Also, the chat on https://gitter.im/syl20bnr/spacemacs https://gitter.im/syl20bnr/spacemacs is very active too, may be someone there could answer your specific questions (if you haven't asked already). EDIT: you can also disable the packages you don't need, perhaps that's an option.
- pyre 12y ago> EDIT: you can also disable the packages you don't need, perhaps that's an option. I realize that, but it also means tracking down which thing is misbehaving because it's not immediately obvious. I haven't given up on Spacemacs, but for the time being, I'll need to swap back and forth with my personal config so that I can get work done. At the very least, there are things that I like about it that I'll want to figure out and pull into my personal config. There are also some things that could use a bit more documentation. For example, porting parts of my config over, I didn't realize that :nohlsearch was already bound to evil-search-persist-remove-all in the Spacemacs initialization.
- jpradeek 12y agoTry Spacemacs: https://github.com/syl20bnr/spacemacs https://github.com/syl20bnr/spacemacs Being a Vim user of 4+ years, and having made 2 previous attempts at switching to Emacs, this is the setup that finally made me immediately productive enough to get work done. Been using this as my primary environment for more than a month now.
- wooger 12y agoThanks for this, looks like like a better, more encompassing version of the evil-mode + customisations that I've hacked together thus far for emacs. Amongst many other changes I've remapped the spacebar (while in normal mode) to send a C-x, colon (:) to send a M-x, so I have access to a ton of emacs commands while mainly just using vim.
- bojo 12y agoAfter years of using vim I made the switch last Friday when I stumbled across this fellow's blog post while randomly trying to figure out more about evil mode: http://juanjoalvarez.net/es/detail/2014/sep/19/vim-emacsevil-chaotic-migration-guide/ http://juanjoalvarez.net/es/detail/2014/sep/19/vim-emacsevil... It took all day Saturday to configure things so they mostly behaved the same as my vim environment, mixed with learning emacs specific stuff along the way. There's a few quirks I still need to work out, but the power to configure absolutely anything is worth the switch in my book. I have to admit, I wish I had made the switch sooner. The biggest thing I desire right now, and maybe I just don't know what to look for, is a way to swap between full sets of buffers. i.e. Group A: handful of IRC windows, Group B: project 1's code buffers, Group C: project 2's code buffers, etc. Maybe someone has a tip?
- gcv 12y agoUse either https://github.com/nex3/perspective-el https://github.com/nex3/perspective-el or https://github.com/pashinin/workgroups2 https://github.com/pashinin/workgroups2.
- noahl 12y agoI just hit the same issue, and I started using desktop-save-mode for that (https://www.gnu.org/software/emacs/manual/html_node/emacs/Saving-Emacs-Sessions.html https://www.gnu.org/software/emacs/manual/html_node/emacs/Sa...). It may be a bit heavyweight for instant switching, depending on what you want. I found it among a list of possible solutions at http://www.reddit.com/r/emacs/comments/1m73gs/how_do_you_manage_multiple_workspaces/ http://www.reddit.com/r/emacs/comments/1m73gs/how_do_you_man... .
- bojo 12y agoThat is exactly what I was looking for. Thanks!
- cmiles74 12y agoBeing able to extend the browser with my own Elisp code turned out to be the hook for me; I'd encourage you to learn some Elisp right at the start. Also, I've had good luck with Emacs Live. http://github.com/overtone/emacs-live http://github.com/overtone/emacs-live
- a3n 12y agoI'm always a little jealous when I see what people do with emacs. But I've never liked using emacs, so I've resigned myself to a permanent, mild case of emacs envy. I think you could get approximately his same functionality with a terminal (e.g urxvt) and tmux for the splitting. In fact I do essentially that at work on Windows, from a cygwin terminal and tmux. When it fits whatever workflow I'm doing from within cygwin, I'll launch the occasional Windows program from there; the rest of the corporate Outlook, IE etc is done normally from Windows. At home on Linux I get my basic window splitting from my window manager, i3wm. If I need more terminal-ish splitting I'll run tmux in a urxvt. ... still jealous of emacs though.
- chriswarbo 12y agoThe nice thing about Emacs is how much it's open to modification. There are compatibility modes to make it work like other editors (eg. "evil mode" to make it work more like Vi, "cua mode" to use "normal" key combos instead of having to learn Emacs's, etc.). There are often a bunch of alternative ways to do things, which have their own pros and cons, so if something seems frustrating, it pays to Google around a little to see if there's another way. For example, running a terminal can be done with `term` (b/w) or `ansi-term` (colour), which provide a pretty standard xterm-like terminal emulator, completely under the control of whatever shell you use (eg. bash). This is useful for screen-manipulating programs like ncurses-based UIs, but is awkward to manipulate as text (a bit like the awkward copy/paste functionality in screen and tmux). There's also `shell`, which runs a regular shell (like bash), but Emacs keeps control of the screen. This makes it useless for curses-based UIs, but great for text manipulation. For example, rather than running a pipeline over and over, tweaking the output options, we can often just dump everything to stdout then play around with it using the full power of Emacs (search/replace, regexes, keyboard macros, lisp functions, etc.). There's also `eshell`, which is like shell mode but instead of a regular shell like bash, it uses a custom shell written in Emacs Lisp. Eshell's strength is its integration with Emacs; for example, Emacs Lisp functions can be run just like commands and Emacs buffers (including shells!) can be treated as files, etc. Eshell's weakness compared to shell is that it can't do pipes. Personally, I use mixture of shell and eshell, plus some handy Lisp functions eg. for spawning new shells instead of always switching back to the same one. I avoid term and ansi-term in favour of a separate st terminal though, since they're pretty slow to update and their lack of decent text manipulation makes them feel uncomfortably "un-Emacsish".
- gexla 12y agoInteresting idea. I would just use something like DWM, a lightweight tiling window manager. You still get the simplicity but with a bit more flexibility. Most people will probably quickly hit a deal breaker with just using Emacs as a WM.
- chriswarbo 12y agoI agree. He's not really using Emacs as a WM, so much as using no WM, and doing as much as possible within Emacs. Note that Emacs can be used as a WM, with a little effort: http://www.emacswiki.org/emacs/EmacsXWidgets http://www.emacswiki.org/emacs/EmacsXWidgets Likewise, it wouldn't be "using Firefox as a WM" by just running Web apps in a fullscreen FF. You'd need something like PyroDesktop http://web.archive.org/web/20080905102046/http://www.pyrodesktop.org/Main_Page http://web.archive.org/web/20080905102046/http://www.pyrodes... I much prefer my current Xmonad setup to this "Emacs WM": 1) My windows are all fullscreen, whilst his are stuck at their app-specific defaults. 2) I can use multiple desktops (in practice, each one holds a different app, including 2 instances of Emacs) 3) I can show one desktop on my laptop screen and another on an external monitor (or occasionally a projector). I have no idea how his setup would cope with multiple screens. 4) I can have long-running external windows. He must close his before returning to Emacs. Whilst I could live without this, it would be a pain. Even if I only used each app temporarily, I'd have to wait for them to start up every time. 5) I can run slow Emacs applications in a separate instance. I read my mail with Gnus, which gives me four options: 5a) Run Gnus in my main Emacs instance, which will freeze every time updates are fetched. 5b) Start a separate Emacs instance for Gnus, which I must wait for as it fetches updates, since it is overlayed above my main Emacs instance. 5c) Start a separate Emacs instance for Gnus in a terminal, which of course limits me to a character-based interface, and causes key conflicts between the outer and inner Emacs instances. 5d) Have a long-running GUI Emacs instance, fetching mail on another desktop, which doesn't interfere with my main Emacs and I can switch to instantly whenever I like.
- cJ0th 12y agoMy impression has been that emacs is a poor window manager. Granted, I am not incredibly skilled with emacs but even after some weeks I was still confused by the way emacs opened up new windows or changed existing windows when you've clicked on something (for instance, in dired or org-mode's agenda) I ended up to open everything in a new frame and left the management of these frames to awesomewm.
- agumonkey 12y agoIt's pretty bare. The thing is, anyone can build a new management library (the buffer-window tree is accessible), there are some extensions, like tabs, too, but it seems most emacsers are ok with the way things are. Things are moving a little smoother in its dev though (migration to git, windows can be sized per-pixel ...), so maybe now is the time for pushing some new ideas.
- brudgers 12y agoEmacs has many frustrating behaviors out of the box. Typo-> C-z->Crap->Grab Mouse->Expand Emacs Window->Scold self for not calling it a frame. "Frames v. Windows" thing aside, every behavior in Emacs is configurable. It's just that the default assumes that the user fired up Dired to seriously use Dired. The default assumes that the user is using Emacs as Dired and so it becomes Dired with lots of dedicated resources. Orgmode is the same way. They don't constrain the amount of information they show in deference to other activities.
- chriswarbo 12y agoYeah, I do find it annoying how many Emacs-based applications assume they're the only thing running. I'm developing an application built on ProofGeneral, which itself is built inside Emacs. I ran the test suite one day and one function turned out to quit Emacs if it encoutered an error! It took out all of my open shells, files, etc. (everything was saved, but I had to open them all again). Now I'm running the tests in a dedicated Emacs process, launched via a command from eshell!
- 12y ago
- dmm 12y agoStumpWM is strongly inspired by emacs. It uses a similar window handling style. https://stumpwm.github.io/ https://stumpwm.github.io/
- TeMPOraL 12y agoAlso, it's written in Common Lisp, which - apart from giving it points of awesomeness - means you can easily plug Emacs into it via SLIME/SWANK.
- sklogic 12y agoIf only eshell was more usable. My favourite setup so far is i3 + emacs + xterm.
- chriswarbo 12y agoThere's eshell, shell and term, each with tradeoffs (see on of my other comments). I have an external terminal running tmux and a bunch of curses programs (wicd-curses, alsamixer and cmus) but do everything else in shell mode or eshell mode. To me, the killer feature of shell mode is the ability to manipulate the buffer contents like any other file. The killer feature of eshell is its built-in TRAMP support, for manipulating and opening remote files transparently. Eshell's lack of pipes makes shell mode my default though.
- omaranto 12y agoDoes eshell lack pipes? I thought it had pipes and output redirection and lacked only input redirection.
- omaranto 12y agoWhat problems do you have with eshell?
- sklogic 12y agoEshell is just awkward to use. And I'm a bit of a freak, I still need tektronix emulation sometimes.
- allending 12y agoWhat is the best way to actually learn emacs? I'm a vim guy who is curious enough to switch but I'd rather just hack the introductory process and get to the fun bits.
- reitanqild 12y agoI read the built in help and the recommended parts didn't take too long (30 - 90 minutes somewhere I guess). Used the GUI version (the menus are usueful for reference when I started) but learned the new copy / paste keys instead of using Windows standard and generally try to pick up every shortcut. I've tried a few "distros" and found one I liked. I also spent a little (too much?) time on implementing org-mode, mostly according to http://doc.norang.ca/org-mode.html http://doc.norang.ca/org-mode.html Wouldn't use it for window manager though for roughly the same reasons I wouldn't use the tractor to go shopping with the family. (Background: I've used vim for configuration for the last few years and ST2/3 + Netbeans for developement, never touched emacs before last fall except by accident.)
- mjhoy 12y agoI was a heavy Vim user, and what worked for me was forcing myself to use emacs for a project. Other people use evil-mode, but I kept the standard key bindings. Use the help as much as you can, and learn about functions like C-h k and C-h m. I stayed with emacs for org-mode, for buffer management, and then for projectile, magit, flycheck, mu4e, etc etc...
- RBerenguel 12y agoI'm a self-considered emacs user, but I like evil-mode. But I'd also recommend sticking to just emacs when switching (I think 20-30 days of "only emacs keybindings" may be enough) to learn a little about its normal keybindings. It's important to know where you are moving, even if then you change the furniture ;)
- mjhoy 12y agoI've never tried evil-mode, but I always thought it would confuse me when using things like helm and magit and org-mode that (sometimes) use emacs-like bindings for their controls. Do you run into any problems with this?
- srott 12y agoNo bad for a first try, but my goal is cat /proc/cmdline initrd=/install/initrd.gz quiet init=/usr/bin/emacs
- p4bl0 12y agoIt has already been done, see http://www.informatimago.com/linux/emacs-on-user-mode-linux.html http://www.informatimago.com/linux/emacs-on-user-mode-linux.....
- cben 12y agoHalf a decade ago when I was using a slow-booting (2min?) netbook, I sometimes used both this and init=/usr/bin/python when I wanted to test some idea real quick.
- deleted 12y ago[deleted]
- Slackwise 12y agoThey have evil-mode for that: http://www.emacswiki.org/emacs/Evil http://www.emacswiki.org/emacs/Evil
- simonswain 12y agoXmonad, Emacs, a terminal and Chrome pretty much do the same thing for me on Ubuntu desktop, possibly with a little less pain. Mostly mouse free operation, and easy resizing, swapping etc. If you want to learn Emacs, just jump in head first. Try and use it like a native. Just for kicks I'm trying to do the same with vi by forcing myself to use it for anything vaguely sysadmin related.
- jeffreyrogers 12y agoI agree that that is the best way to learn Emacs (and vi/vim). For me, the hard part wasn't so much learning to navigate Emacs as it was customizing it to my liking. The basics of Emacs are pretty straightforward (unlike vim, which takes a while to get used to), but using it well requires you to understand how to install packages and at least read emacs lisp.
- _delirium 12y agoI generally like that setup better as well, but imo one of the advantages of the emacs approach is that there is more of a culture of providing extensive API hooks for scripting. If you run an RSS reader inside emacs, it's expected that it'll expose many/most of its operations via elisp function entry points, so what's going on in the reader is "transparent" in a sense: scripts can query the list of feeds, the items within the feed, the read/unread status of items, can grab the text of items, can trigger re-fetches, etc. And you can integrate that with a bookmarks manager, outgoing email, whatever. Most tabbing window managers also provide a pretty good scripting interface, but the programs you run inside them tend to be more opaque. If you run the ncurses RSS reader 'newsbeuter' in a window, your WM scripts can't easily interact with a running instance, short of screenscraping its output and sending it raw keystrokes as input, because it doesn't expose any kind of API.
- MrDom 12y agoThank you for this comment. I spent years thinking emacs was cool, but didn't quite get the push toward using emacs for everything but the kitchen sink until now. Time to take another look at it, I suppose.
- 12y ago
- wtbob 12y agoOne can get the same effect (full-screen emacs, no window decorations, Lisp) with stumpwm, a window manager written in Common Lisp. It's under active development, but it has not so far succumbed to creeping featuritis. And one can then run Firefox instead of Chrome…
- technomancy 12y agoYeah, the main problem with this approach is all the mouseless extensions I found for webkit (vimperator, surf, uzbl, etc) were built around Vim bindings instead of Emacs bindings. For some reason all the Emacs-centric ones (Conkeror, Keysnail) are based on Gecko. Maybe this is because Gecko's extension mechanism is worlds better than the one that ships with Chromium, (which requires you to recompile the C++ just to change the key bindings for menu items) and the crap extension mechanism bothers Emacs users more than Vim users, but it's a weird coincidence all the same. And it's always possible (and hopeful) that things have improved in webkit land since I last took a look.
- cmiles74 12y agoI've been really happy with Conkeror and, IMHO, it's been more reliable than the keyboard driven, webkit browsers (Luakit, DWB, etc.) I've had issues where they'll crash on certain websites (my bank, Jira, etc.) and Conkeror will soldier on.
- smazga 12y agoI thought stumpwm was dead until just now! Thanks for that. Did they ever fix the system tray situation? When I last used it (several years ago) there was refusal by the devs to implement any sort of systray support and the third-party tools did not fill the gap, so I switched to i3.
- profsnuggles 12y agoI use the stumptray module in stumpwm-contrib https://github.com/stumpwm/stumpwm-contrib https://github.com/stumpwm/stumpwm-contrib
- mark_l_watson 12y agoThanks for writing that up - I am going to work on improving my Emacs setup on my Linux and OS X laptops. I find it much easier to write or code when my screen is not cluttered so full screen Emacs makes sense for me. BTW, off topic, but re: having a personal environment while at work: I was fortunate to work at Google for a while in 2013 and I was uncomfortable having any personal setups on my work Linux box or laptop. My solution was simple: I just used my Android phone for personal email, checking Hacker News, etc. during my lunch break. I also have a SSH shell app on my phone so in an emergency I could have accessed my personal servers. Anyway, it seems odd to spend too much effort setting up a personal environment for use at work :-)
- helper 12y agoThe one thing that I have never been able to work to my liking is running a shell inside emacs. I've tried the different modes (term, ansi-term, eshell) and find that they are all deficient in different ways. I think the main issue is that I have different operating models for emacs vs a terminal and when they get mashed together I subconsciously want a superset of functionality without any conflicts. So when there are key bindings that are different in term mode I get quite annoyed. Likewise, I have no problem with copy/paste in an xterm or in emacs, but put a terminal inside emacs and copy/paste frustrates me all day.
- sedachv 12y agoHave you tried term/ansi-term mode in Emacs 24? I thought it (and eshell) weren't that usable in 23 but just this past week I decided to give them another go in 24. It's a huge improvement, I went from a standalone iTerm/st and occasional shell mode to eshell and ansi-term for everything. So much better.
- julienchastang 12y agoI basically have a variation on this set up but I use Vagrant on top of VirtualBox. Then I keep the Vagrantfile and ancillary files on github. So I can theoretically show up to a computer and be able to quickly recreate my environment. I customize my VMs for Python or Clojure development and have a nicely set up emacs as foundations for both. This set up is really useful for Python where different Pythons coming from different package managers (brew, conda) tend to clash on my regular (OS X) OS.
- math0ne 12y agoAre the files for this public, can I see your config?
- gknoy 12y agoLooking at his user info, it looks like this might be it: https://github.com/julienchastang/dotemacs/blob/master/settings.org https://github.com/julienchastang/dotemacs/blob/master/setti... It looks like it's meant to be included directly as a config file, which seems like deep magic to me. :-)
- julienchastang 12y ago@math0ne @gknoy Sorry for answering late: https://github.com/julienchastang/dotemacs https://github.com/julienchastang/dotemacs You'll need tangle/babel ➜ .emacs.d cat init.el (package-initialize) (require 'cl) (require 'ob-tangle) (org-babel-load-file "~/git/dotemacs/settings.org") https://github.com/julienchastang/vagrant https://github.com/julienchastang/vagrant (still a work in progress)
- math0ne 12y agoThanks man!
- riquito 12y ago> I always grin when I read the change log in the release notes of any window manager project. It begins by complaining that all other window managers are bloated, and that this one will be small and efficient, [...] and soon the project is just as big as the competition I bet he doesn't grin thinking about how many things can Emacs do other than editing text. That said, I like people with peculiar workflows, they open up ideas and discussions. p.s. xmonad + vim is the true way ;-)
- TeMPOraL 12y agoWell, Emacs doesn't claim to be just a text editor. It's a living Lisp instance with text-editing utilities bolted on top of it.
- philo23 12y agoMinor nitpick, but isn't that Firefox, not Chromium in the screenshot of the web browser overlaying emacs, right after mentioning that he uses Chromium instead of Firefox because it requires a "real" window manager? Regardless though it's an interesting setup, I've always wanted to try a minimal window manager.
- pjmlp 12y agoThe 80's are back, except Emacs fails short of being Genera.
- wtbob 12y agoYeah, but it has the virtue of existing, unlike (sadly) Genera. One of the reasons I like to use stumpwm (c.f. supra) is that I have an always-running Common Lisp process which I can connect to. I have some ideas about how to make it even cooler, but sadly I've not explored them yet.
- sedachv 12y agoEmacs isn't just a worse-is-better Lisp machine, it's a worst-is-better one.
- tuhdo 12y agoThen, you can just think of it as a prototype that just working with text.
- coldnebo 12y ago> Of course, I do not install personal software... > My remedy is to install a virtualization system... which is personal software.
- pyre 12y agoHe says that his work is virtualization systems, so the install of (e.g.) VirtualBox itself is not "personal software." It really comes down to whether or not you consider the guest OS image running in the virtualization system to be "installing personal software."
- falcolas 12y agoMost IP reassignments I've ever signed have included the clause "any IP developed with the company's resources belongs to the company". This would include anything created in such a VM, unfortunately. So, if you're not worried about that, it's a great separation of concerns. If you are developing new IP, though, you would want to be very careful about using your work machine. I'm even nervous about logging into a personal machine via SSH from my corporate laptop, if I'm honest. Might not be enough to legally take ownership, but its probably enough to draw you into a protracted legal battle.
- pyre 12y agoIt doesn't sound like he's "creating" anything of value in the VMs. He notes that he mostly uses it for org-mode. It's probably just him needing to access (from his work computer) to notes / agenda info that he would rather keep (e.g.) on his personal Dropbox. You are right though that anything done using "company resources" may be fair game for a legal battle to determine ownership.
- raphaelss 12y agoDoes it handle multiple screens?
- kyllo 12y agoThis is awesome and has opened my eyes to features of emacs I didn't know about. But I still have use for tmux because it lets me attach to the same long-running session on a remote host from multiple clients. I'll probably just start having emacs be the only window open in my tmux session.
- TeMPOraL 12y agoCheck out emacs-server then ;).
- kyllo 12y agoOk, now I have no need for tmux anymore. Thanks!
- jacobsenscott 12y agoI use emacs every day. You'll soon find emacs is a terrible xterm/gnome-term/iterm/whatever-term. * The emacs terminal is very slow. Run a command that produces a few hundred lines of output and you need to wait 30 seconds for it to catch up. A dedicated terminal program displays the output several orders of magnitude faster. * Emacs crashes or freezes from time to time forcing you to kill all your emacs terminals anyway. It isn't nearly as stable as tmux. That said you can connect to a tmux session with an emacs terminal. That fixes the stability issue - even if emacs crashes your tmux session lives on. It doesn't handle resizing well, and it is still slow as molasses. I do use emacs server. That plus emacsclient allows you to open files instantly, and your term mode and gui mode emacs can share buffers.
- Gurkenmaster 12y agoI was already doing this on arch but I wasn't aware of the fullscreen mode so I used matchbox as a simple fullscreen window manager.
- deleted 12y ago[deleted]
- davexunit 12y agoRather than using Emacs standalone, I like using ratpoison as the window manager. That way I can have a full screen Emacs and easily use other applications, too. Bonus points for not having to use the mouse for any of it.
- SquidMagnet 12y agoJust out of curiosity, have you tried StumpWM? It was also created by Shawn Betts; the idea was essentially to rewrite ratpoison in lisp.
- davexunit 12y agoYeah, I've used StumpWM. I don't really like Common Lisp so I don't use it anymore. I want to use guile-wm because it's written in Scheme, but it's not ready to be a daily driver.
- deleted 12y ago[deleted]
- hollerith 12y agoThe OP uses (set-frame-parameter nil 'fullscreen 'fullboth). In contrast, I use (set-frame-parameter nil 'fullscreen 'maximized) leaving OS X's menu bar and Dock on the screen. I do not know if Homebrew package `emacs` has been fixed because these years, I only ever install Homebrew package `emacs-mac` (a.k.a., Mitsuharu Emacs) but it used to be that one had to install Emacs.app via `brew install emacs-mac` instead of the conventional `brew install emacs` for (set-frame-parameter nil 'fullscreen 'maximized) to automatically and cleanly occupy every screen pixel except for the pixels needed for the menu bar and the Dock.
- gcv 12y agoHow does this handle multiple displays?
- hollerith 12y agoI cannot do a definitive test because I only ever use one monitor at a time, but since (set-frame-parameter nil 'fullscreen 'maximized) does not make use of the fullscreen mode introduced by Apple with Lion, it will almost certainly not suffer from the most-complained-about problem with multiple monitors on OS X. In contrast, (set-frame-parameter nil 'fullscreen 'fullboth) does make use of Lion's fullscreen mode -- and it gets rid of the menu bar and the Dock, letting the Emacs frame occupy every screen pixel. But then at least on Lion and Mountain Lion (which is the extent of my experience with recent versions of OS X) multi-monitor support is hosed IIUC.
- ramnes 12y agoSince the goal is a low VM footprint, rather than install a X on the VM, I'd rather use Emacs as my kernel init process and simply use my host web browser when needed.
- scrumper 12y agoI do something similar when I'm taking notes in meetings. It's a nice clean interface. I love your modeline, which is actually clear - any pointers to how to do it myself? I'm using Prelude (I know) which does its own weirdness.
- tyrust 12y agoIt looks like he has his emacs config on github [0]. emacs-modeline-mode-line{,2}.org [1] are probably what you're looking for. [0] - https://github.com/howardabrams/dot-files/blob/master/emacs.org https://github.com/howardabrams/dot-files/blob/master/emacs.... [1] - Yes, he writes his configs in org-mode. This is the first time I've actually seen literate programming used and it's beautiful.
- scrumper 12y agoGreat thanks, missed that. Be interesting to see the LP stuff.
- 0xFFC 12y agoemacs is my os and almost everything!
- ttmarek 12y agoDoes anyone know what theme he's using?
- Nashie 12y agoHe mentioned Tomorrow Night in one of his YouTube videos. Don't know about his windows status bars tho.
- sblom 12y agoI thought you were going to demonstrate x11-mode or something! Whew.
- mattjbarlow 12y agoI would love to do something similar. I recently switched from Weechat to ERC, and started getting into eshell more heavily. However, I must have a browser window open at all times. There is no way around this. So, unless another solution presents itself, I will continue using dwm with Emacs / Firefox.
- jtth 12y agoCan emacs soft-wrap at a set column size without doing so in the middle of a word? When I last tried to get into it I couldn't get it to do this, and that put me off my meal.
- yohoho22 12y agoYeah, if you set the buffer-local variable "word-wrap". As noted in the docs for that variable, you probably just want to use "visual-line-mode", as that sets it and also adjusts some navigation keybindings to account for the soft wrapping. Works pretty well, overall.
- ndesaulniers 12y agoeverything but a good text editor... :P
- spiralpolitik 12y agoI used to be a big Emacs user, especially in my postgraduate days and would love to go back to the run everything in Emacs days but the world has changed. These days I only use it for editing text. The many problem is that Emacs hasn't really kept up with the times. It's bloated in the wrong ways with too many default packages installed. Asynchronous processes and integrating WebKit to allow binary buffers (PDF, Images, SVG) would solve a lot of issues but I can't see it happening without a fork given the stubbornness of RMS. The recent spat over AST in gcc (which would again improve Emacs) doesn't increase the hope that things will change anytime soon. And that the sad thing. The idea of Emacs, a scriptable, extensible environment is timeless and should not be lost to the past. (BTW I would pay money for an Emacs fork and modernization project)
- AceJohnny2 12y ago> (BTW I would pay money for an Emacs fork and modernization project) Maybe go talk to Jamie [1] and see if he's willing to give it another go [2]? [1] https://www.dnalounge.com/ https://www.dnalounge.com/ [2] http://en.wikipedia.org/wiki/XEmacs http://en.wikipedia.org/wiki/XEmacs (for some background: http://www.jwz.org/doc/lemacs.html http://www.jwz.org/doc/lemacs.html Jamie Zawinski later went to work at Netscape where he was responsible for the Unix version, and named the Mozilla open-source project that you have heard of. He cashed out of Netscape and bought the DNA Lounge nightclub. On his blog, he likes to point out software inanities with the caption "This is why I sell beer now")
- spiralpolitik 12y agoHe also sells me my pizza.
- steveeq1 12y agoCan't you integrate webkit with emacs-webkit? http://www.emacswiki.org/emacs/WebKit http://www.emacswiki.org/emacs/WebKit
- josch 12y agohttp://www.sxemacs.org http://www.sxemacs.org, an xemacs fork, works as a window manager. hasn't been updated in a while, though.