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
-~----------~----~----~----~------~----~------~--~---

Reply via email to