Browse Source

Merge branch 'master' of github.com:fabean/dotfiles

master
Josh Fabean 6 years ago
parent
commit
ab942adc69
4 changed files with 241 additions and 126 deletions
  1. +1
    -1
      .config/dunst/dunstrc
  2. +3
    -0
      .config/i3/config
  3. +91
    -125
      .config/nvim/init.vim
  4. +146
    -0
      ergodox_ez_firmware.c

+ 1
- 1
.config/dunst/dunstrc View File

@ -20,7 +20,7 @@
# %I iconname (without its path)
# %p progress value if set ([ 0%] to [100%]) or nothing
# Markup is allowed
format = "<b>%a:</b> %b\n"
format = "<b>%s:</b> %b\n"
# Sort messages by urgency
sort = yes


+ 3
- 0
.config/i3/config View File

@ -146,6 +146,7 @@ for_window [class="^Pavucontrol$"] floating enable
for_window [instance="crx_gaedmjdfmmahhbjefcbgaolhhanlaolb"] floating enable
for_window [class="Google-chrome" instance="crx_nckgahadagoaajjgafhacjanaoiihapd"] floating enable
for_window [class="chrome_app_list"] floating enable
for_window [class="Plexamp"] floating enable
# https://github.com/ValveSoftware/steam-for-linux/issues/1040
for_window [class="^Steam$" title="^Friends$"] floating enable
@ -161,6 +162,7 @@ for_window [title="^Steam Keyboard$"] floating enable
assign [class="Slack"] $workSpace3
assign [class="Plexamp"] $workSpace3
new_window 1pixel
#Hide border if 1 window
@ -251,6 +253,7 @@ bindsym XF86AudioRaiseVolume exec --no-startup-id "pulseaudio-ctl up ; pkill -RT
bindsym XF86AudioMute exec --no-startup-id "pulseaudio-ctl mute ; pkill -RTMIN+1 i3blocks"
bindsym XF86AudioPlay exec --no-startup-id playerctl play-pause
bindsym XF86AudioPause exec --no-startup-id playerctl play-pause
bindsym XF86AudioPlayPause exec --no-startup-id playerctl play-pause
bindsym $mod1+Shift+p exec --no-startup-id echo "cycle pause" > ~/.config/mpv/control
# Chrome special flags and others set in /etc/profiles.d/variables.sh like the following: --touch-devices=2 --force-device-scale-factor=2


+ 91
- 125
.config/nvim/init.vim View File

