diff options
author | bnewbold <bnewbold@eta.mit.edu> | 2009-02-03 06:07:56 -0500 |
---|---|---|
committer | bnewbold <bnewbold@eta.mit.edu> | 2009-02-03 06:07:56 -0500 |
commit | 95a9589201696dfe00a9219e5c2586bfec15339b (patch) | |
tree | ce1d69f874163022bf027924b1d522937d70e483 | |
parent | 3930f5c35bfbd42ad85e7139a5bff6f5fe665e28 (diff) | |
download | knowledge-95a9589201696dfe00a9219e5c2586bfec15339b.tar.gz knowledge-95a9589201696dfe00a9219e5c2586bfec15339b.zip |
vim, scheme updates
-rw-r--r-- | software/scheme | 18 | ||||
-rw-r--r-- | software/vim | 38 |
2 files changed, 53 insertions, 3 deletions
diff --git a/software/scheme b/software/scheme index 7b7041b..c64d000 100644 --- a/software/scheme +++ b/software/scheme @@ -9,8 +9,9 @@ See also notes on `The Little Schemer </k/books/littleschemer/>`__. Scheme Implementations ----------------------- - -Very partial list, mostly just the ones which are interesting to me. +Very partial list, mostly just the ones which are interesting to me. +Alexey Radul maintains a nice table of R5RS implementation details in various +packages on his `website <http://web.mit.edu/~axch/www/scheme/choices.html>`__. MIT/GNU Scheme The 7.9.0 release (last stable as of 01/01/2009) is not R5RS compatible, @@ -59,9 +60,20 @@ C-x u Undo C-y Paste ========= ==================================================================== +Command in ``.edwin`` to set Super-TAB to autocomplete scheme variables:: + + (define-key 'Scheme #\s-tab 'scheme-complete-variable) + Scope -------------- - ``set!`` looks up a symbol name and permanently changes the first value it comes across. ``let`` (and ``letrec``) create a new symbol with the given value. But wait, you need a ``lambda`` block to make everything work? + +Environment/Interpreter Commands +----------------------------------- +``(disk-save filename)`` will save a binary microcode image; an existing +image can be specified with the ``--band`` option at runtime or with +``(disk-restore filename)`` from within the interpreter. Bands are also called +worlds. + diff --git a/software/vim b/software/vim new file mode 100644 index 0000000..76ffa24 --- /dev/null +++ b/software/vim @@ -0,0 +1,38 @@ +============ +It's vim! +============ + +Typical .vimrc +------------------ +Here's what a typical ``.vimrc`` looks like for me:: + + if has('syntax') && (&t_Co > 2) + syntax on + endif + + set history=50 + set wildmode=list:longest,full + set showmode + set showcmd + set smartcase + set shiftwidth=4 + set tabstop=4 + set shiftround + set expandtab + set autoindent + + autocmd BufRead *.py set smartindent cinwords=if,elif,else,for,while,try,except, finally,def,class + +Commands +------------- +I search and replace globally a lot:: + + :%s/before/after/g + +Tricks +------------- +I often want to pull a particular gnarly line or two from another file; here's +the command I use to grab three lines of context around 'phrase':: + + :r!grep -A 3 'phrase' ../otherfile.txt + |