Hi Brian, All, On Wed, Jun 18, 2008 at 04:52:34PM -0600, Brian Jorgensen wrote: > For years, I've been hearing that effective text editing is essential to > productive coding, but I'd never really taken the time to move beyond > Notepad++, Text Mate, and gedit. I've recently started using vim, and I'm > really impressed. I can already see the dramatic advantages of things like > vim's advanced motion commands. > > But so far, this hasn't really translated into improved productivity. I > haven't been able to find a work flow that integrates powerful text editing > with incremental development. Earlier today I asked Ondrej about this, and > he encouraged me to send it to the list so we can all learn something from > each other. > > Here's my tenative wishlist, though I really want to hear what works for > _you_: > > - Something like IDLE's F5 (save, compile and run current file) > - Something like Visual Studio's F5 (save, compile, and run project, not > just the current buffer) > - An interactive interpreter in the same window as the editor. > - My ideal setup would not be python-specific, as I also code in C, C++, > C#, etc. (I still want to hear about how you use IPython, if that's your > thing.) > > Thanks! Hopefully this will be enlightening for all of us.
I'm a bit late, but here is my VIM setup: F9 is bound to ':make<CR>' in vimrc, so when I need to build somthing I hit F9. Likewise, there are - F10 for search-next-and-keep-it-on-top, - F11 & F12 to set filetype to changelog and diff (if it cannot be guessed by some reason) Also I use ctags a lot, so when working on a project, I build tags database first with $ ctags -R and then in VIM there are nice commands like :ta some_symbol or C-] to jump to symbol definition and also cscope is sometimes cool too! Also, I heavily depend on motion and other commands, e.g. 'cw' (change word), 'gqap' (reformat paragrhaph), 'gd' (go to place where a variable is defined in function), ']]' (next 1-level function/class), ']m' (next method), C-p (autocomplete), etc ... Besides VIM in xterm, I keep another terminal window where I run programs, run py.test, ipython sessions etc... That's it. Overall, I think this is not advanced, but I've settled on this scheme years ago, so if anyone is interested, here is my vimrc: http://landau.phys.spbu.ru/~kirr/cgi-bin/repos.cgi?r=kirr-setup;a=headblob;f=/dot/vimrc -- Всего хорошего, Кирилл. P.S. and a nice & funny thing about VIM's '!' (pipe) commands is that you can easily filter the whole buffer, or just a part of text through external command, like this: " nice papirus map <F6> !boxes -d parchment<CR> ... becomes ... ____________________________________ /\ \ \_| " nice papirus | | map <F6> !boxes -d parchment<CR> | | _______________________________|_ \_/_________________________________/ :) or more real-world related: this is some comments, ... blah-blah-blah ... with ":%!boxes -d c" becomes /******************************/ /* this is some comments, ... */ /* blah-blah-blah ... */ /******************************/ P.P.S Ah, I forgot to say, I turned arrows off several years ago to use only 'hjkl' for basic cursor movement. I'm still happy with this choise because this way there is no need to constantly move your arm from-left-to-right-and-then-back between main key group and arrows. P.P.P.S. And the last one :) Also, I tweak vim setups depending on locations, e.g. like this: " A4 if !exists("loaded_vimrc_autocmd") let loaded_vimrc_autocmd=1 autocmd BufNewFile,BufRead /NAVY-DEV-BIG/kirr/src/A4/* set noet tabstop=4 autocmd BufNewFile,BufRead ~/study/A4/* set noet tabstop=4 autocmd BufNewFile,BufRead ~/Files/incoming/maps* set noet tabstop=2 endif where I set different policy regarding expandtabs and tabstop defaults. Not sure whether this is the right way, but it works. ---- Hope this is useful for someone, Thanks Brian for starting this discussion, and Alan, Ondrej and Felix for sharing your experience. I'd like to hear more about people setups so that we all could get the best things from each other and improve. Thanks beforehand! --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "sympy" group. To post to this group, send email to sympy@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sympy?hl=en -~----------~----~----~----~------~----~------~--~---