@ -1,4 +1,3 @@
if empty(glob('~/.config/nvim/autoload/plug.vim'))
silent !curl -fLo ~/.config/nvim/autoload/plug.vim --create-dirs
\ https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
@ -7,8 +6,6 @@ endif
call plug#begin()
" Plugins
" Plug 'vim-lumiliet/vim-twigsyntastic/syntastic'
Plug 'blueshirts/darcula'
Plug 'ctrlpvim/ctrlp.vim'
Plug 'FelikZ/ctrlp-py-matcher'
Plug 'jeetsukumaran/vim-filebeagle'
@ -17,56 +14,31 @@ Plug 'vim-airline/vim-airline-themes'
Plug 'scrooloose/nerdtree'
Plug 'christoomey/vim-tmux-navigator'
Plug 'editorconfig/editorconfig-vim'
"Plug 'Valloric/YouCompleteMe', { 'do': './install.py' }
Plug 'mhinz/vim-grepper'
Plug 'tomtom/tcomment_vim'
" Plug 'roxma/nvim-completion-manager'
"Plug 'chrisbra/Colorizer'
Plug 'ap/vim-css-color'
Plug 'autozimu/LanguageClient-neovim', { 'do': ':UpdateRemotePlugins' }
Plug 'neomake/neomake'
Plug 'ludovicchabant/vim-gutentags'
" Colorschemes
Plug 'whatyouhide/vim-gotham'
Plug 'flazz/vim-colorschemes'
" Plug 'ludovicchabant/vim-gutentags'
" Syntax Checking
Plug 'neomake/neomake', { 'on': 'Neomake' }
Plug 'autozimu/LanguageClient-neovim', { 'do': ':UpdateRemotePlugins' }
"HTML & CSS
Plug 'hail2u/vim-css3-syntax'
Plug 'othree/html5.vim'
Plug 'mattn/emmet-vim'
Plug 'Valloric/MatchTagAlways'
Plug 'digitaltoad/vim-jade'
"Javascript
Plug 'pangloss/vim-javascript'
Plug 'jelera/vim-javascript-syntax'
Plug 'leafgarland/typescript-vim'
Plug 'moll/vim-node'
Plug 'samuelsimoes/vim-jsx-utils'
Plug 'mlaursen/vim-react-snippets'
Plug 'alampros/vim-react-keywords'
Plug 'mxw/vim-jsx'
Plug 'posva/vim-vue'
Plug 'SirVer/ultisnips'
Plug 'honza/vim-snippets'
Plug 'ternjs/tern_for_vim', { 'for': ['javascript', 'javascript.jsx'] }
Plug 'carlitux/deoplete-ternjs', { 'for': ['javascript', 'javascript.jsx'] }
Plug 'othree/jspc.vim', { 'for': ['javascript', 'javascript.jsx'] }
Plug 'elmcast/elm-vim'
"PHP
Plug 'tanarurkerem/drupal-snippets'
Plug 'lvht/phpcd.vim', { 'for': 'php', 'do': 'composer install' }
Plug 'joonty/vdebug'
Plug 'StanAngeloff/php.vim', {'for': 'php'}
Plug 'lumiliet/vim-twig'
Plug 'StanAngeloff/php.vim'
Plug 'noahfrederick/vim-composer'
" Plug 'jaredly/vim-debug'
Plug 'roxma/LanguageServer-php-neovim', {'do': 'composer install && composer run-script parse-stubs'}
" Python Plugins
Plug 'zchee/deoplete-jedi'
Plug 'Shougo/deoplete.nvim', { 'do': ':UpdateRemotePlugins' }
Plug 'padawan-php/deoplete-padawan', { 'for': 'php' }
Plug 'roxma/LanguageServer-php-neovim', {'do': 'composer install && composer run-script parse-stubs', 'for': 'php'}
Plug 'SirVer/ultisnips' | Plug 'phux/vim-snippets'
"Git plugin
Plug 'tpope/vim-fugitive'
@ -84,59 +56,10 @@ endfunction
Plug 'Shougo/deoplete.nvim', { 'do': function('DoRemote') }
call plug#end()
"markdown don't instant open preview window
":InstandMarkdownPreview to view preview
let g:instant_markdown_autostart = 0
let g:airline#extensions#tabline#enabled = 1
let g:airline#extensions#neomake#enabled = 0
autocmd! BufWritePost * Neomake
if has("autocmd")
" Drupal *.module and *.install files.
augroup module
autocmd BufRead,BufNewFile *.module set filetype=php
autocmd BufRead,BufNewFile *.install set filetype=php
autocmd BufRead,BufNewFile *.test set filetype=php
autocmd BufRead,BufNewFile *.inc set filetype=php
autocmd BufRead,BufNewFile *.profile set filetype=php
autocmd BufRead,BufNewFile *.view set filetype=php
augroup END
endif
let g:gutentags_ctags_tagfile = '.tags'
let g:gutentags_ctags_executable_php = 'ctags --langmap=php:.engine.inc.module.theme.install.php --php-kinds=cdfi --fields=+l'
" PHP
augroup module
autocmd BufRead,BufNewFile *.module set filetype=php.drupal
autocmd BufRead,BufNewFile *.install set filetype=php.drupal
autocmd BufRead,BufNewFile *.test set filetype=php.drupal
autocmd BufRead,BufNewFile *.inc set filetype=php.drupal
autocmd BufRead,BufNewFile *.profile set filetype=php.drupal
autocmd BufRead,BufNewFile *.view set filetype=php.drupal
augroup END
autocmd FileType php,php.drupal LanguageClientStart
autocmd CursorHold :call LanguageClient_textDocument_hover()<CR>
autocmd FileType php,php.drupal nnoremap <silent> <C-]> :call LanguageClient_textDocument_definition()<CR>
autocmd FileType php,php.drupal nnoremap <silent> <F9> :call LanguageClient_textDocument_rename()<CR>
autocmd FileType php,php.drupal nnoremap <F8> <Plug>(composer-use)
autocmd FileType php,php.drupal inoremap <F8> <Plug>(composer-use)
function! PhpSyntaxOverride()
hi! def link phpDocTags phpDefine
hi! def link phpDocParam phpType
endfunction
augroup phpSyntaxOverride
autocmd!
autocmd FileType php call PhpSyntaxOverride()
augroup END
syntax on
colorscheme gotham
@ -158,15 +81,31 @@ set termguicolors
set tags=.tags,./tags,tags;
let g:airline_theme="gotham"
"add .p8 as lua for pico-8
au BufNewFile,BufRead *.p8 set filetype=lua
"deoplete stuff
"Option + Left and Right switch buffers
"execute "set <M-Right>=\e\eC"
"execute "set <M-Left>=\e\eD"
nnoremap <silent> <C-Right> :bnext<CR>
nnoremap <silent> <C-Left> :bprevious<CR>
nnoremap <silent> <C-Del> :bd<CR>
"Syntastic default settings
set statusline+=%#warningmsg#
set statusline+=%{SyntasticStatuslineFlag()}
set statusline+=%*
" let g:deoplete#sources#padawan#add_parentheses = 1
" needed for echodoc to work if add_parentheses is 1
" let g:deoplete#sources = get(g:,'deoplete#sources',{})
" let g:deoplete#sources.php = ['padawan', 'ultisnips', 'tags', 'buffer', 'LanguageClient']
let g:deoplete#enable_at_startup = 1
let g:deoplete#enable_ignore_case = 1
let g:deoplete#enable_smart_case = 1
let g:deoplete#enable_camel_case = 1
let g:deoplete#enable_refresh_always = 1
let g:deoplete#file#enable_buffer_path = 1
let g:deoplete#max_abbr_width = 0
let g:deoplete#max_menu_width = 0
let g:deoplete#omni#input_patterns = get(g:,'deoplete#omni#input_patterns',{})
@ -175,51 +114,78 @@ let g:deoplete#omni#input_patterns.java = [
\'[^. \t0-9]\->\w*',
\'[^. \t0-9]\::\w*',
\]
let g:deoplete#omni#input_patterns.jsp = ['[^. \t0-9]\.\w*']
let g:deoplete#ignore_sources = {}
call deoplete#custom#set('buffer', 'mark', 'ℬ')
call deoplete#custom#set('ternjs', 'mark', '')
call deoplete#custom#set('omni', 'mark', '⌾')
call deoplete#custom#set('file', 'mark', 'file')
call deoplete#custom#set('jedi', 'mark', '')
call deoplete#custom#set('typescript', 'mark', '')
call deoplete#custom#set('neosnippet', 'mark', '')
call deoplete#custom#set('java', 'mark', '')
call deoplete#custom#set('javacomplete2', 'mark', '')
call deoplete#custom#set('typescript', 'rank', 630)
set completefunc=autoprogramming#complete
let g:deoplete#auto_complete_delay = 50
let g:deoplete#ignore_sources = get(g:,'deoplete#ignore_sources',{})
let g:deoplete#ignore_sources.java = ['omni']
let g:deoplete#omni#functions = {}
let g:deoplete#omni#functions.javascript = [
\ 'tern#Complete',
\]
let g:deoplete#omni#input_patterns.javascript = '[^. \t]\.\w*'
let g:deoplete#ignore_sources = get(g:, 'deoplete#ignore_sources', {})
let g:deoplete#ignore_sources.php = ['omni']
call deoplete#custom#set('javacomplete2', 'mark', '')
let g:deoplete#omni#functions = get(g:,'deoplete#omni#functions',{})
call deoplete#custom#set('_', 'matchers', ['matcher_full_fuzzy'])
call deoplete#custom#set('omni', 'min_pattern_length', 0)
inoremap <expr><C-h> deoplete#mappings#smart_close_popup()."\<C-h>"
inoremap <expr><BS> deoplete#mappings#smart_close_popup()."\<C-h>"
"Nertree Toggle
map <C-n> :NERDTreeToggle<CR>
let NERDTreeShowHidden=1
inoremap <expr><C-x><C-o> deoplete#mappings#manual_complete()
function! GutentagsFilter(path) abort
if fnamemodify(a:path, ':e') == 'java'
return 0
elseif fnamemodify(a:path, ':e') == ''
return 0
elseif fnamemodify(a:path, ':e') == 'xml'
return 0
elseif fnamemodify(a:path, ':e') == 'gradle'
return 0
else
return 1
endif
endfunction
" enable all Python syntax highlighting features
let python_highlight_all = 1
let g:gutentags_enabled_user_func = 'GutentagsFilter'
let g:gutentags_ctags_tagfile = '.tags'
let g:gutentags_ctags_executable_php = 'ctags --langmap=php:.engine.inc.module.theme.install.php --php-kinds=cdfi --fields=+l'
"Option + Left and Right switch buffers
"execute "set <M-Right>=\e\eC"
"execute "set <M-Left>=\e\eD"
nnoremap <silent> <C-Right> :bnext<CR>
nnoremap <silent> <C-Left> :bprevious<CR>
nnoremap <silent> <C-Del> :bd<CR>
"sort scss alphabetically
nnoremap <C-a> :g#\({\n\)\@<=#.,/\.*[{}]\@=/-1 sort<CR>
":h i_CTRL-V
" only start lsp when opening php files
au filetype php LanguageClientStart
"Make TComment work as I expect
noremap <leader>/ :TComment <CR>
vmap <leader>/ :TCommentBlock<CR>
" use LSP completion on ctrl-x ctrl-o as fallback for padawan in legacy projects
au filetype php set omnifunc=LanguageClient#complete
"Syntastic default settings
set statusline+=%#warningmsg#
set statusline+=%{SyntasticStatuslineFlag()}
set statusline+=%*
" no need for diagnostics, we're going to use neomake for that
let g:LanguageClient_diagnosticsEnable = 0
let g:LanguageClient_signColumnAlwaysOn = 0
" I only use these 3 mappings
nnoremap <silent> gd :call LanguageClient_textDocument_definition()<CR>
nnoremap <silent> gr :call LanguageClient_textDocument_references()<CR>
nnoremap K :call LanguageClient_textDocument_hover()<cr>
" cycle through menu items with tab/shift+tab
inoremap <expr> <TAB> pumvisible() ? "\<c-n>" : "\<TAB>"
inoremap <expr> <s-tab> pumvisible() ? "\<c-p>" : "\<TAB>"
autocmd BufWritePost * Neomake
let g:neomake_error_sign = {'text': '✖', 'texthl': 'NeomakeErrorSign'}
let g:neomake_warning_sign = {'text': '∆', 'texthl': 'NeomakeWarningSign'}
let g:neomake_message_sign = {'text': '➤', 'texthl': 'NeomakeMessageSign'}
let g:neomake_info_sign = {'text': 'ℹ', 'texthl': 'NeomakeInfoSign'}
let g:UltiSnipsExpandTrigger="<c-j>"
let g:UltiSnipsJumpForwardTrigger="<c-j>"
let g:UltiSnipsJumpBackwardTrigger="<c-b>"
" PHP7
let g:ultisnips_php_scalar_types = 1
" let g:syntastic_always_populate_loc_list = 1
" let g:syntastic_auto_loc_list = 1
" let g:syntastic_check_on_open = 1
" let g:syntastic_check_on_wq = 0
"
autocmd BufNewFile,BufRead *.theme set syntax=php

