8 ms·
Extreme Productivity with Screen and Vim
- hubb 16y agowhat's with the "big booty bitches" in the background? haha
- clyfe 16y agowhat is "Screen"?, link please! EDIT, ty hubb
- hubb 16y agohttp://www.gnu.org/software/screen/ http://www.gnu.org/software/screen/
- junkbit 16y agoThe main selling point of screen is not actually the way he uses it in the video, to manage multiple windows, but the way you can disconnect and reconnect to any screen session from any computer using the screen daemon and ssh. For example start a bittorrent download running in screen at home and then monitor it from work, reload X without loosing your work, or the canonical example: idle in irc all day without being disconnected.
- feydr 16y agoyeh this is useful detach/re-attach, however, I usually have a screen session opened locally so when I'm doing remote work I typically open several ssh connections since they are cheap -- anything I want to put into the background I do so the typical way and not through screen -- good point though
- deleted 16y ago[deleted]
- eegilbert 16y agoI love it when old becomes new again.
- itodd 16y agoI've been using tmux instead of screen lately. It's nice to have window splitting built in. http://tmux.sourceforge.net/ http://tmux.sourceforge.net/
- dylanz 16y agoIt's also what the OpenBSD team uses, and has been given a good security audit.
- digitallogic 16y agoI use emacs for splitting so I don't generally need this feature. Actually most of my screen sessions only have a single window with emacs in it. I use screen mainly to attach and detach sessions.
- stevelosh 16y agoYou might like dtach -- it's a program that just lets you detach/attach sessions. It's simpler than screen, so if that's all you use screen for you might like it. http://dtach.sourceforge.net/ http://dtach.sourceforge.net/
- cedsav 16y agoI use Eclipse as my main development environment. I'm familiar with vi, I use it regularly for sys-admin stuff, and used it extensively a while back in college. As far a text-editor goes, I'm 100% sure that vim/emacs power users are extremely productive (And I'll wage that this video isn't the best example of productivity vs. a GUI). What I haven't been able to figure out though is the workflow of vim users when working on real projects, not a single source file. I rarely spend a lot of time writing code in a single file. I often have to navigate the project folder structure to look for stuff, I need to compare files, work with the source control and so on.. all of this I feel I can do pretty efficiently from within Eclipse. So how do vim/emacs users do? I presume it's all command line and a lot of typing. Am i wrong?
- ominous_prime 16y ago> So how do vim/emacs users do? I presume it's all command line and a lot of typing. Am i wrong? It's not much typing, and it's definitely faster than switching to a mouse. Both vim and emacs have plugins for easily browsing file systems, and through trees of source code. I personally use a separate terminal window for source control, but that can easily be integrated as well. It's probably a similar workflow to what you're doing now, just without a mouse, and with different key bindings.
- aerique 16y agoWe generally use Unix as our IDE, yes, but it doesn't involve a lot of typing. Emacs users can also do everything from within Emacs.
- koenigdavidmj 16y agoIn Vim, FuzzyFinder (http://www.vim.org/scripts/script.php?script_id=1984 http://www.vim.org/scripts/script.php?script_id=1984) makes it really easy to flip between files. That, and once you learn Vim frame management, you become a lot more productive on multiple files.
- swombat 16y agoAnd NERDtree. http://www.vim.org/scripts/script.php?script_id=1658 http://www.vim.org/scripts/script.php?script_id=1658
- seancron 16y agoIt looks like the server just died. The post is mostly this video: http://vimeo.com/14481789 http://vimeo.com/14481789 Cache: http://webcache.googleusercontent.com/search?q=cache:http://airodig.com/2010/08/27/extreme-productivity-with-screen-and-vim/ http://webcache.googleusercontent.com/search?q=cache:http://...
- qusiba 16y agoThe problem of VIM is that, you need to do a lot of configuration yourself. While this is fan for me, I never recommend it to anyone who has less patience than I have. Any IDE would be much easier for them.
- mcantor 16y agoI found vim's configuration to be pretty natural, in that the bare editor worked fine for me, but as I became better-versed in its use, I would run into small things that made me think, "Hmm, I wish I could do this," or "Hmm, I wish this feature worked that way." Engraving each small thing into my .vimrc was a lesson in of itself that helped me learn more about vim each time; I rarely felt overwhelmed or like I had to figure everything out at once.
- korch 16y agoVim + Screen has been my "IDE" of choice for 5+ years. At this point I probably could not hack on code using any other toolset—it's so ingrained. And compiling Vim with Ruby bindings has also allowed me to whip up some very useful scripts to performs routine tasks like you'd see in Eclipse. Vim ftw!
- mcantor 16y agoLink to information on vim's ruby bindings? Google doesn't say much right off the bat.
- pyre 16y agoThe best source of information is in the vim docs. I also found that to be true of the python bindings as well. Google doesn't do as good of a job as the vimdocs do (probably because most people the whip stuff up using the bindings publish their code as vimscripts/plugins/etc instead of writing blog posts about it). Ruby => http://vimdoc.sourceforge.net/htmldoc/if_ruby.html http://vimdoc.sourceforge.net/htmldoc/if_ruby.html Python => http://vimdoc.sourceforge.net/htmldoc/if_pyth.html http://vimdoc.sourceforge.net/htmldoc/if_pyth.html
- Dornkirk 16y agoI actually don't really understand using this as an "IDE" - part of the reason I don't think I'd be able to leave Eclipse is because it's "fully loaded" so to speak - such as navigating my project's directory/structure, debugging, etc, and I don't think I could live without auto-complete (maybe I'm lazy, but I didn't see it in this video and I don't see how it'd be possible in a Vim environment?), not just auto-complete for the time saving but also for the inspection - I (unfortunately) work with a convoluted piece of technology where every instance of a class seems to inherit a gazillion properties & methods and I sometimes don't know what I'm looking for unless I can scroll down the list that auto-complete gives me.
- dan00 16y ago".. and I don't think I could live without auto-complete (maybe I'm lazy, but I didn't see it in this video and I don't see how it'd be possible in a Vim environment?) .." In insert mode the keys CTRL-P, CTRL-N complete the previous/next matching word. Instead of these keys you can use the supertab plugin, to complete a word by hiting tab in insert mode. You can choose where vim searches for matching words with the variable 'complete'. There's also the omnicompletion, which does language specific completes, like method names of an object, by using ctags. Search for 'omnicomplete <language>' to find the language specific plugin.
- fortes 16y agoI'm currently into vim/screen, but actually thinking of jumping ship to emacs/tmux [mostly due to orgmode]. Anyone ever done the same? From the looks of it, the screen to tmux transition will be the easy part :)
- hesitz 16y agoI started in basic Vim and migrated to using the Vimoutliner plugin, especially for non-code text. Orgmode is a hell of a lot more fully featured than Vimoutliner, has a much larger user base, and a much more active development team. I'm able to stomach Emacs by using the Viper and Vimpulse plugins that emulate a nice subset of Vim keybindings, but it still doesn't feel as good. If you need the extra features of Orgmode it's well worth it, though. Still, Vimoutliner probably has Orgmode beat when you consider just the outliner functionality (but of course Orgmode offers much more than that). Lately I've been witing LaTeX documents using the Vim Latex-Suite plugin. What I really should do is configure Orgmode to work with my LaTeX preamble and/or revise the LatexSuite so its outlining works more like Vimoutliner. Either way you can't lose.
- spudlyo 16y agoI didn't care for this video. I thought it was light on content and the narrator had some pretty annoying mannerisms. "...cuz you know, like back in the day we didn't have fancy X-windows where we could you-know move around and play on the web and look at porn and shit... so it was uh...you know, I mean... screen... but screen is still definitely, you know.. something that is really good to use." I do however agree with him that screen and vim are both pretty kickass, I just think he could have done a better job showing why.
- mcantor 16y agoI was surprised at how much the swearing and hesitating grated on me. I'm usually the first guy who wishes presenters would lighten up and joke around a little, but for some reason I couldn't stomach more than 3 minutes of this video. I just kept thinking, "Man... this is really unprofessional." I hope they don't revoke my sarcastic hippy license... I'm actually kind of jealous that it's got 26 upvotes on the frontpage. That's a lot! I love vim and screen with all my heart; maybe I should make a video like this, too. I feel like I could do them justice better.
- thesnark 16y agoI would watch such a video if you made one.
- feydr 16y agoyeh, apologies to anyone who finds the way I talk offensive -- this is how I talk 'normally' 24/7 -- anyone who has ever met me knows this is how I talk -- kinda surprised so many people get offended by it considering 70% of the internet... anyways, your right, I should have organized my thoughts a bit more before getting into this -- I tried writing them down on a notecard beforehand but eventually I was like 'fuck it'
- mcantor 16y agoYeah dude, I gotta say that it could have been pulled off better in that respect. It's not that I was offended--I curse all the time, depending on context. It's just that the stutters and "shits" didn't really add anything, and made it all harder to follow. I say, if you can drop the f-bomb and get an honest chuckle out of your audience, then by all means, go for it. But if it's just usual "filler" crap, avoid it.
- xbryanx 16y agoIf you want to learn some extremely useful tips for real productivity in Vim, I'd suggest the detailed videos on http://vimcasts.org/ http://vimcasts.org/ over this frenetic if enthusiastic video.
- markjuh 16y agohmm, :u to undo... who would do that?
- kevincolyar 16y agoIf you're a vim user on a mac, try out ViKing. http://vikingapp.com http://vikingapp.com
- Xurinos 16y agoI didn't watch the video, based on some of the other responses here (I do not have time for the presentation fluff), but I hope he made mention of slime.vim. If not, I will toss in a quick plug for it -- Want to quickly send blocks or lines of code to REPLs (and sometimes the command line) in your other screen windows? slime.vim is a vim extension that copies text from your vim session and pastes it into the screen window of your choice.
- njharman 16y agoI use screen sparingly (when it matters (remote long running process that I need to not die just cause Comcast Cable sucks ass and drops my internet) but would never use it "all the time" Fucking with Ctrl-A and my scroll back constantly pisses me off. And the advantages aren't worth learning how to remap Ctrl-A which I'm told is possible.
- pyre 16y agoMost things that are worthwhile have an up-front cost/learning curve. To dismiss something just because you have to take the time to learn about it first is a ridiculous concept. Personally I have the 'escape' mapped to the back-tick (`), and if I need to send an actual back-tick then I just hit it twice (``). I ripped this setup off from someone on StackOverflow.
- jarin 16y agoYou're missing a closing parenthesis!
- actf 16y agoTo those suggesting Vim/Emacs require less mouse usage than an IDE: I see little more than anecdotal evidence to support this. I personally use Visual Studio extensively in combination with the ViEmu pluggin, and I'd like to think that doing so is both more productive and utilizes the mouse less than a combination of screen/vim would. After configuring keyboard shortcuts, there is almost nothing I need to use the mouse for in Visual Studio. I get the benefits of using Vim plus I get the additional benefits of code completion, project management facilities, debugging utilities, and much more. Honestly, I fail to see the advantage to this approach.
- pyre 16y agoI use a screen session w/ multiple windows at work on the server, which I attach to every morning. Then I have all of the setup that I was working on the previous day right there in front of me. Some screen hacks: * I use grabssh[1] so that I can get ssh-agent forwarding working again when I reattach. ssh into the server, run grabssh, then reattach the screen session. Now all of my shells in the session can source fixssh to update their environment. * I also use a wrapper for ssh within a screen session: function screen_ssh_wrapper() { if [ -n "$STY" ]; then HOST=$(echo "$1" | sed -e 's,[a-zA-Z0-9],,g') if [ -z "$HOST" ]; then # Note: We need all of these vars b/c we want the ssh command to # inherit them from the current shell, and *not* from screen (for # long-running screen sessions, those values may be out of date) screen -t "$1" \ env \ SSH_CLIENT="$SSH_CLIENT" \ SSH_TTY="$SSH_TTY" \ SSH_AUTH_SOCK="$SSH_AUTH_SOCK" \ SSH_CONNECTION="SSH_CONNECTION" \ DISPLAY="$DISPLAY" \ ssh "$@" return fi fi ssh "$@" } alias ssh='screen_ssh_wrapper' [1] http://samrowe.com/wordpress/ssh-agent-and-gnu-screen/ http://samrowe.com/wordpress/ssh-agent-and-gnu-screen/