Skip to content

Instantly share code, notes, and snippets.

View statox's full-sized avatar

Adrien Fabre statox

View GitHub Profile

tmux shortcuts & cheatsheet

start new:

tmux

start new with session name:

tmux new -s myname

Your problem with Vim is that you don't grok vi.

Answer by Jim Dennis on Stack Overflow question: what is your most productive shortcut?

You mention cutting with yy and complain that you almost never want to cut whole lines. In fact programmers, editing source code, very often want to work on whole lines, ranges of lines and blocks of code. However, yy is only one of many way to yank text into the anonymous copy buffer (or "register" as it's called in vi).

@statox
statox / tmux_local_install.sh
Last active September 15, 2015 00:24 — forked from ryin/tmux_local_install.sh
bash script for installing tmux without root access
#!/bin/bash
# Script for installing tmux on systems where you don't have root access.
# tmux will be installed in $HOME/local/bin.
# It's assumed that wget and a C/C++ compiler are installed.
# exit on error
set -e
TMUX_VERSION=1.8
#!/bin/bash
# Get a wallpaper randomly from different subreddits
# Works with Gnome3
# Put it in a crontab
# List of the subbreddit to use (if the variable is empty
# r/Wallpaper will be used
SUBS=( Wallpaper WQHD_Wallpaper WidescreenWallpaper wallpaperdump )
# Directory containing the background
@statox
statox / pinFold.vim
Last active November 23, 2016 16:39
Playing with vim folds
augroup pythonFold
autocmd BufReadPre *.py setlocal foldmethod=indent
autocmd CursorMovedI *.py call PinFold()
autocmd CursorMoved *.py call PinFold()
augroup END
function! PinFold()
" save current position
let saveCursor = getcurpos()
@statox
statox / multimedia.sh
Last active April 9, 2017 18:39
Install multimedia system
## Install seedbox system for several users with
## Transmission
## Sonarr
## Headphones
##
## Debian 8
# References:
# DOCKER INSTALL - https://docs.docker.com/engine/installation/linux/debian/
# SHIPYARD (docker management) - https://github.com/shipyard/shipyard
function! MakeNewLine()
if getline(line('.')) =~# "^\s*>.*$"
normal! o>
else
normal! o
endif
endfunction
inoremap <cr> <C-o>:call MakeNewLine()<cr>
" This is a test answer for https://vi.stackexchange.com/q/17423/1841
" <C-a>
nnoremap <Leader>a :call CoherentIncrement(1)<CR>
" <C-x>
nnoremap <Leader>b :call CoherentIncrement(0)<CR>
function! CoherentIncrement(inc)
let save_cursor = getcurpos()
@statox
statox / actionlist.vim
Created November 6, 2018 19:45 — forked from zchee/actionlist.vim
IdeaVim actionlist
--- Actions ---
$Copy <M-C>
$Cut <M-X> <S-Del>
$Delete <Del> <BS> <M-BS>
$LRU
$Paste <M-V>
$Redo <M-S-Z> <A-S-BS>
$SearchWeb <A-S-G>
$SelectAll <M-A>
$Undo <M-Z>
@statox
statox / SetVisualBlock.vim
Created May 23, 2019 09:49
A vimscript function to set a visual block selection
" Inspired by @ Christian Brabandt on this question https://vi.stackexchange.com/q/20066/1841
function! SetVisualBlock(start, end)
" Trigger visual block mode
execute "norm! \<C-v>\<Esc>"
" Set the marks
call setpos("'<", [ 0, a:start[0], a:start[1] ])
call setpos("'>", [ 0, a:end[0], a:end[1] ])