+ 146
- 0
ergodox_ez_firmware.c View File

@ -0,0 +1,146 @@
#include "ergodox_ez.h"
#include "debug.h"
#include "action_layer.h"
#include "version.h"
#include "keymap_german.h"
#include "keymap_nordic.h"
enum custom_keycodes {
PLACEHOLDER = SAFE_RANGE, // can always be here
EPRM,
VRSN,
RGB_SLD,
};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = KEYMAP(KC_TILD,KC_AMPR,KC_LBRACKET,KC_LCBR,KC_RCBR,KC_LPRN,KC_PERC,KC_TAB,KC_SCOLON,KC_COMMA,KC_DOT,KC_P,KC_Y,KC_CIRC,KC_ESCAPE,KC_A,KC_O,KC_E,KC_U,KC_I,KC_LSHIFT,KC_QUOTE,KC_Q,KC_J,KC_K,KC_X,TT(1),KC_GRAVE,KC_TILD,KC_HASH,MO(1),CTL_T(KC_NO),KC_LGUI,KC_LALT,KC_LEFT,KC_TAB,KC_BSPACE,KC_RIGHT,KC_AT,KC_EQUAL,KC_ASTR,KC_RPRN,KC_PLUS,KC_RBRACKET,KC_EXLM,KC_DLR,KC_F,KC_G,KC_C,KC_R,KC_L,KC_QUES,KC_D,KC_H,KC_T,KC_N,KC_S,KC_MINUS,TO(2),KC_B,KC_M,KC_W,KC_V,KC_Z,KC_RSHIFT,RCTL_T(KC_NO),KC_TRANSPARENT,KC_BSLASH,KC_PIPE,KC_KP_SLASH,KC_RALT,KC_LGUI,KC_UP,KC_DOWN,KC_ENTER,KC_SPACE),
[1] = KEYMAP(KC_ESCAPE,KC_F1,KC_F2,KC_F3,KC_F4,KC_F5,KC_F6,KC_TAB,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_ESCAPE,LCTL(LSFT(KC_I)),KC_TRANSPARENT,KC_MEDIA_PREV_TRACK,KC_MEDIA_NEXT_TRACK,KC_MEDIA_PLAY_PAUSE,KC_LSHIFT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,TO(0),KC_TRANSPARENT,LALT(RGUI(KC_S)),KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_LGUI,KC_LALT,KC_AUDIO_MUTE,KC_TAB,KC_BSPACE,KC_AUDIO_VOL_DOWN,KC_F7,KC_F8,KC_F9,KC_F10,KC_F11,KC_F12,KC_F13,KC_TRANSPARENT,KC_TRANSPARENT,KC_7,KC_8,KC_9,KC_KP_ASTERISK,KC_TRANSPARENT,KC_TRANSPARENT,KC_4,KC_5,KC_6,KC_KP_PLUS,KC_TRANSPARENT,KC_TRANSPARENT,KC_DOT,KC_1,KC_2,KC_3,KC_KP_SLASH,KC_RSHIFT,KC_TRANSPARENT,KC_TRANSPARENT,KC_0,KC_EQUAL,KC_TRANSPARENT,KC_RALT,KC_LGUI,KC_TRANSPARENT,KC_AUDIO_VOL_UP,KC_ENTER,KC_SPACE),
[2] = KEYMAP(KC_TRANSPARENT,KC_1,KC_2,KC_3,KC_4,KC_5,KC_TRANSPARENT,KC_TAB,KC_Q,KC_W,KC_E,KC_R,KC_T,KC_TRANSPARENT,KC_ESCAPE,KC_A,KC_S,KC_D,KC_F,KC_G,KC_LSHIFT,KC_Z,KC_X,KC_C,KC_V,KC_B,TO(1),KC_GRAVE,KC_QUOTE,KC_TRANSPARENT,KC_TRANSPARENT,CTL_T(KC_NO),KC_LGUI,KC_LALT,KC_LEFT,KC_TAB,KC_BSPACE,KC_RIGHT,KC_TRANSPARENT,KC_6,KC_7,KC_8,KC_9,KC_0,KC_MINUS,KC_TRANSPARENT,KC_Y,KC_U,KC_I,KC_O,KC_P,KC_BSLASH,KC_H,KC_J,KC_K,KC_L,KC_SCOLON,KC_QUOTE,TO(0),KC_N,KC_M,KC_COMMA,KC_DOT,KC_SLASH,KC_RSHIFT,RCTL_T(KC_NO),KC_TRANSPARENT,KC_LBRACKET,KC_RBRACKET,KC_TRANSPARENT,KC_RALT,KC_LGUI,KC_UP,KC_DOWN,KC_ENTER,KC_SPACE),
};
const uint16_t PROGMEM fn_actions[] = {
[1] = ACTION_LAYER_TAP_TOGGLE(1)
};
// leaving this in place for compatibilty with old keymaps cloned and re-compiled.
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
{
switch(id) {
case 0:
if (record->event.pressed) {
SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION);
}
break;
}
return MACRO_NONE;
};
void matrix_init_user(void) {
#ifdef RGBLIGHT_COLOR_LAYER_0
rgblight_setrgb(RGBLIGHT_COLOR_LAYER_0);
#endif
};
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
// dynamically generate these.
case EPRM:
if (record->event.pressed) {
eeconfig_init();
}
return false;
break;
case VRSN:
if (record->event.pressed) {
SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION);
}
return false;
break;
case RGB_SLD:
if (record->event.pressed) {
rgblight_mode(1);
}
return false;
break;
}
return true;
}
uint32_t layer_state_set_user(uint32_t state) {
uint8_t layer = biton32(state);
ergodox_board_led_off();
ergodox_right_led_1_off();
ergodox_right_led_2_off();
ergodox_right_led_3_off();
switch (layer) {
case 0:
#ifdef RGBLIGHT_COLOR_LAYER_0
rgblight_setrgb(RGBLIGHT_COLOR_LAYER_0);
#endif
break;
case 1:
ergodox_right_led_1_on();
#ifdef RGBLIGHT_COLOR_LAYER_1
rgblight_setrgb(RGBLIGHT_COLOR_LAYER_1);
#endif
break;
case 2:
ergodox_right_led_2_on();
#ifdef RGBLIGHT_COLOR_LAYER_2
rgblight_setrgb(RGBLIGHT_COLOR_LAYER_2);
#endif
break;
case 3:
ergodox_right_led_3_on();
#ifdef RGBLIGHT_COLOR_LAYER_3
rgblight_setrgb(RGBLIGHT_COLOR_LAYER_3);
#endif
break;
case 4:
ergodox_right_led_1_on();
ergodox_right_led_2_on();
#ifdef RGBLIGHT_COLOR_LAYER_4
rgblight_setrgb(RGBLIGHT_COLOR_LAYER_4);
#endif
break;
case 5:
ergodox_right_led_1_on();
ergodox_right_led_3_on();
#ifdef RGBLIGHT_COLOR_LAYER_5
rgblight_setrgb(RGBLIGHT_COLOR_LAYER_5);
#endif
break;
case 6:
ergodox_right_led_2_on();
ergodox_right_led_3_on();
#ifdef RGBLIGHT_COLOR_LAYER_6
rgblight_setrgb(RGBLIGHT_COLOR_LAYER_6);
#endif
break;
case 7:
ergodox_right_led_1_on();
ergodox_right_led_2_on();
ergodox_right_led_3_on();
#ifdef RGBLIGHT_COLOR_LAYER_7
rgblight_setrgb(RGBLIGHT_COLOR_LAYER_6);
#endif
break;
default:
break;
}
return state;
};

Loading…
Cancel
Save