Archive

Posts Tagged ‘tips and tricks’

Vim tricks by Damian Conway

December 13, 2013 Leave a comment

At reddit I found an interesting talk given by Damian Conway. In this talk he shares some cool vim tricks.

The assets to the presentation are available here: Instantly_Better_Vim_2013.tar.gz

I found the following tips particularly interesting.

"====[ Make the 81st column stand out ]====================

"    " EITHER the entire 81st column, full-screen...
"    highlight ColorColumn ctermbg=magenta
"    set colorcolumn=81

    " OR ELSE just the 81st column of wide lines...
    highlight ColorColumn ctermbg=magenta
    call matchadd('ColorColumn', '\%81v', 100)

"=====[ Highlight matches when jumping to next ]=============

    " This rewires n and N to do the highlighing...
    nnoremap <silent> n   n:call HLNext(0.4)<cr>
    nnoremap <silent> N   N:call HLNext(0.4)<cr>

    " OR ELSE ring the match in red...
    function! HLNext (blinktime)
        highlight RedOnRed ctermfg=red ctermbg=red
        let [bufnum, lnum, col, off] = getpos('.')
        let matchlen = strlen(matchstr(strpart(getline('.'),col-1),@/))
        echo matchlen
        let ring_pat = (lnum > 1 ? '\%'.(lnum-1).'l\%>'.max([col-4,1]) .'v\%<'.(col+matchlen+3).'v.\|' : '')
                \ . '\%'.lnum.'l\%>'.max([col-4,1]) .'v\%<'.col.'v.'
                \ . '\|'
                \ . '\%'.lnum.'l\%>'.max([col+matchlen-1,1]) .'v\%<'.(col+matchlen+3).'v.'
                \ . '\|'
                \ . '\%'.(lnum+1).'l\%>'.max([col-4,1]) .'v\%<'.(col+matchlen+3).'v.'
        let ring = matchadd('RedOnRed', ring_pat, 101)
        redraw
        exec 'sleep ' . float2nr(a:blinktime * 1000) . 'm'
        call matchdelete(ring)
        redraw
    endfunction

"====[ Make tabs, trailing whitespace, and non-breaking spaces visible ]======

    exec "set listchars=tab:\uBB\uBB,trail:\uB7,nbsp:~"
    set list

"====[ dragvisuals ]======

    runtime plugin/dragvisuals.vim
    vmap  <expr>  h        DVB_Drag('left')
    vmap  <expr>  l        DVB_Drag('right')
    vmap  <expr>  j        DVB_Drag('down')
    vmap  <expr>  k        DVB_Drag('up')
    "vmap  <expr>  D        DVB_Duplicate()

    " Remove any introduced trailing whitespace after moving...
    let g:DVB_TrimWS = 1

The file dragvisuals.vim is in the archive linked above.

Categories: vim Tags:

HTML Best Practices for Beginners

October 28, 2013 Leave a comment

If you need to create HTML pages from time to time, here are some great tips:

30 HTML Best Practices for Beginners

Categories: html Tags:

Close an unclosable window

July 30, 2013 Leave a comment

Problem
You update your system and you get a message window that says the system must be restarted. However, there is no close button on this window. How to get rid of it?
xkill

Solution
Press Alt+F2, launch “xkill“, and click on the window you want to close.

Midnight Commander tips

Copy the name of the current file to the mini shell:
“Esc+Enter” (i.e. press Esc, release, then press Enter)

I already knew this. Here are some new ones that I learned today:

The one above has an alternative shortcut:
“Ctrl+Enter”

Paste to the shell the path of the selected panel:
“Esc+a” or “Ctrl+x p”

Paste to the shell the path of the unselected (other) panel:
“Esc+A” or “Ctrl+x Ctrl+p”

These are actually in the man page, so it would be a good idea to read it once :)

Thanks to Andrew B. on the mc mailing list.

Categories: bash Tags: ,

10 Productivity tips for software developers

How to Stop Procrastinating by Using The “2-Minute Rule”

How to Stop Procrastinating by Using The “2-Minute Rule”

Recently, I’ve been following a simple rule that is helping me crush procrastination and making it easier for me to stick to good habits at the same time.

Categories: Uncategorized Tags:

10 Minute Mail: a great TrashMail.net alternative

Usually I use the TrashMail.net service but 10 Minute Mail is even simpler.

Thanks Jeszy for the tip.

Alternatives

Follow

Get every new post delivered to your Inbox.

Join 73 other followers